Files
gstack/lib/diagram-render/dist/diagram-render.html
+8 28f1385eac v1.91.32.0 fix: Codex works from zsh, free text never enters shell commands, honest failures (#3057)
* fix: sourced helpers locate themselves under zsh (#3024)

Skill blocks source bin/gstack-codex-probe and bin/gstack-egress-lib.sh into
the host's shell. Under zsh (macOS default) BASH_SOURCE is empty, so Codex
model selection resolved /../scripts/... and every outside pass reported
CODEX_MODEL: invalid; the egress lib resolved to the caller's cwd. Resolve
the file once at source time (BASH_SOURCE under bash, %x under zsh), and
replace the bash-only ${!name} indirection in the auth probe. A free test
derives every sourced helper from the generated skills and sources each
under bash and zsh.

Co-authored-by: marcosdetry <marcosdetry@users.noreply.github.com>
Co-authored-by: akshaykalia <akshaykalia@users.noreply.github.com>
Co-authored-by: scottgigante-hubflow <scottgigante-hubflow@users.noreply.github.com>
Co-authored-by: woodsonl <woodsonl@users.noreply.github.com>
Co-authored-by: bezdekt <bezdekt@users.noreply.github.com>

* fix: reply and issue templates never pass untrusted text in double quotes (#3046)

greptile-triage's reply APIs posted -f body="<reply text>" while the
templates quote SHAs and diff code in backticks; in double quotes bash ran
each span (replies posted as 'Fixed in .', and diff or reviewer text ran as
a command). The pre-existing-failure issue template and /spec's issue title
had the same shape. All three now go through quoted heredocs. The
generated-bash lint gains untrusted-in-quotes and now also covers runtime
reference docs in skill directories (review/greptile-triage.md).

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix: a Codex usage limit is its own state, not 'inconclusive; proceeding' (#3051)

The model probe matched only model and broken-install errors, so a usage or
rate limit fell through to MODEL_PROBE_INCONCLUSIVE: Codex's own message
(with the reset time) was dropped, the hint pointed at model config, and
every later skill re-probed for 30 s. The probe now returns
MODEL_QUOTA_EXHAUSTED (exit 4) on a failed, non-timeout call that names a
usage limit, rate limit, insufficient_quota or 429, relays Codex's line
verbatim and caches it for 15 minutes. Preflights map it to
CODEX_MODE: quota_exhausted (missing coverage, no further Codex calls), and
classifyOutsideReview reports a mid-run limit as unavailable (quota) with
its own troubleshooting anchor.

Co-authored-by: venkatareddyg <venkatareddyg@users.noreply.github.com>

* test: record ship/review union sizes after the quota branch and issue template

* fix: Codex watchdog freezes the command before reaping its children

The bash-native watchdog (stock macOS, no timeout binary) ran pkill -P on
the command's children and then killed the command. Between the two, the
command continued past its killed child and printed output after its
deadline. Stop it first. The test's minimal PATH also lacked pkill, which
the watchdog uses to reap children (stock macOS ships it), so the orphaned
child held stdout open and the capture waited out its sleep.

* fix(autoplan): an oversize session journal is a hard too_large denial, not a retryable identity failure (#3050)

The guard capped journal reads at 32 MiB and reported a longer journal as
'identity', which the hook treats as deny-and-retry. A journal only grows,
so /autoplan could never enter Phase 1 in a long session, and the
troubleshooting row sent people chasing symlinks. Oversize journals now
report too_large as a hard cause that names the size and the supported
fallback (run the reviews by hand or start a new session).

Co-authored-by: venkatareddyg <venkatareddyg@users.noreply.github.com>

* fix(deps): clear the weekly OSV findings (#3040)

Raise overrides to fixed releases: ip-address 10.7.3 (our own pin was the
vulnerable 10.3.1; reachable through socks in browse's proxy path),
fast-uri 3.1.8, hono 4.13.13, proxy-addr 2.0.8, @modelcontextprotocol/sdk
1.31.0, sharp 0.35.5, and in lib/diagram-render dompurify 3.4.16 (bundled
by mermaid) and source-map-js 1.2.2; the render page is rebuilt. Three
advisories without a usable fix get justified, expiring ignores: braces
(build-time only, excalidraw -> sass -> chokidar; a test checks the page
carries no chokidar code), sprintf-js (roarr's constant-format logger) and
katex (needs pre-existing prototype pollution; fix outside mermaid's range).
osv-scanner with the repo config: no issues found.

* fix(autoplan): name a shell-built snapshot init as the cause of the missing-evidence denial (#3045)

The guard binds a phase entry only to a literal snapshot-init Bash call.
When the model resolved the tool path into a variable, chained or piped the
call, init ran and succeeded but the denial said 'Complete the existing
snapshot init step', which reads as already done, so the run gave up. When
no init binds but a Bash call looks like one, the denial now says the shape
cannot be bound and prints the literal re-run (answers reused:true). The
binding rule is unchanged, and the skill says to run init on its own.

Co-authored-by: CharlesBerg85 <CharlesBerg85@users.noreply.github.com>

* fix(browse): chain reads piped stdin synchronously, so Windows runs the flow (#3039)

On Windows, an awaited Bun.stdin.text() inside the CLI's un-awaited main()
let the process exit 0 before reading stdin: a replayed flow reported
success with nothing sent to the daemon. Read fd 0 synchronously (skipped
for a terminal); empty input now gets the server's usage error and a
non-zero exit.

Co-authored-by: VaibDeveloper <VaibDeveloper@users.noreply.github.com>

* fix(browse): clearer config-mismatch refusal and a WebGL note for the macOS GPU flags (#3030)

A plain call refused because another session started the daemon with
--headed/--proxy was told to 'apply --proxy/--headed', flags it never
passed. It now says who started the daemon and offers both remedies. The
BROWSER.md env table notes that the default macOS GPU flags disable WebGL
and that GSTACK_DISABLE_GPU=off restores it for WebGL QA.

Co-authored-by: Hagetino <Hagetino@users.noreply.github.com>

* fix(ship): skip Greptile triage when no PR exists yet (#3020)

/ship's first run on a branch dispatched a triage subagent only to learn
there was no PR. Step 10 now checks for a PR inline (gh's 'no pull requests
found') and records that Greptile runs on the PR once it exists; other gh
errors still dispatch so the child can report unavailable.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix(router): route only to loaded skills, and say when not to invoke (#3018)

The root router listed every skill and ended 'When in doubt, invoke the
skill'. Current Claude models follow that literally: they tried to invoke
skills a user had turned off in Claude Code's skillOverrides (which gstack's
own disabled_skills render cannot see), and borderline requests tipped into
full workflows. The router now routes only to skills in the session's
available-skills list and names when to answer directly; the CLAUDE.md
routing block skill-start offers says the same.

Co-authored-by: Rekin226 <Rekin226@users.noreply.github.com>

* fix: spawned sessions never auto-grant consent or publish off the machine (#3016)

Spawned sessions auto-choose the recommended option except for destructive
or irreversible choices. Main already withholds the artifacts-sync consent
prompt from spawned sessions; the remaining gap was any other prompt whose
recommended option grants a consent or syncs data off the machine. Every
spawned directive (skill-start's block, the escape sentence, the Conductor
deny reason and the AUQ-error fallback) now names that as irreversible. A
consent the user already gave interactively stays in force.

Co-authored-by: ekson73 <ekson73@users.noreply.github.com>

* test: fix the spawned-block slice and type the #3045 re-init events

* fix(redact): TypeScript types and JSX expressions are code, not env.kv secrets (#3048)

A credential-named parameter or prop with an unquoted code value
(`session: SessionState,`, `key={turn.requestId + turn.role}`,
`apiKey={settings.apiKey}`) cleared the entropy gate and blocked pushes as
a MEDIUM env.kv finding. One rule replaces the PR's two keyword heuristics:
a value that reads as a code name (no digits, word-like camelCase or dotted
parts) with a code terminator, or a brace expression of such names with no
quoted literal, is source syntax. Paired controls keep firing on quoted,
brace-wrapped, concatenated, YAML-bare and random-letter literals.

Co-authored-by: tianxchen <tianxchen@users.noreply.github.com>

* fix(setup): refuse to register a hook that does not parse (#3032)

Claude Code runs gstack's hook shims through /bin/sh; a shim that does not
parse exits 2, which for a PreToolUse hook blocks the tool call in every
session until someone finds the file. Before any hook registration is
healed or written, setup now runs bash -n on each registered shim and a Bun
parse of its TypeScript entry, and stops with the file, line and fix. A
lean rewrite of the PR's idea (one gate block plus a test that runs it).

Co-authored-by: BenjaminDSmithy <BenjaminDSmithy@users.noreply.github.com>

* fix(browse): Windows runtime roots start the server from the source checkout's bundle (#3026)

On Windows a host runtime root (~/.codex/skills/gstack and the other
env-var hosts) holds file copies of browse/dist and no node_modules, so
its server-node.mjs could not import playwright and every browser skill
died (the module-scope server.ts half was fixed in v1.91.19.0). setup now
records the source checkout in every runtime root's .source-path, and the
CLI runs that checkout's bundle when the adjacent one cannot reach
playwright. Verified by unit layout tests and the Windows CI lane, not
live on Windows.

Co-authored-by: ubay887 <ubay887@users.noreply.github.com>

* fix(copilot): on Windows, run bash blocks in Git for Windows Bash (#3047)

Copilot CLI on Windows ran gstack's extensionless helpers straight from
PowerShell, which opened an app picker, and bare bash can resolve to WSL.
The Copilot tool glossary (rendered into every Copilot skill) now says to
run each bash block in Git for Windows Bash by its full path and never to
translate a block into PowerShell. The PR's PowerShell repair skill and
README section are not taken.

Co-authored-by: nareshh74 <nareshh74@users.noreply.github.com>

* test: record ship's union size after the Greptile no-PR check

* fix: keep issue numbers out of model-read Copilot text; seed the new routing sentence in the autoplan fixture

* docs: Oct 6 fix-wave plan, reviewed through /autoplan

* fix(autoplan): every oversize-journal path reports too_large with a recovery that keeps the work

Review follow-up to the #3050 fix. The summed batch read and the narrowed
parent loop now report too_large with the real size instead of a plain
error naming a hard-coded 32 MiB. The denial names the size and the cap,
and gives the recovery that keeps work (/context-save, new session,
/context-restore, /autoplan) with a docs anchor. A test seam that can only
lower the cap replaces the 33 MiB fixture.

* test(autoplan): negative controls and more shapes for the shell-built init denial

* fix(redact): decide TS/JSX source syntax by file context, not by value shape

Review follow-up to the #3048 fix. The word-shape heuristic also exempted
real secrets made of words (API_KEY=VelvetRiverOrbitSunset; in a .env).
The scanner now takes the file path (ScanOptions.sourcePath): the pre-push
hook scans the pushed diff per file with its +++ b/ path, and gstack-redact
--from-file passes its path. Only in a TypeScript/JSX file is an unquoted
value after ':' or a JSX brace of names treated as source; the same line in
.env/YAML, or with no path, is scanned as a literal, and the jwt pattern
still fires in .ts files.

Co-authored-by: tianxchen <tianxchen@users.noreply.github.com>

* docs: gstack's own CLAUDE.md routing block matches the new router wording

Live check (Claude Code 2.1.284): a skill set to "off" in skillOverrides
is absent from the session's skill list while its sibling is listed, and
both are listed without the override, so 'route only to skills in your
available-skills list' holds.

* fix(sync-gbrain): don't offer a call-graph build for a source with no code pages (#3029)

Step 3.5 offered --dream for any source with pages, including one that
holds only markdown (synced with gbrain's default strategy), where a build
cannot help, and the injected CLAUDE.md guidance told future sessions to run
--dream for any count: 0. On gbrain >= 0.60, code-def for an impossible
symbol answers .status (probed live against gbrain 0.60.96: ready for a
code source, out_of_scope for a markdown-only one). Step 3.5 now probes the
pinned source first, reports the cause instead of asking on out_of_scope,
and keeps today's offer when the probe is unknown (older gbrain, an error).
gstack's own sync uses --strategy code, so the PR's soft-delete claim does
not apply to gstack's path.

Co-authored-by: syong <syong@users.noreply.github.com>

* fix(setup): register the hooks that parse, refuse the rest with file:line (#3032)

The landed gate stopped setup before any registration, so one unparseable
hook left every other hook unregistered. On the Claude install the canonical
root is the checkout Claude Code runs hooks from, so there is no staged swap
to abort: setup now registers the hooks that parse, refuses the ones that do
not with file and line, finishes the install and exits non-zero, saying it
is a gstack bug and that a skipped hook keeps running from the checkout.

bin/gstack-hook-check derives its list from setup's _hook_command_path calls
plus the autoplan phase-publication hook (a test keeps them equal), parses
each shim with its shebang's interpreter, and bundles each TypeScript entry
with its local imports (packages external) into a temp dir, so a broken or
missing import, or a missing entry, fails.

Co-authored-by: BenjaminDSmithy <BenjaminDSmithy@users.noreply.github.com>

* fix(auto-update): hold an update whose hooks do not parse, before the checkout moves

bin/gstack-session-update fast-forwards the live checkout before setup runs,
and Claude Code runs hooks straight from it, so setup's gate cannot protect
an auto-update. After the Bun floor check the updater extracts the incoming
revision with git archive and runs bin/gstack-hook-check on it; a failure
holds the update like bun-too-old, records hook-does-not-parse with file:line
in the update status, and the next session start says the current hooks keep
running. Fixture-remote tests cover a broken shim, a broken imported module
and a parseable control.

Co-authored-by: BenjaminDSmithy <BenjaminDSmithy@users.noreply.github.com>

* fix(browse): chain with no flow is a usage error before any daemon boots (#3039)

Empty piped input, a terminal with no arguments, and a readFileSync(0)
error (EAGAIN, EOF) now print the chain usage with the cause and its
troubleshooting link and exit 1 before ensureServer(), instead of sending
an empty argument to a daemon the CLI booted for it. Tests run the real CLI
with no daemon and no browser, plus the stub-daemon flow.

Co-authored-by: VaibDeveloper <VaibDeveloper@users.noreply.github.com>

* fix(browse): refuse a runtime-root CLI and checkout server from different builds (#3026)

A Windows runtime root runs the source checkout's Node server bundle through
.source-path. When the root's CLI and the checkout's bundle carry different
browse/dist/.version builds (the checkout was rebuilt without refreshing the
root), the CLI now refuses to start the server with both builds, the
./setup fix and its troubleshooting anchor. Unversioned dev builds are not
called skew.

Co-authored-by: ubay887 <ubay887@users.noreply.github.com>

* ci(windows): real isolated ./setup install, then a piped chain flow through the installed browse

windows-setup-e2e built the checkout but never ran ./setup. It now installs
the codex host into an isolated HOME (a runtime root copy with no
node_modules), then from an unrelated directory pipes a two-command chain
flow at a loopback page into the installed browse and asserts the page text,
and that empty piped input exits 1 with the usage error. Covers the
checkout-bundle path and the piped-stdin path end to end.

* test(lint): free text never enters a generated command (structural rule)

The generated-bash lint's untrusted-in-quotes rule (gh/glab/git/curl text
flags in double quotes only) becomes free-text-placeholder: any <placeholder>
anywhere in any command, in double, single or no quotes, and in heredoc
bodies (quoted or not), unless it is on the reviewed identifier allowlist
(test/helpers/placeholder-allowlist.ts) with the grammar a value must match.
Quoted-only identifiers (URLs, selectors, paths printed by gstack) must sit
inside quotes. Backslash-newline continuations now read as one command, so
a flag and its value on separate lines are still seen together.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix: reply, issue and spec text travel as agent-written files, never through a heredoc

Replaces the quoted-heredoc bodies with CEO-12's file mechanism: a bash
block creates a private mktemp file in the project's .gstack/tmp/ (kept out
of git through .git/info/exclude), the agent writes the text with its
file-write tool, and the next block posts with -F body=@file, --body-file
or "$(cat file)". A heredoc ends early at any body line equal to its
delimiter; a file has no such line. When the file was never written the
block refuses with the path and the command to send it by hand, and it
deletes the file after a successful post.

- review/greptile-triage.md: replies; the fetched JSON moves from fixed
  /tmp/greptile_*.json paths to a mktemp directory; REPO and PR are
  re-derived per block instead of read from a previous shell.
- Test-failure issues: title and body files, platform case on
  github/gitlab, assignee only when it is a valid login.
- /spec: one draft file feeds the audit hash, every redaction scan, the
  issue and the archive; the archive no longer expands <title>/<body>
  inside an unquoted heredoc; the decision-log JSON is built by jq from
  files.

Location verified against Claude Code 2.1.284 (Dockerfile.ci pin):
project-local .gstack/tmp is writable under acceptEdits with no prompt and
keeps mode 0600; $TMPDIR and the gstack state root prompt even under
acceptEdits.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix(ship): Greptile triage runs only when a PR exists; every other case says why

PR: unknown (gh missing, not logged in, a non-GitHub remote, or a failed
lookup) used to dispatch the triage child anyway. The Step 10 check now
tests gh, its login, the remote and the PR in that order, and every case
but 'PR: exists' skips the dispatch and records
'Greptile: not run (<reason>); runs on the PR once it exists'.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix: question-tuning commands carry no free text

The question log took the summary in single quotes and the preference write
took the user's own words; an apostrophe ended the quote and the rest ran as
shell. The summary is now a kebab-case slug (an identifier with a grammar),
and the optional free_text field is no longer passed from skills (the
binary still accepts it).

* fix(cso): Windows finds docker.exe only under known-folder roots and says transport is unsupported (#3028)

On Windows /cso looked for docker only in Git's directory and System32, so
Docker Desktop was never found and the gap read as 'not installed'. It now
resolves Program Files, Program Files (x86) and the Windows directory through
PowerShell's [Environment]::GetFolderPath (not the process environment),
checks each candidate's real path against those roots and rejects reparse
points. lib/cso/docker.ts admits only unix:/// endpoints, so a trusted
docker.exe reports 'native Windows Docker transport is not supported yet;
static assessment only'; one outside the roots is refused as outside the
trusted install locations, not overridable. Both carry an anchor. Native
named-pipe transport is not implemented.

* fix: sourced helpers share one self-locate block and fail loudly when they cannot locate themselves (#3024 rework)

The codex probe and the egress lib now carry one byte-identical block:
BASH_SOURCE under bash or %x under zsh, made absolute with $PWD, else a set
GSTACK_ROOT that holds the helper. Anything else (dash, sh, a shell that
cannot name the file) prints "gstack: cannot locate <helper> (shell: ...)"
with the docs/troubleshooting.md#sourced-helper-location URL and returns
before any bash- or zsh-only syntax. The Claude-only default path and the
$(pwd) fallback are gone.

The generated Codex preflight dot-sources the probe and, when it cannot load,
reports CODEX_MODE: helper_unavailable with the helper's own line instead of
falling through to not_authed. The class guard enumerates nested sources,
makes real resolver, auth, state-root and egress-home calls under bash and
zsh (absolute, relative then cd, bare name via PATH), covers dash and an
unknown shell, runs the full preflight, and lints BASH_SOURCE to the shared
block plus other bash-only constructs.

Co-authored-by: marcosdetry <marcosdetry@users.noreply.github.com>
Co-authored-by: akshaykalia <akshaykalia@users.noreply.github.com>
Co-authored-by: scottgigante-hubflow <scottgigante-hubflow@users.noreply.github.com>
Co-authored-by: woodsonl <woodsonl@users.noreply.github.com>
Co-authored-by: bezdekt <bezdekt@users.noreply.github.com>

* fix(cso): a Maven or Gradle repository is Java, not Python (#3028)

With no supported stack metadata, preparation defaulted to Python and asked
a Java repository for requirements.txt. A root pom.xml, build.gradle or
build.gradle.kts now names the stack as Java (unsupported for runtime
preparation, so the prerequisite says so), and Python helper scripts or a
root requirements.txt beside it no longer make it Python.

* fix(browse): BROWSER.md says plainly how to enable WebGL; the mismatch refusal links Daemon discipline (#3030)

The GSTACK_DISABLE_GPU row now states the effect and the switch: set
GSTACK_DISABLE_GPU=off to enable WebGL (off is the only recognized value).
The reworded config-mismatch refusal links BROWSER.md's Daemon discipline
section. Free tests pin both.

Co-authored-by: Hagetino <Hagetino@users.noreply.github.com>

* test(windows): name the B2, B4, B5 and B12 tests in the curated Windows lane

The runtime-root bundle tests lived in browse/test/config.test.ts and the
Copilot glossary test in test/host-config.test.ts, both excluded from the
Windows lane, so the two Windows-only fixes were never checked on Windows.
Move each into its own Windows-safe file (unchanged assertions) and list it,
the piped-stdin chain test and the /cso docker.exe discovery test as named
Windows coverage in scripts/lib/windows-curation.ts.

* fix: the free-text block exits loudly when mktemp fails; spec and redact tests follow the file mechanism

The redact resolver test, the #2679 mktemp guard test, the /spec invariant
and the spec secret-sink harness pinned the heredoc transport. They now pin
the agent-written file: the harness runs the draft-file block, writes the
draft the way the file-write tool would, then runs the real scan fence, with
every HIGH/MEDIUM/scanner-failure assertion unchanged.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* test: hostile payloads through the generated posting blocks, identifier grammars, every quoting shape

- The lint reads a whole command, so an unquoted multi-word placeholder is
  caught; negative controls cover double, single and no quotes, quoted and
  unquoted heredocs, continuation lines, and quoted-only identifiers used
  unquoted.
- Every allowlisted grammar rejects quote-breaking characters (and shell
  operators and whitespace when used unquoted); git accepts 'fix;id' and
  'fix`id`' as branch names, the ref grammar does not.
- Greptile replies, test-failure issues (GitHub and GitLab) and /spec filing
  and archive run from the real generated text with stub gh/glab: a body
  with backticks, $(...), an apostrophe and lines equal to EOF and the old
  heredoc delimiters arrives byte for byte, nothing in it runs, and the temp
  file is gone. An unwritten file is refused with its path and the manual
  command, and nothing is sent.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* test(ship): the PR check precedes the Greptile dispatch, and each skip names its reason

Runs Step 10's generated check against stub gh for gh missing, not logged
in, a non-GitHub remote, no PR, a failed lookup and an existing PR. Fails on
the previous text (which printed PR: unknown and dispatched).

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* feat(ship): ship-measure runner for the measure-then-fix loop (A6)

scripts/ship-measure.ts owns /ship's diagnostic measurement of a red eval
case: per-kind aggregation (rule trials; behavior panels of 3, each at its
own 2 of 3 plus 90% of trials; judge outputs scored by 3-sample panels,
standalone judge ids accepted), one artifact directory per baseline,
repair round and trial, a diagnostic label with verdict null that refuses
the eval history dir, an estimated admission budget that reserves every
concurrent trial and reconciles actual cost, the ask-once rule, the
repair-round limit, the unmeasured skip and the per-case PR table.

Free-suite flakes (CEO-1): 'free' reruns one shard's exact file list N
times, rerun 1 alone as the baseline and the rest in parallel at
max(1, floor(cores / shard concurrency)), each with its own HOME, state
root and flake ledger, GSTACK_FREE_RETRY_FLAKY=0, under a wall cap that
reports a partial count. test:ubicloud --diagnostic runs the same on one
VM with the retry off.

bin/gstack-config gains the DX-7 keys with their CEO-9 defaults and
rejecting validators. Free tests drive every kind, the budget stop, the
unmeasured skip and the free reruns with fake runners.

* fix: a Codex usage limit is quota_exhausted, a plain 429 is rate_limited, and only Codex's own error lines count (#3051 rework)

The probe's quota signature used to treat any rate limit, "too many
requests" or 429 as quota, and read the whole output, which echoes the
prompt. Now only Codex's trailing ERROR: / stream error lines are read.
A usage-limit or insufficient_quota line is MODEL_QUOTA_EXHAUSTED (exit 4,
cached 15 minutes; quota wins over a 429 that names insufficient_quota); a
plain 429 is MODEL_PROBE_RATE_LIMITED (exit 0, state rate_limited, never
cached), reported as CODEX_MODE: unverified (rate_limited) so the review
still runs and decides.

The quota HINT says how many minutes gstack skips Codex and how to retry
now (GSTACK_CODEX_PROBE_RETRY=1 skips the negative cache for that probe, or
delete <state root>/.codex-model-probe), with the full troubleshooting URL.
classifyOutsideReview reads the same trailing lines: a mid-review quota is
unavailable (quota_exhausted), a mid-review 429 unavailable (rate_limited).
New gate row rate_limited and docs anchor codex-rate-limited; the quota row
documents the retry. Tests cover each line shape, the echoed prompt, exit
0, timeout, retry recovery, probe/classifier parity, and two fresh-shell
preflight blocks where the second makes no paid Codex call.

Co-authored-by: venkatareddyg <venkatareddyg@users.noreply.github.com>

* ci: the eval image installs zsh, and the macOS lane sources the Codex probe from zsh

Dockerfile.ci adds zsh so the sourced-helper guard runs (and fails loudly
when zsh is missing) inside the eval container too. The macOS named
regressions job sources bin/gstack-codex-probe from zsh in an unrelated
directory and runs _gstack_codex_select_model exec (no paid call), then runs
the sourced-helper guard on the macOS runner. A free test pins both lanes and
runs the macOS step's script locally.

* test: deterministic regression for the Codex watchdog freezing the command before reaping its children

The existing stubborn-child test caught the reap-then-kill race only some of
the time (2 of 3 runs on the pre-fix watchdog). A pkill that sleeps after
reaping widens the window between reaping the children and killing the
command, so a watchdog that does not SIGSTOP the command first always lets
it print "late" after the deadline. Fails 3 of 3 on the pre-fix watchdog,
passes 3 of 3 on the current one.

* test: live codex smokes run codex in a private HOME and CODEX_HOME

codex-resume-flag-semantics and codex-e2e-sol-scope probe the codex CLI (the
latter at module load, in every free run), and every codex run writes
$CODEX_HOME/tmp/arg0, so with a real codex on PATH they wrote into the
developer's ~/.codex. Both now give codex a private HOME and CODEX_HOME and
remove it afterwards. A free test runs each file against a stub codex that
records HOME and CODEX_HOME and asserts neither is the caller's.

* feat(ship): a red eval runs classify, measure, fix, re-measure, gate once (A6)

Step 6 no longer stops at the first red paid eval: it reads the new lazily
loaded measure section and runs the loop for each red case, and Step 5
measures a failed free-suite shard (diagnostic reruns, retry off) before
the triage can call it pre-existing. The section states the diagnostic-
not-verdict rule, the per-kind table, the ask-once and named-red stops,
the unmeasured label and the honest-fix wording (observed k/n after fix
at <cause>). A free test pins the steps and their order in the generated
skill and checks every command and flag it names exists in the runner.

Ship's parity cap rises to 1.455 (measured 272,944 / 187,706 = 1.4541).

* docs(testing): diagnostic measurement is not a verdict; per-kind measure table (A6)

* test(ship): seeded-flake paid case for the measure loop (A6, periodic, behavior)

A fixture repo with no remote documents a single-case eval command and a
gate command, both free local stubs. queue-priorities claims trial slots
with atomic mkdir (reset per ship-measure round) and fails slots 2, 5 and
9 while src/priorities.js leaves its seed-shuffled list unsorted, printing
failure_cause and failure_detail that name the line. The paid case gives
/ship's generated Step 6 and measure section to a live session and asserts
it measured the case alone, fixed the named line without touching the
eval, re-measured at least 10 passing trials on the sorted file, and only
then ran the gate once; any question other than the spend question is a
contract violation.

A free test measures the fixture through the real ship-measure CLI: 7/10
unsorted, 7/10 after an unrelated edit with the gate still red (ENG-13's
negative control), 10/10 after the sort with the gate green.

* test(cso): the missing-scanner case points Docker at a dead socket

'an optional scanner prerequisite does not turn completed manual coverage
partial' assumed no usable Docker. On a machine with Docker and a pulled
gitleaks image the scan completed and the test failed (also on main). The
scan step now gets a DOCKER_HOST that cannot connect, which is the
prerequisite-missing condition the test describes.

* fix: Aside prompts travel as agent-written files, never inside the command

The open-ended reading recipe (browse, devex-review), scrape's fuzzy-intent
read and the shared web-research block put the model's question, query and
reply format inside a double-quoted _aside_exec argument, where backticks and
$(...) from page or repo text would run. The agent now writes the prompt into
a private .gstack/tmp file; the send block rebuilds the path from the printed
basename, refuses when the file is empty, and passes "$(cat "$PROMPT_FILE")".
The fixed read-only sentence stays in the shell source.

aside-driver pins move from the inline prompt to the file-based send block.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix: design briefs and approval feedback travel as agent-written files

Design briefs went into $D variants/generate/check as a double-quoted
argument, and approval feedback was spliced into a single-quoted echo of JSON,
so a quote, backtick or $(...) in either broke the command or ran. The agent
now writes each brief into a private .gstack/tmp file and the block passes
--brief "$(cat "$BRIEF_FILE")" (the CLI's --brief-file expects a JSON
brief, so plain text uses --brief). variants and the later check reuse the
same brief file. approved.json is built with jq -n from --arg values and
--rawfile feedback, so the feedback is data. The office-hours mockup flow
creates its brief and feedback files in one block.

design-approval-flow now writes the feedback file (with quotes, backticks and
$(...) in it) instead of substituting <FEEDBACK>, and checks the file is
removed after the save.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix: carve office-hours on every host to stay under the 160,000-byte ceiling

With its brief, feedback and research prompts moved into files, the inlined
office-hours render is 161,329 bytes on Codex and 160,302 on Factory, over
SKILL_BYTE_CEILING, so gen-skill-docs --host all fails. Per the C4 policy
(carve every skill whose external render exceeds the ceiling), office-hours
joins ship and plan-ceo-review in CARVED_ON_EVERY_HOST. The Claude render is
unchanged; external hosts read its sections relative to the installed skill.
external-host-carve and qa-lazy-sections now include office-hours in their
carved-skill lists.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* chore: regenerate after the free-text mktemp guard

* fix(codex): prompts and review focus travel as agent-written files

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

Challenge and consult prompts, and the /codex review focus text, are written
by the agent into private .gstack/tmp files and fed to Codex on stdin or read
back with cat; no heredoc carries them. Consult's new and resumed runs share
one block (and one parser) so no placeholder stands in for the parser; a
resumed run reads its session id from .context/codex-session-id and checks it.
Adds the A3 group 2 placeholder allowlist block.

* fix(benchmark-models): an inline prompt goes through a prompt file

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix(land-and-deploy): PR head repository and branch travel as data

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

The branch check reads headRepository/headRefName from gh's JSON into quoted
shell variables; ls-remote, the confirm-first delete and the local delete use
those variables instead of model-substituted names. The postfail test now pins
the variable form it replaces.

* fix(office-hours): the reviewer receipt must match the receipt grammar before the check runs

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix(setup-gbrain): cleanup-orphans collects the PAT with read_secret_to_env

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix(ship): PR body drafts and rejected test paths are agent-written files

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

The PR body is written into two private drafts (through ## Documentation, and
from ## Test plan on); the scan block splices Step 14.5's section between them
into the scanned temp file and deletes the drafts. Rejected test paths are read
from a written list, and paths outside the repository are skipped. Tests that
ran the old heredoc blocks now write the drafts and list first.

* fix(sync-gbrain): orchestrator flags must match an allowlisted grammar

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix: the gbrain page save and external-host placeholders pass the free-text rule

The gbrain save block passed the whole page through a quoted heredoc inside
--content; the agent now writes it to a mktemp file and gbrain put reads it
on stdin. The Claude Code outside-voice runtime root and session mode, and
the feature slug, join the allowlist with grammars; unused entries are
dropped, and a test keeps every allowlisted placeholder tied to a real use.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix: skill-specific Aside research queries travel as prompt files

investigate, office-hours, plan-ceo-review, review, plan-eng-review,
design-consultation Phase 2, the shared test bootstrap (B2) and QA's test
bootstrap each carried their own _aside_exec call with the model-filled query
inside a double-quoted argument. Skills that already carry the Web research
block now give only the prompt-file text and use that block to create, write
and send it; design-consultation, the shared bootstrap and QA create the file
and send it with the new {{ASIDE_RESEARCH_SEND}} resolver, which is the same
send block the research section uses (read-only sentence stays in the shell).

aside-driver's B2 pin and qa-browser-preservation's bootstrap contract move
from the inline call to the prompt file and the shared send resolver.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* fix: prose design commands pass briefs and feedback as data

The DESIGN_SETUP command list taught `iterate --feedback "..."`, and
design-consultation's late-change and plan-design-review's slop-regenerate
lines showed `--feedback "<feedback>"` / `"..."`; design-shotgun's retry
showed `generate --brief "<brief>"` and `evolve --brief "<brief>"`. Feedback
now reads "$(cat "$FEEDBACK_FILE")" from an agent-written mktemp file
(the setup note says how), and the shotgun retry reads the variant's own brief
out of briefs.json with jq instead of retyping it.

Co-authored-by: dgrant <dgrant@users.noreply.github.com>

* test: record parity sizes after the free-text file mechanism; refresh ship goldens

Measured union and skeleton sizes for ship, plan-eng-review,
plan-design-review, office-hours, design-consultation, review, qa, browse
and design-shotgun after every posting, prompt and brief site moved to
agent-written mktemp files; the ship goldens pick up the question-tuning
slug and the dropped free_text field.

* test: parity caps for the combined wave head (rounded up past the measured ratio)

* fix(plan-ceo-review): the mode handoff helper reminds the model to lead its chat with the line (#3038)

Periodic run 37272185151's auto-decide-preserved red replays as the Step 0E
handoff-line class: the model ran gstack-ceo-mode-handoff --auto, got the
exact line, then opened its chat with a heading and a paraphrase, so the
user never saw the auto-decide line (the terminal collapses tool output)
and the detector saw no outcome. The helper now prints a one-line reminder
on stderr beside the line; the detector accepts the line followed by that
reminder and nothing else. The ship Greptile check test reads its template
(test-of-test ratchet).

* test: every troubleshooting link in shipped code resolves, relative or full URL

* docs(todos): Oct 6 fix-wave follow-ups

* v1.91.32.0 release notes: Codex works from zsh, free text never enters shell commands, honest failures

* fix(plan-ceo-review): show the mode handoff line through a PostToolUse hook, not model compliance (#3038)

The stderr reminder beside the handoff line measured 1/10 on
auto-decide-preserved: the model still opened its chat with a paraphrase
('I've set review mode to HOLD SCOPE...'), so the user never saw the line and
the detector saw no outcome. /plan-ceo-review now declares a Claude-only
PostToolUse hook that shows the helper's exact line as a system message.
Diagnostic measurement on this head: 10/10, the line visible in every trial
while no trial's chat led with it. The reminder is reverted.

* fix: type the handoff hook's line filter

* fix: repairs from the integrated free suite

- The self-locate markers looked like heredocs to the pipe-deadlock guard;
  they are plain comment fences now.
- The spawned block keeps the canonical 'conservative non-destructive'
  phrase the cross-surface drift guard pins.
- The free-text block's mktemp refusal says 'mktemp failed', as every
  /codex temp file must.
- The batch transcript read reports sizes in MiB.
- docs/TESTING_INTERNALS.md gets a real 'Ship measure' heading for its
  anchor.
- The early-question harness admits /plan-ceo-review's handoff hook by its
  exact command (it only adds a system message); any other PostToolUse Bash
  hook is still refused.
- Paid file count and the unconsumed-file example follow the new seeded
  case; ship goldens refreshed.
- The CSO scanner test points Docker at a dead socket, so a machine with the
  pulled image does not scan.

* test(cso): a host with no Docker binary is also a no-scan host

The missing-image scan test failed on a Docker-less VM (docker is not
installed in a trusted directory). Every accepted message is a reason the
scan cannot run here; the not_assessed, helper-owned artifact assertions are
unchanged.

* ci: split the USERPROFILE assignment from export (SC2155)

* fix(browse): Windows runtime roots read .source-path as a native path (#3026)

The new windows-setup-e2e journey showed the installed browse could not
start its server. setup runs under Git Bash and wrote .source-path as an
MSYS path (/d/a/gstack); Node read it as \d\a\gstack on the current drive,
found nothing, and fell back to the root's own bundle, which cannot import
playwright. setup now writes cygpath -m, and the CLI maps an MSYS drive path
for installs written by an older setup. The journey prints the daemon and
startup logs when the chain fails.

* fix(ship-measure): defects from the parallel #3034 plan review

- A trial passes only with a JUnit testcase that executed and passed; a
  --case that selected nothing also exits 0.
- measure runs a no-cost --list preflight that must plan the case's own
  file before any paid trial.
- Diagnostic trials drop EVALS_CACHE_DIR/EVALS_CACHE_RUNTIME_ID, so they
  never reuse a stored judge pass or publish one the gate could reuse.
- Gate once: when CI runs the gate on push, the push is the gate run; the
  skill no longer also starts eval:bg:pr (a second paid gate).
- ubi-runner: down fails unless the VM is confirmed gone, and nothing
  sweeps other runners' VMs by default (UBI_GC_HOURS opt-in).

* test(windows): the seeded-flake fixture drives a POSIX shell stub, so it stays off the Windows lane

CreateProcess cannot exec the fixture's ./evals.sh shebang script (status
null on windows-free-shard 6). The measure runner is covered on Windows by
ship-measure.test.ts, which uses in-process fake runners.

* fix: the free-text block refuses an unset temp dir instead of writing at /

The rendered block ran mktemp "$_GT/..." with _GT unset in the portability
test; on Linux that fails at /, but Git Bash on Windows can write to its
install root, so the block went on (windows-free-shard 3). It now uses
${_GT:?}, so an unset directory always fails closed with the mktemp
message.

* test: pin the guarded ${_GT:?} temp-file form

* test: the Greptile check's gh stub uses a portable shebang

On Windows the absolute bash path has a space, so the stub never ran and
every case read 'gh not logged in' (windows-free-shard 1).

* test: the Greptile check runs with the native PATH and the gh stub first

The PATH-only stub bin could not run its stub on Windows (every case read
'gh not logged in'). Stub cases now keep the real PATH with the stub first;
only the no-gh case drops directories holding a real gh.

---------

Co-authored-by: marcosdetry <marcosdetry@users.noreply.github.com>
Co-authored-by: akshaykalia <akshaykalia@users.noreply.github.com>
Co-authored-by: scottgigante-hubflow <scottgigante-hubflow@users.noreply.github.com>
Co-authored-by: woodsonl <woodsonl@users.noreply.github.com>
Co-authored-by: bezdekt <bezdekt@users.noreply.github.com>
Co-authored-by: dgrant <dgrant@users.noreply.github.com>
Co-authored-by: venkatareddyg <venkatareddyg@users.noreply.github.com>
Co-authored-by: CharlesBerg85 <CharlesBerg85@users.noreply.github.com>
Co-authored-by: VaibDeveloper <VaibDeveloper@users.noreply.github.com>
Co-authored-by: Hagetino <Hagetino@users.noreply.github.com>
Co-authored-by: Rekin226 <Rekin226@users.noreply.github.com>
Co-authored-by: ekson73 <ekson73@users.noreply.github.com>
Co-authored-by: tianxchen <tianxchen@users.noreply.github.com>
Co-authored-by: BenjaminDSmithy <BenjaminDSmithy@users.noreply.github.com>
Co-authored-by: ubay887 <ubay887@users.noreply.github.com>
Co-authored-by: nareshh74 <nareshh74@users.noreply.github.com>
Co-authored-by: syong <syong@users.noreply.github.com>
2026-10-06 23:42:19 +00:00

4178 lines
7.5 MiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<base href="https://gstack-render.localhost/">
<title>gstack diagram-render</title>
<style>
body { font-family: Helvetica, "Liberation Sans", Arial, sans-serif; margin: 0; }
</style>
<script>
window.__errors = [];
window.onerror = function (msg, src, line, col, err) {
window.__errors.push(String(msg) + " @" + line + ":" + col);
};
window.addEventListener("unhandledrejection", function (e) {
window.__errors.push("unhandledrejection: " + String(e.reason).slice(0, 500));
});
</script>
</head>
<body>
<div id="status">loading</div>
<script type="module">
var bje=Object.create;var{getPrototypeOf:vje,defineProperty:qL,getOwnPropertyNames:kje}=Object;var mmA=Object.prototype.hasOwnProperty;function Fje(A){return this[A]}var xje,Sje,yu=(A,e,t)=>{var r=A!=null&&typeof A==="object";if(r){var i=e?xje??=new WeakMap:Sje??=new WeakMap,u=i.get(A);if(u)return u}t=A!=null?bje(vje(A)):{};let a=e||!A||!A.__esModule||!mmA.call(A,"default")?qL(t,"default",{value:A,enumerable:!0}):t;if(A&&typeof A==="object"||typeof A==="function"){for(let n of kje(A))if(!mmA.call(a,n))qL(a,n,{get:Fje.bind(A,n),enumerable:!0})}if(r)i.set(A,a);return a};var wu=(A,e)=>()=>(e||A((e={exports:{}}).exports,e),e.exports);var Lje=(A)=>A;function Rje(A,e){this[A]=Lje.bind(null,e)}var Dt=(A,e)=>{for(var t in e)qL(A,t,{get:e[t],enumerable:!0,configurable:!0,set:Rje.bind(e,t)})};var _=(A,e,t)=>()=>{if(A)try{e=A(A=0)}catch(r){t=[r]}if(t)throw t[0];return e};var LZ=(A,e,t)=>{for(var r in e)qL(A,r,{get:e[r],set:t[r],enumerable:!0,configurable:!0})},Z2=((A)=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(A,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):A)(function(A){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+A+'" is not supported')});var DmA,y=(A,e)=>DmA(A,"name",{value:e,configurable:!0}),Vh=(A,e)=>{for(var t in e)DmA(A,t,{get:e[t],enumerable:!0})};var Nt=_(()=>{DmA=Object.defineProperty});var zL=wu(function(RZ,NZ){(function(A,e){typeof RZ=="object"&&typeof NZ<"u"?NZ.exports=e():typeof define=="function"&&define.amd?define(e):(A=typeof globalThis<"u"?globalThis:A||self).dayjs=e()})(RZ,function(){var A=1000,e=60000,t=3600000,r="millisecond",i="second",u="minute",a="hour",n="day",o="week",s="month",l="quarter",g="year",C="date",B="Invalid Date",E=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,d=/\[([^\]]+)]|YYYY|YY|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,I={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(x){var F=["th","st","nd","rd"],T=x%100;return"["+x+(F[(T-20)%10]||F[T]||F[0])+"]"}},h=function(x,F,T){var R=String(x);return!R||R.length>=F?x:""+Array(F+1-R.length).join(T)+x},Q={s:h,z:function(x){var F=-x.utcOffset(),T=Math.abs(F),R=Math.floor(T/60),L=T%60;return(F<=0?"+":"-")+h(R,2,"0")+":"+h(L,2,"0")},m:function x(F,T){if(F.date()<T.date())return-x(T,F);var R=12*(T.year()-F.year())+(T.month()-F.month()),L=F.clone().add(R,s),M=T-L<0,U=F.clone().add(R+(M?-1:1),s);return+(-(R+(T-L)/(M?L-U:U-L))||0)},a:function(x){return x<0?Math.ceil(x)||0:Math.floor(x)},p:function(x){return{M:s,y:g,w:o,d:n,D:C,h:a,m:u,s:i,ms:r,Q:l}[x]||String(x||"").toLowerCase().replace(/s$/,"")},u:function(x){return x===void 0}},p="en",m={};m[p]=I;var f="$isDayjsObject",D=function(x){return x instanceof v||!(!x||!x[f])},w=function x(F,T,R){var L;if(!F)return p;if(typeof F=="string"){var M=F.toLowerCase();m[M]&&(L=M),T&&(m[M]=T,L=M);var U=F.split("-");if(!L&&U.length>1)return x(U[0])}else{var Y=F.name;m[Y]=F,L=Y}return!R&&L&&(p=L),L||!R&&p},b=function(x,F){if(D(x))return x.clone();var T=typeof F=="object"?F:{};return T.date=x,T.args=arguments,new v(T)},k=Q;k.l=w,k.i=D,k.w=function(x,F){return b(x,{locale:F.$L,utc:F.$u,x:F.$x,$offset:F.$offset})};var v=function(){function x(T){this.$L=w(T.locale,null,!0),this.parse(T),this.$x=this.$x||T.x||{},this[f]=!0}var F=x.prototype;return F.parse=function(T){this.$d=function(R){var{date:L,utc:M}=R;if(L===null)return new Date(NaN);if(k.u(L))return new Date;if(L instanceof Date)return new Date(L);if(typeof L=="string"&&!/Z$/i.test(L)){var U=L.match(E);if(U){var Y=U[2]-1||0,H=(U[7]||"0").substring(0,3);return M?new Date(Date.UTC(U[1],Y,U[3]||1,U[4]||0,U[5]||0,U[6]||0,H)):new Date(U[1],Y,U[3]||1,U[4]||0,U[5]||0,U[6]||0,H)}}return new Date(L)}(T),this.init()},F.init=function(){var T=this.$d;this.$y=T.getFullYear(),this.$M=T.getMonth(),this.$D=T.getDate(),this.$W=T.getDay(),this.$H=T.getHours(),this.$m=T.getMinutes(),this.$s=T.getSeconds(),this.$ms=T.getMilliseconds()},F.$utils=function(){return k},F.isValid=function(){return this.$d.toString()!==B},F.isSame=function(T,R){var L=b(T);return this.startOf(R)<=L&&L<=this.endOf(R)},F.isAfter=function(T,R){return b(T)<this.startOf(R)},F.isBefore=function(T,R){return this.endOf(R)<b(T)},F.$g=function(T,R,L){return k.u(T)?this[R]:this.set(L,T)},F.unix=function(){return Math.floor(this.valueOf()/1000)},F.valueOf=function(){return this.$d.getTime()},F.startOf=function(T,R){var L=this,M=!!k.u(R)||R,U=k.p(T),Y=function(W,CA){var tA=k.w(L.$u?Date.UTC(L.$y,CA,W):new Date(L.$y,CA,W),L);return M?tA:tA.endOf(n)},H=function(W,CA){return k.w(L.toDate()[W].apply(L.toDate("s"),(M?[0,0,0,0]:[23,59,59,999]).slice(CA)),L)},J=this.$W,K=this.$M,O=this.$D,P="set"+(this.$u?"UTC":"");switch(U){case g:return M?Y(1,0):Y(31,11);case s:return M?Y(1,K):Y(0,K+1);case o:var z=this.$locale().weekStart||0,AA=(J<z?J+7:J)-z;return Y(M?O-AA:O+(6-AA),K);case n:case C:return H(P+"Hours",0);case a:return H(P+"Minutes",1);case u:return H(P+"Seconds",2);case i:return H(P+"Milliseconds",3);default:return this.clone()}},F.endOf=function(T){return this.startOf(T,!1)},F.$set=function(T,R){var L,M=k.p(T),U="set"+(this.$u?"UTC":""),Y=(L={},L[n]=U+"Date",L[C]=U+"Date",L[s]=U+"Month",L[g]=U+"FullYear",L[a]=U+"Hours",L[u]=U+"Minutes",L[i]=U+"Seconds",L[r]=U+"Milliseconds",L)[M],H=M===n?this.$D+(R-this.$W):R;if(M===s||M===g){var J=this.clone().set(C,1);J.$d[Y](H),J.init(),this.$d=J.set(C,Math.min(this.$D,J.daysInMonth())).$d}else Y&&this.$d[Y](H);return this.init(),this},F.set=function(T,R){return this.clone().$set(T,R)},F.get=function(T){return this[k.p(T)]()},F.add=function(T,R){var L,M=this;T=Number(T);var U=k.p(R),Y=function(K){var O=b(M);return k.w(O.date(O.date()+Math.round(K*T)),M)};if(U===s)return this.set(s,this.$M+T);if(U===g)return this.set(g,this.$y+T);if(U===n)return Y(1);if(U===o)return Y(7);var H=(L={},L[u]=e,L[a]=t,L[i]=A,L)[U]||1,J=this.$d.getTime()+T*H;return k.w(J,this)},F.subtract=function(T,R){return this.add(-1*T,R)},F.format=function(T){var R=this,L=this.$locale();if(!this.isValid())return L.invalidDate||B;var M=T||"YYYY-MM-DDTHH:mm:ssZ",U=k.z(this),Y=this.$H,H=this.$m,J=this.$M,{weekdays:K,months:O,meridiem:P}=L,z=function(CA,tA,lA,gA){return CA&&(CA[tA]||CA(R,M))||lA[tA].slice(0,gA)},AA=function(CA){return k.s(Y%12||12,CA,"0")},W=P||function(CA,tA,lA){var gA=CA<12?"AM":"PM";return lA?gA.toLowerCase():gA};return M.replace(d,function(CA,tA){return tA||function(lA){switch(lA){case"YY":return String(R.$y).slice(-2);case"YYYY":return k.s(R.$y,4,"0");case"M":return J+1;case"MM":return k.s(J+1,2,"0");case"MMM":return z(L.monthsShort,J,O,3);case"MMMM":return z(O,J);case"D":return R.$D;case"DD":return k.s(R.$D,2,"0");case"d":return String(R.$W);case"dd":return z(L.weekdaysMin,R.$W,K,2);case"ddd":return z(L.weekdaysShort,R.$W,K,3);case"dddd":return K[R.$W];case"H":return String(Y);case"HH":return k.s(Y,2,"0");case"h":return AA(1);case"hh":return AA(2);case"a":return W(Y,H,!0);case"A":return W(Y,H,!1);case"m":return String(H);case"mm":return k.s(H,2,"0");case"s":return String(R.$s);case"ss":return k.s(R.$s,2,"0");case"SSS":return k.s(R.$ms,3,"0");case"Z":return U}return null}(CA)||U.replace(":","")})},F.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},F.diff=function(T,R,L){var M,U=this,Y=k.p(R),H=b(T),J=(H.utcOffset()-this.utcOffset())*e,K=this-H,O=function(){return k.m(U,H)};switch(Y){case g:M=O()/12;break;case s:M=O();break;case l:M=O()/3;break;case o:M=(K-J)/604800000;break;case n:M=(K-J)/86400000;break;case a:M=K/t;break;case u:M=K/e;break;case i:M=K/A;break;default:M=K}return L?M:k.a(M)},F.daysInMonth=function(){return this.endOf(s).$D},F.$locale=function(){return m[this.$L]},F.locale=function(T,R){if(!T)return this.$L;var L=this.clone(),M=w(T,R,!0);return M&&(L.$L=M),L},F.clone=function(){return k.w(this.$d,this)},F.toDate=function(){return new Date(this.valueOf())},F.toJSON=function(){return this.isValid()?this.toISOString():null},F.toISOString=function(){return this.$d.toISOString()},F.toString=function(){return this.$d.toUTCString()},x}(),S=v.prototype;return b.prototype=S,[["$ms",r],["$s",i],["$m",u],["$H",a],["$W",n],["$M",s],["$y",g],["$D",C]].forEach(function(x){S[x[1]]=function(F){return this.$g(F,x[0],x[1])}}),b.extend=function(x,F){return x.$i||(x(F,v,b),x.$i=!0),b},b.locale=w,b.isDayjs=D,b.unix=function(x){return b(1000*x)},b.en=m[p],b.Ls=m,b.p={},b})});var ymA,Kd,sA,_5,Yg;var ir=_(()=>{Nt();ymA=yu(zL(),1),Kd={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},sA={trace:y((...A)=>{},"trace"),debug:y((...A)=>{},"debug"),info:y((...A)=>{},"info"),warn:y((...A)=>{},"warn"),error:y((...A)=>{},"error"),fatal:y((...A)=>{},"fatal")},_5=y(function(A="fatal"){let e=Kd.fatal;if(typeof A==="string"){if(A.toLowerCase()in Kd)e=Kd[A]}else if(typeof A==="number")e=A;if(sA.trace=()=>{},sA.debug=()=>{},sA.info=()=>{},sA.warn=()=>{},sA.error=()=>{},sA.fatal=()=>{},e<=Kd.fatal)sA.fatal=console.error?console.error.bind(console,Yg("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",Yg("FATAL"));if(e<=Kd.error)sA.error=console.error?console.error.bind(console,Yg("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",Yg("ERROR"));if(e<=Kd.warn)sA.warn=console.warn?console.warn.bind(console,Yg("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",Yg("WARN"));if(e<=Kd.info)sA.info=console.info?console.info.bind(console,Yg("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",Yg("INFO"));if(e<=Kd.debug)sA.debug=console.debug?console.debug.bind(console,Yg("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Yg("DEBUG"));if(e<=Kd.trace)sA.trace=console.debug?console.debug.bind(console,Yg("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Yg("TRACE"))},"setLogLevel"),Yg=y((A)=>`%c${ymA.default().format("ss.SSS")} : ${A} : `,"format")});var ZL,wmA;var bmA=_(()=>{ZL={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:(A)=>A>=255?255:A<0?0:A,g:(A)=>A>=255?255:A<0?0:A,b:(A)=>A>=255?255:A<0?0:A,h:(A)=>A%360,s:(A)=>A>=100?100:A<0?0:A,l:(A)=>A>=100?100:A<0?0:A,a:(A)=>A>=1?1:A<0?0:A},toLinear:(A)=>{let e=A/255;return A>0.03928?Math.pow((e+0.055)/1.055,2.4):e/12.92},hue2rgb:(A,e,t)=>{if(t<0)t+=1;if(t>1)t-=1;if(t<0.16666666666666666)return A+(e-A)*6*t;if(t<0.5)return e;if(t<0.6666666666666666)return A+(e-A)*(0.6666666666666666-t)*6;return A},hsl2rgb:({h:A,s:e,l:t},r)=>{if(!e)return t*2.55;A/=360,e/=100,t/=100;let i=t<0.5?t*(1+e):t+e-t*e,u=2*t-i;switch(r){case"r":return ZL.hue2rgb(u,i,A+0.3333333333333333)*255;case"g":return ZL.hue2rgb(u,i,A)*255;case"b":return ZL.hue2rgb(u,i,A-0.3333333333333333)*255}},rgb2hsl:({r:A,g:e,b:t},r)=>{A/=255,e/=255,t/=255;let i=Math.max(A,e,t),u=Math.min(A,e,t),a=(i+u)/2;if(r==="l")return a*100;if(i===u)return 0;let n=i-u,o=a>0.5?n/(2-i-u):n/(i+u);if(r==="s")return o*100;switch(i){case A:return((e-t)/n+(e<t?6:0))*60;case e:return((t-A)/n+2)*60;case t:return((A-e)/n+4)*60;default:return-1}}},wmA=ZL});var Nje,vmA;var kmA=_(()=>{Nje={clamp:(A,e,t)=>{if(e>t)return Math.min(e,Math.max(t,A));return Math.min(t,Math.max(e,A))},round:(A)=>Math.round(A*10000000000)/10000000000},vmA=Nje});var Gje,FmA;var xmA=_(()=>{Gje={dec2hex:(A)=>{let e=Math.round(A).toString(16);return e.length>1?e:`0${e}`}},FmA=Gje});var Uje,$t;var LB=_(()=>{bmA();kmA();xmA();Uje={channel:wmA,lang:vmA,unit:FmA},$t=Uje});var Jd,Xn;var W5=_(()=>{LB();Jd={};for(let A=0;A<=255;A++)Jd[A]=$t.unit.dec2hex(A);Xn={ALL:0,RGB:1,HSL:2}});class SmA{constructor(){this.type=Xn.ALL}get(){return this.type}set(A){if(this.type&&this.type!==A)throw Error("Cannot change both RGB and HSL channels at the same time");this.type=A}reset(){this.type=Xn.ALL}is(A){return this.type===A}}var LmA;var RmA=_(()=>{W5();LmA=SmA});class NmA{constructor(A,e){this.color=e,this.changed=!1,this.data=A,this.type=new LmA}set(A,e){return this.color=e,this.changed=!1,this.data=A,this.type.type=Xn.ALL,this}_ensureHSL(){let A=this.data,{h:e,s:t,l:r}=A;if(e===void 0)A.h=$t.channel.rgb2hsl(A,"h");if(t===void 0)A.s=$t.channel.rgb2hsl(A,"s");if(r===void 0)A.l=$t.channel.rgb2hsl(A,"l")}_ensureRGB(){let A=this.data,{r:e,g:t,b:r}=A;if(e===void 0)A.r=$t.channel.hsl2rgb(A,"r");if(t===void 0)A.g=$t.channel.hsl2rgb(A,"g");if(r===void 0)A.b=$t.channel.hsl2rgb(A,"b")}get r(){let A=this.data,e=A.r;if(!this.type.is(Xn.HSL)&&e!==void 0)return e;return this._ensureHSL(),$t.channel.hsl2rgb(A,"r")}get g(){let A=this.data,e=A.g;if(!this.type.is(Xn.HSL)&&e!==void 0)return e;return this._ensureHSL(),$t.channel.hsl2rgb(A,"g")}get b(){let A=this.data,e=A.b;if(!this.type.is(Xn.HSL)&&e!==void 0)return e;return this._ensureHSL(),$t.channel.hsl2rgb(A,"b")}get h(){let A=this.data,e=A.h;if(!this.type.is(Xn.RGB)&&e!==void 0)return e;return this._ensureRGB(),$t.channel.rgb2hsl(A,"h")}get s(){let A=this.data,e=A.s;if(!this.type.is(Xn.RGB)&&e!==void 0)return e;return this._ensureRGB(),$t.channel.rgb2hsl(A,"s")}get l(){let A=this.data,e=A.l;if(!this.type.is(Xn.RGB)&&e!==void 0)return e;return this._ensureRGB(),$t.channel.rgb2hsl(A,"l")}get a(){return this.data.a}set r(A){this.type.set(Xn.RGB),this.changed=!0,this.data.r=A}set g(A){this.type.set(Xn.RGB),this.changed=!0,this.data.g=A}set b(A){this.type.set(Xn.RGB),this.changed=!0,this.data.b=A}set h(A){this.type.set(Xn.HSL),this.changed=!0,this.data.h=A}set s(A){this.type.set(Xn.HSL),this.changed=!0,this.data.s=A}set l(A){this.type.set(Xn.HSL),this.changed=!0,this.data.l=A}set a(A){this.changed=!0,this.data.a=A}}var GmA;var UmA=_(()=>{LB();RmA();W5();GmA=NmA});var Mje,jh;var q5=_(()=>{UmA();Mje=new GmA({r:0,g:0,b:0,a:0},"transparent"),jh=Mje});var MmA,Sp;var GZ=_(()=>{q5();W5();MmA={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:(A)=>{if(A.charCodeAt(0)!==35)return;let e=A.match(MmA.re);if(!e)return;let t=e[1],r=parseInt(t,16),i=t.length,u=i%4===0,a=i>4,n=a?1:17,o=a?8:4,s=u?0:-1,l=a?255:15;return jh.set({r:(r>>o*(s+3)&l)*n,g:(r>>o*(s+2)&l)*n,b:(r>>o*(s+1)&l)*n,a:u?(r&l)*n/255:1},A)},stringify:(A)=>{let{r:e,g:t,b:r,a:i}=A;if(i<1)return`#${Jd[Math.round(e)]}${Jd[Math.round(t)]}${Jd[Math.round(r)]}${Jd[Math.round(i*255)]}`;else return`#${Jd[Math.round(e)]}${Jd[Math.round(t)]}${Jd[Math.round(r)]}`}},Sp=MmA});var VL,z5;var TmA=_(()=>{LB();q5();VL={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:(A)=>{let e=A.match(VL.hueRe);if(e){let[,t,r]=e;switch(r){case"grad":return $t.channel.clamp.h(parseFloat(t)*0.9);case"rad":return $t.channel.clamp.h(parseFloat(t)*180/Math.PI);case"turn":return $t.channel.clamp.h(parseFloat(t)*360)}}return $t.channel.clamp.h(parseFloat(A))},parse:(A)=>{let e=A.charCodeAt(0);if(e!==104&&e!==72)return;let t=A.match(VL.re);if(!t)return;let[,r,i,u,a,n]=t;return jh.set({h:VL._hue2deg(r),s:$t.channel.clamp.s(parseFloat(i)),l:$t.channel.clamp.l(parseFloat(u)),a:a?$t.channel.clamp.a(n?parseFloat(a)/100:parseFloat(a)):1},A)},stringify:(A)=>{let{h:e,s:t,l:r,a:i}=A;if(i<1)return`hsla(${$t.lang.round(e)}, ${$t.lang.round(t)}%, ${$t.lang.round(r)}%, ${i})`;else return`hsl(${$t.lang.round(e)}, ${$t.lang.round(t)}%, ${$t.lang.round(r)}%)`}},z5=VL});var jL,UZ;var YmA=_(()=>{GZ();jL={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:(A)=>{A=A.toLowerCase();let e=jL.colors[A];if(!e)return;return Sp.parse(e)},stringify:(A)=>{let e=Sp.stringify(A);for(let t in jL.colors)if(jL.colors[t]===e)return t;return}},UZ=jL});var HmA,Z5;var KmA=_(()=>{LB();q5();HmA={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:(A)=>{let e=A.charCodeAt(0);if(e!==114&&e!==82)return;let t=A.match(HmA.re);if(!t)return;let[,r,i,u,a,n,o,s,l]=t;return jh.set({r:$t.channel.clamp.r(i?parseFloat(r)*2.55:parseFloat(r)),g:$t.channel.clamp.g(a?parseFloat(u)*2.55:parseFloat(u)),b:$t.channel.clamp.b(o?parseFloat(n)*2.55:parseFloat(n)),a:s?$t.channel.clamp.a(l?parseFloat(s)/100:parseFloat(s)):1},A)},stringify:(A)=>{let{r:e,g:t,b:r,a:i}=A;if(i<1)return`rgba(${$t.lang.round(e)}, ${$t.lang.round(t)}, ${$t.lang.round(r)}, ${$t.lang.round(i)})`;else return`rgb(${$t.lang.round(e)}, ${$t.lang.round(t)}, ${$t.lang.round(r)})`}},Z5=HmA});var Tje,$n;var Od=_(()=>{GZ();TmA();YmA();KmA();W5();Tje={format:{keyword:UZ,hex:Sp,rgb:Z5,rgba:Z5,hsl:z5,hsla:z5},parse:(A)=>{if(typeof A!=="string")return A;let e=Sp.parse(A)||Z5.parse(A)||z5.parse(A)||UZ.parse(A);if(e)return e;throw Error(`Unsupported color format: "${A}"`)},stringify:(A)=>{if(!A.changed&&A.color)return A.color;if(A.type.is(Xn.HSL)||A.data.r===void 0)return z5.stringify(A);else if(A.a<1||!Number.isInteger(A.r)||!Number.isInteger(A.g)||!Number.isInteger(A.b))return Z5.stringify(A);else return Sp.stringify(A)}},$n=Tje});var Yje=(A,e)=>{let t=$n.parse(A);for(let r in e)t[r]=$t.channel.clamp[r](e[r]);return $n.stringify(t)},XL;var MZ=_(()=>{LB();Od();XL=Yje});var Hje=(A,e,t=0,r=1)=>{if(typeof A!=="number")return XL(A,{a:e});let i=jh.set({r:$t.channel.clamp.r(A),g:$t.channel.clamp.g(e),b:$t.channel.clamp.b(t),a:$t.channel.clamp.a(r)});return $n.stringify(i)},ln;var TZ=_(()=>{LB();q5();Od();MZ();ln=Hje});var Kje=(A,e)=>$t.lang.round($n.parse(A)[e]),Lp;var JmA=_(()=>{LB();Od();Lp=Kje});var Jje=(A)=>{let{r:e,g:t,b:r}=$n.parse(A),i=0.2126*$t.channel.toLinear(e)+0.7152*$t.channel.toLinear(t)+0.0722*$t.channel.toLinear(r);return $t.lang.round(i)},OmA;var PmA=_(()=>{LB();Od();OmA=Jje});var Oje=(A)=>OmA(A)>=0.5,_mA;var WmA=_(()=>{PmA();_mA=Oje});var Pje=(A)=>!_mA(A),uu;var qmA=_(()=>{WmA();uu=Pje});var _je=(A,e,t)=>{let r=$n.parse(A),i=r[e],u=$t.channel.clamp[e](i+t);if(i!==u)r[e]=u;return $n.stringify(r)},V2;var $L=_(()=>{LB();Od();V2=_je});var Wje=(A,e)=>V2(A,"l",e),Ie;var zmA=_(()=>{$L();Ie=Wje});var qje=(A,e)=>V2(A,"l",-e),he;var ZmA=_(()=>{$L();he=qje});var zje=(A,e)=>V2(A,"a",-e),AR;var VmA=_(()=>{$L();AR=zje});var Zje=(A,e)=>{let t=$n.parse(A),r={};for(let i in e){if(!e[i])continue;r[i]=t[i]+e[i]}return XL(A,r)},QA;var jmA=_(()=>{Od();MZ();QA=Zje});var Vje=(A,e,t=50)=>{let{r,g:i,b:u,a}=$n.parse(A),{r:n,g:o,b:s,a:l}=$n.parse(e),g=t/100,C=g*2-1,B=a-l,d=((C*B===-1?C:(C+B)/(1+C*B))+1)/2,I=1-d,h=r*d+n*I,Q=i*d+o*I,p=u*d+s*I,m=a*g+l*(1-g);return ln(h,Q,p,m)},XmA;var $mA=_(()=>{Od();TZ();XmA=Vje});var jje=(A,e=100)=>{let t=$n.parse(A);return t.r=255-t.r,t.g=255-t.g,t.b=255-t.b,XmA(t,A,e)},ie;var A2A=_(()=>{Od();$mA();ie=jje});var e2A=_(()=>{TZ();JmA();qmA();zmA();ZmA();VmA();jmA();A2A()});var vn=_(()=>{e2A()});function Xje(A,e){this.v=A,this.k=e}function t2A(A,e){(e==null||e>A.length)&&(e=A.length);for(var t=0,r=Array(e);t<e;t++)r[t]=A[t];return r}function $je(A){if(Array.isArray(A))return A}function AXe(A,e){var t=A==null?null:typeof Symbol<"u"&&A[Symbol.iterator]||A["@@iterator"];if(t!=null){var r,i,u,a,n=[],o=!0,s=!1;try{if(u=(t=t.call(A)).next,e===0){if(Object(t)!==t)return;o=!1}else for(;!(o=(r=u.call(t)).done)&&(n.push(r.value),n.length!==e);o=!0);}catch(l){s=!0,i=l}finally{try{if(!o&&t.return!=null&&(a=t.return(),Object(a)!==a))return}finally{if(s)throw i}}return n}}function eXe(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function tXe(A,e){return $je(A)||AXe(A,e)||rXe(A,e)||eXe()}function rXe(A,e){if(A){if(typeof A=="string")return t2A(A,e);var t={}.toString.call(A).slice(8,-1);return t==="Object"&&A.constructor&&(t=A.constructor.name),t==="Map"||t==="Set"?Array.from(A):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?t2A(A,e):void 0}}function eR(A){var e,t;function r(u,a){try{var n=A[u](a),o=n.value,s=o instanceof Xje;Promise.resolve(s?o.v:o).then(function(l){if(s){var g=u==="return"&&o.k?u:"next";if(!o.k||l.done)return r(g,l);l=A[g](l).value}i(!!n.done,l)},function(l){r("throw",l)})}catch(l){i(2,l)}}function i(u,a){u===2?e.reject(a):e.resolve({value:a,done:u}),(e=e.next)?r(e.key,e.arg):t=null}this._invoke=function(u,a){return new Promise(function(n,o){var s={key:u,arg:a,resolve:n,reject:o,next:null};t?t=t.next=s:(e=t=s,r(u,a))})},typeof A.return!="function"&&(this.return=void 0)}function kn(A){return function(e){if(e instanceof RegExp)e.lastIndex=0;for(var t=arguments.length,r=Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return WZ(A,e,r)}}function cXe(A){return function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return qZ(A,t)}}function Mi(A,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:$5;if(r2A)r2A(A,null);if(!X2(e))return A;let r=e.length;while(r--){let i=e[r];if(typeof i==="string"){let u=t(i);if(u!==i){if(!iXe(e))e[r]=u;i=u}}A[i]=!0}return A}function CXe(A){for(let e=0;e<A.length;e++)if(!Vs(A,e))A[e]=null;return A}function ql(A){let e=j2(null);for(let r of I2A(A)){var t=tXe(r,2);let i=t[0],u=t[1];if(Vs(A,i))if(X2(u))e[i]=CXe(u);else if(u&&typeof u==="object"&&u.constructor===Object)e[i]=ql(u);else e[i]=u}return e}function BXe(A){switch(typeof A){case"string":return A;case"number":return lXe(A);case"boolean":return gXe(A);case"bigint":return n2A?n2A(A):"0";case"symbol":return o2A?o2A(A):"Symbol()";case"undefined":return X5(A);case"function":case"object":{if(A===null)return X5(A);let e=A,t=Hg(e,"toString");if(typeof t==="function"){let r=t(e);return typeof r==="string"?r:X5(r)}return X5(A)}default:return X5(A)}}function Hg(A,e){while(A!==null){let r=aXe(A,e);if(r){if(r.get)return kn(r.get);if(typeof r.value==="function")return kn(r.value)}A=uXe(A)}function t(){return null}return t}function EXe(A){try{return x0(A,""),!0}catch(e){return!1}}function p2A(){let A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:SXe(),e=(Xe)=>p2A(Xe);if(e.version="3.4.16",e.removed=[],!A||!A.document||A.document.nodeType!==Wl.document||!A.Element)return e.isSupported=!1,e;let t=A.document,r=t,i=r.currentScript;A.DocumentFragment;let{HTMLTemplateElement:u,Node:a,Element:n,NodeFilter:o}=A;A.NamedNodeMap===void 0&&(A.NamedNodeMap||A.MozNamedAttrMap),A.HTMLFormElement;let{DOMParser:s,trustedTypes:l}=A,g=n.prototype,C=Hg(g,"cloneNode"),B=Hg(g,"remove"),E=Hg(g,"removeAttributeNode"),d=Hg(g,"nextSibling"),I=Hg(g,"childNodes"),h=Hg(g,"parentNode"),Q=Hg(g,"shadowRoot"),p=Hg(g,"attributes"),m=a&&a.prototype?Hg(a.prototype,"nodeType"):null,f=a&&a.prototype?Hg(a.prototype,"nodeName"):null,D=a&&a.prototype?Hg(a.prototype,"ownerDocument"):null,w=function(UA){return m?m(UA):UA.nodeType},b=function(UA){return f?f(UA):UA.nodeName};if(typeof u==="function"){let Xe=t.createElement("template");if(Xe.content&&Xe.content.ownerDocument)t=Xe.content.ownerDocument}let k,v="",S,x=!1,F=0,T=function(){if(F>0)throw Xh('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},R=function(UA){T(),F++;try{return k.createHTML(UA)}finally{F--}},L=function(UA){T(),F++;try{return k.createScriptURL(UA)}finally{F--}},M=function(){if(!x)S=LXe(l,i),x=!0;return S},U=t,{implementation:Y,createNodeIterator:H,createDocumentFragment:J,getElementsByTagName:K}=U,O=r.importNode,P=d2A();e.isSupported=typeof I2A==="function"&&typeof h==="function"&&Y&&Y.createHTMLDocument!==void 0;let z=hXe,AA=QXe,W=pXe,CA=fXe,tA=mXe,lA=DXe,gA=yXe,aA=bXe,NA=C2A,DA=null,KA=Mi({},[...s2A,...KZ,...JZ,...OZ,...l2A]),TA=null,qA=Mi({},[...g2A,...PZ,...c2A,...tR]),IA=Object.seal(j2(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),bA=null,SA=null,EA=Object.seal(j2(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),nA=!0,eA=!0,BA=!1,yA=!0,vA=!1,FA=!0,HA=!1,dA=!1,q=null,Z=null,fA=!1,j=!1,mA=!1,rA=!1,JA=!0,_A=!1,ZA="user-content-",WA=!0,te=!1,zA={},Ae=null,$A=Mi({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]),oe=null,kA=Mi({},["audio","video","img","source","image","track"]),Pe=null,MA=Mi({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),ke="http://www.w3.org/1998/Math/MathML",We="http://www.w3.org/2000/svg",ue="http://www.w3.org/1999/xhtml",Me=ue,je=!1,Ge=null,wA=Mi({},[ke,We,ue],HZ),Re=Ao(["mi","mo","mn","ms","mtext"]),He=Mi({},Re),de=Ao(["annotation-xml"]),RA=Mi({},de),ce=Mi({},["title","style","font","a","script"]),me=null,Le=["application/xhtml+xml","text/html"],Lt="text/html",Je=null,kt=null,Cr=t.createElement("form"),Pt=function(UA){return UA instanceof RegExp||UA instanceof Function},dt=function(){let UA=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(kt&&kt===UA)return;if(!UA||typeof UA!=="object")UA={};UA=ql(UA),me=Le.indexOf(UA.PARSER_MEDIA_TYPE)===-1?Lt:UA.PARSER_MEDIA_TYPE,Je=me==="application/xhtml+xml"?HZ:$5,DA=$h(UA,"ALLOWED_TAGS",KA,{transform:Je}),TA=$h(UA,"ALLOWED_ATTR",qA,{transform:Je}),Ge=$h(UA,"ALLOWED_NAMESPACES",wA,{transform:HZ}),Pe=$h(UA,"ADD_URI_SAFE_ATTR",MA,{transform:Je,base:MA}),oe=$h(UA,"ADD_DATA_URI_TAGS",kA,{transform:Je,base:kA}),Ae=$h(UA,"FORBID_CONTENTS",$A,{transform:Je}),bA=$h(UA,"FORBID_TAGS",ql({}),{transform:Je}),SA=$h(UA,"FORBID_ATTR",ql({}),{transform:Je}),zA=Vs(UA,"USE_PROFILES")?UA.USE_PROFILES&&typeof UA.USE_PROFILES==="object"?ql(UA.USE_PROFILES):UA.USE_PROFILES:!1,nA=UA.ALLOW_ARIA_ATTR!==!1,eA=UA.ALLOW_DATA_ATTR!==!1,BA=UA.ALLOW_UNKNOWN_PROTOCOLS||!1,yA=UA.ALLOW_SELF_CLOSE_IN_ATTR!==!1,vA=UA.SAFE_FOR_TEMPLATES||!1,FA=UA.SAFE_FOR_XML!==!1,HA=UA.WHOLE_DOCUMENT||!1,j=UA.RETURN_DOM||!1,mA=UA.RETURN_DOM_FRAGMENT||!1,rA=UA.RETURN_TRUSTED_TYPE||!1,fA=UA.FORCE_BODY||!1,JA=UA.SANITIZE_DOM!==!1,_A=UA.SANITIZE_NAMED_PROPS||!1,WA=UA.KEEP_CONTENT!==!1,te=UA.IN_PLACE||!1,NA=EXe(UA.ALLOWED_URI_REGEXP)?UA.ALLOWED_URI_REGEXP:C2A,Me=typeof UA.NAMESPACE==="string"?UA.NAMESPACE:ue,He=_Z(UA,"MATHML_TEXT_INTEGRATION_POINTS",()=>Mi({},Re)),RA=_Z(UA,"HTML_INTEGRATION_POINTS",()=>Mi({},de));let se=_Z(UA,"CUSTOM_ELEMENT_HANDLING",()=>j2(null));if(IA=j2(null),Vs(se,"tagNameCheck")&&Pt(se.tagNameCheck))IA.tagNameCheck=se.tagNameCheck;if(Vs(se,"attributeNameCheck")&&Pt(se.attributeNameCheck))IA.attributeNameCheck=se.attributeNameCheck;if(Vs(se,"allowCustomizedBuiltInElements")&&typeof se.allowCustomizedBuiltInElements==="boolean")IA.allowCustomizedBuiltInElements=se.allowCustomizedBuiltInElements;if(Fo(IA),vA)eA=!1;if(mA)j=!0;if(zA){if(DA=Mi({},l2A),TA=j2(null),zA.html===!0)Mi(DA,s2A),Mi(TA,g2A);if(zA.svg===!0)Mi(DA,KZ),Mi(TA,PZ),Mi(TA,tR);if(zA.svgFilters===!0)Mi(DA,JZ),Mi(TA,PZ),Mi(TA,tR);if(zA.mathMl===!0)Mi(DA,OZ),Mi(TA,c2A),Mi(TA,tR)}if(EA.tagCheck=null,EA.attributeCheck=null,Vs(UA,"ADD_TAGS")){if(typeof UA.ADD_TAGS==="function")EA.tagCheck=UA.ADD_TAGS;else if(X2(UA.ADD_TAGS)){if(DA===KA)DA=ql(DA);Mi(DA,UA.ADD_TAGS,Je)}}if(Vs(UA,"ADD_ATTR")){if(typeof UA.ADD_ATTR==="function")EA.attributeCheck=UA.ADD_ATTR;else if(X2(UA.ADD_ATTR)){if(TA===qA)TA=ql(TA);Mi(TA,UA.ADD_ATTR,Je)}}if(Vs(UA,"ADD_FORBID_CONTENTS")&&X2(UA.ADD_FORBID_CONTENTS)){if(Ae===$A)Ae=ql(Ae);Mi(Ae,UA.ADD_FORBID_CONTENTS,Je)}if(WA)DA["#text"]=!0;if(HA)Mi(DA,["html","head","body"]);if(DA.table)Mi(DA,["tbody"]),delete bA.tbody;if(UA.TRUSTED_TYPES_POLICY){if(typeof UA.TRUSTED_TYPES_POLICY.createHTML!=="function")throw Xh('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof UA.TRUSTED_TYPES_POLICY.createScriptURL!=="function")throw Xh('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let Oe=k;k=UA.TRUSTED_TYPES_POLICY;try{v=R("")}catch(rt){throw k=Oe,rt}}else if(UA.TRUSTED_TYPES_POLICY===null)k=void 0,v="";else{if(k===void 0)k=M();if(k&&typeof v==="string")v=R("")}if(Ao)Ao(UA);kt=UA},Yt=Mi({},[...KZ,...JZ,...dXe]),Ce=Mi({},[...OZ,...IXe]),ye=function(UA,se,Oe){if(se.namespaceURI===ue)return UA==="svg";if(se.namespaceURI===ke)return UA==="svg"&&(Oe==="annotation-xml"||He[Oe]);return Boolean(Yt[UA])},Ze=function(UA,se,Oe){if(se.namespaceURI===ue)return UA==="math";if(se.namespaceURI===We)return UA==="math"&&RA[Oe];return Boolean(Ce[UA])},Xt=function(UA,se,Oe){if(se.namespaceURI===We&&!RA[Oe])return!1;if(se.namespaceURI===ke&&!He[Oe])return!1;return!Ce[UA]&&(ce[UA]||!Yt[UA])},Vt=function(UA){let se=h(UA);if(!se||!se.tagName)se={namespaceURI:Me,tagName:"template"};let Oe=$5(UA.tagName),rt=$5(se.tagName);if(!Ge[UA.namespaceURI])return!1;if(UA.namespaceURI===We)return ye(Oe,se,rt);if(UA.namespaceURI===ke)return Ze(Oe,se,rt);if(UA.namespaceURI===ue)return Xt(Oe,se,rt);if(me==="application/xhtml+xml"&&Ge[UA.namespaceURI])return!0;return!1},or=function(UA){V5(e.removed,{element:UA});try{h(UA).removeChild(UA)}catch(se){if(B(UA),!h(UA))throw Xh("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Qi=function(UA,se,Oe){try{E(UA,se)}catch(rt){try{UA.removeAttribute(Oe)}catch(Ht){}}},sr=function(UA){Ct(UA);let se=I(UA);if(se){let rt=[];Rp(se,(Ht)=>{V5(rt,Ht)}),Rp(rt,(Ht)=>{try{B(Ht)}catch(_r){}})}let Oe=p(UA);if(Oe)for(let rt=Oe.length-1;rt>=0;--rt){let Ht=Oe[rt],_r=Ht&&Ht.name;if(typeof _r==="string")Qi(UA,Ht,_r)}},et=function(UA,se,Oe){if(!Oe)try{Oe=se.getAttributeNode(UA)}catch(rt){Oe=null}V5(e.removed,{attribute:Oe||null,from:se});try{if(Oe)E(se,Oe);else se.removeAttribute(UA)}catch(rt){try{se.removeAttribute(UA)}catch(Ht){}}if(UA==="is")if(j||mA)try{or(se)}catch(rt){}else try{se.setAttribute(UA,"")}catch(rt){}},Ye=function(UA){let se=p(UA);if(!se)return;for(let Oe=se.length-1;Oe>=0;--Oe){let rt=se[Oe],Ht=rt&&rt.name;if(typeof Ht!=="string"||TA[Je(Ht)])continue;Qi(UA,rt,Ht)}},Ct=function(UA){let se=[UA];while(se.length>0){let Oe=se.pop();if(w(Oe)===Wl.element)Ye(Oe);let rt=I(Oe);if(rt)for(let Ht=rt.length-1;Ht>=0;--Ht)se.push(rt[Ht])}},lt=function(UA,se){if(!FA)return!1;if(UA==="patchsrc")return!0;return UA==="for"&&se!=="label"&&se!=="output"},Te=function(UA){if(!FA)return;let se=[UA];while(se.length>0){let Oe=se.pop(),rt=w(Oe);if(rt===Wl.processingInstruction||rt===Wl.comment&&x0(E2A,Oe.data)){try{B(Oe)}catch(_r){}continue}if(rt===Wl.element){let _r=Oe,br=Je(b(Oe));try{if(_r.hasAttribute&&_r.hasAttribute("patchsrc"))_r.removeAttribute("patchsrc");if(_r.hasAttribute&&_r.hasAttribute("for")&&lt("for",br))_r.removeAttribute("for")}catch(ga){}}let Ht=I(Oe);if(Ht)for(let _r=Ht.length-1;_r>=0;--_r)se.push(Ht[_r])}},Ft=function(UA){let se=null,Oe=null;if(fA)UA="<remove></remove>"+UA;else{let _r=u2A(UA,/^[\r\n\t ]+/);Oe=_r&&_r[0]}if(me==="application/xhtml+xml"&&Me===ue)UA='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+UA+"</body></html>";let rt=k?R(UA):UA;if(Me===ue)try{se=new s().parseFromString(rt,me)}catch(_r){}if(!se||!se.documentElement){se=Y.createDocument(Me,"template",null);try{se.documentElement.innerHTML=je?v:rt}catch(_r){}}let Ht=se.body||se.documentElement;if(UA&&Oe)Ht.insertBefore(t.createTextNode(Oe),Ht.childNodes[0]||null);if(Me===ue)return K.call(se,HA?"html":"body")[0];return HA?se.documentElement:Ht},LA=function(UA){let se=D?D(UA):UA.ownerDocument;return H.call(se||UA,UA,o.SHOW_ELEMENT|o.SHOW_COMMENT|o.SHOW_TEXT|o.SHOW_PROCESSING_INSTRUCTION|o.SHOW_CDATA_SECTION,null)},ki=function(UA){return UA=j5(UA,z," "),UA=j5(UA,AA," "),UA=j5(UA,W," "),UA},YA=function(UA){var se;UA.normalize();let Oe=D?D(UA):UA.ownerDocument,rt=H.call(Oe||UA,UA,o.SHOW_TEXT|o.SHOW_COMMENT|o.SHOW_CDATA_SECTION|o.SHOW_PROCESSING_INSTRUCTION,null),Ht=rt.nextNode();while(Ht)Ht.data=ki(Ht.data),Ht=rt.nextNode();let _r=(se=UA.querySelectorAll)===null||se===void 0?void 0:se.call(UA,"template");if(_r)Rp(_r,(br)=>{if(Du(br.content))YA(br.content)})},lr=function(UA){let se=f?f(UA):null;if(typeof se!=="string")return!1;if(Je(se)!=="form")return!1;return typeof UA.nodeName!=="string"||typeof UA.textContent!=="string"||typeof UA.removeChild!=="function"||UA.attributes!==p(UA)||typeof UA.removeAttribute!=="function"||typeof UA.removeAttributeNode!=="function"||typeof UA.getAttributeNode!=="function"||typeof UA.setAttribute!=="function"||typeof UA.namespaceURI!=="string"||typeof UA.insertBefore!=="function"||typeof UA.hasChildNodes!=="function"||UA.nodeType!==m(UA)||UA.childNodes!==I(UA)},Du=function(UA){if(!m||typeof UA!=="object"||UA===null)return!1;try{return m(UA)===Wl.documentFragment}catch(se){return!1}},zn=function(UA){if(!m||typeof UA!=="object"||UA===null)return!1;try{return typeof m(UA)==="number"}catch(se){return!1}};function an(Xe,UA,se){if(Xe.length===0)return;Rp(Xe,(Oe)=>{Oe.call(e,UA,se,kt)})}let as=function(UA,se){if(FA&&UA.hasChildNodes()&&!zn(UA.firstElementChild)&&x0(B2A,UA.textContent)&&x0(B2A,UA.innerHTML))return!0;if(FA&&UA.namespaceURI===ue&&FXe[se]&&(zn(UA.firstElementChild)||typeof UA.textContent==="string"&&x0(xXe[se],UA.textContent)))return!0;if(UA.nodeType===Wl.processingInstruction)return!0;if(FA&&UA.nodeType===Wl.comment&&x0(E2A,UA.data))return!0;return!1},Ai=function(UA,se){if(UA instanceof RegExp)return x0(UA,se);if(UA instanceof Function){for(var Oe=arguments.length,rt=Array(Oe>2?Oe-2:0),Ht=2;Ht<Oe;Ht++)rt[Ht-2]=arguments[Ht];return Boolean(UA(se,...rt))}return!1},Ku=function(UA,se,Oe){if(!bA[se]&&Md(se)&&Ai(IA.tagNameCheck,se))return!1;if(WA&&!Ae[se]){let rt=h(UA),Ht=I(UA);if(Ht&&rt){let _r=Ht.length;for(let br=_r-1;br>=0;--br){let ga=UA===Oe?C(Ht[br],!0):Ht[br];rt.insertBefore(ga,d(UA))}}}return or(UA),!0},ko=function(UA,se,Oe,rt){if(UA.length===0)return se;return se===Oe||se===rt?ql(se):se},Zn=function(UA,se){if(UA===se||h(UA)!==null)return!1;if(te)Ct(UA);return!0},nn=function(UA,se){if(an(P.beforeSanitizeElements,UA,null),Zn(UA,se))return!0;if(lr(UA))return or(UA),!0;let Oe=Je(b(UA));if(DA=ko(P.uponSanitizeElement,DA,KA,q),an(P.uponSanitizeElement,UA,{tagName:Oe,allowedTags:DA}),Zn(UA,se))return!0;if(as(UA,Oe))return or(UA),!0;if(bA[Oe]||!(EA.tagCheck instanceof Function&&EA.tagCheck(Oe))&&!DA[Oe]){let rt=Ku(UA,Oe,se);if(rt===!1){if(an(P.afterSanitizeElements,UA,null),Zn(UA,se))return!0}return rt}if(w(UA)===Wl.element&&!Vt(UA))return or(UA),!0;if((Oe==="noscript"||Oe==="noembed"||Oe==="noframes")&&x0(vXe,UA.innerHTML))return or(UA),!0;if(vA&&UA.nodeType===Wl.text){let rt=ki(UA.textContent);if(UA.textContent!==rt)V5(e.removed,{element:UA.cloneNode()}),UA.textContent=rt}return an(P.afterSanitizeElements,UA,null),Zn(UA,se)},Ud=function(UA,se,Oe){if(SA[se])return!1;if(lt(se,UA))return!1;if(JA&&(se==="id"||se==="name")&&((Oe in t)||(Oe in Cr)))return!1;let rt=TA[se]||EA.attributeCheck instanceof Function&&EA.attributeCheck(se,UA);if(eA&&x0(CA,se))return!0;if(nA&&x0(tA,se))return!0;if(!rt)return Md(UA)&&Ai(IA.tagNameCheck,UA)&&Ai(IA.attributeNameCheck,se,UA)||se==="is"&&IA.allowCustomizedBuiltInElements&&Ai(IA.tagNameCheck,Oe);if(Pe[se])return!0;if(x0(NA,j5(Oe,gA,"")))return!0;if((se==="src"||se==="xlink:href"||se==="href")&&UA!=="script"&&a2A(Oe,"data:")===0&&oe[UA])return!0;if(BA&&!x0(lA,j5(Oe,gA,"")))return!0;return!Oe},Vn=Mi({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Md=function(UA){return!Vn[$5(UA)]&&x0(aA,UA)},on=function(UA,se,Oe,rt){if(k&&typeof l==="object"&&typeof l.getAttributeType==="function"&&!Oe)switch(l.getAttributeType(UA,se)){case"TrustedHTML":return R(rt);case"TrustedScriptURL":return L(rt)}return rt},Td=function(UA,se,Oe,rt){try{if(Oe)UA.setAttributeNS(Oe,se,rt);else UA.setAttribute(se,rt);if(lr(UA))return or(UA),!1;return!0}catch(Ht){return et(se,UA),!1}},_l=function(UA,se){if(an(P.beforeSanitizeAttributes,UA,null),Zn(UA,se))return;let Oe=UA.attributes;if(!Oe||lr(UA))return;TA=ko(P.uponSanitizeAttribute,TA,qA,Z);let rt={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:TA,forceKeepAttr:void 0},Ht=Oe.length,_r=Je(UA.nodeName);while(Ht--){let br=Oe[Ht],{name:ga,namespaceURI:sn,value:F0}=br,Yd=Je(ga),_2=F0,jo=ga==="value"?_2:sXe(_2),W2=!1;if(rt.attrName=Yd,rt.attrValue=jo,rt.keepAttr=!0,rt.forceKeepAttr=void 0,an(P.uponSanitizeAttribute,UA,rt),jo=rt.attrValue,_A&&(Yd==="id"||Yd==="name")&&a2A(jo,ZA)!==0)et(ga,UA,br),jo=ZA+jo,W2=!0;if(FA&&x0(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,jo)){et(ga,UA,br);continue}if(Yd==="attributename"&&u2A(jo,"href")){et(ga,UA,br);continue}if(rt.forceKeepAttr)continue;if(!rt.keepAttr){et(ga,UA,br);continue}if(!yA&&x0(kXe,jo)){et(ga,UA,br);continue}if(vA)jo=ki(jo);if(!Ud(_r,Yd,jo)){et(ga,UA,br);continue}if(jo=on(_r,Yd,sn,jo),jo!==_2){if(Td(UA,ga,sn,jo)&&W2)i2A(e.removed)}}an(P.afterSanitizeAttributes,UA,null),Zn(UA,se)},jn=function(UA){let se=null,Oe=LA(UA);an(P.beforeSanitizeShadowDOM,UA,null);while(se=Oe.nextNode()){if(an(P.uponSanitizeShadowNode,se,null),nn(se,UA),_l(se,UA),Du(se.content))jn(se.content);if(w(se)===Wl.element){let rt=Q(se);if(Du(rt))Fp(rt),jn(rt)}}an(P.afterSanitizeShadowDOM,UA,null)},Fp=function(UA){let se=[{node:UA,shadow:null}];while(se.length>0){let Oe=se.pop();if(Oe.shadow){jn(Oe.shadow);continue}let rt=Oe.node,Ht=w(rt)===Wl.element,_r=I(rt);if(_r)for(let br=_r.length-1;br>=0;--br)se.push({node:_r[br],shadow:null});if(Ht){let br=f?f(rt):null;if(typeof br==="string"&&Je(br)==="template"){let ga=rt.content;if(Du(ga))se.push({node:ga,shadow:null})}}if(Ht){let br=Q(rt);if(Du(br))se.push({node:null,shadow:br},{node:br,shadow:null})}}};return e.sanitize=function(Xe){let UA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},se=null,Oe=null,rt=null,Ht=null;if(je=!Xe,je)Xe="<!-->";if(typeof Xe!=="string"&&!zn(Xe)){if(Xe=BXe(Xe),typeof Xe!=="string")throw Xh("dirty is not a string, aborting")}if(!e.isSupported)return Xe;if(dA)DA=q,TA=Z;else dt(UA);if(P.uponSanitizeElement.length>0||P.uponSanitizeAttribute.length>0)DA=ql(DA);if(P.uponSanitizeAttribute.length>0)TA=ql(TA);e.removed=[];let _r=te&&typeof Xe!=="string"&&zn(Xe);if(_r){Te(Xe);let sn=b(Xe);if(typeof sn==="string"){let F0=Je(sn);if(!DA[F0]||bA[F0])throw sr(Xe),Xh("root node is forbidden and cannot be sanitized in-place")}if(lr(Xe))throw sr(Xe),Xh("root node is clobbered and cannot be sanitized in-place");try{Fp(Xe)}catch(F0){throw sr(Xe),F0}}else if(zn(Xe)){if(se=Ft("<!---->"),Oe=se.ownerDocument.importNode(Xe,!0),Oe.nodeType===Wl.element&&Oe.nodeName==="BODY")se=Oe;else if(Oe.nodeName==="HTML")se=Oe;else se.appendChild(Oe);Fp(se)}else{if(!j&&!vA&&!HA&&Xe.indexOf("<")===-1)return k&&rA?R(Xe):Xe;if(se=Ft(Xe),!se)return j?null:rA?v:""}if(se&&fA)or(se.firstChild);let br=_r?Xe:se;try{let sn=LA(br);while(rt=sn.nextNode())if(nn(rt,br),_l(rt,br),Du(rt.content))jn(rt.content)}catch(sn){if(_r)sr(Xe),Rp(e.removed,(F0)=>{if(F0.element)Ct(F0.element)});throw sn}if(_r){let sn=!1;if(Rp(e.removed,(F0)=>{if(F0.element){if(F0.element===Xe)sn=!0;Ct(F0.element)}}),sn)throw Xh("a node selected for removal could not be safely returned; refusing to sanitize in place");if(vA)YA(Xe);return Xe}if(j){if(vA)YA(se);if(mA){Ht=J.call(se.ownerDocument);while(se.firstChild)Ht.appendChild(se.firstChild)}else Ht=se;if(TA.shadowroot||TA.shadowrootmode)Ht=O.call(r,Ht,!0);return Ht}let ga=HA?se.outerHTML:se.innerHTML;if(HA&&DA["!doctype"]&&se.ownerDocument&&se.ownerDocument.doctype&&se.ownerDocument.doctype.name&&x0(wXe,se.ownerDocument.doctype.name))ga="<!DOCTYPE "+se.ownerDocument.doctype.name+`>
`+ga;if(vA)ga=ki(ga);return k&&rA?R(ga):ga},e.setConfig=function(){let Xe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};dt(Xe),dA=!0,q=DA,Z=TA},e.clearConfig=function(){kt=null,dA=!1,q=null,Z=null,k=S,v=""},e.isValidAttribute=function(Xe,UA,se){if(!kt)dt({});let Oe=Je(Xe),rt=Je(UA);return Ud(Oe,rt,se)},e.addHook=function(Xe,UA){if(typeof UA!=="function")return;if(!Vs(P,Xe))return;V5(P[Xe],UA)},e.removeHook=function(Xe,UA){if(!Vs(P,Xe))return;if(UA!==void 0){let se=nXe(P[Xe],UA);return se===-1?void 0:oXe(P[Xe],se,1)[0]}return i2A(P[Xe])},e.removeHooks=function(Xe){if(!Vs(P,Xe))return;P[Xe]=[]},e.removeAllHooks=function(){P=d2A()},e}var I2A,r2A,iXe,uXe,aXe,Ao,Fo,j2,h2A,WZ,qZ,Rp,nXe,i2A,V5,oXe,X2,$5,HZ,u2A,j5,a2A,sXe,lXe,gXe,n2A,o2A,Vs,X5,x0,Xh,s2A,KZ,JZ,dXe,OZ,IXe,l2A,g2A,PZ,c2A,tR,hXe,QXe,pXe,fXe,mXe,C2A,DXe,yXe,wXe,bXe,B2A,E2A,vXe,kXe,Wl,Q2A,FXe,xXe,SXe=function(){return typeof window>"u"?null:window},LXe=function(e,t){if(typeof e!=="object"||typeof e.createPolicy!=="function")return null;let r=null,i="data-tt-policy-suffix";if(t&&t.hasAttribute(i))r=t.getAttribute(i);let u="dompurify"+(r?"#"+r:"");try{return e.createPolicy(u,{createHTML(a){return a},createScriptURL(a){return a}})}catch(a){return console.warn("TrustedTypes policy "+u+" could not be created."),null}},d2A=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},$h=function(e,t,r,i){return Vs(e,t)&&X2(e[t])?Mi(i.base?ql(i.base):{},e[t],i.transform):r},_Z=function(e,t,r){let i=Vs(e,t)?e[t]:void 0;return i&&typeof i==="object"?ql(i):r()},js;var $2=_(()=>{/*! @license DOMPurify 3.4.16 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.16/LICENSE *//*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */eR.prototype[typeof Symbol=="function"&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},eR.prototype.next=function(A){return this._invoke("next",A)},eR.prototype.throw=function(A){return this._invoke("throw",A)},eR.prototype.return=function(A){return this._invoke("return",A)};I2A=Object.entries,r2A=Object.setPrototypeOf,iXe=Object.isFrozen,uXe=Object.getPrototypeOf,aXe=Object.getOwnPropertyDescriptor,Ao=Object.freeze,Fo=Object.seal,j2=Object.create,h2A=typeof Reflect<"u"&&Reflect,WZ=h2A.apply,qZ=h2A.construct;if(!Ao)Ao=function(e){return e};if(!Fo)Fo=function(e){return e};if(!WZ)WZ=function(e,t){for(var r=arguments.length,i=Array(r>2?r-2:0),u=2;u<r;u++)i[u-2]=arguments[u];return e.apply(t,i)};if(!qZ)qZ=function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),i=1;i<t;i++)r[i-1]=arguments[i];return new e(...r)};Rp=kn(Array.prototype.forEach);Array.prototype.indexOf;nXe=kn(Array.prototype.lastIndexOf),i2A=kn(Array.prototype.pop),V5=kn(Array.prototype.push);Array.prototype.slice;oXe=kn(Array.prototype.splice),X2=Array.isArray,$5=kn(String.prototype.toLowerCase),HZ=kn(String.prototype.toString),u2A=kn(String.prototype.match),j5=kn(String.prototype.replace),a2A=kn(String.prototype.indexOf),sXe=kn(String.prototype.trim),lXe=kn(Number.prototype.toString),gXe=kn(Boolean.prototype.toString),n2A=typeof BigInt>"u"?null:kn(BigInt.prototype.toString),o2A=typeof Symbol>"u"?null:kn(Symbol.prototype.toString),Vs=kn(Object.prototype.hasOwnProperty),X5=kn(Object.prototype.toString),x0=kn(RegExp.prototype.test),Xh=cXe(TypeError);s2A=Ao(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),KZ=Ao(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),JZ=Ao(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),dXe=Ao(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),OZ=Ao(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),IXe=Ao(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),l2A=Ao(["#text"]),g2A=Ao(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),PZ=Ao(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","pointer-events","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","vector-effect","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),c2A=Ao(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),tR=Ao(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),hXe=Fo(/{{[\w\W]*|^[\w\W]*}}/g),QXe=Fo(/<%[\w\W]*|^[\w\W]*%>/g),pXe=Fo(/\${[\w\W]*/g),fXe=Fo(/^data-[\-\w.\u00B7-\uFFFF]+$/),mXe=Fo(/^aria-[\-\w]+$/),C2A=Fo(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),DXe=Fo(/^(?:\w+script|data):/i),yXe=Fo(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),wXe=Fo(/^html$/i),bXe=Fo(/^[a-z][.\w]*(-[.\w]+)+$/i),B2A=Fo(/<[/\w!]/g),E2A=Fo(/<[/\w]/g),vXe=Fo(/<\/no(script|embed|frames)/i),kXe=Fo(/\/>/i),Wl={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Q2A=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],FXe=Ao(Mi({},Q2A)),xXe=function(){let A={};return Rp(Q2A,(e)=>{A[e]=Fo(new RegExp("</"+e+"(?=[\\t\\n\\f\\r />])","i"))}),Ao(A)}();js=p2A()});function YXe(A){if(typeof A!=="string")return A.enum[0];switch(A){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{};default:throw Error("Unexpected schema type; settings must declare an explicit default.")}}function HXe(A){if(A.default!==void 0)return A.default;var e=Array.isArray(A.type)?A.type[0]:A.type;return YXe(e)}function KXe(A,e,t,r){var i=t[e];A[e]=i!==void 0?r.processor?r.processor(i):i:HXe(r)}class QR{constructor(A){if(A===void 0)A={};this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,A=A||{};for(var e of Object.keys(aV)){var t=aV[e];if(t)KXe(this,e,A,t)}}reportNonstrict(A,e,t){var r=this.strict;if(typeof r==="function")r=r(A,e,t);if(!r||r==="ignore")return;else if(r===!0||r==="error")throw new ut("LaTeX-incompatible input and strict mode is set to 'error': "+(e+" ["+A+"]"),t);else if(r==="warn")typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(e+" ["+A+"]"));else typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+r+"': "+e+" ["+A+"]"))}useStrictBehavior(A,e,t){var r=this.strict;if(typeof r==="function")try{r=r(A,e,t)}catch(i){r="error"}if(!r||r==="ignore")return!1;else if(r===!0||r==="error")return!0;else if(r==="warn")return typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to 'warn': "+(e+" ["+A+"]")),!1;else return typeof console<"u"&&console.warn("LaTeX-incompatible input and strict mode is set to "+("unrecognized '"+r+"': "+e+" ["+A+"]")),!1}isTrusted(A){if("url"in A&&A.url&&!A.protocol){var e=TXe(A.url);if(e==null)return!1;A.protocol=e}var t=typeof this.trust==="function"?this.trust(A):this.trust;return Boolean(t)}}class _d{constructor(A,e,t){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=A,this.size=e,this.cramped=t}sup(){return NB[JXe[this.id]]}sub(){return NB[OXe[this.id]]}fracNum(){return NB[PXe[this.id]]}fracDen(){return NB[_Xe[this.id]]}cramp(){return NB[WXe[this.id]]}text(){return NB[qXe[this.id]]}isTight(){return this.size>=2}}function zXe(A){for(var e=0;e<nV.length;e++){var t=nV[e];for(var r=0;r<t.blocks.length;r++){var i=t.blocks[r];if(A>=i[0]&&A<=i[1])return t.name}}return null}function tDA(A){for(var e=0;e<lR.length;e+=2)if(A>=lR[e]&&A<=lR[e+1])return!0;return!1}function u$e(A){return"toText"in A}class Up{constructor(A){this.children=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.children=A,this.classes=[],this.height=0,this.depth=0,this.maxFontSize=0,this.style={}}hasClass(A){return this.classes.includes(A)}toNode(){var A=document.createDocumentFragment();for(var e=0;e<this.children.length;e++)A.appendChild(this.children[e].toNode());return A}toMarkup(){var A="";for(var e=0;e<this.children.length;e++)A+=this.children[e].toMarkup();return A}toText(){return this.children.map((A)=>{if(u$e(A))return A.toText();throw Error("Expected MathDomNode with toText, got "+A.constructor.name)}).join("")}}class Mp{constructor(A,e,t,r){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.width=void 0,this.maxFontSize=void 0,this.style=void 0,this.italic=void 0,iDA.call(this,A,t,r),this.children=e||[]}setAttribute(A,e){this.attributes[A]=e}hasClass(A){return this.classes.includes(A)}toNode(){return uDA.call(this,"span")}toMarkup(){return aDA.call(this,"span")}}class ob{constructor(A,e,t,r){this.children=void 0,this.attributes=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,iDA.call(this,e,r),this.children=t||[],this.setAttribute("href",A)}setAttribute(A,e){this.attributes[A]=e}hasClass(A){return this.classes.includes(A)}toNode(){return uDA.call(this,"a")}toMarkup(){return aDA.call(this,"a")}}class nDA{constructor(A,e,t){this.src=void 0,this.alt=void 0,this.classes=void 0,this.height=void 0,this.depth=void 0,this.maxFontSize=void 0,this.style=void 0,this.alt=e,this.src=A,this.classes=["mord"],this.height=0,this.depth=0,this.maxFontSize=0,this.style=t}hasClass(A){return this.classes.includes(A)}toNode(){var A=document.createElement("img");return A.src=this.src,A.alt=this.alt,A.className="mord",Object.assign(A.style,this.style),A}toMarkup(){var A='<img src="'+S0(this.src)+'"'+(' alt="'+S0(this.alt)+'"'),e=bV(this.style);if(e)A+=' style="'+S0(e)+'"';return A+="'/>",A}}class $s{constructor(A,e,t,r,i,u,a,n){this.text=void 0,this.height=void 0,this.depth=void 0,this.italic=void 0,this.skew=void 0,this.width=void 0,this.maxFontSize=void 0,this.classes=void 0,this.style=void 0,this.text=A,this.height=e||0,this.depth=t||0,this.italic=r||0,this.skew=i||0,this.width=u||0,this.classes=a||[],this.style=n||{},this.maxFontSize=0;var o=zXe(this.text.charCodeAt(0));if(o)this.classes.push(o+"_fallback");if(/[îïíì]/.test(this.text))this.text=o$e[this.text]}hasClass(A){return this.classes.includes(A)}toNode(){var A=document.createTextNode(this.text),e=null;if(this.italic>0)e=document.createElement("span"),e.style.marginRight=gt(this.italic);if(this.classes.length>0)e=e||document.createElement("span"),e.className=eQ(this.classes);if(Object.keys(this.style).length>0)e=e||document.createElement("span"),Object.assign(e.style,this.style);if(e)return e.appendChild(A),e;else return A}toMarkup(){var A=!1,e="<span";if(this.classes.length)A=!0,e+=' class="',e+=S0(eQ(this.classes)),e+='"';var t="";if(this.italic>0)t+="margin-right:"+gt(this.italic)+";";if(t+=bV(this.style),t)A=!0,e+=' style="'+S0(t)+'"';var r=S0(this.text);if(A)return e+=">",e+=r,e+="</span>",e;else return r}}class UB{constructor(A,e){this.children=void 0,this.attributes=void 0,this.children=A||[],this.attributes=e||{}}toNode(){var A="http://www.w3.org/2000/svg",e=document.createElementNS(A,"svg");for(var t of Object.keys(this.attributes))e.setAttribute(t,this.attributes[t]);for(var r=0;r<this.children.length;r++)e.appendChild(this.children[r].toNode());return e}toMarkup(){var A='<svg xmlns="http://www.w3.org/2000/svg"';for(var e of Object.keys(this.attributes))A+=" "+e+'="'+S0(this.attributes[e])+'"';A+=">";for(var t=0;t<this.children.length;t++)A+=this.children[t].toMarkup();return A+="</svg>",A}}class Zd{constructor(A,e){this.pathName=void 0,this.alternate=void 0,this.pathName=A,this.alternate=e}toNode(){var A="http://www.w3.org/2000/svg",e=document.createElementNS(A,"path");if(this.alternate)e.setAttribute("d",this.alternate);else e.setAttribute("d",f2A[this.pathName]);return e}toMarkup(){if(this.alternate)return'<path d="'+S0(this.alternate)+'"/>';else return'<path d="'+S0(f2A[this.pathName])+'"/>'}}class BR{constructor(A){this.attributes=void 0,this.attributes=A||{}}toNode(){var A="http://www.w3.org/2000/svg",e=document.createElementNS(A,"line");for(var t of Object.keys(this.attributes))e.setAttribute(t,this.attributes[t]);return e}toMarkup(){var A="<line";for(var e of Object.keys(this.attributes))A+=" "+e+'="'+S0(this.attributes[e])+'"';return A+="/>",A}}function s$e(A){if(A instanceof $s)return A;else throw Error("Expected symbolNode but got "+String(A)+".")}function l$e(A){if(A instanceof Mp)return A;else throw Error("Expected span<HtmlDomNode> but got "+String(A)+".")}function c$e(A,e){GB[A]=e}function vV(A,e,t){if(!GB[e])throw Error("Font metrics not found for font: "+e+".");var r=A.charCodeAt(0),i=GB[e][r];if(!i&&A[0]in m2A)r=m2A[A[0]].charCodeAt(0),i=GB[e][r];if(!i&&t==="text"){if(tDA(r))i=GB[e][77]}if(i)return{depth:i[0],height:i[1],italic:i[2],skew:i[3],width:i[4]}}function C$e(A){var e;if(A>=5)e=0;else if(A>=3)e=1;else e=2;if(!zZ[e]){var t=zZ[e]={cssEmPerMu:rR.quad[e]/18};for(var r in rR)if(rR.hasOwnProperty(r))t[r]=rR[r][e]}return zZ[e]}function V(A,e,t,r,i,u){if(Ca[A][i]={font:e,group:t,replace:r},u&&r)Ca[A][r]=Ca[A][i]}function yt(A){var{type:e,names:t,props:r,handler:i,htmlBuilder:u,mathmlBuilder:a}=A,n={type:e,numArgs:r.numArgs,argTypes:r.argTypes,allowedInArgument:!!r.allowedInArgument,allowedInText:!!r.allowedInText,allowedInMath:r.allowedInMath===void 0?!0:r.allowedInMath,numOptionalArgs:r.numOptionalArgs||0,infix:!!r.infix,primitive:!!r.primitive,handler:i};for(var o=0;o<t.length;++o)CDA[t[o]]=n;if(e){if(u)dR[e]=u;if(a)IR[e]=a}}function Tp(A){var{type:e,htmlBuilder:t,mathmlBuilder:r}=A;yt({type:e,names:[],props:{numArgs:0},handler(){throw Error("Should never be called.")},htmlBuilder:t,mathmlBuilder:r})}function uR(A,e){var t=tt(["base"],A,e),r=tt(["strut"]);if(r.style.height=gt(t.height+t.depth),t.depth)r.style.verticalAlign=gt(-t.depth);return t.children.unshift(r),t}function hV(A,e){var t=null;if(A.length===1&&A[0].type==="tag")t=A[0].tag,A=A[0].body;var r=to(A,e,"root"),i;if(r.length===2&&r[1].hasClass("tag"))i=r.pop();var u=[],a=[];for(var n=0;n<r.length;n++)if(a.push(r[n]),r[n].hasClass("mbin")||r[n].hasClass("mrel")||r[n].hasClass("allowbreak")){var o=!1;while(n<r.length-1&&r[n+1].hasClass("mspace")&&!r[n+1].hasClass("newline"))if(n++,a.push(r[n]),r[n].hasClass("nobreak"))o=!0;if(!o)u.push(uR(a,e)),a=[]}else if(r[n].hasClass("newline")){if(a.pop(),a.length>0)u.push(uR(a,e)),a=[];u.push(r[n])}if(a.length>0)u.push(uR(a,e));var s;if(t)s=uR(to(t,e,!0),e),s.classes=["tag"],u.push(s);else if(i)u.push(i);var l=tt(["katex-html"],u);if(l.setAttribute("aria-hidden","true"),s){var g=s.children[0];if(g.style.height=gt(l.height+l.depth),l.depth)g.style.verticalAlign=gt(-l.depth)}return l}function EDA(A){return new Up(A)}class it{constructor(A,e,t){this.type=void 0,this.attributes=void 0,this.children=void 0,this.classes=void 0,this.type=A,this.attributes={},this.children=e||[],this.classes=t||[]}setAttribute(A,e){this.attributes[A]=e}getAttribute(A){return this.attributes[A]}toNode(){var A=document.createElementNS("http://www.w3.org/1998/Math/MathML",this.type);for(var e in this.attributes)if(Object.prototype.hasOwnProperty.call(this.attributes,e))A.setAttribute(e,this.attributes[e]);if(this.classes.length>0)A.className=eQ(this.classes);for(var t=0;t<this.children.length;t++)if(this.children[t]instanceof gn&&this.children[t+1]instanceof gn){var r=this.children[t].toText()+this.children[++t].toText();while(this.children[t+1]instanceof gn)r+=this.children[++t].toText();A.appendChild(new gn(r).toNode())}else A.appendChild(this.children[t].toNode());return A}toMarkup(){var A="<"+this.type;for(var e in this.attributes)if(Object.prototype.hasOwnProperty.call(this.attributes,e))A+=" "+e+'="',A+=S0(this.attributes[e]),A+='"';if(this.classes.length>0)A+=' class ="'+S0(eQ(this.classes))+'"';A+=">";for(var t=0;t<this.children.length;t++)A+=this.children[t].toMarkup();return A+="</"+this.type+">",A}toText(){return this.children.map((A)=>A.toText()).join("")}}class gn{constructor(A){this.text=void 0,this.text=A}toNode(){return document.createTextNode(this.text)}toMarkup(){return S0(this.toText())}toText(){return this.text}}class xV{constructor(A){if(this.width=void 0,this.character=void 0,this.width=A,A>=0.05555&&A<=0.05556)this.character=" ";else if(A>=0.1666&&A<=0.1667)this.character=" ";else if(A>=0.2222&&A<=0.2223)this.character=" ";else if(A>=0.2777&&A<=0.2778)this.character="  ";else if(A>=-0.05556&&A<=-0.05555)this.character=" ⁣";else if(A>=-0.1667&&A<=-0.1666)this.character=" ⁣";else if(A>=-0.2223&&A<=-0.2222)this.character=" ⁣";else if(A>=-0.2778&&A<=-0.2777)this.character=" ⁣";else this.character=null}toNode(){if(this.character)return document.createTextNode(this.character);else{var A=document.createElementNS("http://www.w3.org/1998/Math/MathML","mspace");return A.setAttribute("width",gt(this.width)),A}}toMarkup(){if(this.character)return"<mtext>"+this.character+"</mtext>";else return'<mspace width="'+gt(this.width)+'"/>'}toText(){if(this.character)return this.character;else return" "}}function ZZ(A){if(!A)return!1;if(A.type==="mi"&&A.children.length===1){var e=A.children[0];return e instanceof gn&&e.text==="."}else if(A.type==="mo"&&A.children.length===1&&A.getAttribute("separator")==="true"&&A.getAttribute("lspace")==="0em"&&A.getAttribute("rspace")==="0em"){var t=A.children[0];return t instanceof gn&&t.text===","}else return!1}function L2A(A,e,t,r,i){var u=Vl(A,t),a;if(u.length===1&&u[0]instanceof it&&k$e.has(u[0].type))a=u[0];else a=new it("mrow",u);var n=new it("annotation",[new gn(e)]);n.setAttribute("encoding","application/x-tex");var o=new it("semantics",[a,n]),s=new it("math",[o]);if(s.setAttribute("xmlns","http://www.w3.org/1998/Math/MathML"),r)s.setAttribute("display","block");var l=i?"katex":"katex-mathml";return tt([l],[s])}class qd{constructor(A){this.style=void 0,this.color=void 0,this.size=void 0,this.textSize=void 0,this.phantom=void 0,this.font=void 0,this.fontFamily=void 0,this.fontWeight=void 0,this.fontShape=void 0,this.sizeMultiplier=void 0,this.maxSize=void 0,this.minRuleThickness=void 0,this._fontMetrics=void 0,this.style=A.style,this.color=A.color,this.size=A.size||qd.BASESIZE,this.textSize=A.textSize||this.size,this.phantom=!!A.phantom,this.font=A.font||"",this.fontFamily=A.fontFamily||"",this.fontWeight=A.fontWeight||"",this.fontShape=A.fontShape||"",this.sizeMultiplier=R2A[this.size-1],this.maxSize=A.maxSize,this.minRuleThickness=A.minRuleThickness,this._fontMetrics=void 0}extend(A){var e={style:this.style,size:this.size,textSize:this.textSize,color:this.color,phantom:this.phantom,font:this.font,fontFamily:this.fontFamily,fontWeight:this.fontWeight,fontShape:this.fontShape,maxSize:this.maxSize,minRuleThickness:this.minRuleThickness};return Object.assign(e,A),new qd(e)}havingStyle(A){if(this.style===A)return this;else return this.extend({style:A,size:N2A(this.textSize,A)})}havingCrampedStyle(){return this.havingStyle(this.style.cramp())}havingSize(A){if(this.size===A&&this.textSize===A)return this;else return this.extend({style:this.style.text(),size:A,textSize:A,sizeMultiplier:R2A[A-1]})}havingBaseStyle(A){A=A||this.style.text();var e=N2A(qd.BASESIZE,A);if(this.size===e&&this.textSize===qd.BASESIZE&&this.style===A)return this;else return this.extend({style:A,size:e})}havingBaseSizing(){var A;switch(this.style.id){case 4:case 5:A=3;break;case 6:case 7:A=1;break;default:A=6}return this.extend({style:this.style.text(),size:A})}withColor(A){return this.extend({color:A})}withPhantom(){return this.extend({phantom:!0})}withFont(A){return this.extend({font:A})}withTextFontFamily(A){return this.extend({fontFamily:A,font:""})}withTextFontWeight(A){return this.extend({fontWeight:A,font:""})}withTextFontShape(A){return this.extend({fontShape:A,font:""})}sizingClasses(A){if(A.size!==this.size)return["sizing","reset-size"+A.size,"size"+this.size];else return[]}baseSizingClasses(){if(this.size!==qd.BASESIZE)return["sizing","reset-size"+this.size,"size"+qd.BASESIZE];else return[]}fontMetrics(){if(!this._fontMetrics)this._fontMetrics=C$e(this.size);return this._fontMetrics}getColor(){if(this.phantom)return"transparent";else return this.color}}function Y$e(A){return A in M$e}function ti(A,e){if(!A||A.type!==e)throw Error("Expected node of type "+e+", but got "+(A?"node of type "+A.type:String(A)));return A}function yR(A){var e=wR(A);if(!e)throw Error("Expected node of symbol group type, but got "+(A?"node of type "+A.type:String(A)));return e}function wR(A){if(A&&(A.type==="atom"||T$e.hasOwnProperty(A.type)))return A;return null}function pDA(A,e){var t=to(A.body,e,!0);return tt([A.mclass],t,e)}function fDA(A,e){var t,r=Vl(A.body,e);if(A.mclass==="minner")t=new it("mpadded",r);else if(A.mclass==="mord")if(A.isCharacterBox)t=r[0],t.type="mi";else t=new it("mi",r);else{if(A.isCharacterBox)t=r[0],t.type="mo";else t=new it("mo",r);if(A.mclass==="mbin")t.attributes.lspace="0.22em",t.attributes.rspace="0.22em";else if(A.mclass==="mpunct")t.attributes.lspace="0em",t.attributes.rspace="0.17em";else if(A.mclass==="mopen"||A.mclass==="mclose")t.attributes.lspace="0em",t.attributes.rspace="0em";else if(A.mclass==="minner")t.attributes.lspace="0.0556em",t.attributes.width="+0.1111em"}return t}function O$e(A,e,t){var r=K$e[A];switch(r){case"\\\\cdrightarrow":case"\\\\cdleftarrow":return t.callFunction(r,[e[0]],[e[1]]);case"\\uparrow":case"\\downarrow":{var i=t.callFunction("\\\\cdleft",[e[0]],[]),u={type:"atom",text:r,mode:"math",family:"rel"},a=t.callFunction("\\Big",[u],[]),n=t.callFunction("\\\\cdright",[e[1]],[]),o={type:"ordgroup",mode:"math",body:[i,a,n]};return t.callFunction("\\\\cdparent",[o],[])}case"\\\\cdlongequal":return t.callFunction("\\\\cdlongequal",[],[]);case"\\Vert":{var s={type:"textord",text:"\\Vert",mode:"math"};return t.callFunction("\\Big",[s],[])}default:return{type:"textord",text:" ",mode:"math"}}}function P$e(A){var e=[];A.gullet.beginGroup(),A.gullet.macros.set("\\cr","\\\\\\relax"),A.gullet.beginGroup();while(!0){e.push(A.parseExpression(!1,"\\\\")),A.gullet.endGroup(),A.gullet.beginGroup();var t=A.fetch().text;if(t==="&"||t==="\\\\")A.consume();else if(t==="\\end"){if(e[e.length-1].length===0)e.pop();break}else throw new ut("Expected \\\\ or \\cr or \\end",A.nextToken)}var r=[],i=[r];for(var u=0;u<e.length;u++){var a=e[u],n=G2A();for(var o=0;o<a.length;o++)if(!U2A(a[o]))n.body.push(a[o]);else{r.push(n),o+=1;var s=yR(a[o]).text,l=[,,];if(l[0]={type:"ordgroup",mode:"math",body:[]},l[1]={type:"ordgroup",mode:"math",body:[]},"=|.".includes(s));else if("<>AV".includes(s))for(var g=0;g<2;g++){var C=!0;for(var B=o+1;B<a.length;B++){if(J$e(a[B],s)){C=!1,o=B;break}if(U2A(a[B]))throw new ut("Missing a "+s+" character to complete a CD arrow.",a[B]);l[g].body.push(a[B])}if(C)throw new ut("Missing a "+s+" character to complete a CD arrow.",a[o])}else throw new ut('Expected one of "<>AV=|." after @',a[o]);var E=O$e(s,l,A),d={type:"styling",body:[E],mode:"math",style:"display",resetFont:!0};r.push(d),n=G2A()}if(u%2===0)r.push(n);else r.shift();r=[],i.push(r)}A.gullet.endGroup(),A.gullet.endGroup();var I=Array(i[0].length).fill({type:"align",align:"c",pregap:0.25,postgap:0.25});return{type:"array",mode:"math",body:i,arraystretch:1,addJot:!0,rowGaps:[null],cols:I,colSeparationType:"CD",hLinesBeforeRow:Array(i.length+1).fill([])}}function T2A(A){return"isMiddle"in A}function vR(A,e){var t=wR(A);if(t&&eAt.has(t.text))return t;else if(t)throw new ut("Invalid delimiter '"+t.text+"' after '"+e.funcName+"'",A);else throw new ut("Invalid delimiter type '"+A.type+"'",A)}function Y2A(A){if(!A.body)throw Error("Bug: The leftright ParseNode wasn't fully parsed.")}function MB(A){var{type:e,names:t,props:r,handler:i,htmlBuilder:u,mathmlBuilder:a}=A,n={type:e,numArgs:r.numArgs||0,allowedInText:!1,numOptionalArgs:0,handler:i};for(var o=0;o<t.length;++o)NDA[t[o]]=n;if(u)dR[e]=u;if(a)IR[e]=a}function xA(A,e){GDA[A]=e}class Xs{constructor(A,e,t){this.lexer=void 0,this.start=void 0,this.end=void 0,this.lexer=A,this.start=e,this.end=t}static range(A,e){if(!e)return A&&A.loc;else if(!A||!A.loc||!e.loc||A.loc.lexer!==e.loc.lexer)return null;else return new Xs(A.loc.lexer,A.loc.start,e.loc.end)}}class zl{constructor(A,e){this.text=void 0,this.loc=void 0,this.noexpand=void 0,this.treatAsRelax=void 0,this.text=A,this.loc=e}range(A,e){return new zl(e,Xs.range(this,A))}}function H2A(A){var e=[];A.consumeSpaces();var t=A.fetch().text;if(t==="\\relax")A.consume(),A.consumeSpaces(),t=A.fetch().text;while(t==="\\hline"||t==="\\hdashline")A.consume(),e.push(t==="\\hdashline"),A.consumeSpaces(),t=A.fetch().text;return e}function GV(A){if(!A.includes("ed"))return!A.includes("*")}function iQ(A,e,t){var{hskipBeforeAndAfter:r,addJot:i,cols:u,arraystretch:a,colSeparationType:n,autoTag:o,singleRow:s,emptySingleRow:l,maxNumCols:g,leqno:C}=e;if(A.gullet.beginGroup(),!s)A.gullet.macros.set("\\cr","\\\\\\relax");if(!a){var B=A.gullet.expandMacroAsText("\\arraystretch");if(B==null)a=1;else if(a=parseFloat(B),!a||a<0)throw new ut("Invalid \\arraystretch: "+B)}A.gullet.beginGroup();var E=[],d=[E],I=[],h=[],Q=o!=null?[]:void 0;function p(){if(o)A.gullet.macros.set("\\@eqnsw","1",!0)}function m(){if(Q)if(A.gullet.macros.get("\\df@tag"))Q.push(A.subparse([new zl("\\df@tag")])),A.gullet.macros.set("\\df@tag",void 0,!0);else Q.push(Boolean(o)&&A.gullet.macros.get("\\@eqnsw")==="1")}p(),h.push(H2A(A));while(!0){var f=A.parseExpression(!1,s?"\\end":"\\\\");A.gullet.endGroup(),A.gullet.beginGroup();var D={type:"ordgroup",mode:A.mode,body:f};if(t)D={type:"styling",mode:A.mode,style:t,resetFont:!0,body:[D]};E.push(D);var w=A.fetch().text;if(w==="&"){if(g&&E.length===g)if(s||n)throw new ut("Too many tab characters: &",A.nextToken);else A.settings.reportNonstrict("textEnv","Too few columns specified in the {array} column argument.");A.consume()}else if(w==="\\end"){if(m(),E.length===1&&D.type==="styling"&&D.body.length===1&&D.body[0].type==="ordgroup"&&D.body[0].body.length===0&&(d.length>1||!l))d.pop();if(h.length<d.length+1)h.push([]);break}else if(w==="\\\\"){A.consume();var b=void 0;if(A.gullet.future().text!==" ")b=A.parseSizeGroup(!0);I.push(b?b.value:null),m(),h.push(H2A(A)),E=[],d.push(E),p()}else throw new ut("Expected & or \\\\ or \\cr or \\end",A.nextToken)}return A.gullet.endGroup(),A.gullet.endGroup(),{type:"array",mode:A.mode,addJot:i,arraystretch:a,body:d,cols:u,rowGaps:I,hskipBeforeAndAfter:r,hLinesBeforeRow:h,colSeparationType:n,tags:Q,leqno:C}}function UV(A){if(A.slice(0,1)==="d")return"display";else return"text"}function PDA(A,e,t){var r=to(A,e,!1),i=e.sizeMultiplier/t.sizeMultiplier;for(var u=0;u<r.length;u++){var a=r[u].classes.indexOf("sizing");if(a<0)Array.prototype.push.apply(r[u].classes,e.sizingClasses(t));else if(r[u].classes[a+1]==="reset-size"+e.size)r[u].classes[a+1]="reset-size"+t.size;r[u].height*=i,r[u].depth*=i}return Xd(r)}function gAt(A){return A in mV}class yV{constructor(A,e){this.input=void 0,this.settings=void 0,this.tokenRegex=void 0,this.catcodes=void 0,this.input=A,this.settings=e,this.tokenRegex=new RegExp(QAt,"g"),this.catcodes={"%":14,"~":13}}setCatcode(A,e){this.catcodes[A]=e}lex(){var A=this.input,e=this.tokenRegex.lastIndex;if(e===A.length)return new zl("EOF",new Xs(this,e,e));var t=this.tokenRegex.exec(A);if(t===null||t.index!==e)throw new ut("Unexpected character: '"+A[e]+"'",new zl(A[e],new Xs(this,e,e+1)));var r=t[6]||t[3]||(t[2]?"\\ ":" ");if(this.catcodes[r]===14){var i=A.indexOf(`
`,this.tokenRegex.lastIndex);if(i===-1)this.tokenRegex.lastIndex=A.length,this.settings.reportNonstrict("commentAtEnd","% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)");else this.tokenRegex.lastIndex=i+1;return this.lex()}return new zl(r,new Xs(this,e,this.tokenRegex.lastIndex))}}class qDA{constructor(A,e){if(A===void 0)A={};if(e===void 0)e={};this.current=void 0,this.builtins=void 0,this.undefStack=void 0,this.current=e,this.builtins=A,this.undefStack=[]}beginGroup(){this.undefStack.push({})}endGroup(){if(this.undefStack.length===0)throw new ut("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug");var A=this.undefStack.pop();for(var e in A)if(A.hasOwnProperty(e))if(A[e]==null)delete this.current[e];else this.current[e]=A[e]}endGroups(){while(this.undefStack.length>0)this.endGroup()}has(A){return this.current.hasOwnProperty(A)||this.builtins.hasOwnProperty(A)}get(A){if(this.current.hasOwnProperty(A))return this.current[A];else return this.builtins[A]}set(A,e,t){if(t===void 0)t=!1;if(t){for(var r=0;r<this.undefStack.length;r++)delete this.undefStack[r][A];if(this.undefStack.length>0)this.undefStack[this.undefStack.length-1][A]=e}else{var i=this.undefStack[this.undefStack.length-1];if(i&&!i.hasOwnProperty(A))i[A]=this.current[A]}if(e==null)delete this.current[A];else this.current[A]=e}}class jDA{constructor(A,e,t){this.settings=void 0,this.expansionCount=void 0,this.lexer=void 0,this.macros=void 0,this.stack=void 0,this.mode=void 0,this.settings=e,this.expansionCount=0,this.feed(A),this.macros=new qDA(pAt,e.macros),this.mode=t,this.stack=[]}feed(A){this.lexer=new yV(A,this.settings)}switchMode(A){this.mode=A}beginGroup(){this.macros.beginGroup()}endGroup(){this.macros.endGroup()}endGroups(){this.macros.endGroups()}future(){if(this.stack.length===0)this.pushToken(this.lexer.lex());return this.stack[this.stack.length-1]}popToken(){return this.future(),this.stack.pop()}pushToken(A){this.stack.push(A)}pushTokens(A){this.stack.push(...A)}scanArgument(A){var e,t,r;if(A){if(this.consumeSpaces(),this.future().text!=="[")return null;e=this.popToken(),{tokens:r,end:t}=this.consumeArg(["]"])}else({tokens:r,start:e,end:t}=this.consumeArg());return this.pushToken(new zl("EOF",t.loc)),this.pushTokens(r),new zl("",Xs.range(e,t))}consumeSpaces(){for(;;){var A=this.future();if(A.text===" ")this.stack.pop();else break}}consumeArg(A){var e=[],t=A&&A.length>0;if(!t)this.consumeSpaces();var r=this.future(),i,u=0,a=0;do{if(i=this.popToken(),e.push(i),i.text==="{")++u;else if(i.text==="}"){if(--u,u===-1)throw new ut("Extra }",i)}else if(i.text==="EOF")throw new ut("Unexpected end of input in a macro argument, expected '"+(A&&t?A[a]:"}")+"'",i);if(A&&t)if((u===0||u===1&&A[a]==="{")&&i.text===A[a]){if(++a,a===A.length){e.splice(-a,a);break}}else a=0}while(u!==0||t);if(r.text==="{"&&e[e.length-1].text==="}")e.pop(),e.shift();return e.reverse(),{tokens:e,start:r,end:i}}consumeArgs(A,e){if(e){if(e.length!==A+1)throw new ut("The length of delimiters doesn't match the number of args!");var t=e[0];for(var r=0;r<t.length;r++){var i=this.popToken();if(t[r]!==i.text)throw new ut("Use of the macro doesn't match its definition",i)}}var u=[];for(var a=0;a<A;a++)u.push(this.consumeArg(e&&e[a+1]).tokens);return u}countExpansion(A){if(this.expansionCount+=A,this.expansionCount>this.settings.maxExpand)throw new ut("Too many expansions: infinite loop or need to increase maxExpand setting")}expandOnce(A){var e=this.popToken(),t=e.text,r=!e.noexpand?this._getExpansion(t):null;if(r==null||A&&r.unexpandable){if(A&&r==null&&t[0]==="\\"&&!this.isDefined(t))throw new ut("Undefined control sequence: "+t);return this.pushToken(e),!1}this.countExpansion(1);var i=r.tokens,u=this.consumeArgs(r.numArgs,r.delimiters);if(r.numArgs){i=i.slice();for(var a=i.length-1;a>=0;--a){var n=i[a];if(n.text==="#"){if(a===0)throw new ut("Incomplete placeholder at end of macro body",n);if(n=i[--a],n.text==="#")i.splice(a+1,1);else if(/^[1-9]$/.test(n.text))i.splice(a,2,...u[+n.text-1]);else throw new ut("Not a valid argument number",n)}}}return this.pushTokens(i),i.length}expandAfterFuture(){return this.expandOnce(),this.future()}expandNextToken(){for(;;)if(this.expandOnce()===!1){var A=this.stack.pop();if(A.treatAsRelax)A.text="\\relax";return A}}expandMacro(A){return this.macros.has(A)?this.expandTokens([new zl(A)]):void 0}expandTokens(A){var e=[],t=this.stack.length;this.pushTokens(A);while(this.stack.length>t)if(this.expandOnce(!0)===!1){var r=this.stack.pop();if(r.treatAsRelax)r.noexpand=!1,r.treatAsRelax=!1;e.push(r)}return this.countExpansion(e.length),e}expandMacroAsText(A){var e=this.expandMacro(A);if(e)return e.map((t)=>t.text).join("");else return e}_getExpansion(A){var e=this.macros.get(A);if(e==null)return e;if(A.length===1){var t=this.lexer.catcodes[A];if(t!=null&&t!==13)return}var r=typeof e==="function"?e(this):e;if(typeof r==="string"){var i=0;if(r.includes("#")){var u=r.replace(/##/g,"");while(u.includes("#"+(i+1)))++i}var a=new yV(r,this.settings),n=[],o=a.lex();while(o.text!=="EOF")n.push(o),o=a.lex();n.reverse();var s={tokens:n,numArgs:i};return s}return r}isDefined(A){return this.macros.has(A)||AQ.hasOwnProperty(A)||Ca.math.hasOwnProperty(A)||Ca.text.hasOwnProperty(A)||VDA.hasOwnProperty(A)}isExpandable(A){var e=this.macros.get(A);return e!=null?typeof e==="string"||typeof e==="function"||!e.unexpandable:AQ.hasOwnProperty(A)&&!AQ[A].primitive}}class SR{constructor(A,e){this.mode=void 0,this.gullet=void 0,this.settings=void 0,this.leftrightDepth=void 0,this.nextToken=void 0,this.mode="math",this.gullet=new jDA(A,e,this.mode),this.settings=e,this.leftrightDepth=0,this.nextToken=null}expect(A,e){if(e===void 0)e=!0;if(this.fetch().text!==A)throw new ut("Expected '"+A+"', got '"+this.fetch().text+"'",this.fetch());if(e)this.consume()}consume(){this.nextToken=null}fetch(){if(this.nextToken==null)this.nextToken=this.gullet.expandNextToken();return this.nextToken}switchMode(A){this.mode=A,this.gullet.switchMode(A)}parse(){if(!this.settings.globalGroup)this.gullet.beginGroup();if(this.settings.colorIsTextColor)this.gullet.macros.set("\\color","\\textcolor");try{var A=this.parseExpression(!1);if(this.expect("EOF"),!this.settings.globalGroup)this.gullet.endGroup();return A}finally{this.gullet.endGroups()}}subparse(A){var e=this.nextToken;this.consume(),this.gullet.pushToken(new zl("}")),this.gullet.pushTokens(A);var t=this.parseExpression(!1);return this.expect("}"),this.nextToken=e,t}parseExpression(A,e){var t=[];while(!0){if(this.mode==="math")this.consumeSpaces();var r=this.fetch();if(SR.endOfExpression.has(r.text))break;if(e&&r.text===e)break;if(A&&AQ[r.text]&&AQ[r.text].infix)break;var i=this.parseAtom(e);if(!i)break;else if(i.type==="internal")continue;t.push(i)}if(this.mode==="text")this.formLigatures(t);return this.handleInfixNodes(t)}handleInfixNodes(A){var e=-1,t;for(var r=0;r<A.length;r++){var i=A[r];if(i.type==="infix"){if(e!==-1)throw new ut("only one infix operator per group",i.token);e=r,t=i.replaceWith}}if(e!==-1&&t){var u,a,n=A.slice(0,e),o=A.slice(e+1);if(n.length===1&&n[0].type==="ordgroup")u=n[0];else u={type:"ordgroup",mode:this.mode,body:n};if(o.length===1&&o[0].type==="ordgroup")a=o[0];else a={type:"ordgroup",mode:this.mode,body:o};var s;if(t==="\\\\abovefrac")s=this.callFunction(t,[u,A[e],a],[]);else s=this.callFunction(t,[u,a],[]);return[s]}else return A}handleSupSubscript(A){var e=this.fetch(),t=e.text;this.consume(),this.consumeSpaces();var r;do{var i;r=this.parseGroup(A)}while(((i=r)==null?void 0:i.type)==="internal");if(!r)throw new ut("Expected group after '"+t+"'",e);return r}formatUnsupportedCmd(A){var e=[];for(var t=0;t<A.length;t++)e.push({type:"textord",mode:"text",text:A[t]});var r={type:"text",mode:this.mode,body:e},i={type:"color",mode:this.mode,color:this.settings.errorColor,body:[r]};return i}parseAtom(A){var e=this.parseGroup("atom",A);if((e==null?void 0:e.type)==="internal")return e;if(this.mode==="text")return e;var t,r;while(!0){this.consumeSpaces();var i=this.fetch();if(i.text==="\\limits"||i.text==="\\nolimits"){if(e&&e.type==="op"){var u=i.text==="\\limits";e.limits=u,e.alwaysHandleSupSub=!0}else if(e&&e.type==="operatorname"){if(e.alwaysHandleSupSub)e.limits=i.text==="\\limits"}else throw new ut("Limit controls must follow a math operator",i);this.consume()}else if(i.text==="^"){if(t)throw new ut("Double superscript",i);t=this.handleSupSubscript("superscript")}else if(i.text==="_"){if(r)throw new ut("Double subscript",i);r=this.handleSupSubscript("subscript")}else if(i.text==="'"){if(t)throw new ut("Double superscript",i);var a={type:"textord",mode:this.mode,text:"\\prime"},n=[a];this.consume();while(this.fetch().text==="'")n.push(a),this.consume();if(this.fetch().text==="^")n.push(this.handleSupSubscript("superscript"));t={type:"ordgroup",mode:this.mode,body:n}}else if(oR[i.text]){var o=ADA.test(i.text),s=[];s.push(new zl(oR[i.text])),this.consume();while(!0){var l=this.fetch().text;if(!oR[l])break;if(ADA.test(l)!==o)break;s.unshift(new zl(oR[l])),this.consume()}var g=this.subparse(s);if(o)r={type:"ordgroup",mode:"math",body:g};else t={type:"ordgroup",mode:"math",body:g}}else break}if(t||r)return{type:"supsub",mode:this.mode,base:e,sup:t,sub:r};else return e}parseFunction(A,e){var t=this.fetch(),r=t.text,i=AQ[r];if(!i)return null;if(this.consume(),e&&e!=="atom"&&!i.allowedInArgument)throw new ut("Got function '"+r+"' with no arguments"+(e?" as "+e:""),t);else if(this.mode==="text"&&!i.allowedInText)throw new ut("Can't use function '"+r+"' in text mode",t);else if(this.mode==="math"&&i.allowedInMath===!1)throw new ut("Can't use function '"+r+"' in math mode",t);var{args:u,optArgs:a}=this.parseArguments(r,i);return this.callFunction(r,u,a,t,A)}callFunction(A,e,t,r,i){var u={funcName:A,parser:this,token:r,breakOnTokenText:i},a=AQ[A];if(a&&a.handler)return a.handler(u,e,t);else throw new ut("No function handler for "+A)}parseArguments(A,e){var t=e.numArgs+e.numOptionalArgs;if(t===0)return{args:[],optArgs:[]};var r=[],i=[];for(var u=0;u<t;u++){var a=e.argTypes&&e.argTypes[u],n=u<e.numOptionalArgs;if("primitive"in e&&e.primitive&&a==null||e.type==="sqrt"&&u===1&&i[0]==null)a="primitive";var o=this.parseGroupOfType("argument to '"+A+"'",a,n);if(n)i.push(o);else if(o!=null)r.push(o);else throw new ut("Null argument, please report this as a bug")}return{args:r,optArgs:i}}parseGroupOfType(A,e,t){switch(e){case"color":return this.parseColorGroup(t);case"size":return this.parseSizeGroup(t);case"url":return this.parseUrlGroup(t);case"math":case"text":return this.parseArgumentGroup(t,e);case"hbox":{var r=this.parseArgumentGroup(t,"text");return r!=null?{type:"styling",mode:r.mode,body:[r],style:"text",resetFont:!0}:null}case"raw":{var i=this.parseStringGroup("raw",t);return i!=null?{type:"raw",mode:"text",string:i.text}:null}case"primitive":{if(t)throw new ut("A primitive argument cannot be optional");var u=this.parseGroup(A);if(u==null)throw new ut("Expected group as "+A,this.fetch());return u}case"original":case null:case void 0:return this.parseArgumentGroup(t);default:throw new ut("Unknown group type as "+A,this.fetch())}}consumeSpaces(){while(this.fetch().text===" ")this.consume()}parseStringGroup(A,e){var t=this.gullet.scanArgument(e);if(t==null)return null;var r="",i;while((i=this.fetch()).text!=="EOF")r+=i.text,this.consume();return this.consume(),t.text=r,t}parseRegexGroup(A,e){var t=this.fetch(),r=t,i="",u;while((u=this.fetch()).text!=="EOF"&&A.test(i+u.text))r=u,i+=r.text,this.consume();if(i==="")throw new ut("Invalid "+e+": '"+t.text+"'",t);return t.range(r,i)}parseColorGroup(A){var e=this.parseStringGroup("color",A);if(e==null)return null;var t=/^(#[a-f0-9]{3,4}|#[a-f0-9]{6}|#[a-f0-9]{8}|[a-f0-9]{6}|[a-z]+)$/i.exec(e.text);if(!t)throw new ut("Invalid color: '"+e.text+"'",e);var r=t[0];if(/^[0-9a-f]{6}$/i.test(r))r="#"+r;return{type:"color-token",mode:this.mode,color:r}}parseSizeGroup(A){var e,t=!1;if(this.gullet.consumeSpaces(),!A&&this.gullet.future().text!=="{")e=this.parseRegexGroup(/^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/,"size");else e=this.parseStringGroup("size",A);if(!e)return null;if(!A&&e.text.length===0)e.text="0pt",t=!0;var r=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e.text);if(!r)throw new ut("Invalid size: '"+e.text+"'",e);var i={number:+(r[1]+r[2]),unit:r[3]};if(!rDA(i))throw new ut("Invalid unit: '"+i.unit+"'",e);return{type:"size",mode:this.mode,value:i,isBlank:t}}parseUrlGroup(A){this.gullet.lexer.setCatcode("%",13),this.gullet.lexer.setCatcode("~",12);var e=this.parseStringGroup("url",A);if(this.gullet.lexer.setCatcode("%",14),this.gullet.lexer.setCatcode("~",13),e==null)return null;var t=e.text.replace(/\\([#$%&~_^{}])/g,"$1");return{type:"url",mode:this.mode,url:t}}parseArgumentGroup(A,e){var t=this.gullet.scanArgument(A);if(t==null)return null;var r=this.mode;if(e)this.switchMode(e);this.gullet.beginGroup();var i=this.parseExpression(!1,"EOF");this.expect("EOF"),this.gullet.endGroup();var u={type:"ordgroup",mode:this.mode,loc:t.loc,body:i};if(e)this.switchMode(r);return u}parseGroup(A,e){var t=this.fetch(),r=t.text,i;if(r==="{"||r==="\\begingroup"){this.consume();var u=r==="{"?"}":"\\endgroup";this.gullet.beginGroup();var a=this.parseExpression(!1,u),n=this.fetch();this.expect(u),this.gullet.endGroup(),i={type:"ordgroup",mode:this.mode,loc:Xs.range(t,n),body:a,semisimple:r==="\\begingroup"||void 0}}else if(i=this.parseFunction(e,A)||this.parseSymbol(),i==null&&r[0]==="\\"&&!VDA.hasOwnProperty(r)){if(this.settings.throwOnError)throw new ut("Undefined control sequence: "+r,t);i=this.formatUnsupportedCmd(r),this.consume()}return i}formLigatures(A){var e=A.length-1;for(var t=0;t<e;++t){var r=A[t];if(r.type!=="textord")continue;var i=r.text,u=A[t+1];if(!u||u.type!=="textord")continue;if(i==="-"&&u.text==="-"){var a=A[t+2];if(t+1<e&&a&&a.type==="textord"&&a.text==="-")A.splice(t,3,{type:"textord",mode:"text",loc:Xs.range(r,a),text:"---"}),e-=2;else A.splice(t,2,{type:"textord",mode:"text",loc:Xs.range(r,u),text:"--"}),e-=1}if((i==="'"||i==="`")&&u.text===i)A.splice(t,2,{type:"textord",mode:"text",loc:Xs.range(r,u),text:i+i}),e-=1}}parseSymbol(){var A=this.fetch(),e=A.text;if(/^\\verb[^a-zA-Z]/.test(e)){this.consume();var t=e.slice(5),r=t.charAt(0)==="*";if(r)t=t.slice(1);if(t.length<2||t.charAt(0)!==t.slice(-1))throw new ut(`\\verb assertion failed --
please report what input caused this bug`);return t=t.slice(1,-1),{type:"verb",mode:"text",body:t,star:r}}if(eDA.hasOwnProperty(e[0])&&!Ca[this.mode][e[0]]){if(this.settings.strict&&this.mode==="math")this.settings.reportNonstrict("unicodeTextInMathMode",'Accented Unicode text character "'+e[0]+'" used in math mode',A);e=eDA[e[0]]+e.slice(1)}var i=hAt.exec(e);if(i){if(e=e.substring(0,i.index),e==="i")e="ı";else if(e==="j")e="ȷ"}var u;if(Ca[this.mode][e]){if(this.settings.strict&&this.mode==="math"&&sV.includes(e))this.settings.reportNonstrict("unicodeTextInMathMode",'Latin-1/Unicode text character "'+e[0]+'" used in math mode',A);var a=Ca[this.mode][e].group,n=Xs.range(A),o;if(Y$e(a))o={type:"atom",mode:this.mode,family:a,loc:n,text:e};else o={type:a,mode:this.mode,loc:n,text:e};u=o}else if(e.charCodeAt(0)>=128){if(this.settings.strict){if(!tDA(e.charCodeAt(0)))this.settings.reportNonstrict("unknownSymbol",'Unrecognized Unicode character "'+e[0]+'"'+(" ("+e.charCodeAt(0)+")"),A);else if(this.mode==="math")this.settings.reportNonstrict("unicodeTextInMathMode",'Unicode text character "'+e[0]+'" used in math mode',A)}u={type:"textord",mode:"text",loc:Xs.range(A),text:e}}else return null;if(this.consume(),i)for(var s=0;s<i[0].length;s++){var l=i[0][s];if(!uV[l])throw new ut("Unknown accent ' "+l+"'",A);var g=uV[l][this.mode]||uV[l].text;if(!g)throw new ut("Accent "+l+" unsupported in "+this.mode+" mode",A);u={type:"accent",mode:this.mode,loc:Xs.range(A),label:g,isStretchy:!1,isShifty:!0,base:u}}return u}}var ut,RXe,NXe=(A)=>A.replace(RXe,"-$1").toLowerCase(),GXe,UXe,S0=(A)=>String(A).replace(UXe,(e)=>GXe[e]),sR=(A)=>{if(A.type==="ordgroup")if(A.body.length===1)return sR(A.body[0]);else return A;else if(A.type==="color")if(A.body.length===1)return sR(A.body[0]);else return A;else if(A.type==="font")return sR(A.body);else return A},MXe,Vd=(A)=>MXe.has(sR(A).type),TXe=(A)=>{var e=/^[\x00-\x20]*([^\\/#?]*?)(:|&#0*58|&#x0*3a|&colon)/i.exec(A);if(!e)return"_relative";if(e[2]!==":")return null;if(!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(e[1]))return null;return e[1].toLowerCase()},aV,wV=0,CR=1,rD=2,zd=3,ab=4,Kg=5,iD=6,os=7,NB,JXe,OXe,PXe,_Xe,WXe,qXe,qr,nV,lR,eo=(A)=>A+" "+A,AD=80,ZXe=function(e,t){return"M95,"+(622+e+t)+`
c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14
c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54
c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10
s173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429
c69,-144,104.5,-217.7,106.5,-221
l`+e/2.075+" -"+e+`
c5.3,-9.3,12,-14,20,-14
H400000v`+(40+e)+`H845.2724
s-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7
c-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z
M`+(834+e)+" "+t+"h400000v"+(40+e)+"h-400000z"},VXe=function(e,t){return"M263,"+(601+e+t)+`c0.7,0,18,39.7,52,119
c34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120
c340,-704.7,510.7,-1060.3,512,-1067
l`+e/2.084+" -"+e+`
c4.7,-7.3,11,-11,19,-11
H40000v`+(40+e)+`H1012.3
s-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232
c-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1
s-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26
c-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z
M`+(1001+e)+" "+t+"h400000v"+(40+e)+"h-400000z"},jXe=function(e,t){return"M983 "+(10+e+t)+`
l`+e/3.13+" -"+e+`
c4,-6.7,10,-10,18,-10 H400000v`+(40+e)+`
H1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7
s-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744
c-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30
c26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722
c56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5
c53.7,-170.3,84.5,-266.8,92.5,-289.5z
M`+(1001+e)+" "+t+"h400000v"+(40+e)+"h-400000z"},XXe=function(e,t){return"M424,"+(2398+e+t)+`
c-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514
c0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20
s-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121
s209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081
l`+e/4.223+" -"+e+`c4,-6.7,10,-10,18,-10 H400000
v`+(40+e)+`H1014.6
s-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185
c-2,6,-10,9,-24,9
c-8,0,-12,-0.7,-12,-2z M`+(1001+e)+" "+t+`
h400000v`+(40+e)+"h-400000z"},$Xe=function(e,t){return"M473,"+(2713+e+t)+`
c339.3,-1799.3,509.3,-2700,510,-2702 l`+e/5.298+" -"+e+`
c3.3,-7.3,9.3,-11,18,-11 H400000v`+(40+e)+`H1017.7
s-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9
c-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200
c0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26
s76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,
606zM`+(1001+e)+" "+t+"h400000v"+(40+e)+"H1017.7z"},A$e=function(e){var t=e/2;return"M400000 "+e+" H0 L"+t+" 0 l65 45 L145 "+(e-80)+" H400000z"},e$e=function(e,t,r){var i=r-54-t-e;return"M702 "+(e+t)+"H400000"+(40+e)+`
H742v`+i+`l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1
h-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170
c-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667
219 661 l218 661zM702 `+t+"H400000v"+(40+e)+"H742z"},t$e=function(e,t,r){t=1000*t;var i="";switch(e){case"sqrtMain":i=ZXe(t,AD);break;case"sqrtSize1":i=VXe(t,AD);break;case"sqrtSize2":i=jXe(t,AD);break;case"sqrtSize3":i=XXe(t,AD);break;case"sqrtSize4":i=$Xe(t,AD);break;case"sqrtTall":i=e$e(t,AD,r)}return i},r$e=function(e,t){switch(e){case"⎜":return eo("M291 0 H417 V"+t+" H291z");case"∣":return eo("M145 0 H188 V"+t+" H145z");case"∥":return eo("M145 0 H188 V"+t+" H145z")+eo("M367 0 H410 V"+t+" H367z");case"⎟":return eo("M457 0 H583 V"+t+" H457z");case"⎢":return eo("M319 0 H403 V"+t+" H319z");case"⎥":return eo("M263 0 H347 V"+t+" H263z");case"⎪":return eo("M384 0 H504 V"+t+" H384z");case"⏐":return eo("M312 0 H355 V"+t+" H312z");case"‖":return eo("M257 0 H300 V"+t+" H257z")+eo("M478 0 H521 V"+t+" H478z");default:return""}},f2A,i$e=function(e,t){switch(e){case"lbrack":return"M403 1759 V84 H666 V0 H319 V1759 v"+t+` v1759 v84 h347 v-84
H403z M403 1759 V0 H319 V1759 v`+t+" v1759 v84 h84z";case"rbrack":return"M347 1759 V0 H0 V84 H263 V1759 v"+t+` v1759 H0 v84 H347z
M347 1759 V0 H263 V1759 v`+t+" v1759 h84z";case"vert":return"M145 15 v585 v"+t+` v585 c2.667,10,9.667,15,21,15
c10,0,16.667,-5,20,-15 v-585 v`+-t+` v-585 c-2.667,-10,-9.667,-15,-21,-15
c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+t+" v585 h43z";case"doublevert":return"M145 15 v585 v"+t+` v585 c2.667,10,9.667,15,21,15
c10,0,16.667,-5,20,-15 v-585 v`+-t+` v-585 c-2.667,-10,-9.667,-15,-21,-15
c-10,0,-16.667,5,-20,15z M188 15 H145 v585 v`+t+` v585 h43z
M367 15 v585 v`+t+` v585 c2.667,10,9.667,15,21,15
c10,0,16.667,-5,20,-15 v-585 v`+-t+` v-585 c-2.667,-10,-9.667,-15,-21,-15
c-10,0,-16.667,5,-20,15z M410 15 H367 v585 v`+t+" v585 h43z";case"lfloor":return"M319 602 V0 H403 V602 v"+t+` v1715 h263 v84 H319z
MM319 602 V0 H403 V602 v`+t+" v1715 H319z";case"rfloor":return"M319 602 V0 H403 V602 v"+t+` v1799 H0 v-84 H319z
MM319 602 V0 H403 V602 v`+t+" v1715 H319z";case"lceil":return"M403 1759 V84 H666 V0 H319 V1759 v"+t+` v602 h84z
M403 1759 V0 H319 V1759 v`+t+" v602 h84z";case"rceil":return"M347 1759 V0 H0 V84 H263 V1759 v"+t+` v602 h84z
M347 1759 V0 h-84 V1759 v`+t+" v602 h84z";case"lparen":return`M863,9c0,-2,-2,-5,-6,-9c0,0,-17,0,-17,0c-12.7,0,-19.3,0.3,-20,1
c-5.3,5.3,-10.3,11,-15,17c-242.7,294.7,-395.3,682,-458,1162c-21.3,163.3,-33.3,349,
-36,557 l0,`+(t+84)+`c0.2,6,0,26,0,60c2,159.3,10,310.7,24,454c53.3,528,210,
949.7,470,1265c4.7,6,9.7,11.7,15,17c0.7,0.7,7,1,19,1c0,0,18,0,18,0c4,-4,6,-7,6,-9
c0,-2.7,-3.3,-8.7,-10,-18c-135.3,-192.7,-235.5,-414.3,-300.5,-665c-65,-250.7,-102.5,
-544.7,-112.5,-882c-2,-104,-3,-167,-3,-189
l0,-`+(t+92)+`c0,-162.7,5.7,-314,17,-454c20.7,-272,63.7,-513,129,-723c65.3,
-210,155.3,-396.3,270,-559c6.7,-9.3,10,-15.3,10,-18z`;case"rparen":return`M76,0c-16.7,0,-25,3,-25,9c0,2,2,6.3,6,13c21.3,28.7,42.3,60.3,
63,95c96.7,156.7,172.8,332.5,228.5,527.5c55.7,195,92.8,416.5,111.5,664.5
c11.3,139.3,17,290.7,17,454c0,28,1.7,43,3.3,45l0,`+(t+9)+`
c-3,4,-3.3,16.7,-3.3,38c0,162,-5.7,313.7,-17,455c-18.7,248,-55.8,469.3,-111.5,664
c-55.7,194.7,-131.8,370.3,-228.5,527c-20.7,34.7,-41.7,66.3,-63,95c-2,3.3,-4,7,-6,11
c0,7.3,5.7,11,17,11c0,0,11,0,11,0c9.3,0,14.3,-0.3,15,-1c5.3,-5.3,10.3,-11,15,-17
c242.7,-294.7,395.3,-681.7,458,-1161c21.3,-164.7,33.3,-350.7,36,-558
l0,-`+(t+144)+`c-2,-159.3,-10,-310.7,-24,-454c-53.3,-528,-210,-949.7,
-470,-1265c-4.7,-6,-9.7,-11.7,-15,-17c-0.7,-0.7,-6.7,-1,-18,-1z`;default:throw Error("Unknown stretchy delimiter.")}},oV,a$e,rDA=function(e){if(typeof e!=="string")e=e.unit;return e in oV||e in a$e||e==="ex"},Sa=function(e,t){var r;if(e.unit in oV)r=oV[e.unit]/t.fontMetrics().ptPerEm/t.sizeMultiplier;else if(e.unit==="mu")r=t.fontMetrics().cssEmPerMu;else{var i;if(t.style.isTight())i=t.havingStyle(t.style.text());else i=t;if(e.unit==="ex")r=i.fontMetrics().xHeight;else if(e.unit==="em")r=i.fontMetrics().quad;else throw new ut("Invalid unit: '"+e.unit+"'");if(i!==t)r*=i.sizeMultiplier/t.sizeMultiplier}return Math.min(e.number*r,t.maxSize)},gt=function(e){return+e.toFixed(4)+"em"},eQ=function(e){return e.filter((t)=>t).join(" ")},bV=function(e){var t="";for(var r of Object.keys(e)){var i=e[r];if(i!==void 0)t+=NXe(r)+":"+i+";"}return t},iDA=function(e,t,r){if(this.classes=e||[],this.attributes={},this.height=0,this.depth=0,this.maxFontSize=0,this.style=r||{},t){if(t.style.isTight())this.classes.push("mtight");var i=t.getColor();if(i)this.style.color=i}},uDA=function(e){var t=document.createElement(e);t.className=eQ(this.classes),Object.assign(t.style,this.style);for(var r of Object.keys(this.attributes))t.setAttribute(r,this.attributes[r]);for(var i=0;i<this.children.length;i++)t.appendChild(this.children[i].toNode());return t},n$e,aDA=function(e){var t="<"+e;if(this.classes.length)t+=' class="'+S0(eQ(this.classes))+'"';var r=bV(this.style);if(r)t+=' style="'+S0(r)+'"';for(var i of Object.keys(this.attributes)){if(n$e.test(i))throw new ut("Invalid attribute name '"+i+"'");t+=" "+i+'="'+S0(this.attributes[i])+'"'}t+=">";for(var u=0;u<this.children.length;u++)t+=this.children[u].toMarkup();return t+="</"+e+">",t},o$e,g$e=(A)=>A instanceof Mp||A instanceof ob||A instanceof Up,GB,rR,m2A,zZ,Ca,iA="math",Ve="text",pA="main",VA="ams",Ba="accent-token",xt="bin",ss="close",nD="inner",Br="mathord",xn="op-token",Zl="open",sb="punct",XA="rel",jd="spacing",re="textord",oDA,D2A='0123456789/@."',gR,Ab,y2A='0123456789!@*()-=+";:?/.,',cR,eb,ER="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",eD,tb,Mr,ca,Xo,RB,Wd,sV="ÐÞþ",tD,rb,lV,w2A,b2A,B$e,Gp,v2A,k2A,F2A,gV,cV,x2A,CV,S2A,E$e,d$e=(A)=>{var e=A.charCodeAt(0),t=A.charCodeAt(1),r=(e-55296)*1024+(t-56320)+65536;if(119808<=r&&r<120484){var i=Math.floor((r-119808)/26);return S2A[i]}else if(120782<=r&&r<=120831){var u=Math.floor((r-120782)/10);return E$e[u]}else if(r===120485||r===120486)return S2A[0];else if(120486<r&&r<120782)return Gp;else throw new ut("Unsupported character: "+A)},pR=function(e,t,r){if(Ca[r][e]){var i=Ca[r][e].replace;if(i)e=i}return{value:e,metrics:vV(e,t,r)}},ns=function(e,t,r,i,u){var a=pR(e,t,r),n=a.metrics;e=a.value;var o;if(n){var s=n.italic;if(r==="text"||i&&i.font==="mathit")s=0;o=new $s(e,n.height,n.depth,s,n.skew,n.width,u)}else typeof console<"u"&&console.warn("No character metrics "+("for '"+e+"' in style '"+t+"' and mode '"+r+"'")),o=new $s(e,0,0,0,0,0,u);if(i){if(o.maxFontSize=i.sizeMultiplier,i.style.isTight())o.classes.push("mtight");var l=i.getColor();if(l)o.style.color=l}return o},kV=function(e,t,r,i){if(i===void 0)i=[];if(r.font==="boldsymbol"&&pR(e,"Main-Bold",t).metrics)return ns(e,"Main-Bold",t,r,i.concat(["mathbf"]));else if(e==="\\"||Ca[t][e].font==="main")return ns(e,"Main-Regular",t,r,i);else return ns(e,"AMS-Regular",t,r,i.concat(["amsrm"]))},I$e=function(e,t,r){if(r!=="textord"&&pR(e,"Math-BoldItalic",t).metrics)return{fontName:"Math-BoldItalic",fontClass:"boldsymbol"};else return{fontName:"Main-Bold",fontClass:"mathbf"}},fR=function(e,t,r){var{mode:i,text:u}=e,a=["mord"],{font:n,fontFamily:o,fontWeight:s,fontShape:l}=t,g=i==="math"||i==="text"&&!!n,C=g?n:o,B="",E="";if(u.charCodeAt(0)===55349){var d=d$e(u);B=d.font,E=d[i+"Class"]}if(B)return ns(u,B,i,t,a.concat(E));else if(C){var I,h;if(C==="boldsymbol"){var Q=I$e(u,i,r);I=Q.fontName,h=[Q.fontClass]}else if(g)I=BV[n].fontName,h=[n];else I=iR(o,s,l),h=[o,s,l];if(pR(u,I,i).metrics)return ns(u,I,i,t,a.concat(h));else if(oDA.hasOwnProperty(u)&&I.slice(0,10)==="Typewriter"){var p=[];for(var m=0;m<u.length;m++)p.push(ns(u[m],I,i,t,a.concat(h)));return Xd(p)}}if(r==="mathord")return ns(u,"Math-Italic",i,t,a.concat(["mathnormal"]));else if(r==="textord"){var f=Ca[i][u]&&Ca[i][u].font;if(f==="ams"){var D=iR("amsrm",s,l);return ns(u,D,i,t,a.concat("amsrm",s,l))}else if(f==="main"||!f){var w=iR("textrm",s,l);return ns(u,w,i,t,a.concat(s,l))}else{var b=iR(f,s,l);return ns(u,b,i,t,a.concat(b,s,l))}}else throw Error("unexpected type: "+r+" in makeOrd")},h$e=(A,e)=>{if(eQ(A.classes)!==eQ(e.classes)||A.skew!==e.skew||A.maxFontSize!==e.maxFontSize||A.italic!==0&&A.hasClass("mathnormal"))return!1;if(A.classes.length===1){var t=A.classes[0];if(t==="mbin"||t==="mord")return!1}for(var r of Object.keys(A.style))if(A.style[r]!==e.style[r])return!1;for(var i of Object.keys(e.style))if(A.style[i]!==e.style[i])return!1;return!0},sDA=(A)=>{for(var e=0;e<A.length-1;e++){var t=A[e],r=A[e+1];if(t instanceof $s&&r instanceof $s&&h$e(t,r))t.text+=r.text,t.height=Math.max(t.height,r.height),t.depth=Math.max(t.depth,r.depth),t.italic=r.italic,A.splice(e+1,1),e--}return A},FV=function(e){var t=0,r=0,i=0;for(var u=0;u<e.children.length;u++){var a=e.children[u];if(a.height>t)t=a.height;if(a.depth>r)r=a.depth;if(a.maxFontSize>i)i=a.maxFontSize}e.height=t,e.depth=r,e.maxFontSize=i},tt=function(e,t,r,i){var u=new Mp(e,t,r,i);return FV(u),u},tQ=(A,e,t,r)=>new Mp(A,e,t,r),uD=function(e,t,r){var i=tt([e],[],t);return i.height=Math.max(r||t.fontMetrics().defaultRuleThickness,t.minRuleThickness),i.style.borderBottomWidth=gt(i.height),i.maxFontSize=1,i},Q$e=function(e,t,r,i){var u=new ob(e,t,r,i);return FV(u),u},Xd=function(e){var t=new Up(e);return FV(t),t},aD=function(e,t){if(e instanceof Up)return tt([],[e],t);return e},p$e=function(e){if(e.positionType==="individualShift"){var t=e.children,r=[t[0]],i=-t[0].shift-t[0].elem.depth,u=i;for(var a=1;a<t.length;a++){var n=-t[a].shift-u-t[a].elem.depth,o=n-(t[a-1].elem.height+t[a-1].elem.depth);u=u+n,r.push({type:"kern",size:o}),r.push(t[a])}return{children:r,depth:i}}var s;if(e.positionType==="top"){var l=e.positionData;for(var g=0;g<e.children.length;g++){var C=e.children[g];l-=C.type==="kern"?C.size:C.elem.height+C.elem.depth}s=l}else if(e.positionType==="bottom")s=-e.positionData;else{var B=e.children[0];if(B.type!=="elem")throw Error('First child must have type "elem".');if(e.positionType==="shift")s=-B.elem.depth-e.positionData;else if(e.positionType==="firstBaseline")s=-B.elem.depth;else throw Error("Invalid positionType "+e.positionType+".")}return{children:e.children,depth:s}},au=function(e,t){var{children:r,depth:i}=p$e(e),u=0;for(var a=0;a<r.length;a++){var n=r[a];if(n.type==="elem"){var o=n.elem;u=Math.max(u,o.maxFontSize,o.height)}}u+=2;var s=tt(["pstrut"],[]);s.style.height=gt(u);var l=[],g=i,C=i,B=i;for(var E=0;E<r.length;E++){var d=r[E];if(d.type==="kern")B+=d.size;else{var I=d.elem,h=d.wrapperClasses||[],Q=d.wrapperStyle||{},p=tt(h,[s,I],void 0,Q);if(p.style.top=gt(-u-B-I.depth),d.marginLeft)p.style.marginLeft=d.marginLeft;if(d.marginRight)p.style.marginRight=d.marginRight;l.push(p),B+=I.height+I.depth}g=Math.min(g,B),C=Math.max(C,B)}var m=tt(["vlist"],l);m.style.height=gt(C);var f;if(g<0){var D=tt([],[]),w=tt(["vlist"],[D]);w.style.height=gt(-g);var b=tt(["vlist-s"],[new $s("​")]);f=[tt(["vlist-r"],[m,b]),tt(["vlist-r"],[w])]}else f=[tt(["vlist-r"],[m])];var k=tt(["vlist-t"],f);if(f.length===2)k.classes.push("vlist-t2");return k.height=C,k.depth=-g,k},lDA=(A,e)=>{var t=tt(["mspace"],[],e),r=Sa(A,e);return t.style.marginRight=gt(r),t},iR=(A,e,t)=>{var r,i;switch(A){case"amsrm":r="AMS";break;case"textrm":r="Main";break;case"textsf":r="SansSerif";break;case"texttt":r="Typewriter";break;default:r=A}if(e==="textbf"&&t==="textit")i="BoldItalic";else if(e==="textbf")i="Bold";else if(t==="textit")i="Italic";else i="Regular";return r+"-"+i},BV,gDA,cDA=function(e,t){var[r,i,u]=gDA[e],a=new Zd(r),n=new UB([a],{width:gt(i),height:gt(u),style:"width:"+gt(i),viewBox:"0 0 "+1000*i+" "+1000*u,preserveAspectRatio:"xMinYMin"}),o=tQ(["overlay"],[n],t);return o.height=u,o.style.height=gt(u),o.style.width=gt(i),o},xa,Np,Pd,f$e,m$e,CDA,dR,IR,hR=function(e){return e.type==="ordgroup"&&e.body.length===1?e.body[0]:e},Fn=function(e){return e.type==="ordgroup"?e.body:[e]},D$e,y$e,w$e,b$e,to=function(e,t,r,i){if(i===void 0)i=[null,null];var u=[];for(var a=0;a<e.length;a++){var n=nu(e[a],t);if(n instanceof Up){var o=n.children;u.push(...o)}else u.push(n)}if(sDA(u),!r)return u;var s=t;if(e.length===1){var l=e[0];if(l.type==="sizing")s=t.havingSize(l.size);else if(l.type==="styling")s=t.havingStyle(w$e[l.style])}var g=tt([i[0]||"leftmost"],[],t),C=tt([i[1]||"rightmost"],[],t),B=r==="root";return EV(u,(E,d)=>{var I=d.classes[0],h=E.classes[0];if(I==="mbin"&&y$e.has(h))d.classes[0]="mord";else if(h==="mbin"&&D$e.has(I))E.classes[0]="mord"},{node:g},C,B),EV(u,(E,d)=>{var I,h,Q=IV(d),p=IV(E),m=Q&&p?E.hasClass("mtight")?(I=m$e[Q])==null?void 0:I[p]:(h=f$e[Q])==null?void 0:h[p]:null;if(m)return lDA(m,s)},{node:g},C,B),u},EV=function(e,t,r,i,u){if(i)e.push(i);var a=0;for(;a<e.length;a++){var n=e[a],o=BDA(n);if(o){EV(o.children,t,r,null,u);continue}var s=!n.hasClass("mspace");if(s){var l=t(n,r.node);if(l)if(r.insertAfter)r.insertAfter(l);else e.unshift(l),a++}if(s)r.node=n;else if(u&&n.hasClass("newline"))r.node=tt(["leftmost"]);r.insertAfter=((g)=>(C)=>{e.splice(g+1,0,C),a++})(a)}if(i)e.pop()},BDA=function(e){if(e instanceof Up||e instanceof ob||e instanceof Mp&&e.hasClass("enclosing"))return e;return null},dV=function(e,t){var r=BDA(e);if(r){var i=r.children;if(i.length){if(t==="right")return dV(i[i.length-1],"right");else if(t==="left")return dV(i[0],"left")}}return e},IV=function(e,t){if(!e)return null;if(t)e=dV(e,t);var r=e.classes[0];return b$e[r]||null},nb=function(e,t){var r=["nulldelimiter"].concat(e.baseSizingClasses());return tt(t.concat(r))},nu=function(e,t,r){if(!e)return tt();if(dR[e.type]){var i=dR[e.type](e,t);if(r&&t.size!==r.size){i=tt(t.sizingClasses(r),[i],t);var u=t.sizeMultiplier/r.sizeMultiplier;i.height*=u,i.depth*=u}return i}else throw new ut("Got group of unknown type: '"+e.type+"'")},v$e,k$e,Jg=function(e,t,r){if(Ca[t][e]&&Ca[t][e].replace&&e.charCodeAt(0)!==55349&&!(oDA.hasOwnProperty(e)&&r&&(r.fontFamily&&r.fontFamily.slice(4,6)==="tt"||r.font&&r.font.slice(4,6)==="tt")))e=Ca[t][e].replace;return new gn(e)},SV=function(e){if(e.length===1)return e[0];else return new it("mrow",e)},F$e,LV=(A,e)=>{if(A.mode==="text"){if(e.fontFamily==="texttt")return"monospace";else if(e.fontFamily==="textsf")if(e.fontShape==="textit"&&e.fontWeight==="textbf")return"sans-serif-bold-italic";else if(e.fontShape==="textit")return"sans-serif-italic";else if(e.fontWeight==="textbf")return"bold-sans-serif";else return"sans-serif";else if(e.fontShape==="textit"&&e.fontWeight==="textbf")return"bold-italic";else if(e.fontShape==="textit")return"italic";else if(e.fontWeight==="textbf")return"bold"}var t=e.font;if(!t||t==="mathnormal")return null;var r=A.mode,i=F$e[t];if(i)return typeof i==="function"?i(A):i;var u=A.text;if(v$e.has(u))return null;if(Ca[r][u]){var a=Ca[r][u].replace;if(a)u=a}var n=BV[t].fontName;if(vV(u,n,r))return BV[t].variant;return null},Vl=function(e,t,r){if(e.length===1){var i=Gu(e[0],t);if(r&&i instanceof it&&i.type==="mo")i.setAttribute("lspace","0em"),i.setAttribute("rspace","0em");return[i]}var u=[],a;for(var n=0;n<e.length;n++){var o=Gu(e[n],t);if(o instanceof it&&a instanceof it){if(o.type==="mtext"&&a.type==="mtext"&&o.getAttribute("mathvariant")===a.getAttribute("mathvariant")){a.children.push(...o.children);continue}else if(o.type==="mn"&&a.type==="mn"){a.children.push(...o.children);continue}else if(ZZ(o)&&a.type==="mn"){a.children.push(...o.children);continue}else if(o.type==="mn"&&ZZ(a))o.children=[...a.children,...o.children],u.pop();else if((o.type==="msup"||o.type==="msub")&&o.children.length>=1&&(a.type==="mn"||ZZ(a))){var s=o.children[0];if(s instanceof it&&s.type==="mn")s.children=[...a.children,...s.children],u.pop()}else if(a.type==="mi"&&a.children.length===1){var l=a.children[0];if(l instanceof gn&&l.text==="̸"&&(o.type==="mo"||o.type==="mi"||o.type==="mn")){var g=o.children[0];if(g instanceof gn&&g.text.length>0)g.text=g.text.slice(0,1)+"̸"+g.text.slice(1),u.pop()}}}u.push(o),a=o}return u},rQ=function(e,t,r){return SV(Vl(e,t,r))},Gu=function(e,t){if(!e)return new it("mrow");if(IR[e.type])return IR[e.type](e,t);else throw new ut("Got group of unknown type: '"+e.type+"'")},x$e,R2A,N2A=function(e,t){return t.size<2?e:x$e[e-1][t.size-1]},dDA=function(e){return new qd({style:e.displayMode?qr.DISPLAY:qr.TEXT,maxSize:e.maxSize,minRuleThickness:e.minRuleThickness})},IDA=function(e,t){if(t.displayMode){var r=["katex-display"];if(t.leqno)r.push("leqno");if(t.fleqn)r.push("fleqn");e=tt(r,[e])}return e},S$e=function(e,t,r){var i=dDA(r),u;if(r.output==="mathml")return L2A(e,t,i,r.displayMode,!0);else if(r.output==="html"){var a=hV(e,i);u=tt(["katex"],[a])}else{var n=L2A(e,t,i,r.displayMode,!1),o=hV(e,i);u=tt(["katex"],[n,o])}return IDA(u,r)},L$e=function(e,t,r){var i=dDA(r),u=hV(e,i),a=tt(["katex"],[u]);return IDA(a,r)},R$e,mR=function(e){var t=new it("mo",[new gn(R$e[e.replace(/^\\/,"")])]);return t.setAttribute("stretchy","true"),t},N$e,G$e,DR=function(e,t){function r(){var n=400000,o=e.label.slice(1);if(G$e.has(o)&&"base"in e){var s=e.base.type==="ordgroup"?e.base.body.length:1,l,g,C;if(s>5)if(o==="widehat"||o==="widecheck")l=420,n=2364,C=0.42,g=o+"4";else l=312,n=2340,C=0.34,g="tilde4";else{var B=[1,1,2,2,3,3][s];if(o==="widehat"||o==="widecheck")n=[0,1062,2364,2364,2364][B],l=[0,239,300,360,420][B],C=[0,0.24,0.3,0.3,0.36,0.42][B],g=o+B;else n=[0,600,1033,2339,2340][B],l=[0,260,286,306,312][B],C=[0,0.26,0.286,0.3,0.306,0.34][B],g="tilde"+B}var E=new Zd(g),d=new UB([E],{width:"100%",height:gt(C),viewBox:"0 0 "+n+" "+l,preserveAspectRatio:"none"});return{span:tQ([],[d],t),minWidth:0,height:C}}else{var I=[],h=N$e[o];if(!h)throw Error('No SVG data for "'+o+'".');var[Q,p,m]=h,f=m/1000,D=Q.length,w,b;if(D===1){if(h.length!==4)throw Error('Expected 4-tuple for single-path SVG data "'+o+'".');w=["hide-tail"],b=[h[3]]}else if(D===2)w=["halfarrow-left","halfarrow-right"],b=["xMinYMin","xMaxYMin"];else if(D===3)w=["brace-left","brace-center","brace-right"],b=["xMinYMin","xMidYMin","xMaxYMin"];else throw Error(`Correct katexImagesData or update code here to support
`+D+" children.");for(var k=0;k<D;k++){var v=new Zd(Q[k]),S=new UB([v],{width:"400em",height:gt(f),viewBox:"0 0 "+n+" "+m,preserveAspectRatio:b[k]+" slice"}),x=tQ([w[k]],[S],t);if(D===1)return{span:x,minWidth:p,height:f};else x.style.height=gt(f),I.push(x)}return{span:tt(["stretchy"],I,t),minWidth:p,height:f}}}var{span:i,minWidth:u,height:a}=r();if(i.height=a,i.style.height=gt(a),u>0)i.style.minWidth=gt(u);return i},U$e=function(e,t,r,i,u){var a,n=e.height+e.depth+r+i;if(/fbox|color|angl/.test(t)){if(a=tt(["stretchy",t],[],u),t==="fbox"){var o=u.color&&u.getColor();if(o)a.style.borderColor=o}}else{var s=[];if(/^[bx]cancel$/.test(t))s.push(new BR({x1:"0",y1:"0",x2:"100%",y2:"100%","stroke-width":"0.046em"}));if(/^x?cancel$/.test(t))s.push(new BR({x1:"0",y1:"100%",x2:"100%",y2:"0","stroke-width":"0.046em"}));var l=new UB(s,{width:"100%",height:gt(n)});a=tQ([],[l],u)}return a.height=n,a.style.height=gt(n),a},M$e,T$e,hDA=(A)=>{if(A instanceof $s)return A;if(g$e(A)&&A.children.length===1)return hDA(A.children[0])},RV=(A,e)=>{var t,r,i;if(A&&A.type==="supsub")r=ti(A.base,"accent"),t=r.base,A.base=t,i=l$e(nu(A,e)),A.base=r;else r=ti(A,"accent"),t=r.base;var u=nu(t,e.havingCrampedStyle()),a=r.isShifty&&Vd(t),n=0;if(a){var o,s;n=(o=(s=hDA(u))==null?void 0:s.skew)!=null?o:0}var l=r.label==="\\c",g=l?u.height+u.depth:Math.min(u.height,e.fontMetrics().xHeight),C;if(!r.isStretchy){var B,E;if(r.label==="\\vec")B=cDA("vec",e),E=gDA.vec[1];else if(B=fR({type:"textord",mode:r.mode,text:r.label},e,"textord"),B=s$e(B),B.italic=0,E=B.width,l)g+=B.depth;C=tt(["accent-body"],[B]);var d=r.label==="\\textcircled";if(d)C.classes.push("accent-full"),g=u.height;var I=n;if(!d)I-=E/2;if(C.style.left=gt(I),r.label==="\\textcircled")C.style.top=".2em";C=au({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:-g},{type:"elem",elem:C}]})}else C=DR(r,e),C=au({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"elem",elem:C,wrapperClasses:["svg-align"],wrapperStyle:n>0?{width:"calc(100% - "+gt(2*n)+")",marginLeft:gt(2*n)}:void 0}]});var h=tt(["mord","accent"],[C],e);if(i)return i.children[0]=h,i.height=Math.max(h.height,i.height),i.classes[0]="mord",i;else return h},QDA=(A,e)=>{var t=A.isStretchy?mR(A.label):new it("mo",[Jg(A.label,A.mode)]),r=new it("mover",[Gu(A.base,e),t]);return r.setAttribute("accent","true"),r},H$e,aR=(A)=>{var e=new it("mpadded",A?[A]:[]);return e.setAttribute("width","+0.6em"),e.setAttribute("lspace","0.3em"),e},bR=(A)=>{var e=A.type==="ordgroup"&&A.body.length?A.body[0]:A;if(e.type==="atom"&&(e.family==="bin"||e.family==="rel"))return"m"+e.family;else return"mord"},K$e,G2A=()=>({type:"styling",body:[],mode:"math",style:"display",resetFont:!0}),U2A=(A)=>A.type==="textord"&&A.text==="@",J$e=(A,e)=>(A.type==="mathord"||A.type==="atom")&&A.text===e,mDA=(A,e)=>{var t=to(A.body,e.withColor(A.color),!1);return Xd(t)},DDA=(A,e)=>{var t=Vl(A.body,e.withColor(A.color)),r=new it("mstyle",t);return r.setAttribute("mathcolor",A.color),r},QV,yDA=(A)=>{var e=A.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(e))throw new ut("Expected a control sequence",A);return e},_$e=(A)=>{var e=A.gullet.popToken();if(e.text==="="){if(e=A.gullet.popToken(),e.text===" ")e=A.gullet.popToken()}return e},wDA=(A,e,t,r)=>{var i=A.gullet.macros.get(t.text);if(i==null)t.noexpand=!0,i={tokens:[t],numArgs:0,unexpandable:!A.gullet.isExpandable(t.text)};A.gullet.macros.set(e,i,r)},ib=function(e,t,r){var i=Ca.math[e]&&Ca.math[e].replace,u=vV(i||e,t,r);if(!u)throw Error("Unsupported symbol "+e+" and font size "+t+".");return u},NV=function(e,t,r,i){var u=r.havingBaseStyle(t),a=tt(i.concat(u.sizingClasses(r)),[e],r),n=u.sizeMultiplier/r.sizeMultiplier;return a.height*=n,a.depth*=n,a.maxFontSize=u.sizeMultiplier,a},bDA=function(e,t,r){var i=t.havingBaseStyle(r),u=(1-t.sizeMultiplier/i.sizeMultiplier)*t.fontMetrics().axisHeight;e.classes.push("delimcenter"),e.style.top=gt(u),e.height-=u,e.depth+=u},W$e=function(e,t,r,i,u,a){var n=ns(e,"Main-Regular",u,i),o=NV(n,t,i,a);if(r)bDA(o,i,t);return o},q$e=function(e,t,r,i){return ns(e,"Size"+t+"-Regular",r,i)},vDA=function(e,t,r,i,u,a){var n=q$e(e,t,u,i),o=NV(tt(["delimsizing","size"+t],[n],i),qr.TEXT,i,a);if(r)bDA(o,i,qr.TEXT);return o},VZ=function(e,t,r){var i;if(t==="Size1-Regular")i="delim-size1";else i="delim-size4";var u=tt(["delimsizinginner",i],[tt([],[ns(e,t,r)])]);return{type:"elem",elem:u}},jZ=function(e,t,r){var i=GB["Size4-Regular"][e.charCodeAt(0)]?GB["Size4-Regular"][e.charCodeAt(0)][4]:GB["Size1-Regular"][e.charCodeAt(0)][4],u=new Zd("inner",r$e(e,Math.round(1000*t))),a=new UB([u],{width:gt(i),height:gt(t),style:"width:"+gt(i),viewBox:"0 0 "+1000*i+" "+Math.round(1000*t),preserveAspectRatio:"xMinYMin"}),n=tQ([],[a],r);return n.height=t,n.style.height=gt(t),n.style.width=gt(i),{type:"elem",elem:n}},pV=0.008,nR,z$e,Z$e,kDA=function(e,t,r,i,u,a){var n,o,s,l,g="",C=0;n=s=l=e,o=null;var B="Size1-Regular";if(e==="\\uparrow")s=l="⏐";else if(e==="\\Uparrow")s=l="‖";else if(e==="\\downarrow")n=s="⏐";else if(e==="\\Downarrow")n=s="‖";else if(e==="\\updownarrow")n="\\uparrow",s="⏐",l="\\downarrow";else if(e==="\\Updownarrow")n="\\Uparrow",s="‖",l="\\Downarrow";else if(z$e.has(e))s="∣",g="vert",C=333;else if(Z$e.has(e))s="∥",g="doublevert",C=556;else if(e==="["||e==="\\lbrack")n="⎡",s="⎢",l="⎣",B="Size4-Regular",g="lbrack",C=667;else if(e==="]"||e==="\\rbrack")n="⎤",s="⎥",l="⎦",B="Size4-Regular",g="rbrack",C=667;else if(e==="\\lfloor"||e==="⌊")s=n="⎢",l="⎣",B="Size4-Regular",g="lfloor",C=667;else if(e==="\\lceil"||e==="⌈")n="⎡",s=l="⎢",B="Size4-Regular",g="lceil",C=667;else if(e==="\\rfloor"||e==="⌋")s=n="⎥",l="⎦",B="Size4-Regular",g="rfloor",C=667;else if(e==="\\rceil"||e==="⌉")n="⎤",s=l="⎥",B="Size4-Regular",g="rceil",C=667;else if(e==="("||e==="\\lparen")n="⎛",s="⎜",l="⎝",B="Size4-Regular",g="lparen",C=875;else if(e===")"||e==="\\rparen")n="⎞",s="⎟",l="⎠",B="Size4-Regular",g="rparen",C=875;else if(e==="\\{"||e==="\\lbrace")n="⎧",o="⎨",l="⎩",s="⎪",B="Size4-Regular";else if(e==="\\}"||e==="\\rbrace")n="⎫",o="⎬",l="⎭",s="⎪",B="Size4-Regular";else if(e==="\\lgroup"||e==="⟮")n="⎧",l="⎩",s="⎪",B="Size4-Regular";else if(e==="\\rgroup"||e==="⟯")n="⎫",l="⎭",s="⎪",B="Size4-Regular";else if(e==="\\lmoustache"||e==="⎰")n="⎧",l="⎭",s="⎪",B="Size4-Regular";else if(e==="\\rmoustache"||e==="⎱")n="⎫",l="⎩",s="⎪",B="Size4-Regular";var E=ib(n,B,u),d=E.height+E.depth,I=ib(s,B,u),h=I.height+I.depth,Q=ib(l,B,u),p=Q.height+Q.depth,m=0,f=1;if(o!==null){var D=ib(o,B,u);m=D.height+D.depth,f=2}var w=d+p+m,b=Math.max(0,Math.ceil((t-w)/(f*h))),k=w+b*f*h,v=i.fontMetrics().axisHeight;if(r)v*=i.sizeMultiplier;var S=k/2-v,x=[];if(g.length>0){var F=k-d-p,T=Math.round(k*1000),R=i$e(g,Math.round(F*1000)),L=new Zd(g,R),M=gt(C/1000),U=gt(T/1000),Y=new UB([L],{width:M,height:U,viewBox:"0 0 "+C+" "+T}),H=tQ([],[Y],i);H.height=T/1000,H.style.width=M,H.style.height=U,x.push({type:"elem",elem:H})}else{if(x.push(VZ(l,B,u)),x.push(nR),o===null){var J=k-d-p+2*pV;x.push(jZ(s,J,i))}else{var K=(k-d-p-m)/2+2*pV;x.push(jZ(s,K,i)),x.push(nR),x.push(VZ(o,B,u)),x.push(nR),x.push(jZ(s,K,i))}x.push(nR),x.push(VZ(n,B,u))}var O=i.havingBaseStyle(qr.TEXT),P=au({positionType:"bottom",positionData:S,children:x});return NV(tt(["delimsizing","mult"],[P],O),qr.TEXT,i,a)},XZ=80,$Z=0.08,AV=function(e,t,r,i,u){var a=t$e(e,i,r),n=new Zd(e,a),o=new UB([n],{width:"400em",height:gt(t),viewBox:"0 0 400000 "+r,preserveAspectRatio:"xMinYMin slice"});return tQ(["hide-tail"],[o],u)},V$e=function(e,t){var r=t.havingBaseSizing(),i=RDA("\\surd",e*r.sizeMultiplier,LDA,r),u=r.sizeMultiplier,a=Math.max(0,t.minRuleThickness-t.fontMetrics().sqrtRuleThickness),n,o,s,l,g;if(i.type==="small"){if(l=1000+1000*a+XZ,e<1)u=1;else if(e<1.4)u=0.7;o=(1+a+$Z)/u,s=(1+a)/u,n=AV("sqrtMain",o,l,a,t),n.style.minWidth="0.853em",g=0.833/u}else if(i.type==="large")l=(1000+XZ)*ub[i.size],s=(ub[i.size]+a)/u,o=(ub[i.size]+a+$Z)/u,n=AV("sqrtSize"+i.size,o,l,a,t),n.style.minWidth="1.02em",g=1/u;else o=e+a+$Z,s=e+a,l=Math.floor(1000*e+a)+XZ,n=AV("sqrtTall",o,l,a,t),n.style.minWidth="0.742em",g=1.056;return n.height=s,n.style.height=gt(o),{span:n,advanceWidth:g,ruleWidth:(t.fontMetrics().sqrtRuleThickness+a)*u}},FDA,j$e,xDA,ub,SDA=function(e,t,r,i,u){if(e==="<"||e==="\\lt"||e==="⟨")e="\\langle";else if(e===">"||e==="\\gt"||e==="⟩")e="\\rangle";if(FDA.has(e)||xDA.has(e))return vDA(e,t,!1,r,i,u);else if(j$e.has(e))return kDA(e,ub[t],!1,r,i,u);else throw new ut("Illegal delimiter: '"+e+"'")},X$e,$$e,LDA,AAt=function(e){if(e.type==="small")return"Main-Regular";else if(e.type==="large")return"Size"+e.size+"-Regular";else if(e.type==="stack")return"Size4-Regular";else{var t=e.type;throw Error("Add support for delim type '"+t+"' here.")}},RDA=function(e,t,r,i){var u=Math.min(2,3-i.style.size);for(var a=u;a<r.length;a++){var n=r[a];if(n.type==="stack")break;var o=ib(e,AAt(n),"math"),s=o.height+o.depth;if(n.type==="small"){var l=i.havingBaseStyle(n.style);s*=l.sizeMultiplier}if(s>t)return n}return r[r.length-1]},fV=function(e,t,r,i,u,a){if(e==="<"||e==="\\lt"||e==="⟨")e="\\langle";else if(e===">"||e==="\\gt"||e==="⟩")e="\\rangle";var n;if(xDA.has(e))n=X$e;else if(FDA.has(e))n=LDA;else n=$$e;var o=RDA(e,t,n,i);if(o.type==="small")return W$e(e,o.style,r,i,u,a);else if(o.type==="large")return vDA(e,o.size,r,i,u,a);else return kDA(e,t,r,i,u,a)},eV=function(e,t,r,i,u,a){var n=i.fontMetrics().axisHeight*i.sizeMultiplier,o=901,s=5/i.fontMetrics().ptPerEm,l=Math.max(t-n,r+n),g=Math.max(l/500*o,2*l-s);return fV(e,g,!0,i,u,a)},M2A,eAt,kR=(A,e)=>{var t=aD(nu(A.body,e),e),r=A.label.slice(1),i=e.sizeMultiplier,u,a,n=Vd(A.body);if(r==="sout")u=tt(["stretchy","sout"]),u.height=e.fontMetrics().defaultRuleThickness/i,a=-0.5*e.fontMetrics().xHeight;else if(r==="phase"){var o=Sa({number:0.6,unit:"pt"},e),s=Sa({number:0.35,unit:"ex"},e),l=e.havingBaseSizing();i=i/l.sizeMultiplier;var g=t.height+t.depth+o+s;t.style.paddingLeft=gt(g/2+o);var C=Math.floor(1000*g*i),B=A$e(C),E=new UB([new Zd("phase",B)],{width:"400em",height:gt(C/1000),viewBox:"0 0 400000 "+C,preserveAspectRatio:"xMinYMin slice"});u=tQ(["hide-tail"],[E],e),u.style.height=gt(g),a=t.depth+o+s}else{if(/cancel/.test(r)){if(!n)t.classes.push("cancel-pad")}else if(r==="angl")t.classes.push("anglpad");else t.classes.push("boxpad");var d,I,h=0;if(/box/.test(r))h=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness),d=e.fontMetrics().fboxsep+(r==="colorbox"?0:h),I=d;else if(r==="angl")h=Math.max(e.fontMetrics().defaultRuleThickness,e.minRuleThickness),d=4*h,I=Math.max(0,0.25-t.depth);else d=n?0.2:0,I=d;if(u=U$e(t,r,d,I,e),/fbox|boxed|fcolorbox/.test(r))u.style.borderStyle="solid",u.style.borderWidth=gt(h);else if(r==="angl"&&h!==0.049)u.style.borderTopWidth=gt(h),u.style.borderRightWidth=gt(h);if(a=t.depth+I,A.backgroundColor){if(u.style.backgroundColor=A.backgroundColor,A.borderColor)u.style.borderColor=A.borderColor}}var Q;if(A.backgroundColor)Q=au({positionType:"individualShift",children:[{type:"elem",elem:u,shift:a},{type:"elem",elem:t,shift:0}]});else{var p=/cancel|phase/.test(r)?["svg-align"]:[];Q=au({positionType:"individualShift",children:[{type:"elem",elem:t,shift:0},{type:"elem",elem:u,shift:a,wrapperClasses:p}]})}if(/cancel/.test(r))Q.height=t.height,Q.depth=t.depth;if(/cancel/.test(r)&&!n)return tt(["mord","cancel-lap"],[Q],e);else return tt(["mord"],[Q],e)},FR=(A,e)=>{var t,r=new it(A.label.includes("colorbox")?"mpadded":"menclose",[Gu(A.body,e)]);switch(A.label){case"\\cancel":r.setAttribute("notation","updiagonalstrike");break;case"\\bcancel":r.setAttribute("notation","downdiagonalstrike");break;case"\\phase":r.setAttribute("notation","phasorangle");break;case"\\sout":r.setAttribute("notation","horizontalstrike");break;case"\\fbox":r.setAttribute("notation","box");break;case"\\angl":r.setAttribute("notation","actuarial");break;case"\\fcolorbox":case"\\colorbox":if(t=e.fontMetrics().fboxsep*e.fontMetrics().ptPerEm,r.setAttribute("width","+"+2*t+"pt"),r.setAttribute("height","+"+2*t+"pt"),r.setAttribute("lspace",t+"pt"),r.setAttribute("voffset",t+"pt"),A.label==="\\fcolorbox"){var i=Math.max(e.fontMetrics().fboxrule,e.minRuleThickness);r.setAttribute("style","border: "+gt(i)+" solid "+A.borderColor)}break;case"\\xcancel":r.setAttribute("notation","updiagonalstrike downdiagonalstrike");break}if(A.backgroundColor)r.setAttribute("mathbackground",A.backgroundColor);return r},NDA,GDA,xR=(A)=>{var e=A.parser.settings;if(!e.displayMode)throw new ut("{"+A.envName+"} can be used only in display mode.")},tAt,TB=function(e,t){var r,i,u=e.body.length,a=e.hLinesBeforeRow,n=0,o=Array(u),s=[],l=Math.max(t.fontMetrics().arrayRuleWidth,t.minRuleThickness),g=1/t.fontMetrics().ptPerEm,C=5*g;if(e.colSeparationType&&e.colSeparationType==="small"){var B=t.havingStyle(qr.SCRIPT).sizeMultiplier;C=0.2778*(B/t.sizeMultiplier)}var E=e.colSeparationType==="CD"?Sa({number:3,unit:"ex"},t):12*g,d=3*g,I=e.arraystretch*E,h=0.7*I,Q=0.3*I,p=0;function m(HA){for(var dA=0;dA<HA.length;++dA){if(dA>0)p+=0.25;s.push({pos:p,isDashed:HA[dA]})}}m(a[0]);for(r=0;r<e.body.length;++r){var f=e.body[r],D=h,w=Q;if(n<f.length)n=f.length;var b={cells:Array(f.length),height:0,depth:0,pos:0};for(i=0;i<f.length;++i){var k=nu(f[i],t);if(w<k.depth)w=k.depth;if(D<k.height)D=k.height;b.cells[i]=k}var v=e.rowGaps[r],S=0;if(v){if(S=Sa(v,t),S>0){if(S+=Q,w<S)w=S;S=0}}if(e.addJot&&r<e.body.length-1)w+=d;b.height=D,b.depth=w,p+=D,b.pos=p,p+=w+S,o[r]=b,m(a[r+1])}var x=p/2+t.fontMetrics().axisHeight,F=e.cols||[],T=[],R,L,M=[];if(e.tags&&e.tags.some((HA)=>HA))for(r=0;r<u;++r){var U=o[r],Y=U.pos-x,H=e.tags[r],J=void 0;if(H===!0)J=tt(["eqn-num"],[],t);else if(H===!1)J=tt([],[],t);else J=tt([],to(H,t,!0),t);J.depth=U.depth,J.height=U.height,M.push({type:"elem",elem:J,shift:Y})}for(i=0,L=0;i<n||L<F.length;++i,++L){var K,O=F[L],P=!0;while(((z=O)==null?void 0:z.type)==="separator"){var z;if(!P)R=tt(["arraycolsep"],[]),R.style.width=gt(t.fontMetrics().doubleRuleSep),T.push(R);if(O.separator==="|"||O.separator===":"){var AA=O.separator==="|"?"solid":"dashed",W=tt(["vertical-separator"],[],t);W.style.height=gt(p),W.style.borderRightWidth=gt(l),W.style.borderRightStyle=AA,W.style.margin="0 "+gt(-l/2);var CA=p-x;if(CA)W.style.verticalAlign=gt(-CA);T.push(W)}else throw new ut("Invalid separator type: "+O.separator);L++,O=F[L],P=!1}if(i>=n)continue;var tA=void 0;if(i>0||e.hskipBeforeAndAfter){var lA,gA;if(tA=(lA=(gA=O)==null?void 0:gA.pregap)!=null?lA:C,tA!==0)R=tt(["arraycolsep"],[]),R.style.width=gt(tA),T.push(R)}var aA=[];for(r=0;r<u;++r){var NA=o[r],DA=NA.cells[i];if(!DA)continue;var KA=NA.pos-x;DA.depth=NA.depth,DA.height=NA.height,aA.push({type:"elem",elem:DA,shift:KA})}var TA=au({positionType:"individualShift",children:aA}),qA=tt(["col-align-"+(((K=O)==null?void 0:K.align)||"c")],[TA]);if(T.push(qA),i<n-1||e.hskipBeforeAndAfter){var IA,bA;if(tA=(IA=(bA=O)==null?void 0:bA.postgap)!=null?IA:C,tA!==0)R=tt(["arraycolsep"],[]),R.style.width=gt(tA),T.push(R)}}var SA=tt(["mtable"],T);if(s.length>0){var EA=uD("hline",t,l),nA=uD("hdashline",t,l),eA=[{type:"elem",elem:SA,shift:0}];while(s.length>0){var BA=s.pop(),yA=BA.pos-x;if(BA.isDashed)eA.push({type:"elem",elem:nA,shift:yA});else eA.push({type:"elem",elem:EA,shift:yA})}SA=au({positionType:"individualShift",children:eA})}if(M.length===0)return tt(["mord"],[SA],t);else{var vA=au({positionType:"individualShift",children:M}),FA=tt(["tag"],[vA],t);return Xd([SA,FA])}},rAt,YB=function(e,t){var r=[],i=new it("mtd",[],["mtr-glue"]),u=new it("mtd",[],["mml-eqn-num"]);for(var a=0;a<e.body.length;a++){var n=e.body[a],o=[];for(var s=0;s<n.length;s++)o.push(new it("mtd",[Gu(n[s],t)]));if(e.tags&&e.tags[a])if(o.unshift(i),o.push(i),e.leqno)o.unshift(u);else o.push(u);r.push(new it("mtr",o))}var l=new it("mtable",r),g=e.arraystretch===0.5?0.1:0.16+e.arraystretch-1+(e.addJot?0.09:0);l.setAttribute("rowspacing",gt(g));var C="",B="";if(e.cols&&e.cols.length>0){var E=e.cols,d="",I=!1,h=0,Q=E.length;if(E[0].type==="separator")C+="top ",h=1;if(E[E.length-1].type==="separator")C+="bottom ",Q-=1;for(var p=h;p<Q;p++){var m=E[p];if(m.type==="align"){if(B+=rAt[m.align],I)d+="none ";I=!0}else if(m.type==="separator"){if(I)d+=m.separator==="|"?"solid ":"dashed ",I=!1}}if(l.setAttribute("columnalign",B.trim()),/[sd]/.test(d))l.setAttribute("columnlines",d.trim())}if(e.colSeparationType==="align"){var f=e.cols||[],D="";for(var w=1;w<f.length;w++)D+=w%2?"0em ":"1em ";l.setAttribute("columnspacing",D.trim())}else if(e.colSeparationType==="alignat"||e.colSeparationType==="gather")l.setAttribute("columnspacing","0em");else if(e.colSeparationType==="small")l.setAttribute("columnspacing","0.2778em");else if(e.colSeparationType==="CD")l.setAttribute("columnspacing","0.5em");else l.setAttribute("columnspacing","1em");var b="",k=e.hLinesBeforeRow;C+=k[0].length>0?"left ":"",C+=k[k.length-1].length>0?"right ":"";for(var v=1;v<k.length-1;v++)b+=k[v].length===0?"none ":k[v][0]?"dashed ":"solid ";if(/[sd]/.test(b))l.setAttribute("rowlines",b.trim());if(C!=="")l=new it("menclose",[l]),l.setAttribute("notation",C.trim());if(e.arraystretch&&e.arraystretch<1)l=new it("mstyle",[l]),l.setAttribute("scriptlevel","1");return l},UDA=function(e,t){if(!e.envName.includes("ed"))xR(e);var r=[],i=e.envName.includes("at")?"alignat":"align",u=e.envName==="split",a=iQ(e.parser,{cols:r,addJot:!0,autoTag:u?void 0:GV(e.envName),emptySingleRow:!0,colSeparationType:i,maxNumCols:u?2:void 0,leqno:e.parser.settings.leqno},"display"),n=0,o=0,s={type:"ordgroup",mode:e.mode,body:[]};if(t[0]&&t[0].type==="ordgroup"){var l="";for(var g=0;g<t[0].body.length;g++){var C=ti(t[0].body[g],"textord");l+=C.text}n=Number(l),o=n*2}var B=!o;a.body.forEach(function(h){for(var Q=1;Q<h.length;Q+=2){var p=ti(h[Q],"styling"),m=ti(p.body[0],"ordgroup");m.body.unshift(s)}if(!B){var f=h.length/2;if(n<f)throw new ut("Too many math in a row: "+("expected "+n+", but got "+f),h[0])}else if(o<h.length)o=h.length});for(var E=0;E<o;++E){var d="r",I=0;if(E%2===1)d="l";else if(E>0&&B)I=1;r[E]={type:"align",align:d,pregap:I,postgap:0}}return a.colSeparationType=B?"align":"alignat",a},K2A,MDA=(A,e)=>{var t=A.font,r=e.withFont(t);return nu(A.body,r)},TDA=(A,e)=>{var t=A.font,r=e.withFont(t);return Gu(A.body,r)},J2A,iAt=(A,e)=>{var t=e.style,r=t.fracNum(),i=t.fracDen(),u;u=e.havingStyle(r);var a=nu(A.numer,u,e);if(A.continued){var n=8.5/e.fontMetrics().ptPerEm,o=3.5/e.fontMetrics().ptPerEm;a.height=a.height<n?n:a.height,a.depth=a.depth<o?o:a.depth}u=e.havingStyle(i);var s=nu(A.denom,u,e),l,g,C;if(A.hasBarLine){if(A.barSize)g=Sa(A.barSize,e),l=uD("frac-line",e,g);else l=uD("frac-line",e);g=l.height,C=l.height}else l=null,g=0,C=e.fontMetrics().defaultRuleThickness;var B,E,d;if(t.size===qr.DISPLAY.size){if(B=e.fontMetrics().num1,g>0)E=3*C;else E=7*C;d=e.fontMetrics().denom1}else{if(g>0)B=e.fontMetrics().num2,E=C;else B=e.fontMetrics().num3,E=3*C;d=e.fontMetrics().denom2}var I;if(!l){var h=B-a.depth-(s.height-d);if(h<E)B+=0.5*(E-h),d+=0.5*(E-h);I=au({positionType:"individualShift",children:[{type:"elem",elem:s,shift:d},{type:"elem",elem:a,shift:-B}]})}else{var Q=e.fontMetrics().axisHeight;if(B-a.depth-(Q+0.5*g)<E)B+=E-(B-a.depth-(Q+0.5*g));if(Q-0.5*g-(s.height-d)<E)d+=E-(Q-0.5*g-(s.height-d));var p=-(Q-0.5*g);I=au({positionType:"individualShift",children:[{type:"elem",elem:s,shift:d},{type:"elem",elem:l,shift:p},{type:"elem",elem:a,shift:-B}]})}u=e.havingStyle(t),I.height*=u.sizeMultiplier/e.sizeMultiplier,I.depth*=u.sizeMultiplier/e.sizeMultiplier;var m;if(t.size===qr.DISPLAY.size)m=e.fontMetrics().delim1;else if(t.size===qr.SCRIPTSCRIPT.size)m=e.havingStyle(qr.SCRIPT).fontMetrics().delim2;else m=e.fontMetrics().delim2;var f,D;if(A.leftDelim==null)f=nb(e,["mopen"]);else f=fV(A.leftDelim,m,!0,e.havingStyle(t),A.mode,["mopen"]);if(A.continued)D=tt([]);else if(A.rightDelim==null)D=nb(e,["mclose"]);else D=fV(A.rightDelim,m,!0,e.havingStyle(t),A.mode,["mclose"]);return tt(["mord"].concat(u.sizingClasses(e)),[f,tt(["mfrac"],[I]),D],e)},uAt=(A,e)=>{var t=new it("mfrac",[Gu(A.numer,e),Gu(A.denom,e)]);if(!A.hasBarLine)t.setAttribute("linethickness","0px");else if(A.barSize){var r=Sa(A.barSize,e);t.setAttribute("linethickness",gt(r))}if(A.leftDelim!=null||A.rightDelim!=null){var i=[];if(A.leftDelim!=null){var u=new it("mo",[new gn(A.leftDelim.replace("\\",""))]);u.setAttribute("fence","true"),i.push(u)}if(i.push(t),A.rightDelim!=null){var a=new it("mo",[new gn(A.rightDelim.replace("\\",""))]);a.setAttribute("fence","true"),i.push(a)}return SV(i)}return t},YDA=(A,e)=>{if(!e)return A;var t={type:"styling",mode:A.mode,style:e,body:[A]};return t},O2A,P2A=function(e){var t=null;if(e.length>0)t=e,t=t==="."?null:t;return t},HDA=(A,e)=>{var t=e.style,r,i;if(A.type==="supsub")r=A.sup?nu(A.sup,e.havingStyle(t.sup()),e):nu(A.sub,e.havingStyle(t.sub()),e),i=ti(A.base,"horizBrace");else i=ti(A,"horizBrace");var u=nu(i.base,e.havingBaseStyle(qr.DISPLAY)),a=DR(i,e),n;if(i.isOver)n=au({positionType:"firstBaseline",children:[{type:"elem",elem:u},{type:"kern",size:0.1},{type:"elem",elem:a,wrapperClasses:["svg-align"]}]});else n=au({positionType:"bottom",positionData:u.depth+0.1+a.height,children:[{type:"elem",elem:a,wrapperClasses:["svg-align"]},{type:"kern",size:0.1},{type:"elem",elem:u}]});if(r){var o=tt(["minner",i.isOver?"mover":"munder"],[n],e);if(i.isOver)n=au({positionType:"firstBaseline",children:[{type:"elem",elem:o},{type:"kern",size:0.2},{type:"elem",elem:r}]});else n=au({positionType:"bottom",positionData:o.depth+0.2+r.height+r.depth,children:[{type:"elem",elem:r},{type:"kern",size:0.2},{type:"elem",elem:o}]})}return tt(["minner",i.isOver?"mover":"munder"],[n],e)},aAt=(A,e)=>{var t=mR(A.label);return new it(A.isOver?"mover":"munder",[Gu(A.base,e),t])},tV=function(e){if(/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(e))return{number:+e,unit:"bp"};else{var t=/([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e);if(!t)throw new ut("Invalid size: '"+e+"' in \\includegraphics");var r={number:+(t[1]+t[2]),unit:t[3]};if(!rDA(r))throw new ut("Invalid unit: '"+r.unit+"' in \\includegraphics.");return r}},_2A=(A,e)=>{switch(e.style.size){case qr.DISPLAY.size:return A.display;case qr.TEXT.size:return A.text;case qr.SCRIPT.size:return A.script;case qr.SCRIPTSCRIPT.size:return A.scriptscript;default:return A.text}},KDA=(A,e,t,r,i,u,a)=>{A=tt([],[A]);var n=t&&Vd(t),o,s;if(e){var l=nu(e,r.havingStyle(i.sup()),r);s={elem:l,kern:Math.max(r.fontMetrics().bigOpSpacing1,r.fontMetrics().bigOpSpacing3-l.depth)}}if(t){var g=nu(t,r.havingStyle(i.sub()),r);o={elem:g,kern:Math.max(r.fontMetrics().bigOpSpacing2,r.fontMetrics().bigOpSpacing4-g.height)}}var C;if(s&&o){var B=r.fontMetrics().bigOpSpacing5+o.elem.height+o.elem.depth+o.kern+A.depth+a;C=au({positionType:"bottom",positionData:B,children:[{type:"kern",size:r.fontMetrics().bigOpSpacing5},{type:"elem",elem:o.elem,marginLeft:gt(-u)},{type:"kern",size:o.kern},{type:"elem",elem:A},{type:"kern",size:s.kern},{type:"elem",elem:s.elem,marginLeft:gt(u)},{type:"kern",size:r.fontMetrics().bigOpSpacing5}]})}else if(o){var E=A.height-a;C=au({positionType:"top",positionData:E,children:[{type:"kern",size:r.fontMetrics().bigOpSpacing5},{type:"elem",elem:o.elem,marginLeft:gt(-u)},{type:"kern",size:o.kern},{type:"elem",elem:A}]})}else if(s){var d=A.depth+a;C=au({positionType:"bottom",positionData:d,children:[{type:"elem",elem:A},{type:"kern",size:s.kern},{type:"elem",elem:s.elem,marginLeft:gt(u)},{type:"kern",size:r.fontMetrics().bigOpSpacing5}]})}else return A;var I=[C];if(o&&u!==0&&!n){var h=tt(["mspace"],[],r);h.style.marginRight=gt(u),I.unshift(h)}return tt(["mop","op-limits"],I,r)},JDA,oD=(A,e)=>{var t,r,i=!1,u;if(A.type==="supsub")t=A.sup,r=A.sub,u=ti(A.base,"op"),i=!0;else u=ti(A,"op");var a=e.style,n=!1;if(a.size===qr.DISPLAY.size&&u.symbol&&!JDA.has(u.name))n=!0;var o,s;if(u.symbol){var l=n?"Size2-Regular":"Size1-Regular",g="";if(u.name==="\\oiint"||u.name==="\\oiiint")g=u.name.slice(1),u.name=g==="oiint"?"\\iint":"\\iiint";if(o=ns(u.name,l,"math",e,["mop","op-symbol",n?"large-op":"small-op"]),s=o.italic,g.length>0){var C=cDA(g+"Size"+(n?"2":"1"),e);o=au({positionType:"individualShift",children:[{type:"elem",elem:o,shift:0},{type:"elem",elem:C,shift:n?0.08:0}]}),u.name="\\"+g,o.classes.unshift("mop"),o.italic=s}}else if(u.body){var B=to(u.body,e,!0);if(B.length===1&&B[0]instanceof $s)o=B[0],o.classes[0]="mop";else o=tt(["mop"],B,e)}else{var E=[];for(var d=1;d<u.name.length;d++)E.push(kV(u.name[d],u.mode,e));o=tt(["mop"],E,e)}var I=0,h=0;if((o instanceof $s||u.name==="\\oiint"||u.name==="\\oiiint")&&!u.suppressBaseShift){var Q;I=(o.height-o.depth)/2-e.fontMetrics().axisHeight,h=(Q=o.italic)!=null?Q:0}if(i)return KDA(o,t,r,e,a,h,I);else{if(I)o.style.position="relative",o.style.top=gt(I);return o}},lb=(A,e)=>{var t;if(A.symbol){if(t=new it("mo",[Jg(A.name,A.mode)]),JDA.has(A.name))t.setAttribute("largeop","false")}else if(A.body)t=new it("mo",Vl(A.body,e));else{t=new it("mi",[new gn(A.name.slice(1))]);var r=new it("mo",[Jg("⁡","text")]);if(A.parentIsSupSub)t=new it("mrow",[t,r]);else t=EDA([t,r])}return t},nAt,oAt,ODA=(A,e)=>{var t,r,i=!1,u;if(A.type==="supsub")t=A.sup,r=A.sub,u=ti(A.base,"operatorname"),i=!0;else u=ti(A,"operatorname");var a;if(u.body.length>0){var n=u.body.map((g)=>{var C="text"in g?g.text:void 0;if(typeof C==="string")return{type:"textord",mode:g.mode,text:C};else return g}),o=to(n,e.withFont("mathrm"),!0);for(var s=0;s<o.length;s++){var l=o[s];if(l instanceof $s)l.text=l.text.replace(/\u2212/,"-").replace(/\u2217/,"*")}a=tt(["mop"],o,e)}else a=tt(["mop"],[],e);if(i)return KDA(a,t,r,e,e.style,0,0);else return a},sAt=(A,e)=>{var t=Vl(A.body,e.withFont("mathrm")),r=!0;for(var i=0;i<t.length;i++){var u=t[i];if(u instanceof xV);else if(u instanceof it)switch(u.type){case"mi":case"mn":case"mspace":case"mtext":break;case"mo":{var a=u.children[0];if(u.children.length===1&&a instanceof gn)a.text=a.text.replace(/\u2212/,"-").replace(/\u2217/,"*");else r=!1;break}default:r=!1}else r=!1}if(r){var n=t.map((l)=>l.toText()).join("");t=[new gn(n)]}var o=new it("mi",t);o.setAttribute("mathvariant","normal");var s=new it("mo",[Jg("⁡","text")]);if(A.parentIsSupSub)return new it("mrow",[o,s]);else return EDA([o,s])},W2A,lAt=(A,e)=>{var t=e.havingSize(A.size);return PDA(A.body,t,e)},mV,cAt=function(e,t){var r=e.base;if(!r)return null;else if(r.type==="op"){var i=r.limits&&(t.style.size===qr.DISPLAY.size||r.alwaysHandleSupSub);return i?oD:null}else if(r.type==="operatorname"){var u=r.alwaysHandleSupSub&&(t.style.size===qr.DISPLAY.size||r.limits);return u?ODA:null}else if(r.type==="accent")return Vd(r.base)?RV:null;else if(r.type==="horizBrace"){var a=!e.sub;return a===r.isOver?HDA:null}else return null},_DA,rV,iV,q2A=()=>{var A=new it("mtd",[]);return A.setAttribute("width","50%"),A},z2A,Z2A,CAt,V2A=(A,e)=>{var t=A.font;if(!t)return e;else if(z2A[t])return e.withTextFontFamily(z2A[t]);else if(Z2A[t])return e.withTextFontWeight(Z2A[t]);else if(t==="\\emph")return e.fontShape==="textit"?e.withTextFontShape("textup"):e.withTextFontShape("textit");return e.withTextFontShape(CAt[t])},j2A=(A)=>A.body.replace(/ /g,A.star?"␣":" "),AQ,WDA=`[ \r
]`,BAt="\\\\[a-zA-Z@]+",EAt="\\\\[^\uD800-\uDFFF]",dAt,IAt=`\\\\(
|[ \r ]+
?)[ \r ]*`,DV="[̀-ͯ]",hAt,QAt,pAt,X2A,MV=(A,e,t,r)=>{var i=A.consumeArg().tokens;if(i.length!==1)throw new ut("\\newcommand's first argument must be a macro name");var u=i[0].text,a=A.isDefined(u);if(a&&!e)throw new ut("\\newcommand{"+u+"} attempting to redefine "+(u+"; use \\renewcommand"));if(!a&&!t)throw new ut("\\renewcommand{"+u+"} when command "+u+" does not yet exist; use \\newcommand");var n=0;if(i=A.consumeArg().tokens,i.length===1&&i[0].text==="["){var o="",s=A.expandNextToken();while(s.text!=="]"&&s.text!=="EOF")o+=s.text,s=A.expandNextToken();if(!o.match(/^\s*[0-9]+\s*$/))throw new ut("Invalid number of arguments: "+o);n=parseInt(o),i=A.consumeArg().tokens}if(!(a&&r))A.macros.set(u,{tokens:i,numArgs:n});return""},$2A,fAt,TV,zDA,ZDA=(A)=>(e)=>{var t=e.consumeArg().tokens,r=e.consumeArg().tokens,i=e.consumeArg().tokens,u=e.consumeArg().tokens,a=e.macros.get("|"),n=e.macros.get("\\|");e.macros.beginGroup();var o=(g)=>(C)=>{if(A){if(C.macros.set("|",a),i.length)C.macros.set("\\|",n)}var B=g;if(!g&&i.length){var E=C.future();if(E.text==="|")C.popToken(),B=!0}return{tokens:B?i:r,numArgs:0}};if(e.macros.set("|",o(!1)),i.length)e.macros.set("\\|",o(!0));var s=e.consumeArg().tokens,l=e.expandTokens([...u,...s,...t]);return e.macros.endGroup(),{tokens:l.reverse(),numArgs:0}},VDA,ADA,oR,uV,eDA,YV=function(e,t){if(!(typeof e==="string"||e instanceof String))throw TypeError("KaTeX can only parse string typed expression");var r=new SR(e,t);delete r.gullet.macros.current["\\df@tag"];var i=r.parse();if(delete r.gullet.macros.current["\\current@color"],delete r.gullet.macros.current["\\color"],r.gullet.macros.get("\\df@tag")){if(!t.displayMode)throw new ut("\\tag works only in display equations");i=[{type:"tag",mode:"text",body:i,tag:r.subparse([new zl("\\df@tag")])}]}return i},XDA=function(e,t,r){t.textContent="";var i=HV(e,r).toNode();t.appendChild(i)},mAt=function(e,t){var r=HV(e,t).toMarkup();return r},DAt=function(e,t){var r=new QR(t);return YV(e,r)},$DA=function(e,t,r){if(r.throwOnError||!(e instanceof ut))throw e;var i=tt(["katex-error"],[new $s(t)]);return i.setAttribute("title",e.toString()),i.setAttribute("style","color:"+r.errorColor),i},HV=function(e,t){var r=new QR(t);try{var i=YV(e,r);return S$e(i,e,r)}catch(u){return $DA(u,e,r)}},yAt=function(e,t){var r=new QR(t);try{var i=YV(e,r);return L$e(i,e,r)}catch(u){return $DA(u,e,r)}},wAt="0.16.47",bAt,AyA;var eyA=_(()=>{ut=class ut extends Error{constructor(A,e){var t="KaTeX parse error: "+A,r,i,u=e&&e.loc;if(u&&u.start<=u.end){var a=u.lexer.input;if(r=u.start,i=u.end,r===a.length)t+=" at end of input: ";else t+=" at position "+(r+1)+": ";var n=a.slice(r,i).replace(/[^]/g,"$&̲"),o;if(r>15)o="…"+a.slice(r-15,r);else o=a.slice(0,r);var s;if(i+15<a.length)s=a.slice(i,i+15)+"…";else s=a.slice(i);t+=o+n+s}super(t);if(this.name="ParseError",this.position=void 0,this.length=void 0,this.rawMessage=void 0,Object.setPrototypeOf(this,ut.prototype),this.position=r,r!=null&&i!=null)this.length=i-r;this.rawMessage=A}};RXe=/([A-Z])/g,GXe={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},UXe=/[&><"']/g,MXe=new Set(["mathord","textord","atom"]),aV={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:(A)=>"#"+A},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(A,e)=>(e.push(A),e)},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:(A)=>Math.max(0,A),cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:(A)=>Math.max(0,A),cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1000,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:(A)=>Math.max(0,A),cli:"-e, --max-expand <n>",cliProcessor:(A)=>A==="Infinity"?1/0:parseInt(A)},globalGroup:{type:"boolean",cli:!1}};NB=[new _d(wV,0,!1),new _d(CR,0,!0),new _d(rD,1,!1),new _d(zd,1,!0),new _d(ab,2,!1),new _d(Kg,2,!0),new _d(iD,3,!1),new _d(os,3,!0)],JXe=[ab,Kg,ab,Kg,iD,os,iD,os],OXe=[Kg,Kg,Kg,Kg,os,os,os,os],PXe=[rD,zd,ab,Kg,iD,os,iD,os],_Xe=[zd,zd,Kg,Kg,os,os,os,os],WXe=[CR,CR,zd,zd,Kg,Kg,os,os],qXe=[wV,CR,rD,zd,rD,zd,rD,zd],qr={DISPLAY:NB[wV],TEXT:NB[rD],SCRIPT:NB[ab],SCRIPTSCRIPT:NB[iD]},nV=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];lR=[];nV.forEach((A)=>A.blocks.forEach((e)=>lR.push(...e)));f2A={doubleleftarrow:`M262 157
l10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3
0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28
14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5
c2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5
157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87
-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7
-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z
m8 0v40h399730v-40zm0 194v40h399730v-40z`,doublerightarrow:`M399738 392l
-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5
14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88
-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68
-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18
-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782
c-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3
-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z`,leftarrow:`M400000 241H110l3-3c68.7-52.7 113.7-120
135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8
-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247
c-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208
490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3
1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202
l-3-3h399890zM100 241v40h399900v-40z`,leftbrace:`M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117
-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7
5-6 9-10 13-.7 1-7.3 1-20 1H6z`,leftbraceunder:`M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13
35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688
0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7
-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z`,leftgroup:`M400000 80
H435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0
435 0h399565z`,leftgroupunder:`M400000 262
H435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219
435 219h399565z`,leftharpoon:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3
-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5
-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7
-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z`,leftharpoonplus:`M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5
20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3
-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7
-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z
m0 0v40h400000v-40z`,leftharpoondown:`M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333
5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5
1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667
-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z`,leftharpoondownplus:`M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12
10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7
-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0
v40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z`,lefthook:`M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5
-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3
-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21
71.5 23h399859zM103 281v-40h399897v40z`,leftlinesegment:eo("M40 281 V428 H0 V94 H40 V241 H400000 v40z"),leftbracketunder:eo("M0 0 h120 V290 H399995 v120 H0z"),leftbracketover:eo("M0 440 h120 V150 H399995 v-120 H0z"),leftmapsto:eo("M40 281 V448H0V74H40V241H400000v40z"),leftToFrom:`M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23
-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8
c28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3
68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z`,longequal:eo("M0 50 h400000 v40H0z m0 194h40000v40H0z"),midbrace:`M200428 334
c-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14
-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7
311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11
12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z`,midbraceunder:`M199572 214
c100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14
53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3
11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0
-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z`,oiintSize1:`M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6
-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z
m368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8
60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z`,oiintSize2:`M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8
-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z
m502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2
c0 110 84 276 504 276s502.4-166 502.4-276z`,oiiintSize1:`M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6
-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z
m525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0
85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z`,oiiintSize2:`M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8
-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z
m770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1
c0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z`,rightarrow:`M0 241v40h399891c-47.3 35.3-84 78-110 128
-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20
11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7
39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85
-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5
-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67
151.7 139 205zm0 0v40h399900v-40z`,rightbrace:`M400000 542l
-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5
s-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1
c124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z`,rightbraceunder:`M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3
28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237
-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z`,rightgroup:`M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0
3-1 3-3v-38c-76-158-257-219-435-219H0z`,rightgroupunder:`M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18
0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z`,rightharpoon:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3
-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2
-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58
69.2 92 94.5zm0 0v40h399900v-40z`,rightharpoonplus:`M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11
-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7
2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z
m0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z`,rightharpoondown:`M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8
8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5
-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95
-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z`,rightharpoondownplus:`M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8
15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3
8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3
-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z
m0-194v40h400000v-40zm0 0v40h400000v-40z`,righthook:`M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3
15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0
-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21
66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z`,rightlinesegment:eo("M399960 241 V94 h40 V428 h-40 V281 H0 v-40z"),rightbracketunder:eo("M399995 0 h-120 V290 H0 v120 H400000z"),rightbracketover:eo("M399995 440 h-120 V150 H0 v-120 H399995z"),rightToFrom:`M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23
1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32
-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142
-167z M100 147v40h399900v-40zM0 341v40h399900v-40z`,twoheadleftarrow:`M0 167c68 40
115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69
-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3
-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19
-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101
10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z`,twoheadrightarrow:`M400000 167
c-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3
41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42
18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333
-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70
101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z`,tilde1:`M200 55.538c-77 0-168 73.953-177 73.953-3 0-7
-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0
114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0
4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128
-68.267.847-113-73.952-191-73.952z`,tilde2:`M344 55.266c-142 0-300.638 81.316-311.5 86.418
-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9
31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114
c1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751
181.476 676 181.476c-149 0-189-126.21-332-126.21z`,tilde3:`M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457
-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0
411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697
16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696
-338 0-409-156.573-744-156.573z`,tilde4:`M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345
-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409
177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9
14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409
-175.236-744-175.236z`,vec:`M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5
3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11
10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63
-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1
-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59
H213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359
c-16-25.333-24-45-24-59z`,widehat1:`M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22
c-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z`,widehat2:`M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10
-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat3:`M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10
-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widehat4:`M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10
-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z`,widecheck1:`M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,
-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z`,widecheck2:`M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck3:`M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,widecheck4:`M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,
-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z`,baraboveleftarrow:`M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202
c4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5
c-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130
s-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47
121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6
s2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11
c0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z
M100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z`,rightarrowabovebar:`M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32
-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0
13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39
-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5
-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5
-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67
151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z`,baraboveshortleftharpoon:`M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11
c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17
c2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21
c-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40
c-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z
M0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z`,rightharpoonaboveshortbar:`M0,241 l0,40c399126,0,399993,0,399993,0
c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,
-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6
c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z
M0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z`,shortbaraboveleftharpoon:`M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11
c1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,
1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,
-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z
M93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z`,shortrightharpoonabovebar:`M53,241l0,40c398570,0,399437,0,399437,0
c4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,
-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6
c-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z
M500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z`};oV={pt:1,mm:2.8452755905511813,cm:28.45275590551181,in:72.27,bp:1.00375,pc:12,dd:1.070008643042351,cc:12.84010371650821,nd:1.0669781931464175,nc:12.80373831775701,sp:0.0000152587890625,px:1.00375},a$e={ex:!0,em:!0,mu:!0},n$e=/[\s"'>/=\x00-\x1f]/;o$e={"î":"ı̂","ï":"ı̈","í":"ı́","ì":"ı̀"};GB={"AMS-Regular":{"32":[0,0,0,0,0.25],"65":[0,0.68889,0,0,0.72222],"66":[0,0.68889,0,0,0.66667],"67":[0,0.68889,0,0,0.72222],"68":[0,0.68889,0,0,0.72222],"69":[0,0.68889,0,0,0.66667],"70":[0,0.68889,0,0,0.61111],"71":[0,0.68889,0,0,0.77778],"72":[0,0.68889,0,0,0.77778],"73":[0,0.68889,0,0,0.38889],"74":[0.16667,0.68889,0,0,0.5],"75":[0,0.68889,0,0,0.77778],"76":[0,0.68889,0,0,0.66667],"77":[0,0.68889,0,0,0.94445],"78":[0,0.68889,0,0,0.72222],"79":[0.16667,0.68889,0,0,0.77778],"80":[0,0.68889,0,0,0.61111],"81":[0.16667,0.68889,0,0,0.77778],"82":[0,0.68889,0,0,0.72222],"83":[0,0.68889,0,0,0.55556],"84":[0,0.68889,0,0,0.66667],"85":[0,0.68889,0,0,0.72222],"86":[0,0.68889,0,0,0.72222],"87":[0,0.68889,0,0,1],"88":[0,0.68889,0,0,0.72222],"89":[0,0.68889,0,0,0.72222],"90":[0,0.68889,0,0,0.66667],"107":[0,0.68889,0,0,0.55556],"160":[0,0,0,0,0.25],"165":[0,0.675,0.025,0,0.75],"174":[0.15559,0.69224,0,0,0.94666],"240":[0,0.68889,0,0,0.55556],"295":[0,0.68889,0,0,0.54028],"710":[0,0.825,0,0,2.33334],"732":[0,0.9,0,0,2.33334],"770":[0,0.825,0,0,2.33334],"771":[0,0.9,0,0,2.33334],"989":[0.08167,0.58167,0,0,0.77778],"1008":[0,0.43056,0.04028,0,0.66667],"8245":[0,0.54986,0,0,0.275],"8463":[0,0.68889,0,0,0.54028],"8487":[0,0.68889,0,0,0.72222],"8498":[0,0.68889,0,0,0.55556],"8502":[0,0.68889,0,0,0.66667],"8503":[0,0.68889,0,0,0.44445],"8504":[0,0.68889,0,0,0.66667],"8513":[0,0.68889,0,0,0.63889],"8592":[-0.03598,0.46402,0,0,0.5],"8594":[-0.03598,0.46402,0,0,0.5],"8602":[-0.13313,0.36687,0,0,1],"8603":[-0.13313,0.36687,0,0,1],"8606":[0.01354,0.52239,0,0,1],"8608":[0.01354,0.52239,0,0,1],"8610":[0.01354,0.52239,0,0,1.11111],"8611":[0.01354,0.52239,0,0,1.11111],"8619":[0,0.54986,0,0,1],"8620":[0,0.54986,0,0,1],"8621":[-0.13313,0.37788,0,0,1.38889],"8622":[-0.13313,0.36687,0,0,1],"8624":[0,0.69224,0,0,0.5],"8625":[0,0.69224,0,0,0.5],"8630":[0,0.43056,0,0,1],"8631":[0,0.43056,0,0,1],"8634":[0.08198,0.58198,0,0,0.77778],"8635":[0.08198,0.58198,0,0,0.77778],"8638":[0.19444,0.69224,0,0,0.41667],"8639":[0.19444,0.69224,0,0,0.41667],"8642":[0.19444,0.69224,0,0,0.41667],"8643":[0.19444,0.69224,0,0,0.41667],"8644":[0.1808,0.675,0,0,1],"8646":[0.1808,0.675,0,0,1],"8647":[0.1808,0.675,0,0,1],"8648":[0.19444,0.69224,0,0,0.83334],"8649":[0.1808,0.675,0,0,1],"8650":[0.19444,0.69224,0,0,0.83334],"8651":[0.01354,0.52239,0,0,1],"8652":[0.01354,0.52239,0,0,1],"8653":[-0.13313,0.36687,0,0,1],"8654":[-0.13313,0.36687,0,0,1],"8655":[-0.13313,0.36687,0,0,1],"8666":[0.13667,0.63667,0,0,1],"8667":[0.13667,0.63667,0,0,1],"8669":[-0.13313,0.37788,0,0,1],"8672":[-0.064,0.437,0,0,1.334],"8674":[-0.064,0.437,0,0,1.334],"8705":[0,0.825,0,0,0.5],"8708":[0,0.68889,0,0,0.55556],"8709":[0.08167,0.58167,0,0,0.77778],"8717":[0,0.43056,0,0,0.42917],"8722":[-0.03598,0.46402,0,0,0.5],"8724":[0.08198,0.69224,0,0,0.77778],"8726":[0.08167,0.58167,0,0,0.77778],"8733":[0,0.69224,0,0,0.77778],"8736":[0,0.69224,0,0,0.72222],"8737":[0,0.69224,0,0,0.72222],"8738":[0.03517,0.52239,0,0,0.72222],"8739":[0.08167,0.58167,0,0,0.22222],"8740":[0.25142,0.74111,0,0,0.27778],"8741":[0.08167,0.58167,0,0,0.38889],"8742":[0.25142,0.74111,0,0,0.5],"8756":[0,0.69224,0,0,0.66667],"8757":[0,0.69224,0,0,0.66667],"8764":[-0.13313,0.36687,0,0,0.77778],"8765":[-0.13313,0.37788,0,0,0.77778],"8769":[-0.13313,0.36687,0,0,0.77778],"8770":[-0.03625,0.46375,0,0,0.77778],"8774":[0.30274,0.79383,0,0,0.77778],"8776":[-0.01688,0.48312,0,0,0.77778],"8778":[0.08167,0.58167,0,0,0.77778],"8782":[0.06062,0.54986,0,0,0.77778],"8783":[0.06062,0.54986,0,0,0.77778],"8785":[0.08198,0.58198,0,0,0.77778],"8786":[0.08198,0.58198,0,0,0.77778],"8787":[0.08198,0.58198,0,0,0.77778],"8790":[0,0.69224,0,0,0.77778],"8791":[0.22958,0.72958,0,0,0.77778],"8796":[0.08198,0.91667,0,0,0.77778],"8806":[0.25583,0.75583,0,0,0.77778],"8807":[0.25583,0.75583,0,0,0.77778],"8808":[0.25142,0.75726,0,0,0.77778],"8809":[0.25142,0.75726,0,0,0.77778],"8812":[0.25583,0.75583,0,0,0.5],"8814":[0.20576,0.70576,0,0,0.77778],"8815":[0.20576,0.70576,0,0,0.77778],"8816":[0.30274,0.79383,0,0,0.77778],"8817":[0.30274,0.79383,0,0,0.77778],"8818":[0.22958,0.72958,0,0,0.77778],"8819":[0.22958,0.72958,0,0,0.77778],"8822":[0.1808,0.675,0,0,0.77778],"8823":[0.1808,0.675,0,0,0.77778],"8828":[0.13667,0.63667,0,0,0.77778],"8829":[0.13667,0.63667,0,0,0.77778],"8830":[0.22958,0.72958,0,0,0.77778],"8831":[0.22958,0.72958,0,0,0.77778],"8832":[0.20576,0.70576,0,0,0.77778],"8833":[0.20576,0.70576,0,0,0.77778],"8840":[0.30274,0.79383,0,0,0.77778],"8841":[0.30274,0.79383,0,0,0.77778],"8842":[0.13597,0.63597,0,0,0.77778],"8843":[0.13597,0.63597,0,0,0.77778],"8847":[0.03517,0.54986,0,0,0.77778],"8848":[0.03517,0.54986,0,0,0.77778],"8858":[0.08198,0.58198,0,0,0.77778],"8859":[0.08198,0.58198,0,0,0.77778],"8861":[0.08198,0.58198,0,0,0.77778],"8862":[0,0.675,0,0,0.77778],"8863":[0,0.675,0,0,0.77778],"8864":[0,0.675,0,0,0.77778],"8865":[0,0.675,0,0,0.77778],"8872":[0,0.69224,0,0,0.61111],"8873":[0,0.69224,0,0,0.72222],"8874":[0,0.69224,0,0,0.88889],"8876":[0,0.68889,0,0,0.61111],"8877":[0,0.68889,0,0,0.61111],"8878":[0,0.68889,0,0,0.72222],"8879":[0,0.68889,0,0,0.72222],"8882":[0.03517,0.54986,0,0,0.77778],"8883":[0.03517,0.54986,0,0,0.77778],"8884":[0.13667,0.63667,0,0,0.77778],"8885":[0.13667,0.63667,0,0,0.77778],"8888":[0,0.54986,0,0,1.11111],"8890":[0.19444,0.43056,0,0,0.55556],"8891":[0.19444,0.69224,0,0,0.61111],"8892":[0.19444,0.69224,0,0,0.61111],"8901":[0,0.54986,0,0,0.27778],"8903":[0.08167,0.58167,0,0,0.77778],"8905":[0.08167,0.58167,0,0,0.77778],"8906":[0.08167,0.58167,0,0,0.77778],"8907":[0,0.69224,0,0,0.77778],"8908":[0,0.69224,0,0,0.77778],"8909":[-0.03598,0.46402,0,0,0.77778],"8910":[0,0.54986,0,0,0.76042],"8911":[0,0.54986,0,0,0.76042],"8912":[0.03517,0.54986,0,0,0.77778],"8913":[0.03517,0.54986,0,0,0.77778],"8914":[0,0.54986,0,0,0.66667],"8915":[0,0.54986,0,0,0.66667],"8916":[0,0.69224,0,0,0.66667],"8918":[0.0391,0.5391,0,0,0.77778],"8919":[0.0391,0.5391,0,0,0.77778],"8920":[0.03517,0.54986,0,0,1.33334],"8921":[0.03517,0.54986,0,0,1.33334],"8922":[0.38569,0.88569,0,0,0.77778],"8923":[0.38569,0.88569,0,0,0.77778],"8926":[0.13667,0.63667,0,0,0.77778],"8927":[0.13667,0.63667,0,0,0.77778],"8928":[0.30274,0.79383,0,0,0.77778],"8929":[0.30274,0.79383,0,0,0.77778],"8934":[0.23222,0.74111,0,0,0.77778],"8935":[0.23222,0.74111,0,0,0.77778],"8936":[0.23222,0.74111,0,0,0.77778],"8937":[0.23222,0.74111,0,0,0.77778],"8938":[0.20576,0.70576,0,0,0.77778],"8939":[0.20576,0.70576,0,0,0.77778],"8940":[0.30274,0.79383,0,0,0.77778],"8941":[0.30274,0.79383,0,0,0.77778],"8994":[0.19444,0.69224,0,0,0.77778],"8995":[0.19444,0.69224,0,0,0.77778],"9416":[0.15559,0.69224,0,0,0.90222],"9484":[0,0.69224,0,0,0.5],"9488":[0,0.69224,0,0,0.5],"9492":[0,0.37788,0,0,0.5],"9496":[0,0.37788,0,0,0.5],"9585":[0.19444,0.68889,0,0,0.88889],"9586":[0.19444,0.74111,0,0,0.88889],"9632":[0,0.675,0,0,0.77778],"9633":[0,0.675,0,0,0.77778],"9650":[0,0.54986,0,0,0.72222],"9651":[0,0.54986,0,0,0.72222],"9654":[0.03517,0.54986,0,0,0.77778],"9660":[0,0.54986,0,0,0.72222],"9661":[0,0.54986,0,0,0.72222],"9664":[0.03517,0.54986,0,0,0.77778],"9674":[0.11111,0.69224,0,0,0.66667],"9733":[0.19444,0.69224,0,0,0.94445],"10003":[0,0.69224,0,0,0.83334],"10016":[0,0.69224,0,0,0.83334],"10731":[0.11111,0.69224,0,0,0.66667],"10846":[0.19444,0.75583,0,0,0.61111],"10877":[0.13667,0.63667,0,0,0.77778],"10878":[0.13667,0.63667,0,0,0.77778],"10885":[0.25583,0.75583,0,0,0.77778],"10886":[0.25583,0.75583,0,0,0.77778],"10887":[0.13597,0.63597,0,0,0.77778],"10888":[0.13597,0.63597,0,0,0.77778],"10889":[0.26167,0.75726,0,0,0.77778],"10890":[0.26167,0.75726,0,0,0.77778],"10891":[0.48256,0.98256,0,0,0.77778],"10892":[0.48256,0.98256,0,0,0.77778],"10901":[0.13667,0.63667,0,0,0.77778],"10902":[0.13667,0.63667,0,0,0.77778],"10933":[0.25142,0.75726,0,0,0.77778],"10934":[0.25142,0.75726,0,0,0.77778],"10935":[0.26167,0.75726,0,0,0.77778],"10936":[0.26167,0.75726,0,0,0.77778],"10937":[0.26167,0.75726,0,0,0.77778],"10938":[0.26167,0.75726,0,0,0.77778],"10949":[0.25583,0.75583,0,0,0.77778],"10950":[0.25583,0.75583,0,0,0.77778],"10955":[0.28481,0.79383,0,0,0.77778],"10956":[0.28481,0.79383,0,0,0.77778],"57350":[0.08167,0.58167,0,0,0.22222],"57351":[0.08167,0.58167,0,0,0.38889],"57352":[0.08167,0.58167,0,0,0.77778],"57353":[0,0.43056,0.04028,0,0.66667],"57356":[0.25142,0.75726,0,0,0.77778],"57357":[0.25142,0.75726,0,0,0.77778],"57358":[0.41951,0.91951,0,0,0.77778],"57359":[0.30274,0.79383,0,0,0.77778],"57360":[0.30274,0.79383,0,0,0.77778],"57361":[0.41951,0.91951,0,0,0.77778],"57366":[0.25142,0.75726,0,0,0.77778],"57367":[0.25142,0.75726,0,0,0.77778],"57368":[0.25142,0.75726,0,0,0.77778],"57369":[0.25142,0.75726,0,0,0.77778],"57370":[0.13597,0.63597,0,0,0.77778],"57371":[0.13597,0.63597,0,0,0.77778]},"Caligraphic-Regular":{"32":[0,0,0,0,0.25],"65":[0,0.68333,0,0.19445,0.79847],"66":[0,0.68333,0.03041,0.13889,0.65681],"67":[0,0.68333,0.05834,0.13889,0.52653],"68":[0,0.68333,0.02778,0.08334,0.77139],"69":[0,0.68333,0.08944,0.11111,0.52778],"70":[0,0.68333,0.09931,0.11111,0.71875],"71":[0.09722,0.68333,0.0593,0.11111,0.59487],"72":[0,0.68333,0.00965,0.11111,0.84452],"73":[0,0.68333,0.07382,0,0.54452],"74":[0.09722,0.68333,0.18472,0.16667,0.67778],"75":[0,0.68333,0.01445,0.05556,0.76195],"76":[0,0.68333,0,0.13889,0.68972],"77":[0,0.68333,0,0.13889,1.2009],"78":[0,0.68333,0.14736,0.08334,0.82049],"79":[0,0.68333,0.02778,0.11111,0.79611],"80":[0,0.68333,0.08222,0.08334,0.69556],"81":[0.09722,0.68333,0,0.11111,0.81667],"82":[0,0.68333,0,0.08334,0.8475],"83":[0,0.68333,0.075,0.13889,0.60556],"84":[0,0.68333,0.25417,0,0.54464],"85":[0,0.68333,0.09931,0.08334,0.62583],"86":[0,0.68333,0.08222,0,0.61278],"87":[0,0.68333,0.08222,0.08334,0.98778],"88":[0,0.68333,0.14643,0.13889,0.7133],"89":[0.09722,0.68333,0.08222,0.08334,0.66834],"90":[0,0.68333,0.07944,0.13889,0.72473],"160":[0,0,0,0,0.25]},"Fraktur-Regular":{"32":[0,0,0,0,0.25],"33":[0,0.69141,0,0,0.29574],"34":[0,0.69141,0,0,0.21471],"38":[0,0.69141,0,0,0.73786],"39":[0,0.69141,0,0,0.21201],"40":[0.24982,0.74947,0,0,0.38865],"41":[0.24982,0.74947,0,0,0.38865],"42":[0,0.62119,0,0,0.27764],"43":[0.08319,0.58283,0,0,0.75623],"44":[0,0.10803,0,0,0.27764],"45":[0.08319,0.58283,0,0,0.75623],"46":[0,0.10803,0,0,0.27764],"47":[0.24982,0.74947,0,0,0.50181],"48":[0,0.47534,0,0,0.50181],"49":[0,0.47534,0,0,0.50181],"50":[0,0.47534,0,0,0.50181],"51":[0.18906,0.47534,0,0,0.50181],"52":[0.18906,0.47534,0,0,0.50181],"53":[0.18906,0.47534,0,0,0.50181],"54":[0,0.69141,0,0,0.50181],"55":[0.18906,0.47534,0,0,0.50181],"56":[0,0.69141,0,0,0.50181],"57":[0.18906,0.47534,0,0,0.50181],"58":[0,0.47534,0,0,0.21606],"59":[0.12604,0.47534,0,0,0.21606],"61":[-0.13099,0.36866,0,0,0.75623],"63":[0,0.69141,0,0,0.36245],"65":[0,0.69141,0,0,0.7176],"66":[0,0.69141,0,0,0.88397],"67":[0,0.69141,0,0,0.61254],"68":[0,0.69141,0,0,0.83158],"69":[0,0.69141,0,0,0.66278],"70":[0.12604,0.69141,0,0,0.61119],"71":[0,0.69141,0,0,0.78539],"72":[0.06302,0.69141,0,0,0.7203],"73":[0,0.69141,0,0,0.55448],"74":[0.12604,0.69141,0,0,0.55231],"75":[0,0.69141,0,0,0.66845],"76":[0,0.69141,0,0,0.66602],"77":[0,0.69141,0,0,1.04953],"78":[0,0.69141,0,0,0.83212],"79":[0,0.69141,0,0,0.82699],"80":[0.18906,0.69141,0,0,0.82753],"81":[0.03781,0.69141,0,0,0.82699],"82":[0,0.69141,0,0,0.82807],"83":[0,0.69141,0,0,0.82861],"84":[0,0.69141,0,0,0.66899],"85":[0,0.69141,0,0,0.64576],"86":[0,0.69141,0,0,0.83131],"87":[0,0.69141,0,0,1.04602],"88":[0,0.69141,0,0,0.71922],"89":[0.18906,0.69141,0,0,0.83293],"90":[0.12604,0.69141,0,0,0.60201],"91":[0.24982,0.74947,0,0,0.27764],"93":[0.24982,0.74947,0,0,0.27764],"94":[0,0.69141,0,0,0.49965],"97":[0,0.47534,0,0,0.50046],"98":[0,0.69141,0,0,0.51315],"99":[0,0.47534,0,0,0.38946],"100":[0,0.62119,0,0,0.49857],"101":[0,0.47534,0,0,0.40053],"102":[0.18906,0.69141,0,0,0.32626],"103":[0.18906,0.47534,0,0,0.5037],"104":[0.18906,0.69141,0,0,0.52126],"105":[0,0.69141,0,0,0.27899],"106":[0,0.69141,0,0,0.28088],"107":[0,0.69141,0,0,0.38946],"108":[0,0.69141,0,0,0.27953],"109":[0,0.47534,0,0,0.76676],"110":[0,0.47534,0,0,0.52666],"111":[0,0.47534,0,0,0.48885],"112":[0.18906,0.52396,0,0,0.50046],"113":[0.18906,0.47534,0,0,0.48912],"114":[0,0.47534,0,0,0.38919],"115":[0,0.47534,0,0,0.44266],"116":[0,0.62119,0,0,0.33301],"117":[0,0.47534,0,0,0.5172],"118":[0,0.52396,0,0,0.5118],"119":[0,0.52396,0,0,0.77351],"120":[0.18906,0.47534,0,0,0.38865],"121":[0.18906,0.47534,0,0,0.49884],"122":[0.18906,0.47534,0,0,0.39054],"160":[0,0,0,0,0.25],"8216":[0,0.69141,0,0,0.21471],"8217":[0,0.69141,0,0,0.21471],"58112":[0,0.62119,0,0,0.49749],"58113":[0,0.62119,0,0,0.4983],"58114":[0.18906,0.69141,0,0,0.33328],"58115":[0.18906,0.69141,0,0,0.32923],"58116":[0.18906,0.47534,0,0,0.50343],"58117":[0,0.69141,0,0,0.33301],"58118":[0,0.62119,0,0,0.33409],"58119":[0,0.47534,0,0,0.50073]},"Main-Bold":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0,0,0.35],"34":[0,0.69444,0,0,0.60278],"35":[0.19444,0.69444,0,0,0.95833],"36":[0.05556,0.75,0,0,0.575],"37":[0.05556,0.75,0,0,0.95833],"38":[0,0.69444,0,0,0.89444],"39":[0,0.69444,0,0,0.31944],"40":[0.25,0.75,0,0,0.44722],"41":[0.25,0.75,0,0,0.44722],"42":[0,0.75,0,0,0.575],"43":[0.13333,0.63333,0,0,0.89444],"44":[0.19444,0.15556,0,0,0.31944],"45":[0,0.44444,0,0,0.38333],"46":[0,0.15556,0,0,0.31944],"47":[0.25,0.75,0,0,0.575],"48":[0,0.64444,0,0,0.575],"49":[0,0.64444,0,0,0.575],"50":[0,0.64444,0,0,0.575],"51":[0,0.64444,0,0,0.575],"52":[0,0.64444,0,0,0.575],"53":[0,0.64444,0,0,0.575],"54":[0,0.64444,0,0,0.575],"55":[0,0.64444,0,0,0.575],"56":[0,0.64444,0,0,0.575],"57":[0,0.64444,0,0,0.575],"58":[0,0.44444,0,0,0.31944],"59":[0.19444,0.44444,0,0,0.31944],"60":[0.08556,0.58556,0,0,0.89444],"61":[-0.10889,0.39111,0,0,0.89444],"62":[0.08556,0.58556,0,0,0.89444],"63":[0,0.69444,0,0,0.54305],"64":[0,0.69444,0,0,0.89444],"65":[0,0.68611,0,0,0.86944],"66":[0,0.68611,0,0,0.81805],"67":[0,0.68611,0,0,0.83055],"68":[0,0.68611,0,0,0.88194],"69":[0,0.68611,0,0,0.75555],"70":[0,0.68611,0,0,0.72361],"71":[0,0.68611,0,0,0.90416],"72":[0,0.68611,0,0,0.9],"73":[0,0.68611,0,0,0.43611],"74":[0,0.68611,0,0,0.59444],"75":[0,0.68611,0,0,0.90138],"76":[0,0.68611,0,0,0.69166],"77":[0,0.68611,0,0,1.09166],"78":[0,0.68611,0,0,0.9],"79":[0,0.68611,0,0,0.86388],"80":[0,0.68611,0,0,0.78611],"81":[0.19444,0.68611,0,0,0.86388],"82":[0,0.68611,0,0,0.8625],"83":[0,0.68611,0,0,0.63889],"84":[0,0.68611,0,0,0.8],"85":[0,0.68611,0,0,0.88472],"86":[0,0.68611,0.01597,0,0.86944],"87":[0,0.68611,0.01597,0,1.18888],"88":[0,0.68611,0,0,0.86944],"89":[0,0.68611,0.02875,0,0.86944],"90":[0,0.68611,0,0,0.70277],"91":[0.25,0.75,0,0,0.31944],"92":[0.25,0.75,0,0,0.575],"93":[0.25,0.75,0,0,0.31944],"94":[0,0.69444,0,0,0.575],"95":[0.31,0.13444,0.03194,0,0.575],"97":[0,0.44444,0,0,0.55902],"98":[0,0.69444,0,0,0.63889],"99":[0,0.44444,0,0,0.51111],"100":[0,0.69444,0,0,0.63889],"101":[0,0.44444,0,0,0.52708],"102":[0,0.69444,0.10903,0,0.35139],"103":[0.19444,0.44444,0.01597,0,0.575],"104":[0,0.69444,0,0,0.63889],"105":[0,0.69444,0,0,0.31944],"106":[0.19444,0.69444,0,0,0.35139],"107":[0,0.69444,0,0,0.60694],"108":[0,0.69444,0,0,0.31944],"109":[0,0.44444,0,0,0.95833],"110":[0,0.44444,0,0,0.63889],"111":[0,0.44444,0,0,0.575],"112":[0.19444,0.44444,0,0,0.63889],"113":[0.19444,0.44444,0,0,0.60694],"114":[0,0.44444,0,0,0.47361],"115":[0,0.44444,0,0,0.45361],"116":[0,0.63492,0,0,0.44722],"117":[0,0.44444,0,0,0.63889],"118":[0,0.44444,0.01597,0,0.60694],"119":[0,0.44444,0.01597,0,0.83055],"120":[0,0.44444,0,0,0.60694],"121":[0.19444,0.44444,0.01597,0,0.60694],"122":[0,0.44444,0,0,0.51111],"123":[0.25,0.75,0,0,0.575],"124":[0.25,0.75,0,0,0.31944],"125":[0.25,0.75,0,0,0.575],"126":[0.35,0.34444,0,0,0.575],"160":[0,0,0,0,0.25],"163":[0,0.69444,0,0,0.86853],"168":[0,0.69444,0,0,0.575],"172":[0,0.44444,0,0,0.76666],"176":[0,0.69444,0,0,0.86944],"177":[0.13333,0.63333,0,0,0.89444],"184":[0.17014,0,0,0,0.51111],"198":[0,0.68611,0,0,1.04166],"215":[0.13333,0.63333,0,0,0.89444],"216":[0.04861,0.73472,0,0,0.89444],"223":[0,0.69444,0,0,0.59722],"230":[0,0.44444,0,0,0.83055],"247":[0.13333,0.63333,0,0,0.89444],"248":[0.09722,0.54167,0,0,0.575],"305":[0,0.44444,0,0,0.31944],"338":[0,0.68611,0,0,1.16944],"339":[0,0.44444,0,0,0.89444],"567":[0.19444,0.44444,0,0,0.35139],"710":[0,0.69444,0,0,0.575],"711":[0,0.63194,0,0,0.575],"713":[0,0.59611,0,0,0.575],"714":[0,0.69444,0,0,0.575],"715":[0,0.69444,0,0,0.575],"728":[0,0.69444,0,0,0.575],"729":[0,0.69444,0,0,0.31944],"730":[0,0.69444,0,0,0.86944],"732":[0,0.69444,0,0,0.575],"733":[0,0.69444,0,0,0.575],"915":[0,0.68611,0,0,0.69166],"916":[0,0.68611,0,0,0.95833],"920":[0,0.68611,0,0,0.89444],"923":[0,0.68611,0,0,0.80555],"926":[0,0.68611,0,0,0.76666],"928":[0,0.68611,0,0,0.9],"931":[0,0.68611,0,0,0.83055],"933":[0,0.68611,0,0,0.89444],"934":[0,0.68611,0,0,0.83055],"936":[0,0.68611,0,0,0.89444],"937":[0,0.68611,0,0,0.83055],"8211":[0,0.44444,0.03194,0,0.575],"8212":[0,0.44444,0.03194,0,1.14999],"8216":[0,0.69444,0,0,0.31944],"8217":[0,0.69444,0,0,0.31944],"8220":[0,0.69444,0,0,0.60278],"8221":[0,0.69444,0,0,0.60278],"8224":[0.19444,0.69444,0,0,0.51111],"8225":[0.19444,0.69444,0,0,0.51111],"8242":[0,0.55556,0,0,0.34444],"8407":[0,0.72444,0.15486,0,0.575],"8463":[0,0.69444,0,0,0.66759],"8465":[0,0.69444,0,0,0.83055],"8467":[0,0.69444,0,0,0.47361],"8472":[0.19444,0.44444,0,0,0.74027],"8476":[0,0.69444,0,0,0.83055],"8501":[0,0.69444,0,0,0.70277],"8592":[-0.10889,0.39111,0,0,1.14999],"8593":[0.19444,0.69444,0,0,0.575],"8594":[-0.10889,0.39111,0,0,1.14999],"8595":[0.19444,0.69444,0,0,0.575],"8596":[-0.10889,0.39111,0,0,1.14999],"8597":[0.25,0.75,0,0,0.575],"8598":[0.19444,0.69444,0,0,1.14999],"8599":[0.19444,0.69444,0,0,1.14999],"8600":[0.19444,0.69444,0,0,1.14999],"8601":[0.19444,0.69444,0,0,1.14999],"8636":[-0.10889,0.39111,0,0,1.14999],"8637":[-0.10889,0.39111,0,0,1.14999],"8640":[-0.10889,0.39111,0,0,1.14999],"8641":[-0.10889,0.39111,0,0,1.14999],"8656":[-0.10889,0.39111,0,0,1.14999],"8657":[0.19444,0.69444,0,0,0.70277],"8658":[-0.10889,0.39111,0,0,1.14999],"8659":[0.19444,0.69444,0,0,0.70277],"8660":[-0.10889,0.39111,0,0,1.14999],"8661":[0.25,0.75,0,0,0.70277],"8704":[0,0.69444,0,0,0.63889],"8706":[0,0.69444,0.06389,0,0.62847],"8707":[0,0.69444,0,0,0.63889],"8709":[0.05556,0.75,0,0,0.575],"8711":[0,0.68611,0,0,0.95833],"8712":[0.08556,0.58556,0,0,0.76666],"8715":[0.08556,0.58556,0,0,0.76666],"8722":[0.13333,0.63333,0,0,0.89444],"8723":[0.13333,0.63333,0,0,0.89444],"8725":[0.25,0.75,0,0,0.575],"8726":[0.25,0.75,0,0,0.575],"8727":[-0.02778,0.47222,0,0,0.575],"8728":[-0.02639,0.47361,0,0,0.575],"8729":[-0.02639,0.47361,0,0,0.575],"8730":[0.18,0.82,0,0,0.95833],"8733":[0,0.44444,0,0,0.89444],"8734":[0,0.44444,0,0,1.14999],"8736":[0,0.69224,0,0,0.72222],"8739":[0.25,0.75,0,0,0.31944],"8741":[0.25,0.75,0,0,0.575],"8743":[0,0.55556,0,0,0.76666],"8744":[0,0.55556,0,0,0.76666],"8745":[0,0.55556,0,0,0.76666],"8746":[0,0.55556,0,0,0.76666],"8747":[0.19444,0.69444,0.12778,0,0.56875],"8764":[-0.10889,0.39111,0,0,0.89444],"8768":[0.19444,0.69444,0,0,0.31944],"8771":[0.00222,0.50222,0,0,0.89444],"8773":[0.027,0.638,0,0,0.894],"8776":[0.02444,0.52444,0,0,0.89444],"8781":[0.00222,0.50222,0,0,0.89444],"8801":[0.00222,0.50222,0,0,0.89444],"8804":[0.19667,0.69667,0,0,0.89444],"8805":[0.19667,0.69667,0,0,0.89444],"8810":[0.08556,0.58556,0,0,1.14999],"8811":[0.08556,0.58556,0,0,1.14999],"8826":[0.08556,0.58556,0,0,0.89444],"8827":[0.08556,0.58556,0,0,0.89444],"8834":[0.08556,0.58556,0,0,0.89444],"8835":[0.08556,0.58556,0,0,0.89444],"8838":[0.19667,0.69667,0,0,0.89444],"8839":[0.19667,0.69667,0,0,0.89444],"8846":[0,0.55556,0,0,0.76666],"8849":[0.19667,0.69667,0,0,0.89444],"8850":[0.19667,0.69667,0,0,0.89444],"8851":[0,0.55556,0,0,0.76666],"8852":[0,0.55556,0,0,0.76666],"8853":[0.13333,0.63333,0,0,0.89444],"8854":[0.13333,0.63333,0,0,0.89444],"8855":[0.13333,0.63333,0,0,0.89444],"8856":[0.13333,0.63333,0,0,0.89444],"8857":[0.13333,0.63333,0,0,0.89444],"8866":[0,0.69444,0,0,0.70277],"8867":[0,0.69444,0,0,0.70277],"8868":[0,0.69444,0,0,0.89444],"8869":[0,0.69444,0,0,0.89444],"8900":[-0.02639,0.47361,0,0,0.575],"8901":[-0.02639,0.47361,0,0,0.31944],"8902":[-0.02778,0.47222,0,0,0.575],"8968":[0.25,0.75,0,0,0.51111],"8969":[0.25,0.75,0,0,0.51111],"8970":[0.25,0.75,0,0,0.51111],"8971":[0.25,0.75,0,0,0.51111],"8994":[-0.13889,0.36111,0,0,1.14999],"8995":[-0.13889,0.36111,0,0,1.14999],"9651":[0.19444,0.69444,0,0,1.02222],"9657":[-0.02778,0.47222,0,0,0.575],"9661":[0.19444,0.69444,0,0,1.02222],"9667":[-0.02778,0.47222,0,0,0.575],"9711":[0.19444,0.69444,0,0,1.14999],"9824":[0.12963,0.69444,0,0,0.89444],"9825":[0.12963,0.69444,0,0,0.89444],"9826":[0.12963,0.69444,0,0,0.89444],"9827":[0.12963,0.69444,0,0,0.89444],"9837":[0,0.75,0,0,0.44722],"9838":[0.19444,0.69444,0,0,0.44722],"9839":[0.19444,0.69444,0,0,0.44722],"10216":[0.25,0.75,0,0,0.44722],"10217":[0.25,0.75,0,0,0.44722],"10815":[0,0.68611,0,0,0.9],"10927":[0.19667,0.69667,0,0,0.89444],"10928":[0.19667,0.69667,0,0,0.89444],"57376":[0.19444,0.69444,0,0,0]},"Main-BoldItalic":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0.11417,0,0.38611],"34":[0,0.69444,0.07939,0,0.62055],"35":[0.19444,0.69444,0.06833,0,0.94444],"37":[0.05556,0.75,0.12861,0,0.94444],"38":[0,0.69444,0.08528,0,0.88555],"39":[0,0.69444,0.12945,0,0.35555],"40":[0.25,0.75,0.15806,0,0.47333],"41":[0.25,0.75,0.03306,0,0.47333],"42":[0,0.75,0.14333,0,0.59111],"43":[0.10333,0.60333,0.03306,0,0.88555],"44":[0.19444,0.14722,0,0,0.35555],"45":[0,0.44444,0.02611,0,0.41444],"46":[0,0.14722,0,0,0.35555],"47":[0.25,0.75,0.15806,0,0.59111],"48":[0,0.64444,0.13167,0,0.59111],"49":[0,0.64444,0.13167,0,0.59111],"50":[0,0.64444,0.13167,0,0.59111],"51":[0,0.64444,0.13167,0,0.59111],"52":[0.19444,0.64444,0.13167,0,0.59111],"53":[0,0.64444,0.13167,0,0.59111],"54":[0,0.64444,0.13167,0,0.59111],"55":[0.19444,0.64444,0.13167,0,0.59111],"56":[0,0.64444,0.13167,0,0.59111],"57":[0,0.64444,0.13167,0,0.59111],"58":[0,0.44444,0.06695,0,0.35555],"59":[0.19444,0.44444,0.06695,0,0.35555],"61":[-0.10889,0.39111,0.06833,0,0.88555],"63":[0,0.69444,0.11472,0,0.59111],"64":[0,0.69444,0.09208,0,0.88555],"65":[0,0.68611,0,0,0.86555],"66":[0,0.68611,0.0992,0,0.81666],"67":[0,0.68611,0.14208,0,0.82666],"68":[0,0.68611,0.09062,0,0.87555],"69":[0,0.68611,0.11431,0,0.75666],"70":[0,0.68611,0.12903,0,0.72722],"71":[0,0.68611,0.07347,0,0.89527],"72":[0,0.68611,0.17208,0,0.8961],"73":[0,0.68611,0.15681,0,0.47166],"74":[0,0.68611,0.145,0,0.61055],"75":[0,0.68611,0.14208,0,0.89499],"76":[0,0.68611,0,0,0.69777],"77":[0,0.68611,0.17208,0,1.07277],"78":[0,0.68611,0.17208,0,0.8961],"79":[0,0.68611,0.09062,0,0.85499],"80":[0,0.68611,0.0992,0,0.78721],"81":[0.19444,0.68611,0.09062,0,0.85499],"82":[0,0.68611,0.02559,0,0.85944],"83":[0,0.68611,0.11264,0,0.64999],"84":[0,0.68611,0.12903,0,0.7961],"85":[0,0.68611,0.17208,0,0.88083],"86":[0,0.68611,0.18625,0,0.86555],"87":[0,0.68611,0.18625,0,1.15999],"88":[0,0.68611,0.15681,0,0.86555],"89":[0,0.68611,0.19803,0,0.86555],"90":[0,0.68611,0.14208,0,0.70888],"91":[0.25,0.75,0.1875,0,0.35611],"93":[0.25,0.75,0.09972,0,0.35611],"94":[0,0.69444,0.06709,0,0.59111],"95":[0.31,0.13444,0.09811,0,0.59111],"97":[0,0.44444,0.09426,0,0.59111],"98":[0,0.69444,0.07861,0,0.53222],"99":[0,0.44444,0.05222,0,0.53222],"100":[0,0.69444,0.10861,0,0.59111],"101":[0,0.44444,0.085,0,0.53222],"102":[0.19444,0.69444,0.21778,0,0.4],"103":[0.19444,0.44444,0.105,0,0.53222],"104":[0,0.69444,0.09426,0,0.59111],"105":[0,0.69326,0.11387,0,0.35555],"106":[0.19444,0.69326,0.1672,0,0.35555],"107":[0,0.69444,0.11111,0,0.53222],"108":[0,0.69444,0.10861,0,0.29666],"109":[0,0.44444,0.09426,0,0.94444],"110":[0,0.44444,0.09426,0,0.64999],"111":[0,0.44444,0.07861,0,0.59111],"112":[0.19444,0.44444,0.07861,0,0.59111],"113":[0.19444,0.44444,0.105,0,0.53222],"114":[0,0.44444,0.11111,0,0.50167],"115":[0,0.44444,0.08167,0,0.48694],"116":[0,0.63492,0.09639,0,0.385],"117":[0,0.44444,0.09426,0,0.62055],"118":[0,0.44444,0.11111,0,0.53222],"119":[0,0.44444,0.11111,0,0.76777],"120":[0,0.44444,0.12583,0,0.56055],"121":[0.19444,0.44444,0.105,0,0.56166],"122":[0,0.44444,0.13889,0,0.49055],"126":[0.35,0.34444,0.11472,0,0.59111],"160":[0,0,0,0,0.25],"168":[0,0.69444,0.11473,0,0.59111],"176":[0,0.69444,0,0,0.94888],"184":[0.17014,0,0,0,0.53222],"198":[0,0.68611,0.11431,0,1.02277],"216":[0.04861,0.73472,0.09062,0,0.88555],"223":[0.19444,0.69444,0.09736,0,0.665],"230":[0,0.44444,0.085,0,0.82666],"248":[0.09722,0.54167,0.09458,0,0.59111],"305":[0,0.44444,0.09426,0,0.35555],"338":[0,0.68611,0.11431,0,1.14054],"339":[0,0.44444,0.085,0,0.82666],"567":[0.19444,0.44444,0.04611,0,0.385],"710":[0,0.69444,0.06709,0,0.59111],"711":[0,0.63194,0.08271,0,0.59111],"713":[0,0.59444,0.10444,0,0.59111],"714":[0,0.69444,0.08528,0,0.59111],"715":[0,0.69444,0,0,0.59111],"728":[0,0.69444,0.10333,0,0.59111],"729":[0,0.69444,0.12945,0,0.35555],"730":[0,0.69444,0,0,0.94888],"732":[0,0.69444,0.11472,0,0.59111],"733":[0,0.69444,0.11472,0,0.59111],"915":[0,0.68611,0.12903,0,0.69777],"916":[0,0.68611,0,0,0.94444],"920":[0,0.68611,0.09062,0,0.88555],"923":[0,0.68611,0,0,0.80666],"926":[0,0.68611,0.15092,0,0.76777],"928":[0,0.68611,0.17208,0,0.8961],"931":[0,0.68611,0.11431,0,0.82666],"933":[0,0.68611,0.10778,0,0.88555],"934":[0,0.68611,0.05632,0,0.82666],"936":[0,0.68611,0.10778,0,0.88555],"937":[0,0.68611,0.0992,0,0.82666],"8211":[0,0.44444,0.09811,0,0.59111],"8212":[0,0.44444,0.09811,0,1.18221],"8216":[0,0.69444,0.12945,0,0.35555],"8217":[0,0.69444,0.12945,0,0.35555],"8220":[0,0.69444,0.16772,0,0.62055],"8221":[0,0.69444,0.07939,0,0.62055]},"Main-Italic":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0.12417,0,0.30667],"34":[0,0.69444,0.06961,0,0.51444],"35":[0.19444,0.69444,0.06616,0,0.81777],"37":[0.05556,0.75,0.13639,0,0.81777],"38":[0,0.69444,0.09694,0,0.76666],"39":[0,0.69444,0.12417,0,0.30667],"40":[0.25,0.75,0.16194,0,0.40889],"41":[0.25,0.75,0.03694,0,0.40889],"42":[0,0.75,0.14917,0,0.51111],"43":[0.05667,0.56167,0.03694,0,0.76666],"44":[0.19444,0.10556,0,0,0.30667],"45":[0,0.43056,0.02826,0,0.35778],"46":[0,0.10556,0,0,0.30667],"47":[0.25,0.75,0.16194,0,0.51111],"48":[0,0.64444,0.13556,0,0.51111],"49":[0,0.64444,0.13556,0,0.51111],"50":[0,0.64444,0.13556,0,0.51111],"51":[0,0.64444,0.13556,0,0.51111],"52":[0.19444,0.64444,0.13556,0,0.51111],"53":[0,0.64444,0.13556,0,0.51111],"54":[0,0.64444,0.13556,0,0.51111],"55":[0.19444,0.64444,0.13556,0,0.51111],"56":[0,0.64444,0.13556,0,0.51111],"57":[0,0.64444,0.13556,0,0.51111],"58":[0,0.43056,0.0582,0,0.30667],"59":[0.19444,0.43056,0.0582,0,0.30667],"61":[-0.13313,0.36687,0.06616,0,0.76666],"63":[0,0.69444,0.1225,0,0.51111],"64":[0,0.69444,0.09597,0,0.76666],"65":[0,0.68333,0,0,0.74333],"66":[0,0.68333,0.10257,0,0.70389],"67":[0,0.68333,0.14528,0,0.71555],"68":[0,0.68333,0.09403,0,0.755],"69":[0,0.68333,0.12028,0,0.67833],"70":[0,0.68333,0.13305,0,0.65277],"71":[0,0.68333,0.08722,0,0.77361],"72":[0,0.68333,0.16389,0,0.74333],"73":[0,0.68333,0.15806,0,0.38555],"74":[0,0.68333,0.14028,0,0.525],"75":[0,0.68333,0.14528,0,0.76888],"76":[0,0.68333,0,0,0.62722],"77":[0,0.68333,0.16389,0,0.89666],"78":[0,0.68333,0.16389,0,0.74333],"79":[0,0.68333,0.09403,0,0.76666],"80":[0,0.68333,0.10257,0,0.67833],"81":[0.19444,0.68333,0.09403,0,0.76666],"82":[0,0.68333,0.03868,0,0.72944],"83":[0,0.68333,0.11972,0,0.56222],"84":[0,0.68333,0.13305,0,0.71555],"85":[0,0.68333,0.16389,0,0.74333],"86":[0,0.68333,0.18361,0,0.74333],"87":[0,0.68333,0.18361,0,0.99888],"88":[0,0.68333,0.15806,0,0.74333],"89":[0,0.68333,0.19383,0,0.74333],"90":[0,0.68333,0.14528,0,0.61333],"91":[0.25,0.75,0.1875,0,0.30667],"93":[0.25,0.75,0.10528,0,0.30667],"94":[0,0.69444,0.06646,0,0.51111],"95":[0.31,0.12056,0.09208,0,0.51111],"97":[0,0.43056,0.07671,0,0.51111],"98":[0,0.69444,0.06312,0,0.46],"99":[0,0.43056,0.05653,0,0.46],"100":[0,0.69444,0.10333,0,0.51111],"101":[0,0.43056,0.07514,0,0.46],"102":[0.19444,0.69444,0.21194,0,0.30667],"103":[0.19444,0.43056,0.08847,0,0.46],"104":[0,0.69444,0.07671,0,0.51111],"105":[0,0.65536,0.1019,0,0.30667],"106":[0.19444,0.65536,0.14467,0,0.30667],"107":[0,0.69444,0.10764,0,0.46],"108":[0,0.69444,0.10333,0,0.25555],"109":[0,0.43056,0.07671,0,0.81777],"110":[0,0.43056,0.07671,0,0.56222],"111":[0,0.43056,0.06312,0,0.51111],"112":[0.19444,0.43056,0.06312,0,0.51111],"113":[0.19444,0.43056,0.08847,0,0.46],"114":[0,0.43056,0.10764,0,0.42166],"115":[0,0.43056,0.08208,0,0.40889],"116":[0,0.61508,0.09486,0,0.33222],"117":[0,0.43056,0.07671,0,0.53666],"118":[0,0.43056,0.10764,0,0.46],"119":[0,0.43056,0.10764,0,0.66444],"120":[0,0.43056,0.12042,0,0.46389],"121":[0.19444,0.43056,0.08847,0,0.48555],"122":[0,0.43056,0.12292,0,0.40889],"126":[0.35,0.31786,0.11585,0,0.51111],"160":[0,0,0,0,0.25],"168":[0,0.66786,0.10474,0,0.51111],"176":[0,0.69444,0,0,0.83129],"184":[0.17014,0,0,0,0.46],"198":[0,0.68333,0.12028,0,0.88277],"216":[0.04861,0.73194,0.09403,0,0.76666],"223":[0.19444,0.69444,0.10514,0,0.53666],"230":[0,0.43056,0.07514,0,0.71555],"248":[0.09722,0.52778,0.09194,0,0.51111],"338":[0,0.68333,0.12028,0,0.98499],"339":[0,0.43056,0.07514,0,0.71555],"710":[0,0.69444,0.06646,0,0.51111],"711":[0,0.62847,0.08295,0,0.51111],"713":[0,0.56167,0.10333,0,0.51111],"714":[0,0.69444,0.09694,0,0.51111],"715":[0,0.69444,0,0,0.51111],"728":[0,0.69444,0.10806,0,0.51111],"729":[0,0.66786,0.11752,0,0.30667],"730":[0,0.69444,0,0,0.83129],"732":[0,0.66786,0.11585,0,0.51111],"733":[0,0.69444,0.1225,0,0.51111],"915":[0,0.68333,0.13305,0,0.62722],"916":[0,0.68333,0,0,0.81777],"920":[0,0.68333,0.09403,0,0.76666],"923":[0,0.68333,0,0,0.69222],"926":[0,0.68333,0.15294,0,0.66444],"928":[0,0.68333,0.16389,0,0.74333],"931":[0,0.68333,0.12028,0,0.71555],"933":[0,0.68333,0.11111,0,0.76666],"934":[0,0.68333,0.05986,0,0.71555],"936":[0,0.68333,0.11111,0,0.76666],"937":[0,0.68333,0.10257,0,0.71555],"8211":[0,0.43056,0.09208,0,0.51111],"8212":[0,0.43056,0.09208,0,1.02222],"8216":[0,0.69444,0.12417,0,0.30667],"8217":[0,0.69444,0.12417,0,0.30667],"8220":[0,0.69444,0.1685,0,0.51444],"8221":[0,0.69444,0.06961,0,0.51444],"8463":[0,0.68889,0,0,0.54028]},"Main-Regular":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0,0,0.27778],"34":[0,0.69444,0,0,0.5],"35":[0.19444,0.69444,0,0,0.83334],"36":[0.05556,0.75,0,0,0.5],"37":[0.05556,0.75,0,0,0.83334],"38":[0,0.69444,0,0,0.77778],"39":[0,0.69444,0,0,0.27778],"40":[0.25,0.75,0,0,0.38889],"41":[0.25,0.75,0,0,0.38889],"42":[0,0.75,0,0,0.5],"43":[0.08333,0.58333,0,0,0.77778],"44":[0.19444,0.10556,0,0,0.27778],"45":[0,0.43056,0,0,0.33333],"46":[0,0.10556,0,0,0.27778],"47":[0.25,0.75,0,0,0.5],"48":[0,0.64444,0,0,0.5],"49":[0,0.64444,0,0,0.5],"50":[0,0.64444,0,0,0.5],"51":[0,0.64444,0,0,0.5],"52":[0,0.64444,0,0,0.5],"53":[0,0.64444,0,0,0.5],"54":[0,0.64444,0,0,0.5],"55":[0,0.64444,0,0,0.5],"56":[0,0.64444,0,0,0.5],"57":[0,0.64444,0,0,0.5],"58":[0,0.43056,0,0,0.27778],"59":[0.19444,0.43056,0,0,0.27778],"60":[0.0391,0.5391,0,0,0.77778],"61":[-0.13313,0.36687,0,0,0.77778],"62":[0.0391,0.5391,0,0,0.77778],"63":[0,0.69444,0,0,0.47222],"64":[0,0.69444,0,0,0.77778],"65":[0,0.68333,0,0,0.75],"66":[0,0.68333,0,0,0.70834],"67":[0,0.68333,0,0,0.72222],"68":[0,0.68333,0,0,0.76389],"69":[0,0.68333,0,0,0.68056],"70":[0,0.68333,0,0,0.65278],"71":[0,0.68333,0,0,0.78472],"72":[0,0.68333,0,0,0.75],"73":[0,0.68333,0,0,0.36111],"74":[0,0.68333,0,0,0.51389],"75":[0,0.68333,0,0,0.77778],"76":[0,0.68333,0,0,0.625],"77":[0,0.68333,0,0,0.91667],"78":[0,0.68333,0,0,0.75],"79":[0,0.68333,0,0,0.77778],"80":[0,0.68333,0,0,0.68056],"81":[0.19444,0.68333,0,0,0.77778],"82":[0,0.68333,0,0,0.73611],"83":[0,0.68333,0,0,0.55556],"84":[0,0.68333,0,0,0.72222],"85":[0,0.68333,0,0,0.75],"86":[0,0.68333,0.01389,0,0.75],"87":[0,0.68333,0.01389,0,1.02778],"88":[0,0.68333,0,0,0.75],"89":[0,0.68333,0.025,0,0.75],"90":[0,0.68333,0,0,0.61111],"91":[0.25,0.75,0,0,0.27778],"92":[0.25,0.75,0,0,0.5],"93":[0.25,0.75,0,0,0.27778],"94":[0,0.69444,0,0,0.5],"95":[0.31,0.12056,0.02778,0,0.5],"97":[0,0.43056,0,0,0.5],"98":[0,0.69444,0,0,0.55556],"99":[0,0.43056,0,0,0.44445],"100":[0,0.69444,0,0,0.55556],"101":[0,0.43056,0,0,0.44445],"102":[0,0.69444,0.07778,0,0.30556],"103":[0.19444,0.43056,0.01389,0,0.5],"104":[0,0.69444,0,0,0.55556],"105":[0,0.66786,0,0,0.27778],"106":[0.19444,0.66786,0,0,0.30556],"107":[0,0.69444,0,0,0.52778],"108":[0,0.69444,0,0,0.27778],"109":[0,0.43056,0,0,0.83334],"110":[0,0.43056,0,0,0.55556],"111":[0,0.43056,0,0,0.5],"112":[0.19444,0.43056,0,0,0.55556],"113":[0.19444,0.43056,0,0,0.52778],"114":[0,0.43056,0,0,0.39167],"115":[0,0.43056,0,0,0.39445],"116":[0,0.61508,0,0,0.38889],"117":[0,0.43056,0,0,0.55556],"118":[0,0.43056,0.01389,0,0.52778],"119":[0,0.43056,0.01389,0,0.72222],"120":[0,0.43056,0,0,0.52778],"121":[0.19444,0.43056,0.01389,0,0.52778],"122":[0,0.43056,0,0,0.44445],"123":[0.25,0.75,0,0,0.5],"124":[0.25,0.75,0,0,0.27778],"125":[0.25,0.75,0,0,0.5],"126":[0.35,0.31786,0,0,0.5],"160":[0,0,0,0,0.25],"163":[0,0.69444,0,0,0.76909],"167":[0.19444,0.69444,0,0,0.44445],"168":[0,0.66786,0,0,0.5],"172":[0,0.43056,0,0,0.66667],"176":[0,0.69444,0,0,0.75],"177":[0.08333,0.58333,0,0,0.77778],"182":[0.19444,0.69444,0,0,0.61111],"184":[0.17014,0,0,0,0.44445],"198":[0,0.68333,0,0,0.90278],"215":[0.08333,0.58333,0,0,0.77778],"216":[0.04861,0.73194,0,0,0.77778],"223":[0,0.69444,0,0,0.5],"230":[0,0.43056,0,0,0.72222],"247":[0.08333,0.58333,0,0,0.77778],"248":[0.09722,0.52778,0,0,0.5],"305":[0,0.43056,0,0,0.27778],"338":[0,0.68333,0,0,1.01389],"339":[0,0.43056,0,0,0.77778],"567":[0.19444,0.43056,0,0,0.30556],"710":[0,0.69444,0,0,0.5],"711":[0,0.62847,0,0,0.5],"713":[0,0.56778,0,0,0.5],"714":[0,0.69444,0,0,0.5],"715":[0,0.69444,0,0,0.5],"728":[0,0.69444,0,0,0.5],"729":[0,0.66786,0,0,0.27778],"730":[0,0.69444,0,0,0.75],"732":[0,0.66786,0,0,0.5],"733":[0,0.69444,0,0,0.5],"915":[0,0.68333,0,0,0.625],"916":[0,0.68333,0,0,0.83334],"920":[0,0.68333,0,0,0.77778],"923":[0,0.68333,0,0,0.69445],"926":[0,0.68333,0,0,0.66667],"928":[0,0.68333,0,0,0.75],"931":[0,0.68333,0,0,0.72222],"933":[0,0.68333,0,0,0.77778],"934":[0,0.68333,0,0,0.72222],"936":[0,0.68333,0,0,0.77778],"937":[0,0.68333,0,0,0.72222],"8211":[0,0.43056,0.02778,0,0.5],"8212":[0,0.43056,0.02778,0,1],"8216":[0,0.69444,0,0,0.27778],"8217":[0,0.69444,0,0,0.27778],"8220":[0,0.69444,0,0,0.5],"8221":[0,0.69444,0,0,0.5],"8224":[0.19444,0.69444,0,0,0.44445],"8225":[0.19444,0.69444,0,0,0.44445],"8230":[0,0.123,0,0,1.172],"8242":[0,0.55556,0,0,0.275],"8407":[0,0.71444,0.15382,0,0.5],"8463":[0,0.68889,0,0,0.54028],"8465":[0,0.69444,0,0,0.72222],"8467":[0,0.69444,0,0.11111,0.41667],"8472":[0.19444,0.43056,0,0.11111,0.63646],"8476":[0,0.69444,0,0,0.72222],"8501":[0,0.69444,0,0,0.61111],"8592":[-0.13313,0.36687,0,0,1],"8593":[0.19444,0.69444,0,0,0.5],"8594":[-0.13313,0.36687,0,0,1],"8595":[0.19444,0.69444,0,0,0.5],"8596":[-0.13313,0.36687,0,0,1],"8597":[0.25,0.75,0,0,0.5],"8598":[0.19444,0.69444,0,0,1],"8599":[0.19444,0.69444,0,0,1],"8600":[0.19444,0.69444,0,0,1],"8601":[0.19444,0.69444,0,0,1],"8614":[0.011,0.511,0,0,1],"8617":[0.011,0.511,0,0,1.126],"8618":[0.011,0.511,0,0,1.126],"8636":[-0.13313,0.36687,0,0,1],"8637":[-0.13313,0.36687,0,0,1],"8640":[-0.13313,0.36687,0,0,1],"8641":[-0.13313,0.36687,0,0,1],"8652":[0.011,0.671,0,0,1],"8656":[-0.13313,0.36687,0,0,1],"8657":[0.19444,0.69444,0,0,0.61111],"8658":[-0.13313,0.36687,0,0,1],"8659":[0.19444,0.69444,0,0,0.61111],"8660":[-0.13313,0.36687,0,0,1],"8661":[0.25,0.75,0,0,0.61111],"8704":[0,0.69444,0,0,0.55556],"8706":[0,0.69444,0.05556,0.08334,0.5309],"8707":[0,0.69444,0,0,0.55556],"8709":[0.05556,0.75,0,0,0.5],"8711":[0,0.68333,0,0,0.83334],"8712":[0.0391,0.5391,0,0,0.66667],"8715":[0.0391,0.5391,0,0,0.66667],"8722":[0.08333,0.58333,0,0,0.77778],"8723":[0.08333,0.58333,0,0,0.77778],"8725":[0.25,0.75,0,0,0.5],"8726":[0.25,0.75,0,0,0.5],"8727":[-0.03472,0.46528,0,0,0.5],"8728":[-0.05555,0.44445,0,0,0.5],"8729":[-0.05555,0.44445,0,0,0.5],"8730":[0.2,0.8,0,0,0.83334],"8733":[0,0.43056,0,0,0.77778],"8734":[0,0.43056,0,0,1],"8736":[0,0.69224,0,0,0.72222],"8739":[0.25,0.75,0,0,0.27778],"8741":[0.25,0.75,0,0,0.5],"8743":[0,0.55556,0,0,0.66667],"8744":[0,0.55556,0,0,0.66667],"8745":[0,0.55556,0,0,0.66667],"8746":[0,0.55556,0,0,0.66667],"8747":[0.19444,0.69444,0.11111,0,0.41667],"8764":[-0.13313,0.36687,0,0,0.77778],"8768":[0.19444,0.69444,0,0,0.27778],"8771":[-0.03625,0.46375,0,0,0.77778],"8773":[-0.022,0.589,0,0,0.778],"8776":[-0.01688,0.48312,0,0,0.77778],"8781":[-0.03625,0.46375,0,0,0.77778],"8784":[-0.133,0.673,0,0,0.778],"8801":[-0.03625,0.46375,0,0,0.77778],"8804":[0.13597,0.63597,0,0,0.77778],"8805":[0.13597,0.63597,0,0,0.77778],"8810":[0.0391,0.5391,0,0,1],"8811":[0.0391,0.5391,0,0,1],"8826":[0.0391,0.5391,0,0,0.77778],"8827":[0.0391,0.5391,0,0,0.77778],"8834":[0.0391,0.5391,0,0,0.77778],"8835":[0.0391,0.5391,0,0,0.77778],"8838":[0.13597,0.63597,0,0,0.77778],"8839":[0.13597,0.63597,0,0,0.77778],"8846":[0,0.55556,0,0,0.66667],"8849":[0.13597,0.63597,0,0,0.77778],"8850":[0.13597,0.63597,0,0,0.77778],"8851":[0,0.55556,0,0,0.66667],"8852":[0,0.55556,0,0,0.66667],"8853":[0.08333,0.58333,0,0,0.77778],"8854":[0.08333,0.58333,0,0,0.77778],"8855":[0.08333,0.58333,0,0,0.77778],"8856":[0.08333,0.58333,0,0,0.77778],"8857":[0.08333,0.58333,0,0,0.77778],"8866":[0,0.69444,0,0,0.61111],"8867":[0,0.69444,0,0,0.61111],"8868":[0,0.69444,0,0,0.77778],"8869":[0,0.69444,0,0,0.77778],"8872":[0.249,0.75,0,0,0.867],"8900":[-0.05555,0.44445,0,0,0.5],"8901":[-0.05555,0.44445,0,0,0.27778],"8902":[-0.03472,0.46528,0,0,0.5],"8904":[0.005,0.505,0,0,0.9],"8942":[0.03,0.903,0,0,0.278],"8943":[-0.19,0.313,0,0,1.172],"8945":[-0.1,0.823,0,0,1.282],"8968":[0.25,0.75,0,0,0.44445],"8969":[0.25,0.75,0,0,0.44445],"8970":[0.25,0.75,0,0,0.44445],"8971":[0.25,0.75,0,0,0.44445],"8994":[-0.14236,0.35764,0,0,1],"8995":[-0.14236,0.35764,0,0,1],"9136":[0.244,0.744,0,0,0.412],"9137":[0.244,0.745,0,0,0.412],"9651":[0.19444,0.69444,0,0,0.88889],"9657":[-0.03472,0.46528,0,0,0.5],"9661":[0.19444,0.69444,0,0,0.88889],"9667":[-0.03472,0.46528,0,0,0.5],"9711":[0.19444,0.69444,0,0,1],"9824":[0.12963,0.69444,0,0,0.77778],"9825":[0.12963,0.69444,0,0,0.77778],"9826":[0.12963,0.69444,0,0,0.77778],"9827":[0.12963,0.69444,0,0,0.77778],"9837":[0,0.75,0,0,0.38889],"9838":[0.19444,0.69444,0,0,0.38889],"9839":[0.19444,0.69444,0,0,0.38889],"10216":[0.25,0.75,0,0,0.38889],"10217":[0.25,0.75,0,0,0.38889],"10222":[0.244,0.744,0,0,0.412],"10223":[0.244,0.745,0,0,0.412],"10229":[0.011,0.511,0,0,1.609],"10230":[0.011,0.511,0,0,1.638],"10231":[0.011,0.511,0,0,1.859],"10232":[0.024,0.525,0,0,1.609],"10233":[0.024,0.525,0,0,1.638],"10234":[0.024,0.525,0,0,1.858],"10236":[0.011,0.511,0,0,1.638],"10815":[0,0.68333,0,0,0.75],"10927":[0.13597,0.63597,0,0,0.77778],"10928":[0.13597,0.63597,0,0,0.77778],"57376":[0.19444,0.69444,0,0,0]},"Math-BoldItalic":{"32":[0,0,0,0,0.25],"48":[0,0.44444,0,0,0.575],"49":[0,0.44444,0,0,0.575],"50":[0,0.44444,0,0,0.575],"51":[0.19444,0.44444,0,0,0.575],"52":[0.19444,0.44444,0,0,0.575],"53":[0.19444,0.44444,0,0,0.575],"54":[0,0.64444,0,0,0.575],"55":[0.19444,0.44444,0,0,0.575],"56":[0,0.64444,0,0,0.575],"57":[0.19444,0.44444,0,0,0.575],"65":[0,0.68611,0,0,0.86944],"66":[0,0.68611,0.04835,0,0.8664],"67":[0,0.68611,0.06979,0,0.81694],"68":[0,0.68611,0.03194,0,0.93812],"69":[0,0.68611,0.05451,0,0.81007],"70":[0,0.68611,0.15972,0,0.68889],"71":[0,0.68611,0,0,0.88673],"72":[0,0.68611,0.08229,0,0.98229],"73":[0,0.68611,0.07778,0,0.51111],"74":[0,0.68611,0.10069,0,0.63125],"75":[0,0.68611,0.06979,0,0.97118],"76":[0,0.68611,0,0,0.75555],"77":[0,0.68611,0.11424,0,1.14201],"78":[0,0.68611,0.11424,0,0.95034],"79":[0,0.68611,0.03194,0,0.83666],"80":[0,0.68611,0.15972,0,0.72309],"81":[0.19444,0.68611,0,0,0.86861],"82":[0,0.68611,0.00421,0,0.87235],"83":[0,0.68611,0.05382,0,0.69271],"84":[0,0.68611,0.15972,0,0.63663],"85":[0,0.68611,0.11424,0,0.80027],"86":[0,0.68611,0.25555,0,0.67778],"87":[0,0.68611,0.15972,0,1.09305],"88":[0,0.68611,0.07778,0,0.94722],"89":[0,0.68611,0.25555,0,0.67458],"90":[0,0.68611,0.06979,0,0.77257],"97":[0,0.44444,0,0,0.63287],"98":[0,0.69444,0,0,0.52083],"99":[0,0.44444,0,0,0.51342],"100":[0,0.69444,0,0,0.60972],"101":[0,0.44444,0,0,0.55361],"102":[0.19444,0.69444,0.11042,0,0.56806],"103":[0.19444,0.44444,0.03704,0,0.5449],"104":[0,0.69444,0,0,0.66759],"105":[0,0.69326,0,0,0.4048],"106":[0.19444,0.69326,0.0622,0,0.47083],"107":[0,0.69444,0.01852,0,0.6037],"108":[0,0.69444,0.0088,0,0.34815],"109":[0,0.44444,0,0,1.0324],"110":[0,0.44444,0,0,0.71296],"111":[0,0.44444,0,0,0.58472],"112":[0.19444,0.44444,0,0,0.60092],"113":[0.19444,0.44444,0.03704,0,0.54213],"114":[0,0.44444,0.03194,0,0.5287],"115":[0,0.44444,0,0,0.53125],"116":[0,0.63492,0,0,0.41528],"117":[0,0.44444,0,0,0.68102],"118":[0,0.44444,0.03704,0,0.56666],"119":[0,0.44444,0.02778,0,0.83148],"120":[0,0.44444,0,0,0.65903],"121":[0.19444,0.44444,0.03704,0,0.59028],"122":[0,0.44444,0.04213,0,0.55509],"160":[0,0,0,0,0.25],"915":[0,0.68611,0.15972,0,0.65694],"916":[0,0.68611,0,0,0.95833],"920":[0,0.68611,0.03194,0,0.86722],"923":[0,0.68611,0,0,0.80555],"926":[0,0.68611,0.07458,0,0.84125],"928":[0,0.68611,0.08229,0,0.98229],"931":[0,0.68611,0.05451,0,0.88507],"933":[0,0.68611,0.15972,0,0.67083],"934":[0,0.68611,0,0,0.76666],"936":[0,0.68611,0.11653,0,0.71402],"937":[0,0.68611,0.04835,0,0.8789],"945":[0,0.44444,0,0,0.76064],"946":[0.19444,0.69444,0.03403,0,0.65972],"947":[0.19444,0.44444,0.06389,0,0.59003],"948":[0,0.69444,0.03819,0,0.52222],"949":[0,0.44444,0,0,0.52882],"950":[0.19444,0.69444,0.06215,0,0.50833],"951":[0.19444,0.44444,0.03704,0,0.6],"952":[0,0.69444,0.03194,0,0.5618],"953":[0,0.44444,0,0,0.41204],"954":[0,0.44444,0,0,0.66759],"955":[0,0.69444,0,0,0.67083],"956":[0.19444,0.44444,0,0,0.70787],"957":[0,0.44444,0.06898,0,0.57685],"958":[0.19444,0.69444,0.03021,0,0.50833],"959":[0,0.44444,0,0,0.58472],"960":[0,0.44444,0.03704,0,0.68241],"961":[0.19444,0.44444,0,0,0.6118],"962":[0.09722,0.44444,0.07917,0,0.42361],"963":[0,0.44444,0.03704,0,0.68588],"964":[0,0.44444,0.13472,0,0.52083],"965":[0,0.44444,0.03704,0,0.63055],"966":[0.19444,0.44444,0,0,0.74722],"967":[0.19444,0.44444,0,0,0.71805],"968":[0.19444,0.69444,0.03704,0,0.75833],"969":[0,0.44444,0.03704,0,0.71782],"977":[0,0.69444,0,0,0.69155],"981":[0.19444,0.69444,0,0,0.7125],"982":[0,0.44444,0.03194,0,0.975],"1009":[0.19444,0.44444,0,0,0.6118],"1013":[0,0.44444,0,0,0.48333],"57649":[0,0.44444,0,0,0.39352],"57911":[0.19444,0.44444,0,0,0.43889]},"Math-Italic":{"32":[0,0,0,0,0.25],"48":[0,0.43056,0,0,0.5],"49":[0,0.43056,0,0,0.5],"50":[0,0.43056,0,0,0.5],"51":[0.19444,0.43056,0,0,0.5],"52":[0.19444,0.43056,0,0,0.5],"53":[0.19444,0.43056,0,0,0.5],"54":[0,0.64444,0,0,0.5],"55":[0.19444,0.43056,0,0,0.5],"56":[0,0.64444,0,0,0.5],"57":[0.19444,0.43056,0,0,0.5],"65":[0,0.68333,0,0.13889,0.75],"66":[0,0.68333,0.05017,0.08334,0.75851],"67":[0,0.68333,0.07153,0.08334,0.71472],"68":[0,0.68333,0.02778,0.05556,0.82792],"69":[0,0.68333,0.05764,0.08334,0.7382],"70":[0,0.68333,0.13889,0.08334,0.64306],"71":[0,0.68333,0,0.08334,0.78625],"72":[0,0.68333,0.08125,0.05556,0.83125],"73":[0,0.68333,0.07847,0.11111,0.43958],"74":[0,0.68333,0.09618,0.16667,0.55451],"75":[0,0.68333,0.07153,0.05556,0.84931],"76":[0,0.68333,0,0.02778,0.68056],"77":[0,0.68333,0.10903,0.08334,0.97014],"78":[0,0.68333,0.10903,0.08334,0.80347],"79":[0,0.68333,0.02778,0.08334,0.76278],"80":[0,0.68333,0.13889,0.08334,0.64201],"81":[0.19444,0.68333,0,0.08334,0.79056],"82":[0,0.68333,0.00773,0.08334,0.75929],"83":[0,0.68333,0.05764,0.08334,0.6132],"84":[0,0.68333,0.13889,0.08334,0.58438],"85":[0,0.68333,0.10903,0.02778,0.68278],"86":[0,0.68333,0.22222,0,0.58333],"87":[0,0.68333,0.13889,0,0.94445],"88":[0,0.68333,0.07847,0.08334,0.82847],"89":[0,0.68333,0.22222,0,0.58056],"90":[0,0.68333,0.07153,0.08334,0.68264],"97":[0,0.43056,0,0,0.52859],"98":[0,0.69444,0,0,0.42917],"99":[0,0.43056,0,0.05556,0.43276],"100":[0,0.69444,0,0.16667,0.52049],"101":[0,0.43056,0,0.05556,0.46563],"102":[0.19444,0.69444,0.10764,0.16667,0.48959],"103":[0.19444,0.43056,0.03588,0.02778,0.47697],"104":[0,0.69444,0,0,0.57616],"105":[0,0.65952,0,0,0.34451],"106":[0.19444,0.65952,0.05724,0,0.41181],"107":[0,0.69444,0.03148,0,0.5206],"108":[0,0.69444,0.01968,0.08334,0.29838],"109":[0,0.43056,0,0,0.87801],"110":[0,0.43056,0,0,0.60023],"111":[0,0.43056,0,0.05556,0.48472],"112":[0.19444,0.43056,0,0.08334,0.50313],"113":[0.19444,0.43056,0.03588,0.08334,0.44641],"114":[0,0.43056,0.02778,0.05556,0.45116],"115":[0,0.43056,0,0.05556,0.46875],"116":[0,0.61508,0,0.08334,0.36111],"117":[0,0.43056,0,0.02778,0.57246],"118":[0,0.43056,0.03588,0.02778,0.48472],"119":[0,0.43056,0.02691,0.08334,0.71592],"120":[0,0.43056,0,0.02778,0.57153],"121":[0.19444,0.43056,0.03588,0.05556,0.49028],"122":[0,0.43056,0.04398,0.05556,0.46505],"160":[0,0,0,0,0.25],"915":[0,0.68333,0.13889,0.08334,0.61528],"916":[0,0.68333,0,0.16667,0.83334],"920":[0,0.68333,0.02778,0.08334,0.76278],"923":[0,0.68333,0,0.16667,0.69445],"926":[0,0.68333,0.07569,0.08334,0.74236],"928":[0,0.68333,0.08125,0.05556,0.83125],"931":[0,0.68333,0.05764,0.08334,0.77986],"933":[0,0.68333,0.13889,0.05556,0.58333],"934":[0,0.68333,0,0.08334,0.66667],"936":[0,0.68333,0.11,0.05556,0.61222],"937":[0,0.68333,0.05017,0.08334,0.7724],"945":[0,0.43056,0.0037,0.02778,0.6397],"946":[0.19444,0.69444,0.05278,0.08334,0.56563],"947":[0.19444,0.43056,0.05556,0,0.51773],"948":[0,0.69444,0.03785,0.05556,0.44444],"949":[0,0.43056,0,0.08334,0.46632],"950":[0.19444,0.69444,0.07378,0.08334,0.4375],"951":[0.19444,0.43056,0.03588,0.05556,0.49653],"952":[0,0.69444,0.02778,0.08334,0.46944],"953":[0,0.43056,0,0.05556,0.35394],"954":[0,0.43056,0,0,0.57616],"955":[0,0.69444,0,0,0.58334],"956":[0.19444,0.43056,0,0.02778,0.60255],"957":[0,0.43056,0.06366,0.02778,0.49398],"958":[0.19444,0.69444,0.04601,0.11111,0.4375],"959":[0,0.43056,0,0.05556,0.48472],"960":[0,0.43056,0.03588,0,0.57003],"961":[0.19444,0.43056,0,0.08334,0.51702],"962":[0.09722,0.43056,0.07986,0.08334,0.36285],"963":[0,0.43056,0.03588,0,0.57141],"964":[0,0.43056,0.1132,0.02778,0.43715],"965":[0,0.43056,0.03588,0.02778,0.54028],"966":[0.19444,0.43056,0,0.08334,0.65417],"967":[0.19444,0.43056,0,0.05556,0.62569],"968":[0.19444,0.69444,0.03588,0.11111,0.65139],"969":[0,0.43056,0.03588,0,0.62245],"977":[0,0.69444,0,0.08334,0.59144],"981":[0.19444,0.69444,0,0.08334,0.59583],"982":[0,0.43056,0.02778,0,0.82813],"1009":[0.19444,0.43056,0,0.08334,0.51702],"1013":[0,0.43056,0,0.05556,0.4059],"57649":[0,0.43056,0,0.02778,0.32246],"57911":[0.19444,0.43056,0,0.08334,0.38403]},"SansSerif-Bold":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0,0,0.36667],"34":[0,0.69444,0,0,0.55834],"35":[0.19444,0.69444,0,0,0.91667],"36":[0.05556,0.75,0,0,0.55],"37":[0.05556,0.75,0,0,1.02912],"38":[0,0.69444,0,0,0.83056],"39":[0,0.69444,0,0,0.30556],"40":[0.25,0.75,0,0,0.42778],"41":[0.25,0.75,0,0,0.42778],"42":[0,0.75,0,0,0.55],"43":[0.11667,0.61667,0,0,0.85556],"44":[0.10556,0.13056,0,0,0.30556],"45":[0,0.45833,0,0,0.36667],"46":[0,0.13056,0,0,0.30556],"47":[0.25,0.75,0,0,0.55],"48":[0,0.69444,0,0,0.55],"49":[0,0.69444,0,0,0.55],"50":[0,0.69444,0,0,0.55],"51":[0,0.69444,0,0,0.55],"52":[0,0.69444,0,0,0.55],"53":[0,0.69444,0,0,0.55],"54":[0,0.69444,0,0,0.55],"55":[0,0.69444,0,0,0.55],"56":[0,0.69444,0,0,0.55],"57":[0,0.69444,0,0,0.55],"58":[0,0.45833,0,0,0.30556],"59":[0.10556,0.45833,0,0,0.30556],"61":[-0.09375,0.40625,0,0,0.85556],"63":[0,0.69444,0,0,0.51945],"64":[0,0.69444,0,0,0.73334],"65":[0,0.69444,0,0,0.73334],"66":[0,0.69444,0,0,0.73334],"67":[0,0.69444,0,0,0.70278],"68":[0,0.69444,0,0,0.79445],"69":[0,0.69444,0,0,0.64167],"70":[0,0.69444,0,0,0.61111],"71":[0,0.69444,0,0,0.73334],"72":[0,0.69444,0,0,0.79445],"73":[0,0.69444,0,0,0.33056],"74":[0,0.69444,0,0,0.51945],"75":[0,0.69444,0,0,0.76389],"76":[0,0.69444,0,0,0.58056],"77":[0,0.69444,0,0,0.97778],"78":[0,0.69444,0,0,0.79445],"79":[0,0.69444,0,0,0.79445],"80":[0,0.69444,0,0,0.70278],"81":[0.10556,0.69444,0,0,0.79445],"82":[0,0.69444,0,0,0.70278],"83":[0,0.69444,0,0,0.61111],"84":[0,0.69444,0,0,0.73334],"85":[0,0.69444,0,0,0.76389],"86":[0,0.69444,0.01528,0,0.73334],"87":[0,0.69444,0.01528,0,1.03889],"88":[0,0.69444,0,0,0.73334],"89":[0,0.69444,0.0275,0,0.73334],"90":[0,0.69444,0,0,0.67223],"91":[0.25,0.75,0,0,0.34306],"93":[0.25,0.75,0,0,0.34306],"94":[0,0.69444,0,0,0.55],"95":[0.35,0.10833,0.03056,0,0.55],"97":[0,0.45833,0,0,0.525],"98":[0,0.69444,0,0,0.56111],"99":[0,0.45833,0,0,0.48889],"100":[0,0.69444,0,0,0.56111],"101":[0,0.45833,0,0,0.51111],"102":[0,0.69444,0.07639,0,0.33611],"103":[0.19444,0.45833,0.01528,0,0.55],"104":[0,0.69444,0,0,0.56111],"105":[0,0.69444,0,0,0.25556],"106":[0.19444,0.69444,0,0,0.28611],"107":[0,0.69444,0,0,0.53056],"108":[0,0.69444,0,0,0.25556],"109":[0,0.45833,0,0,0.86667],"110":[0,0.45833,0,0,0.56111],"111":[0,0.45833,0,0,0.55],"112":[0.19444,0.45833,0,0,0.56111],"113":[0.19444,0.45833,0,0,0.56111],"114":[0,0.45833,0.01528,0,0.37222],"115":[0,0.45833,0,0,0.42167],"116":[0,0.58929,0,0,0.40417],"117":[0,0.45833,0,0,0.56111],"118":[0,0.45833,0.01528,0,0.5],"119":[0,0.45833,0.01528,0,0.74445],"120":[0,0.45833,0,0,0.5],"121":[0.19444,0.45833,0.01528,0,0.5],"122":[0,0.45833,0,0,0.47639],"126":[0.35,0.34444,0,0,0.55],"160":[0,0,0,0,0.25],"168":[0,0.69444,0,0,0.55],"176":[0,0.69444,0,0,0.73334],"180":[0,0.69444,0,0,0.55],"184":[0.17014,0,0,0,0.48889],"305":[0,0.45833,0,0,0.25556],"567":[0.19444,0.45833,0,0,0.28611],"710":[0,0.69444,0,0,0.55],"711":[0,0.63542,0,0,0.55],"713":[0,0.63778,0,0,0.55],"728":[0,0.69444,0,0,0.55],"729":[0,0.69444,0,0,0.30556],"730":[0,0.69444,0,0,0.73334],"732":[0,0.69444,0,0,0.55],"733":[0,0.69444,0,0,0.55],"915":[0,0.69444,0,0,0.58056],"916":[0,0.69444,0,0,0.91667],"920":[0,0.69444,0,0,0.85556],"923":[0,0.69444,0,0,0.67223],"926":[0,0.69444,0,0,0.73334],"928":[0,0.69444,0,0,0.79445],"931":[0,0.69444,0,0,0.79445],"933":[0,0.69444,0,0,0.85556],"934":[0,0.69444,0,0,0.79445],"936":[0,0.69444,0,0,0.85556],"937":[0,0.69444,0,0,0.79445],"8211":[0,0.45833,0.03056,0,0.55],"8212":[0,0.45833,0.03056,0,1.10001],"8216":[0,0.69444,0,0,0.30556],"8217":[0,0.69444,0,0,0.30556],"8220":[0,0.69444,0,0,0.55834],"8221":[0,0.69444,0,0,0.55834]},"SansSerif-Italic":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0.05733,0,0.31945],"34":[0,0.69444,0.00316,0,0.5],"35":[0.19444,0.69444,0.05087,0,0.83334],"36":[0.05556,0.75,0.11156,0,0.5],"37":[0.05556,0.75,0.03126,0,0.83334],"38":[0,0.69444,0.03058,0,0.75834],"39":[0,0.69444,0.07816,0,0.27778],"40":[0.25,0.75,0.13164,0,0.38889],"41":[0.25,0.75,0.02536,0,0.38889],"42":[0,0.75,0.11775,0,0.5],"43":[0.08333,0.58333,0.02536,0,0.77778],"44":[0.125,0.08333,0,0,0.27778],"45":[0,0.44444,0.01946,0,0.33333],"46":[0,0.08333,0,0,0.27778],"47":[0.25,0.75,0.13164,0,0.5],"48":[0,0.65556,0.11156,0,0.5],"49":[0,0.65556,0.11156,0,0.5],"50":[0,0.65556,0.11156,0,0.5],"51":[0,0.65556,0.11156,0,0.5],"52":[0,0.65556,0.11156,0,0.5],"53":[0,0.65556,0.11156,0,0.5],"54":[0,0.65556,0.11156,0,0.5],"55":[0,0.65556,0.11156,0,0.5],"56":[0,0.65556,0.11156,0,0.5],"57":[0,0.65556,0.11156,0,0.5],"58":[0,0.44444,0.02502,0,0.27778],"59":[0.125,0.44444,0.02502,0,0.27778],"61":[-0.13,0.37,0.05087,0,0.77778],"63":[0,0.69444,0.11809,0,0.47222],"64":[0,0.69444,0.07555,0,0.66667],"65":[0,0.69444,0,0,0.66667],"66":[0,0.69444,0.08293,0,0.66667],"67":[0,0.69444,0.11983,0,0.63889],"68":[0,0.69444,0.07555,0,0.72223],"69":[0,0.69444,0.11983,0,0.59722],"70":[0,0.69444,0.13372,0,0.56945],"71":[0,0.69444,0.11983,0,0.66667],"72":[0,0.69444,0.08094,0,0.70834],"73":[0,0.69444,0.13372,0,0.27778],"74":[0,0.69444,0.08094,0,0.47222],"75":[0,0.69444,0.11983,0,0.69445],"76":[0,0.69444,0,0,0.54167],"77":[0,0.69444,0.08094,0,0.875],"78":[0,0.69444,0.08094,0,0.70834],"79":[0,0.69444,0.07555,0,0.73611],"80":[0,0.69444,0.08293,0,0.63889],"81":[0.125,0.69444,0.07555,0,0.73611],"82":[0,0.69444,0.08293,0,0.64584],"83":[0,0.69444,0.09205,0,0.55556],"84":[0,0.69444,0.13372,0,0.68056],"85":[0,0.69444,0.08094,0,0.6875],"86":[0,0.69444,0.1615,0,0.66667],"87":[0,0.69444,0.1615,0,0.94445],"88":[0,0.69444,0.13372,0,0.66667],"89":[0,0.69444,0.17261,0,0.66667],"90":[0,0.69444,0.11983,0,0.61111],"91":[0.25,0.75,0.15942,0,0.28889],"93":[0.25,0.75,0.08719,0,0.28889],"94":[0,0.69444,0.0799,0,0.5],"95":[0.35,0.09444,0.08616,0,0.5],"97":[0,0.44444,0.00981,0,0.48056],"98":[0,0.69444,0.03057,0,0.51667],"99":[0,0.44444,0.08336,0,0.44445],"100":[0,0.69444,0.09483,0,0.51667],"101":[0,0.44444,0.06778,0,0.44445],"102":[0,0.69444,0.21705,0,0.30556],"103":[0.19444,0.44444,0.10836,0,0.5],"104":[0,0.69444,0.01778,0,0.51667],"105":[0,0.67937,0.09718,0,0.23889],"106":[0.19444,0.67937,0.09162,0,0.26667],"107":[0,0.69444,0.08336,0,0.48889],"108":[0,0.69444,0.09483,0,0.23889],"109":[0,0.44444,0.01778,0,0.79445],"110":[0,0.44444,0.01778,0,0.51667],"111":[0,0.44444,0.06613,0,0.5],"112":[0.19444,0.44444,0.0389,0,0.51667],"113":[0.19444,0.44444,0.04169,0,0.51667],"114":[0,0.44444,0.10836,0,0.34167],"115":[0,0.44444,0.0778,0,0.38333],"116":[0,0.57143,0.07225,0,0.36111],"117":[0,0.44444,0.04169,0,0.51667],"118":[0,0.44444,0.10836,0,0.46111],"119":[0,0.44444,0.10836,0,0.68334],"120":[0,0.44444,0.09169,0,0.46111],"121":[0.19444,0.44444,0.10836,0,0.46111],"122":[0,0.44444,0.08752,0,0.43472],"126":[0.35,0.32659,0.08826,0,0.5],"160":[0,0,0,0,0.25],"168":[0,0.67937,0.06385,0,0.5],"176":[0,0.69444,0,0,0.73752],"184":[0.17014,0,0,0,0.44445],"305":[0,0.44444,0.04169,0,0.23889],"567":[0.19444,0.44444,0.04169,0,0.26667],"710":[0,0.69444,0.0799,0,0.5],"711":[0,0.63194,0.08432,0,0.5],"713":[0,0.60889,0.08776,0,0.5],"714":[0,0.69444,0.09205,0,0.5],"715":[0,0.69444,0,0,0.5],"728":[0,0.69444,0.09483,0,0.5],"729":[0,0.67937,0.07774,0,0.27778],"730":[0,0.69444,0,0,0.73752],"732":[0,0.67659,0.08826,0,0.5],"733":[0,0.69444,0.09205,0,0.5],"915":[0,0.69444,0.13372,0,0.54167],"916":[0,0.69444,0,0,0.83334],"920":[0,0.69444,0.07555,0,0.77778],"923":[0,0.69444,0,0,0.61111],"926":[0,0.69444,0.12816,0,0.66667],"928":[0,0.69444,0.08094,0,0.70834],"931":[0,0.69444,0.11983,0,0.72222],"933":[0,0.69444,0.09031,0,0.77778],"934":[0,0.69444,0.04603,0,0.72222],"936":[0,0.69444,0.09031,0,0.77778],"937":[0,0.69444,0.08293,0,0.72222],"8211":[0,0.44444,0.08616,0,0.5],"8212":[0,0.44444,0.08616,0,1],"8216":[0,0.69444,0.07816,0,0.27778],"8217":[0,0.69444,0.07816,0,0.27778],"8220":[0,0.69444,0.14205,0,0.5],"8221":[0,0.69444,0.00316,0,0.5]},"SansSerif-Regular":{"32":[0,0,0,0,0.25],"33":[0,0.69444,0,0,0.31945],"34":[0,0.69444,0,0,0.5],"35":[0.19444,0.69444,0,0,0.83334],"36":[0.05556,0.75,0,0,0.5],"37":[0.05556,0.75,0,0,0.83334],"38":[0,0.69444,0,0,0.75834],"39":[0,0.69444,0,0,0.27778],"40":[0.25,0.75,0,0,0.38889],"41":[0.25,0.75,0,0,0.38889],"42":[0,0.75,0,0,0.5],"43":[0.08333,0.58333,0,0,0.77778],"44":[0.125,0.08333,0,0,0.27778],"45":[0,0.44444,0,0,0.33333],"46":[0,0.08333,0,0,0.27778],"47":[0.25,0.75,0,0,0.5],"48":[0,0.65556,0,0,0.5],"49":[0,0.65556,0,0,0.5],"50":[0,0.65556,0,0,0.5],"51":[0,0.65556,0,0,0.5],"52":[0,0.65556,0,0,0.5],"53":[0,0.65556,0,0,0.5],"54":[0,0.65556,0,0,0.5],"55":[0,0.65556,0,0,0.5],"56":[0,0.65556,0,0,0.5],"57":[0,0.65556,0,0,0.5],"58":[0,0.44444,0,0,0.27778],"59":[0.125,0.44444,0,0,0.27778],"61":[-0.13,0.37,0,0,0.77778],"63":[0,0.69444,0,0,0.47222],"64":[0,0.69444,0,0,0.66667],"65":[0,0.69444,0,0,0.66667],"66":[0,0.69444,0,0,0.66667],"67":[0,0.69444,0,0,0.63889],"68":[0,0.69444,0,0,0.72223],"69":[0,0.69444,0,0,0.59722],"70":[0,0.69444,0,0,0.56945],"71":[0,0.69444,0,0,0.66667],"72":[0,0.69444,0,0,0.70834],"73":[0,0.69444,0,0,0.27778],"74":[0,0.69444,0,0,0.47222],"75":[0,0.69444,0,0,0.69445],"76":[0,0.69444,0,0,0.54167],"77":[0,0.69444,0,0,0.875],"78":[0,0.69444,0,0,0.70834],"79":[0,0.69444,0,0,0.73611],"80":[0,0.69444,0,0,0.63889],"81":[0.125,0.69444,0,0,0.73611],"82":[0,0.69444,0,0,0.64584],"83":[0,0.69444,0,0,0.55556],"84":[0,0.69444,0,0,0.68056],"85":[0,0.69444,0,0,0.6875],"86":[0,0.69444,0.01389,0,0.66667],"87":[0,0.69444,0.01389,0,0.94445],"88":[0,0.69444,0,0,0.66667],"89":[0,0.69444,0.025,0,0.66667],"90":[0,0.69444,0,0,0.61111],"91":[0.25,0.75,0,0,0.28889],"93":[0.25,0.75,0,0,0.28889],"94":[0,0.69444,0,0,0.5],"95":[0.35,0.09444,0.02778,0,0.5],"97":[0,0.44444,0,0,0.48056],"98":[0,0.69444,0,0,0.51667],"99":[0,0.44444,0,0,0.44445],"100":[0,0.69444,0,0,0.51667],"101":[0,0.44444,0,0,0.44445],"102":[0,0.69444,0.06944,0,0.30556],"103":[0.19444,0.44444,0.01389,0,0.5],"104":[0,0.69444,0,0,0.51667],"105":[0,0.67937,0,0,0.23889],"106":[0.19444,0.67937,0,0,0.26667],"107":[0,0.69444,0,0,0.48889],"108":[0,0.69444,0,0,0.23889],"109":[0,0.44444,0,0,0.79445],"110":[0,0.44444,0,0,0.51667],"111":[0,0.44444,0,0,0.5],"112":[0.19444,0.44444,0,0,0.51667],"113":[0.19444,0.44444,0,0,0.51667],"114":[0,0.44444,0.01389,0,0.34167],"115":[0,0.44444,0,0,0.38333],"116":[0,0.57143,0,0,0.36111],"117":[0,0.44444,0,0,0.51667],"118":[0,0.44444,0.01389,0,0.46111],"119":[0,0.44444,0.01389,0,0.68334],"120":[0,0.44444,0,0,0.46111],"121":[0.19444,0.44444,0.01389,0,0.46111],"122":[0,0.44444,0,0,0.43472],"126":[0.35,0.32659,0,0,0.5],"160":[0,0,0,0,0.25],"168":[0,0.67937,0,0,0.5],"176":[0,0.69444,0,0,0.66667],"184":[0.17014,0,0,0,0.44445],"305":[0,0.44444,0,0,0.23889],"567":[0.19444,0.44444,0,0,0.26667],"710":[0,0.69444,0,0,0.5],"711":[0,0.63194,0,0,0.5],"713":[0,0.60889,0,0,0.5],"714":[0,0.69444,0,0,0.5],"715":[0,0.69444,0,0,0.5],"728":[0,0.69444,0,0,0.5],"729":[0,0.67937,0,0,0.27778],"730":[0,0.69444,0,0,0.66667],"732":[0,0.67659,0,0,0.5],"733":[0,0.69444,0,0,0.5],"915":[0,0.69444,0,0,0.54167],"916":[0,0.69444,0,0,0.83334],"920":[0,0.69444,0,0,0.77778],"923":[0,0.69444,0,0,0.61111],"926":[0,0.69444,0,0,0.66667],"928":[0,0.69444,0,0,0.70834],"931":[0,0.69444,0,0,0.72222],"933":[0,0.69444,0,0,0.77778],"934":[0,0.69444,0,0,0.72222],"936":[0,0.69444,0,0,0.77778],"937":[0,0.69444,0,0,0.72222],"8211":[0,0.44444,0.02778,0,0.5],"8212":[0,0.44444,0.02778,0,1],"8216":[0,0.69444,0,0,0.27778],"8217":[0,0.69444,0,0,0.27778],"8220":[0,0.69444,0,0,0.5],"8221":[0,0.69444,0,0,0.5]},"Script-Regular":{"32":[0,0,0,0,0.25],"65":[0,0.7,0.22925,0,0.80253],"66":[0,0.7,0.04087,0,0.90757],"67":[0,0.7,0.1689,0,0.66619],"68":[0,0.7,0.09371,0,0.77443],"69":[0,0.7,0.18583,0,0.56162],"70":[0,0.7,0.13634,0,0.89544],"71":[0,0.7,0.17322,0,0.60961],"72":[0,0.7,0.29694,0,0.96919],"73":[0,0.7,0.19189,0,0.80907],"74":[0.27778,0.7,0.19189,0,1.05159],"75":[0,0.7,0.31259,0,0.91364],"76":[0,0.7,0.19189,0,0.87373],"77":[0,0.7,0.15981,0,1.08031],"78":[0,0.7,0.3525,0,0.9015],"79":[0,0.7,0.08078,0,0.73787],"80":[0,0.7,0.08078,0,1.01262],"81":[0,0.7,0.03305,0,0.88282],"82":[0,0.7,0.06259,0,0.85],"83":[0,0.7,0.19189,0,0.86767],"84":[0,0.7,0.29087,0,0.74697],"85":[0,0.7,0.25815,0,0.79996],"86":[0,0.7,0.27523,0,0.62204],"87":[0,0.7,0.27523,0,0.80532],"88":[0,0.7,0.26006,0,0.94445],"89":[0,0.7,0.2939,0,0.70961],"90":[0,0.7,0.24037,0,0.8212],"160":[0,0,0,0,0.25]},"Size1-Regular":{"32":[0,0,0,0,0.25],"40":[0.35001,0.85,0,0,0.45834],"41":[0.35001,0.85,0,0,0.45834],"47":[0.35001,0.85,0,0,0.57778],"91":[0.35001,0.85,0,0,0.41667],"92":[0.35001,0.85,0,0,0.57778],"93":[0.35001,0.85,0,0,0.41667],"123":[0.35001,0.85,0,0,0.58334],"125":[0.35001,0.85,0,0,0.58334],"160":[0,0,0,0,0.25],"710":[0,0.72222,0,0,0.55556],"732":[0,0.72222,0,0,0.55556],"770":[0,0.72222,0,0,0.55556],"771":[0,0.72222,0,0,0.55556],"8214":[-0.00099,0.601,0,0,0.77778],"8593":[0.00001,0.6,0,0,0.66667],"8595":[0.00001,0.6,0,0,0.66667],"8657":[0.00001,0.6,0,0,0.77778],"8659":[0.00001,0.6,0,0,0.77778],"8719":[0.25001,0.75,0,0,0.94445],"8720":[0.25001,0.75,0,0,0.94445],"8721":[0.25001,0.75,0,0,1.05556],"8730":[0.35001,0.85,0,0,1],"8739":[-0.00599,0.606,0,0,0.33333],"8741":[-0.00599,0.606,0,0,0.55556],"8747":[0.30612,0.805,0.19445,0,0.47222],"8748":[0.306,0.805,0.19445,0,0.47222],"8749":[0.306,0.805,0.19445,0,0.47222],"8750":[0.30612,0.805,0.19445,0,0.47222],"8896":[0.25001,0.75,0,0,0.83334],"8897":[0.25001,0.75,0,0,0.83334],"8898":[0.25001,0.75,0,0,0.83334],"8899":[0.25001,0.75,0,0,0.83334],"8968":[0.35001,0.85,0,0,0.47222],"8969":[0.35001,0.85,0,0,0.47222],"8970":[0.35001,0.85,0,0,0.47222],"8971":[0.35001,0.85,0,0,0.47222],"9168":[-0.00099,0.601,0,0,0.66667],"10216":[0.35001,0.85,0,0,0.47222],"10217":[0.35001,0.85,0,0,0.47222],"10752":[0.25001,0.75,0,0,1.11111],"10753":[0.25001,0.75,0,0,1.11111],"10754":[0.25001,0.75,0,0,1.11111],"10756":[0.25001,0.75,0,0,0.83334],"10758":[0.25001,0.75,0,0,0.83334]},"Size2-Regular":{"32":[0,0,0,0,0.25],"40":[0.65002,1.15,0,0,0.59722],"41":[0.65002,1.15,0,0,0.59722],"47":[0.65002,1.15,0,0,0.81111],"91":[0.65002,1.15,0,0,0.47222],"92":[0.65002,1.15,0,0,0.81111],"93":[0.65002,1.15,0,0,0.47222],"123":[0.65002,1.15,0,0,0.66667],"125":[0.65002,1.15,0,0,0.66667],"160":[0,0,0,0,0.25],"710":[0,0.75,0,0,1],"732":[0,0.75,0,0,1],"770":[0,0.75,0,0,1],"771":[0,0.75,0,0,1],"8719":[0.55001,1.05,0,0,1.27778],"8720":[0.55001,1.05,0,0,1.27778],"8721":[0.55001,1.05,0,0,1.44445],"8730":[0.65002,1.15,0,0,1],"8747":[0.86225,1.36,0.44445,0,0.55556],"8748":[0.862,1.36,0.44445,0,0.55556],"8749":[0.862,1.36,0.44445,0,0.55556],"8750":[0.86225,1.36,0.44445,0,0.55556],"8896":[0.55001,1.05,0,0,1.11111],"8897":[0.55001,1.05,0,0,1.11111],"8898":[0.55001,1.05,0,0,1.11111],"8899":[0.55001,1.05,0,0,1.11111],"8968":[0.65002,1.15,0,0,0.52778],"8969":[0.65002,1.15,0,0,0.52778],"8970":[0.65002,1.15,0,0,0.52778],"8971":[0.65002,1.15,0,0,0.52778],"10216":[0.65002,1.15,0,0,0.61111],"10217":[0.65002,1.15,0,0,0.61111],"10752":[0.55001,1.05,0,0,1.51112],"10753":[0.55001,1.05,0,0,1.51112],"10754":[0.55001,1.05,0,0,1.51112],"10756":[0.55001,1.05,0,0,1.11111],"10758":[0.55001,1.05,0,0,1.11111]},"Size3-Regular":{"32":[0,0,0,0,0.25],"40":[0.95003,1.45,0,0,0.73611],"41":[0.95003,1.45,0,0,0.73611],"47":[0.95003,1.45,0,0,1.04445],"91":[0.95003,1.45,0,0,0.52778],"92":[0.95003,1.45,0,0,1.04445],"93":[0.95003,1.45,0,0,0.52778],"123":[0.95003,1.45,0,0,0.75],"125":[0.95003,1.45,0,0,0.75],"160":[0,0,0,0,0.25],"710":[0,0.75,0,0,1.44445],"732":[0,0.75,0,0,1.44445],"770":[0,0.75,0,0,1.44445],"771":[0,0.75,0,0,1.44445],"8730":[0.95003,1.45,0,0,1],"8968":[0.95003,1.45,0,0,0.58334],"8969":[0.95003,1.45,0,0,0.58334],"8970":[0.95003,1.45,0,0,0.58334],"8971":[0.95003,1.45,0,0,0.58334],"10216":[0.95003,1.45,0,0,0.75],"10217":[0.95003,1.45,0,0,0.75]},"Size4-Regular":{"32":[0,0,0,0,0.25],"40":[1.25003,1.75,0,0,0.79167],"41":[1.25003,1.75,0,0,0.79167],"47":[1.25003,1.75,0,0,1.27778],"91":[1.25003,1.75,0,0,0.58334],"92":[1.25003,1.75,0,0,1.27778],"93":[1.25003,1.75,0,0,0.58334],"123":[1.25003,1.75,0,0,0.80556],"125":[1.25003,1.75,0,0,0.80556],"160":[0,0,0,0,0.25],"710":[0,0.825,0,0,1.8889],"732":[0,0.825,0,0,1.8889],"770":[0,0.825,0,0,1.8889],"771":[0,0.825,0,0,1.8889],"8730":[1.25003,1.75,0,0,1],"8968":[1.25003,1.75,0,0,0.63889],"8969":[1.25003,1.75,0,0,0.63889],"8970":[1.25003,1.75,0,0,0.63889],"8971":[1.25003,1.75,0,0,0.63889],"9115":[0.64502,1.155,0,0,0.875],"9116":[0.00001,0.6,0,0,0.875],"9117":[0.64502,1.155,0,0,0.875],"9118":[0.64502,1.155,0,0,0.875],"9119":[0.00001,0.6,0,0,0.875],"9120":[0.64502,1.155,0,0,0.875],"9121":[0.64502,1.155,0,0,0.66667],"9122":[-0.00099,0.601,0,0,0.66667],"9123":[0.64502,1.155,0,0,0.66667],"9124":[0.64502,1.155,0,0,0.66667],"9125":[-0.00099,0.601,0,0,0.66667],"9126":[0.64502,1.155,0,0,0.66667],"9127":[0.00001,0.9,0,0,0.88889],"9128":[0.65002,1.15,0,0,0.88889],"9129":[0.90001,0,0,0,0.88889],"9130":[0,0.3,0,0,0.88889],"9131":[0.00001,0.9,0,0,0.88889],"9132":[0.65002,1.15,0,0,0.88889],"9133":[0.90001,0,0,0,0.88889],"9143":[0.88502,0.915,0,0,1.05556],"10216":[1.25003,1.75,0,0,0.80556],"10217":[1.25003,1.75,0,0,0.80556],"57344":[-0.00499,0.605,0,0,1.05556],"57345":[-0.00499,0.605,0,0,1.05556],"57680":[0,0.12,0,0,0.45],"57681":[0,0.12,0,0,0.45],"57682":[0,0.12,0,0,0.45],"57683":[0,0.12,0,0,0.45]},"Typewriter-Regular":{"32":[0,0,0,0,0.525],"33":[0,0.61111,0,0,0.525],"34":[0,0.61111,0,0,0.525],"35":[0,0.61111,0,0,0.525],"36":[0.08333,0.69444,0,0,0.525],"37":[0.08333,0.69444,0,0,0.525],"38":[0,0.61111,0,0,0.525],"39":[0,0.61111,0,0,0.525],"40":[0.08333,0.69444,0,0,0.525],"41":[0.08333,0.69444,0,0,0.525],"42":[0,0.52083,0,0,0.525],"43":[-0.08056,0.53055,0,0,0.525],"44":[0.13889,0.125,0,0,0.525],"45":[-0.08056,0.53055,0,0,0.525],"46":[0,0.125,0,0,0.525],"47":[0.08333,0.69444,0,0,0.525],"48":[0,0.61111,0,0,0.525],"49":[0,0.61111,0,0,0.525],"50":[0,0.61111,0,0,0.525],"51":[0,0.61111,0,0,0.525],"52":[0,0.61111,0,0,0.525],"53":[0,0.61111,0,0,0.525],"54":[0,0.61111,0,0,0.525],"55":[0,0.61111,0,0,0.525],"56":[0,0.61111,0,0,0.525],"57":[0,0.61111,0,0,0.525],"58":[0,0.43056,0,0,0.525],"59":[0.13889,0.43056,0,0,0.525],"60":[-0.05556,0.55556,0,0,0.525],"61":[-0.19549,0.41562,0,0,0.525],"62":[-0.05556,0.55556,0,0,0.525],"63":[0,0.61111,0,0,0.525],"64":[0,0.61111,0,0,0.525],"65":[0,0.61111,0,0,0.525],"66":[0,0.61111,0,0,0.525],"67":[0,0.61111,0,0,0.525],"68":[0,0.61111,0,0,0.525],"69":[0,0.61111,0,0,0.525],"70":[0,0.61111,0,0,0.525],"71":[0,0.61111,0,0,0.525],"72":[0,0.61111,0,0,0.525],"73":[0,0.61111,0,0,0.525],"74":[0,0.61111,0,0,0.525],"75":[0,0.61111,0,0,0.525],"76":[0,0.61111,0,0,0.525],"77":[0,0.61111,0,0,0.525],"78":[0,0.61111,0,0,0.525],"79":[0,0.61111,0,0,0.525],"80":[0,0.61111,0,0,0.525],"81":[0.13889,0.61111,0,0,0.525],"82":[0,0.61111,0,0,0.525],"83":[0,0.61111,0,0,0.525],"84":[0,0.61111,0,0,0.525],"85":[0,0.61111,0,0,0.525],"86":[0,0.61111,0,0,0.525],"87":[0,0.61111,0,0,0.525],"88":[0,0.61111,0,0,0.525],"89":[0,0.61111,0,0,0.525],"90":[0,0.61111,0,0,0.525],"91":[0.08333,0.69444,0,0,0.525],"92":[0.08333,0.69444,0,0,0.525],"93":[0.08333,0.69444,0,0,0.525],"94":[0,0.61111,0,0,0.525],"95":[0.09514,0,0,0,0.525],"96":[0,0.61111,0,0,0.525],"97":[0,0.43056,0,0,0.525],"98":[0,0.61111,0,0,0.525],"99":[0,0.43056,0,0,0.525],"100":[0,0.61111,0,0,0.525],"101":[0,0.43056,0,0,0.525],"102":[0,0.61111,0,0,0.525],"103":[0.22222,0.43056,0,0,0.525],"104":[0,0.61111,0,0,0.525],"105":[0,0.61111,0,0,0.525],"106":[0.22222,0.61111,0,0,0.525],"107":[0,0.61111,0,0,0.525],"108":[0,0.61111,0,0,0.525],"109":[0,0.43056,0,0,0.525],"110":[0,0.43056,0,0,0.525],"111":[0,0.43056,0,0,0.525],"112":[0.22222,0.43056,0,0,0.525],"113":[0.22222,0.43056,0,0,0.525],"114":[0,0.43056,0,0,0.525],"115":[0,0.43056,0,0,0.525],"116":[0,0.55358,0,0,0.525],"117":[0,0.43056,0,0,0.525],"118":[0,0.43056,0,0,0.525],"119":[0,0.43056,0,0,0.525],"120":[0,0.43056,0,0,0.525],"121":[0.22222,0.43056,0,0,0.525],"122":[0,0.43056,0,0,0.525],"123":[0.08333,0.69444,0,0,0.525],"124":[0.08333,0.69444,0,0,0.525],"125":[0.08333,0.69444,0,0,0.525],"126":[0,0.61111,0,0,0.525],"127":[0,0.61111,0,0,0.525],"160":[0,0,0,0,0.525],"176":[0,0.61111,0,0,0.525],"184":[0.19445,0,0,0,0.525],"305":[0,0.43056,0,0,0.525],"567":[0.22222,0.43056,0,0,0.525],"711":[0,0.56597,0,0,0.525],"713":[0,0.56555,0,0,0.525],"714":[0,0.61111,0,0,0.525],"715":[0,0.61111,0,0,0.525],"728":[0,0.61111,0,0,0.525],"730":[0,0.61111,0,0,0.525],"770":[0,0.61111,0,0,0.525],"771":[0,0.61111,0,0,0.525],"776":[0,0.61111,0,0,0.525],"915":[0,0.61111,0,0,0.525],"916":[0,0.61111,0,0,0.525],"920":[0,0.61111,0,0,0.525],"923":[0,0.61111,0,0,0.525],"926":[0,0.61111,0,0,0.525],"928":[0,0.61111,0,0,0.525],"931":[0,0.61111,0,0,0.525],"933":[0,0.61111,0,0,0.525],"934":[0,0.61111,0,0,0.525],"936":[0,0.61111,0,0,0.525],"937":[0,0.61111,0,0,0.525],"8216":[0,0.61111,0,0,0.525],"8217":[0,0.61111,0,0,0.525],"8242":[0,0.61111,0,0,0.525],"9251":[0.11111,0.21944,0,0,0.525]}},rR={slant:[0.25,0.25,0.25],space:[0,0,0],stretch:[0,0,0],shrink:[0,0,0],xHeight:[0.431,0.431,0.431],quad:[1,1.171,1.472],extraSpace:[0,0,0],num1:[0.677,0.732,0.925],num2:[0.394,0.384,0.387],num3:[0.444,0.471,0.504],denom1:[0.686,0.752,1.025],denom2:[0.345,0.344,0.532],sup1:[0.413,0.503,0.504],sup2:[0.363,0.431,0.404],sup3:[0.289,0.286,0.294],sub1:[0.15,0.143,0.2],sub2:[0.247,0.286,0.4],supDrop:[0.386,0.353,0.494],subDrop:[0.05,0.071,0.1],delim1:[2.39,1.7,1.98],delim2:[1.01,1.157,1.42],axisHeight:[0.25,0.25,0.25],defaultRuleThickness:[0.04,0.049,0.049],bigOpSpacing1:[0.111,0.111,0.111],bigOpSpacing2:[0.166,0.166,0.166],bigOpSpacing3:[0.2,0.2,0.2],bigOpSpacing4:[0.6,0.611,0.611],bigOpSpacing5:[0.1,0.143,0.143],sqrtRuleThickness:[0.04,0.04,0.04],ptPerEm:[10,10,10],doubleRuleSep:[0.2,0.2,0.2],arrayRuleWidth:[0.04,0.04,0.04],fboxsep:[0.3,0.3,0.3],fboxrule:[0.04,0.04,0.04]},m2A={"Å":"A","Ð":"D","Þ":"o","å":"a","ð":"d","þ":"o","А":"A","Б":"B","В":"B","Г":"F","Д":"A","Е":"E","Ж":"K","З":"3","И":"N","Й":"N","К":"K","Л":"N","М":"M","Н":"H","О":"O","П":"N","Р":"P","С":"C","Т":"T","У":"y","Ф":"O","Х":"X","Ц":"U","Ч":"h","Ш":"W","Щ":"W","Ъ":"B","Ы":"X","Ь":"B","Э":"3","Ю":"X","Я":"R","а":"a","б":"b","в":"a","г":"r","д":"y","е":"e","ж":"m","з":"e","и":"n","й":"n","к":"n","л":"n","м":"m","н":"n","о":"o","п":"n","р":"p","с":"c","т":"o","у":"y","ф":"b","х":"x","ц":"n","ч":"n","ш":"w","щ":"w","ъ":"a","ы":"m","ь":"a","э":"e","ю":"m","я":"r"};zZ={};Ca={math:{},text:{}};V(iA,pA,XA,"≡","\\equiv",!0);V(iA,pA,XA,"≺","\\prec",!0);V(iA,pA,XA,"≻","\\succ",!0);V(iA,pA,XA,"∼","\\sim",!0);V(iA,pA,XA,"⊥","\\perp");V(iA,pA,XA,"⪯","\\preceq",!0);V(iA,pA,XA,"⪰","\\succeq",!0);V(iA,pA,XA,"≃","\\simeq",!0);V(iA,pA,XA,"∣","\\mid",!0);V(iA,pA,XA,"≪","\\ll",!0);V(iA,pA,XA,"≫","\\gg",!0);V(iA,pA,XA,"≍","\\asymp",!0);V(iA,pA,XA,"∥","\\parallel");V(iA,pA,XA,"⋈","\\bowtie",!0);V(iA,pA,XA,"⌣","\\smile",!0);V(iA,pA,XA,"⊑","\\sqsubseteq",!0);V(iA,pA,XA,"⊒","\\sqsupseteq",!0);V(iA,pA,XA,"≐","\\doteq",!0);V(iA,pA,XA,"⌢","\\frown",!0);V(iA,pA,XA,"∋","\\ni",!0);V(iA,pA,XA,"∝","\\propto",!0);V(iA,pA,XA,"⊢","\\vdash",!0);V(iA,pA,XA,"⊣","\\dashv",!0);V(iA,pA,XA,"∋","\\owns");V(iA,pA,sb,".","\\ldotp");V(iA,pA,sb,"⋅","\\cdotp");V(iA,pA,sb,"⋅","·");V(Ve,pA,re,"⋅","·");V(iA,pA,re,"#","\\#");V(Ve,pA,re,"#","\\#");V(iA,pA,re,"&","\\&");V(Ve,pA,re,"&","\\&");V(iA,pA,re,"ℵ","\\aleph",!0);V(iA,pA,re,"∀","\\forall",!0);V(iA,pA,re,"ℏ","\\hbar",!0);V(iA,pA,re,"∃","\\exists",!0);V(iA,pA,re,"∇","\\nabla",!0);V(iA,pA,re,"♭","\\flat",!0);V(iA,pA,re,"ℓ","\\ell",!0);V(iA,pA,re,"♮","\\natural",!0);V(iA,pA,re,"♣","\\clubsuit",!0);V(iA,pA,re,"℘","\\wp",!0);V(iA,pA,re,"♯","\\sharp",!0);V(iA,pA,re,"♢","\\diamondsuit",!0);V(iA,pA,re,"ℜ","\\Re",!0);V(iA,pA,re,"♡","\\heartsuit",!0);V(iA,pA,re,"ℑ","\\Im",!0);V(iA,pA,re,"♠","\\spadesuit",!0);V(iA,pA,re,"§","\\S",!0);V(Ve,pA,re,"§","\\S");V(iA,pA,re,"¶","\\P",!0);V(Ve,pA,re,"¶","\\P");V(iA,pA,re,"†","\\dag");V(Ve,pA,re,"†","\\dag");V(Ve,pA,re,"†","\\textdagger");V(iA,pA,re,"‡","\\ddag");V(Ve,pA,re,"‡","\\ddag");V(Ve,pA,re,"‡","\\textdaggerdbl");V(iA,pA,ss,"⎱","\\rmoustache",!0);V(iA,pA,Zl,"⎰","\\lmoustache",!0);V(iA,pA,ss,"⟯","\\rgroup",!0);V(iA,pA,Zl,"⟮","\\lgroup",!0);V(iA,pA,xt,"∓","\\mp",!0);V(iA,pA,xt,"⊖","\\ominus",!0);V(iA,pA,xt,"⊎","\\uplus",!0);V(iA,pA,xt,"⊓","\\sqcap",!0);V(iA,pA,xt,"∗","\\ast");V(iA,pA,xt,"⊔","\\sqcup",!0);V(iA,pA,xt,"◯","\\bigcirc",!0);V(iA,pA,xt,"∙","\\bullet",!0);V(iA,pA,xt,"‡","\\ddagger");V(iA,pA,xt,"≀","\\wr",!0);V(iA,pA,xt,"⨿","\\amalg");V(iA,pA,xt,"&","\\And");V(iA,pA,XA,"⟵","\\longleftarrow",!0);V(iA,pA,XA,"⇐","\\Leftarrow",!0);V(iA,pA,XA,"⟸","\\Longleftarrow",!0);V(iA,pA,XA,"⟶","\\longrightarrow",!0);V(iA,pA,XA,"⇒","\\Rightarrow",!0);V(iA,pA,XA,"⟹","\\Longrightarrow",!0);V(iA,pA,XA,"↔","\\leftrightarrow",!0);V(iA,pA,XA,"⟷","\\longleftrightarrow",!0);V(iA,pA,XA,"⇔","\\Leftrightarrow",!0);V(iA,pA,XA,"⟺","\\Longleftrightarrow",!0);V(iA,pA,XA,"↦","\\mapsto",!0);V(iA,pA,XA,"⟼","\\longmapsto",!0);V(iA,pA,XA,"↗","\\nearrow",!0);V(iA,pA,XA,"↩","\\hookleftarrow",!0);V(iA,pA,XA,"↪","\\hookrightarrow",!0);V(iA,pA,XA,"↘","\\searrow",!0);V(iA,pA,XA,"↼","\\leftharpoonup",!0);V(iA,pA,XA,"⇀","\\rightharpoonup",!0);V(iA,pA,XA,"↙","\\swarrow",!0);V(iA,pA,XA,"↽","\\leftharpoondown",!0);V(iA,pA,XA,"⇁","\\rightharpoondown",!0);V(iA,pA,XA,"↖","\\nwarrow",!0);V(iA,pA,XA,"⇌","\\rightleftharpoons",!0);V(iA,VA,XA,"≮","\\nless",!0);V(iA,VA,XA,"","\\@nleqslant");V(iA,VA,XA,"","\\@nleqq");V(iA,VA,XA,"⪇","\\lneq",!0);V(iA,VA,XA,"≨","\\lneqq",!0);V(iA,VA,XA,"","\\@lvertneqq");V(iA,VA,XA,"⋦","\\lnsim",!0);V(iA,VA,XA,"⪉","\\lnapprox",!0);V(iA,VA,XA,"⊀","\\nprec",!0);V(iA,VA,XA,"⋠","\\npreceq",!0);V(iA,VA,XA,"⋨","\\precnsim",!0);V(iA,VA,XA,"⪹","\\precnapprox",!0);V(iA,VA,XA,"≁","\\nsim",!0);V(iA,VA,XA,"","\\@nshortmid");V(iA,VA,XA,"∤","\\nmid",!0);V(iA,VA,XA,"⊬","\\nvdash",!0);V(iA,VA,XA,"⊭","\\nvDash",!0);V(iA,VA,XA,"⋪","\\ntriangleleft");V(iA,VA,XA,"⋬","\\ntrianglelefteq",!0);V(iA,VA,XA,"⊊","\\subsetneq",!0);V(iA,VA,XA,"","\\@varsubsetneq");V(iA,VA,XA,"⫋","\\subsetneqq",!0);V(iA,VA,XA,"","\\@varsubsetneqq");V(iA,VA,XA,"≯","\\ngtr",!0);V(iA,VA,XA,"","\\@ngeqslant");V(iA,VA,XA,"","\\@ngeqq");V(iA,VA,XA,"⪈","\\gneq",!0);V(iA,VA,XA,"≩","\\gneqq",!0);V(iA,VA,XA,"","\\@gvertneqq");V(iA,VA,XA,"⋧","\\gnsim",!0);V(iA,VA,XA,"⪊","\\gnapprox",!0);V(iA,VA,XA,"⊁","\\nsucc",!0);V(iA,VA,XA,"⋡","\\nsucceq",!0);V(iA,VA,XA,"⋩","\\succnsim",!0);V(iA,VA,XA,"⪺","\\succnapprox",!0);V(iA,VA,XA,"≆","\\ncong",!0);V(iA,VA,XA,"","\\@nshortparallel");V(iA,VA,XA,"∦","\\nparallel",!0);V(iA,VA,XA,"⊯","\\nVDash",!0);V(iA,VA,XA,"⋫","\\ntriangleright");V(iA,VA,XA,"⋭","\\ntrianglerighteq",!0);V(iA,VA,XA,"","\\@nsupseteqq");V(iA,VA,XA,"⊋","\\supsetneq",!0);V(iA,VA,XA,"","\\@varsupsetneq");V(iA,VA,XA,"⫌","\\supsetneqq",!0);V(iA,VA,XA,"","\\@varsupsetneqq");V(iA,VA,XA,"⊮","\\nVdash",!0);V(iA,VA,XA,"⪵","\\precneqq",!0);V(iA,VA,XA,"⪶","\\succneqq",!0);V(iA,VA,XA,"","\\@nsubseteqq");V(iA,VA,xt,"⊴","\\unlhd");V(iA,VA,xt,"⊵","\\unrhd");V(iA,VA,XA,"↚","\\nleftarrow",!0);V(iA,VA,XA,"↛","\\nrightarrow",!0);V(iA,VA,XA,"⇍","\\nLeftarrow",!0);V(iA,VA,XA,"⇏","\\nRightarrow",!0);V(iA,VA,XA,"↮","\\nleftrightarrow",!0);V(iA,VA,XA,"⇎","\\nLeftrightarrow",!0);V(iA,VA,XA,"△","\\vartriangle");V(iA,VA,re,"ℏ","\\hslash");V(iA,VA,re,"▽","\\triangledown");V(iA,VA,re,"◊","\\lozenge");V(iA,VA,re,"Ⓢ","\\circledS");V(iA,VA,re,"®","\\circledR");V(Ve,VA,re,"®","\\circledR");V(iA,VA,re,"∡","\\measuredangle",!0);V(iA,VA,re,"∄","\\nexists");V(iA,VA,re,"℧","\\mho");V(iA,VA,re,"Ⅎ","\\Finv",!0);V(iA,VA,re,"⅁","\\Game",!0);V(iA,VA,re,"‵","\\backprime");V(iA,VA,re,"▲","\\blacktriangle");V(iA,VA,re,"▼","\\blacktriangledown");V(iA,VA,re,"■","\\blacksquare");V(iA,VA,re,"⧫","\\blacklozenge");V(iA,VA,re,"★","\\bigstar");V(iA,VA,re,"∢","\\sphericalangle",!0);V(iA,VA,re,"∁","\\complement",!0);V(iA,VA,re,"ð","\\eth",!0);V(Ve,pA,re,"ð","ð");V(iA,VA,re,"╱","\\diagup");V(iA,VA,re,"╲","\\diagdown");V(iA,VA,re,"□","\\square");V(iA,VA,re,"□","\\Box");V(iA,VA,re,"◊","\\Diamond");V(iA,VA,re,"¥","\\yen",!0);V(Ve,VA,re,"¥","\\yen",!0);V(iA,VA,re,"✓","\\checkmark",!0);V(Ve,VA,re,"✓","\\checkmark");V(iA,VA,re,"ℶ","\\beth",!0);V(iA,VA,re,"ℸ","\\daleth",!0);V(iA,VA,re,"ℷ","\\gimel",!0);V(iA,VA,re,"ϝ","\\digamma",!0);V(iA,VA,re,"ϰ","\\varkappa");V(iA,VA,Zl,"┌","\\@ulcorner",!0);V(iA,VA,ss,"┐","\\@urcorner",!0);V(iA,VA,Zl,"└","\\@llcorner",!0);V(iA,VA,ss,"┘","\\@lrcorner",!0);V(iA,VA,XA,"≦","\\leqq",!0);V(iA,VA,XA,"⩽","\\leqslant",!0);V(iA,VA,XA,"⪕","\\eqslantless",!0);V(iA,VA,XA,"≲","\\lesssim",!0);V(iA,VA,XA,"⪅","\\lessapprox",!0);V(iA,VA,XA,"≊","\\approxeq",!0);V(iA,VA,xt,"⋖","\\lessdot");V(iA,VA,XA,"⋘","\\lll",!0);V(iA,VA,XA,"≶","\\lessgtr",!0);V(iA,VA,XA,"⋚","\\lesseqgtr",!0);V(iA,VA,XA,"⪋","\\lesseqqgtr",!0);V(iA,VA,XA,"≑","\\doteqdot");V(iA,VA,XA,"≓","\\risingdotseq",!0);V(iA,VA,XA,"≒","\\fallingdotseq",!0);V(iA,VA,XA,"∽","\\backsim",!0);V(iA,VA,XA,"⋍","\\backsimeq",!0);V(iA,VA,XA,"⫅","\\subseteqq",!0);V(iA,VA,XA,"⋐","\\Subset",!0);V(iA,VA,XA,"⊏","\\sqsubset",!0);V(iA,VA,XA,"≼","\\preccurlyeq",!0);V(iA,VA,XA,"⋞","\\curlyeqprec",!0);V(iA,VA,XA,"≾","\\precsim",!0);V(iA,VA,XA,"⪷","\\precapprox",!0);V(iA,VA,XA,"⊲","\\vartriangleleft");V(iA,VA,XA,"⊴","\\trianglelefteq");V(iA,VA,XA,"⊨","\\vDash",!0);V(iA,VA,XA,"⊪","\\Vvdash",!0);V(iA,VA,XA,"⌣","\\smallsmile");V(iA,VA,XA,"⌢","\\smallfrown");V(iA,VA,XA,"≏","\\bumpeq",!0);V(iA,VA,XA,"≎","\\Bumpeq",!0);V(iA,VA,XA,"≧","\\geqq",!0);V(iA,VA,XA,"⩾","\\geqslant",!0);V(iA,VA,XA,"⪖","\\eqslantgtr",!0);V(iA,VA,XA,"≳","\\gtrsim",!0);V(iA,VA,XA,"⪆","\\gtrapprox",!0);V(iA,VA,xt,"⋗","\\gtrdot");V(iA,VA,XA,"⋙","\\ggg",!0);V(iA,VA,XA,"≷","\\gtrless",!0);V(iA,VA,XA,"⋛","\\gtreqless",!0);V(iA,VA,XA,"⪌","\\gtreqqless",!0);V(iA,VA,XA,"≖","\\eqcirc",!0);V(iA,VA,XA,"≗","\\circeq",!0);V(iA,VA,XA,"≜","\\triangleq",!0);V(iA,VA,XA,"∼","\\thicksim");V(iA,VA,XA,"≈","\\thickapprox");V(iA,VA,XA,"⫆","\\supseteqq",!0);V(iA,VA,XA,"⋑","\\Supset",!0);V(iA,VA,XA,"⊐","\\sqsupset",!0);V(iA,VA,XA,"≽","\\succcurlyeq",!0);V(iA,VA,XA,"⋟","\\curlyeqsucc",!0);V(iA,VA,XA,"≿","\\succsim",!0);V(iA,VA,XA,"⪸","\\succapprox",!0);V(iA,VA,XA,"⊳","\\vartriangleright");V(iA,VA,XA,"⊵","\\trianglerighteq");V(iA,VA,XA,"⊩","\\Vdash",!0);V(iA,VA,XA,"∣","\\shortmid");V(iA,VA,XA,"∥","\\shortparallel");V(iA,VA,XA,"≬","\\between",!0);V(iA,VA,XA,"⋔","\\pitchfork",!0);V(iA,VA,XA,"∝","\\varpropto");V(iA,VA,XA,"◀","\\blacktriangleleft");V(iA,VA,XA,"∴","\\therefore",!0);V(iA,VA,XA,"∍","\\backepsilon");V(iA,VA,XA,"▶","\\blacktriangleright");V(iA,VA,XA,"∵","\\because",!0);V(iA,VA,XA,"⋘","\\llless");V(iA,VA,XA,"⋙","\\gggtr");V(iA,VA,xt,"⊲","\\lhd");V(iA,VA,xt,"⊳","\\rhd");V(iA,VA,XA,"≂","\\eqsim",!0);V(iA,pA,XA,"⋈","\\Join");V(iA,VA,XA,"≑","\\Doteq",!0);V(iA,VA,xt,"∔","\\dotplus",!0);V(iA,VA,xt,"∖","\\smallsetminus");V(iA,VA,xt,"⋒","\\Cap",!0);V(iA,VA,xt,"⋓","\\Cup",!0);V(iA,VA,xt,"⩞","\\doublebarwedge",!0);V(iA,VA,xt,"⊟","\\boxminus",!0);V(iA,VA,xt,"⊞","\\boxplus",!0);V(iA,VA,xt,"⋇","\\divideontimes",!0);V(iA,VA,xt,"⋉","\\ltimes",!0);V(iA,VA,xt,"⋊","\\rtimes",!0);V(iA,VA,xt,"⋋","\\leftthreetimes",!0);V(iA,VA,xt,"⋌","\\rightthreetimes",!0);V(iA,VA,xt,"⋏","\\curlywedge",!0);V(iA,VA,xt,"⋎","\\curlyvee",!0);V(iA,VA,xt,"⊝","\\circleddash",!0);V(iA,VA,xt,"⊛","\\circledast",!0);V(iA,VA,xt,"⋅","\\centerdot");V(iA,VA,xt,"⊺","\\intercal",!0);V(iA,VA,xt,"⋒","\\doublecap");V(iA,VA,xt,"⋓","\\doublecup");V(iA,VA,xt,"⊠","\\boxtimes",!0);V(iA,VA,XA,"⇢","\\dashrightarrow",!0);V(iA,VA,XA,"⇠","\\dashleftarrow",!0);V(iA,VA,XA,"⇇","\\leftleftarrows",!0);V(iA,VA,XA,"⇆","\\leftrightarrows",!0);V(iA,VA,XA,"⇚","\\Lleftarrow",!0);V(iA,VA,XA,"↞","\\twoheadleftarrow",!0);V(iA,VA,XA,"↢","\\leftarrowtail",!0);V(iA,VA,XA,"↫","\\looparrowleft",!0);V(iA,VA,XA,"⇋","\\leftrightharpoons",!0);V(iA,VA,XA,"↶","\\curvearrowleft",!0);V(iA,VA,XA,"↺","\\circlearrowleft",!0);V(iA,VA,XA,"↰","\\Lsh",!0);V(iA,VA,XA,"⇈","\\upuparrows",!0);V(iA,VA,XA,"↿","\\upharpoonleft",!0);V(iA,VA,XA,"⇃","\\downharpoonleft",!0);V(iA,pA,XA,"⊶","\\origof",!0);V(iA,pA,XA,"⊷","\\imageof",!0);V(iA,VA,XA,"⊸","\\multimap",!0);V(iA,VA,XA,"↭","\\leftrightsquigarrow",!0);V(iA,VA,XA,"⇉","\\rightrightarrows",!0);V(iA,VA,XA,"⇄","\\rightleftarrows",!0);V(iA,VA,XA,"↠","\\twoheadrightarrow",!0);V(iA,VA,XA,"↣","\\rightarrowtail",!0);V(iA,VA,XA,"↬","\\looparrowright",!0);V(iA,VA,XA,"↷","\\curvearrowright",!0);V(iA,VA,XA,"↻","\\circlearrowright",!0);V(iA,VA,XA,"↱","\\Rsh",!0);V(iA,VA,XA,"⇊","\\downdownarrows",!0);V(iA,VA,XA,"↾","\\upharpoonright",!0);V(iA,VA,XA,"⇂","\\downharpoonright",!0);V(iA,VA,XA,"⇝","\\rightsquigarrow",!0);V(iA,VA,XA,"⇝","\\leadsto");V(iA,VA,XA,"⇛","\\Rrightarrow",!0);V(iA,VA,XA,"↾","\\restriction");V(iA,pA,re,"‘","`");V(iA,pA,re,"$","\\$");V(Ve,pA,re,"$","\\$");V(Ve,pA,re,"$","\\textdollar");V(iA,pA,re,"%","\\%");V(Ve,pA,re,"%","\\%");V(iA,pA,re,"_","\\_");V(Ve,pA,re,"_","\\_");V(Ve,pA,re,"_","\\textunderscore");V(iA,pA,re,"∠","\\angle",!0);V(iA,pA,re,"∞","\\infty",!0);V(iA,pA,re,"′","\\prime");V(iA,pA,re,"△","\\triangle");V(iA,pA,re,"Γ","\\Gamma",!0);V(iA,pA,re,"Δ","\\Delta",!0);V(iA,pA,re,"Θ","\\Theta",!0);V(iA,pA,re,"Λ","\\Lambda",!0);V(iA,pA,re,"Ξ","\\Xi",!0);V(iA,pA,re,"Π","\\Pi",!0);V(iA,pA,re,"Σ","\\Sigma",!0);V(iA,pA,re,"Υ","\\Upsilon",!0);V(iA,pA,re,"Φ","\\Phi",!0);V(iA,pA,re,"Ψ","\\Psi",!0);V(iA,pA,re,"Ω","\\Omega",!0);V(iA,pA,re,"A","Α");V(iA,pA,re,"B","Β");V(iA,pA,re,"E","Ε");V(iA,pA,re,"Z","Ζ");V(iA,pA,re,"H","Η");V(iA,pA,re,"I","Ι");V(iA,pA,re,"K","Κ");V(iA,pA,re,"M","Μ");V(iA,pA,re,"N","Ν");V(iA,pA,re,"O","Ο");V(iA,pA,re,"P","Ρ");V(iA,pA,re,"T","Τ");V(iA,pA,re,"X","Χ");V(iA,pA,re,"¬","\\neg",!0);V(iA,pA,re,"¬","\\lnot");V(iA,pA,re,"⊤","\\top");V(iA,pA,re,"⊥","\\bot");V(iA,pA,re,"∅","\\emptyset");V(iA,VA,re,"∅","\\varnothing");V(iA,pA,Br,"α","\\alpha",!0);V(iA,pA,Br,"β","\\beta",!0);V(iA,pA,Br,"γ","\\gamma",!0);V(iA,pA,Br,"δ","\\delta",!0);V(iA,pA,Br,"ϵ","\\epsilon",!0);V(iA,pA,Br,"ζ","\\zeta",!0);V(iA,pA,Br,"η","\\eta",!0);V(iA,pA,Br,"θ","\\theta",!0);V(iA,pA,Br,"ι","\\iota",!0);V(iA,pA,Br,"κ","\\kappa",!0);V(iA,pA,Br,"λ","\\lambda",!0);V(iA,pA,Br,"μ","\\mu",!0);V(iA,pA,Br,"ν","\\nu",!0);V(iA,pA,Br,"ξ","\\xi",!0);V(iA,pA,Br,"ο","\\omicron",!0);V(iA,pA,Br,"π","\\pi",!0);V(iA,pA,Br,"ρ","\\rho",!0);V(iA,pA,Br,"σ","\\sigma",!0);V(iA,pA,Br,"τ","\\tau",!0);V(iA,pA,Br,"υ","\\upsilon",!0);V(iA,pA,Br,"ϕ","\\phi",!0);V(iA,pA,Br,"χ","\\chi",!0);V(iA,pA,Br,"ψ","\\psi",!0);V(iA,pA,Br,"ω","\\omega",!0);V(iA,pA,Br,"ε","\\varepsilon",!0);V(iA,pA,Br,"ϑ","\\vartheta",!0);V(iA,pA,Br,"ϖ","\\varpi",!0);V(iA,pA,Br,"ϱ","\\varrho",!0);V(iA,pA,Br,"ς","\\varsigma",!0);V(iA,pA,Br,"φ","\\varphi",!0);V(iA,pA,xt,"∗","*",!0);V(iA,pA,xt,"+","+");V(iA,pA,xt,"−","-",!0);V(iA,pA,xt,"⋅","\\cdot",!0);V(iA,pA,xt,"∘","\\circ",!0);V(iA,pA,xt,"÷","\\div",!0);V(iA,pA,xt,"±","\\pm",!0);V(iA,pA,xt,"×","\\times",!0);V(iA,pA,xt,"∩","\\cap",!0);V(iA,pA,xt,"∪","\\cup",!0);V(iA,pA,xt,"∖","\\setminus",!0);V(iA,pA,xt,"∧","\\land");V(iA,pA,xt,"∨","\\lor");V(iA,pA,xt,"∧","\\wedge",!0);V(iA,pA,xt,"∨","\\vee",!0);V(iA,pA,re,"√","\\surd");V(iA,pA,Zl,"⟨","\\langle",!0);V(iA,pA,Zl,"∣","\\lvert");V(iA,pA,Zl,"∥","\\lVert");V(iA,pA,ss,"?","?");V(iA,pA,ss,"!","!");V(iA,pA,ss,"⟩","\\rangle",!0);V(iA,pA,ss,"∣","\\rvert");V(iA,pA,ss,"∥","\\rVert");V(iA,pA,XA,"=","=");V(iA,pA,XA,":",":");V(iA,pA,XA,"≈","\\approx",!0);V(iA,pA,XA,"≅","\\cong",!0);V(iA,pA,XA,"≥","\\ge");V(iA,pA,XA,"≥","\\geq",!0);V(iA,pA,XA,"←","\\gets");V(iA,pA,XA,">","\\gt",!0);V(iA,pA,XA,"∈","\\in",!0);V(iA,pA,XA,"","\\@not");V(iA,pA,XA,"⊂","\\subset",!0);V(iA,pA,XA,"⊃","\\supset",!0);V(iA,pA,XA,"⊆","\\subseteq",!0);V(iA,pA,XA,"⊇","\\supseteq",!0);V(iA,VA,XA,"⊈","\\nsubseteq",!0);V(iA,VA,XA,"⊉","\\nsupseteq",!0);V(iA,pA,XA,"⊨","\\models");V(iA,pA,XA,"←","\\leftarrow",!0);V(iA,pA,XA,"≤","\\le");V(iA,pA,XA,"≤","\\leq",!0);V(iA,pA,XA,"<","\\lt",!0);V(iA,pA,XA,"→","\\rightarrow",!0);V(iA,pA,XA,"→","\\to");V(iA,VA,XA,"≱","\\ngeq",!0);V(iA,VA,XA,"≰","\\nleq",!0);V(iA,pA,jd," ","\\ ");V(iA,pA,jd," ","\\space");V(iA,pA,jd," ","\\nobreakspace");V(Ve,pA,jd," ","\\ ");V(Ve,pA,jd," "," ");V(Ve,pA,jd," ","\\space");V(Ve,pA,jd," ","\\nobreakspace");V(iA,pA,jd,"","\\nobreak");V(iA,pA,jd,"","\\allowbreak");V(iA,pA,sb,",",",");V(iA,pA,sb,";",";");V(iA,VA,xt,"⊼","\\barwedge",!0);V(iA,VA,xt,"⊻","\\veebar",!0);V(iA,pA,xt,"⊙","\\odot",!0);V(iA,pA,xt,"⊕","\\oplus",!0);V(iA,pA,xt,"⊗","\\otimes",!0);V(iA,pA,re,"∂","\\partial",!0);V(iA,pA,xt,"⊘","\\oslash",!0);V(iA,VA,xt,"⊚","\\circledcirc",!0);V(iA,VA,xt,"⊡","\\boxdot",!0);V(iA,pA,xt,"△","\\bigtriangleup");V(iA,pA,xt,"▽","\\bigtriangledown");V(iA,pA,xt,"†","\\dagger");V(iA,pA,xt,"⋄","\\diamond");V(iA,pA,xt,"⋆","\\star");V(iA,pA,xt,"◃","\\triangleleft");V(iA,pA,xt,"▹","\\triangleright");V(iA,pA,Zl,"{","\\{");V(Ve,pA,re,"{","\\{");V(Ve,pA,re,"{","\\textbraceleft");V(iA,pA,ss,"}","\\}");V(Ve,pA,re,"}","\\}");V(Ve,pA,re,"}","\\textbraceright");V(iA,pA,Zl,"{","\\lbrace");V(iA,pA,ss,"}","\\rbrace");V(iA,pA,Zl,"[","\\lbrack",!0);V(Ve,pA,re,"[","\\lbrack",!0);V(iA,pA,ss,"]","\\rbrack",!0);V(Ve,pA,re,"]","\\rbrack",!0);V(iA,pA,Zl,"(","\\lparen",!0);V(iA,pA,ss,")","\\rparen",!0);V(Ve,pA,re,"<","\\textless",!0);V(Ve,pA,re,">","\\textgreater",!0);V(iA,pA,Zl,"⌊","\\lfloor",!0);V(iA,pA,ss,"⌋","\\rfloor",!0);V(iA,pA,Zl,"⌈","\\lceil",!0);V(iA,pA,ss,"⌉","\\rceil",!0);V(iA,pA,re,"\\","\\backslash");V(iA,pA,re,"∣","|");V(iA,pA,re,"∣","\\vert");V(Ve,pA,re,"|","\\textbar",!0);V(iA,pA,re,"∥","\\|");V(iA,pA,re,"∥","\\Vert");V(Ve,pA,re,"∥","\\textbardbl");V(Ve,pA,re,"~","\\textasciitilde");V(Ve,pA,re,"\\","\\textbackslash");V(Ve,pA,re,"^","\\textasciicircum");V(iA,pA,XA,"↑","\\uparrow",!0);V(iA,pA,XA,"⇑","\\Uparrow",!0);V(iA,pA,XA,"↓","\\downarrow",!0);V(iA,pA,XA,"⇓","\\Downarrow",!0);V(iA,pA,XA,"↕","\\updownarrow",!0);V(iA,pA,XA,"⇕","\\Updownarrow",!0);V(iA,pA,xn,"∐","\\coprod");V(iA,pA,xn,"⋁","\\bigvee");V(iA,pA,xn,"⋀","\\bigwedge");V(iA,pA,xn,"⨄","\\biguplus");V(iA,pA,xn,"⋂","\\bigcap");V(iA,pA,xn,"⋃","\\bigcup");V(iA,pA,xn,"∫","\\int");V(iA,pA,xn,"∫","\\intop");V(iA,pA,xn,"∬","\\iint");V(iA,pA,xn,"∭","\\iiint");V(iA,pA,xn,"∏","\\prod");V(iA,pA,xn,"∑","\\sum");V(iA,pA,xn,"⨂","\\bigotimes");V(iA,pA,xn,"⨁","\\bigoplus");V(iA,pA,xn,"⨀","\\bigodot");V(iA,pA,xn,"∮","\\oint");V(iA,pA,xn,"∯","\\oiint");V(iA,pA,xn,"∰","\\oiiint");V(iA,pA,xn,"⨆","\\bigsqcup");V(iA,pA,xn,"∫","\\smallint");V(Ve,pA,nD,"…","\\textellipsis");V(iA,pA,nD,"…","\\mathellipsis");V(Ve,pA,nD,"…","\\ldots",!0);V(iA,pA,nD,"…","\\ldots",!0);V(iA,pA,nD,"⋯","\\@cdots",!0);V(iA,pA,nD,"⋱","\\ddots",!0);V(iA,pA,re,"⋮","\\varvdots");V(Ve,pA,re,"⋮","\\varvdots");V(iA,pA,Ba,"ˊ","\\acute");V(iA,pA,Ba,"ˋ","\\grave");V(iA,pA,Ba,"¨","\\ddot");V(iA,pA,Ba,"~","\\tilde");V(iA,pA,Ba,"ˉ","\\bar");V(iA,pA,Ba,"˘","\\breve");V(iA,pA,Ba,"ˇ","\\check");V(iA,pA,Ba,"^","\\hat");V(iA,pA,Ba,"⃗","\\vec");V(iA,pA,Ba,"˙","\\dot");V(iA,pA,Ba,"˚","\\mathring");V(iA,pA,Br,"","\\@imath");V(iA,pA,Br,"","\\@jmath");V(iA,pA,re,"ı","ı");V(iA,pA,re,"ȷ","ȷ");V(Ve,pA,re,"ı","\\i",!0);V(Ve,pA,re,"ȷ","\\j",!0);V(Ve,pA,re,"ß","\\ss",!0);V(Ve,pA,re,"æ","\\ae",!0);V(Ve,pA,re,"œ","\\oe",!0);V(Ve,pA,re,"ø","\\o",!0);V(Ve,pA,re,"Æ","\\AE",!0);V(Ve,pA,re,"Œ","\\OE",!0);V(Ve,pA,re,"Ø","\\O",!0);V(Ve,pA,Ba,"ˊ","\\'");V(Ve,pA,Ba,"ˋ","\\`");V(Ve,pA,Ba,"ˆ","\\^");V(Ve,pA,Ba,"˜","\\~");V(Ve,pA,Ba,"ˉ","\\=");V(Ve,pA,Ba,"˘","\\u");V(Ve,pA,Ba,"˙","\\.");V(Ve,pA,Ba,"¸","\\c");V(Ve,pA,Ba,"˚","\\r");V(Ve,pA,Ba,"ˇ","\\v");V(Ve,pA,Ba,"¨","\\\"");V(Ve,pA,Ba,"˝","\\H");V(Ve,pA,Ba,"◯","\\textcircled");oDA={"--":!0,"---":!0,"``":!0,"''":!0};V(Ve,pA,re,"–","--",!0);V(Ve,pA,re,"–","\\textendash");V(Ve,pA,re,"—","---",!0);V(Ve,pA,re,"—","\\textemdash");V(Ve,pA,re,"‘","`",!0);V(Ve,pA,re,"‘","\\textquoteleft");V(Ve,pA,re,"’","'",!0);V(Ve,pA,re,"’","\\textquoteright");V(Ve,pA,re,"“","``",!0);V(Ve,pA,re,"“","\\textquotedblleft");V(Ve,pA,re,"”","''",!0);V(Ve,pA,re,"”","\\textquotedblright");V(iA,pA,re,"°","\\degree",!0);V(Ve,pA,re,"°","\\degree");V(Ve,pA,re,"°","\\textdegree",!0);V(iA,pA,re,"£","\\pounds");V(iA,pA,re,"£","\\mathsterling",!0);V(Ve,pA,re,"£","\\pounds");V(Ve,pA,re,"£","\\textsterling",!0);V(iA,VA,re,"✠","\\maltese");V(Ve,VA,re,"✠","\\maltese");for(Ab=0;Ab<D2A.length;Ab++)gR=D2A.charAt(Ab),V(iA,pA,re,gR,gR);for(eb=0;eb<y2A.length;eb++)cR=y2A.charAt(eb),V(Ve,pA,re,cR,cR);for(tb=0;tb<ER.length;tb++)eD=ER.charAt(tb),V(iA,pA,Br,eD,eD),V(Ve,pA,re,eD,eD);V(iA,VA,re,"C","ℂ");V(Ve,VA,re,"C","ℂ");V(iA,VA,re,"H","ℍ");V(Ve,VA,re,"H","ℍ");V(iA,VA,re,"N","ℕ");V(Ve,VA,re,"N","ℕ");V(iA,VA,re,"P","ℙ");V(Ve,VA,re,"P","ℙ");V(iA,VA,re,"Q","ℚ");V(Ve,VA,re,"Q","ℚ");V(iA,VA,re,"R","ℝ");V(Ve,VA,re,"R","ℝ");V(iA,VA,re,"Z","ℤ");V(Ve,VA,re,"Z","ℤ");V(iA,pA,Br,"h","ℎ");V(Ve,pA,Br,"h","ℎ");for(Xo=0;Xo<ER.length;Xo++)if(ca=ER.charAt(Xo),Mr=String.fromCharCode(55349,56320+Xo),V(iA,pA,Br,ca,Mr),V(Ve,pA,re,ca,Mr),Mr=String.fromCharCode(55349,56372+Xo),V(iA,pA,Br,ca,Mr),V(Ve,pA,re,ca,Mr),Mr=String.fromCharCode(55349,56424+Xo),V(iA,pA,Br,ca,Mr),V(Ve,pA,re,ca,Mr),Mr=String.fromCharCode(55349,56580+Xo),V(iA,pA,Br,ca,Mr),V(Ve,pA,re,ca,Mr),Mr=String.fromCharCode(55349,56684+Xo),V(iA,pA,Br,ca,Mr),V(Ve,pA,re,ca,Mr),Mr=String.fromCharCode(55349,56736+Xo),V(iA,pA,Br,ca,Mr),V(Ve,pA,re,ca,Mr),Mr=String.fromCharCode(55349,56788+Xo),V(iA,pA,Br,ca,Mr),V(Ve,pA,re,ca,Mr),Mr=String.fromCharCode(55349,56840+Xo),V(iA,pA,Br,ca,Mr),V(Ve,pA,re,ca,Mr),Mr=String.fromCharCode(55349,56944+Xo),V(iA,pA,Br,ca,Mr),V(Ve,pA,re,ca,Mr),Xo<26)Mr=String.fromCharCode(55349,56632+Xo),V(iA,pA,Br,ca,Mr),V(Ve,pA,re,ca,Mr),Mr=String.fromCharCode(55349,56476+Xo),V(iA,pA,Br,ca,Mr),V(Ve,pA,re,ca,Mr);Mr=String.fromCharCode(55349,56668);V(iA,pA,Br,"k",Mr);V(Ve,pA,re,"k",Mr);for(Wd=0;Wd<10;Wd++)RB=Wd.toString(),Mr=String.fromCharCode(55349,57294+Wd),V(iA,pA,Br,RB,Mr),V(Ve,pA,re,RB,Mr),Mr=String.fromCharCode(55349,57314+Wd),V(iA,pA,Br,RB,Mr),V(Ve,pA,re,RB,Mr),Mr=String.fromCharCode(55349,57324+Wd),V(iA,pA,Br,RB,Mr),V(Ve,pA,re,RB,Mr),Mr=String.fromCharCode(55349,57334+Wd),V(iA,pA,Br,RB,Mr),V(Ve,pA,re,RB,Mr);for(rb=0;rb<sV.length;rb++)tD=sV.charAt(rb),V(iA,pA,Br,tD,tD),V(Ve,pA,re,tD,tD);lV={mathClass:"mathbf",textClass:"textbf",font:"Main-Bold"},w2A={mathClass:"mathnormal",textClass:"textit",font:"Math-Italic"},b2A={mathClass:"boldsymbol",textClass:"boldsymbol",font:"Main-BoldItalic"},B$e={mathClass:"mathscr",textClass:"textscr",font:"Script-Regular"},Gp={mathClass:"",textClass:"",font:""},v2A={mathClass:"mathfrak",textClass:"textfrak",font:"Fraktur-Regular"},k2A={mathClass:"mathbb",textClass:"textbb",font:"AMS-Regular"},F2A={mathClass:"mathboldfrak",textClass:"textboldfrak",font:"Fraktur-Regular"},gV={mathClass:"mathsf",textClass:"textsf",font:"SansSerif-Regular"},cV={mathClass:"mathboldsf",textClass:"textboldsf",font:"SansSerif-Bold"},x2A={mathClass:"mathitsf",textClass:"textitsf",font:"SansSerif-Italic"},CV={mathClass:"mathtt",textClass:"texttt",font:"Typewriter-Regular"},S2A=[lV,lV,w2A,w2A,b2A,b2A,B$e,Gp,Gp,Gp,v2A,v2A,k2A,k2A,F2A,F2A,gV,gV,cV,cV,x2A,x2A,Gp,Gp,CV,CV],E$e=[lV,Gp,gV,cV,CV],BV={mathbf:{variant:"bold",fontName:"Main-Bold"},mathrm:{variant:"normal",fontName:"Main-Regular"},textit:{variant:"italic",fontName:"Main-Italic"},mathit:{variant:"italic",fontName:"Main-Italic"},mathnormal:{variant:"italic",fontName:"Math-Italic"},mathsfit:{variant:"sans-serif-italic",fontName:"SansSerif-Italic"},mathbb:{variant:"double-struck",fontName:"AMS-Regular"},mathcal:{variant:"script",fontName:"Caligraphic-Regular"},mathfrak:{variant:"fraktur",fontName:"Fraktur-Regular"},mathscr:{variant:"script",fontName:"Script-Regular"},mathsf:{variant:"sans-serif",fontName:"SansSerif-Regular"},mathtt:{variant:"monospace",fontName:"Typewriter-Regular"}},gDA={vec:["vec",0.471,0.714],oiintSize1:["oiintSize1",0.957,0.499],oiintSize2:["oiintSize2",1.472,0.659],oiiintSize1:["oiiintSize1",1.304,0.499],oiiintSize2:["oiiintSize2",1.98,0.659]},xa={number:3,unit:"mu"},Np={number:4,unit:"mu"},Pd={number:5,unit:"mu"},f$e={mord:{mop:xa,mbin:Np,mrel:Pd,minner:xa},mop:{mord:xa,mop:xa,mrel:Pd,minner:xa},mbin:{mord:Np,mop:Np,mopen:Np,minner:Np},mrel:{mord:Pd,mop:Pd,mopen:Pd,minner:Pd},mopen:{},mclose:{mop:xa,mbin:Np,mrel:Pd,minner:xa},mpunct:{mord:xa,mop:xa,mrel:Pd,mopen:xa,mclose:xa,mpunct:xa,minner:xa},minner:{mord:xa,mop:xa,mbin:Np,mrel:Pd,mopen:xa,mpunct:xa,minner:xa}},m$e={mord:{mop:xa},mop:{mord:xa,mop:xa},mbin:{},mrel:{},mopen:{},mclose:{mop:xa},mpunct:{},minner:{mop:xa}},CDA={},dR={},IR={};D$e=new Set(["leftmost","mbin","mopen","mrel","mop","mpunct"]),y$e=new Set(["rightmost","mrel","mclose","mpunct"]),w$e={display:qr.DISPLAY,text:qr.TEXT,script:qr.SCRIPT,scriptscript:qr.SCRIPTSCRIPT},b$e={mord:"mord",mop:"mop",mbin:"mbin",mrel:"mrel",mopen:"mopen",mclose:"mclose",mpunct:"mpunct",minner:"minner"};v$e=new Set(["\\imath","\\jmath"]),k$e=new Set(["mrow","mtable"]),F$e={mathit:"italic",boldsymbol:(A)=>A.type==="textord"?"bold":"bold-italic",mathbf:"bold",mathbb:"double-struck",mathsfit:"sans-serif-italic",mathfrak:"fraktur",mathscr:"script",mathcal:"script",mathsf:"sans-serif",mathtt:"monospace"};x$e=[[1,1,1],[2,1,1],[3,1,1],[4,2,1],[5,2,1],[6,3,1],[7,4,2],[8,6,3],[9,7,6],[10,8,7],[11,10,9]],R2A=[0.5,0.6,0.7,0.8,0.9,1,1.2,1.44,1.728,2.074,2.488];qd.BASESIZE=6;R$e={widehat:"^",widecheck:"ˇ",widetilde:"~",utilde:"~",overleftarrow:"←",underleftarrow:"←",xleftarrow:"←",overrightarrow:"→",underrightarrow:"→",xrightarrow:"→",underbrace:"⏟",overbrace:"⏞",underbracket:"⎵",overbracket:"⎴",overgroup:"⏠",undergroup:"⏡",overleftrightarrow:"↔",underleftrightarrow:"↔",xleftrightarrow:"↔",Overrightarrow:"⇒",xRightarrow:"⇒",overleftharpoon:"↼",xleftharpoonup:"↼",overrightharpoon:"⇀",xrightharpoonup:"⇀",xLeftarrow:"⇐",xLeftrightarrow:"⇔",xhookleftarrow:"↩",xhookrightarrow:"↪",xmapsto:"↦",xrightharpoondown:"⇁",xleftharpoondown:"↽",xrightleftharpoons:"⇌",xleftrightharpoons:"⇋",xtwoheadleftarrow:"↞",xtwoheadrightarrow:"↠",xlongequal:"=",xtofrom:"⇄",xrightleftarrows:"⇄",xrightequilibrium:"⇌",xleftequilibrium:"⇋","\\cdrightarrow":"→","\\cdleftarrow":"←","\\cdlongequal":"="},N$e={overrightarrow:[["rightarrow"],0.888,522,"xMaxYMin"],overleftarrow:[["leftarrow"],0.888,522,"xMinYMin"],underrightarrow:[["rightarrow"],0.888,522,"xMaxYMin"],underleftarrow:[["leftarrow"],0.888,522,"xMinYMin"],xrightarrow:[["rightarrow"],1.469,522,"xMaxYMin"],"\\cdrightarrow":[["rightarrow"],3,522,"xMaxYMin"],xleftarrow:[["leftarrow"],1.469,522,"xMinYMin"],"\\cdleftarrow":[["leftarrow"],3,522,"xMinYMin"],Overrightarrow:[["doublerightarrow"],0.888,560,"xMaxYMin"],xRightarrow:[["doublerightarrow"],1.526,560,"xMaxYMin"],xLeftarrow:[["doubleleftarrow"],1.526,560,"xMinYMin"],overleftharpoon:[["leftharpoon"],0.888,522,"xMinYMin"],xleftharpoonup:[["leftharpoon"],0.888,522,"xMinYMin"],xleftharpoondown:[["leftharpoondown"],0.888,522,"xMinYMin"],overrightharpoon:[["rightharpoon"],0.888,522,"xMaxYMin"],xrightharpoonup:[["rightharpoon"],0.888,522,"xMaxYMin"],xrightharpoondown:[["rightharpoondown"],0.888,522,"xMaxYMin"],xlongequal:[["longequal"],0.888,334,"xMinYMin"],"\\cdlongequal":[["longequal"],3,334,"xMinYMin"],xtwoheadleftarrow:[["twoheadleftarrow"],0.888,334,"xMinYMin"],xtwoheadrightarrow:[["twoheadrightarrow"],0.888,334,"xMaxYMin"],overleftrightarrow:[["leftarrow","rightarrow"],0.888,522],overbrace:[["leftbrace","midbrace","rightbrace"],1.6,548],underbrace:[["leftbraceunder","midbraceunder","rightbraceunder"],1.6,548],underleftrightarrow:[["leftarrow","rightarrow"],0.888,522],xleftrightarrow:[["leftarrow","rightarrow"],1.75,522],xLeftrightarrow:[["doubleleftarrow","doublerightarrow"],1.75,560],xrightleftharpoons:[["leftharpoondownplus","rightharpoonplus"],1.75,716],xleftrightharpoons:[["leftharpoonplus","rightharpoondownplus"],1.75,716],xhookleftarrow:[["leftarrow","righthook"],1.08,522],xhookrightarrow:[["lefthook","rightarrow"],1.08,522],overlinesegment:[["leftlinesegment","rightlinesegment"],0.888,522],underlinesegment:[["leftlinesegment","rightlinesegment"],0.888,522],overbracket:[["leftbracketover","rightbracketover"],1.6,440],underbracket:[["leftbracketunder","rightbracketunder"],1.6,410],overgroup:[["leftgroup","rightgroup"],0.888,342],undergroup:[["leftgroupunder","rightgroupunder"],0.888,342],xmapsto:[["leftmapsto","rightarrow"],1.5,522],xtofrom:[["leftToFrom","rightToFrom"],1.75,528],xrightleftarrows:[["baraboveleftarrow","rightarrowabovebar"],1.75,901],xrightequilibrium:[["baraboveshortleftharpoon","rightharpoonaboveshortbar"],1.75,716],xleftequilibrium:[["shortbaraboveleftharpoon","shortrightharpoonabovebar"],1.75,716]},G$e=new Set(["widehat","widecheck","widetilde","utilde"]),M$e={bin:1,close:1,inner:1,open:1,punct:1,rel:1},T$e={"accent-token":1,mathord:1,"op-token":1,spacing:1,textord:1};H$e=new RegExp(["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring"].map((A)=>"\\"+A).join("|"));yt({type:"accent",names:["\\acute","\\grave","\\ddot","\\tilde","\\bar","\\breve","\\check","\\hat","\\vec","\\dot","\\mathring","\\widecheck","\\widehat","\\widetilde","\\overrightarrow","\\overleftarrow","\\Overrightarrow","\\overleftrightarrow","\\overgroup","\\overlinesegment","\\overleftharpoon","\\overrightharpoon"],props:{numArgs:1},handler:(A,e)=>{var t=hR(e[0]),r=!H$e.test(A.funcName),i=!r||A.funcName==="\\widehat"||A.funcName==="\\widetilde"||A.funcName==="\\widecheck";return{type:"accent",mode:A.parser.mode,label:A.funcName,isStretchy:r,isShifty:i,base:t}},htmlBuilder:RV,mathmlBuilder:QDA});yt({type:"accent",names:["\\'","\\`","\\^","\\~","\\=","\\u","\\.","\\\"","\\c","\\r","\\H","\\v","\\textcircled"],props:{numArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["primitive"]},handler:(A,e)=>{var t=e[0],r=A.parser.mode;if(r==="math")A.parser.settings.reportNonstrict("mathVsTextAccents","LaTeX's accent "+A.funcName+" works only in text mode"),r="text";return{type:"accent",mode:r,label:A.funcName,isStretchy:!1,isShifty:!0,base:t}},htmlBuilder:RV,mathmlBuilder:QDA});yt({type:"accentUnder",names:["\\underleftarrow","\\underrightarrow","\\underleftrightarrow","\\undergroup","\\underlinesegment","\\utilde"],props:{numArgs:1},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=e[0];return{type:"accentUnder",mode:t.mode,label:r,base:i}},htmlBuilder:(A,e)=>{var t=nu(A.base,e),r=DR(A,e),i=A.label==="\\utilde"?0.12:0,u=au({positionType:"top",positionData:t.height,children:[{type:"elem",elem:r,wrapperClasses:["svg-align"]},{type:"kern",size:i},{type:"elem",elem:t}]});return tt(["mord","accentunder"],[u],e)},mathmlBuilder:(A,e)=>{var t=mR(A.label),r=new it("munder",[Gu(A.base,e),t]);return r.setAttribute("accentunder","true"),r}});yt({type:"xArrow",names:["\\xleftarrow","\\xrightarrow","\\xLeftarrow","\\xRightarrow","\\xleftrightarrow","\\xLeftrightarrow","\\xhookleftarrow","\\xhookrightarrow","\\xmapsto","\\xrightharpoondown","\\xrightharpoonup","\\xleftharpoondown","\\xleftharpoonup","\\xrightleftharpoons","\\xleftrightharpoons","\\xlongequal","\\xtwoheadrightarrow","\\xtwoheadleftarrow","\\xtofrom","\\xrightleftarrows","\\xrightequilibrium","\\xleftequilibrium","\\\\cdrightarrow","\\\\cdleftarrow","\\\\cdlongequal"],props:{numArgs:1,numOptionalArgs:1},handler(A,e,t){var{parser:r,funcName:i}=A;return{type:"xArrow",mode:r.mode,label:i,body:e[0],below:t[0]}},htmlBuilder(A,e){var t=e.style,r=e.havingStyle(t.sup()),i=aD(nu(A.body,r,e),e),u=A.label.slice(0,2)==="\\x"?"x":"cd";i.classes.push(u+"-arrow-pad");var a;if(A.below)r=e.havingStyle(t.sub()),a=aD(nu(A.below,r,e),e),a.classes.push(u+"-arrow-pad");var n=DR(A,e),o=-e.fontMetrics().axisHeight+0.5*n.height,s=-e.fontMetrics().axisHeight-0.5*n.height-0.111;if(i.depth>0.25||A.label==="\\xleftequilibrium")s-=i.depth;var l;if(a){var g=-e.fontMetrics().axisHeight+a.height+0.5*n.height+0.111;l=au({positionType:"individualShift",children:[{type:"elem",elem:i,shift:s},{type:"elem",elem:n,shift:o,wrapperClasses:["svg-align"]},{type:"elem",elem:a,shift:g}]})}else l=au({positionType:"individualShift",children:[{type:"elem",elem:i,shift:s},{type:"elem",elem:n,shift:o,wrapperClasses:["svg-align"]}]});return tt(["mrel","x-arrow"],[l],e)},mathmlBuilder(A,e){var t=mR(A.label);t.setAttribute("minsize",A.label.charAt(0)==="x"?"1.75em":"3.0em");var r;if(A.body){var i=aR(Gu(A.body,e));if(A.below){var u=aR(Gu(A.below,e));r=new it("munderover",[t,u,i])}else r=new it("mover",[t,i])}else if(A.below){var a=aR(Gu(A.below,e));r=new it("munder",[t,a])}else r=aR(),r=new it("mover",[t,r]);return r}});yt({type:"mclass",names:["\\mathord","\\mathbin","\\mathrel","\\mathopen","\\mathclose","\\mathpunct","\\mathinner"],props:{numArgs:1,primitive:!0},handler(A,e){var{parser:t,funcName:r}=A,i=e[0];return{type:"mclass",mode:t.mode,mclass:"m"+r.slice(5),body:Fn(i),isCharacterBox:Vd(i)}},htmlBuilder:pDA,mathmlBuilder:fDA});yt({type:"mclass",names:["\\@binrel"],props:{numArgs:2},handler(A,e){var{parser:t}=A;return{type:"mclass",mode:t.mode,mclass:bR(e[0]),body:Fn(e[1]),isCharacterBox:Vd(e[1])}}});yt({type:"mclass",names:["\\stackrel","\\overset","\\underset"],props:{numArgs:2},handler(A,e){var{parser:t,funcName:r}=A,i=e[1],u=e[0],a;if(r!=="\\stackrel")a=bR(i);else a="mrel";var n={type:"op",mode:i.mode,limits:!0,alwaysHandleSupSub:!0,parentIsSupSub:!1,symbol:!1,suppressBaseShift:r!=="\\stackrel",body:Fn(i)},o={type:"supsub",mode:u.mode,base:n,sup:r==="\\underset"?null:u,sub:r==="\\underset"?u:null};return{type:"mclass",mode:t.mode,mclass:a,body:[o],isCharacterBox:Vd(o)}},htmlBuilder:pDA,mathmlBuilder:fDA});yt({type:"pmb",names:["\\pmb"],props:{numArgs:1,allowedInText:!0},handler(A,e){var{parser:t}=A;return{type:"pmb",mode:t.mode,mclass:bR(e[0]),body:Fn(e[0])}},htmlBuilder(A,e){var t=to(A.body,e,!0),r=tt([A.mclass],t,e);return r.style.textShadow="0.02em 0.01em 0.04px",r},mathmlBuilder(A,e){var t=Vl(A.body,e),r=new it("mstyle",t);return r.setAttribute("style","text-shadow: 0.02em 0.01em 0.04px"),r}});K$e={">":"\\\\cdrightarrow","<":"\\\\cdleftarrow","=":"\\\\cdlongequal",A:"\\uparrow",V:"\\downarrow","|":"\\Vert",".":"no arrow"};yt({type:"cdlabel",names:["\\\\cdleft","\\\\cdright"],props:{numArgs:1},handler(A,e){var{parser:t,funcName:r}=A;return{type:"cdlabel",mode:t.mode,side:r.slice(4),label:e[0]}},htmlBuilder(A,e){var t=e.havingStyle(e.style.sup()),r=aD(nu(A.label,t,e),e);return r.classes.push("cd-label-"+A.side),r.style.bottom=gt(0.8-r.depth),r.height=0,r.depth=0,r},mathmlBuilder(A,e){var t=new it("mrow",[Gu(A.label,e)]);if(t=new it("mpadded",[t]),t.setAttribute("width","0"),A.side==="left")t.setAttribute("lspace","-1width");return t.setAttribute("voffset","0.7em"),t=new it("mstyle",[t]),t.setAttribute("displaystyle","false"),t.setAttribute("scriptlevel","1"),t}});yt({type:"cdlabelparent",names:["\\\\cdparent"],props:{numArgs:1},handler(A,e){var{parser:t}=A;return{type:"cdlabelparent",mode:t.mode,fragment:e[0]}},htmlBuilder(A,e){var t=aD(nu(A.fragment,e),e);return t.classes.push("cd-vert-arrow"),t},mathmlBuilder(A,e){return new it("mrow",[Gu(A.fragment,e)])}});yt({type:"textord",names:["\\@char"],props:{numArgs:1,allowedInText:!0},handler(A,e){var{parser:t}=A,r=ti(e[0],"ordgroup"),i=r.body,u="";for(var a=0;a<i.length;a++){var n=ti(i[a],"textord");u+=n.text}var o=parseInt(u),s;if(isNaN(o))throw new ut("\\@char has non-numeric argument "+u);else if(o<0||o>=1114111)throw new ut("\\@char with invalid code point "+u);else if(o<=65535)s=String.fromCharCode(o);else o-=65536,s=String.fromCharCode((o>>10)+55296,(o&1023)+56320);return{type:"textord",mode:t.mode,text:s}}});yt({type:"color",names:["\\textcolor"],props:{numArgs:2,allowedInText:!0,argTypes:["color","original"]},handler(A,e){var{parser:t}=A,r=ti(e[0],"color-token").color,i=e[1];return{type:"color",mode:t.mode,color:r,body:Fn(i)}},htmlBuilder:mDA,mathmlBuilder:DDA});yt({type:"color",names:["\\color"],props:{numArgs:1,allowedInText:!0,argTypes:["color"]},handler(A,e){var{parser:t,breakOnTokenText:r}=A,i=ti(e[0],"color-token").color;t.gullet.macros.set("\\current@color",i);var u=t.parseExpression(!0,r);return{type:"color",mode:t.mode,color:i,body:u}},htmlBuilder:mDA,mathmlBuilder:DDA});yt({type:"cr",names:["\\\\"],props:{numArgs:0,numOptionalArgs:0,allowedInText:!0},handler(A,e,t){var{parser:r}=A,i=r.gullet.future().text==="["?r.parseSizeGroup(!0):null,u=!r.settings.displayMode||!r.settings.useStrictBehavior("newLineInDisplayMode","In LaTeX, \\\\ or \\newline does nothing in display mode");return{type:"cr",mode:r.mode,newLine:u,size:i&&ti(i,"size").value}},htmlBuilder(A,e){var t=tt(["mspace"],[],e);if(A.newLine){if(t.classes.push("newline"),A.size)t.style.marginTop=gt(Sa(A.size,e))}return t},mathmlBuilder(A,e){var t=new it("mspace");if(A.newLine){if(t.setAttribute("linebreak","newline"),A.size)t.setAttribute("height",gt(Sa(A.size,e)))}return t}});QV={"\\global":"\\global","\\long":"\\\\globallong","\\\\globallong":"\\\\globallong","\\def":"\\gdef","\\gdef":"\\gdef","\\edef":"\\xdef","\\xdef":"\\xdef","\\let":"\\\\globallet","\\futurelet":"\\\\globalfuture"};yt({type:"internal",names:["\\global","\\long","\\\\globallong"],props:{numArgs:0,allowedInText:!0},handler(A){var{parser:e,funcName:t}=A;e.consumeSpaces();var r=e.fetch();if(QV[r.text]){if(t==="\\global"||t==="\\\\globallong")r.text=QV[r.text];return ti(e.parseFunction(),"internal")}throw new ut("Invalid token after macro prefix",r)}});yt({type:"internal",names:["\\def","\\gdef","\\edef","\\xdef"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(A){var{parser:e,funcName:t}=A,r=e.gullet.popToken(),i=r.text;if(/^(?:[\\{}$&#^_]|EOF)$/.test(i))throw new ut("Expected a control sequence",r);var u=0,a,n=[[]];while(e.gullet.future().text!=="{")if(r=e.gullet.popToken(),r.text==="#"){if(e.gullet.future().text==="{"){a=e.gullet.future(),n[u].push("{");break}if(r=e.gullet.popToken(),!/^[1-9]$/.test(r.text))throw new ut('Invalid argument number "'+r.text+'"');if(parseInt(r.text)!==u+1)throw new ut('Argument number "'+r.text+'" out of order');u++,n.push([])}else if(r.text==="EOF")throw new ut("Expected a macro definition");else n[u].push(r.text);var{tokens:o}=e.gullet.consumeArg();if(a)o.unshift(a);if(t==="\\edef"||t==="\\xdef")o=e.gullet.expandTokens(o),o.reverse();return e.gullet.macros.set(i,{tokens:o,numArgs:u,delimiters:n},t===QV[t]),{type:"internal",mode:e.mode}}});yt({type:"internal",names:["\\let","\\\\globallet"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(A){var{parser:e,funcName:t}=A,r=yDA(e.gullet.popToken());e.gullet.consumeSpaces();var i=_$e(e);return wDA(e,r,i,t==="\\\\globallet"),{type:"internal",mode:e.mode}}});yt({type:"internal",names:["\\futurelet","\\\\globalfuture"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(A){var{parser:e,funcName:t}=A,r=yDA(e.gullet.popToken()),i=e.gullet.popToken(),u=e.gullet.popToken();return wDA(e,r,u,t==="\\\\globalfuture"),e.gullet.pushToken(u),e.gullet.pushToken(i),{type:"internal",mode:e.mode}}});nR={type:"kern",size:-1*pV},z$e=new Set(["|","\\lvert","\\rvert","\\vert"]),Z$e=new Set(["\\|","\\lVert","\\rVert","\\Vert"]),FDA=new Set(["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","\\surd"]),j$e=new Set(["\\uparrow","\\downarrow","\\updownarrow","\\Uparrow","\\Downarrow","\\Updownarrow","|","\\|","\\vert","\\Vert","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱"]),xDA=new Set(["<",">","\\langle","\\rangle","/","\\backslash","\\lt","\\gt"]),ub=[0,1.2,1.8,2.4,3],X$e=[{type:"small",style:qr.SCRIPTSCRIPT},{type:"small",style:qr.SCRIPT},{type:"small",style:qr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4}],$$e=[{type:"small",style:qr.SCRIPTSCRIPT},{type:"small",style:qr.SCRIPT},{type:"small",style:qr.TEXT},{type:"stack"}],LDA=[{type:"small",style:qr.SCRIPTSCRIPT},{type:"small",style:qr.SCRIPT},{type:"small",style:qr.TEXT},{type:"large",size:1},{type:"large",size:2},{type:"large",size:3},{type:"large",size:4},{type:"stack"}],M2A={"\\bigl":{mclass:"mopen",size:1},"\\Bigl":{mclass:"mopen",size:2},"\\biggl":{mclass:"mopen",size:3},"\\Biggl":{mclass:"mopen",size:4},"\\bigr":{mclass:"mclose",size:1},"\\Bigr":{mclass:"mclose",size:2},"\\biggr":{mclass:"mclose",size:3},"\\Biggr":{mclass:"mclose",size:4},"\\bigm":{mclass:"mrel",size:1},"\\Bigm":{mclass:"mrel",size:2},"\\biggm":{mclass:"mrel",size:3},"\\Biggm":{mclass:"mrel",size:4},"\\big":{mclass:"mord",size:1},"\\Big":{mclass:"mord",size:2},"\\bigg":{mclass:"mord",size:3},"\\Bigg":{mclass:"mord",size:4}},eAt=new Set(["(","\\lparen",")","\\rparen","[","\\lbrack","]","\\rbrack","\\{","\\lbrace","\\}","\\rbrace","\\lfloor","\\rfloor","⌊","⌋","\\lceil","\\rceil","⌈","⌉","<",">","\\langle","⟨","\\rangle","⟩","\\lt","\\gt","\\lvert","\\rvert","\\lVert","\\rVert","\\lgroup","\\rgroup","⟮","⟯","\\lmoustache","\\rmoustache","⎰","⎱","/","\\backslash","|","\\vert","\\|","\\Vert","\\uparrow","\\Uparrow","\\downarrow","\\Downarrow","\\updownarrow","\\Updownarrow","."]);yt({type:"delimsizing",names:["\\bigl","\\Bigl","\\biggl","\\Biggl","\\bigr","\\Bigr","\\biggr","\\Biggr","\\bigm","\\Bigm","\\biggm","\\Biggm","\\big","\\Big","\\bigg","\\Bigg"],props:{numArgs:1,argTypes:["primitive"]},handler:(A,e)=>{var t=vR(e[0],A);return{type:"delimsizing",mode:A.parser.mode,size:M2A[A.funcName].size,mclass:M2A[A.funcName].mclass,delim:t.text}},htmlBuilder:(A,e)=>{if(A.delim===".")return tt([A.mclass]);return SDA(A.delim,A.size,e,A.mode,[A.mclass])},mathmlBuilder:(A)=>{var e=[];if(A.delim!==".")e.push(Jg(A.delim,A.mode));var t=new it("mo",e);if(A.mclass==="mopen"||A.mclass==="mclose")t.setAttribute("fence","true");else t.setAttribute("fence","false");t.setAttribute("stretchy","true");var r=gt(ub[A.size]);return t.setAttribute("minsize",r),t.setAttribute("maxsize",r),t}});yt({type:"leftright-right",names:["\\right"],props:{numArgs:1,primitive:!0},handler:(A,e)=>{var t=A.parser.gullet.macros.get("\\current@color");if(t&&typeof t!=="string")throw new ut("\\current@color set to non-string in \\right");return{type:"leftright-right",mode:A.parser.mode,delim:vR(e[0],A).text,color:t}}});yt({type:"leftright",names:["\\left"],props:{numArgs:1,primitive:!0},handler:(A,e)=>{var t=vR(e[0],A),r=A.parser;++r.leftrightDepth;var i=r.parseExpression(!1);--r.leftrightDepth,r.expect("\\right",!1);var u=ti(r.parseFunction(),"leftright-right");return{type:"leftright",mode:r.mode,body:i,left:t.text,right:u.delim,rightColor:u.color}},htmlBuilder:(A,e)=>{Y2A(A);var t=to(A.body,e,!0,["mopen","mclose"]),r=0,i=0,u=!1;for(var a=0;a<t.length;a++){var n=t[a];if(T2A(n))u=!0;else r=Math.max(t[a].height,r),i=Math.max(t[a].depth,i)}r*=e.sizeMultiplier,i*=e.sizeMultiplier;var o;if(A.left===".")o=nb(e,["mopen"]);else o=eV(A.left,r,i,e,A.mode,["mopen"]);if(t.unshift(o),u)for(var s=1;s<t.length;s++){var l=t[s];if(T2A(l)){var g=l.isMiddle;t[s]=eV(g.delim,r,i,g.options,A.mode,[])}}var C;if(A.right===".")C=nb(e,["mclose"]);else{var B=A.rightColor?e.withColor(A.rightColor):e;C=eV(A.right,r,i,B,A.mode,["mclose"])}return t.push(C),tt(["minner"],t,e)},mathmlBuilder:(A,e)=>{Y2A(A);var t=Vl(A.body,e);if(A.left!=="."){var r=new it("mo",[Jg(A.left,A.mode)]);r.setAttribute("fence","true"),t.unshift(r)}if(A.right!=="."){var i=new it("mo",[Jg(A.right,A.mode)]);if(i.setAttribute("fence","true"),A.rightColor)i.setAttribute("mathcolor",A.rightColor);t.push(i)}return SV(t)}});yt({type:"middle",names:["\\middle"],props:{numArgs:1,primitive:!0},handler:(A,e)=>{var t=vR(e[0],A);if(!A.parser.leftrightDepth)throw new ut("\\middle without preceding \\left",t);return{type:"middle",mode:A.parser.mode,delim:t.text}},htmlBuilder:(A,e)=>{var t;if(A.delim===".")t=nb(e,[]);else t=SDA(A.delim,1,e,A.mode,[]),t.isMiddle={delim:A.delim,options:e};return t},mathmlBuilder:(A,e)=>{var t=A.delim==="\\vert"||A.delim==="|"?Jg("|","text"):Jg(A.delim,A.mode),r=new it("mo",[t]);return r.setAttribute("fence","true"),r.setAttribute("lspace","0.05em"),r.setAttribute("rspace","0.05em"),r}});yt({type:"enclose",names:["\\colorbox"],props:{numArgs:2,allowedInText:!0,argTypes:["color","hbox"]},handler(A,e,t){var{parser:r,funcName:i}=A,u=ti(e[0],"color-token").color,a=e[1];return{type:"enclose",mode:r.mode,label:i,backgroundColor:u,body:a}},htmlBuilder:kR,mathmlBuilder:FR});yt({type:"enclose",names:["\\fcolorbox"],props:{numArgs:3,allowedInText:!0,argTypes:["color","color","hbox"]},handler(A,e,t){var{parser:r,funcName:i}=A,u=ti(e[0],"color-token").color,a=ti(e[1],"color-token").color,n=e[2];return{type:"enclose",mode:r.mode,label:i,backgroundColor:a,borderColor:u,body:n}},htmlBuilder:kR,mathmlBuilder:FR});yt({type:"enclose",names:["\\fbox"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!0},handler(A,e){var{parser:t}=A;return{type:"enclose",mode:t.mode,label:"\\fbox",body:e[0]}}});yt({type:"enclose",names:["\\cancel","\\bcancel","\\xcancel","\\phase"],props:{numArgs:1},handler(A,e){var{parser:t,funcName:r}=A,i=e[0];return{type:"enclose",mode:t.mode,label:r,body:i}},htmlBuilder:kR,mathmlBuilder:FR});yt({type:"enclose",names:["\\sout"],props:{numArgs:1,allowedInText:!0},handler(A,e){var{parser:t,funcName:r}=A;if(t.mode==="math")t.settings.reportNonstrict("mathVsSout","LaTeX's \\sout works only in text mode");var i=e[0];return{type:"enclose",mode:t.mode,label:r,body:i}},htmlBuilder:kR,mathmlBuilder:FR});yt({type:"enclose",names:["\\angl"],props:{numArgs:1,argTypes:["hbox"],allowedInText:!1},handler(A,e){var{parser:t}=A;return{type:"enclose",mode:t.mode,label:"\\angl",body:e[0]}}});NDA={};GDA={};tAt=new Set(["gather","gather*"]);rAt={c:"center ",l:"left ",r:"right "};MB({type:"array",names:["array","darray"],props:{numArgs:1},handler(A,e){var t=wR(e[0]),r=t?[e[0]]:ti(e[0],"ordgroup").body,i=r.map(function(a){var n=yR(a),o=n.text;if("lcr".includes(o))return{type:"align",align:o};else if(o==="|")return{type:"separator",separator:"|"};else if(o===":")return{type:"separator",separator:":"};throw new ut("Unknown column alignment: "+o,a)}),u={cols:i,hskipBeforeAndAfter:!0,maxNumCols:i.length};return iQ(A.parser,u,UV(A.envName))},htmlBuilder:TB,mathmlBuilder:YB});MB({type:"array",names:["matrix","pmatrix","bmatrix","Bmatrix","vmatrix","Vmatrix","matrix*","pmatrix*","bmatrix*","Bmatrix*","vmatrix*","Vmatrix*"],props:{numArgs:0},handler(A){var e={matrix:null,pmatrix:["(",")"],bmatrix:["[","]"],Bmatrix:["\\{","\\}"],vmatrix:["|","|"],Vmatrix:["\\Vert","\\Vert"]}[A.envName.replace("*","")],t="c",r={hskipBeforeAndAfter:!1,cols:[{type:"align",align:t}]};if(A.envName.charAt(A.envName.length-1)==="*"){var i=A.parser;if(i.consumeSpaces(),i.fetch().text==="["){if(i.consume(),i.consumeSpaces(),t=i.fetch().text,!"lcr".includes(t))throw new ut("Expected l or c or r",i.nextToken);i.consume(),i.consumeSpaces(),i.expect("]"),i.consume(),r.cols=[{type:"align",align:t}]}}var u=iQ(A.parser,r,UV(A.envName)),a=Math.max(0,...u.body.map((n)=>n.length));return u.cols=Array(a).fill({type:"align",align:t}),e?{type:"leftright",mode:A.mode,body:[u],left:e[0],right:e[1],rightColor:void 0}:u},htmlBuilder:TB,mathmlBuilder:YB});MB({type:"array",names:["smallmatrix"],props:{numArgs:0},handler(A){var e={arraystretch:0.5},t=iQ(A.parser,e,"script");return t.colSeparationType="small",t},htmlBuilder:TB,mathmlBuilder:YB});MB({type:"array",names:["subarray"],props:{numArgs:1},handler(A,e){var t=wR(e[0]),r=t?[e[0]]:ti(e[0],"ordgroup").body,i=r.map(function(n){var o=yR(n),s=o.text;if("lc".includes(s))return{type:"align",align:s};throw new ut("Unknown column alignment: "+s,n)});if(i.length>1)throw new ut("{subarray} can contain only one column");var u={cols:i,hskipBeforeAndAfter:!1,arraystretch:0.5},a=iQ(A.parser,u,"script");if(a.body.length>0&&a.body[0].length>1)throw new ut("{subarray} can contain only one column");return a},htmlBuilder:TB,mathmlBuilder:YB});MB({type:"array",names:["cases","dcases","rcases","drcases"],props:{numArgs:0},handler(A){var e={arraystretch:1.2,cols:[{type:"align",align:"l",pregap:0,postgap:1},{type:"align",align:"l",pregap:0,postgap:0}]},t=iQ(A.parser,e,UV(A.envName));return{type:"leftright",mode:A.mode,body:[t],left:A.envName.includes("r")?".":"\\{",right:A.envName.includes("r")?"\\}":".",rightColor:void 0}},htmlBuilder:TB,mathmlBuilder:YB});MB({type:"array",names:["align","align*","aligned","split"],props:{numArgs:0},handler:UDA,htmlBuilder:TB,mathmlBuilder:YB});MB({type:"array",names:["gathered","gather","gather*"],props:{numArgs:0},handler(A){if(tAt.has(A.envName))xR(A);var e={cols:[{type:"align",align:"c"}],addJot:!0,colSeparationType:"gather",autoTag:GV(A.envName),emptySingleRow:!0,leqno:A.parser.settings.leqno};return iQ(A.parser,e,"display")},htmlBuilder:TB,mathmlBuilder:YB});MB({type:"array",names:["alignat","alignat*","alignedat"],props:{numArgs:1},handler:UDA,htmlBuilder:TB,mathmlBuilder:YB});MB({type:"array",names:["equation","equation*"],props:{numArgs:0},handler(A){xR(A);var e={autoTag:GV(A.envName),emptySingleRow:!0,singleRow:!0,maxNumCols:1,leqno:A.parser.settings.leqno};return iQ(A.parser,e,"display")},htmlBuilder:TB,mathmlBuilder:YB});MB({type:"array",names:["CD"],props:{numArgs:0},handler(A){return xR(A),P$e(A.parser)},htmlBuilder:TB,mathmlBuilder:YB});xA("\\nonumber","\\gdef\\@eqnsw{0}");xA("\\notag","\\nonumber");yt({type:"text",names:["\\hline","\\hdashline"],props:{numArgs:0,allowedInText:!0,allowedInMath:!0},handler(A,e){throw new ut(A.funcName+" valid only within array environment")}});K2A=NDA;yt({type:"environment",names:["\\begin","\\end"],props:{numArgs:1,argTypes:["text"]},handler(A,e){var{parser:t,funcName:r}=A,i=e[0];if(i.type!=="ordgroup")throw new ut("Invalid environment name",i);var u="";for(var a=0;a<i.body.length;++a)u+=ti(i.body[a],"textord").text;if(r==="\\begin"){if(!K2A.hasOwnProperty(u))throw new ut("No such environment: "+u,i);var n=K2A[u],{args:o,optArgs:s}=t.parseArguments("\\begin{"+u+"}",n),l={mode:t.mode,envName:u,parser:t},g=n.handler(l,o,s);t.expect("\\end",!1);var C=t.nextToken,B=ti(t.parseFunction(),"environment");if(B.name!==u)throw new ut("Mismatch: \\begin{"+u+"} matched by \\end{"+B.name+"}",C);return g}return{type:"environment",mode:t.mode,name:u,nameGroup:i}}});J2A={"\\Bbb":"\\mathbb","\\bold":"\\mathbf","\\frak":"\\mathfrak"};yt({type:"font",names:["\\mathrm","\\mathit","\\mathbf","\\mathnormal","\\mathsfit","\\mathbb","\\mathcal","\\mathfrak","\\mathscr","\\mathsf","\\mathtt","\\Bbb","\\bold","\\frak"],props:{numArgs:1,allowedInArgument:!0},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=hR(e[0]),u=r;if(u in J2A)u=J2A[u];return{type:"font",mode:t.mode,font:u.slice(1),body:i}},htmlBuilder:MDA,mathmlBuilder:TDA});yt({type:"mclass",names:["\\boldsymbol","\\bm"],props:{numArgs:1},handler:(A,e)=>{var{parser:t}=A,r=e[0];return{type:"mclass",mode:t.mode,mclass:bR(r),body:[{type:"font",mode:t.mode,font:"boldsymbol",body:r}],isCharacterBox:Vd(r)}}});yt({type:"font",names:["\\rm","\\sf","\\tt","\\bf","\\it","\\cal"],props:{numArgs:0,allowedInText:!0},handler:(A,e)=>{var{parser:t,funcName:r,breakOnTokenText:i}=A,{mode:u}=t,a=t.parseExpression(!0,i);return{type:"font",mode:u,font:"math"+r.slice(1),body:{type:"ordgroup",mode:t.mode,body:a}}},htmlBuilder:MDA,mathmlBuilder:TDA});yt({type:"genfrac",names:["\\cfrac","\\dfrac","\\frac","\\tfrac","\\dbinom","\\binom","\\tbinom","\\\\atopfrac","\\\\bracefrac","\\\\brackfrac"],props:{numArgs:2,allowedInArgument:!0},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=e[0],u=e[1],a,n=null,o=null;switch(r){case"\\cfrac":case"\\dfrac":case"\\frac":case"\\tfrac":a=!0;break;case"\\\\atopfrac":a=!1;break;case"\\dbinom":case"\\binom":case"\\tbinom":a=!1,n="(",o=")";break;case"\\\\bracefrac":a=!1,n="\\{",o="\\}";break;case"\\\\brackfrac":a=!1,n="[",o="]";break;default:throw Error("Unrecognized genfrac command")}var s=r==="\\cfrac",l=null;if(s||r.startsWith("\\d"))l="display";else if(r.startsWith("\\t"))l="text";return YDA({type:"genfrac",mode:t.mode,numer:i,denom:u,continued:s,hasBarLine:a,leftDelim:n,rightDelim:o,barSize:null},l)},htmlBuilder:iAt,mathmlBuilder:uAt});yt({type:"infix",names:["\\over","\\choose","\\atop","\\brace","\\brack"],props:{numArgs:0,infix:!0},handler(A){var{parser:e,funcName:t,token:r}=A,i;switch(t){case"\\over":i="\\frac";break;case"\\choose":i="\\binom";break;case"\\atop":i="\\\\atopfrac";break;case"\\brace":i="\\\\bracefrac";break;case"\\brack":i="\\\\brackfrac";break;default:throw Error("Unrecognized infix genfrac command")}return{type:"infix",mode:e.mode,replaceWith:i,token:r}}});O2A=["display","text","script","scriptscript"];yt({type:"genfrac",names:["\\genfrac"],props:{numArgs:6,allowedInArgument:!0,argTypes:["math","math","size","text","math","math"]},handler(A,e){var{parser:t}=A,r=e[4],i=e[5],u=hR(e[0]),a=u.type==="atom"&&u.family==="open"?P2A(u.text):null,n=hR(e[1]),o=n.type==="atom"&&n.family==="close"?P2A(n.text):null,s=ti(e[2],"size"),l,g=null;if(s.isBlank)l=!0;else g=s.value,l=g.number>0;var C=null,B=e[3];if(B.type==="ordgroup"){if(B.body.length>0){var E=ti(B.body[0],"textord");C=O2A[Number(E.text)]}}else B=ti(B,"textord"),C=O2A[Number(B.text)];return YDA({type:"genfrac",mode:t.mode,numer:r,denom:i,continued:!1,hasBarLine:l,barSize:g,leftDelim:a,rightDelim:o},C)}});yt({type:"infix",names:["\\above"],props:{numArgs:1,argTypes:["size"],infix:!0},handler(A,e){var{parser:t,funcName:r,token:i}=A;return{type:"infix",mode:t.mode,replaceWith:"\\\\abovefrac",size:ti(e[0],"size").value,token:i}}});yt({type:"genfrac",names:["\\\\abovefrac"],props:{numArgs:3,argTypes:["math","size","math"]},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=e[0],u=ti(e[1],"infix").size;if(!u)throw Error("\\\\abovefrac expected size, but got "+String(u));var a=e[2],n=u.number>0;return{type:"genfrac",mode:t.mode,numer:i,denom:a,continued:!1,hasBarLine:n,barSize:u,leftDelim:null,rightDelim:null}}});yt({type:"horizBrace",names:["\\overbrace","\\underbrace","\\overbracket","\\underbracket"],props:{numArgs:1},handler(A,e){var{parser:t,funcName:r}=A;return{type:"horizBrace",mode:t.mode,label:r,isOver:r.includes("\\over"),base:e[0]}},htmlBuilder:HDA,mathmlBuilder:aAt});yt({type:"href",names:["\\href"],props:{numArgs:2,argTypes:["url","original"],allowedInText:!0},handler:(A,e)=>{var{parser:t}=A,r=e[1],i=ti(e[0],"url").url;if(!t.settings.isTrusted({command:"\\href",url:i}))return t.formatUnsupportedCmd("\\href");return{type:"href",mode:t.mode,href:i,body:Fn(r)}},htmlBuilder:(A,e)=>{var t=to(A.body,e,!1);return Q$e(A.href,[],t,e)},mathmlBuilder:(A,e)=>{var t=rQ(A.body,e);if(!(t instanceof it))t=new it("mrow",[t]);return t.setAttribute("href",A.href),t}});yt({type:"href",names:["\\url"],props:{numArgs:1,argTypes:["url"],allowedInText:!0},handler:(A,e)=>{var{parser:t}=A,r=ti(e[0],"url").url;if(!t.settings.isTrusted({command:"\\url",url:r}))return t.formatUnsupportedCmd("\\url");var i=[];for(var u=0;u<r.length;u++){var a=r[u];if(a==="~")a="\\textasciitilde";i.push({type:"textord",mode:"text",text:a})}var n={type:"text",mode:t.mode,font:"\\texttt",body:i};return{type:"href",mode:t.mode,href:r,body:Fn(n)}}});yt({type:"hbox",names:["\\hbox"],props:{numArgs:1,argTypes:["text"],allowedInText:!0,primitive:!0},handler(A,e){var{parser:t}=A;return{type:"hbox",mode:t.mode,body:Fn(e[0])}},htmlBuilder(A,e){var t=to(A.body,e.withFont(""),!1);return Xd(t)},mathmlBuilder(A,e){return new it("mrow",Vl(A.body,e.withFont("")))}});yt({type:"html",names:["\\htmlClass","\\htmlId","\\htmlStyle","\\htmlData"],props:{numArgs:2,argTypes:["raw","original"],allowedInText:!0},handler:(A,e)=>{var{parser:t,funcName:r,token:i}=A,u=ti(e[0],"raw").string,a=e[1];if(t.settings.strict)t.settings.reportNonstrict("htmlExtension","HTML extension is disabled on strict mode");var n,o={};switch(r){case"\\htmlClass":o.class=u,n={command:"\\htmlClass",class:u};break;case"\\htmlId":o.id=u,n={command:"\\htmlId",id:u};break;case"\\htmlStyle":o.style=u,n={command:"\\htmlStyle",style:u};break;case"\\htmlData":{var s=u.split(",");for(var l=0;l<s.length;l++){var g=s[l],C=g.indexOf("=");if(C<0)throw new ut("\\htmlData key/value '"+g+"' missing equals sign");var B=g.slice(0,C),E=g.slice(C+1);o["data-"+B.trim()]=E}n={command:"\\htmlData",attributes:o};break}default:throw Error("Unrecognized html command")}if(!t.settings.isTrusted(n))return t.formatUnsupportedCmd(r);return{type:"html",mode:t.mode,attributes:o,body:Fn(a)}},htmlBuilder:(A,e)=>{var t=to(A.body,e,!1),r=["enclosing"];if(A.attributes.class)r.push(...A.attributes.class.trim().split(/\s+/));var i=tt(r,t,e);for(var u in A.attributes)if(u!=="class"&&A.attributes.hasOwnProperty(u))i.setAttribute(u,A.attributes[u]);return i},mathmlBuilder:(A,e)=>rQ(A.body,e)});yt({type:"htmlmathml",names:["\\html@mathml"],props:{numArgs:2,allowedInArgument:!0,allowedInText:!0},handler:(A,e)=>{var{parser:t}=A;return{type:"htmlmathml",mode:t.mode,html:Fn(e[0]),mathml:Fn(e[1])}},htmlBuilder:(A,e)=>{var t=to(A.html,e,!1);return Xd(t)},mathmlBuilder:(A,e)=>rQ(A.mathml,e)});yt({type:"includegraphics",names:["\\includegraphics"],props:{numArgs:1,numOptionalArgs:1,argTypes:["raw","url"],allowedInText:!1},handler:(A,e,t)=>{var{parser:r}=A,i={number:0,unit:"em"},u={number:0.9,unit:"em"},a={number:0,unit:"em"},n="";if(t[0]){var o=ti(t[0],"raw").string,s=o.split(",");for(var l=0;l<s.length;l++){var g=s[l].split("=");if(g.length===2){var C=g[1].trim();switch(g[0].trim()){case"alt":n=C;break;case"width":i=tV(C);break;case"height":u=tV(C);break;case"totalheight":a=tV(C);break;default:throw new ut("Invalid key: '"+g[0]+"' in \\includegraphics.")}}}}var B=ti(e[0],"url").url;if(n==="")n=B,n=n.replace(/^.*[\\/]/,""),n=n.substring(0,n.lastIndexOf("."));if(!r.settings.isTrusted({command:"\\includegraphics",url:B}))return r.formatUnsupportedCmd("\\includegraphics");return{type:"includegraphics",mode:r.mode,alt:n,width:i,height:u,totalheight:a,src:B}},htmlBuilder:(A,e)=>{var t=Sa(A.height,e),r=0;if(A.totalheight.number>0)r=Sa(A.totalheight,e)-t;var i=0;if(A.width.number>0)i=Sa(A.width,e);var u={height:gt(t+r)};if(i>0)u.width=gt(i);if(r>0)u.verticalAlign=gt(-r);var a=new nDA(A.src,A.alt,u);return a.height=t,a.depth=r,a},mathmlBuilder:(A,e)=>{var t=new it("mglyph",[]);t.setAttribute("alt",A.alt);var r=Sa(A.height,e),i=0;if(A.totalheight.number>0)i=Sa(A.totalheight,e)-r,t.setAttribute("valign",gt(-i));if(t.setAttribute("height",gt(r+i)),A.width.number>0){var u=Sa(A.width,e);t.setAttribute("width",gt(u))}return t.setAttribute("src",A.src),t}});yt({type:"kern",names:["\\kern","\\mkern","\\hskip","\\mskip"],props:{numArgs:1,argTypes:["size"],primitive:!0,allowedInText:!0},handler(A,e){var{parser:t,funcName:r}=A,i=ti(e[0],"size");if(t.settings.strict){var u=r[1]==="m",a=i.value.unit==="mu";if(u){if(!a)t.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+r+" supports only mu units, "+("not "+i.value.unit+" units"));if(t.mode!=="math")t.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+r+" works only in math mode")}else if(a)t.settings.reportNonstrict("mathVsTextUnits","LaTeX's "+r+" doesn't support mu units")}return{type:"kern",mode:t.mode,dimension:i.value}},htmlBuilder(A,e){return lDA(A.dimension,e)},mathmlBuilder(A,e){var t=Sa(A.dimension,e);return new xV(t)}});yt({type:"lap",names:["\\mathllap","\\mathrlap","\\mathclap"],props:{numArgs:1,allowedInText:!0},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=e[0];return{type:"lap",mode:t.mode,alignment:r.slice(5),body:i}},htmlBuilder:(A,e)=>{var t;if(A.alignment==="clap")t=tt([],[nu(A.body,e)]),t=tt(["inner"],[t],e);else t=tt(["inner"],[nu(A.body,e)]);var r=tt(["fix"],[]),i=tt([A.alignment],[t,r],e),u=tt(["strut"]);if(u.style.height=gt(i.height+i.depth),i.depth)u.style.verticalAlign=gt(-i.depth);return i.children.unshift(u),i=tt(["thinbox"],[i],e),tt(["mord","vbox"],[i],e)},mathmlBuilder:(A,e)=>{var t=new it("mpadded",[Gu(A.body,e)]);if(A.alignment!=="rlap"){var r=A.alignment==="llap"?"-1":"-0.5";t.setAttribute("lspace",r+"width")}return t.setAttribute("width","0px"),t}});yt({type:"styling",names:["\\(","$"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(A,e){var{funcName:t,parser:r}=A,i=r.mode;r.switchMode("math");var u=t==="\\("?"\\)":"$",a=r.parseExpression(!1,u);return r.expect(u),r.switchMode(i),{type:"styling",mode:r.mode,style:"text",resetFont:!0,body:a}}});yt({type:"text",names:["\\)","\\]"],props:{numArgs:0,allowedInText:!0,allowedInMath:!1},handler(A,e){throw new ut("Mismatched "+A.funcName)}});yt({type:"mathchoice",names:["\\mathchoice"],props:{numArgs:4,primitive:!0},handler:(A,e)=>{var{parser:t}=A;return{type:"mathchoice",mode:t.mode,display:Fn(e[0]),text:Fn(e[1]),script:Fn(e[2]),scriptscript:Fn(e[3])}},htmlBuilder:(A,e)=>{var t=_2A(A,e),r=to(t,e,!1);return Xd(r)},mathmlBuilder:(A,e)=>{var t=_2A(A,e);return rQ(t,e)}});JDA=new Set(["\\smallint"]),nAt={"∏":"\\prod","∐":"\\coprod","∑":"\\sum","⋀":"\\bigwedge","⋁":"\\bigvee","⋂":"\\bigcap","⋃":"\\bigcup","⨀":"\\bigodot","⨁":"\\bigoplus","⨂":"\\bigotimes","⨄":"\\biguplus","⨆":"\\bigsqcup"};yt({type:"op",names:["\\coprod","\\bigvee","\\bigwedge","\\biguplus","\\bigcap","\\bigcup","\\intop","\\prod","\\sum","\\bigotimes","\\bigoplus","\\bigodot","\\bigsqcup","\\smallint","∏","∐","∑","⋀","⋁","⋂","⋃","⨀","⨁","⨂","⨄","⨆"],props:{numArgs:0},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=r;if(i.length===1)i=nAt[i];return{type:"op",mode:t.mode,limits:!0,parentIsSupSub:!1,symbol:!0,name:i}},htmlBuilder:oD,mathmlBuilder:lb});yt({type:"op",names:["\\mathop"],props:{numArgs:1,primitive:!0},handler:(A,e)=>{var{parser:t}=A,r=e[0];return{type:"op",mode:t.mode,limits:!1,parentIsSupSub:!1,symbol:!1,body:Fn(r)}},htmlBuilder:oD,mathmlBuilder:lb});oAt={"∫":"\\int","∬":"\\iint","∭":"\\iiint","∮":"\\oint","∯":"\\oiint","∰":"\\oiiint"};yt({type:"op",names:["\\arcsin","\\arccos","\\arctan","\\arctg","\\arcctg","\\arg","\\ch","\\cos","\\cosec","\\cosh","\\cot","\\cotg","\\coth","\\csc","\\ctg","\\cth","\\deg","\\dim","\\exp","\\hom","\\ker","\\lg","\\ln","\\log","\\sec","\\sin","\\sinh","\\sh","\\tan","\\tanh","\\tg","\\th"],props:{numArgs:0},handler(A){var{parser:e,funcName:t}=A;return{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!1,name:t}},htmlBuilder:oD,mathmlBuilder:lb});yt({type:"op",names:["\\det","\\gcd","\\inf","\\lim","\\max","\\min","\\Pr","\\sup"],props:{numArgs:0},handler(A){var{parser:e,funcName:t}=A;return{type:"op",mode:e.mode,limits:!0,parentIsSupSub:!1,symbol:!1,name:t}},htmlBuilder:oD,mathmlBuilder:lb});yt({type:"op",names:["\\int","\\iint","\\iiint","\\oint","\\oiint","\\oiiint","∫","∬","∭","∮","∯","∰"],props:{numArgs:0,allowedInArgument:!0},handler(A){var{parser:e,funcName:t}=A,r=t;if(r.length===1)r=oAt[r];return{type:"op",mode:e.mode,limits:!1,parentIsSupSub:!1,symbol:!0,name:r}},htmlBuilder:oD,mathmlBuilder:lb});yt({type:"operatorname",names:["\\operatorname@","\\operatornamewithlimits"],props:{numArgs:1},handler:(A,e)=>{var{parser:t,funcName:r}=A,i=e[0];return{type:"operatorname",mode:t.mode,body:Fn(i),alwaysHandleSupSub:r==="\\operatornamewithlimits",limits:!1,parentIsSupSub:!1}},htmlBuilder:ODA,mathmlBuilder:sAt});xA("\\operatorname","\\@ifstar\\operatornamewithlimits\\operatorname@");Tp({type:"ordgroup",htmlBuilder(A,e){if(A.semisimple)return Xd(to(A.body,e,!1));return tt(["mord"],to(A.body,e,!0),e)},mathmlBuilder(A,e){return rQ(A.body,e,!0)}});yt({type:"overline",names:["\\overline"],props:{numArgs:1},handler(A,e){var{parser:t}=A,r=e[0];return{type:"overline",mode:t.mode,body:r}},htmlBuilder(A,e){var t=nu(A.body,e.havingCrampedStyle()),r=uD("overline-line",e),i=e.fontMetrics().defaultRuleThickness,u=au({positionType:"firstBaseline",children:[{type:"elem",elem:t},{type:"kern",size:3*i},{type:"elem",elem:r},{type:"kern",size:i}]});return tt(["mord","overline"],[u],e)},mathmlBuilder(A,e){var t=new it("mo",[new gn("‾")]);t.setAttribute("stretchy","true");var r=new it("mover",[Gu(A.body,e),t]);return r.setAttribute("accent","true"),r}});yt({type:"phantom",names:["\\phantom"],props:{numArgs:1,allowedInText:!0},handler:(A,e)=>{var{parser:t}=A,r=e[0];return{type:"phantom",mode:t.mode,body:Fn(r)}},htmlBuilder:(A,e)=>{var t=to(A.body,e.withPhantom(),!1);return Xd(t)},mathmlBuilder:(A,e)=>{var t=Vl(A.body,e);return new it("mphantom",t)}});xA("\\hphantom","\\smash{\\phantom{#1}}");yt({type:"vphantom",names:["\\vphantom"],props:{numArgs:1,allowedInText:!0},handler:(A,e)=>{var{parser:t}=A,r=e[0];return{type:"vphantom",mode:t.mode,body:r}},htmlBuilder:(A,e)=>{var t=tt(["inner"],[nu(A.body,e.withPhantom())]),r=tt(["fix"],[]);return tt(["mord","rlap"],[t,r],e)},mathmlBuilder:(A,e)=>{var t=Vl(Fn(A.body),e),r=new it("mphantom",t),i=new it("mpadded",[r]);return i.setAttribute("width","0px"),i}});yt({type:"raisebox",names:["\\raisebox"],props:{numArgs:2,argTypes:["size","hbox"],allowedInText:!0},handler(A,e){var{parser:t}=A,r=ti(e[0],"size").value,i=e[1];return{type:"raisebox",mode:t.mode,dy:r,body:i}},htmlBuilder(A,e){var t=nu(A.body,e),r=Sa(A.dy,e);return au({positionType:"shift",positionData:-r,children:[{type:"elem",elem:t}]})},mathmlBuilder(A,e){var t=new it("mpadded",[Gu(A.body,e)]),r=A.dy.number+A.dy.unit;return t.setAttribute("voffset",r),t}});yt({type:"internal",names:["\\relax"],props:{numArgs:0,allowedInText:!0,allowedInArgument:!0},handler(A){var{parser:e}=A;return{type:"internal",mode:e.mode}}});yt({type:"rule",names:["\\rule"],props:{numArgs:2,numOptionalArgs:1,allowedInText:!0,allowedInMath:!0,argTypes:["size","size","size"]},handler(A,e,t){var{parser:r}=A,i=t[0],u=ti(e[0],"size"),a=ti(e[1],"size");return{type:"rule",mode:r.mode,shift:i&&ti(i,"size").value,width:u.value,height:a.value}},htmlBuilder(A,e){var t=tt(["mord","rule"],[],e),r=Sa(A.width,e),i=Sa(A.height,e),u=A.shift?Sa(A.shift,e):0;return t.style.borderRightWidth=gt(r),t.style.borderTopWidth=gt(i),t.style.bottom=gt(u),t.width=r,t.height=i+u,t.depth=-u,t.maxFontSize=i*1.125*e.sizeMultiplier,t},mathmlBuilder(A,e){var t=Sa(A.width,e),r=Sa(A.height,e),i=A.shift?Sa(A.shift,e):0,u=e.color&&e.getColor()||"black",a=new it("mspace");a.setAttribute("mathbackground",u),a.setAttribute("width",gt(t)),a.setAttribute("height",gt(r));var n=new it("mpadded",[a]);if(i>=0)n.setAttribute("height",gt(i));else n.setAttribute("height",gt(i)),n.setAttribute("depth",gt(-i));return n.setAttribute("voffset",gt(i)),n}});W2A=["\\tiny","\\sixptsize","\\scriptsize","\\footnotesize","\\small","\\normalsize","\\large","\\Large","\\LARGE","\\huge","\\Huge"];yt({type:"sizing",names:W2A,props:{numArgs:0,allowedInText:!0},handler:(A,e)=>{var{breakOnTokenText:t,funcName:r,parser:i}=A,u=i.parseExpression(!1,t);return{type:"sizing",mode:i.mode,size:W2A.indexOf(r)+1,body:u}},htmlBuilder:lAt,mathmlBuilder:(A,e)=>{var t=e.havingSize(A.size),r=Vl(A.body,t),i=new it("mstyle",r);return i.setAttribute("mathsize",gt(t.sizeMultiplier)),i}});yt({type:"smash",names:["\\smash"],props:{numArgs:1,numOptionalArgs:1,allowedInText:!0},handler:(A,e,t)=>{var{parser:r}=A,i=!1,u=!1,a=t[0]&&ti(t[0],"ordgroup");if(a){var n;for(var o=0;o<a.body.length;++o){var s=a.body[o];if(n=yR(s).text,n==="t")i=!0;else if(n==="b")u=!0;else{i=!1,u=!1;break}}}else i=!0,u=!0;var l=e[0];return{type:"smash",mode:r.mode,body:l,smashHeight:i,smashDepth:u}},htmlBuilder:(A,e)=>{var t=tt([],[nu(A.body,e)]);if(!A.smashHeight&&!A.smashDepth)return t;if(A.smashHeight)t.height=0;if(A.smashDepth)t.depth=0;if(A.smashHeight&&A.smashDepth)return tt(["mord","smash"],[t],e);if(t.children)for(var r=0;r<t.children.length;r++){if(A.smashHeight)t.children[r].height=0;if(A.smashDepth)t.children[r].depth=0}var i=au({positionType:"firstBaseline",children:[{type:"elem",elem:t}]});return tt(["mord"],[i],e)},mathmlBuilder:(A,e)=>{var t=new it("mpadded",[Gu(A.body,e)]);if(A.smashHeight)t.setAttribute("height","0px");if(A.smashDepth)t.setAttribute("depth","0px");return t}});yt({type:"sqrt",names:["\\sqrt"],props:{numArgs:1,numOptionalArgs:1},handler(A,e,t){var{parser:r}=A,i=t[0],u=e[0];return{type:"sqrt",mode:r.mode,body:u,index:i}},htmlBuilder(A,e){var t=nu(A.body,e.havingCrampedStyle());if(t.height===0)t.height=e.fontMetrics().xHeight;t=aD(t,e);var r=e.fontMetrics(),i=r.defaultRuleThickness,u=i;if(e.style.id<qr.TEXT.id)u=e.fontMetrics().xHeight;var a=i+u/4,n=t.height+t.depth+a+i,{span:o,ruleWidth:s,advanceWidth:l}=V$e(n,e),g=o.height-s;if(g>t.height+t.depth+a)a=(a+g-t.height-t.depth)/2;var C=o.height-t.height-a-s;t.style.paddingLeft=gt(l);var B=au({positionType:"firstBaseline",children:[{type:"elem",elem:t,wrapperClasses:["svg-align"]},{type:"kern",size:-(t.height+C)},{type:"elem",elem:o},{type:"kern",size:s}]});if(!A.index)return tt(["mord","sqrt"],[B],e);else{var E=e.havingStyle(qr.SCRIPTSCRIPT),d=nu(A.index,E,e),I=0.6*(B.height-B.depth),h=au({positionType:"shift",positionData:-I,children:[{type:"elem",elem:d}]}),Q=tt(["root"],[h]);return tt(["mord","sqrt"],[Q,B],e)}},mathmlBuilder(A,e){var{body:t,index:r}=A;return r?new it("mroot",[Gu(t,e),Gu(r,e)]):new it("msqrt",[Gu(t,e)])}});mV={display:qr.DISPLAY,text:qr.TEXT,script:qr.SCRIPT,scriptscript:qr.SCRIPTSCRIPT};yt({type:"styling",names:["\\displaystyle","\\textstyle","\\scriptstyle","\\scriptscriptstyle"],props:{numArgs:0,allowedInText:!0,primitive:!0},handler(A,e){var{breakOnTokenText:t,funcName:r,parser:i}=A,u=i.parseExpression(!0,t),a=r.slice(1,r.length-5);if(!gAt(a))throw Error("Unknown style: "+a);return{type:"styling",mode:i.mode,style:a,body:u}},htmlBuilder(A,e){var t=mV[A.style],r=e.havingStyle(t);if(A.resetFont)r=r.withFont("");return PDA(A.body,r,e)},mathmlBuilder(A,e){var t=mV[A.style],r=e.havingStyle(t);if(A.resetFont)r=r.withFont("");var i=Vl(A.body,r),u=new it("mstyle",i),a={display:["0","true"],text:["0","false"],script:["1","false"],scriptscript:["2","false"]},n=a[A.style];return u.setAttribute("scriptlevel",n[0]),u.setAttribute("displaystyle",n[1]),u}});Tp({type:"supsub",htmlBuilder(A,e){var t=cAt(A,e);if(t)return t(A,e);var{base:r,sup:i,sub:u}=A,a=nu(r,e),n,o,s=e.fontMetrics(),l=0,g=0,C=r&&Vd(r);if(i){var B=e.havingStyle(e.style.sup());if(n=nu(i,B,e),!C)l=a.height-B.fontMetrics().supDrop*B.sizeMultiplier/e.sizeMultiplier}if(u){var E=e.havingStyle(e.style.sub());if(o=nu(u,E,e),!C)g=a.depth+E.fontMetrics().subDrop*E.sizeMultiplier/e.sizeMultiplier}var d;if(e.style===qr.DISPLAY)d=s.sup1;else if(e.style.cramped)d=s.sup3;else d=s.sup2;var I=e.sizeMultiplier,h=gt(0.5/s.ptPerEm/I),Q=null;if(o){var p=A.base&&A.base.type==="op"&&A.base.name&&(A.base.name==="\\oiint"||A.base.name==="\\oiiint");if(a instanceof $s||p){var m;Q=gt(-((m=a.italic)!=null?m:0))}}var f;if(n&&o){l=Math.max(l,d,n.depth+0.25*s.xHeight),g=Math.max(g,s.sub2);var D=s.defaultRuleThickness,w=4*D;if(l-n.depth-(o.height-g)<w){g=w-(l-n.depth)+o.height;var b=0.8*s.xHeight-(l-n.depth);if(b>0)l+=b,g-=b}var k=[{type:"elem",elem:o,shift:g,marginRight:h,marginLeft:Q},{type:"elem",elem:n,shift:-l,marginRight:h}];f=au({positionType:"individualShift",children:k})}else if(o){g=Math.max(g,s.sub1,o.height-0.8*s.xHeight);var v=[{type:"elem",elem:o,marginLeft:Q,marginRight:h}];f=au({positionType:"shift",positionData:g,children:v})}else if(n)l=Math.max(l,d,n.depth+0.25*s.xHeight),f=au({positionType:"shift",positionData:-l,children:[{type:"elem",elem:n,marginRight:h}]});else throw Error("supsub must have either sup or sub.");var S=IV(a,"right")||"mord";return tt([S],[a,tt(["msupsub"],[f])],e)},mathmlBuilder(A,e){var t=!1,r,i;if(A.base&&A.base.type==="horizBrace"){if(i=!!A.sup,i===A.base.isOver)t=!0,r=A.base.isOver}if(A.base&&(A.base.type==="op"||A.base.type==="operatorname"))A.base.parentIsSupSub=!0;var u=[Gu(A.base,e)];if(A.sub)u.push(Gu(A.sub,e));if(A.sup)u.push(Gu(A.sup,e));var a;if(t)a=r?"mover":"munder";else if(!A.sub){var n=A.base;if(n&&n.type==="op"&&n.limits&&(e.style===qr.DISPLAY||n.alwaysHandleSupSub))a="mover";else if(n&&n.type==="operatorname"&&n.alwaysHandleSupSub&&(n.limits||e.style===qr.DISPLAY))a="mover";else a="msup"}else if(!A.sup){var o=A.base;if(o&&o.type==="op"&&o.limits&&(e.style===qr.DISPLAY||o.alwaysHandleSupSub))a="munder";else if(o&&o.type==="operatorname"&&o.alwaysHandleSupSub&&(o.limits||e.style===qr.DISPLAY))a="munder";else a="msub"}else{var s=A.base;if(s&&s.type==="op"&&s.limits&&e.style===qr.DISPLAY)a="munderover";else if(s&&s.type==="operatorname"&&s.alwaysHandleSupSub&&(e.style===qr.DISPLAY||s.limits))a="munderover";else a="msubsup"}return new it(a,u)}});Tp({type:"atom",htmlBuilder(A,e){return kV(A.text,A.mode,e,["m"+A.family])},mathmlBuilder(A,e){var t=new it("mo",[Jg(A.text,A.mode)]);if(A.family==="bin"){var r=LV(A,e);if(r==="bold-italic")t.setAttribute("mathvariant",r)}else if(A.family==="punct")t.setAttribute("separator","true");else if(A.family==="open"||A.family==="close")t.setAttribute("stretchy","false");return t}});_DA={mi:"italic",mn:"normal",mtext:"normal"};Tp({type:"mathord",htmlBuilder(A,e){return fR(A,e,"mathord")},mathmlBuilder(A,e){var t=new it("mi",[Jg(A.text,A.mode,e)]),r=LV(A,e)||"italic";if(r!==_DA[t.type])t.setAttribute("mathvariant",r);return t}});Tp({type:"textord",htmlBuilder(A,e){return fR(A,e,"textord")},mathmlBuilder(A,e){var t=Jg(A.text,A.mode,e),r=LV(A,e)||"normal",i;if(A.mode==="text")i=new it("mtext",[t]);else if(/[0-9]/.test(A.text))i=new it("mn",[t]);else if(A.text==="\\prime")i=new it("mo",[t]);else i=new it("mi",[t]);if(r!==_DA[i.type])i.setAttribute("mathvariant",r);return i}});rV={"\\nobreak":"nobreak","\\allowbreak":"allowbreak"},iV={" ":{},"\\ ":{},"~":{className:"nobreak"},"\\space":{},"\\nobreakspace":{className:"nobreak"}};Tp({type:"spacing",htmlBuilder(A,e){if(iV.hasOwnProperty(A.text)){var t=iV[A.text].className||"";if(A.mode==="text"){var r=fR(A,e,"textord");return r.classes.push(t),r}else return tt(["mspace",t],[kV(A.text,A.mode,e)],e)}else if(rV.hasOwnProperty(A.text))return tt(["mspace",rV[A.text]],[],e);else throw new ut('Unknown type of space "'+A.text+'"')},mathmlBuilder(A,e){var t;if(iV.hasOwnProperty(A.text))t=new it("mtext",[new gn(" ")]);else if(rV.hasOwnProperty(A.text))return new it("mspace");else throw new ut('Unknown type of space "'+A.text+'"');return t}});Tp({type:"tag",mathmlBuilder(A,e){var t=new it("mtable",[new it("mtr",[q2A(),new it("mtd",[rQ(A.body,e)]),q2A(),new it("mtd",[rQ(A.tag,e)])])]);return t.setAttribute("width","100%"),t}});z2A={"\\text":void 0,"\\textrm":"textrm","\\textsf":"textsf","\\texttt":"texttt","\\textnormal":"textrm"},Z2A={"\\textbf":"textbf","\\textmd":"textmd"},CAt={"\\textit":"textit","\\textup":"textup"};yt({type:"text",names:["\\text","\\textrm","\\textsf","\\texttt","\\textnormal","\\textbf","\\textmd","\\textit","\\textup","\\emph"],props:{numArgs:1,argTypes:["text"],allowedInArgument:!0,allowedInText:!0},handler(A,e){var{parser:t,funcName:r}=A,i=e[0];return{type:"text",mode:t.mode,body:Fn(i),font:r}},htmlBuilder(A,e){var t=V2A(A,e),r=to(A.body,t,!0);return tt(["mord","text"],r,t)},mathmlBuilder(A,e){var t=V2A(A,e);return rQ(A.body,t)}});yt({type:"underline",names:["\\underline"],props:{numArgs:1,allowedInText:!0},handler(A,e){var{parser:t}=A;return{type:"underline",mode:t.mode,body:e[0]}},htmlBuilder(A,e){var t=nu(A.body,e),r=uD("underline-line",e),i=e.fontMetrics().defaultRuleThickness,u=au({positionType:"top",positionData:t.height,children:[{type:"kern",size:i},{type:"elem",elem:r},{type:"kern",size:3*i},{type:"elem",elem:t}]});return tt(["mord","underline"],[u],e)},mathmlBuilder(A,e){var t=new it("mo",[new gn("‾")]);t.setAttribute("stretchy","true");var r=new it("munder",[Gu(A.body,e),t]);return r.setAttribute("accentunder","true"),r}});yt({type:"vcenter",names:["\\vcenter"],props:{numArgs:1,argTypes:["original"],allowedInText:!1},handler(A,e){var{parser:t}=A;return{type:"vcenter",mode:t.mode,body:e[0]}},htmlBuilder(A,e){var t=nu(A.body,e),r=e.fontMetrics().axisHeight,i=0.5*(t.height-r-(t.depth+r));return au({positionType:"shift",positionData:i,children:[{type:"elem",elem:t}]})},mathmlBuilder(A,e){var t=new it("mpadded",[Gu(A.body,e)],["vcenter"]);return new it("mrow",[t])}});yt({type:"verb",names:["\\verb"],props:{numArgs:0,allowedInText:!0},handler(A,e,t){throw new ut("\\verb ended by end of line instead of matching delimiter")},htmlBuilder(A,e){var t=j2A(A),r=[],i=e.havingStyle(e.style.text());for(var u=0;u<t.length;u++){var a=t[u];if(a==="~")a="\\textasciitilde";r.push(ns(a,"Typewriter-Regular",A.mode,i,["mord","texttt"]))}return tt(["mord","text"].concat(i.sizingClasses(e)),sDA(r),i)},mathmlBuilder(A,e){var t=new gn(j2A(A)),r=new it("mtext",[t]);return r.setAttribute("mathvariant","monospace"),r}});AQ=CDA,dAt="("+BAt+")"+WDA+"*",hAt=new RegExp(DV+"+$"),QAt="("+WDA+"+)|"+(IAt+"|")+"([!-\\[\\]-‧‪-퟿豈-￿]"+(DV+"*")+"|[\uD800-\uDBFF][\uDC00-\uDFFF]"+(DV+"*")+"|\\\\verb\\*([^]).*?\\4|\\\\verb([^*a-zA-Z]).*?\\5"+("|"+dAt)+("|"+EAt+")");pAt=GDA;xA("\\noexpand",function(A){var e=A.popToken();if(A.isExpandable(e.text))e.noexpand=!0,e.treatAsRelax=!0;return{tokens:[e],numArgs:0}});xA("\\expandafter",function(A){var e=A.popToken();return A.expandOnce(!0),{tokens:[e],numArgs:0}});xA("\\@firstoftwo",function(A){var e=A.consumeArgs(2);return{tokens:e[0],numArgs:0}});xA("\\@secondoftwo",function(A){var e=A.consumeArgs(2);return{tokens:e[1],numArgs:0}});xA("\\@ifnextchar",function(A){var e=A.consumeArgs(3);A.consumeSpaces();var t=A.future();if(e[0].length===1&&e[0][0].text===t.text)return{tokens:e[1],numArgs:0};else return{tokens:e[2],numArgs:0}});xA("\\@ifstar","\\@ifnextchar *{\\@firstoftwo{#1}}");xA("\\TextOrMath",function(A){var e=A.consumeArgs(2);if(A.mode==="text")return{tokens:e[0],numArgs:0};else return{tokens:e[1],numArgs:0}});X2A={"0":0,"1":1,"2":2,"3":3,"4":4,"5":5,"6":6,"7":7,"8":8,"9":9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};xA("\\char",function(A){var e=A.popToken(),t,r=0;if(e.text==="'")t=8,e=A.popToken();else if(e.text==='"')t=16,e=A.popToken();else if(e.text==="`")if(e=A.popToken(),e.text[0]==="\\")r=e.text.charCodeAt(1);else if(e.text==="EOF")throw new ut("\\char` missing argument");else r=e.text.charCodeAt(0);else t=10;if(t){if(r=X2A[e.text],r==null||r>=t)throw new ut("Invalid base-"+t+" digit "+e.text);var i;while((i=X2A[A.future().text])!=null&&i<t)r*=t,r+=i,A.popToken()}return"\\@char{"+r+"}"});xA("\\newcommand",(A)=>MV(A,!1,!0,!1));xA("\\renewcommand",(A)=>MV(A,!0,!1,!1));xA("\\providecommand",(A)=>MV(A,!0,!0,!0));xA("\\message",(A)=>{var e=A.consumeArgs(1)[0];return console.log(e.reverse().map((t)=>t.text).join("")),""});xA("\\errmessage",(A)=>{var e=A.consumeArgs(1)[0];return console.error(e.reverse().map((t)=>t.text).join("")),""});xA("\\show",(A)=>{var e=A.popToken(),t=e.text;return console.log(e,A.macros.get(t),AQ[t],Ca.math[t],Ca.text[t]),""});xA("\\bgroup","{");xA("\\egroup","}");xA("~","\\nobreakspace");xA("\\lq","`");xA("\\rq","'");xA("\\aa","\\r a");xA("\\AA","\\r A");xA("\\textcopyright","\\html@mathml{\\textcircled{c}}{\\char`©}");xA("\\copyright","\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}");xA("\\textregistered","\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`®}");xA("ℬ","\\mathscr{B}");xA("ℰ","\\mathscr{E}");xA("ℱ","\\mathscr{F}");xA("ℋ","\\mathscr{H}");xA("ℐ","\\mathscr{I}");xA("ℒ","\\mathscr{L}");xA("ℳ","\\mathscr{M}");xA("ℛ","\\mathscr{R}");xA("ℭ","\\mathfrak{C}");xA("ℌ","\\mathfrak{H}");xA("ℨ","\\mathfrak{Z}");xA("\\Bbbk","\\Bbb{k}");xA("\\llap","\\mathllap{\\textrm{#1}}");xA("\\rlap","\\mathrlap{\\textrm{#1}}");xA("\\clap","\\mathclap{\\textrm{#1}}");xA("\\mathstrut","\\vphantom{(}");xA("\\underbar","\\underline{\\text{#1}}");xA("\\not",'\\html@mathml{\\mathrel{\\mathrlap\\@not}\\nobreak}{\\char"338}');xA("\\neq","\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`≠}}");xA("\\ne","\\neq");xA("≠","\\neq");xA("\\notin","\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}"+"{\\mathrel{\\char`∉}}");xA("∉","\\notin");xA("≘","\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}"+"}{\\mathrel{\\char`≘}}");xA("≙","\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`≘}}");xA("≚","\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`≚}}");xA("≛","\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}"+"{\\mathrel{\\char`≛}}");xA("≝","\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}"+"{\\mathrel{\\char`≝}}");xA("≞","\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}"+"{\\mathrel{\\char`≞}}");xA("≟","\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`≟}}");xA("⟂","\\perp");xA("‼","\\mathclose{!\\mkern-0.8mu!}");xA("∌","\\notni");xA("⌜","\\ulcorner");xA("⌝","\\urcorner");xA("⌞","\\llcorner");xA("⌟","\\lrcorner");xA("©","\\copyright");xA("®","\\textregistered");xA("\\ulcorner",'\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}');xA("\\urcorner",'\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}');xA("\\llcorner",'\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}');xA("\\lrcorner",'\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}');xA("\\vdots","{\\varvdots\\rule{0pt}{15pt}}");xA("⋮","\\vdots");xA("\\varGamma","\\mathit{\\Gamma}");xA("\\varDelta","\\mathit{\\Delta}");xA("\\varTheta","\\mathit{\\Theta}");xA("\\varLambda","\\mathit{\\Lambda}");xA("\\varXi","\\mathit{\\Xi}");xA("\\varPi","\\mathit{\\Pi}");xA("\\varSigma","\\mathit{\\Sigma}");xA("\\varUpsilon","\\mathit{\\Upsilon}");xA("\\varPhi","\\mathit{\\Phi}");xA("\\varPsi","\\mathit{\\Psi}");xA("\\varOmega","\\mathit{\\Omega}");xA("\\substack","\\begin{subarray}{c}#1\\end{subarray}");xA("\\colon","\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu\\relax");xA("\\boxed","\\fbox{$\\displaystyle{#1}$}");xA("\\iff","\\DOTSB\\;\\Longleftrightarrow\\;");xA("\\implies","\\DOTSB\\;\\Longrightarrow\\;");xA("\\impliedby","\\DOTSB\\;\\Longleftarrow\\;");xA("\\dddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ...}}{#1}}");xA("\\ddddot","{\\overset{\\raisebox{-0.1ex}{\\normalsize ....}}{#1}}");$2A={",":"\\dotsc","\\not":"\\dotsb","+":"\\dotsb","=":"\\dotsb","<":"\\dotsb",">":"\\dotsb","-":"\\dotsb","*":"\\dotsb",":":"\\dotsb","\\DOTSB":"\\dotsb","\\coprod":"\\dotsb","\\bigvee":"\\dotsb","\\bigwedge":"\\dotsb","\\biguplus":"\\dotsb","\\bigcap":"\\dotsb","\\bigcup":"\\dotsb","\\prod":"\\dotsb","\\sum":"\\dotsb","\\bigotimes":"\\dotsb","\\bigoplus":"\\dotsb","\\bigodot":"\\dotsb","\\bigsqcup":"\\dotsb","\\And":"\\dotsb","\\longrightarrow":"\\dotsb","\\Longrightarrow":"\\dotsb","\\longleftarrow":"\\dotsb","\\Longleftarrow":"\\dotsb","\\longleftrightarrow":"\\dotsb","\\Longleftrightarrow":"\\dotsb","\\mapsto":"\\dotsb","\\longmapsto":"\\dotsb","\\hookrightarrow":"\\dotsb","\\doteq":"\\dotsb","\\mathbin":"\\dotsb","\\mathrel":"\\dotsb","\\relbar":"\\dotsb","\\Relbar":"\\dotsb","\\xrightarrow":"\\dotsb","\\xleftarrow":"\\dotsb","\\DOTSI":"\\dotsi","\\int":"\\dotsi","\\oint":"\\dotsi","\\iint":"\\dotsi","\\iiint":"\\dotsi","\\iiiint":"\\dotsi","\\idotsint":"\\dotsi","\\DOTSX":"\\dotsx"},fAt=new Set(["bin","rel"]);xA("\\dots",function(A){var e="\\dotso",t=A.expandAfterFuture().text;if(t in $2A)e=$2A[t];else if(t.slice(0,4)==="\\not")e="\\dotsb";else if(t in Ca.math){if(fAt.has(Ca.math[t].group))e="\\dotsb"}return e});TV={")":!0,"]":!0,"\\rbrack":!0,"\\}":!0,"\\rbrace":!0,"\\rangle":!0,"\\rceil":!0,"\\rfloor":!0,"\\rgroup":!0,"\\rmoustache":!0,"\\right":!0,"\\bigr":!0,"\\biggr":!0,"\\Bigr":!0,"\\Biggr":!0,$:!0,";":!0,".":!0,",":!0};xA("\\dotso",function(A){var e=A.future().text;if(e in TV)return"\\ldots\\,";else return"\\ldots"});xA("\\dotsc",function(A){var e=A.future().text;if(e in TV&&e!==",")return"\\ldots\\,";else return"\\ldots"});xA("\\cdots",function(A){var e=A.future().text;if(e in TV)return"\\@cdots\\,";else return"\\@cdots"});xA("\\dotsb","\\cdots");xA("\\dotsm","\\cdots");xA("\\dotsi","\\!\\cdots");xA("\\dotsx","\\ldots\\,");xA("\\DOTSI","\\relax");xA("\\DOTSB","\\relax");xA("\\DOTSX","\\relax");xA("\\tmspace","\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax");xA("\\,","\\tmspace+{3mu}{.1667em}");xA("\\thinspace","\\,");xA("\\>","\\mskip{4mu}");xA("\\:","\\tmspace+{4mu}{.2222em}");xA("\\medspace","\\:");xA("\\;","\\tmspace+{5mu}{.2777em}");xA("\\thickspace","\\;");xA("\\!","\\tmspace-{3mu}{.1667em}");xA("\\negthinspace","\\!");xA("\\negmedspace","\\tmspace-{4mu}{.2222em}");xA("\\negthickspace","\\tmspace-{5mu}{.277em}");xA("\\enspace","\\kern.5em ");xA("\\enskip","\\hskip.5em\\relax");xA("\\quad","\\hskip1em\\relax");xA("\\qquad","\\hskip2em\\relax");xA("\\tag","\\@ifstar\\tag@literal\\tag@paren");xA("\\tag@paren","\\tag@literal{({#1})}");xA("\\tag@literal",(A)=>{if(A.macros.get("\\df@tag"))throw new ut("Multiple \\tag");return"\\gdef\\df@tag{\\text{#1}}"});xA("\\bmod","\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}");xA("\\pod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)");xA("\\pmod","\\pod{{\\rm mod}\\mkern6mu#1}");xA("\\mod","\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1");xA("\\newline","\\\\\\relax");xA("\\TeX","\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}");zDA=gt(GB["Main-Regular"][84][1]-0.7*GB["Main-Regular"][65][1]);xA("\\LaTeX","\\textrm{\\html@mathml{"+("L\\kern-.36em\\raisebox{"+zDA+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{LaTeX}}");xA("\\KaTeX","\\textrm{\\html@mathml{"+("K\\kern-.17em\\raisebox{"+zDA+"}{\\scriptstyle A}")+"\\kern-.15em\\TeX}{KaTeX}}");xA("\\hspace","\\@ifstar\\@hspacer\\@hspace");xA("\\@hspace","\\hskip #1\\relax");xA("\\@hspacer","\\rule{0pt}{0pt}\\hskip #1\\relax");xA("\\ordinarycolon",":");xA("\\vcentcolon","\\mathrel{\\mathop\\ordinarycolon}");xA("\\dblcolon",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}');xA("\\coloneqq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}');xA("\\Coloneqq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}');xA("\\coloneq",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}');xA("\\Coloneq",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}');xA("\\eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}');xA("\\Eqqcolon",'\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}');xA("\\eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}');xA("\\Eqcolon",'\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}');xA("\\colonapprox",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}');xA("\\Colonapprox",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}');xA("\\colonsim",'\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}');xA("\\Colonsim",'\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}');xA("∷","\\dblcolon");xA("∹","\\eqcolon");xA("≔","\\coloneqq");xA("≕","\\eqqcolon");xA("⩴","\\Coloneqq");xA("\\ratio","\\vcentcolon");xA("\\coloncolon","\\dblcolon");xA("\\colonequals","\\coloneqq");xA("\\coloncolonequals","\\Coloneqq");xA("\\equalscolon","\\eqqcolon");xA("\\equalscoloncolon","\\Eqqcolon");xA("\\colonminus","\\coloneq");xA("\\coloncolonminus","\\Coloneq");xA("\\minuscolon","\\eqcolon");xA("\\minuscoloncolon","\\Eqcolon");xA("\\coloncolonapprox","\\Colonapprox");xA("\\coloncolonsim","\\Colonsim");xA("\\simcolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}");xA("\\simcoloncolon","\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}");xA("\\approxcolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}");xA("\\approxcoloncolon","\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}");xA("\\notni","\\html@mathml{\\not\\ni}{\\mathrel{\\char`∌}}");xA("\\limsup","\\DOTSB\\operatorname*{lim\\,sup}");xA("\\liminf","\\DOTSB\\operatorname*{lim\\,inf}");xA("\\injlim","\\DOTSB\\operatorname*{inj\\,lim}");xA("\\projlim","\\DOTSB\\operatorname*{proj\\,lim}");xA("\\varlimsup","\\DOTSB\\operatorname*{\\overline{lim}}");xA("\\varliminf","\\DOTSB\\operatorname*{\\underline{lim}}");xA("\\varinjlim","\\DOTSB\\operatorname*{\\underrightarrow{lim}}");xA("\\varprojlim","\\DOTSB\\operatorname*{\\underleftarrow{lim}}");xA("\\gvertneqq","\\html@mathml{\\@gvertneqq}{≩}");xA("\\lvertneqq","\\html@mathml{\\@lvertneqq}{≨}");xA("\\ngeqq","\\html@mathml{\\@ngeqq}{≱}");xA("\\ngeqslant","\\html@mathml{\\@ngeqslant}{≱}");xA("\\nleqq","\\html@mathml{\\@nleqq}{≰}");xA("\\nleqslant","\\html@mathml{\\@nleqslant}{≰}");xA("\\nshortmid","\\html@mathml{\\@nshortmid}{∤}");xA("\\nshortparallel","\\html@mathml{\\@nshortparallel}{∦}");xA("\\nsubseteqq","\\html@mathml{\\@nsubseteqq}{⊈}");xA("\\nsupseteqq","\\html@mathml{\\@nsupseteqq}{⊉}");xA("\\varsubsetneq","\\html@mathml{\\@varsubsetneq}{⊊}");xA("\\varsubsetneqq","\\html@mathml{\\@varsubsetneqq}{⫋}");xA("\\varsupsetneq","\\html@mathml{\\@varsupsetneq}{⊋}");xA("\\varsupsetneqq","\\html@mathml{\\@varsupsetneqq}{⫌}");xA("\\imath","\\html@mathml{\\@imath}{ı}");xA("\\jmath","\\html@mathml{\\@jmath}{ȷ}");xA("\\llbracket","\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}"+"{\\mathopen{\\char`⟦}}");xA("\\rrbracket","\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}"+"{\\mathclose{\\char`⟧}}");xA("⟦","\\llbracket");xA("⟧","\\rrbracket");xA("\\lBrace","\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}"+"{\\mathopen{\\char`⦃}}");xA("\\rBrace","\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}"+"{\\mathclose{\\char`⦄}}");xA("⦃","\\lBrace");xA("⦄","\\rBrace");xA("\\minuso","\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}"+"{\\char`⦵}}");xA("⦵","\\minuso");xA("\\darr","\\downarrow");xA("\\dArr","\\Downarrow");xA("\\Darr","\\Downarrow");xA("\\lang","\\langle");xA("\\rang","\\rangle");xA("\\uarr","\\uparrow");xA("\\uArr","\\Uparrow");xA("\\Uarr","\\Uparrow");xA("\\N","\\mathbb{N}");xA("\\R","\\mathbb{R}");xA("\\Z","\\mathbb{Z}");xA("\\alef","\\aleph");xA("\\alefsym","\\aleph");xA("\\Alpha","\\mathrm{A}");xA("\\Beta","\\mathrm{B}");xA("\\bull","\\bullet");xA("\\Chi","\\mathrm{X}");xA("\\clubs","\\clubsuit");xA("\\cnums","\\mathbb{C}");xA("\\Complex","\\mathbb{C}");xA("\\Dagger","\\ddagger");xA("\\diamonds","\\diamondsuit");xA("\\empty","\\emptyset");xA("\\Epsilon","\\mathrm{E}");xA("\\Eta","\\mathrm{H}");xA("\\exist","\\exists");xA("\\harr","\\leftrightarrow");xA("\\hArr","\\Leftrightarrow");xA("\\Harr","\\Leftrightarrow");xA("\\hearts","\\heartsuit");xA("\\image","\\Im");xA("\\infin","\\infty");xA("\\Iota","\\mathrm{I}");xA("\\isin","\\in");xA("\\Kappa","\\mathrm{K}");xA("\\larr","\\leftarrow");xA("\\lArr","\\Leftarrow");xA("\\Larr","\\Leftarrow");xA("\\lrarr","\\leftrightarrow");xA("\\lrArr","\\Leftrightarrow");xA("\\Lrarr","\\Leftrightarrow");xA("\\Mu","\\mathrm{M}");xA("\\natnums","\\mathbb{N}");xA("\\Nu","\\mathrm{N}");xA("\\Omicron","\\mathrm{O}");xA("\\plusmn","\\pm");xA("\\rarr","\\rightarrow");xA("\\rArr","\\Rightarrow");xA("\\Rarr","\\Rightarrow");xA("\\real","\\Re");xA("\\reals","\\mathbb{R}");xA("\\Reals","\\mathbb{R}");xA("\\Rho","\\mathrm{P}");xA("\\sdot","\\cdot");xA("\\sect","\\S");xA("\\spades","\\spadesuit");xA("\\sub","\\subset");xA("\\sube","\\subseteq");xA("\\supe","\\supseteq");xA("\\Tau","\\mathrm{T}");xA("\\thetasym","\\vartheta");xA("\\weierp","\\wp");xA("\\Zeta","\\mathrm{Z}");xA("\\argmin","\\DOTSB\\operatorname*{arg\\,min}");xA("\\argmax","\\DOTSB\\operatorname*{arg\\,max}");xA("\\plim","\\DOTSB\\mathop{\\operatorname{plim}}\\limits");xA("\\bra","\\mathinner{\\langle{#1}|}");xA("\\ket","\\mathinner{|{#1}\\rangle}");xA("\\braket","\\mathinner{\\langle{#1}\\rangle}");xA("\\Bra","\\left\\langle#1\\right|");xA("\\Ket","\\left|#1\\right\\rangle");xA("\\bra@ket",ZDA(!1));xA("\\bra@set",ZDA(!0));xA("\\Braket","\\bra@ket{\\left\\langle}{\\,\\middle\\vert\\,}{\\,\\middle\\vert\\,}{\\right\\rangle}");xA("\\Set","\\bra@set{\\left\\{\\:}{\\;\\middle\\vert\\;}{\\;\\middle\\Vert\\;}{\\:\\right\\}}");xA("\\set","\\bra@set{\\{\\,}{\\mid}{}{\\,\\}}");xA("\\angln","{\\angl n}");xA("\\blue","\\textcolor{##6495ed}{#1}");xA("\\orange","\\textcolor{##ffa500}{#1}");xA("\\pink","\\textcolor{##ff00af}{#1}");xA("\\red","\\textcolor{##df0030}{#1}");xA("\\green","\\textcolor{##28ae7b}{#1}");xA("\\gray","\\textcolor{gray}{#1}");xA("\\purple","\\textcolor{##9d38bd}{#1}");xA("\\blueA","\\textcolor{##ccfaff}{#1}");xA("\\blueB","\\textcolor{##80f6ff}{#1}");xA("\\blueC","\\textcolor{##63d9ea}{#1}");xA("\\blueD","\\textcolor{##11accd}{#1}");xA("\\blueE","\\textcolor{##0c7f99}{#1}");xA("\\tealA","\\textcolor{##94fff5}{#1}");xA("\\tealB","\\textcolor{##26edd5}{#1}");xA("\\tealC","\\textcolor{##01d1c1}{#1}");xA("\\tealD","\\textcolor{##01a995}{#1}");xA("\\tealE","\\textcolor{##208170}{#1}");xA("\\greenA","\\textcolor{##b6ffb0}{#1}");xA("\\greenB","\\textcolor{##8af281}{#1}");xA("\\greenC","\\textcolor{##74cf70}{#1}");xA("\\greenD","\\textcolor{##1fab54}{#1}");xA("\\greenE","\\textcolor{##0d923f}{#1}");xA("\\goldA","\\textcolor{##ffd0a9}{#1}");xA("\\goldB","\\textcolor{##ffbb71}{#1}");xA("\\goldC","\\textcolor{##ff9c39}{#1}");xA("\\goldD","\\textcolor{##e07d10}{#1}");xA("\\goldE","\\textcolor{##a75a05}{#1}");xA("\\redA","\\textcolor{##fca9a9}{#1}");xA("\\redB","\\textcolor{##ff8482}{#1}");xA("\\redC","\\textcolor{##f9685d}{#1}");xA("\\redD","\\textcolor{##e84d39}{#1}");xA("\\redE","\\textcolor{##bc2612}{#1}");xA("\\maroonA","\\textcolor{##ffbde0}{#1}");xA("\\maroonB","\\textcolor{##ff92c6}{#1}");xA("\\maroonC","\\textcolor{##ed5fa6}{#1}");xA("\\maroonD","\\textcolor{##ca337c}{#1}");xA("\\maroonE","\\textcolor{##9e034e}{#1}");xA("\\purpleA","\\textcolor{##ddd7ff}{#1}");xA("\\purpleB","\\textcolor{##c6b9fc}{#1}");xA("\\purpleC","\\textcolor{##aa87ff}{#1}");xA("\\purpleD","\\textcolor{##7854ab}{#1}");xA("\\purpleE","\\textcolor{##543b78}{#1}");xA("\\mintA","\\textcolor{##f5f9e8}{#1}");xA("\\mintB","\\textcolor{##edf2df}{#1}");xA("\\mintC","\\textcolor{##e0e5cc}{#1}");xA("\\grayA","\\textcolor{##f6f7f7}{#1}");xA("\\grayB","\\textcolor{##f0f1f2}{#1}");xA("\\grayC","\\textcolor{##e3e5e6}{#1}");xA("\\grayD","\\textcolor{##d6d8da}{#1}");xA("\\grayE","\\textcolor{##babec2}{#1}");xA("\\grayF","\\textcolor{##888d93}{#1}");xA("\\grayG","\\textcolor{##626569}{#1}");xA("\\grayH","\\textcolor{##3b3e40}{#1}");xA("\\grayI","\\textcolor{##21242c}{#1}");xA("\\kaBlue","\\textcolor{##314453}{#1}");xA("\\kaGreen","\\textcolor{##71B307}{#1}");VDA={"^":!0,_:!0,"\\limits":!0,"\\nolimits":!0};ADA=/^[₊₋₌₍₎₀₁₂₃₄₅₆₇₈₉ₐₑₕᵢⱼₖₗₘₙₒₚᵣₛₜᵤᵥₓᵦᵧᵨᵩᵪ]/,oR=Object.freeze({"₊":"+","₋":"-","₌":"=","₍":"(","₎":")","₀":"0","₁":"1","₂":"2","₃":"3","₄":"4","₅":"5","₆":"6","₇":"7","₈":"8","₉":"9","ₐ":"a","ₑ":"e","ₕ":"h","ᵢ":"i","ⱼ":"j","ₖ":"k","ₗ":"l","ₘ":"m","ₙ":"n","ₒ":"o","ₚ":"p","ᵣ":"r","ₛ":"s","ₜ":"t","ᵤ":"u","ᵥ":"v","ₓ":"x","ᵦ":"β","ᵧ":"γ","ᵨ":"ρ","ᵩ":"ϕ","ᵪ":"χ","⁺":"+","⁻":"-","⁼":"=","⁽":"(","⁾":")","⁰":"0","¹":"1","²":"2","³":"3","⁴":"4","⁵":"5","⁶":"6","⁷":"7","⁸":"8","⁹":"9","ᴬ":"A","ᴮ":"B","ᴰ":"D","ᴱ":"E","ᴳ":"G","ᴴ":"H","ᴵ":"I","ᴶ":"J","ᴷ":"K","ᴸ":"L","ᴹ":"M","ᴺ":"N","ᴼ":"O","ᴾ":"P","ᴿ":"R","ᵀ":"T","ᵁ":"U","ⱽ":"V","ᵂ":"W","ᵃ":"a","ᵇ":"b","ᶜ":"c","ᵈ":"d","ᵉ":"e","ᶠ":"f","ᵍ":"g","ʰ":"h","ⁱ":"i","ʲ":"j","ᵏ":"k","ˡ":"l","ᵐ":"m","ⁿ":"n","ᵒ":"o","ᵖ":"p","ʳ":"r","ˢ":"s","ᵗ":"t","ᵘ":"u","ᵛ":"v","ʷ":"w","ˣ":"x","ʸ":"y","ᶻ":"z","ᵝ":"β","ᵞ":"γ","ᵟ":"δ","ᵠ":"ϕ","ᵡ":"χ","ᶿ":"θ"}),uV={"́":{text:"\\'",math:"\\acute"},"̀":{text:"\\`",math:"\\grave"},"̈":{text:"\\\"",math:"\\ddot"},"̃":{text:"\\~",math:"\\tilde"},"̄":{text:"\\=",math:"\\bar"},"̆":{text:"\\u",math:"\\breve"},"̌":{text:"\\v",math:"\\check"},"̂":{text:"\\^",math:"\\hat"},"̇":{text:"\\.",math:"\\dot"},"̊":{text:"\\r",math:"\\mathring"},"̋":{text:"\\H"},"̧":{text:"\\c"}},eDA={"á":"á","à":"à","ä":"ä","ǟ":"ǟ","ã":"ã","ā":"ā","ă":"ă","ắ":"ắ","ằ":"ằ","ẵ":"ẵ","ǎ":"ǎ","â":"â","ấ":"ấ","ầ":"ầ","ẫ":"ẫ","ȧ":"ȧ","ǡ":"ǡ","å":"å","ǻ":"ǻ","ḃ":"ḃ","ć":"ć","ḉ":"ḉ","č":"č","ĉ":"ĉ","ċ":"ċ","ç":"ç","ď":"ď","ḋ":"ḋ","ḑ":"ḑ","é":"é","è":"è","ë":"ë","ẽ":"ẽ","ē":"ē","ḗ":"ḗ","ḕ":"ḕ","ĕ":"ĕ","ḝ":"ḝ","ě":"ě","ê":"ê","ế":"ế","ề":"ề","ễ":"ễ","ė":"ė","ȩ":"ȩ","ḟ":"ḟ","ǵ":"ǵ","ḡ":"ḡ","ğ":"ğ","ǧ":"ǧ","ĝ":"ĝ","ġ":"ġ","ģ":"ģ","ḧ":"ḧ","ȟ":"ȟ","ĥ":"ĥ","ḣ":"ḣ","ḩ":"ḩ","í":"í","ì":"ì","ï":"ï","ḯ":"ḯ","ĩ":"ĩ","ī":"ī","ĭ":"ĭ","ǐ":"ǐ","î":"î","ǰ":"ǰ","ĵ":"ĵ","ḱ":"ḱ","ǩ":"ǩ","ķ":"ķ","ĺ":"ĺ","ľ":"ľ","ļ":"ļ","ḿ":"ḿ","ṁ":"ṁ","ń":"ń","ǹ":"ǹ","ñ":"ñ","ň":"ň","ṅ":"ṅ","ņ":"ņ","ó":"ó","ò":"ò","ö":"ö","ȫ":"ȫ","õ":"õ","ṍ":"ṍ","ṏ":"ṏ","ȭ":"ȭ","ō":"ō","ṓ":"ṓ","ṑ":"ṑ","ŏ":"ŏ","ǒ":"ǒ","ô":"ô","ố":"ố","ồ":"ồ","ỗ":"ỗ","ȯ":"ȯ","ȱ":"ȱ","ő":"ő","ṕ":"ṕ","ṗ":"ṗ","ŕ":"ŕ","ř":"ř","ṙ":"ṙ","ŗ":"ŗ","ś":"ś","ṥ":"ṥ","š":"š","ṧ":"ṧ","ŝ":"ŝ","ṡ":"ṡ","ş":"ş","ẗ":"ẗ","ť":"ť","ṫ":"ṫ","ţ":"ţ","ú":"ú","ù":"ù","ü":"ü","ǘ":"ǘ","ǜ":"ǜ","ǖ":"ǖ","ǚ":"ǚ","ũ":"ũ","ṹ":"ṹ","ū":"ū","ṻ":"ṻ","ŭ":"ŭ","ǔ":"ǔ","û":"û","ů":"ů","ű":"ű","ṽ":"ṽ","ẃ":"ẃ","ẁ":"ẁ","ẅ":"ẅ","ŵ":"ŵ","ẇ":"ẇ","ẘ":"ẘ","ẍ":"ẍ","ẋ":"ẋ","ý":"ý","ỳ":"ỳ","ÿ":"ÿ","ỹ":"ỹ","ȳ":"ȳ","ŷ":"ŷ","ẏ":"ẏ","ẙ":"ẙ","ź":"ź","ž":"ž","ẑ":"ẑ","ż":"ż","Á":"Á","À":"À","Ä":"Ä","Ǟ":"Ǟ","Ã":"Ã","Ā":"Ā","Ă":"Ă","Ắ":"Ắ","Ằ":"Ằ","Ẵ":"Ẵ","Ǎ":"Ǎ","Â":"Â","Ấ":"Ấ","Ầ":"Ầ","Ẫ":"Ẫ","Ȧ":"Ȧ","Ǡ":"Ǡ","Å":"Å","Ǻ":"Ǻ","Ḃ":"Ḃ","Ć":"Ć","Ḉ":"Ḉ","Č":"Č","Ĉ":"Ĉ","Ċ":"Ċ","Ç":"Ç","Ď":"Ď","Ḋ":"Ḋ","Ḑ":"Ḑ","É":"É","È":"È","Ë":"Ë","Ẽ":"Ẽ","Ē":"Ē","Ḗ":"Ḗ","Ḕ":"Ḕ","Ĕ":"Ĕ","Ḝ":"Ḝ","Ě":"Ě","Ê":"Ê","Ế":"Ế","Ề":"Ề","Ễ":"Ễ","Ė":"Ė","Ȩ":"Ȩ","Ḟ":"Ḟ","Ǵ":"Ǵ","Ḡ":"Ḡ","Ğ":"Ğ","Ǧ":"Ǧ","Ĝ":"Ĝ","Ġ":"Ġ","Ģ":"Ģ","Ḧ":"Ḧ","Ȟ":"Ȟ","Ĥ":"Ĥ","Ḣ":"Ḣ","Ḩ":"Ḩ","Í":"Í","Ì":"Ì","Ï":"Ï","Ḯ":"Ḯ","Ĩ":"Ĩ","Ī":"Ī","Ĭ":"Ĭ","Ǐ":"Ǐ","Î":"Î","İ":"İ","Ĵ":"Ĵ","Ḱ":"Ḱ","Ǩ":"Ǩ","Ķ":"Ķ","Ĺ":"Ĺ","Ľ":"Ľ","Ļ":"Ļ","Ḿ":"Ḿ","Ṁ":"Ṁ","Ń":"Ń","Ǹ":"Ǹ","Ñ":"Ñ","Ň":"Ň","Ṅ":"Ṅ","Ņ":"Ņ","Ó":"Ó","Ò":"Ò","Ö":"Ö","Ȫ":"Ȫ","Õ":"Õ","Ṍ":"Ṍ","Ṏ":"Ṏ","Ȭ":"Ȭ","Ō":"Ō","Ṓ":"Ṓ","Ṑ":"Ṑ","Ŏ":"Ŏ","Ǒ":"Ǒ","Ô":"Ô","Ố":"Ố","Ồ":"Ồ","Ỗ":"Ỗ","Ȯ":"Ȯ","Ȱ":"Ȱ","Ő":"Ő","Ṕ":"Ṕ","Ṗ":"Ṗ","Ŕ":"Ŕ","Ř":"Ř","Ṙ":"Ṙ","Ŗ":"Ŗ","Ś":"Ś","Ṥ":"Ṥ","Š":"Š","Ṧ":"Ṧ","Ŝ":"Ŝ","Ṡ":"Ṡ","Ş":"Ş","Ť":"Ť","Ṫ":"Ṫ","Ţ":"Ţ","Ú":"Ú","Ù":"Ù","Ü":"Ü","Ǘ":"Ǘ","Ǜ":"Ǜ","Ǖ":"Ǖ","Ǚ":"Ǚ","Ũ":"Ũ","Ṹ":"Ṹ","Ū":"Ū","Ṻ":"Ṻ","Ŭ":"Ŭ","Ǔ":"Ǔ","Û":"Û","Ů":"Ů","Ű":"Ű","Ṽ":"Ṽ","Ẃ":"Ẃ","Ẁ":"Ẁ","Ẅ":"Ẅ","Ŵ":"Ŵ","Ẇ":"Ẇ","Ẍ":"Ẍ","Ẋ":"Ẋ","Ý":"Ý","Ỳ":"Ỳ","Ÿ":"Ÿ","Ỹ":"Ỹ","Ȳ":"Ȳ","Ŷ":"Ŷ","Ẏ":"Ẏ","Ź":"Ź","Ž":"Ž","Ẑ":"Ẑ","Ż":"Ż","ά":"ά","ὰ":"ὰ","ᾱ":"ᾱ","ᾰ":"ᾰ","έ":"έ","ὲ":"ὲ","ή":"ή","ὴ":"ὴ","ί":"ί","ὶ":"ὶ","ϊ":"ϊ","ΐ":"ΐ","ῒ":"ῒ","ῑ":"ῑ","ῐ":"ῐ","ό":"ό","ὸ":"ὸ","ύ":"ύ","ὺ":"ὺ","ϋ":"ϋ","ΰ":"ΰ","ῢ":"ῢ","ῡ":"ῡ","ῠ":"ῠ","ώ":"ώ","ὼ":"ὼ","Ύ":"Ύ","Ὺ":"Ὺ","Ϋ":"Ϋ","Ῡ":"Ῡ","Ῠ":"Ῠ","Ώ":"Ώ","Ὼ":"Ὼ"};SR.endOfExpression=new Set(["}","\\endgroup","\\end","\\right","&"]);if(typeof document<"u"){if(document.compatMode!=="CSS1Compat")typeof console<"u"&&console.warn("Warning: KaTeX doesn't work in quirks mode. Make sure your website has a suitable doctype."),XDA=function(){throw new ut("KaTeX doesn't work in quirks mode.")}}bAt={Span:Mp,Anchor:ob,SymbolNode:$s,SvgNode:UB,PathNode:Zd,LineNode:BR},AyA={version:wAt,render:XDA,renderToString:mAt,ParseError:ut,SETTINGS_SCHEMA:aV,__parse:DAt,__renderToDomTree:HV,__renderToHTMLTree:yAt,__setFontMetrics:c$e,__defineSymbol:V,__defineFunction:yt,__defineMacro:xA,__domTree:bAt}});function dyA(){js.addHook("beforeSanitizeAttributes",(e)=>{if(e.tagName==="A"&&e.hasAttribute("target"))e.setAttribute("data-temp-href-target",e.getAttribute("target")??"")}),js.addHook("afterSanitizeAttributes",(e)=>{if(e.tagName==="A"&&e.hasAttribute("data-temp-href-target")){if(e.setAttribute("target",e.getAttribute("data-temp-href-target")??""),e.removeAttribute("data-temp-href-target"),e.getAttribute("target")==="_blank")e.setAttribute("rel","noopener")}})}function TR(A){return[...A.cssRules].map((e)=>e.cssText).join(`
`)}var KV,Ea,KB="#ffffff",JB="#f2f2f2",vr,vAt,kAt,FAt,xAt,SAt,L0,LAt,RAt,NAt,GAt,UAt,MAt,TAt,YAt,HAt,KAt,JAt,OAt,PAt,_At,WAt,qAt,HB,$o,ayA,nyA,zAt,ur,ZAt,VAt,cb,OV,Hp,Og,Al,NR,Yp,gb,Cb,oyA,syA,lyA,PV,_V,ot,gyA,cyA,Bb,jAt,tyA,CyA,XAt,UR,Fi,WV,sD,$At,qV,uQ,Eb,MR,ByA,EyA,Kp,Aet,eet,IyA,ryA,gr,tet,ret,iet,uet,hyA,Jp,aet,net,OB,JV,oet,set,iyA,LR,da,lD,get,gD,_e,cet,Cet,Xr,PB,RR,Bet,Eet,QyA,YR,zV="",ZV="",VV="",jV,cr,Dr,kr,Fr,xr,Tr,Sr,uyA,det,OA,db,HR,KR,Ib,Iet,GR,hb,JR,het;var rr=_(()=>{ir();Nt();vn();vn();vn();vn();vn();vn();vn();vn();vn();vn();vn();vn();$2();KV=y((A,e,{depth:t=2}={})=>{let r={depth:t};if(Array.isArray(e)&&!Array.isArray(A))return e.forEach((i)=>KV(A,i,r)),A;else if(Array.isArray(e)&&Array.isArray(A))return e.forEach((i)=>{if(!A.includes(i))A.push(i)}),A;if(A===void 0||A===null||t<=0)if(A!==void 0&&A!==null&&typeof A==="object"&&typeof e==="object")return Object.assign(A,e);else return e;if(e!==void 0&&e!==null&&typeof A==="object"&&typeof e==="object"){let i=A;Object.entries(e).forEach(([u,a])=>{if(typeof a==="object"){if(a===null)return;if(!Object.hasOwn(A,u))Object.defineProperty(A,u,{value:void 0,writable:!0,enumerable:!0,configurable:!0});if(i[u]===void 0)i[u]=Array.isArray(a)?[]:{};if(typeof i[u]==="object")i[u]=KV(i[u],a,{depth:t-1})}else if(typeof i[u]!=="object")if(Object.hasOwn(A,u))i[u]=a;else Object.defineProperty(A,u,{value:a,writable:!0,enumerable:!0,configurable:!0})})}return A},"assignWithDepth"),Ea=KV,vr=y((A,e)=>e?QA(A,{s:-40,l:10}):QA(A,{s:-40,l:-10}),"mkBorder"),vAt=class{static{y(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.useGradient=!0,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,1))"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||vr(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||vr(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||vr(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||ie(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ie(this.tertiaryColor),this.lineColor=this.lineColor||ie(this.background),this.arrowheadColor=this.arrowheadColor||ie(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ie(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.vertLineColor=this.vertLineColor||"navy",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.noteFontWeight=this.noteFontWeight||"normal",this.fontWeight=this.fontWeight||"normal",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.darkMode)this.rowOdd=this.rowOdd||he(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||he(this.mainBkg,10);else this.rowOdd=this.rowOdd||Ie(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||Ie(this.mainBkg,5);if(this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330}),this.darkMode)for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],75);else for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],25);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||ie(this["cScale"+e]);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)if(this.darkMode)this["cScalePeer"+e]=this["cScalePeer"+e]||Ie(this["cScale"+e],10);else this["cScalePeer"+e]=this["cScalePeer"+e]||he(this["cScale"+e],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=this["cScaleLabel"+e]||this.scaleLabelColor;let A=this.darkMode?-4:-1;for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(5+e*3)}),this["surfacePeer"+e]=this["surfacePeer"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(8+e*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||QA(this.primaryColor,{h:64}),this.fillType3=this.fillType3||QA(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||QA(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||QA(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||QA(this.primaryColor,{h:128}),this.fillType7=this.fillType7||QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||QA(this.primaryColor,{l:-10}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-10}),this.pie6=this.pie6||QA(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||QA(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.venn1=this.venn1??QA(this.primaryColor,{l:-30}),this.venn2=this.venn2??QA(this.secondaryColor,{l:-30}),this.venn3=this.venn3??QA(this.tertiaryColor,{l:-30}),this.venn4=this.venn4??QA(this.primaryColor,{h:60,l:-30}),this.venn5=this.venn5??QA(this.primaryColor,{h:-60,l:-30}),this.venn6=this.venn6??QA(this.secondaryColor,{h:60,l:-30}),this.venn7=this.venn7??QA(this.primaryColor,{h:120,l:-30}),this.venn8=this.venn8??QA(this.secondaryColor,{h:120,l:-30}),this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.cynefin={domainFontSize:this.cynefin?.domainFontSize||16,itemFontSize:this.cynefin?.itemFontSize||12,boundaryColor:this.cynefin?.boundaryColor||this.lineColor,boundaryWidth:this.cynefin?.boundaryWidth||2,cliffColor:this.cynefin?.cliffColor||"#8B0000",cliffWidth:this.cynefin?.cliffWidth||4,arrowColor:this.cynefin?.arrowColor||this.lineColor,arrowWidth:this.cynefin?.arrowWidth||2,complexBg:this.cynefin?.complexBg||"#E8F5E9",complicatedBg:this.cynefin?.complicatedBg||"#E3F2FD",chaoticBg:this.cynefin?.chaoticBg||"#FBE9E7",clearBg:this.cynefin?.clearBg||"#FFF8E1",confusionBg:this.cynefin?.confusionBg||"#F3E5F5",textColor:this.cynefin?.textColor||this.textColor,labelColor:this.cynefin?.labelColor||this.primaryTextColor},this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||0.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||0.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.wardleyEvolutionColor=this.wardleyEvolutionColor||"#dc3545",this.wardley={backgroundColor:this.wardley?.backgroundColor||this.background,axisColor:this.wardley?.axisColor||this.lineColor,axisTextColor:this.wardley?.axisTextColor||this.primaryTextColor,gridColor:this.wardley?.gridColor||this.gridColor,componentFill:this.wardley?.componentFill||this.background,componentStroke:this.wardley?.componentStroke||this.lineColor,componentLabelColor:this.wardley?.componentLabelColor||this.primaryTextColor,linkStroke:this.wardley?.linkStroke||this.lineColor,evolutionStroke:this.wardley?.evolutionStroke||this.wardleyEvolutionColor,annotationStroke:this.wardley?.annotationStroke||this.lineColor,annotationTextColor:this.wardley?.annotationTextColor||this.primaryTextColor,annotationFill:this.wardley?.annotationFill||this.background},this.archEdgeColor=this.archEdgeColor||"#777",this.archEdgeArrowColor=this.archEdgeArrowColor||"#777",this.archEdgeWidth=this.archEdgeWidth||"3",this.archGroupBorderColor=this.archGroupBorderColor||"#000",this.archGroupBorderWidth=this.archGroupBorderWidth||"2px",this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,dataLabelColor:this.xyChart?.dataLabelColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||QA(this.primaryColor,{h:-30}),this.git4=this.git4||QA(this.primaryColor,{h:-60}),this.git5=this.git5||QA(this.primaryColor,{h:-90}),this.git6=this.git6||QA(this.primaryColor,{h:60}),this.git7=this.git7||QA(this.primaryColor,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ie(this.git0),this.gitInv1=this.gitInv1||ie(this.git1),this.gitInv2=this.gitInv2||ie(this.git2),this.gitInv3=this.gitInv3||ie(this.git3),this.gitInv4=this.gitInv4||ie(this.git4),this.gitInv5=this.gitInv5||ie(this.git5),this.gitInv6=this.gitInv6||ie(this.git6),this.gitInv7=this.gitInv7||ie(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.emUiFill=this.emUiFill||"white",this.emUiStroke=this.emUiStroke||"#dbdada",this.emProcessorFill=this.emProcessorFill||"#edb3f6",this.emProcessorStroke=this.emProcessorStroke||"#b88cbf",this.emReadModelFill=this.emReadModelFill||"#d3f1a2",this.emReadModelStroke=this.emReadModelStroke||"#a3b732",this.emCommandFill=this.emCommandFill||"#bcd6fe",this.emCommandStroke=this.emCommandStroke||"#679ac3",this.emEventFill=this.emEventFill||"#ffb778",this.emEventStroke=this.emEventStroke||"#c19a0f",this.emSwimlaneBackgroundOdd=this.emSwimlaneBackgroundOdd||"rgb(250,250,250)",this.emSwimlaneBackgroundStroke=this.emSwimlaneBackgroundStroke||"rgb(240,240,240)",this.emArrowhead=this.emArrowhead||this.lineColor,this.emRelationStroke=this.emRelationStroke||this.lineColor,this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||KB,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||JB,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},kAt=y((A)=>{let e=new vAt;return e.calculate(A),e},"getThemeVariables"),FAt=class{static{y(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ie(this.primaryColor,16),this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=ie(this.background),this.secondaryBorderColor=vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=vr(this.tertiaryColor,this.darkMode),this.primaryTextColor=ie(this.primaryColor),this.secondaryTextColor=ie(this.secondaryColor),this.tertiaryTextColor=ie(this.tertiaryColor),this.lineColor=ie(this.background),this.textColor=ie(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ie(ie("#323D47"),10),this.lineColor="calculated",this.border1="#ccc",this.border2=ln(255,255,255,0.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.clusterBkg="#302F3D",this.sectionBkgColor=he("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.excludeBkgColor=he(this.sectionBkgColor,10),this.taskBorderColor=ln(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=ln(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd=this.rowOdd||Ie(this.mainBkg,5)||"#ffffff",this.rowEven=this.rowEven||he(this.mainBkg,10),this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd",this.useGradient=!0,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,1))",this.noteFontWeight=this.noteFontWeight||"normal",this.fontWeight=this.fontWeight||"normal"}updateColors(){this.secondBkg=Ie(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=Ie(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.actorBorder,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.background,this.taskBkgColor=Ie(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=ie(this.doneTaskBkgColor),this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=QA(this.primaryColor,{h:64}),this.fillType3=QA(this.secondaryColor,{h:64}),this.fillType4=QA(this.primaryColor,{h:-64}),this.fillType5=QA(this.secondaryColor,{h:-64}),this.fillType6=QA(this.primaryColor,{h:128}),this.fillType7=QA(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330});for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleInv"+A]=this["cScaleInv"+A]||ie(this["cScale"+A]);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScalePeer"+A]=this["cScalePeer"+A]||Ie(this["cScale"+A],10);for(let A=0;A<5;A++)this["surface"+A]=this["surface"+A]||QA(this.mainBkg,{h:30,s:-30,l:-(-10+A*4)}),this["surfacePeer"+A]=this["surfacePeer"+A]||QA(this.mainBkg,{h:30,s:-30,l:-(-7+A*4)});this.scaleLabelColor=this.scaleLabelColor||(this.darkMode?"black":this.labelTextColor);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleLabel"+A]=this["cScaleLabel"+A]||this.scaleLabelColor;for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["pie"+A]=this["cScale"+A];this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.mainContrastColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.mainContrastColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7";for(let A=0;A<8;A++)this["venn"+(A+1)]=this["venn"+(A+1)]??Ie(this["cScale"+A],30);this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.cynefin={domainFontSize:this.cynefin?.domainFontSize||16,itemFontSize:this.cynefin?.itemFontSize||12,boundaryColor:this.cynefin?.boundaryColor||this.lineColor,boundaryWidth:this.cynefin?.boundaryWidth||2,cliffColor:this.cynefin?.cliffColor||"#FF6B6B",cliffWidth:this.cynefin?.cliffWidth||4,arrowColor:this.cynefin?.arrowColor||this.lineColor,arrowWidth:this.cynefin?.arrowWidth||2,complexBg:this.cynefin?.complexBg||"#1B5E20",complicatedBg:this.cynefin?.complicatedBg||"#0D47A1",chaoticBg:this.cynefin?.chaoticBg||"#BF360C",clearBg:this.cynefin?.clearBg||"#F57F17",confusionBg:this.cynefin?.confusionBg||"#4A148C",textColor:this.cynefin?.textColor||this.textColor,labelColor:this.cynefin?.labelColor||this.primaryTextColor},this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,dataLabelColor:this.xyChart?.dataLabelColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#3498db,#2ecc71,#e74c3c,#f1c40f,#bdc3c7,#ffffff,#34495e,#9b59b6,#1abc9c,#e67e22"},this.packet={startByteColor:this.primaryTextColor,endByteColor:this.primaryTextColor,labelColor:this.primaryTextColor,titleColor:this.primaryTextColor,blockStrokeColor:this.primaryTextColor,blockFillColor:this.background},this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||0.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||0.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.wardleyEvolutionColor=this.wardleyEvolutionColor||"#ff6b6b",this.wardley={backgroundColor:this.wardley?.backgroundColor||this.background,axisColor:this.wardley?.axisColor||this.lineColor,axisTextColor:this.wardley?.axisTextColor||this.primaryTextColor,gridColor:this.wardley?.gridColor||this.gridColor,componentFill:this.wardley?.componentFill||this.mainBkg,componentStroke:this.wardley?.componentStroke||this.lineColor,componentLabelColor:this.wardley?.componentLabelColor||this.primaryTextColor,linkStroke:this.wardley?.linkStroke||this.lineColor,evolutionStroke:this.wardley?.evolutionStroke||this.wardleyEvolutionColor,annotationStroke:this.wardley?.annotationStroke||this.lineColor,annotationTextColor:this.wardley?.annotationTextColor||this.primaryTextColor,annotationFill:this.wardley?.annotationFill||this.mainBkg},this.classText=this.primaryTextColor,this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=Ie(this.secondaryColor,20),this.git1=Ie(this.pie2||this.secondaryColor,20),this.git2=Ie(this.pie3||this.tertiaryColor,20),this.git3=Ie(this.pie4||QA(this.primaryColor,{h:-30}),20),this.git4=Ie(this.pie5||QA(this.primaryColor,{h:-60}),20),this.git5=Ie(this.pie6||QA(this.primaryColor,{h:-90}),10),this.git6=Ie(this.pie7||QA(this.primaryColor,{h:60}),10),this.git7=Ie(this.pie8||QA(this.primaryColor,{h:120}),20),this.gitInv0=this.gitInv0||ie(this.git0),this.gitInv1=this.gitInv1||ie(this.git1),this.gitInv2=this.gitInv2||ie(this.git2),this.gitInv3=this.gitInv3||ie(this.git3),this.gitInv4=this.gitInv4||ie(this.git4),this.gitInv5=this.gitInv5||ie(this.git5),this.gitInv6=this.gitInv6||ie(this.git6),this.gitInv7=this.gitInv7||ie(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||ie(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||ie(this.labelTextColor),this.gitBranchLabel4=this.gitBranchLabel4||this.labelTextColor,this.gitBranchLabel5=this.gitBranchLabel5||this.labelTextColor,this.gitBranchLabel6=this.gitBranchLabel6||this.labelTextColor,this.gitBranchLabel7=this.gitBranchLabel7||this.labelTextColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.emUiFill=this.emUiFill||"#2d2d2d",this.emUiStroke=this.emUiStroke||"#555",this.emProcessorFill=this.emProcessorFill||Ie("#5a3d5c",10),this.emProcessorStroke=this.emProcessorStroke||"#8a6d8c",this.emReadModelFill=this.emReadModelFill||Ie("#3d5a2d",10),this.emReadModelStroke=this.emReadModelStroke||"#6d8c5c",this.emCommandFill=this.emCommandFill||Ie("#2d3d5a",10),this.emCommandStroke=this.emCommandStroke||"#5c6d8c",this.emEventFill=this.emEventFill||Ie("#5a452d",10),this.emEventStroke=this.emEventStroke||"#8c755c",this.emSwimlaneBackgroundOdd=this.emSwimlaneBackgroundOdd||Ie(this.background,5),this.emSwimlaneBackgroundStroke=this.emSwimlaneBackgroundStroke||Ie(this.background,12),this.emArrowhead=this.emArrowhead||this.lineColor,this.emRelationStroke=this.emRelationStroke||this.lineColor,this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||Ie(this.background,12),this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||Ie(this.background,2),this.nodeBorder=this.nodeBorder||"#999"}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},xAt=y((A)=>{let e=new FAt;return e.calculate(A),e},"getThemeVariables"),SAt=class{static{y(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=QA(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=vr(this.primaryColor,this.darkMode),this.secondaryBorderColor=vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=vr(this.tertiaryColor,this.darkMode),this.primaryTextColor=ie(this.primaryColor),this.secondaryTextColor=ie(this.secondaryColor),this.tertiaryTextColor=ie(this.tertiaryColor),this.lineColor=ie(this.background),this.textColor=ie(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.primaryBorderColor=vr(this.primaryColor,this.darkMode),this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="rgba(232,232,232, 0.8)",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.clusterBkg="#FBFBFF",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.sectionBkgColor=ln(102,102,255,0.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="navy",this.noteFontWeight=this.noteFontWeight||"normal",this.fontWeight=this.fontWeight||"normal",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.rowOdd="calculated",this.rowEven="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.useGradient=!1,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow(1px 2px 2px rgba(185, 185, 185, 1))",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||he(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||he(this.tertiaryColor,40);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScale"+A]=he(this["cScale"+A],10),this["cScalePeer"+A]=this["cScalePeer"+A]||he(this["cScale"+A],25);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleInv"+A]=this["cScaleInv"+A]||QA(this["cScale"+A],{h:180});for(let A=0;A<5;A++)this["surface"+A]=this["surface"+A]||QA(this.mainBkg,{h:30,l:-(5+A*5)}),this["surfacePeer"+A]=this["surfacePeer"+A]||QA(this.mainBkg,{h:30,l:-(7+A*5)});if(this.scaleLabelColor=this.scaleLabelColor!=="calculated"&&this.scaleLabelColor?this.scaleLabelColor:this.labelTextColor,this.labelTextColor!=="calculated"){this.cScaleLabel0=this.cScaleLabel0||ie(this.labelTextColor),this.cScaleLabel3=this.cScaleLabel3||ie(this.labelTextColor);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleLabel"+A]=this["cScaleLabel"+A]||this.labelTextColor}if(this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.titleColor=this.textColor,this.edgeLabelBackground=this.labelBackground,this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.signalColor=this.textColor,this.signalTextColor=this.textColor,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.taskTextColor=this.taskTextLightColor,this.taskTextOutsideColor=this.taskTextDarkColor,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.rowOdd=this.rowOdd||Ie(this.primaryColor,75)||"#ffffff",this.rowEven=this.rowEven||Ie(this.primaryColor,1),this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.specialStateColor=this.lineColor,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.classText=this.primaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=QA(this.primaryColor,{h:64}),this.fillType3=QA(this.secondaryColor,{h:64}),this.fillType4=QA(this.primaryColor,{h:-64}),this.fillType5=QA(this.secondaryColor,{h:-64}),this.fillType6=QA(this.primaryColor,{h:128}),this.fillType7=QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||QA(this.tertiaryColor,{l:-40}),this.pie4=this.pie4||QA(this.primaryColor,{l:-10}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-30}),this.pie6=this.pie6||QA(this.tertiaryColor,{l:-20}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-20}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-40}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:-40}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-40}),this.pie11=this.pie11||QA(this.primaryColor,{h:-90,l:-40}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-30}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.venn1=this.venn1??QA(this.primaryColor,{l:-30}),this.venn2=this.venn2??QA(this.secondaryColor,{l:-30}),this.venn3=this.venn3??QA(this.tertiaryColor,{l:-40}),this.venn4=this.venn4??QA(this.primaryColor,{h:60,l:-30}),this.venn5=this.venn5??QA(this.primaryColor,{h:-60,l:-30}),this.venn6=this.venn6??QA(this.secondaryColor,{h:60,l:-30}),this.venn7=this.venn7??QA(this.primaryColor,{h:120,l:-30}),this.venn8=this.venn8??QA(this.secondaryColor,{h:120,l:-30}),this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.cynefin={domainFontSize:this.cynefin?.domainFontSize||16,itemFontSize:this.cynefin?.itemFontSize||12,boundaryColor:this.cynefin?.boundaryColor||this.lineColor,boundaryWidth:this.cynefin?.boundaryWidth||2,cliffColor:this.cynefin?.cliffColor||"#8B0000",cliffWidth:this.cynefin?.cliffWidth||4,arrowColor:this.cynefin?.arrowColor||this.lineColor,arrowWidth:this.cynefin?.arrowWidth||2,complexBg:this.cynefin?.complexBg||"#E8F5E9",complicatedBg:this.cynefin?.complicatedBg||"#E3F2FD",chaoticBg:this.cynefin?.chaoticBg||"#FBE9E7",clearBg:this.cynefin?.clearBg||"#FFF8E1",confusionBg:this.cynefin?.confusionBg||"#F3E5F5",textColor:this.cynefin?.textColor||this.textColor,labelColor:this.cynefin?.labelColor||this.primaryTextColor},this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||0.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||0.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.wardleyEvolutionColor=this.wardleyEvolutionColor||"#dc3545",this.wardley={backgroundColor:this.wardley?.backgroundColor||this.background,axisColor:this.wardley?.axisColor||this.lineColor,axisTextColor:this.wardley?.axisTextColor||this.primaryTextColor,gridColor:this.wardley?.gridColor||this.gridColor,componentFill:this.wardley?.componentFill||this.background,componentStroke:this.wardley?.componentStroke||this.lineColor,componentLabelColor:this.wardley?.componentLabelColor||this.primaryTextColor,linkStroke:this.wardley?.linkStroke||this.lineColor,evolutionStroke:this.wardley?.evolutionStroke||this.wardleyEvolutionColor,annotationStroke:this.wardley?.annotationStroke||this.lineColor,annotationTextColor:this.wardley?.annotationTextColor||this.primaryTextColor,annotationFill:this.wardley?.annotationFill||this.background},this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,dataLabelColor:this.xyChart?.dataLabelColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#ECECFF,#8493A6,#FFC3A0,#DCDDE1,#B8E994,#D1A36F,#C3CDE6,#FFB6C1,#496078,#F8F3E3"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.labelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||QA(this.primaryColor,{h:-30}),this.git4=this.git4||QA(this.primaryColor,{h:-60}),this.git5=this.git5||QA(this.primaryColor,{h:-90}),this.git6=this.git6||QA(this.primaryColor,{h:60}),this.git7=this.git7||QA(this.primaryColor,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||he(ie(this.git0),25),this.gitInv1=this.gitInv1||ie(this.git1),this.gitInv2=this.gitInv2||ie(this.git2),this.gitInv3=this.gitInv3||ie(this.git3),this.gitInv4=this.gitInv4||ie(this.git4),this.gitInv5=this.gitInv5||ie(this.git5),this.gitInv6=this.gitInv6||ie(this.git6),this.gitInv7=this.gitInv7||ie(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||ie(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||ie(this.labelTextColor),this.gitBranchLabel4=this.gitBranchLabel4||this.labelTextColor,this.gitBranchLabel5=this.gitBranchLabel5||this.labelTextColor,this.gitBranchLabel6=this.gitBranchLabel6||this.labelTextColor,this.gitBranchLabel7=this.gitBranchLabel7||this.labelTextColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.emUiFill=this.emUiFill||"white",this.emUiStroke=this.emUiStroke||"#dbdada",this.emProcessorFill=this.emProcessorFill||"#edb3f6",this.emProcessorStroke=this.emProcessorStroke||"#b88cbf",this.emReadModelFill=this.emReadModelFill||"#d3f1a2",this.emReadModelStroke=this.emReadModelStroke||"#a3b732",this.emCommandFill=this.emCommandFill||"#bcd6fe",this.emCommandStroke=this.emCommandStroke||"#679ac3",this.emEventFill=this.emEventFill||"#ffb778",this.emEventStroke=this.emEventStroke||"#c19a0f",this.emSwimlaneBackgroundOdd=this.emSwimlaneBackgroundOdd||"rgb(250,250,250)",this.emSwimlaneBackgroundStroke=this.emSwimlaneBackgroundStroke||"rgb(240,240,240)",this.emArrowhead=this.emArrowhead||this.lineColor,this.emRelationStroke=this.emRelationStroke||this.lineColor,this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||KB,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||JB}calculate(A){if(Object.keys(this).forEach((t)=>{if(this[t]==="calculated")this[t]=void 0}),typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},L0=y((A)=>{let e=new SAt;return e.calculate(A),e},"getThemeVariables"),LAt=class{static{y(this,"Theme")}constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=Ie("#cde498",10),this.primaryBorderColor=vr(this.primaryColor,this.darkMode),this.secondaryBorderColor=vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=vr(this.tertiaryColor,this.darkMode),this.primaryTextColor=ie(this.primaryColor),this.secondaryTextColor=ie(this.secondaryColor),this.tertiaryTextColor=ie(this.primaryColor),this.lineColor=ie(this.background),this.textColor=ie(this.background),this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="calculated",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.vertLineColor="#00BFFF",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.useGradient=!0,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,0.5))"}updateColors(){this.actorBorder=he(this.mainBkg,20),this.actorBkg=this.mainBkg,this.labelBoxBkgColor=this.actorBkg,this.labelTextColor=this.actorTextColor,this.loopTextColor=this.actorTextColor,this.noteBorderColor=this.border2,this.noteTextColor=this.actorTextColor,this.actorLineColor=this.actorBorder,this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330}),this.cScalePeer1=this.cScalePeer1||he(this.secondaryColor,45),this.cScalePeer2=this.cScalePeer2||he(this.tertiaryColor,40);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScale"+A]=he(this["cScale"+A],10),this["cScalePeer"+A]=this["cScalePeer"+A]||he(this["cScale"+A],25);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleInv"+A]=this["cScaleInv"+A]||QA(this["cScale"+A],{h:180});this.scaleLabelColor=this.scaleLabelColor!=="calculated"&&this.scaleLabelColor?this.scaleLabelColor:this.labelTextColor;for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleLabel"+A]=this["cScaleLabel"+A]||this.scaleLabelColor;for(let A=0;A<5;A++)this["surface"+A]=this["surface"+A]||QA(this.mainBkg,{h:30,s:-30,l:-(5+A*5)}),this["surfacePeer"+A]=this["surfacePeer"+A]||QA(this.mainBkg,{h:30,s:-30,l:-(8+A*5)});if(this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.taskBorderColor=this.border1,this.taskTextColor=this.taskTextLightColor,this.taskTextOutsideColor=this.taskTextDarkColor,this.activeTaskBorderColor=this.taskBorderColor,this.activeTaskBkgColor=this.mainBkg,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.rowOdd=this.rowOdd||Ie(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||Ie(this.mainBkg,20),this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor=this.lineColor,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.classText=this.primaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=QA(this.primaryColor,{h:64}),this.fillType3=QA(this.secondaryColor,{h:64}),this.fillType4=QA(this.primaryColor,{h:-64}),this.fillType5=QA(this.secondaryColor,{h:-64}),this.fillType6=QA(this.primaryColor,{h:128}),this.fillType7=QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||QA(this.primaryColor,{l:-30}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-30}),this.pie6=this.pie6||QA(this.tertiaryColor,{h:40,l:-40}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-50}),this.pie11=this.pie11||QA(this.primaryColor,{h:-60,l:-50}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-50}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.venn1=this.venn1??QA(this.primaryColor,{l:-30}),this.venn2=this.venn2??QA(this.secondaryColor,{l:-30}),this.venn3=this.venn3??QA(this.tertiaryColor,{l:-30}),this.venn4=this.venn4??QA(this.primaryColor,{h:60,l:-30}),this.venn5=this.venn5??QA(this.primaryColor,{h:-60,l:-30}),this.venn6=this.venn6??QA(this.secondaryColor,{h:60,l:-30}),this.venn7=this.venn7??QA(this.primaryColor,{h:120,l:-30}),this.venn8=this.venn8??QA(this.secondaryColor,{h:120,l:-30}),this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.cynefin={domainFontSize:this.cynefin?.domainFontSize||16,itemFontSize:this.cynefin?.itemFontSize||12,boundaryColor:this.cynefin?.boundaryColor||this.lineColor,boundaryWidth:this.cynefin?.boundaryWidth||2,cliffColor:this.cynefin?.cliffColor||"#8B4513",cliffWidth:this.cynefin?.cliffWidth||4,arrowColor:this.cynefin?.arrowColor||this.lineColor,arrowWidth:this.cynefin?.arrowWidth||2,complexBg:this.cynefin?.complexBg||"#C8E6C9",complicatedBg:this.cynefin?.complicatedBg||"#DCEDC8",chaoticBg:this.cynefin?.chaoticBg||"#FFE0B2",clearBg:this.cynefin?.clearBg||"#FFF9C4",confusionBg:this.cynefin?.confusionBg||"#D7CCC8",textColor:this.cynefin?.textColor||this.textColor,labelColor:this.cynefin?.labelColor||this.primaryTextColor},this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.packet={startByteColor:this.primaryTextColor,endByteColor:this.primaryTextColor,labelColor:this.primaryTextColor,titleColor:this.primaryTextColor,blockStrokeColor:this.primaryTextColor,blockFillColor:this.mainBkg},this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||0.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||0.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.wardleyEvolutionColor=this.wardleyEvolutionColor||"#dc3545",this.wardley={backgroundColor:this.wardley?.backgroundColor||this.background,axisColor:this.wardley?.axisColor||this.lineColor,axisTextColor:this.wardley?.axisTextColor||this.primaryTextColor,gridColor:this.wardley?.gridColor||this.gridColor,componentFill:this.wardley?.componentFill||this.background,componentStroke:this.wardley?.componentStroke||this.lineColor,componentLabelColor:this.wardley?.componentLabelColor||this.primaryTextColor,linkStroke:this.wardley?.linkStroke||this.lineColor,evolutionStroke:this.wardley?.evolutionStroke||this.wardleyEvolutionColor,annotationStroke:this.wardley?.annotationStroke||this.lineColor,annotationTextColor:this.wardley?.annotationTextColor||this.primaryTextColor,annotationFill:this.wardley?.annotationFill||this.background},this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,dataLabelColor:this.xyChart?.dataLabelColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#CDE498,#FF6B6B,#A0D2DB,#D7BDE2,#F0F0F0,#FFC3A0,#7FD8BE,#FF9A8B,#FAF3E0,#FFF176"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.edgeLabelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||QA(this.primaryColor,{h:-30}),this.git4=this.git4||QA(this.primaryColor,{h:-60}),this.git5=this.git5||QA(this.primaryColor,{h:-90}),this.git6=this.git6||QA(this.primaryColor,{h:60}),this.git7=this.git7||QA(this.primaryColor,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ie(this.git0),this.gitInv1=this.gitInv1||ie(this.git1),this.gitInv2=this.gitInv2||ie(this.git2),this.gitInv3=this.gitInv3||ie(this.git3),this.gitInv4=this.gitInv4||ie(this.git4),this.gitInv5=this.gitInv5||ie(this.git5),this.gitInv6=this.gitInv6||ie(this.git6),this.gitInv7=this.gitInv7||ie(this.git7),this.gitBranchLabel0=this.gitBranchLabel0||ie(this.labelTextColor),this.gitBranchLabel1=this.gitBranchLabel1||this.labelTextColor,this.gitBranchLabel2=this.gitBranchLabel2||this.labelTextColor,this.gitBranchLabel3=this.gitBranchLabel3||ie(this.labelTextColor),this.gitBranchLabel4=this.gitBranchLabel4||this.labelTextColor,this.gitBranchLabel5=this.gitBranchLabel5||this.labelTextColor,this.gitBranchLabel6=this.gitBranchLabel6||this.labelTextColor,this.gitBranchLabel7=this.gitBranchLabel7||this.labelTextColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.emUiFill=this.emUiFill||"white",this.emUiStroke=this.emUiStroke||"#dbdada",this.emProcessorFill=this.emProcessorFill||"#edb3f6",this.emProcessorStroke=this.emProcessorStroke||"#b88cbf",this.emReadModelFill=this.emReadModelFill||"#d3f1a2",this.emReadModelStroke=this.emReadModelStroke||"#a3b732",this.emCommandFill=this.emCommandFill||"#bcd6fe",this.emCommandStroke=this.emCommandStroke||"#679ac3",this.emEventFill=this.emEventFill||"#ffb778",this.emEventStroke=this.emEventStroke||"#c19a0f",this.emSwimlaneBackgroundOdd=this.emSwimlaneBackgroundOdd||"rgb(250,250,250)",this.emSwimlaneBackgroundStroke=this.emSwimlaneBackgroundStroke||"rgb(240,240,240)",this.emArrowhead=this.emArrowhead||this.lineColor,this.emRelationStroke=this.emRelationStroke||this.lineColor,this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||KB,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||JB}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},RAt=y((A)=>{let e=new LAt;return e.calculate(A),e},"getThemeVariables"),NAt=class{static{y(this,"Theme")}constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=Ie(this.contrast,55),this.background="#ffffff",this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=vr(this.primaryColor,this.darkMode),this.secondaryBorderColor=vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=vr(this.tertiaryColor,this.darkMode),this.primaryTextColor=ie(this.primaryColor),this.secondaryTextColor=ie(this.secondaryColor),this.tertiaryTextColor=ie(this.tertiaryColor),this.lineColor=ie(this.background),this.textColor=ie(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.radius=5,this.strokeWidth=1,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor=this.actorBorder,this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.vertLineColor="calculated",this.personBorder=this.primaryBorderColor,this.personBkg=this.mainBkg,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal",this.rowOdd=this.rowOdd||Ie(this.mainBkg,75)||"#ffffff",this.rowEven=this.rowEven||"#f4f4f4",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.useGradient=!0,this.gradientStart=this.primaryBorderColor,this.gradientStop=this.secondaryBorderColor,this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,1))"}updateColors(){this.secondBkg=Ie(this.contrast,55),this.border2=this.contrast,this.actorBorder=Ie(this.border1,23),this.actorBkg=this.mainBkg,this.actorTextColor=this.text,this.actorLineColor=this.actorBorder,this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.signalColor=this.text,this.signalTextColor=this.text,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.text,this.loopTextColor=this.text,this.noteBorderColor="#999",this.noteBkgColor="#666",this.noteTextColor="#fff",this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleInv"+A]=this["cScaleInv"+A]||ie(this["cScale"+A]);for(let A=0;A<this.THEME_COLOR_LIMIT;A++)if(this.darkMode)this["cScalePeer"+A]=this["cScalePeer"+A]||Ie(this["cScale"+A],10);else this["cScalePeer"+A]=this["cScalePeer"+A]||he(this["cScale"+A],10);this.scaleLabelColor=this.scaleLabelColor||(this.darkMode?"black":this.labelTextColor),this.cScaleLabel0=this.cScaleLabel0||this.cScale1,this.cScaleLabel2=this.cScaleLabel2||this.cScale1;for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["cScaleLabel"+A]=this["cScaleLabel"+A]||this.scaleLabelColor;for(let A=0;A<5;A++)this["surface"+A]=this["surface"+A]||QA(this.mainBkg,{l:-(5+A*5)}),this["surfacePeer"+A]=this["surfacePeer"+A]||QA(this.mainBkg,{l:-(8+A*5)});this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.titleColor=this.text,this.sectionBkgColor=Ie(this.contrast,30),this.sectionBkgColor2=Ie(this.contrast,30),this.taskBorderColor=he(this.contrast,10),this.taskBkgColor=this.contrast,this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor=this.text,this.taskTextOutsideColor=this.taskTextDarkColor,this.activeTaskBorderColor=this.taskBorderColor,this.activeTaskBkgColor=this.mainBkg,this.gridColor=Ie(this.border1,30),this.doneTaskBkgColor=this.done,this.doneTaskBorderColor=this.lineColor,this.critBkgColor=this.critical,this.critBorderColor=he(this.critBkgColor,10),this.todayLineColor=this.critBkgColor,this.vertLineColor=this.critBkgColor,this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.transitionColor=this.transitionColor||"#000",this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f4f4f4",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.stateBorder=this.stateBorder||"#000",this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#222",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.classText=this.primaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=QA(this.primaryColor,{h:64}),this.fillType3=QA(this.secondaryColor,{h:64}),this.fillType4=QA(this.primaryColor,{h:-64}),this.fillType5=QA(this.secondaryColor,{h:-64}),this.fillType6=QA(this.primaryColor,{h:128}),this.fillType7=QA(this.secondaryColor,{h:128});for(let A=0;A<this.THEME_COLOR_LIMIT;A++)this["pie"+A]=this["cScale"+A];this.pie12=this.pie0,this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7";for(let A=0;A<8;A++)this["venn"+(A+1)]=this["venn"+(A+1)]??this["cScale"+A];this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.cynefin={domainFontSize:this.cynefin?.domainFontSize||16,itemFontSize:this.cynefin?.itemFontSize||12,boundaryColor:this.cynefin?.boundaryColor||this.lineColor,boundaryWidth:this.cynefin?.boundaryWidth||2,cliffColor:this.cynefin?.cliffColor||"#8B0000",cliffWidth:this.cynefin?.cliffWidth||4,arrowColor:this.cynefin?.arrowColor||this.lineColor,arrowWidth:this.cynefin?.arrowWidth||2,complexBg:this.cynefin?.complexBg||"#E8F5E9",complicatedBg:this.cynefin?.complicatedBg||"#E3F2FD",chaoticBg:this.cynefin?.chaoticBg||"#FBE9E7",clearBg:this.cynefin?.clearBg||"#FFF8E1",confusionBg:this.cynefin?.confusionBg||"#F3E5F5",textColor:this.cynefin?.textColor||this.textColor,labelColor:this.cynefin?.labelColor||this.primaryTextColor},this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,dataLabelColor:this.xyChart?.dataLabelColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#EEE,#6BB8E4,#8ACB88,#C7ACD6,#E8DCC2,#FFB2A8,#FFF380,#7E8D91,#FFD8B1,#FAF3E0"},this.radar={axisColor:this.radar?.axisColor||this.lineColor,axisStrokeWidth:this.radar?.axisStrokeWidth||2,axisLabelFontSize:this.radar?.axisLabelFontSize||12,curveOpacity:this.radar?.curveOpacity||0.5,curveStrokeWidth:this.radar?.curveStrokeWidth||2,graticuleColor:this.radar?.graticuleColor||"#DEDEDE",graticuleStrokeWidth:this.radar?.graticuleStrokeWidth||1,graticuleOpacity:this.radar?.graticuleOpacity||0.3,legendBoxSize:this.radar?.legendBoxSize||12,legendFontSize:this.radar?.legendFontSize||12},this.wardleyEvolutionColor=this.wardleyEvolutionColor||"#dc3545",this.wardley={backgroundColor:this.wardley?.backgroundColor||this.background,axisColor:this.wardley?.axisColor||this.lineColor,axisTextColor:this.wardley?.axisTextColor||this.primaryTextColor,gridColor:this.wardley?.gridColor||this.gridColor,componentFill:this.wardley?.componentFill||this.background,componentStroke:this.wardley?.componentStroke||this.lineColor,componentLabelColor:this.wardley?.componentLabelColor||this.primaryTextColor,linkStroke:this.wardley?.linkStroke||this.lineColor,evolutionStroke:this.wardley?.evolutionStroke||this.wardleyEvolutionColor,annotationStroke:this.wardley?.annotationStroke||this.lineColor,annotationTextColor:this.wardley?.annotationTextColor||this.primaryTextColor,annotationFill:this.wardley?.annotationFill||this.background},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||this.edgeLabelBackground,this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=he(this.pie1,25)||this.primaryColor,this.git1=this.pie2||this.secondaryColor,this.git2=this.pie3||this.tertiaryColor,this.git3=this.pie4||QA(this.primaryColor,{h:-30}),this.git4=this.pie5||QA(this.primaryColor,{h:-60}),this.git5=this.pie6||QA(this.primaryColor,{h:-90}),this.git6=this.pie7||QA(this.primaryColor,{h:60}),this.git7=this.pie8||QA(this.primaryColor,{h:120}),this.gitInv0=this.gitInv0||ie(this.git0),this.gitInv1=this.gitInv1||ie(this.git1),this.gitInv2=this.gitInv2||ie(this.git2),this.gitInv3=this.gitInv3||ie(this.git3),this.gitInv4=this.gitInv4||ie(this.git4),this.gitInv5=this.gitInv5||ie(this.git5),this.gitInv6=this.gitInv6||ie(this.git6),this.gitInv7=this.gitInv7||ie(this.git7),this.branchLabelColor=this.branchLabelColor||this.labelTextColor,this.gitBranchLabel0=this.branchLabelColor,this.gitBranchLabel1="white",this.gitBranchLabel2=this.branchLabelColor,this.gitBranchLabel3="white",this.gitBranchLabel4=this.branchLabelColor,this.gitBranchLabel5=this.branchLabelColor,this.gitBranchLabel6=this.branchLabelColor,this.gitBranchLabel7=this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.emUiFill=this.emUiFill||"white",this.emUiStroke=this.emUiStroke||"#dbdada",this.emProcessorFill=this.emProcessorFill||"#edb3f6",this.emProcessorStroke=this.emProcessorStroke||"#b88cbf",this.emReadModelFill=this.emReadModelFill||"#d3f1a2",this.emReadModelStroke=this.emReadModelStroke||"#a3b732",this.emCommandFill=this.emCommandFill||"#bcd6fe",this.emCommandStroke=this.emCommandStroke||"#679ac3",this.emEventFill=this.emEventFill||"#ffb778",this.emEventStroke=this.emEventStroke||"#c19a0f",this.emSwimlaneBackgroundOdd=this.emSwimlaneBackgroundOdd||"rgb(250,250,250)",this.emSwimlaneBackgroundStroke=this.emSwimlaneBackgroundStroke||"rgb(240,240,240)",this.emArrowhead=this.emArrowhead||this.lineColor,this.emRelationStroke=this.emRelationStroke||this.lineColor,this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||KB,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||JB}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},GAt=y((A)=>{let e=new NAt;return e.calculate(A),e},"getThemeVariables"),UAt=class{static{y(this,"Theme")}constructor(){this.background="#ffffff",this.primaryColor="#cccccc",this.mainBkg="#ffffff",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.radius=3,this.strokeWidth=2,this.primaryBorderColor=vr(this.primaryColor,this.darkMode),this.fontFamily="arial, sans-serif",this.fontSize="14px",this.nodeBorder="#000000",this.stateBorder="#000000",this.useGradient=!0,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="drop-shadow( 0px 1px 2px rgba(0, 0, 0, 0.25));",this.tertiaryColor="#ffffff",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||vr(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||vr(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||vr(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||ie(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ie(this.tertiaryColor),this.lineColor=this.lineColor||ie(this.background),this.arrowheadColor=this.arrowheadColor||ie(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ie(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor;let A="#ECECFE",e="#E9E9F1",t=QA(A,{h:180,l:5});if(this.sectionBkgColor=this.sectionBkgColor||t,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||e,this.sectionBkgColor2=this.sectionBkgColor2||A,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||A,this.activeTaskBorderColor=this.activeTaskBorderColor||A,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(A,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||A,this.cScale1=this.cScale1||e,this.cScale2=this.cScale2||t,this.cScale3=this.cScale3||QA(A,{h:30}),this.cScale4=this.cScale4||QA(A,{h:60}),this.cScale5=this.cScale5||QA(A,{h:90}),this.cScale6=this.cScale6||QA(A,{h:120}),this.cScale7=this.cScale7||QA(A,{h:150}),this.cScale8=this.cScale8||QA(A,{h:210,l:150}),this.cScale9=this.cScale9||QA(A,{h:270}),this.cScale10=this.cScale10||QA(A,{h:300}),this.cScale11=this.cScale11||QA(A,{h:330}),this.darkMode)for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScale"+i]=he(this["cScale"+i],75);else for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScale"+i]=he(this["cScale"+i],25);for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleInv"+i]=this["cScaleInv"+i]||ie(this["cScale"+i]);for(let i=0;i<this.THEME_COLOR_LIMIT;i++)if(this.darkMode)this["cScalePeer"+i]=this["cScalePeer"+i]||Ie(this["cScale"+i],10);else this["cScalePeer"+i]=this["cScalePeer"+i]||he(this["cScale"+i],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleLabel"+i]=this["cScaleLabel"+i]||this.scaleLabelColor;let r=this.darkMode?-4:-1;for(let i=0;i<5;i++)this["surface"+i]=this["surface"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(5+i*3)}),this["surfacePeer"+i]=this["surfacePeer"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(8+i*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||A,this.fillType1=this.fillType1||e,this.fillType2=this.fillType2||QA(A,{h:64}),this.fillType3=this.fillType3||QA(e,{h:64}),this.fillType4=this.fillType4||QA(A,{h:-64}),this.fillType5=this.fillType5||QA(e,{h:-64}),this.fillType6=this.fillType6||QA(A,{h:128}),this.fillType7=this.fillType7||QA(e,{h:128}),this.pie1=this.pie1||A,this.pie2=this.pie2||e,this.pie3=this.pie3||t,this.pie4=this.pie4||QA(A,{l:-10}),this.pie5=this.pie5||QA(e,{l:-10}),this.pie6=this.pie6||QA(t,{l:-10}),this.pie7=this.pie7||QA(A,{h:60,l:-10}),this.pie8=this.pie8||QA(A,{h:-60,l:-10}),this.pie9=this.pie9||QA(A,{h:120,l:0}),this.pie10=this.pie10||QA(A,{h:60,l:-20}),this.pie11=this.pie11||QA(A,{h:-60,l:-20}),this.pie12=this.pie12||QA(A,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||A,this.quadrant2Fill=this.quadrant2Fill||QA(A,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(A,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(A,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||A,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||A,this.git1=this.git1||e,this.git2=this.git2||t,this.git3=this.git3||QA(A,{h:-30}),this.git4=this.git4||QA(A,{h:-60}),this.git5=this.git5||QA(A,{h:-90}),this.git6=this.git6||QA(A,{h:60}),this.git7=this.git7||QA(A,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ie(this.git0),this.gitInv1=this.gitInv1||ie(this.git1),this.gitInv2=this.gitInv2||ie(this.git2),this.gitInv3=this.gitInv3||ie(this.git3),this.gitInv4=this.gitInv4||ie(this.git4),this.gitInv5=this.gitInv5||ie(this.git5),this.gitInv6=this.gitInv6||ie(this.git6),this.gitInv7=this.gitInv7||ie(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||KB,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||JB}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},MAt=y((A)=>{let e=new UAt;return e.calculate(A),e},"getThemeVariables"),TAt=class{static{y(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ie(this.primaryColor,16),this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=ie(this.background),this.secondaryBorderColor=vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=vr(this.tertiaryColor,this.darkMode),this.primaryTextColor=ie(this.primaryColor),this.secondaryTextColor=ie(this.secondaryColor),this.tertiaryTextColor=ie(this.tertiaryColor),this.mainBkg="#2a2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ie(ie("#323D47"),10),this.border1="#ccc",this.border2=ln(255,255,255,0.25),this.arrowheadColor=ie(this.background),this.fontFamily="arial, sans-serif",this.fontSize="14px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=3,this.strokeWidth=1,this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily="arial, sans-serif",this.fontSize="14px",this.useGradient=!0,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="drop-shadow( 1px 2px 2px rgba(185,185,185,0.2))",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.noteFontWeight="normal",this.fontWeight="normal"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||vr(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||vr(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||vr(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||ie(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ie(this.tertiaryColor),this.lineColor=this.lineColor||ie(this.background),this.arrowheadColor=this.arrowheadColor||ie(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.border1,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ie(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330}),this.darkMode)for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],75);else for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],25);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||ie(this["cScale"+e]);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)if(this.darkMode)this["cScalePeer"+e]=this["cScalePeer"+e]||Ie(this["cScale"+e],10);else this["cScalePeer"+e]=this["cScalePeer"+e]||he(this["cScale"+e],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=this["cScaleLabel"+e]||this.scaleLabelColor;let A=this.darkMode?-4:-1;for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(5+e*3)}),this["surfacePeer"+e]=this["surfacePeer"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(8+e*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||QA(this.primaryColor,{h:64}),this.fillType3=this.fillType3||QA(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||QA(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||QA(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||QA(this.primaryColor,{h:128}),this.fillType7=this.fillType7||QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||QA(this.primaryColor,{l:-10}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-10}),this.pie6=this.pie6||QA(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||QA(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||"#0b0000",this.git1=this.git1||"#4d1037",this.git2=this.git2||"#3f5258",this.git3=this.git3||"#4f2f1b",this.git4=this.git4||"#6e0a0a",this.git5=this.git5||"#3b0048",this.git6=this.git6||"#995a01",this.git7=this.git7||"#154706",this.gitDarkMode=!0,this.gitDarkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ie(this.git0),this.gitInv1=this.gitInv1||ie(this.git1),this.gitInv2=this.gitInv2||ie(this.git2),this.gitInv3=this.gitInv3||ie(this.git3),this.gitInv4=this.gitInv4||ie(this.git4),this.gitInv5=this.gitInv5||ie(this.git5),this.gitInv6=this.gitInv6||ie(this.git6),this.gitInv7=this.gitInv7||ie(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||KB,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||JB}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},YAt=y((A)=>{let e=new TAt;return e.calculate(A),e},"getThemeVariables"),HAt=class{static{y(this,"Theme")}constructor(){this.background="#ffffff",this.primaryColor="#cccccc",this.mainBkg="#ffffff",this.noteBkgColor="#fff5ad",this.noteTextColor="#28253D",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.primaryBorderColor=vr("#28253D",this.darkMode),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#28253D",this.stateBorder="#28253D",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.tertiaryColor="#ffffff",this.clusterBkg="#F9F9FB",this.clusterBorder="#BDBCCC",this.noteBorderColor="#FACC15",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.actorBorder="#28253D",this.filterColor="#000000"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#28253D"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||vr(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||vr(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||vr(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#FEF9C3",this.noteTextColor=this.noteTextColor||"#28253D",this.secondaryTextColor=this.secondaryTextColor||ie(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ie(this.tertiaryColor),this.lineColor=this.lineColor||ie(this.background),this.arrowheadColor=this.arrowheadColor||ie(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.noteFontWeight=600,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ie(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor;let A="#ECECFE",e="#E9E9F1",t=QA(A,{h:180,l:5});this.sectionBkgColor=this.sectionBkgColor||t,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||e,this.sectionBkgColor2=this.sectionBkgColor2||A,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||A,this.activeTaskBorderColor=this.activeTaskBorderColor||A,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(A,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.compositeTitleBackground="#F9F9FB",this.altBackground="#F9F9FB",this.stateEdgeLabelBackground="#FFFFFF",this.fontWeight=600,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor;for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScale"+i]=this.mainBkg;if(this.darkMode)for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScale"+i]=he(this["cScale"+i],75);else for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScale"+i]=he(this["cScale"+i],25);for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleInv"+i]=this["cScaleInv"+i]||ie(this["cScale"+i]);for(let i=0;i<this.THEME_COLOR_LIMIT;i++)if(this.darkMode)this["cScalePeer"+i]=this["cScalePeer"+i]||Ie(this["cScale"+i],10);else this["cScalePeer"+i]=this["cScalePeer"+i]||he(this["cScale"+i],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleLabel"+i]=this["cScaleLabel"+i]||this.scaleLabelColor;let r=this.darkMode?-4:-1;for(let i=0;i<5;i++)this["surface"+i]=this["surface"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(5+i*3)}),this["surfacePeer"+i]=this["surfacePeer"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(8+i*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||A,this.fillType1=this.fillType1||e,this.fillType2=this.fillType2||QA(A,{h:64}),this.fillType3=this.fillType3||QA(e,{h:64}),this.fillType4=this.fillType4||QA(A,{h:-64}),this.fillType5=this.fillType5||QA(e,{h:-64}),this.fillType6=this.fillType6||QA(A,{h:128}),this.fillType7=this.fillType7||QA(e,{h:128}),this.pie1=this.pie1||A,this.pie2=this.pie2||e,this.pie3=this.pie3||t,this.pie4=this.pie4||QA(A,{l:-10}),this.pie5=this.pie5||QA(e,{l:-10}),this.pie6=this.pie6||QA(t,{l:-10}),this.pie7=this.pie7||QA(A,{h:60,l:-10}),this.pie8=this.pie8||QA(A,{h:-60,l:-10}),this.pie9=this.pie9||QA(A,{h:120,l:0}),this.pie10=this.pie10||QA(A,{h:60,l:-20}),this.pie11=this.pie11||QA(A,{h:-60,l:-20}),this.pie12=this.pie12||QA(A,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||A,this.quadrant2Fill=this.quadrant2Fill||QA(A,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(A,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(A,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||A,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.requirementEdgeLabelBackground="#FFFFFF",this.git0=this.git0||A,this.git1=this.git1||e,this.git2=this.git2||t,this.git3=this.git3||QA(A,{h:-30}),this.git4=this.git4||QA(A,{h:-60}),this.git5=this.git5||QA(A,{h:-90}),this.git6=this.git6||QA(A,{h:60}),this.git7=this.git7||QA(A,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ie(this.git0),this.gitInv1=this.gitInv1||ie(this.git1),this.gitInv2=this.gitInv2||ie(this.git2),this.gitInv3=this.gitInv3||ie(this.git3),this.gitInv4=this.gitInv4||ie(this.git4),this.gitInv5=this.gitInv5||ie(this.git5),this.gitInv6=this.gitInv6||ie(this.git6),this.gitInv7=this.gitInv7||ie(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.commitLineColor=this.commitLineColor??"#BDBCCC",this.erEdgeLabelBackground="#FFFFFF",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||KB,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||JB}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},KAt=y((A)=>{let e=new HAt;return e.calculate(A),e},"getThemeVariables"),JAt=class{static{y(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ie(this.primaryColor,16),this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=ie(this.background),this.secondaryBorderColor=vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=vr(this.tertiaryColor,this.darkMode),this.primaryTextColor=ie(this.primaryColor),this.secondaryTextColor=ie(this.secondaryColor),this.tertiaryTextColor=ie(this.tertiaryColor),this.mainBkg="#111113",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ie(ie("#323D47"),10),this.border1="#ccc",this.border2=ln(255,255,255,0.25),this.arrowheadColor=ie(this.background),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.labelBackground="#111113",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.noteBkgColor=this.noteBkgColor??"#FEF9C3",this.noteTextColor=this.noteTextColor??"#28253D",this.THEME_COLOR_LIMIT=12,this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#FFFFFF",this.stateBorder="#FFFFFF",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.clusterBkg="#1E1A2E",this.clusterBorder="#BDBCCC",this.noteBorderColor="#FACC15",this.noteFontWeight=600,this.filterColor="#FFFFFF"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#FFFFFF"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||vr(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||vr(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||vr(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#FFFFFF",this.secondaryTextColor=this.secondaryTextColor||ie(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ie(this.tertiaryColor),this.lineColor=this.lineColor||ie(this.background),this.arrowheadColor=this.arrowheadColor||ie(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.border1,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder="#FFFFFF",this.signalColor="#FFFFFF",this.labelBoxBorderColor="#BDBCCC",this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ie(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.compositeBackground="#16141F",this.altBackground="#16141F",this.compositeTitleBackground="#16141F",this.stateEdgeLabelBackground="#16141F",this.fontWeight=600,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||QA(this.primaryColor,{h:30}),this.cScale4=this.cScale4||QA(this.primaryColor,{h:60}),this.cScale5=this.cScale5||QA(this.primaryColor,{h:90}),this.cScale6=this.cScale6||QA(this.primaryColor,{h:120}),this.cScale7=this.cScale7||QA(this.primaryColor,{h:150}),this.cScale8=this.cScale8||QA(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||QA(this.primaryColor,{h:270}),this.cScale10=this.cScale10||QA(this.primaryColor,{h:300}),this.cScale11=this.cScale11||QA(this.primaryColor,{h:330}),this.darkMode)for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],75);else for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScale"+e]=he(this["cScale"+e],25);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||ie(this["cScale"+e]);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)if(this.darkMode)this["cScalePeer"+e]=this["cScalePeer"+e]||Ie(this["cScale"+e],10);else this["cScalePeer"+e]=this["cScalePeer"+e]||he(this["cScale"+e],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=this["cScaleLabel"+e]||this.scaleLabelColor;let A=this.darkMode?-4:-1;for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(5+e*3)}),this["surfacePeer"+e]=this["surfacePeer"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(8+e*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||QA(this.primaryColor,{h:64}),this.fillType3=this.fillType3||QA(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||QA(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||QA(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||QA(this.primaryColor,{h:128}),this.fillType7=this.fillType7||QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||QA(this.primaryColor,{l:-10}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-10}),this.pie6=this.pie6||QA(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||QA(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.requirementEdgeLabelBackground="#16141F",this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||QA(this.primaryColor,{h:-30}),this.git4=this.git4||QA(this.primaryColor,{h:-60}),this.git5=this.git5||QA(this.primaryColor,{h:-90}),this.git6=this.git6||QA(this.primaryColor,{h:60}),this.git7=this.git7||QA(this.primaryColor,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ie(this.git0),this.gitInv1=this.gitInv1||ie(this.git1),this.gitInv2=this.gitInv2||ie(this.git2),this.gitInv3=this.gitInv3||ie(this.git3),this.gitInv4=this.gitInv4||ie(this.git4),this.gitInv5=this.gitInv5||ie(this.git5),this.gitInv6=this.gitInv6||ie(this.git6),this.gitInv7=this.gitInv7||ie(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.commitLineColor=this.commitLineColor??"#BDBCCC",this.erEdgeLabelBackground="#16141F",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||KB,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||JB}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},OAt=y((A)=>{let e=new JAt;return e.calculate(A),e},"getThemeVariables"),PAt=class{static{y(this,"Theme")}constructor(){this.background="#ffffff",this.primaryColor="#cccccc",this.mainBkg="#ffffff",this.noteBkgColor="#fff5ad",this.noteTextColor="#28253D",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.primaryBorderColor=vr(this.primaryColor,this.darkMode),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#28253D",this.stateBorder="#28253D",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.tertiaryColor="#ffffff",this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.actorBorder="#28253D",this.noteBorderColor="#FACC15",this.noteFontWeight=600,this.borderColorArray=["#E879F9","#2DD4BF","#FB923C","#22D3EE","#4ADE80","#A78BFA","#F87171","#FACC15","#818CF8","#A3E635 ","#38BDF8","#FB7185"],this.bkgColorArray=["#FDF4FF","#F0FDFA","#FFF7ED","#ECFEFF","#F0FDF4","#F5F3FF","#FEF2F2","#FEFCE8","#EEF2FF","#F7FEE7","#F0F9FF","#FFF1F2"],this.filterColor="#000000"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#28253D"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||vr(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||vr(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||vr(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#28253D",this.secondaryTextColor=this.secondaryTextColor||ie(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ie(this.tertiaryColor),this.lineColor=this.lineColor||ie(this.background),this.arrowheadColor=this.arrowheadColor||ie(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ie(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor;let A="#ECECFE",e="#E9E9F1",t=QA(A,{h:180,l:5});this.sectionBkgColor=this.sectionBkgColor||t,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||e,this.sectionBkgColor2=this.sectionBkgColor2||A,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||A,this.activeTaskBorderColor=this.activeTaskBorderColor||A,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(A,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||"#f4a8ff",this.cScale1=this.cScale1||"#46ecd5",this.cScale2=this.cScale2||"#ffb86a",this.cScale3=this.cScale3||"#dab2ff",this.cScale4=this.cScale4||"#7bf1a8",this.cScale5=this.cScale5||"#c4b4ff",this.cScale6=this.cScale6||"#ffa2a2",this.cScale7=this.cScale7||"#ffdf20",this.cScale8=this.cScale8||"#a3b3ff",this.cScale9=this.cScale9||"#bbf451",this.cScale10=this.cScale10||"#74d4ff",this.cScale11=this.cScale11||"#ffa1ad";for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleInv"+i]=this["cScaleInv"+i]||ie(this["cScale"+i]);for(let i=0;i<this.THEME_COLOR_LIMIT;i++)if(this.darkMode)this["cScalePeer"+i]=this["cScalePeer"+i]||Ie(this["cScale"+i],10);else this["cScalePeer"+i]=this["cScalePeer"+i]||he(this["cScale"+i],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let i=0;i<this.THEME_COLOR_LIMIT;i++)this["cScaleLabel"+i]=this["cScaleLabel"+i]||this.scaleLabelColor;let r=this.darkMode?-4:-1;for(let i=0;i<5;i++)this["surface"+i]=this["surface"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(5+i*3)}),this["surfacePeer"+i]=this["surfacePeer"+i]||QA(this.mainBkg,{h:180,s:-15,l:r*(8+i*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||A,this.fillType1=this.fillType1||e,this.fillType2=this.fillType2||QA(A,{h:64}),this.fillType3=this.fillType3||QA(e,{h:64}),this.fillType4=this.fillType4||QA(A,{h:-64}),this.fillType5=this.fillType5||QA(e,{h:-64}),this.fillType6=this.fillType6||QA(A,{h:128}),this.fillType7=this.fillType7||QA(e,{h:128}),this.pie1=this.pie1||A,this.pie2=this.pie2||e,this.pie3=this.pie3||t,this.pie4=this.pie4||QA(A,{l:-10}),this.pie5=this.pie5||QA(e,{l:-10}),this.pie6=this.pie6||QA(t,{l:-10}),this.pie7=this.pie7||QA(A,{h:60,l:-10}),this.pie8=this.pie8||QA(A,{h:-60,l:-10}),this.pie9=this.pie9||QA(A,{h:120,l:0}),this.pie10=this.pie10||QA(A,{h:60,l:-20}),this.pie11=this.pie11||QA(A,{h:-60,l:-20}),this.pie12=this.pie12||QA(A,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||A,this.quadrant2Fill=this.quadrant2Fill||QA(A,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(A,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(A,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||A,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||A,this.git1=this.git1||e,this.git2=this.git2||t,this.git3=this.git3||QA(A,{h:-30}),this.git4=this.git4||QA(A,{h:-60}),this.git5=this.git5||QA(A,{h:-90}),this.git6=this.git6||QA(A,{h:60}),this.git7=this.git7||QA(A,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ie(this.git0),this.gitInv1=this.gitInv1||ie(this.git1),this.gitInv2=this.gitInv2||ie(this.git2),this.gitInv3=this.gitInv3||ie(this.git3),this.gitInv4=this.gitInv4||ie(this.git4),this.gitInv5=this.gitInv5||ie(this.git5),this.gitInv6=this.gitInv6||ie(this.git6),this.gitInv7=this.gitInv7||ie(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLineColor=this.commitLineColor??"#BDBCCC",this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.fontWeight=600,this.erEdgeLabelBackground="#FFFFFF",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||KB,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||JB}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},_At=y((A)=>{let e=new PAt;return e.calculate(A),e},"getThemeVariables"),WAt=class{static{y(this,"Theme")}constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=Ie(this.primaryColor,16),this.tertiaryColor=QA(this.primaryColor,{h:-160}),this.primaryBorderColor=ie(this.background),this.secondaryBorderColor=vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=vr(this.tertiaryColor,this.darkMode),this.primaryTextColor=ie(this.primaryColor),this.secondaryTextColor=ie(this.secondaryColor),this.tertiaryTextColor=ie(this.tertiaryColor),this.mainBkg="#111113",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=Ie(ie("#323D47"),10),this.border1="#ccc",this.border2=ln(255,255,255,0.25),this.arrowheadColor=ie(this.background),this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.labelBackground="#111113",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.radius=12,this.strokeWidth=2,this.noteBkgColor=this.noteBkgColor??"#FEF9C3",this.noteTextColor=this.noteTextColor??"#28253D",this.THEME_COLOR_LIMIT=12,this.fontFamily='"Recursive Variable", arial, sans-serif',this.fontSize="14px",this.nodeBorder="#FFFFFF",this.stateBorder="#FFFFFF",this.useGradient=!1,this.gradientStart="#0042eb",this.gradientStop="#eb0042",this.dropShadow="url(#drop-shadow)",this.nodeShadow=!0,this.archEdgeColor="calculated",this.archEdgeArrowColor="calculated",this.archEdgeWidth="3",this.archGroupBorderColor=this.primaryBorderColor,this.archGroupBorderWidth="2px",this.clusterBkg="#1E1A2E",this.clusterBorder="#BDBCCC",this.noteBorderColor="#FACC15",this.noteFontWeight=600,this.borderColorArray=["#E879F9","#2DD4BF","#FB923C","#22D3EE","#4ADE80","#A78BFA","#F87171","#FACC15","#818CF8","#A3E635 ","#38BDF8","#FB7185"],this.bkgColorArray=[],this.filterColor="#FFFFFF"}updateColors(){this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#FFFFFF"),this.secondaryColor=this.secondaryColor||QA(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||QA(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||vr(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||vr(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||vr(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||vr(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#FFFFFF",this.secondaryTextColor=this.secondaryTextColor||ie(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||ie(this.tertiaryColor),this.lineColor=this.lineColor||ie(this.background),this.arrowheadColor=this.arrowheadColor||ie(this.background),this.textColor=this.textColor||this.primaryTextColor,this.border2=this.border2||this.tertiaryBorderColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.border1,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder="#FFFFFF",this.signalColor="#FFFFFF",this.labelBoxBorderColor="#BDBCCC",this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||this.actorBorder,this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||he(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||ie(this.lineColor),this.rectBkgColor=this.rectBkgColor||this.tertiaryColor,this.rootLabelColor="#FFFFFF",this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||Ie(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.vertLineColor=this.vertLineColor||this.primaryBorderColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.archEdgeColor=this.lineColor,this.archEdgeArrowColor=this.lineColor,this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#f0f0f0",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||"#f4a8ff",this.cScale1=this.cScale1||"#46ecd5",this.cScale2=this.cScale2||"#ffb86a",this.cScale3=this.cScale3||"#dab2ff",this.cScale4=this.cScale4||"#7bf1a8",this.cScale5=this.cScale5||"#c4b4ff",this.cScale6=this.cScale6||"#ffa2a2",this.cScale7=this.cScale7||"#ffdf20",this.cScale8=this.cScale8||"#a3b3ff",this.cScale9=this.cScale9||"#bbf451",this.cScale10=this.cScale10||"#74d4ff",this.cScale11=this.cScale11||"#ffa1ad";for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleInv"+e]=this["cScaleInv"+e]||ie(this["cScale"+e]);for(let e=0;e<this.THEME_COLOR_LIMIT;e++)if(this.darkMode)this["cScalePeer"+e]=this["cScalePeer"+e]||Ie(this["cScale"+e],10);else this["cScalePeer"+e]=this["cScalePeer"+e]||he(this["cScale"+e],10);this.scaleLabelColor=this.scaleLabelColor||this.labelTextColor;for(let e=0;e<this.THEME_COLOR_LIMIT;e++)this["cScaleLabel"+e]=he(this["cScale"+e],75);let A=this.darkMode?-4:-1;for(let e=0;e<5;e++)this["surface"+e]=this["surface"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(5+e*3)}),this["surfacePeer"+e]=this["surfacePeer"+e]||QA(this.mainBkg,{h:180,s:-15,l:A*(8+e*3)});if(this.classText=this.classText||this.textColor,this.fillType0=this.fillType0||this.primaryColor,this.fillType1=this.fillType1||this.secondaryColor,this.fillType2=this.fillType2||QA(this.primaryColor,{h:64}),this.fillType3=this.fillType3||QA(this.secondaryColor,{h:64}),this.fillType4=this.fillType4||QA(this.primaryColor,{h:-64}),this.fillType5=this.fillType5||QA(this.secondaryColor,{h:-64}),this.fillType6=this.fillType6||QA(this.primaryColor,{h:128}),this.fillType7=this.fillType7||QA(this.secondaryColor,{h:128}),this.pie1=this.pie1||this.primaryColor,this.pie2=this.pie2||this.secondaryColor,this.pie3=this.pie3||this.tertiaryColor,this.pie4=this.pie4||QA(this.primaryColor,{l:-10}),this.pie5=this.pie5||QA(this.secondaryColor,{l:-10}),this.pie6=this.pie6||QA(this.tertiaryColor,{l:-10}),this.pie7=this.pie7||QA(this.primaryColor,{h:60,l:-10}),this.pie8=this.pie8||QA(this.primaryColor,{h:-60,l:-10}),this.pie9=this.pie9||QA(this.primaryColor,{h:120,l:0}),this.pie10=this.pie10||QA(this.primaryColor,{h:60,l:-20}),this.pie11=this.pie11||QA(this.primaryColor,{h:-60,l:-20}),this.pie12=this.pie12||QA(this.primaryColor,{h:120,l:-10}),this.pieTitleTextSize=this.pieTitleTextSize||"25px",this.pieTitleTextColor=this.pieTitleTextColor||this.taskTextDarkColor,this.pieSectionTextSize=this.pieSectionTextSize||"17px",this.pieSectionTextColor=this.pieSectionTextColor||this.textColor,this.pieLegendTextSize=this.pieLegendTextSize||"17px",this.pieLegendTextColor=this.pieLegendTextColor||this.taskTextDarkColor,this.pieStrokeColor=this.pieStrokeColor||"black",this.pieStrokeWidth=this.pieStrokeWidth||"2px",this.pieOuterStrokeWidth=this.pieOuterStrokeWidth||"2px",this.pieOuterStrokeColor=this.pieOuterStrokeColor||"black",this.pieOpacity=this.pieOpacity||"0.7",this.vennTitleTextColor=this.vennTitleTextColor??this.titleColor,this.vennSetTextColor=this.vennSetTextColor??this.textColor,this.quadrant1Fill=this.quadrant1Fill||this.primaryColor,this.quadrant2Fill=this.quadrant2Fill||QA(this.primaryColor,{r:5,g:5,b:5}),this.quadrant3Fill=this.quadrant3Fill||QA(this.primaryColor,{r:10,g:10,b:10}),this.quadrant4Fill=this.quadrant4Fill||QA(this.primaryColor,{r:15,g:15,b:15}),this.quadrant1TextFill=this.quadrant1TextFill||this.primaryTextColor,this.quadrant2TextFill=this.quadrant2TextFill||QA(this.primaryTextColor,{r:-5,g:-5,b:-5}),this.quadrant3TextFill=this.quadrant3TextFill||QA(this.primaryTextColor,{r:-10,g:-10,b:-10}),this.quadrant4TextFill=this.quadrant4TextFill||QA(this.primaryTextColor,{r:-15,g:-15,b:-15}),this.quadrantPointFill=this.quadrantPointFill||uu(this.quadrant1Fill)?Ie(this.quadrant1Fill):he(this.quadrant1Fill),this.quadrantPointTextFill=this.quadrantPointTextFill||this.primaryTextColor,this.quadrantXAxisTextFill=this.quadrantXAxisTextFill||this.primaryTextColor,this.quadrantYAxisTextFill=this.quadrantYAxisTextFill||this.primaryTextColor,this.quadrantInternalBorderStrokeFill=this.quadrantInternalBorderStrokeFill||this.primaryBorderColor,this.quadrantExternalBorderStrokeFill=this.quadrantExternalBorderStrokeFill||this.primaryBorderColor,this.quadrantTitleFill=this.quadrantTitleFill||this.primaryTextColor,this.xyChart={backgroundColor:this.xyChart?.backgroundColor||this.background,titleColor:this.xyChart?.titleColor||this.primaryTextColor,xAxisTitleColor:this.xyChart?.xAxisTitleColor||this.primaryTextColor,xAxisLabelColor:this.xyChart?.xAxisLabelColor||this.primaryTextColor,xAxisTickColor:this.xyChart?.xAxisTickColor||this.primaryTextColor,xAxisLineColor:this.xyChart?.xAxisLineColor||this.primaryTextColor,yAxisTitleColor:this.xyChart?.yAxisTitleColor||this.primaryTextColor,yAxisLabelColor:this.xyChart?.yAxisLabelColor||this.primaryTextColor,yAxisTickColor:this.xyChart?.yAxisTickColor||this.primaryTextColor,yAxisLineColor:this.xyChart?.yAxisLineColor||this.primaryTextColor,plotColorPalette:this.xyChart?.plotColorPalette||"#FFF4DD,#FFD8B1,#FFA07A,#ECEFF1,#D6DBDF,#C3E0A8,#FFB6A4,#FFD74D,#738FA7,#FFFFF0"},this.requirementBackground=this.requirementBackground||this.primaryColor,this.requirementBorderColor=this.requirementBorderColor||this.primaryBorderColor,this.requirementBorderSize=this.requirementBorderSize||"1",this.requirementTextColor=this.requirementTextColor||this.primaryTextColor,this.relationColor=this.relationColor||this.lineColor,this.relationLabelBackground=this.relationLabelBackground||(this.darkMode?he(this.secondaryColor,30):this.secondaryColor),this.relationLabelColor=this.relationLabelColor||this.actorTextColor,this.git0=this.git0||this.primaryColor,this.git1=this.git1||this.secondaryColor,this.git2=this.git2||this.tertiaryColor,this.git3=this.git3||QA(this.primaryColor,{h:-30}),this.git4=this.git4||QA(this.primaryColor,{h:-60}),this.git5=this.git5||QA(this.primaryColor,{h:-90}),this.git6=this.git6||QA(this.primaryColor,{h:60}),this.git7=this.git7||QA(this.primaryColor,{h:120}),this.darkMode)this.git0=Ie(this.git0,25),this.git1=Ie(this.git1,25),this.git2=Ie(this.git2,25),this.git3=Ie(this.git3,25),this.git4=Ie(this.git4,25),this.git5=Ie(this.git5,25),this.git6=Ie(this.git6,25),this.git7=Ie(this.git7,25);else this.git0=he(this.git0,25),this.git1=he(this.git1,25),this.git2=he(this.git2,25),this.git3=he(this.git3,25),this.git4=he(this.git4,25),this.git5=he(this.git5,25),this.git6=he(this.git6,25),this.git7=he(this.git7,25);this.gitInv0=this.gitInv0||ie(this.git0),this.gitInv1=this.gitInv1||ie(this.git1),this.gitInv2=this.gitInv2||ie(this.git2),this.gitInv3=this.gitInv3||ie(this.git3),this.gitInv4=this.gitInv4||ie(this.git4),this.gitInv5=this.gitInv5||ie(this.git5),this.gitInv6=this.gitInv6||ie(this.git6),this.gitInv7=this.gitInv7||ie(this.git7),this.branchLabelColor=this.branchLabelColor||(this.darkMode?"black":this.labelTextColor),this.gitBranchLabel0=this.gitBranchLabel0||this.branchLabelColor,this.gitBranchLabel1=this.gitBranchLabel1||this.branchLabelColor,this.gitBranchLabel2=this.gitBranchLabel2||this.branchLabelColor,this.gitBranchLabel3=this.gitBranchLabel3||this.branchLabelColor,this.gitBranchLabel4=this.gitBranchLabel4||this.branchLabelColor,this.gitBranchLabel5=this.gitBranchLabel5||this.branchLabelColor,this.gitBranchLabel6=this.gitBranchLabel6||this.branchLabelColor,this.gitBranchLabel7=this.gitBranchLabel7||this.branchLabelColor,this.tagLabelColor=this.tagLabelColor||this.primaryTextColor,this.tagLabelBackground=this.tagLabelBackground||this.primaryColor,this.tagLabelBorder=this.tagBorder||this.primaryBorderColor,this.tagLabelFontSize=this.tagLabelFontSize||"10px",this.commitLabelColor=this.commitLabelColor||this.secondaryTextColor,this.commitLabelBackground=this.commitLabelBackground||this.secondaryColor,this.commitLabelFontSize=this.commitLabelFontSize||"10px",this.commitLineColor=this.commitLineColor??"#BDBCCC",this.fontWeight=600,this.erEdgeLabelBackground="#16141F",this.attributeBackgroundColorOdd=this.attributeBackgroundColorOdd||KB,this.attributeBackgroundColorEven=this.attributeBackgroundColorEven||JB}calculate(A){if(typeof A!=="object"){this.updateColors();return}let e=Object.keys(A);e.forEach((t)=>{this[t]=A[t]}),this.updateColors(),e.forEach((t)=>{this[t]=A[t]})}},qAt=y((A)=>{let e=new WAt;return e.calculate(A),e},"getThemeVariables"),HB={base:{getThemeVariables:kAt},dark:{getThemeVariables:xAt},default:{getThemeVariables:L0},forest:{getThemeVariables:RAt},neutral:{getThemeVariables:GAt},neo:{getThemeVariables:MAt},"neo-dark":{getThemeVariables:YAt},redux:{getThemeVariables:KAt},"redux-dark":{getThemeVariables:OAt},"redux-color":{getThemeVariables:_At},"redux-dark-color":{getThemeVariables:qAt}},$o={flowchart:{useMaxWidth:!0,titleTopMargin:25,subGraphTitleMargin:{top:0,bottom:0},diagramPadding:8,htmlLabels:null,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,defaultRenderer:"dagre-wrapper",wrappingWidth:200,inheritDir:!1},swimlane:{useMaxWidth:!0,lineHops:"arc",ignoreCrossLaneEdges:!0,optimizeRanksByCrossings:!0,automaticLaneOrdering:!1},sequence:{useMaxWidth:!0,hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20},gantt:{useMaxWidth:!0,titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",topAxis:!1,displayMode:"",weekday:"sunday"},journey:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,maxLabelWidth:360,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],titleColor:"",titleFontFamily:'"trebuchet ms", verdana, arial, sans-serif',titleFontSize:"4ex"},class:{useMaxWidth:!0,titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,defaultRenderer:"dagre-wrapper",htmlLabels:!1,hideEmptyMembersBox:!1,hierarchicalNamespaces:!0},state:{useMaxWidth:!0,titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,defaultRenderer:"dagre-wrapper"},er:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,nodeSpacing:140,rankSpacing:80,stroke:"gray",fill:"honeydew",fontSize:12},pie:{useMaxWidth:!0,textPosition:0.75,donutHole:0,legendPosition:"right",highlightSlice:""},quadrantChart:{useMaxWidth:!0,chartWidth:500,chartHeight:500,titleFontSize:20,titlePadding:10,quadrantPadding:5,xAxisLabelPadding:5,yAxisLabelPadding:5,xAxisLabelFontSize:16,yAxisLabelFontSize:16,quadrantLabelFontSize:16,quadrantTextTopPadding:5,pointTextPadding:5,pointLabelFontSize:12,pointRadius:5,xAxisPosition:"top",yAxisPosition:"left",quadrantInternalBorderStrokeWidth:1,quadrantExternalBorderStrokeWidth:2},xyChart:{useMaxWidth:!0,width:700,height:500,titleFontSize:20,titlePadding:10,showDataLabel:!1,showDataLabelOutsideBar:!1,showTitle:!0,xAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2,labelRotation:0},yAxis:{$ref:"#/$defs/XYChartAxisConfig",showLabel:!0,labelFontSize:14,labelPadding:5,showTitle:!0,titleFontSize:16,titlePadding:5,showTick:!0,tickLength:5,tickWidth:2,showAxisLine:!0,axisLineWidth:2,labelRotation:0},chartOrientation:"vertical",plotReservedSpacePercent:50},requirement:{useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200,layoutAlgorithm:"cose-bilkent"},ishikawa:{useMaxWidth:!0,diagramPadding:20},kanban:{useMaxWidth:!0,padding:8,sectionWidth:200,ticketBaseUrl:""},timeline:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},gitGraph:{useMaxWidth:!0,titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0,parallelCommits:!1,arrowMarkerAbsolute:!1},c4:{useMaxWidth:!0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},sankey:{useMaxWidth:!0,width:600,height:400,linkColor:"gradient",nodeAlignment:"justify",showValues:!0,prefix:"",suffix:"",nodeWidth:10,nodePadding:12,labelStyle:"legacy"},block:{useMaxWidth:!0,padding:8},packet:{useMaxWidth:!0,rowHeight:32,bitWidth:32,bitsPerRow:32,showBits:!0,paddingX:5,paddingY:5},treeView:{useMaxWidth:!0,rowIndent:10,paddingX:5,paddingY:5,lineThickness:1,showIcons:!1,defaultIconPack:"",filenameIcons:{},extensionIcons:{}},architecture:{useMaxWidth:!0,padding:40,iconSize:80,fontSize:16,randomize:!1,nodeSeparation:75,idealEdgeLengthMultiplier:1.5,edgeElasticity:0.45,numIter:2500,seed:1},eventmodeling:{useMaxWidth:!0,padding:30,rowHeight:32},radar:{useMaxWidth:!0,width:600,height:600,marginTop:50,marginRight:50,marginBottom:50,marginLeft:50,axisScaleFactor:1,axisLabelFactor:1.05,curveTension:0.17},venn:{useMaxWidth:!0,width:800,height:450,padding:8,useDebugLayout:!1},cynefin:{useMaxWidth:!0,width:800,height:600,padding:40,showDomainDescriptions:!0,boundaryAmplitude:8,seed:0},theme:"default",look:"classic",handDrawnSeed:0,layout:"dagre",maxTextSize:50000,maxEdges:500,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize","suppressErrorRendering","maxEdges"],legacyMathML:!1,forceLegacyMathML:!1,deterministicIds:!1,fontSize:16,markdownAutoWrap:!0,suppressErrorRendering:!1},ayA={...$o,deterministicIDSeed:void 0,elk:{mergeEdges:!1,nodePlacementStrategy:"BRANDES_KOEPF",forceNodeModelOrder:!1,considerModelOrder:"NODES_AND_EDGES"},themeCSS:void 0,themeVariables:HB.default.getThemeVariables(),sequence:{...$o.sequence,messageFont:y(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont"),noteFont:y(function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},"noteFont"),actorFont:y(function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}},"actorFont")},class:{hideEmptyMembersBox:!1,hierarchicalNamespaces:!0},gantt:{...$o.gantt,tickInterval:void 0,useWidth:void 0},c4:{...$o.c4,useWidth:void 0,personFont:y(function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},"personFont"),flowchart:{...$o.flowchart,inheritDir:!1},external_personFont:y(function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},"external_personFont"),systemFont:y(function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},"systemFont"),external_systemFont:y(function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},"external_systemFont"),system_dbFont:y(function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},"system_dbFont"),external_system_dbFont:y(function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},"external_system_dbFont"),system_queueFont:y(function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},"system_queueFont"),external_system_queueFont:y(function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},"external_system_queueFont"),containerFont:y(function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},"containerFont"),external_containerFont:y(function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},"external_containerFont"),container_dbFont:y(function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},"container_dbFont"),external_container_dbFont:y(function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},"external_container_dbFont"),container_queueFont:y(function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},"container_queueFont"),external_container_queueFont:y(function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},"external_container_queueFont"),componentFont:y(function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},"componentFont"),external_componentFont:y(function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},"external_componentFont"),component_dbFont:y(function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},"component_dbFont"),external_component_dbFont:y(function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},"external_component_dbFont"),component_queueFont:y(function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},"component_queueFont"),external_component_queueFont:y(function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},"external_component_queueFont"),boundaryFont:y(function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},"boundaryFont"),messageFont:y(function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},"messageFont")},pie:{...$o.pie,useWidth:984},xyChart:{...$o.xyChart,useWidth:void 0},requirement:{...$o.requirement,useWidth:void 0},packet:{...$o.packet},eventmodeling:{...$o.eventmodeling},treeView:{...$o.treeView,useWidth:void 0},radar:{...$o.radar},railroad:{...$o.railroad,fontSize:void 0,fontFamily:void 0,terminalFill:void 0,terminalStroke:void 0,terminalTextColor:void 0,nonTerminalFill:void 0,nonTerminalStroke:void 0,nonTerminalTextColor:void 0,lineColor:void 0,markerFill:void 0,commentFill:void 0,commentStroke:void 0,commentTextColor:void 0,specialFill:void 0,specialStroke:void 0,ruleNameColor:void 0},ishikawa:{...$o.ishikawa},sankey:{...$o.sankey,nodeColors:void 0},treemap:{useMaxWidth:!0,padding:10,diagramPadding:8,showValues:!0,nodeWidth:100,nodeHeight:40,borderWidth:1,valueFontSize:12,labelFontSize:14,valueFormat:","},venn:{...$o.venn},cynefin:{...$o.cynefin}},nyA=y((A,e="")=>Object.keys(A).reduce((t,r)=>{if(Array.isArray(A[r]))return t;else if(typeof A[r]==="object"&&A[r]!==null)return[...t,e+r,...nyA(A[r],"")];return[...t,e+r]},[]),"keyify"),zAt=new Set(nyA(ayA,"")),ur=ayA,ZAt={nodeColors:/^#[\da-f]{3,8}$|^rgb\([\d\s%,.]+\)$|^hsl\([\d\s%,.]+\)$|^[a-z]+$/i,filenameIcons:/^[\w-]+(?::[\w-]+)?$/,extensionIcons:/^[\w-]+(?::[\w-]+)?$/},VAt=y((A,e)=>{for(let t of Object.keys(A)){let r=A[t];if(t.startsWith("__")||t.includes("proto")||t.includes("constr")||typeof r!=="string"||!e.test(r))sA.debug("sanitize deleting dictionary entry:",t,r),delete A[t]}},"sanitizeDictionaryConfig"),cb=y((A)=>{if(sA.debug("sanitizeDirective called with",A),typeof A!=="object"||A==null)return;if(Array.isArray(A)){A.forEach((e)=>cb(e));return}for(let e of Object.keys(A)){if(sA.debug("Checking key",e),e.startsWith("__")||e.includes("proto")||e.includes("constr")||!zAt.has(e)||A[e]==null){sA.debug("sanitize deleting key: ",e),delete A[e];continue}if(typeof A[e]==="object"){let r=ZAt[e];if(r)VAt(A[e],r);else sA.debug("sanitizing object",e),cb(A[e]);continue}let t=["themeCSS","fontFamily","altFontFamily"];for(let r of t)if(e.includes(r))sA.debug("sanitizing css option",e),A[e]=OV(A[e])}if(A.themeVariables)for(let e of Object.keys(A.themeVariables)){let t=A.themeVariables[e];if(t?.match&&!t.match(/^[\d "#%(),.;A-Za-z]+$/))A.themeVariables[e]=""}sA.debug("After sanitization",A)},"sanitizeDirective"),OV=y((A)=>{let e=0,t=0;for(let r of A){if(e<t)return"{ /* ERROR: Unbalanced CSS */ }";if(r==="{")e++;else if(r==="}")t++}if(e!==t)return"{ /* ERROR: Unbalanced CSS */ }";return A},"sanitizeCss"),Hp=Object.freeze(ur),Og=y((A)=>A===!1||["false","null","0"].includes(String(A).trim().toLowerCase())?!1:!0,"evaluate"),Al=Ea({},Hp),Yp=[],gb=Ea({},Hp),Cb=y((A,e)=>{let t=Ea({},A),r={};for(let i of e)gyA(i),r=Ea(r,i);if(t=Ea(t,r),r.theme&&r.theme in HB){let i=Ea({},NR),u=Ea(i.themeVariables||{},r.themeVariables);if(t.theme&&t.theme in HB)t.themeVariables=HB[t.theme].getThemeVariables(u)}return gb=t,XAt(gb),gb},"updateCurrentConfig"),oyA=y((A)=>{if(Al=Ea({},Hp),Al=Ea(Al,A),A.theme&&HB[A.theme])Al.themeVariables=HB[A.theme].getThemeVariables(A.themeVariables);return Cb(Al,Yp),Al},"setSiteConfig"),syA=y((A)=>{NR=Ea({},A)},"saveConfigFromInitialize"),lyA=y((A)=>(Al=Ea(Al,A),Cb(Al,Yp),Al),"updateSiteConfig"),PV=y(()=>Ea({},Al),"getSiteConfig"),_V=y((A)=>(Cb(gb,[A]),ot()),"setConfig"),ot=y(()=>Ea({},gb),"getConfig"),gyA=y((A)=>{if(!A)return;["secure",...Al.secure??[]].forEach((e)=>{if(Object.hasOwn(A,e))sA.debug(`Denied attempt to modify a secure key ${e}`,A[e]),delete A[e]}),Object.keys(A).forEach((e)=>{if(e.startsWith("__"))delete A[e]}),Object.keys(A).forEach((e)=>{if(typeof A[e]==="string"&&(A[e].includes("<")||A[e].includes(">")||A[e].includes("url(data:")))delete A[e];if(typeof A[e]==="object")gyA(A[e])})},"sanitize"),cyA=y((A)=>{if(cb(A),A.fontFamily&&!A.themeVariables?.fontFamily)A.themeVariables={...A.themeVariables,fontFamily:A.fontFamily};Yp.push(A),Cb(Al,Yp)},"addDirective"),Bb=y((A=Al)=>{Yp=[],Cb(A,Yp)},"reset"),jAt={LAZY_LOAD_DEPRECATED:"The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead.",FLOWCHART_HTML_LABELS_DEPRECATED:"flowchart.htmlLabels is deprecated. Please use global htmlLabels instead."},tyA={},CyA=y((A)=>{if(tyA[A])return;sA.warn(jAt[A]),tyA[A]=!0},"issueWarning"),XAt=y((A)=>{if(!A)return;if(A.lazyLoadedDiagrams||A.loadExternalDiagramsAtStartup)CyA("LAZY_LOAD_DEPRECATED")},"checkConfig"),UR=y(()=>{let A={};if(NR)A=Ea(A,NR);for(let e of Yp)A=Ea(A,e);return A},"getUserDefinedConfig"),Fi=y((A)=>{if(A.flowchart?.htmlLabels!=null)CyA("FLOWCHART_HTML_LABELS_DEPRECATED");return Og(A.htmlLabels??A.flowchart?.htmlLabels??!0)},"getEffectiveHtmlLabels"),WV=/^([^\S\n\r]*)-{3}\s*[\n\r](.*?)[\n\r]\1-{3}\s*[\n\r]+/s,sD=/%{2}{\s*(?:(\w+)\s*:|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,$At=/\s*%%.*\n/gm,qV=class extends Error{static{y(this,"UnknownDiagramError")}constructor(A){super(A);this.name="UnknownDiagramError"}},uQ={},Eb=y(function(A,e){A=A.replace(WV,"").replace(sD,"").replace($At,`
`);for(let[t,{detector:r}]of Object.entries(uQ))if(r(A,e))return t;throw new qV(`No diagram type detected matching given configuration for text: ${A}`)},"detectType"),MR=y((...A)=>{for(let{id:e,detector:t,loader:r}of A)ByA(e,t,r)},"registerLazyLoadedDiagrams"),ByA=y((A,e,t)=>{if(uQ[A])sA.warn(`Detector with key ${A} already exists. Overwriting.`);uQ[A]={detector:e,loader:t},sA.debug(`Detector with key ${A} added${t?" with loader":""}`)},"addDetector"),EyA=y((A)=>uQ[A].loader,"getDiagramLoader"),Kp=/<br\s*\/?>/gi,Aet=y((A)=>{if(!A)return[""];return hyA(A).replace(/\\n/g,"#br#").split("#br#")},"getRows"),eet=(()=>{let A=!1;return()=>{if(!A)dyA(),A=!0}})();y(dyA,"setupDompurifyHooks");IyA=y((A)=>(eet(),js.sanitize(A)),"removeScript"),ryA=y((A,e)=>{if(Fi(e)){let t=e.securityLevel;if(t==="antiscript"||t==="strict"||t==="sandbox")A=IyA(A);else if(t!=="loose")A=hyA(A),A=A.replace(/</g,"&lt;").replace(/>/g,"&gt;"),A=A.replace(/=/g,"&equals;"),A=uet(A)}return A},"sanitizeMore"),gr=y((A,e)=>{if(!A)return A;if(e.dompurifyConfig)A=js.sanitize(ryA(A,e),e.dompurifyConfig).toString();else A=js.sanitize(ryA(A,e),{FORBID_TAGS:["style"]}).toString();return A},"sanitizeText"),tet=y((A,e)=>{if(typeof A==="string")return gr(A,e);return A.flat().map((t)=>gr(t,e))},"sanitizeTextOrArray"),ret=y((A)=>Kp.test(A),"hasBreaks"),iet=y((A)=>A.split(Kp),"splitBreaks"),uet=y((A)=>A.replace(/#br#/g,"<br/>"),"placeholderToBreak"),hyA=y((A)=>A.replace(Kp,"#br#"),"breakToPlaceholder"),Jp=y((A)=>{let e="";if(A)e=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,e=CSS.escape(e);return e},"getUrl"),aet=y(function(...A){let e=A.filter((t)=>!isNaN(t));return Math.max(...e)},"getMax"),net=y(function(...A){let e=A.filter((t)=>!isNaN(t));return Math.min(...e)},"getMin"),OB=y(function(A){let e=A.split(/(,)/),t=[];for(let r=0;r<e.length;r++){let i=e[r];if(i===","&&r>0&&r+1<e.length){let u=e[r-1],a=e[r+1];if(oet(u,a))i=u+","+a,r++,t.pop()}t.push(set(i))}return t.join("")},"parseGenericTypes"),JV=y((A,e)=>Math.max(0,A.split(e).length-1),"countOccurrence"),oet=y((A,e)=>{let t=JV(A,"~"),r=JV(e,"~");return t===1&&r===1},"shouldCombineSets"),set=y((A)=>{let e=JV(A,"~"),t=!1;if(e<=1)return A;if(e%2!==0&&A.startsWith("~"))A=A.substring(1),t=!0;let r=[...A],i=r.indexOf("~"),u=r.lastIndexOf("~");while(i!==-1&&u!==-1&&i!==u)r[i]="<",r[u]=">",i=r.indexOf("~"),u=r.lastIndexOf("~");if(t)r.unshift("~");return r.join("")},"processSet"),iyA=y(()=>window.MathMLElement!==void 0,"isMathMLSupported"),LR=/\$\$(.*?)\$\$/g,da=y((A)=>(A.match(LR)?.length??0)>0,"hasKatex"),lD=y(async(A,e)=>{let t=document.createElement("div");t.innerHTML=await gD(A,e),t.id="katex-temp",t.style.visibility="hidden",t.style.position="absolute",t.style.top="0",document.querySelector("body")?.insertAdjacentElement("beforeend",t);let i={width:t.clientWidth,height:t.clientHeight};return t.remove(),i},"calculateMathMLDimensions"),get=y(async(A,e)=>{if(!da(A))return A;if(!(iyA()||e.legacyMathML||e.forceLegacyMathML))return A.replace(LR,"MathML is unsupported in this environment.");{await Promise.resolve().then(() => eyA());let r=e.forceLegacyMathML||!iyA()&&e.legacyMathML?"htmlAndMathml":"mathml";return A.split(Kp).map((i)=>da(i)?`<div style="display: flex; align-items: center; justify-content: center; white-space: nowrap;">${i}</div>`:`<div>${i}</div>`).join("").replace(LR,(i,u)=>AyA.renderToString(u,{throwOnError:!0,displayMode:!0,output:r}).replace(/\n/g," ").replace(/<annotation.*<\/annotation>/g,""))}return A.replace(LR,"Katex is not supported in @mermaid-js/tiny. Please use the full mermaid library.")},"renderKatexUnsanitized"),gD=y(async(A,e)=>gr(await get(A,e),e),"renderKatexSanitized"),_e={getRows:Aet,sanitizeText:gr,sanitizeTextOrArray:tet,hasBreaks:ret,splitBreaks:iet,lineBreakRegex:Kp,removeScript:IyA,getUrl:Jp,evaluate:Og,getMax:aet,getMin:net},cet=y(function(A,e){for(let t of e)A.attr(t[0],t[1])},"d3Attrs"),Cet=y(function(A,e,t){let r=new Map;if(t)r.set("width","100%"),r.set("style",`max-width: ${e}px;`);else r.set("height",A),r.set("width",e);return r},"calculateSvgSizeAttrs"),Xr=y(function(A,e,t,r){let i=Cet(e,t,r);cet(A,i)},"configureSvgSize"),PB=y(function(A,e,t,r){let i=e.node().getBBox(),{width:u,height:a}=i;sA.info(`SVG bounds: ${u}x${a}`,i);let n=0,o=0;sA.info(`Graph bounds: ${n}x${o}`,A),n=u+t*2,o=a+t*2,sA.info(`Calculated bounds: ${n}x${o}`),Xr(e,o,n,r);let s=`${i.x-t} ${i.y-t} ${i.width+2*t} ${i.height+2*t}`;e.attr("viewBox",s)},"setupGraphViewbox"),RR={};y(TR,"cssStyleSheetToString");Bet=y((A,e,t,r)=>{let i="";if(A in RR&&RR[A])i=RR[A]({...t,svgId:r});else sA.warn(`No theme found for ${A}`);return`& {
font-family: ${t.fontFamily};
font-size: ${t.fontSize};
fill: ${t.textColor}
}
@keyframes edge-animation-frame {
from {
stroke-dashoffset: 0;
}
}
@keyframes dash {
to {
stroke-dashoffset: 0;
}
}
& .edge-animation-slow {
stroke-dasharray: 9,5 !important;
stroke-dashoffset: 900;
animation: dash 50s linear infinite;
stroke-linecap: round;
}
& .edge-animation-fast {
stroke-dasharray: 9,5 !important;
stroke-dashoffset: 900;
animation: dash 20s linear infinite;
stroke-linecap: round;
}
/* Classes common for multiple diagrams */
& .error-icon {
fill: ${t.errorBkgColor};
}
& .error-text {
fill: ${t.errorTextColor};
stroke: ${t.errorTextColor};
}
& .edge-thickness-normal {
stroke-width: ${t.strokeWidth??1}px;
}
& .edge-thickness-thick {
stroke-width: 3.5px
}
& .edge-pattern-solid {
stroke-dasharray: 0;
}
& .edge-thickness-invisible {
stroke-width: 0;
fill: none;
}
& .edge-pattern-dashed{
stroke-dasharray: 3;
}
.edge-pattern-dotted {
stroke-dasharray: 2;
}
& .marker {
fill: ${t.lineColor};
stroke: ${t.lineColor};
}
& .marker.cross {
stroke: ${t.lineColor};
}
& svg {
font-family: ${t.fontFamily};
font-size: ${t.fontSize};
}
& p {
margin: 0
}
${i}
.node .neo-node {
stroke: ${t.nodeBorder};
}
[data-look="neo"].node rect, [data-look="neo"].cluster rect, [data-look="neo"].node polygon {
stroke: ${t.useGradient?"url("+r+"-gradient)":t.nodeBorder};
filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${r}-drop-shadow)`):"none"};
}
[data-look="neo"].swimlane.cluster rect {
filter: none;
}
[data-look="neo"].node path {
stroke: ${t.useGradient?"url("+r+"-gradient)":t.nodeBorder};
stroke-width: ${t.strokeWidth??1}px;
}
[data-look="neo"].node .outer-path {
filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${r}-drop-shadow)`):"none"};
}
[data-look="neo"].node .neo-line path {
stroke: ${t.nodeBorder};
filter: none;
}
[data-look="neo"].node circle{
stroke: ${t.useGradient?"url("+r+"-gradient)":t.nodeBorder};
filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${r}-drop-shadow)`):"none"};
}
[data-look="neo"].node circle .state-start{
fill: #000000;
}
[data-look="neo"].icon-shape .icon {
fill: ${t.useGradient?"url("+r+"-gradient)":t.nodeBorder};
filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${r}-drop-shadow)`):"none"};
}
[data-look="neo"].icon-shape .icon-neo path {
stroke: ${t.useGradient?"url("+r+"-gradient)":t.nodeBorder};
filter: ${t.dropShadow?t.dropShadow.replace("url(#drop-shadow)",`url(${r}-drop-shadow)`):"none"};
}
${e}
`},"getStyles"),Eet=y((A,e)=>{if(e!==void 0)RR[A]=e},"addStylesForDiagram"),QyA=Bet,YR={};Vh(YR,{clear:()=>cr,getAccDescription:()=>xr,getAccTitle:()=>kr,getDiagramTitle:()=>Sr,setAccDescription:()=>Fr,setAccTitle:()=>Dr,setDiagramTitle:()=>Tr});jV=y((A)=>gr(A,ot()),"sanitizeText"),cr=y(()=>{zV="",VV="",ZV=""},"clear"),Dr=y((A)=>{zV=jV(A).replace(/^\s+/g,"")},"setAccTitle"),kr=y(()=>zV,"getAccTitle"),Fr=y((A)=>{VV=jV(A).replace(/\n\s+/g,`
`)},"setAccDescription"),xr=y(()=>VV,"getAccDescription"),Tr=y((A)=>{ZV=jV(A)},"setDiagramTitle"),Sr=y(()=>ZV,"getDiagramTitle"),uyA=sA,det=_5,OA=ot,db=_V,HR=Hp,KR=y((A)=>gr(A,OA()),"sanitizeText"),Ib=PB,Iet=y(()=>YR,"getCommonDb"),GR={},hb=y((A,e,t)=>{if(GR[A])uyA.warn(`Diagram with id ${A} already registered. Overwriting.`);if(GR[A]=e,t)ByA(A,t);Eet(A,e.styles),e.injectUtils?.(uyA,det,OA,KR,Ib,Iet(),()=>{})},"registerDiagram"),JR=y((A)=>{if(A in GR)return GR[A];throw new het(A)},"getDiagram"),het=class extends Error{static{y(this,"DiagramNotFoundError")}constructor(A){super(`Diagram ${A} not found.`)}}});function Op(A,e){return A==null||e==null?NaN:A<e?-1:A>e?1:A>=e?0:NaN}function XV(A,e){return A==null||e==null?NaN:e<A?-1:e>A?1:e>=A?0:NaN}function Pp(A){let e,t,r;if(A.length!==2)e=Op,t=(n,o)=>Op(A(n),o),r=(n,o)=>A(n)-o;else e=A===Op||A===XV?A:Qet,t=A,r=A;function i(n,o,s=0,l=n.length){if(s<l){if(e(o,o)!==0)return l;do{let g=s+l>>>1;if(t(n[g],o)<0)s=g+1;else l=g}while(s<l)}return s}function u(n,o,s=0,l=n.length){if(s<l){if(e(o,o)!==0)return l;do{let g=s+l>>>1;if(t(n[g],o)<=0)s=g+1;else l=g}while(s<l)}return s}function a(n,o,s=0,l=n.length){let g=i(n,o,s,l-1);return g>s&&r(n[g-1],o)>-r(n[g],o)?g-1:g}return{left:i,center:a,right:u}}function Qet(){return 0}var $V=()=>{};function Aj(A){return A===null?NaN:+A}var pyA,fyA,pet,fet,ej;var myA=_(()=>{$V();pyA=Pp(Op),fyA=pyA.right,pet=pyA.left,fet=Pp(Aj).center,ej=fyA});function DyA({_intern:A,_key:e},t){let r=e(t);return A.has(r)?A.get(r):t}function met({_intern:A,_key:e},t){let r=e(t);if(A.has(r))return A.get(r);return A.set(r,t),t}function Det({_intern:A,_key:e},t){let r=e(t);if(A.has(r))t=A.get(r),A.delete(r);return t}function yet(A){return A!==null&&typeof A==="object"?A.valueOf():A}var Qb;var yyA=_(()=>{Qb=class Qb extends Map{constructor(A,e=yet){super();if(Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),A!=null)for(let[t,r]of A)this.set(t,r)}get(A){return super.get(DyA(this,A))}has(A){return super.has(DyA(this,A))}set(A,e){return super.set(met(this,A),e)}delete(A){return super.delete(Det(this,A))}}});function OR(A,e,t){let r=(e-A)/Math.max(0,t),i=Math.floor(Math.log10(r)),u=r/Math.pow(10,i),a=u>=wet?10:u>=bet?5:u>=vet?2:1,n,o,s;if(i<0){if(s=Math.pow(10,-i)/a,n=Math.round(A*s),o=Math.round(e*s),n/s<A)++n;if(o/s>e)--o;s=-s}else{if(s=Math.pow(10,i)*a,n=Math.round(A/s),o=Math.round(e/s),n*s<A)++n;if(o*s>e)--o}if(o<n&&0.5<=t&&t<2)return OR(A,e,t*2);return[n,o,s]}function PR(A,e,t){if(e=+e,A=+A,t=+t,!(t>0))return[];if(A===e)return[A];let r=e<A,[i,u,a]=r?OR(e,A,t):OR(A,e,t);if(!(u>=i))return[];let n=u-i+1,o=Array(n);if(r)if(a<0)for(let s=0;s<n;++s)o[s]=(u-s)/-a;else for(let s=0;s<n;++s)o[s]=(u-s)*a;else if(a<0)for(let s=0;s<n;++s)o[s]=(i+s)/-a;else for(let s=0;s<n;++s)o[s]=(i+s)*a;return o}function pb(A,e,t){return e=+e,A=+A,t=+t,OR(A,e,t)[2]}function cD(A,e,t){e=+e,A=+A,t=+t;let r=e<A,i=r?pb(e,A,t):pb(A,e,t);return(r?-1:1)*(i<0?1/-i:i)}var wet,bet,vet;var wyA=_(()=>{wet=Math.sqrt(50),bet=Math.sqrt(10),vet=Math.sqrt(2)});function _R(A,e){let t;if(e===void 0){for(let r of A)if(r!=null&&(t<r||t===void 0&&r>=r))t=r}else{let r=-1;for(let i of A)if((i=e(i,++r,A))!=null&&(t<i||t===void 0&&i>=i))t=i}return t}function WR(A,e){let t;if(e===void 0){for(let r of A)if(r!=null&&(t>r||t===void 0&&r>=r))t=r}else{let r=-1;for(let i of A)if((i=e(i,++r,A))!=null&&(t>i||t===void 0&&i>=i))t=i}return t}function qR(A,e,t){A=+A,e=+e,t=(i=arguments.length)<2?(e=A,A=0,1):i<3?1:+t;var r=-1,i=Math.max(0,Math.ceil((e-A)/t))|0,u=Array(i);while(++r<i)u[r]=A+r*t;return u}var aQ=_(()=>{myA();$V();wyA();yyA()});function tj(A){return A}function ket(A){return"translate("+A+",0)"}function Fet(A){return"translate(0,"+A+")"}function xet(A){return(e)=>+A(e)}function Let(A,e){if(e=Math.max(0,A.bandwidth()-e*2)/2,A.round())e=Math.round(e);return(t)=>+A(t)+e}function Ret(){return!this.__axis}function vyA(A,e){var t=[],r=null,i=null,u=6,a=6,n=3,o=typeof window<"u"&&window.devicePixelRatio>1?0:0.5,s=A===ZR||A===zR?-1:1,l=A===zR||A===rj?"x":"y",g=A===ZR||A===ij?ket:Fet;function C(B){var E=r==null?e.ticks?e.ticks.apply(e,t):e.domain():r,d=i==null?e.tickFormat?e.tickFormat.apply(e,t):tj:i,I=Math.max(u,0)+n,h=e.range(),Q=+h[0]+o,p=+h[h.length-1]+o,m=(e.bandwidth?Let:xet)(e.copy(),o),f=B.selection?B.selection():B,D=f.selectAll(".domain").data([null]),w=f.selectAll(".tick").data(E,e).order(),b=w.exit(),k=w.enter().append("g").attr("class","tick"),v=w.select("line"),S=w.select("text");if(D=D.merge(D.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),w=w.merge(k),v=v.merge(k.append("line").attr("stroke","currentColor").attr(l+"2",s*u)),S=S.merge(k.append("text").attr("fill","currentColor").attr(l,s*I).attr("dy",A===ZR?"0em":A===ij?"0.71em":"0.32em")),B!==f)D=D.transition(B),w=w.transition(B),v=v.transition(B),S=S.transition(B),b=b.transition(B).attr("opacity",byA).attr("transform",function(x){return isFinite(x=m(x))?g(x+o):this.getAttribute("transform")}),k.attr("opacity",byA).attr("transform",function(x){var F=this.parentNode.__axis;return g((F&&isFinite(F=F(x))?F:m(x))+o)});b.remove(),D.attr("d",A===zR||A===rj?a?"M"+s*a+","+Q+"H"+o+"V"+p+"H"+s*a:"M"+o+","+Q+"V"+p:a?"M"+Q+","+s*a+"V"+o+"H"+p+"V"+s*a:"M"+Q+","+o+"H"+p),w.attr("opacity",1).attr("transform",function(x){return g(m(x)+o)}),v.attr(l+"2",s*u),S.attr(l,s*I).text(d),f.filter(Ret).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",A===rj?"start":A===zR?"end":"middle"),f.each(function(){this.__axis=m})}return C.scale=function(B){return arguments.length?(e=B,C):e},C.ticks=function(){return t=Array.from(arguments),C},C.tickArguments=function(B){return arguments.length?(t=B==null?[]:Array.from(B),C):t.slice()},C.tickValues=function(B){return arguments.length?(r=B==null?null:Array.from(B),C):r&&r.slice()},C.tickFormat=function(B){return arguments.length?(i=B,C):i},C.tickSize=function(B){return arguments.length?(u=a=+B,C):u},C.tickSizeInner=function(B){return arguments.length?(u=+B,C):u},C.tickSizeOuter=function(B){return arguments.length?(a=+B,C):a},C.tickPadding=function(B){return arguments.length?(n=+B,C):n},C.offset=function(B){return arguments.length?(o=+B,C):o},C}function uj(A){return vyA(ZR,A)}function aj(A){return vyA(ij,A)}var ZR=1,rj=2,ij=3,zR=4,byA=0.000001;var kyA=()=>{};var FyA=_(()=>{kyA()});function SyA(){for(var A=0,e=arguments.length,t={},r;A<e;++A){if(!(r=arguments[A]+"")||r in t||/[\s.]/.test(r))throw Error("illegal type: "+r);t[r]=[]}return new VR(t)}function VR(A){this._=A}function Get(A,e){return A.trim().split(/^|\s+/).map(function(t){var r="",i=t.indexOf(".");if(i>=0)r=t.slice(i+1),t=t.slice(0,i);if(t&&!e.hasOwnProperty(t))throw Error("unknown type: "+t);return{type:t,name:r}})}function Uet(A,e){for(var t=0,r=A.length,i;t<r;++t)if((i=A[t]).name===e)return i.value}function xyA(A,e,t){for(var r=0,i=A.length;r<i;++r)if(A[r].name===e){A[r]=Net,A=A.slice(0,r).concat(A.slice(r+1));break}if(t!=null)A.push({name:e,value:t});return A}var Net,nj;var LyA=_(()=>{Net={value:()=>{}};VR.prototype=SyA.prototype={constructor:VR,on:function(A,e){var t=this._,r=Get(A+"",t),i,u=-1,a=r.length;if(arguments.length<2){while(++u<a)if((i=(A=r[u]).type)&&(i=Uet(t[i],A.name)))return i;return}if(e!=null&&typeof e!=="function")throw Error("invalid callback: "+e);while(++u<a)if(i=(A=r[u]).type)t[i]=xyA(t[i],A.name,e);else if(e==null)for(i in t)t[i]=xyA(t[i],A.name,null);return this},copy:function(){var A={},e=this._;for(var t in e)A[t]=e[t].slice();return new VR(A)},call:function(A,e){if((i=arguments.length-2)>0)for(var t=Array(i),r=0,i,u;r<i;++r)t[r]=arguments[r+2];if(!this._.hasOwnProperty(A))throw Error("unknown type: "+A);for(u=this._[A],r=0,i=u.length;r<i;++r)u[r].value.apply(e,t)},apply:function(A,e,t){if(!this._.hasOwnProperty(A))throw Error("unknown type: "+A);for(var r=this._[A],i=0,u=r.length;i<u;++i)r[i].value.apply(e,t)}};nj=SyA});var oj=_(()=>{LyA()});var jR="http://www.w3.org/1999/xhtml",sj;var lj=_(()=>{sj={svg:"http://www.w3.org/2000/svg",xhtml:jR,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"}});function _B(A){var e=A+="",t=e.indexOf(":");if(t>=0&&(e=A.slice(0,t))!=="xmlns")A=A.slice(t+1);return sj.hasOwnProperty(e)?{space:sj[e],local:A}:A}var XR=_(()=>{lj()});function Met(A){return function(){var e=this.ownerDocument,t=this.namespaceURI;return t===jR&&e.documentElement.namespaceURI===jR?e.createElement(A):e.createElementNS(t,A)}}function Tet(A){return function(){return this.ownerDocument.createElementNS(A.space,A.local)}}function fb(A){var e=_B(A);return(e.local?Tet:Met)(e)}var gj=_(()=>{XR();lj()});function Yet(){}function nQ(A){return A==null?Yet:function(){return this.querySelector(A)}}function cj(A){if(typeof A!=="function")A=nQ(A);for(var e=this._groups,t=e.length,r=Array(t),i=0;i<t;++i)for(var u=e[i],a=u.length,n=r[i]=Array(a),o,s,l=0;l<a;++l)if((o=u[l])&&(s=A.call(o,o.__data__,l,u))){if("__data__"in o)s.__data__=o.__data__;n[l]=s}return new Ja(r,this._parents)}var RyA=_(()=>{jc()});function Cj(A){return A==null?[]:Array.isArray(A)?A:Array.from(A)}function Het(){return[]}function CD(A){return A==null?Het:function(){return this.querySelectorAll(A)}}function Ket(A){return function(){return Cj(A.apply(this,arguments))}}function Bj(A){if(typeof A==="function")A=Ket(A);else A=CD(A);for(var e=this._groups,t=e.length,r=[],i=[],u=0;u<t;++u)for(var a=e[u],n=a.length,o,s=0;s<n;++s)if(o=a[s])r.push(A.call(o,o.__data__,s,a)),i.push(o);return new Ja(r,i)}var NyA=_(()=>{jc()});function BD(A){return function(){return this.matches(A)}}function $R(A){return function(e){return e.matches(A)}}function Oet(A){return function(){return Jet.call(this.children,A)}}function Pet(){return this.firstElementChild}function Ej(A){return this.select(A==null?Pet:Oet(typeof A==="function"?A:$R(A)))}var Jet;var GyA=_(()=>{Jet=Array.prototype.find});function Wet(){return Array.from(this.children)}function qet(A){return function(){return _et.call(this.children,A)}}function dj(A){return this.selectAll(A==null?Wet:qet(typeof A==="function"?A:$R(A)))}var _et;var UyA=_(()=>{_et=Array.prototype.filter});function Ij(A){if(typeof A!=="function")A=BD(A);for(var e=this._groups,t=e.length,r=Array(t),i=0;i<t;++i)for(var u=e[i],a=u.length,n=r[i]=[],o,s=0;s<a;++s)if((o=u[s])&&A.call(o,o.__data__,s,u))n.push(o);return new Ja(r,this._parents)}var MyA=_(()=>{jc()});function mb(A){return Array(A.length)}function hj(){return new Ja(this._enter||this._groups.map(mb),this._parents)}function Db(A,e){this.ownerDocument=A.ownerDocument,this.namespaceURI=A.namespaceURI,this._next=null,this._parent=A,this.__data__=e}var Qj=_(()=>{jc();Db.prototype={constructor:Db,appendChild:function(A){return this._parent.insertBefore(A,this._next)},insertBefore:function(A,e){return this._parent.insertBefore(A,e)},querySelector:function(A){return this._parent.querySelector(A)},querySelectorAll:function(A){return this._parent.querySelectorAll(A)}}});function pj(A){return function(){return A}}function zet(A,e,t,r,i,u){var a=0,n,o=e.length,s=u.length;for(;a<s;++a)if(n=e[a])n.__data__=u[a],r[a]=n;else t[a]=new Db(A,u[a]);for(;a<o;++a)if(n=e[a])i[a]=n}function Zet(A,e,t,r,i,u,a){var n,o,s=new Map,l=e.length,g=u.length,C=Array(l),B;for(n=0;n<l;++n)if(o=e[n])if(C[n]=B=a.call(o,o.__data__,n,e)+"",s.has(B))i[n]=o;else s.set(B,o);for(n=0;n<g;++n)if(B=a.call(A,u[n],n,u)+"",o=s.get(B))r[n]=o,o.__data__=u[n],s.delete(B);else t[n]=new Db(A,u[n]);for(n=0;n<l;++n)if((o=e[n])&&s.get(C[n])===o)i[n]=o}function Vet(A){return A.__data__}function fj(A,e){if(!arguments.length)return Array.from(this,Vet);var t=e?Zet:zet,r=this._parents,i=this._groups;if(typeof A!=="function")A=pj(A);for(var u=i.length,a=Array(u),n=Array(u),o=Array(u),s=0;s<u;++s){var l=r[s],g=i[s],C=g.length,B=jet(A.call(l,l&&l.__data__,s,r)),E=B.length,d=n[s]=Array(E),I=a[s]=Array(E),h=o[s]=Array(C);t(l,g,d,I,h,B,e);for(var Q=0,p=0,m,f;Q<E;++Q)if(m=d[Q]){if(Q>=p)p=Q+1;while(!(f=I[p])&&++p<E);m._next=f||null}}return a=new Ja(a,r),a._enter=n,a._exit=o,a}function jet(A){return typeof A==="object"&&"length"in A?A:Array.from(A)}var TyA=_(()=>{jc();Qj()});function mj(){return new Ja(this._exit||this._groups.map(mb),this._parents)}var YyA=_(()=>{jc()});function Dj(A,e,t){var r=this.enter(),i=this,u=this.exit();if(typeof A==="function"){if(r=A(r),r)r=r.selection()}else r=r.append(A+"");if(e!=null){if(i=e(i),i)i=i.selection()}if(t==null)u.remove();else t(u);return r&&i?r.merge(i).order():i}function yj(A){var e=A.selection?A.selection():A;for(var t=this._groups,r=e._groups,i=t.length,u=r.length,a=Math.min(i,u),n=Array(i),o=0;o<a;++o)for(var s=t[o],l=r[o],g=s.length,C=n[o]=Array(g),B,E=0;E<g;++E)if(B=s[E]||l[E])C[E]=B;for(;o<i;++o)n[o]=t[o];return new Ja(n,this._parents)}var HyA=_(()=>{jc()});function wj(){for(var A=this._groups,e=-1,t=A.length;++e<t;)for(var r=A[e],i=r.length-1,u=r[i],a;--i>=0;)if(a=r[i]){if(u&&a.compareDocumentPosition(u)^4)u.parentNode.insertBefore(a,u);u=a}return this}function bj(A){if(!A)A=Xet;function e(g,C){return g&&C?A(g.__data__,C.__data__):!g-!C}for(var t=this._groups,r=t.length,i=Array(r),u=0;u<r;++u){for(var a=t[u],n=a.length,o=i[u]=Array(n),s,l=0;l<n;++l)if(s=a[l])o[l]=s;o.sort(e)}return new Ja(i,this._parents).order()}function Xet(A,e){return A<e?-1:A>e?1:A>=e?0:NaN}var KyA=_(()=>{jc()});function vj(){var A=arguments[0];return arguments[0]=this,A.apply(null,arguments),this}function kj(){return Array.from(this)}function Fj(){for(var A=this._groups,e=0,t=A.length;e<t;++e)for(var r=A[e],i=0,u=r.length;i<u;++i){var a=r[i];if(a)return a}return null}function xj(){let A=0;for(let e of this)++A;return A}function Sj(){return!this.node()}function Lj(A){for(var e=this._groups,t=0,r=e.length;t<r;++t)for(var i=e[t],u=0,a=i.length,n;u<a;++u)if(n=i[u])A.call(n,n.__data__,u,i);return this}function $et(A){return function(){this.removeAttribute(A)}}function Att(A){return function(){this.removeAttributeNS(A.space,A.local)}}function ett(A,e){return function(){this.setAttribute(A,e)}}function ttt(A,e){return function(){this.setAttributeNS(A.space,A.local,e)}}function rtt(A,e){return function(){var t=e.apply(this,arguments);if(t==null)this.removeAttribute(A);else this.setAttribute(A,t)}}function itt(A,e){return function(){var t=e.apply(this,arguments);if(t==null)this.removeAttributeNS(A.space,A.local);else this.setAttributeNS(A.space,A.local,t)}}function Rj(A,e){var t=_B(A);if(arguments.length<2){var r=this.node();return t.local?r.getAttributeNS(t.space,t.local):r.getAttribute(t)}return this.each((e==null?t.local?Att:$et:typeof e==="function"?t.local?itt:rtt:t.local?ttt:ett)(t,e))}var JyA=_(()=>{XR()});function yb(A){return A.ownerDocument&&A.ownerDocument.defaultView||A.document&&A||A.defaultView}function utt(A){return function(){this.style.removeProperty(A)}}function att(A,e,t){return function(){this.style.setProperty(A,e,t)}}function ntt(A,e,t){return function(){var r=e.apply(this,arguments);if(r==null)this.style.removeProperty(A);else this.style.setProperty(A,r,t)}}function Nj(A,e,t){return arguments.length>1?this.each((e==null?utt:typeof e==="function"?ntt:att)(A,e,t==null?"":t)):oQ(this.node(),A)}function oQ(A,e){return A.style.getPropertyValue(e)||yb(A).getComputedStyle(A,null).getPropertyValue(e)}var Gj=()=>{};function ott(A){return function(){delete this[A]}}function stt(A,e){return function(){this[A]=e}}function ltt(A,e){return function(){var t=e.apply(this,arguments);if(t==null)delete this[A];else this[A]=t}}function Uj(A,e){return arguments.length>1?this.each((e==null?ott:typeof e==="function"?ltt:stt)(A,e)):this.node()[A]}function OyA(A){return A.trim().split(/^|\s+/)}function Mj(A){return A.classList||new PyA(A)}function PyA(A){this._node=A,this._names=OyA(A.getAttribute("class")||"")}function _yA(A,e){var t=Mj(A),r=-1,i=e.length;while(++r<i)t.add(e[r])}function WyA(A,e){var t=Mj(A),r=-1,i=e.length;while(++r<i)t.remove(e[r])}function gtt(A){return function(){_yA(this,A)}}function ctt(A){return function(){WyA(this,A)}}function Ctt(A,e){return function(){(e.apply(this,arguments)?_yA:WyA)(this,A)}}function Tj(A,e){var t=OyA(A+"");if(arguments.length<2){var r=Mj(this.node()),i=-1,u=t.length;while(++i<u)if(!r.contains(t[i]))return!1;return!0}return this.each((typeof e==="function"?Ctt:e?gtt:ctt)(t,e))}var qyA=_(()=>{PyA.prototype={add:function(A){var e=this._names.indexOf(A);if(e<0)this._names.push(A),this._node.setAttribute("class",this._names.join(" "))},remove:function(A){var e=this._names.indexOf(A);if(e>=0)this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" "))},contains:function(A){return this._names.indexOf(A)>=0}}});function Btt(){this.textContent=""}function Ett(A){return function(){this.textContent=A}}function dtt(A){return function(){var e=A.apply(this,arguments);this.textContent=e==null?"":e}}function Yj(A){return arguments.length?this.each(A==null?Btt:(typeof A==="function"?dtt:Ett)(A)):this.node().textContent}function Itt(){this.innerHTML=""}function htt(A){return function(){this.innerHTML=A}}function Qtt(A){return function(){var e=A.apply(this,arguments);this.innerHTML=e==null?"":e}}function Hj(A){return arguments.length?this.each(A==null?Itt:(typeof A==="function"?Qtt:htt)(A)):this.node().innerHTML}function ptt(){if(this.nextSibling)this.parentNode.appendChild(this)}function Kj(){return this.each(ptt)}function ftt(){if(this.previousSibling)this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Jj(){return this.each(ftt)}function Oj(A){var e=typeof A==="function"?A:fb(A);return this.select(function(){return this.appendChild(e.apply(this,arguments))})}var zyA=_(()=>{gj()});function mtt(){return null}function Pj(A,e){var t=typeof A==="function"?A:fb(A),r=e==null?mtt:typeof e==="function"?e:nQ(e);return this.select(function(){return this.insertBefore(t.apply(this,arguments),r.apply(this,arguments)||null)})}var ZyA=_(()=>{gj()});function Dtt(){var A=this.parentNode;if(A)A.removeChild(this)}function _j(){return this.each(Dtt)}function ytt(){var A=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(A,this.nextSibling):A}function wtt(){var A=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(A,this.nextSibling):A}function Wj(A){return this.select(A?wtt:ytt)}function qj(A){return arguments.length?this.property("__data__",A):this.node().__data__}function btt(A){return function(e){A.call(this,e,this.__data__)}}function vtt(A){return A.trim().split(/^|\s+/).map(function(e){var t="",r=e.indexOf(".");if(r>=0)t=e.slice(r+1),e=e.slice(0,r);return{type:e,name:t}})}function ktt(A){return function(){var e=this.__on;if(!e)return;for(var t=0,r=-1,i=e.length,u;t<i;++t)if(u=e[t],(!A.type||u.type===A.type)&&u.name===A.name)this.removeEventListener(u.type,u.listener,u.options);else e[++r]=u;if(++r)e.length=r;else delete this.__on}}function Ftt(A,e,t){return function(){var r=this.__on,i,u=btt(e);if(r){for(var a=0,n=r.length;a<n;++a)if((i=r[a]).type===A.type&&i.name===A.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=u,i.options=t),i.value=e;return}}if(this.addEventListener(A.type,u,t),i={type:A.type,name:A.name,value:e,listener:u,options:t},!r)this.__on=[i];else r.push(i)}}function zj(A,e,t){var r=vtt(A+""),i,u=r.length,a;if(arguments.length<2){var n=this.node().__on;if(n){for(var o=0,s=n.length,l;o<s;++o)for(i=0,l=n[o];i<u;++i)if((a=r[i]).type===l.type&&a.name===l.name)return l.value}return}n=e?Ftt:ktt;for(i=0;i<u;++i)this.each(n(r[i],e,t));return this}function VyA(A,e,t){var r=yb(A),i=r.CustomEvent;if(typeof i==="function")i=new i(e,t);else if(i=r.document.createEvent("Event"),t)i.initEvent(e,t.bubbles,t.cancelable),i.detail=t.detail;else i.initEvent(e,!1,!1);A.dispatchEvent(i)}function xtt(A,e){return function(){return VyA(this,A,e)}}function Stt(A,e){return function(){return VyA(this,A,e.apply(this,arguments))}}function Zj(A,e){return this.each((typeof e==="function"?Stt:xtt)(A,e))}var jyA=()=>{};function*Vj(){for(var A=this._groups,e=0,t=A.length;e<t;++e)for(var r=A[e],i=0,u=r.length,a;i<u;++i)if(a=r[i])yield a}function Ja(A,e){this._groups=A,this._parents=e}function XyA(){return new Ja([[document.documentElement]],jj)}function Ltt(){return this}var jj,$d;var jc=_(()=>{RyA();NyA();GyA();UyA();MyA();TyA();Qj();YyA();HyA();KyA();JyA();Gj();qyA();zyA();ZyA();jyA();jj=[null];Ja.prototype=XyA.prototype={constructor:Ja,select:cj,selectAll:Bj,selectChild:Ej,selectChildren:dj,filter:Ij,data:fj,enter:hj,exit:mj,join:Dj,merge:yj,selection:Ltt,order:wj,sort:bj,call:vj,nodes:kj,node:Fj,size:xj,empty:Sj,each:Lj,attr:Rj,style:Nj,property:Uj,classed:Tj,text:Yj,html:Hj,raise:Kj,lower:Jj,append:Oj,insert:Pj,remove:_j,clone:Wj,datum:qj,on:zj,dispatch:Zj,[Symbol.iterator]:Vj};$d=XyA});function Qe(A){return typeof A==="string"?new Ja([[document.querySelector(A)]],[document.documentElement]):new Ja([[A]],jj)}var $yA=_(()=>{jc()});var Xc=_(()=>{XR();$yA();jc();Gj()});var AwA=()=>{};function sQ(A,e,t){A.prototype=e.prototype=t,t.constructor=A}function ED(A,e){var t=Object.create(A.prototype);for(var r in e)t[r]=e[r];return t}function lQ(){}function twA(){return this.rgb().formatHex()}function Htt(){return this.rgb().formatHex8()}function Ktt(){return swA(this).formatHsl()}function rwA(){return this.rgb().formatRgb()}function AC(A){var e,t;return A=(A+"").trim().toLowerCase(),(e=Rtt.exec(A))?(t=e[1].length,e=parseInt(e[1],16),t===6?iwA(e):t===3?new A0(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):t===8?AN(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):t===4?AN(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=Ntt.exec(A))?new A0(e[1],e[2],e[3],1):(e=Gtt.exec(A))?new A0(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=Utt.exec(A))?AN(e[1],e[2],e[3],e[4]):(e=Mtt.exec(A))?AN(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=Ttt.exec(A))?nwA(e[1],e[2]/100,e[3]/100,1):(e=Ytt.exec(A))?nwA(e[1],e[2]/100,e[3]/100,e[4]):ewA.hasOwnProperty(A)?iwA(ewA[A]):A==="transparent"?new A0(NaN,NaN,NaN,0):null}function iwA(A){return new A0(A>>16&255,A>>8&255,A&255,1)}function AN(A,e,t,r){if(r<=0)A=e=t=NaN;return new A0(A,e,t,r)}function $j(A){if(!(A instanceof lQ))A=AC(A);if(!A)return new A0;return A=A.rgb(),new A0(A.r,A.g,A.b,A.opacity)}function ID(A,e,t,r){return arguments.length===1?$j(A):new A0(A,e,t,r==null?1:r)}function A0(A,e,t,r){this.r=+A,this.g=+e,this.b=+t,this.opacity=+r}function uwA(){return`#${_p(this.r)}${_p(this.g)}${_p(this.b)}`}function Jtt(){return`#${_p(this.r)}${_p(this.g)}${_p(this.b)}${_p((isNaN(this.opacity)?1:this.opacity)*255)}`}function awA(){let A=rN(this.opacity);return`${A===1?"rgb(":"rgba("}${Wp(this.r)}, ${Wp(this.g)}, ${Wp(this.b)}${A===1?")":`, ${A})`}`}function rN(A){return isNaN(A)?1:Math.max(0,Math.min(1,A))}function Wp(A){return Math.max(0,Math.min(255,Math.round(A)||0))}function _p(A){return A=Wp(A),(A<16?"0":"")+A.toString(16)}function nwA(A,e,t,r){if(r<=0)A=e=t=NaN;else if(t<=0||t>=1)A=e=NaN;else if(e<=0)A=NaN;return new $c(A,e,t,r)}function swA(A){if(A instanceof $c)return new $c(A.h,A.s,A.l,A.opacity);if(!(A instanceof lQ))A=AC(A);if(!A)return new $c;if(A instanceof $c)return A;A=A.rgb();var e=A.r/255,t=A.g/255,r=A.b/255,i=Math.min(e,t,r),u=Math.max(e,t,r),a=NaN,n=u-i,o=(u+i)/2;if(n){if(e===u)a=(t-r)/n+(t<r)*6;else if(t===u)a=(r-e)/n+2;else a=(e-t)/n+4;n/=o<0.5?u+i:2-u-i,a*=60}else n=o>0&&o<1?0:a;return new $c(a,n,o,A.opacity)}function lwA(A,e,t,r){return arguments.length===1?swA(A):new $c(A,e,t,r==null?1:r)}function $c(A,e,t,r){this.h=+A,this.s=+e,this.l=+t,this.opacity=+r}function owA(A){return A=(A||0)%360,A<0?A+360:A}function eN(A){return Math.max(0,Math.min(1,A||0))}function Xj(A,e,t){return(A<60?e+(t-e)*A/60:A<180?t:A<240?e+(t-e)*(240-A)/60:e)*255}var wb=0.7,tN,dD="\\s*([+-]?\\d+)\\s*",bb="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",WB="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Rtt,Ntt,Gtt,Utt,Mtt,Ttt,Ytt,ewA;var AX=_(()=>{tN=1/wb,Rtt=/^#([0-9a-f]{3,8})$/,Ntt=new RegExp(`^rgb\\(${dD},${dD},${dD}\\)$`),Gtt=new RegExp(`^rgb\\(${WB},${WB},${WB}\\)$`),Utt=new RegExp(`^rgba\\(${dD},${dD},${dD},${bb}\\)$`),Mtt=new RegExp(`^rgba\\(${WB},${WB},${WB},${bb}\\)$`),Ttt=new RegExp(`^hsl\\(${bb},${WB},${WB}\\)$`),Ytt=new RegExp(`^hsla\\(${bb},${WB},${WB},${bb}\\)$`),ewA={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};sQ(lQ,AC,{copy(A){return Object.assign(new this.constructor,this,A)},displayable(){return this.rgb().displayable()},hex:twA,formatHex:twA,formatHex8:Htt,formatHsl:Ktt,formatRgb:rwA,toString:rwA});sQ(A0,ID,ED(lQ,{brighter(A){return A=A==null?tN:Math.pow(tN,A),new A0(this.r*A,this.g*A,this.b*A,this.opacity)},darker(A){return A=A==null?wb:Math.pow(wb,A),new A0(this.r*A,this.g*A,this.b*A,this.opacity)},rgb(){return this},clamp(){return new A0(Wp(this.r),Wp(this.g),Wp(this.b),rN(this.opacity))},displayable(){return-0.5<=this.r&&this.r<255.5&&(-0.5<=this.g&&this.g<255.5)&&(-0.5<=this.b&&this.b<255.5)&&(0<=this.opacity&&this.opacity<=1)},hex:uwA,formatHex:uwA,formatHex8:Jtt,formatRgb:awA,toString:awA}));sQ($c,lwA,ED(lQ,{brighter(A){return A=A==null?tN:Math.pow(tN,A),new $c(this.h,this.s,this.l*A,this.opacity)},darker(A){return A=A==null?wb:Math.pow(wb,A),new $c(this.h,this.s,this.l*A,this.opacity)},rgb(){var A=this.h%360+(this.h<0)*360,e=isNaN(A)||isNaN(this.s)?0:this.s,t=this.l,r=t+(t<0.5?t:1-t)*e,i=2*t-r;return new A0(Xj(A>=240?A-240:A+120,i,r),Xj(A,i,r),Xj(A<120?A+240:A-120,i,r),this.opacity)},clamp(){return new $c(owA(this.h),eN(this.s),eN(this.l),rN(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&(0<=this.l&&this.l<=1)&&(0<=this.opacity&&this.opacity<=1)},formatHsl(){let A=rN(this.opacity);return`${A===1?"hsl(":"hsla("}${owA(this.h)}, ${eN(this.s)*100}%, ${eN(this.l)*100}%${A===1?")":`, ${A})`}`}}))});var gwA,cwA;var CwA=_(()=>{gwA=Math.PI/180,cwA=180/Math.PI});function QwA(A){if(A instanceof qB)return new qB(A.l,A.a,A.b,A.opacity);if(A instanceof AI)return pwA(A);if(!(A instanceof A0))A=$j(A);var e=iX(A.r),t=iX(A.g),r=iX(A.b),i=eX((0.2225045*e+0.7168786*t+0.0606169*r)/EwA),u,a;if(e===t&&t===r)u=a=i;else u=eX((0.4360747*e+0.3850649*t+0.1430804*r)/BwA),a=eX((0.0139322*e+0.0971045*t+0.7141733*r)/dwA);return new qB(116*i-16,500*(u-i),200*(i-a),A.opacity)}function uX(A,e,t,r){return arguments.length===1?QwA(A):new qB(A,e,t,r==null?1:r)}function qB(A,e,t,r){this.l=+A,this.a=+e,this.b=+t,this.opacity=+r}function eX(A){return A>Ott?Math.pow(A,0.3333333333333333):A/hwA+IwA}function tX(A){return A>hD?A*A*A:hwA*(A-IwA)}function rX(A){return 255*(A<=0.0031308?12.92*A:1.055*Math.pow(A,0.4166666666666667)-0.055)}function iX(A){return(A/=255)<=0.04045?A/12.92:Math.pow((A+0.055)/1.055,2.4)}function Ptt(A){if(A instanceof AI)return new AI(A.h,A.c,A.l,A.opacity);if(!(A instanceof qB))A=QwA(A);if(A.a===0&&A.b===0)return new AI(NaN,0<A.l&&A.l<100?0:NaN,A.l,A.opacity);var e=Math.atan2(A.b,A.a)*cwA;return new AI(e<0?e+360:e,Math.sqrt(A.a*A.a+A.b*A.b),A.l,A.opacity)}function vb(A,e,t,r){return arguments.length===1?Ptt(A):new AI(A,e,t,r==null?1:r)}function AI(A,e,t,r){this.h=+A,this.c=+e,this.l=+t,this.opacity=+r}function pwA(A){if(isNaN(A.h))return new qB(A.l,0,0,A.opacity);var e=A.h*gwA;return new qB(A.l,Math.cos(e)*A.c,Math.sin(e)*A.c,A.opacity)}var iN=18,BwA=0.96422,EwA=1,dwA=0.82521,IwA=0.13793103448275862,hD=0.20689655172413793,hwA,Ott;var fwA=_(()=>{AX();CwA();hwA=3*hD*hD,Ott=hD*hD*hD;sQ(qB,uX,ED(lQ,{brighter(A){return new qB(this.l+iN*(A==null?1:A),this.a,this.b,this.opacity)},darker(A){return new qB(this.l-iN*(A==null?1:A),this.a,this.b,this.opacity)},rgb(){var A=(this.l+16)/116,e=isNaN(this.a)?A:A+this.a/500,t=isNaN(this.b)?A:A-this.b/200;return e=BwA*tX(e),A=EwA*tX(A),t=dwA*tX(t),new A0(rX(3.1338561*e-1.6168667*A-0.4906146*t),rX(-0.9787684*e+1.9161415*A+0.033454*t),rX(0.0719453*e-0.2289914*A+1.4052427*t),this.opacity)}}));sQ(AI,vb,ED(lQ,{brighter(A){return new AI(this.h,this.c,this.l+iN*(A==null?1:A),this.opacity)},darker(A){return new AI(this.h,this.c,this.l-iN*(A==null?1:A),this.opacity)},rgb(){return pwA(this).rgb()}}))});var QD=_(()=>{AX();fwA()});function aX(A,e,t,r,i){var u=A*A,a=u*A;return((1-3*A+3*u-a)*e+(4-6*u+3*a)*t+(1+3*A+3*u-3*a)*r+a*i)/6}function nX(A){var e=A.length-1;return function(t){var r=t<=0?t=0:t>=1?(t=1,e-1):Math.floor(t*e),i=A[r],u=A[r+1],a=r>0?A[r-1]:2*i-u,n=r<e-1?A[r+2]:2*u-i;return aX((t-r/e)*e,a,i,u,n)}}function oX(A){var e=A.length;return function(t){var r=Math.floor(((t%=1)<0?++t:t)*e),i=A[(r+e-1)%e],u=A[r%e],a=A[(r+1)%e],n=A[(r+2)%e];return aX((t-r/e)*e,i,u,a,n)}}var mwA=()=>{};var pD=(A)=>()=>A;function DwA(A,e){return function(t){return A+t*e}}function _tt(A,e,t){return A=Math.pow(A,t),e=Math.pow(e,t)-A,t=1/t,function(r){return Math.pow(A+r*e,t)}}function ywA(A,e){var t=e-A;return t?DwA(A,t>180||t<-180?t-360*Math.round(t/360):t):pD(isNaN(A)?e:A)}function wwA(A){return(A=+A)===1?eI:function(e,t){return t-e?_tt(e,t,A):pD(isNaN(e)?t:e)}}function eI(A,e){var t=e-A;return t?DwA(A,t):pD(isNaN(A)?e:A)}var sX=()=>{};function bwA(A){return function(e){var t=e.length,r=Array(t),i=Array(t),u=Array(t),a,n;for(a=0;a<t;++a)n=ID(e[a]),r[a]=n.r||0,i[a]=n.g||0,u[a]=n.b||0;return r=A(r),i=A(i),u=A(u),n.opacity=1,function(o){return n.r=r(o),n.g=i(o),n.b=u(o),n+""}}}var qp,Wtt,qtt;var lX=_(()=>{QD();mwA();sX();qp=function A(e){var t=wwA(e);function r(i,u){var a=t((i=ID(i)).r,(u=ID(u)).r),n=t(i.g,u.g),o=t(i.b,u.b),s=eI(i.opacity,u.opacity);return function(l){return i.r=a(l),i.g=n(l),i.b=o(l),i.opacity=s(l),i+""}}return r.gamma=A,r}(1);Wtt=bwA(nX),qtt=bwA(oX)});function gX(A,e){if(!e)e=[];var t=A?Math.min(e.length,A.length):0,r=e.slice(),i;return function(u){for(i=0;i<t;++i)r[i]=A[i]*(1-u)+e[i]*u;return r}}function vwA(A){return ArrayBuffer.isView(A)&&!(A instanceof DataView)}function kwA(A,e){var t=e?e.length:0,r=A?Math.min(t,A.length):0,i=Array(r),u=Array(t),a;for(a=0;a<r;++a)i[a]=gQ(A[a],e[a]);for(;a<t;++a)u[a]=e[a];return function(n){for(a=0;a<r;++a)u[a]=i[a](n);return u}}var FwA=_(()=>{uN()});function cX(A,e){var t=new Date;return A=+A,e=+e,function(r){return t.setTime(A*(1-r)+e*r),t}}function xo(A,e){return A=+A,e=+e,function(t){return A*(1-t)+e*t}}function CX(A,e){var t={},r={},i;if(A===null||typeof A!=="object")A={};if(e===null||typeof e!=="object")e={};for(i in e)if(i in A)t[i]=gQ(A[i],e[i]);else r[i]=e[i];return function(u){for(i in t)r[i]=t[i](u);return r}}var xwA=_(()=>{uN()});function ztt(A){return function(){return A}}function Ztt(A){return function(e){return A(e)+""}}function fD(A,e){var t=EX.lastIndex=BX.lastIndex=0,r,i,u,a=-1,n=[],o=[];A=A+"",e=e+"";while((r=EX.exec(A))&&(i=BX.exec(e))){if((u=i.index)>t)if(u=e.slice(t,u),n[a])n[a]+=u;else n[++a]=u;if((r=r[0])===(i=i[0]))if(n[a])n[a]+=i;else n[++a]=i;else n[++a]=null,o.push({i:a,x:xo(r,i)});t=BX.lastIndex}if(t<e.length)if(u=e.slice(t),n[a])n[a]+=u;else n[++a]=u;return n.length<2?o[0]?Ztt(o[0].x):ztt(e):(e=o.length,function(s){for(var l=0,g;l<e;++l)n[(g=o[l]).i]=g.x(s);return n.join("")})}var EX,BX;var dX=_(()=>{EX=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,BX=new RegExp(EX.source,"g")});function gQ(A,e){var t=typeof e,r;return e==null||t==="boolean"?pD(e):(t==="number"?xo:t==="string"?(r=AC(e))?(e=r,qp):fD:e instanceof AC?qp:e instanceof Date?cX:vwA(e)?gX:Array.isArray(e)?kwA:typeof e.valueOf!=="function"&&typeof e.toString!=="function"||isNaN(e)?CX:xo)(A,e)}var uN=_(()=>{QD();lX();FwA();xwA();dX()});function aN(A,e){return A=+A,e=+e,function(t){return Math.round(A*(1-t)+e*t)}}function oN(A,e,t,r,i,u){var a,n,o;if(a=Math.sqrt(A*A+e*e))A/=a,e/=a;if(o=A*t+e*r)t-=A*o,r-=e*o;if(n=Math.sqrt(t*t+r*r))t/=n,r/=n,o/=n;if(A*r<e*t)A=-A,e=-e,o=-o,a=-a;return{translateX:i,translateY:u,rotate:Math.atan2(e,A)*SwA,skewX:Math.atan(o)*SwA,scaleX:a,scaleY:n}}var SwA,nN;var LwA=_(()=>{SwA=180/Math.PI,nN={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function RwA(A){let e=new(typeof DOMMatrix==="function"?DOMMatrix:WebKitCSSMatrix)(A+"");return e.isIdentity?nN:oN(e.a,e.b,e.c,e.d,e.e,e.f)}function NwA(A){if(A==null)return nN;if(!sN)sN=document.createElementNS("http://www.w3.org/2000/svg","g");if(sN.setAttribute("transform",A),!(A=sN.transform.baseVal.consolidate()))return nN;return A=A.matrix,oN(A.a,A.b,A.c,A.d,A.e,A.f)}var sN;var GwA=_(()=>{LwA()});function UwA(A,e,t,r){function i(s){return s.length?s.pop()+" ":""}function u(s,l,g,C,B,E){if(s!==g||l!==C){var d=B.push("translate(",null,e,null,t);E.push({i:d-4,x:xo(s,g)},{i:d-2,x:xo(l,C)})}else if(g||C)B.push("translate("+g+e+C+t)}function a(s,l,g,C){if(s!==l){if(s-l>180)l+=360;else if(l-s>180)s+=360;C.push({i:g.push(i(g)+"rotate(",null,r)-2,x:xo(s,l)})}else if(l)g.push(i(g)+"rotate("+l+r)}function n(s,l,g,C){if(s!==l)C.push({i:g.push(i(g)+"skewX(",null,r)-2,x:xo(s,l)});else if(l)g.push(i(g)+"skewX("+l+r)}function o(s,l,g,C,B,E){if(s!==g||l!==C){var d=B.push(i(B)+"scale(",null,",",null,")");E.push({i:d-4,x:xo(s,g)},{i:d-2,x:xo(l,C)})}else if(g!==1||C!==1)B.push(i(B)+"scale("+g+","+C+")")}return function(s,l){var g=[],C=[];return s=A(s),l=A(l),u(s.translateX,s.translateY,l.translateX,l.translateY,g,C),a(s.rotate,l.rotate,g,C),n(s.skewX,l.skewX,g,C),o(s.scaleX,s.scaleY,l.scaleX,l.scaleY,g,C),s=l=null,function(B){var E=-1,d=C.length,I;while(++E<d)g[(I=C[E]).i]=I.x(B);return g.join("")}}}var IX,hX;var MwA=_(()=>{GwA();IX=UwA(RwA,"px, ","px)","deg)"),hX=UwA(NwA,", ",")",")")});function TwA(A){return function(e,t){var r=A((e=vb(e)).h,(t=vb(t)).h),i=eI(e.c,t.c),u=eI(e.l,t.l),a=eI(e.opacity,t.opacity);return function(n){return e.h=r(n),e.c=i(n),e.l=u(n),e.opacity=a(n),e+""}}}var QX,Vtt;var YwA=_(()=>{QD();sX();QX=TwA(ywA),Vtt=TwA(eI)});var mD=_(()=>{uN();dX();MwA();lX();YwA()});function Rb(){return zp||(JwA(jtt),zp=Sb.now()+cN)}function jtt(){zp=0}function Lb(){this._call=this._time=this._next=null}function CN(A,e,t){var r=new Lb;return r.restart(A,e,t),r}function OwA(){Rb(),++DD;var A=lN,e;while(A){if((e=zp-A._time)>=0)A._call.call(void 0,e);A=A._next}--DD}function HwA(){zp=(gN=Sb.now())+cN,DD=Fb=0;try{OwA()}finally{DD=0,$tt(),zp=0}}function Xtt(){var A=Sb.now(),e=A-gN;if(e>KwA)cN-=e,gN=A}function $tt(){var A,e=lN,t,r=1/0;while(e)if(e._call){if(r>e._time)r=e._time;A=e,e=e._next}else t=e._next,e._next=null,e=A?A._next=t:lN=t;xb=A,pX(r)}function pX(A){if(DD)return;if(Fb)Fb=clearTimeout(Fb);var e=A-zp;if(e>24){if(A<1/0)Fb=setTimeout(HwA,A-Sb.now()-cN);if(kb)kb=clearInterval(kb)}else{if(!kb)gN=Sb.now(),kb=setInterval(Xtt,KwA);DD=1,JwA(HwA)}}var DD=0,Fb=0,kb=0,KwA=1000,lN,xb,gN=0,zp=0,cN=0,Sb,JwA;var fX=_(()=>{Sb=typeof performance==="object"&&performance.now?performance:Date,JwA=typeof window==="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(A){setTimeout(A,17)};Lb.prototype=CN.prototype={constructor:Lb,restart:function(A,e,t){if(typeof A!=="function")throw TypeError("callback is not a function");if(t=(t==null?Rb():+t)+(e==null?0:+e),!this._next&&xb!==this){if(xb)xb._next=this;else lN=this;xb=this}this._call=A,this._time=t,pX()},stop:function(){if(this._call)this._call=null,this._time=1/0,pX()}}});function Nb(A,e,t){var r=new Lb;return e=e==null?0:+e,r.restart((i)=>{r.stop(),A(i+e)},e,t),r}var PwA=_(()=>{fX()});var BN=_(()=>{fX();PwA()});function tI(A,e,t,r,i,u){var a=A.__transition;if(!a)A.__transition={};else if(t in a)return;trt(A,t,{name:e,index:r,group:i,on:Art,tween:ert,time:u.time,delay:u.delay,duration:u.duration,ease:u.ease,timer:null,state:qwA})}function Ub(A,e){var t=ro(A,e);if(t.state>qwA)throw Error("too late; already scheduled");return t}function e0(A,e){var t=ro(A,e);if(t.state>EN)throw Error("too late; already running");return t}function ro(A,e){var t=A.__transition;if(!t||!(t=t[e]))throw Error("transition not found");return t}function trt(A,e,t){var r=A.__transition,i;r[e]=t,t.timer=CN(u,0,t.time);function u(s){if(t.state=_wA,t.timer.restart(a,t.delay,t.time),t.delay<=s)a(s-t.delay)}function a(s){var l,g,C,B;if(t.state!==_wA)return o();for(l in r){if(B=r[l],B.name!==t.name)continue;if(B.state===EN)return Nb(a);if(B.state===WwA)B.state=Gb,B.timer.stop(),B.on.call("interrupt",A,A.__data__,B.index,B.group),delete r[l];else if(+l<e)B.state=Gb,B.timer.stop(),B.on.call("cancel",A,A.__data__,B.index,B.group),delete r[l]}if(Nb(function(){if(t.state===EN)t.state=WwA,t.timer.restart(n,t.delay,t.time),n(s)}),t.state=dN,t.on.call("start",A,A.__data__,t.index,t.group),t.state!==dN)return;t.state=EN,i=Array(C=t.tween.length);for(l=0,g=-1;l<C;++l)if(B=t.tween[l].value.call(A,A.__data__,t.index,t.group))i[++g]=B;i.length=g+1}function n(s){var l=s<t.duration?t.ease.call(null,s/t.duration):(t.timer.restart(o),t.state=IN,1),g=-1,C=i.length;while(++g<C)i[g].call(A,l);if(t.state===IN)t.on.call("end",A,A.__data__,t.index,t.group),o()}function o(){t.state=Gb,t.timer.stop(),delete r[e];for(var s in r)return;delete A.__transition}}var Art,ert,qwA=0,_wA=1,dN=2,EN=3,WwA=4,IN=5,Gb=6;var el=_(()=>{oj();BN();Art=nj("start","end","cancel","interrupt"),ert=[]});function Mb(A,e){var t=A.__transition,r,i,u=!0,a;if(!t)return;e=e==null?null:e+"";for(a in t){if((r=t[a]).name!==e){u=!1;continue}i=r.state>dN&&r.state<IN,r.state=Gb,r.timer.stop(),r.on.call(i?"interrupt":"cancel",A,A.__data__,r.index,r.group),delete t[a]}if(u)delete A.__transition}var zwA=_(()=>{el()});function mX(A){return this.each(function(){Mb(this,A)})}var ZwA=_(()=>{zwA()});function rrt(A,e){var t,r;return function(){var i=e0(this,A),u=i.tween;if(u!==t){r=t=u;for(var a=0,n=r.length;a<n;++a)if(r[a].name===e){r=r.slice(),r.splice(a,1);break}}i.tween=r}}function irt(A,e,t){var r,i;if(typeof t!=="function")throw Error();return function(){var u=e0(this,A),a=u.tween;if(a!==r){i=(r=a).slice();for(var n={name:e,value:t},o=0,s=i.length;o<s;++o)if(i[o].name===e){i[o]=n;break}if(o===s)i.push(n)}u.tween=i}}function DX(A,e){var t=this._id;if(A+="",arguments.length<2){var r=ro(this.node(),t).tween;for(var i=0,u=r.length,a;i<u;++i)if((a=r[i]).name===A)return a.value;return null}return this.each((e==null?rrt:irt)(t,A,e))}function yD(A,e,t){var r=A._id;return A.each(function(){var i=e0(this,r);(i.value||(i.value={}))[e]=t.apply(this,arguments)}),function(i){return ro(i,r).value[e]}}var Tb=_(()=>{el()});function Yb(A,e){var t;return(typeof e==="number"?xo:e instanceof AC?qp:(t=AC(e))?(e=t,qp):fD)(A,e)}var yX=_(()=>{QD();mD()});function urt(A){return function(){this.removeAttribute(A)}}function art(A){return function(){this.removeAttributeNS(A.space,A.local)}}function nrt(A,e,t){var r,i=t+"",u;return function(){var a=this.getAttribute(A);return a===i?null:a===r?u:u=e(r=a,t)}}function ort(A,e,t){var r,i=t+"",u;return function(){var a=this.getAttributeNS(A.space,A.local);return a===i?null:a===r?u:u=e(r=a,t)}}function srt(A,e,t){var r,i,u;return function(){var a,n=t(this),o;if(n==null)return void this.removeAttribute(A);return a=this.getAttribute(A),o=n+"",a===o?null:a===r&&o===i?u:(i=o,u=e(r=a,n))}}function lrt(A,e,t){var r,i,u;return function(){var a,n=t(this),o;if(n==null)return void this.removeAttributeNS(A.space,A.local);return a=this.getAttributeNS(A.space,A.local),o=n+"",a===o?null:a===r&&o===i?u:(i=o,u=e(r=a,n))}}function wX(A,e){var t=_B(A),r=t==="transform"?hX:Yb;return this.attrTween(A,typeof e==="function"?(t.local?lrt:srt)(t,r,yD(this,"attr."+A,e)):e==null?(t.local?art:urt)(t):(t.local?ort:nrt)(t,r,e))}var VwA=_(()=>{mD();Xc();Tb();yX()});function grt(A,e){return function(t){this.setAttribute(A,e.call(this,t))}}function crt(A,e){return function(t){this.setAttributeNS(A.space,A.local,e.call(this,t))}}function Crt(A,e){var t,r;function i(){var u=e.apply(this,arguments);if(u!==r)t=(r=u)&&crt(A,u);return t}return i._value=e,i}function Brt(A,e){var t,r;function i(){var u=e.apply(this,arguments);if(u!==r)t=(r=u)&&grt(A,u);return t}return i._value=e,i}function bX(A,e){var t="attr."+A;if(arguments.length<2)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=="function")throw Error();var r=_B(A);return this.tween(t,(r.local?Crt:Brt)(r,e))}var jwA=_(()=>{Xc()});function Ert(A,e){return function(){Ub(this,A).delay=+e.apply(this,arguments)}}function drt(A,e){return e=+e,function(){Ub(this,A).delay=e}}function vX(A){var e=this._id;return arguments.length?this.each((typeof A==="function"?Ert:drt)(e,A)):ro(this.node(),e).delay}var XwA=_(()=>{el()});function Irt(A,e){return function(){e0(this,A).duration=+e.apply(this,arguments)}}function hrt(A,e){return e=+e,function(){e0(this,A).duration=e}}function kX(A){var e=this._id;return arguments.length?this.each((typeof A==="function"?Irt:hrt)(e,A)):ro(this.node(),e).duration}var $wA=_(()=>{el()});function Qrt(A,e){if(typeof e!=="function")throw Error();return function(){e0(this,A).ease=e}}function FX(A){var e=this._id;return arguments.length?this.each(Qrt(e,A)):ro(this.node(),e).ease}var A6A=_(()=>{el()});function prt(A,e){return function(){var t=e.apply(this,arguments);if(typeof t!=="function")throw Error();e0(this,A).ease=t}}function xX(A){if(typeof A!=="function")throw Error();return this.each(prt(this._id,A))}var e6A=_(()=>{el()});function SX(A){if(typeof A!=="function")A=BD(A);for(var e=this._groups,t=e.length,r=Array(t),i=0;i<t;++i)for(var u=e[i],a=u.length,n=r[i]=[],o,s=0;s<a;++s)if((o=u[s])&&A.call(o,o.__data__,s,u))n.push(o);return new ls(r,this._parents,this._name,this._id)}var t6A=_(()=>{Xc();Zp()});function LX(A){if(A._id!==this._id)throw Error();for(var e=this._groups,t=A._groups,r=e.length,i=t.length,u=Math.min(r,i),a=Array(r),n=0;n<u;++n)for(var o=e[n],s=t[n],l=o.length,g=a[n]=Array(l),C,B=0;B<l;++B)if(C=o[B]||s[B])g[B]=C;for(;n<r;++n)a[n]=e[n];return new ls(a,this._parents,this._name,this._id)}var r6A=_(()=>{Zp()});function frt(A){return(A+"").trim().split(/^|\s+/).every(function(e){var t=e.indexOf(".");if(t>=0)e=e.slice(0,t);return!e||e==="start"})}function mrt(A,e,t){var r,i,u=frt(e)?Ub:e0;return function(){var a=u(this,A),n=a.on;if(n!==r)(i=(r=n).copy()).on(e,t);a.on=i}}function RX(A,e){var t=this._id;return arguments.length<2?ro(this.node(),t).on.on(A):this.each(mrt(t,A,e))}var i6A=_(()=>{el()});function Drt(A){return function(){var e=this.parentNode;for(var t in this.__transition)if(+t!==A)return;if(e)e.removeChild(this)}}function NX(){return this.on("end.remove",Drt(this._id))}function GX(A){var e=this._name,t=this._id;if(typeof A!=="function")A=nQ(A);for(var r=this._groups,i=r.length,u=Array(i),a=0;a<i;++a)for(var n=r[a],o=n.length,s=u[a]=Array(o),l,g,C=0;C<o;++C)if((l=n[C])&&(g=A.call(l,l.__data__,C,n))){if("__data__"in l)g.__data__=l.__data__;s[C]=g,tI(s[C],e,t,C,s,ro(l,t))}return new ls(u,this._parents,e,t)}var u6A=_(()=>{Xc();Zp();el()});function UX(A){var e=this._name,t=this._id;if(typeof A!=="function")A=CD(A);for(var r=this._groups,i=r.length,u=[],a=[],n=0;n<i;++n)for(var o=r[n],s=o.length,l,g=0;g<s;++g)if(l=o[g]){for(var C=A.call(l,l.__data__,g,o),B,E=ro(l,t),d=0,I=C.length;d<I;++d)if(B=C[d])tI(B,e,t,d,C,E);u.push(C),a.push(l)}return new ls(u,a,e,t)}var a6A=_(()=>{Xc();Zp();el()});function MX(){return new yrt(this._groups,this._parents)}var yrt;var n6A=_(()=>{Xc();yrt=$d.prototype.constructor});function wrt(A,e){var t,r,i;return function(){var u=oQ(this,A),a=(this.style.removeProperty(A),oQ(this,A));return u===a?null:u===t&&a===r?i:i=e(t=u,r=a)}}function o6A(A){return function(){this.style.removeProperty(A)}}function brt(A,e,t){var r,i=t+"",u;return function(){var a=oQ(this,A);return a===i?null:a===r?u:u=e(r=a,t)}}function vrt(A,e,t){var r,i,u;return function(){var a=oQ(this,A),n=t(this),o=n+"";if(n==null)o=n=(this.style.removeProperty(A),oQ(this,A));return a===o?null:a===r&&o===i?u:(i=o,u=e(r=a,n))}}function krt(A,e){var t,r,i,u="style."+e,a="end."+u,n;return function(){var o=e0(this,A),s=o.on,l=o.value[u]==null?n||(n=o6A(e)):void 0;if(s!==t||i!==l)(r=(t=s).copy()).on(a,i=l);o.on=r}}function TX(A,e,t){var r=(A+="")==="transform"?IX:Yb;return e==null?this.styleTween(A,wrt(A,r)).on("end.style."+A,o6A(A)):typeof e==="function"?this.styleTween(A,vrt(A,r,yD(this,"style."+A,e))).each(krt(this._id,A)):this.styleTween(A,brt(A,r,e),t).on("end.style."+A,null)}var s6A=_(()=>{mD();Xc();el();Tb();yX()});function Frt(A,e,t){return function(r){this.style.setProperty(A,e.call(this,r),t)}}function xrt(A,e,t){var r,i;function u(){var a=e.apply(this,arguments);if(a!==i)r=(i=a)&&Frt(A,a,t);return r}return u._value=e,u}function YX(A,e,t){var r="style."+(A+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(e==null)return this.tween(r,null);if(typeof e!=="function")throw Error();return this.tween(r,xrt(A,e,t==null?"":t))}function Srt(A){return function(){this.textContent=A}}function Lrt(A){return function(){var e=A(this);this.textContent=e==null?"":e}}function HX(A){return this.tween("text",typeof A==="function"?Lrt(yD(this,"text",A)):Srt(A==null?"":A+""))}var l6A=_(()=>{Tb()});function Rrt(A){return function(e){this.textContent=A.call(this,e)}}function Nrt(A){var e,t;function r(){var i=A.apply(this,arguments);if(i!==t)e=(t=i)&&Rrt(i);return e}return r._value=A,r}function KX(A){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(A==null)return this.tween(e,null);if(typeof A!=="function")throw Error();return this.tween(e,Nrt(A))}function JX(){var A=this._name,e=this._id,t=hN();for(var r=this._groups,i=r.length,u=0;u<i;++u)for(var a=r[u],n=a.length,o,s=0;s<n;++s)if(o=a[s]){var l=ro(o,e);tI(o,A,t,s,a,{time:l.time+l.delay+l.duration,delay:0,duration:l.duration,ease:l.ease})}return new ls(r,this._parents,A,t)}var g6A=_(()=>{Zp();el()});function OX(){var A,e,t=this,r=t._id,i=t.size();return new Promise(function(u,a){var n={value:a},o={value:function(){if(--i===0)u()}};if(t.each(function(){var s=e0(this,r),l=s.on;if(l!==A)e=(A=l).copy(),e._.cancel.push(n),e._.interrupt.push(n),e._.end.push(o);s.on=e}),i===0)u()})}var c6A=_(()=>{el()});function ls(A,e,t,r){this._groups=A,this._parents=e,this._name=t,this._id=r}function C6A(A){return $d().transition(A)}function hN(){return++Grt}var Grt=0,rI;var Zp=_(()=>{Xc();VwA();jwA();XwA();$wA();A6A();e6A();t6A();r6A();i6A();u6A();a6A();n6A();s6A();l6A();g6A();Tb();c6A();rI=$d.prototype;ls.prototype=C6A.prototype={constructor:ls,select:GX,selectAll:UX,selectChild:rI.selectChild,selectChildren:rI.selectChildren,filter:SX,merge:LX,selection:MX,transition:JX,call:rI.call,nodes:rI.nodes,node:rI.node,size:rI.size,empty:rI.empty,each:rI.each,on:RX,attr:wX,attrTween:bX,style:TX,styleTween:YX,text:HX,textTween:KX,remove:NX,tween:DX,delay:vX,duration:kX,ease:FX,easeVarying:xX,end:OX,[Symbol.iterator]:rI[Symbol.iterator]}});function QN(A){return((A*=2)<=1?A*A*A:(A-=2)*A*A+2)/2}var PX=()=>{};function Mrt(A,e){var t;while(!(t=A.__transition)||!(t=t[e]))if(!(A=A.parentNode))throw Error(`transition ${e} not found`);return t}function _X(A){var e,t;if(A instanceof ls)e=A._id,A=A._name;else e=hN(),(t=Urt).time=Rb(),A=A==null?null:A+"";for(var r=this._groups,i=r.length,u=0;u<i;++u)for(var a=r[u],n=a.length,o,s=0;s<n;++s)if(o=a[s])tI(o,A,e,s,a,t||Mrt(o,e));return new ls(r,this._parents,A,e)}var Urt;var B6A=_(()=>{Zp();el();PX();BN();Urt={time:null,delay:0,duration:250,ease:QN}});var E6A=_(()=>{Xc();ZwA();B6A();$d.prototype.interrupt=mX;$d.prototype.transition=_X});var pN=_(()=>{E6A()});function d6A(A){return[+A[0],+A[1]]}function Trt(A){return[d6A(A[0]),d6A(A[1])]}function WX(A){return{type:A}}var nyr,oyr,syr,lyr,gyr,cyr;var I6A=_(()=>{pN();({abs:nyr,max:oyr,min:syr}=Math);lyr={name:"x",handles:["w","e"].map(WX),input:function(A,e){return A==null?null:[[+A[0],e[0][1]],[+A[1],e[1][1]]]},output:function(A){return A&&[A[0][0],A[1][0]]}},gyr={name:"y",handles:["n","s"].map(WX),input:function(A,e){return A==null?null:[[e[0][0],+A[0]],[e[1][0],+A[1]]]},output:function(A){return A&&[A[0][1],A[1][1]]}},cyr={name:"xy",handles:["n","w","e","s","nw","ne","sw","se"].map(WX),input:function(A){return A==null?null:Trt(A)},output:function(A){return A}}});var h6A=_(()=>{I6A()});function Q6A(A){this._+=A[0];for(let e=1,t=A.length;e<t;++e)this._+=arguments[e]+A[e]}function Hrt(A){let e=Math.floor(A);if(!(e>=0))throw Error(`invalid digits: ${A}`);if(e>15)return Q6A;let t=10**e;return function(r){this._+=r[0];for(let i=1,u=r.length;i<u;++i)this._+=Math.round(arguments[i]*t)/t+r[i]}}class wD{constructor(A){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=A==null?Q6A:Hrt(A)}moveTo(A,e){this._append`M${this._x0=this._x1=+A},${this._y0=this._y1=+e}`}closePath(){if(this._x1!==null)this._x1=this._x0,this._y1=this._y0,this._append`Z`}lineTo(A,e){this._append`L${this._x1=+A},${this._y1=+e}`}quadraticCurveTo(A,e,t,r){this._append`Q${+A},${+e},${this._x1=+t},${this._y1=+r}`}bezierCurveTo(A,e,t,r,i,u){this._append`C${+A},${+e},${+t},${+r},${this._x1=+i},${this._y1=+u}`}arcTo(A,e,t,r,i){if(A=+A,e=+e,t=+t,r=+r,i=+i,i<0)throw Error(`negative radius: ${i}`);let u=this._x1,a=this._y1,n=t-A,o=r-e,s=u-A,l=a-e,g=s*s+l*l;if(this._x1===null)this._append`M${this._x1=A},${this._y1=e}`;else if(!(g>0.000001));else if(!(Math.abs(l*n-o*s)>0.000001)||!i)this._append`L${this._x1=A},${this._y1=e}`;else{let C=t-u,B=r-a,E=n*n+o*o,d=C*C+B*B,I=Math.sqrt(E),h=Math.sqrt(g),Q=i*Math.tan((qX-Math.acos((E+g-d)/(2*I*h)))/2),p=Q/h,m=Q/I;if(Math.abs(p-1)>0.000001)this._append`L${A+p*s},${e+p*l}`;this._append`A${i},${i},0,0,${+(l*C>s*B)},${this._x1=A+m*n},${this._y1=e+m*o}`}}arc(A,e,t,r,i,u){if(A=+A,e=+e,t=+t,u=!!u,t<0)throw Error(`negative radius: ${t}`);let a=t*Math.cos(r),n=t*Math.sin(r),o=A+a,s=e+n,l=1^u,g=u?r-i:i-r;if(this._x1===null)this._append`M${o},${s}`;else if(Math.abs(this._x1-o)>0.000001||Math.abs(this._y1-s)>0.000001)this._append`L${o},${s}`;if(!t)return;if(g<0)g=g%zX+zX;if(g>Yrt)this._append`A${t},${t},0,1,${l},${A-a},${e-n}A${t},${t},0,1,${l},${this._x1=o},${this._y1=s}`;else if(g>0.000001)this._append`A${t},${t},0,${+(g>=qX)},${l},${this._x1=A+t*Math.cos(i)},${this._y1=e+t*Math.sin(i)}`}rect(A,e,t,r){this._append`M${this._x0=this._x1=+A},${this._y0=this._y1=+e}h${t=+t}v${+r}h${-t}Z`}toString(){return this._}}function p6A(){return new wD}var qX,zX,Yrt;var f6A=_(()=>{qX=Math.PI,zX=2*qX,Yrt=zX-0.000001;p6A.prototype=wD.prototype});var ZX=_(()=>{f6A()});var m6A=()=>{};var D6A=()=>{};var y6A=()=>{};var w6A=()=>{};var b6A=()=>{};var v6A=()=>{};var k6A=()=>{};function VX(A){return Math.abs(A=Math.round(A))>=1000000000000000000000?A.toLocaleString("en").replace(/,/g,""):A.toString(10)}function Vp(A,e){if(!isFinite(A)||A===0)return null;var t=(A=e?A.toExponential(e-1):A.toExponential()).indexOf("e"),r=A.slice(0,t);return[r.length>1?r[0]+r.slice(2):r,+A.slice(t+1)]}function eC(A){return A=Vp(Math.abs(A)),A?A[1]:NaN}var Hb=()=>{};function jX(A,e){return function(t,r){var i=t.length,u=[],a=0,n=A[0],o=0;while(i>0&&n>0){if(o+n+1>r)n=Math.max(1,r-o);if(u.push(t.substring(i-=n,i+n)),(o+=n+1)>r)break;n=A[a=(a+1)%A.length]}return u.reverse().join(e)}}function XX(A){return function(e){return e.replace(/[0-9]/g,function(t){return A[+t]})}}function cQ(A){if(!(e=Krt.exec(A)))throw Error("invalid format: "+A);var e;return new fN({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function fN(A){this.fill=A.fill===void 0?" ":A.fill+"",this.align=A.align===void 0?">":A.align+"",this.sign=A.sign===void 0?"-":A.sign+"",this.symbol=A.symbol===void 0?"":A.symbol+"",this.zero=!!A.zero,this.width=A.width===void 0?void 0:+A.width,this.comma=!!A.comma,this.precision=A.precision===void 0?void 0:+A.precision,this.trim=!!A.trim,this.type=A.type===void 0?"":A.type+""}var Krt;var $X=_(()=>{Krt=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;cQ.prototype=fN.prototype;fN.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type}});function A$(A){A:for(var e=A.length,t=1,r=-1,i;t<e;++t)switch(A[t]){case".":r=i=t;break;case"0":if(r===0)r=t;i=t;break;default:if(!+A[t])break A;if(r>0)r=0;break}return r>0?A.slice(0,r)+A.slice(i+1):A}function e$(A,e){var t=Vp(A,e);if(!t)return Kb=void 0,A.toPrecision(e);var r=t[0],i=t[1],u=i-(Kb=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,a=r.length;return u===a?r:u>a?r+Array(u-a+1).join("0"):u>0?r.slice(0,u)+"."+r.slice(u):"0."+Array(1-u).join("0")+Vp(A,Math.max(0,e+u-1))[0]}var Kb;var t$=()=>{};function mN(A,e){var t=Vp(A,e);if(!t)return A+"";var r=t[0],i=t[1];return i<0?"0."+Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+Array(i-r.length+2).join("0")}var F6A=()=>{};var r$;var x6A=_(()=>{t$();F6A();r$={"%":(A,e)=>(A*100).toFixed(e),b:(A)=>Math.round(A).toString(2),c:(A)=>A+"",d:VX,e:(A,e)=>A.toExponential(e),f:(A,e)=>A.toFixed(e),g:(A,e)=>A.toPrecision(e),o:(A)=>Math.round(A).toString(8),p:(A,e)=>mN(A*100,e),r:mN,s:e$,X:(A)=>Math.round(A).toString(16).toUpperCase(),x:(A)=>Math.round(A).toString(16)}});function DN(A){return A}function i$(A){var e=A.grouping===void 0||A.thousands===void 0?DN:jX(S6A.call(A.grouping,Number),A.thousands+""),t=A.currency===void 0?"":A.currency[0]+"",r=A.currency===void 0?"":A.currency[1]+"",i=A.decimal===void 0?".":A.decimal+"",u=A.numerals===void 0?DN:XX(S6A.call(A.numerals,String)),a=A.percent===void 0?"%":A.percent+"",n=A.minus===void 0?"−":A.minus+"",o=A.nan===void 0?"NaN":A.nan+"";function s(g,C){g=cQ(g);var B=g.fill,E=g.align,d=g.sign,I=g.symbol,h=g.zero,Q=g.width,p=g.comma,m=g.precision,f=g.trim,D=g.type;if(D==="n")p=!0,D="g";else if(!r$[D])m===void 0&&(m=12),f=!0,D="g";if(h||B==="0"&&E==="=")h=!0,B="0",E="=";var w=(C&&C.prefix!==void 0?C.prefix:"")+(I==="$"?t:I==="#"&&/[boxX]/.test(D)?"0"+D.toLowerCase():""),b=(I==="$"?r:/[%p]/.test(D)?a:"")+(C&&C.suffix!==void 0?C.suffix:""),k=r$[D],v=/[defgprs%]/.test(D);m=m===void 0?6:/[gprs]/.test(D)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m));function S(x){var F=w,T=b,R,L,M;if(D==="c")T=k(x)+T,x="";else{x=+x;var U=x<0||1/x<0;if(x=isNaN(x)?o:k(Math.abs(x),m),f)x=A$(x);if(U&&+x===0&&d!=="+")U=!1;if(F=(U?d==="("?d:n:d==="-"||d==="("?"":d)+F,T=(D==="s"&&!isNaN(x)&&Kb!==void 0?L6A[8+Kb/3]:"")+T+(U&&d==="("?")":""),v){R=-1,L=x.length;while(++R<L)if(M=x.charCodeAt(R),48>M||M>57){T=(M===46?i+x.slice(R+1):x.slice(R))+T,x=x.slice(0,R);break}}}if(p&&!h)x=e(x,1/0);var Y=F.length+x.length+T.length,H=Y<Q?Array(Q-Y+1).join(B):"";if(p&&h)x=e(H+x,H.length?Q-T.length:1/0),H="";switch(E){case"<":x=F+x+T+H;break;case"=":x=F+H+x+T;break;case"^":x=H.slice(0,Y=H.length>>1)+F+x+T+H.slice(Y);break;default:x=H+F+x+T;break}return u(x)}return S.toString=function(){return g+""},S}function l(g,C){var B=Math.max(-8,Math.min(8,Math.floor(eC(C)/3)))*3,E=Math.pow(10,-B),d=s((g=cQ(g),g.type="f",g),{suffix:L6A[8+B/3]});return function(I){return d(E*I)}}return{format:s,formatPrefix:l}}var S6A,L6A;var R6A=_(()=>{Hb();$X();x6A();t$();S6A=Array.prototype.map,L6A=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"]});function u$(A){return yN=i$(A),zB=yN.format,wN=yN.formatPrefix,yN}var yN,zB,wN;var N6A=_(()=>{R6A();u$({thousands:",",grouping:[3],currency:["$",""]})});function bN(A){return Math.max(0,-eC(Math.abs(A)))}var G6A=_(()=>{Hb()});function vN(A,e){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(eC(e)/3)))*3-eC(Math.abs(A)))}var U6A=_(()=>{Hb()});function kN(A,e){return A=Math.abs(A),e=Math.abs(e)-A,Math.max(0,eC(e)-eC(A))+1}var M6A=_(()=>{Hb()});var a$=_(()=>{N6A();$X();G6A();U6A();M6A()});var T6A=()=>{};function Jrt(A){var e=0,t=A.children,r=t&&t.length;if(!r)e=1;else while(--r>=0)e+=t[r].value;A.value=e}function n$(){return this.eachAfter(Jrt)}function o$(A,e){let t=-1;for(let r of this)A.call(e,r,++t,this);return this}function s$(A,e){var t=this,r=[t],i,u,a=-1;while(t=r.pop())if(A.call(e,t,++a,this),i=t.children)for(u=i.length-1;u>=0;--u)r.push(i[u]);return this}function l$(A,e){var t=this,r=[t],i=[],u,a,n,o=-1;while(t=r.pop())if(i.push(t),u=t.children)for(a=0,n=u.length;a<n;++a)r.push(u[a]);while(t=i.pop())A.call(e,t,++o,this);return this}function g$(A,e){let t=-1;for(let r of this)if(A.call(e,r,++t,this))return r}function c$(A){return this.eachAfter(function(e){var t=+A(e.data)||0,r=e.children,i=r&&r.length;while(--i>=0)t+=r[i].value;e.value=t})}function C$(A){return this.eachBefore(function(e){if(e.children)e.children.sort(A)})}function B$(A){var e=this,t=Ort(e,A),r=[e];while(e!==t)e=e.parent,r.push(e);var i=r.length;while(A!==t)r.splice(i,0,A),A=A.parent;return r}function Ort(A,e){if(A===e)return A;var t=A.ancestors(),r=e.ancestors(),i=null;A=t.pop(),e=r.pop();while(A===e)i=A,A=t.pop(),e=r.pop();return i}function E$(){var A=this,e=[A];while(A=A.parent)e.push(A);return e}function d$(){return Array.from(this)}function I$(){var A=[];return this.eachBefore(function(e){if(!e.children)A.push(e)}),A}function h$(){var A=this,e=[];return A.each(function(t){if(t!==A)e.push({source:t.parent,target:t})}),e}function*Q$(){var A=this,e,t=[A],r,i,u;do{e=t.reverse(),t=[];while(A=e.pop())if(yield A,r=A.children)for(i=0,u=r.length;i<u;++i)t.push(r[i])}while(t.length)}function bD(A,e){if(A instanceof Map){if(A=[void 0,A],e===void 0)e=Wrt}else if(e===void 0)e=_rt;var t=new Jb(A),r,i=[t],u,a,n,o;while(r=i.pop())if((a=e(r.data))&&(o=(a=Array.from(a)).length)){r.children=a;for(n=o-1;n>=0;--n)i.push(u=a[n]=new Jb(a[n])),u.parent=r,u.depth=r.depth+1}return t.eachBefore(zrt)}function Prt(){return bD(this).eachBefore(qrt)}function _rt(A){return A.children}function Wrt(A){return Array.isArray(A)?A[1]:null}function qrt(A){if(A.data.value!==void 0)A.value=A.data.value;A.data=A.data.data}function zrt(A){var e=0;do A.height=e;while((A=A.parent)&&A.height<++e)}function Jb(A){this.data=A,this.depth=this.height=0,this.parent=null}var Y6A=_(()=>{Jb.prototype=bD.prototype={constructor:Jb,count:n$,each:o$,eachAfter:l$,eachBefore:s$,find:g$,sum:c$,sort:C$,path:B$,ancestors:E$,descendants:d$,leaves:I$,links:h$,copy:Prt,[Symbol.iterator]:Q$}});function H6A(A){if(typeof A!=="function")throw Error();return A}function vD(){return 0}function jp(A){return function(){return A}}function p$(A){A.x0=Math.round(A.x0),A.y0=Math.round(A.y0),A.x1=Math.round(A.x1),A.y1=Math.round(A.y1)}function f$(A,e,t,r,i){var u=A.children,a,n=-1,o=u.length,s=A.value&&(r-e)/A.value;while(++n<o)a=u[n],a.y0=t,a.y1=i,a.x0=e,a.x1=e+=a.value*s}function m$(A,e,t,r,i){var u=A.children,a,n=-1,o=u.length,s=A.value&&(i-t)/A.value;while(++n<o)a=u[n],a.x0=e,a.x1=r,a.y0=t,a.y1=t+=a.value*s}function Vrt(A,e,t,r,i,u){var a=[],n=e.children,o,s,l=0,g=0,C=n.length,B,E,d=e.value,I,h,Q,p,m,f,D;while(l<C){B=i-t,E=u-r;do I=n[g++].value;while(!I&&g<C);h=Q=I,f=Math.max(E/B,B/E)/(d*A),D=I*I*f,m=Math.max(Q/D,D/h);for(;g<C;++g){if(I+=s=n[g].value,s<h)h=s;if(s>Q)Q=s;if(D=I*I*f,p=Math.max(Q/D,D/h),p>m){I-=s;break}m=p}if(a.push(o={value:I,dice:B<E,children:n.slice(l,g)}),o.dice)f$(o,t,r,i,d?r+=E*I/d:u);else m$(o,t,r,d?t+=B*I/d:i,u);d-=I,l=g}return a}var Zrt,K6A;var J6A=_(()=>{Zrt=(1+Math.sqrt(5))/2;K6A=function A(e){function t(r,i,u,a,n){Vrt(e,r,i,u,a,n)}return t.ratio=function(r){return A((r=+r)>1?r:1)},t}(Zrt)});function FN(){var A=K6A,e=!1,t=1,r=1,i=[0],u=vD,a=vD,n=vD,o=vD,s=vD;function l(C){if(C.x0=C.y0=0,C.x1=t,C.y1=r,C.eachBefore(g),i=[0],e)C.eachBefore(p$);return C}function g(C){var B=i[C.depth],E=C.x0+B,d=C.y0+B,I=C.x1-B,h=C.y1-B;if(I<E)E=I=(E+I)/2;if(h<d)d=h=(d+h)/2;if(C.x0=E,C.y0=d,C.x1=I,C.y1=h,C.children){if(B=i[C.depth+1]=u(C)/2,E+=s(C)-B,d+=a(C)-B,I-=n(C)-B,h-=o(C)-B,I<E)E=I=(E+I)/2;if(h<d)d=h=(d+h)/2;A(C,E,d,I,h)}}return l.round=function(C){return arguments.length?(e=!!C,l):e},l.size=function(C){return arguments.length?(t=+C[0],r=+C[1],l):[t,r]},l.tile=function(C){return arguments.length?(A=H6A(C),l):A},l.padding=function(C){return arguments.length?l.paddingInner(C).paddingOuter(C):l.paddingInner()},l.paddingInner=function(C){return arguments.length?(u=typeof C==="function"?C:jp(+C),l):u},l.paddingOuter=function(C){return arguments.length?l.paddingTop(C).paddingRight(C).paddingBottom(C).paddingLeft(C):l.paddingTop()},l.paddingTop=function(C){return arguments.length?(a=typeof C==="function"?C:jp(+C),l):a},l.paddingRight=function(C){return arguments.length?(n=typeof C==="function"?C:jp(+C),l):n},l.paddingBottom=function(C){return arguments.length?(o=typeof C==="function"?C:jp(+C),l):o},l.paddingLeft=function(C){return arguments.length?(s=typeof C==="function"?C:jp(+C),l):s},l}var O6A=_(()=>{J6A()});var P6A=_(()=>{Y6A();O6A()});var _6A=()=>{};var W6A=()=>{};function CQ(A,e){switch(arguments.length){case 0:break;case 1:this.range(A);break;default:this.range(e).domain(A);break}return this}function jl(){var A=new Qb,e=[],t=[],r=D$;function i(u){let a=A.get(u);if(a===void 0){if(r!==D$)return r;A.set(u,a=e.push(u)-1)}return t[a%t.length]}return i.domain=function(u){if(!arguments.length)return e.slice();e=[],A=new Qb;for(let a of u){if(A.has(a))continue;A.set(a,e.push(a)-1)}return i},i.range=function(u){return arguments.length?(t=Array.from(u),i):t.slice()},i.unknown=function(u){return arguments.length?(r=u,i):r},i.copy=function(){return jl(e,t).unknown(r)},CQ.apply(i,arguments),i}var D$;var y$=_(()=>{aQ();D$=Symbol("implicit")});function kD(){var A=jl().unknown(void 0),{domain:e,range:t}=A,r=0,i=1,u,a,n=!1,o=0,s=0,l=0.5;delete A.unknown;function g(){var C=e().length,B=i<r,E=B?i:r,d=B?r:i;if(u=(d-E)/Math.max(1,C-o+s*2),n)u=Math.floor(u);if(E+=(d-E-u*(C-o))*l,a=u*(1-o),n)E=Math.round(E),a=Math.round(a);var I=qR(C).map(function(h){return E+u*h});return t(B?I.reverse():I)}return A.domain=function(C){return arguments.length?(e(C),g()):e()},A.range=function(C){return arguments.length?([r,i]=C,r=+r,i=+i,g()):[r,i]},A.rangeRound=function(C){return[r,i]=C,r=+r,i=+i,n=!0,g()},A.bandwidth=function(){return a},A.step=function(){return u},A.round=function(C){return arguments.length?(n=!!C,g()):n},A.padding=function(C){return arguments.length?(o=Math.min(1,s=+C),g()):o},A.paddingInner=function(C){return arguments.length?(o=Math.min(1,C),g()):o},A.paddingOuter=function(C){return arguments.length?(s=+C,g()):s},A.align=function(C){return arguments.length?(l=Math.max(0,Math.min(1,C)),g()):l},A.copy=function(){return kD(e(),[r,i]).round(n).paddingInner(o).paddingOuter(s).align(l)},CQ.apply(g(),arguments)}var q6A=_(()=>{aQ();y$()});function w$(A){return function(){return A}}function b$(A){return+A}function FD(A){return A}function v$(A,e){return(e-=A=+A)?function(t){return(t-A)/e}:w$(isNaN(e)?NaN:0.5)}function jrt(A,e){var t;if(A>e)t=A,A=e,e=t;return function(r){return Math.max(A,Math.min(e,r))}}function Xrt(A,e,t){var r=A[0],i=A[1],u=e[0],a=e[1];if(i<r)r=v$(i,r),u=t(a,u);else r=v$(r,i),u=t(u,a);return function(n){return u(r(n))}}function $rt(A,e,t){var r=Math.min(A.length,e.length)-1,i=Array(r),u=Array(r),a=-1;if(A[r]<A[0])A=A.slice().reverse(),e=e.slice().reverse();while(++a<r)i[a]=v$(A[a],A[a+1]),u[a]=t(e[a],e[a+1]);return function(n){var o=ej(A,n,1,r)-1;return u[o](i[o](n))}}function xN(A,e){return e.domain(A.domain()).range(A.range()).interpolate(A.interpolate()).clamp(A.clamp()).unknown(A.unknown())}function Ait(){var A=z6A,e=z6A,t=gQ,r,i,u,a=FD,n,o,s;function l(){var C=Math.min(A.length,e.length);if(a!==FD)a=jrt(A[0],A[C-1]);return n=C>2?$rt:Xrt,o=s=null,g}function g(C){return C==null||isNaN(C=+C)?u:(o||(o=n(A.map(r),e,t)))(r(a(C)))}return g.invert=function(C){return a(i((s||(s=n(e,A.map(r),xo)))(C)))},g.domain=function(C){return arguments.length?(A=Array.from(C,b$),l()):A.slice()},g.range=function(C){return arguments.length?(e=Array.from(C),l()):e.slice()},g.rangeRound=function(C){return e=Array.from(C),t=aN,l()},g.clamp=function(C){return arguments.length?(a=C?!0:FD,l()):a!==FD},g.interpolate=function(C){return arguments.length?(t=C,l()):t},g.unknown=function(C){return arguments.length?(u=C,g):u},function(C,B){return r=C,i=B,l()}}function Ob(){return Ait()(FD,FD)}var z6A;var k$=_(()=>{aQ();mD();z6A=[0,1]});function F$(A,e,t,r){var i=cD(A,e,t),u;switch(r=cQ(r==null?",f":r),r.type){case"s":{var a=Math.max(Math.abs(A),Math.abs(e));if(r.precision==null&&!isNaN(u=vN(i,a)))r.precision=u;return wN(r,a)}case"":case"e":case"g":case"p":case"r":{if(r.precision==null&&!isNaN(u=kN(i,Math.max(Math.abs(A),Math.abs(e)))))r.precision=u-(r.type==="e");break}case"f":case"%":{if(r.precision==null&&!isNaN(u=bN(i)))r.precision=u-(r.type==="%")*2;break}}return zB(r)}var Z6A=_(()=>{aQ();a$()});function eit(A){var e=A.domain;return A.ticks=function(t){var r=e();return PR(r[0],r[r.length-1],t==null?10:t)},A.tickFormat=function(t,r){var i=e();return F$(i[0],i[i.length-1],t==null?10:t,r)},A.nice=function(t){if(t==null)t=10;var r=e(),i=0,u=r.length-1,a=r[i],n=r[u],o,s,l=10;if(n<a)s=a,a=n,n=s,s=i,i=u,u=s;while(l-- >0){if(s=pb(a,n,t),s===o)return r[i]=a,r[u]=n,e(r);else if(s>0)a=Math.floor(a/s)*s,n=Math.ceil(n/s)*s;else if(s<0)a=Math.ceil(a*s)/s,n=Math.floor(n*s)/s;else break;o=s}return A},A}function tC(){var A=Ob();return A.copy=function(){return xN(A,tC())},CQ.apply(A,arguments),eit(A)}var V6A=_(()=>{aQ();k$();Z6A()});function x$(A,e){A=A.slice();var t=0,r=A.length-1,i=A[t],u=A[r],a;if(u<i)a=t,t=r,r=a,a=i,i=u,u=a;return A[t]=e.floor(i),A[r]=e.ceil(u),A}function Uu(A,e,t,r){function i(u){return A(u=arguments.length===0?new Date:new Date(+u)),u}if(i.floor=(u)=>(A(u=new Date(+u)),u),i.ceil=(u)=>(A(u=new Date(u-1)),e(u,1),A(u),u),i.round=(u)=>{let a=i(u),n=i.ceil(u);return u-a<n-u?a:n},i.offset=(u,a)=>(e(u=new Date(+u),a==null?1:Math.floor(a)),u),i.range=(u,a,n)=>{let o=[];if(u=i.ceil(u),n=n==null?1:Math.floor(n),!(u<a)||!(n>0))return o;let s;do o.push(s=new Date(+u)),e(u,n),A(u);while(s<u&&u<a);return o},i.filter=(u)=>Uu((a)=>{if(a>=a)while(A(a),!u(a))a.setTime(a-1)},(a,n)=>{if(a>=a)if(n<0)while(++n<=0)while(e(a,-1),!u(a));else while(--n>=0)while(e(a,1),!u(a));}),t)i.count=(u,a)=>(S$.setTime(+u),L$.setTime(+a),A(S$),A(L$),Math.floor(t(S$,L$))),i.every=(u)=>(u=Math.floor(u),!isFinite(u)||!(u>0)?null:!(u>1)?i:i.filter(r?(a)=>r(a)%u===0:(a)=>i.count(0,a)%u===0));return i}var S$,L$;var iI=_(()=>{S$=new Date,L$=new Date});var ZB,j6A;var R$=_(()=>{iI();ZB=Uu(()=>{},(A,e)=>{A.setTime(+A+e)},(A,e)=>e-A);ZB.every=(A)=>{if(A=Math.floor(A),!isFinite(A)||!(A>0))return null;if(!(A>1))return ZB;return Uu((e)=>{e.setTime(Math.floor(e/A)*A)},(e,t)=>{e.setTime(+e+t*A)},(e,t)=>(t-e)/A)};j6A=ZB.range});var Pg=1000,R0=60000,VB=3600000,BQ=86400000,Pb=604800000,N$=2592000000,SN=31536000000;var Xl,X6A;var G$=_(()=>{iI();Xl=Uu((A)=>{A.setTime(A-A.getMilliseconds())},(A,e)=>{A.setTime(+A+e*Pg)},(A,e)=>(e-A)/Pg,(A)=>A.getUTCSeconds()),X6A=Xl.range});var uI,tit,LN,rit;var U$=_(()=>{iI();uI=Uu((A)=>{A.setTime(A-A.getMilliseconds()-A.getSeconds()*Pg)},(A,e)=>{A.setTime(+A+e*R0)},(A,e)=>(e-A)/R0,(A)=>A.getMinutes()),tit=uI.range,LN=Uu((A)=>{A.setUTCSeconds(0,0)},(A,e)=>{A.setTime(+A+e*R0)},(A,e)=>(e-A)/R0,(A)=>A.getUTCMinutes()),rit=LN.range});var aI,iit,RN,uit;var M$=_(()=>{iI();aI=Uu((A)=>{A.setTime(A-A.getMilliseconds()-A.getSeconds()*Pg-A.getMinutes()*R0)},(A,e)=>{A.setTime(+A+e*VB)},(A,e)=>(e-A)/VB,(A)=>A.getHours()),iit=aI.range,RN=Uu((A)=>{A.setUTCMinutes(0,0,0)},(A,e)=>{A.setTime(+A+e*VB)},(A,e)=>(e-A)/VB,(A)=>A.getUTCHours()),uit=RN.range});var _g,ait,_b,nit,NN,oit;var T$=_(()=>{iI();_g=Uu((A)=>A.setHours(0,0,0,0),(A,e)=>A.setDate(A.getDate()+e),(A,e)=>(e-A-(e.getTimezoneOffset()-A.getTimezoneOffset())*R0)/BQ,(A)=>A.getDate()-1),ait=_g.range,_b=Uu((A)=>{A.setUTCHours(0,0,0,0)},(A,e)=>{A.setUTCDate(A.getUTCDate()+e)},(A,e)=>(e-A)/BQ,(A)=>A.getUTCDate()-1),nit=_b.range,NN=Uu((A)=>{A.setUTCHours(0,0,0,0)},(A,e)=>{A.setUTCDate(A.getUTCDate()+e)},(A,e)=>(e-A)/BQ,(A)=>Math.floor(A/BQ)),oit=NN.range});function Xp(A){return Uu((e)=>{e.setDate(e.getDate()-(e.getDay()+7-A)%7),e.setHours(0,0,0,0)},(e,t)=>{e.setDate(e.getDate()+t*7)},(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*R0)/Pb)}function $p(A){return Uu((e)=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-A)%7),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t*7)},(e,t)=>(t-e)/Pb)}var rC,EQ,GN,UN,jB,MN,TN,$6A,sit,lit,git,cit,Cit,Bit,Af,xD,A9A,e9A,dQ,t9A,r9A,i9A,Eit,dit,Iit,hit,Qit,pit;var Y$=_(()=>{iI();rC=Xp(0),EQ=Xp(1),GN=Xp(2),UN=Xp(3),jB=Xp(4),MN=Xp(5),TN=Xp(6),$6A=rC.range,sit=EQ.range,lit=GN.range,git=UN.range,cit=jB.range,Cit=MN.range,Bit=TN.range;Af=$p(0),xD=$p(1),A9A=$p(2),e9A=$p(3),dQ=$p(4),t9A=$p(5),r9A=$p(6),i9A=Af.range,Eit=xD.range,dit=A9A.range,Iit=e9A.range,hit=dQ.range,Qit=t9A.range,pit=r9A.range});var nI,fit,YN,mit;var H$=_(()=>{iI();nI=Uu((A)=>{A.setDate(1),A.setHours(0,0,0,0)},(A,e)=>{A.setMonth(A.getMonth()+e)},(A,e)=>e.getMonth()-A.getMonth()+(e.getFullYear()-A.getFullYear())*12,(A)=>A.getMonth()),fit=nI.range,YN=Uu((A)=>{A.setUTCDate(1),A.setUTCHours(0,0,0,0)},(A,e)=>{A.setUTCMonth(A.getUTCMonth()+e)},(A,e)=>e.getUTCMonth()-A.getUTCMonth()+(e.getUTCFullYear()-A.getUTCFullYear())*12,(A)=>A.getUTCMonth()),mit=YN.range});var $l,Dit,iC,yit;var K$=_(()=>{iI();$l=Uu((A)=>{A.setMonth(0,1),A.setHours(0,0,0,0)},(A,e)=>{A.setFullYear(A.getFullYear()+e)},(A,e)=>e.getFullYear()-A.getFullYear(),(A)=>A.getFullYear());$l.every=(A)=>!isFinite(A=Math.floor(A))||!(A>0)?null:Uu((e)=>{e.setFullYear(Math.floor(e.getFullYear()/A)*A),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t*A)});Dit=$l.range,iC=Uu((A)=>{A.setUTCMonth(0,1),A.setUTCHours(0,0,0,0)},(A,e)=>{A.setUTCFullYear(A.getUTCFullYear()+e)},(A,e)=>e.getUTCFullYear()-A.getUTCFullYear(),(A)=>A.getUTCFullYear());iC.every=(A)=>!isFinite(A=Math.floor(A))||!(A>0)?null:Uu((e)=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/A)*A),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t*A)});yit=iC.range});function u9A(A,e,t,r,i,u){let a=[[Xl,1,Pg],[Xl,5,5*Pg],[Xl,15,15*Pg],[Xl,30,30*Pg],[u,1,R0],[u,5,5*R0],[u,15,15*R0],[u,30,30*R0],[i,1,VB],[i,3,3*VB],[i,6,6*VB],[i,12,12*VB],[r,1,BQ],[r,2,2*BQ],[t,1,Pb],[e,1,N$],[e,3,3*N$],[A,1,SN]];function n(s,l,g){let C=l<s;if(C)[s,l]=[l,s];let B=g&&typeof g.range==="function"?g:o(s,l,g),E=B?B.range(s,+l+1):[];return C?E.reverse():E}function o(s,l,g){let C=Math.abs(l-s)/g,B=Pp(([,,I])=>I).right(a,C);if(B===a.length)return A.every(cD(s/SN,l/SN,g));if(B===0)return ZB.every(Math.max(cD(s,l,g),1));let[E,d]=a[C/a[B-1][2]<a[B][2]/C?B-1:B];return E.every(d)}return[n,o]}var wit,bit,J$,O$;var a9A=_(()=>{aQ();R$();G$();U$();M$();T$();Y$();H$();K$();[wit,bit]=u9A(iC,YN,Af,NN,RN,LN),[J$,O$]=u9A($l,nI,rC,_g,aI,uI)});var HN=_(()=>{R$();G$();U$();M$();T$();Y$();H$();K$();a9A()});function P$(A){if(0<=A.y&&A.y<100){var e=new Date(-1,A.m,A.d,A.H,A.M,A.S,A.L);return e.setFullYear(A.y),e}return new Date(A.y,A.m,A.d,A.H,A.M,A.S,A.L)}function _$(A){if(0<=A.y&&A.y<100){var e=new Date(Date.UTC(-1,A.m,A.d,A.H,A.M,A.S,A.L));return e.setUTCFullYear(A.y),e}return new Date(Date.UTC(A.y,A.m,A.d,A.H,A.M,A.S,A.L))}function Wb(A,e,t){return{y:A,m:e,d:t,H:0,M:0,S:0,L:0}}function W$(A){var{dateTime:e,date:t,time:r,periods:i,days:u,shortDays:a,months:n,shortMonths:o}=A,s=qb(i),l=zb(i),g=qb(u),C=zb(u),B=qb(a),E=zb(a),d=qb(n),I=zb(n),h=qb(o),Q=zb(o),p={a:M,A:U,b:Y,B:H,c:null,d:c9A,e:c9A,f:Zit,g:uut,G:nut,H:Wit,I:qit,j:zit,L:I9A,m:Vit,M:jit,p:J,q:K,Q:E9A,s:d9A,S:Xit,u:$it,U:Aut,V:eut,w:tut,W:rut,x:null,X:null,y:iut,Y:aut,Z:out,"%":B9A},m={a:O,A:P,b:z,B:AA,c:null,d:C9A,e:C9A,f:cut,g:mut,G:yut,H:sut,I:lut,j:gut,L:Q9A,m:Cut,M:But,p:W,q:CA,Q:E9A,s:d9A,S:Eut,u:dut,U:Iut,V:hut,w:Qut,W:put,x:null,X:null,y:fut,Y:Dut,Z:wut,"%":B9A},f={a:v,A:S,b:x,B:F,c:T,d:l9A,e:l9A,f:Jit,g:s9A,G:o9A,H:g9A,I:g9A,j:Tit,L:Kit,m:Mit,M:Yit,p:k,q:Uit,Q:Pit,s:_it,S:Hit,u:Sit,U:Lit,V:Rit,w:xit,W:Nit,x:R,X:L,y:s9A,Y:o9A,Z:Git,"%":Oit};p.x=D(t,p),p.X=D(r,p),p.c=D(e,p),m.x=D(t,m),m.X=D(r,m),m.c=D(e,m);function D(tA,lA){return function(gA){var aA=[],NA=-1,DA=0,KA=tA.length,TA,qA,IA;if(!(gA instanceof Date))gA=new Date(+gA);while(++NA<KA)if(tA.charCodeAt(NA)===37){if(aA.push(tA.slice(DA,NA)),(qA=n9A[TA=tA.charAt(++NA)])!=null)TA=tA.charAt(++NA);else qA=TA==="e"?" ":"0";if(IA=lA[TA])TA=IA(gA,qA);aA.push(TA),DA=NA+1}return aA.push(tA.slice(DA,NA)),aA.join("")}}function w(tA,lA){return function(gA){var aA=Wb(1900,void 0,1),NA=b(aA,tA,gA+="",0),DA,KA;if(NA!=gA.length)return null;if("Q"in aA)return new Date(aA.Q);if("s"in aA)return new Date(aA.s*1000+("L"in aA?aA.L:0));if(lA&&!("Z"in aA))aA.Z=0;if("p"in aA)aA.H=aA.H%12+aA.p*12;if(aA.m===void 0)aA.m="q"in aA?aA.q:0;if("V"in aA){if(aA.V<1||aA.V>53)return null;if(!("w"in aA))aA.w=1;if("Z"in aA)DA=_$(Wb(aA.y,0,1)),KA=DA.getUTCDay(),DA=KA>4||KA===0?xD.ceil(DA):xD(DA),DA=_b.offset(DA,(aA.V-1)*7),aA.y=DA.getUTCFullYear(),aA.m=DA.getUTCMonth(),aA.d=DA.getUTCDate()+(aA.w+6)%7;else DA=P$(Wb(aA.y,0,1)),KA=DA.getDay(),DA=KA>4||KA===0?EQ.ceil(DA):EQ(DA),DA=_g.offset(DA,(aA.V-1)*7),aA.y=DA.getFullYear(),aA.m=DA.getMonth(),aA.d=DA.getDate()+(aA.w+6)%7}else if("W"in aA||"U"in aA){if(!("w"in aA))aA.w="u"in aA?aA.u%7:("W"in aA)?1:0;KA="Z"in aA?_$(Wb(aA.y,0,1)).getUTCDay():P$(Wb(aA.y,0,1)).getDay(),aA.m=0,aA.d="W"in aA?(aA.w+6)%7+aA.W*7-(KA+5)%7:aA.w+aA.U*7-(KA+6)%7}if("Z"in aA)return aA.H+=aA.Z/100|0,aA.M+=aA.Z%100,_$(aA);return P$(aA)}}function b(tA,lA,gA,aA){var NA=0,DA=lA.length,KA=gA.length,TA,qA;while(NA<DA){if(aA>=KA)return-1;if(TA=lA.charCodeAt(NA++),TA===37){if(TA=lA.charAt(NA++),qA=f[TA in n9A?lA.charAt(NA++):TA],!qA||(aA=qA(tA,gA,aA))<0)return-1}else if(TA!=gA.charCodeAt(aA++))return-1}return aA}function k(tA,lA,gA){var aA=s.exec(lA.slice(gA));return aA?(tA.p=l.get(aA[0].toLowerCase()),gA+aA[0].length):-1}function v(tA,lA,gA){var aA=B.exec(lA.slice(gA));return aA?(tA.w=E.get(aA[0].toLowerCase()),gA+aA[0].length):-1}function S(tA,lA,gA){var aA=g.exec(lA.slice(gA));return aA?(tA.w=C.get(aA[0].toLowerCase()),gA+aA[0].length):-1}function x(tA,lA,gA){var aA=h.exec(lA.slice(gA));return aA?(tA.m=Q.get(aA[0].toLowerCase()),gA+aA[0].length):-1}function F(tA,lA,gA){var aA=d.exec(lA.slice(gA));return aA?(tA.m=I.get(aA[0].toLowerCase()),gA+aA[0].length):-1}function T(tA,lA,gA){return b(tA,e,lA,gA)}function R(tA,lA,gA){return b(tA,t,lA,gA)}function L(tA,lA,gA){return b(tA,r,lA,gA)}function M(tA){return a[tA.getDay()]}function U(tA){return u[tA.getDay()]}function Y(tA){return o[tA.getMonth()]}function H(tA){return n[tA.getMonth()]}function J(tA){return i[+(tA.getHours()>=12)]}function K(tA){return 1+~~(tA.getMonth()/3)}function O(tA){return a[tA.getUTCDay()]}function P(tA){return u[tA.getUTCDay()]}function z(tA){return o[tA.getUTCMonth()]}function AA(tA){return n[tA.getUTCMonth()]}function W(tA){return i[+(tA.getUTCHours()>=12)]}function CA(tA){return 1+~~(tA.getUTCMonth()/3)}return{format:function(tA){var lA=D(tA+="",p);return lA.toString=function(){return tA},lA},parse:function(tA){var lA=w(tA+="",!1);return lA.toString=function(){return tA},lA},utcFormat:function(tA){var lA=D(tA+="",m);return lA.toString=function(){return tA},lA},utcParse:function(tA){var lA=w(tA+="",!0);return lA.toString=function(){return tA},lA}}}function qi(A,e,t){var r=A<0?"-":"",i=(r?-A:A)+"",u=i.length;return r+(u<t?Array(t-u+1).join(e)+i:i)}function Fit(A){return A.replace(kit,"\\$&")}function qb(A){return new RegExp("^(?:"+A.map(Fit).join("|")+")","i")}function zb(A){return new Map(A.map((e,t)=>[e.toLowerCase(),t]))}function xit(A,e,t){var r=So.exec(e.slice(t,t+1));return r?(A.w=+r[0],t+r[0].length):-1}function Sit(A,e,t){var r=So.exec(e.slice(t,t+1));return r?(A.u=+r[0],t+r[0].length):-1}function Lit(A,e,t){var r=So.exec(e.slice(t,t+2));return r?(A.U=+r[0],t+r[0].length):-1}function Rit(A,e,t){var r=So.exec(e.slice(t,t+2));return r?(A.V=+r[0],t+r[0].length):-1}function Nit(A,e,t){var r=So.exec(e.slice(t,t+2));return r?(A.W=+r[0],t+r[0].length):-1}function o9A(A,e,t){var r=So.exec(e.slice(t,t+4));return r?(A.y=+r[0],t+r[0].length):-1}function s9A(A,e,t){var r=So.exec(e.slice(t,t+2));return r?(A.y=+r[0]+(+r[0]>68?1900:2000),t+r[0].length):-1}function Git(A,e,t){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(t,t+6));return r?(A.Z=r[1]?0:-(r[2]+(r[3]||"00")),t+r[0].length):-1}function Uit(A,e,t){var r=So.exec(e.slice(t,t+1));return r?(A.q=r[0]*3-3,t+r[0].length):-1}function Mit(A,e,t){var r=So.exec(e.slice(t,t+2));return r?(A.m=r[0]-1,t+r[0].length):-1}function l9A(A,e,t){var r=So.exec(e.slice(t,t+2));return r?(A.d=+r[0],t+r[0].length):-1}function Tit(A,e,t){var r=So.exec(e.slice(t,t+3));return r?(A.m=0,A.d=+r[0],t+r[0].length):-1}function g9A(A,e,t){var r=So.exec(e.slice(t,t+2));return r?(A.H=+r[0],t+r[0].length):-1}function Yit(A,e,t){var r=So.exec(e.slice(t,t+2));return r?(A.M=+r[0],t+r[0].length):-1}function Hit(A,e,t){var r=So.exec(e.slice(t,t+2));return r?(A.S=+r[0],t+r[0].length):-1}function Kit(A,e,t){var r=So.exec(e.slice(t,t+3));return r?(A.L=+r[0],t+r[0].length):-1}function Jit(A,e,t){var r=So.exec(e.slice(t,t+6));return r?(A.L=Math.floor(r[0]/1000),t+r[0].length):-1}function Oit(A,e,t){var r=vit.exec(e.slice(t,t+1));return r?t+r[0].length:-1}function Pit(A,e,t){var r=So.exec(e.slice(t));return r?(A.Q=+r[0],t+r[0].length):-1}function _it(A,e,t){var r=So.exec(e.slice(t));return r?(A.s=+r[0],t+r[0].length):-1}function c9A(A,e){return qi(A.getDate(),e,2)}function Wit(A,e){return qi(A.getHours(),e,2)}function qit(A,e){return qi(A.getHours()%12||12,e,2)}function zit(A,e){return qi(1+_g.count($l(A),A),e,3)}function I9A(A,e){return qi(A.getMilliseconds(),e,3)}function Zit(A,e){return I9A(A,e)+"000"}function Vit(A,e){return qi(A.getMonth()+1,e,2)}function jit(A,e){return qi(A.getMinutes(),e,2)}function Xit(A,e){return qi(A.getSeconds(),e,2)}function $it(A){var e=A.getDay();return e===0?7:e}function Aut(A,e){return qi(rC.count($l(A)-1,A),e,2)}function h9A(A){var e=A.getDay();return e>=4||e===0?jB(A):jB.ceil(A)}function eut(A,e){return A=h9A(A),qi(jB.count($l(A),A)+($l(A).getDay()===4),e,2)}function tut(A){return A.getDay()}function rut(A,e){return qi(EQ.count($l(A)-1,A),e,2)}function iut(A,e){return qi(A.getFullYear()%100,e,2)}function uut(A,e){return A=h9A(A),qi(A.getFullYear()%100,e,2)}function aut(A,e){return qi(A.getFullYear()%1e4,e,4)}function nut(A,e){var t=A.getDay();return A=t>=4||t===0?jB(A):jB.ceil(A),qi(A.getFullYear()%1e4,e,4)}function out(A){var e=A.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+qi(e/60|0,"0",2)+qi(e%60,"0",2)}function C9A(A,e){return qi(A.getUTCDate(),e,2)}function sut(A,e){return qi(A.getUTCHours(),e,2)}function lut(A,e){return qi(A.getUTCHours()%12||12,e,2)}function gut(A,e){return qi(1+_b.count(iC(A),A),e,3)}function Q9A(A,e){return qi(A.getUTCMilliseconds(),e,3)}function cut(A,e){return Q9A(A,e)+"000"}function Cut(A,e){return qi(A.getUTCMonth()+1,e,2)}function But(A,e){return qi(A.getUTCMinutes(),e,2)}function Eut(A,e){return qi(A.getUTCSeconds(),e,2)}function dut(A){var e=A.getUTCDay();return e===0?7:e}function Iut(A,e){return qi(Af.count(iC(A)-1,A),e,2)}function p9A(A){var e=A.getUTCDay();return e>=4||e===0?dQ(A):dQ.ceil(A)}function hut(A,e){return A=p9A(A),qi(dQ.count(iC(A),A)+(iC(A).getUTCDay()===4),e,2)}function Qut(A){return A.getUTCDay()}function put(A,e){return qi(xD.count(iC(A)-1,A),e,2)}function fut(A,e){return qi(A.getUTCFullYear()%100,e,2)}function mut(A,e){return A=p9A(A),qi(A.getUTCFullYear()%100,e,2)}function Dut(A,e){return qi(A.getUTCFullYear()%1e4,e,4)}function yut(A,e){var t=A.getUTCDay();return A=t>=4||t===0?dQ(A):dQ.ceil(A),qi(A.getUTCFullYear()%1e4,e,4)}function wut(){return"+0000"}function B9A(){return"%"}function E9A(A){return+A}function d9A(A){return Math.floor(+A/1000)}var n9A,So,vit,kit;var f9A=_(()=>{HN();n9A={"-":"",_:" ","0":"0"},So=/^\s*\d+/,vit=/^%/,kit=/[\\^$*+?|[\]().{}]/g});function q$(A){return SD=W$(A),ef=SD.format,m9A=SD.parse,D9A=SD.utcFormat,y9A=SD.utcParse,SD}var SD,ef,m9A,D9A,y9A;var w9A=_(()=>{f9A();q$({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]})});var z$=_(()=>{w9A()});function but(A){return new Date(A)}function vut(A){return A instanceof Date?+A:+new Date(+A)}function b9A(A,e,t,r,i,u,a,n,o,s){var l=Ob(),{invert:g,domain:C}=l,B=s(".%L"),E=s(":%S"),d=s("%I:%M"),I=s("%I %p"),h=s("%a %d"),Q=s("%b %d"),p=s("%B"),m=s("%Y");function f(D){return(o(D)<D?B:n(D)<D?E:a(D)<D?d:u(D)<D?I:r(D)<D?i(D)<D?h:Q:t(D)<D?p:m)(D)}return l.invert=function(D){return new Date(g(D))},l.domain=function(D){return arguments.length?C(Array.from(D,vut)):C().map(but)},l.ticks=function(D){var w=C();return A(w[0],w[w.length-1],D==null?10:D)},l.tickFormat=function(D,w){return w==null?f:s(w)},l.nice=function(D){var w=C();if(!D||typeof D.range!=="function")D=e(w[0],w[w.length-1],D==null?10:D);return D?C(x$(w,D)):l},l.copy=function(){return xN(l,b9A(A,e,t,r,i,u,a,n,o,s))},l}function KN(){return CQ.apply(b9A(J$,O$,$l,nI,rC,_g,aI,uI,Xl,ef).domain([new Date(2000,0,1),new Date(2000,0,2)]),arguments)}var v9A=_(()=>{HN();z$();k$()});var k9A=_(()=>{q6A();V6A();y$();v9A()});function Z$(A){var e=A.length/6|0,t=Array(e),r=0;while(r<e)t[r]="#"+A.slice(r*6,++r*6);return t}var V$;var F9A=_(()=>{V$=Z$("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab")});var x9A=_(()=>{F9A()});function $u(A){return function(){return A}}function L9A(A){return A>1?0:A<-1?LD:Math.acos(A)}function X$(A){return A>=1?Zb:A<=-1?-Zb:Math.asin(A)}var j$,t0,IQ,S9A,JN,uC,tf,Lo=0.000000000001,LD,Zb,RD;var ON=_(()=>{j$=Math.abs,t0=Math.atan2,IQ=Math.cos,S9A=Math.max,JN=Math.min,uC=Math.sin,tf=Math.sqrt,LD=Math.PI,Zb=LD/2,RD=2*LD});function PN(A){let e=3;return A.digits=function(t){if(!arguments.length)return e;if(t==null)e=null;else{let r=Math.floor(t);if(!(r>=0))throw RangeError(`invalid digits: ${t}`);e=r}return A},()=>new wD(e)}var $$=_(()=>{ZX()});function kut(A){return A.innerRadius}function Fut(A){return A.outerRadius}function xut(A){return A.startAngle}function Sut(A){return A.endAngle}function Lut(A){return A&&A.padAngle}function Rut(A,e,t,r,i,u,a,n){var o=t-A,s=r-e,l=a-i,g=n-u,C=g*o-l*s;if(C*C<Lo)return;return C=(l*(e-u)-g*(A-i))/C,[A+C*o,e+C*s]}function _N(A,e,t,r,i,u,a){var n=A-t,o=e-r,s=(a?u:-u)/tf(n*n+o*o),l=s*o,g=-s*n,C=A+l,B=e+g,E=t+l,d=r+g,I=(C+E)/2,h=(B+d)/2,Q=E-C,p=d-B,m=Q*Q+p*p,f=i-u,D=C*d-E*B,w=(p<0?-1:1)*tf(S9A(0,f*f*m-D*D)),b=(D*p-Q*w)/m,k=(-D*Q-p*w)/m,v=(D*p+Q*w)/m,S=(-D*Q+p*w)/m,x=b-I,F=k-h,T=v-I,R=S-h;if(x*x+F*F>T*T+R*R)b=v,k=S;return{cx:b,cy:k,x01:-l,y01:-g,x11:b*(i/f-1),y11:k*(i/f-1)}}function aC(){var A=kut,e=Fut,t=$u(0),r=null,i=xut,u=Sut,a=Lut,n=null,o=PN(s);function s(){var l,g,C=+A.apply(this,arguments),B=+e.apply(this,arguments),E=i.apply(this,arguments)-Zb,d=u.apply(this,arguments)-Zb,I=j$(d-E),h=d>E;if(!n)n=l=o();if(B<C)g=B,B=C,C=g;if(!(B>Lo))n.moveTo(0,0);else if(I>RD-Lo){if(n.moveTo(B*IQ(E),B*uC(E)),n.arc(0,0,B,E,d,!h),C>Lo)n.moveTo(C*IQ(d),C*uC(d)),n.arc(0,0,C,d,E,h)}else{var Q=E,p=d,m=E,f=d,D=I,w=I,b=a.apply(this,arguments)/2,k=b>Lo&&(r?+r.apply(this,arguments):tf(C*C+B*B)),v=JN(j$(B-C)/2,+t.apply(this,arguments)),S=v,x=v,F,T;if(k>Lo){var R=X$(k/C*uC(b)),L=X$(k/B*uC(b));if((D-=R*2)>Lo)R*=h?1:-1,m+=R,f-=R;else D=0,m=f=(E+d)/2;if((w-=L*2)>Lo)L*=h?1:-1,Q+=L,p-=L;else w=0,Q=p=(E+d)/2}var M=B*IQ(Q),U=B*uC(Q),Y=C*IQ(f),H=C*uC(f);if(v>Lo){var J=B*IQ(p),K=B*uC(p),O=C*IQ(m),P=C*uC(m),z;if(I<LD)if(z=Rut(M,U,O,P,J,K,Y,H)){var AA=M-z[0],W=U-z[1],CA=J-z[0],tA=K-z[1],lA=1/uC(L9A((AA*CA+W*tA)/(tf(AA*AA+W*W)*tf(CA*CA+tA*tA)))/2),gA=tf(z[0]*z[0]+z[1]*z[1]);S=JN(v,(C-gA)/(lA-1)),x=JN(v,(B-gA)/(lA+1))}else S=x=0}if(!(w>Lo))n.moveTo(M,U);else if(x>Lo)if(F=_N(O,P,M,U,B,x,h),T=_N(J,K,Y,H,B,x,h),n.moveTo(F.cx+F.x01,F.cy+F.y01),x<v)n.arc(F.cx,F.cy,x,t0(F.y01,F.x01),t0(T.y01,T.x01),!h);else n.arc(F.cx,F.cy,x,t0(F.y01,F.x01),t0(F.y11,F.x11),!h),n.arc(0,0,B,t0(F.cy+F.y11,F.cx+F.x11),t0(T.cy+T.y11,T.cx+T.x11),!h),n.arc(T.cx,T.cy,x,t0(T.y11,T.x11),t0(T.y01,T.x01),!h);else n.moveTo(M,U),n.arc(0,0,B,Q,p,!h);if(!(C>Lo)||!(D>Lo))n.lineTo(Y,H);else if(S>Lo)if(F=_N(Y,H,J,K,C,-S,h),T=_N(M,U,O,P,C,-S,h),n.lineTo(F.cx+F.x01,F.cy+F.y01),S<v)n.arc(F.cx,F.cy,S,t0(F.y01,F.x01),t0(T.y01,T.x01),!h);else n.arc(F.cx,F.cy,S,t0(F.y01,F.x01),t0(F.y11,F.x11),!h),n.arc(0,0,C,t0(F.cy+F.y11,F.cx+F.x11),t0(T.cy+T.y11,T.cx+T.x11),h),n.arc(T.cx,T.cy,S,t0(T.y11,T.x11),t0(T.y01,T.x01),!h);else n.arc(0,0,C,f,m,h)}if(n.closePath(),l)return n=null,l+""||null}return s.centroid=function(){var l=(+A.apply(this,arguments)+ +e.apply(this,arguments))/2,g=(+i.apply(this,arguments)+ +u.apply(this,arguments))/2-LD/2;return[IQ(g)*l,uC(g)*l]},s.innerRadius=function(l){return arguments.length?(A=typeof l==="function"?l:$u(+l),s):A},s.outerRadius=function(l){return arguments.length?(e=typeof l==="function"?l:$u(+l),s):e},s.cornerRadius=function(l){return arguments.length?(t=typeof l==="function"?l:$u(+l),s):t},s.padRadius=function(l){return arguments.length?(r=l==null?null:typeof l==="function"?l:$u(+l),s):r},s.startAngle=function(l){return arguments.length?(i=typeof l==="function"?l:$u(+l),s):i},s.endAngle=function(l){return arguments.length?(u=typeof l==="function"?l:$u(+l),s):u},s.padAngle=function(l){return arguments.length?(a=typeof l==="function"?l:$u(+l),s):a},s.context=function(l){return arguments.length?(n=l==null?null:l,s):n},s}var R9A=_(()=>{ON();$$()});function Vb(A){return typeof A==="object"&&"length"in A?A:Array.from(A)}var $9r;var AAA=_(()=>{$9r=Array.prototype.slice});function N9A(A){this._context=A}function XB(A){return new N9A(A)}var eAA=_(()=>{N9A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;default:this._context.lineTo(A,e);break}}}});function G9A(A){return A[0]}function U9A(A){return A[1]}function nC(A,e){var t=$u(!0),r=null,i=XB,u=null,a=PN(n);A=typeof A==="function"?A:A===void 0?G9A:$u(A),e=typeof e==="function"?e:e===void 0?U9A:$u(e);function n(o){var s,l=(o=Vb(o)).length,g,C=!1,B;if(r==null)u=i(B=a());for(s=0;s<=l;++s){if(!(s<l&&t(g=o[s],s,o))===C)if(C=!C)u.lineStart();else u.lineEnd();if(C)u.point(+A(g,s,o),+e(g,s,o))}if(B)return u=null,B+""||null}return n.x=function(o){return arguments.length?(A=typeof o==="function"?o:$u(+o),n):A},n.y=function(o){return arguments.length?(e=typeof o==="function"?o:$u(+o),n):e},n.defined=function(o){return arguments.length?(t=typeof o==="function"?o:$u(!!o),n):t},n.curve=function(o){return arguments.length?(i=o,r!=null&&(u=i(r)),n):i},n.context=function(o){return arguments.length?(o==null?r=u=null:u=i(r=o),n):r},n}var M9A=_(()=>{AAA();eAA();$$()});function tAA(A,e){return e<A?-1:e>A?1:e>=A?0:NaN}function rAA(A){return A}function WN(){var A=rAA,e=tAA,t=null,r=$u(0),i=$u(RD),u=$u(0);function a(n){var o,s=(n=Vb(n)).length,l,g,C=0,B=Array(s),E=Array(s),d=+r.apply(this,arguments),I=Math.min(RD,Math.max(-RD,i.apply(this,arguments)-d)),h,Q=Math.min(Math.abs(I)/s,u.apply(this,arguments)),p=Q*(I<0?-1:1),m;for(o=0;o<s;++o)if((m=E[B[o]=o]=+A(n[o],o,n))>0)C+=m;if(e!=null)B.sort(function(f,D){return e(E[f],E[D])});else if(t!=null)B.sort(function(f,D){return t(n[f],n[D])});for(o=0,g=C?(I-s*p)/C:0;o<s;++o,d=h)l=B[o],m=E[l],h=d+(m>0?m*g:0)+p,E[l]={data:n[l],index:o,value:m,startAngle:d,endAngle:h,padAngle:Q};return E}return a.value=function(n){return arguments.length?(A=typeof n==="function"?n:$u(+n),a):A},a.sortValues=function(n){return arguments.length?(e=n,t=null,a):e},a.sort=function(n){return arguments.length?(t=n,e=null,a):t},a.startAngle=function(n){return arguments.length?(r=typeof n==="function"?n:$u(+n),a):r},a.endAngle=function(n){return arguments.length?(i=typeof n==="function"?n:$u(+n),a):i},a.padAngle=function(n){return arguments.length?(u=typeof n==="function"?n:$u(+n),a):u},a}var T9A=_(()=>{AAA();ON()});class iAA{constructor(A,e){this._context=A,this._x=e}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line}point(A,e){switch(A=+A,e=+e,this._point){case 0:{if(this._point=1,this._line)this._context.lineTo(A,e);else this._context.moveTo(A,e);break}case 1:this._point=2;default:{if(this._x)this._context.bezierCurveTo(this._x0=(this._x0+A)/2,this._y0,this._x0,e,A,e);else this._context.bezierCurveTo(this._x0,this._y0=(this._y0+e)/2,A,this._y0,A,e);break}}this._x0=A,this._y0=e}}function jb(A){return new iAA(A,!0)}function Xb(A){return new iAA(A,!1)}var Y9A=()=>{};function Ag(){}function ND(A,e,t){A._context.bezierCurveTo((2*A._x0+A._x1)/3,(2*A._y0+A._y1)/3,(A._x0+2*A._x1)/3,(A._y0+2*A._y1)/3,(A._x0+4*A._x1+e)/6,(A._y0+4*A._y1+t)/6)}function $b(A){this._context=A}function oC(A){return new $b(A)}var Av=_(()=>{$b.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:ND(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:ND(this,A,e);break}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e}}});function H9A(A){this._context=A}function qN(A){return new H9A(A)}var K9A=_(()=>{Av();H9A.prototype={areaStart:Ag,areaEnd:Ag,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._x2=A,this._y2=e;break;case 1:this._point=2,this._x3=A,this._y3=e;break;case 2:this._point=3,this._x4=A,this._y4=e,this._context.moveTo((this._x0+4*this._x1+A)/6,(this._y0+4*this._y1+e)/6);break;default:ND(this,A,e);break}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e}}});function J9A(A){this._context=A}function zN(A){return new J9A(A)}var O9A=_(()=>{Av();J9A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var t=(this._x0+4*this._x1+A)/6,r=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break;case 3:this._point=4;default:ND(this,A,e);break}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e}}});function P9A(A,e){this._basis=new $b(A),this._beta=e}var uAA;var _9A=_(()=>{Av();P9A.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var A=this._x,e=this._y,t=A.length-1;if(t>0){var r=A[0],i=e[0],u=A[t]-r,a=e[t]-i,n=-1,o;while(++n<=t)o=n/t,this._basis.point(this._beta*A[n]+(1-this._beta)*(r+o*u),this._beta*e[n]+(1-this._beta)*(i+o*a))}this._x=this._y=null,this._basis.lineEnd()},point:function(A,e){this._x.push(+A),this._y.push(+e)}};uAA=function A(e){function t(r){return e===1?new $b(r):new P9A(r,e)}return t.beta=function(r){return A(+r)},t}(0.85)});function GD(A,e,t){A._context.bezierCurveTo(A._x1+A._k*(A._x2-A._x0),A._y1+A._k*(A._y2-A._y0),A._x2+A._k*(A._x1-e),A._y2+A._k*(A._y1-t),A._x2,A._y2)}function ZN(A,e){this._context=A,this._k=(1-e)/6}var ev;var tv=_(()=>{ZN.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:GD(this,this._x1,this._y1);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2,this._x1=A,this._y1=e;break;case 2:this._point=3;default:GD(this,A,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};ev=function A(e){function t(r){return new ZN(r,e)}return t.tension=function(r){return A(+r)},t}(0)});function VN(A,e){this._context=A,this._k=(1-e)/6}var aAA;var nAA=_(()=>{tv();VN.prototype={areaStart:Ag,areaEnd:Ag,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._x3=A,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=A,this._y4=e);break;case 2:this._point=3,this._x5=A,this._y5=e;break;default:GD(this,A,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};aAA=function A(e){function t(r){return new VN(r,e)}return t.tension=function(r){return A(+r)},t}(0)});function jN(A,e){this._context=A,this._k=(1-e)/6}var oAA;var sAA=_(()=>{tv();jN.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:GD(this,A,e);break}this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};oAA=function A(e){function t(r){return new jN(r,e)}return t.tension=function(r){return A(+r)},t}(0)});function rv(A,e,t){var{_x1:r,_y1:i,_x2:u,_y2:a}=A;if(A._l01_a>Lo){var n=2*A._l01_2a+3*A._l01_a*A._l12_a+A._l12_2a,o=3*A._l01_a*(A._l01_a+A._l12_a);r=(r*n-A._x0*A._l12_2a+A._x2*A._l01_2a)/o,i=(i*n-A._y0*A._l12_2a+A._y2*A._l01_2a)/o}if(A._l23_a>Lo){var s=2*A._l23_2a+3*A._l23_a*A._l12_a+A._l12_2a,l=3*A._l23_a*(A._l23_a+A._l12_a);u=(u*s+A._x1*A._l23_2a-e*A._l12_2a)/l,a=(a*s+A._y1*A._l23_2a-t*A._l12_2a)/l}A._context.bezierCurveTo(r,i,u,a,A._x2,A._y2)}function W9A(A,e){this._context=A,this._alpha=e}var iv;var XN=_(()=>{ON();tv();W9A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(A,e){if(A=+A,e=+e,this._point){var t=this._x2-A,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(t*t+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;break;case 2:this._point=3;default:rv(this,A,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};iv=function A(e){function t(r){return e?new W9A(r,e):new ZN(r,0)}return t.alpha=function(r){return A(+r)},t}(0.5)});function q9A(A,e){this._context=A,this._alpha=e}var lAA;var z9A=_(()=>{nAA();XN();q9A.prototype={areaStart:Ag,areaEnd:Ag,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(A,e){if(A=+A,e=+e,this._point){var t=this._x2-A,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(t*t+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=A,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=A,this._y4=e);break;case 2:this._point=3,this._x5=A,this._y5=e;break;default:rv(this,A,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};lAA=function A(e){function t(r){return e?new q9A(r,e):new VN(r,0)}return t.alpha=function(r){return A(+r)},t}(0.5)});function Z9A(A,e){this._context=A,this._alpha=e}var gAA;var V9A=_(()=>{sAA();XN();Z9A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){if(this._line||this._line!==0&&this._point===3)this._context.closePath();this._line=1-this._line},point:function(A,e){if(A=+A,e=+e,this._point){var t=this._x2-A,r=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(t*t+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:rv(this,A,e);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=A,this._y0=this._y1,this._y1=this._y2,this._y2=e}};gAA=function A(e){function t(r){return e?new Z9A(r,e):new jN(r,0)}return t.alpha=function(r){return A(+r)},t}(0.5)});function j9A(A){this._context=A}function $N(A){return new j9A(A)}var X9A=_(()=>{j9A.prototype={areaStart:Ag,areaEnd:Ag,lineStart:function(){this._point=0},lineEnd:function(){if(this._point)this._context.closePath()},point:function(A,e){if(A=+A,e=+e,this._point)this._context.lineTo(A,e);else this._point=1,this._context.moveTo(A,e)}}});function $9A(A){return A<0?-1:1}function A5A(A,e,t){var r=A._x1-A._x0,i=e-A._x1,u=(A._y1-A._y0)/(r||i<0&&-0),a=(t-A._y1)/(i||r<0&&-0),n=(u*i+a*r)/(r+i);return($9A(u)+$9A(a))*Math.min(Math.abs(u),Math.abs(a),0.5*Math.abs(n))||0}function e5A(A,e){var t=A._x1-A._x0;return t?(3*(A._y1-A._y0)/t-e)/2:e}function cAA(A,e,t){var{_x0:r,_y0:i,_x1:u,_y1:a}=A,n=(u-r)/3;A._context.bezierCurveTo(r+n,i+n*e,u-n,a-n*t,u,a)}function AG(A){this._context=A}function t5A(A){this._context=new r5A(A)}function r5A(A){this._context=A}function uv(A){return new AG(A)}function av(A){return new t5A(A)}var i5A=_(()=>{AG.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:cAA(this,this._t0,e5A(this,this._t0));break}if(this._line||this._line!==0&&this._point===1)this._context.closePath();this._line=1-this._line},point:function(A,e){var t=NaN;if(A=+A,e=+e,A===this._x1&&e===this._y1)return;switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;break;case 2:this._point=3,cAA(this,e5A(this,t=A5A(this,A,e)),t);break;default:cAA(this,this._t0,t=A5A(this,A,e));break}this._x0=this._x1,this._x1=A,this._y0=this._y1,this._y1=e,this._t0=t}};(t5A.prototype=Object.create(AG.prototype)).point=function(A,e){AG.prototype.point.call(this,e,A)};r5A.prototype={moveTo:function(A,e){this._context.moveTo(e,A)},closePath:function(){this._context.closePath()},lineTo:function(A,e){this._context.lineTo(e,A)},bezierCurveTo:function(A,e,t,r,i,u){this._context.bezierCurveTo(e,A,r,t,u,i)}}});function a5A(A){this._context=A}function u5A(A){var e,t=A.length-1,r,i=Array(t),u=Array(t),a=Array(t);i[0]=0,u[0]=2,a[0]=A[0]+2*A[1];for(e=1;e<t-1;++e)i[e]=1,u[e]=4,a[e]=4*A[e]+2*A[e+1];i[t-1]=2,u[t-1]=7,a[t-1]=8*A[t-1]+A[t];for(e=1;e<t;++e)r=i[e]/u[e-1],u[e]-=r,a[e]-=r*a[e-1];i[t-1]=a[t-1]/u[t-1];for(e=t-2;e>=0;--e)i[e]=(a[e]-i[e+1])/u[e];u[t-1]=(A[t]+i[t-1])/2;for(e=0;e<t-1;++e)u[e]=2*A[e+1]-i[e+1];return[i,u]}function UD(A){return new a5A(A)}var n5A=_(()=>{a5A.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var A=this._x,e=this._y,t=A.length;if(t)if(this._line?this._context.lineTo(A[0],e[0]):this._context.moveTo(A[0],e[0]),t===2)this._context.lineTo(A[1],e[1]);else{var r=u5A(A),i=u5A(e);for(var u=0,a=1;a<t;++u,++a)this._context.bezierCurveTo(r[0][u],i[0][u],r[1][u],i[1][u],A[a],e[a])}if(this._line||this._line!==0&&t===1)this._context.closePath();this._line=1-this._line,this._x=this._y=null},point:function(A,e){this._x.push(+A),this._y.push(+e)}}});function eG(A,e){this._context=A,this._t=e}function MD(A){return new eG(A,0.5)}function nv(A){return new eG(A,0)}function ov(A){return new eG(A,1)}var o5A=_(()=>{eG.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){if(0<this._t&&this._t<1&&this._point===2)this._context.lineTo(this._x,this._y);if(this._line||this._line!==0&&this._point===1)this._context.closePath();if(this._line>=0)this._t=1-this._t,this._line=1-this._line},point:function(A,e){switch(A=+A,e=+e,this._point){case 0:this._point=1,this._line?this._context.lineTo(A,e):this._context.moveTo(A,e);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(A,e);else{var t=this._x*(1-this._t)+A*this._t;this._context.lineTo(t,this._y),this._context.lineTo(t,e)}break}}this._x=A,this._y=e}}});var s5A=_(()=>{R9A();M9A();T9A();K9A();O9A();Av();Y9A();_9A();nAA();sAA();tv();z9A();V9A();XN();X9A();eAA();i5A();n5A();o5A()});function hQ(A,e,t){this.k=A,this.x=e,this.y=t}function BAA(A){while(!A.__zoom)if(!(A=A.parentNode))return CAA;return A.__zoom}var CAA;var EAA=_(()=>{hQ.prototype={constructor:hQ,scale:function(A){return A===1?this:new hQ(this.k*A,this.x,this.y)},translate:function(A,e){return A===0&e===0?this:new hQ(this.k,this.x+this.k*A,this.y+this.k*e)},apply:function(A){return[A[0]*this.k+this.x,A[1]*this.k+this.y]},applyX:function(A){return A*this.k+this.x},applyY:function(A){return A*this.k+this.y},invert:function(A){return[(A[0]-this.x)/this.k,(A[1]-this.y)/this.k]},invertX:function(A){return(A-this.x)/this.k},invertY:function(A){return(A-this.y)/this.k},rescaleX:function(A){return A.copy().domain(A.range().map(this.invertX,this).map(A.invert,A))},rescaleY:function(A){return A.copy().domain(A.range().map(this.invertY,this).map(A.invert,A))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};CAA=new hQ(1,0,0);BAA.prototype=hQ.prototype});var l5A=_(()=>{pN();EAA()});var g5A=_(()=>{l5A();EAA()});var Pr=_(()=>{aQ();FyA();h6A();m6A();QD();D6A();y6A();oj();AwA();w6A();PX();b6A();k6A();a$();T6A();P6A();mD();ZX();_6A();v6A();W6A();k9A();x9A();Xc();s5A();HN();z$();BN();pN();g5A()});var zi;var cn=_(()=>{rr();Nt();Pr();zi=y((A)=>{let{securityLevel:e}=OA(),t=Qe("body");if(e==="sandbox"){let u=Qe(`#i${A}`).node()?.contentDocument??document;t=Qe(u.body)}return t.select(`#${A}`)},"selectSvgElement")});function LAA(A){return typeof A>"u"||A===null}function B5A(A){return typeof A==="object"&&A!==null}function E5A(A){if(Array.isArray(A))return A;else if(LAA(A))return[];return[A]}function d5A(A,e){var t,r,i,u;if(e){u=Object.keys(e);for(t=0,r=u.length;t<r;t+=1)i=u[t],A[i]=e[i]}return A}function I5A(A,e){var t="",r;for(r=0;r<e;r+=1)t+=A;return t}function h5A(A){return A===0&&Number.NEGATIVE_INFINITY===1/A}function RAA(A,e){var t="",r=A.reason||"(unknown reason)";if(!A.mark)return r;if(A.mark.name)t+='in "'+A.mark.name+'" ';if(t+="("+(A.mark.line+1)+":"+(A.mark.column+1)+")",!e&&A.mark.snippet)t+=`
`+A.mark.snippet;return r+" "+t}function HD(A,e){if(Error.call(this),this.name="YAMLException",this.reason=A,this.mark=e,this.message=RAA(this,!1),Error.captureStackTrace)Error.captureStackTrace(this,this.constructor);else this.stack=Error().stack||""}function tG(A,e,t,r,i){var u="",a="",n=Math.floor(i/2)-1;if(r-e>n)u=" ... ",e=r-n+u.length;if(t-r>n)a=" ...",t=r+n-a.length;return{str:u+A.slice(e,t).replace(/\t/g,"→")+a,pos:r-e+u.length}}function rG(A,e){return io.repeat(" ",e-A.length)+A}function Q5A(A,e){if(e=Object.create(e||null),!A.buffer)return null;if(!e.maxLength)e.maxLength=79;if(typeof e.indent!=="number")e.indent=1;if(typeof e.linesBefore!=="number")e.linesBefore=3;if(typeof e.linesAfter!=="number")e.linesAfter=2;var t=/\r?\n|\r|\0/g,r=[0],i=[],u,a=-1;while(u=t.exec(A.buffer))if(i.push(u.index),r.push(u.index+u[0].length),A.position<=u.index&&a<0)a=r.length-2;if(a<0)a=r.length-1;var n="",o,s,l=Math.min(A.line+e.linesAfter,i.length).toString().length,g=e.maxLength-(e.indent+l+3);for(o=1;o<=e.linesBefore;o++){if(a-o<0)break;s=tG(A.buffer,r[a-o],i[a-o],A.position-(r[a]-r[a-o]),g),n=io.repeat(" ",e.indent)+rG((A.line-o+1).toString(),l)+" | "+s.str+`
`+n}s=tG(A.buffer,r[a],i[a],A.position,g),n+=io.repeat(" ",e.indent)+rG((A.line+1).toString(),l)+" | "+s.str+`
`,n+=io.repeat("-",e.indent+l+3+s.pos)+`^
`;for(o=1;o<=e.linesAfter;o++){if(a+o>=i.length)break;s=tG(A.buffer,r[a+o],i[a+o],A.position-(r[a]-r[a+o]),g),n+=io.repeat(" ",e.indent)+rG((A.line+o+1).toString(),l)+" | "+s.str+`
`}return n.replace(/\n$/,"")}function p5A(A){var e={};if(A!==null)Object.keys(A).forEach(function(t){A[t].forEach(function(r){e[String(r)]=t})});return e}function f5A(A,e){if(e=e||{},Object.keys(e).forEach(function(t){if(Kut.indexOf(t)===-1)throw new tl('Unknown option "'+t+'" is met in definition of "'+A+'" YAML type.')}),this.options=e,this.tag=A,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(t){return t},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=p5A(e.styleAliases||null),Jut.indexOf(this.kind)===-1)throw new tl('Unknown kind "'+this.kind+'" is specified for "'+A+'" YAML type.')}function IAA(A,e){var t=[];return A[e].forEach(function(r){var i=t.length;t.forEach(function(u,a){if(u.tag===r.tag&&u.kind===r.kind&&u.multi===r.multi)i=a}),t[i]=r}),t}function m5A(){var A={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,t;function r(i){if(i.multi)A.multi[i.kind].push(i),A.multi.fallback.push(i);else A[i.kind][i.tag]=A.fallback[i.tag]=i}y(r,"collectType");for(e=0,t=arguments.length;e<t;e+=1)arguments[e].forEach(r);return A}function iG(A){return this.extend(A)}function D5A(A){if(A===null)return!0;var e=A.length;return e===1&&A==="~"||e===4&&(A==="null"||A==="Null"||A==="NULL")}function y5A(){return null}function w5A(A){return A===null}function b5A(A){if(A===null)return!1;var e=A.length;return e===4&&(A==="true"||A==="True"||A==="TRUE")||e===5&&(A==="false"||A==="False"||A==="FALSE")}function v5A(A){return A==="true"||A==="True"||A==="TRUE"}function k5A(A){return Object.prototype.toString.call(A)==="[object Boolean]"}function F5A(A){return 48<=A&&A<=57||65<=A&&A<=70||97<=A&&A<=102}function x5A(A){return 48<=A&&A<=55}function S5A(A){return 48<=A&&A<=57}function L5A(A){if(A===null)return!1;var e=A.length,t=0,r=!1,i;if(!e)return!1;if(i=A[t],i==="-"||i==="+")i=A[++t];if(i==="0"){if(t+1===e)return!0;if(i=A[++t],i==="b"){t++;for(;t<e;t++){if(i=A[t],i==="_")continue;if(i!=="0"&&i!=="1")return!1;r=!0}return r&&i!=="_"}if(i==="x"){t++;for(;t<e;t++){if(i=A[t],i==="_")continue;if(!F5A(A.charCodeAt(t)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){t++;for(;t<e;t++){if(i=A[t],i==="_")continue;if(!x5A(A.charCodeAt(t)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;t<e;t++){if(i=A[t],i==="_")continue;if(!S5A(A.charCodeAt(t)))return!1;r=!0}if(!r||i==="_")return!1;return!0}function R5A(A){var e=A,t=1,r;if(e.indexOf("_")!==-1)e=e.replace(/_/g,"");if(r=e[0],r==="-"||r==="+"){if(r==="-")t=-1;e=e.slice(1),r=e[0]}if(e==="0")return 0;if(r==="0"){if(e[1]==="b")return t*parseInt(e.slice(2),2);if(e[1]==="x")return t*parseInt(e.slice(2),16);if(e[1]==="o")return t*parseInt(e.slice(2),8)}return t*parseInt(e,10)}function N5A(A){return Object.prototype.toString.call(A)==="[object Number]"&&(A%1===0&&!io.isNegativeZero(A))}function G5A(A){if(A===null)return!1;if(!jut.test(A)||A[A.length-1]==="_")return!1;return!0}function U5A(A){var e,t;if(e=A.replace(/_/g,"").toLowerCase(),t=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0)e=e.slice(1);if(e===".inf")return t===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY;else if(e===".nan")return NaN;return t*parseFloat(e,10)}function M5A(A,e){var t;if(isNaN(A))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===A)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===A)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(io.isNegativeZero(A))return"-0.0";return t=A.toString(10),Xut.test(t)?t.replace("e",".e"):t}function T5A(A){return Object.prototype.toString.call(A)==="[object Number]"&&(A%1!==0||io.isNegativeZero(A))}function J5A(A){if(A===null)return!1;if(H5A.exec(A)!==null)return!0;if(K5A.exec(A)!==null)return!0;return!1}function O5A(A){var e,t,r,i,u,a,n,o=0,s=null,l,g,C;if(e=H5A.exec(A),e===null)e=K5A.exec(A);if(e===null)throw Error("Date resolve error");if(t=+e[1],r=+e[2]-1,i=+e[3],!e[4])return new Date(Date.UTC(t,r,i));if(u=+e[4],a=+e[5],n=+e[6],e[7]){o=e[7].slice(0,3);while(o.length<3)o+="0";o=+o}if(e[9]){if(l=+e[10],g=+(e[11]||0),s=(l*60+g)*60000,e[9]==="-")s=-s}if(C=new Date(Date.UTC(t,r,i,u,a,n,o)),s)C.setTime(C.getTime()-s);return C}function P5A(A){return A.toISOString()}function _5A(A){return A==="<<"||A===null}function W5A(A){if(A===null)return!1;var e,t,r=0,i=A.length,u=NAA;for(t=0;t<i;t++){if(e=u.indexOf(A.charAt(t)),e>64)continue;if(e<0)return!1;r+=6}return r%8===0}function q5A(A){var e,t,r=A.replace(/[\r\n=]/g,""),i=r.length,u=NAA,a=0,n=[];for(e=0;e<i;e++){if(e%4===0&&e)n.push(a>>16&255),n.push(a>>8&255),n.push(a&255);a=a<<6|u.indexOf(r.charAt(e))}if(t=i%4*6,t===0)n.push(a>>16&255),n.push(a>>8&255),n.push(a&255);else if(t===18)n.push(a>>10&255),n.push(a>>2&255);else if(t===12)n.push(a>>4&255);return new Uint8Array(n)}function z5A(A){var e="",t=0,r,i,u=A.length,a=NAA;for(r=0;r<u;r++){if(r%3===0&&r)e+=a[t>>18&63],e+=a[t>>12&63],e+=a[t>>6&63],e+=a[t&63];t=(t<<8)+A[r]}if(i=u%3,i===0)e+=a[t>>18&63],e+=a[t>>12&63],e+=a[t>>6&63],e+=a[t&63];else if(i===2)e+=a[t>>10&63],e+=a[t>>4&63],e+=a[t<<2&63],e+=a[64];else if(i===1)e+=a[t>>2&63],e+=a[t<<4&63],e+=a[64],e+=a[64];return e}function Z5A(A){return Object.prototype.toString.call(A)==="[object Uint8Array]"}function V5A(A){if(A===null)return!0;var e=[],t,r,i,u,a,n=A;for(t=0,r=n.length;t<r;t+=1){if(i=n[t],a=!1,uat.call(i)!=="[object Object]")return!1;for(u in i)if(iat.call(i,u))if(!a)a=!0;else return!1;if(!a)return!1;if(e.indexOf(u)===-1)e.push(u);else return!1}return!0}function j5A(A){return A!==null?A:[]}function X5A(A){if(A===null)return!0;var e,t,r,i,u,a=A;u=Array(a.length);for(e=0,t=a.length;e<t;e+=1){if(r=a[e],nat.call(r)!=="[object Object]")return!1;if(i=Object.keys(r),i.length!==1)return!1;u[e]=[i[0],r[i[0]]]}return!0}function $5A(A){if(A===null)return[];var e,t,r,i,u,a=A;u=Array(a.length);for(e=0,t=a.length;e<t;e+=1)r=a[e],i=Object.keys(r),u[e]=[i[0],r[i[0]]];return u}function AbA(A){if(A===null)return!0;var e,t=A;for(e in t)if(sat.call(t,e)){if(t[e]!==null)return!1}return!0}function ebA(A){return A!==null?A:{}}function hAA(A){return Object.prototype.toString.call(A)}function sC(A){return A===10||A===13}function QQ(A){return A===9||A===32}function gs(A){return A===9||A===32||A===10||A===13}function uf(A){return A===44||A===91||A===93||A===123||A===125}function nbA(A){var e;if(48<=A&&A<=57)return A-48;if(e=A|32,97<=e&&e<=102)return e-97+10;return-1}function obA(A){if(A===120)return 2;if(A===117)return 4;if(A===85)return 8;return 0}function sbA(A){if(48<=A&&A<=57)return A-48;return-1}function QAA(A){return A===48?"\x00":A===97?"\x07":A===98?"\b":A===116?"\t":A===9?"\t":A===110?`
`:A===118?"\v":A===102?"\f":A===114?"\r":A===101?"\x1B":A===32?" ":A===34?'"':A===47?"/":A===92?"\\":A===78?"…":A===95?" ":A===76?"\u2028":A===80?"\u2029":""}function lbA(A){if(A<=65535)return String.fromCharCode(A);return String.fromCharCode((A-65536>>10)+55296,(A-65536&1023)+56320)}function GAA(A,e,t){if(e==="__proto__")Object.defineProperty(A,e,{configurable:!0,enumerable:!0,writable:!0,value:t});else A[e]=t}function CbA(A,e){this.input=A,this.filename=e.filename||null,this.schema=e.schema||tbA,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=A.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function UAA(A,e){var t={name:A.filename,buffer:A.input.slice(0,-1),position:A.position,line:A.line,column:A.position-A.lineStart};return t.snippet=Hut(t),new tl(e,t)}function Ar(A,e){throw UAA(A,e)}function sv(A,e){if(A.onWarning)A.onWarning.call(null,UAA(A,e))}function oI(A,e,t,r){var i,u,a,n;if(e<t){if(n=A.input.slice(e,t),r){for(i=0,u=n.length;i<u;i+=1)if(a=n.charCodeAt(i),!(a===9||32<=a&&a<=1114111))Ar(A,"expected valid JSON character")}else if(cat.test(n))Ar(A,"the stream contains non-printable characters");A.result+=n}}function pAA(A,e,t,r){var i,u,a,n;if(!io.isObject(t))Ar(A,"cannot merge mappings; the provided source object is unacceptable");i=Object.keys(t);for(a=0,n=i.length;a<n;a+=1)if(u=i[a],!pQ.call(e,u))GAA(e,u,t[u]),r[u]=!0}function af(A,e,t,r,i,u,a,n,o){var s,l;if(Array.isArray(i)){i=Array.prototype.slice.call(i);for(s=0,l=i.length;s<l;s+=1){if(Array.isArray(i[s]))Ar(A,"nested arrays are not supported inside keys");if(typeof i==="object"&&hAA(i[s])==="[object Object]")i[s]="[object Object]"}}if(typeof i==="object"&&hAA(i)==="[object Object]")i="[object Object]";if(i=String(i),e===null)e={};if(r==="tag:yaml.org,2002:merge")if(Array.isArray(u))for(s=0,l=u.length;s<l;s+=1)pAA(A,e,u[s],t);else pAA(A,e,u,t);else{if(!A.json&&!pQ.call(t,i)&&pQ.call(e,i))A.line=a||A.line,A.lineStart=n||A.lineStart,A.position=o||A.position,Ar(A,"duplicated mapping key");GAA(e,i,u),delete t[i]}return e}function lG(A){var e=A.input.charCodeAt(A.position);if(e===10)A.position++;else if(e===13){if(A.position++,A.input.charCodeAt(A.position)===10)A.position++}else Ar(A,"a line break is expected");A.line+=1,A.lineStart=A.position,A.firstTabInLine=-1}function Cn(A,e,t){var r=0,i=A.input.charCodeAt(A.position);while(i!==0){while(QQ(i)){if(i===9&&A.firstTabInLine===-1)A.firstTabInLine=A.position;i=A.input.charCodeAt(++A.position)}if(e&&i===35)do i=A.input.charCodeAt(++A.position);while(i!==10&&i!==13&&i!==0);if(sC(i)){lG(A),i=A.input.charCodeAt(A.position),r++,A.lineIndent=0;while(i===32)A.lineIndent++,i=A.input.charCodeAt(++A.position)}else break}if(t!==-1&&r!==0&&A.lineIndent<t)sv(A,"deficient indentation");return r}function Cv(A){var e=A.position,t;if(t=A.input.charCodeAt(e),(t===45||t===46)&&t===A.input.charCodeAt(e+1)&&t===A.input.charCodeAt(e+2)){if(e+=3,t=A.input.charCodeAt(e),t===0||gs(t))return!0}return!1}function gG(A,e){if(e===1)A.result+=" ";else if(e>1)A.result+=io.repeat(`
`,e-1)}function BbA(A,e,t){var r,i,u,a,n,o,s,l,{kind:g,result:C}=A,B;if(B=A.input.charCodeAt(A.position),gs(B)||uf(B)||B===35||B===38||B===42||B===33||B===124||B===62||B===39||B===34||B===37||B===64||B===96)return!1;if(B===63||B===45){if(i=A.input.charCodeAt(A.position+1),gs(i)||t&&uf(i))return!1}A.kind="scalar",A.result="",u=a=A.position,n=!1;while(B!==0){if(B===58){if(i=A.input.charCodeAt(A.position+1),gs(i)||t&&uf(i))break}else if(B===35){if(r=A.input.charCodeAt(A.position-1),gs(r))break}else if(A.position===A.lineStart&&Cv(A)||t&&uf(B))break;else if(sC(B))if(o=A.line,s=A.lineStart,l=A.lineIndent,Cn(A,!1,-1),A.lineIndent>=e){n=!0,B=A.input.charCodeAt(A.position);continue}else{A.position=a,A.line=o,A.lineStart=s,A.lineIndent=l;break}if(n)oI(A,u,a,!1),gG(A,A.line-o),u=a=A.position,n=!1;if(!QQ(B))a=A.position+1;B=A.input.charCodeAt(++A.position)}if(oI(A,u,a,!1),A.result)return!0;return A.kind=g,A.result=C,!1}function EbA(A,e){var t,r,i;if(t=A.input.charCodeAt(A.position),t!==39)return!1;A.kind="scalar",A.result="",A.position++,r=i=A.position;while((t=A.input.charCodeAt(A.position))!==0)if(t===39)if(oI(A,r,A.position,!0),t=A.input.charCodeAt(++A.position),t===39)r=A.position,A.position++,i=A.position;else return!0;else if(sC(t))oI(A,r,i,!0),gG(A,Cn(A,!1,e)),r=i=A.position;else if(A.position===A.lineStart&&Cv(A))Ar(A,"unexpected end of the document within a single quoted scalar");else A.position++,i=A.position;Ar(A,"unexpected end of the stream within a single quoted scalar")}function dbA(A,e){var t,r,i,u,a,n;if(n=A.input.charCodeAt(A.position),n!==34)return!1;A.kind="scalar",A.result="",A.position++,t=r=A.position;while((n=A.input.charCodeAt(A.position))!==0)if(n===34)return oI(A,t,A.position,!0),A.position++,!0;else if(n===92){if(oI(A,t,A.position,!0),n=A.input.charCodeAt(++A.position),sC(n))Cn(A,!1,e);else if(n<256&&gbA[n])A.result+=cbA[n],A.position++;else if((a=obA(n))>0){i=a,u=0;for(;i>0;i--)if(n=A.input.charCodeAt(++A.position),(a=nbA(n))>=0)u=(u<<4)+a;else Ar(A,"expected hexadecimal character");A.result+=lbA(u),A.position++}else Ar(A,"unknown escape sequence");t=r=A.position}else if(sC(n))oI(A,t,r,!0),gG(A,Cn(A,!1,e)),t=r=A.position;else if(A.position===A.lineStart&&Cv(A))Ar(A,"unexpected end of the document within a double quoted scalar");else A.position++,r=A.position;Ar(A,"unexpected end of the stream within a double quoted scalar")}function IbA(A,e){var t=!0,r,i,u,a=A.tag,n,o=A.anchor,s,l,g,C,B,E=Object.create(null),d,I,h,Q;if(Q=A.input.charCodeAt(A.position),Q===91)l=93,B=!1,n=[];else if(Q===123)l=125,B=!0,n={};else return!1;if(A.anchor!==null)A.anchorMap[A.anchor]=n;Q=A.input.charCodeAt(++A.position);while(Q!==0){if(Cn(A,!0,e),Q=A.input.charCodeAt(A.position),Q===l)return A.position++,A.tag=a,A.anchor=o,A.kind=B?"mapping":"sequence",A.result=n,!0;else if(!t)Ar(A,"missed comma between flow collection entries");else if(Q===44)Ar(A,"expected the node content, but found ','");if(I=d=h=null,g=C=!1,Q===63){if(s=A.input.charCodeAt(A.position+1),gs(s))g=C=!0,A.position++,Cn(A,!0,e)}if(r=A.line,i=A.lineStart,u=A.position,nf(A,e,uG,!1,!0),I=A.tag,d=A.result,Cn(A,!0,e),Q=A.input.charCodeAt(A.position),(C||A.line===r)&&Q===58)g=!0,Q=A.input.charCodeAt(++A.position),Cn(A,!0,e),nf(A,e,uG,!1,!0),h=A.result;if(B)af(A,n,E,I,d,h,r,i,u);else if(g)n.push(af(A,null,E,I,d,h,r,i,u));else n.push(d);if(Cn(A,!0,e),Q=A.input.charCodeAt(A.position),Q===44)t=!0,Q=A.input.charCodeAt(++A.position);else t=!1}Ar(A,"unexpected end of the stream within a flow collection")}function hbA(A,e){var t,r,i=dAA,u=!1,a=!1,n=e,o=0,s=!1,l,g;if(g=A.input.charCodeAt(A.position),g===124)r=!1;else if(g===62)r=!0;else return!1;A.kind="scalar",A.result="";while(g!==0)if(g=A.input.charCodeAt(++A.position),g===43||g===45)if(dAA===i)i=g===43?c5A:gat;else Ar(A,"repeat of a chomping mode identifier");else if((l=sbA(g))>=0)if(l===0)Ar(A,"bad explicit indentation width of a block scalar; it cannot be less than one");else if(!a)n=e+l-1,a=!0;else Ar(A,"repeat of an indentation width identifier");else break;if(QQ(g)){do g=A.input.charCodeAt(++A.position);while(QQ(g));if(g===35)do g=A.input.charCodeAt(++A.position);while(!sC(g)&&g!==0)}while(g!==0){lG(A),A.lineIndent=0,g=A.input.charCodeAt(A.position);while((!a||A.lineIndent<n)&&g===32)A.lineIndent++,g=A.input.charCodeAt(++A.position);if(!a&&A.lineIndent>n)n=A.lineIndent;if(sC(g)){o++;continue}if(A.lineIndent<n){if(i===c5A)A.result+=io.repeat(`
`,u?1+o:o);else if(i===dAA){if(u)A.result+=`
`}break}if(r)if(QQ(g))s=!0,A.result+=io.repeat(`
`,u?1+o:o);else if(s)s=!1,A.result+=io.repeat(`
`,o+1);else if(o===0){if(u)A.result+=" "}else A.result+=io.repeat(`
`,o);else A.result+=io.repeat(`
`,u?1+o:o);u=!0,a=!0,o=0,t=A.position;while(!sC(g)&&g!==0)g=A.input.charCodeAt(++A.position);oI(A,t,A.position,!1)}return!0}function fAA(A,e){var t,{tag:r,anchor:i}=A,u=[],a,n=!1,o;if(A.firstTabInLine!==-1)return!1;if(A.anchor!==null)A.anchorMap[A.anchor]=u;o=A.input.charCodeAt(A.position);while(o!==0){if(A.firstTabInLine!==-1)A.position=A.firstTabInLine,Ar(A,"tab characters must not be used in indentation");if(o!==45)break;if(a=A.input.charCodeAt(A.position+1),!gs(a))break;if(n=!0,A.position++,Cn(A,!0,-1)){if(A.lineIndent<=e){u.push(null),o=A.input.charCodeAt(A.position);continue}}if(t=A.line,nf(A,e,ibA,!1,!0),u.push(A.result),Cn(A,!0,-1),o=A.input.charCodeAt(A.position),(A.line===t||A.lineIndent>e)&&o!==0)Ar(A,"bad indentation of a sequence entry");else if(A.lineIndent<e)break}if(n)return A.tag=r,A.anchor=i,A.kind="sequence",A.result=u,!0;return!1}function QbA(A,e,t){var r,i,u,a,n,o,{tag:s,anchor:l}=A,g={},C=Object.create(null),B=null,E=null,d=null,I=!1,h=!1,Q;if(A.firstTabInLine!==-1)return!1;if(A.anchor!==null)A.anchorMap[A.anchor]=g;Q=A.input.charCodeAt(A.position);while(Q!==0){if(!I&&A.firstTabInLine!==-1)A.position=A.firstTabInLine,Ar(A,"tab characters must not be used in indentation");if(r=A.input.charCodeAt(A.position+1),u=A.line,(Q===63||Q===58)&&gs(r)){if(Q===63){if(I)af(A,g,C,B,E,null,a,n,o),B=E=d=null;h=!0,I=!0,i=!0}else if(I)I=!1,i=!0;else Ar(A,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line");A.position+=1,Q=r}else{if(a=A.line,n=A.lineStart,o=A.position,!nf(A,t,rbA,!1,!0))break;if(A.line===u){Q=A.input.charCodeAt(A.position);while(QQ(Q))Q=A.input.charCodeAt(++A.position);if(Q===58){if(Q=A.input.charCodeAt(++A.position),!gs(Q))Ar(A,"a whitespace character is expected after the key-value separator within a block mapping");if(I)af(A,g,C,B,E,null,a,n,o),B=E=d=null;h=!0,I=!1,i=!1,B=A.tag,E=A.result}else if(h)Ar(A,"can not read an implicit mapping pair; a colon is missed");else return A.tag=s,A.anchor=l,!0}else if(h)Ar(A,"can not read a block mapping entry; a multiline key may not be an implicit key");else return A.tag=s,A.anchor=l,!0}if(A.line===u||A.lineIndent>e){if(I)a=A.line,n=A.lineStart,o=A.position;if(nf(A,e,aG,!0,i))if(I)E=A.result;else d=A.result;if(!I)af(A,g,C,B,E,d,a,n,o),B=E=d=null;Cn(A,!0,-1),Q=A.input.charCodeAt(A.position)}if((A.line===u||A.lineIndent>e)&&Q!==0)Ar(A,"bad indentation of a mapping entry");else if(A.lineIndent<e)break}if(I)af(A,g,C,B,E,null,a,n,o);if(h)A.tag=s,A.anchor=l,A.kind="mapping",A.result=g;return h}function pbA(A){var e,t=!1,r=!1,i,u,a;if(a=A.input.charCodeAt(A.position),a!==33)return!1;if(A.tag!==null)Ar(A,"duplication of a tag property");if(a=A.input.charCodeAt(++A.position),a===60)t=!0,a=A.input.charCodeAt(++A.position);else if(a===33)r=!0,i="!!",a=A.input.charCodeAt(++A.position);else i="!";if(e=A.position,t){do a=A.input.charCodeAt(++A.position);while(a!==0&&a!==62);if(A.position<A.length)u=A.input.slice(e,A.position),a=A.input.charCodeAt(++A.position);else Ar(A,"unexpected end of the stream within a verbatim tag")}else{while(a!==0&&!gs(a)){if(a===33)if(!r){if(i=A.input.slice(e-1,A.position+1),!ubA.test(i))Ar(A,"named tag handle cannot contain such characters");r=!0,e=A.position+1}else Ar(A,"tag suffix cannot contain exclamation marks");a=A.input.charCodeAt(++A.position)}if(u=A.input.slice(e,A.position),Bat.test(u))Ar(A,"tag suffix cannot contain flow indicator characters")}if(u&&!abA.test(u))Ar(A,"tag name cannot contain such characters: "+u);try{u=decodeURIComponent(u)}catch(n){Ar(A,"tag name is malformed: "+u)}if(t)A.tag=u;else if(pQ.call(A.tagMap,i))A.tag=A.tagMap[i]+u;else if(i==="!")A.tag="!"+u;else if(i==="!!")A.tag="tag:yaml.org,2002:"+u;else Ar(A,'undeclared tag handle "'+i+'"');return!0}function fbA(A){var e,t;if(t=A.input.charCodeAt(A.position),t!==38)return!1;if(A.anchor!==null)Ar(A,"duplication of an anchor property");t=A.input.charCodeAt(++A.position),e=A.position;while(t!==0&&!gs(t)&&!uf(t))t=A.input.charCodeAt(++A.position);if(A.position===e)Ar(A,"name of an anchor node must contain at least one character");return A.anchor=A.input.slice(e,A.position),!0}function mbA(A){var e,t,r;if(r=A.input.charCodeAt(A.position),r!==42)return!1;r=A.input.charCodeAt(++A.position),e=A.position;while(r!==0&&!gs(r)&&!uf(r))r=A.input.charCodeAt(++A.position);if(A.position===e)Ar(A,"name of an alias node must contain at least one character");if(t=A.input.slice(e,A.position),!pQ.call(A.anchorMap,t))Ar(A,'unidentified alias "'+t+'"');return A.result=A.anchorMap[t],Cn(A,!0,-1),!0}function nf(A,e,t,r,i){var u,a,n,o=1,s=!1,l=!1,g,C,B,E,d,I;if(A.listener!==null)A.listener("open",A);if(A.tag=null,A.anchor=null,A.kind=null,A.result=null,u=a=n=aG===t||ibA===t,r){if(Cn(A,!0,-1)){if(s=!0,A.lineIndent>e)o=1;else if(A.lineIndent===e)o=0;else if(A.lineIndent<e)o=-1}}if(o===1)while(pbA(A)||fbA(A))if(Cn(A,!0,-1)){if(s=!0,n=u,A.lineIndent>e)o=1;else if(A.lineIndent===e)o=0;else if(A.lineIndent<e)o=-1}else n=!1;if(n)n=s||i;if(o===1||aG===t){if(uG===t||rbA===t)d=e;else d=e+1;if(I=A.position-A.lineStart,o===1)if(n&&(fAA(A,I)||QbA(A,I,d))||IbA(A,d))l=!0;else{if(a&&hbA(A,d)||EbA(A,d)||dbA(A,d))l=!0;else if(mbA(A)){if(l=!0,A.tag!==null||A.anchor!==null)Ar(A,"alias node should not have any properties")}else if(BbA(A,d,uG===t)){if(l=!0,A.tag===null)A.tag="?"}if(A.anchor!==null)A.anchorMap[A.anchor]=A.result}else if(o===0)l=n&&fAA(A,I)}if(A.tag===null){if(A.anchor!==null)A.anchorMap[A.anchor]=A.result}else if(A.tag==="?"){if(A.result!==null&&A.kind!=="scalar")Ar(A,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+A.kind+'"');for(g=0,C=A.implicitTypes.length;g<C;g+=1)if(E=A.implicitTypes[g],E.resolve(A.result)){if(A.result=E.construct(A.result),A.tag=E.tag,A.anchor!==null)A.anchorMap[A.anchor]=A.result;break}}else if(A.tag!=="!"){if(pQ.call(A.typeMap[A.kind||"fallback"],A.tag))E=A.typeMap[A.kind||"fallback"][A.tag];else{E=null,B=A.typeMap.multi[A.kind||"fallback"];for(g=0,C=B.length;g<C;g+=1)if(A.tag.slice(0,B[g].tag.length)===B[g].tag){E=B[g];break}}if(!E)Ar(A,"unknown tag !<"+A.tag+">");if(A.result!==null&&E.kind!==A.kind)Ar(A,"unacceptable node kind for !<"+A.tag+'> tag; it should be "'+E.kind+'", not "'+A.kind+'"');if(!E.resolve(A.result,A.tag))Ar(A,"cannot resolve a node with !<"+A.tag+"> explicit tag");else if(A.result=E.construct(A.result,A.tag),A.anchor!==null)A.anchorMap[A.anchor]=A.result}if(A.listener!==null)A.listener("close",A);return A.tag!==null||A.anchor!==null||l}function DbA(A){var e=A.position,t,r,i,u=!1,a;A.version=null,A.checkLineBreaks=A.legacy,A.tagMap=Object.create(null),A.anchorMap=Object.create(null);while((a=A.input.charCodeAt(A.position))!==0){if(Cn(A,!0,-1),a=A.input.charCodeAt(A.position),A.lineIndent>0||a!==37)break;u=!0,a=A.input.charCodeAt(++A.position),t=A.position;while(a!==0&&!gs(a))a=A.input.charCodeAt(++A.position);if(r=A.input.slice(t,A.position),i=[],r.length<1)Ar(A,"directive name must not be less than one character in length");while(a!==0){while(QQ(a))a=A.input.charCodeAt(++A.position);if(a===35){do a=A.input.charCodeAt(++A.position);while(a!==0&&!sC(a));break}if(sC(a))break;t=A.position;while(a!==0&&!gs(a))a=A.input.charCodeAt(++A.position);i.push(A.input.slice(t,A.position))}if(a!==0)lG(A);if(pQ.call(C5A,r))C5A[r](A,r,i);else sv(A,'unknown document directive "'+r+'"')}if(Cn(A,!0,-1),A.lineIndent===0&&A.input.charCodeAt(A.position)===45&&A.input.charCodeAt(A.position+1)===45&&A.input.charCodeAt(A.position+2)===45)A.position+=3,Cn(A,!0,-1);else if(u)Ar(A,"directives end mark is expected");if(nf(A,A.lineIndent-1,aG,!1,!0),Cn(A,!0,-1),A.checkLineBreaks&&Cat.test(A.input.slice(e,A.position)))sv(A,"non-ASCII line breaks are interpreted as content");if(A.documents.push(A.result),A.position===A.lineStart&&Cv(A)){if(A.input.charCodeAt(A.position)===46)A.position+=3,Cn(A,!0,-1);return}if(A.position<A.length-1)Ar(A,"end of the stream or a document separator is expected");else return}function MAA(A,e){if(A=String(A),e=e||{},A.length!==0){if(A.charCodeAt(A.length-1)!==10&&A.charCodeAt(A.length-1)!==13)A+=`
`;if(A.charCodeAt(0)===65279)A=A.slice(1)}var t=new CbA(A,e),r=A.indexOf("\x00");if(r!==-1)t.position=r,Ar(t,"null byte is not allowed in input");t.input+="\x00";while(t.input.charCodeAt(t.position)===32)t.lineIndent+=1,t.position+=1;while(t.position<t.length-1)DbA(t);return t.documents}function ybA(A,e,t){if(e!==null&&typeof e==="object"&&typeof t>"u")t=e,e=null;var r=MAA(A,t);if(typeof e!=="function")return r;for(var i=0,u=r.length;i<u;i+=1)e(r[i])}function wbA(A,e){var t=MAA(A,e);if(t.length===0)return;else if(t.length===1)return t[0];throw new tl("expected a single document in the stream, but found more")}function NbA(A,e){var t,r,i,u,a,n,o;if(e===null)return{};t={},r=Object.keys(e);for(i=0,u=r.length;i<u;i+=1){if(a=r[i],n=String(e[a]),a.slice(0,2)==="!!")a="tag:yaml.org,2002:"+a.slice(2);if(o=A.compiledTypeMap.fallback[a],o&&kbA.call(o.styleAliases,n))n=o.styleAliases[n];t[a]=n}return t}function GbA(A){var e,t,r;if(e=A.toString(16).toUpperCase(),A<=255)t="x",r=2;else if(A<=65535)t="u",r=4;else if(A<=4294967295)t="U",r=8;else throw new tl("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+t+io.repeat("0",r-e.length)+e}function UbA(A){this.schema=A.schema||tbA,this.indent=Math.max(1,A.indent||2),this.noArrayIndent=A.noArrayIndent||!1,this.skipInvalid=A.skipInvalid||!1,this.flowLevel=io.isNothing(A.flowLevel)?-1:A.flowLevel,this.styleMap=NbA(this.schema,A.styles||null),this.sortKeys=A.sortKeys||!1,this.lineWidth=A.lineWidth||80,this.noRefs=A.noRefs||!1,this.noCompatMode=A.noCompatMode||!1,this.condenseFlow=A.condenseFlow||!1,this.quotingType=A.quotingType==='"'?gv:Gat,this.forceQuotes=A.forceQuotes||!1,this.replacer=typeof A.replacer==="function"?A.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function DAA(A,e){var t=io.repeat(" ",e),r=0,i=-1,u="",a,n=A.length;while(r<n){if(i=A.indexOf(`
`,r),i===-1)a=A.slice(r),r=n;else a=A.slice(r,i+1),r=i+1;if(a.length&&a!==`
`)u+=t;u+=a}return u}function oG(A,e){return`
`+io.repeat(" ",A.indent*e)}function MbA(A,e){var t,r,i;for(t=0,r=A.implicitTypes.length;t<r;t+=1)if(i=A.implicitTypes[t],i.resolve(e))return!0;return!1}function cv(A){return A===Qat||A===Iat}function KD(A){return 32<=A&&A<=126||161<=A&&A<=55295&&A!==8232&&A!==8233||57344<=A&&A<=65533&&A!==TAA||65536<=A&&A<=1114111}function yAA(A){return KD(A)&&A!==TAA&&A!==hat&&A!==lv}function wAA(A,e,t){var r=yAA(A),i=r&&!cv(A);return(t?r:r&&A!==FbA&&A!==xbA&&A!==SbA&&A!==LbA&&A!==RbA)&&A!==mAA&&!(e===nG&&!i)||yAA(e)&&!cv(e)&&A===mAA||e===nG&&i}function TbA(A){return KD(A)&&A!==TAA&&!cv(A)&&A!==bat&&A!==Fat&&A!==nG&&A!==FbA&&A!==xbA&&A!==SbA&&A!==LbA&&A!==RbA&&A!==mAA&&A!==Dat&&A!==wat&&A!==pat&&A!==Lat&&A!==vat&&A!==kat&&A!==yat&&A!==fat&&A!==mat&&A!==xat&&A!==Sat}function YbA(A){return!cv(A)&&A!==nG}function YD(A,e){var t=A.charCodeAt(e),r;if(t>=55296&&t<=56319&&e+1<A.length){if(r=A.charCodeAt(e+1),r>=56320&&r<=57343)return(t-55296)*1024+r-56320+65536}return t}function YAA(A){var e=/^\n* /;return e.test(A)}function ObA(A,e,t,r,i,u,a,n){var o,s=0,l=null,g=!1,C=!1,B=r!==-1,E=-1,d=TbA(YD(A,0))&&YbA(YD(A,A.length-1));if(e||a)for(o=0;o<A.length;s>=65536?o+=2:o++){if(s=YD(A,o),!KD(s))return TD;d=d&&wAA(s,l,n),l=s}else{for(o=0;o<A.length;s>=65536?o+=2:o++){if(s=YD(A,o),s===lv){if(g=!0,B)C=C||o-E-1>r&&A[E+1]!==" ",E=o}else if(!KD(s))return TD;d=d&&wAA(s,l,n),l=s}C=C||B&&(o-E-1>r&&A[E+1]!==" ")}if(!g&&!C){if(d&&!a&&!i(A))return HbA;return u===gv?TD:bAA}if(t>9&&YAA(A))return TD;if(!a)return C?JbA:KbA;return u===gv?TD:bAA}function PbA(A,e,t,r,i){A.dump=function(){if(e.length===0)return A.quotingType===gv?'""':"''";if(!A.noCompatMode){if(Rat.indexOf(e)!==-1||Nat.test(e))return A.quotingType===gv?'"'+e+'"':"'"+e+"'"}var u=A.indent*Math.max(1,t),a=A.lineWidth===-1?-1:Math.max(Math.min(A.lineWidth,40),A.lineWidth-u),n=r||A.flowLevel>-1&&t>=A.flowLevel;function o(s){return MbA(A,s)}switch(y(o,"testAmbiguity"),ObA(e,n,A.indent,a,o,A.quotingType,A.forceQuotes&&!r,i)){case HbA:return e;case bAA:return"'"+e.replace(/'/g,"''")+"'";case KbA:return"|"+vAA(e,A.indent)+kAA(DAA(e,u));case JbA:return">"+vAA(e,A.indent)+kAA(DAA(_bA(e,a),u));case TD:return'"'+WbA(e)+'"';default:throw new tl("impossible error: invalid scalar style")}}()}function vAA(A,e){var t=YAA(A)?String(e):"",r=A[A.length-1]===`
`,i=r&&(A[A.length-2]===`
`||A===`
`),u=i?"+":r?"":"-";return t+u+`
`}function kAA(A){return A[A.length-1]===`
`?A.slice(0,-1):A}function _bA(A,e){var t=/(\n+)([^\n]*)/g,r=function(){var s=A.indexOf(`
`);return s=s!==-1?s:A.length,t.lastIndex=s,FAA(A.slice(0,s),e)}(),i=A[0]===`
`||A[0]===" ",u,a;while(a=t.exec(A)){var n=a[1],o=a[2];u=o[0]===" ",r+=n+(!i&&!u&&o!==""?`
`:"")+FAA(o,e),i=u}return r}function FAA(A,e){if(A===""||A[0]===" ")return A;var t=/ [^ ]/g,r,i=0,u,a=0,n=0,o="";while(r=t.exec(A)){if(n=r.index,n-i>e)u=a>i?a:n,o+=`
`+A.slice(i,u),i=u+1;a=n}if(o+=`
`,A.length-i>e&&a>i)o+=A.slice(i,a)+`
`+A.slice(a+1);else o+=A.slice(i);return o.slice(1)}function WbA(A){var e="",t=0,r;for(var i=0;i<A.length;t>=65536?i+=2:i++)if(t=YD(A,i),r=G0[t],!r&&KD(t)){if(e+=A[i],t>=65536)e+=A[i+1]}else e+=r||GbA(t);return e}function qbA(A,e,t){var r="",i=A.tag,u,a,n;for(u=0,a=t.length;u<a;u+=1){if(n=t[u],A.replacer)n=A.replacer.call(t,String(u),n);if($B(A,e,n,!1,!1)||typeof n>"u"&&$B(A,e,null,!1,!1)){if(r!=="")r+=","+(!A.condenseFlow?" ":"");r+=A.dump}}A.tag=i,A.dump="["+r+"]"}function xAA(A,e,t,r){var i="",u=A.tag,a,n,o;for(a=0,n=t.length;a<n;a+=1){if(o=t[a],A.replacer)o=A.replacer.call(t,String(a),o);if($B(A,e+1,o,!0,!0,!1,!0)||typeof o>"u"&&$B(A,e+1,null,!0,!0,!1,!0)){if(!r||i!=="")i+=oG(A,e);if(A.dump&&lv===A.dump.charCodeAt(0))i+="-";else i+="- ";i+=A.dump}}A.tag=u,A.dump=i||"[]"}function zbA(A,e,t){var r="",i=A.tag,u=Object.keys(t),a,n,o,s,l;for(a=0,n=u.length;a<n;a+=1){if(l="",r!=="")l+=", ";if(A.condenseFlow)l+='"';if(o=u[a],s=t[o],A.replacer)s=A.replacer.call(t,o,s);if(!$B(A,e,o,!1,!1))continue;if(A.dump.length>1024)l+="? ";if(l+=A.dump+(A.condenseFlow?'"':"")+":"+(A.condenseFlow?"":" "),!$B(A,e,s,!1,!1))continue;l+=A.dump,r+=l}A.tag=i,A.dump="{"+r+"}"}function ZbA(A,e,t,r){var i="",u=A.tag,a=Object.keys(t),n,o,s,l,g,C;if(A.sortKeys===!0)a.sort();else if(typeof A.sortKeys==="function")a.sort(A.sortKeys);else if(A.sortKeys)throw new tl("sortKeys must be a boolean or a function");for(n=0,o=a.length;n<o;n+=1){if(C="",!r||i!=="")C+=oG(A,e);if(s=a[n],l=t[s],A.replacer)l=A.replacer.call(t,s,l);if(!$B(A,e+1,s,!0,!0,!0))continue;if(g=A.tag!==null&&A.tag!=="?"||A.dump&&A.dump.length>1024,g)if(A.dump&&lv===A.dump.charCodeAt(0))C+="?";else C+="? ";if(C+=A.dump,g)C+=oG(A,e);if(!$B(A,e+1,l,!0,g))continue;if(A.dump&&lv===A.dump.charCodeAt(0))C+=":";else C+=": ";C+=A.dump,i+=C}A.tag=u,A.dump=i||"{}"}function SAA(A,e,t){var r,i,u,a,n,o;i=t?A.explicitTypes:A.implicitTypes;for(u=0,a=i.length;u<a;u+=1)if(n=i[u],(n.instanceOf||n.predicate)&&(!n.instanceOf||typeof e==="object"&&e instanceof n.instanceOf)&&(!n.predicate||n.predicate(e))){if(t)if(n.multi&&n.representName)A.tag=n.representName(e);else A.tag=n.tag;else A.tag="?";if(n.represent){if(o=A.styleMap[n.tag]||n.defaultStyle,vbA.call(n.represent)==="[object Function]")r=n.represent(e,o);else if(kbA.call(n.represent,o))r=n.represent[o](e,o);else throw new tl("!<"+n.tag+'> tag resolver accepts not "'+o+'" style');A.dump=r}return!0}return!1}function $B(A,e,t,r,i,u,a){if(A.tag=null,A.dump=t,!SAA(A,t,!1))SAA(A,t,!0);var n=vbA.call(A.dump),o=r,s;if(r)r=A.flowLevel<0||A.flowLevel>e;var l=n==="[object Object]"||n==="[object Array]",g,C;if(l)g=A.duplicates.indexOf(t),C=g!==-1;if(A.tag!==null&&A.tag!=="?"||C||A.indent!==2&&e>0)i=!1;if(C&&A.usedDuplicates[g])A.dump="*ref_"+g;else{if(l&&C&&!A.usedDuplicates[g])A.usedDuplicates[g]=!0;if(n==="[object Object]"){if(r&&Object.keys(A.dump).length!==0){if(ZbA(A,e,A.dump,i),C)A.dump="&ref_"+g+A.dump}else if(zbA(A,e,A.dump),C)A.dump="&ref_"+g+" "+A.dump}else if(n==="[object Array]"){if(r&&A.dump.length!==0){if(A.noArrayIndent&&!a&&e>0)xAA(A,e-1,A.dump,i);else xAA(A,e,A.dump,i);if(C)A.dump="&ref_"+g+A.dump}else if(qbA(A,e,A.dump),C)A.dump="&ref_"+g+" "+A.dump}else if(n==="[object String]"){if(A.tag!=="?")PbA(A,A.dump,e,u,o)}else if(n==="[object Undefined]")return!1;else{if(A.skipInvalid)return!1;throw new tl("unacceptable kind of an object to dump "+n)}if(A.tag!==null&&A.tag!=="?"){if(s=encodeURI(A.tag[0]==="!"?A.tag.slice(1):A.tag).replace(/!/g,"%21"),A.tag[0]==="!")s="!"+s;else if(s.slice(0,18)==="tag:yaml.org,2002:")s="!!"+s.slice(18);else s="!<"+s+">";A.dump=s+" "+A.dump}}return!0}function VbA(A,e){var t=[],r=[],i,u;sG(A,t,r);for(i=0,u=r.length;i<u;i+=1)e.duplicates.push(t[r[i]]);e.usedDuplicates=Array(u)}function sG(A,e,t){var r,i,u;if(A!==null&&typeof A==="object")if(i=e.indexOf(A),i!==-1){if(t.indexOf(i)===-1)t.push(i)}else if(e.push(A),Array.isArray(A))for(i=0,u=A.length;i<u;i+=1)sG(A[i],e,t);else{r=Object.keys(A);for(i=0,u=r.length;i<u;i+=1)sG(A[r[i]],e,t)}}function jbA(A,e){e=e||{};var t=new UbA(e);if(!t.noRefs)VbA(A,t);var r=A;if(t.replacer)r=t.replacer.call({"":r},"",r);if($B(t,0,r,!0,!0))return t.dump+`
`;return""}function cG(A,e){return function(){throw Error("Function yaml."+A+" is removed in js-yaml 4. Use yaml."+e+" instead, which is now safe by default.")}}var Nut,Gut,Uut,Mut,Tut,Yut,io,tl,Hut,Kut,Jut,N0,Out,Put,_ut,Wut,qut,zut,Zut,Vut,jut,Xut,$ut,Y5A,Aat,H5A,K5A,eat,tat,NAA=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
\r`,rat,iat,uat,aat,nat,oat,sat,lat,tbA,pQ,uG=1,rbA=2,ibA=3,aG=4,dAA=1,gat=2,c5A=3,cat,Cat,Bat,ubA,abA,gbA,cbA,rf,C5A,Eat,dat,bbA,vbA,kbA,TAA=65279,Iat=9,lv=10,hat=13,Qat=32,pat=33,fat=34,mAA=35,mat=37,Dat=38,yat=39,wat=42,FbA=44,bat=45,nG=58,vat=61,kat=62,Fat=63,xat=64,xbA=91,SbA=93,Sat=96,LbA=123,Lat=124,RbA=125,G0,Rat,Nat,Gat=1,gv=2,HbA=1,bAA=2,KbA=3,JbA=4,TD=5,Uat,Mat,fQ,mQ,Bvr,Evr,dvr,Ivr,hvr;var of=_(()=>{Nt();y(LAA,"isNothing");y(B5A,"isObject");y(E5A,"toArray");y(d5A,"extend");y(I5A,"repeat");y(h5A,"isNegativeZero");Nut=LAA,Gut=B5A,Uut=E5A,Mut=I5A,Tut=h5A,Yut=d5A,io={isNothing:Nut,isObject:Gut,toArray:Uut,repeat:Mut,isNegativeZero:Tut,extend:Yut};y(RAA,"formatError");y(HD,"YAMLException$1");HD.prototype=Object.create(Error.prototype);HD.prototype.constructor=HD;HD.prototype.toString=y(function(e){return this.name+": "+RAA(this,e)},"toString");tl=HD;y(tG,"getLine");y(rG,"padStart");y(Q5A,"makeSnippet");Hut=Q5A,Kut=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],Jut=["scalar","sequence","mapping"];y(p5A,"compileStyleAliases");y(f5A,"Type$1");N0=f5A;y(IAA,"compileList");y(m5A,"compileMap");y(iG,"Schema$1");iG.prototype.extend=y(function(e){var t=[],r=[];if(e instanceof N0)r.push(e);else if(Array.isArray(e))r=r.concat(e);else if(e&&(Array.isArray(e.implicit)||Array.isArray(e.explicit))){if(e.implicit)t=t.concat(e.implicit);if(e.explicit)r=r.concat(e.explicit)}else throw new tl("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");t.forEach(function(u){if(!(u instanceof N0))throw new tl("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(u.loadKind&&u.loadKind!=="scalar")throw new tl("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(u.multi)throw new tl("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(u){if(!(u instanceof N0))throw new tl("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(iG.prototype);return i.implicit=(this.implicit||[]).concat(t),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=IAA(i,"implicit"),i.compiledExplicit=IAA(i,"explicit"),i.compiledTypeMap=m5A(i.compiledImplicit,i.compiledExplicit),i},"extend");Out=iG,Put=new N0("tag:yaml.org,2002:str",{kind:"scalar",construct:y(function(A){return A!==null?A:""},"construct")}),_ut=new N0("tag:yaml.org,2002:seq",{kind:"sequence",construct:y(function(A){return A!==null?A:[]},"construct")}),Wut=new N0("tag:yaml.org,2002:map",{kind:"mapping",construct:y(function(A){return A!==null?A:{}},"construct")}),qut=new Out({explicit:[Put,_ut,Wut]});y(D5A,"resolveYamlNull");y(y5A,"constructYamlNull");y(w5A,"isNull");zut=new N0("tag:yaml.org,2002:null",{kind:"scalar",resolve:D5A,construct:y5A,predicate:w5A,represent:{canonical:y(function(){return"~"},"canonical"),lowercase:y(function(){return"null"},"lowercase"),uppercase:y(function(){return"NULL"},"uppercase"),camelcase:y(function(){return"Null"},"camelcase"),empty:y(function(){return""},"empty")},defaultStyle:"lowercase"});y(b5A,"resolveYamlBoolean");y(v5A,"constructYamlBoolean");y(k5A,"isBoolean");Zut=new N0("tag:yaml.org,2002:bool",{kind:"scalar",resolve:b5A,construct:v5A,predicate:k5A,represent:{lowercase:y(function(A){return A?"true":"false"},"lowercase"),uppercase:y(function(A){return A?"TRUE":"FALSE"},"uppercase"),camelcase:y(function(A){return A?"True":"False"},"camelcase")},defaultStyle:"lowercase"});y(F5A,"isHexCode");y(x5A,"isOctCode");y(S5A,"isDecCode");y(L5A,"resolveYamlInteger");y(R5A,"constructYamlInteger");y(N5A,"isInteger");Vut=new N0("tag:yaml.org,2002:int",{kind:"scalar",resolve:L5A,construct:R5A,predicate:N5A,represent:{binary:y(function(A){return A>=0?"0b"+A.toString(2):"-0b"+A.toString(2).slice(1)},"binary"),octal:y(function(A){return A>=0?"0o"+A.toString(8):"-0o"+A.toString(8).slice(1)},"octal"),decimal:y(function(A){return A.toString(10)},"decimal"),hexadecimal:y(function(A){return A>=0?"0x"+A.toString(16).toUpperCase():"-0x"+A.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),jut=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");y(G5A,"resolveYamlFloat");y(U5A,"constructYamlFloat");Xut=/^[-+]?[0-9]+e/;y(M5A,"representYamlFloat");y(T5A,"isFloat");$ut=new N0("tag:yaml.org,2002:float",{kind:"scalar",resolve:G5A,construct:U5A,predicate:T5A,represent:M5A,defaultStyle:"lowercase"}),Y5A=qut.extend({implicit:[zut,Zut,Vut,$ut]}),Aat=Y5A,H5A=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),K5A=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");y(J5A,"resolveYamlTimestamp");y(O5A,"constructYamlTimestamp");y(P5A,"representYamlTimestamp");eat=new N0("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:J5A,construct:O5A,instanceOf:Date,represent:P5A});y(_5A,"resolveYamlMerge");tat=new N0("tag:yaml.org,2002:merge",{kind:"scalar",resolve:_5A});y(W5A,"resolveYamlBinary");y(q5A,"constructYamlBinary");y(z5A,"representYamlBinary");y(Z5A,"isBinary");rat=new N0("tag:yaml.org,2002:binary",{kind:"scalar",resolve:W5A,construct:q5A,predicate:Z5A,represent:z5A}),iat=Object.prototype.hasOwnProperty,uat=Object.prototype.toString;y(V5A,"resolveYamlOmap");y(j5A,"constructYamlOmap");aat=new N0("tag:yaml.org,2002:omap",{kind:"sequence",resolve:V5A,construct:j5A}),nat=Object.prototype.toString;y(X5A,"resolveYamlPairs");y($5A,"constructYamlPairs");oat=new N0("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:X5A,construct:$5A}),sat=Object.prototype.hasOwnProperty;y(AbA,"resolveYamlSet");y(ebA,"constructYamlSet");lat=new N0("tag:yaml.org,2002:set",{kind:"mapping",resolve:AbA,construct:ebA}),tbA=Aat.extend({implicit:[eat,tat],explicit:[rat,aat,oat,lat]}),pQ=Object.prototype.hasOwnProperty,cat=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Cat=/[\x85\u2028\u2029]/,Bat=/[,\[\]\{\}]/,ubA=/^(?:!|!!|![a-z\-]+!)$/i,abA=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;y(hAA,"_class");y(sC,"is_EOL");y(QQ,"is_WHITE_SPACE");y(gs,"is_WS_OR_EOL");y(uf,"is_FLOW_INDICATOR");y(nbA,"fromHexCode");y(obA,"escapedHexLen");y(sbA,"fromDecimalCode");y(QAA,"simpleEscapeSequence");y(lbA,"charFromCodepoint");y(GAA,"setProperty");gbA=Array(256),cbA=Array(256);for(rf=0;rf<256;rf++)gbA[rf]=QAA(rf)?1:0,cbA[rf]=QAA(rf);y(CbA,"State$1");y(UAA,"generateError");y(Ar,"throwError");y(sv,"throwWarning");C5A={YAML:y(function(e,t,r){var i,u,a;if(e.version!==null)Ar(e,"duplication of %YAML directive");if(r.length!==1)Ar(e,"YAML directive accepts exactly one argument");if(i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null)Ar(e,"ill-formed argument of the YAML directive");if(u=parseInt(i[1],10),a=parseInt(i[2],10),u!==1)Ar(e,"unacceptable YAML version of the document");if(e.version=r[0],e.checkLineBreaks=a<2,a!==1&&a!==2)sv(e,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:y(function(e,t,r){var i,u;if(r.length!==2)Ar(e,"TAG directive accepts exactly two arguments");if(i=r[0],u=r[1],!ubA.test(i))Ar(e,"ill-formed tag handle (first argument) of the TAG directive");if(pQ.call(e.tagMap,i))Ar(e,'there is a previously declared suffix for "'+i+'" tag handle');if(!abA.test(u))Ar(e,"ill-formed tag prefix (second argument) of the TAG directive");try{u=decodeURIComponent(u)}catch(a){Ar(e,"tag prefix is malformed: "+u)}e.tagMap[i]=u},"handleTagDirective")};y(oI,"captureSegment");y(pAA,"mergeMappings");y(af,"storeMappingPair");y(lG,"readLineBreak");y(Cn,"skipSeparationSpace");y(Cv,"testDocumentSeparator");y(gG,"writeFoldedLines");y(BbA,"readPlainScalar");y(EbA,"readSingleQuotedScalar");y(dbA,"readDoubleQuotedScalar");y(IbA,"readFlowCollection");y(hbA,"readBlockScalar");y(fAA,"readBlockSequence");y(QbA,"readBlockMapping");y(pbA,"readTagProperty");y(fbA,"readAnchorProperty");y(mbA,"readAlias");y(nf,"composeNode");y(DbA,"readDocument");y(MAA,"loadDocuments");y(ybA,"loadAll$1");y(wbA,"load$1");Eat=ybA,dat=wbA,bbA={loadAll:Eat,load:dat},vbA=Object.prototype.toString,kbA=Object.prototype.hasOwnProperty,G0={};G0[0]="\\0";G0[7]="\\a";G0[8]="\\b";G0[9]="\\t";G0[10]="\\n";G0[11]="\\v";G0[12]="\\f";G0[13]="\\r";G0[27]="\\e";G0[34]="\\\"";G0[92]="\\\\";G0[133]="\\N";G0[160]="\\_";G0[8232]="\\L";G0[8233]="\\P";Rat=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],Nat=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;y(NbA,"compileStyleMap");y(GbA,"encodeHex");y(UbA,"State");y(DAA,"indentString");y(oG,"generateNextLine");y(MbA,"testImplicitResolving");y(cv,"isWhitespace");y(KD,"isPrintable");y(yAA,"isNsCharOrWhitespace");y(wAA,"isPlainSafe");y(TbA,"isPlainSafeFirst");y(YbA,"isPlainSafeLast");y(YD,"codePointAt");y(YAA,"needIndentIndicator");y(ObA,"chooseScalarStyle");y(PbA,"writeScalar");y(vAA,"blockHeader");y(kAA,"dropEndingNewline");y(_bA,"foldString");y(FAA,"foldLine");y(WbA,"escapeString");y(qbA,"writeFlowSequence");y(xAA,"writeBlockSequence");y(zbA,"writeFlowMapping");y(ZbA,"writeBlockMapping");y(SAA,"detectType");y($B,"writeNode");y(VbA,"getDuplicateReferences");y(sG,"inspectNode");y(jbA,"dump$1");Uat=jbA,Mat={dump:Uat};y(cG,"renamed");fQ=Y5A,mQ=bbA.load,Bvr=bbA.loadAll,Evr=Mat.dump,dvr=cG("safeLoad","load"),Ivr=cG("safeLoadAll","loadAll"),hvr=cG("safeDump","dump");/*! Bundled license information:
js-yaml/dist/js-yaml.mjs:
(*! js-yaml 4.1.1 https://github.com/nodeca/js-yaml @license MIT *)
*/});var XbA,sf,Tat,Bv,wt,St,Yat;var r0=_(()=>{rr();Nt();XbA=y((A)=>{let{handDrawnSeed:e}=OA();return{fill:A,hachureAngle:120,hachureGap:4,fillWeight:2,roughness:0.7,stroke:A,seed:e}},"solidStateFill"),sf=y((A)=>{let e=Tat([...A.cssCompiledStyles||[],...A.cssStyles||[],...A.labelStyle||[]]);return{stylesMap:e,stylesArray:[...e]}},"compileStyles"),Tat=y((A)=>{let e=new Map;return A.forEach((t)=>{let[r,i]=t.split(":");e.set(r.trim(),i?.trim())}),e},"styles2Map"),Bv=y((A)=>A==="color"||A==="font-size"||A==="font-family"||A==="font-weight"||A==="font-style"||A==="text-decoration"||A==="text-align"||A==="text-transform"||A==="line-height"||A==="letter-spacing"||A==="word-spacing"||A==="text-shadow"||A==="text-overflow"||A==="white-space"||A==="word-wrap"||A==="word-break"||A==="overflow-wrap"||A==="hyphens","isLabelStyle"),wt=y((A)=>{let{stylesArray:e}=sf(A),t=[],r=[],i=[],u=[];return e.forEach((a)=>{let n=a[0];if(Bv(n))t.push(a.join(":")+" !important");else{if(r.push(a.join(":")+" !important"),n.includes("stroke"))i.push(a.join(":")+" !important");if(n==="fill")u.push(a.join(":")+" !important")}}),{labelStyles:t.join(";"),nodeStyles:r.join(";"),stylesArray:e,borderStyles:i,backgroundStyles:u}},"styles2String"),St=y((A,e)=>{let{themeVariables:t,handDrawnSeed:r}=OA(),{nodeBorder:i,mainBkg:u}=t,{stylesMap:a}=sf(A);return Object.assign({roughness:0.7,fill:a.get("fill")||u,fillStyle:"hachure",fillWeight:4,hachureGap:5.2,stroke:a.get("stroke")||i,seed:r,strokeWidth:a.get("stroke-width")?.replace("px","")||1.3,fillLineDash:[0,0],strokeLineDash:Yat(a.get("stroke-dasharray"))},e)},"userNodeOverrides"),Yat=y((A)=>{if(!A)return[0,0];let e=A.trim().split(/\s+/).map(Number);if(e.length===1){let i=isNaN(e[0])?0:e[0];return[i,i]}let t=isNaN(e[0])?0:e[0],r=isNaN(e[1])?0:e[1];return[t,r]},"getStrokeDashArray")});var evA=wu(function($bA){Object.defineProperty($bA,"__esModule",{value:!0});$bA.BLANK_URL=$bA.relativeFirstCharacters=$bA.whitespaceEscapeCharsRegex=$bA.urlSchemeRegex=$bA.ctrlCharactersRegex=$bA.htmlCtrlEntityRegex=$bA.htmlEntitiesRegex=$bA.invalidProtocolRegex=void 0;$bA.invalidProtocolRegex=/^([^\w]*)(javascript|data|vbscript)/im;$bA.htmlEntitiesRegex=/&#(\w+)(^\w|;)?/g;$bA.htmlCtrlEntityRegex=/&(newline|tab);/gi;$bA.ctrlCharactersRegex=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim;$bA.urlSchemeRegex=/^.+(:|&colon;)/gim;$bA.whitespaceEscapeCharsRegex=/(\\|%5[cC])((%(6[eE]|72|74))|[nrt])/g;$bA.relativeFirstCharacters=[".","/"];$bA.BLANK_URL="about:blank"});var JD=wu(function(rvA){Object.defineProperty(rvA,"__esModule",{value:!0});rvA.sanitizeUrl=Vat;var U0=evA();function qat(A){return U0.relativeFirstCharacters.indexOf(A[0])>-1}function zat(A){var e=A.replace(U0.ctrlCharactersRegex,"");return e.replace(U0.htmlEntitiesRegex,function(t,r){return String.fromCharCode(r)})}function Zat(A){return URL.canParse(A)}function tvA(A){try{return decodeURIComponent(A)}catch(e){return A}}function Vat(A){if(!A)return U0.BLANK_URL;var e,t=tvA(A.trim());do t=zat(t).replace(U0.htmlCtrlEntityRegex,"").replace(U0.ctrlCharactersRegex,"").replace(U0.whitespaceEscapeCharsRegex,"").trim(),t=tvA(t),e=t.match(U0.ctrlCharactersRegex)||t.match(U0.htmlEntitiesRegex)||t.match(U0.htmlCtrlEntityRegex)||t.match(U0.whitespaceEscapeCharsRegex);while(e&&e.length>0);var r=t;if(!r)return U0.BLANK_URL;if(qat(r))return r;var i=r.trimStart(),u=i.match(U0.urlSchemeRegex);if(!u)return r;var a=u[0].toLowerCase().trim();if(U0.invalidProtocolRegex.test(a))return U0.BLANK_URL;var n=i.replace(/\\/g,"/");if(a==="mailto:"||a.includes("://"))return n;if(a==="http:"||a==="https:"){if(!Zat(n))return U0.BLANK_URL;var o=new URL(n);return o.protocol=o.protocol.toLowerCase(),o.hostname=o.hostname.toLowerCase(),o.toString()}return n}});function lf(A,e){if(typeof A!=="function"||e!=null&&typeof e!=="function")throw TypeError("Expected a function");let t=function(...r){let i=e?e.apply(this,r):r[0],u=t.cache;if(u.has(i))return u.get(i);let a=A.apply(this,r);return t.cache=u.set(i,a)||u,a};return t.cache=new(lf.Cache||Map),t}var ivA=_(()=>{lf.Cache=Map});function DQ(A){return A==null||typeof A!=="object"&&typeof A!=="function"}var Ev=()=>{};function sI(A){if(A==null)return A===void 0?"[object Undefined]":"[object Null]";return Object.prototype.toString.call(A)}var dv=()=>{};var CG="[object RegExp]",OD="[object String]",PD="[object Number]",_D="[object Boolean]",WD="[object Arguments]",BG="[object Symbol]",EG="[object Date]",dG="[object Map]",IG="[object Set]",hG="[object Array]",QG="[object ArrayBuffer]",pG="[object Object]",fG="[object DataView]",mG="[object Uint8Array]",DG="[object Uint8ClampedArray]",yG="[object Uint16Array]",wG="[object Uint32Array]",bG="[object Int8Array]",vG="[object Int16Array]",kG="[object Int32Array]",FG="[object Float32Array]",xG="[object Float64Array]";var SG=()=>{};function uvA(A){return Array.isArray(A)}var avA=()=>{};function qD(A){return ArrayBuffer.isView(A)&&!(A instanceof DataView)}var LG=()=>{};function yQ(A){return qD(A)}var RG=_(()=>{LG()});function KAA(A){if(DQ(A))return A;let e=sI(A);if(!Xat(A))return{};if(uvA(A)){let r=Array.from(A);if(A.length>0&&typeof A[0]==="string"&&Object.hasOwn(A,"index"))r.index=A.index,r.input=A.input;return r}if(yQ(A)){let r=A;return new r.constructor(r.buffer,r.byteOffset,r.length)}if(e==="[object ArrayBuffer]")return new ArrayBuffer(A.byteLength);if(e==="[object DataView]"){let r=A,{buffer:i,byteOffset:u,byteLength:a}=r,n=new ArrayBuffer(a),o=new Uint8Array(i,u,a);return new Uint8Array(n).set(o),new DataView(n)}if(e==="[object Boolean]"||e==="[object Number]"||e==="[object String]"){let i=new A.constructor(A.valueOf());if(e==="[object String]")Ant(i,A);else HAA(i,A);return i}if(e==="[object Date]")return new Date(Number(A));if(e==="[object RegExp]"){let r=A,i=new RegExp(r.source,r.flags);return i.lastIndex=r.lastIndex,i}if(e==="[object Symbol]")return Object(Symbol.prototype.valueOf.call(A));if(e==="[object Map]"){let r=A,i=new Map;return r.forEach((u,a)=>{i.set(a,u)}),i}if(e==="[object Set]"){let r=A,i=new Set;return r.forEach((u)=>{i.add(u)}),i}if(e==="[object Arguments]"){let r=A,i={};return HAA(i,r),i.length=r.length,i[Symbol.iterator]=r[Symbol.iterator],i}let t={};return ent(t,A),HAA(t,A),$at(t,A),t}function Xat(A){switch(sI(A)){case WD:case hG:case QG:case fG:case _D:case EG:case FG:case xG:case bG:case vG:case kG:case dG:case PD:case pG:case CG:case IG:case OD:case BG:case mG:case DG:case yG:case wG:return!0;default:return!1}}function HAA(A,e){for(let t in e)if(Object.hasOwn(e,t))A[t]=e[t]}function $at(A,e){let t=Object.getOwnPropertySymbols(e);for(let r=0;r<t.length;r++){let i=t[r];if(Object.prototype.propertyIsEnumerable.call(e,i))A[i]=e[i]}}function Ant(A,e){let t=e.valueOf().length;for(let r in e)if(Object.hasOwn(e,r)&&(Number.isNaN(Number(r))||Number(r)>=t))A[r]=e[r]}function ent(A,e){let t=Object.getPrototypeOf(e);if(t!==null){if(typeof e.constructor==="function")Object.setPrototypeOf(A,t)}}var nvA=_(()=>{Ev();dv();SG();avA();RG()});function ovA(){}var svA=()=>{};function lvA(A){if(DQ(A))return A;if(Array.isArray(A)||qD(A)||A instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&A instanceof SharedArrayBuffer)return A.slice(0);let e=Object.getPrototypeOf(A);if(e==null)return Object.assign(Object.create(e),A);let t=e.constructor;if(A instanceof Date||A instanceof Map||A instanceof Set)return new t(A);if(A instanceof RegExp){let r=new t(A);return r.lastIndex=A.lastIndex,r}if(A instanceof DataView)return new t(A.buffer.slice(0));if(A instanceof Error){let r;if(A instanceof AggregateError)r=new t(A.errors,A.message,{cause:A.cause});else r=new t(A.message,{cause:A.cause});return r.stack=A.stack,Object.assign(r,A),r}if(typeof File<"u"&&A instanceof File)return new t([A],A.name,{type:A.type,lastModified:A.lastModified});if(typeof A==="object")return Object.assign(Object.create(e),A);return A}var gvA=_(()=>{Ev();LG()});function NG(A){return Object.getOwnPropertySymbols(A).filter((e)=>Object.prototype.propertyIsEnumerable.call(A,e))}var JAA=()=>{};var OAA;var cvA=_(()=>{OAA=typeof globalThis==="object"&&globalThis||typeof window==="object"&&window||typeof self==="object"&&self||typeof global==="object"&&global||function(){return this}()});function zD(A){return typeof OAA.Buffer<"u"&&OAA.Buffer.isBuffer(A)}var GG=_(()=>{cvA()});function CvA(A){return A==="__proto__"}var BvA=()=>{};function UG(A){if(typeof A!=="object")return!1;if(A==null)return!1;if(Object.getPrototypeOf(A)===null)return!0;if(Object.prototype.toString.call(A)!=="[object Object]"){let t=A[Symbol.toStringTag];if(t==null)return!1;if(!Object.getOwnPropertyDescriptor(A,Symbol.toStringTag)?.writable)return!1;return A.toString()===`[object ${t}]`}let e=A;while(Object.getPrototypeOf(e)!==null)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(A)===e}var EvA=()=>{};function dvA(A,e){return ZD(A,void 0,A,new Map,e)}function ZD(A,e,t,r=new Map,i=void 0){let u=i?.(A,e,t,r);if(u!==void 0)return u;if(DQ(A))return A;if(r.has(A))return r.get(A);if(Array.isArray(A)){let a=Array(A.length);r.set(A,a);for(let n=0;n<A.length;n++)a[n]=ZD(A[n],n,t,r,i);if(Object.hasOwn(A,"index"))a.index=A.index;if(Object.hasOwn(A,"input"))a.input=A.input;return a}if(A instanceof Date)return new Date(A.getTime());if(A instanceof RegExp){let a=new RegExp(A.source,A.flags);return a.lastIndex=A.lastIndex,a}if(A instanceof Map){let a=new Map;r.set(A,a);for(let[n,o]of A)a.set(n,ZD(o,n,t,r,i));return a}if(A instanceof Set){let a=new Set;r.set(A,a);for(let n of A)a.add(ZD(n,void 0,t,r,i));return a}if(zD(A))return A.subarray();if(qD(A)){let a=new(Object.getPrototypeOf(A)).constructor(A.length);r.set(A,a);for(let n=0;n<A.length;n++)a[n]=ZD(A[n],n,t,r,i);return a}if(A instanceof ArrayBuffer||typeof SharedArrayBuffer<"u"&&A instanceof SharedArrayBuffer)return A.slice(0);if(A instanceof DataView){let a=new DataView(A.buffer.slice(0),A.byteOffset,A.byteLength);return r.set(A,a),Wg(a,A,t,r,i),a}if(typeof File<"u"&&A instanceof File){let a=new File([A],A.name,{type:A.type});return r.set(A,a),Wg(a,A,t,r,i),a}if(typeof Blob<"u"&&A instanceof Blob){let a=new Blob([A],{type:A.type});return r.set(A,a),Wg(a,A,t,r,i),a}if(A instanceof Error){let a=structuredClone(A);return r.set(A,a),a.message=A.message,a.name=A.name,a.stack=A.stack,a.cause=A.cause,a.constructor=A.constructor,Wg(a,A,t,r,i),a}if(A instanceof Boolean){let a=new Boolean(A.valueOf());return r.set(A,a),Wg(a,A,t,r,i),a}if(A instanceof Number){let a=new Number(A.valueOf());return r.set(A,a),Wg(a,A,t,r,i),a}if(A instanceof String){let a=new String(A.valueOf());return r.set(A,a),Wg(a,A,t,r,i),a}if(typeof A==="object"&&tnt(A)){let a=Object.create(Object.getPrototypeOf(A));return r.set(A,a),Wg(a,A,t,r,i),a}return A}function Wg(A,e,t=A,r,i){let u=[...Object.keys(e),...NG(e)];for(let a=0;a<u.length;a++){let n=u[a],o=Object.getOwnPropertyDescriptor(A,n);if(o==null||o.writable)A[n]=ZD(e[n],n,t,r,i)}}function tnt(A){switch(sI(A)){case WD:case hG:case QG:case fG:case _D:case EG:case FG:case xG:case bG:case vG:case kG:case dG:case PD:case pG:case CG:case IG:case OD:case BG:case mG:case DG:case yG:case wG:return!0;default:return!1}}var IvA=_(()=>{Ev();LG();JAA();dv();SG();GG()});function hvA(A,e){return dvA(A,(t,r,i,u)=>{let a=e?.(t,r,i,u);if(a!==void 0)return a;if(typeof A!=="object")return;if(sI(A)==="[object Object]"&&typeof A.constructor!=="function"){let n={};return u.set(A,n),Wg(n,A,i,u),n}switch(Object.prototype.toString.call(A)){case PD:case OD:case _D:{let n=new A.constructor(A?.valueOf());return Wg(n,A),n}case WD:{let n={};return Wg(n,A),n.length=A.length,n[Symbol.iterator]=A[Symbol.iterator],n}default:return}})}var QvA=_(()=>{dv();SG();IvA()});function PAA(A){return hvA(A)}var pvA=_(()=>{QvA()});function Iv(A){return A!==null&&typeof A==="object"&&sI(A)==="[object Arguments]"}var _AA=_(()=>{dv()});function hv(A){return typeof A==="object"&&A!==null}var WAA=()=>{};function fvA(A){return Number.isSafeInteger(A)&&A>=0}var mvA=()=>{};function MG(A){return A!=null&&typeof A!=="function"&&fvA(A.length)}var qAA=_(()=>{mvA()});function DvA(A){return hv(A)&&MG(A)}var yvA=_(()=>{qAA();WAA()});function wvA(A,...e){let t=e.slice(0,-1),r=e[e.length-1],i=A;for(let u=0;u<t.length;u++){let a=t[u];i=TG(i,a,r,new Map)}return i}function TG(A,e,t,r){if(DQ(A))A=Object(A);if(e==null||typeof e!=="object")return A;if(r.has(e))return lvA(r.get(e));if(r.set(e,A),Array.isArray(e)){e=e.slice();for(let u=0;u<e.length;u++)if(!(u in e))e[u]=void 0}let i=[...Object.keys(e),...NG(e)];for(let u=0;u<i.length;u++){let a=i[u];if(CvA(a))continue;let n=e[a],o=A[a];if(Iv(n))n={...n};if(Iv(o))o={...o};if(zD(n))n=PAA(n);if(Array.isArray(n))if(Array.isArray(o)){let l=[],g=Reflect.ownKeys(o);for(let C=0;C<g.length;C++){let B=g[C];l[B]=o[B]}o=l}else if(DvA(o)){let l=[];for(let g=0;g<o.length;g++)l[g]=o[g];o=l}else o=[];let s=t(o,n,a,A,e,r);if(s!==void 0)A[a]=s;else if(Array.isArray(n))A[a]=TG(o,n,t,r);else if(hv(o)&&hv(n)&&(UG(o)||UG(n)||yQ(o)||yQ(n)))A[a]=TG(o,n,t,r);else if(o==null&&UG(n))A[a]=TG({},n,t,r);else if(o==null&&yQ(n))A[a]=PAA(n);else if(o===void 0||n!==void 0)A[a]=n}return A}var bvA=_(()=>{Ev();gvA();JAA();GG();BvA();EvA();pvA();_AA();WAA();yvA();RG()});function zAA(A,...e){return wvA(A,...e,ovA)}var vvA=_(()=>{svA();bvA()});function kvA(A){let e=A?.constructor;return A===(typeof e==="function"?e.prototype:Object.prototype)}var FvA=()=>{};function YG(A){if(A==null)return!0;if(MG(A)){if(typeof A.splice!=="function"&&typeof A!=="string"&&!zD(A)&&!yQ(A)&&!Iv(A))return!1;return A.length===0}if(typeof A==="object"||typeof A==="function"){if(A instanceof Map||A instanceof Set)return A.size===0;let e=Object.keys(A);if(kvA(A))return e.filter((t)=>t!=="constructor").length===0;return e.length===0}return!0}var xvA=_(()=>{GG();qAA();_AA();FvA();RG()});var HG=_(()=>{ivA();nvA();vvA();xvA()});function JG(A,e){if(!A)return e;let t=`curve${A.charAt(0).toUpperCase()+A.slice(1)}`;return rnt[t]??e}function UvA(A,e){let t=A.trim();if(!t)return;if(e.securityLevel!=="loose")return RvA.sanitizeUrl(t);return t}function VAA(A,e){if(!A||!e)return 0;return Math.sqrt(Math.pow(e.x-A.x,2)+Math.pow(e.y-A.y,2))}function MvA(A){let e,t=0;A.forEach((i)=>{t+=VAA(i,e),e=i});let r=t/2;return jAA(A,r)}function TvA(A){if(A.length===1)return A[0];return MvA(A)}function YvA(A,e,t){let r=structuredClone(t);if(sA.info("our points",r),e!=="start_left"&&e!=="start_right")r.reverse();let i=25+A,u=jAA(r,i),a=10+A*0.5,n=Math.atan2(r[0].y-u.y,r[0].x-u.x),o={x:0,y:0};if(e==="start_left")o.x=Math.sin(n+Math.PI)*a+(r[0].x+u.x)/2,o.y=-Math.cos(n+Math.PI)*a+(r[0].y+u.y)/2;else if(e==="end_right")o.x=Math.sin(n-Math.PI)*a+(r[0].x+u.x)/2-5,o.y=-Math.cos(n-Math.PI)*a+(r[0].y+u.y)/2-5;else if(e==="end_left")o.x=Math.sin(n)*a+(r[0].x+u.x)/2-5,o.y=-Math.cos(n)*a+(r[0].y+u.y)/2-5;else o.x=Math.sin(n)*a+(r[0].x+u.x)/2,o.y=-Math.cos(n)*a+(r[0].y+u.y)/2;return o}function OG(A){let e="",t="";for(let r of A)if(r!==void 0)if(r.startsWith("color:")||r.startsWith("text-align:"))t=t+r+";";else e=e+r+";";return{style:e,labelStyle:t}}function HvA(A){let e="",t="0123456789abcdef",r=t.length;for(let i=0;i<A;i++)e+=t.charAt(Math.floor(Math.random()*r));return e}function Qv(A,e){return pv(A,e).height}function i0(A,e){return pv(A,e).width}function PG(A){return"str"in A}function si(A,e){return zAA({},A,e)}function Sn(A){return A??null}function JvA(A,e){let t=Math.round(A.x),r=Math.round(A.y),i=e.replace(/(\d+\.\d+)/g,(u)=>Math.round(parseFloat(u)).toString());return i.includes(t.toString())||i.includes(r.toString())}var RvA,ZAA="​",rnt,int,unt,NvA,GvA,ant,nnt,SvA,jAA,ont,LvA=0,XAA,$AA,snt,lnt,gf,gnt,pv,cnt,KG,Cnt,Bnt,rl,Jt,KvA,eg,AE;var ai=_(()=>{rr();ir();Nt();Pr();HG();RvA=yu(JD(),1),rnt={curveBasis:oC,curveBasisClosed:qN,curveBasisOpen:zN,curveBumpX:jb,curveBumpY:Xb,curveBundle:uAA,curveCardinalClosed:aAA,curveCardinalOpen:oAA,curveCardinal:ev,curveCatmullRomClosed:lAA,curveCatmullRomOpen:gAA,curveCatmullRom:iv,curveLinear:XB,curveLinearClosed:$N,curveMonotoneX:uv,curveMonotoneY:av,curveNatural:UD,curveStep:MD,curveStepAfter:ov,curveStepBefore:nv},int=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,unt=y(function(A,e){let t=NvA(A,/(?:init\b)|(?:initialize\b)/),r={};if(Array.isArray(t)){let a=t.map((n)=>n.args);cb(a),r=Ea(r,[...a])}else r=t.args;if(!r)return;let i=Eb(A,e),u="config";if(r[u]!==void 0){if(i==="flowchart-v2")i="flowchart";r[i]=r[u],delete r[u]}return r},"detectInit"),NvA=y(function(A,e=null){try{let t=new RegExp(`[%]{2}(?![{]${int.source})(?=[}][%]{2}).*
`,"ig");A=A.trim().replace(t,"").replace(/'/gm,'"'),sA.debug(`Detecting diagram directive${e!==null?" type:"+e:""} based on the text:${A}`);let r,i=[];while((r=sD.exec(A))!==null){if(r.index===sD.lastIndex)sD.lastIndex++;if(r&&!e||e&&r[1]?.match(e)||e&&r[2]?.match(e)){let u=r[1]?r[1]:r[2],a=r[3]?r[3].trim():r[4]?JSON.parse(r[4].trim()):null;i.push({type:u,args:a})}}if(i.length===0)return{type:A,args:null};return i.length===1?i[0]:i}catch(t){return sA.error(`ERROR: ${t.message} - Unable to parse directive type: '${e}' based on the text: '${A}'`),{type:void 0,args:null}}},"detectDirective"),GvA=y(function(A){return A.replace(sD,"")},"removeDirectives"),ant=y(function(A,e){for(let[t,r]of e.entries())if(r.match(A))return t;return-1},"isSubstringInArray");y(JG,"interpolateToCurve");y(UvA,"formatUrl");nnt=y((A,...e)=>{let t=A.split("."),r=t.length-1,i=t[r],u=window;for(let a=0;a<r;a++)if(u=u[t[a]],!u){sA.error(`Function name: ${A} not found in window`);return}u[i](...e)},"runFunc");y(VAA,"distance");y(MvA,"traverseEdge");y(TvA,"calcLabelPosition");SvA=y((A,e=2)=>{let t=Math.pow(10,e);return Math.round(A*t)/t},"roundNumber"),jAA=y((A,e)=>{let t=void 0,r=e;for(let i of A){if(t){let u=VAA(i,t);if(u===0)return t;if(u<r)r-=u;else{let a=r/u;if(a<=0)return t;if(a>=1)return{x:i.x,y:i.y};if(a>0&&a<1)return{x:SvA((1-a)*t.x+a*i.x,5),y:SvA((1-a)*t.y+a*i.y,5)}}}t=i}throw Error("Could not find a suitable point for the given distance")},"calculatePoint"),ont=y((A,e,t)=>{if(sA.info(`our points ${JSON.stringify(e)}`),e[0]!==t)e=e.reverse();let i=jAA(e,25),u=A?10:5,a=Math.atan2(e[0].y-i.y,e[0].x-i.x),n={x:0,y:0};return n.x=Math.sin(a)*u+(e[0].x+i.x)/2,n.y=-Math.cos(a)*u+(e[0].y+i.y)/2,n},"calcCardinalityPosition");y(YvA,"calcTerminalLabelPosition");y(OG,"getStylesFromArray");XAA=y(()=>(LvA++,"id-"+Math.random().toString(36).substr(2,12)+"-"+LvA),"generateId");y(HvA,"makeRandomHex");$AA=y((A)=>HvA(A.length),"random"),snt=y(function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0,text:""}},"getTextObj"),lnt=y(function(A,e){let t=e.text.replace(_e.lineBreakRegex," "),[,r]=rl(e.fontSize),i=A.append("text");if(i.attr("x",e.x),i.attr("y",e.y),i.style("text-anchor",e.anchor),i.style("font-family",e.fontFamily),i.style("font-size",r),i.style("font-weight",e.fontWeight),i.attr("fill",e.fill),e.class!==void 0)i.attr("class",e.class);let u=i.append("tspan");return u.attr("x",e.x+e.textMargin*2),u.attr("fill",e.fill),u.text(t),i},"drawSimpleText"),gf=lf((A,e,t)=>{if(!A)return A;if(t=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"<br/>"},t),_e.lineBreakRegex.test(A))return A;let r=A.split(" ").filter(Boolean),i=[],u="";return r.forEach((a,n)=>{let o=i0(`${a} `,t),s=i0(u,t);if(o>e){let{hyphenatedStrings:C,remainingWord:B}=gnt(a,e,"-",t);i.push(u,...C),u=B}else if(s+o>=e)i.push(u),u=a;else u=[u,a].filter(Boolean).join(" ");if(n+1===r.length)i.push(u)}),i.filter((a)=>a!=="").join(t.joinWith)},(A,e,t)=>`${A}${e}${t.fontSize}${t.fontWeight}${t.fontFamily}${t.joinWith}`),gnt=lf((A,e,t="-",r)=>{r=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},r);let i=[...A],u=[],a="";return i.forEach((n,o)=>{let s=`${a}${n}`;if(i0(s,r)>=e){let g=o+1,C=i.length===g,B=`${s}${t}`;u.push(C?s:B),a=""}else a=s}),{hyphenatedStrings:u,remainingWord:a}},(A,e,t="-",r)=>`${A}${e}${t}${r.fontSize}${r.fontWeight}${r.fontFamily}`);y(Qv,"calculateTextHeight");y(i0,"calculateTextWidth");pv=lf((A,e)=>{let{fontSize:t=12,fontFamily:r="Arial",fontWeight:i=400}=e;if(!A)return{width:0,height:0};let[,u]=rl(t),a=["sans-serif",r],n=A.split(_e.lineBreakRegex),o=[],s=Qe("body");if(!s.remove)return{width:0,height:0,lineHeight:0};let l=s.append("svg");for(let C of a){let B=0,E={width:0,height:0,lineHeight:0};for(let d of n){let I=snt();I.text=d||ZAA;let h=lnt(l,I).style("font-size",u).style("font-weight",i).style("font-family",C),Q=(h._groups||h)[0][0].getBBox();if(Q.width===0&&Q.height===0)throw Error("svg element not in render tree");E.width=Math.round(Math.max(E.width,Q.width)),B=Math.round(Q.height),E.height+=B,E.lineHeight=Math.round(Math.max(E.lineHeight,B))}o.push(E)}l.remove();let g=isNaN(o[1].height)||isNaN(o[1].width)||isNaN(o[1].lineHeight)||o[0].height>o[1].height&&o[0].width>o[1].width&&o[0].lineHeight>o[1].lineHeight?0:1;return o[g]},(A,e)=>`${A}${e.fontSize}${e.fontWeight}${e.fontFamily}`),cnt=class{constructor(A=!1,e){this.count=0,this.count=e?e.length:0,this.next=A?()=>this.count++:()=>Date.now()}static{y(this,"InitIDGenerator")}},Cnt=y(function(A){return KG=KG||document.createElement("div"),A=escape(A).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),KG.innerHTML=A,unescape(KG.textContent)},"entityDecode");y(PG,"isDetailedError");Bnt=y((A,e,t,r)=>{if(!r)return;let i=A.node()?.getBBox();if(!i)return;A.append("text").text(r).attr("text-anchor","middle").attr("x",i.x+i.width/2).attr("y",-t).attr("class",e)},"insertTitle"),rl=y((A)=>{if(typeof A==="number")return[A,A+"px"];let e=parseInt(A??"",10);if(Number.isNaN(e))return[void 0,void 0];else if(A===String(e))return[e,A+"px"];else return[e,A]},"parseFontSize");y(si,"cleanAndMerge");Jt={assignWithDepth:Ea,wrapLabel:gf,calculateTextHeight:Qv,calculateTextWidth:i0,calculateTextDimensions:pv,cleanAndMerge:si,detectInit:unt,detectDirective:NvA,isSubstringInArray:ant,interpolateToCurve:JG,calcLabelPosition:TvA,calcCardinalityPosition:ont,calcTerminalLabelPosition:YvA,formatUrl:UvA,getStylesFromArray:OG,generateId:XAA,random:$AA,runFunc:nnt,entityDecode:Cnt,insertTitle:Bnt,isLabelCoordinateInPath:JvA,parseFontSize:rl,InitIDGenerator:cnt},KvA=y(function(A){let e=A;return e=e.replace(/style.*:\S*#.*;/g,function(t){return t.substring(0,t.length-1)}),e=e.replace(/classDef.*:\S*#.*;/g,function(t){return t.substring(0,t.length-1)}),e=e.replace(/#\w+;/g,function(t){let r=t.substring(1,t.length-1);if(/^\+?\d+$/.test(r))return"fl°°"+r+"¶ß";else return"fl°"+r+"¶ß"}),e},"encodeEntities"),eg=y(function(A){return A.replace(/fl°°/g,"&#").replace(/fl°/g,"&").replace(/¶ß/g,";")},"decodeEntities"),AE=y((A,e,{counter:t=0,prefix:r,suffix:i},u)=>{if(u)return u;return`${r?`${r}_`:""}${A}_${e}_${t}${i?`_${i}`:""}`},"getEdgeId");y(Sn,"handleUndefinedAttr");y(JvA,"isLabelCoordinateInPath")});async function fv(A,e){let t=A.getElementsByTagName("img");if(!t||t.length===0)return;let r=e.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...t].map((i)=>new Promise((u)=>{function a(){if(i.style.display="flex",i.style.flexDirection="column",r){let n=OA().fontSize?OA().fontSize:window.getComputedStyle(document.body).fontSize,o=5,[s=ur.fontSize]=rl(n),l=s*5+"px";i.style.minWidth=l,i.style.maxWidth=l}else i.style.width="100%";u(i)}y(a,"setupImage"),setTimeout(()=>{if(i.complete)a()}),i.addEventListener("error",a),i.addEventListener("load",a)})))}var lC;var u0=_(()=>{ai();rr();Nt();lC=y(({flowchart:A})=>{let e=A?.subGraphTitleMargin?.top??0,t=A?.subGraphTitleMargin?.bottom??0,r=e+t;return{subGraphTitleTopMargin:e,subGraphTitleBottomMargin:t,subGraphTitleTotalMargin:r}},"getSubGraphTitleMargins");y(fv,"configureLabelImages")});var AeA=(A,e,t,r="")=>{let i=A.split(":");if(A.slice(0,1)==="@"){if(i.length<2||i.length>3)return null;r=i.shift().slice(1)}if(i.length>3||!i.length)return null;if(i.length>1){let n=i.pop(),o=i.pop(),s={provider:i.length>0?i[0]:r,prefix:o,name:n};return e&&!_G(s)?null:s}let u=i[0],a=u.split("-");if(a.length>1){let n={provider:r,prefix:a.shift(),name:a.join("-")};return e&&!_G(n)?null:n}if(t&&r===""){let n={provider:r,prefix:"",name:u};return e&&!_G(n,t)?null:n}return null},_G=(A,e)=>{if(!A)return!1;return!!((e&&A.prefix===""||!!A.prefix)&&!!A.name)};var OvA=()=>{};var Ent,VD,eeA,PvA;var WG=_(()=>{Ent=Object.freeze({left:0,top:0,width:16,height:16}),VD=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),eeA=Object.freeze({...Ent,...VD}),PvA=Object.freeze({...eeA,body:"",hidden:!1})});function _vA(A,e){let t={};if(!A.hFlip!==!e.hFlip)t.hFlip=!0;if(!A.vFlip!==!e.vFlip)t.vFlip=!0;let r=((A.rotate||0)+(e.rotate||0))%4;if(r)t.rotate=r;return t}var WvA=()=>{};function teA(A,e){let t=_vA(A,e);for(let r in PvA)if(r in VD){if(r in A&&!(r in t))t[r]=VD[r]}else if(r in e)t[r]=e[r];else if(r in A)t[r]=A[r];return t}var qvA=_(()=>{WG();WvA()});function zvA(A,e){let t=A.icons,r=A.aliases||Object.create(null),i=Object.create(null);function u(a){if(t[a])return i[a]=[];if(!(a in i)){i[a]=null;let n=r[a]&&r[a].parent,o=n&&u(n);if(o)i[a]=[n].concat(o)}return i[a]}return(e||Object.keys(t).concat(Object.keys(r))).forEach(u),i}var ZvA=()=>{};function VvA(A,e,t){let r=A.icons,i=A.aliases||Object.create(null),u={};function a(n){u=teA(r[n]||i[n],u)}return a(e),t.forEach(a),teA(A,u)}function reA(A,e){if(A.icons[e])return VvA(A,e,[]);let t=zvA(A,[e])[e];return t?VvA(A,e,t):null}var jvA=_(()=>{qvA();ZvA()});var dnt,XvA;var $vA=_(()=>{WG();dnt=Object.freeze({width:null,height:null}),XvA=Object.freeze({...dnt,...VD})});function ieA(A,e,t){if(e===1)return A;if(t=t||100,typeof A==="number")return Math.ceil(A*e*t)/t;if(typeof A!=="string")return A;let r=A.split(Int);if(r===null||!r.length)return A;let i=[],u=r.shift(),a=hnt.test(u);while(!0){if(a){let n=parseFloat(u);if(isNaN(n))i.push(u);else i.push(Math.ceil(n*e*t)/t)}else i.push(u);if(u=r.shift(),u===void 0)return i.join("");a=!a}}var Int,hnt;var AkA=_(()=>{Int=/(-?[0-9.]*[0-9]+[0-9.]*)/g,hnt=/^-?[0-9.]*[0-9]+[0-9.]*$/g});function Qnt(A,e="defs"){let t="",r=A.indexOf("<"+e);while(r>=0){let i=A.indexOf(">",r),u=A.indexOf("</"+e);if(i===-1||u===-1)break;let a=A.indexOf(">",u);if(a===-1)break;t+=A.slice(i+1,u).trim(),A=A.slice(0,r).trim()+A.slice(a+1)}return{defs:t,content:A}}function pnt(A,e){return A?"<defs>"+A+"</defs>"+e:e}function ekA(A,e,t){let r=Qnt(A);return pnt(r.defs,e+r.content+t)}var tkA=()=>{};function ueA(A,e){let t={...eeA,...A},r={...XvA,...e},i={left:t.left,top:t.top,width:t.width,height:t.height},u=t.body;[t,r].forEach((d)=>{let I=[],{hFlip:h,vFlip:Q,rotate:p}=d;if(h)if(Q)p+=2;else I.push("translate("+(i.width+i.left).toString()+" "+(0-i.top).toString()+")"),I.push("scale(-1 1)"),i.top=i.left=0;else if(Q)I.push("translate("+(0-i.left).toString()+" "+(i.height+i.top).toString()+")"),I.push("scale(1 -1)"),i.top=i.left=0;let m;if(p<0)p-=Math.floor(p/4)*4;switch(p=p%4,p){case 1:m=i.height/2+i.top,I.unshift("rotate(90 "+m.toString()+" "+m.toString()+")");break;case 2:I.unshift("rotate(180 "+(i.width/2+i.left).toString()+" "+(i.height/2+i.top).toString()+")");break;case 3:m=i.width/2+i.left,I.unshift("rotate(-90 "+m.toString()+" "+m.toString()+")");break}if(p%2===1){if(i.left!==i.top)m=i.left,i.left=i.top,i.top=m;if(i.width!==i.height)m=i.width,i.width=i.height,i.height=m}if(I.length)u=ekA(u,'<g transform="'+I.join(" ")+'">',"</g>")});let{width:a,height:n}=r,{width:o,height:s}=i,l,g;if(a===null)g=n===null?"1em":n==="auto"?s:n,l=ieA(g,o/s);else l=a==="auto"?o:a,g=n===null?ieA(l,s/o):n==="auto"?s:n;let C={},B=(d,I)=>{if(!fnt(I))C[d]=I.toString()};B("width",l),B("height",g);let E=[i.left,i.top,o,s];return C.viewBox=E.join(" "),{attributes:C,viewBox:E,body:u}}var fnt=(A)=>A==="unset"||A==="undefined"||A==="none";var rkA=_(()=>{WG();$vA();AkA();tkA()});function Dnt(A){A=A.replace(/[0-9]+$/,"")||"a";let e=ikA.get(A)||0;return ikA.set(A,e+1),e?`${A}${e}`:A}function aeA(A){let e=[],t;while(t=mnt.exec(A))e.push(t[1]);if(!e.length)return A;let r="suffix"+(Math.random()*16777216|Date.now()).toString(16);return e.forEach((i)=>{let u=Dnt(i),a=i.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");A=A.replace(new RegExp('([#;"])('+a+')([")]|\\.[a-z])',"g"),"$1"+u+r+"$3")}),A=A.replace(new RegExp(r,"g"),""),A}var mnt,ikA;var ukA=_(()=>{mnt=/\sid="(\S+)"/g,ikA=new Map});function neA(A,e){let t=A.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(let r in e)t+=" "+r+'="'+e[r]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+t+">"+A+"</svg>"}var akA=()=>{};var nkA=_(()=>{OvA();jvA();rkA();ukA();akA()});var seA,oeA,okA,jD,skA,lkA,tg;var Ln=_(()=>{rr();ir();Nt();nkA();seA={body:'<g><rect width="80" height="80" style="fill: #087ebf; stroke-width: 0px;"/><text transform="translate(21.16 64.67)" style="fill: #fff; font-family: ArialMT, Arial; font-size: 67.75px;"><tspan x="0" y="0">?</tspan></text></g>',height:80,width:80},oeA=new Map,okA=new Map,jD=y((A)=>{for(let e of A){if(!e.name)throw Error('Invalid icon loader. Must have a "name" property with non-empty string value.');if(sA.debug("Registering icon pack:",e.name),"loader"in e)okA.set(e.name,e.loader);else if("icons"in e)oeA.set(e.name,e.icons);else throw sA.error("Invalid icon loader:",e),Error('Invalid icon loader. Must have either "icons" or "loader" property.')}},"registerIconPacks"),skA=y(async(A,e)=>{let t=AeA(A,!0,e!==void 0);if(!t)throw Error(`Invalid icon name: ${A}`);let r=t.prefix||e;if(!r)throw Error(`Icon name must contain a prefix: ${A}`);let i=oeA.get(r);if(!i){let a=okA.get(r);if(!a)throw Error(`Icon set not found: ${t.prefix}`);try{i={...await a(),prefix:r},oeA.set(r,i)}catch(n){throw sA.error(n),Error(`Failed to load icon set: ${t.prefix}`)}}let u=reA(i,t.name);if(!u)throw Error(`Icon not found: ${A}`);return u},"getRegisteredIconData"),lkA=y(async(A)=>{try{return await skA(A),!0}catch{return!1}},"isIconAvailable"),tg=y(async(A,e,t)=>{let r;try{r=await skA(A,e?.fallbackPrefix)}catch(a){sA.error(a),r=seA}let i=ueA(r,e),u=neA(aeA(i.body),{...i.attributes,...t});return gr(u,ot())},"getIconSVG")});function geA(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}function IkA(A){Cf=A}function Zi(A,e=""){let t=typeof A=="string"?A:A.source,r={replace:(i,u)=>{let a=typeof u=="string"?u:u.source;return a=a.replace(cs.caret,"$1"),t=t.replace(i,a),r},getRegex:()=>new RegExp(t,e)};return r}function eE(A,e){if(e){if(cs.escapeTest.test(A))return A.replace(cs.escapeReplace,CkA)}else if(cs.escapeTestNoEncode.test(A))return A.replace(cs.escapeReplaceNoEncode,CkA);return A}function BkA(A){try{A=encodeURI(A).replace(cs.percentDecode,"%")}catch{return null}return A}function EkA(A,e){let t=A.replace(cs.findPipe,(u,a,n)=>{let o=!1,s=a;for(;--s>=0&&n[s]==="\\";)o=!o;return o?"|":" |"}),r=t.split(cs.splitPipe),i=0;if(r[0].trim()||r.shift(),r.length>0&&!r.at(-1)?.trim()&&r.pop(),e)if(r.length>e)r.splice(e);else for(;r.length<e;)r.push("");for(;i<r.length;i++)r[i]=r[i].trim().replace(cs.slashPipe,"|");return r}function Dv(A,e,t){let r=A.length;if(r===0)return"";let i=0;for(;i<r;){let u=A.charAt(r-i-1);if(u===e&&!t)i++;else if(u!==e&&t)i++;else break}return A.slice(0,r-i)}function iot(A,e){if(A.indexOf(e[1])===-1)return-1;let t=0;for(let r=0;r<A.length;r++)if(A[r]==="\\")r++;else if(A[r]===e[0])t++;else if(A[r]===e[1]&&(t--,t<0))return r;return t>0?-2:-1}function dkA(A,e,t,r,i){let u=e.href,a=e.title||null,n=A[1].replace(i.other.outputLinkReplace,"$1");r.state.inLink=!0;let o={type:A[0].charAt(0)==="!"?"image":"link",raw:t,href:u,title:a,text:n,tokens:r.inlineTokens(n)};return r.state.inLink=!1,o}function uot(A,e,t){let r=A.match(t.other.indentCodeCompensation);if(r===null)return e;let i=r[1];return e.split(`
`).map((u)=>{let a=u.match(t.other.beginningSpace);if(a===null)return u;let[n]=a;return n.length>=i.length?u.slice(i.length):u}).join(`
`)}function ou(A,e){return cf.parse(A,e)}var Cf,wv,ynt,cs,wnt,bnt,vnt,bv,knt,ceA,hkA,QkA,Fnt,CeA,xnt,BeA,Snt,Lnt,jG="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",EeA,Rnt,pkA,Nnt,deA,gkA,Gnt,Unt,Mnt,Tnt,fkA,Ynt,XG,IeA,mkA,Hnt,DkA,Knt,Jnt,Ont,ykA,Pnt,_nt,wkA="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",Wnt,qnt,znt,Znt,Vnt,jnt,Xnt,zG,$nt,bkA,vkA,Aot,ckA,heA,eot,leA,tot,qG,mv,rot,CkA=(A)=>rot[A],ZG=class{options;rules;lexer;constructor(A){this.options=A||Cf}space(A){let e=this.rules.block.newline.exec(A);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(A){let e=this.rules.block.code.exec(A);if(e){let t=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:Dv(t,`
`)}}}fences(A){let e=this.rules.block.fences.exec(A);if(e){let t=e[0],r=uot(t,e[3]||"",this.rules);return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:r}}}heading(A){let e=this.rules.block.heading.exec(A);if(e){let t=e[2].trim();if(this.rules.other.endingHash.test(t)){let r=Dv(t,"#");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(t=r.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(A){let e=this.rules.block.hr.exec(A);if(e)return{type:"hr",raw:Dv(e[0],`
`)}}blockquote(A){let e=this.rules.block.blockquote.exec(A);if(e){let t=Dv(e[0],`
`).split(`
`),r="",i="",u=[];for(;t.length>0;){let a=!1,n=[],o;for(o=0;o<t.length;o++)if(this.rules.other.blockquoteStart.test(t[o]))n.push(t[o]),a=!0;else if(!a)n.push(t[o]);else break;t=t.slice(o);let s=n.join(`
`),l=s.replace(this.rules.other.blockquoteSetextReplace,`
$1`).replace(this.rules.other.blockquoteSetextReplace2,"");r=r?`${r}
${s}`:s,i=i?`${i}
${l}`:l;let g=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(l,u,!0),this.lexer.state.top=g,t.length===0)break;let C=u.at(-1);if(C?.type==="code")break;if(C?.type==="blockquote"){let B=C,E=B.raw+`
`+t.join(`
`),d=this.blockquote(E);u[u.length-1]=d,r=r.substring(0,r.length-B.raw.length)+d.raw,i=i.substring(0,i.length-B.text.length)+d.text;break}else if(C?.type==="list"){let B=C,E=B.raw+`
`+t.join(`
`),d=this.list(E);u[u.length-1]=d,r=r.substring(0,r.length-C.raw.length)+d.raw,i=i.substring(0,i.length-B.raw.length)+d.raw,t=E.substring(u.at(-1).raw.length).split(`
`);continue}}return{type:"blockquote",raw:r,tokens:u,text:i}}}list(A){let e=this.rules.block.list.exec(A);if(e){let t=e[1].trim(),r=t.length>1,i={type:"list",raw:"",ordered:r,start:r?+t.slice(0,-1):"",loose:!1,items:[]};t=r?`\\d{1,9}\\${t.slice(-1)}`:`\\${t}`,this.options.pedantic&&(t=r?t:"[*+-]");let u=this.rules.other.listItemRegex(t),a=!1;for(;A;){let o=!1,s="",l="";if(!(e=u.exec(A))||this.rules.block.hr.test(A))break;s=e[0],A=A.substring(s.length);let g=e[2].split(`
`,1)[0].replace(this.rules.other.listReplaceTabs,(h)=>" ".repeat(3*h.length)),C=A.split(`
`,1)[0],B=!g.trim(),E=0;if(this.options.pedantic?(E=2,l=g.trimStart()):B?E=e[1].length+1:(E=e[2].search(this.rules.other.nonSpaceChar),E=E>4?1:E,l=g.slice(E),E+=e[1].length),B&&this.rules.other.blankLine.test(C)&&(s+=C+`
`,A=A.substring(C.length+1),o=!0),!o){let h=this.rules.other.nextBulletRegex(E),Q=this.rules.other.hrRegex(E),p=this.rules.other.fencesBeginRegex(E),m=this.rules.other.headingBeginRegex(E),f=this.rules.other.htmlBeginRegex(E);for(;A;){let D=A.split(`
`,1)[0],w;if(C=D,this.options.pedantic?(C=C.replace(this.rules.other.listReplaceNesting," "),w=C):w=C.replace(this.rules.other.tabCharGlobal," "),p.test(C)||m.test(C)||f.test(C)||h.test(C)||Q.test(C))break;if(w.search(this.rules.other.nonSpaceChar)>=E||!C.trim())l+=`
`+w.slice(E);else{if(B||g.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||p.test(g)||m.test(g)||Q.test(g))break;l+=`
`+C}!B&&!C.trim()&&(B=!0),s+=D+`
`,A=A.substring(D.length+1),g=w.slice(E)}}i.loose||(a?i.loose=!0:this.rules.other.doubleBlankLine.test(s)&&(a=!0));let d=null,I;this.options.gfm&&(d=this.rules.other.listIsTask.exec(l),d&&(I=d[0]!=="[ ] ",l=l.replace(this.rules.other.listReplaceTask,""))),i.items.push({type:"list_item",raw:s,task:!!d,checked:I,loose:!1,text:l,tokens:[]}),i.raw+=s}let n=i.items.at(-1);if(n)n.raw=n.raw.trimEnd(),n.text=n.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let o=0;o<i.items.length;o++)if(this.lexer.state.top=!1,i.items[o].tokens=this.lexer.blockTokens(i.items[o].text,[]),!i.loose){let s=i.items[o].tokens.filter((g)=>g.type==="space"),l=s.length>0&&s.some((g)=>this.rules.other.anyLine.test(g.raw));i.loose=l}if(i.loose)for(let o=0;o<i.items.length;o++)i.items[o].loose=!0;return i}}html(A){let e=this.rules.block.html.exec(A);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(A){let e=this.rules.block.def.exec(A);if(e){let t=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),r=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:e[0],href:r,title:i}}}table(A){let e=this.rules.block.table.exec(A);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let t=EkA(e[1]),r=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),i=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
`):[],u={type:"table",raw:e[0],header:[],align:[],rows:[]};if(t.length===r.length){for(let a of r)this.rules.other.tableAlignRight.test(a)?u.align.push("right"):this.rules.other.tableAlignCenter.test(a)?u.align.push("center"):this.rules.other.tableAlignLeft.test(a)?u.align.push("left"):u.align.push(null);for(let a=0;a<t.length;a++)u.header.push({text:t[a],tokens:this.lexer.inline(t[a]),header:!0,align:u.align[a]});for(let a of i)u.rows.push(EkA(a,u.header.length).map((n,o)=>({text:n,tokens:this.lexer.inline(n),header:!1,align:u.align[o]})));return u}}lheading(A){let e=this.rules.block.lheading.exec(A);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(A){let e=this.rules.block.paragraph.exec(A);if(e){let t=e[1].charAt(e[1].length-1)===`
`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(A){let e=this.rules.block.text.exec(A);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(A){let e=this.rules.inline.escape.exec(A);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(A){let e=this.rules.inline.tag.exec(A);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(A){let e=this.rules.inline.link.exec(A);if(e){let t=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(t)){if(!this.rules.other.endAngleBracket.test(t))return;let u=Dv(t.slice(0,-1),"\\");if((t.length-u.length)%2===0)return}else{let u=iot(e[2],"()");if(u===-2)return;if(u>-1){let a=(e[0].indexOf("!")===0?5:4)+e[1].length+u;e[2]=e[2].substring(0,u),e[0]=e[0].substring(0,a).trim(),e[3]=""}}let r=e[2],i="";if(this.options.pedantic){let u=this.rules.other.pedanticHrefTitle.exec(r);u&&(r=u[1],i=u[3])}else i=e[3]?e[3].slice(1,-1):"";return r=r.trim(),this.rules.other.startAngleBracket.test(r)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(t)?r=r.slice(1):r=r.slice(1,-1)),dkA(e,{href:r&&r.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(A,e){let t;if((t=this.rules.inline.reflink.exec(A))||(t=this.rules.inline.nolink.exec(A))){let r=(t[2]||t[1]).replace(this.rules.other.multipleSpaceGlobal," "),i=e[r.toLowerCase()];if(!i){let u=t[0].charAt(0);return{type:"text",raw:u,text:u}}return dkA(t,i,t[0],this.lexer,this.rules)}}emStrong(A,e,t=""){let r=this.rules.inline.emStrongLDelim.exec(A);if(!r||r[3]&&t.match(this.rules.other.unicodeAlphaNumeric))return;if(!(r[1]||r[2])||!t||this.rules.inline.punctuation.exec(t)){let i=[...r[0]].length-1,u,a,n=i,o=0,s=r[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(s.lastIndex=0,e=e.slice(-1*A.length+i);(r=s.exec(e))!=null;){if(u=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!u)continue;if(a=[...u].length,r[3]||r[4]){n+=a;continue}else if((r[5]||r[6])&&i%3&&!((i+a)%3)){o+=a;continue}if(n-=a,n>0)continue;a=Math.min(a,a+n+o);let l=[...r[0]][0].length,g=A.slice(0,i+r.index+l+a);if(Math.min(i,a)%2){let B=g.slice(1,-1);return{type:"em",raw:g,text:B,tokens:this.lexer.inlineTokens(B)}}let C=g.slice(2,-2);return{type:"strong",raw:g,text:C,tokens:this.lexer.inlineTokens(C)}}}}codespan(A){let e=this.rules.inline.code.exec(A);if(e){let t=e[2].replace(this.rules.other.newLineCharGlobal," "),r=this.rules.other.nonSpaceChar.test(t),i=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return r&&i&&(t=t.substring(1,t.length-1)),{type:"codespan",raw:e[0],text:t}}}br(A){let e=this.rules.inline.br.exec(A);if(e)return{type:"br",raw:e[0]}}del(A){let e=this.rules.inline.del.exec(A);if(e)return{type:"del",raw:e[0],text:e[2],tokens:this.lexer.inlineTokens(e[2])}}autolink(A){let e=this.rules.inline.autolink.exec(A);if(e){let t,r;return e[2]==="@"?(t=e[1],r="mailto:"+t):(t=e[1],r=t),{type:"link",raw:e[0],text:t,href:r,tokens:[{type:"text",raw:t,text:t}]}}}url(A){let e;if(e=this.rules.inline.url.exec(A)){let t,r;if(e[2]==="@")t=e[0],r="mailto:"+t;else{let i;do i=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(i!==e[0]);t=e[0],e[1]==="www."?r="http://"+e[0]:r=e[0]}return{type:"link",raw:e[0],text:t,href:r,tokens:[{type:"text",raw:t,text:t}]}}}inlineText(A){let e=this.rules.inline.text.exec(A);if(e){let t=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:t}}}},gC=class A{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||Cf,this.options.tokenizer=this.options.tokenizer||new ZG,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:cs,block:qG.normal,inline:mv.normal};this.options.pedantic?(t.block=qG.pedantic,t.inline=mv.pedantic):this.options.gfm&&(t.block=qG.gfm,this.options.breaks?t.inline=mv.breaks:t.inline=mv.gfm),this.tokenizer.rules=t}static get rules(){return{block:qG,inline:mv}}static lex(e,t){return new A(t).lex(e)}static lexInline(e,t){return new A(t).inlineTokens(e)}lex(e){e=e.replace(cs.carriageReturn,`
`),this.blockTokens(e,this.tokens);for(let t=0;t<this.inlineQueue.length;t++){let r=this.inlineQueue[t];this.inlineTokens(r.src,r.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],r=!1){for(this.options.pedantic&&(e=e.replace(cs.tabCharGlobal," ").replace(cs.spaceLine,""));e;){let i;if(this.options.extensions?.block?.some((a)=>(i=a.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))continue;if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length);let a=t.at(-1);i.raw.length===1&&a!==void 0?a.raw+=`
`:t.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length);let a=t.at(-1);a?.type==="paragraph"||a?.type==="text"?(a.raw+=(a.raw.endsWith(`
`)?"":`
`)+i.raw,a.text+=`
`+i.text,this.inlineQueue.at(-1).src=a.text):t.push(i);continue}if(i=this.tokenizer.fences(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.heading(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.hr(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.blockquote(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.list(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.html(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.def(e)){e=e.substring(i.raw.length);let a=t.at(-1);a?.type==="paragraph"||a?.type==="text"?(a.raw+=(a.raw.endsWith(`
`)?"":`
`)+i.raw,a.text+=`
`+i.raw,this.inlineQueue.at(-1).src=a.text):this.tokens.links[i.tag]||(this.tokens.links[i.tag]={href:i.href,title:i.title},t.push(i));continue}if(i=this.tokenizer.table(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.lheading(e)){e=e.substring(i.raw.length),t.push(i);continue}let u=e;if(this.options.extensions?.startBlock){let a=1/0,n=e.slice(1),o;this.options.extensions.startBlock.forEach((s)=>{o=s.call({lexer:this},n),typeof o=="number"&&o>=0&&(a=Math.min(a,o))}),a<1/0&&a>=0&&(u=e.substring(0,a+1))}if(this.state.top&&(i=this.tokenizer.paragraph(u))){let a=t.at(-1);r&&a?.type==="paragraph"?(a.raw+=(a.raw.endsWith(`
`)?"":`
`)+i.raw,a.text+=`
`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=a.text):t.push(i),r=u.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length);let a=t.at(-1);a?.type==="text"?(a.raw+=(a.raw.endsWith(`
`)?"":`
`)+i.raw,a.text+=`
`+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=a.text):t.push(i);continue}if(e){let a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw Error(a)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let r=e,i=null;if(this.tokens.links){let o=Object.keys(this.tokens.links);if(o.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null;)o.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(r))!=null;)r=r.slice(0,i.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let u;for(;(i=this.tokenizer.rules.inline.blockSkip.exec(r))!=null;)u=i[2]?i[2].length:0,r=r.slice(0,i.index+u)+"["+"a".repeat(i[0].length-u-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);r=this.options.hooks?.emStrongMask?.call({lexer:this},r)??r;let a=!1,n="";for(;e;){a||(n=""),a=!1;let o;if(this.options.extensions?.inline?.some((l)=>(o=l.call({lexer:this},e,t))?(e=e.substring(o.raw.length),t.push(o),!0):!1))continue;if(o=this.tokenizer.escape(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.tag(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.link(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(o.raw.length);let l=t.at(-1);o.type==="text"&&l?.type==="text"?(l.raw+=o.raw,l.text+=o.text):t.push(o);continue}if(o=this.tokenizer.emStrong(e,r,n)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.codespan(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.br(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.del(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.autolink(e)){e=e.substring(o.raw.length),t.push(o);continue}if(!this.state.inLink&&(o=this.tokenizer.url(e))){e=e.substring(o.raw.length),t.push(o);continue}let s=e;if(this.options.extensions?.startInline){let l=1/0,g=e.slice(1),C;this.options.extensions.startInline.forEach((B)=>{C=B.call({lexer:this},g),typeof C=="number"&&C>=0&&(l=Math.min(l,C))}),l<1/0&&l>=0&&(s=e.substring(0,l+1))}if(o=this.tokenizer.inlineText(s)){e=e.substring(o.raw.length),o.raw.slice(-1)!=="_"&&(n=o.raw.slice(-1)),a=!0;let l=t.at(-1);l?.type==="text"?(l.raw+=o.raw,l.text+=o.text):t.push(o);continue}if(e){let l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw Error(l)}}return t}},VG=class{options;parser;constructor(A){this.options=A||Cf}space(A){return""}code({text:A,lang:e,escaped:t}){let r=(e||"").match(cs.notSpaceStart)?.[0],i=A.replace(cs.endingNewline,"")+`
`;return r?'<pre><code class="language-'+eE(r)+'">'+(t?i:eE(i,!0))+`</code></pre>
`:"<pre><code>"+(t?i:eE(i,!0))+`</code></pre>
`}blockquote({tokens:A}){return`<blockquote>
${this.parser.parse(A)}</blockquote>
`}html({text:A}){return A}def(A){return""}heading({tokens:A,depth:e}){return`<h${e}>${this.parser.parseInline(A)}</h${e}>
`}hr(A){return`<hr>
`}list(A){let{ordered:e,start:t}=A,r="";for(let a=0;a<A.items.length;a++){let n=A.items[a];r+=this.listitem(n)}let i=e?"ol":"ul",u=e&&t!==1?' start="'+t+'"':"";return"<"+i+u+`>
`+r+"</"+i+`>
`}listitem(A){let e="";if(A.task){let t=this.checkbox({checked:!!A.checked});A.loose?A.tokens[0]?.type==="paragraph"?(A.tokens[0].text=t+" "+A.tokens[0].text,A.tokens[0].tokens&&A.tokens[0].tokens.length>0&&A.tokens[0].tokens[0].type==="text"&&(A.tokens[0].tokens[0].text=t+" "+eE(A.tokens[0].tokens[0].text),A.tokens[0].tokens[0].escaped=!0)):A.tokens.unshift({type:"text",raw:t+" ",text:t+" ",escaped:!0}):e+=t+" "}return e+=this.parser.parse(A.tokens,!!A.loose),`<li>${e}</li>
`}checkbox({checked:A}){return"<input "+(A?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph({tokens:A}){return`<p>${this.parser.parseInline(A)}</p>
`}table(A){let e="",t="";for(let i=0;i<A.header.length;i++)t+=this.tablecell(A.header[i]);e+=this.tablerow({text:t});let r="";for(let i=0;i<A.rows.length;i++){let u=A.rows[i];t="";for(let a=0;a<u.length;a++)t+=this.tablecell(u[a]);r+=this.tablerow({text:t})}return r&&(r=`<tbody>${r}</tbody>`),`<table>
<thead>
`+e+`</thead>
`+r+`</table>
`}tablerow({text:A}){return`<tr>
${A}</tr>
`}tablecell(A){let e=this.parser.parseInline(A.tokens),t=A.header?"th":"td";return(A.align?`<${t} align="${A.align}">`:`<${t}>`)+e+`</${t}>
`}strong({tokens:A}){return`<strong>${this.parser.parseInline(A)}</strong>`}em({tokens:A}){return`<em>${this.parser.parseInline(A)}</em>`}codespan({text:A}){return`<code>${eE(A,!0)}</code>`}br(A){return"<br>"}del({tokens:A}){return`<del>${this.parser.parseInline(A)}</del>`}link({href:A,title:e,tokens:t}){let r=this.parser.parseInline(t),i=BkA(A);if(i===null)return r;A=i;let u='<a href="'+A+'"';return e&&(u+=' title="'+eE(e)+'"'),u+=">"+r+"</a>",u}image({href:A,title:e,text:t,tokens:r}){r&&(t=this.parser.parseInline(r,this.parser.textRenderer));let i=BkA(A);if(i===null)return eE(t);A=i;let u=`<img src="${A}" alt="${t}"`;return e&&(u+=` title="${eE(e)}"`),u+=">",u}text(A){return"tokens"in A&&A.tokens?this.parser.parseInline(A.tokens):("escaped"in A)&&A.escaped?A.text:eE(A.text)}},QeA=class{strong({text:A}){return A}em({text:A}){return A}codespan({text:A}){return A}del({text:A}){return A}html({text:A}){return A}text({text:A}){return A}link({text:A}){return""+A}image({text:A}){return""+A}br(){return""}},cC=class A{options;renderer;textRenderer;constructor(e){this.options=e||Cf,this.options.renderer=this.options.renderer||new VG,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new QeA}static parse(e,t){return new A(t).parse(e)}static parseInline(e,t){return new A(t).parseInline(e)}parse(e,t=!0){let r="";for(let i=0;i<e.length;i++){let u=e[i];if(this.options.extensions?.renderers?.[u.type]){let n=u,o=this.options.extensions.renderers[n.type].call({parser:this},n);if(o!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(n.type)){r+=o||"";continue}}let a=u;switch(a.type){case"space":{r+=this.renderer.space(a);continue}case"hr":{r+=this.renderer.hr(a);continue}case"heading":{r+=this.renderer.heading(a);continue}case"code":{r+=this.renderer.code(a);continue}case"table":{r+=this.renderer.table(a);continue}case"blockquote":{r+=this.renderer.blockquote(a);continue}case"list":{r+=this.renderer.list(a);continue}case"html":{r+=this.renderer.html(a);continue}case"def":{r+=this.renderer.def(a);continue}case"paragraph":{r+=this.renderer.paragraph(a);continue}case"text":{let n=a,o=this.renderer.text(n);for(;i+1<e.length&&e[i+1].type==="text";)n=e[++i],o+=`
`+this.renderer.text(n);t?r+=this.renderer.paragraph({type:"paragraph",raw:o,text:o,tokens:[{type:"text",raw:o,text:o,escaped:!0}]}):r+=o;continue}default:{let n='Token with "'+a.type+'" type was not found.';if(this.options.silent)return console.error(n),"";throw Error(n)}}}return r}parseInline(e,t=this.renderer){let r="";for(let i=0;i<e.length;i++){let u=e[i];if(this.options.extensions?.renderers?.[u.type]){let n=this.options.extensions.renderers[u.type].call({parser:this},u);if(n!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(u.type)){r+=n||"";continue}}let a=u;switch(a.type){case"escape":{r+=t.text(a);break}case"html":{r+=t.html(a);break}case"link":{r+=t.link(a);break}case"image":{r+=t.image(a);break}case"strong":{r+=t.strong(a);break}case"em":{r+=t.em(a);break}case"codespan":{r+=t.codespan(a);break}case"br":{r+=t.br(a);break}case"del":{r+=t.del(a);break}case"text":{r+=t.text(a);break}default:{let n='Token with "'+a.type+'" type was not found.';if(this.options.silent)return console.error(n),"";throw Error(n)}}}return r}},yv,aot=class{defaults=geA();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=cC;Renderer=VG;TextRenderer=QeA;Lexer=gC;Tokenizer=ZG;Hooks=yv;constructor(...A){this.use(...A)}walkTokens(A,e){let t=[];for(let r of A)switch(t=t.concat(e.call(this,r)),r.type){case"table":{let i=r;for(let u of i.header)t=t.concat(this.walkTokens(u.tokens,e));for(let u of i.rows)for(let a of u)t=t.concat(this.walkTokens(a.tokens,e));break}case"list":{let i=r;t=t.concat(this.walkTokens(i.items,e));break}default:{let i=r;this.defaults.extensions?.childTokens?.[i.type]?this.defaults.extensions.childTokens[i.type].forEach((u)=>{let a=i[u].flat(1/0);t=t.concat(this.walkTokens(a,e))}):i.tokens&&(t=t.concat(this.walkTokens(i.tokens,e)))}}return t}use(...A){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return A.forEach((t)=>{let r={...t};if(r.async=this.defaults.async||r.async||!1,t.extensions&&(t.extensions.forEach((i)=>{if(!i.name)throw Error("extension name required");if("renderer"in i){let u=e.renderers[i.name];u?e.renderers[i.name]=function(...a){let n=i.renderer.apply(this,a);return n===!1&&(n=u.apply(this,a)),n}:e.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw Error("extension level must be 'block' or 'inline'");let u=e[i.level];u?u.unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),r.extensions=e),t.renderer){let i=this.defaults.renderer||new VG(this.defaults);for(let u in t.renderer){if(!(u in i))throw Error(`renderer '${u}' does not exist`);if(["options","parser"].includes(u))continue;let a=u,n=t.renderer[a],o=i[a];i[a]=(...s)=>{let l=n.apply(i,s);return l===!1&&(l=o.apply(i,s)),l||""}}r.renderer=i}if(t.tokenizer){let i=this.defaults.tokenizer||new ZG(this.defaults);for(let u in t.tokenizer){if(!(u in i))throw Error(`tokenizer '${u}' does not exist`);if(["options","rules","lexer"].includes(u))continue;let a=u,n=t.tokenizer[a],o=i[a];i[a]=(...s)=>{let l=n.apply(i,s);return l===!1&&(l=o.apply(i,s)),l}}r.tokenizer=i}if(t.hooks){let i=this.defaults.hooks||new yv;for(let u in t.hooks){if(!(u in i))throw Error(`hook '${u}' does not exist`);if(["options","block"].includes(u))continue;let a=u,n=t.hooks[a],o=i[a];yv.passThroughHooks.has(u)?i[a]=(s)=>{if(this.defaults.async&&yv.passThroughHooksRespectAsync.has(u))return(async()=>{let g=await n.call(i,s);return o.call(i,g)})();let l=n.call(i,s);return o.call(i,l)}:i[a]=(...s)=>{if(this.defaults.async)return(async()=>{let g=await n.apply(i,s);return g===!1&&(g=await o.apply(i,s)),g})();let l=n.apply(i,s);return l===!1&&(l=o.apply(i,s)),l}}r.hooks=i}if(t.walkTokens){let i=this.defaults.walkTokens,u=t.walkTokens;r.walkTokens=function(a){let n=[];return n.push(u.call(this,a)),i&&(n=n.concat(i.call(this,a))),n}}this.defaults={...this.defaults,...r}}),this}setOptions(A){return this.defaults={...this.defaults,...A},this}lexer(A,e){return gC.lex(A,e??this.defaults)}parser(A,e){return cC.parse(A,e??this.defaults)}parseMarkdown(A){return(e,t)=>{let r={...t},i={...this.defaults,...r},u=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&r.async===!1)return u(Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return u(Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return u(Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(i.hooks&&(i.hooks.options=i,i.hooks.block=A),i.async)return(async()=>{let a=i.hooks?await i.hooks.preprocess(e):e,n=await(i.hooks?await i.hooks.provideLexer():A?gC.lex:gC.lexInline)(a,i),o=i.hooks?await i.hooks.processAllTokens(n):n;i.walkTokens&&await Promise.all(this.walkTokens(o,i.walkTokens));let s=await(i.hooks?await i.hooks.provideParser():A?cC.parse:cC.parseInline)(o,i);return i.hooks?await i.hooks.postprocess(s):s})().catch(u);try{i.hooks&&(e=i.hooks.preprocess(e));let a=(i.hooks?i.hooks.provideLexer():A?gC.lex:gC.lexInline)(e,i);i.hooks&&(a=i.hooks.processAllTokens(a)),i.walkTokens&&this.walkTokens(a,i.walkTokens);let n=(i.hooks?i.hooks.provideParser():A?cC.parse:cC.parseInline)(a,i);return i.hooks&&(n=i.hooks.postprocess(n)),n}catch(a){return u(a)}}}onError(A,e){return(t)=>{if(t.message+=`
Please report this to https://github.com/markedjs/marked.`,A){let r="<p>An error occurred:</p><pre>"+eE(t.message+"",!0)+"</pre>";return e?Promise.resolve(r):r}if(e)return Promise.reject(t);throw t}}},cf,RHr,NHr,GHr,UHr,MHr,THr,YHr;var kkA=_(()=>{Cf=geA();wv={exec:()=>null};ynt=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),cs={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:(A)=>new RegExp(`^( {0,3}${A})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:(A)=>new RegExp(`^ {0,${Math.min(3,A-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:(A)=>new RegExp(`^ {0,${Math.min(3,A-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:(A)=>new RegExp(`^ {0,${Math.min(3,A-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:(A)=>new RegExp(`^ {0,${Math.min(3,A-1)}}#`),htmlBeginRegex:(A)=>new RegExp(`^ {0,${Math.min(3,A-1)}}<(?:[a-z].*>|!--)`,"i")},wnt=/^(?:[ \t]*(?:\n|$))+/,bnt=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,vnt=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,bv=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,knt=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,ceA=/(?:[*+-]|\d{1,9}[.)])/,hkA=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,QkA=Zi(hkA).replace(/bull/g,ceA).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),Fnt=Zi(hkA).replace(/bull/g,ceA).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),CeA=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,xnt=/^[^\n]+/,BeA=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Snt=Zi(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",BeA).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Lnt=Zi(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,ceA).getRegex(),EeA=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Rnt=Zi("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))","i").replace("comment",EeA).replace("tag",jG).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),pkA=Zi(CeA).replace("hr",bv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",jG).getRegex(),Nnt=Zi(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",pkA).getRegex(),deA={blockquote:Nnt,code:bnt,def:Snt,fences:vnt,heading:knt,hr:bv,html:Rnt,lheading:QkA,list:Lnt,newline:wnt,paragraph:pkA,table:wv,text:xnt},gkA=Zi("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",bv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}\t)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",jG).getRegex(),Gnt={...deA,lheading:Fnt,table:gkA,paragraph:Zi(CeA).replace("hr",bv).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",gkA).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",jG).getRegex()},Unt={...deA,html:Zi(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",EeA).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:wv,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Zi(CeA).replace("hr",bv).replace("heading",` *#{1,6} *[^
]`).replace("lheading",QkA).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Mnt=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Tnt=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,fkA=/^( {2,}|\\)\n(?!\s*$)/,Ynt=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,XG=/[\p{P}\p{S}]/u,IeA=/[\s\p{P}\p{S}]/u,mkA=/[^\s\p{P}\p{S}]/u,Hnt=Zi(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,IeA).getRegex(),DkA=/(?!~)[\p{P}\p{S}]/u,Knt=/(?!~)[\s\p{P}\p{S}]/u,Jnt=/(?:[^\s\p{P}\p{S}]|~)/u,Ont=Zi(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",ynt?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),ykA=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,Pnt=Zi(ykA,"u").replace(/punct/g,XG).getRegex(),_nt=Zi(ykA,"u").replace(/punct/g,DkA).getRegex(),Wnt=Zi(wkA,"gu").replace(/notPunctSpace/g,mkA).replace(/punctSpace/g,IeA).replace(/punct/g,XG).getRegex(),qnt=Zi(wkA,"gu").replace(/notPunctSpace/g,Jnt).replace(/punctSpace/g,Knt).replace(/punct/g,DkA).getRegex(),znt=Zi("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,mkA).replace(/punctSpace/g,IeA).replace(/punct/g,XG).getRegex(),Znt=Zi(/\\(punct)/,"gu").replace(/punct/g,XG).getRegex(),Vnt=Zi(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),jnt=Zi(EeA).replace("(?:-->|$)","-->").getRegex(),Xnt=Zi("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",jnt).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),zG=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,$nt=Zi(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",zG).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),bkA=Zi(/^!?\[(label)\]\[(ref)\]/).replace("label",zG).replace("ref",BeA).getRegex(),vkA=Zi(/^!?\[(ref)\](?:\[\])?/).replace("ref",BeA).getRegex(),Aot=Zi("reflink|nolink(?!\\()","g").replace("reflink",bkA).replace("nolink",vkA).getRegex(),ckA=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,heA={_backpedal:wv,anyPunctuation:Znt,autolink:Vnt,blockSkip:Ont,br:fkA,code:Tnt,del:wv,emStrongLDelim:Pnt,emStrongRDelimAst:Wnt,emStrongRDelimUnd:znt,escape:Mnt,link:$nt,nolink:vkA,punctuation:Hnt,reflink:bkA,reflinkSearch:Aot,tag:Xnt,text:Ynt,url:wv},eot={...heA,link:Zi(/^!?\[(label)\]\((.*?)\)/).replace("label",zG).getRegex(),reflink:Zi(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",zG).getRegex()},leA={...heA,emStrongRDelimAst:qnt,emStrongLDelim:_nt,url:Zi(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",ckA).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:Zi(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",ckA).getRegex()},tot={...leA,br:Zi(fkA).replace("{2,}","*").getRegex(),text:Zi(leA.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},qG={normal:deA,gfm:Gnt,pedantic:Unt},mv={normal:heA,gfm:leA,breaks:tot,pedantic:eot},rot={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"};yv=class{options;block;constructor(A){this.options=A||Cf}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(A){return A}postprocess(A){return A}processAllTokens(A){return A}emStrongMask(A){return A}provideLexer(){return this.block?gC.lex:gC.lexInline}provideParser(){return this.block?cC.parse:cC.parseInline}},cf=new aot;ou.options=ou.setOptions=function(A){return cf.setOptions(A),ou.defaults=cf.defaults,IkA(ou.defaults),ou};ou.getDefaults=geA;ou.defaults=Cf;ou.use=function(...A){return cf.use(...A),ou.defaults=cf.defaults,IkA(ou.defaults),ou};ou.walkTokens=function(A,e){return cf.walkTokens(A,e)};ou.parseInline=cf.parseInline;ou.Parser=cC;ou.parser=cC.parse;ou.Renderer=VG;ou.TextRenderer=QeA;ou.Lexer=gC;ou.lexer=gC.lex;ou.Tokenizer=ZG;ou.Hooks=yv;ou.parse=ou;RHr=ou.options,NHr=ou.setOptions,GHr=ou.use,UHr=ou.walkTokens,MHr=ou.parseInline,THr=cC.parse,YHr=gC.lex});function $G(A){var e=[];for(var t=1;t<arguments.length;t++)e[t-1]=arguments[t];var r=Array.from(typeof A==="string"?[A]:A);r[r.length-1]=r[r.length-1].replace(/\r?\n([\t ]*)$/,"");var i=r.reduce(function(n,o){var s=o.match(/\n([\t ]+|(?!\s).)/g);if(s)return n.concat(s.map(function(l){var g,C;return(C=(g=l.match(/[\t ]/g))===null||g===void 0?void 0:g.length)!==null&&C!==void 0?C:0}));return n},[]);if(i.length){var u=new RegExp(`
[ ]{`.concat(Math.min.apply(Math,i),"}"),"g");r=r.map(function(n){return n.replace(u,`
`)})}r[0]=r[0].replace(/^\r?\n/,"");var a=r[0];return e.forEach(function(n,o){var s=a.match(/(?:^|\n)( *)$/),l=s?s[1]:"",g=n;if(typeof n==="string"&&n.includes(`
`))g=String(n).split(`
`).map(function(C,B){return B===0?C:"".concat(l).concat(C)}).join(`
`);a+=g+r[o+1]}),a}var peA=()=>{};function xkA(A,{markdownAutoWrap:e}){let r=A.replace(/<br\/>/g,`
`).replace(/\n{2,}/g,`
`);return $G(r)}function SkA(A){return A.split(/\\n|\n|<br\s*\/?>/gi).map((e)=>e.trim().match(/<[^>]+>|[^\s<>]+/g)?.map((t)=>({content:t,type:"normal"}))??[])}function LkA(A,e={}){let t=xkA(A,e),r=ou.lexer(t),i=[[]],u=0;function a(n,o="normal"){if(n.type==="text")n.text.split(`
`).forEach((l,g)=>{if(g!==0)u++,i.push([]);l.split(" ").forEach((C)=>{if(C=C.replace(/&#39;/g,"'"),C)i[u].push({content:C,type:o})})});else if(n.type==="strong"||n.type==="em")n.tokens.forEach((s)=>{a(s,n.type)});else if(n.type==="html")i[u].push({content:n.text,type:"normal"})}return y(a,"processNode"),r.forEach((n)=>{if(n.type==="paragraph")n.tokens?.forEach((o)=>{a(o)});else if(n.type==="html")i[u].push({content:n.text,type:"normal"});else i[u].push({content:n.raw,type:"normal"})}),i}function RkA(A){if(!A)return"";return`<p>${A.replace(/\\n|\n/g,"<br />")}</p>`}function NkA(A,{markdownAutoWrap:e}={}){let t=ou.lexer(A);function r(i){if(i.type==="text"){if(e===!1)return i.text.replace(/\n */g,"<br/>").replace(/ /g,"&nbsp;");return i.text.replace(/\n */g,"<br/>")}else if(i.type==="strong")return`<strong>${i.tokens?.map(r).join("")}</strong>`;else if(i.type==="em")return`<em>${i.tokens?.map(r).join("")}</em>`;else if(i.type==="paragraph")return`<p>${i.tokens?.map(r).join("")}</p>`;else if(i.type==="space")return"";else if(i.type==="html")return`${i.text}`;else if(i.type==="escape")return i.text;return sA.warn(`Unsupported markdown: ${i.type}`),i.raw}return y(r,"output"),t.map(r).join("")}function GkA(A){if(Intl.Segmenter)return[...new Intl.Segmenter().segment(A)].map((e)=>e.segment);return[...A]}function UkA(A,e){let t=GkA(e.content);return DeA(A,[],t,e.type)}function DeA(A,e,t,r){if(t.length===0)return[{content:e.join(""),type:r},{content:"",type:r}];let[i,...u]=t,a=[...e,i];if(A([{content:a.join(""),type:r}]))return DeA(A,a,u,r);if(e.length===0&&i)e.push(i),t.shift();return[{content:e.join(""),type:r},{content:t.join(""),type:r}]}function MkA(A,e){if(A.some(({content:t})=>t.includes(`
`)))throw Error("splitLineToFitWidth does not support newlines in the line");return AU(A,e)}function AU(A,e,t=[],r=[]){if(A.length===0){if(r.length>0)t.push(r);return t.length>0?t:[]}let i="";if(A[0].content===" ")i=" ",A.shift();let u=A.shift()??{content:" ",type:"normal"},a=[...r];if(i!=="")a.push({content:i,type:"normal"});if(a.push(u),e(a))return AU(A,e,t,a);if(r.length>0)t.push(r),A.unshift(u);else if(u.content){let[n,o]=UkA(e,u);if(t.push([n]),o.content)A.unshift(o)}return AU(A,e,t)}function feA(A,e){if(e)A.attr("style",e)}async function TkA(A,e,t,r,i=!1,u=ot()){let a=A.append("foreignObject");a.attr("width",`${Math.min(10*t,FkA)}px`),a.attr("height",`${Math.min(10*t,FkA)}px`);let n=a.append("xhtml:div"),o=da(e.label)?await gD(e.label.replace(_e.lineBreakRegex,`
`),u):gr(e.label,u),s=e.isNode?"nodeLabel":"edgeLabel",l=n.append("span");if(l.html(o),feA(l,e.labelStyle),l.attr("class",`${s} ${r}`),feA(n,e.labelStyle),n.style("display","table-cell"),n.style("white-space","nowrap"),n.style("line-height","1.5"),t!==Number.POSITIVE_INFINITY)n.style("max-width",t+"px"),n.style("text-align","center");if(n.attr("xmlns","http://www.w3.org/1999/xhtml"),i)n.attr("class","labelBkg");let g=n.node().getBoundingClientRect();if(g.width===t)n.style("display","table"),n.style("white-space","break-spaces"),n.style("width",t+"px"),g=n.node().getBoundingClientRect();return a.node()}function eU(A,e,t,r=!1){let i=A.append("tspan").attr("class","text-outer-tspan").attr("x",0).attr("y",e*t-0.1+"em").attr("dy",t+"em");if(r)i.attr("text-anchor","middle");return i}function YkA(A,e,t){let r=A.append("text"),i=eU(r,1,e);tU(i,t);let u=i.node().getComputedTextLength();return r.remove(),u}function yeA(A,e,t){let r=A.append("text"),i=eU(r,1,e);tU(i,[{content:t,type:"normal"}]);let u=i.node()?.getBoundingClientRect();if(u)r.remove();return u}function HkA(A,e,t,r=!1,i=!1){let a=e.append("g"),n=a.insert("rect").attr("class","background").attr("style","stroke: none"),o=a.append("text").attr("y","-10.1");if(i)o.attr("text-anchor","middle");let s=0;for(let l of t){let g=y((B)=>YkA(a,1.1,B)<=A,"checkWidth"),C=g(l)?[l]:MkA(l,g);for(let B of C){let E=eU(o,s,1.1,i);tU(E,B),s++}}if(r){let l=o.node().getBBox(),g=2;return n.attr("x",l.x-2).attr("y",l.y-2).attr("width",l.width+4).attr("height",l.height+4),a.node()}else return o.node()}function meA(A){let e=/&(amp|lt|gt);/g;return A.replace(e,(t,r)=>{switch(r){case"amp":return"&";case"lt":return"<";case"gt":return">";default:return t}})}function tU(A,e){A.text(""),e.forEach((t,r)=>{let i=A.append("tspan").attr("font-style",t.type==="em"?"italic":"normal").attr("class","text-inner-tspan").attr("font-weight",t.type==="strong"?"bold":"normal");if(r===0)i.text(meA(t.content));else i.text(" "+meA(t.content))})}async function KkA(A,e={}){let t=[];A.replace(/(fa[bklrs]?):fa-([\w-]+)/g,(i,u,a)=>(t.push((async()=>{let n=`${u}:${a}`;if(await lkA(n))return await tg(n,void 0,{class:"label-icon"});else return`<i class='${gr(i,e).replace(":"," ")}'></i>`})()),i));let r=await Promise.all(t);return A.replace(/(fa[bklrs]?):fa-([\w-]+)/g,()=>r.shift()??"")}var FkA=16384,Rn;var uo=_(()=>{Ln();ai();rr();ir();Nt();Pr();kkA();peA();y(xkA,"preprocessMarkdown");y(SkA,"nonMarkdownToLines");y(LkA,"markdownToLines");y(RkA,"nonMarkdownToHTML");y(NkA,"markdownToHTML");y(GkA,"splitTextToChars");y(UkA,"splitWordToFitWidth");y(DeA,"splitWordToFitWidthRecursion");y(MkA,"splitLineToFitWidth");y(AU,"splitLineToFitWidthRecursion");y(feA,"applyStyle");y(TkA,"addHtmlSpan");y(eU,"createTspan");y(YkA,"computeWidthOfText");y(yeA,"computeDimensionOfText");y(HkA,"createFormattedText");y(meA,"decodeHTMLEntities");y(tU,"updateTextContentAndStyles");y(KkA,"replaceIconSubstring");Rn=y(async(A,e="",{style:t="",isTitle:r=!1,classes:i="",useHtmlLabels:u=!0,markdown:a=!0,isNode:n=!0,width:o=200,addSvgBackground:s=!1}={},l)=>{if(sA.debug("XYZ createText",e,t,r,i,u,n,"addSvgBackground: ",s),u){let g=a?NkA(e,l):RkA(e),C=await KkA(eg(g),l),B=e.replace(/\\\\/g,"\\"),E={isNode:n,label:da(e)?B:C,labelStyle:t.replace("fill:","color:")};return await TkA(A,E,o,i,s,l)}else{let g=eg(e.replace(/<br\s*\/?>/g,"<br/>")),C=a?LkA(g.replace("<br>","<br/>"),l):SkA(g),B=HkA(o,A,C,e?s:!1,!n);if(n){if(/stroke:/.exec(t))t=t.replace("stroke:","lineColor:");let E=t.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");Qe(B).attr("style",E)}else{let E=t.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/background:/g,"fill:");Qe(B).select("rect").attr("style",E.replace(/background:/g,"fill:"));let d=t.replace(/stroke:[^;]+;?/g,"").replace(/stroke-width:[^;]+;?/g,"").replace(/fill:[^;]+;?/g,"").replace(/color:/g,"fill:");Qe(B).select("text").attr("style",d)}if(r)Qe(B).selectAll("tspan.text-outer-tspan").classed("title-row",!0);else Qe(B).selectAll("tspan.text-outer-tspan").classed("row",!0);return B}},"createText")});function weA(A,e,t){if(A&&A.length){let[r,i]=e,u=Math.PI/180*t,a=Math.cos(u),n=Math.sin(u);for(let o of A){let[s,l]=o;o[0]=(s-r)*a-(l-i)*n+r,o[1]=(s-r)*n+(l-i)*a+i}}}function not(A,e){return A[0]===e[0]&&A[1]===e[1]}function oot(A,e,t,r=1){let i=t,u=Math.max(e,0.1),a=A[0]&&A[0][0]&&typeof A[0][0]=="number"?[A]:A,n=[0,0];if(i)for(let s of a)weA(s,n,i);let o=function(s,l,g){let C=[];for(let Q of s){let p=[...Q];not(p[0],p[p.length-1])||p.push([p[0][0],p[0][1]]),p.length>2&&C.push(p)}let B=[];l=Math.max(l,0.1);let E=[];for(let Q of C)for(let p=0;p<Q.length-1;p++){let m=Q[p],f=Q[p+1];if(m[1]!==f[1]){let D=Math.min(m[1],f[1]);E.push({ymin:D,ymax:Math.max(m[1],f[1]),x:D===m[1]?m[0]:f[0],islope:(f[0]-m[0])/(f[1]-m[1])})}}if(E.sort((Q,p)=>Q.ymin<p.ymin?-1:Q.ymin>p.ymin?1:Q.x<p.x?-1:Q.x>p.x?1:Q.ymax===p.ymax?0:(Q.ymax-p.ymax)/Math.abs(Q.ymax-p.ymax)),!E.length)return B;let d=[],I=E[0].ymin,h=0;for(;d.length||E.length;){if(E.length){let Q=-1;for(let p=0;p<E.length&&!(E[p].ymin>I);p++)Q=p;E.splice(0,Q+1).forEach((p)=>{d.push({s:I,edge:p})})}if(d=d.filter((Q)=>!(Q.edge.ymax<=I)),d.sort((Q,p)=>Q.edge.x===p.edge.x?0:(Q.edge.x-p.edge.x)/Math.abs(Q.edge.x-p.edge.x)),(g!==1||h%l==0)&&d.length>1)for(let Q=0;Q<d.length;Q+=2){let p=Q+1;if(p>=d.length)break;let m=d[Q].edge,f=d[p].edge;B.push([[Math.round(m.x),I],[Math.round(f.x),I]])}I+=g,d.forEach((Q)=>{Q.edge.x=Q.edge.x+g*Q.edge.islope}),h++}return B}(a,u,r);if(i){for(let s of a)weA(s,n,-i);(function(s,l,g){let C=[];s.forEach((B)=>C.push(...B)),weA(C,l,g)})(o,n,-i)}return o}function xv(A,e){var t;let r=e.hachureAngle+90,i=e.hachureGap;i<0&&(i=4*e.strokeWidth),i=Math.round(Math.max(i,0.1));let u=1;return e.roughness>=1&&(((t=e.randomizer)===null||t===void 0?void 0:t.next())||Math.random())>0.7&&(u=i),oot(A,i,r,u||1)}class gU{constructor(A){this.helper=A}fillPolygons(A,e){return this._fillPolygons(A,e)}_fillPolygons(A,e){let t=xv(A,e);return{type:"fillSketch",ops:this.renderLines(t,e)}}renderLines(A,e){let t=[];for(let r of A)t.push(...this.helper.doubleLineOps(r[0][0],r[0][1],r[1][0],r[1][1],e));return t}}function cU(A){let e=A[0],t=A[1];return Math.sqrt(Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2))}class XkA{constructor(A){this.helper=A}fillPolygons(A,e){let t=xv(A,e=Object.assign({},e,{hachureAngle:0}));return this.dotsOnLines(t,e)}dotsOnLines(A,e){let t=[],r=e.hachureGap;r<0&&(r=4*e.strokeWidth),r=Math.max(r,0.1);let i=e.fillWeight;i<0&&(i=e.strokeWidth/2);let u=r/4;for(let a of A){let n=cU(a),o=n/r,s=Math.ceil(o)-1,l=n-s*r,g=(a[0][0]+a[1][0])/2-r/4,C=Math.min(a[0][1],a[1][1]);for(let B=0;B<s;B++){let E=C+l+B*r,d=g-u+2*Math.random()*u,I=E-u+2*Math.random()*u,h=this.helper.ellipse(d,I,i,i,e);t.push(...h.ops)}}return{type:"fillSketch",ops:t}}}class $kA{constructor(A){this.helper=A}fillPolygons(A,e){let t=xv(A,e);return{type:"fillSketch",ops:this.dashedLine(t,e)}}dashedLine(A,e){let t=e.dashOffset<0?e.hachureGap<0?4*e.strokeWidth:e.hachureGap:e.dashOffset,r=e.dashGap<0?e.hachureGap<0?4*e.strokeWidth:e.hachureGap:e.dashGap,i=[];return A.forEach((u)=>{let a=cU(u),n=Math.floor(a/(t+r)),o=(a+r-n*(t+r))/2,s=u[0],l=u[1];s[0]>l[0]&&(s=u[1],l=u[0]);let g=Math.atan((l[1]-s[1])/(l[0]-s[0]));for(let C=0;C<n;C++){let B=C*(t+r),E=B+t,d=[s[0]+B*Math.cos(g)+o*Math.cos(g),s[1]+B*Math.sin(g)+o*Math.sin(g)],I=[s[0]+E*Math.cos(g)+o*Math.cos(g),s[1]+E*Math.sin(g)+o*Math.sin(g)];i.push(...this.helper.doubleLineOps(d[0],d[1],I[0],I[1],e))}}),i}}class AFA{constructor(A){this.helper=A}fillPolygons(A,e){let t=e.hachureGap<0?4*e.strokeWidth:e.hachureGap,r=e.zigzagOffset<0?t:e.zigzagOffset,i=xv(A,e=Object.assign({},e,{hachureGap:t+r}));return{type:"fillSketch",ops:this.zigzagLines(i,r,e)}}zigzagLines(A,e,t){let r=[];return A.forEach((i)=>{let u=cU(i),a=Math.round(u/(2*e)),n=i[0],o=i[1];n[0]>o[0]&&(n=i[1],o=i[0]);let s=Math.atan((o[1]-n[1])/(o[0]-n[0]));for(let l=0;l<a;l++){let g=2*l*e,C=2*(l+1)*e,B=Math.sqrt(2*Math.pow(e,2)),E=[n[0]+g*Math.cos(s),n[1]+g*Math.sin(s)],d=[n[0]+C*Math.cos(s),n[1]+C*Math.sin(s)],I=[E[0]+B*Math.cos(s+Math.PI/4),E[1]+B*Math.sin(s+Math.PI/4)];r.push(...this.helper.doubleLineOps(E[0],E[1],I[0],I[1],t),...this.helper.doubleLineOps(I[0],I[1],d[0],d[1],t))}}),r}}class eFA{constructor(A){this.seed=A}next(){return this.seed?(2147483647&(this.seed=Math.imul(48271,this.seed)))/2147483648:Math.random()}}function veA(A,e){return A.type===e}function ReA(A){let e=[],t=function(a){let n=[];for(;a!=="";)if(a.match(/^([ \t\r\n,]+)/))a=a.substr(RegExp.$1.length);else if(a.match(/^([aAcChHlLmMqQsStTvVzZ])/))n[n.length]={type:sot,text:RegExp.$1},a=a.substr(RegExp.$1.length);else{if(!a.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))return[];n[n.length]={type:beA,text:`${parseFloat(RegExp.$1)}`},a=a.substr(RegExp.$1.length)}return n[n.length]={type:JkA,text:""},n}(A),r="BOD",i=0,u=t[i];for(;!veA(u,JkA);){let a=0,n=[];if(r==="BOD"){if(u.text!=="M"&&u.text!=="m")return ReA("M0,0"+A);i++,a=rU[u.text],r=u.text}else veA(u,beA)?a=rU[r]:(i++,a=rU[u.text],r=u.text);if(!(i+a<t.length))throw Error("Path data ended short");for(let o=i;o<i+a;o++){let s=t[o];if(!veA(s,beA))throw Error("Param not a number: "+r+","+s.text);n[n.length]=+s.text}if(typeof rU[r]!="number")throw Error("Bad segment: "+r);{let o={key:r,data:n};e.push(o),i+=a,u=t[i],r==="M"&&(r="L"),r==="m"&&(r="l")}}return e}function tFA(A){let e=0,t=0,r=0,i=0,u=[];for(let{key:a,data:n}of A)switch(a){case"M":u.push({key:"M",data:[...n]}),[e,t]=n,[r,i]=n;break;case"m":e+=n[0],t+=n[1],u.push({key:"M",data:[e,t]}),r=e,i=t;break;case"L":u.push({key:"L",data:[...n]}),[e,t]=n;break;case"l":e+=n[0],t+=n[1],u.push({key:"L",data:[e,t]});break;case"C":u.push({key:"C",data:[...n]}),e=n[4],t=n[5];break;case"c":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"C",data:o}),e=o[4],t=o[5];break}case"Q":u.push({key:"Q",data:[...n]}),e=n[2],t=n[3];break;case"q":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"Q",data:o}),e=o[2],t=o[3];break}case"A":u.push({key:"A",data:[...n]}),e=n[5],t=n[6];break;case"a":e+=n[5],t+=n[6],u.push({key:"A",data:[n[0],n[1],n[2],n[3],n[4],e,t]});break;case"H":u.push({key:"H",data:[...n]}),e=n[0];break;case"h":e+=n[0],u.push({key:"H",data:[e]});break;case"V":u.push({key:"V",data:[...n]}),t=n[0];break;case"v":t+=n[0],u.push({key:"V",data:[t]});break;case"S":u.push({key:"S",data:[...n]}),e=n[2],t=n[3];break;case"s":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"S",data:o}),e=o[2],t=o[3];break}case"T":u.push({key:"T",data:[...n]}),e=n[0],t=n[1];break;case"t":e+=n[0],t+=n[1],u.push({key:"T",data:[e,t]});break;case"Z":case"z":u.push({key:"Z",data:[]}),e=r,t=i}return u}function rFA(A){let e=[],t="",r=0,i=0,u=0,a=0,n=0,o=0;for(let{key:s,data:l}of A){switch(s){case"M":e.push({key:"M",data:[...l]}),[r,i]=l,[u,a]=l;break;case"C":e.push({key:"C",data:[...l]}),r=l[4],i=l[5],n=l[2],o=l[3];break;case"L":e.push({key:"L",data:[...l]}),[r,i]=l;break;case"H":r=l[0],e.push({key:"L",data:[r,i]});break;case"V":i=l[0],e.push({key:"L",data:[r,i]});break;case"S":{let g=0,C=0;t==="C"||t==="S"?(g=r+(r-n),C=i+(i-o)):(g=r,C=i),e.push({key:"C",data:[g,C,...l]}),n=l[0],o=l[1],r=l[2],i=l[3];break}case"T":{let[g,C]=l,B=0,E=0;t==="Q"||t==="T"?(B=r+(r-n),E=i+(i-o)):(B=r,E=i);let d=r+2*(B-r)/3,I=i+2*(E-i)/3,h=g+2*(B-g)/3,Q=C+2*(E-C)/3;e.push({key:"C",data:[d,I,h,Q,g,C]}),n=B,o=E,r=g,i=C;break}case"Q":{let[g,C,B,E]=l,d=r+2*(g-r)/3,I=i+2*(C-i)/3,h=B+2*(g-B)/3,Q=E+2*(C-E)/3;e.push({key:"C",data:[d,I,h,Q,B,E]}),n=g,o=C,r=B,i=E;break}case"A":{let g=Math.abs(l[0]),C=Math.abs(l[1]),B=l[2],E=l[3],d=l[4],I=l[5],h=l[6];if(g===0||C===0)e.push({key:"C",data:[r,i,I,h,I,h]}),r=I,i=h;else if(r!==I||i!==h)iFA(r,i,I,h,g,C,B,E,d).forEach(function(Q){e.push({key:"C",data:Q})}),r=I,i=h;break}case"Z":e.push({key:"Z",data:[]}),r=u,i=a}t=s}return e}function vv(A,e,t){return[A*Math.cos(t)-e*Math.sin(t),A*Math.sin(t)+e*Math.cos(t)]}function iFA(A,e,t,r,i,u,a,n,o,s){let l=(g=a,Math.PI*g/180);var g;let C=[],B=0,E=0,d=0,I=0;if(s)[B,E,d,I]=s;else{[A,e]=vv(A,e,-l),[t,r]=vv(t,r,-l);let F=(A-t)/2,T=(e-r)/2,R=F*F/(i*i)+T*T/(u*u);R>1&&(R=Math.sqrt(R),i*=R,u*=R);let L=i*i,M=u*u,U=L*M-L*T*T-M*F*F,Y=L*T*T+M*F*F,H=(n===o?-1:1)*Math.sqrt(Math.abs(U/Y));d=H*i*T/u+(A+t)/2,I=H*-u*F/i+(e+r)/2,B=Math.asin(parseFloat(((e-I)/u).toFixed(9))),E=Math.asin(parseFloat(((r-I)/u).toFixed(9))),A<d&&(B=Math.PI-B),t<d&&(E=Math.PI-E),B<0&&(B=2*Math.PI+B),E<0&&(E=2*Math.PI+E),o&&B>E&&(B-=2*Math.PI),!o&&E>B&&(E-=2*Math.PI)}let h=E-B;if(Math.abs(h)>120*Math.PI/180){let F=E,T=t,R=r;E=o&&E>B?B+120*Math.PI/180*1:B+120*Math.PI/180*-1,C=iFA(t=d+i*Math.cos(E),r=I+u*Math.sin(E),T,R,i,u,a,0,o,[E,F,d,I])}h=E-B;let Q=Math.cos(B),p=Math.sin(B),m=Math.cos(E),f=Math.sin(E),D=Math.tan(h/4),w=1.3333333333333333*i*D,b=1.3333333333333333*u*D,k=[A,e],v=[A+w*p,e-b*Q],S=[t+w*f,r-b*m],x=[t,r];if(v[0]=2*k[0]-v[0],v[1]=2*k[1]-v[1],s)return[v,S,x].concat(C);{C=[v,S,x].concat(C);let F=[];for(let T=0;T<C.length;T+=3){let R=vv(C[T][0],C[T][1],l),L=vv(C[T+1][0],C[T+1][1],l),M=vv(C[T+2][0],C[T+2][1],l);F.push([R[0],R[1],L[0],L[1],M[0],M[1]])}return F}}function uFA(A,e,t,r,i){return{type:"path",ops:wQ(A,e,t,r,i)}}function aU(A,e,t){let r=(A||[]).length;if(r>2){let i=[];for(let u=0;u<r-1;u++)i.push(...wQ(A[u][0],A[u][1],A[u+1][0],A[u+1][1],t));return e&&i.push(...wQ(A[r-1][0],A[r-1][1],A[0][0],A[0][1],t)),{type:"path",ops:i}}return r===2?uFA(A[0][0],A[0][1],A[1][0],A[1][1],t):{type:"path",ops:[]}}function got(A,e,t,r,i){return function(u,a){return aU(u,!0,a)}([[A,e],[A+t,e],[A+t,e+r],[A,e+r]],i)}function OkA(A,e){if(A.length){let t=typeof A[0][0]=="number"?[A]:A,r=iU(t[0],1*(1+0.2*e.roughness),e),i=e.disableMultiStroke?[]:iU(t[0],1.5*(1+0.22*e.roughness),WkA(e));for(let u=1;u<t.length;u++){let a=t[u];if(a.length){let n=iU(a,1*(1+0.2*e.roughness),e),o=e.disableMultiStroke?[]:iU(a,1.5*(1+0.22*e.roughness),WkA(e));for(let s of n)s.op!=="move"&&r.push(s);for(let s of o)s.op!=="move"&&i.push(s)}}return{type:"path",ops:r.concat(i)}}return{type:"path",ops:[]}}function aFA(A,e,t){let r=Math.sqrt(2*Math.PI*Math.sqrt((Math.pow(A/2,2)+Math.pow(e/2,2))/2)),i=Math.ceil(Math.max(t.curveStepCount,t.curveStepCount/Math.sqrt(200)*r)),u=2*Math.PI/i,a=Math.abs(A/2),n=Math.abs(e/2),o=1-t.curveFitting;return a+=hr(a*o,t),n+=hr(n*o,t),{increment:u,rx:a,ry:n}}function xeA(A,e,t,r){let[i,u]=qkA(r.increment,A,e,r.rx,r.ry,1,r.increment*oU(0.1,oU(0.4,1,t),t),t),a=sU(i,null,t);if(!t.disableMultiStroke&&t.roughness!==0){let[n]=qkA(r.increment,A,e,r.rx,r.ry,1.5,0,t),o=sU(n,null,t);a=a.concat(o)}return{estimatedPoints:u,opset:{type:"path",ops:a}}}function PkA(A,e,t,r,i,u,a,n,o){let s=A,l=e,g=Math.abs(t/2),C=Math.abs(r/2);g+=hr(0.01*g,o),C+=hr(0.01*C,o);let B=i,E=u;for(;B<0;)B+=2*Math.PI,E+=2*Math.PI;E-B>2*Math.PI&&(B=0,E=2*Math.PI);let d=2*Math.PI/o.curveStepCount,I=Math.min(d/2,(E-B)/2),h=zkA(I,s,l,g,C,B,E,1,o);if(!o.disableMultiStroke){let Q=zkA(I,s,l,g,C,B,E,1.5,o);h.push(...Q)}return a&&(n?h.push(...wQ(s,l,s+g*Math.cos(B),l+C*Math.sin(B),o),...wQ(s,l,s+g*Math.cos(E),l+C*Math.sin(E),o)):h.push({op:"lineTo",data:[s,l]},{op:"lineTo",data:[s+g*Math.cos(B),l+C*Math.sin(B)]})),{type:"path",ops:h}}function _kA(A,e){let t=rFA(tFA(ReA(A))),r=[],i=[0,0],u=[0,0];for(let{key:a,data:n}of t)switch(a){case"M":u=[n[0],n[1]],i=[n[0],n[1]];break;case"L":r.push(...wQ(u[0],u[1],n[0],n[1],e)),u=[n[0],n[1]];break;case"C":{let[o,s,l,g,C,B]=n;r.push(...cot(o,s,l,g,C,B,u,e)),u=[C,B];break}case"Z":r.push(...wQ(u[0],u[1],i[0],i[1],e)),u=[i[0],i[1]]}return{type:"path",ops:r}}function keA(A,e){let t=[];for(let r of A)if(r.length){let i=e.maxRandomnessOffset||0,u=r.length;if(u>2){t.push({op:"move",data:[r[0][0]+hr(i,e),r[0][1]+hr(i,e)]});for(let a=1;a<u;a++)t.push({op:"lineTo",data:[r[a][0]+hr(i,e),r[a][1]+hr(i,e)]})}}return{type:"fillPath",ops:t}}function XD(A,e){return function(t,r){let i=t.fillStyle||"hachure";if(!il[i])switch(i){case"zigzag":il[i]||(il[i]=new VkA(r));break;case"cross-hatch":il[i]||(il[i]=new jkA(r));break;case"dots":il[i]||(il[i]=new XkA(r));break;case"dashed":il[i]||(il[i]=new $kA(r));break;case"zigzag-line":il[i]||(il[i]=new AFA(r));break;default:i="hachure",il[i]||(il[i]=new gU(r))}return il[i]}(e,lot).fillPolygons(A,e)}function WkA(A){let e=Object.assign({},A);return e.randomizer=void 0,A.seed&&(e.seed=A.seed+1),e}function nFA(A){return A.randomizer||(A.randomizer=new eFA(A.seed||0)),A.randomizer.next()}function oU(A,e,t,r=1){return t.roughness*r*(nFA(t)*(e-A)+A)}function hr(A,e,t=1){return oU(-A,A,e,t)}function wQ(A,e,t,r,i,u=!1){let a=u?i.disableMultiStrokeFill:i.disableMultiStroke,n=SeA(A,e,t,r,i,!0,!1);if(a)return n;let o=SeA(A,e,t,r,i,!0,!0);return n.concat(o)}function SeA(A,e,t,r,i,u,a){let n=Math.pow(A-t,2)+Math.pow(e-r,2),o=Math.sqrt(n),s=1;s=o<200?1:o>500?0.4:-0.0016668*o+1.233334;let l=i.maxRandomnessOffset||0;l*l*100>n&&(l=o/10);let g=l/2,C=0.2+0.2*nFA(i),B=i.bowing*i.maxRandomnessOffset*(r-e)/200,E=i.bowing*i.maxRandomnessOffset*(A-t)/200;B=hr(B,i,s),E=hr(E,i,s);let d=[],I=()=>hr(g,i,s),h=()=>hr(l,i,s),Q=i.preserveVertices;return u&&(a?d.push({op:"move",data:[A+(Q?0:I()),e+(Q?0:I())]}):d.push({op:"move",data:[A+(Q?0:hr(l,i,s)),e+(Q?0:hr(l,i,s))]})),a?d.push({op:"bcurveTo",data:[B+A+(t-A)*C+I(),E+e+(r-e)*C+I(),B+A+2*(t-A)*C+I(),E+e+2*(r-e)*C+I(),t+(Q?0:I()),r+(Q?0:I())]}):d.push({op:"bcurveTo",data:[B+A+(t-A)*C+h(),E+e+(r-e)*C+h(),B+A+2*(t-A)*C+h(),E+e+2*(r-e)*C+h(),t+(Q?0:h()),r+(Q?0:h())]}),d}function iU(A,e,t){if(!A.length)return[];let r=[];r.push([A[0][0]+hr(e,t),A[0][1]+hr(e,t)]),r.push([A[0][0]+hr(e,t),A[0][1]+hr(e,t)]);for(let i=1;i<A.length;i++)r.push([A[i][0]+hr(e,t),A[i][1]+hr(e,t)]),i===A.length-1&&r.push([A[i][0]+hr(e,t),A[i][1]+hr(e,t)]);return sU(r,null,t)}function sU(A,e,t){let r=A.length,i=[];if(r>3){let u=[],a=1-t.curveTightness;i.push({op:"move",data:[A[1][0],A[1][1]]});for(let n=1;n+2<r;n++){let o=A[n];u[0]=[o[0],o[1]],u[1]=[o[0]+(a*A[n+1][0]-a*A[n-1][0])/6,o[1]+(a*A[n+1][1]-a*A[n-1][1])/6],u[2]=[A[n+1][0]+(a*A[n][0]-a*A[n+2][0])/6,A[n+1][1]+(a*A[n][1]-a*A[n+2][1])/6],u[3]=[A[n+1][0],A[n+1][1]],i.push({op:"bcurveTo",data:[u[1][0],u[1][1],u[2][0],u[2][1],u[3][0],u[3][1]]})}if(e&&e.length===2){let n=t.maxRandomnessOffset;i.push({op:"lineTo",data:[e[0]+hr(n,t),e[1]+hr(n,t)]})}}else r===3?(i.push({op:"move",data:[A[1][0],A[1][1]]}),i.push({op:"bcurveTo",data:[A[1][0],A[1][1],A[2][0],A[2][1],A[2][0],A[2][1]]})):r===2&&i.push(...SeA(A[0][0],A[0][1],A[1][0],A[1][1],t,!0,!0));return i}function qkA(A,e,t,r,i,u,a,n){let o=[],s=[];if(n.roughness===0){A/=4,s.push([e+r*Math.cos(-A),t+i*Math.sin(-A)]);for(let l=0;l<=2*Math.PI;l+=A){let g=[e+r*Math.cos(l),t+i*Math.sin(l)];o.push(g),s.push(g)}s.push([e+r*Math.cos(0),t+i*Math.sin(0)]),s.push([e+r*Math.cos(A),t+i*Math.sin(A)])}else{let l=hr(0.5,n)-Math.PI/2;s.push([hr(u,n)+e+0.9*r*Math.cos(l-A),hr(u,n)+t+0.9*i*Math.sin(l-A)]);let g=2*Math.PI+l-0.01;for(let C=l;C<g;C+=A){let B=[hr(u,n)+e+r*Math.cos(C),hr(u,n)+t+i*Math.sin(C)];o.push(B),s.push(B)}s.push([hr(u,n)+e+r*Math.cos(l+2*Math.PI+0.5*a),hr(u,n)+t+i*Math.sin(l+2*Math.PI+0.5*a)]),s.push([hr(u,n)+e+0.98*r*Math.cos(l+a),hr(u,n)+t+0.98*i*Math.sin(l+a)]),s.push([hr(u,n)+e+0.9*r*Math.cos(l+0.5*a),hr(u,n)+t+0.9*i*Math.sin(l+0.5*a)])}return[s,o]}function zkA(A,e,t,r,i,u,a,n,o){let s=u+hr(0.1,o),l=[];l.push([hr(n,o)+e+0.9*r*Math.cos(s-A),hr(n,o)+t+0.9*i*Math.sin(s-A)]);for(let g=s;g<=a;g+=A)l.push([hr(n,o)+e+r*Math.cos(g),hr(n,o)+t+i*Math.sin(g)]);return l.push([e+r*Math.cos(a),t+i*Math.sin(a)]),l.push([e+r*Math.cos(a),t+i*Math.sin(a)]),sU(l,null,o)}function cot(A,e,t,r,i,u,a,n){let o=[],s=[n.maxRandomnessOffset||1,(n.maxRandomnessOffset||1)+0.3],l=[0,0],g=n.disableMultiStroke?1:2,C=n.preserveVertices;for(let B=0;B<g;B++)B===0?o.push({op:"move",data:[a[0],a[1]]}):o.push({op:"move",data:[a[0]+(C?0:hr(s[0],n)),a[1]+(C?0:hr(s[0],n))]}),l=C?[i,u]:[i+hr(s[B],n),u+hr(s[B],n)],o.push({op:"bcurveTo",data:[A+hr(s[B],n),e+hr(s[B],n),t+hr(s[B],n),r+hr(s[B],n),l[0],l[1]]});return o}function kv(A){return[...A]}function ZkA(A,e=0){let t=A.length;if(t<3)throw Error("A curve must have at least three points.");let r=[];if(t===3)r.push(kv(A[0]),kv(A[1]),kv(A[2]),kv(A[2]));else{let i=[];i.push(A[0],A[0]);for(let n=1;n<A.length;n++)i.push(A[n]),n===A.length-1&&i.push(A[n]);let u=[],a=1-e;r.push(kv(i[0]));for(let n=1;n+2<i.length;n++){let o=i[n];u[0]=[o[0],o[1]],u[1]=[o[0]+(a*i[n+1][0]-a*i[n-1][0])/6,o[1]+(a*i[n+1][1]-a*i[n-1][1])/6],u[2]=[i[n+1][0]+(a*i[n][0]-a*i[n+2][0])/6,i[n+1][1]+(a*i[n][1]-a*i[n+2][1])/6],u[3]=[i[n+1][0],i[n+1][1]],r.push(u[1],u[2],u[3])}}return r}function nU(A,e){return Math.pow(A[0]-e[0],2)+Math.pow(A[1]-e[1],2)}function Cot(A,e,t){let r=nU(e,t);if(r===0)return nU(A,e);let i=((A[0]-e[0])*(t[0]-e[0])+(A[1]-e[1])*(t[1]-e[1]))/r;return i=Math.max(0,Math.min(1,i)),nU(A,Bf(e,t,i))}function Bf(A,e,t){return[A[0]+(e[0]-A[0])*t,A[1]+(e[1]-A[1])*t]}function LeA(A,e,t,r){let i=r||[];if(function(n,o){let s=n[o+0],l=n[o+1],g=n[o+2],C=n[o+3],B=3*l[0]-2*s[0]-C[0];B*=B;let E=3*l[1]-2*s[1]-C[1];E*=E;let d=3*g[0]-2*C[0]-s[0];d*=d;let I=3*g[1]-2*C[1]-s[1];return I*=I,B<d&&(B=d),E<I&&(E=I),B+E}(A,e)<t){let n=A[e+0];if(i.length)(u=i[i.length-1],a=n,Math.sqrt(nU(u,a)))>1&&i.push(n);else i.push(n);i.push(A[e+3])}else{let o=A[e+0],s=A[e+1],l=A[e+2],g=A[e+3],C=Bf(o,s,0.5),B=Bf(s,l,0.5),E=Bf(l,g,0.5),d=Bf(C,B,0.5),I=Bf(B,E,0.5),h=Bf(d,I,0.5);LeA([o,C,d,h],0,t,i),LeA([h,I,E,g],0,t,i)}var u,a;return i}function Bot(A,e){return lU(A,0,A.length,e)}function lU(A,e,t,r,i){let u=i||[],a=A[e],n=A[t-1],o=0,s=1;for(let l=e+1;l<t-1;++l){let g=Cot(A[l],a,n);g>o&&(o=g,s=l)}return Math.sqrt(o)>r?(lU(A,e,s+1,r,u),lU(A,s,t,r,u)):(u.length||u.push(a),u.push(n)),u}function FeA(A,e=0.15,t){let r=[],i=(A.length-1)/3;for(let u=0;u<i;u++)LeA(A,3*u,e,r);return t&&t>0?lU(r,0,r.length,t):r}class Fv{constructor(A){this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:0.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:0.8},this.config=A||{},this.config.options&&(this.defaultOptions=this._o(this.config.options))}static newSeed(){return Math.floor(Math.random()*2147483648)}_o(A){return A?Object.assign({},this.defaultOptions,A):this.defaultOptions}_d(A,e,t){return{shape:A,sets:e||[],options:t||this.defaultOptions}}line(A,e,t,r,i){let u=this._o(i);return this._d("line",[uFA(A,e,t,r,u)],u)}rectangle(A,e,t,r,i){let u=this._o(i),a=[],n=got(A,e,t,r,u);if(u.fill){let o=[[A,e],[A+t,e],[A+t,e+r],[A,e+r]];u.fillStyle==="solid"?a.push(keA([o],u)):a.push(XD([o],u))}return u.stroke!==rg&&a.push(n),this._d("rectangle",a,u)}ellipse(A,e,t,r,i){let u=this._o(i),a=[],n=aFA(t,r,u),o=xeA(A,e,u,n);if(u.fill)if(u.fillStyle==="solid"){let s=xeA(A,e,u,n).opset;s.type="fillPath",a.push(s)}else a.push(XD([o.estimatedPoints],u));return u.stroke!==rg&&a.push(o.opset),this._d("ellipse",a,u)}circle(A,e,t,r){let i=this.ellipse(A,e,t,t,r);return i.shape="circle",i}linearPath(A,e){let t=this._o(e);return this._d("linearPath",[aU(A,!1,t)],t)}arc(A,e,t,r,i,u,a=!1,n){let o=this._o(n),s=[],l=PkA(A,e,t,r,i,u,a,!0,o);if(a&&o.fill)if(o.fillStyle==="solid"){let g=Object.assign({},o);g.disableMultiStroke=!0;let C=PkA(A,e,t,r,i,u,!0,!1,g);C.type="fillPath",s.push(C)}else s.push(function(g,C,B,E,d,I,h){let Q=g,p=C,m=Math.abs(B/2),f=Math.abs(E/2);m+=hr(0.01*m,h),f+=hr(0.01*f,h);let D=d,w=I;for(;D<0;)D+=2*Math.PI,w+=2*Math.PI;w-D>2*Math.PI&&(D=0,w=2*Math.PI);let b=(w-D)/h.curveStepCount,k=[];for(let v=D;v<=w;v+=b)k.push([Q+m*Math.cos(v),p+f*Math.sin(v)]);return k.push([Q+m*Math.cos(w),p+f*Math.sin(w)]),k.push([Q,p]),XD([k],h)}(A,e,t,r,i,u,o));return o.stroke!==rg&&s.push(l),this._d("arc",s,o)}curve(A,e){let t=this._o(e),r=[],i=OkA(A,t);if(t.fill&&t.fill!==rg)if(t.fillStyle==="solid"){let u=OkA(A,Object.assign(Object.assign({},t),{disableMultiStroke:!0,roughness:t.roughness?t.roughness+t.fillShapeRoughnessGain:0}));r.push({type:"fillPath",ops:this._mergedShape(u.ops)})}else{let u=[],a=A;if(a.length){let n=typeof a[0][0]=="number"?[a]:a;for(let o of n)o.length<3?u.push(...o):o.length===3?u.push(...FeA(ZkA([o[0],o[0],o[1],o[2]]),10,(1+t.roughness)/2)):u.push(...FeA(ZkA(o),10,(1+t.roughness)/2))}u.length&&r.push(XD([u],t))}return t.stroke!==rg&&r.push(i),this._d("curve",r,t)}polygon(A,e){let t=this._o(e),r=[],i=aU(A,!0,t);return t.fill&&(t.fillStyle==="solid"?r.push(keA([A],t)):r.push(XD([A],t))),t.stroke!==rg&&r.push(i),this._d("polygon",r,t)}path(A,e){let t=this._o(e),r=[];if(!A)return this._d("path",r,t);A=(A||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let i=t.fill&&t.fill!=="transparent"&&t.fill!==rg,u=t.stroke!==rg,a=!!(t.simplification&&t.simplification<1),n=function(s,l,g){let C=rFA(tFA(ReA(s))),B=[],E=[],d=[0,0],I=[],h=()=>{I.length>=4&&E.push(...FeA(I,l)),I=[]},Q=()=>{h(),E.length&&(B.push(E),E=[])};for(let{key:m,data:f}of C)switch(m){case"M":Q(),d=[f[0],f[1]],E.push(d);break;case"L":h(),E.push([f[0],f[1]]);break;case"C":if(!I.length){let D=E.length?E[E.length-1]:d;I.push([D[0],D[1]])}I.push([f[0],f[1]]),I.push([f[2],f[3]]),I.push([f[4],f[5]]);break;case"Z":h(),E.push([d[0],d[1]])}if(Q(),!g)return B;let p=[];for(let m of B){let f=Bot(m,g);f.length&&p.push(f)}return p}(A,1,a?4-4*(t.simplification||1):(1+t.roughness)/2),o=_kA(A,t);if(i)if(t.fillStyle==="solid")if(n.length===1){let s=_kA(A,Object.assign(Object.assign({},t),{disableMultiStroke:!0,roughness:t.roughness?t.roughness+t.fillShapeRoughnessGain:0}));r.push({type:"fillPath",ops:this._mergedShape(s.ops)})}else r.push(keA(n,t));else r.push(XD(n,t));return u&&(a?n.forEach((s)=>{r.push(aU(s,!1,t))}):r.push(o)),this._d("path",r,t)}opsToPath(A,e){let t="";for(let r of A.ops){let i=typeof e=="number"&&e>=0?r.data.map((u)=>+u.toFixed(e)):r.data;switch(r.op){case"move":t+=`M${i[0]} ${i[1]} `;break;case"bcurveTo":t+=`C${i[0]} ${i[1]}, ${i[2]} ${i[3]}, ${i[4]} ${i[5]} `;break;case"lineTo":t+=`L${i[0]} ${i[1]} `}}return t.trim()}toPaths(A){let e=A.sets||[],t=A.options||this.defaultOptions,r=[];for(let i of e){let u=null;switch(i.type){case"path":u={d:this.opsToPath(i),stroke:t.stroke,strokeWidth:t.strokeWidth,fill:rg};break;case"fillPath":u={d:this.opsToPath(i),stroke:rg,strokeWidth:0,fill:t.fill||rg};break;case"fillSketch":u=this.fillSketch(i,t)}u&&r.push(u)}return r}fillSketch(A,e){let t=e.fillWeight;return t<0&&(t=e.strokeWidth/2),{d:this.opsToPath(A),stroke:e.fill||rg,strokeWidth:t,fill:rg}}_mergedShape(A){return A.filter((e,t)=>t===0||e.op!=="move")}}class oFA{constructor(A,e){this.canvas=A,this.ctx=this.canvas.getContext("2d"),this.gen=new Fv(e)}draw(A){let e=A.sets||[],t=A.options||this.getDefaultOptions(),r=this.ctx,i=A.options.fixedDecimalPlaceDigits;for(let u of e)switch(u.type){case"path":r.save(),r.strokeStyle=t.stroke==="none"?"transparent":t.stroke,r.lineWidth=t.strokeWidth,t.strokeLineDash&&r.setLineDash(t.strokeLineDash),t.strokeLineDashOffset&&(r.lineDashOffset=t.strokeLineDashOffset),this._drawToContext(r,u,i),r.restore();break;case"fillPath":{r.save(),r.fillStyle=t.fill||"";let a=A.shape==="curve"||A.shape==="polygon"||A.shape==="path"?"evenodd":"nonzero";this._drawToContext(r,u,i,a),r.restore();break}case"fillSketch":this.fillSketch(r,u,t)}}fillSketch(A,e,t){let r=t.fillWeight;r<0&&(r=t.strokeWidth/2),A.save(),t.fillLineDash&&A.setLineDash(t.fillLineDash),t.fillLineDashOffset&&(A.lineDashOffset=t.fillLineDashOffset),A.strokeStyle=t.fill||"",A.lineWidth=r,this._drawToContext(A,e,t.fixedDecimalPlaceDigits),A.restore()}_drawToContext(A,e,t,r="nonzero"){A.beginPath();for(let i of e.ops){let u=typeof t=="number"&&t>=0?i.data.map((a)=>+a.toFixed(t)):i.data;switch(i.op){case"move":A.moveTo(u[0],u[1]);break;case"bcurveTo":A.bezierCurveTo(u[0],u[1],u[2],u[3],u[4],u[5]);break;case"lineTo":A.lineTo(u[0],u[1])}}e.type==="fillPath"?A.fill(r):A.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(A,e,t,r,i){let u=this.gen.line(A,e,t,r,i);return this.draw(u),u}rectangle(A,e,t,r,i){let u=this.gen.rectangle(A,e,t,r,i);return this.draw(u),u}ellipse(A,e,t,r,i){let u=this.gen.ellipse(A,e,t,r,i);return this.draw(u),u}circle(A,e,t,r){let i=this.gen.circle(A,e,t,r);return this.draw(i),i}linearPath(A,e){let t=this.gen.linearPath(A,e);return this.draw(t),t}polygon(A,e){let t=this.gen.polygon(A,e);return this.draw(t),t}arc(A,e,t,r,i,u,a=!1,n){let o=this.gen.arc(A,e,t,r,i,u,a,n);return this.draw(o),o}curve(A,e){let t=this.gen.curve(A,e);return this.draw(t),t}path(A,e){let t=this.gen.path(A,e);return this.draw(t),t}}class sFA{constructor(A,e){this.svg=A,this.gen=new Fv(e)}draw(A){let e=A.sets||[],t=A.options||this.getDefaultOptions(),r=this.svg.ownerDocument||window.document,i=r.createElementNS(uU,"g"),u=A.options.fixedDecimalPlaceDigits;for(let a of e){let n=null;switch(a.type){case"path":n=r.createElementNS(uU,"path"),n.setAttribute("d",this.opsToPath(a,u)),n.setAttribute("stroke",t.stroke),n.setAttribute("stroke-width",t.strokeWidth+""),n.setAttribute("fill","none"),t.strokeLineDash&&n.setAttribute("stroke-dasharray",t.strokeLineDash.join(" ").trim()),t.strokeLineDashOffset&&n.setAttribute("stroke-dashoffset",`${t.strokeLineDashOffset}`);break;case"fillPath":n=r.createElementNS(uU,"path"),n.setAttribute("d",this.opsToPath(a,u)),n.setAttribute("stroke","none"),n.setAttribute("stroke-width","0"),n.setAttribute("fill",t.fill||""),A.shape!=="curve"&&A.shape!=="polygon"||n.setAttribute("fill-rule","evenodd");break;case"fillSketch":n=this.fillSketch(r,a,t)}n&&i.appendChild(n)}return i}fillSketch(A,e,t){let r=t.fillWeight;r<0&&(r=t.strokeWidth/2);let i=A.createElementNS(uU,"path");return i.setAttribute("d",this.opsToPath(e,t.fixedDecimalPlaceDigits)),i.setAttribute("stroke",t.fill||""),i.setAttribute("stroke-width",r+""),i.setAttribute("fill","none"),t.fillLineDash&&i.setAttribute("stroke-dasharray",t.fillLineDash.join(" ").trim()),t.fillLineDashOffset&&i.setAttribute("stroke-dashoffset",`${t.fillLineDashOffset}`),i}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(A,e){return this.gen.opsToPath(A,e)}line(A,e,t,r,i){let u=this.gen.line(A,e,t,r,i);return this.draw(u)}rectangle(A,e,t,r,i){let u=this.gen.rectangle(A,e,t,r,i);return this.draw(u)}ellipse(A,e,t,r,i){let u=this.gen.ellipse(A,e,t,r,i);return this.draw(u)}circle(A,e,t,r){let i=this.gen.circle(A,e,t,r);return this.draw(i)}linearPath(A,e){let t=this.gen.linearPath(A,e);return this.draw(t)}polygon(A,e){let t=this.gen.polygon(A,e);return this.draw(t)}arc(A,e,t,r,i,u,a=!1,n){let o=this.gen.arc(A,e,t,r,i,u,a,n);return this.draw(o)}curve(A,e){let t=this.gen.curve(A,e);return this.draw(t)}path(A,e){let t=this.gen.path(A,e);return this.draw(t)}}var VkA,jkA,il,sot=0,beA=1,JkA=2,rU,lot,rg="none",uU="http://www.w3.org/2000/svg",Ne;var Kt=_(()=>{VkA=class VkA extends gU{fillPolygons(A,e){let t=e.hachureGap;t<0&&(t=4*e.strokeWidth),t=Math.max(t,0.1);let r=xv(A,Object.assign({},e,{hachureGap:t})),i=Math.PI/180*e.hachureAngle,u=[],a=0.5*t*Math.cos(i),n=0.5*t*Math.sin(i);for(let[o,s]of r)cU([o,s])&&u.push([[o[0]-a,o[1]+n],[...s]],[[o[0]+a,o[1]-n],[...s]]);return{type:"fillSketch",ops:this.renderLines(u,e)}}};jkA=class jkA extends gU{fillPolygons(A,e){let t=this._fillPolygons(A,e),r=Object.assign({},e,{hachureAngle:e.hachureAngle+90}),i=this._fillPolygons(A,r);return t.ops=t.ops.concat(i.ops),t}};il={};rU={A:7,a:7,C:6,c:6,H:1,h:1,L:2,l:2,M:2,m:2,Q:4,q:4,S:4,s:4,T:2,t:2,V:1,v:1,Z:0,z:0};lot={randOffset:function(A,e){return hr(A,e)},randOffsetWithRange:function(A,e,t){return oU(A,e,t)},ellipse:function(A,e,t,r,i){let u=aFA(t,r,i);return xeA(A,e,i,u).opset},doubleLineOps:function(A,e,t,r,i){return wQ(A,e,t,r,i,!0)}};Ne={canvas:(A,e)=>new oFA(A,e),svg:(A,e)=>new sFA(A,e),generator:(A)=>new Fv(A),newSeed:()=>Fv.newSeed()}});function pi(A){let e=A.map((t,r)=>`${r===0?"M":"L"}${t.x},${t.y}`);return e.push("Z"),e.join(" ")}function bQ(A,e,t,r,i,u){let a=[],n=50,o=t-A,s=r-e,l=o/u,g=2*Math.PI/l,C=e+s/2;for(let B=0;B<=50;B++){let E=B/50,d=A+E*o,I=C+i*Math.sin(g*(d-A));a.push({x:d,y:I})}return a}function Lv(A,e,t,r,i,u){let a=[],n=i*Math.PI/180,l=(u*Math.PI/180-n)/(r-1);for(let g=0;g<r;g++){let C=n+g*l,B=A+t*Math.cos(C),E=e+t*Math.sin(C);a.push({x:-B,y:-E})}return a}function UeA(A){let e=Array.from(A.childNodes).filter((o)=>o.tagName==="path"),t=document.createElementNS("http://www.w3.org/2000/svg","path"),r=e.map((o)=>o.getAttribute("d")).filter((o)=>o!==null).join(" ");t.setAttribute("d",r);let i=e.find((o)=>o.getAttribute("fill")!=="none"),u=e.find((o)=>o.getAttribute("stroke")!=="none"),a=y((o,s)=>o?.getAttribute(s)??void 0,"getAttr");if(i){let o={fill:a(i,"fill"),"fill-opacity":a(i,"fill-opacity")??"1"};Object.entries(o).forEach(([s,l])=>{if(l)t.setAttribute(s,l)})}if(u){let o={stroke:a(u,"stroke"),"stroke-width":a(u,"stroke-width")??"1","stroke-opacity":a(u,"stroke-opacity")??"1"};Object.entries(o).forEach(([s,l])=>{if(l)t.setAttribute(s,l)})}let n=document.createElementNS("http://www.w3.org/2000/svg","g");return n.appendChild(t),n}function DFA(A,e){return A.intersect(e)}function yFA(A,e,t,r){var{x:i,y:u}=A,a=i-r.x,n=u-r.y,o=Math.sqrt(e*e*n*n+t*t*a*a),s=Math.abs(e*t*a/o);if(r.x<i)s=-s;var l=Math.abs(e*t*n/o);if(r.y<u)l=-l;return{x:i+s,y:u+l}}function bFA(A,e,t){return wFA(A,e,e,t)}function vFA(A,e,t,r){{let i=e.y-A.y,u=A.x-e.x,a=e.x*A.y-A.x*e.y,n=i*t.x+u*t.y+a,o=i*r.x+u*r.y+a,s=0.000001;if(n!==0&&o!==0&&MeA(n,o))return;let l=r.y-t.y,g=t.x-r.x,C=r.x*t.y-t.x*r.y,B=l*A.x+g*A.y+C,E=l*e.x+g*e.y+C;if(Math.abs(B)<0.000001&&Math.abs(E)<0.000001&&MeA(B,E))return;let d=i*g-l*u;if(d===0)return;let I=Math.abs(d/2),h=u*C-g*a,Q=h<0?(h-I)/d:(h+I)/d;h=l*a-i*C;let p=h<0?(h-I)/d:(h+I)/d;return{x:Q,y:p}}}function MeA(A,e){return A*e>0}function kFA(A,e,t){let{x:r,y:i}=A,u=[],{POSITIVE_INFINITY:a,POSITIVE_INFINITY:n}=Number;if(typeof e.forEach==="function")e.forEach(function(l){a=Math.min(a,l.x),n=Math.min(n,l.y)});else a=Math.min(a,e.x),n=Math.min(n,e.y);let o=r-A.width/2-a,s=i-A.height/2-n;for(let l=0;l<e.length;l++){let g=e[l],C=e[l<e.length-1?l+1:0],B=bot(A,t,{x:o+g.x,y:s+g.y},{x:o+C.x,y:s+C.y});if(B)u.push(B)}if(!u.length)return A;if(u.length>1)u.sort(function(l,g){let C=l.x-t.x,B=l.y-t.y,E=Math.sqrt(C*C+B*B),d=g.x-t.x,I=g.y-t.y,h=Math.sqrt(d*d+I*I);return E<h?-1:E===h?0:1});return u[0]}function FFA(A,e){let{labelStyles:t}=wt(e);e.labelStyle=t;let r=Er(e),i=r;if(!r)i="anchor";let u=A.insert("g").attr("class",i).attr("id",e.domId||e.id),a=1,{cssStyles:n}=e,o=Ne.svg(u),s=St(e,{fill:"black",stroke:"none",fillStyle:"solid"});if(e.look!=="handDrawn")s.roughness=0;let l=o.circle(0,0,a*2,s),g=u.insert(()=>l,":first-child");return g.attr("class","anchor").attr("style",Sn(n)),_t(e,g),e.intersect=function(C){return sA.info("Circle intersect",e,a,C),vt.circle(e,a,C)},u}function TeA(A,e,t,r,i,u,a){let o=(A+t)/2,s=(e+r)/2,l=Math.atan2(r-e,t-A),g=(t-A)/2,C=(r-e)/2,B=g/i,E=C/u,d=Math.sqrt(B**2+E**2);if(d>1)throw Error("The given radii are too small to create an arc between the points.");let I=Math.sqrt(1-d**2),h=o+I*u*Math.sin(l)*(a?-1:1),Q=s-I*i*Math.cos(l)*(a?-1:1),p=Math.atan2((e-Q)/u,(A-h)/i),f=Math.atan2((r-Q)/u,(t-h)/i)-p;if(a&&f<0)f+=2*Math.PI;if(!a&&f>0)f-=2*Math.PI;let D=[];for(let w=0;w<20;w++){let b=w/19,k=p+b*f,v=h+i*Math.cos(k),S=Q+u*Math.sin(k);D.push({x:v,y:S})}return D}function xFA(A,e,t){let[r,i]=[e,t].sort((u,a)=>a-u);return i*(1-Math.sqrt(1-(A/r/2)**2))}async function SFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i,n=y((k)=>k+a,"calcTotalHeight"),o=y((k)=>{let v=k/2;return[v/(2.5+k/50),v]},"calcEllipseRadius"),{shapeSvg:s,bbox:l}=await Qr(A,e,Er(e)),g=n(e?.height?e?.height:l.height),[C,B]=o(g),E=xFA(g,C,B),I=(e?.width?e?.width:l.width)+u*2+E-E,h=g,{cssStyles:Q}=e,p=[{x:I/2,y:-h/2},{x:-I/2,y:-h/2},...TeA(-I/2,-h/2,-I/2,h/2,C,B,!1),{x:I/2,y:h/2},...TeA(I/2,h/2,I/2,-h/2,C,B,!0)],m=Ne.svg(s),f=St(e,{});if(e.look!=="handDrawn")f.roughness=0,f.fillStyle="solid";let D=pi(p),w=m.path(D,f),b=s.insert(()=>w,":first-child");if(b.attr("class","basic label-container outer-path"),Q&&e.look!=="handDrawn")b.selectAll("path").attr("style",Q);if(r&&e.look!=="handDrawn")b.selectAll("path").attr("style",r);return b.attr("transform",`translate(${C/2}, 0)`),_t(e,b),e.intersect=function(k){return vt.polygon(e,p,k)},s}function CI(A,e,t,r){return A.insert("polygon",":first-child").attr("points",r.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+t/2+")")}async function LFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?28:i,a=e.look==="neo"?24:i,{shapeSvg:n,bbox:o}=await Qr(A,e,Er(e)),s=(e?.width??o.width)+(e.look==="neo"?u*2:u+CU),l=(e?.height??o.height)+(e.look==="neo"?a*2:a),g=0,C=s,B=-l,E=0,d=[{x:g+CU,y:B},{x:C,y:B},{x:C,y:E},{x:g,y:E},{x:g,y:B+CU},{x:g+CU,y:B}],I,{cssStyles:h}=e;if(e.look==="handDrawn"){let Q=Ne.svg(n),p=St(e,{}),m=pi(d),f=Q.path(m,p);if(I=n.insert(()=>f,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),h)I.attr("style",h)}else I=CI(n,s,l,d);if(r)I.attr("style",r);return _t(e,I),e.intersect=function(Q){return vt.polygon(e,d,Q)},n}function RFA(A,e){let{nodeStyles:t}=wt(e);e.label="";let r=A.insert("g").attr("class",Er(e)).attr("id",e.domId??e.id),{cssStyles:i}=e,u=Math.max(28,e.width??0),a=[{x:0,y:u/2},{x:u/2,y:0},{x:0,y:-u/2},{x:-u/2,y:0}],n=Ne.svg(r),o=St(e,{});if(e.look!=="handDrawn")o.roughness=0,o.fillStyle="solid";let s=pi(a),l=n.path(s,o),g=r.insert(()=>l,":first-child");if(i&&e.look!=="handDrawn")g.selectAll("path").attr("style",i);if(t&&e.look!=="handDrawn")g.selectAll("path").attr("style",t);return e.width=28,e.height=28,e.intersect=function(C){return vt.polygon(e,a,C)},r}async function YeA(A,e,t){let{labelStyles:r,nodeStyles:i}=wt(e);e.labelStyle=r;let{shapeSvg:u,bbox:a,halfPadding:n}=await Qr(A,e,Er(e)),o=16,s=t?.padding??n,l=e.look==="neo"?a.width/2+o*2:a.width/2+s,g,{cssStyles:C}=e;if(e.look==="handDrawn"){let B=Ne.svg(u),E=St(e,{}),d=B.circle(0,0,l*2,E);g=u.insert(()=>d,":first-child"),g.attr("class","basic label-container").attr("style",Sn(C))}else g=u.insert("circle",":first-child").attr("class","basic label-container").attr("style",i).attr("r",l).attr("cx",0).attr("cy",0);return _t(e,g),e.calcIntersect=function(B,E){let d=B.width/2;return vt.circle(B,d,E)},e.intersect=function(B){return sA.info("Circle intersect",e,l,B),vt.circle(e,l,B)},u}function NFA(A){let e=Math.cos(Math.PI/4),t=Math.sin(Math.PI/4),r=A*2,i={x:r/2*e,y:r/2*t},u={x:-(r/2)*e,y:r/2*t},a={x:-(r/2)*e,y:-(r/2)*t},n={x:r/2*e,y:-(r/2)*t};return`M ${u.x},${u.y} L ${n.x},${n.y}
M ${i.x},${i.y} L ${a.x},${a.y}`}function GFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t,e.label="";let i=A.insert("g").attr("class",Er(e)).attr("id",e.domId??e.id),u=Math.max(30,e?.width??0),{cssStyles:a}=e,n=Ne.svg(i),o=St(e,{});if(e.look!=="handDrawn")o.roughness=0,o.fillStyle="solid";let s=n.circle(0,0,u*2,o),l=NFA(u),g=n.path(l,o),C=i.insert(()=>s,":first-child");if(C.insert(()=>g),C.attr("class","outer-path"),a&&e.look!=="handDrawn")C.selectAll("path").attr("style",a);if(r&&e.look!=="handDrawn")C.selectAll("path").attr("style",r);return _t(e,C),e.intersect=function(B){return sA.info("crossedCircle intersect",e,{radius:u,point:B}),vt.circle(e,u,B)},i}function lI(A,e,t,r=100,i=0,u=180){let a=[],n=i*Math.PI/180,l=(u*Math.PI/180-n)/(r-1);for(let g=0;g<r;g++){let C=n+g*l,B=A+t*Math.cos(C),E=e+t*Math.sin(C);a.push({x:-B,y:-E})}return a}async function UFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,label:a}=await Qr(A,e,Er(e)),n=e.look==="neo"?18:e.padding??0,o=e.look==="neo"?12:e.padding??0,s=u.width+n,l=u.height+o,g=Math.max(5,l*0.1),{cssStyles:C}=e,B=[...lI(s/2,-l/2,g,30,-90,0),{x:-s/2-g,y:g},...lI(s/2+g*2,-g,g,20,-180,-270),...lI(s/2+g*2,g,g,20,-90,-180),{x:-s/2-g,y:-l/2},...lI(s/2,l/2,g,20,0,90)],E=[{x:s/2,y:-l/2-g},{x:-s/2,y:-l/2-g},...lI(s/2,-l/2,g,20,-90,0),{x:-s/2-g,y:-g},...lI(s/2+s*0.1,-g,g,20,-180,-270),...lI(s/2+s*0.1,g,g,20,-90,-180),{x:-s/2-g,y:l/2},...lI(s/2,l/2,g,20,0,90),{x:-s/2,y:l/2+g},{x:s/2,y:l/2+g}],d=Ne.svg(i),I=St(e,{fill:"none"});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let Q=pi(B).replace("Z",""),p=d.path(Q,I),m=pi(E),f=d.path(m,{...I}),D=i.insert("g",":first-child");if(D.insert(()=>f,":first-child").attr("stroke-opacity",0),D.insert(()=>p,":first-child"),D.attr("class","text"),C&&e.look!=="handDrawn")D.selectAll("path").attr("style",C);if(r&&e.look!=="handDrawn")D.selectAll("path").attr("style",r);return D.attr("transform",`translate(${g}, 0)`),a.attr("transform",`translate(${-s/2+g-(u.x-(u.left??0))},${-l/2+(e.padding??0)/2-(u.y-(u.top??0))})`),_t(e,D),e.intersect=function(w){return vt.polygon(e,E,w)},i}function gI(A,e,t,r=100,i=0,u=180){let a=[],n=i*Math.PI/180,l=(u*Math.PI/180-n)/(r-1);for(let g=0;g<r;g++){let C=n+g*l,B=A+t*Math.cos(C),E=e+t*Math.sin(C);a.push({x:B,y:E})}return a}async function MFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,label:a}=await Qr(A,e,Er(e)),n=e.look==="neo"?18:e.padding??0,o=e.look==="neo"?12:e.padding??0,s=u.width+(e.look==="neo"?n*2:n),l=u.height+(e.look==="neo"?o*2:o),g=Math.max(5,l*0.1),{cssStyles:C}=e,B=[...gI(s/2,-l/2,g,20,-90,0),{x:s/2+g,y:-g},...gI(s/2+g*2,-g,g,20,-180,-270),...gI(s/2+g*2,g,g,20,-90,-180),{x:s/2+g,y:l/2},...gI(s/2,l/2,g,20,0,90)],E=[{x:-s/2,y:-l/2-g},{x:s/2,y:-l/2-g},...gI(s/2,-l/2,g,20,-90,0),{x:s/2+g,y:-g},...gI(s/2+g*2,-g,g,20,-180,-270),...gI(s/2+g*2,g,g,20,-90,-180),{x:s/2+g,y:l/2},...gI(s/2,l/2,g,20,0,90),{x:s/2,y:l/2+g},{x:-s/2,y:l/2+g}],d=Ne.svg(i),I=St(e,{fill:"none"});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let Q=pi(B).replace("Z",""),p=d.path(Q,I),m=pi(E),f=d.path(m,{...I}),D=i.insert("g",":first-child");if(D.insert(()=>f,":first-child").attr("stroke-opacity",0),D.insert(()=>p,":first-child"),D.attr("class","text"),C&&e.look!=="handDrawn")D.selectAll("path").attr("style",C);if(r&&e.look!=="handDrawn")D.selectAll("path").attr("style",r);return D.attr("transform",`translate(${-g}, 0)`),a.attr("transform",`translate(${-s/2+(e.padding??0)/2-(u.x-(u.left??0))},${-l/2+(e.padding??0)/2-(u.y-(u.top??0))})`),_t(e,D),e.intersect=function(w){return vt.polygon(e,E,w)},i}function a0(A,e,t,r=100,i=0,u=180){let a=[],n=i*Math.PI/180,l=(u*Math.PI/180-n)/(r-1);for(let g=0;g<r;g++){let C=n+g*l,B=A+t*Math.cos(C),E=e+t*Math.sin(C);a.push({x:-B,y:-E})}return a}async function TFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,label:a}=await Qr(A,e,Er(e)),n=e.look==="neo"?18:e.padding??0,o=e.look==="neo"?12:e.padding??0,s=u.width+(e.look==="neo"?n*2:n),l=u.height+(e.look==="neo"?o*2:o),g=Math.max(5,l*0.1),{cssStyles:C}=e,B=[...a0(s/2,-l/2,g,30,-90,0),{x:-s/2-g,y:g},...a0(s/2+g*2,-g,g,20,-180,-270),...a0(s/2+g*2,g,g,20,-90,-180),{x:-s/2-g,y:-l/2},...a0(s/2,l/2,g,20,0,90)],E=[...a0(-s/2+g+g/2,-l/2,g,20,-90,-180),{x:s/2-g/2,y:g},...a0(-s/2-g/2,-g,g,20,0,90),...a0(-s/2-g/2,g,g,20,-90,0),{x:s/2-g/2,y:-g},...a0(-s/2+g+g/2,l/2,g,30,-180,-270)],d=[{x:s/2,y:-l/2-g},{x:-s/2,y:-l/2-g},...a0(s/2,-l/2,g,20,-90,0),{x:-s/2-g,y:-g},...a0(s/2+g*2,-g,g,20,-180,-270),...a0(s/2+g*2,g,g,20,-90,-180),{x:-s/2-g,y:l/2},...a0(s/2,l/2,g,20,0,90),{x:-s/2,y:l/2+g},{x:s/2-g-g/2,y:l/2+g},...a0(-s/2+g+g/2,-l/2,g,20,-90,-180),{x:s/2-g/2,y:g},...a0(-s/2-g/2,-g,g,20,0,90),...a0(-s/2-g/2,g,g,20,-90,0),{x:s/2-g/2,y:-g},...a0(-s/2+g+g/2,l/2,g,30,-180,-270)],I=Ne.svg(i),h=St(e,{fill:"none"});if(e.look!=="handDrawn")h.roughness=0,h.fillStyle="solid";let p=pi(B).replace("Z",""),m=I.path(p,h),D=pi(E).replace("Z",""),w=I.path(D,h),b=pi(d),k=I.path(b,{...h}),v=i.insert("g",":first-child");if(v.insert(()=>k,":first-child").attr("stroke-opacity",0),v.insert(()=>m,":first-child"),v.insert(()=>w,":first-child"),v.attr("class","text"),C&&e.look!=="handDrawn")v.selectAll("path").attr("style",C);if(r&&e.look!=="handDrawn")v.selectAll("path").attr("style",r);return v.attr("transform",`translate(${g-g/4}, 0)`),a.attr("transform",`translate(${-s/2+(e.padding??0)/2-(u.x-(u.left??0))},${-l/2+(e.padding??0)/2-(u.y-(u.top??0))})`),_t(e,v),e.intersect=function(S){return vt.polygon(e,d,S)},i}async function YFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i,n=20,o=5,{shapeSvg:s,bbox:l}=await Qr(A,e,Er(e)),g=Math.max(n,(l.width+u*2)*1.25,e?.width??0),C=Math.max(o,l.height+a*2,e?.height??0),B=C/2,{cssStyles:E}=e,d=Ne.svg(s),I=St(e,{});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let h=g,Q=C,p=h-B,m=Q/4,f=[{x:p,y:0},{x:m,y:0},{x:0,y:Q/2},{x:m,y:Q},{x:p,y:Q},...Lv(-p,-Q/2,B,50,270,90)],D=pi(f),w=d.path(D,I),b=s.insert(()=>w,":first-child");if(b.attr("class","basic label-container outer-path"),E&&e.look!=="handDrawn")b.selectChildren("path").attr("style",E);if(r&&e.look!=="handDrawn")b.selectChildren("path").attr("style",r);return b.attr("transform",`translate(${-g/2}, ${-C/2})`),_t(e,b),e.intersect=function(k){return vt.polygon(e,f,k)},s}async function HFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?24:i,a=e.look==="neo"?24:i;if(e.width||e.height){let I=e.width??0;if(e.width=(e.width??0)-a,e.width<gFA)e.width=gFA;let Q=I/2/(2.5+I/50);if(e.height=(e.height??0)-u-Q*3,e.height<lFA)e.height=lFA}let{shapeSvg:n,bbox:o,label:s}=await Qr(A,e,Er(e)),l=(e.width?e.width:o.width)+a,g=l/2,C=g/(2.5+l/50),B=(e.height?e.height:o.height)+u+C,E,{cssStyles:d}=e;if(e.look==="handDrawn"){let I=Ne.svg(n),h=Fot(0,0,l,B,g,C),Q=xot(0,C,l,B,g,C),p=St(e,{}),m=I.path(h,p),f=I.path(Q,St(e,{fill:"none"}));if(E=n.insert(()=>f,":first-child"),E=n.insert(()=>m,":first-child"),E.attr("class","basic label-container"),d)E.attr("style",d)}else{let I=kot(0,0,l,B,g,C);E=n.insert("path",":first-child").attr("d",I).attr("class","basic label-container outer-path").attr("style",Sn(d)).attr("style",r)}return E.attr("label-offset-y",C),E.attr("transform",`translate(${-l/2}, ${-(B/2+C)})`),_t(e,E),s.attr("transform",`translate(${-(o.width/2)-(o.x-(o.left??0))}, ${-(o.height/2)+(e.padding??0)/1.5-(o.y-(o.top??0))})`),e.intersect=function(I){let h=vt.rect(e,I),Q=h.x-(e.x??0);if(g!=0&&(Math.abs(Q)<(e.width??0)/2||Math.abs(Q)==(e.width??0)/2&&Math.abs(h.y-(e.y??0))>(e.height??0)/2-C)){let p=C*C*(1-Q*Q/(g*g));if(p>0)p=Math.sqrt(p);if(p=C-p,I.y-(e.y??0)>0)p=-p;h.y+=p}return h},n}async function ty(A,e,t){let{labelStyles:r,nodeStyles:i}=wt(e);e.labelStyle=r;let{shapeSvg:u,bbox:a}=await Qr(A,e,Er(e)),n=Math.max(a.width+t.labelPaddingX*2,e?.width||0),o=Math.max(a.height+t.labelPaddingY*2,e?.height||0),s=-n/2,l=-o/2,g,{rx:C,ry:B}=e,{cssStyles:E}=e;if(t?.rx&&t.ry)C=t.rx,B=t.ry;if(e.look==="handDrawn"){let d=Ne.svg(u),I=St(e,{}),h=C||B?d.path(vQ(s,l,n,o,C||0),I):d.rectangle(s,l,n,o,I);g=u.insert(()=>h,":first-child"),g.attr("class","basic label-container").attr("style",Sn(E))}else g=u.insert("rect",":first-child"),g.attr("class","basic label-container").attr("style",i).attr("rx",Sn(C)).attr("ry",Sn(B)).attr("x",s).attr("y",l).attr("width",n).attr("height",o);return _t(e,g),e.calcIntersect=function(d,I){return vt.rect(d,I)},e.intersect=function(d){return vt.rect(e,d)},u}async function KFA(A,e){let{cssClasses:t,labelPaddingX:r,labelPaddingY:i,padding:u,width:a,height:n}=e,o={rx:0,ry:0,classes:t??"",labelPaddingX:r??(u??0)*2,labelPaddingY:i??u??0},s=await ty(A,e,o);if(e.look==="handDrawn"){let B=Ne.svg(s),E=St(e,{}),d=s.select(".basic.label-container > path:nth-child(2)"),I=d.node();if(!I)return s;let h=null;if(I instanceof SVGGraphicsElement)h=I.getBBox();else return s;return s.insert(()=>B.line(h.x,h.y,h.x+h.width,h.y,E),".basic.label-container g.label"),s.insert(()=>B.line(h.x,h.y+h.height,h.x+h.width,h.y+h.height,E),".basic.label-container g.label"),d.remove(),s}let l=s.select(".basic.label-container"),g=(Number(l.attr("width"))||a)??0,C=(Number(l.attr("height"))||n)??0;if(g>0&&C>0)l.attr("stroke-dasharray",`${g} ${C}`);return s}async function JFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.look==="neo"?16:e.padding??0,u=e.look==="neo"?16:e.padding??0,{shapeSvg:a,bbox:n,label:o}=await Qr(A,e,Er(e)),s=n.width+i,l=n.height+u,g=l*0.2,C=-s/2,B=-l/2-g/2,{cssStyles:E}=e,d=Ne.svg(a),I=St(e,{});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let h=[{x:C,y:B+g},{x:-C,y:B+g},{x:-C,y:-B},{x:C,y:-B},{x:C,y:B},{x:-C,y:B},{x:-C,y:B+g}],Q=d.polygon(h.map((m)=>[m.x,m.y]),I),p=a.insert(()=>Q,":first-child");if(p.attr("class","basic label-container outer-path"),E&&e.look!=="handDrawn")p.selectAll("path").attr("style",E);if(r&&e.look!=="handDrawn")p.selectAll("path").attr("style",r);return o.attr("transform",`translate(${C+(e.padding??0)/2-(n.x-(n.left??0))}, ${B+g+(e.padding??0)/2-(n.y-(n.top??0))})`),_t(e,p),e.intersect=function(m){return vt.rect(e,m)},a}async function OFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e),i=e.look==="neo"?12:5;e.labelStyle=t;let u=e.padding??0,a=e.look==="neo"?16:u,{shapeSvg:n,bbox:o}=await Qr(A,e,Er(e)),s=(e?.width?e?.width/2:o.width/2)+(a??0),l=s-i,g,{cssStyles:C}=e;if(e.look==="handDrawn"){let B=Ne.svg(n),E=St(e,{roughness:0.2,strokeWidth:2.5}),d=St(e,{roughness:0.2,strokeWidth:1.5}),I=B.circle(0,0,s*2,E),h=B.circle(0,0,l*2,d);g=n.insert("g",":first-child"),g.attr("class",Sn(e.cssClasses)).attr("style",Sn(C)),g.node()?.appendChild(I),g.node()?.appendChild(h)}else{g=n.insert("g",":first-child");let B=g.insert("circle",":first-child"),E=g.insert("circle");g.attr("class","basic label-container").attr("style",r),B.attr("class","outer-circle").attr("style",r).attr("r",s).attr("cx",0).attr("cy",0),E.attr("class","inner-circle").attr("style",r).attr("r",l).attr("cx",0).attr("cy",0)}return _t(e,g),e.intersect=function(B){return sA.info("DoubleCircle intersect",e,s,B),vt.circle(e,s,B)},n}function PFA(A,e,{config:{themeVariables:t}}){let{labelStyles:r,nodeStyles:i}=wt(e);e.label="",e.labelStyle=r;let u=A.insert("g").attr("class",Er(e)).attr("id",e.domId??e.id),a=7,{cssStyles:n}=e,o=Ne.svg(u),{nodeBorder:s}=t,l=St(e,{fillStyle:"solid"});if(e.look!=="handDrawn")l.roughness=0;let g=o.circle(0,0,a*2,l),C=u.insert(()=>g,":first-child");if(C.selectAll("path").attr("style",`fill: ${s} !important;`),n&&n.length>0&&e.look!=="handDrawn")C.selectAll("path").attr("style",n);if(i&&e.look!=="handDrawn")C.selectAll("path").attr("style",i);return _t(e,C),e.intersect=function(B){return sA.info("filledCircle intersect",e,{radius:a,point:B}),vt.circle(e,a,B)},u}async function _FA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?i*2:i;if(e.width||e.height){if(e.height=e?.height??0,e.height<cFA)e.height=cFA;if(e.width=(e?.width??0)-u-u/2,e.width<CFA)e.width=CFA}let{shapeSvg:a,bbox:n,label:o}=await Qr(A,e,Er(e)),s=(e?.width?e?.width:n.width)+(u??0),l=e?.height?e?.height:s+n.height,g=l,C=[{x:0,y:-l},{x:g,y:-l},{x:g/2,y:0}],{cssStyles:B}=e,E=Ne.svg(a),d=St(e,{});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=pi(C),h=E.path(I,d),Q=a.insert(()=>h,":first-child").attr("transform",`translate(${-l/2}, ${l/2})`).attr("class","outer-path");if(B&&e.look!=="handDrawn")Q.selectChildren("path").attr("style",B);if(r&&e.look!=="handDrawn")Q.selectChildren("path").attr("style",r);return e.width=s,e.height=l,_t(e,Q),o.attr("transform",`translate(${-n.width/2-(n.x-(n.left??0))}, ${-l/2+(e.padding??0)/2+(n.y-(n.top??0))})`),e.intersect=function(p){return sA.info("Triangle intersect",e,C,p),vt.polygon(e,C,p)},a}function WFA(A,e,{dir:t,config:{state:r,themeVariables:i}}){let{nodeStyles:u}=wt(e);e.label="";let a=A.insert("g").attr("class",Er(e)).attr("id",e.domId??e.id),{cssStyles:n}=e,o=Math.max(70,e?.width??0),s=Math.max(10,e?.height??0);if(t==="LR")o=Math.max(10,e?.width??0),s=Math.max(70,e?.height??0);let l=-1*o/2,g=-1*s/2,C=Ne.svg(a),B=St(e,{stroke:i.lineColor,fill:i.lineColor});if(e.look!=="handDrawn")B.roughness=0,B.fillStyle="solid";let E=C.rectangle(l,g,o,s,B),d=a.insert(()=>E,":first-child");if(n&&e.look!=="handDrawn")d.selectAll("path").attr("style",n);if(u&&e.look!=="handDrawn")d.selectAll("path").attr("style",u);_t(e,d);let I=r?.padding??0;if(e.width&&e.height)e.width+=I/2||0,e.height+=I/2||0;return e.intersect=function(h){return vt.rect(e,h)},a}async function qFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=15,u=10,a=e.look==="neo"?16:e.padding??0,n=e.look==="neo"?12:e.padding??0;if(e.width||e.height){if(e.height=(e?.height??0)-n*2,e.height<u)e.height=u;if(e.width=(e?.width??0)-a*2,e.width<i)e.width=i}let{shapeSvg:o,bbox:s}=await Qr(A,e,Er(e)),l=(e?.width?e?.width:Math.max(i,s.width))+a*2,g=(e?.height?e?.height:Math.max(u,s.height))+n*2,C=g/2,{cssStyles:B}=e,E=Ne.svg(o),d=St(e,{});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=[{x:-l/2,y:-g/2},{x:l/2-C,y:-g/2},...Lv(-l/2+C,0,C,50,90,270),{x:l/2-C,y:g/2},{x:-l/2,y:g/2}],h=pi(I),Q=E.path(h,d),p=o.insert(()=>Q,":first-child");if(p.attr("class","basic label-container outer-path"),B&&e.look!=="handDrawn")p.selectChildren("path").attr("style",B);if(r&&e.look!=="handDrawn")p.selectChildren("path").attr("style",r);return _t(e,p),e.intersect=function(m){return sA.info("Pill intersect",e,{radius:C,point:m}),vt.polygon(e,I,m)},o}async function zFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e),i=e.look==="neo"?3.5:4;e.labelStyle=t;let u=e.padding??0,a=70,n=32,o=e.look==="neo"?a:u,s=e.look==="neo"?n:u;if(e.width||e.height){let p=(e.height??0)/i;e.width=(e?.width??0)-2*p-s,e.height=(e.height??0)-o}let{shapeSvg:l,bbox:g}=await Qr(A,e,Er(e)),C=(e?.height?e?.height:g.height)+o,B=C/i,E=(e?.width?e?.width:g.width)+2*B+s,d=[{x:B,y:0},{x:E-B,y:0},{x:E,y:-C/2},{x:E-B,y:-C},{x:B,y:-C},{x:0,y:-C/2}],I,{cssStyles:h}=e;if(e.look==="handDrawn"){let Q=Ne.svg(l),p=St(e,{}),m=Sot(0,0,E,C,B),f=Q.path(m,p);if(I=l.insert(()=>f,":first-child").attr("transform",`translate(${-E/2}, ${C/2})`),h)I.attr("style",h)}else I=CI(l,E,C,d);if(r)I.attr("style",r);return e.width=E,e.height=C,_t(e,I),e.intersect=function(Q){return vt.polygon(e,d,Q)},l}async function ZFA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.label="",e.labelStyle=t;let{shapeSvg:i}=await Qr(A,e,Er(e)),u=Math.max(30,e?.width??0),a=Math.max(30,e?.height??0),{cssStyles:n}=e,o=Ne.svg(i),s=St(e,{});if(e.look!=="handDrawn")s.roughness=0,s.fillStyle="solid";let l=[{x:0,y:0},{x:u,y:0},{x:0,y:a},{x:u,y:a}],g=pi(l),C=o.path(g,s),B=i.insert(()=>C,":first-child");if(B.attr("class","basic label-container outer-path"),n&&e.look!=="handDrawn")B.selectChildren("path").attr("style",n);if(r&&e.look!=="handDrawn")B.selectChildren("path").attr("style",r);return B.attr("transform",`translate(${-u/2}, ${-a/2})`),_t(e,B),e.intersect=function(E){return sA.info("Pill intersect",e,{points:l}),vt.polygon(e,l,E)},i}async function VFA(A,e,{config:{themeVariables:t,flowchart:r}}){let{labelStyles:i}=wt(e);e.labelStyle=i;let u=e.assetHeight??48,a=e.assetWidth??48,n=Math.max(u,a),o=r?.wrappingWidth;e.width=Math.max(n,o??0);let{shapeSvg:s,bbox:l,label:g}=await Qr(A,e,"icon-shape default"),C=e.pos==="t",B=n,E=n,{nodeBorder:d}=t,{stylesMap:I}=sf(e),h=-E/2,Q=-B/2,p=e.label?8:0,m=Ne.svg(s),f=St(e,{stroke:"none",fill:"none"});if(e.look!=="handDrawn")f.roughness=0,f.fillStyle="solid";let D=m.rectangle(h,Q,E,B,f),w=Math.max(E,l.width),b=B+l.height+p,k=m.rectangle(-w/2,-b/2,w,b,{...f,fill:"transparent",stroke:"none"}),v=s.insert(()=>D,":first-child"),S=s.insert(()=>k);if(e.icon){let x=s.append("g");x.html(`<g>${await tg(e.icon,{height:n,width:n,fallbackPrefix:""})}</g>`);let F=x.node().getBBox(),{width:T,height:R,x:L,y:M}=F;x.attr("transform",`translate(${-T/2-L},${C?l.height/2+p/2-R/2-M:-l.height/2-p/2-R/2-M})`),x.attr("style",`color: ${I.get("stroke")??d};`)}return g.attr("transform",`translate(${-l.width/2-(l.x-(l.left??0))},${C?-b/2:b/2-l.height})`),v.attr("transform",`translate(0,${C?l.height/2+p/2:-l.height/2-p/2})`),_t(e,S),e.intersect=function(x){if(sA.info("iconSquare intersect",e,x),!e.label)return vt.rect(e,x);let F=e.x??0,T=e.y??0,R=e.height??0,L=[];if(C)L=[{x:F-l.width/2,y:T-R/2},{x:F+l.width/2,y:T-R/2},{x:F+l.width/2,y:T-R/2+l.height+p},{x:F+E/2,y:T-R/2+l.height+p},{x:F+E/2,y:T+R/2},{x:F-E/2,y:T+R/2},{x:F-E/2,y:T-R/2+l.height+p},{x:F-l.width/2,y:T-R/2+l.height+p}];else L=[{x:F-E/2,y:T-R/2},{x:F+E/2,y:T-R/2},{x:F+E/2,y:T-R/2+B},{x:F+l.width/2,y:T-R/2+B},{x:F+l.width/2/2,y:T+R/2},{x:F-l.width/2,y:T+R/2},{x:F-l.width/2,y:T-R/2+B},{x:F-E/2,y:T-R/2+B}];return vt.polygon(e,L,x)},s}async function jFA(A,e,{config:{themeVariables:t,flowchart:r}}){let{labelStyles:i}=wt(e);e.labelStyle=i;let u=e.assetHeight??48,a=e.assetWidth??48,n=Math.max(u,a),o=r?.wrappingWidth;e.width=Math.max(n,o??0);let{shapeSvg:s,bbox:l,label:g}=await Qr(A,e,"icon-shape default"),C=20,B=e.label?8:0,E=e.pos==="t",{nodeBorder:d,mainBkg:I}=t,{stylesMap:h}=sf(e),Q=Ne.svg(s),p=St(e,{});if(e.look!=="handDrawn")p.roughness=0,p.fillStyle="solid";let m=h.get("fill");p.stroke=m??I;let f=s.append("g");if(e.icon)f.html(`<g>${await tg(e.icon,{height:n,width:n,fallbackPrefix:""})}</g>`);let D=f.node().getBBox(),{width:w,height:b,x:k,y:v}=D,S=Math.max(w,b)*Math.SQRT2+C*2,x=Q.circle(0,0,S,p),F=Math.max(S,l.width),T=S+l.height+B,R=Q.rectangle(-F/2,-T/2,F,T,{...p,fill:"transparent",stroke:"none"}),L=s.insert(()=>x,":first-child"),M=s.insert(()=>R);return f.attr("transform",`translate(${-w/2-k},${E?l.height/2+B/2-b/2-v:-l.height/2-B/2-b/2-v})`),f.attr("style",`color: ${h.get("stroke")??d};`),g.attr("transform",`translate(${-l.width/2-(l.x-(l.left??0))},${E?-T/2:T/2-l.height})`),L.attr("transform",`translate(0,${E?l.height/2+B/2:-l.height/2-B/2})`),_t(e,M),e.intersect=function(U){return sA.info("iconSquare intersect",e,U),vt.rect(e,U)},s}async function XFA(A,e,{config:{themeVariables:t,flowchart:r}}){let{labelStyles:i}=wt(e);e.labelStyle=i;let u=e.assetHeight??48,a=e.assetWidth??48,n=Math.max(u,a),o=r?.wrappingWidth;e.width=Math.max(n,o??0);let{shapeSvg:s,bbox:l,halfPadding:g,label:C}=await Qr(A,e,"icon-shape default"),B=e.pos==="t",E=n+g*2,d=n+g*2,{nodeBorder:I,mainBkg:h}=t,{stylesMap:Q}=sf(e),p=-d/2,m=-E/2,f=e.label?8:0,D=Ne.svg(s),w=St(e,{});if(e.look!=="handDrawn")w.roughness=0,w.fillStyle="solid";let b=Q.get("fill");w.stroke=b??h;let k=D.path(vQ(p,m,d,E,5),w),v=Math.max(d,l.width),S=E+l.height+f,x=D.rectangle(-v/2,-S/2,v,S,{...w,fill:"transparent",stroke:"none"}),F=s.insert(()=>k,":first-child").attr("class","icon-shape2"),T=s.insert(()=>x);if(e.icon){let R=s.append("g");R.html(`<g>${await tg(e.icon,{height:n,width:n,fallbackPrefix:""})}</g>`);let L=R.node().getBBox(),{width:M,height:U,x:Y,y:H}=L;R.attr("transform",`translate(${-M/2-Y},${B?l.height/2+f/2-U/2-H:-l.height/2-f/2-U/2-H})`),R.attr("style",`color: ${Q.get("stroke")??I};`)}return C.attr("transform",`translate(${-l.width/2-(l.x-(l.left??0))},${B?-S/2:S/2-l.height})`),F.attr("transform",`translate(0,${B?l.height/2+f/2:-l.height/2-f/2})`),_t(e,T),e.intersect=function(R){if(sA.info("iconSquare intersect",e,R),!e.label)return vt.rect(e,R);let L=e.x??0,M=e.y??0,U=e.height??0,Y=[];if(B)Y=[{x:L-l.width/2,y:M-U/2},{x:L+l.width/2,y:M-U/2},{x:L+l.width/2,y:M-U/2+l.height+f},{x:L+d/2,y:M-U/2+l.height+f},{x:L+d/2,y:M+U/2},{x:L-d/2,y:M+U/2},{x:L-d/2,y:M-U/2+l.height+f},{x:L-l.width/2,y:M-U/2+l.height+f}];else Y=[{x:L-d/2,y:M-U/2},{x:L+d/2,y:M-U/2},{x:L+d/2,y:M-U/2+E},{x:L+l.width/2,y:M-U/2+E},{x:L+l.width/2/2,y:M+U/2},{x:L-l.width/2,y:M+U/2},{x:L-l.width/2,y:M-U/2+E},{x:L-d/2,y:M-U/2+E}];return vt.polygon(e,Y,R)},s}async function $FA(A,e,{config:{themeVariables:t,flowchart:r}}){let{labelStyles:i}=wt(e);e.labelStyle=i;let u=e.assetHeight??48,a=e.assetWidth??48,n=Math.max(u,a),o=r?.wrappingWidth;e.width=Math.max(n,o??0);let{shapeSvg:s,bbox:l,halfPadding:g,label:C}=await Qr(A,e,"icon-shape default"),B=e.pos==="t",E=n+g*2,d=n+g*2,{nodeBorder:I,mainBkg:h}=t,{stylesMap:Q}=sf(e),p=-d/2,m=-E/2,f=e.label?8:0,D=Ne.svg(s),w=St(e,{});if(e.look!=="handDrawn")w.roughness=0,w.fillStyle="solid";let b=Q.get("fill");w.stroke=b??h;let k=D.path(vQ(p,m,d,E,0.1),w),v=Math.max(d,l.width),S=E+l.height+f,x=D.rectangle(-v/2,-S/2,v,S,{...w,fill:"transparent",stroke:"none"}),F=s.insert(()=>k,":first-child"),T=s.insert(()=>x);if(e.icon){let R=s.append("g");R.html(`<g>${await tg(e.icon,{height:n,width:n,fallbackPrefix:""})}</g>`);let L=R.node().getBBox(),{width:M,height:U,x:Y,y:H}=L;R.attr("transform",`translate(${-M/2-Y},${B?l.height/2+f/2-U/2-H:-l.height/2-f/2-U/2-H})`),R.attr("style",`color: ${Q.get("stroke")??I};`)}return C.attr("transform",`translate(${-l.width/2-(l.x-(l.left??0))},${B?-S/2:S/2-l.height})`),F.attr("transform",`translate(0,${B?l.height/2+f/2:-l.height/2-f/2})`),_t(e,T),e.intersect=function(R){if(sA.info("iconSquare intersect",e,R),!e.label)return vt.rect(e,R);let L=e.x??0,M=e.y??0,U=e.height??0,Y=[];if(B)Y=[{x:L-l.width/2,y:M-U/2},{x:L+l.width/2,y:M-U/2},{x:L+l.width/2,y:M-U/2+l.height+f},{x:L+d/2,y:M-U/2+l.height+f},{x:L+d/2,y:M+U/2},{x:L-d/2,y:M+U/2},{x:L-d/2,y:M-U/2+l.height+f},{x:L-l.width/2,y:M-U/2+l.height+f}];else Y=[{x:L-d/2,y:M-U/2},{x:L+d/2,y:M-U/2},{x:L+d/2,y:M-U/2+E},{x:L+l.width/2,y:M-U/2+E},{x:L+l.width/2/2,y:M+U/2},{x:L-l.width/2,y:M+U/2},{x:L-l.width/2,y:M-U/2+E},{x:L-d/2,y:M-U/2+E}];return vt.polygon(e,Y,R)},s}async function AxA(A,e,{config:{flowchart:t}}){let r=new Image;r.src=e?.img??"",await r.decode();let i=Number(r.naturalWidth.toString().replace("px","")),u=Number(r.naturalHeight.toString().replace("px",""));e.imageAspectRatio=i/u;let{labelStyles:a}=wt(e);e.labelStyle=a;let n=t?.wrappingWidth;e.defaultWidth=t?.wrappingWidth;let o=Math.max(e.label?n??0:0,e?.assetWidth??i),s=e.constraint==="on"?e?.assetHeight?e.assetHeight*e.imageAspectRatio:o:o,l=e.constraint==="on"?s/e.imageAspectRatio:e?.assetHeight??u;e.width=Math.max(s,n??0);let{shapeSvg:g,bbox:C,label:B}=await Qr(A,e,"image-shape default"),E=e.pos==="t",d=-s/2,I=-l/2,h=e.label?8:0,Q=Ne.svg(g),p=St(e,{});if(e.look!=="handDrawn")p.roughness=0,p.fillStyle="solid";let m=Q.rectangle(d,I,s,l,p),f=Math.max(s,C.width),D=l+C.height+h,w=Q.rectangle(-f/2,-D/2,f,D,{...p,fill:"none",stroke:"none"}),b=g.insert(()=>m,":first-child"),k=g.insert(()=>w);if(e.img){let v=g.append("image");v.attr("href",e.img),v.attr("width",s),v.attr("height",l),v.attr("preserveAspectRatio","none"),v.attr("transform",`translate(${-s/2},${E?D/2-l:-D/2})`)}return B.attr("transform",`translate(${-C.width/2-(C.x-(C.left??0))},${E?-l/2-C.height/2-h/2:l/2-C.height/2+h/2})`),b.attr("transform",`translate(0,${E?C.height/2+h/2:-C.height/2-h/2})`),_t(e,k),e.intersect=function(v){if(sA.info("iconSquare intersect",e,v),!e.label)return vt.rect(e,v);let S=e.x??0,x=e.y??0,F=e.height??0,T=[];if(E)T=[{x:S-C.width/2,y:x-F/2},{x:S+C.width/2,y:x-F/2},{x:S+C.width/2,y:x-F/2+C.height+h},{x:S+s/2,y:x-F/2+C.height+h},{x:S+s/2,y:x+F/2},{x:S-s/2,y:x+F/2},{x:S-s/2,y:x-F/2+C.height+h},{x:S-C.width/2,y:x-F/2+C.height+h}];else T=[{x:S-s/2,y:x-F/2},{x:S+s/2,y:x-F/2},{x:S+s/2,y:x-F/2+l},{x:S+C.width/2,y:x-F/2+l},{x:S+C.width/2/2,y:x+F/2},{x:S-C.width/2,y:x+F/2},{x:S-C.width/2,y:x-F/2+l},{x:S-s/2,y:x-F/2+l}];return vt.polygon(e,T,v)},g}async function exA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=i,a=e.look==="neo"?i*2:i,{shapeSvg:n,bbox:o}=await Qr(A,e,Er(e)),s=Math.max(o.width+(a??0)*2,e?.width??0),l=Math.max(o.height+(u??0)*2,e?.height??0),g=[{x:0,y:0},{x:s,y:0},{x:s+3*l/6,y:-l},{x:-3*l/6,y:-l}],C,{cssStyles:B}=e;if(e.look==="handDrawn"){let E=Ne.svg(n),d=St(e,{}),I=pi(g),h=E.path(I,d);if(C=n.insert(()=>h,":first-child").attr("transform",`translate(${-s/2}, ${l/2})`),B)C.attr("style",B)}else C=CI(n,s,l,g);if(r)C.attr("style",r);return e.width=s,e.height=l,_t(e,C),e.intersect=function(E){return vt.polygon(e,g,E)},n}async function txA(A,e){let{shapeSvg:t,bbox:r,label:i}=await Qr(A,e,"label"),u=t.insert("rect",":first-child"),a=0.1,n=0.1;return u.attr("width",0.1).attr("height",0.1),t.attr("class","label edgeLabel"),i.attr("transform",`translate(${-(r.width/2)-(r.x-(r.left??0))}, ${-(r.height/2)-(r.y-(r.top??0))})`),_t(e,u),e.intersect=function(o){return vt.rect(e,o)},t}async function rxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=i,a=e.look==="neo"?i*2:i,{shapeSvg:n,bbox:o}=await Qr(A,e,Er(e)),s=(e?.height??o.height)+u,l=(e?.width??o.width)+a,g=[{x:0,y:0},{x:l+3*s/6,y:0},{x:l,y:-s},{x:-(3*s)/6,y:-s}],C,{cssStyles:B}=e;if(e.look==="handDrawn"){let E=Ne.svg(n),d=St(e,{}),I=pi(g),h=E.path(I,d);if(C=n.insert(()=>h,":first-child").attr("transform",`translate(${-l/2}, ${s/2})`),B)C.attr("style",B)}else C=CI(n,l,s,g);if(r)C.attr("style",r);return e.width=l,e.height=s,_t(e,C),e.intersect=function(E){return vt.polygon(e,g,E)},n}async function ixA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=i,a=e.look==="neo"?i*2:i,{shapeSvg:n,bbox:o}=await Qr(A,e,Er(e)),s=(e?.height??o.height)+u,l=(e?.width??o.width)+a,g=[{x:-3*s/6,y:0},{x:l,y:0},{x:l+3*s/6,y:-s},{x:0,y:-s}],C,{cssStyles:B}=e;if(e.look==="handDrawn"){let E=Ne.svg(n),d=St(e,{}),I=pi(g),h=E.path(I,d);if(C=n.insert(()=>h,":first-child").attr("transform",`translate(${-l/2}, ${s/2})`),B)C.attr("style",B)}else C=CI(n,l,s,g);if(r)C.attr("style",r);return e.width=l,e.height=s,_t(e,C),e.intersect=function(E){return vt.polygon(e,g,E)},n}function uxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.label="",e.labelStyle=t;let i=A.insert("g").attr("class",Er(e)).attr("id",e.domId??e.id),{cssStyles:u}=e,a=Math.max(35,e?.width??0),n=Math.max(35,e?.height??0),o=7,s=[{x:a,y:0},{x:0,y:n+o/2},{x:a-2*o,y:n+o/2},{x:0,y:2*n},{x:a,y:n-o/2},{x:2*o,y:n-o/2}],l=Ne.svg(i),g=St(e,{});if(e.look!=="handDrawn")g.roughness=0,g.fillStyle="solid";let C=pi(s),B=l.path(C,g),E=i.insert(()=>B,":first-child");if(E.attr("class","outer-path"),u&&e.look!=="handDrawn")E.selectAll("path").attr("style",u);if(r&&e.look!=="handDrawn")E.selectAll("path").attr("style",r);return E.attr("transform",`translate(-${a/2},${-n})`),_t(e,E),e.intersect=function(d){return sA.info("lightningBolt intersect",e,d),vt.polygon(e,s,d)},i}async function axA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?24:i;if(e.width||e.height){let h=e.width??0;if(e.width=(e.width??0)-u,e.width<EFA)e.width=EFA;let p=h/2/(2.5+h/50);if(e.height=(e.height??0)-a-p*3,e.height<BFA)e.height=BFA}let{shapeSvg:n,bbox:o,label:s}=await Qr(A,e,Er(e)),l=(e?.width?e?.width:o.width)+u*2,g=l/2,C=g/(2.5+l/50),B=(e?.height?e?.height:o.height)+C+a*2,E=B*0.1,d,{cssStyles:I}=e;if(e.look==="handDrawn"){let h=Ne.svg(n),Q=Rot(0,0,l,B,g,C,E),p=Not(0,C,l,B,g,C),m=St(e,{}),f=h.path(Q,m),D=h.path(p,m);if(n.insert(()=>D,":first-child").attr("class","line"),d=n.insert(()=>f,":first-child"),d.attr("class","basic label-container"),I)d.attr("style",I)}else{let h=Lot(0,0,l,B,g,C,E);d=n.insert("path",":first-child").attr("d",h).attr("class","basic label-container outer-path").attr("style",Sn(I)).attr("style",r)}return d.attr("label-offset-y",C),d.attr("transform",`translate(${-l/2}, ${-(B/2+C)})`),_t(e,d),s.attr("transform",`translate(${-(o.width/2)-(o.x-(o.left??0))}, ${-(o.height/2)+C-(o.y-(o.top??0))})`),e.intersect=function(h){let Q=vt.rect(e,h),p=Q.x-(e.x??0);if(g!=0&&(Math.abs(p)<(e.width??0)/2||Math.abs(p)==(e.width??0)/2&&Math.abs(Q.y-(e.y??0))>(e.height??0)/2-C)){let m=C*C*(1-p*p/(g*g));if(m>0)m=Math.sqrt(m);if(m=C-m,h.y-(e.y??0)>0)m=-m;Q.y+=m}return Q},n}async function nxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i;if(e.width||e.height){let m=e.width;if(e.width=(m??0)*10/11-u*2,e.width<10)e.width=10;if(e.height=(e?.height??0)-a*2,e.height<10)e.height=10}let{shapeSvg:n,bbox:o,label:s}=await Qr(A,e,Er(e)),l=(e?.width?e?.width:o.width)+(u??0)*2,g=(e?.height?e?.height:o.height)+(a??0)*2,C=e.look==="neo"?g/4:g/8,B=g+C,{cssStyles:E}=e,d=Ne.svg(n),I=St(e,{});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let h=[{x:-l/2-l/2*0.1,y:-B/2},{x:-l/2-l/2*0.1,y:B/2},...bQ(-l/2-l/2*0.1,B/2,l/2+l/2*0.1,B/2,C,0.8),{x:l/2+l/2*0.1,y:-B/2},{x:-l/2-l/2*0.1,y:-B/2},{x:-l/2,y:-B/2},{x:-l/2,y:B/2*1.1},{x:-l/2,y:-B/2}],Q=d.polygon(h.map((m)=>[m.x,m.y]),I),p=n.insert(()=>Q,":first-child");if(p.attr("class","basic label-container outer-path"),E&&e.look!=="handDrawn")p.selectAll("path").attr("style",E);if(r&&e.look!=="handDrawn")p.selectAll("path").attr("style",r);return p.attr("transform",`translate(0,${-C/2})`),s.attr("transform",`translate(${-l/2+(e.padding??0)+l/2*0.1/2-(o.x-(o.left??0))},${-g/2+(e.padding??0)-C/2-(o.y-(o.top??0))})`),_t(e,p),e.intersect=function(m){return vt.polygon(e,h,m)},n}async function oxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i,n=e.look==="neo"?10:5;if(e.width||e.height)e.width=Math.max((e?.width??0)-u*2-2*n,10),e.height=Math.max((e?.height??0)-a*2-2*n,10);let{shapeSvg:o,bbox:s,label:l}=await Qr(A,e,Er(e)),g=(e?.width?e?.width:s.width)+u*2+2*n,C=(e?.height?e?.height:s.height)+a*2+2*n,B=g-2*n,E=C-2*n,d=-B/2,I=-E/2,{cssStyles:h}=e,Q=Ne.svg(o),p=St(e,{}),m=[{x:d-n,y:I+n},{x:d-n,y:I+E+n},{x:d+B-n,y:I+E+n},{x:d+B-n,y:I+E},{x:d+B,y:I+E},{x:d+B,y:I+E-n},{x:d+B+n,y:I+E-n},{x:d+B+n,y:I-n},{x:d+n,y:I-n},{x:d+n,y:I},{x:d,y:I},{x:d,y:I+n}],f=[{x:d,y:I+n},{x:d+B-n,y:I+n},{x:d+B-n,y:I+E},{x:d+B,y:I+E},{x:d+B,y:I},{x:d,y:I}];if(e.look!=="handDrawn")p.roughness=0,p.fillStyle="solid";let D=pi(m),w=Q.path(D,p),b=pi(f),k=Q.path(b,p);if(e.look!=="handDrawn")w=UeA(w),k=UeA(k);let v=o.insert("g",":first-child");if(v.insert(()=>w),v.insert(()=>k),v.attr("class","basic label-container outer-path"),h&&e.look!=="handDrawn")v.selectAll("path").attr("style",h);if(r&&e.look!=="handDrawn")v.selectAll("path").attr("style",r);return l.attr("transform",`translate(${-(s.width/2)-n-(s.x-(s.left??0))}, ${-(s.height/2)+n-(s.y-(s.top??0))})`),_t(e,v),e.intersect=function(S){return vt.polygon(e,m,S)},o}async function sxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,label:a}=await Qr(A,e,Er(e)),n=e.padding??0,o=e.look==="neo"?16:n,s=e.look==="neo"?12:n,l=!0;if(e.width||e.height)l=!1,e.width=(e?.width??0)-o*2,e.height=(e?.height??0)-s*3;let g=Math.max(u.width,e?.width??0)+o*2,C=Math.max(u.height,e?.height??0)+s*3,B=e.look==="neo"?C/4:C/8,E=C+(l?B/2:-B/2),d=-g/2,I=-E/2,h=10,{cssStyles:Q}=e,p=bQ(d-h,I+E+h,d+g-h,I+E+h,B,0.8),m=p?.[p.length-1],f=[{x:d-h,y:I+h},{x:d-h,y:I+E+h},...p,{x:d+g-h,y:m.y-h},{x:d+g,y:m.y-h},{x:d+g,y:m.y-2*h},{x:d+g+h,y:m.y-2*h},{x:d+g+h,y:I-h},{x:d+h,y:I-h},{x:d+h,y:I},{x:d,y:I},{x:d,y:I+h}],D=[{x:d,y:I+h},{x:d+g-h,y:I+h},{x:d+g-h,y:m.y-h},{x:d+g,y:m.y-h},{x:d+g,y:I},{x:d,y:I}],w=Ne.svg(i),b=St(e,{});if(e.look!=="handDrawn")b.roughness=0,b.fillStyle="solid";let k=pi(f),v=w.path(k,b),S=pi(D),x=w.path(S,b),F=i.insert(()=>v,":first-child");if(F.insert(()=>x),F.attr("class","basic label-container outer-path"),Q&&e.look!=="handDrawn")F.selectAll("path").attr("style",Q);if(r&&e.look!=="handDrawn")F.selectAll("path").attr("style",r);return F.attr("transform",`translate(0,${-B/2})`),a.attr("transform",`translate(${-(u.width/2)-h-(u.x-(u.left??0))}, ${-(u.height/2)+h-B/2-(u.y-(u.top??0))})`),_t(e,F),e.intersect=function(T){return vt.polygon(e,f,T)},i}async function lxA(A,e,{config:{themeVariables:t}}){let{labelStyles:r,nodeStyles:i}=wt(e);if(e.labelStyle=r,!(e.useHtmlLabels||Fi(ot())))e.centerLabel=!0;let{shapeSvg:a,bbox:n,label:o}=await Qr(A,e,Er(e)),s=Math.max(n.width+(e.padding??0)*2,e?.width??0),l=Math.max(n.height+(e.padding??0)*2,e?.height??0),g=-s/2,C=-l/2,{cssStyles:B}=e,E=Ne.svg(a),d=St(e,{fill:t.noteBkgColor,stroke:t.noteBorderColor});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=E.rectangle(g,C,s,l,d),h=a.insert(()=>I,":first-child");if(h.attr("class","basic label-container outer-path"),o.attr("class","label noteLabel"),B&&e.look!=="handDrawn")h.selectAll("path").attr("style",B);if(i&&e.look!=="handDrawn")h.selectAll("path").attr("style",i);return o.attr("transform",`translate(${-n.width/2-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),_t(e,h),e.intersect=function(Q){return vt.rect(e,Q)},a}async function gxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u}=await Qr(A,e,Er(e)),a=u.width+(e.padding??0),n=u.height+(e.padding??0),o=a+n,s=0.5,l=[{x:o/2,y:0},{x:o,y:-o/2},{x:o/2,y:-o},{x:0,y:-o/2}],g,{cssStyles:C}=e;if(e.look==="handDrawn"){let B=Ne.svg(i),E=St(e,{}),d=Got(0,0,o),I=B.path(d,E);if(g=i.insert(()=>I,":first-child").attr("transform",`translate(${-o/2+s}, ${o/2})`),C)g.attr("style",C)}else g=CI(i,o,o,l),g.attr("transform",`translate(${-o/2+s}, ${o/2})`);if(r)g.attr("style",r);return _t(e,g),e.calcIntersect=function(B,E){let d=B.width,I=[{x:d/2,y:0},{x:d,y:-d/2},{x:d/2,y:-d},{x:0,y:-d/2}],h=vt.polygon(B,I,E);return{x:h.x-0.5,y:h.y-0.5}},e.intersect=function(B){return this.calcIntersect(e,B)},i}async function cxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?21:i??0,a=e.look==="neo"?12:i??0,{shapeSvg:n,bbox:o,label:s}=await Qr(A,e,Er(e)),l=(e?.width??o.width)+(e.look==="neo"?u*2:u),g=(e?.height??o.height)+(e.look==="neo"?a*2:a),C=-l/2,B=-g/2,E=B/2,d=[{x:C+E,y:B},{x:C,y:0},{x:C+E,y:-B},{x:-C,y:-B},{x:-C,y:B}],{cssStyles:I}=e,h=Ne.svg(n),Q=St(e,{});if(e.look!=="handDrawn")Q.roughness=0,Q.fillStyle="solid";let p=pi(d),m=h.path(p,Q),f=n.insert(()=>m,":first-child");if(f.attr("class","basic label-container outer-path"),I&&e.look!=="handDrawn")f.selectAll("path").attr("style",I);if(r&&e.look!=="handDrawn")f.selectAll("path").attr("style",r);return f.attr("transform",`translate(${-E/2},0)`),s.attr("transform",`translate(${-E/2-o.width/2-(o.x-(o.left??0))}, ${-(o.height/2)-(o.y-(o.top??0))})`),_t(e,f),e.intersect=function(D){return vt.polygon(e,d,D)},n}async function CxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i;if(!e.cssClasses)i="node default";else i="node "+e.cssClasses;let u=A.insert("g").attr("class",i).attr("id",e.domId||e.id),a=u.insert("g"),n=u.insert("g").attr("class","label").attr("style",r),{description:o,label:s}=e,l=await cI(n,s,e.labelStyle,!0,!0),g={width:0,height:0};if(Fi(OA())){let b=l.children[0],k=Qe(l);g=b.getBoundingClientRect(),k.attr("width",g.width),k.attr("height",g.height)}sA.info("Text 2",o);let C=o||[],B=l.getBBox(),E=await cI(n,Array.isArray(C)?C.join("<br/>"):C,e.labelStyle,!0,!0),d=E.children[0],I=Qe(E);g=d.getBoundingClientRect(),I.attr("width",g.width),I.attr("height",g.height);let h=(e.padding||0)/2;Qe(E).attr("transform","translate( "+(g.width>B.width?0:(B.width-g.width)/2)+", "+(B.height+h+5)+")"),Qe(l).attr("transform","translate( "+(g.width<B.width?0:-(B.width-g.width)/2)+", 0)"),g=n.node().getBBox(),n.attr("transform","translate("+-g.width/2+", "+(-g.height/2-h+3)+")");let Q=g.width+(e.padding||0),p=g.height+(e.padding||0),m=-g.width/2-h,f=-g.height/2-h,D,w;if(e.look==="handDrawn"){let b=Ne.svg(u),k=St(e,{}),v=b.path(vQ(m,f,Q,p,e.rx||0),k),S=b.line(-g.width/2-h,-g.height/2-h+B.height+h,g.width/2+h,-g.height/2-h+B.height+h,k);w=u.insert(()=>(sA.debug("Rough node insert CXC",v),S),":first-child"),D=u.insert(()=>(sA.debug("Rough node insert CXC",v),v),":first-child")}else D=a.insert("rect",":first-child"),w=a.insert("line"),D.attr("class","outer title-state").attr("style",r).attr("x",-g.width/2-h).attr("y",-g.height/2-h).attr("width",g.width+(e.padding||0)).attr("height",g.height+(e.padding||0)),w.attr("class","divider").attr("x1",-g.width/2-h).attr("x2",g.width/2+h).attr("y1",-g.height/2-h+B.height+h).attr("y2",-g.height/2-h+B.height+h);return _t(e,D),e.intersect=function(b){return vt.rect(e,b)},u}async function BxA(A,e,{config:{themeVariables:t}}){let r=t?.radius??5,i={rx:r,ry:r,classes:"",labelPaddingX:(e?.padding??0)*1,labelPaddingY:(e?.padding??0)*1};return ty(A,e,i)}async function ExA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.look==="neo"?16:e.padding??0,u=e.look==="neo"?12:e.padding??0,{shapeSvg:a,bbox:n,label:o}=await Qr(A,e,Er(e)),s=(e?.width??n.width)+i*2+(e.look==="neo"?Ef:Ef*2),l=(e?.height??n.height)+u*2,g=s-Ef,C=l,B=Ef-s/2,E=-l/2,{cssStyles:d}=e,I=Ne.svg(a),h=St(e,{});if(e.look!=="handDrawn")h.roughness=0,h.fillStyle="solid";let Q=[{x:B,y:E},{x:B+g,y:E},{x:B+g,y:E+C},{x:B-Ef,y:E+C},{x:B-Ef,y:E},{x:B,y:E},{x:B,y:E+C}],p=I.polygon(Q.map((f)=>[f.x,f.y]),h),m=a.insert(()=>p,":first-child");if(m.attr("class","basic label-container outer-path").attr("style",Sn(d)),r&&e.look!=="handDrawn")m.selectAll("path").attr("style",r);if(d&&e.look!=="handDrawn")m.selectAll("path").attr("style",r);return o.attr("transform",`translate(${Ef/2-n.width/2-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),_t(e,m),e.intersect=function(f){return vt.rect(e,f)},a}async function dxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i;if(e.width||e.height)e.width=Math.max((e?.width??0)-u*2,10),e.height=Math.max((e?.height??0)/1.5-a*2,10);let{shapeSvg:n,bbox:o,label:s}=await Qr(A,e,Er(e)),l=(e?.width?e?.width:o.width)+u*2,g=((e?.height?e?.height:o.height)+a*2)*1.5,C=l,B=g/1.5,E=-C/2,d=-B/2,{cssStyles:I}=e,h=Ne.svg(n),Q=St(e,{});if(e.look!=="handDrawn")Q.roughness=0,Q.fillStyle="solid";let p=[{x:E,y:d},{x:E,y:d+B},{x:E+C,y:d+B},{x:E+C,y:d-B/2}],m=pi(p),f=h.path(m,Q),D=n.insert(()=>f,":first-child");if(D.attr("class","basic label-container outer-path"),I&&e.look!=="handDrawn")D.selectChildren("path").attr("style",I);if(r&&e.look!=="handDrawn")D.selectChildren("path").attr("style",r);return D.attr("transform",`translate(0, ${B/4})`),s.attr("transform",`translate(${-C/2+(e.padding??0)-(o.x-(o.left??0))}, ${-B/4+(e.padding??0)-(o.y-(o.top??0))})`),_t(e,D),e.intersect=function(w){return vt.polygon(e,p,w)},n}async function IxA(A,e){let t=e.padding??0,r=e.look==="neo"?16:t*2,i=e.look==="neo"?12:t,u={rx:0,ry:0,classes:"",labelPaddingX:e.labelPaddingX??r,labelPaddingY:i};return ty(A,e,u)}async function hxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?20:i,a=e.look==="neo"?12:i,{shapeSvg:n,bbox:o}=await Qr(A,e,Er(e)),s=o.height+(e.look==="neo"?a*2:a),l=o.width+s/4+(e.look==="neo"?u*2:u),g=s/2,{cssStyles:C}=e,B=Ne.svg(n),E=St(e,{});if(e.look!=="handDrawn")E.roughness=0,E.fillStyle="solid";let d=[{x:-l/2+g,y:-s/2},{x:l/2-g,y:-s/2},...Lv(-l/2+g,0,g,50,90,270),{x:l/2-g,y:s/2},...Lv(l/2-g,0,g,50,270,450)],I=pi(d),h=B.path(I,E),Q=n.insert(()=>h,":first-child");if(Q.attr("class","basic label-container outer-path"),C&&e.look!=="handDrawn")Q.selectChildren("path").attr("style",C);if(r&&e.look!=="handDrawn")Q.selectChildren("path").attr("style",r);return _t(e,Q),e.intersect=function(p){return vt.polygon(e,d,p)},n}async function QxA(A,e){let t={rx:e.look==="neo"?3:5,ry:e.look==="neo"?3:5,classes:"flowchart-node"};return ty(A,e,t)}function pxA(A,e,{config:{themeVariables:t}}){let{labelStyles:r,nodeStyles:i}=wt(e);e.labelStyle=r;let{cssStyles:u}=e,{lineColor:a,stateBorder:n,nodeBorder:o,nodeShadow:s}=t;if(e.width||e.height){if((e.width??0)<14)e.width=14;if((e.height??0)<14)e.height=14}if(!e.width)e.width=14;if(!e.height)e.height=14;let l=A.insert("g").attr("class","node default").attr("id",e.domId??e.id),g=Ne.svg(l),C=St(e,{});if(e.look!=="handDrawn")C.roughness=0,C.fillStyle="solid";let B=g.circle(0,0,e.width,{...C,stroke:a,strokeWidth:2}),E=n??o,d=(e.width??0)*5/14,I=g.circle(0,0,d,{...C,fill:E,stroke:E,strokeWidth:2,fillStyle:"solid"}),h=l.insert(()=>B,":first-child");if(h.insert(()=>I),e.look!=="handDrawn")h.attr("class","outer-path");if(u)h.selectAll("path").attr("style",u);if(i)h.selectAll("path").attr("style",i);if(e.width<25&&s&&e.look!=="handDrawn"){let Q=A.node()?.ownerSVGElement?.id??"",p=Q?`${Q}-drop-shadow-small`:"drop-shadow-small";h.attr("style",`filter:url(#${p})`)}return _t(e,h),e.intersect=function(Q){return vt.circle(e,(e.width??0)/2,Q)},l}function fxA(A,e,{config:{themeVariables:t}}){let{lineColor:r,nodeShadow:i}=t;if(e.width||e.height){if((e.width??0)<14)e.width=14;if((e.height??0)<14)e.height=14}if(!e.width)e.width=14;if(!e.height)e.height=14;let u=A.insert("g").attr("class","node default").attr("id",e.domId||e.id),a;if(e.look==="handDrawn"){let o=Ne.svg(u).circle(0,0,e.width,XbA(r));a=u.insert(()=>o),a.attr("class","state-start").attr("r",(e.width??7)/2).attr("width",e.width??14).attr("height",e.height??14)}else a=u.insert("circle",":first-child"),a.attr("class","state-start").attr("r",(e.width??7)/2).attr("width",e.width??14).attr("height",e.height??14);if(e.width<25&&i&&e.look!=="handDrawn"){let n=A.node()?.ownerSVGElement?.id??"",o=n?`${n}-drop-shadow-small`:"drop-shadow-small";a.attr("style",`filter:url(#${o})`)}return _t(e,a),e.intersect=function(n){return vt.circle(e,(e.width??7)/2,n)},u}async function mxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e?.padding??8,u=e.look==="neo"?28:i,a=e.look==="neo"?12:i,{shapeSvg:n,bbox:o}=await Qr(A,e,Er(e)),s=(e?.width??o.width)+2*$D+u,l=(e?.height??o.height)+a,g=s-2*$D,C=l,B=-s/2,E=-l/2,d=[{x:0,y:0},{x:g,y:0},{x:g,y:-C},{x:0,y:-C},{x:0,y:0},{x:-8,y:0},{x:g+8,y:0},{x:g+8,y:-C},{x:-8,y:-C},{x:-8,y:0}];if(e.look==="handDrawn"){let I=Ne.svg(n),h=St(e,{}),Q=I.rectangle(B,E,g+16,C,h),p=I.line(B+$D,E,B+$D,E+C,h),m=I.line(B+$D+g,E,B+$D+g,E+C,h);n.insert(()=>p,":first-child"),n.insert(()=>m,":first-child");let f=n.insert(()=>Q,":first-child"),{cssStyles:D}=e;f.attr("class","basic label-container").attr("style",Sn(D)),_t(e,f)}else{let I=CI(n,g,C,d);if(r)I.attr("style",r);_t(e,I)}return e.intersect=function(I){return vt.polygon(e,d,I)},n}async function DxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i;if(e.width||e.height)e.height=Math.max((e?.height??0)-a*2,10),e.width=Math.max((e?.width??0)-u*2-GeA*(e.height+a*2),10);let{shapeSvg:n,bbox:o}=await Qr(A,e,Er(e)),s=(e?.height?e?.height:o.height)+a*2,l=GeA*s,g=GeA*s,B=(e?.width?e?.width:o.width)+u*2+l-l,E=s,d=-B/2,I=-E/2,{cssStyles:h}=e,Q=Ne.svg(n),p=St(e,{}),m=[{x:d-l/2,y:I},{x:d+B+l/2,y:I},{x:d+B+l/2,y:I+E},{x:d-l/2,y:I+E}],f=[{x:d+B-l/2,y:I+E},{x:d+B+l/2,y:I+E},{x:d+B+l/2,y:I+E-g}];if(e.look!=="handDrawn")p.roughness=0,p.fillStyle="solid";let D=pi(m),w=Q.path(D,p),b=pi(f),k=Q.path(b,{...p,fillStyle:"solid"}),v=n.insert(()=>k,":first-child");if(v.insert(()=>w,":first-child"),v.attr("class","basic label-container outer-path"),h&&e.look!=="handDrawn")v.selectAll("path").attr("style",h);if(r&&e.look!=="handDrawn")v.selectAll("path").attr("style",r);return _t(e,v),e.intersect=function(S){return vt.polygon(e,m,S)},n}async function yxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,label:a}=await Qr(A,e,Er(e)),n=Math.max(u.width+(e.padding??0)*2,e?.width??0),o=Math.max(u.height+(e.padding??0)*2,e?.height??0),s=o/8,l=0.2*n,g=0.2*o,C=o+s,{cssStyles:B}=e,E=Ne.svg(i),d=St(e,{});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=[{x:-n/2-n/2*0.1,y:C/2},...bQ(-n/2-n/2*0.1,C/2,n/2+n/2*0.1,C/2,s,0.8),{x:n/2+n/2*0.1,y:-C/2},{x:-n/2-n/2*0.1,y:-C/2}],h=-n/2+n/2*0.1,Q=-C/2-g*0.4,p=[{x:h+n-l,y:(Q+o)*1.3},{x:h+n,y:Q+o-g},{x:h+n,y:(Q+o)*0.9},...bQ(h+n,(Q+o)*1.25,h+n-l,(Q+o)*1.3,-o*0.02,0.5)],m=pi(I),f=E.path(m,d),D=pi(p),w=E.path(D,{...d,fillStyle:"solid"}),b=i.insert(()=>w,":first-child");if(b.insert(()=>f,":first-child"),b.attr("class","basic label-container outer-path"),B&&e.look!=="handDrawn")b.selectAll("path").attr("style",B);if(r&&e.look!=="handDrawn")b.selectAll("path").attr("style",r);return b.attr("transform",`translate(0,${-s/2})`),a.attr("transform",`translate(${-n/2+(e.padding??0)-(u.x-(u.left??0))},${-o/2+(e.padding??0)-s/2-(u.y-(u.top??0))})`),_t(e,b),e.intersect=function(k){return vt.polygon(e,I,k)},i}async function wxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u}=await Qr(A,e,Er(e)),a=Math.max(u.width+(e.padding??0),e?.width||0),n=Math.max(u.height+(e.padding??0),e?.height||0),o=-a/2,s=-n/2,l=i.insert("rect",":first-child");return l.attr("class","text").attr("style",r).attr("rx",0).attr("ry",0).attr("x",o).attr("y",s).attr("width",a).attr("height",n),_t(e,l),e.intersect=function(g){return vt.rect(e,g)},i}async function bxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?12:i/2;if(e.width||e.height){let d=e.height??0;if(e.height=(e.height??0)-u,e.height<dFA)e.height=dFA;let h=d/2/(2.5+d/50);if(e.width=(e.width??0)-u-h*3,e.width<IFA)e.width=IFA}let{shapeSvg:a,bbox:n,label:o}=await Qr(A,e,Er(e)),s=(e.height?e.height:n.height)+u,l=s/2,g=l/(2.5+s/50),C=(e.width?e.width:n.width)+g+u,{cssStyles:B}=e,E;if(e.look==="handDrawn"){let d=Ne.svg(a),I=Mot(0,0,C,s,g,l),h=Tot(0,0,C,s,g,l),Q=d.path(I,St(e,{})),p=d.path(h,St(e,{fill:"none"}));if(E=a.insert(()=>p,":first-child"),E=a.insert(()=>Q,":first-child"),E.attr("class","basic label-container"),B)E.attr("style",B)}else{let d=Uot(0,0,C,s,g,l);if(E=a.insert("path",":first-child").attr("d",d).attr("class","basic label-container").attr("style",Sn(B)).attr("style",r),E.attr("class","basic label-container outer-path"),B)E.selectAll("path").attr("style",B);if(r)E.selectAll("path").attr("style",r)}return E.attr("label-offset-x",g),E.attr("transform",`translate(${-C/2}, ${s/2} )`),o.attr("transform",`translate(${-(n.width/2)-g-(n.x-(n.left??0))}, ${-(n.height/2)-(n.y-(n.top??0))})`),_t(e,E),e.intersect=function(d){let I=vt.rect(e,d),h=I.y-(e.y??0);if(l!=0&&(Math.abs(h)<(e.height??0)/2||Math.abs(h)==(e.height??0)/2&&Math.abs(I.x-(e.x??0))>(e.width??0)/2-g)){let Q=g*g*(1-h*h/(l*l));if(Q!=0)Q=Math.sqrt(Math.abs(Q));if(Q=g-Q,d.x-(e.x??0)>0)Q=-Q;I.x+=Q}return I},a}async function vxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?i:i,a=e.look==="neo"?i*2:i,{shapeSvg:n,bbox:o}=await Qr(A,e,Er(e)),s=(e?.height??o.height)+u,l=(e?.width??o.width)+a,g=[{x:-3*s/6,y:0},{x:l+3*s/6,y:0},{x:l,y:-s},{x:0,y:-s}],C,{cssStyles:B}=e;if(e.look==="handDrawn"){let E=Ne.svg(n),d=St(e,{}),I=pi(g),h=E.path(I,d);if(C=n.insert(()=>h,":first-child").attr("transform",`translate(${-l/2}, ${s/2})`),B)C.attr("style",B)}else C=CI(n,l,s,g);if(r)C.attr("style",r);return e.width=l,e.height=s,_t(e,C),e.intersect=function(E){return vt.polygon(e,g,E)},n}async function kxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i,n=15,o=5;if(e.width||e.height){if(e.height=(e.height??0)-a*2,e.height<o)e.height=o;if(e.width=(e.width??0)-u*2,e.width<n)e.width=n}let{shapeSvg:s,bbox:l}=await Qr(A,e,Er(e)),g=(e?.width?e?.width:l.width)+u*2,C=(e?.height?e?.height:l.height)+a*2,{cssStyles:B}=e,E=Ne.svg(s),d=St(e,{});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=[{x:-g/2*0.8,y:-C/2},{x:g/2*0.8,y:-C/2},{x:g/2,y:-C/2*0.6},{x:g/2,y:C/2},{x:-g/2,y:C/2},{x:-g/2,y:-C/2*0.6}],h=pi(I),Q=E.path(h,d),p=s.insert(()=>Q,":first-child");if(p.attr("class","basic label-container outer-path"),B&&e.look!=="handDrawn")p.selectChildren("path").attr("style",B);if(r&&e.look!=="handDrawn")p.selectChildren("path").attr("style",r);return _t(e,p),e.intersect=function(m){return vt.polygon(e,I,m)},s}async function FxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?i*2:i;if(e.width||e.height){if(e.width=((e?.width??0)-u)/2,e.width<QFA)e.width=QFA;if(e.height=e?.height??0,e.height<hFA)e.height=hFA}let{shapeSvg:a,bbox:n,label:o}=await Qr(A,e,Er(e)),s=Og(OA().flowchart?.htmlLabels),l=(e?.width?e?.width:n.width)+u,g=e?.height?e?.height:l+n.height,C=g,B=[{x:0,y:0},{x:C,y:0},{x:C/2,y:-g}],{cssStyles:E}=e,d=Ne.svg(a),I=St(e,{});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let h=pi(B),Q=d.path(h,I),p=a.insert(()=>Q,":first-child").attr("transform",`translate(${-g/2}, ${g/2})`).attr("class","outer-path");if(E&&e.look!=="handDrawn")p.selectChildren("path").attr("style",E);if(r&&e.look!=="handDrawn")p.selectChildren("path").attr("style",r);return e.width=l,e.height=g,_t(e,p),o.attr("transform",`translate(${-n.width/2-(n.x-(n.left??0))}, ${g/2-(n.height+(e.padding??0)/(s?2:1)-(n.y-(n.top??0)))})`),e.intersect=function(m){return sA.info("Triangle intersect",e,B,m),vt.polygon(e,B,m)},a}async function xxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?12:i,n=!0;if(e.width||e.height){if(n=!1,e.width=(e?.width??0)-u*2,e.width<10)e.width=10;if(e.height=(e?.height??0)-a*2,e.height<10)e.height=10}let{shapeSvg:o,bbox:s,label:l}=await Qr(A,e,Er(e)),g=(e?.width?e?.width:s.width)+(u??0)*2,C=(e?.height?e?.height:s.height)+(a??0)*2,B=e.look==="neo"?C/4:C/8,E=C+(n?B:-B),{cssStyles:d}=e,h=14-g,Q=h>0?h/2:0,p=Ne.svg(o),m=St(e,{});if(e.look!=="handDrawn")m.roughness=0,m.fillStyle="solid";let f=[{x:-g/2-Q,y:E/2},...bQ(-g/2-Q,E/2,g/2+Q,E/2,B,0.8),{x:g/2+Q,y:-E/2},{x:-g/2-Q,y:-E/2}],D=pi(f),w=p.path(D,m),b=o.insert(()=>w,":first-child");if(b.attr("class","basic label-container outer-path"),d&&e.look!=="handDrawn")b.selectAll("path").attr("style",d);if(r&&e.look!=="handDrawn")b.selectAll("path").attr("style",r);return b.attr("transform",`translate(0,${-B/2})`),l.attr("transform",`translate(${-g/2+(e.padding??0)-(s.x-(s.left??0))},${-C/2+(e.padding??0)-B-(s.y-(s.top??0))})`),_t(e,b),e.intersect=function(k){return vt.polygon(e,f,k)},o}async function SxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.padding??0,u=e.look==="neo"?16:i,a=e.look==="neo"?20:i;if(e.width||e.height){if(e.width=e?.width??0,e.width<20)e.width=20;if(e.height=e?.height??0,e.height<10)e.height=10;let m=Math.min(e.height*0.2,e.height/4);e.height=Math.ceil(e.height-a-m*2.2222222222222223),e.width=e.width-u*2}let{shapeSvg:n,bbox:o}=await Qr(A,e,Er(e)),s=(e?.width?e?.width:o.width)+u*2,l=(e?.height?e?.height:o.height)+a,g=l/8,C=l+g*2,{cssStyles:B}=e,E=Ne.svg(n),d=St(e,{});if(e.look!=="handDrawn")d.roughness=0,d.fillStyle="solid";let I=[{x:-s/2,y:C/2},...bQ(-s/2,C/2,s/2,C/2,g,1),{x:s/2,y:-C/2},...bQ(s/2,-C/2,-s/2,-C/2,g,-1)],h=pi(I),Q=E.path(h,d),p=n.insert(()=>Q,":first-child");if(p.attr("class","basic label-container"),B&&e.look!=="handDrawn")p.selectAll("path").attr("style",B);if(r&&e.look!=="handDrawn")p.selectAll("path").attr("style",r);return _t(e,p),e.intersect=function(m){return vt.polygon(e,I,m)},n}async function LxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e.look==="neo"?16:e.padding??0,u=e.look==="neo"?12:e.padding??0;if(e.width||e.height)e.width=Math.max((e?.width??0)-i*2-Oa,10),e.height=Math.max((e?.height??0)-u*2-Oa,10);let{shapeSvg:a,bbox:n,label:o}=await Qr(A,e,Er(e)),s=(e?.width?e?.width:n.width)+i*2+Oa,l=(e?.height?e?.height:n.height)+u*2+Oa,g=s-Oa,C=l-Oa,B=-g/2,E=-C/2,{cssStyles:d}=e,I=Ne.svg(a),h=St(e,{}),Q=[{x:B-Oa,y:E-Oa},{x:B-Oa,y:E+C},{x:B+g,y:E+C},{x:B+g,y:E-Oa}],p=`M${B-Oa},${E-Oa} L${B+g},${E-Oa} L${B+g},${E+C} L${B-Oa},${E+C} L${B-Oa},${E-Oa}
M${B-Oa},${E} L${B+g},${E}
M${B},${E-Oa} L${B},${E+C}`;if(e.look!=="handDrawn")h.roughness=0,h.fillStyle="solid";let m=I.path(p,h),f=a.insert(()=>m,":first-child");if(f.attr("transform",`translate(${Oa/2}, ${Oa/2})`),f.attr("class","basic label-container outer-path"),d&&e.look!=="handDrawn")f.selectAll("path").attr("style",d);if(r&&e.look!=="handDrawn")f.selectAll("path").attr("style",r);return o.attr("transform",`translate(${-(n.width/2)+Oa/2-(n.x-(n.left??0))}, ${-(n.height/2)+Oa/2-(n.y-(n.top??0))})`),_t(e,f),e.intersect=function(D){return vt.polygon(e,Q,D)},a}async function HeA(A,e){let t=e;if(t.alias)e.label=t.alias;let{theme:r,themeVariables:i}=ot(),{rowEven:u,rowOdd:a,nodeBorder:n,borderColorArray:o}=i;if(e.look==="handDrawn"){let{themeVariables:AA}=ot(),{background:W}=AA,CA={...e,id:e.id+"-background",domId:(e.domId||e.id)+"-background",look:"default",cssStyles:["stroke: none",`fill: ${W}`]};await HeA(A,CA)}let s=ot();e.useHtmlLabels=s.htmlLabels;let l=s.er?.diagramPadding??10,g=s.er?.entityPadding??6,{cssStyles:C}=e,{labelStyles:B,nodeStyles:E}=wt(e);if(t.attributes.length===0&&e.label){let AA={rx:0,ry:0,labelPaddingX:l,labelPaddingY:l*1.5,classes:""};if(i0(e.label,s)+AA.labelPaddingX*2<s.er.minEntityWidth)e.width=s.er.minEntityWidth;let W=await ty(A,e,AA);if(r!=null&&pFA.has(r)){let CA=t.colorIndex??0;W.attr("data-color-id",`color-${CA%o.length}`)}if(!Og(s.htmlLabels)){let CA=W.select("text"),tA=CA.node()?.getBBox();CA.attr("transform",`translate(${-tA.width/2}, 0)`)}return W}if(!s.htmlLabels)l*=1.25,g*=1.25;let d=Er(e);if(!d)d="node default";let I=A.insert("g").attr("class",d).attr("id",e.domId||e.id),h=await Ay(I,e.label??"",s,0,0,["name"],B);h.height+=g;let Q=0,p=[],m=[],f=0,D=0,w=0,b=0,k=!0,v=!0;for(let AA of t.attributes){let W=await Ay(I,AA.type,s,0,Q,["attribute-type"],B);f=Math.max(f,W.width+l);let CA=await Ay(I,AA.name,s,0,Q,["attribute-name"],B);D=Math.max(D,CA.width+l);let tA=await Ay(I,AA.keys.join(),s,0,Q,["attribute-keys"],B);w=Math.max(w,tA.width+l);let lA=await Ay(I,AA.comment,s,0,Q,["attribute-comment"],B);b=Math.max(b,lA.width+l);let gA=Math.max(W.height,CA.height,tA.height,lA.height)+g;m.push({yOffset:Q,rowHeight:gA}),Q+=gA}let S=4;if(w<=l)k=!1,w=0,S--;if(b<=l)v=!1,b=0,S--;let x=I.node().getBBox();if(h.width+l*2-(f+D+w+b)>0){let AA=h.width+l*2-(f+D+w+b);if(f+=AA/S,D+=AA/S,w>0)w+=AA/S;if(b>0)b+=AA/S}let F=f+D+w+b,T=Ne.svg(I),R=St(e,{});if(e.look!=="handDrawn")R.roughness=0,R.fillStyle="solid";let L=0;if(m.length>0)L=m.reduce((AA,W)=>AA+(W?.rowHeight??0),0);let M=Math.max(x.width+l*2,e?.width||0,F),U=Math.max((L??0)+h.height,e?.height||0),Y=-M/2,H=-U/2;if(I.selectAll("g:not(:first-child)").each((AA,W,CA)=>{let tA=Qe(CA[W]),lA=tA.attr("transform"),gA=0,aA=0;if(lA){let DA=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(lA);if(DA){if(gA=parseFloat(DA[1]),aA=parseFloat(DA[2]),tA.attr("class").includes("attribute-name"))gA+=f;else if(tA.attr("class").includes("attribute-keys"))gA+=f+D;else if(tA.attr("class").includes("attribute-comment"))gA+=f+D+w}}tA.attr("transform",`translate(${Y+l/2+gA}, ${aA+H+h.height+g/2})`)}),I.select(".name").attr("transform","translate("+-h.width/2+", "+(H+g/2)+")"),r!=null&&pFA.has(r)){let AA=t.colorIndex??0;I.attr("data-color-id",`color-${AA%o.length}`)}let J=T.rectangle(Y,H,M,U,R),K=I.insert(()=>J,":first-child").attr("class","outer-path").attr("style",C.join(""));p.push(0);for(let[AA,W]of m.entries()){let tA=(AA+1)%2===0&&W.yOffset!==0,lA=T.rectangle(Y,h.height+H+W?.yOffset,M,W?.rowHeight,{...R,fill:tA?u:a,stroke:n});I.insert(()=>lA,"g.label").attr("style",C.join("")).attr("class",`row-rect-${tA?"even":"odd"}`)}let O=0.0001,P=ey(Y,h.height+H,M+Y,h.height+H,O),z=T.polygon(P.map((AA)=>[AA.x,AA.y]),R);if(I.insert(()=>z).attr("class","divider"),P=ey(f+Y,h.height+H,f+Y,U+H,O),z=T.polygon(P.map((AA)=>[AA.x,AA.y]),R),I.insert(()=>z).attr("class","divider"),k){let AA=f+D+Y;P=ey(AA,h.height+H,AA,U+H,O),z=T.polygon(P.map((W)=>[W.x,W.y]),R),I.insert(()=>z).attr("class","divider")}if(v){let AA=f+D+w+Y;P=ey(AA,h.height+H,AA,U+H,O),z=T.polygon(P.map((W)=>[W.x,W.y]),R),I.insert(()=>z).attr("class","divider")}for(let AA of p){let W=h.height+H+AA;P=ey(Y,W,M+Y,W,O),z=T.polygon(P.map((CA)=>[CA.x,CA.y]),R),I.insert(()=>z).attr("class","divider")}if(_t(e,K),E&&e.look!=="handDrawn")if(r!=null&&Yot.has(r))I.selectAll("path").attr("style",E);else{let W=E.split(";")?.filter((CA)=>CA.includes("stroke"))?.map((CA)=>`${CA}`).join("; ");I.selectAll("path").attr("style",W??""),I.selectAll(".row-rect-even path").attr("style",E)}return e.intersect=function(AA){return vt.rect(e,AA)},I}async function Ay(A,e,t,r=0,i=0,u=[],a=""){let n=A.insert("g").attr("class",`label ${u.join(" ")}`).attr("transform",`translate(${r}, ${i})`).attr("style",a);if(e!==OB(e))e=OB(e),e=e.replaceAll("<","&lt;").replaceAll(">","&gt;");let o=n.node().appendChild(await Rn(n,e,{width:i0(e,t)+100,style:a,useHtmlLabels:t.htmlLabels},t));if(e.includes("&lt;")||e.includes("&gt;")){let l=o.children[0];l.textContent=l.textContent.replaceAll("&lt;","<").replaceAll("&gt;",">");while(l.childNodes[0])l=l.childNodes[0],l.textContent=l.textContent.replaceAll("&lt;","<").replaceAll("&gt;",">")}let s=o.getBBox();if(Og(t.htmlLabels)){let l=o.children[0];l.style.textAlign="start";let g=Qe(o);s=l.getBoundingClientRect(),g.attr("width",s.width),g.attr("height",s.height)}return s}function ey(A,e,t,r,i){if(A===t)return[{x:A-i/2,y:e},{x:A+i/2,y:e},{x:t+i/2,y:r},{x:t-i/2,y:r}];return[{x:A,y:e-i/2},{x:A,y:e+i/2},{x:t,y:r+i/2},{x:t,y:r-i/2}]}async function RxA(A,e,t,r,i=t.class.padding??12){let u=!r?3:0,a=A.insert("g").attr("class",Er(e)).attr("id",e.domId||e.id),n=null,o=null,s=null,l=null,g=0,C=0,B=0;if(n=a.insert("g").attr("class","annotation-group text"),e.annotations.length>0){let Q=e.annotations[0];await Sv(n,{text:`«${Q}»`},0),g=n.node().getBBox().height}o=a.insert("g").attr("class","label-group text"),await Sv(o,e,0,["font-weight: bolder"]);let E=o.node().getBBox();C=E.height,s=a.insert("g").attr("class","members-group text");let d=0;for(let Q of e.members){let p=await Sv(s,Q,d,[Q.parseClassifier()]);d+=p+u}if(B=s.node().getBBox().height,B<=0)B=i/2;l=a.insert("g").attr("class","methods-group text");let I=0;for(let Q of e.methods){let p=await Sv(l,Q,I,[Q.parseClassifier()]);I+=p+u}let h=a.node().getBBox();if(n!==null){let Q=n.node().getBBox();n.attr("transform",`translate(${-Q.width/2})`)}return o.attr("transform",`translate(${-E.width/2}, ${g})`),h=a.node().getBBox(),s.attr("transform",`translate(0, ${g+C+i*2})`),h=a.node().getBBox(),l.attr("transform",`translate(0, ${g+C+(B?B+i*4:i*2)})`),h=a.node().getBBox(),{shapeSvg:a,bbox:h}}async function Sv(A,e,t,r=[]){let i=A.insert("g").attr("class","label").attr("style",r.join("; ")),u=ot(),a="useHtmlLabels"in e?e.useHtmlLabels:Og(u.htmlLabels)??!0,n="";if("text"in e)n=e.text;else n=e.label;if(!a&&n.startsWith("\\"))n=n.substring(1);if(da(n))a=!0;let o=await Rn(i,KR(eg(n)),{width:i0(n,u)+50,classes:"markdown-node-label",useHtmlLabels:a},u),s,l=1;if(!a){if(r.includes("font-weight: bolder"))Qe(o).selectAll("tspan").attr("font-weight","");l=o.children.length;let g=o.children[0];if(o.textContent===""||o.textContent.includes("&gt")){if(g.textContent=n[0]+n.substring(1).replaceAll("&gt;",">").replaceAll("&lt;","<").trim(),n[1]===" ")g.textContent=g.textContent[0]+" "+g.textContent.substring(1)}if(g.textContent==="undefined")g.textContent="";s=o.getBBox()}else{let g=o.children[0],C=Qe(o);if(l=g.innerHTML.split("<br>").length,g.innerHTML.includes("</math>"))l+=g.innerHTML.split("<mrow>").length-1;let B=g.getElementsByTagName("img");if(B){let E=n.replace(/<img[^>]*>/g,"").trim()==="";await Promise.all([...B].map((d)=>new Promise((I)=>{function h(){if(d.style.display="flex",d.style.flexDirection="column",E){let Q=u.fontSize?.toString()??window.getComputedStyle(document.body).fontSize,p=5,m=parseInt(Q,10)*5+"px";d.style.minWidth=m,d.style.maxWidth=m}else d.style.width="100%";I(d)}y(h,"setupImage"),setTimeout(()=>{if(d.complete)h()}),d.addEventListener("error",h),d.addEventListener("load",h)})))}s=g.getBoundingClientRect(),C.attr("width",s.width),C.attr("height",s.height)}return i.attr("transform","translate(0,"+(-s.height/(2*l)+t)+")"),s.height}async function NxA(A,e){let t=OA(),{themeVariables:r}=t,{useGradient:i}=r,u=t.class.padding??12,a=u,n=e.useHtmlLabels??Og(t.htmlLabels)??!0,o=e;o.annotations=o.annotations??[],o.members=o.members??[],o.methods=o.methods??[];let{shapeSvg:s,bbox:l}=await RxA(A,e,t,n,a),{labelStyles:g,nodeStyles:C}=wt(e);e.labelStyle=g,e.cssStyles=o.styles||"";let B=o.styles?.join(";")||C||"";if(!e.cssStyles)e.cssStyles=B.replaceAll("!important","").split(";");let E=o.members.length===0&&o.methods.length===0&&!t.class?.hideEmptyMembersBox,d=Ne.svg(s),I=St(e,{});if(e.look!=="handDrawn")I.roughness=0,I.fillStyle="solid";let h=Math.max(e.width??0,l.width),Q=Math.max(e.height??0,l.height),p=(e.height??0)>l.height;if(o.members.length===0&&o.methods.length===0)Q+=a;else if(o.members.length>0&&o.methods.length===0)Q+=a*2;let m=-h/2,f=-Q/2,D=E?u*2:o.members.length===0&&o.methods.length===0?-u:0;if(p)D=u*2;let w=d.rectangle(m-u,f-u-(E?u:o.members.length===0&&o.methods.length===0?-u/2:0),h+2*u,Q+2*u+D,I),b=s.insert(()=>w,":first-child");b.attr("class","basic label-container outer-path");let k=b.node().getBBox(),v=s.select(".annotation-group").node().getBBox().height-(E?u/2:0)||0,S=s.select(".label-group").node().getBBox().height-(E?u/2:0)||0,x=s.select(".members-group").node().getBBox().height-(E?u/2:0)||0,F=(v+S+f+u-(f-u-(E?u:o.members.length===0&&o.methods.length===0?-u/2:0)))/2;if(s.selectAll(".text").each((T,R,L)=>{let M=Qe(L[R]),U=M.attr("transform"),Y=0;if(U){let O=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(U);if(O)Y=parseFloat(O[2])}let H=Y+f+u-(E?u:o.members.length===0&&o.methods.length===0?-u/2:0);if(M.attr("class").includes("methods-group")){let K=Math.max(x,a/2);if(p)H=Math.max(F,v+S+K+f+a*2+u)+a*2;else H=v+S+K+f+a*4+u}if(o.members.length===0&&o.methods.length===0&&t.class?.hideEmptyMembersBox)if(o.annotations.length>0)H=Y-a;else H=Y;if(!n)H-=4;let J=m;if(M.attr("class").includes("label-group")||M.attr("class").includes("annotation-group"))J=-M.node()?.getBBox().width/2||0,s.selectAll("text").each(function(K,O,P){if(window.getComputedStyle(P[O]).textAnchor==="middle")J=0});M.attr("transform",`translate(${J}, ${H})`)}),o.members.length>0||o.methods.length>0||E){let T=v+S+f+u,R=d.line(k.x,T,k.x+k.width,T+0.001,I);s.insert(()=>R).attr("class",`divider${e.look==="neo"&&!i?" neo-line":""}`).attr("style",B)}if(E||o.members.length>0||o.methods.length>0){let T=v+S+x+f+a*2+u,R=d.line(k.x,p?Math.max(F,T):T,k.x+k.width,(p?Math.max(F,T):T)+0.001,I);s.insert(()=>R).attr("class",`divider${e.look==="neo"&&!i?" neo-line":""}`).attr("style",B)}if(o.look!=="handDrawn")s.selectAll("path").attr("style",B);if(b.select(":nth-child(2)").attr("style",B),s.selectAll(".divider").select("path").attr("style",B),e.labelStyle)s.selectAll("span").attr("style",e.labelStyle);else s.selectAll("span").attr("style",B);if(!n){let T=RegExp(/color\s*:\s*([^;]*)/),R=T.exec(B);if(R){let L=R[0].replace("color","fill");s.selectAll("tspan").attr("style",L)}else if(g){let L=T.exec(g);if(L){let M=L[0].replace("color","fill");s.selectAll("tspan").attr("style",M)}}}return _t(e,b),e.intersect=function(T){return vt.rect(e,T)},s}async function GxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let i=e,u=e,a=20,n=20,o="verifyMethod"in e,s=Er(e),{themeVariables:l}=OA(),{borderColorArray:g,requirementEdgeLabelBackground:C}=l,B=A.insert("g").attr("class",s).attr("id",e.domId??e.id),E;if(o)E=await tE(B,`&lt;&lt;${i.type}&gt;&gt;`,0,e.labelStyle);else E=await tE(B,"&lt;&lt;Element&gt;&gt;",0,e.labelStyle);let d=E,I=await tE(B,i.name,d,e.labelStyle+"; font-weight: bold;");if(d+=I+n,o){let k=await tE(B,`${i.requirementId?`ID: ${i.requirementId}`:""}`,d,e.labelStyle);d+=k;let v=await tE(B,`${i.text?`Text: ${i.text}`:""}`,d,e.labelStyle);d+=v;let S=await tE(B,`${i.risk?`Risk: ${i.risk}`:""}`,d,e.labelStyle);d+=S,await tE(B,`${i.verifyMethod?`Verification: ${i.verifyMethod}`:""}`,d,e.labelStyle)}else{let k=await tE(B,`${u.type?`Type: ${u.type}`:""}`,d,e.labelStyle);d+=k,await tE(B,`${u.docRef?`Doc Ref: ${u.docRef}`:""}`,d,e.labelStyle)}let h=(B.node()?.getBBox().width??200)+a,Q=(B.node()?.getBBox().height??200)+a,p=-h/2,m=-Q/2,f=Ne.svg(B),D=St(e,{});if(e.look!=="handDrawn")D.roughness=0,D.fillStyle="solid";let w=f.rectangle(p,m,h,Q,D),b=B.insert(()=>w,":first-child");if(b.attr("class","basic label-container outer-path").attr("style",r),g?.length){let k=e.colorIndex??0;B.attr("data-color-id",`color-${k%g.length}`)}if(B.selectAll(".label").each((k,v,S)=>{let x=Qe(S[v]),F=x.attr("transform"),T=0,R=0;if(F){let Y=RegExp(/translate\(([^,]+),([^)]+)\)/).exec(F);if(Y)T=parseFloat(Y[1]),R=parseFloat(Y[2])}let L=R-Q/2,M=p+a/2;if(v===0||v===1)M=T;x.attr("transform",`translate(${M}, ${L+a})`)}),d>E+I+n){let k=m+E+I+n,v;if(e.look==="neo"){let F=[[p,k],[p+h,k],[p+h,k+0.001],[p,k+0.001]];v=f.polygon(F,D)}else v=f.line(p,k,p+h,k,D);B.insert(()=>v).attr("class","divider")}if(_t(e,b),e.intersect=function(k){return vt.rect(e,k)},r&&e.look!=="handDrawn"&&(C||g?.length))B.selectAll("path").attr("style",r);return B}async function tE(A,e,t,r=""){if(e==="")return 0;let i=A.insert("g").attr("class","label").attr("style",r),u=OA(),a=u.htmlLabels??!0,n=await Rn(i,KR(eg(e)),{width:i0(e,u)+50,classes:"markdown-node-label",useHtmlLabels:a,style:r},u),o;if(!a){let s=n.children[0];for(let l of s.children)if(r)l.setAttribute("style",r);o=n.getBBox(),o.height+=6}else{let s=n.children[0],l=Qe(n);o=s.getBoundingClientRect(),l.attr("width",o.width),l.attr("height",o.height)}return i.attr("transform",`translate(${-o.width/2},${-o.height/2+t})`),o.height}async function UxA(A,e,{config:t}){let{labelStyles:r,nodeStyles:i}=wt(e);e.labelStyle=r||"";let u=10,a=e.width;e.width=(e.width??200)-10;let{shapeSvg:n,bbox:o,label:s}=await Qr(A,e,Er(e)),l=e.padding||10,g="",C;if("ticket"in e&&e.ticket&&t?.kanban?.ticketBaseUrl)g=t?.kanban?.ticketBaseUrl.replace("#TICKET#",e.ticket),C=n.insert("svg:a",":first-child").attr("class","kanban-ticket-link").attr("xlink:href",g).attr("target","_blank");let B={useHtmlLabels:e.useHtmlLabels,labelStyle:e.labelStyle||"",width:e.width,img:e.img,padding:e.padding||8,centerLabel:!1},E,d;if(C)({label:E,bbox:d}=await NeA(C,"ticket"in e&&e.ticket||"",B));else({label:E,bbox:d}=await NeA(n,"ticket"in e&&e.ticket||"",B));let{label:I,bbox:h}=await NeA(n,"assigned"in e&&e.assigned||"",B);e.width=a;let Q=10,p=e?.width||0,m=Math.max(d.height,h.height)/2,f=Math.max(o.height+Q*2,e?.height||0)+m,D=-p/2,w=-f/2;s.attr("transform","translate("+(l-p/2)+", "+(-m-o.height/2)+")"),E.attr("transform","translate("+(l-p/2)+", "+(-m+o.height/2)+")"),I.attr("transform","translate("+(l+p/2-h.width-2*u)+", "+(-m+o.height/2)+")");let b,{rx:k,ry:v}=e,{cssStyles:S}=e;if(e.look==="handDrawn"){let x=Ne.svg(n),F=St(e,{}),T=k||v?x.path(vQ(D,w,p,f,k||0),F):x.rectangle(D,w,p,f,F);b=n.insert(()=>T,":first-child"),b.attr("class","basic label-container").attr("style",S?S:null)}else{b=n.insert("rect",":first-child"),b.attr("class","basic label-container __APA__").attr("style",i).attr("rx",k??5).attr("ry",v??5).attr("x",D).attr("y",w).attr("width",p).attr("height",f);let x="priority"in e&&e.priority;if(x){let F=n.append("line"),T=D+2,R=w+Math.floor((k??0)/2),L=w+f-Math.floor((k??0)/2);F.attr("x1",T).attr("y1",R).attr("x2",T).attr("y2",L).attr("stroke-width","4").attr("stroke",Hot(x))}}return _t(e,b),e.height=f,e.intersect=function(x){return vt.rect(e,x)},n}async function MxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,halfPadding:a,label:n}=await Qr(A,e,Er(e)),o=u.width+10*a,s=u.height+8*a,l=0.15*o,{cssStyles:g}=e,C=u.width+20,B=u.height+20,E=Math.max(o,C),d=Math.max(s,B);n.attr("transform",`translate(${-u.width/2}, ${-u.height/2})`);let I,h=`M0 0
a${l},${l} 1 0,0 ${E*0.25},${-1*d*0.1}
a${l},${l} 1 0,0 ${E*0.25},0
a${l},${l} 1 0,0 ${E*0.25},0
a${l},${l} 1 0,0 ${E*0.25},${d*0.1}
a${l},${l} 1 0,0 ${E*0.15},${d*0.33}
a${l*0.8},${l*0.8} 1 0,0 0,${d*0.34}
a${l},${l} 1 0,0 ${-1*E*0.15},${d*0.33}
a${l},${l} 1 0,0 ${-1*E*0.25},${d*0.15}
a${l},${l} 1 0,0 ${-1*E*0.25},0
a${l},${l} 1 0,0 ${-1*E*0.25},0
a${l},${l} 1 0,0 ${-1*E*0.25},${-1*d*0.15}
a${l},${l} 1 0,0 ${-1*E*0.1},${-1*d*0.33}
a${l*0.8},${l*0.8} 1 0,0 0,${-1*d*0.34}
a${l},${l} 1 0,0 ${E*0.1},${-1*d*0.33}
H0 V0 Z`;if(e.look==="handDrawn"){let Q=Ne.svg(i),p=St(e,{}),m=Q.path(h,p);I=i.insert(()=>m,":first-child"),I.attr("class","basic label-container").attr("style",Sn(g))}else I=i.insert("path",":first-child").attr("class","basic label-container").attr("style",r).attr("d",h);return I.attr("transform",`translate(${-E/2}, ${-d/2})`),_t(e,I),e.calcIntersect=function(Q,p){return vt.rect(Q,p)},e.intersect=function(Q){return sA.info("Bang intersect",e,Q),vt.rect(e,Q)},i}async function TxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,halfPadding:a,label:n}=await Qr(A,e,Er(e)),o=u.width+2*a,s=u.height+2*a,l=0.15*o,g=0.25*o,C=0.35*o,B=0.2*o,{cssStyles:E}=e,d,I=`M0 0
a${l},${l} 0 0,1 ${o*0.25},${-1*o*0.1}
a${C},${C} 1 0,1 ${o*0.4},${-1*o*0.1}
a${g},${g} 1 0,1 ${o*0.35},${o*0.2}
a${l},${l} 1 0,1 ${o*0.15},${s*0.35}
a${B},${B} 1 0,1 ${-1*o*0.15},${s*0.65}
a${g},${l} 1 0,1 ${-1*o*0.25},${o*0.15}
a${C},${C} 1 0,1 ${-1*o*0.5},0
a${l},${l} 1 0,1 ${-1*o*0.25},${-1*o*0.15}
a${l},${l} 1 0,1 ${-1*o*0.1},${-1*s*0.35}
a${B},${B} 1 0,1 ${o*0.1},${-1*s*0.65}
H0 V0 Z`;if(e.look==="handDrawn"){let h=Ne.svg(i),Q=St(e,{}),p=h.path(I,Q);d=i.insert(()=>p,":first-child"),d.attr("class","basic label-container").attr("style",Sn(E))}else d=i.insert("path",":first-child").attr("class","basic label-container").attr("style",r).attr("d",I);return n.attr("transform",`translate(${-u.width/2}, ${-u.height/2})`),d.attr("transform",`translate(${-o/2}, ${-s/2})`),_t(e,d),e.calcIntersect=function(h,Q){return vt.rect(h,Q)},e.intersect=function(h){return sA.info("Cloud intersect",e,h),vt.rect(e,h)},i}async function YxA(A,e){let{labelStyles:t,nodeStyles:r}=wt(e);e.labelStyle=t;let{shapeSvg:i,bbox:u,halfPadding:a,label:n}=await Qr(A,e,Er(e)),o=u.width+8*a,s=u.height+2*a,l=5,g=e.look==="neo"?`
M${-o/2} ${s/2-l}
v${-s+2*l}
q0,-${l} ${l},-${l}
h${o-2*l}
q${l},0 ${l},${l}
v${s-l}
H${-o/2}
Z
`:`
M${-o/2} ${s/2-l}
v${-s+2*l}
q0,-${l} ${l},-${l}
h${o-2*l}
q${l},0 ${l},${l}
v${s-2*l}
q0,${l} ${-l},${l}
h${-(o-2*l)}
q${-l},0 ${-l},${-l}
Z
`;if(!e.domId)throw Error(`defaultMindmapNode: node "${e.id}" is missing a domId — was render.ts domId prefixing skipped?`);let C=i.append("path").attr("id",e.domId).attr("class","node-bkg node-"+e.type).attr("style",r).attr("d",g);return i.append("line").attr("class","node-line-").attr("x1",-o/2).attr("y1",s/2).attr("x2",o/2).attr("y2",s/2),n.attr("transform",`translate(${-u.width/2}, ${-u.height/2})`),i.append(()=>n.node()),_t(e,C),e.calcIntersect=function(B,E){return vt.rect(B,E)},e.intersect=function(B){return vt.rect(e,B)},i}async function HxA(A,e){let t={padding:e.padding??0};return YeA(A,e,t)}function KeA(A){return A in KxA}async function BI(A,e,t){let r,i;if(e.shape==="rect")if(e.rx&&e.ry)e.shape="roundedRect";else e.shape="squareRect";let u=e.shape?KxA[e.shape]:void 0;if(!u)throw Error(`No such shape: ${e.shape}. Please check your syntax.`);if(e.link){let a;if(t.config.securityLevel==="sandbox")a="_top";else if(e.linkTarget)a=e.linkTarget||"_blank";r=A.insert("svg:a").attr("xlink:href",e.link).attr("target",a??null),i=await u(r,e,t)}else i=await u(A,e,t),r=i;if(r.attr("data-look",Sn(e.look)),e.tooltip)i.attr("title",e.tooltip);if(EU.set(e.id,r),e.haveCallback)r.attr("class",r.attr("class")+" clickable");return r}var Qr,NeA,_t,Er,Eot,df,dot,cI,vQ,Iot,fFA,hot,Qot,pot,fot,mot,Dot,mFA,kQ,BU,yot,wFA,wot,bot,vot,vt,CU=12,kot,Fot,xot,lFA=8,gFA=8,cFA=10,CFA=10,Sot,Lot,Rot,Not,BFA=10,EFA=10,Got,Ef=8,$D=8,GeA=0.2,Uot,Mot,Tot,dFA=5,IFA=10,hFA=10,QFA=10,Oa=10,pFA,Yot,Hot,Kot,Jot,KxA,EU,JxA,dU,If;var n0=_(()=>{r0();u0();uo();Ln();ai();rr();ir();Nt();Pr();Pr();Kt();Pr();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Pr();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Kt();Pr();Pr();Kt();Pr();Kt();Pr();Kt();Kt();Kt();Qr=y(async(A,e,t)=>{let r,i=e.useHtmlLabels||Og(OA()?.htmlLabels);if(!t)r="node default";else r=t;let u=A.insert("g").attr("class",r).attr("id",e.domId||e.id),a=u.insert("g").attr("class","label").attr("style",Sn(e.labelStyle)),n;if(e.label===void 0)n="";else n=typeof e.label==="string"?e.label:e.label[0];let o=!!e.icon||!!e.img,s=e.labelType==="markdown",l=await Rn(a,gr(eg(n),OA()),{useHtmlLabels:i,width:e.width||OA().flowchart?.wrappingWidth,classes:s?"markdown-node-label":"",style:e.labelStyle,addSvgBackground:o,markdown:s},OA()),g=l.getBBox(),C=(e?.padding??0)/2;if(i){let B=l.children[0],E=Qe(l);await fv(B,n),g=B.getBoundingClientRect(),E.attr("width",g.width),E.attr("height",g.height)}if(i)a.attr("transform","translate("+-g.width/2+", "+-g.height/2+")");else a.attr("transform","translate(0, "+-g.height/2+")");if(e.centerLabel)a.attr("transform","translate("+-g.width/2+", "+-g.height/2+")");return a.insert("rect",":first-child"),{shapeSvg:u,bbox:g,halfPadding:C,label:a}},"labelHelper"),NeA=y(async(A,e,t)=>{let r=t.useHtmlLabels??Fi(OA()),i=A.insert("g").attr("class","label").attr("style",t.labelStyle||""),u=await Rn(i,gr(eg(e),OA()),{useHtmlLabels:r,width:t.width||OA()?.flowchart?.wrappingWidth,style:t.labelStyle,addSvgBackground:!!t.icon||!!t.img}),a=u.getBBox(),n=t.padding/2;if(Fi(OA())){let o=u.children[0],s=Qe(u);a=o.getBoundingClientRect(),s.attr("width",a.width),s.attr("height",a.height)}if(r)i.attr("transform","translate("+-a.width/2+", "+-a.height/2+")");else i.attr("transform","translate(0, "+-a.height/2+")");if(t.centerLabel)i.attr("transform","translate("+-a.width/2+", "+-a.height/2+")");return i.insert("rect",":first-child"),{shapeSvg:A,bbox:a,halfPadding:n,label:i}},"insertLabel"),_t=y((A,e)=>{let t=e.node().getBBox();A.width=t.width,A.height=t.height},"updateNodeBounds"),Er=y((A,e)=>(A.look==="handDrawn"?"rough-node":"node")+" "+A.cssClasses+" "+(e||""),"getNodeClasses");y(pi,"createPathFromPoints");y(bQ,"generateFullSineWavePoints");y(Lv,"generateCirclePoints");y(UeA,"mergePaths");Eot=y((A,e)=>{var{x:t,y:r}=A,i=e.x-t,u=e.y-r,a=A.width/2,n=A.height/2,o,s;if(Math.abs(u)*a>Math.abs(i)*n){if(u<0)n=-n;o=u===0?0:n*i/u,s=n}else{if(i<0)a=-a;o=a,s=i===0?0:a*u/i}return{x:t+o,y:r+s}},"intersectRect"),df=Eot,dot=y(async(A,e,t,r=!1,i=!1)=>{let u=e||"";if(typeof u==="object")u=u[0];let a=OA(),n=Fi(a);return await Rn(A,u,{style:t,isTitle:r,useHtmlLabels:n,markdown:!1,isNode:i,width:Number.POSITIVE_INFINITY},a)},"createLabel"),cI=dot,vQ=y((A,e,t,r,i)=>["M",A+i,e,"H",A+t-i,"A",i,i,0,0,1,A+t,e+i,"V",e+r-i,"A",i,i,0,0,1,A+t-i,e+r,"H",A+i,"A",i,i,0,0,1,A,e+r-i,"V",e+i,"A",i,i,0,0,1,A+i,e,"Z"].join(" "),"createRoundedRectPathD"),Iot=y(async(A,e)=>{let t=OA(),{themeVariables:r,handDrawnSeed:i}=t,{clusterBkg:u,clusterBorder:a}=r,n=a,{labelStyles:o,nodeStyles:s,borderStyles:l,backgroundStyles:g}=wt(e),C=A.insert("g").attr("class","cluster swimlane "+(e.cssClasses||"")).attr("id",e.id).attr("data-id",e.id).attr("data-et","cluster").attr("data-look",e.look),B=Og(t.flowchart.htmlLabels),E=e.direction==="LR",d=C.insert("g").attr("class","cluster-label swimlane-label"),I=await Rn(d,e.label,{style:e.labelStyle,useHtmlLabels:B,isNode:!0,width:e.width}),h=I.getBBox();if(B){let F=I.children[0],T=Qe(I);h=F.getBoundingClientRect(),T.attr("width",h.width),T.attr("height",h.height)}let Q=e.padding??0,p=e.width<=h.width+Q?h.width+Q:e.width;if(e.width<=h.width+Q)e.diff=(p-e.width)/2-Q;else e.diff=-Q;let m=e.height,f=e.y-m/2,D=e.y+m/2,w=e.x-p/2,b=e.swimlaneContentTop!==void 0?e.swimlaneContentTop:f+m/3,k=E?4:0,v=h.height+2*k,S,x;if(E){let F=Math.max(v,h.height+2*k),T=w+F,R=Math.max(0,p-F);if(e.look==="handDrawn"){let U=Ne.svg(C),Y=St(e,{roughness:0.7,fill:u,stroke:n,fillWeight:3,seed:i}),H=St(e,{roughness:0.7,fill:"none",stroke:n,seed:i}),J=U.rectangle(w,f,F,m,Y);S=C.insert(()=>J,":first-child");let K=U.rectangle(T,f,R,m,H);x=C.insert(()=>K,":first-child"),S.select("path:nth-child(2)").attr("style",l.join(";")),S.select("path").attr("style",g.join(";").replace("fill","stroke"))}else S=C.insert("rect",":first-child"),x=C.insert("rect",":first-child"),S.attr("class","swimlane-title").attr("style",s).attr("x",w).attr("y",f).attr("width",F).attr("height",m).attr("fill",u).attr("stroke",n),x.attr("class","swimlane-body").attr("style",s).attr("x",T).attr("y",f).attr("width",R).attr("height",m).attr("fill","none").attr("stroke",n);let L=w+F/2,M=e.y;d.attr("transform",`translate(${L}, ${M}) rotate(-90) translate(${-h.width/2}, ${-h.height/2})`)}else{let F=Math.max(0,b-f),T=Math.min(v,F),R=f+T,L=Math.max(0,D-R),M=e.x-p/2;if(e.look==="handDrawn"){let H=Ne.svg(C),J=St(e,{roughness:0.7,fill:u,stroke:n,fillWeight:3,seed:i}),K=St(e,{roughness:0.7,fill:"none",stroke:n,seed:i}),O=H.rectangle(M,f,p,T,J);S=C.insert(()=>O,":first-child");let P=H.rectangle(M,R,p,L,K);x=C.insert(()=>P,":first-child"),S.select("path:nth-child(2)").attr("style",l.join(";")),S.select("path").attr("style",g.join(";").replace("fill","stroke"))}else S=C.insert("rect",":first-child"),x=C.insert("rect",":first-child"),S.attr("class","swimlane-title").attr("style",s).attr("x",M).attr("y",f).attr("width",p).attr("height",T).attr("fill",u).attr("stroke",n),x.attr("class","swimlane-body").attr("style",s).attr("x",M).attr("y",R).attr("width",p).attr("height",L).attr("fill","none").attr("stroke",n);let U=e.x-h.width/2,Y=f+(T-h.height)/2;d.attr("transform",`translate(${U}, ${Y})`)}if(sA.trace("Swimlane data ",e,JSON.stringify(e)),o){let F=d.select("span");if(F)F.attr("style",o)}return e.offsetX=0,e.width=p,e.height=m,e.offsetY=h.height-Q/2,e.intersect=function(F){return df(e,F)},{cluster:C,labelBBox:h}},"swimlane"),fFA=y(async(A,e)=>{sA.info("Creating subgraph rect for ",e.id,e);let t=OA(),{themeVariables:r,handDrawnSeed:i}=t,{clusterBkg:u,clusterBorder:a}=r,{labelStyles:n,nodeStyles:o,borderStyles:s,backgroundStyles:l}=wt(e),g=A.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.domId).attr("data-look",e.look),C=Fi(t),B=g.insert("g").attr("class","cluster-label "),E;if(e.labelType==="markdown")E=await Rn(B,e.label,{style:e.labelStyle,useHtmlLabels:C,isNode:!0,width:e.width});else E=await cI(B,e.label,e.labelStyle||"",!1,!0);let d=E.getBBox();if(Fi(t)){let w=E.children[0],b=Qe(E);d=w.getBoundingClientRect(),b.attr("width",d.width),b.attr("height",d.height)}let I=e.width<=d.width+e.padding?d.width+e.padding:e.width;if(e.width<=d.width+e.padding)e.diff=(I-e.width)/2-e.padding;else e.diff=-e.padding;let h=e.height,Q=e.x-I/2,p=e.y-h/2;sA.trace("Data ",e,JSON.stringify(e));let m;if(e.look==="handDrawn"){let w=Ne.svg(g),b=St(e,{roughness:0.7,fill:u,stroke:a,fillWeight:3,seed:i}),k=w.path(vQ(Q,p,I,h,0),b);m=g.insert(()=>(sA.debug("Rough node insert CXC",k),k),":first-child"),m.select("path:nth-child(2)").attr("style",s.join(";")),m.select("path").attr("style",l.join(";").replace("fill","stroke"))}else m=g.insert("rect",":first-child"),m.attr("style",o).attr("rx",e.rx).attr("ry",e.ry).attr("x",Q).attr("y",p).attr("width",I).attr("height",h);let{subGraphTitleTopMargin:f}=lC(t);if(B.attr("transform",`translate(${e.x-d.width/2}, ${e.y-e.height/2+f})`),n){let w=B.select("span");if(w)w.attr("style",n)}let D=m.node().getBBox();return e.offsetX=0,e.width=D.width,e.height=D.height,e.offsetY=d.height-e.padding/2,e.intersect=function(w){return df(e,w)},{cluster:g,labelBBox:d}},"rect"),hot=y((A,e)=>{let t=A.insert("g").attr("class","note-cluster").attr("id",e.domId),r=t.insert("rect",":first-child"),i=0*e.padding,u=i/2;r.attr("rx",e.rx).attr("ry",e.ry).attr("x",e.x-e.width/2-u).attr("y",e.y-e.height/2-u).attr("width",e.width+i).attr("height",e.height+i).attr("fill","none");let a=r.node().getBBox();return e.width=a.width,e.height=a.height,e.intersect=function(n){return df(e,n)},{cluster:t,labelBBox:{width:0,height:0}}},"noteGroup"),Qot=y(async(A,e)=>{let t=OA(),{themeVariables:r,handDrawnSeed:i}=t,{altBackground:u,compositeBackground:a,compositeTitleBackground:n,nodeBorder:o}=r,s=A.insert("g").attr("class",e.cssClasses).attr("id",e.domId).attr("data-id",e.id).attr("data-look",e.look),l=s.insert("g",":first-child"),g=s.insert("g").attr("class","cluster-label"),C=s.append("rect"),B=await cI(g,e.label,e.labelStyle,void 0,!0),E=B.getBBox();if(Fi(t)){let k=B.children[0],v=Qe(B);E=k.getBoundingClientRect(),v.attr("width",E.width),v.attr("height",E.height)}let d=0*e.padding,I=d/2,h=(e.width<=E.width+e.padding?E.width+e.padding:e.width)+d;if(e.width<=E.width+e.padding)e.diff=(h-e.width)/2-e.padding;else e.diff=-e.padding;let Q=e.height+d,p=e.height+d-E.height-6,m=e.x-h/2,f=e.y-Q/2;e.width=h;let D=e.y-e.height/2-I+E.height+2,w;if(e.look==="handDrawn"){let k=e.cssClasses.includes("statediagram-cluster-alt"),v=Ne.svg(s),S=e.rx||e.ry?v.path(vQ(m,f,h,Q,10),{roughness:0.7,fill:n,fillStyle:"solid",stroke:o,seed:i}):v.rectangle(m,f,h,Q,{seed:i});w=s.insert(()=>S,":first-child");let x=v.rectangle(m,D,h,p,{fill:k?u:a,fillStyle:k?"hachure":"solid",stroke:o,seed:i});w=s.insert(()=>S,":first-child"),C=s.insert(()=>x)}else{w=l.insert("rect",":first-child");let k="outer";w.attr("class",k).attr("x",m).attr("y",f).attr("width",h).attr("height",Q).attr("data-look",e.look),C.attr("class","inner").attr("x",m).attr("y",D).attr("width",h).attr("height",p)}g.attr("transform",`translate(${e.x-E.width/2}, ${f+1-(Fi(t)?0:3)})`);let b=w.node().getBBox();return e.height=b.height,e.offsetX=0,e.offsetY=E.height-e.padding/2,e.labelBBox=E,e.intersect=function(k){return df(e,k)},{cluster:s,labelBBox:E}},"roundedWithTitle"),pot=y(async(A,e)=>{sA.info("Creating subgraph rect for ",e.id,e);let t=OA(),{themeVariables:r,handDrawnSeed:i}=t,{clusterBkg:u,clusterBorder:a}=r,{labelStyles:n,nodeStyles:o,borderStyles:s,backgroundStyles:l}=wt(e),g=A.insert("g").attr("class","cluster "+e.cssClasses).attr("id",e.domId).attr("data-look",e.look),C=Fi(t),B=g.insert("g").attr("class","cluster-label "),E=await Rn(B,e.label,{style:e.labelStyle,useHtmlLabels:C,isNode:!0,width:e.width}),d=E.getBBox();if(Fi(t)){let w=E.children[0],b=Qe(E);d=w.getBoundingClientRect(),b.attr("width",d.width),b.attr("height",d.height)}let I=e.width<=d.width+e.padding?d.width+e.padding:e.width;if(e.width<=d.width+e.padding)e.diff=(I-e.width)/2-e.padding;else e.diff=-e.padding;let h=e.height,Q=e.x-I/2,p=e.y-h/2;sA.trace("Data ",e,JSON.stringify(e));let m;if(e.look==="handDrawn"){let w=Ne.svg(g),b=St(e,{roughness:0.7,fill:u,stroke:a,fillWeight:4,seed:i}),k=w.path(vQ(Q,p,I,h,e.rx),b);m=g.insert(()=>(sA.debug("Rough node insert CXC",k),k),":first-child"),m.select("path:nth-child(2)").attr("style",s.join(";")),m.select("path").attr("style",l.join(";").replace("fill","stroke"))}else m=g.insert("rect",":first-child"),m.attr("style",o).attr("rx",e.rx).attr("ry",e.ry).attr("x",Q).attr("y",p).attr("width",I).attr("height",h);let{subGraphTitleTopMargin:f}=lC(t);if(B.attr("transform",`translate(${e.x-d.width/2}, ${e.y-e.height/2+f})`),n){let w=B.select("span");if(w)w.attr("style",n)}let D=m.node().getBBox();return e.offsetX=0,e.width=D.width,e.height=D.height,e.offsetY=d.height-e.padding/2,e.intersect=function(w){return df(e,w)},{cluster:g,labelBBox:d}},"kanbanSection"),fot=y((A,e)=>{let t=OA(),{themeVariables:r,handDrawnSeed:i}=t,{nodeBorder:u}=r,a=A.insert("g").attr("class",e.cssClasses).attr("id",e.domId).attr("data-look",e.look),n=a.insert("g",":first-child"),o=0*e.padding,s=e.width+o;e.diff=-e.padding;let l=e.height+o,g=e.x-s/2,C=e.y-l/2;e.width=s;let B;if(e.look==="handDrawn"){let I=Ne.svg(a).rectangle(g,C,s,l,{fill:"lightgrey",roughness:0.5,strokeLineDash:[5],stroke:u,seed:i});B=a.insert(()=>I,":first-child")}else{B=n.insert("rect",":first-child");let d="outer";if(e.look==="neo")d="divider";else d="divider";B.attr("class",d).attr("x",g).attr("y",C).attr("width",s).attr("height",l).attr("data-look",e.look)}let E=B.node().getBBox();return e.height=E.height,e.offsetX=0,e.offsetY=0,e.intersect=function(d){return df(e,d)},{cluster:a,labelBBox:{}}},"divider"),mot=fFA,Dot={rect:fFA,squareRect:mot,roundedWithTitle:Qot,noteGroup:hot,divider:fot,kanbanSection:pot,swimlane:Iot},mFA=new Map,kQ=y(async(A,e)=>{let t=e.shape||"rect",r=await Dot[t](A,e);return mFA.set(e.id,r),r},"insertCluster"),BU=y(()=>{mFA=new Map},"clear");y(DFA,"intersectNode");yot=DFA;y(yFA,"intersectEllipse");wFA=yFA;y(bFA,"intersectCircle");wot=bFA;y(vFA,"intersectLine");y(MeA,"sameSign");bot=vFA;y(kFA,"intersectPolygon");vot=kFA,vt={node:yot,circle:wot,ellipse:wFA,polygon:vot,rect:df};y(FFA,"anchor");y(TeA,"generateArcPoints");y(xFA,"calculateArcSagitta");y(SFA,"bowTieRect");y(CI,"insertPolygonShape");y(LFA,"card");y(RFA,"choice");y(YeA,"circle");y(NFA,"createLine");y(GFA,"crossedCircle");y(lI,"generateCirclePoints");y(UFA,"curlyBraceLeft");y(gI,"generateCirclePoints");y(MFA,"curlyBraceRight");y(a0,"generateCirclePoints");y(TFA,"curlyBraces");y(YFA,"curvedTrapezoid");kot=y((A,e,t,r,i,u)=>[`M${A},${e+u}`,`a${i},${u} 0,0,0 ${t},0`,`a${i},${u} 0,0,0 ${-t},0`,`l0,${r}`,`a${i},${u} 0,0,0 ${t},0`,`l0,${-r}`].join(" "),"createCylinderPathD"),Fot=y((A,e,t,r,i,u)=>[`M${A},${e+u}`,`M${A+t},${e+u}`,`a${i},${u} 0,0,0 ${-t},0`,`l0,${r}`,`a${i},${u} 0,0,0 ${t},0`,`l0,${-r}`].join(" "),"createOuterCylinderPathD"),xot=y((A,e,t,r,i,u)=>[`M${A-t/2},${-r/2}`,`a${i},${u} 0,0,0 ${t},0`].join(" "),"createInnerCylinderPathD");y(HFA,"cylinder");y(ty,"drawRect");y(KFA,"datastore");y(JFA,"dividedRectangle");y(OFA,"doublecircle");y(PFA,"filledCircle");y(_FA,"flippedTriangle");y(WFA,"forkJoin");y(qFA,"halfRoundedRectangle");Sot=y((A,e,t,r,i)=>[`M${A+i},${e}`,`L${A+t-i},${e}`,`L${A+t},${e-r/2}`,`L${A+t-i},${e-r}`,`L${A+i},${e-r}`,`L${A},${e-r/2}`,"Z"].join(" "),"createHexagonPathD");y(zFA,"hexagon");y(ZFA,"hourglass");y(VFA,"icon");y(jFA,"iconCircle");y(XFA,"iconRounded");y($FA,"iconSquare");y(AxA,"imageSquare");y(exA,"inv_trapezoid");y(txA,"labelRect");y(rxA,"lean_left");y(ixA,"lean_right");y(uxA,"lightningBolt");Lot=y((A,e,t,r,i,u,a)=>[`M${A},${e+u}`,`a${i},${u} 0,0,0 ${t},0`,`a${i},${u} 0,0,0 ${-t},0`,`l0,${r}`,`a${i},${u} 0,0,0 ${t},0`,`l0,${-r}`,`M${A},${e+u+a}`,`a${i},${u} 0,0,0 ${t},0`].join(" "),"createCylinderPathD"),Rot=y((A,e,t,r,i,u,a)=>[`M${A},${e+u}`,`M${A+t},${e+u}`,`a${i},${u} 0,0,0 ${-t},0`,`l0,${r}`,`a${i},${u} 0,0,0 ${t},0`,`l0,${-r}`,`M${A},${e+u+a}`,`a${i},${u} 0,0,0 ${t},0`].join(" "),"createOuterCylinderPathD"),Not=y((A,e,t,r,i,u)=>[`M${A-t/2},${-r/2}`,`a${i},${u} 0,0,0 ${t},0`].join(" "),"createInnerCylinderPathD");y(axA,"linedCylinder");y(nxA,"linedWaveEdgedRect");y(oxA,"multiRect");y(sxA,"multiWaveEdgedRectangle");y(lxA,"note");Got=y((A,e,t)=>[`M${A+t/2},${e}`,`L${A+t},${e-t/2}`,`L${A+t/2},${e-t}`,`L${A},${e-t/2}`,"Z"].join(" "),"createDecisionBoxPathD");y(gxA,"question");y(cxA,"rect_left_inv_arrow");y(CxA,"rectWithTitle");y(BxA,"roundedRect");y(ExA,"shadedProcess");y(dxA,"slopedRect");y(IxA,"squareRect");y(hxA,"stadium");y(QxA,"state");y(pxA,"stateEnd");y(fxA,"stateStart");y(mxA,"subroutine");y(DxA,"taggedRect");y(yxA,"taggedWaveEdgedRectangle");y(wxA,"text");Uot=y((A,e,t,r,i,u)=>`M${A},${e}
a${i},${u} 0,0,1 0,${-r}
l${t},0
a${i},${u} 0,0,1 0,${r}
M${t},${-r}
a${i},${u} 0,0,0 0,${r}
l${-t},0`,"createCylinderPathD"),Mot=y((A,e,t,r,i,u)=>[`M${A},${e}`,`M${A+t},${e}`,`a${i},${u} 0,0,0 0,${-r}`,`l${-t},0`,`a${i},${u} 0,0,0 0,${r}`,`l${t},0`].join(" "),"createOuterCylinderPathD"),Tot=y((A,e,t,r,i,u)=>[`M${A+t/2},${-r/2}`,`a${i},${u} 0,0,0 0,${r}`].join(" "),"createInnerCylinderPathD");y(bxA,"tiltedCylinder");y(vxA,"trapezoid");y(kxA,"trapezoidalPentagon");y(FxA,"triangle");y(xxA,"waveEdgedRectangle");y(SxA,"waveRectangle");y(LxA,"windowPane");pFA=new Set(["redux-color","redux-dark-color"]),Yot=new Set(["redux","redux-dark","redux-color","redux-dark-color"]);y(HeA,"erBox");y(Ay,"addText");y(ey,"lineToPolygon");y(RxA,"textHelper");y(Sv,"addText");y(NxA,"classBox");y(GxA,"requirementBox");y(tE,"addText");Hot=y((A)=>{switch(A){case"Very High":return"red";case"High":return"orange";case"Medium":return null;case"Low":return"blue";case"Very Low":return"lightblue"}},"colorFromPriority");y(UxA,"kanbanItem");y(MxA,"bang");y(TxA,"cloud");y(YxA,"defaultMindmapNode");y(HxA,"mindmapCircle");Kot=[{semanticName:"Process",name:"Rectangle",shortName:"rect",description:"Standard process shape",aliases:["proc","process","rectangle"],internalAliases:["squareRect"],handler:IxA},{semanticName:"Event",name:"Rounded Rectangle",shortName:"rounded",description:"Represents an event",aliases:["event"],internalAliases:["roundedRect"],handler:BxA},{semanticName:"Terminal Point",name:"Stadium",shortName:"stadium",description:"Terminal point",aliases:["terminal","pill"],handler:hxA},{semanticName:"Subprocess",name:"Framed Rectangle",shortName:"fr-rect",description:"Subprocess",aliases:["subprocess","subproc","framed-rectangle","subroutine"],handler:mxA},{semanticName:"Database",name:"Cylinder",shortName:"cyl",description:"Database storage",aliases:["db","database","cylinder"],handler:HFA},{semanticName:"Data Store",name:"Data Store",shortName:"datastore",description:"Data flow diagram data store",aliases:["data-store"],handler:KFA},{semanticName:"Start",name:"Circle",shortName:"circle",description:"Starting point",aliases:["circ"],handler:YeA},{semanticName:"Bang",name:"Bang",shortName:"bang",description:"Bang",aliases:["bang"],handler:MxA},{semanticName:"Cloud",name:"Cloud",shortName:"cloud",description:"cloud",aliases:["cloud"],handler:TxA},{semanticName:"Decision",name:"Diamond",shortName:"diam",description:"Decision-making step",aliases:["decision","diamond","question"],handler:gxA},{semanticName:"Prepare Conditional",name:"Hexagon",shortName:"hex",description:"Preparation or condition step",aliases:["hexagon","prepare"],handler:zFA},{semanticName:"Data Input/Output",name:"Lean Right",shortName:"lean-r",description:"Represents input or output",aliases:["lean-right","in-out"],internalAliases:["lean_right"],handler:ixA},{semanticName:"Data Input/Output",name:"Lean Left",shortName:"lean-l",description:"Represents output or input",aliases:["lean-left","out-in"],internalAliases:["lean_left"],handler:rxA},{semanticName:"Priority Action",name:"Trapezoid Base Bottom",shortName:"trap-b",description:"Priority action",aliases:["priority","trapezoid-bottom","trapezoid"],handler:vxA},{semanticName:"Manual Operation",name:"Trapezoid Base Top",shortName:"trap-t",description:"Represents a manual task",aliases:["manual","trapezoid-top","inv-trapezoid"],internalAliases:["inv_trapezoid"],handler:exA},{semanticName:"Stop",name:"Double Circle",shortName:"dbl-circ",description:"Represents a stop point",aliases:["double-circle"],internalAliases:["doublecircle"],handler:OFA},{semanticName:"Text Block",name:"Text Block",shortName:"text",description:"Text block",handler:wxA},{semanticName:"Card",name:"Notched Rectangle",shortName:"notch-rect",description:"Represents a card",aliases:["card","notched-rectangle"],handler:LFA},{semanticName:"Lined/Shaded Process",name:"Lined Rectangle",shortName:"lin-rect",description:"Lined process shape",aliases:["lined-rectangle","lined-process","lin-proc","shaded-process"],handler:ExA},{semanticName:"Start",name:"Small Circle",shortName:"sm-circ",description:"Small starting point",aliases:["start","small-circle"],internalAliases:["stateStart"],handler:fxA},{semanticName:"Stop",name:"Framed Circle",shortName:"fr-circ",description:"Stop point",aliases:["stop","framed-circle"],internalAliases:["stateEnd"],handler:pxA},{semanticName:"Fork/Join",name:"Filled Rectangle",shortName:"fork",description:"Fork or join in process flow",aliases:["join"],internalAliases:["forkJoin"],handler:WFA},{semanticName:"Collate",name:"Hourglass",shortName:"hourglass",description:"Represents a collate operation",aliases:["hourglass","collate"],handler:ZFA},{semanticName:"Comment",name:"Curly Brace",shortName:"brace",description:"Adds a comment",aliases:["comment","brace-l"],handler:UFA},{semanticName:"Comment Right",name:"Curly Brace",shortName:"brace-r",description:"Adds a comment",handler:MFA},{semanticName:"Comment with braces on both sides",name:"Curly Braces",shortName:"braces",description:"Adds a comment",handler:TFA},{semanticName:"Com Link",name:"Lightning Bolt",shortName:"bolt",description:"Communication link",aliases:["com-link","lightning-bolt"],handler:uxA},{semanticName:"Document",name:"Document",shortName:"doc",description:"Represents a document",aliases:["doc","document"],handler:xxA},{semanticName:"Delay",name:"Half-Rounded Rectangle",shortName:"delay",description:"Represents a delay",aliases:["half-rounded-rectangle"],handler:qFA},{semanticName:"Direct Access Storage",name:"Horizontal Cylinder",shortName:"h-cyl",description:"Direct access storage",aliases:["das","horizontal-cylinder"],handler:bxA},{semanticName:"Disk Storage",name:"Lined Cylinder",shortName:"lin-cyl",description:"Disk storage",aliases:["disk","lined-cylinder"],handler:axA},{semanticName:"Display",name:"Curved Trapezoid",shortName:"curv-trap",description:"Represents a display",aliases:["curved-trapezoid","display"],handler:YFA},{semanticName:"Divided Process",name:"Divided Rectangle",shortName:"div-rect",description:"Divided process shape",aliases:["div-proc","divided-rectangle","divided-process"],handler:JFA},{semanticName:"Extract",name:"Triangle",shortName:"tri",description:"Extraction process",aliases:["extract","triangle"],handler:FxA},{semanticName:"Internal Storage",name:"Window Pane",shortName:"win-pane",description:"Internal storage",aliases:["internal-storage","window-pane"],handler:LxA},{semanticName:"Junction",name:"Filled Circle",shortName:"f-circ",description:"Junction point",aliases:["junction","filled-circle"],handler:PFA},{semanticName:"Loop Limit",name:"Trapezoidal Pentagon",shortName:"notch-pent",description:"Loop limit step",aliases:["loop-limit","notched-pentagon"],handler:kxA},{semanticName:"Manual File",name:"Flipped Triangle",shortName:"flip-tri",description:"Manual file operation",aliases:["manual-file","flipped-triangle"],handler:_FA},{semanticName:"Manual Input",name:"Sloped Rectangle",shortName:"sl-rect",description:"Manual input step",aliases:["manual-input","sloped-rectangle"],handler:dxA},{semanticName:"Multi-Document",name:"Stacked Document",shortName:"docs",description:"Multiple documents",aliases:["documents","st-doc","stacked-document"],handler:sxA},{semanticName:"Multi-Process",name:"Stacked Rectangle",shortName:"st-rect",description:"Multiple processes",aliases:["procs","processes","stacked-rectangle"],handler:oxA},{semanticName:"Stored Data",name:"Bow Tie Rectangle",shortName:"bow-rect",description:"Stored data",aliases:["stored-data","bow-tie-rectangle"],handler:SFA},{semanticName:"Summary",name:"Crossed Circle",shortName:"cross-circ",description:"Summary",aliases:["summary","crossed-circle"],handler:GFA},{semanticName:"Tagged Document",name:"Tagged Document",shortName:"tag-doc",description:"Tagged document",aliases:["tag-doc","tagged-document"],handler:yxA},{semanticName:"Tagged Process",name:"Tagged Rectangle",shortName:"tag-rect",description:"Tagged process",aliases:["tagged-rectangle","tag-proc","tagged-process"],handler:DxA},{semanticName:"Paper Tape",name:"Flag",shortName:"flag",description:"Paper tape",aliases:["paper-tape"],handler:SxA},{semanticName:"Odd",name:"Odd",shortName:"odd",description:"Odd shape",internalAliases:["rect_left_inv_arrow"],handler:cxA},{semanticName:"Lined Document",name:"Lined Document",shortName:"lin-doc",description:"Lined document",aliases:["lined-document"],handler:nxA}],Jot=y(()=>{let e=[...Object.entries({state:QxA,choice:RFA,note:lxA,rectWithTitle:CxA,labelRect:txA,iconSquare:$FA,iconCircle:jFA,icon:VFA,iconRounded:XFA,imageSquare:AxA,anchor:FFA,kanbanItem:UxA,mindmapCircle:HxA,defaultMindmapNode:YxA,classBox:NxA,erBox:HeA,requirementBox:GxA}),...Kot.flatMap((t)=>[t.shortName,..."aliases"in t?t.aliases:[],..."internalAliases"in t?t.internalAliases:[]].map((i)=>[i,t.handler]))];return Object.fromEntries(e)},"generateShapeMap"),KxA=Jot();y(KeA,"isValidShape");EU=new Map;y(BI,"insertNode");JxA=y((A,e)=>{EU.set(e.id,A)},"setNodeElem"),dU=y(()=>{EU.clear()},"clear"),If=y((A)=>{let e=EU.get(A.id);sA.trace("Transforming node",A.diff,A,"translate("+(A.x-A.width/2-5)+", "+A.width/2+")");let t=8,r=A.diff||0;if(A.clusterNode)e.attr("transform","translate("+(A.x+r-A.width/2)+", "+(A.y-A.height/2-t)+")");else e.attr("transform","translate("+A.x+", "+A.y+")");return r},"positionNode")});function Rv(A,e){if(A===void 0||e===void 0)return{angle:0,deltaX:0,deltaY:0};A=Ia(A),e=Ia(e);let[t,r]=[A.x,A.y],[i,u]=[e.x,e.y],a=i-t,n=u-r;return{angle:Math.atan(n/a),deltaX:a,deltaY:n}}var qg,Nn,JeA,Ia,IU;var Cs=_(()=>{Nt();qg=y((A,e)=>{if(e)return"translate("+-A.width/2+", "+-A.height/2+")";let t=A.x??0,r=A.y??0;return"translate("+-(t+A.width/2)+", "+-(r+A.height/2)+")"},"computeLabelTransform"),Nn={aggregation:17.25,extension:17.25,composition:17.25,dependency:6,lollipop:13.5,arrow_point:4,arrow_barb:0,arrow_barb_neo:5.5},JeA={arrow_point:4,arrow_cross:12.5,arrow_circle:12.5};y(Rv,"calculateDeltaAndAngle");Ia=y((A)=>{if(Array.isArray(A))return{x:A[0],y:A[1]};return A},"pointTransformer"),IU=y((A)=>({x:y(function(e,t,r){let i=0,u=Ia(r[0]).x<Ia(r[r.length-1]).x?"left":"right";if(t===0&&Object.hasOwn(Nn,A.arrowTypeStart)){let{angle:B,deltaX:E}=Rv(r[0],r[1]);i=Nn[A.arrowTypeStart]*Math.cos(B)*(E>=0?1:-1)}else if(t===r.length-1&&Object.hasOwn(Nn,A.arrowTypeEnd)){let{angle:B,deltaX:E}=Rv(r[r.length-1],r[r.length-2]);i=Nn[A.arrowTypeEnd]*Math.cos(B)*(E>=0?1:-1)}let a=Math.abs(Ia(e).x-Ia(r[r.length-1]).x),n=Math.abs(Ia(e).y-Ia(r[r.length-1]).y),o=Math.abs(Ia(e).x-Ia(r[0]).x),s=Math.abs(Ia(e).y-Ia(r[0]).y),l=Nn[A.arrowTypeStart],g=Nn[A.arrowTypeEnd],C=1;if(a<g&&a>0&&n<g){let B=g+C-a;B*=u==="right"?-1:1,i-=B}if(o<l&&o>0&&s<l){let B=l+C-o;B*=u==="right"?-1:1,i+=B}return Ia(e).x+i},"x"),y:y(function(e,t,r){let i=0,u=Ia(r[0]).y<Ia(r[r.length-1]).y?"down":"up";if(t===0&&Object.hasOwn(Nn,A.arrowTypeStart)){let{angle:B,deltaY:E}=Rv(r[0],r[1]);i=Nn[A.arrowTypeStart]*Math.abs(Math.sin(B))*(E>=0?1:-1)}else if(t===r.length-1&&Object.hasOwn(Nn,A.arrowTypeEnd)){let{angle:B,deltaY:E}=Rv(r[r.length-1],r[r.length-2]);i=Nn[A.arrowTypeEnd]*Math.abs(Math.sin(B))*(E>=0?1:-1)}let a=Math.abs(Ia(e).y-Ia(r[r.length-1]).y),n=Math.abs(Ia(e).x-Ia(r[r.length-1]).x),o=Math.abs(Ia(e).y-Ia(r[0]).y),s=Math.abs(Ia(e).x-Ia(r[0]).x),l=Nn[A.arrowTypeStart],g=Nn[A.arrowTypeEnd],C=1;if(a<g&&a>0&&n<g){let B=g+C-a;B*=u==="up"?-1:1,i-=B}if(o<l&&o>0&&s<l){let B=l+C-o;B*=u==="up"?-1:1,i+=B}return Ia(e).y+i},"y")}),"getLineFunctionsWithOffset")});function Gv(A,e){if(Fi(OA())&&A)A.style.width=e.length*9+"px",A.style.height="12px"}function WxA(A){let e=[],t=[];for(let r=1;r<A.length-1;r++){let i=A[r-1],u=A[r],a=A[r+1];if(i.x===u.x&&u.y===a.y&&Math.abs(u.x-a.x)>5&&Math.abs(u.y-i.y)>5)e.push(u),t.push(r);else if(i.y===u.y&&u.x===a.x&&Math.abs(u.x-i.x)>5&&Math.abs(u.y-a.y)>5)e.push(u),t.push(r)}return{cornerPoints:e,cornerPointPositions:t}}function qxA(A,e){if(A.length<2)return"";let t="",r=A.length,i=0.00001;for(let u=0;u<r;u++){let a=A[u],n=A[u-1],o=A[u+1];if(u===0)t+=`M${a.x},${a.y}`;else if(u===r-1)t+=`L${a.x},${a.y}`;else{let s=a.x-n.x,l=a.y-n.y,g=o.x-a.x,C=o.y-a.y,B=Math.hypot(s,l),E=Math.hypot(g,C);if(B<i||E<i){t+=`L${a.x},${a.y}`;continue}let d=s/B,I=l/B,h=g/E,Q=C/E,p=d*h+I*Q,m=Math.max(-1,Math.min(1,p)),f=Math.acos(m);if(f<i||Math.abs(Math.PI-f)<i){t+=`L${a.x},${a.y}`;continue}let D=Math.min(e/Math.sin(f/2),B/2,E/2),w=a.x-d*D,b=a.y-I*D,k=a.x+h*D,v=a.y+Q*D;t+=`L${w},${b}`,t+=`Q${a.x},${a.y} ${k},${v}`}}return t}function OeA(A,e){if(!A||!e)return{angle:0,deltaX:0,deltaY:0};let t=e.x-A.x,r=e.y-A.y;return{angle:Math.atan2(r,t),deltaX:t,deltaY:r}}function zxA(A,e){let t=A.map((i)=>({...i}));if(A.length>=2&&Nn[e.arrowTypeStart]){let i=Nn[e.arrowTypeStart],u=A[0],a=A[1],{angle:n}=OeA(u,a),o=i*Math.cos(n),s=i*Math.sin(n);t[0].x=u.x+o,t[0].y=u.y+s}let r=A.length;if(r>=2&&Nn[e.arrowTypeEnd]){let i=Nn[e.arrowTypeEnd],u=A[r-1],a=A[r-2],{angle:n}=OeA(a,u),o=i*Math.cos(n),s=i*Math.sin(n);t[r-1].x=u.x-o,t[r-1].y=u.y-s}return t}var Oot,Pot,_ot,OxA,Wot,ry,Pa,hU,Nv,hf,QU,qot,zot,Zot,PxA,_xA,Vot,jot,iy,Xot,$ot,A0t,e0t,t0t,r0t,i0t,u0t,a0t,n0t,o0t,s0t,l0t,g0t,c0t,C0t,B0t,E0t,d0t,I0t,h0t,Q0t,p0t,f0t,uy;var ul=_(()=>{n0();r0();Cs();u0();uo();ai();rr();ir();Nt();Pr();Kt();Oot=y((A,e,t,r,i,u=!1,a)=>{if(e.arrowTypeStart)OxA(A,"start",e.arrowTypeStart,t,r,i,u,a);if(e.arrowTypeEnd)OxA(A,"end",e.arrowTypeEnd,t,r,i,u,a)},"addEdgeMarkers"),Pot={arrow_cross:{type:"cross",fill:!1},arrow_point:{type:"point",fill:!0},arrow_barb:{type:"barb",fill:!0},arrow_barb_neo:{type:"barb",fill:!0},arrow_circle:{type:"circle",fill:!1},aggregation:{type:"aggregation",fill:!1},extension:{type:"extension",fill:!1},composition:{type:"composition",fill:!0},dependency:{type:"dependency",fill:!0},lollipop:{type:"lollipop",fill:!1},only_one:{type:"onlyOne",fill:!1},zero_or_one:{type:"zeroOrOne",fill:!1},one_or_more:{type:"oneOrMore",fill:!1},zero_or_more:{type:"zeroOrMore",fill:!1},requirement_arrow:{type:"requirement_arrow",fill:!1},requirement_contains:{type:"requirement_contains",fill:!1}},_ot=["cross","point","circle","lollipop","aggregation","extension","composition","dependency","barb"],OxA=y((A,e,t,r,i,u,a=!1,n)=>{let o=Pot[t],s=o&&_ot.includes(o.type);if(!o){sA.warn(`Unknown arrow type: ${t}`);return}let l=o.type,B=`${i}_${u}-${l}${e==="start"?"Start":"End"}${a&&s?"-margin":""}`;if(n&&n.trim()!==""){let E=n.replace(/[^\dA-Za-z]/g,"_"),d=`${B}_${E}`;if(!document.getElementById(d)){let I=document.getElementById(B);if(I){let h=I.cloneNode(!0);h.id=d,h.querySelectorAll("path, circle, line").forEach((p)=>{if(p.setAttribute("stroke",n),o.fill)p.setAttribute("fill",n)}),I.parentNode?.appendChild(h)}}A.attr(`marker-${e}`,`url(${r}#${d})`)}else A.attr(`marker-${e}`,`url(${r}#${B})`)},"addEdgeMarker"),Wot=y((A)=>typeof A==="string"?A:OA()?.flowchart?.curve,"resolveEdgeCurveType"),ry=new Map,Pa=new Map,hU=y(()=>{ry.clear(),Pa.clear()},"clear"),Nv=y((A)=>{if(!A)return"";if(typeof A==="string")return A;return A.reduce((e,t)=>e+";"+t,"")},"getLabelStyles"),hf=y(async(A,e)=>{let t=OA(),r=Fi(t),{labelStyles:i}=wt(e);e.labelStyle=i;let u=A.insert("g").attr("class","edgeLabel"),a=u.insert("g").attr("class","label").attr("data-id",e.id),n=e.labelType==="markdown",o=void 0,s=await Rn(A,e.label,{style:Nv(e.labelStyle),useHtmlLabels:r,addSvgBackground:!0,isNode:!1,markdown:n,width:n?o:void 0},t);a.node().appendChild(s),sA.info("abc82",e,e.labelType);let l=s.getBBox(),g=l;if(r){let B=s.children[0],E=Qe(s);l=B.getBoundingClientRect(),g=l,E.attr("width",l.width),E.attr("height",l.height)}else{let B=Qe(s).select("text").node();if(B&&typeof B.getBBox==="function")g=B.getBBox()}a.attr("transform",qg(g,r)),ry.set(e.id,u),e.width=l.width,e.height=l.height;let C;if(e.startLabelLeft){let B=A.insert("g").attr("class","edgeTerminals"),E=B.insert("g").attr("class","inner"),d=await cI(E,e.startLabelLeft,Nv(e.labelStyle)||"",!1,!1);C=d;let I=d.getBBox();if(r){let h=d.children[0],Q=Qe(d);I=h.getBoundingClientRect(),Q.attr("width",I.width),Q.attr("height",I.height)}if(E.attr("transform",qg(I,r)),!Pa.get(e.id))Pa.set(e.id,{});Pa.get(e.id).startLeft=B,Gv(C,e.startLabelLeft)}if(e.startLabelRight){let B=A.insert("g").attr("class","edgeTerminals"),E=B.insert("g").attr("class","inner"),d=await cI(E,e.startLabelRight,Nv(e.labelStyle)||"",!1,!1);C=d;let I=d.getBBox();if(r){let h=d.children[0],Q=Qe(d);I=h.getBoundingClientRect(),Q.attr("width",I.width),Q.attr("height",I.height)}if(E.attr("transform",qg(I,r)),!Pa.get(e.id))Pa.set(e.id,{});Pa.get(e.id).startRight=B,Gv(C,e.startLabelRight)}if(e.endLabelLeft){let B=A.insert("g").attr("class","edgeTerminals"),E=B.insert("g").attr("class","inner"),d=await cI(B,e.endLabelLeft,Nv(e.labelStyle)||"",!1,!1);C=d;let I=d.getBBox();if(r){let h=d.children[0],Q=Qe(d);I=h.getBoundingClientRect(),Q.attr("width",I.width),Q.attr("height",I.height)}if(E.attr("transform",qg(I,r)),!Pa.get(e.id))Pa.set(e.id,{});Pa.get(e.id).endLeft=B,Gv(C,e.endLabelLeft)}if(e.endLabelRight){let B=A.insert("g").attr("class","edgeTerminals"),E=B.insert("g").attr("class","inner"),d=await cI(B,e.endLabelRight,Nv(e.labelStyle)||"",!1,!1);C=d;let I=d.getBBox();if(r){let h=d.children[0],Q=Qe(d);I=h.getBoundingClientRect(),Q.attr("width",I.width),Q.attr("height",I.height)}if(E.attr("transform",qg(I,r)),!Pa.get(e.id))Pa.set(e.id,{});Pa.get(e.id).endRight=B,Gv(C,e.endLabelRight)}return s},"insertEdgeLabel");y(Gv,"setTerminalWidth");QU=y((A,e)=>{sA.debug("Moving label abc88 ",A.id,A.label,ry.get(A.id),e);let t=e.updatedPath?e.updatedPath:e.originalPath,r=OA(),{subGraphTitleTotalMargin:i}=lC(r);if(A.label){let u=ry.get(A.id),{x:a,y:n}=A;if(t){let o=Jt.calcLabelPosition(t);if(sA.debug("Moving label "+A.label+" from (",a,",",n,") to (",o.x,",",o.y,") abc88"),e.updatedPath)a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n+i/2})`)}if(A.startLabelLeft){let u=Pa.get(A.id).startLeft,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.startLabelRight){let u=Pa.get(A.id).startRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelLeft){let u=Pa.get(A.id).endLeft,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelRight){let u=Pa.get(A.id).endRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}},"positionEdgeLabel"),qot=y((A,e)=>{if(!A?.isLabelEdge||!A?.id?.endsWith("-to-label")||!Array.isArray(e))return e;if(e.length!==2)return e;let[t,r]=e,i=Math.abs(r.x-t.x),u=Math.abs(r.y-t.y);if(i<0.001||u<0.001)return e;if(u>=i)return[t,{x:t.x,y:r.y},r];return[t,{x:r.x,y:t.y},r]},"orthogonalizeToLabelClippedPoints"),zot=y((A,e)=>{let{x:t,y:r}=A,i=Math.abs(e.x-t),u=Math.abs(e.y-r),a=A.width/2,n=A.height/2;return i>=a||u>=n},"outsideNode"),Zot=y((A,e,t)=>{sA.debug(`intersection calc abc89:
outsidePoint: ${JSON.stringify(e)}
insidePoint : ${JSON.stringify(t)}
node : x:${A.x} y:${A.y} w:${A.width} h:${A.height}`);let{x:r,y:i}=A,u=Math.abs(r-t.x),a=A.width/2,n=t.x<e.x?a-u:a+u,o=A.height/2,s=Math.abs(e.y-t.y),l=Math.abs(e.x-t.x);if(Math.abs(i-e.y)*a>Math.abs(r-e.x)*o){let g=t.y<e.y?e.y-o-i:i-o-e.y;n=l*g/s;let C={x:t.x<e.x?t.x+n:t.x-l+n,y:t.y<e.y?t.y+s-g:t.y-s+g};if(n===0)C.x=e.x,C.y=e.y;if(l===0)C.x=e.x;if(s===0)C.y=e.y;return sA.debug(`abc89 top/bottom calc, Q ${s}, q ${g}, R ${l}, r ${n}`,C),C}else{if(t.x<e.x)n=e.x-a-r;else n=r-a-e.x;let g=s*n/l,C=t.x<e.x?t.x+l-n:t.x-l+n,B=t.y<e.y?t.y+g:t.y-g;if(sA.debug(`sides calc abc89, Q ${s}, q ${g}, R ${l}, r ${n}`,{_x:C,_y:B}),n===0)C=e.x,B=e.y;if(l===0)C=e.x;if(s===0)B=e.y;return{x:C,y:B}}},"intersection"),PxA=y((A,e)=>{sA.warn("abc88 cutPathAtIntersect",A,e);let t=[],r=A[0],i=!1;return A.forEach((u)=>{if(sA.info("abc88 checking point",u,e),!zot(e,u)&&!i){let a=Zot(e,r,u);sA.debug("abc88 inside",u,r,a),sA.debug("abc88 intersection",a,e);let n=!1;if(t.forEach((o)=>{n=n||o.x===a.x&&o.y===a.y}),!t.some((o)=>o.x===a.x&&o.y===a.y))t.push(a);else sA.warn("abc88 no intersect",a,t);i=!0}else if(sA.warn("abc88 outside",u,r),r=u,!i)t.push(u)}),sA.debug("returning points",t),t},"cutPathAtIntersect");y(WxA,"extractCornerPoints");_xA=y(function(A,e,t){let r=e.x-A.x,i=e.y-A.y,u=Math.sqrt(r*r+i*i),a=t/u;return{x:e.x-a*r,y:e.y-a*i}},"findAdjacentPoint"),Vot=y(function(A){let{cornerPointPositions:e}=WxA(A),t=[];for(let r=0;r<A.length;r++)if(e.includes(r)){let i=A[r-1],u=A[r+1],a=A[r],n=_xA(i,a,5),o=_xA(u,a,5),s=o.x-n.x,l=o.y-n.y;t.push(n);let g=Math.sqrt(2)*2,C={x:a.x,y:a.y};if(Math.abs(u.x-i.x)>10&&Math.abs(u.y-i.y)>=10){sA.debug("Corner point fixing",Math.abs(u.x-i.x),Math.abs(u.y-i.y));let B=5;if(a.x===n.x)C={x:s<0?n.x-B+g:n.x+B-g,y:l<0?n.y-g:n.y+g};else C={x:s<0?n.x-g:n.x+g,y:l<0?n.y-B+g:n.y+B-g}}else sA.debug("Corner point skipping fixing",Math.abs(u.x-i.x),Math.abs(u.y-i.y));t.push(C,o)}else t.push(A[r]);return t},"fixCorners"),jot=y((A,e,t)=>{let r=A-e-t,i=2,u=2,a=4,n=Math.floor(r/4),o=Array(n).fill("2 2").join(" ");return`0 ${e} ${o} ${t}`},"generateDashArray"),iy=y(function(A,e,t,r,i,u,a,n=!1){if(!a)throw Error(`insertEdge: missing diagramId for edge "${e.id}" — edge IDs require a diagram prefix for uniqueness`);let{handDrawnSeed:o,layout:s}=OA(),l=e.points,g=!1,C=i;var B=u;let E=[];for(let U in e.cssCompiledStyles){if(Bv(U))continue;E.push(e.cssCompiledStyles[U])}if(s==="swimlane"){if(B.intersect&&C.intersect&&Array.isArray(l)&&l.length>=2)if(l.length===2)l=[C.intersect(l[0]),B.intersect(l[1])];else{let U=l.slice(1,-1),Y=U[0],H=U[U.length-1],J=0.5,K=Math.abs(l[l.length-1].x-H.x)<0.5&&Math.abs(l[l.length-1].y-H.y)<0.5,O=C.intersect(Y),P=K?H:B.intersect(H),z=Math.abs(P.x-H.x)<0.5&&Math.abs(P.y-H.y)<0.5,W=Math.abs(O.x-Y.x)<0.5&&Math.abs(O.y-Y.y)<0.5?[]:[O],CA=z?[]:[P];l=[...W,...U,...CA]}l=qot(e,l)}else if(B.intersect&&C.intersect&&!n)l=l.slice(1,e.points.length-1),l.unshift(C.intersect(l[0])),l.push(B.intersect(l[l.length-1]));let d=btoa(JSON.stringify(l));if(e.toCluster)sA.info("to cluster abc88",t.get(e.toCluster)),l=PxA(e.points,t.get(e.toCluster).node),g=!0;if(e.fromCluster)sA.debug("from cluster abc88",t.get(e.fromCluster),JSON.stringify(l,null,2)),l=PxA(l.reverse(),t.get(e.fromCluster).node).reverse(),g=!0;let I=l.filter((U)=>!Number.isNaN(U.y)),h=Wot(e.curve);if(h!=="rounded")I=Vot(I);let Q=XB;switch(h){case"linear":Q=XB;break;case"basis":Q=oC;break;case"cardinal":Q=ev;break;case"bumpX":Q=jb;break;case"bumpY":Q=Xb;break;case"catmullRom":Q=iv;break;case"monotoneX":Q=uv;break;case"monotoneY":Q=av;break;case"natural":Q=UD;break;case"step":Q=MD;break;case"stepAfter":Q=ov;break;case"stepBefore":Q=nv;break;case"rounded":Q=XB;break;default:Q=oC}let{x:p,y:m}=IU(e),f=nC().x(p).y(m).curve(Q),D;switch(e.thickness){case"normal":D="edge-thickness-normal";break;case"thick":D="edge-thickness-thick";break;case"invisible":D="edge-thickness-invisible";break;default:D="edge-thickness-normal"}switch(e.pattern){case"solid":D+=" edge-pattern-solid";break;case"dotted":D+=" edge-pattern-dotted";break;case"dashed":D+=" edge-pattern-dashed";break;default:D+=" edge-pattern-solid"}let w,b=h==="rounded"?qxA(zxA(I,e),5):f(I),k=Array.isArray(e.style)?e.style:[e.style],v=k.find((U)=>U?.startsWith("stroke:")),S="";if(e.animate)S="edge-animation-fast";if(e.animation)S="edge-animation-"+e.animation;let x=!1;if(e.look==="handDrawn"){let U=Ne.svg(A);Object.assign([],I);let Y=U.path(b,{roughness:0.3,seed:o});D+=" transition",w=Qe(Y).select("path").attr("id",`${a}-${e.id}`).attr("class"," "+D+(e.classes?" "+e.classes:"")+(S?" "+S:"")).attr("style",k?k.reduce((J,K)=>J+";"+K,""):"");let H=w.attr("d");w.attr("d",H),A.node().appendChild(w.node())}else{let U=E.join(";"),Y=k?k.reduce((z,AA)=>z+AA+";",""):"",H=(U?U+";"+Y+";":Y)+";"+(k?k.reduce((z,AA)=>z+";"+AA,""):"");w=A.append("path").attr("d",b).attr("id",`${a}-${e.id}`).attr("class"," "+D+(e.classes?" "+e.classes:"")+(S?" "+S:"")).attr("style",H),v=H.match(/stroke:([^;]+)/)?.[1],x=e.animate===!0||!!e.animation||U.includes("animation");let J=w.node(),K=typeof J.getTotalLength==="function"?J.getTotalLength():0,O=JeA[e.arrowTypeStart]||0,P=JeA[e.arrowTypeEnd]||0;if(e.look==="neo"&&!x){let AA=`stroke-dasharray: ${e.pattern==="dotted"||e.pattern==="dashed"?jot(K,O,P):`0 ${O} ${K-O-P} ${P}`}; stroke-dashoffset: 0;`;w.attr("style",AA+w.attr("style"))}}if(w.attr("data-edge",!0),w.attr("data-et","edge"),w.attr("data-id",e.id),w.attr("data-points",d),w.attr("data-look",Sn(e.look)),e.showPoints)I.forEach((U)=>{A.append("circle").style("stroke","red").style("fill","red").attr("r",1).attr("cx",U.x).attr("cy",U.y)});let F="";if(OA().flowchart.arrowMarkerAbsolute||OA().state.arrowMarkerAbsolute)F=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,F=F.replace(/\(/g,"\\(").replace(/\)/g,"\\)");sA.info("arrowTypeStart",e.arrowTypeStart),sA.info("arrowTypeEnd",e.arrowTypeEnd);let T=!x&&e?.look==="neo";Oot(w,e,F,a,r,T,v);let R=Math.floor(l.length/2),L=l[R];if(!Jt.isLabelCoordinateInPath(L,w.attr("d")))g=!0;let M={};if(g)M.updatedPath=l;return M.originalPath=e.points,M},"insertEdge");y(qxA,"generateRoundedPath");y(OeA,"calculateDeltaAndAngle");y(zxA,"applyMarkerOffsetsToPoints");Xot=y((A,e,t,r)=>{e.forEach((i)=>{f0t[i](A,t,r)})},"insertMarkers"),$ot=y((A,e,t)=>{sA.trace("Making markers for ",t),A.append("defs").append("marker").attr("id",t+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M 1,7 L18,13 V 1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z"),A.append("marker").attr("id",t+"_"+e+"-extensionStart-margin").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("viewBox","0 0 20 14").append("polygon").attr("points","10,7 18,13 18,1").style("stroke-width",2).style("stroke-dasharray","0"),A.append("defs").append("marker").attr("id",t+"_"+e+"-extensionEnd-margin").attr("class","marker extension "+e).attr("refX",9).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("viewBox","0 0 20 14").append("polygon").attr("points","10,1 10,13 18,7").style("stroke-width",2).style("stroke-dasharray","0")},"extension"),A0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionStart-margin").attr("class","marker composition "+e).attr("refX",15).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("viewBox","0 0 15 15").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionEnd-margin").attr("class","marker composition "+e).attr("refX",3.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),e0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationStart-margin").attr("class","marker aggregation "+e).attr("refX",15).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",2).attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationEnd-margin").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",2).attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),t0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyStart-margin").attr("class","marker dependency "+e).attr("refX",4).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyEnd-margin").attr("class","marker dependency "+e).attr("refX",16).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").style("stroke-width",0).attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),r0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopStart-margin").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6).attr("stroke-width",2),A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopEnd-margin").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("circle").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6).attr("stroke-width",2)},"lollipop"),i0t=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",8).attr("markerHeight",8).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-pointEnd-margin").attr("class","marker "+e).attr("viewBox","0 0 11.5 14").attr("refX",11.5).attr("refY",7).attr("markerUnits","userSpaceOnUse").attr("markerWidth",10.5).attr("markerHeight",14).attr("orient","auto").append("path").attr("d","M 0 0 L 11.5 7 L 0 14 z").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-pointStart-margin").attr("class","marker "+e).attr("viewBox","0 0 11.5 14").attr("refX",1).attr("refY",7).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11.5).attr("markerHeight",14).attr("orient","auto").append("polygon").attr("points","0,7 11.5,14 11.5,0").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0")},"point"),u0t=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-circleEnd-margin").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refY",5).attr("refX",12.25).attr("markerUnits","userSpaceOnUse").attr("markerWidth",14).attr("markerHeight",14).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-circleStart-margin").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-2).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",14).attr("markerHeight",14).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",0).style("stroke-dasharray","1,0")},"circle"),a0t=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-crossEnd-margin").attr("class","marker cross "+e).attr("viewBox","0 0 15 15").attr("refX",17.7).attr("refY",7.5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 1,1 L 14,14 M 1,14 L 14,1").attr("class","arrowMarkerPath").style("stroke-width",2.5),A.append("marker").attr("id",t+"_"+e+"-crossStart-margin").attr("class","marker cross "+e).attr("viewBox","0 0 15 15").attr("refX",-3.5).attr("refY",7.5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 1,1 L 14,14 M 1,14 L 14,1").attr("class","arrowMarkerPath").style("stroke-width",2.5).style("stroke-dasharray","1,0")},"cross"),n0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),o0t=y((A,e,t)=>{let r=ot(),{themeVariables:i}=r,{transitionColor:u}=i;A.append("defs").append("marker").attr("id",t+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L11,14 L13,7 L11,0 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-barbEnd-margin").attr("refX",17).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M 19,7 L11,14 L13,7 L11,0 Z").attr("fill",`${u}`)},"barbNeo"),s0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-onlyOneStart").attr("class","marker onlyOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M9,0 L9,18 M15,0 L15,18"),A.append("defs").append("marker").attr("id",t+"_"+e+"-onlyOneEnd").attr("class","marker onlyOne "+e).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("d","M3,0 L3,18 M9,0 L9,18")},"only_one"),l0t=y((A,e,t)=>{let r=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrOneStart").attr("class","marker zeroOrOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");r.append("circle").attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),r.append("path").attr("d","M9,0 L9,18");let i=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+e).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),i.append("path").attr("d","M21,0 L21,18")},"zero_or_one"),g0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-oneOrMoreStart").attr("class","marker oneOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),A.append("defs").append("marker").attr("id",t+"_"+e+"-oneOrMoreEnd").attr("class","marker oneOrMore "+e).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18")},"one_or_more"),c0t=y((A,e,t)=>{let r=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");r.append("circle").attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),r.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18");let i=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+e).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto");i.append("circle").attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),i.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")},"zero_or_more"),C0t=y((A,e,t)=>{let r=ot(),{themeVariables:i}=r,{strokeWidth:u}=i;A.append("defs").append("marker").attr("id",t+"_"+e+"-onlyOneStart").attr("class","marker onlyOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M9,0 L9,18 M15,0 L15,18").attr("stroke-width",`${u}`),A.append("defs").append("marker").attr("id",t+"_"+e+"-onlyOneEnd").attr("class","marker onlyOne "+e).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M3,0 L3,18 M9,0 L9,18").attr("stroke-width",`${u}`)},"only_one_neo"),B0t=y((A,e,t)=>{let r=ot(),{themeVariables:i}=r,{strokeWidth:u,mainBkg:a}=i,n=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrOneStart").attr("class","marker zeroOrOne "+e).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto").attr("markerUnits","userSpaceOnUse");n.append("circle").attr("fill",a??"white").attr("cx",21).attr("cy",9).attr("stroke-width",`${u}`).attr("r",6),n.append("path").attr("d","M9,0 L9,18").attr("stroke-width",`${u}`);let o=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrOneEnd").attr("class","marker zeroOrOne "+e).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("markerUnits","userSpaceOnUse").attr("orient","auto");o.append("circle").attr("fill",a??"white").attr("cx",9).attr("cy",9).attr("stroke-width",`${u}`).attr("r",6),o.append("path").attr("d","M21,0 L21,18").attr("stroke-width",`${u}`)},"zero_or_one_neo"),E0t=y((A,e,t)=>{let r=ot(),{themeVariables:i}=r,{strokeWidth:u}=i;A.append("defs").append("marker").attr("id",t+"_"+e+"-oneOrMoreStart").attr("class","marker oneOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("path").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27").attr("stroke-width",`${u}`),A.append("defs").append("marker").attr("id",t+"_"+e+"-oneOrMoreEnd").attr("class","marker oneOrMore "+e).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("markerUnits","userSpaceOnUse").attr("orient","auto").append("path").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18").attr("stroke-width",`${u}`)},"one_or_more_neo"),d0t=y((A,e,t)=>{let r=ot(),{themeVariables:i}=r,{strokeWidth:u,mainBkg:a}=i,n=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrMoreStart").attr("class","marker zeroOrMore "+e).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("markerUnits","userSpaceOnUse").attr("orient","auto");n.append("circle").attr("fill",a??"white").attr("cx",45.5).attr("cy",18).attr("r",6).attr("stroke-width",`${u}`),n.append("path").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18").attr("stroke-width",`${u}`);let o=A.append("defs").append("marker").attr("id",t+"_"+e+"-zeroOrMoreEnd").attr("class","marker zeroOrMore "+e).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto").attr("markerUnits","userSpaceOnUse");o.append("circle").attr("fill",a??"white").attr("cx",11).attr("cy",18).attr("r",6).attr("stroke-width",`${u}`),o.append("path").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18").attr("stroke-width",`${u}`)},"zero_or_more_neo"),I0t=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("path").attr("d",`M0,0
L20,10
M20,10
L0,20`)},"requirement_arrow"),h0t=y((A,e,t)=>{let r=ot(),{themeVariables:i}=r,{strokeWidth:u}=i;A.append("defs").append("marker").attr("id",t+"_"+e+"-requirement_arrowEnd").attr("refX",20).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").attr("markerUnits","userSpaceOnUse").attr("stroke-width",`${u}`).attr("viewBox","0 0 25 20").append("path").attr("d",`M0,0
L20,10
M20,10
L0,20`).attr("stroke-linejoin","miter")},"requirement_arrow_neo"),Q0t=y((A,e,t)=>{let r=A.append("defs").append("marker").attr("id",t+"_"+e+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").append("g");r.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),r.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),r.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10)},"requirement_contains"),p0t=y((A,e,t)=>{let r=ot(),{themeVariables:i}=r,{strokeWidth:u}=i,a=A.append("defs").append("marker").attr("id",t+"_"+e+"-requirement_containsStart").attr("refX",0).attr("refY",10).attr("markerWidth",20).attr("markerHeight",20).attr("orient","auto").attr("markerUnits","userSpaceOnUse").append("g");a.append("circle").attr("cx",10).attr("cy",10).attr("r",9).attr("fill","none"),a.append("line").attr("x1",1).attr("x2",19).attr("y1",10).attr("y2",10),a.append("line").attr("y1",1).attr("y2",19).attr("x1",10).attr("x2",10),a.selectAll("*").attr("stroke-width",`${u}`)},"requirement_contains_neo"),f0t={extension:$ot,composition:A0t,aggregation:e0t,dependency:t0t,lollipop:r0t,point:i0t,circle:u0t,cross:a0t,barb:n0t,barbNeo:o0t,only_one:s0t,zero_or_one:l0t,one_or_more:g0t,zero_or_more:c0t,only_one_neo:C0t,zero_or_one_neo:B0t,one_or_more_neo:E0t,zero_or_more_neo:d0t,requirement_arrow:I0t,requirement_contains:Q0t,requirement_arrow_neo:h0t,requirement_contains_neo:p0t},uy=Xot});var m0t,pU;var PeA=_(()=>{m0t=typeof global=="object"&&global&&global.Object===Object&&global,pU=m0t});var D0t,y0t,_a;var zg=_(()=>{PeA();D0t=typeof self=="object"&&self&&self.Object===Object&&self,y0t=pU||D0t||Function("return this")(),_a=y0t});var w0t,Ro;var Qf=_(()=>{zg();w0t=_a.Symbol,Ro=w0t});function k0t(A){var e=b0t.call(A,Uv),t=A[Uv];try{A[Uv]=void 0;var r=!0}catch(u){}var i=v0t.call(A);if(r)if(e)A[Uv]=t;else delete A[Uv];return i}var ZxA,b0t,v0t,Uv,VxA;var jxA=_(()=>{Qf();ZxA=Object.prototype,b0t=ZxA.hasOwnProperty,v0t=ZxA.toString,Uv=Ro?Ro.toStringTag:void 0;VxA=k0t});function S0t(A){return x0t.call(A)}var F0t,x0t,XxA;var $xA=_(()=>{F0t=Object.prototype,x0t=F0t.toString;XxA=S0t});function N0t(A){if(A==null)return A===void 0?R0t:L0t;return A7A&&A7A in Object(A)?VxA(A):XxA(A)}var L0t="[object Null]",R0t="[object Undefined]",A7A,Bs;var FQ=_(()=>{Qf();jxA();$xA();A7A=Ro?Ro.toStringTag:void 0;Bs=N0t});function G0t(A){return A!=null&&typeof A=="object"}var Bn;var CC=_(()=>{Bn=G0t});function M0t(A){return typeof A=="symbol"||Bn(A)&&Bs(A)==U0t}var U0t="[object Symbol]",ig;var pf=_(()=>{FQ();CC();ig=M0t});function T0t(A,e){var t=-1,r=A==null?0:A.length,i=Array(r);while(++t<r)i[t]=e(A[t],t,A);return i}var rE;var Mv=_(()=>{rE=T0t});var Y0t,ri;var Gn=_(()=>{Y0t=Array.isArray,ri=Y0t});function r7A(A){if(typeof A=="string")return A;if(ri(A))return rE(A,r7A)+"";if(ig(A))return t7A?t7A.call(A):"";var e=A+"";return e=="0"&&1/A==-H0t?"-0":e}var H0t=1/0,e7A,t7A,i7A;var u7A=_(()=>{Qf();Mv();Gn();pf();e7A=Ro?Ro.prototype:void 0,t7A=e7A?e7A.toString:void 0;i7A=r7A});function J0t(A){var e=A.length;while(e--&&K0t.test(A.charAt(e)));return e}var K0t,a7A;var n7A=_(()=>{K0t=/\s/;a7A=J0t});function P0t(A){return A?A.slice(0,a7A(A)+1).replace(O0t,""):A}var O0t,o7A;var s7A=_(()=>{n7A();O0t=/^\s+/;o7A=P0t});function _0t(A){var e=typeof A;return A!=null&&(e=="object"||e=="function")}var ha;var Zg=_(()=>{ha=_0t});function V0t(A){if(typeof A=="number")return A;if(ig(A))return l7A;if(ha(A)){var e=typeof A.valueOf=="function"?A.valueOf():A;A=ha(e)?e+"":e}if(typeof A!="string")return A===0?A:+A;A=o7A(A);var t=q0t.test(A);return t||z0t.test(A)?Z0t(A.slice(2),t?2:8):W0t.test(A)?l7A:+A}var l7A=NaN,W0t,q0t,z0t,Z0t,g7A;var c7A=_(()=>{s7A();Zg();pf();W0t=/^[-+]0x[0-9a-f]+$/i,q0t=/^0b[01]+$/i,z0t=/^0o[0-7]+$/i,Z0t=parseInt;g7A=V0t});function X0t(A){if(!A)return A===0?A:0;if(A=g7A(A),A===C7A||A===-C7A){var e=A<0?-1:1;return e*j0t}return A===A?A:0}var C7A=1/0,j0t=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,ay;var _eA=_(()=>{c7A();ay=X0t});function $0t(A){var e=ay(A),t=e%1;return e===e?t?e-t:e:0}var B7A;var E7A=_(()=>{_eA();B7A=$0t});function Ast(A){return A}var al;var xQ=_(()=>{al=Ast});function ust(A){if(!ha(A))return!1;var e=Bs(A);return e==tst||e==rst||e==est||e==ist}var est="[object AsyncFunction]",tst="[object Function]",rst="[object GeneratorFunction]",ist="[object Proxy]",iE;var Tv=_(()=>{FQ();Zg();iE=ust});var ast,fU;var d7A=_(()=>{zg();ast=_a["__core-js_shared__"],fU=ast});function nst(A){return!!I7A&&I7A in A}var I7A,h7A;var Q7A=_(()=>{d7A();I7A=function(){var A=/[^.]+$/.exec(fU&&fU.keys&&fU.keys.IE_PROTO||"");return A?"Symbol(src)_1."+A:""}();h7A=nst});function lst(A){if(A!=null){try{return sst.call(A)}catch(e){}try{return A+""}catch(e){}}return""}var ost,sst,EI;var WeA=_(()=>{ost=Function.prototype,sst=ost.toString;EI=lst});function hst(A){if(!ha(A)||h7A(A))return!1;var e=iE(A)?Ist:cst;return e.test(EI(A))}var gst,cst,Cst,Bst,Est,dst,Ist,p7A;var f7A=_(()=>{Tv();Q7A();Zg();WeA();gst=/[\\^$.*+?()[\]{}|]/g,cst=/^\[object .+?Constructor\]$/,Cst=Function.prototype,Bst=Object.prototype,Est=Cst.toString,dst=Bst.hasOwnProperty,Ist=RegExp("^"+Est.call(dst).replace(gst,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");p7A=hst});function Qst(A,e){return A==null?void 0:A[e]}var m7A;var D7A=_(()=>{m7A=Qst});function pst(A,e){var t=m7A(A,e);return p7A(t)?t:void 0}var nl;var SQ=_(()=>{f7A();D7A();nl=pst});var fst,mU;var y7A=_(()=>{SQ();zg();fst=nl(_a,"WeakMap"),mU=fst});var w7A,mst,b7A;var v7A=_(()=>{Zg();w7A=Object.create,mst=function(){function A(){}return function(e){if(!ha(e))return{};if(w7A)return w7A(e);A.prototype=e;var t=new A;return A.prototype=void 0,t}}(),b7A=mst});function Dst(A,e,t){switch(t.length){case 0:return A.call(e);case 1:return A.call(e,t[0]);case 2:return A.call(e,t[0],t[1]);case 3:return A.call(e,t[0],t[1],t[2])}return A.apply(e,t)}var k7A;var F7A=_(()=>{k7A=Dst});function yst(){}var x7A;var S7A=_(()=>{x7A=yst});function wst(A,e){var t=-1,r=A.length;e||(e=Array(r));while(++t<r)e[t]=A[t];return e}var DU;var qeA=_(()=>{DU=wst});function Fst(A){var e=0,t=0;return function(){var r=kst(),i=vst-(r-t);if(t=r,i>0){if(++e>=bst)return arguments[0]}else e=0;return A.apply(void 0,arguments)}}var bst=800,vst=16,kst,L7A;var R7A=_(()=>{kst=Date.now;L7A=Fst});function xst(A){return function(){return A}}var ol;var zeA=_(()=>{ol=xst});var Sst,ny;var ZeA=_(()=>{SQ();Sst=function(){try{var A=nl(Object,"defineProperty");return A({},"",{}),A}catch(e){}}(),ny=Sst});var Lst,N7A;var G7A=_(()=>{zeA();ZeA();xQ();Lst=!ny?al:function(A,e){return ny(A,"toString",{configurable:!0,enumerable:!1,value:ol(e),writable:!0})},N7A=Lst});var Rst,yU;var VeA=_(()=>{G7A();R7A();Rst=L7A(N7A),yU=Rst});function Nst(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A)===!1)break;return A}var wU;var jeA=_(()=>{wU=Nst});function Gst(A,e,t,r){var i=A.length,u=t+(r?1:-1);while(r?u--:++u<i)if(e(A[u],u,A))return u;return-1}var bU;var XeA=_(()=>{bU=Gst});function Ust(A){return A!==A}var U7A;var M7A=_(()=>{U7A=Ust});function Mst(A,e,t){var r=t-1,i=A.length;while(++r<i)if(A[r]===e)return r;return-1}var T7A;var Y7A=_(()=>{T7A=Mst});function Tst(A,e,t){return e===e?T7A(A,e,t):bU(A,U7A,t)}var H7A;var K7A=_(()=>{XeA();M7A();Y7A();H7A=Tst});function Yst(A,e){var t=A==null?0:A.length;return!!t&&H7A(A,e,0)>-1}var J7A;var O7A=_(()=>{K7A();J7A=Yst});function Jst(A,e){var t=typeof A;return e=e==null?Hst:e,!!e&&(t=="number"||t!="symbol"&&Kst.test(A))&&(A>-1&&A%1==0&&A<e)}var Hst=9007199254740991,Kst,LQ;var Yv=_(()=>{Kst=/^(?:0|[1-9]\d*)$/;LQ=Jst});function Ost(A,e,t){if(e=="__proto__"&&ny)ny(A,e,{configurable:!0,enumerable:!0,value:t,writable:!0});else A[e]=t}var RQ;var Hv=_(()=>{ZeA();RQ=Ost});function Pst(A,e){return A===e||A!==A&&e!==e}var Vg;var ff=_(()=>{Vg=Pst});function qst(A,e,t){var r=A[e];if(!(Wst.call(A,e)&&Vg(r,t))||t===void 0&&!(e in A))RQ(A,e,t)}var _st,Wst,NQ;var Kv=_(()=>{Hv();ff();_st=Object.prototype,Wst=_st.hasOwnProperty;NQ=qst});function zst(A,e,t,r){var i=!t;t||(t={});var u=-1,a=e.length;while(++u<a){var n=e[u],o=r?r(t[n],A[n],n,t,A):void 0;if(o===void 0)o=A[n];if(i)RQ(t,n,o);else NQ(t,n,o)}return t}var uE;var oy=_(()=>{Kv();Hv();uE=zst});function Zst(A,e,t){return e=P7A(e===void 0?A.length-1:e,0),function(){var r=arguments,i=-1,u=P7A(r.length-e,0),a=Array(u);while(++i<u)a[i]=r[e+i];i=-1;var n=Array(e+1);while(++i<e)n[i]=r[i];return n[e]=t(a),k7A(A,this,n)}}var P7A,vU;var $eA=_(()=>{F7A();P7A=Math.max;vU=Zst});function Vst(A,e){return yU(vU(A,e,al),A+"")}var GQ;var Jv=_(()=>{xQ();$eA();VeA();GQ=Vst});function Xst(A){return typeof A=="number"&&A>-1&&A%1==0&&A<=jst}var jst=9007199254740991,sy;var kU=_(()=>{sy=Xst});function $st(A){return A!=null&&sy(A.length)&&!iE(A)}var No;var aE=_(()=>{Tv();kU();No=$st});function Alt(A,e,t){if(!ha(t))return!1;var r=typeof e;if(r=="number"?No(t)&&LQ(e,t.length):r=="string"&&(e in t))return Vg(t[e],A);return!1}var dI;var Ov=_(()=>{ff();aE();Yv();Zg();dI=Alt});function elt(A){return GQ(function(e,t){var r=-1,i=t.length,u=i>1?t[i-1]:void 0,a=i>2?t[2]:void 0;if(u=A.length>3&&typeof u=="function"?(i--,u):void 0,a&&dI(t[0],t[1],a))u=i<3?void 0:u,i=1;e=Object(e);while(++r<i){var n=t[r];if(n)A(e,n,r,u)}return e})}var _7A;var W7A=_(()=>{Jv();Ov();_7A=elt});function rlt(A){var e=A&&A.constructor,t=typeof e=="function"&&e.prototype||tlt;return A===t}var tlt,UQ;var Pv=_(()=>{tlt=Object.prototype;UQ=rlt});function ilt(A,e){var t=-1,r=Array(A);while(++t<A)r[t]=e(t);return r}var q7A;var z7A=_(()=>{q7A=ilt});function alt(A){return Bn(A)&&Bs(A)==ult}var ult="[object Arguments]",AtA;var Z7A=_(()=>{FQ();CC();AtA=alt});var V7A,nlt,olt,slt,BC;var ly=_(()=>{Z7A();CC();V7A=Object.prototype,nlt=V7A.hasOwnProperty,olt=V7A.propertyIsEnumerable,slt=AtA(function(){return arguments}())?AtA:function(A){return Bn(A)&&nlt.call(A,"callee")&&!olt.call(A,"callee")},BC=slt});function llt(){return!1}var j7A;var X7A=_(()=>{j7A=llt});var xU={};Dt(xU,{default:()=>jg});var e8A,$7A,glt,A8A,clt,Clt,jg;var gy=_(()=>{zg();X7A();e8A=typeof xU=="object"&&xU&&!xU.nodeType&&xU,$7A=e8A&&typeof FU=="object"&&FU&&!FU.nodeType&&FU,glt=$7A&&$7A.exports===e8A,A8A=glt?_a.Buffer:void 0,clt=A8A?A8A.isBuffer:void 0,Clt=clt||j7A,jg=Clt});function Tlt(A){return Bn(A)&&sy(A.length)&&!!Aa[Bs(A)]}var Blt="[object Arguments]",Elt="[object Array]",dlt="[object Boolean]",Ilt="[object Date]",hlt="[object Error]",Qlt="[object Function]",plt="[object Map]",flt="[object Number]",mlt="[object Object]",Dlt="[object RegExp]",ylt="[object Set]",wlt="[object String]",blt="[object WeakMap]",vlt="[object ArrayBuffer]",klt="[object DataView]",Flt="[object Float32Array]",xlt="[object Float64Array]",Slt="[object Int8Array]",Llt="[object Int16Array]",Rlt="[object Int32Array]",Nlt="[object Uint8Array]",Glt="[object Uint8ClampedArray]",Ult="[object Uint16Array]",Mlt="[object Uint32Array]",Aa,t8A;var r8A=_(()=>{FQ();kU();CC();Aa={};Aa[Flt]=Aa[xlt]=Aa[Slt]=Aa[Llt]=Aa[Rlt]=Aa[Nlt]=Aa[Glt]=Aa[Ult]=Aa[Mlt]=!0;Aa[Blt]=Aa[Elt]=Aa[vlt]=Aa[dlt]=Aa[klt]=Aa[Ilt]=Aa[hlt]=Aa[Qlt]=Aa[plt]=Aa[flt]=Aa[mlt]=Aa[Dlt]=Aa[ylt]=Aa[wlt]=Aa[blt]=!1;t8A=Tlt});function Ylt(A){return function(e){return A(e)}}var MQ;var _v=_(()=>{MQ=Ylt});var LU={};Dt(LU,{default:()=>nE});var i8A,Wv,Hlt,etA,Klt,nE;var RU=_(()=>{PeA();i8A=typeof LU=="object"&&LU&&!LU.nodeType&&LU,Wv=i8A&&typeof SU=="object"&&SU&&!SU.nodeType&&SU,Hlt=Wv&&Wv.exports===i8A,etA=Hlt&&pU.process,Klt=function(){try{var A=Wv&&Wv.require&&Wv.require("util").types;if(A)return A;return etA&&etA.binding&&etA.binding("util")}catch(e){}}(),nE=Klt});var u8A,Jlt,TQ;var qv=_(()=>{r8A();_v();RU();u8A=nE&&nE.isTypedArray,Jlt=u8A?MQ(u8A):t8A,TQ=Jlt});function _lt(A,e){var t=ri(A),r=!t&&BC(A),i=!t&&!r&&jg(A),u=!t&&!r&&!i&&TQ(A),a=t||r||i||u,n=a?q7A(A.length,String):[],o=n.length;for(var s in A)if((e||Plt.call(A,s))&&!(a&&(s=="length"||i&&(s=="offset"||s=="parent")||u&&(s=="buffer"||s=="byteLength"||s=="byteOffset")||LQ(s,o))))n.push(s);return n}var Olt,Plt,NU;var ttA=_(()=>{z7A();ly();Gn();gy();Yv();qv();Olt=Object.prototype,Plt=Olt.hasOwnProperty;NU=_lt});function Wlt(A,e){return function(t){return A(e(t))}}var GU;var rtA=_(()=>{GU=Wlt});var qlt,a8A;var n8A=_(()=>{rtA();qlt=GU(Object.keys,Object),a8A=qlt});function Vlt(A){if(!UQ(A))return a8A(A);var e=[];for(var t in Object(A))if(Zlt.call(A,t)&&t!="constructor")e.push(t);return e}var zlt,Zlt,cy;var UU=_(()=>{Pv();n8A();zlt=Object.prototype,Zlt=zlt.hasOwnProperty;cy=Vlt});function jlt(A){return No(A)?NU(A):cy(A)}var Wa;var II=_(()=>{ttA();UU();aE();Wa=jlt});function Xlt(A){var e=[];if(A!=null)for(var t in Object(A))e.push(t);return e}var o8A;var s8A=_(()=>{o8A=Xlt});function egt(A){if(!ha(A))return o8A(A);var e=UQ(A),t=[];for(var r in A)if(!(r=="constructor"&&(e||!Agt.call(A,r))))t.push(r);return t}var $lt,Agt,l8A;var g8A=_(()=>{Zg();Pv();s8A();$lt=Object.prototype,Agt=$lt.hasOwnProperty;l8A=egt});function tgt(A){return No(A)?NU(A,!0):l8A(A)}var sl;var YQ=_(()=>{ttA();g8A();aE();sl=tgt});function ugt(A,e){if(ri(A))return!1;var t=typeof A;if(t=="number"||t=="symbol"||t=="boolean"||A==null||ig(A))return!0;return igt.test(A)||!rgt.test(A)||e!=null&&A in Object(e)}var rgt,igt,Cy;var MU=_(()=>{Gn();pf();rgt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,igt=/^\w*$/;Cy=ugt});var agt,hI;var zv=_(()=>{SQ();agt=nl(Object,"create"),hI=agt});function ngt(){this.__data__=hI?hI(null):{},this.size=0}var c8A;var C8A=_(()=>{zv();c8A=ngt});function ogt(A){var e=this.has(A)&&delete this.__data__[A];return this.size-=e?1:0,e}var B8A;var E8A=_(()=>{B8A=ogt});function cgt(A){var e=this.__data__;if(hI){var t=e[A];return t===sgt?void 0:t}return ggt.call(e,A)?e[A]:void 0}var sgt="__lodash_hash_undefined__",lgt,ggt,d8A;var I8A=_(()=>{zv();lgt=Object.prototype,ggt=lgt.hasOwnProperty;d8A=cgt});function Egt(A){var e=this.__data__;return hI?e[A]!==void 0:Bgt.call(e,A)}var Cgt,Bgt,h8A;var Q8A=_(()=>{zv();Cgt=Object.prototype,Bgt=Cgt.hasOwnProperty;h8A=Egt});function Igt(A,e){var t=this.__data__;return this.size+=this.has(A)?0:1,t[A]=hI&&e===void 0?dgt:e,this}var dgt="__lodash_hash_undefined__",p8A;var f8A=_(()=>{zv();p8A=Igt});function By(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}var itA;var m8A=_(()=>{C8A();E8A();I8A();Q8A();f8A();By.prototype.clear=c8A;By.prototype.delete=B8A;By.prototype.get=d8A;By.prototype.has=h8A;By.prototype.set=p8A;itA=By});function hgt(){this.__data__=[],this.size=0}var D8A;var y8A=_(()=>{D8A=hgt});function Qgt(A,e){var t=A.length;while(t--)if(Vg(A[t][0],e))return t;return-1}var HQ;var Zv=_(()=>{ff();HQ=Qgt});function mgt(A){var e=this.__data__,t=HQ(e,A);if(t<0)return!1;var r=e.length-1;if(t==r)e.pop();else fgt.call(e,t,1);return--this.size,!0}var pgt,fgt,w8A;var b8A=_(()=>{Zv();pgt=Array.prototype,fgt=pgt.splice;w8A=mgt});function Dgt(A){var e=this.__data__,t=HQ(e,A);return t<0?void 0:e[t][1]}var v8A;var k8A=_(()=>{Zv();v8A=Dgt});function ygt(A){return HQ(this.__data__,A)>-1}var F8A;var x8A=_(()=>{Zv();F8A=ygt});function wgt(A,e){var t=this.__data__,r=HQ(t,A);if(r<0)++this.size,t.push([A,e]);else t[r][1]=e;return this}var S8A;var L8A=_(()=>{Zv();S8A=wgt});function Ey(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}var KQ;var Vv=_(()=>{y8A();b8A();k8A();x8A();L8A();Ey.prototype.clear=D8A;Ey.prototype.delete=w8A;Ey.prototype.get=v8A;Ey.prototype.has=F8A;Ey.prototype.set=S8A;KQ=Ey});var bgt,JQ;var TU=_(()=>{SQ();zg();bgt=nl(_a,"Map"),JQ=bgt});function vgt(){this.size=0,this.__data__={hash:new itA,map:new(JQ||KQ),string:new itA}}var R8A;var N8A=_(()=>{m8A();Vv();TU();R8A=vgt});function kgt(A){var e=typeof A;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?A!=="__proto__":A===null}var G8A;var U8A=_(()=>{G8A=kgt});function Fgt(A,e){var t=A.__data__;return G8A(e)?t[typeof e=="string"?"string":"hash"]:t.map}var OQ;var jv=_(()=>{U8A();OQ=Fgt});function xgt(A){var e=OQ(this,A).delete(A);return this.size-=e?1:0,e}var M8A;var T8A=_(()=>{jv();M8A=xgt});function Sgt(A){return OQ(this,A).get(A)}var Y8A;var H8A=_(()=>{jv();Y8A=Sgt});function Lgt(A){return OQ(this,A).has(A)}var K8A;var J8A=_(()=>{jv();K8A=Lgt});function Rgt(A,e){var t=OQ(this,A),r=t.size;return t.set(A,e),this.size+=t.size==r?0:1,this}var O8A;var P8A=_(()=>{jv();O8A=Rgt});function dy(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}var mf;var YU=_(()=>{N8A();T8A();H8A();J8A();P8A();dy.prototype.clear=R8A;dy.prototype.delete=M8A;dy.prototype.get=Y8A;dy.prototype.has=K8A;dy.prototype.set=O8A;mf=dy});function utA(A,e){if(typeof A!="function"||e!=null&&typeof e!="function")throw TypeError(Ngt);var t=function(){var r=arguments,i=e?e.apply(this,r):r[0],u=t.cache;if(u.has(i))return u.get(i);var a=A.apply(this,r);return t.cache=u.set(i,a)||u,a};return t.cache=new(utA.Cache||mf),t}var Ngt="Expected a function",_8A;var W8A=_(()=>{YU();utA.Cache=mf;_8A=utA});function Ugt(A){var e=_8A(A,function(r){if(t.size===Ggt)t.clear();return r}),t=e.cache;return e}var Ggt=500,q8A;var z8A=_(()=>{W8A();q8A=Ugt});var Mgt,Tgt,Ygt,Z8A;var V8A=_(()=>{z8A();Mgt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Tgt=/\\(\\)?/g,Ygt=q8A(function(A){var e=[];if(A.charCodeAt(0)===46)e.push("");return A.replace(Mgt,function(t,r,i,u){e.push(i?u.replace(Tgt,"$1"):r||t)}),e}),Z8A=Ygt});function Hgt(A){return A==null?"":i7A(A)}var HU;var atA=_(()=>{u7A();HU=Hgt});function Kgt(A,e){if(ri(A))return A;return Cy(A,e)?[A]:Z8A(HU(A))}var PQ;var Xv=_(()=>{Gn();MU();V8A();atA();PQ=Kgt});function Ogt(A){if(typeof A=="string"||ig(A))return A;var e=A+"";return e=="0"&&1/A==-Jgt?"-0":e}var Jgt=1/0,oE;var Iy=_(()=>{pf();oE=Ogt});function Pgt(A,e){e=PQ(e,A);var t=0,r=e.length;while(A!=null&&t<r)A=A[oE(e[t++])];return t&&t==r?A:void 0}var _Q;var $v=_(()=>{Xv();Iy();_Q=Pgt});function _gt(A,e,t){var r=A==null?void 0:_Q(A,e);return r===void 0?t:r}var j8A;var X8A=_(()=>{$v();j8A=_gt});function Wgt(A,e){var t=-1,r=e.length,i=A.length;while(++t<r)A[i+t]=e[t];return A}var hy;var KU=_(()=>{hy=Wgt});function qgt(A){return ri(A)||BC(A)||!!($8A&&A&&A[$8A])}var $8A,ASA;var eSA=_(()=>{Qf();ly();Gn();$8A=Ro?Ro.isConcatSpreadable:void 0;ASA=qgt});function tSA(A,e,t,r,i){var u=-1,a=A.length;t||(t=ASA),i||(i=[]);while(++u<a){var n=A[u];if(e>0&&t(n))if(e>1)tSA(n,e-1,t,r,i);else hy(i,n);else if(!r)i[i.length]=n}return i}var Qy;var JU=_(()=>{KU();eSA();Qy=tSA});function zgt(A){var e=A==null?0:A.length;return e?Qy(A,1):[]}var Xg;var ntA=_(()=>{JU();Xg=zgt});function Zgt(A){return yU(vU(A,void 0,Xg),A+"")}var rSA;var iSA=_(()=>{ntA();$eA();VeA();rSA=Zgt});var Vgt,py;var OU=_(()=>{rtA();Vgt=GU(Object.getPrototypeOf,Object),py=Vgt});function tct(A){if(!Bn(A)||Bs(A)!=jgt)return!1;var e=py(A);if(e===null)return!0;var t=Act.call(e,"constructor")&&e.constructor;return typeof t=="function"&&t instanceof t&&uSA.call(t)==ect}var jgt="[object Object]",Xgt,$gt,uSA,Act,ect,aSA;var nSA=_(()=>{FQ();OU();CC();Xgt=Function.prototype,$gt=Object.prototype,uSA=Xgt.toString,Act=$gt.hasOwnProperty,ect=uSA.call(Object);aSA=tct});function gct(A){return lct.test(A)}var rct="\\ud800-\\udfff",ict="\\u0300-\\u036f",uct="\\ufe20-\\ufe2f",act="\\u20d0-\\u20ff",nct,oct="\\ufe0e\\ufe0f",sct="\\u200d",lct,oSA;var sSA=_(()=>{nct=ict+uct+act,lct=RegExp("["+sct+rct+nct+oct+"]");oSA=gct});function cct(A,e,t,r){var i=-1,u=A==null?0:A.length;if(r&&u)t=A[++i];while(++i<u)t=e(t,A[i],i,A);return t}var lSA;var gSA=_(()=>{lSA=cct});function Cct(){this.__data__=new KQ,this.size=0}var cSA;var CSA=_(()=>{Vv();cSA=Cct});function Bct(A){var e=this.__data__,t=e.delete(A);return this.size=e.size,t}var BSA;var ESA=_(()=>{BSA=Bct});function Ect(A){return this.__data__.get(A)}var dSA;var ISA=_(()=>{dSA=Ect});function dct(A){return this.__data__.has(A)}var hSA;var QSA=_(()=>{hSA=dct});function hct(A,e){var t=this.__data__;if(t instanceof KQ){var r=t.__data__;if(!JQ||r.length<Ict-1)return r.push([A,e]),this.size=++t.size,this;t=this.__data__=new mf(r)}return t.set(A,e),this.size=t.size,this}var Ict=200,pSA;var fSA=_(()=>{Vv();TU();YU();pSA=hct});function fy(A){var e=this.__data__=new KQ(A);this.size=e.size}var sE;var Ak=_(()=>{Vv();CSA();ESA();ISA();QSA();fSA();fy.prototype.clear=cSA;fy.prototype.delete=BSA;fy.prototype.get=dSA;fy.prototype.has=hSA;fy.prototype.set=pSA;sE=fy});function Qct(A,e){return A&&uE(e,Wa(e),A)}var mSA;var DSA=_(()=>{oy();II();mSA=Qct});function pct(A,e){return A&&uE(e,sl(e),A)}var ySA;var wSA=_(()=>{oy();YQ();ySA=pct});var _U={};Dt(_U,{default:()=>ek});function mct(A,e){if(e)return A.slice();var t=A.length,r=kSA?kSA(t):new A.constructor(t);return A.copy(r),r}var FSA,bSA,fct,vSA,kSA,ek;var otA=_(()=>{zg();FSA=typeof _U=="object"&&_U&&!_U.nodeType&&_U,bSA=FSA&&typeof PU=="object"&&PU&&!PU.nodeType&&PU,fct=bSA&&bSA.exports===FSA,vSA=fct?_a.Buffer:void 0,kSA=vSA?vSA.allocUnsafe:void 0;ek=mct});function Dct(A,e){var t=-1,r=A==null?0:A.length,i=0,u=[];while(++t<r){var a=A[t];if(e(a,t,A))u[i++]=a}return u}var WU;var stA=_(()=>{WU=Dct});function yct(){return[]}var qU;var ltA=_(()=>{qU=yct});var wct,bct,xSA,vct,my;var zU=_(()=>{stA();ltA();wct=Object.prototype,bct=wct.propertyIsEnumerable,xSA=Object.getOwnPropertySymbols,vct=!xSA?qU:function(A){if(A==null)return[];return A=Object(A),WU(xSA(A),function(e){return bct.call(A,e)})},my=vct});function kct(A,e){return uE(A,my(A),e)}var SSA;var LSA=_(()=>{oy();zU();SSA=kct});var Fct,xct,ZU;var gtA=_(()=>{KU();OU();zU();ltA();Fct=Object.getOwnPropertySymbols,xct=!Fct?qU:function(A){var e=[];while(A)hy(e,my(A)),A=py(A);return e},ZU=xct});function Sct(A,e){return uE(A,ZU(A),e)}var RSA;var NSA=_(()=>{oy();gtA();RSA=Sct});function Lct(A,e,t){var r=e(A);return ri(A)?r:hy(r,t(A))}var VU;var ctA=_(()=>{KU();Gn();VU=Lct});function Rct(A){return VU(A,Wa,my)}var tk;var CtA=_(()=>{ctA();zU();II();tk=Rct});function Nct(A){return VU(A,sl,ZU)}var GSA;var USA=_(()=>{ctA();gtA();YQ();GSA=Nct});var Gct,jU;var MSA=_(()=>{SQ();zg();Gct=nl(_a,"DataView"),jU=Gct});var Uct,XU;var TSA=_(()=>{SQ();zg();Uct=nl(_a,"Promise"),XU=Uct});var Mct,WQ;var BtA=_(()=>{SQ();zg();Mct=nl(_a,"Set"),WQ=Mct});var YSA="[object Map]",Tct="[object Object]",HSA="[object Promise]",KSA="[object Set]",JSA="[object WeakMap]",OSA="[object DataView]",Yct,Hct,Kct,Jct,Oct,Df,ug;var yf=_(()=>{MSA();TU();TSA();BtA();y7A();FQ();WeA();Yct=EI(jU),Hct=EI(JQ),Kct=EI(XU),Jct=EI(WQ),Oct=EI(mU),Df=Bs;if(jU&&Df(new jU(new ArrayBuffer(1)))!=OSA||JQ&&Df(new JQ)!=YSA||XU&&Df(XU.resolve())!=HSA||WQ&&Df(new WQ)!=KSA||mU&&Df(new mU)!=JSA)Df=function(A){var e=Bs(A),t=e==Tct?A.constructor:void 0,r=t?EI(t):"";if(r)switch(r){case Yct:return OSA;case Hct:return YSA;case Kct:return HSA;case Jct:return KSA;case Oct:return JSA}return e};ug=Df});function Wct(A){var e=A.length,t=new A.constructor(e);if(e&&typeof A[0]=="string"&&_ct.call(A,"index"))t.index=A.index,t.input=A.input;return t}var Pct,_ct,PSA;var _SA=_(()=>{Pct=Object.prototype,_ct=Pct.hasOwnProperty;PSA=Wct});var qct,Dy;var EtA=_(()=>{zg();qct=_a.Uint8Array,Dy=qct});function zct(A){var e=new A.constructor(A.byteLength);return new Dy(e).set(new Dy(A)),e}var yy;var $U=_(()=>{EtA();yy=zct});function Zct(A,e){var t=e?yy(A.buffer):A.buffer;return new A.constructor(t,A.byteOffset,A.byteLength)}var WSA;var qSA=_(()=>{$U();WSA=Zct});function jct(A){var e=new A.constructor(A.source,Vct.exec(A));return e.lastIndex=A.lastIndex,e}var Vct,zSA;var ZSA=_(()=>{Vct=/\w*$/;zSA=jct});function Xct(A){return jSA?Object(jSA.call(A)):{}}var VSA,jSA,XSA;var $SA=_(()=>{Qf();VSA=Ro?Ro.prototype:void 0,jSA=VSA?VSA.valueOf:void 0;XSA=Xct});function $ct(A,e){var t=e?yy(A.buffer):A.buffer;return new A.constructor(t,A.byteOffset,A.length)}var AM;var dtA=_(()=>{$U();AM=$ct});function QCt(A,e,t){var r=A.constructor;switch(e){case oCt:return yy(A);case ACt:case eCt:return new r(+A);case sCt:return WSA(A,t);case lCt:case gCt:case cCt:case CCt:case BCt:case ECt:case dCt:case ICt:case hCt:return AM(A,t);case tCt:return new r;case rCt:case aCt:return new r(A);case iCt:return zSA(A);case uCt:return new r;case nCt:return XSA(A)}}var ACt="[object Boolean]",eCt="[object Date]",tCt="[object Map]",rCt="[object Number]",iCt="[object RegExp]",uCt="[object Set]",aCt="[object String]",nCt="[object Symbol]",oCt="[object ArrayBuffer]",sCt="[object DataView]",lCt="[object Float32Array]",gCt="[object Float64Array]",cCt="[object Int8Array]",CCt="[object Int16Array]",BCt="[object Int32Array]",ECt="[object Uint8Array]",dCt="[object Uint8ClampedArray]",ICt="[object Uint16Array]",hCt="[object Uint32Array]",ALA;var eLA=_(()=>{$U();qSA();ZSA();$SA();dtA();ALA=QCt});function pCt(A){return typeof A.constructor=="function"&&!UQ(A)?b7A(py(A)):{}}var eM;var ItA=_(()=>{v7A();OU();Pv();eM=pCt});function mCt(A){return Bn(A)&&ug(A)==fCt}var fCt="[object Map]",tLA;var rLA=_(()=>{yf();CC();tLA=mCt});var iLA,DCt,uLA;var aLA=_(()=>{rLA();_v();RU();iLA=nE&&nE.isMap,DCt=iLA?MQ(iLA):tLA,uLA=DCt});function wCt(A){return Bn(A)&&ug(A)==yCt}var yCt="[object Set]",nLA;var oLA=_(()=>{yf();CC();nLA=wCt});var sLA,bCt,lLA;var gLA=_(()=>{oLA();_v();RU();sLA=nE&&nE.isSet,bCt=sLA?MQ(sLA):nLA,lLA=bCt});function tM(A,e,t,r,i,u){var a,n=e&vCt,o=e&kCt,s=e&FCt;if(t)a=i?t(A,r,i,u):t(A);if(a!==void 0)return a;if(!ha(A))return A;var l=ri(A);if(l){if(a=PSA(A),!n)return DU(A,a)}else{var g=ug(A),C=g==CLA||g==NCt;if(jg(A))return ek(A,n);if(g==BLA||g==cLA||C&&!i){if(a=o||C?{}:eM(A),!n)return o?RSA(A,ySA(a,A)):SSA(A,mSA(a,A))}else{if(!Ju[g])return i?A:{};a=ALA(A,g,n)}}u||(u=new sE);var B=u.get(A);if(B)return B;if(u.set(A,a),lLA(A))A.forEach(function(I){a.add(tM(I,e,t,I,A,u))});else if(uLA(A))A.forEach(function(I,h){a.set(h,tM(I,e,t,h,A,u))});var E=s?o?GSA:tk:o?sl:Wa,d=l?void 0:E(A);return wU(d||A,function(I,h){if(d)h=I,I=A[h];NQ(a,h,tM(I,e,t,h,A,u))}),a}var vCt=1,kCt=2,FCt=4,cLA="[object Arguments]",xCt="[object Array]",SCt="[object Boolean]",LCt="[object Date]",RCt="[object Error]",CLA="[object Function]",NCt="[object GeneratorFunction]",GCt="[object Map]",UCt="[object Number]",BLA="[object Object]",MCt="[object RegExp]",TCt="[object Set]",YCt="[object String]",HCt="[object Symbol]",KCt="[object WeakMap]",JCt="[object ArrayBuffer]",OCt="[object DataView]",PCt="[object Float32Array]",_Ct="[object Float64Array]",WCt="[object Int8Array]",qCt="[object Int16Array]",zCt="[object Int32Array]",ZCt="[object Uint8Array]",VCt="[object Uint8ClampedArray]",jCt="[object Uint16Array]",XCt="[object Uint32Array]",Ju,rM;var htA=_(()=>{Ak();jeA();Kv();DSA();wSA();otA();qeA();LSA();NSA();CtA();USA();yf();_SA();eLA();ItA();Gn();gy();aLA();Zg();gLA();II();YQ();Ju={};Ju[cLA]=Ju[xCt]=Ju[JCt]=Ju[OCt]=Ju[SCt]=Ju[LCt]=Ju[PCt]=Ju[_Ct]=Ju[WCt]=Ju[qCt]=Ju[zCt]=Ju[GCt]=Ju[UCt]=Ju[BLA]=Ju[MCt]=Ju[TCt]=Ju[YCt]=Ju[HCt]=Ju[ZCt]=Ju[VCt]=Ju[jCt]=Ju[XCt]=!0;Ju[RCt]=Ju[CLA]=Ju[KCt]=!1;rM=tM});function ABt(A){return rM(A,$Ct)}var $Ct=4,QtA;var ELA=_(()=>{htA();QtA=ABt});function rBt(A){return rM(A,eBt|tBt)}var eBt=1,tBt=4,ptA;var dLA=_(()=>{htA();ptA=rBt});function uBt(A){return this.__data__.set(A,iBt),this}var iBt="__lodash_hash_undefined__",ILA;var hLA=_(()=>{ILA=uBt});function aBt(A){return this.__data__.has(A)}var QLA;var pLA=_(()=>{QLA=aBt});function iM(A){var e=-1,t=A==null?0:A.length;this.__data__=new mf;while(++e<t)this.add(A[e])}var uM;var ftA=_(()=>{YU();hLA();pLA();iM.prototype.add=iM.prototype.push=ILA;iM.prototype.has=QLA;uM=iM});function nBt(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A))return!0;return!1}var fLA;var mLA=_(()=>{fLA=nBt});function oBt(A,e){return A.has(e)}var aM;var mtA=_(()=>{aM=oBt});function gBt(A,e,t,r,i,u){var a=t&sBt,n=A.length,o=e.length;if(n!=o&&!(a&&o>n))return!1;var s=u.get(A),l=u.get(e);if(s&&l)return s==e&&l==A;var g=-1,C=!0,B=t&lBt?new uM:void 0;u.set(A,e),u.set(e,A);while(++g<n){var E=A[g],d=e[g];if(r)var I=a?r(d,E,g,e,A,u):r(E,d,g,A,e,u);if(I!==void 0){if(I)continue;C=!1;break}if(B){if(!fLA(e,function(h,Q){if(!aM(B,Q)&&(E===h||i(E,h,t,r,u)))return B.push(Q)})){C=!1;break}}else if(!(E===d||i(E,d,t,r,u))){C=!1;break}}return u.delete(A),u.delete(e),C}var sBt=1,lBt=2,nM;var DtA=_(()=>{ftA();mLA();mtA();nM=gBt});function cBt(A){var e=-1,t=Array(A.size);return A.forEach(function(r,i){t[++e]=[i,r]}),t}var DLA;var yLA=_(()=>{DLA=cBt});function CBt(A){var e=-1,t=Array(A.size);return A.forEach(function(r){t[++e]=r}),t}var wy;var oM=_(()=>{wy=CBt});function vBt(A,e,t,r,i,u,a){switch(t){case bBt:if(A.byteLength!=e.byteLength||A.byteOffset!=e.byteOffset)return!1;A=A.buffer,e=e.buffer;case wBt:if(A.byteLength!=e.byteLength||!u(new Dy(A),new Dy(e)))return!1;return!0;case dBt:case IBt:case pBt:return Vg(+A,+e);case hBt:return A.name==e.name&&A.message==e.message;case fBt:case DBt:return A==e+"";case QBt:var n=DLA;case mBt:var o=r&BBt;if(n||(n=wy),A.size!=e.size&&!o)return!1;var s=a.get(A);if(s)return s==e;r|=EBt,a.set(A,e);var l=nM(n(A),n(e),r,i,u,a);return a.delete(A),l;case yBt:if(ytA)return ytA.call(A)==ytA.call(e)}return!1}var BBt=1,EBt=2,dBt="[object Boolean]",IBt="[object Date]",hBt="[object Error]",QBt="[object Map]",pBt="[object Number]",fBt="[object RegExp]",mBt="[object Set]",DBt="[object String]",yBt="[object Symbol]",wBt="[object ArrayBuffer]",bBt="[object DataView]",wLA,ytA,bLA;var vLA=_(()=>{Qf();EtA();ff();DtA();yLA();oM();wLA=Ro?Ro.prototype:void 0,ytA=wLA?wLA.valueOf:void 0;bLA=vBt});function SBt(A,e,t,r,i,u){var a=t&kBt,n=tk(A),o=n.length,s=tk(e),l=s.length;if(o!=l&&!a)return!1;var g=o;while(g--){var C=n[g];if(!(a?C in e:xBt.call(e,C)))return!1}var B=u.get(A),E=u.get(e);if(B&&E)return B==e&&E==A;var d=!0;u.set(A,e),u.set(e,A);var I=a;while(++g<o){C=n[g];var h=A[C],Q=e[C];if(r)var p=a?r(Q,h,C,e,A,u):r(h,Q,C,A,e,u);if(!(p===void 0?h===Q||i(h,Q,t,r,u):p)){d=!1;break}I||(I=C=="constructor")}if(d&&!I){var m=A.constructor,f=e.constructor;if(m!=f&&(("constructor"in A)&&("constructor"in e))&&!(typeof m=="function"&&m instanceof m&&typeof f=="function"&&f instanceof f))d=!1}return u.delete(A),u.delete(e),d}var kBt=1,FBt,xBt,kLA;var FLA=_(()=>{CtA();FBt=Object.prototype,xBt=FBt.hasOwnProperty;kLA=SBt});function NBt(A,e,t,r,i,u){var a=ri(A),n=ri(e),o=a?SLA:ug(A),s=n?SLA:ug(e);o=o==xLA?sM:o,s=s==xLA?sM:s;var l=o==sM,g=s==sM,C=o==s;if(C&&jg(A)){if(!jg(e))return!1;a=!0,l=!1}if(C&&!l)return u||(u=new sE),a||TQ(A)?nM(A,e,t,r,i,u):bLA(A,e,o,t,r,i,u);if(!(t&LBt)){var B=l&&LLA.call(A,"__wrapped__"),E=g&&LLA.call(e,"__wrapped__");if(B||E){var d=B?A.value():A,I=E?e.value():e;return u||(u=new sE),i(d,I,t,r,u)}}if(!C)return!1;return u||(u=new sE),kLA(A,e,t,r,i,u)}var LBt=1,xLA="[object Arguments]",SLA="[object Array]",sM="[object Object]",RBt,LLA,RLA;var NLA=_(()=>{Ak();DtA();vLA();FLA();yf();Gn();gy();qv();RBt=Object.prototype,LLA=RBt.hasOwnProperty;RLA=NBt});function GLA(A,e,t,r,i){if(A===e)return!0;if(A==null||e==null||!Bn(A)&&!Bn(e))return A!==A&&e!==e;return RLA(A,e,t,r,GLA,i)}var lM;var wtA=_(()=>{NLA();CC();lM=GLA});function MBt(A,e,t,r){var i=t.length,u=i,a=!r;if(A==null)return!u;A=Object(A);while(i--){var n=t[i];if(a&&n[2]?n[1]!==A[n[0]]:!(n[0]in A))return!1}while(++i<u){n=t[i];var o=n[0],s=A[o],l=n[1];if(a&&n[2]){if(s===void 0&&!(o in A))return!1}else{var g=new sE;if(r)var C=r(s,l,o,A,e,g);if(!(C===void 0?lM(l,s,GBt|UBt,r,g):C))return!1}}return!0}var GBt=1,UBt=2,ULA;var MLA=_(()=>{Ak();wtA();ULA=MBt});function TBt(A){return A===A&&!ha(A)}var gM;var btA=_(()=>{Zg();gM=TBt});function YBt(A){var e=Wa(A),t=e.length;while(t--){var r=e[t],i=A[r];e[t]=[r,i,gM(i)]}return e}var TLA;var YLA=_(()=>{btA();II();TLA=YBt});function HBt(A,e){return function(t){if(t==null)return!1;return t[A]===e&&(e!==void 0||(A in Object(t)))}}var cM;var vtA=_(()=>{cM=HBt});function KBt(A){var e=TLA(A);if(e.length==1&&e[0][2])return cM(e[0][0],e[0][1]);return function(t){return t===A||ULA(t,A,e)}}var HLA;var KLA=_(()=>{MLA();YLA();vtA();HLA=KBt});function JBt(A,e){return A!=null&&e in Object(A)}var JLA;var OLA=_(()=>{JLA=JBt});function OBt(A,e,t){e=PQ(e,A);var r=-1,i=e.length,u=!1;while(++r<i){var a=oE(e[r]);if(!(u=A!=null&&t(A,a)))break;A=A[a]}if(u||++r!=i)return u;return i=A==null?0:A.length,!!i&&sy(i)&&LQ(a,i)&&(ri(A)||BC(A))}var CM;var ktA=_(()=>{Xv();ly();Gn();Yv();kU();Iy();CM=OBt});function PBt(A,e){return A!=null&&CM(A,e,JLA)}var BM;var FtA=_(()=>{OLA();ktA();BM=PBt});function qBt(A,e){if(Cy(A)&&gM(e))return cM(oE(A),e);return function(t){var r=j8A(t,A);return r===void 0&&r===e?BM(t,A):lM(e,r,_Bt|WBt)}}var _Bt=1,WBt=2,PLA;var _LA=_(()=>{wtA();X8A();FtA();MU();btA();vtA();Iy();PLA=qBt});function zBt(A){return function(e){return e==null?void 0:e[A]}}var EM;var xtA=_(()=>{EM=zBt});function ZBt(A){return function(e){return _Q(e,A)}}var WLA;var qLA=_(()=>{$v();WLA=ZBt});function VBt(A){return Cy(A)?EM(oE(A)):WLA(A)}var zLA;var ZLA=_(()=>{xtA();qLA();MU();Iy();zLA=VBt});function jBt(A){if(typeof A=="function")return A;if(A==null)return al;if(typeof A=="object")return ri(A)?PLA(A[0],A[1]):HLA(A);return zLA(A)}var M0;var QI=_(()=>{KLA();_LA();xQ();Gn();ZLA();M0=jBt});function XBt(A){return function(e,t,r){var i=-1,u=Object(e),a=r(e),n=a.length;while(n--){var o=a[A?n:++i];if(t(u[o],o,u)===!1)break}return e}}var VLA;var jLA=_(()=>{VLA=XBt});var $Bt,by;var dM=_(()=>{jLA();$Bt=VLA(),by=$Bt});function AEt(A,e){return A&&by(A,e,Wa)}var vy;var IM=_(()=>{dM();II();vy=AEt});function eEt(A,e){return function(t,r){if(t==null)return t;if(!No(t))return A(t,r);var i=t.length,u=e?i:-1,a=Object(t);while(e?u--:++u<i)if(r(a[u],u,a)===!1)break;return t}}var XLA;var $LA=_(()=>{aE();XLA=eEt});var tEt,qQ;var rk=_(()=>{IM();$LA();tEt=XLA(vy),qQ=tEt});var rEt=function(){return _a.Date.now()},hM;var ARA=_(()=>{zg();hM=rEt});var eRA,iEt,uEt,StA;var tRA=_(()=>{Jv();ff();Ov();YQ();eRA=Object.prototype,iEt=eRA.hasOwnProperty,uEt=GQ(function(A,e){A=Object(A);var t=-1,r=e.length,i=r>2?e[2]:void 0;if(i&&dI(e[0],e[1],i))r=1;while(++t<r){var u=e[t],a=sl(u),n=-1,o=a.length;while(++n<o){var s=a[n],l=A[s];if(l===void 0||Vg(l,eRA[s])&&!iEt.call(A,s))A[s]=u[s]}}return A}),StA=uEt});function aEt(A,e,t){if(t!==void 0&&!Vg(A[e],t)||t===void 0&&!(e in A))RQ(A,e,t)}var ik;var LtA=_(()=>{Hv();ff();ik=aEt});function nEt(A){return Bn(A)&&No(A)}var QM;var RtA=_(()=>{aE();CC();QM=nEt});function oEt(A,e){if(e==="constructor"&&typeof A[e]==="function")return;if(e=="__proto__")return;return A[e]}var uk;var NtA=_(()=>{uk=oEt});function sEt(A){return uE(A,sl(A))}var rRA;var iRA=_(()=>{oy();YQ();rRA=sEt});function lEt(A,e,t,r,i,u,a){var n=uk(A,t),o=uk(e,t),s=a.get(o);if(s){ik(A,t,s);return}var l=u?u(n,o,t+"",A,e,a):void 0,g=l===void 0;if(g){var C=ri(o),B=!C&&jg(o),E=!C&&!B&&TQ(o);if(l=o,C||B||E)if(ri(n))l=n;else if(QM(n))l=DU(n);else if(B)g=!1,l=ek(o,!0);else if(E)g=!1,l=AM(o,!0);else l=[];else if(aSA(o)||BC(o)){if(l=n,BC(n))l=rRA(n);else if(!ha(n)||iE(n))l=eM(o)}else g=!1}if(g)a.set(o,l),i(l,o,r,u,a),a.delete(o);ik(A,t,l)}var uRA;var aRA=_(()=>{LtA();otA();dtA();qeA();ItA();ly();Gn();RtA();gy();Tv();Zg();nSA();qv();NtA();iRA();uRA=lEt});function nRA(A,e,t,r,i){if(A===e)return;by(e,function(u,a){if(i||(i=new sE),ha(u))uRA(A,e,a,t,nRA,r,i);else{var n=r?r(uk(A,a),u,a+"",A,e,i):void 0;if(n===void 0)n=u;ik(A,a,n)}},sl)}var oRA;var sRA=_(()=>{Ak();LtA();dM();aRA();Zg();YQ();NtA();oRA=nRA});function gEt(A,e,t){var r=-1,i=A==null?0:A.length;while(++r<i)if(t(e,A[r]))return!0;return!1}var lRA;var gRA=_(()=>{lRA=gEt});function cEt(A){var e=A==null?0:A.length;return e?A[e-1]:void 0}var zQ;var cRA=_(()=>{zQ=cEt});function CEt(A){return typeof A=="function"?A:al}var ky;var pM=_(()=>{xQ();ky=CEt});function BEt(A,e){var t=ri(A)?wU:qQ;return t(A,ky(e))}var ve;var GtA=_(()=>{jeA();rk();pM();Gn();ve=BEt});var CRA=_(()=>{GtA()});function EEt(A,e){var t=[];return qQ(A,function(r,i,u){if(e(r,i,u))t.push(r)}),t}var BRA;var ERA=_(()=>{rk();BRA=EEt});function dEt(A,e){var t=ri(A)?WU:BRA;return t(A,M0(e,3))}var Es;var dRA=_(()=>{stA();ERA();QI();Gn();Es=dEt});function IEt(A){return function(e,t,r){var i=Object(e);if(!No(e)){var u=M0(t,3);e=Wa(e),t=function(n){return u(i[n],n,i)}}var a=A(e,t,r);return a>-1?i[u?e[a]:a]:void 0}}var IRA;var hRA=_(()=>{QI();aE();II();IRA=IEt});function QEt(A,e,t){var r=A==null?0:A.length;if(!r)return-1;var i=t==null?0:B7A(t);if(i<0)i=hEt(r+i,0);return bU(A,M0(e,3),i)}var hEt,QRA;var pRA=_(()=>{XeA();QI();E7A();hEt=Math.max;QRA=QEt});var pEt,Fy;var fRA=_(()=>{hRA();pRA();pEt=IRA(QRA),Fy=pEt});function fEt(A,e){var t=-1,r=No(A)?Array(A.length):[];return qQ(A,function(i,u,a){r[++t]=e(i,u,a)}),r}var fM;var UtA=_(()=>{rk();aE();fM=fEt});function mEt(A,e){var t=ri(A)?rE:fM;return t(A,M0(e,3))}var Vi;var mRA=_(()=>{Mv();QI();UtA();Gn();Vi=mEt});function DEt(A,e){return A==null?A:by(A,ky(e),sl)}var MtA;var DRA=_(()=>{dM();pM();YQ();MtA=DEt});function yEt(A,e){return A&&vy(A,ky(e))}var TtA;var yRA=_(()=>{IM();pM();TtA=yEt});function wEt(A,e){return A>e}var wRA;var bRA=_(()=>{wRA=wEt});function kEt(A,e){return A!=null&&vEt.call(A,e)}var bEt,vEt,vRA;var kRA=_(()=>{bEt=Object.prototype,vEt=bEt.hasOwnProperty;vRA=kEt});function FEt(A,e){return A!=null&&CM(A,e,vRA)}var ak;var FRA=_(()=>{kRA();ktA();ak=FEt});function SEt(A){return typeof A=="string"||!ri(A)&&Bn(A)&&Bs(A)==xEt}var xEt="[object String]",xRA;var SRA=_(()=>{FQ();Gn();CC();xRA=SEt});function LEt(A,e){return rE(e,function(t){return A[t]})}var LRA;var RRA=_(()=>{Mv();LRA=LEt});function REt(A){return A==null?[]:LRA(A,Wa(A))}var ag;var NRA=_(()=>{RRA();II();ag=REt});function TEt(A){if(A==null)return!0;if(No(A)&&(ri(A)||typeof A=="string"||typeof A.splice=="function"||jg(A)||TQ(A)||BC(A)))return!A.length;var e=ug(A);if(e==NEt||e==GEt)return!A.size;if(UQ(A))return!cy(A).length;for(var t in A)if(MEt.call(A,t))return!1;return!0}var NEt="[object Map]",GEt="[object Set]",UEt,MEt,mM;var GRA=_(()=>{UU();yf();ly();Gn();aE();gy();Pv();qv();UEt=Object.prototype,MEt=UEt.hasOwnProperty;mM=TEt});function YEt(A){return A===void 0}var bu;var URA=_(()=>{bu=YEt});function HEt(A,e){return A<e}var DM;var YtA=_(()=>{DM=HEt});function KEt(A,e){var t={};return e=M0(e,3),vy(A,function(r,i,u){RQ(t,i,e(r,i,u))}),t}var wf;var MRA=_(()=>{Hv();IM();QI();wf=KEt});function JEt(A,e,t){var r=-1,i=A.length;while(++r<i){var u=A[r],a=e(u);if(a!=null&&(n===void 0?a===a&&!ig(a):t(a,n)))var n=a,o=u}return o}var xy;var yM=_(()=>{pf();xy=JEt});function OEt(A){return A&&A.length?xy(A,al,wRA):void 0}var ll;var TRA=_(()=>{yM();bRA();xQ();ll=OEt});var PEt,Sy;var YRA=_(()=>{sRA();W7A();PEt=_7A(function(A,e,t){oRA(A,e,t)}),Sy=PEt});function _Et(A){return A&&A.length?xy(A,al,DM):void 0}var pI;var HRA=_(()=>{yM();YtA();xQ();pI=_Et});function WEt(A,e){return A&&A.length?xy(A,M0(e,2),DM):void 0}var bf;var KRA=_(()=>{yM();QI();YtA();bf=WEt});function qEt(A,e,t,r){if(!ha(A))return A;e=PQ(e,A);var i=-1,u=e.length,a=u-1,n=A;while(n!=null&&++i<u){var o=oE(e[i]),s=t;if(o==="__proto__"||o==="constructor"||o==="prototype")return A;if(i!=a){var l=n[o];if(s=r?r(l,o,n):void 0,s===void 0)s=ha(l)?l:LQ(e[i+1])?[]:{}}NQ(n,o,s),n=n[o]}return A}var JRA;var ORA=_(()=>{Kv();Xv();Yv();Zg();Iy();JRA=qEt});function zEt(A,e,t){var r=-1,i=e.length,u={};while(++r<i){var a=e[r],n=_Q(A,a);if(t(n,a))JRA(u,PQ(a,A),n)}return u}var PRA;var _RA=_(()=>{$v();ORA();Xv();PRA=zEt});function ZEt(A,e){var t=A.length;A.sort(e);while(t--)A[t]=A[t].value;return A}var WRA;var qRA=_(()=>{WRA=ZEt});function VEt(A,e){if(A!==e){var t=A!==void 0,r=A===null,i=A===A,u=ig(A),a=e!==void 0,n=e===null,o=e===e,s=ig(e);if(!n&&!s&&!u&&A>e||u&&a&&o&&!n&&!s||r&&a&&o||!t&&o||!i)return 1;if(!r&&!u&&!s&&A<e||s&&t&&i&&!r&&!u||n&&t&&i||!a&&i||!o)return-1}return 0}var zRA;var ZRA=_(()=>{pf();zRA=VEt});function jEt(A,e,t){var r=-1,i=A.criteria,u=e.criteria,a=i.length,n=t.length;while(++r<a){var o=zRA(i[r],u[r]);if(o){if(r>=n)return o;var s=t[r];return o*(s=="desc"?-1:1)}}return A.index-e.index}var VRA;var jRA=_(()=>{ZRA();VRA=jEt});function XEt(A,e,t){if(e.length)e=rE(e,function(u){if(ri(u))return function(a){return _Q(a,u.length===1?u[0]:u)};return u});else e=[al];var r=-1;e=rE(e,MQ(M0));var i=fM(A,function(u,a,n){var o=rE(e,function(s){return s(u)});return{criteria:o,index:++r,value:u}});return WRA(i,function(u,a){return VRA(u,a,t)})}var XRA;var $RA=_(()=>{Mv();$v();QI();UtA();qRA();_v();jRA();xQ();Gn();XRA=XEt});var $Et,ANA;var eNA=_(()=>{xtA();$Et=EM("length"),ANA=$Et});function gdt(A){var e=tNA.lastIndex=0;while(tNA.test(A))++e;return e}var rNA="\\ud800-\\udfff",Adt="\\u0300-\\u036f",edt="\\ufe20-\\ufe2f",tdt="\\u20d0-\\u20ff",rdt,idt="\\ufe0e\\ufe0f",udt,HtA,KtA="\\ud83c[\\udffb-\\udfff]",adt,iNA,uNA="(?:\\ud83c[\\udde6-\\uddff]){2}",aNA="[\\ud800-\\udbff][\\udc00-\\udfff]",ndt="\\u200d",nNA,oNA,odt,sdt,ldt,tNA,sNA;var lNA=_(()=>{rdt=Adt+edt+tdt,udt="["+rNA+"]",HtA="["+rdt+"]",adt="(?:"+HtA+"|"+KtA+")",iNA="[^"+rNA+"]",nNA=adt+"?",oNA="["+idt+"]?",odt="(?:"+ndt+"(?:"+[iNA,uNA,aNA].join("|")+")"+oNA+nNA+")*",sdt=oNA+nNA+odt,ldt="(?:"+[iNA+HtA+"?",HtA,uNA,aNA,udt].join("|")+")",tNA=RegExp(KtA+"(?="+KtA+")|"+ldt+sdt,"g");sNA=gdt});function cdt(A){return oSA(A)?sNA(A):ANA(A)}var gNA;var cNA=_(()=>{eNA();sSA();lNA();gNA=cdt});function Cdt(A,e){return PRA(A,e,function(t,r){return BM(A,r)})}var CNA;var BNA=_(()=>{_RA();FtA();CNA=Cdt});var Bdt,vf;var ENA=_(()=>{BNA();iSA();Bdt=rSA(function(A,e){return A==null?{}:CNA(A,e)}),vf=Bdt});function Idt(A,e,t,r){var i=-1,u=ddt(Edt((e-A)/(t||1)),0),a=Array(u);while(u--)a[r?u:++i]=A,A+=t;return a}var Edt,ddt,dNA;var INA=_(()=>{Edt=Math.ceil,ddt=Math.max;dNA=Idt});function hdt(A){return function(e,t,r){if(r&&typeof r!="number"&&dI(e,t,r))t=r=void 0;if(e=ay(e),t===void 0)t=e,e=0;else t=ay(t);return r=r===void 0?e<t?1:-1:ay(r),dNA(e,t,r,A)}}var hNA;var QNA=_(()=>{INA();Ov();_eA();hNA=hdt});var Qdt,$g;var pNA=_(()=>{QNA();Qdt=hNA(),$g=Qdt});function pdt(A,e,t,r,i){return i(A,function(u,a,n){t=r?(r=!1,u):e(t,u,a,n)}),t}var fNA;var mNA=_(()=>{fNA=pdt});function fdt(A,e,t){var r=ri(A)?lSA:fNA,i=arguments.length<3;return r(A,M0(e,4),t,i,qQ)}var lE;var DNA=_(()=>{gSA();rk();QI();mNA();Gn();lE=fdt});function ydt(A){if(A==null)return 0;if(No(A))return xRA(A)?gNA(A):A.length;var e=ug(A);if(e==mdt||e==Ddt)return A.size;return cy(A).length}var mdt="[object Map]",Ddt="[object Set]",JtA;var yNA=_(()=>{UU();yf();aE();SRA();cNA();JtA=ydt});var wdt,gE;var wNA=_(()=>{JU();$RA();Jv();Ov();wdt=GQ(function(A,e){if(A==null)return[];var t=e.length;if(t>1&&dI(A,e[0],e[1]))e=[];else if(t>2&&dI(e[0],e[1],e[2]))e=[e[0]];return XRA(A,Qy(e,1),[])}),gE=wdt});var bdt=1/0,vdt,bNA;var vNA=_(()=>{BtA();S7A();oM();vdt=!(WQ&&1/wy(new WQ([,-0]))[1]==bdt)?x7A:function(A){return new WQ(A)},bNA=vdt});function Fdt(A,e,t){var r=-1,i=J7A,u=A.length,a=!0,n=[],o=n;if(t)a=!1,i=lRA;else if(u>=kdt){var s=e?null:bNA(A);if(s)return wy(s);a=!1,i=aM,o=new uM}else o=e?[]:n;A:while(++r<u){var l=A[r],g=e?e(l):l;if(l=t||l!==0?l:0,a&&g===g){var C=o.length;while(C--)if(o[C]===g)continue A;if(e)o.push(g);n.push(l)}else if(!i(o,g,t)){if(o!==n)o.push(g);n.push(l)}}return n}var kdt=200,kNA;var FNA=_(()=>{ftA();O7A();gRA();mtA();vNA();oM();kNA=Fdt});var xdt,OtA;var xNA=_(()=>{JU();Jv();FNA();RtA();xdt=GQ(function(A){return kNA(Qy(A,1,QM,!0))}),OtA=xdt});function Ldt(A){var e=++Sdt;return HU(A)+e}var Sdt=0,kf;var SNA=_(()=>{atA();kf=Ldt});function Rdt(A,e,t){var r=-1,i=A.length,u=e.length,a={};while(++r<i){var n=r<u?e[r]:void 0;t(a,A[r],n)}return a}var LNA;var RNA=_(()=>{LNA=Rdt});function Ndt(A,e){return LNA(A||[],e||[],NQ)}var wM;var NNA=_(()=>{Kv();RNA();wM=Ndt});var Bu=_(()=>{ELA();dLA();zeA();tRA();CRA();dRA();fRA();ntA();GtA();DRA();yRA();FRA();Gn();GRA();Tv();URA();II();cRA();mRA();MRA();TRA();YRA();HRA();KRA();ARA();ENA();pNA();DNA();yNA();wNA();xNA();SNA();NRA();NNA()});class ji{constructor(A={}){if(this._isDirected=Object.prototype.hasOwnProperty.call(A,"directed")?A.directed:!0,this._isMultigraph=Object.prototype.hasOwnProperty.call(A,"multigraph")?A.multigraph:!1,this._isCompound=Object.prototype.hasOwnProperty.call(A,"compound")?A.compound:!1,this._label=void 0,this._defaultNodeLabelFn=ol(void 0),this._defaultEdgeLabelFn=ol(void 0),this._nodes={},this._isCompound)this._parent={},this._children={},this._children[Ff]={};this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(A){return this._label=A,this}graph(){return this._label}setDefaultNodeLabel(A){if(!iE(A))A=ol(A);return this._defaultNodeLabelFn=A,this}nodeCount(){return this._nodeCount}nodes(){return Wa(this._nodes)}sources(){var A=this;return Es(this.nodes(),function(e){return mM(A._in[e])})}sinks(){var A=this;return Es(this.nodes(),function(e){return mM(A._out[e])})}setNodes(A,e){var t=arguments,r=this;return ve(A,function(i){if(t.length>1)r.setNode(i,e);else r.setNode(i)}),this}setNode(A,e){if(Object.prototype.hasOwnProperty.call(this._nodes,A)){if(arguments.length>1)this._nodes[A]=e;return this}if(this._nodes[A]=arguments.length>1?e:this._defaultNodeLabelFn(A),this._isCompound)this._parent[A]=Ff,this._children[A]={},this._children[Ff][A]=!0;return this._in[A]={},this._preds[A]={},this._out[A]={},this._sucs[A]={},++this._nodeCount,this}node(A){return this._nodes[A]}hasNode(A){return Object.prototype.hasOwnProperty.call(this._nodes,A)}removeNode(A){if(Object.prototype.hasOwnProperty.call(this._nodes,A)){var e=(t)=>this.removeEdge(this._edgeObjs[t]);if(delete this._nodes[A],this._isCompound)this._removeFromParentsChildList(A),delete this._parent[A],ve(this.children(A),(t)=>{this.setParent(t)}),delete this._children[A];ve(Wa(this._in[A]),e),delete this._in[A],delete this._preds[A],ve(Wa(this._out[A]),e),delete this._out[A],delete this._sucs[A],--this._nodeCount}return this}setParent(A,e){if(!this._isCompound)throw Error("Cannot set parent in a non-compound graph");if(bu(e))e=Ff;else{e+="";for(var t=e;!bu(t);t=this.parent(t))if(t===A)throw Error("Setting "+e+" as parent of "+A+" would create a cycle");this.setNode(e)}return this.setNode(A),this._removeFromParentsChildList(A),this._parent[A]=e,this._children[e][A]=!0,this}_removeFromParentsChildList(A){delete this._children[this._parent[A]][A]}parent(A){if(this._isCompound){var e=this._parent[A];if(e!==Ff)return e}}children(A){if(bu(A))A=Ff;if(this._isCompound){var e=this._children[A];if(e)return Wa(e)}else if(A===Ff)return this.nodes();else if(this.hasNode(A))return[]}predecessors(A){var e=this._preds[A];if(e)return Wa(e)}successors(A){var e=this._sucs[A];if(e)return Wa(e)}neighbors(A){var e=this.predecessors(A);if(e)return OtA(e,this.successors(A))}isLeaf(A){var e;if(this.isDirected())e=this.successors(A);else e=this.neighbors(A);return e.length===0}filterNodes(A){var e=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});e.setGraph(this.graph());var t=this;ve(this._nodes,function(u,a){if(A(a))e.setNode(a,u)}),ve(this._edgeObjs,function(u){if(e.hasNode(u.v)&&e.hasNode(u.w))e.setEdge(u,t.edge(u))});var r={};function i(u){var a=t.parent(u);if(a===void 0||e.hasNode(a))return r[u]=a,a;else if(a in r)return r[a];else return i(a)}if(this._isCompound)ve(e.nodes(),function(u){e.setParent(u,i(u))});return e}setDefaultEdgeLabel(A){if(!iE(A))A=ol(A);return this._defaultEdgeLabelFn=A,this}edgeCount(){return this._edgeCount}edges(){return ag(this._edgeObjs)}setPath(A,e){var t=this,r=arguments;return lE(A,function(i,u){if(r.length>1)t.setEdge(i,u,e);else t.setEdge(i,u);return u}),this}setEdge(){var A,e,t,r,i=!1,u=arguments[0];if(typeof u==="object"&&u!==null&&"v"in u){if(A=u.v,e=u.w,t=u.name,arguments.length===2)r=arguments[1],i=!0}else if(A=u,e=arguments[1],t=arguments[3],arguments.length>2)r=arguments[2],i=!0;if(A=""+A,e=""+e,!bu(t))t=""+t;var a=nk(this._isDirected,A,e,t);if(Object.prototype.hasOwnProperty.call(this._edgeLabels,a)){if(i)this._edgeLabels[a]=r;return this}if(!bu(t)&&!this._isMultigraph)throw Error("Cannot set a named edge when isMultigraph = false");this.setNode(A),this.setNode(e),this._edgeLabels[a]=i?r:this._defaultEdgeLabelFn(A,e,t);var n=Udt(this._isDirected,A,e,t);return A=n.v,e=n.w,Object.freeze(n),this._edgeObjs[a]=n,UNA(this._preds[e],A),UNA(this._sucs[A],e),this._in[e][a]=n,this._out[A][a]=n,this._edgeCount++,this}edge(A,e,t){var r=arguments.length===1?PtA(this._isDirected,arguments[0]):nk(this._isDirected,A,e,t);return this._edgeLabels[r]}hasEdge(A,e,t){var r=arguments.length===1?PtA(this._isDirected,arguments[0]):nk(this._isDirected,A,e,t);return Object.prototype.hasOwnProperty.call(this._edgeLabels,r)}removeEdge(A,e,t){var r=arguments.length===1?PtA(this._isDirected,arguments[0]):nk(this._isDirected,A,e,t),i=this._edgeObjs[r];if(i)A=i.v,e=i.w,delete this._edgeLabels[r],delete this._edgeObjs[r],MNA(this._preds[e],A),MNA(this._sucs[A],e),delete this._in[e][r],delete this._out[A][r],this._edgeCount--;return this}inEdges(A,e){var t=this._in[A];if(t){var r=ag(t);if(!e)return r;return Es(r,function(i){return i.v===e})}}outEdges(A,e){var t=this._out[A];if(t){var r=ag(t);if(!e)return r;return Es(r,function(i){return i.w===e})}}nodeEdges(A,e){var t=this.inEdges(A,e);if(t)return t.concat(this.outEdges(A,e))}}function UNA(A,e){if(A[e])A[e]++;else A[e]=1}function MNA(A,e){if(!--A[e])delete A[e]}function nk(A,e,t,r){var i=""+e,u=""+t;if(!A&&i>u){var a=i;i=u,u=a}return i+GNA+u+GNA+(bu(r)?Gdt:r)}function Udt(A,e,t,r){var i=""+e,u=""+t;if(!A&&i>u){var a=i;i=u,u=a}var n={v:i,w:u};if(r)n.name=r;return n}function PtA(A,e){return nk(A,e.v,e.w,e.name)}var Gdt="\x00",Ff="\x00",GNA="\x01";var bM=_(()=>{Bu();ji.prototype._nodeCount=0;ji.prototype._edgeCount=0});var ng=_(()=>{bM()});function EC(A){var e={options:{directed:A.isDirected(),multigraph:A.isMultigraph(),compound:A.isCompound()},nodes:Mdt(A),edges:Tdt(A)};if(!bu(A.graph()))e.value=QtA(A.graph());return e}function Mdt(A){return Vi(A.nodes(),function(e){var t=A.node(e),r=A.parent(e),i={v:e};if(!bu(t))i.value=t;if(!bu(r))i.parent=r;return i})}function Tdt(A){return Vi(A.edges(),function(e){var t=A.edge(e),r={v:e.v,w:e.w};if(!bu(e.name))r.name=e.name;if(!bu(t))r.value=t;return r})}var _tA=_(()=>{Bu();bM()});var Kr,ZQ,HNA,vM,xf,Ydt,WtA,KNA,Hdt,Sf,YNA,JNA,ONA,PNA,_NA,WNA,Kdt;var qtA=_(()=>{ir();Nt();ng();_tA();Kr=new Map,ZQ=new Map,HNA=new Map,vM=y(()=>{ZQ.clear(),HNA.clear(),Kr.clear()},"clear"),xf=y((A,e)=>{let t=ZQ.get(e)||[];return sA.trace("In isDescendant",e," ",A," = ",t.includes(A)),t.includes(A)},"isDescendant"),Ydt=y((A,e)=>{let t=ZQ.get(e)||[];if(sA.info("Descendants of ",e," is ",t),sA.info("Edge is ",A),A.v===e||A.w===e)return!1;if(!t)return sA.debug("Tilt, ",e,",not in descendants"),!1;return t.includes(A.v)||xf(A.v,e)||xf(A.w,e)||t.includes(A.w)},"edgeInCluster"),WtA=y((A,e,t,r)=>{sA.warn("Copying children of ",A,"root",r,"data",e.node(A),r);let i=e.children(A)||[];if(A!==r)i.push(A);sA.warn("Copying (nodes) clusterId",A,"nodes",i),i.forEach((u)=>{if(e.children(u).length>0)WtA(u,e,t,r);else{let a=e.node(u);if(sA.info("cp ",u," to ",r," with parent ",A),t.setNode(u,a),r!==e.parent(u))sA.warn("Setting parent",u,e.parent(u)),t.setParent(u,e.parent(u));if(A!==r&&u!==A)sA.debug("Setting parent",u,A),t.setParent(u,A);else sA.info("In copy ",A,"root",r,"data",e.node(A),r),sA.debug("Not Setting parent for node=",u,"cluster!==rootId",A!==r,"node!==clusterId",u!==A);let n=e.edges(u);sA.debug("Copying Edges",n),n.forEach((o)=>{sA.info("Edge",o);let s=e.edge(o.v,o.w,o.name);sA.info("Edge data",s,r);try{if(Ydt(o,r)){let l=ZQ.get(r)||[],g=l.includes(o.v)||xf(o.v,r)||o.v===r,C=l.includes(o.w)||xf(o.w,r)||o.w===r;if(g&&C)sA.info("Copying as ",o.v,o.w,s,o.name),t.setEdge(o.v,o.w,s,o.name),sA.info("newGraph edges ",t.edges(),t.edge(t.edges()[0]));else{let B=g?r:o.v,E=C?r:o.w;sA.info("Rebinding cross-boundary edge as ",B,E,s,o.name),e.setEdge(B,E,s,o.name)}}else sA.info("Skipping copy of edge ",o.v,"-->",o.w," rootId: ",r," clusterId:",A)}catch(l){sA.error(l)}})}sA.debug("Removing node",u),e.removeNode(u)})},"copy"),KNA=y((A,e)=>{let t=e.children(A),r=[...t];for(let i of t)HNA.set(i,A),r=[...r,...KNA(i,e)];return r},"extractDescendants"),Hdt=y((A,e,t)=>{let r=A.edges().filter((o)=>o.v===e||o.w===e),i=A.edges().filter((o)=>o.v===t||o.w===t),u=r.map((o)=>({v:o.v===e?t:o.v,w:o.w===e?e:o.w})),a=i.map((o)=>({v:o.v,w:o.w}));return u.filter((o)=>a.some((s)=>o.v===s.v&&o.w===s.w))},"findCommonEdges"),Sf=y((A,e,t)=>{let r=e.children(A);if(sA.trace("Searching children of id ",A,r),r.length<1)return A;let i;for(let u of r){let a=Sf(u,e,t),n=Hdt(e,t,a);if(a)if(n.length>0)i=a;else return a}return i},"findNonClusterChild"),YNA=y((A)=>{if(!Kr.has(A))return A;if(!Kr.get(A).externalConnections)return A;if(Kr.has(A))return Kr.get(A).id;return A},"getAnchorId"),JNA=y((A,e)=>{if(!A||e>10){sA.debug("Opting out, no graph ");return}else sA.debug("Opting in, graph ");A.nodes().forEach(function(t){if(A.children(t).length>0)sA.warn("Cluster identified",t," Replacement id in edges: ",Sf(t,A,t)),ZQ.set(t,KNA(t,A)),Kr.set(t,{id:Sf(t,A,t),clusterData:A.node(t)})}),A.nodes().forEach(function(t){let r=A.children(t),i=A.edges();if(r.length>0)sA.debug("Cluster identified",t,ZQ),i.forEach((u)=>{let a=xf(u.v,t),n=xf(u.w,t);if(a^n)sA.warn("Edge: ",u," leaves cluster ",t),sA.warn("Descendants of XXX ",t,": ",ZQ.get(t)),Kr.get(t).externalConnections=!0});else sA.debug("Not a cluster ",t,ZQ)});for(let t of Kr.keys()){let r=Kr.get(t).id,i=A.parent(r);if(i!==t&&Kr.has(i)&&!Kr.get(i).externalConnections)Kr.get(t).id=i;let u=A.edges().some((a)=>a.v===t);if(r&&Kr.get(t)?.externalConnections&&u&&WNA(A,r,t)){let a=Kdt(A,t,A.parent(r));if(a)Kr.get(t).id=a}}A.edges().forEach(function(t){let r=A.edge(t);sA.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(t)),sA.warn("Edge "+t.v+" -> "+t.w+": "+JSON.stringify(A.edge(t)));let{v:i,w:u}=t;if(sA.warn("Fix XXX",Kr,"ids:",t.v,t.w,"Translating: ",Kr.get(t.v)," --- ",Kr.get(t.w)),Kr.get(t.v)||Kr.get(t.w)){if(sA.warn("Fixing and trying - removing XXX",t.v,t.w,t.name),i=YNA(t.v),u=YNA(t.w),A.removeEdge(t.v,t.w,t.name),i!==t.v){let a=A.parent(i);Kr.get(a).externalConnections=!0,r.fromCluster=t.v}if(u!==t.w){let a=A.parent(u);Kr.get(a).externalConnections=!0,r.toCluster=t.w}sA.warn("Fix Replacing with XXX",i,u,t.name),A.setEdge(i,u,r,t.name)}}),sA.warn("Adjusted Graph",EC(A)),ONA(A,0),sA.trace(Kr)},"adjustClustersAndEdges"),ONA=y((A,e)=>{if(sA.warn("extractor - ",e,EC(A),A.children("D")),e>10){sA.error("Bailing out");return}let t=A.nodes(),r=!1;for(let i of t){let u=A.children(i);r=r||u.length>0}if(!r){sA.debug("Done, no node has children",A.nodes());return}sA.debug("Nodes = ",t,e);for(let i of t)if(sA.debug("Extracting node",i,Kr,Kr.has(i)&&!Kr.get(i).externalConnections,!A.parent(i),A.node(i),A.children("D")," Depth ",e),!Kr.has(i))sA.debug("Not a cluster",i,e);else if(Kr.get(i)?.clusterData?.explicitDir&&A.children(i)&&A.children(i).length>0){sA.warn("Cluster with explicit dir, creating subgraph for children",i,e);let u=Kr.get(i).clusterData.dir,a=new ji({multigraph:!0,compound:!0}).setGraph({rankdir:u,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});WtA(i,A,a,i);let n=A.node(i)||{};A.setNode(i,{...n,clusterNode:!0,id:i,clusterData:Kr.get(i).clusterData,label:Kr.get(i).label,graph:a}),sA.warn("Subgraph for cluster with explicit dir created:",i,EC(a))}else if(!Kr.get(i).externalConnections&&A.children(i)&&A.children(i).length>0){sA.warn("Cluster without external connections, without a parent and with children",i,e);let a=A.graph().rankdir==="TB"?"LR":"TB";if(Kr.get(i)?.clusterData?.dir)a=Kr.get(i).clusterData.dir,sA.warn("Fixing dir",Kr.get(i).clusterData.dir,a);let n=new ji({multigraph:!0,compound:!0}).setGraph({rankdir:a,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});WtA(i,A,n,i);let o=A.node(i)||{};A.setNode(i,{...o,clusterNode:!0,id:i,clusterData:Kr.get(i).clusterData,label:Kr.get(i).label,graph:n}),sA.debug("Old graph after copy",EC(A))}else sA.warn("Cluster ** ",i," **not meeting the criteria !externalConnections:",!Kr.get(i).externalConnections," no parent: ",!A.parent(i)," children ",A.children(i)&&A.children(i).length>0,A.children("D"),e),sA.debug(Kr);t=A.nodes(),sA.warn("New list of nodes",t);for(let i of t){let u=A.node(i);if(sA.warn(" Now next level",i,u),u?.clusterNode)ONA(u.graph,e+1)}},"extractor"),PNA=y((A,e)=>{if(e.length===0)return[];let t=Object.assign([],e);return e.forEach((r)=>{let i=A.children(r),u=PNA(A,i);t=[...t,...u]}),t},"sorter"),_NA=y((A)=>PNA(A,A.children()),"sortNodesByHierarchy"),WNA=y((A,e,t)=>{let r=A.parent(e);while(r&&r!==t){let i=Kr.get(r);if(i&&!i.externalConnections)return!0;r=A.parent(r)}return!1},"isNodeInExtractableCluster"),Kdt=y((A,e,t)=>{let r=A.children(e)??[];for(let i of r){if(i===t||xf(i,t))continue;let u=Sf(i,A,e);if(!u)continue;if(!WNA(A,u,e))return u}return null},"findSafeAnchorNode")});class ztA{constructor(){var A={};A._next=A._prev=A,this._sentinel=A}dequeue(){var A=this._sentinel,e=A._prev;if(e!==A)return qNA(e),e}enqueue(A){var e=this._sentinel;if(A._prev&&A._next)qNA(A);A._next=e._next,e._next._prev=A,e._next=A,A._prev=e}toString(){var A=[],e=this._sentinel,t=e._prev;while(t!==e)A.push(JSON.stringify(t,Jdt)),t=t._prev;return"["+A.join(", ")+"]"}}function qNA(A){A._prev._next=A._next,A._next._prev=A._prev,delete A._next,delete A._prev}function Jdt(A,e){if(A!=="_next"&&A!=="_prev")return e}var zNA=()=>{};function ZNA(A,e){if(A.nodeCount()<=1)return[];var t=_dt(A,e||Odt),r=Pdt(t.graph,t.buckets,t.zeroIdx);return Xg(Vi(r,function(i){return A.outEdges(i.v,i.w)}))}function Pdt(A,e,t){var r=[],i=e[e.length-1],u=e[0],a;while(A.nodeCount()){while(a=u.dequeue())ZtA(A,e,t,a);while(a=i.dequeue())ZtA(A,e,t,a);if(A.nodeCount()){for(var n=e.length-2;n>0;--n)if(a=e[n].dequeue(),a){r=r.concat(ZtA(A,e,t,a,!0));break}}}return r}function ZtA(A,e,t,r,i){var u=i?[]:void 0;return ve(A.inEdges(r.v),function(a){var n=A.edge(a),o=A.node(a.v);if(i)u.push({v:a.v,w:a.w});o.out-=n,VtA(e,t,o)}),ve(A.outEdges(r.v),function(a){var n=A.edge(a),o=a.w,s=A.node(o);s.in-=n,VtA(e,t,s)}),A.removeNode(r.v),u}function _dt(A,e){var t=new ji,r=0,i=0;ve(A.nodes(),function(n){t.setNode(n,{v:n,in:0,out:0})}),ve(A.edges(),function(n){var o=t.edge(n.v,n.w)||0,s=e(n),l=o+s;t.setEdge(n.v,n.w,l),i=Math.max(i,t.node(n.v).out+=s),r=Math.max(r,t.node(n.w).in+=s)});var u=$g(i+r+3).map(function(){return new ztA}),a=r+1;return ve(t.nodes(),function(n){VtA(u,a,t.node(n))}),{graph:t,buckets:u,zeroIdx:a}}function VtA(A,e,t){if(!t.out)A[0].enqueue(t);else if(!t.in)A[A.length-1].enqueue(t);else A[t.out-t.in+e].enqueue(t)}var Odt;var VNA=_(()=>{Bu();ng();zNA();Odt=ol(1)});function jNA(A){var e=A.graph().acyclicer==="greedy"?ZNA(A,t(A)):Wdt(A);ve(e,function(r){var i=A.edge(r);A.removeEdge(r),i.forwardName=r.name,i.reversed=!0,A.setEdge(r.w,r.v,i,kf("rev"))});function t(r){return function(i){return r.edge(i).weight}}}function Wdt(A){var e=[],t={},r={};function i(u){if(Object.prototype.hasOwnProperty.call(r,u))return;r[u]=!0,t[u]=!0,ve(A.outEdges(u),function(a){if(Object.prototype.hasOwnProperty.call(t,a.w))e.push(a);else i(a.w)}),delete t[u]}return ve(A.nodes(),i),e}function XNA(A){ve(A.edges(),function(e){var t=A.edge(e);if(t.reversed){A.removeEdge(e);var r=t.forwardName;delete t.reversed,delete t.forwardName,A.setEdge(e.w,e.v,t,r)}})}var jtA=_(()=>{Bu();VNA()});function cE(A,e,t,r){var i;do i=kf(r);while(A.hasNode(i));return t.dummy=e,A.setNode(i,t),i}function AGA(A){var e=new ji().setGraph(A.graph());return ve(A.nodes(),function(t){e.setNode(t,A.node(t))}),ve(A.edges(),function(t){var r=e.edge(t.v,t.w)||{weight:0,minlen:1},i=A.edge(t);e.setEdge(t.v,t.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})}),e}function kM(A){var e=new ji({multigraph:A.isMultigraph()}).setGraph(A.graph());return ve(A.nodes(),function(t){if(!A.children(t).length)e.setNode(t,A.node(t))}),ve(A.edges(),function(t){e.setEdge(t,A.edge(t))}),e}function XtA(A,e){var{x:t,y:r}=A,i=e.x-t,u=e.y-r,a=A.width/2,n=A.height/2;if(!i&&!u)throw Error("Not possible to find intersection inside of the rectangle");var o,s;if(Math.abs(u)*a>Math.abs(i)*n){if(u<0)n=-n;o=n*i/u,s=n}else{if(i<0)a=-a;o=a,s=a*u/i}return{x:t+o,y:r+s}}function VQ(A){var e=Vi($g(ArA(A)+1),function(){return[]});return ve(A.nodes(),function(t){var r=A.node(t),i=r.rank;if(!bu(i))e[i][r.order]=t}),e}function eGA(A){var e=pI(Vi(A.nodes(),function(t){return A.node(t).rank}));ve(A.nodes(),function(t){var r=A.node(t);if(ak(r,"rank"))r.rank-=e})}function tGA(A){var e=pI(Vi(A.nodes(),function(u){return A.node(u).rank})),t=[];ve(A.nodes(),function(u){var a=A.node(u).rank-e;if(!t[a])t[a]=[];t[a].push(u)});var r=0,i=A.graph().nodeRankFactor;ve(t,function(u,a){if(bu(u)&&a%i!==0)--r;else if(r)ve(u,function(n){A.node(n).rank+=r})})}function $tA(A,e,t,r){var i={width:0,height:0};if(arguments.length>=4)i.rank=t,i.order=r;return cE(A,"border",i,e)}function ArA(A){return ll(Vi(A.nodes(),function(e){var t=A.node(e).rank;if(!bu(t))return t}))}function rGA(A,e){var t={lhs:[],rhs:[]};return ve(A,function(r){if(e(r))t.lhs.push(r);else t.rhs.push(r)}),t}function iGA(A,e){var t=hM();try{return e()}finally{console.log(A+" time: "+(hM()-t)+"ms")}}function uGA(A,e){return e()}var CE=_(()=>{Bu();ng()});function nGA(A){function e(t){var r=A.children(t),i=A.node(t);if(r.length)ve(r,e);if(Object.prototype.hasOwnProperty.call(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(var u=i.minRank,a=i.maxRank+1;u<a;++u)aGA(A,"borderLeft","_bl",t,i,u),aGA(A,"borderRight","_br",t,i,u)}}ve(A.children(),e)}function aGA(A,e,t,r,i,u){var a={width:0,height:0,rank:u,borderType:e},n=i[e][u-1],o=cE(A,"border",a,t);if(i[e][u]=o,A.setParent(o,r),n)A.setEdge(n,o,{weight:1})}var oGA=_(()=>{Bu();CE()});function lGA(A){var e=A.graph().rankdir.toLowerCase();if(e==="lr"||e==="rl")cGA(A)}function gGA(A){var e=A.graph().rankdir.toLowerCase();if(e==="bt"||e==="rl")qdt(A);if(e==="lr"||e==="rl")zdt(A),cGA(A)}function cGA(A){ve(A.nodes(),function(e){sGA(A.node(e))}),ve(A.edges(),function(e){sGA(A.edge(e))})}function sGA(A){var e=A.width;A.width=A.height,A.height=e}function qdt(A){ve(A.nodes(),function(e){erA(A.node(e))}),ve(A.edges(),function(e){var t=A.edge(e);if(ve(t.points,erA),Object.prototype.hasOwnProperty.call(t,"y"))erA(t)})}function erA(A){A.y=-A.y}function zdt(A){ve(A.nodes(),function(e){trA(A.node(e))}),ve(A.edges(),function(e){var t=A.edge(e);if(ve(t.points,trA),Object.prototype.hasOwnProperty.call(t,"x"))trA(t)})}function trA(A){var e=A.x;A.x=A.y,A.y=e}var CGA=_(()=>{Bu()});function BGA(A){A.graph().dummyChains=[],ve(A.edges(),function(e){Vdt(A,e)})}function Vdt(A,e){var t=e.v,r=A.node(t).rank,i=e.w,u=A.node(i).rank,a=e.name,n=A.edge(e),o=n.labelRank;if(u===r+1)return;A.removeEdge(e);var s=void 0,l,g;for(g=0,++r;r<u;++g,++r){if(n.points=[],s={width:0,height:0,edgeLabel:n,edgeObj:e,rank:r},l=cE(A,"edge",s,"_d"),r===o)s.width=n.width,s.height=n.height,s.dummy="edge-label",s.labelpos=n.labelpos;if(A.setEdge(t,l,{weight:n.weight},a),g===0)A.graph().dummyChains.push(l);t=l}A.setEdge(t,i,{weight:n.weight},a)}function EGA(A){ve(A.graph().dummyChains,function(e){var t=A.node(e),r=t.edgeLabel,i;A.setEdge(t.edgeObj,r);while(t.dummy){if(i=A.successors(e)[0],A.removeNode(e),r.points.push({x:t.x,y:t.y}),t.dummy==="edge-label")r.x=t.x,r.y=t.y,r.width=t.width,r.height=t.height;e=i,t=A.node(e)}})}var rrA=_(()=>{Bu();CE()});function sk(A){var e={};function t(r){var i=A.node(r);if(Object.prototype.hasOwnProperty.call(e,r))return i.rank;e[r]=!0;var u=pI(Vi(A.outEdges(r),function(a){return t(a.w)-A.edge(a).minlen}));if(u===Number.POSITIVE_INFINITY||u===void 0||u===null)u=0;return i.rank=u}ve(A.sources(),t)}function Lf(A,e){return A.node(e.w).rank-A.node(e.v).rank-A.edge(e).minlen}var FM=_(()=>{Bu()});function xM(A){var e=new ji({directed:!1}),t=A.nodes()[0],r=A.nodeCount();e.setNode(t,{});var i,u;while(jdt(e,A)<r)i=Xdt(e,A),u=e.hasNode(i.v)?Lf(A,i):-Lf(A,i),$dt(e,A,u);return e}function jdt(A,e){function t(r){ve(e.nodeEdges(r),function(i){var u=i.v,a=r===u?i.w:u;if(!A.hasNode(a)&&!Lf(e,i))A.setNode(a,{}),A.setEdge(r,a,{}),t(a)})}return ve(A.nodes(),t),A.nodeCount()}function Xdt(A,e){return bf(e.edges(),function(t){if(A.hasNode(t.v)!==A.hasNode(t.w))return Lf(e,t)})}function $dt(A,e,t){ve(A.nodes(),function(r){e.node(r).rank+=t})}var irA=_(()=>{Bu();ng();FM()});var IGA=()=>{};var urA=()=>{};var Hti;var arA=_(()=>{Bu();urA();Hti=ol(1)});var hGA=_(()=>{arA()});var nrA=()=>{};var QGA=_(()=>{nrA()});var qti;var pGA=_(()=>{Bu();qti=ol(1)});function orA(A){var e={},t={},r=[];function i(u){if(Object.prototype.hasOwnProperty.call(t,u))throw new lk;if(!Object.prototype.hasOwnProperty.call(e,u))t[u]=!0,e[u]=!0,ve(A.predecessors(u),i),delete t[u],r.push(u)}if(ve(A.sinks(),i),JtA(e)!==A.nodeCount())throw new lk;return r}function lk(){}var srA=_(()=>{Bu();orA.CycleException=lk;lk.prototype=Error()});var fGA=_(()=>{srA()});function SM(A,e,t){if(!ri(e))e=[e];var r=(A.isDirected()?A.successors:A.neighbors).bind(A),i=[],u={};return ve(e,function(a){if(!A.hasNode(a))throw Error("Graph does not have node: "+a);mGA(A,a,t==="post",u,r,i)}),i}function mGA(A,e,t,r,i,u){if(!Object.prototype.hasOwnProperty.call(r,e)){if(r[e]=!0,!t)u.push(e);if(ve(i(e),function(a){mGA(A,a,t,r,i,u)}),t)u.push(e)}}var lrA=_(()=>{Bu()});function grA(A,e){return SM(A,e,"post")}var DGA=_(()=>{lrA()});function crA(A,e){return SM(A,e,"pre")}var yGA=_(()=>{lrA()});var wGA=_(()=>{urA();bM()});var bGA=_(()=>{IGA();arA();hGA();QGA();pGA();fGA();DGA();yGA();wGA();nrA();srA()});function XQ(A){A=AGA(A),sk(A);var e=xM(A);BrA(e),CrA(e,A);var t,r;while(t=xGA(e))r=SGA(e,A,t),LGA(e,A,t,r)}function CrA(A,e){var t=grA(A,A.nodes());t=t.slice(0,t.length-1),ve(t,function(r){iIt(A,e,r)})}function iIt(A,e,t){var r=A.node(t),i=r.parent;A.edge(t,i).cutvalue=kGA(A,e,t)}function kGA(A,e,t){var r=A.node(t),i=r.parent,u=!0,a=e.edge(t,i),n=0;if(!a)u=!1,a=e.edge(i,t);return n=a.weight,ve(e.nodeEdges(t),function(o){var s=o.v===t,l=s?o.w:o.v;if(l!==i){var g=s===u,C=e.edge(o).weight;if(n+=g?C:-C,aIt(A,t,l)){var B=A.edge(t,l).cutvalue;n+=g?-B:B}}}),n}function BrA(A,e){if(arguments.length<2)e=A.nodes()[0];FGA(A,{},1,e)}function FGA(A,e,t,r,i){var u=t,a=A.node(r);if(e[r]=!0,ve(A.neighbors(r),function(n){if(!Object.prototype.hasOwnProperty.call(e,n))t=FGA(A,e,t,n,r)}),a.low=u,a.lim=t++,i)a.parent=i;else delete a.parent;return t}function xGA(A){return Fy(A.edges(),function(e){return A.edge(e).cutvalue<0})}function SGA(A,e,t){var{v:r,w:i}=t;if(!e.hasEdge(r,i))r=t.w,i=t.v;var u=A.node(r),a=A.node(i),n=u,o=!1;if(u.lim>a.lim)n=a,o=!0;var s=Es(e.edges(),function(l){return o===vGA(A,A.node(l.v),n)&&o!==vGA(A,A.node(l.w),n)});return bf(s,function(l){return Lf(e,l)})}function LGA(A,e,t,r){var{v:i,w:u}=t;A.removeEdge(i,u),A.setEdge(r.v,r.w,{}),BrA(A),CrA(A,e),uIt(A,e)}function uIt(A,e){var t=Fy(A.nodes(),function(i){return!e.node(i).parent}),r=crA(A,t);r=r.slice(1),ve(r,function(i){var u=A.node(i).parent,a=e.edge(i,u),n=!1;if(!a)a=e.edge(u,i),n=!0;e.node(i).rank=e.node(u).rank+(n?a.minlen:-a.minlen)})}function aIt(A,e,t){return A.hasEdge(e,t)}function vGA(A,e,t){return t.low<=e.lim&&e.lim<=t.lim}var RGA=_(()=>{Bu();bGA();CE();irA();FM();XQ.initLowLimValues=BrA;XQ.initCutValues=CrA;XQ.calcCutValue=kGA;XQ.leaveEdge=xGA;XQ.enterEdge=SGA;XQ.exchangeEdges=LGA});function ErA(A){switch(A.graph().ranker){case"network-simplex":NGA(A);break;case"tight-tree":oIt(A);break;case"longest-path":nIt(A);break;default:NGA(A)}}function oIt(A){sk(A),xM(A)}function NGA(A){XQ(A)}var nIt;var drA=_(()=>{irA();RGA();FM();nIt=sk});function GGA(A){var e=cE(A,"root",{},"_root"),t=sIt(A),r=ll(ag(t))-1,i=2*r+1;A.graph().nestingRoot=e,ve(A.edges(),function(a){A.edge(a).minlen*=i});var u=lIt(A)+1;ve(A.children(),function(a){UGA(A,e,i,u,r,t,a)}),A.graph().nodeRankFactor=i}function UGA(A,e,t,r,i,u,a){var n=A.children(a);if(!n.length){if(a!==e)A.setEdge(e,a,{weight:0,minlen:t});return}var o=$tA(A,"_bt"),s=$tA(A,"_bb"),l=A.node(a);if(A.setParent(o,a),l.borderTop=o,A.setParent(s,a),l.borderBottom=s,ve(n,function(g){UGA(A,e,t,r,i,u,g);var C=A.node(g),B=C.borderTop?C.borderTop:g,E=C.borderBottom?C.borderBottom:g,d=C.borderTop?r:2*r,I=B!==E?1:i-u[a]+1;A.setEdge(o,B,{weight:d,minlen:I,nestingEdge:!0}),A.setEdge(E,s,{weight:d,minlen:I,nestingEdge:!0})}),!A.parent(a))A.setEdge(e,o,{weight:0,minlen:i+u[a]})}function sIt(A){var e={};function t(r,i){var u=A.children(r);if(u&&u.length)ve(u,function(a){t(a,i+1)});e[r]=i}return ve(A.children(),function(r){t(r,1)}),e}function lIt(A){return lE(A.edges(),function(e,t){return e+A.edge(t).weight},0)}function MGA(A){var e=A.graph();A.removeNode(e.nestingRoot),delete e.nestingRoot,ve(A.edges(),function(t){var r=A.edge(t);if(r.nestingEdge)A.removeEdge(t)})}var TGA=_(()=>{Bu();CE()});function YGA(A,e,t){var r={},i;ve(t,function(u){var a=A.parent(u),n,o;while(a){if(n=A.parent(a),n)o=r[n],r[n]=a;else o=i,i=a;if(o&&o!==a){e.setEdge(o,a);return}a=n}})}var HGA=_(()=>{Bu()});function KGA(A,e,t){var r=cIt(A),i=new ji({compound:!0}).setGraph({root:r}).setDefaultNodeLabel(function(u){return A.node(u)});return ve(A.nodes(),function(u){var a=A.node(u),n=A.parent(u);if(a.rank===e||a.minRank<=e&&e<=a.maxRank){if(i.setNode(u),i.setParent(u,n||r),ve(A[t](u),function(o){var s=o.v===u?o.w:o.v,l=i.edge(s,u),g=!bu(l)?l.weight:0;i.setEdge(s,u,{weight:A.edge(o).weight+g})}),Object.prototype.hasOwnProperty.call(a,"minRank"))i.setNode(u,{borderLeft:a.borderLeft[e],borderRight:a.borderRight[e]})}}),i}function cIt(A){var e;while(A.hasNode(e=kf("_root")));return e}var JGA=_(()=>{Bu();ng()});function OGA(A,e){var t=0;for(var r=1;r<e.length;++r)t+=CIt(A,e[r-1],e[r]);return t}function CIt(A,e,t){var r=wM(t,Vi(t,function(s,l){return l})),i=Xg(Vi(e,function(s){return gE(Vi(A.outEdges(s),function(l){return{pos:r[l.w],weight:A.edge(l).weight}}),"pos")})),u=1;while(u<t.length)u<<=1;var a=2*u-1;u-=1;var n=Vi(Array(a),function(){return 0}),o=0;return ve(i.forEach(function(s){var l=s.pos+u;n[l]+=s.weight;var g=0;while(l>0){if(l%2)g+=n[l+1];l=l-1>>1,n[l]+=s.weight}o+=s.weight*g})),o}var PGA=_(()=>{Bu()});function _GA(A){var e={},t=Es(A.nodes(),function(n){return!A.children(n).length}),r=ll(Vi(t,function(n){return A.node(n).rank})),i=Vi($g(r+1),function(){return[]});function u(n){if(ak(e,n))return;e[n]=!0;var o=A.node(n);i[o.rank].push(n),ve(A.successors(n),u)}var a=gE(t,function(n){return A.node(n).rank});return ve(a,u),i}var WGA=_(()=>{Bu()});function qGA(A,e){return Vi(e,function(t){var r=A.inEdges(t);if(!r.length)return{v:t};else{var i=lE(r,function(u,a){var n=A.edge(a),o=A.node(a.v);return{sum:u.sum+n.weight*o.order,weight:u.weight+n.weight}},{sum:0,weight:0});return{v:t,barycenter:i.sum/i.weight,weight:i.weight}}})}var zGA=_(()=>{Bu()});function ZGA(A,e){var t={};ve(A,function(i,u){var a=t[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:u};if(!bu(i.barycenter))a.barycenter=i.barycenter,a.weight=i.weight}),ve(e.edges(),function(i){var u=t[i.v],a=t[i.w];if(!bu(u)&&!bu(a))a.indegree++,u.out.push(t[i.w])});var r=Es(t,function(i){return!i.indegree});return BIt(r)}function BIt(A){var e=[];function t(u){return function(a){if(a.merged)return;if(bu(a.barycenter)||bu(u.barycenter)||a.barycenter>=u.barycenter)EIt(u,a)}}function r(u){return function(a){if(a.in.push(u),--a.indegree===0)A.push(a)}}while(A.length){var i=A.pop();e.push(i),ve(i.in.reverse(),t(i)),ve(i.out,r(i))}return Vi(Es(e,function(u){return!u.merged}),function(u){return vf(u,["vs","i","barycenter","weight"])})}function EIt(A,e){var t=0,r=0;if(A.weight)t+=A.barycenter*A.weight,r+=A.weight;if(e.weight)t+=e.barycenter*e.weight,r+=e.weight;A.vs=e.vs.concat(A.vs),A.barycenter=t/r,A.weight=r,A.i=Math.min(e.i,A.i),e.merged=!0}var VGA=_(()=>{Bu()});function XGA(A,e){var t=rGA(A,function(l){return Object.prototype.hasOwnProperty.call(l,"barycenter")}),r=t.lhs,i=gE(t.rhs,function(l){return-l.i}),u=[],a=0,n=0,o=0;r.sort(dIt(!!e)),o=jGA(u,i,o),ve(r,function(l){o+=l.vs.length,u.push(l.vs),a+=l.barycenter*l.weight,n+=l.weight,o=jGA(u,i,o)});var s={vs:Xg(u)};if(n)s.barycenter=a/n,s.weight=n;return s}function jGA(A,e,t){var r;while(e.length&&(r=zQ(e)).i<=t)e.pop(),A.push(r.vs),t++;return t}function dIt(A){return function(e,t){if(e.barycenter<t.barycenter)return-1;else if(e.barycenter>t.barycenter)return 1;return!A?e.i-t.i:t.i-e.i}}var $GA=_(()=>{Bu();CE()});function IrA(A,e,t,r){var i=A.children(e),u=A.node(e),a=u?u.borderLeft:void 0,n=u?u.borderRight:void 0,o={};if(a)i=Es(i,function(E){return E!==a&&E!==n});var s=qGA(A,i);ve(s,function(E){if(A.children(E.v).length){var d=IrA(A,E.v,t,r);if(o[E.v]=d,Object.prototype.hasOwnProperty.call(d,"barycenter"))hIt(E,d)}});var l=ZGA(s,t);IIt(l,o);var g=XGA(l,r);if(a){if(g.vs=Xg([a,g.vs,n]),A.predecessors(a).length){var C=A.node(A.predecessors(a)[0]),B=A.node(A.predecessors(n)[0]);if(!Object.prototype.hasOwnProperty.call(g,"barycenter"))g.barycenter=0,g.weight=0;g.barycenter=(g.barycenter*g.weight+C.order+B.order)/(g.weight+2),g.weight+=2}}return g}function IIt(A,e){ve(A,function(t){t.vs=Xg(t.vs.map(function(r){if(e[r])return e[r].vs;return r}))})}function hIt(A,e){if(!bu(A.barycenter))A.barycenter=(A.barycenter*A.weight+e.barycenter*e.weight)/(A.weight+e.weight),A.weight+=e.weight;else A.barycenter=e.barycenter,A.weight=e.weight}var AUA=_(()=>{Bu();zGA();VGA();$GA()});function rUA(A){var e=ArA(A),t=eUA(A,$g(1,e+1),"inEdges"),r=eUA(A,$g(e-1,-1,-1),"outEdges"),i=_GA(A);tUA(A,i);var u=Number.POSITIVE_INFINITY,a;for(var n=0,o=0;o<4;++n,++o){QIt(n%2?t:r,n%4>=2),i=VQ(A);var s=OGA(A,i);if(s<u)o=0,a=ptA(i),u=s}tUA(A,a)}function eUA(A,e,t){return Vi(e,function(r){return KGA(A,r,t)})}function QIt(A,e){var t=new ji;ve(A,function(r){var i=r.graph().root,u=IrA(r,i,t,e);ve(u.vs,function(a,n){r.node(a).order=n}),YGA(r,t,u.vs)})}function tUA(A,e){ve(e,function(t){ve(t,function(r,i){A.node(r).order=i})})}var iUA=_(()=>{Bu();ng();CE();HGA();JGA();PGA();WGA();AUA()});function uUA(A){var e=fIt(A);ve(A.graph().dummyChains,function(t){var r=A.node(t),i=r.edgeObj,u=pIt(A,e,i.v,i.w),{path:a,lca:n}=u,o=0,s=a[o],l=!0;while(t!==i.w){if(r=A.node(t),l){while((s=a[o])!==n&&A.node(s).maxRank<r.rank)o++;if(s===n)l=!1}if(!l){while(o<a.length-1&&A.node(s=a[o+1]).minRank<=r.rank)o++;s=a[o]}A.setParent(t,s),t=A.successors(t)[0]}})}function pIt(A,e,t,r){var i=[],u=[],a=Math.min(e[t].low,e[r].low),n=Math.max(e[t].lim,e[r].lim),o,s;o=t;do o=A.parent(o),i.push(o);while(o&&(e[o].low>a||n>e[o].lim));s=o,o=r;while((o=A.parent(o))!==s)u.push(o);return{path:i.concat(u.reverse()),lca:s}}function fIt(A){var e={},t=0;function r(i){var u=t;ve(A.children(i),r),e[i]={low:u,lim:t++}}return ve(A.children(),r),e}var aUA=_(()=>{Bu()});function mIt(A,e){var t={};function r(i,u){var a=0,n=0,o=i.length,s=zQ(u);return ve(u,function(l,g){var C=yIt(A,l),B=C?A.node(C).order:o;if(C||l===s)ve(u.slice(n,g+1),function(E){ve(A.predecessors(E),function(d){var I=A.node(d),h=I.order;if((h<a||B<h)&&!(I.dummy&&A.node(E).dummy))nUA(t,d,E)})}),n=g+1,a=B}),u}return lE(e,r),t}function DIt(A,e){var t={};function r(u,a,n,o,s){var l;ve($g(a,n),function(g){if(l=u[g],A.node(l).dummy)ve(A.predecessors(l),function(C){var B=A.node(C);if(B.dummy&&(B.order<o||B.order>s))nUA(t,C,l)})})}function i(u,a){var n=-1,o,s=0;return ve(a,function(l,g){if(A.node(l).dummy==="border"){var C=A.predecessors(l);if(C.length)o=A.node(C[0]).order,r(a,s,g,n,o),s=g,n=o}r(a,s,a.length,o,u.length)}),a}return lE(e,i),t}function yIt(A,e){if(A.node(e).dummy)return Fy(A.predecessors(e),function(t){return A.node(t).dummy})}function nUA(A,e,t){if(e>t){var r=e;e=t,t=r}if(!Object.prototype.hasOwnProperty.call(A,e))Object.defineProperty(A,e,{enumerable:!0,configurable:!0,value:{},writable:!0});var i=A[e];Object.defineProperty(i,t,{enumerable:!0,configurable:!0,value:!0,writable:!0})}function wIt(A,e,t){if(e>t){var r=e;e=t,t=r}return!!A[e]&&Object.prototype.hasOwnProperty.call(A[e],t)}function bIt(A,e,t,r){var i={},u={},a={};return ve(e,function(n){ve(n,function(o,s){i[o]=o,u[o]=o,a[o]=s})}),ve(e,function(n){var o=-1;ve(n,function(s){var l=r(s);if(l.length){l=gE(l,function(d){return a[d]});var g=(l.length-1)/2;for(var C=Math.floor(g),B=Math.ceil(g);C<=B;++C){var E=l[C];if(u[s]===s&&o<a[E]&&!wIt(t,s,E))u[E]=s,u[s]=i[s]=i[E],o=a[E]}}})}),{root:i,align:u}}function vIt(A,e,t,r,i){var u={},a=kIt(A,e,t,i),n=i?"borderLeft":"borderRight";function o(g,C){var B=a.nodes(),E=B.pop(),d={};while(E){if(d[E])g(E);else d[E]=!0,B.push(E),B=B.concat(C(E));E=B.pop()}}function s(g){u[g]=a.inEdges(g).reduce(function(C,B){return Math.max(C,u[B.v]+a.edge(B))},0)}function l(g){var C=a.outEdges(g).reduce(function(E,d){return Math.min(E,u[d.w]-a.edge(d))},Number.POSITIVE_INFINITY),B=A.node(g);if(C!==Number.POSITIVE_INFINITY&&B.borderType!==n)u[g]=Math.max(u[g],C)}return o(s,a.predecessors.bind(a)),o(l,a.successors.bind(a)),ve(r,function(g){u[g]=u[t[g]]}),u}function kIt(A,e,t,r){var i=new ji,u=A.graph(),a=LIt(u.nodesep,u.edgesep,r);return ve(e,function(n){var o;ve(n,function(s){var l=t[s];if(i.setNode(l),o){var g=t[o],C=i.edge(g,l);i.setEdge(g,l,Math.max(a(A,s,o),C||0))}o=s})}),i}function FIt(A,e){return bf(ag(e),function(t){var{NEGATIVE_INFINITY:r,POSITIVE_INFINITY:i}=Number;return MtA(t,function(u,a){var n=RIt(A,a)/2;r=Math.max(u+n,r),i=Math.min(u-n,i)}),r-i})}function xIt(A,e){var t=ag(e),r=pI(t),i=ll(t);ve(["u","d"],function(u){ve(["l","r"],function(a){var n=u+a,o=A[n],s;if(o===e)return;var l=ag(o);if(s=a==="l"?r-pI(l):i-ll(l),s)A[n]=wf(o,function(g){return g+s})})})}function SIt(A,e){return wf(A.ul,function(t,r){if(e)return A[e.toLowerCase()][r];else{var i=gE(Vi(A,r));return(i[1]+i[2])/2}})}function oUA(A){var e=VQ(A),t=Sy(mIt(A,e),DIt(A,e)),r={},i;ve(["u","d"],function(a){i=a==="u"?e:ag(e).reverse(),ve(["l","r"],function(n){if(n==="r")i=Vi(i,function(g){return ag(g).reverse()});var o=(a==="u"?A.predecessors:A.successors).bind(A),s=bIt(A,i,t,o),l=vIt(A,i,s.root,s.align,n==="r");if(n==="r")l=wf(l,function(g){return-g});r[a+n]=l})});var u=FIt(A,r);return xIt(r,u),SIt(r,A.graph().align)}function LIt(A,e,t){return function(r,i,u){var a=r.node(i),n=r.node(u),o=0,s;if(o+=a.width/2,Object.prototype.hasOwnProperty.call(a,"labelpos"))switch(a.labelpos.toLowerCase()){case"l":s=-a.width/2;break;case"r":s=a.width/2;break}if(s)o+=t?s:-s;if(s=0,o+=(a.dummy?e:A)/2,o+=(n.dummy?e:A)/2,o+=n.width/2,Object.prototype.hasOwnProperty.call(n,"labelpos"))switch(n.labelpos.toLowerCase()){case"l":s=n.width/2;break;case"r":s=-n.width/2;break}if(s)o+=t?s:-s;return s=0,o}}function RIt(A,e){return A.node(e).width}var sUA=_(()=>{Bu();ng();CE()});function lUA(A){A=kM(A),NIt(A),TtA(oUA(A),function(e,t){A.node(t).x=e})}function NIt(A){var e=VQ(A),t=A.graph().ranksep,r=0;ve(e,function(i){var u=ll(Vi(i,function(a){return A.node(a).height}));ve(i,function(a){A.node(a).y=r+u/2}),r+=u+t})}var gUA=_(()=>{Bu();CE();sUA()});function gk(A,e){var t=e&&e.debugTiming?iGA:uGA;t("layout",()=>{var r=t(" buildLayoutGraph",()=>_It(A));t(" runLayout",()=>GIt(r,t)),t(" updateInputGraph",()=>UIt(A,r))})}function GIt(A,e){e(" makeSpaceForEdgeLabels",()=>WIt(A)),e(" removeSelfEdges",()=>eht(A)),e(" acyclic",()=>jNA(A)),e(" nestingGraph.run",()=>GGA(A)),e(" rank",()=>ErA(kM(A))),e(" injectEdgeLabelProxies",()=>qIt(A)),e(" removeEmptyRanks",()=>tGA(A)),e(" nestingGraph.cleanup",()=>MGA(A)),e(" normalizeRanks",()=>eGA(A)),e(" assignRankMinMax",()=>zIt(A)),e(" removeEdgeLabelProxies",()=>ZIt(A)),e(" normalize.run",()=>BGA(A)),e(" parentDummyChains",()=>uUA(A)),e(" addBorderSegments",()=>nGA(A)),e(" order",()=>rUA(A)),e(" insertSelfEdges",()=>tht(A)),e(" adjustCoordinateSystem",()=>lGA(A)),e(" position",()=>lUA(A)),e(" positionSelfEdges",()=>rht(A)),e(" removeBorderNodes",()=>Aht(A)),e(" normalize.undo",()=>EGA(A)),e(" fixupEdgeLabelCoords",()=>XIt(A)),e(" undoCoordinateSystem",()=>gGA(A)),e(" translateGraph",()=>VIt(A)),e(" assignNodeIntersects",()=>jIt(A)),e(" reversePoints",()=>$It(A)),e(" acyclic.undo",()=>XNA(A))}function UIt(A,e){ve(A.nodes(),function(t){var r=A.node(t),i=e.node(t);if(r){if(r.x=i.x,r.y=i.y,e.children(t).length)r.width=i.width,r.height=i.height}}),ve(A.edges(),function(t){var r=A.edge(t),i=e.edge(t);if(r.points=i.points,Object.prototype.hasOwnProperty.call(i,"x"))r.x=i.x,r.y=i.y}),A.graph().width=e.graph().width,A.graph().height=e.graph().height}function _It(A){var e=new ji({multigraph:!0,compound:!0}),t=QrA(A.graph());return e.setGraph(Sy({},TIt,hrA(t,MIt),vf(t,YIt))),ve(A.nodes(),function(r){var i=QrA(A.node(r));e.setNode(r,StA(hrA(i,HIt),KIt)),e.setParent(r,A.parent(r))}),ve(A.edges(),function(r){var i=QrA(A.edge(r));e.setEdge(r,Sy({},OIt,hrA(i,JIt),vf(i,PIt)))}),e}function WIt(A){var e=A.graph();e.ranksep/=2,ve(A.edges(),function(t){var r=A.edge(t);if(r.minlen*=2,r.labelpos.toLowerCase()!=="c")if(e.rankdir==="TB"||e.rankdir==="BT")r.width+=r.labeloffset;else r.height+=r.labeloffset})}function qIt(A){ve(A.edges(),function(e){var t=A.edge(e);if(t.width&&t.height){var r=A.node(e.v),i=A.node(e.w),u={rank:(i.rank-r.rank)/2+r.rank,e};cE(A,"edge-proxy",u,"_ep")}})}function zIt(A){var e=0;ve(A.nodes(),function(t){var r=A.node(t);if(r.borderTop)r.minRank=A.node(r.borderTop).rank,r.maxRank=A.node(r.borderBottom).rank,e=ll(e,r.maxRank)}),A.graph().maxRank=e}function ZIt(A){ve(A.nodes(),function(e){var t=A.node(e);if(t.dummy==="edge-proxy")A.edge(t.e).labelRank=t.rank,A.removeNode(e)})}function VIt(A){var e=Number.POSITIVE_INFINITY,t=0,r=Number.POSITIVE_INFINITY,i=0,u=A.graph(),a=u.marginx||0,n=u.marginy||0;function o(s){var{x:l,y:g,width:C,height:B}=s;e=Math.min(e,l-C/2),t=Math.max(t,l+C/2),r=Math.min(r,g-B/2),i=Math.max(i,g+B/2)}ve(A.nodes(),function(s){o(A.node(s))}),ve(A.edges(),function(s){var l=A.edge(s);if(Object.prototype.hasOwnProperty.call(l,"x"))o(l)}),e-=a,r-=n,ve(A.nodes(),function(s){var l=A.node(s);l.x-=e,l.y-=r}),ve(A.edges(),function(s){var l=A.edge(s);if(ve(l.points,function(g){g.x-=e,g.y-=r}),Object.prototype.hasOwnProperty.call(l,"x"))l.x-=e;if(Object.prototype.hasOwnProperty.call(l,"y"))l.y-=r}),u.width=t-e+a,u.height=i-r+n}function jIt(A){ve(A.edges(),function(e){var t=A.edge(e),r=A.node(e.v),i=A.node(e.w),u,a;if(!t.points)t.points=[],u=i,a=r;else u=t.points[0],a=t.points[t.points.length-1];t.points.unshift(XtA(r,u)),t.points.push(XtA(i,a))})}function XIt(A){ve(A.edges(),function(e){var t=A.edge(e);if(Object.prototype.hasOwnProperty.call(t,"x")){if(t.labelpos==="l"||t.labelpos==="r")t.width-=t.labeloffset;switch(t.labelpos){case"l":t.x-=t.width/2+t.labeloffset;break;case"r":t.x+=t.width/2+t.labeloffset;break}}})}function $It(A){ve(A.edges(),function(e){var t=A.edge(e);if(t.reversed)t.points.reverse()})}function Aht(A){ve(A.nodes(),function(e){if(A.children(e).length){var t=A.node(e),r=A.node(t.borderTop),i=A.node(t.borderBottom),u=A.node(zQ(t.borderLeft)),a=A.node(zQ(t.borderRight));t.width=Math.abs(a.x-u.x),t.height=Math.abs(i.y-r.y),t.x=u.x+t.width/2,t.y=r.y+t.height/2}}),ve(A.nodes(),function(e){if(A.node(e).dummy==="border")A.removeNode(e)})}function eht(A){ve(A.edges(),function(e){if(e.v===e.w){var t=A.node(e.v);if(!t.selfEdges)t.selfEdges=[];t.selfEdges.push({e,label:A.edge(e)}),A.removeEdge(e)}})}function tht(A){var e=VQ(A);ve(e,function(t){var r=0;ve(t,function(i,u){var a=A.node(i);a.order=u+r,ve(a.selfEdges,function(n){cE(A,"selfedge",{width:n.label.width,height:n.label.height,rank:a.rank,order:u+ ++r,e:n.e,label:n.label},"_se")}),delete a.selfEdges})})}function rht(A){ve(A.nodes(),function(e){var t=A.node(e);if(t.dummy==="selfedge"){var r=A.node(t.e.v),i=r.x+r.width/2,u=r.y,a=t.x-i,n=r.height/2;A.setEdge(t.e,t.label),A.removeNode(e),t.label.points=[{x:i+2*a/3,y:u-n},{x:i+5*a/6,y:u-n},{x:i+a,y:u},{x:i+5*a/6,y:u+n},{x:i+2*a/3,y:u+n}],t.label.x=t.x,t.label.y=t.y}})}function hrA(A,e){return wf(vf(A,e),Number)}function QrA(A){var e={};return ve(A,function(t,r){e[r.toLowerCase()]=t}),e}var MIt,TIt,YIt,HIt,KIt,JIt,OIt,PIt;var cUA=_(()=>{Bu();ng();oGA();CGA();jtA();rrA();drA();TGA();iUA();aUA();gUA();CE();MIt=["nodesep","edgesep","ranksep","marginx","marginy"],TIt={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},YIt=["acyclicer","ranker","rankdir","align"],HIt=["width","height"],KIt={width:0,height:0},JIt=["minlen","weight","width","height","labeloffset"],OIt={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},PIt=["labelpos"]});var prA=_(()=>{jtA();cUA();rrA();drA()});var IUA={};Dt(IUA,{getEdgesToRender:()=>EUA,render:()=>oht});var CUA,BUA,iht,uht,aht,nht,EUA,dUA,oht;var hUA=_(()=>{qtA();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt();prA();_tA();ng();CUA=y((A,e,t)=>Math.max(e,Math.min(t,A)),"clamp"),BUA=y((A="TB")=>{switch(A){case"BT":return"bottom";case"LR":return"right";case"RL":return"left";case"TB":default:return"top"}},"getDefaultSelfLoopSide"),iht=y((A)=>A==="flowchart"||A==="flowchart-v2"||A==="stateDiagram","shouldMergeSelfLoopSegments"),uht=y((A,e,t,r,i)=>{let u=[],a=new Set;if(t.forEach(({start:l,end:g})=>{if(l!==r)a.add(l);if(g!==r)a.add(g)}),a.forEach((l)=>{let g=A.node(l);if(typeof g?.x==="number"&&typeof g?.y==="number")u.push(g)}),u.length===0)t.forEach(({edge:l})=>{(l.points??[]).forEach((g)=>{if(typeof g?.x==="number"&&typeof g?.y==="number")u.push(g)})});if(u.length===0)return BUA(i);let n=u.reduce((l,g)=>({x:l.x+g.x/u.length,y:l.y+g.y/u.length}),{x:0,y:0}),o=n.x-e.x,s=n.y-e.y;if(Math.abs(o)>Math.abs(s))return o>0?"right":"left";if(Math.abs(s)>0)return s>0?"bottom":"top";return BUA(i)},"getSelfLoopSide"),aht=y((A,e="top",t=0,r=0)=>{let i=A.x,u=A.y-t,a=A.width/2,n=A.height/2,o=Math.max(36,Math.min(100,A.width*0.8)),s=CUA(Math.max(r,A.width*0.35),36,o),l=CUA(Math.min(A.width,A.height)*0.45,24,48);switch(e){case"bottom":{let g=u+n;return[{x:i-s/2,y:g},{x:i-s/2,y:g+l},{x:i+s/2,y:g+l},{x:i+s/2,y:g}]}case"right":{let g=i+a;return[{x:g,y:u-s/2},{x:g+l,y:u-s/2},{x:g+l,y:u+s/2},{x:g,y:u+s/2}]}case"left":{let g=i-a;return[{x:g,y:u-s/2},{x:g-l,y:u-s/2},{x:g-l,y:u+s/2},{x:g,y:u+s/2}]}case"top":default:{let g=u-n;return[{x:i-s/2,y:g},{x:i-s/2,y:g-l},{x:i+s/2,y:g-l},{x:i+s/2,y:g}]}}},"getSelfLoopPoints"),nht=y((A,e,t="top",r=0,i={})=>{let a=A.x,n=A.y-r,o=i.width??0,s=i.height??0;switch(t){case"bottom":return{x:a,y:Math.max(...e.map((l)=>l.y))+s/2+4};case"right":return{x:Math.max(...e.map((l)=>l.x))+o/2+4,y:n};case"left":return{x:Math.min(...e.map((l)=>l.x))-o/2-4,y:n};case"top":default:return{x:a,y:Math.min(...e.map((l)=>l.y))-s/2-4}}},"getSelfLoopLabelPosition"),EUA=y((A,e=0,{mergeSelfLoops:t=!0}={})=>{let r=new Map,i=[],u=A.graph()?.rankdir;return A.edges().forEach((a)=>{let n=A.edge(a);if(t&&n.selfLoop){let o=n.selfLoop.id;if(!r.has(o))r.set(o,[]);r.get(o).push({edge:n,start:a.v,end:a.w})}else i.push({edge:n,start:a.v,end:a.w})}),r.forEach((a)=>{if(a.length!==3){a.forEach((h)=>i.push(h));return}a.sort((h,Q)=>h.edge.selfLoop.order-Q.edge.selfLoop.order);let[n,o,s]=a,l=n.edge.originalEdge??o.edge.originalEdge??s.edge.originalEdge??o.edge,g=A.node(l.start);if(!g){a.forEach((h)=>i.push(h));return}let C={width:o.edge.width,height:o.edge.height},B=uht(A,g,a,l.start,u),E=aht(g,B,e,C.width??0),d=nht(g,E,B,e,C),I={...o.edge,...l,id:l.id,points:E,start:l.start,end:l.end,x:d.x,y:d.y,width:C.width,height:C.height,labelStyle:o.edge.labelStyle,fromCluster:n.edge.fromCluster??o.edge.fromCluster??s.edge.fromCluster,toCluster:n.edge.toCluster??o.edge.toCluster??s.edge.toCluster};delete I.selfLoop,delete I.originalEdge,i.push({edge:I,start:I.start,end:I.end})}),i},"getEdgesToRender"),dUA=y(async(A,e,t,r,i,u)=>{sA.warn("Graph in recursive render:XAX",EC(e),i);let a=e.graph().rankdir;sA.trace("Dir in recursive render - dir:",a);let n=A.insert("g").attr("class","root");if(!e.nodes())sA.info("No nodes found for",e);else sA.info("Recursive render XXX",e.nodes());if(e.edges().length>0)sA.info("Recursive edges",e.edge(e.edges()[0]));let o=n.insert("g").attr("class","clusters"),s=n.insert("g").attr("class","edgePaths"),l=n.insert("g").attr("class","edgeLabels"),g=n.insert("g").attr("class","nodes"),C=iht(t);await Promise.all(e.nodes().map(async function(Q){let p=e.node(Q);if(i!==void 0){let m=JSON.parse(JSON.stringify(i.clusterData));if(sA.trace(`Setting data for parent cluster XXX
Node.id = `,Q,`
data=`,m.height,`
Parent cluster`,i.height),e.setNode(i.id,m),!e.parent(Q))sA.trace("Setting parent",Q,i.id),e.setParent(Q,i.id,m)}if(sA.info("(Insert) Node XXX"+Q+": "+JSON.stringify(e.node(Q))),p?.clusterNode){sA.info("Cluster identified XBX",Q,p.width,e.node(Q));let{ranksep:m,nodesep:f}=e.graph();p.graph.setGraph({...p.graph.graph(),ranksep:m+25,nodesep:f});let D=await dUA(g,p.graph,t,r,e.node(Q),u),w=D.elem;_t(p,w),p.diff=D.diff||0,sA.info("New compound node after recursive render XAX",Q,"width",p.width,"height",p.height),JxA(w,p)}else if(e.children(Q).length>0)sA.trace("Cluster - the non recursive path XBX",Q,p.id,p,p.width,"Graph:",e),sA.trace(Sf(p.id,e)),Kr.set(p.id,{id:Sf(p.id,e),node:p});else sA.trace("Node - the non recursive path XAX",Q,g,e.node(Q),a),await BI(g,e.node(Q),{config:u,dir:a})})),await y(async()=>{let Q=e.edges().map(async function(p){let m=e.edge(p.v,p.w,p.name);if(sA.info("Edge "+p.v+" -> "+p.w+": "+JSON.stringify(p)),sA.info("Edge "+p.v+" -> "+p.w+": ",p," ",JSON.stringify(e.edge(p))),sA.info("Fix",Kr,"ids:",p.v,p.w,"Translating: ",Kr.get(p.v),Kr.get(p.w)),C&&m.selfLoop){if(m.selfLoop.order!==1)return;let f=m.id;m.id=m.selfLoop.id,await hf(l,m),m.id=f;return}await hf(l,m)});await Promise.all(Q)},"processEdges")(),sA.info("Graph before layout:",JSON.stringify(EC(e))),sA.info("############################################# XXX"),sA.info("### Layout ### XXX"),sA.info("############################################# XXX"),gk(e),sA.info("Graph after layout:",JSON.stringify(EC(e)));let E=0,{subGraphTitleTotalMargin:d}=lC(u);await Promise.all(_NA(e).map(async function(Q){let p=e.node(Q);if(sA.info("Position XBX => "+Q+": ("+p.x,","+p.y,") width: ",p.width," height: ",p.height),p?.clusterNode)p.y+=d,sA.info("A tainted cluster node XBX1",Q,p.id,p.width,p.height,p.x,p.y,e.parent(Q)),Kr.get(p.id).node=p,If(p);else if(e.children(Q).length>0){sA.info("A pure cluster node XBX1",Q,p.id,p.x,p.y,p.width,p.height,e.parent(Q)),p.height+=d,e.node(p.parentId);let m=p?.padding/2||0,f=p?.labelBBox?.height||0,D=f-m||0;sA.debug("OffsetY",D,"labelHeight",f,"halfPadding",m),await kQ(o,p),Kr.get(p.id).node=p}else{let m=e.node(p.parentId);p.y+=d/2,sA.info("A regular node XBX1 - using the padding",p.id,"parent",p.parentId,p.width,p.height,p.x,p.y,"offsetY",p.offsetY,"parent",m,m?.offsetY,p),If(p)}}));let I=d/2;return EUA(e,I,{mergeSelfLoops:C}).forEach(function({edge:Q,start:p,end:m}){sA.info("Edge "+p+" -> "+m+": "+JSON.stringify(Q),Q),Q.points.forEach((b)=>b.y+=I);let f=e.node(p),D=e.node(m),w=iy(s,Q,Kr,t,f,D,r);QU(Q,w)}),e.nodes().forEach(function(Q){let p=e.node(Q);if(sA.info(Q,p.type,p.diff),p.isGroup)E=p.diff}),sA.warn("Returning from recursive render XAX",n,E),{elem:n,diff:E}},"recursiveRender"),oht=y(async(A,e)=>{let t=new ji({multigraph:!0,compound:!0}).setGraph({rankdir:A.direction,nodesep:A.config?.nodeSpacing||A.config?.flowchart?.nodeSpacing||A.nodeSpacing,ranksep:A.config?.rankSpacing||A.config?.flowchart?.rankSpacing||A.rankSpacing,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),r=e.select("g");uy(r,A.markers,A.type,A.diagramId),dU(),hU(),BU(),vM(),A.nodes.forEach((u)=>{if(t.setNode(u.id,{...u}),u.parentId)t.setParent(u.id,u.parentId)}),sA.debug("Edges:",A.edges),A.edges.forEach((u)=>{if(u.start===u.end){let a=u.start,n=a+"---"+a+"---1",o=a+"---"+a+"---2",s=t.node(a);t.setNode(n,{domId:n,id:n,parentId:s.parentId,labelStyle:"",label:"",padding:0,shape:"labelRect",style:"",width:10,height:10}),t.setParent(n,s.parentId),t.setNode(o,{domId:o,id:o,parentId:s.parentId,labelStyle:"",padding:0,shape:"labelRect",label:"",style:"",width:10,height:10}),t.setParent(o,s.parentId);let l=structuredClone(u),g=structuredClone(u),C=structuredClone(u),B=structuredClone(u);if(g.originalEdge=l,g.selfLoop={id:l.id,order:0},C.originalEdge=l,C.selfLoop={id:l.id,order:1},B.originalEdge=l,B.selfLoop={id:l.id,order:2},g.label="",g.arrowTypeEnd="none",g.endLabelLeft="",g.endLabelRight="",g.startLabelLeft="",g.id=a+"-cyclic-special-1",C.startLabelRight="",C.startLabelLeft="",C.endLabelLeft="",C.endLabelRight="",C.arrowTypeStart="none",C.arrowTypeEnd="none",C.id=a+"-cyclic-special-mid",B.label="",B.startLabelRight="",B.startLabelLeft="",B.arrowTypeStart="none",s.isGroup)g.fromCluster=a,B.toCluster=a;B.id=a+"-cyclic-special-2",B.arrowTypeStart="none",t.setEdge(a,n,g,a+"-cyclic-special-0"),t.setEdge(n,o,C,a+"-cyclic-special-1"),t.setEdge(o,a,B,a+"-cyclic-special-2")}else t.setEdge(u.start,u.end,{...u},u.id)}),sA.warn("Graph at first:",JSON.stringify(EC(t))),JNA(t),sA.warn("Graph after XAX:",JSON.stringify(EC(t)));let i=OA();await dUA(r,t,A.type,A.diagramId,void 0,i)},"render")});function frA(){if(typeof globalThis>"u")return;return globalThis}function lht(){return Boolean(frA()?.mermaidCaptureSizes)}function QUA(){if(typeof location>"u")return"browser-dev";return`${location.pathname}${location.search}`}function pUA(A,e){let t=frA();if(!t)return;let r=e.node(),u=((r&&"ownerSVGElement"in r?r.ownerSVGElement:null)??r)?.id??"(unknown)";t.mermaidCapturedSizes??=[];let a={svgId:u,sizes:A};t.mermaidCapturedSizes.push(a),t.mermaidLastCapturedSizes=a}function mrA(A,e){let t=[];for(let r of e.nodes){if(r.isGroup)continue;t.push({id:r.id,width:r.width??0,height:r.height??0})}if(t.length===0)return;pUA({metadata:{captureVersion:sht,capturedAt:new Date().toISOString(),capturedFrom:QUA()},nodes:t},A)}var sht=1;var fUA=_(()=>{Nt();y(frA,"getCaptureGlobal");y(lht,"shouldCaptureSizes");y(QUA,"capturedFromLocation");y(pUA,"emitCapturedSizes");y(mrA,"captureNodeSizes")});var sTA={};Dt(sTA,{render:()=>oTA});async function kUA(A,e){let t=new ji({multigraph:!0,compound:!0}),r=[...e.edges],i=OA(),u=A.insert("g").attr("class","root"),a=u.insert("g").attr("class","clusters"),n=u.insert("g").attr("class","edges edgePath"),o=u.insert("g").attr("class","edgeLabels"),s=u.insert("g").attr("class","nodes"),l=new Map,g=A.node()!=null;await Promise.all(e.nodes.map(async(C)=>{if(C.isGroup)t.setNode(C.id,{...C});else{if(g){let B=await BI(s,C,{config:i,dir:C.dir}),E=B.node()?.getBBox()??{width:0,height:0};l.set(C.id,B),C.width=E.width,C.height=E.height}t.setNode(C.id,{...C})}}));for(let C of r)if(t.setEdge(C.start,C.end,{...C},C.id),!e.edges.some((E)=>E.id===C.id))e.edges.push(C);if(globalThis.mermaidCaptureSizes){await Promise.resolve().then(() => fUA());mrA(A,e)}return{graph:t,groups:{clusters:a,edgePaths:n,edgeLabels:o,nodes:s,rootGroups:u},nodeElements:l}}function YM(A){let e=[];for(let t=0;t<A.length-1;t++)e.push({a:A[t],b:A[t+1]});return e}function FUA(A,e,t,r){let i=e.x-A.x,u=e.y-A.y,a=r.x-t.x,n=r.y-t.y,o=i*n-u*a;if(o===0)return null;let s=t.x-A.x,l=t.y-A.y,g=(s*n-l*a)/o,C=(s*u-l*i)/o;if(g<=RM||g>=1-RM||C<=RM||C>=1-RM)return null;return{point:{x:A.x+g*i,y:A.y+g*u},tA:g,tB:C}}function vrA(A){return Math.abs(A.b.x-A.a.x)>=Math.abs(A.b.y-A.a.y)}function xUA(A){let e=[];for(let t=0;t<A.length;t++){let r=A[t],i=YM(r.points);for(let u=t+1;u<A.length;u++){let a=A[u],n=YM(a.points);for(let[o,s]of i.entries())for(let[l,g]of n.entries()){let C=FUA(s.a,s.b,g.a,g.b);if(!C)continue;let B=vrA(s),E=vrA(g);if(B!==E?B:!1)e.push({jumpEdgeId:r.id,otherEdgeId:a.id,segIndex:o,t:C.tA,point:C.point});else e.push({jumpEdgeId:a.id,otherEdgeId:r.id,segIndex:l,t:C.tB,point:C.point})}}}return e}function IC(A){let e=Math.round(A*1000)/1000;return Number.isInteger(e)?`${e}`:`${e}`}function Ry(A){return`${IC(A.x)},${IC(A.y)}`}function SUA(A){let e=A.b.x-A.a.x,t=A.b.y-A.a.y;if(Math.abs(e)>=Math.abs(t))return e>=0?1:0;return t>=0?1:0}function LUA(A,e){if(A.length<2)return A.map((u)=>({...u}));let t=A.map((u)=>({...u})),r=e.arrowTypeStart&&Nn[e.arrowTypeStart];if(r){let u=A[0],a=A[1],n=Math.atan2(a.y-u.y,a.x-u.x);t[0].x=u.x+r*Math.cos(n),t[0].y=u.y+r*Math.sin(n)}let i=e.arrowTypeEnd&&Nn[e.arrowTypeEnd];if(i){let u=A.length,a=A[u-2],n=A[u-1],o=Math.atan2(n.y-a.y,n.x-a.x);t[u-1].x=n.x-i*Math.cos(o),t[u-1].y=n.y-i*Math.sin(o)}return t}function RUA(A,e,t,r,i){let u=A.point.x,a=A.point.y,n={x:u-e*A.r,y:a-t*A.r},o={x:u+e*A.r,y:a+t*A.r},s=[`L${Ry(n)}`];if(i==="arc")s.push(`A${IC(A.r)},${IC(A.r)} 0 0 ${r} ${Ry(o)}`);else s.push(`M${Ry(o)}`);return s}function krA(A,e,t,r){let i=e.x-A.x,u=e.y-A.y,a=t.x-e.x,n=t.y-e.y,o=Math.hypot(i,u),s=Math.hypot(a,n);if(o<LM||s<LM)return null;let l=i/o,g=u/o,C=a/s,B=n/s,E=l*C+g*B,d=Math.max(-1,Math.min(1,E)),I=Math.acos(d);if(I<LM||Math.abs(Math.PI-I)<LM)return null;let h=Math.min(r/Math.sin(I/2),o/2,s/2);return{startX:e.x-l*h,startY:e.y-g*h,endX:e.x+C*h,endY:e.y+B*h,ctrlX:e.x,ctrlY:e.y,cutLen:h}}function NUA(A,e,t){let r=A.points;if(r.length<2)return"";let i=LUA(r,A),u=A.curve==="rounded",a=YM(i),n=new Map;for(let s of e){let l=a[s.segIndex];if(!l)continue;let g=Math.hypot(l.b.x-l.a.x,l.b.y-l.a.y),C=n.get(s.segIndex)??[];C.push({t:s.t,point:s.point,d:s.t*g,r:t.jumpRadius}),n.set(s.segIndex,C)}let o=[`M${Ry(i[0])}`];for(let s=0;s<a.length;s++){let l=a[s],g=Math.hypot(l.b.x-l.a.x,l.b.y-l.a.y),C=g===0?0:(l.b.x-l.a.x)/g,B=g===0?0:(l.b.y-l.a.y)/g,E=SUA(l),d=0;if(u&&s>0){let p=krA(i[s-1],i[s],i[s+1]??i[s],mUA);if(p)d=p.cutLen}let I=g,h=null;if(u&&s<a.length-1){if(h=krA(i[s],i[s+1],i[s+2]??i[s+1],mUA),h)I=g-h.cutLen}let Q=[...n.get(s)??[]].sort((p,m)=>p.t-m.t);for(let p of Q)p.r=Math.min(p.r,p.d-d,I-p.d);for(let p=0;p<Q.length-1;p++){let m=Q[p+1].d-Q[p].d;if(Q[p].r+Q[p+1].r>m){let f=m/2;Q[p].r=Math.min(Q[p].r,f),Q[p+1].r=Math.min(Q[p+1].r,f)}}for(let p of Q){if(p.r<ght)continue;o.push(...RUA(p,C,B,E,t.jumpStyle))}if(u&&h)o.push(`L${IC(h.startX)},${IC(h.startY)}`),o.push(`Q${IC(h.ctrlX)},${IC(h.ctrlY)} ${IC(h.endX)},${IC(h.endY)}`);else o.push(`L${Ry(l.b)}`)}return o.join(" ")}function GUA(A){return/^[\d\s+,.LMelm-]*$/.test(A)}function UUA(A){if(!A)return!0;return A==="linear"||A==="rounded"||A==="step"||A==="stepBefore"||A==="stepAfter"}function MUA(A){if(!A)return null;try{let e=typeof atob==="function"?atob(A):Buffer.from(A,"base64").toString(),t=JSON.parse(e);if(!Array.isArray(t))return null;let r=[];for(let i of t)if(i&&typeof i.x==="number"&&typeof i.y==="number")r.push({x:i.x,y:i.y});return r.length>=2?r:null}catch{return null}}function TUA(A,e,t){if(!t.enabled)return;let r=A.node();if(!r)return;let i=new Map;for(let s of e)i.set(s.id,s);let u=[],a=new Map;for(let s of e){let l=typeof CSS<"u"&&CSS.escape?CSS.escape(s.id):s.id,g=r.querySelector(`path[data-id="${l}"]`);if(!g)continue;a.set(s.id,g);let B=MUA(g.getAttribute("data-points"))??s.points;u.push({...s,points:B})}let n=xUA(u);if(n.length===0)return;let o=new Map;for(let s of n){let l=o.get(s.jumpEdgeId)??[];l.push(s),o.set(s.jumpEdgeId,l)}for(let s of u){let l=o.get(s.id);if(!l||l.length===0)continue;let C=i.get(s.id)?.curve;if(C!==void 0&&!UUA(C))continue;let B=a.get(s.id);if(!B)continue;if(C===void 0){let p=B.getAttribute("d")??"";if(!GUA(p))continue}let E=B.getAttribute("style")??"",d=/stroke-dasharray\s*:\s*0\s+([\d.]+)\s+[\d.]+\s+([\d.]+)/.exec(E),I=d?Number.parseFloat(d[1]):null,h=d?Number.parseFloat(d[2]):null,Q=NUA(s,l,t);if(B.setAttribute("d",Q),I!==null&&h!==null&&typeof B.getTotalLength==="function"){let p=B.getTotalLength(),m=Math.max(0,p-I-h),f=`0 ${I} ${m} ${h}`,D=E.replace(/stroke-dasharray\s*:[^;]*;?/g,`stroke-dasharray: ${f};`).replace(/;\s*;+/g,";");B.setAttribute("style",D)}}}async function YUA(A,e){for(let i of A.nodes)if(i.isGroup)await kQ(e.clusters,i);else If(i);let t=new Map;for(let i of A.nodes)if(i?.id)t.set(i.id,i);for(let i of A.edges){let u=i.start?t.get(i.start)??{}:{},a=i.end?t.get(i.end)??{}:{},n=iy(e.edgePaths,{...i},{},A.type,u,a,A.diagramId);if(i.label)await hf(e.rootGroups,i);if(i.label)HUA(i,n)}let r=A.config?.swimlane?.lineHops;if(r!==!1){let i=r==="gap"?"gap":"arc",u=A.edges.filter((a)=>Array.isArray(a.points)&&a.points.length>=2).map((a)=>({id:a.id,points:a.points,curve:a.curve,arrowTypeStart:a.arrowTypeStart,arrowTypeEnd:a.arrowTypeEnd}));TUA(e.edgePaths,u,{enabled:!0,jumpRadius:6,jumpStyle:i})}}function HUA(A,e){let t=e?.updatedPath??e?.originalPath,r=ot(),{subGraphTitleTotalMargin:i}=lC({flowchart:r.flowchart??{}});if(A.label){let u=ry.get(A.id),{x:a,y:n}=A;if(t){let o=Jt.calcLabelPosition(t);if(sA.debug("Moving label "+A.label+" from (",a,",",n,") to (",o.x,",",o.y,") abc88"),e)a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n+i/2})`)}if(A?.startLabelLeft){let u=Pa.get(A.id).startLeft,a=A?.x,n=A?.y;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.startLabelRight){let u=Pa.get(A.id).startRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelLeft){let u=Pa.get(A.id).endLeft,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelRight){let u=Pa.get(A.id).endRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}}function FrA(A){return Math.max(A.padding??DUA,DUA)}function KUA(A){let{x:e,y:t,width:r,height:i}=A,u=A.swimlaneContentTop;if(typeof e!=="number"||typeof t!=="number"||typeof r!=="number"||typeof i!=="number"||typeof u!=="number"||!Number.isFinite(e)||!Number.isFinite(t)||!Number.isFinite(r)||!Number.isFinite(i)||!Number.isFinite(u)||r<=0||i<=0){delete A.groupTitleRect;return}let a=t-i/2,n=Math.min(u,t+i/2),o=Math.min(cht,Math.max(0,n-a)),s=a+o;if(s<=a){delete A.groupTitleRect;return}A.groupTitleRect={left:e-r/2,right:e+r/2,top:a,bottom:s}}function JUA(A){let e=A.direction,t=A.nodes??=[];for(let u of A.nodes??[])if(u.isGroup&&!u.parentId){if(u.shape="swimlane",e)u.direction=e}let r=t.filter((u)=>!u.isGroup&&!u.parentId);if(r.length===0)return;let i=t.find((u)=>u.id===DrA);if(!i)i={id:DrA,label:"",isGroup:!0,shape:"swimlane",padding:20,...e?{direction:e}:{}},t.push(i);else if(i.isGroup){if(i.shape="swimlane",e)i.direction=e}for(let u of r)u.parentId=DrA}function OUA(A){let e=new Map;for(let o of A.nodes??[])e.set(o.id,o);let t=[];for(let o of A.edges??[]){let s=typeof o.start==="string"?o.start:void 0,l=typeof o.end==="string"?o.end:void 0;if(!s||!l)continue;if(o.labelNodeId)continue;t.push({id:o.id,src:s,dst:l,ref:o})}let r=A.nodes??[],i=r.filter((o)=>o.isGroup),u=r.filter((o)=>!o.isGroup);return{nodes:[...[...i].reverse(),...u].map((o)=>o.id),edges:t,layout:A,nodeById:e}}function PUA(A,e,t,r){let{layout:i}=A,u=A.nodeById,a=r?.layerGap??100,n=r?.nodeGap??40,o=0;for(let C of e.layers){let B=0;for(let E of C){let d=u.get(E);if(!d){B++;continue}d.layer=o,d.order=B;let I=t.x[E]??B*n,h=t.y[E]??o*a;d.x=I,d.y=h,B++}o++}let s=i.nodes??[],l=new Map,g=[];for(let C of s){if(!C?.isGroup)continue;if(!C.parentId)g.push(C);let B=s.filter((Q)=>Q.parentId===C.id),E=1/0,d=-1/0,I=1/0,h=-1/0;for(let Q of B){let p=Q.x??t.x[Q.id],m=Q.y??t.y[Q.id],f=Q.width??0,D=Q.height??0;if(p!=null&&m!=null)E=Math.min(E,p-f/2),d=Math.max(d,p+f/2),I=Math.min(I,m-D/2),h=Math.max(h,m+D/2)}if(E===1/0||I===1/0)C.x=C.x??0,C.y=C.y??0,C.width=C.width??0,C.height=C.height??0;else{let Q=C.padding??20,p=C.parentId?Q:2*FrA(C),m=Q,f=Math.max(0,d-E)+p,D=Math.max(0,h-I)+m,w=(E+d)/2,b=(I+h)/2;C.x=w,C.y=b,C.width=f,C.height=D,l.set(C.id,{minX:E,maxX:d,minY:I,maxY:h})}}if(g.length>0&&l.size>0){let C=1/0,B=-1/0,E=0;for(let d of g){let I=d.padding??20;if(I>E)E=I;let h=l.get(d.id);if(!h)continue;C=Math.min(C,h.minY),B=Math.max(B,h.maxY)}if(C!==1/0&&B!==-1/0){let d=Math.max(0,B-C),I=36,h=Math.max(E,36),Q=d+2*h,p=(C+B)/2;for(let k of g)k.y=p,k.height=Q,k.swimlaneContentTop=C;let m=[...g].sort((k,v)=>{let S=k.x??0,x=v.x??0;return S-x}),f=[],D=[],w=[];for(let k of m){let v=l.get(k.id);if(!v)continue;let S=Math.max(0,v.maxX-v.minX)+2*FrA(k),x=(v.minX+v.maxX)/2;f.push(k.id),D.push(x),w.push(S)}let b=f.length;if(b>0){let k=new Map;if(b===1)k.set(f[0],w[0]);else{let v=[];for(let R=0;R<b-1;R++)v.push(D[R+1]-D[R]);let S=Array(b);S[0]=0;for(let R=0;R<b-1;R++)S[R+1]=2*v[R]-S[R];let x=0,F=Number.POSITIVE_INFINITY;for(let R=0;R<b;R++){let L=w[R];if(R%2===0)x=Math.max(x,L-S[R]);else F=Math.min(F,S[R]-L)}let T=x;if(x<=F)T=(x+F)/2;else T=x;for(let R=0;R<b;R++){let L=S[R]+(R%2===0?T:-T),M=Math.max(w[R],L);k.set(f[R],M)}}for(let v of g){let S=k.get(v.id);if(S!=null)v.width=S;KUA(v)}}}}}function _UA(A){let e=[],t=[],r=new Map;for(let a of A.nodes)r.set(a.id,a);for(let a of A.edges){if(!a.label||a.label.length===0)continue;if(a.isLayoutOnly)continue;if(a.labelNodeId)continue;let n=a.start?r.get(a.start):void 0,o=a.end?r.get(a.end):void 0;if(!n||!o){sA.warn(Cht,`Edge ${a.id} has missing source or target node`);continue}let s=`edge-label-${a.start}-${a.end}-${a.id}`,g=n.parentId!==o.parentId?o.parentId:n.parentId,C={id:s,label:a.label,edgeStart:a.start??"",edgeEnd:a.end??"",shape:"labelRect",width:0,height:0,isEdgeLabel:!0,isDummy:!0,parentId:g,isGroup:!1,labelStyle:Array.isArray(a.labelStyle)?a.labelStyle[0]:a.labelStyle??"",...n.dir?{dir:n.dir}:{}};e.push(C),a.labelNodeId=s,a.label=void 0,a.text=void 0;let B={id:`${a.id}-to-label`,start:a.start,end:s,type:"normal",isLayoutOnly:!0},E={id:`${a.id}-from-label`,start:s,end:a.end,type:"normal",isLayoutOnly:!0};t.push(B,E)}let i=[...A.nodes,...e],u=[...A.edges,...t];return{...A,nodes:i,edges:u}}function aiA(A){let e=A.x??0,t=A.y??0,r=A.width??0,i=A.height??0;return r>0&&i>0?{cx:e,cy:t,rect:Ny(e,t,r,i)}:void 0}function niA(A){if(A.isGroup)return;let e=aiA(A);if(!e)return;return{id:String(A.id??""),cx:e.cx,cy:e.cy,rect:e.rect}}function ec(A,e,t=Uo){return Math.abs(A.x-e.x)<t&&Math.abs(A.y-e.y)<t}function Bi(A,e,t=Uo){return Math.abs(A.x-e.x)<t}function fi(A,e,t=Uo){return Math.abs(A.y-e.y)<t}function qa(A,e,t=Uo){return fi(A,e,t)&&Math.abs(A.x-e.x)>t}function za(A,e,t=Uo){return Bi(A,e,t)&&Math.abs(A.y-e.y)>t}function ds(A,e,t,r){return Math.max(0,Math.min(Math.max(A,e),Math.max(t,r))-Math.max(Math.min(A,e),Math.min(t,r)))}function BE(A,e,t=Uo){if(A.horizontal&&e.horizontal&&fi(A.a,e.a,t))return ds(A.a.x,A.b.x,e.a.x,e.b.x);if(A.vertical&&e.vertical&&Bi(A.a,e.a,t))return ds(A.a.y,A.b.y,e.a.y,e.b.y);return 0}function Gy(A,e=Uo){let t=[];for(let r=0;r<A.length-1;r++){let i=A[r],u=A[r+1],a=qa(i,u,e),n=za(i,u,e);if(a||n)t.push({index:r,a:i,b:u,horizontal:a,vertical:n})}return t}function og(A,e=Uo){let t=Gy(A,e),r=0;for(let i=1;i<t.length;i++)if(t[i-1].horizontal!==t[i].horizontal)r++;return r}function Ti(A,e=Uo){let t=[];for(let r of A){let i=t.length>0?t[t.length-1]:void 0;if(!i||!ec(i,r,e))t.push({x:r.x,y:r.y})}return t}function oiA(A,e=Uo){if(!A||A.length!==4)return;let[t,r,i,u]=A;if(qa(t,r,e)&&za(r,i,e)&&qa(i,u,e))return{kind:"HVH",p0:t,p1:r,p2:i,p3:u};return za(t,r,e)&&qa(r,i,e)&&za(i,u,e)?{kind:"VHV",p0:t,p1:r,p2:i,p3:u}:void 0}function ZM(A,e,t,r=0){let i=Math.min(A.x,e.x),u=Math.max(A.x,e.x),a=Math.min(A.y,e.y),n=Math.max(A.y,e.y);return u>t.left-r&&i<t.right+r&&n>t.top-r&&a<t.bottom+r}function siA(A,e,t=0){return A.x>e.left+t&&A.x<e.right-t&&A.y>e.top+t&&A.y<e.bottom-t}function WUA(A,e){return A.left<=e.left&&A.right>=e.right&&A.top<=e.top&&A.bottom>=e.bottom}function HM(A,e){return A.left<e.right&&A.right>e.left&&A.top<e.bottom&&A.bottom>e.top}function xrA(A,e){return{left:A.left-e,right:A.right+e,top:A.top-e,bottom:A.bottom+e}}function Ny(A,e,t,r){return{left:A-t/2,right:A+t/2,top:e-r/2,bottom:e+r/2}}function cl(A){return aiA(A)?.rect}function Gf(A,e){switch(e){case"top":return{x:A.cx,y:A.rect.top};case"bottom":return{x:A.cx,y:A.rect.bottom};case"left":return{x:A.rect.left,y:A.cy};case"right":return{x:A.rect.right,y:A.cy}}}function liA(A,e,t,r,i,u=Uo){let a=e==="left"||e==="right",n=r==="left"||r==="right";if(a&&n){if(e==="right"&&r==="left"&&A.x<t.x||e==="left"&&r==="right"&&A.x>t.x){if(fi(A,t,u))return[A,t];let g=(A.x+t.x)/2;return[A,{x:g,y:A.y},{x:g,y:t.y},t]}if(e===r){if(fi(A,t,u))return;let g=e==="left"?Math.min(A.x,t.x)-i:Math.max(A.x,t.x)+i;return[A,{x:g,y:A.y},{x:g,y:t.y},t]}return}if(!a&&!n){if(e===r){if(Bi(A,t,u))return;let C=e==="top"?Math.min(A.y,t.y)-i:Math.max(A.y,t.y)+i;return[A,{x:A.x,y:C},{x:t.x,y:C},t]}if(!(e==="bottom"&&r==="top"&&A.y<t.y||e==="top"&&r==="bottom"&&A.y>t.y))return;if(Bi(A,t,u))return[A,t];let g=(A.y+t.y)/2;return[A,{x:A.x,y:g},{x:t.x,y:g},t]}if(a&&!n){let l=e==="right"&&t.x>A.x||e==="left"&&t.x<A.x,g=r==="top"&&A.y<t.y||r==="bottom"&&A.y>t.y;return l&&g?[A,{x:t.x,y:A.y},t]:void 0}let o=e==="bottom"&&t.y>A.y||e==="top"&&t.y<A.y,s=r==="left"&&A.x<t.x||r==="right"&&A.x>t.x;return o&&s?[A,{x:A.x,y:t.y},t]:void 0}function giA(A,e,t,r){return e==="left"||e==="right"?[A,{x:r,y:A.y},{x:r,y:t.y},t]:[A,{x:A.x,y:r},{x:t.x,y:r},t]}function VM(A){let e=new Map,t=[];for(let r of A){if(r.isEdgeLabel)continue;let i=niA(r);if(!i)continue;e.set(i.id,i),t.push({id:i.id,rect:i.rect})}return{nodeInfoById:e,realNodeRects:t}}function A4(A){let e=[],t=[];for(let r of A){let i=niA(r);if(!i)continue;let u={id:i.id,rect:i.rect};if(r.isEdgeLabel)t.push(u);else e.push(u)}return{realNodeRects:e,labelNodeRects:t}}function qUA(A,{includeEdgeLabels:e=!0}={}){let t=[];for(let r of A){if(r.isGroup||!e&&r.isEdgeLabel)continue;let i=r.x??0,u=r.y??0,a=r.width??0,n=r.height??0;t.push({nodeId:r.id,...Ny(i,u,a,n)})}return t}function ciA(A,e,t=Uo){let{start:r,end:i}=A;if(!r||!i)return;let u=e.get(r),a=e.get(i);if(!u||!a)return;return{srcId:r,dstId:i,srcInfo:u,dstInfo:a,collinearX:Math.abs(u.cx-a.cx)<t,collinearY:Math.abs(u.cy-a.cy)<t}}function En(A,e,t,r=[],i=0){for(let u of t){if(r.includes(u.id))continue;if(ZM(A,e,u.rect,-i))return!0}return!1}function CiA(A,e,t,r,i=Uo,u=0.000001){let a=fi(A,e,i),n=Bi(A,e,i),o=fi(t,r,i),s=Bi(t,r,i);if(a&&o||n&&s)return!1;if(!(a||n)||!(o||s))return!1;let l=a?{a:A,b:e}:{a:t,b:r},g=n?{a:A,b:e}:{a:t,b:r},C=l.a.y,B=Math.min(l.a.x,l.b.x),E=Math.max(l.a.x,l.b.x),d=g.a.x,I=Math.min(g.a.y,g.b.y),h=Math.max(g.a.y,g.b.y);if(d<B||d>E||C<I||C>h)return!1;let Q=Math.abs(d-l.a.x)<u&&Math.abs(C-l.a.y)<u||Math.abs(d-l.b.x)<u&&Math.abs(C-l.b.y)<u,p=Math.abs(d-g.a.x)<u&&Math.abs(C-g.a.y)<u||Math.abs(d-g.b.x)<u&&Math.abs(C-g.b.y)<u;return!(Q&&p)}function zUA(A,e,t,r,i=Uo){let u=fi(A,e,i),a=Bi(A,e,i),n=fi(t,r,i),o=Bi(t,r,i);if(a&&o&&Bi(A,t,i))return ds(A.y,e.y,t.y,r.y)>i;if(u&&n&&fi(A,t,i))return ds(A.x,e.x,t.x,r.x)>i;return!1}function KM(A,e,t,r,{epsilon:i=Uo,skipDegenerateOther:u=!1}={}){for(let a of t){if(a===r||a.isLayoutOnly)continue;let n=a.points;if(!n||n.length<2)continue;for(let o=0;o<n.length-1;o++){let s=n[o],l=n[o+1];if(u&&ec(s,l,i))continue;if(CiA(A,e,s,l,i)||zUA(A,e,s,l,i))return!0}}return!1}function fI(A,e,t,r,i=Uo){let u=fi(A,e,i),a=Bi(A,e,i),n=fi(t,r,i),o=Bi(t,r,i);if(!(u&&o||a&&n))return!1;let s=u?{a:A,b:e}:{a:t,b:r},l=u?{a:t,b:r}:{a:A,b:e},g=s.a.y,C=Math.min(s.a.x,s.b.x),B=Math.max(s.a.x,s.b.x),E=l.a.x,d=Math.min(l.a.y,l.b.y),I=Math.max(l.a.y,l.b.y);return E>C+i&&E<B-i&&g>d+i&&g<I-i}function SrA(A,e,t){let r=Math.min(e,t),i=Math.max(e,t);return A>r+Uo&&A<i-Uo}function ZUA(A,e,t){if(Bi(A,e)&&Bi(e,t))return SrA(e.y,A.y,t.y);if(fi(A,e)&&fi(e,t))return SrA(e.x,A.x,t.x);return!1}function VUA(A){let e=!1,t=[];for(let r=0;r<A.length;r++){let i=t[t.length-1],u=A[r],a=r+1<A.length?A[r+1]:void 0;if(i&&a){if(ec(i,a)){r++,e=!0;continue}if(ZUA(i,u,a)){e=!0;continue}}t.push(u)}return{points:t,changed:e}}function JM(A){let e=[A[0]];for(let r=1;r<A.length;r++){let i=e[e.length-1],u=A[r];if(!Bi(i,u)&&!fi(i,u)){let a=e.length>=2?e[e.length-2]:void 0,o=(a?Bi(a,i):!1)?{x:i.x,y:u.y}:{x:u.x,y:i.y};e.push(o)}e.push(u)}let t=[];for(let r of e){let i=t[t.length-1];if(!i||!ec(i,r))t.push(r)}return t}function EE(A){if(A.length<3)return A;let e=[...A];for(let t=0;t<32;t++){let r=VUA(e);if(e=r.points,!r.changed)break}return e}function BiA(A,e,t){let r=A;if(r.isLayoutOnly||!r.points||r.points.length<t)return;let i=r.start?e.get(r.start):void 0,u=r.end?e.get(r.end):void 0;return{edge:r,points:r.points,srcRect:i?cl(i):void 0,dstRect:u?cl(u):void 0}}function jUA(A,e,t){if(fi(A,e,yr))return{x:A.x<t.left?t.left:t.right,y:A.y};if(Bi(A,e,yr)){let r=A.y<t.top?t.top:t.bottom;return{x:A.x,y:r}}return{x:Math.min(t.right,Math.max(t.left,A.x)),y:Math.min(t.bottom,Math.max(t.top,A.y))}}function LrA(A,e,t){let r=t?1:-1,i=t?0:A.length-1;while(i>=0&&i<A.length&&siA(A[i],e,Bht))i+=r;if(i<0||i>=A.length)return A;let u=i-r;if(u<0||u>=A.length)return A;let a=jUA(A[i],A[u],e);return t?[a,...A.slice(i)]:[...A.slice(0,i+1),a]}function XUA(A,e){for(let t of A){let r=BiA(t,e,2);if(!r)continue;let i=[...r.points];if(r.srcRect)i=LrA(i,r.srcRect,!0);if(r.dstRect)i=LrA(i,r.dstRect,!1);i=EE(JM(i)),i=EiA(i,r.srcRect,r.dstRect),r.edge.points=EE(JM(i))}}function RrA(A,e,t,r=!1){if(fi(A,e,yr)){if(e.y<t.top-yr||e.y>t.bottom+yr)return e;if(r){if(A.x<t.left-yr)return{x:t.left,y:A.y};if(A.x>t.right+yr)return{x:t.right,y:A.y}}return{x:Math.abs(e.x-t.left)<=Math.abs(e.x-t.right)?t.left:t.right,y:A.y}}if(Bi(A,e,yr)){if(e.x<t.left-yr||e.x>t.right+yr)return e;if(r){if(A.y<t.top-yr)return{x:A.x,y:t.top};if(A.y>t.bottom+yr)return{x:A.x,y:t.bottom}}let i=Math.abs(e.y-t.top)<=Math.abs(e.y-t.bottom);return{x:A.x,y:i?t.top:t.bottom}}return e}function OM(A,e,t){let r=A[e];for(let i=e+t;i>=0&&i<A.length;i+=t){let u=A[i];if(!ec(u,r,yr))return u}return A[e+t]}function PM(A,e){let t=A+yUA,r=e-yUA;return t<=r?{lo:t,hi:r}:{lo:(A+e)/2,hi:(A+e)/2}}function NrA(A,e,t){let{lo:r,hi:i}=PM(e,t);return Math.min(i,Math.max(r,A))}function $UA(A){let e=Math.max(...A.map((r)=>r.lo)),t=Math.min(...A.map((r)=>r.hi));if(e>t)return;return{lo:e,hi:t}}function GrA(A,e){return e==="left"||e==="right"?PM(A.top,A.bottom):PM(A.left,A.right)}function _M(A,e,t){let r=A.y>=t.top-yr&&A.y<=t.bottom+yr,i=A.x>=t.left-yr&&A.x<=t.right+yr;if(fi(A,e,yr)&&r){if(Math.abs(A.x-t.left)<yr)return"left";if(Math.abs(A.x-t.right)<yr)return"right"}if(Bi(A,e,yr)&&i){if(Math.abs(A.y-t.top)<yr)return"top";if(Math.abs(A.y-t.bottom)<yr)return"bottom"}return}function ck(A){return A==="left"||A==="right"}function AMA(A,e,t,r,i){let u=[],a=t?_M(A,e,t):void 0,n=r?_M(e,A,r):void 0;if(t&&a&&ck(a)===i)u.push(GrA(t,a));if(r&&n&&ck(n)===i)u.push(GrA(r,n));return u.length>0?$UA(u):void 0}function UrA(A,e,t,r,i){let u=AMA(A,e,t,r,i);if(!u)return;let a=i?A.y:A.x,n=Math.min(u.hi,Math.max(u.lo,a));if(Math.abs(n-a)<yr)return;return i?[{x:A.x,y:n},{x:e.x,y:n}]:[{x:n,y:A.y},{x:n,y:e.y}]}function EiA(A,e,t){if(A.length!==2)return A;let[r,i]=A;if(fi(r,i,yr))return UrA(r,i,e,t,!0)??A;if(Bi(r,i,yr))return UrA(r,i,e,t,!1)??A;return A}function eMA(A,e,t){return ck(t)?{x:A.x,y:NrA(A.y,e.top,e.bottom)}:{x:NrA(A.x,e.left,e.right),y:A.y}}function tMA(A,e,t,r,i,u){let a=A.map((n)=>({...n}));for(let n=e;n>=0&&n<A.length;n+=t){let o=A[n];if(u&&!fi(o,r,yr))break;if(!u&&!Bi(o,r,yr))break;if(u)a[n].y=i.y;else a[n].x=i.x}return a}function MrA(A,e,t){if(A.length<2)return A;let r=t?0:A.length-1,i=t?1:-1,u=A[r],a=OM(A,r,i);if(!a)return A;let n=_M(u,a,e);if(!n)return A;let o=ck(n),s=eMA(u,e,n);if(ec(u,s,yr))return A;return tMA(A,r,i,u,s,o)}function TrA(A,e,t){let r=Math.min(A.x,e.x)>=t.left-yr&&Math.max(A.x,e.x)<=t.right+yr,i=Math.min(A.y,e.y)>=t.top-yr&&Math.max(A.y,e.y)<=t.bottom+yr;if(Math.abs(A.y-t.top)<yr&&Math.abs(e.y-t.top)<yr&&r)return"top";if(Math.abs(A.y-t.bottom)<yr&&Math.abs(e.y-t.bottom)<yr&&r)return"bottom";if(Math.abs(A.x-t.left)<yr&&Math.abs(e.x-t.left)<yr&&i)return"left";if(Math.abs(A.x-t.right)<yr&&Math.abs(e.x-t.right)<yr&&i)return"right";return}function YrA(A,e,t,r){switch(A){case"top":return Bi(e,t,yr)&&t.y<r.top-yr;case"bottom":return Bi(e,t,yr)&&t.y>r.bottom+yr;case"left":return fi(e,t,yr)&&t.x<r.left-yr;case"right":return fi(e,t,yr)&&t.x>r.right+yr}}function HrA(A,e,t){if(A.length<3)return A;if(t){let u=TrA(A[0],A[1],e);if(u&&YrA(u,A[1],A[2],e))return A.slice(1);return A}let r=A.length-1,i=TrA(A[r-1],A[r],e);if(i&&YrA(i,A[r-1],A[r-2],e))return A.slice(0,r);return A}function rMA(A,e,t){let r=A;if(e){let u=OM(r,0,1);if(u){let a=RrA(u,r[0],e);if(a!==r[0])r=[a,...r.slice(1)]}r=HrA(r,e,!0)}if(t){let u=r.length-1,a=OM(r,u,-1);if(a){let n=RrA(a,r[u],t,!0);if(n!==r[u])r=[...r.slice(0,u),n]}r=HrA(r,t,!1)}let i=EiA(r,e,t);if(i!==r||r.length===2)return i;if(e)r=MrA(r,e,!0);if(t)r=MrA(r,t,!1);return r}function KrA(A,e){for(let t of A){let r=BiA(t,e,2);if(!r)continue;let i=Ti(r.points,yr),u=rMA(i,r.srcRect,r.dstRect);if(u.length<3){r.edge.points=u;continue}let a=[u[0],{...u[0]},...u.slice(1,-1),u[u.length-1],{...u[u.length-1]}];r.edge.points=a}}function diA(A){return new Map(A.map((e)=>[e.id,e]))}function iMA(A,e){let t=A.parentId,r=null;while(t){let i=e.get(t);if(!i?.isGroup)break;r=i.id,t=i.parentId}return r}function JrA(A,e){let t=0,r=A.parentId;while(r){let i=e.get(r);if(!i?.isGroup)break;t++,r=i.parentId}return t}function IiA(A){let e=1/0,t=-1/0,r=1/0,i=-1/0;for(let u of A){let{x:a,y:n}=u;if(typeof a!=="number"||typeof n!=="number")continue;let o=u.width??0,s=u.height??0;e=Math.min(e,a-o/2),t=Math.max(t,a+o/2),r=Math.min(r,n-s/2),i=Math.max(i,n+s/2)}if(e===1/0||r===1/0)return null;return{minX:e,maxX:t,minY:r,maxY:i}}function uMA(A,e){let t=A.padding??20;A.x=(e.minX+e.maxX)/2,A.y=(e.minY+e.maxY)/2,A.width=Math.max(0,e.maxX-e.minX)+t,A.height=Math.max(0,e.maxY-e.minY)+t}function aMA(A){let e=diA(A),t=A.filter((r)=>r.isGroup&&r.parentId).sort((r,i)=>JrA(i,e)-JrA(r,e));for(let r of t){let i=A.filter((a)=>a.parentId===r.id),u=IiA(i);if(u)uMA(r,u)}}function WM(A,e){let t=A.nodes??[],r=A.edges??[],i=t.filter((o)=>!o.isGroup),u=1/0,a=-1/0;for(let o of i){let s=o[e];if(typeof s!=="number")continue;u=Math.min(u,s),a=Math.max(a,s)}if(!Number.isFinite(u)||!Number.isFinite(a))return!1;let n=y((o)=>u+a-o,"mirror");for(let o of t){let s=o[e];if(typeof s==="number")o[e]=n(s);let l=o.groupTitleRect;if(l)o.groupTitleRect=e==="x"?{...l,left:n(l.right),right:n(l.left)}:{...l,top:n(l.bottom),bottom:n(l.top)}}for(let o of r)for(let s of o.points??[])s[e]=n(s[e]);return!0}function nMA(A){if(!(A.nodes??[]).some((t)=>!t.isGroup))return!0;return WM(A,"y")}function oMA(A,e="LR"){let t=A.nodes??[],r=A.edges??[],i=t.filter((F)=>!F.isGroup),u=1/0,a=1/0;for(let F of i){let T=F.x??0,R=F.y??0;if(T<u)u=T;if(R<a)a=R}if(!Number.isFinite(u)||!Number.isFinite(a))return!1;let n=36,o=0,s=0;for(let F of i)o+=F.width??0,s+=F.height??0;let l=o/i.length,g=s/i.length,C=g>0?Math.max(1,l/g):1;for(let F of i){let T=F.x??0,L=((F.y??0)-a)*C+n,M=T-u;F.x=L,F.y=M}for(let F of r){if(!F.points)continue;for(let T of F.points){let R=T.x,M=(T.y-a)*C+n,U=R-u;T.x=M,T.y=U}}aMA(t);let B=t.filter((F)=>F.isGroup&&!F.parentId);if(B.length===0){if(e==="RL")WM(A,"x");return!0}let E=diA(t),d=new Map;for(let F of t){if(F.isGroup)continue;let T=iMA(F,E);if(!T)continue;let R=d.get(T)??[];R.push(F),d.set(T,R)}let I=0;for(let F of B){let T=F.padding??0;if(T>I)I=T}let h=[],Q=1/0,p=-1/0;for(let F of B){let T=d.get(F.id)??[],R=IiA(T);if(!R)continue;Q=Math.min(Q,R.minX),p=Math.max(p,R.maxX),h.push({lane:F,contentTop:R.minY,contentBottom:R.maxY,centerY:(R.minY+R.maxY)/2})}if(Q===1/0||p===-1/0)return!0;let m=Math.max(0,p-Q),f=Math.max(I,10),D=m+2*f,w=n+D,v=(Q+p)/2-D/2-n,S=v+w/2,x=Math.max(I,n);h.sort((F,T)=>F.centerY-T.centerY);for(let F=0;F<h.length;F++){let T=h[F],R,L;if(F===0)R=T.contentTop-x;else R=(h[F-1].contentBottom+T.contentTop)/2;if(F===h.length-1)L=T.contentBottom+x;else{let Y=h[F+1];L=(T.contentBottom+Y.contentTop)/2}let M=Math.max(0,L-R),U=(R+L)/2;T.lane.x=S,T.lane.y=U,T.lane.width=w,T.lane.height=M,T.lane.swimlaneContentTop=T.contentTop,T.lane.groupTitleRect={left:v,right:v+n,top:R,bottom:L}}if(e==="RL")WM(A,"x");return!0}function sMA(A,e){let{nodeInfoById:t,realNodeRects:r}=VM(e);for(let i of A){if(i.isLayoutOnly)continue;let u=i.points;if(!u||u.length<4)continue;let a=oiA(Ti(u,dC),dC);if(!a)continue;let{p3:n}=a,o=a.kind==="HVH",s=ciA(i,t,dC);if(!s)continue;let{srcId:l,dstId:g,srcInfo:C,dstInfo:B,collinearX:E,collinearY:d}=s;if(E||d)continue;let I,h=C.rect;for(let Q of dht){let p,m,f;if(o){let S=B.cy>C.cy?h.bottom:h.top,x=C.cx+Q;if(x<=h.left+dC||x>=h.right-dC)continue;p={x,y:S},m={x,y:n.y},f={x:n.x,y:n.y}}else{let S=B.cx>C.cx?h.right:h.left,x=C.cy+Q;if(x<=h.top+dC||x>=h.bottom-dC)continue;p={x:S,y:x},m={x:n.x,y:x},f={x:n.x,y:n.y}}let D=ec(p,m,dC),w=ec(m,f,dC);if(D&&w)continue;if(!D&&En(p,m,r,[l],1))continue;if(!w&&En(m,f,r,[g],1))continue;let b=!D&&KM(p,m,A,i,{epsilon:dC,skipDegenerateOther:!0}),k=!w&&KM(m,f,A,i,{epsilon:dC,skipDegenerateOther:!0});if(b||k)continue;if(D)I=[m,f];else if(w)I=[p,m];else I=[p,m,f];break}if(I)i.points=I}}function lMA(A,e){let{realNodeRects:u,labelNodeRects:a}=A4(e.values());for(let n of A){if(n.isLayoutOnly)continue;let o=n.points;if(!o||o.length<4)continue;let s=Ti(o,0.001);if(s.length<4)continue;let l=s.length-1,g=s[l],C=s[l-1],B=s[l-2],E=g.x-C.x,d=g.y-C.y,I=Math.hypot(E,d);if(I>=10||I<0.001)continue;let h=C.x-B.x,Q=C.y-B.y;if(Math.hypot(h,Q)<0.001)continue;let m=qa(C,g,0.001),f=za(C,g,0.001),D=qa(B,C,0.001),w=za(B,C,0.001);if(!(m&&w||f&&D))continue;let{end:b,start:k}=n,v=b?e.get(b):void 0;if(!v)continue;let S=v.x??0,x=v.y??0,F=cl(v);if(!F)continue;let T,R;if(w){let K=Q<0;T={x:S,y:B.y},R={x:S,y:K?F.bottom:F.top}}else{let K=h>0;T={x:B.x,y:x},R={x:K?F.right:F.left,y:x}}if(En(T,R,u,b?[b]:[],-2))continue;if(En(T,R,a,[],-2))continue;if(k){let K=e.get(k),O=K?cl(K):void 0;if(O&&siA(T,O,2))continue}let L=y((K,O)=>`${K.x.toFixed(3)},${K.y.toFixed(3)}|${O.x.toFixed(3)},${O.y.toFixed(3)}`,"ownSegmentKey"),M=new Set;for(let K=0;K<s.length-1;K++)M.add(L(s[K],s[K+1]));let U=y((K,O)=>{for(let P of A){if(P===n)continue;if(P.isLayoutOnly)continue;let z=P.points;if(!z||z.length<2)continue;for(let AA=0;AA<z.length-1;AA++){let W=z[AA],CA=z[AA+1];if(M.has(L(W,CA)))continue;if(fI(K,O,W,CA,0.001))return!0}}return!1},"segmentCrossesOtherEdge");if(U(T,R))continue;if(l-3>=0){let K=s[l-3],O=[k,b].filter((P)=>Boolean(P));if(En(K,T,u,O,-2))continue;if(U(K,T))continue}let H=[...s.slice(0,l-2),T,R];n.points=H;let J=n.labelNodeId;if(J){let K=e.get(J);if(K){let O=K.width??0,P=K.height??0;if(O>0&&P>0){let z,AA,W=-1;for(let CA=0;CA<H.length-1;CA++){let tA=H[CA],lA=H[CA+1],gA=Math.hypot(lA.x-tA.x,lA.y-tA.y),aA=fi(tA,lA,0.001),NA=Bi(tA,lA,0.001);if(!(aA&&gA>=O+2||NA&&gA>=P+2))continue;if(gA>W)W=gA,z=(tA.x+lA.x)/2,AA=(tA.y+lA.y)/2}if(z!==void 0&&AA!==void 0)K.x=z,K.y=AA}}}}}function gMA(A,e){let i=y((B,E)=>{let d=B.x??0,I=B.y??0,h=E.x-d,Q=E.y-I,p=(B.width??0)/2,m=(B.height??0)/2;if(Math.abs(Q)*p>Math.abs(h)*m){if(Q<0)m=-m;return{x:d+(Q===0?0:m*h/Q),y:I+m}}if(h<0)p=-p;return{x:d+p,y:I+(h===0?0:p*Q/h)}},"rectIntersect"),u=y((B,E)=>{let d=Ti(B.points??[]);if(d.length<2)return;let I=E?B.start:B.end,h=I?e.get(I):void 0,Q=h?cl(h):void 0;if(!h||!I||!Q)return;let p=E?d[0]:d[d.length-1],m=E?d[1]:d[d.length-2],f=i(h,p),D=p;if(yrA(m,f))D=m;if(Bi(f,D,Ot))return{edge:B,edgeId:String(B.id??""),nodeId:I,atStart:E,orientation:"V",coord:f.x,min:Math.min(f.y,D.y),max:Math.max(f.y,D.y),boundary:f,railEnd:D,rect:Q};if(fi(f,D,Ot))return{edge:B,edgeId:String(B.id??""),nodeId:I,atStart:E,orientation:"H",coord:f.y,min:Math.min(f.x,D.x),max:Math.max(f.x,D.x),boundary:f,railEnd:D,rect:Q};return},"terminalLaneFor"),a=y((B,E)=>Math.max(0,Math.min(B.max,E.max)-Math.max(B.min,E.min)),"projectedOverlapLength"),n=y((B,E)=>{if(B.nodeId!==E.nodeId||B.orientation!==E.orientation)return!1;if(B.orientation==="H")return(Math.abs(B.boundary.x-B.rect.left)<1||Math.abs(B.boundary.x-B.rect.right)<1)&&Bi(B.boundary,E.boundary,1);return(Math.abs(B.boundary.y-B.rect.top)<1||Math.abs(B.boundary.y-B.rect.bottom)<1)&&fi(B.boundary,E.boundary,1)},"sameTerminalFace"),o=y((B,E)=>{if(B.nodeId!==E.nodeId||B.orientation!==E.orientation)return!1;return a(B,E)>=Go&&Math.abs(B.coord-E.coord)<0.5},"exactTerminalLaneConflict"),s=y((B,E)=>{if(B.nodeId!==E.nodeId||B.orientation!==E.orientation||B.orientation!=="H"||B.atStart===E.atStart)return!1;let d=a(B,E);if(d<Go)return!1;let I=B.rect.bottom-B.rect.top;if(d<I||d>2*I)return!1;return n(B,E)&&Math.abs(B.coord-E.coord)<16},"nearTerminalLaneConflict"),l=y((B,E)=>{let d=Ti(B.edge.points??[]);if(d.length<2)return;let I=B.orientation==="V"?{x:B.boundary.x+E,y:B.boundary.y}:{x:B.boundary.x,y:B.boundary.y+E},h=B.orientation==="V"?{x:B.railEnd.x+E,y:B.railEnd.y}:{x:B.railEnd.x,y:B.railEnd.y+E};if(!y(()=>{if(Math.abs(B.boundary.y-B.rect.top)<1||Math.abs(B.boundary.y-B.rect.bottom)<1)return fi(I,B.boundary,Ot)&&I.x>=B.rect.left+1&&I.x<=B.rect.right-1;if(Math.abs(B.boundary.x-B.rect.left)<1||Math.abs(B.boundary.x-B.rect.right)<1)return Bi(I,B.boundary,Ot)&&I.y>=B.rect.top+1&&I.y<=B.rect.bottom-1;return!1},"boundaryStaysOnSameFace")())return;if(B.atStart){let D=d.length>1&&ec(d[1],B.railEnd,Ot),w=d.slice(D?2:1),b=w[0];if(b&&!yrA(b,h))return;return[I,h,...w]}let p=d.length>1&&ec(d[d.length-2],B.railEnd,Ot),m=d.slice(0,p?-2:-1),f=m[m.length-1];if(f&&!yrA(f,h))return;return[...m,h,I]},"shiftedCandidate"),g=y((B)=>{let E=B.edge,d=Ti(E.points??[]);if(d.length!==2)return!1;let{start:I,end:h}=E,Q=I?e.get(I):void 0,p=h?e.get(h):void 0;if(!Q||!p)return!1;let m=Q.x??0,f=Q.y??0,D=p.x??0,w=p.y??0,[b,k]=d;return fi(b,k,Ot)&&Math.abs(f-w)<1&&Math.abs(m-D)>1||Bi(b,k,Ot)&&Math.abs(m-D)<1&&Math.abs(f-w)>1},"laneIsStraightCollinearConnector"),C=[-7,7,-14,14,-21,21];for(let B=0;B<8;B++){let E=A.filter((I)=>!I.isLayoutOnly).flatMap((I)=>[u(I,!0),u(I,!1)]).filter((I)=>Boolean(I)),d=!1;for(let I=0;I<E.length&&!d;I++)for(let h=I+1;h<E.length&&!d;h++){let Q=E[I],p=E[h];if(Q.edge===p.edge||!(o(Q,p)||s(Q,p)))continue;let m=!o(Q,p),f=[Q,p].sort((D,w)=>{let b=g(D),k=g(w);if(b!==k)return Number(b)-Number(k);return Number(!w.atStart)-Number(!D.atStart)});for(let D of f){for(let w of C){let b=l(D,w);if(!b)continue;let k=u({...D.edge,points:b},D.atStart);if(!k||E.some((v)=>v.edge!==D.edge&&(o(k,v)||m&&s(k,v))))continue;D.edge.points=b,d=!0;break}if(d)break}}if(!d)return}}function cMA(A,e){let{realNodeRects:i,labelNodeRects:u}=A4(e.values()),a=y((o,s)=>{let{start:l,end:g}=o,C=ii(s);if(C.length!==s.length-1)return!1;let B=[l,g].filter((E)=>Boolean(E));for(let E of C){if(En(E.a,E.b,i,B,-2))return!1;if(En(E.a,E.b,u,[],-2))return!1}for(let E of A){if(E===o||E.isLayoutOnly)continue;let d=E.points;if(!d||d.length<2)continue;for(let I of C)for(let h of ii(Ti(d))){if(BE(I,h,0.5)>=Go)return!1;if(fI(I.a,I.b,h.a,h.b,Ot))return!1}}return!0},"candidateIsSafe"),n=y((o,s)=>{if(s+4>=o.length)return;let l=o[s],g=o[s+1],C=o[s+2],B=o[s+3],E=o[s+4],d=qa(l,g)&&za(g,C)&&qa(C,B)&&za(B,E)&&Bi(l,B,Ot)&&Bi(l,E,Ot)&&Bi(g,C,Ot)&&(g.x-l.x)*(B.x-C.x)<0,I=za(l,g)&&qa(g,C)&&za(C,B)&&qa(B,E)&&fi(l,B,Ot)&&fi(l,E,Ot)&&fi(g,C,Ot)&&(g.y-l.y)*(B.y-C.y)<0;if(d||I)return Ti([...o.slice(0,s+1),E,...o.slice(s+5)]);if(s+5>=o.length)return;let h=o[s+5],Q=za(l,g)&&qa(g,C)&&za(C,B)&&qa(B,E)&&za(E,h)&&Bi(l,E,Ot)&&Bi(l,h,Ot)&&Bi(C,B,Ot)&&(C.x-g.x)*(E.x-B.x)<0,p=qa(l,g)&&za(g,C)&&qa(C,B)&&za(B,E)&&qa(E,h)&&fi(l,E,Ot)&&fi(l,h,Ot)&&fi(C,B,Ot)&&(C.y-g.y)*(E.y-B.y)<0;if(!Q&&!p)return;return Ti([...o.slice(0,s+1),h,...o.slice(s+6)])},"withoutDogleg");for(let o=0;o<8;o++){let s=!1;for(let l of A){if(l.isLayoutOnly)continue;let g=Ti(l.points??[]);for(let C=0;C<=g.length-5;C++){let B=n(g,C);if(!B||!a(l,B))continue;l.points=B,s=!0;break}if(s)break}if(!s)return}}function OrA(A,e){let{realNodeRects:u,labelNodeRects:a}=A4(e.values()),n=A.filter((E)=>!E.isLayoutOnly),o=y((E,d,I)=>Ti(E===d?I??[]:E.points??[]),"pointsFor"),s=y((E,d)=>{let I=0;for(let h=0;h<n.length;h++){let Q=ii(o(n[h],E,d));for(let p=h+1;p<n.length;p++){let m=ii(o(n[p],E,d));for(let f of Q)for(let D of m)if(fI(f.a,f.b,D.a,D.b,Ot))I++}}return I},"strictCrossingCount"),l=y((E)=>{let d=ii(E);if(d.length!==3)return;let I=d[1];if(d[0].horizontal===I.horizontal||d[2].horizontal===I.horizontal)return;return{index:I.index,horizontal:I.horizontal,vertical:I.vertical,segment:I}},"middleRail"),g=y((E,d)=>{let I=[E.start,E.end].filter((h)=>Boolean(h));return u.filter((h)=>{if(I.includes(h.id))return!1;let Q=h.rect;if(d.horizontal)return ds(d.a.x,d.b.x,Q.left,Q.right)>=Go&&d.a.y>=Q.top-2&&d.a.y<=Q.bottom+2;return ds(d.a.y,d.b.y,Q.top,Q.bottom)>=Go&&d.a.x>=Q.left-2&&d.a.x<=Q.right+2})},"blockingRectsFor"),C=y((E,d,I)=>{let h=E.map((p)=>({...p}));if(d.horizontal)h[d.index].y=I,h[d.index+1].y=I;else if(d.vertical)h[d.index].x=I,h[d.index+1].x=I;else return;let Q=EE(Ti(h));return ii(Q).length===Q.length-1?Q:void 0},"candidateByMovingRail"),B=y((E,d,I)=>{let h=[E.start,E.end].filter((p)=>Boolean(p)),Q=ii(d);if(Q.length!==d.length-1)return!1;for(let p of Q){if(En(p.a,p.b,u,h,-2))return!1;if(En(p.a,p.b,a,[],-2))return!1}for(let p of n){if(p===E)continue;for(let m of Q)for(let f of ii(o(p)))if(BE(m,f,0.5)>=Go)return!1}return s(E,d)<=I},"candidateIsSafe");for(let E=0;E<8;E++){let d=s(),I=!1;for(let h of n){let Q=o(h),p=l(Q);if(!p)continue;let m=g(h,p.segment);if(m.length===0)continue;let f=p.horizontal?[Math.min(...m.map((D)=>D.rect.top))-20,Math.max(...m.map((D)=>D.rect.bottom))+20]:[Math.min(...m.map((D)=>D.rect.left))-20,Math.max(...m.map((D)=>D.rect.right))+20];for(let D of f){let w=C(Q,p.segment,D);if(!w||!B(h,w,d))continue;h.points=w,I=!0;break}if(I)break}if(!I)return}}function PrA(A,e){let r=y((o)=>{let s=o.groupTitleRect;if(!s||typeof s.left!=="number"||typeof s.right!=="number"||typeof s.top!=="number"||typeof s.bottom!=="number"||!Number.isFinite(s.left)||!Number.isFinite(s.right)||!Number.isFinite(s.top)||!Number.isFinite(s.bottom)||s.right<=s.left||s.bottom<=s.top)return;return{left:s.left,right:s.right,top:s.top,bottom:s.bottom}},"validTitleRect"),i=y((o)=>{if(!o.isGroup||o.parentId)return;let s=o.direction,l=typeof s==="string"?s.toUpperCase():"";if(l==="LR"||l==="RL"||l==="BT")return;let g=r(o),{y:C,height:B}=o;if(!g||typeof C!=="number"||typeof B!=="number"||!Number.isFinite(C)||!Number.isFinite(B)||B<=0)return;let E=g.right-g.left,d=g.bottom-g.top;if(d<=0||E<d)return;return{node:o,rect:g}},"topLaneTitleFor"),u=y((o,s)=>{if(!o.horizontal)return!1;let l=o.a.y;if(l<=s.top+Ot||l>=s.bottom-Ot)return!1;return ds(o.a.x,o.b.x,s.left,s.right)>=Go},"horizontalSegmentIntersectsTitle"),a=[...e.values()].map(i).filter((o)=>Boolean(o));if(a.length===0)return;let n=0;for(let o of A){if(o.isLayoutOnly)continue;let s=Ti(o.points??[]);for(let l of ii(s))for(let g of a){if(!u(l,g.rect))continue;n=Math.max(n,g.rect.bottom-l.a.y+4)}}if(n<=Ot)return;for(let o of a){let s=o.node.y,l=o.node.height;if(typeof s!=="number"||typeof l!=="number"||!Number.isFinite(s)||!Number.isFinite(l)||l<=0)continue;o.node.y=s-n/2,o.node.height=l+n,o.node.groupTitleRect={...o.rect,top:o.rect.top-n,bottom:o.rect.bottom-n}}}function _rA(A,e){let r=y((s)=>{let l=s.groupTitleRect;if(!l||typeof l.left!=="number"||typeof l.right!=="number"||typeof l.top!=="number"||typeof l.bottom!=="number"||!Number.isFinite(l.left)||!Number.isFinite(l.right)||!Number.isFinite(l.top)||!Number.isFinite(l.bottom)||l.right<=l.left||l.bottom<=l.top)return;return{left:l.left,right:l.right,top:l.top,bottom:l.bottom}},"validTitleRect"),i=y((s)=>{if(!s.isGroup||s.parentId)return;if(s.direction!=="LR")return;let g=r(s),{x:C,width:B}=s;if(!g||typeof C!=="number"||typeof B!=="number"||!Number.isFinite(C)||!Number.isFinite(B)||B<=0)return;let E=g.right-g.left,d=g.bottom-g.top;if(E<=0||d<E)return;return{node:s,rect:g}},"leftLaneTitleFor"),u=y((s,l)=>{if(!s.vertical)return!1;let g=s.a.x;if(g<=l.left+Ot||g>=l.right-Ot)return!1;return ds(s.a.y,s.b.y,l.top,l.bottom)>=Go},"verticalSegmentIntersectsTitle"),a=y((s,l)=>{if(!s.horizontal)return!1;let g=s.a.y;if(g<=l.top+Ot||g>=l.bottom-Ot)return!1;return ds(s.a.x,s.b.x,l.left,l.right)>=Go},"horizontalSegmentIntersectsTitle"),n=[...e.values()].map(i).filter((s)=>Boolean(s));if(n.length===0)return;let o=0;for(let s of A){if(s.isLayoutOnly)continue;let l=Ti(s.points??[]);for(let g of ii(l))for(let C of n)if(u(g,C.rect))o=Math.max(o,C.rect.right-g.a.x+4);else if(a(g,C.rect)){let B=Math.min(g.a.x,g.b.x);o=Math.max(o,C.rect.right-B+4)}}if(o<=Ot)return;for(let s of n){let l=s.node.x,g=s.node.width;if(typeof l!=="number"||typeof g!=="number"||!Number.isFinite(l)||!Number.isFinite(g)||g<=0)continue;s.node.x=l-o/2,s.node.width=g+o,s.node.groupTitleRect={...s.rect,left:s.rect.left-o,right:s.rect.right-o}}}function CMA(A,e){let{realNodeRects:i}=A4(e.values()),u=A.filter((d)=>!d.isLayoutOnly),a=y((d,I=new Map)=>Ti(I.get(d)??d.points??[]),"replacementPointsFor"),n=y((d=new Map)=>{let I=0;for(let h=0;h<u.length;h++){let Q=ii(a(u[h],d));for(let p=h+1;p<u.length;p++){let m=ii(a(u[p],d));for(let f of Q)for(let D of m)if(fI(f.a,f.b,D.a,D.b,Ot))I++}}return I},"crossingCount"),o=y((d=new Map)=>u.reduce((I,h)=>I+og(a(h,d)),0),"totalBends"),s=y((d)=>{let I=a(d);if(I.length<4)return;let h=I[I.length-2],Q=I[I.length-1];if(!qa(h,Q,Ot)&&!za(h,Q,Ot))return;return{tailStart:h,terminal:Q}},"terminalTailFor"),l=y((d,I)=>{let h=a(d);if(h.length<3)return;let Q=h[0],p=h[1],m;if(qa(Q,p,Ot))m={x:p.x,y:I.tailStart.y};else if(za(Q,p,Ot))m={x:I.tailStart.x,y:p.y};else return;let f=EE(Ti([Q,p,m,I.tailStart,I.terminal]));return ii(f).length===f.length-1?f:void 0},"candidateWithDestinationTail"),g=y((d,I)=>{let h=[d.start,d.end].filter((Q)=>Boolean(Q));for(let Q of ii(I))if(En(Q.a,Q.b,i,h,-2))return!0;return!1},"pathHasNodeHit"),C=y((d,I,h)=>{for(let Q of u){if(Q===d)continue;for(let p of ii(I))for(let m of ii(a(Q,h)))if(BE(p,m,0.5)>=Go)return!0}return!1},"pathHasSharedTrack"),B=y((d,I,h)=>!g(d,I)&&!C(d,I,h),"candidateIsSafe"),E=y(()=>{let d=new Map;for(let I of u){let h=I.end;if(!h||!e.has(h))continue;if(a(I).length<4)continue;let p=d.get(h)??[];p.push(I),d.set(h,p)}return d},"edgesByDestination");for(let d=0;d<4;d++){let I=n();if(I===0)return;let h=o(),Q,p=I,m=h;for(let f of E().values())for(let D=0;D<f.length;D++)for(let w=D+1;w<f.length;w++){let b=f[D],k=f[w],v=s(b),S=s(k);if(!v||!S)continue;let x=l(b,S),F=l(k,v);if(!x||!F)continue;let T=new Map([[b,x],[k,F]]);if(!B(b,x,T)||!B(k,F,T))continue;let R=n(T),L=o(T);if(R>=I)continue;if(R>p||R===p&&L>=m)continue;Q=T,p=R,m=L}if(!Q)return;for(let[f,D]of Q)f.points=D}}function BMA(A,e){let{realNodeRects:a,labelNodeRects:n}=A4(e.values()),o=A.filter((f)=>!f.isLayoutOnly),s=y((f,D=new Map)=>Ti(D.get(f)??f.points??[]),"replacementPointsFor"),l=y((f=new Map)=>{let D=0;for(let w=0;w<o.length;w++){let b=ii(s(o[w],f));for(let k=w+1;k<o.length;k++){let v=ii(s(o[k],f));for(let S of b)for(let x of v)if(fI(S.a,S.b,x.a,x.b,Ot))D++}}return D},"strictCrossingCount"),g=y((f=new Map)=>o.reduce((D,w)=>D+og(s(w,f)),0),"totalBends"),C=y((f)=>{let{start:D,end:w}=f,b=D?e.get(D):void 0,k=w?e.get(w):void 0,v=b?cl(b):void 0,S=k?cl(k):void 0;return v&&S?{src:v,dst:S}:void 0},"endpointRectsFor"),B=y((f,D,w)=>{if(w.index<=0||w.index+1>=D.length-1)return;let b=C(f);if(!b)return;if(w.vertical){let k=w.a.x,v=Math.min(b.src.left,b.dst.left),S=Math.max(b.src.right,b.dst.right),x=k<v-Ot?"left":k>S+Ot?"right":void 0;if(!x)return;return{edge:f,points:D,segmentIndex:w.index,axis:"vertical",side:x,coord:k,min:Math.min(w.a.y,w.b.y),max:Math.max(w.a.y,w.b.y)}}if(w.horizontal){let k=w.a.y,v=Math.min(b.src.top,b.dst.top),S=Math.max(b.src.bottom,b.dst.bottom),x=k<v-Ot?"top":k>S+Ot?"bottom":void 0;if(!x)return;return{edge:f,points:D,segmentIndex:w.index,axis:"horizontal",side:x,coord:k,min:Math.min(w.a.x,w.b.x),max:Math.max(w.a.x,w.b.x)}}return},"externalRailForSegment"),E=y(()=>{let f=[];for(let D of o){let w=s(D);for(let b of ii(w)){let k=B(D,w,b);if(k)f.push(k)}}return f},"collectExternalRails"),d=y((f,D)=>f.edge!==D.edge&&f.axis===D.axis&&f.side===D.side&&ds(f.min,f.max,D.min,D.max)>=Go,"railsInteract"),I=y((f)=>{let D=[],w=new Set;for(let b of f){if(w.has(b))continue;let k=[b],v=[];w.add(b);while(k.length>0){let S=k.pop();v.push(S);for(let x of f)if(!w.has(x)&&d(S,x))w.add(x),k.push(x)}if(v.length>1)D.push(v)}return D},"connectedComponents"),h=y((f)=>{let D=[];for(let w of f)if(!D.some((b)=>Math.abs(b-w.coord)<Ot))D.push(w.coord);while(D.length<f.length){let w=Math.min(...D),b=Math.max(...D),k=f[0].side;D.push(k==="left"||k==="top"?w-12*(f.length-D.length):b+12*(f.length-D.length))}return D},"uniqueCoordsFor"),Q=y((f)=>{let D=f.map((k)=>k.coord),w=h(f),b=[];if(f.length<=6){let k=Array(w.length).fill(!1),v=[],S=y(()=>{if(v.length===f.length){if(v.some((x,F)=>Math.abs(x-D[F])>=Ot))b.push([...v]);return}for(let[x,F]of w.entries()){if(k[x])continue;k[x]=!0,v.push(F),S(),v.pop(),k[x]=!1}},"visit");return S(),b}for(let k=0;k<D.length;k++)for(let v=k+1;v<D.length;v++){let S=[...D];[S[k],S[v]]=[S[v],S[k]],b.push(S)}return b},"coordinateAssignmentsFor"),p=y((f,D)=>{let w=new Map;for(let[k,v]of f.entries()){let S=D[k],x=w.get(v.edge)??v.points.map((F)=>({x:F.x,y:F.y}));if(v.axis==="vertical")x[v.segmentIndex].x=S,x[v.segmentIndex+1].x=S;else x[v.segmentIndex].y=S,x[v.segmentIndex+1].y=S;w.set(v.edge,x)}let b=new Map;for(let[k,v]of w){let S=EE(Ti(v));if(ii(S).length!==S.length-1)return;b.set(k,S)}return b},"replacementsForAssignment"),m=y((f)=>{for(let[D,w]of f){let b=[D.start,D.end].filter((k)=>Boolean(k));for(let k of ii(w)){if(En(k.a,k.b,a,b,-2))return!1;if(En(k.a,k.b,n,[],-2))return!1}}for(let D=0;D<o.length;D++){let w=o[D],b=f.has(w),k=ii(s(w,f));for(let v=D+1;v<o.length;v++){let S=o[v];if(!b&&!f.has(S))continue;let x=ii(s(S,f));for(let F of k)for(let T of x)if(BE(F,T,0.5)>=Go)return!1}}return!0},"candidateIsSafe");for(let f=0;f<4;f++){let D=l();if(D===0)return;let w,b=D,k=g(),v=Number.POSITIVE_INFINITY;for(let S of I(E()))for(let x of Q(S)){let F=p(S,x);if(!F||!m(F))continue;let T=l(F);if(T>=D)continue;let R=g(F),L=S.reduce((M,U,Y)=>M+Math.abs(x[Y]-U.coord),0);if(T>b||T===b&&(R>k||R===k&&L>=v))continue;w=F,b=T,k=R,v=L}if(!w)return;for(let[S,x]of w)S.points=x}}function EMA(A,e){let{realNodeRects:i,labelNodeRects:u}=A4(e.values()),a=A.filter((E)=>!E.isLayoutOnly),n=y((E,d,I)=>Ti(E===d?I??[]:E.points??[]),"pointsFor"),o=y((E)=>ii(E).reduce((d,I)=>{let h=I.a.x-I.b.x,Q=I.a.y-I.b.y;return d+Math.hypot(h,Q)},0),"pathLength"),s=y((E,d)=>{let I=0;for(let h=0;h<a.length;h++){let Q=ii(n(a[h],E,d));for(let p=h+1;p<a.length;p++){let m=ii(n(a[p],E,d));for(let f of Q)for(let D of m)if(fI(f.a,f.b,D.a,D.b,Ot))I++}}return I},"strictCrossingCount"),l=y((E,d)=>{if(E.horizontal){let I=E.a.y;return(Math.abs(I-d.top)<1||Math.abs(I-d.bottom)<1)&&ds(E.a.x,E.b.x,d.left,d.right)>=Go}if(E.vertical){let I=E.a.x;return(Math.abs(I-d.left)<1||Math.abs(I-d.right)<1)&&ds(E.a.y,E.b.y,d.top,d.bottom)>=Go}return!1},"segmentRunsAlongRectBorder"),g=y((E)=>{let d=[E.start,E.end].filter((h)=>Boolean(h)),I=[];for(let h of d){let Q=e.get(h),p=Q?cl(Q):void 0;if(p)I.push(p)}return I},"endpointRectsFor"),C=y((E,d)=>{if(d+3>=E.length)return[];let I=E[d],h=E[d+1],Q=E[d+2],p=E[d+3],m=qa(I,h,Ot)&&za(h,Q,Ot)&&qa(Q,p,Ot),f=za(I,h,Ot)&&qa(h,Q,Ot)&&za(Q,p,Ot);if(!m&&!f)return[];if(!(m?Math.sign(h.x-I.x)!==Math.sign(p.x-Q.x):Math.sign(h.y-I.y)!==Math.sign(p.y-Q.y)))return[];let w=Bi(I,p,Ot)||fi(I,p,Ot)?[]:[{x:I.x,y:p.y},{x:p.x,y:I.y}],b=w.length===0?[[...E.slice(0,d+1),...E.slice(d+3)]]:w.map((v)=>[...E.slice(0,d+1),v,...E.slice(d+3)]),k=new Set;return b.map((v)=>EE(Ti(v))).filter((v)=>{if(ii(v).length!==v.length-1)return!1;if(!v.some((x)=>ec(x,p,Ot)))return!1;let S=v.map((x)=>`${x.x.toFixed(3)},${x.y.toFixed(3)}`).join("|");if(k.has(S))return!1;return k.add(S),!0})},"shortcutCandidatesAt"),B=y((E,d,I)=>{let h=[E.start,E.end].filter((p)=>Boolean(p)),Q=g(E);for(let p of ii(d)){if(En(p.a,p.b,i,h,-2))return!1;if(En(p.a,p.b,u,[],-2))return!1;if(Q.some((m)=>l(p,m)))return!1}for(let p of a){if(p===E)continue;for(let m of ii(d))for(let f of ii(n(p)))if(BE(m,f,0.5)>=Go)return!1}return s(E,d)<=I},"candidateIsSafe");for(let E=0;E<8;E++){let d=s(),I,h,Q=d,{POSITIVE_INFINITY:p,POSITIVE_INFINITY:m}=Number;for(let f of a){let D=n(f),w=og(D,Ot),b=o(D);for(let k=0;k<=D.length-4;k++)for(let v of C(D,k)){let S=og(v,Ot),x=o(v);if(!(S<w||S===w&&x<b-Ot)||!B(f,v,d))continue;let T=s(f,v);if(T>Q||T===Q&&(S>p||S===p&&x>=m))continue;I=f,h=v,Q=T,p=S,m=x}}if(!I||!h)return;I.points=h}}function dMA(A,e){let a=[];for(let IA of e.values()){if(IA.isGroup||IA.isEdgeLabel)continue;let bA=IA.x??0,SA=IA.y??0,EA=cl(IA);if(!EA)continue;a.push({id:String(IA.id??""),cx:bA,cy:SA,rect:EA})}if(a.length===0)return;let n=new Map(a.map((IA)=>[IA.id,IA])),o=a.map((IA)=>({id:IA.id,rect:IA.rect})),s=["top","bottom","left","right"],l={top:Math.min(...a.map((IA)=>IA.rect.top))-20,bottom:Math.max(...a.map((IA)=>IA.rect.bottom))+20,left:Math.min(...a.map((IA)=>IA.rect.left))-20,right:Math.max(...a.map((IA)=>IA.rect.right))+20},g=A.filter((IA)=>!IA.isLayoutOnly),C=new Map(g.map((IA,bA)=>[IA,bA])),B=y((IA)=>{let bA=IA==="left"||IA==="top"?-1:1,SA=[];for(let EA=0;EA<=2;EA++)SA.push(l[IA]+bA*20*EA);return SA},"outwardTracksForSide"),E=y((IA,bA=new Map)=>Ti(bA.get(IA)??IA.points??[]),"replacementPointsFor"),d=y((IA,bA)=>{let SA=0;for(let EA of IA)for(let nA of bA)if(fI(EA.a,EA.b,nA.a,nA.b,Ot))SA++;return SA},"crossingCountBetweenSegments"),I=y((IA,bA)=>d(ii(IA),ii(bA)),"crossingCountBetweenPaths"),h=y((IA=new Map)=>{let bA=0,SA=[],EA=new Set,nA=[],eA=y((BA)=>{if(!EA.has(BA))EA.add(BA),nA.push(BA)},"addEdge");for(let BA=0;BA<g.length;BA++){let yA=g[BA],vA=E(yA,IA);for(let FA=BA+1;FA<g.length;FA++){let HA=g[FA],dA=I(vA,E(HA,IA));if(dA>0)bA+=dA,SA.push({first:yA,second:HA,count:dA}),eA(yA),eA(HA)}}return nA.sort((BA,yA)=>(C.get(BA)??0)-(C.get(yA)??0)),{count:bA,pairs:SA,edgeSet:EA,edges:nA}},"crossingSnapshot"),Q=y((IA,bA)=>{let SA=new Set(bA.keys());if(SA.size===0)return IA.count;let EA=0;for(let eA of IA.pairs)if(SA.has(eA.first)||SA.has(eA.second))EA+=eA.count;let nA=0;for(let eA=0;eA<g.length;eA++){let BA=g[eA],yA=SA.has(BA),vA=E(BA,bA);for(let FA=eA+1;FA<g.length;FA++){let HA=g[FA];if(!yA&&!SA.has(HA))continue;nA+=I(vA,E(HA,bA))}}return IA.count-EA+nA},"crossingCountWithReplacements"),p=y((IA)=>{let bA=new Map;for(let nA of IA.pairs){let eA=bA.get(nA.first)??new Set;eA.add(nA.second),bA.set(nA.first,eA);let BA=bA.get(nA.second)??new Set;BA.add(nA.first),bA.set(nA.second,BA)}let SA=[],EA=new Set;for(let nA of IA.edges){if(EA.has(nA))continue;let eA=[nA],BA=[];EA.add(nA);while(eA.length>0){let yA=eA.pop();BA.push(yA);for(let vA of bA.get(yA)??[])if(!EA.has(vA))EA.add(vA),eA.push(vA)}if(BA.sort((yA,vA)=>(C.get(yA)??0)-(C.get(vA)??0)),BA.length>1)SA.push(BA)}return SA},"crossingComponents"),m=y((IA)=>[IA.start,IA.end].filter((bA)=>Boolean(bA)),"endpointIdsFor"),f=y((IA)=>{let bA=[];for(let SA of p(IA)){let EA=new Set(SA),nA=new Set(SA.flatMap((BA)=>m(BA))),eA=[...SA];for(let BA of g){if(EA.has(BA))continue;if(m(BA).some((yA)=>nA.has(yA)))eA.push(BA)}eA.sort((BA,yA)=>(C.get(BA)??0)-(C.get(yA)??0)),bA.push(eA)}return bA},"pairSearchGroups"),D=y((IA,bA,SA)=>Q(IA,new Map([[bA,SA]])),"crossingCountWithSingleReplacement"),w=y((IA)=>{let bA=new Map;for(let SA of IA.pairs)bA.set(SA.first,(bA.get(SA.first)??0)+SA.count),bA.set(SA.second,(bA.get(SA.second)??0)+SA.count);return bA},"currentCrossingsByEdge"),b=y((IA)=>IA.slice(1).reduce((bA,SA,EA)=>{let nA=IA[EA];return bA+Math.abs(SA.x-nA.x)+Math.abs(SA.y-nA.y)},0),"pathLength"),k=y((IA=new Map)=>g.reduce((bA,SA)=>bA+og(E(SA,IA)),0),"totalBends"),v=y((IA=new Map)=>g.reduce((bA,SA)=>bA+b(E(SA,IA)),0),"totalLength"),S=y((IA,bA,SA=new Map)=>{let EA=ii(bA);for(let nA of g){if(nA===IA)continue;for(let eA of EA)for(let BA of ii(E(nA,SA)))if(BE(eA,BA,0.5)>=Go)return!0}return!1},"pathHasSegmentConflict"),x=y((IA,bA)=>{let SA=[IA.start,IA.end].filter((EA)=>Boolean(EA));for(let EA of ii(bA))if(En(EA.a,EA.b,o,SA,-2))return!0;return!1},"pathHitsNode"),F=y((IA,bA)=>{let SA=EE(Ti(bA));if(ii(SA).length===SA.length-1)IA.push(SA)},"pushOrthogonalCandidate"),T=y((IA)=>IA==="left"||IA==="right","sideIsHorizontal"),R=y((IA,bA,SA)=>{switch(bA){case"left":return Math.min(IA.x,SA.x)-20;case"right":return Math.max(IA.x,SA.x)+20;case"top":return Math.min(IA.y,SA.y)-20;case"bottom":return Math.max(IA.y,SA.y)+20}},"localTrackForSameSide"),L=y((IA,bA,SA,EA)=>{let nA=SA==="left"||SA==="top"?-1:1,eA=[R(bA,SA,EA),l[SA]];for(let BA of eA)for(let yA=0;yA<=2;yA++)F(IA,giA(bA,SA,EA,BA+nA*20*yA))},"addSameSideCandidates"),M=y((IA,bA,SA,EA,nA)=>{for(let eA of B(SA))for(let BA of B(nA))F(IA,[bA,{x:eA,y:bA.y},{x:eA,y:BA},{x:EA.x,y:BA},EA])},"addHorizontalToVerticalCandidates"),U=y((IA,bA,SA,EA,nA)=>{for(let eA of B(SA))for(let BA of B(nA))F(IA,[bA,{x:bA.x,y:eA},{x:BA,y:eA},{x:BA,y:EA.y},EA])},"addVerticalToHorizontalCandidates"),Y=y((IA,bA,SA,EA,nA)=>{let eA=[...B("top"),...B("bottom")];for(let BA of B(SA))for(let yA of B(nA))for(let vA of eA)F(IA,[bA,{x:BA,y:bA.y},{x:BA,y:vA},{x:yA,y:vA},{x:yA,y:EA.y},EA])},"addHorizontalPairCandidates"),H=y((IA,bA,SA,EA,nA)=>{let eA=[...B("left"),...B("right")];for(let BA of B(SA))for(let yA of B(nA))for(let vA of eA)F(IA,[bA,{x:bA.x,y:BA},{x:vA,y:BA},{x:vA,y:yA},{x:EA.x,y:yA},EA])},"addVerticalPairCandidates"),J=y((IA)=>{let bA=new Set;return IA.map((SA)=>Ti(SA)).filter((SA)=>{let EA=SA.map((nA)=>`${nA.x.toFixed(3)},${nA.y.toFixed(3)}`).join("|");if(bA.has(EA)||SA.length<2)return!1;return bA.add(EA),!0})},"dedupeCandidatePaths"),K=y((IA,bA,SA,EA)=>{let nA=[],eA=liA(IA,bA,SA,EA,20,Ot);if(eA)F(nA,eA);if(bA===EA)L(nA,IA,bA,SA);let BA=T(bA),yA=T(EA);if(BA&&!yA)M(nA,IA,bA,SA,EA);else if(!BA&&yA)U(nA,IA,bA,SA,EA);else if(BA)Y(nA,IA,bA,SA,EA);else H(nA,IA,bA,SA,EA);return J(nA)},"buildCandidatesForSides"),O=y((IA,bA,SA,EA)=>{let nA=[...B("left"),...B("right")],eA=[...B("top"),...B("bottom")];for(let BA of s){let yA=Gf(EA,BA),vA=BA==="top"||BA==="bottom"?B(BA):eA;for(let FA of nA){F(IA,[bA,SA,{x:FA,y:SA.y},{x:FA,y:yA.y},yA]);for(let HA of vA)F(IA,[bA,SA,{x:FA,y:SA.y},{x:FA,y:HA},{x:yA.x,y:HA},yA])}}},"addVerticalDepartureOuterTrackCandidates"),P=y((IA,bA,SA,EA)=>{let nA=[...B("left"),...B("right")],eA=[...B("top"),...B("bottom")];for(let BA of s){let yA=Gf(EA,BA),vA=BA==="left"||BA==="right"?B(BA):nA;for(let FA of eA){F(IA,[bA,SA,{x:SA.x,y:FA},{x:yA.x,y:FA},yA]);for(let HA of vA)F(IA,[bA,SA,{x:SA.x,y:FA},{x:HA,y:FA},{x:HA,y:yA.y},yA])}}},"addHorizontalDepartureOuterTrackCandidates"),z=y((IA)=>{let{start:bA,end:SA}=IA,EA=SA?n.get(SA):void 0;if(!bA||!EA)return[];let nA=Ti(IA.points??[]);if(nA.length<4)return[];let eA=nA[0],BA=nA[1],yA=[];if(za(eA,BA,Ot))O(yA,eA,BA,EA);else if(qa(eA,BA,Ot))P(yA,eA,BA,EA);return yA},"terminalPreservingOuterTrackCandidates"),AA=y((IA)=>{let{start:bA,end:SA}=IA,EA=bA?n.get(bA):void 0,nA=SA?n.get(SA):void 0;if(!EA||!nA)return[];let eA=[];for(let BA of s){let yA=Gf(EA,BA);for(let vA of s)eA.push(...K(yA,BA,Gf(nA,vA),vA))}return eA.push(...z(IA)),eA},"candidatePathsFor"),W=y(()=>new Map(g.map((IA)=>[IA,ii(E(IA))])),"currentSegmentsByEdge"),CA=y((IA,bA,SA)=>{let EA=new Set;for(let nA of g){if(nA===IA)continue;let eA=SA.get(nA)??ii(E(nA));if(bA.some((BA)=>eA.some((yA)=>BE(BA,yA,0.5)>=Go)))EA.add(nA)}return EA},"sharedTrackConflictsFor"),tA=y((IA,bA,SA,EA)=>{let nA=new Set;return AA(IA).map((BA)=>EE(Ti(BA))).filter((BA)=>{if(x(IA,BA))return!1;let yA=BA.map((vA)=>`${vA.x.toFixed(3)},${vA.y.toFixed(3)}`).join("|");if(nA.has(yA)||BA.length<2)return!1;return nA.add(yA),!0}).map((BA)=>{let yA=ii(BA),vA=0;for(let FA of g){if(FA===IA)continue;vA+=d(yA,SA.get(FA)??ii(E(FA)))}return{candidate:BA,candidateSegments:yA,crossings:bA.count-(EA.get(IA)??0)+vA,bends:og(BA,Ot),totalBends:og(BA),length:b(BA)}}).filter(({crossings:BA})=>BA<=bA.count).sort((BA,yA)=>BA.crossings-yA.crossings||BA.bends-yA.bends||BA.length-yA.length).slice(0,48).map((BA)=>({path:BA.candidate,segments:BA.candidateSegments,sharedTrackConflicts:CA(IA,BA.candidateSegments,SA),totalBends:BA.totalBends,length:BA.length}))},"pairCandidatesFor"),lA=y((IA,bA,SA,EA,nA,eA)=>{let BA=0;for(let vA of IA.pairs)if(vA.first===bA||vA.second===bA||vA.first===EA||vA.second===EA)BA+=vA.count;let yA=d(SA.segments,nA.segments);for(let vA of g){if(vA===bA||vA===EA)continue;let FA=eA.get(vA)??ii(E(vA));yA+=d(SA.segments,FA)+d(nA.segments,FA)}return IA.count-BA+yA},"pairCrossingCount"),gA=y((IA,bA)=>{for(let SA of IA.sharedTrackConflicts)if(SA!==bA)return!1;return!0},"conflictsOnlyWith"),aA=y((IA,bA)=>IA.segments.some((SA)=>bA.segments.some((EA)=>BE(SA,EA,0.5)>=Go)),"candidatesShareTrack"),NA=y((IA,bA,SA,EA)=>gA(bA,SA.edge)&&gA(EA,IA.edge)&&!aA(bA,EA),"pairCandidatesAreCompatible"),DA=y((IA,bA,SA,EA,nA)=>{let eA=lA(IA.current,bA.edge,SA,EA.edge,nA,IA.baseSegments);if(eA>=IA.current.count)return;return{replacements:new Map([[bA.edge,SA.path],[EA.edge,nA.path]]),crossings:eA,bends:IA.currentBends-(IA.baseBendsByEdge.get(bA.edge)??0)-(IA.baseBendsByEdge.get(EA.edge)??0)+SA.totalBends+nA.totalBends,length:IA.currentLength-(IA.baseLengthByEdge.get(bA.edge)??0)-(IA.baseLengthByEdge.get(EA.edge)??0)+SA.length+nA.length}},"scorePairReplacement"),KA=y((IA,bA)=>IA.crossings<bA.crossings||IA.crossings===bA.crossings&&(IA.bends<bA.bends||IA.bends===bA.bends&&IA.length<bA.length),"pairScoreIsBetter"),TA=y((IA,bA,SA,EA)=>{let nA=EA;for(let eA of bA.candidates)for(let BA of SA.candidates){if(!NA(bA,eA,SA,BA))continue;let yA=DA(IA,bA,eA,SA,BA);if(yA&&KA(yA,nA))nA=yA}return nA},"bestScoreForOptionPair"),qA=y((IA)=>{let bA=k(),SA=v(),EA=W(),nA=w(IA),eA=new Map(g.map((dA)=>[dA,og(E(dA))])),BA=new Map(g.map((dA)=>[dA,b(E(dA))])),yA=new Map,vA=f(IA);for(let dA of vA)for(let q of dA){if(yA.has(q))continue;let Z=tA(q,IA,EA,nA);if(Z.length>0)yA.set(q,{edge:q,candidates:Z})}let FA={replacements:new Map,crossings:IA.count,bends:bA,length:SA},HA={current:IA,currentBends:bA,currentLength:SA,baseBendsByEdge:eA,baseLengthByEdge:BA,baseSegments:EA};for(let dA of vA){let q=new Set(dA.filter((fA)=>IA.edgeSet.has(fA))),Z=dA.map((fA)=>yA.get(fA)).filter((fA)=>Boolean(fA));for(let fA=0;fA<Z.length;fA++){let j=Z[fA];for(let mA=fA+1;mA<Z.length;mA++){let rA=Z[mA];if(!q.has(j.edge)&&!q.has(rA.edge))continue;FA=TA(HA,j,rA,FA)}}}return FA.replacements.size>0?FA.replacements:void 0},"bestPairedReplacement");for(let IA=0;IA<4;IA++){let bA=h(),SA=bA.count;if(SA===0)return;let EA,nA,eA=SA,BA=Number.POSITIVE_INFINITY;for(let vA of bA.edges){let FA=og(E(vA),Ot);for(let HA of AA(vA)){let dA=x(vA,HA),q=!dA&&S(vA,HA),Z=D(bA,vA,HA),fA=og(HA,Ot);if(dA||q)continue;if(!(Z<SA||Z===SA&&fA<FA))continue;if(Z>eA||Z===eA&&fA>=BA)continue;EA=vA,nA=HA,eA=Z,BA=fA}}if(EA&&nA){EA.points=nA;continue}let yA=qA(bA);if(!yA)return;for(let[vA,FA]of yA)vA.points=FA}}function IMA(A,e){let{nodeInfoById:t,realNodeRects:r}=VM(e),i=["top","bottom","left","right"],u=20,a={top:Math.min(...r.map((d)=>d.rect.top))-20,bottom:Math.max(...r.map((d)=>d.rect.bottom))+20,left:Math.min(...r.map((d)=>d.rect.left))-20,right:Math.max(...r.map((d)=>d.rect.right))+20},n=y((d,I,h,Q)=>{let p=[],m=liA(d,I,h,Q,20,$Q);if(m)p.push(m);if(I===Q)p.push(giA(d,I,h,a[I]));return p},"buildOrthogonalPathCandidates"),o=y((d,I)=>{for(let h=0;h<d.length-1;h++){let Q=d[h],p=d[h+1];if(En(Q,p,r,I,1))return!0}return!1},"pathHitsNode"),s=y((d,I,h=!1)=>{let Q=0,p=Gy(d,$Q),{start:m,end:f}=I;for(let D of A){if(D===I||D.isLayoutOnly)continue;let{start:w,end:b}=D;if(!h&&m&&f&&(w===m||w===f||b===m||b===f))continue;let k=D.points;if(!k||k.length<2)continue;for(let v of p)for(let S of Gy(k,$Q)){if(CiA(v.a,v.b,S.a,S.b,$Q,$Q)){Q++;continue}if(BE(v,S,$Q)>=Iht)Q++}}return Q},"pathConflictCount"),l=4,g=y((d,I)=>{let h=Math.abs(d.y-I.rect.top),Q=Math.abs(d.y-I.rect.bottom),p=Math.abs(d.x-I.rect.left),m=Math.abs(d.x-I.rect.right),f="top",D=h;if(Q<D)f="bottom",D=Q;if(p<D)f="left",D=p;if(m<D)f="right",D=m;return f},"nearestSideOfRect"),C=new Map,B=y((d,I,h)=>{let Q=C.get(d)??[];Q.push({side:I,edgeId:h}),C.set(d,Q)},"addFaceClaim");for(let d of A){if(d.isLayoutOnly)continue;let I=d.points??[];if(I.length<1)continue;let h=d.id??"",{start:Q,end:p}=d;if(Q){let m=t.get(Q);if(m)B(Q,g(I[0],m),h)}if(p){let m=t.get(p);if(m)B(p,g(I[I.length-1],m),h)}}let E=y((d,I,h)=>C.get(d)?.some((Q)=>Q.edgeId!==h&&Q.side===I)??!1,"faceIsClaimed");for(let d of A){if(d.isLayoutOnly)continue;let I=d.points;if(!I||I.length<2)continue;let h=og(I,$Q);if(h<4)continue;let{start:Q,end:p}=d;if(!Q||!p)continue;let m=t.get(Q),f=t.get(p);if(!m||!f)continue;let D=d.id??"",w=s(I,d,!0),b=s(I,d),k,v=w,S=h;for(let x of i){if(E(Q,x,D))continue;let F=Gf(m,x);for(let T of i){if(E(p,T,D))continue;let R=Gf(f,T);for(let L of n(F,x,R,T)){if(o(L,[Q,p]))continue;let M=og(L,$Q);if(w>0){let U=s(L,d,!0);if(U>v||U===v&&M>=S)continue;v=U,S=M,k=L;continue}if(s(L,d)>b)continue;if(M<S)S=M,k=L}}}if(k){d.points=k;let x=C.get(Q);if(x)C.set(Q,x.filter((T)=>T.edgeId!==D));let F=C.get(p);if(F)C.set(p,F.filter((T)=>T.edgeId!==D));B(Q,g(k[0],m),D),B(p,g(k[k.length-1],f),D)}}}function WrA(A,e){let t=e?0:A.length-1,r=e?1:-1,i=A[t],u=A[t+r];if(!i||!u)return;let a=u.x-i.x,n=u.y-i.y;if(Math.abs(a)+Math.abs(n)<gl)return;if(Math.abs(n)<=gl){let s=i.x+Math.sign(a)*wUA;return{left:Math.min(i.x,s),right:Math.max(i.x,s),top:i.y-GM,bottom:i.y+GM}}if(Math.abs(a)<=gl){let s=i.y+Math.sign(n)*wUA;return{left:i.x-GM,right:i.x+GM,top:Math.min(i.y,s),bottom:Math.max(i.y,s)}}return{left:Math.min(i.x,u.x),right:Math.max(i.x,u.x),top:Math.min(i.y,u.y),bottom:Math.max(i.y,u.y)}}function hMA(A){return{left:Math.min(A.left,A.right),right:Math.max(A.left,A.right),top:Math.min(A.top,A.bottom),bottom:Math.max(A.top,A.bottom)}}function qrA(A,e){let t=Ti(e),r=WrA(t,!0),i=WrA(t,!1);return[r,i].some((u)=>u&&HM(A,hMA(u)))}function MM(A,e){let t=[];for(let E of A){if(E.isLayoutOnly)continue;let d=E.points;if(!d||d.length<2)continue;for(let I=0;I<d.length-1;I++)t.push({edgeId:E.id,p1:d[I],p2:d[I+1]})}let r=[],i=[];for(let E of e.values()){let{isGroup:d,parentId:I}=E;if(d&&!I){let Q=cl(E);if(Q)i.push({id:E.id,rect:Q});continue}if(d)continue;if(E.isEdgeLabel)continue;let h=cl(E);if(!h)continue;r.push({nodeId:E.id,rect:h})}let u=3,a=1,n=12,o=y((E,d)=>{let I=xrA(d,u);for(let{nodeId:h,rect:Q}of r){if(h===E)continue;if(HM(I,Q))return!0}return!1},"labelOverlapsForeignNode"),s=y((E,d)=>{let I=xrA(d,u);for(let h of t){if(h.edgeId===E)continue;if(ZM(h.p1,h.p2,I))return!0}return!1},"labelOverlapsForeignEdge"),l=y((E,d,I)=>o(E,I)||s(d,I),"labelOverlapsAnything"),g=[],C=y((E)=>{for(let{id:d,rect:I}of i)if(WUA(I,E))return d;return},"findContainingLane"),B=y((E,d)=>g.some((I)=>I.labelId!==E&&HM(d,I.rect)),"overlapsPlacedLabel");for(let E of A){if(E.isLayoutOnly)continue;let d=E.labelNodeId;if(!d)continue;let I=e.get(d);if(!I)continue;let h=E.points;if(!h||h.length<2)continue;let Q=I.width??0,p=I.height??0;if(Q<=0||p<=0)continue;let m=[];for(let J=0;J<h.length-1;J++){let K=h[J],O=h[J+1],P=Math.abs(K.x-O.x),z=Math.abs(K.y-O.y);if(P<gl&&z<gl)continue;if(P>=gl&&z>=gl)continue;m.push({idx:J,length:P+z,orientation:P>=gl?"horizontal":"vertical",midX:(K.x+O.x)/2,midY:(K.y+O.y)/2})}if(m.length===0)continue;let f=m.length>=3?m.filter((J)=>J.idx>0&&J.idx<m.length-1):m,D=f.length>0?f:m,w=Q>=p?"horizontal":"vertical",b=y((J)=>[...J].sort((K,O)=>{let P=K.orientation===w,z=O.orientation===w;if(P!==z)return P?-1:1;let AA=K.length>=(K.orientation==="horizontal"?Q:p)+2,W=O.length>=(O.orientation==="horizontal"?Q:p)+2;if(AA!==W)return AA?-1:1;return O.length-K.length}),"rankSegments"),k=m[0],v=m[m.length-1],S=[0.5,0.25,0.75,0.05,0.95,0.15,0.85,0.1,0.9],x=y((J,K)=>{let O=h[J.idx],P=h[J.idx+1];return{midX:O.x+(P.x-O.x)*K,midY:O.y+(P.y-O.y)*K}},"anchorAtT"),F=y((J,K,O)=>Math.min(O,Math.max(K,J)),"clamp"),T=y((J,K)=>J.midX>=K.left-gl&&J.midX<=K.right+gl&&J.midY>=K.top-gl&&J.midY<=K.bottom+gl,"pointInsideRectInclusive"),R=y((J)=>{let K=Ny(J.midX,J.midY,Q,p),O=C(K);if(O)return{laneId:O,anchor:J,rect:K};let P=i.find(({rect:gA})=>T(J,gA));if(!P)return;let z=P.rect.left+Q/2+a,AA=P.rect.right-Q/2-a,W=P.rect.top+p/2+a,CA=P.rect.bottom-p/2-a;if(z>AA||W>CA)return;let tA={midX:F(J.midX,z,AA),midY:F(J.midY,W,CA)},lA=Ny(tA.midX,tA.midY,Q,p);return T(J,lA)?{laneId:P.id,anchor:tA,rect:lA}:void 0},"placementForAnchor"),L=y((J,K,O)=>J.orientation==="horizontal"?Math.abs(K.midX-O.x):Math.abs(K.midY-O.y),"distanceAlongSegment"),M=y((J,K)=>{let P=(J.orientation==="horizontal"?Q/2:p/2)+n;if(J===k){let z=h[J.idx];if(L(J,K,z)+gl<P)return!1}if(J===v){let z=h[J.idx+1];if(L(J,K,z)+gl<P)return!1}return!0},"labelClearsTerminalEndpoints"),U=y((J)=>{let K=b(J);for(let O of K)for(let P of S){let z=x(O,P);if(!M(O,z))continue;let AA=R(z);if(!AA)continue;if(qrA(AA.rect,h))continue;if(B(d,AA.rect))continue;if(!l(d,E.id,AA.rect))return{laneId:AA.laneId,anchor:AA.anchor}}return},"tryPool"),Y=y((J,K,O=!1)=>{let P=b(J);for(let z of P){let AA={midX:z.midX,midY:z.midY};if(K&&!M(z,AA))continue;let W=R(AA);if(W&&!qrA(W.rect,h)&&!B(d,W.rect)&&!o(d,W.rect)&&(O||!s(E.id,W.rect)))return{laneId:W.laneId,anchor:W.anchor}}return},"findLaneContainingFallback"),H=U(D)??(D.length<m.length?U(m):void 0)??Y(m,!0)??Y(m,!1)??Y(m,!1,!0);if(H){I.x=H.anchor.midX,I.y=H.anchor.midY,I.parentId=H.laneId;let J=Ny(H.anchor.midX,H.anchor.midY,Q,p),K=g.findIndex((O)=>O.labelId===d);if(K>=0)g[K]={labelId:d,rect:J};else g.push({labelId:d,rect:J})}}}function zrA(A,e){return A<e?`${A}::${e}`:`${e}::${A}`}function QMA(A,e){let{nodeInfoById:t,realNodeRects:r}=VM(e),i=new Map;for(let a of e){let n=a.id;if(a.isGroup)continue;if(a.isEdgeLabel){i.set(n,{w:a.width??0,h:a.height??0});continue}}let u=y((a,n,o,s)=>{let l=zrA(n,o),g=0,C=y((B)=>{if(!B)return;let E=i.get(B);if(!E)return;let d=s==="x"?E.w/2:E.h/2;if(d>g)g=d},"consider");C(a.labelNodeId);for(let B of A){if(B===a)continue;if(B.isLayoutOnly)continue;let{start:E,end:d}=B;if(!E||!d)continue;if(zrA(E,d)!==l)continue;C(B.labelNodeId)}return g>0?g+Qht:0},"labelClearanceFor");for(let a of A){if(a.isLayoutOnly)continue;let n=a.points;if(!oiA(n,wrA))continue;let o=ciA(a,t,wrA);if(!o)continue;let{srcId:s,dstId:l,srcInfo:g,dstInfo:C,collinearX:B,collinearY:E}=o;if(B===E)continue;let d,I;if(B){let f=C.cy>g.cy;d={x:g.cx,y:f?g.rect.bottom:g.rect.top},I={x:C.cx,y:f?C.rect.top:C.rect.bottom}}else{let f=C.cx>g.cx;d={x:f?g.rect.right:g.rect.left,y:g.cy},I={x:f?C.rect.left:C.rect.right,y:C.cy}}if(En(d,I,r,[s,l],1))continue;let Q=u(a,s,l,B?"x":"y"),p=Q>bUA?Q:bUA,m=[0,p,-p];for(let f of m){let D={...d},w={...I};if(B){if(D.x+=f,w.x+=f,D.x<=g.rect.left||D.x>=g.rect.right)continue;if(w.x<=C.rect.left||w.x>=C.rect.right)continue}else{if(D.y+=f,w.y+=f,D.y<=g.rect.top||D.y>=g.rect.bottom)continue;if(w.y<=C.rect.top||w.y>=C.rect.bottom)continue}if(En(D,w,r,[s,l],1))continue;if(KM(D,w,A,a,{epsilon:wrA}))continue;a.points=[D,w];break}}}function ZrA(A,e){let{realNodeRects:s,labelNodeRects:l}=A4(e.values()),g=y((D,w)=>Gy(w,0.001).map((b)=>({...b,edge:D,interior:b.index>=1&&b.index<=w.length-3})),"segmentsFor"),C=y(()=>{let D=[];for(let w of A){if(w.isLayoutOnly)continue;let b=w.points;if(!b||b.length<2)continue;D.push(...g(w,Ti(b)))}return D},"allSegments"),B=y((D,w)=>{if(D.horizontal&&w.horizontal)return ds(D.a.x,D.b.x,w.a.x,w.b.x)>=8&&Math.abs(D.a.y-w.a.y)<7;if(D.vertical&&w.vertical)return ds(D.a.y,D.b.y,w.a.y,w.b.y)>=8&&Math.abs(D.a.x-w.a.x)<7;return!1},"hasCrowdedParallelTrack"),E=y((D,w)=>{let{start:b,end:k}=D,v=g(D,w);if(v.length!==w.length-1)return!1;let S=[b,k].filter((F)=>Boolean(F)),x=D.labelNodeId?[D.labelNodeId]:[];for(let F of v){if(En(F.a,F.b,s,S,-2))return!1;if(En(F.a,F.b,l,x,-2))return!1}for(let F of A){if(F===D||F.isLayoutOnly)continue;let T=F.points;if(!T||T.length<2)continue;for(let R of v)for(let L of g(F,Ti(T))){if(B(R,L))return!1;if(fI(R.a,R.b,L.a,L.b,0.001))return!1}}return!0},"candidateIsSafe"),d=y((D,w)=>{let b=Ti(D.edge.points??[]);if(b.length<4||D.index>=b.length-1)return;let k=b.map((v)=>({...v}));if(D.horizontal)k[D.index].y+=w,k[D.index+1].y+=w;else if(D.vertical)k[D.index].x+=w,k[D.index+1].x+=w;else return;return g(D.edge,k).length===k.length-1?k:void 0},"shiftedCandidate"),I=y((D,w)=>({x:D.x??(w.left+w.right)/2,y:D.y??(w.top+w.bottom)/2}),"nodeCenter"),h=y((D)=>{let w=D.edge,b=Ti(w.points??[]);if(b.length!==4||D.index!==1)return;let k=w.start?e.get(w.start):void 0,v=w.end?e.get(w.end):void 0,S=k?cl(k):void 0,x=v?cl(v):void 0,F=b.slice(D.index+2);if(!k||!v||!S||!x||F.length===0)return;return{sourceCenter:I(k,S),targetCenter:I(v,x),sourceRect:S,tail:F}},"sourceDetourContextFor"),Q=y((D,w,b,k,v,S)=>{let x=k.y>=b.y,F=x?v.bottom:v.top,T=F+(x?20:-20);if(x&&D.b.y<=T+0.001||!x&&D.b.y>=T-0.001)return;let R=D.a.x+w;return Ti([{x:b.x,y:F},{x:b.x,y:T},{x:R,y:T},{x:R,y:D.b.y},...S],0.001)},"verticalSourceDetour"),p=y((D,w,b,k,v,S)=>{let x=k.x>=b.x,F=x?v.right:v.left,T=F+(x?20:-20);if(x&&D.b.x<=T+0.001||!x&&D.b.x>=T-0.001)return;let R=D.a.y+w;return Ti([{x:F,y:b.y},{x:T,y:b.y},{x:T,y:R},{x:D.b.x,y:R},...S],0.001)},"horizontalSourceDetour"),m=y((D,w)=>{let b=h(D);if(!b)return;if(D.vertical)return Q(D,w,b.sourceCenter,b.targetCenter,b.sourceRect,b.tail);if(D.horizontal)return p(D,w,b.sourceCenter,b.targetCenter,b.sourceRect,b.tail);return},"sourceDetourCandidate"),f=[-7,7,-14,14,-21,21];for(let D=0;D<12;D++){let w=C(),b=!1;for(let k=0;k<w.length&&!b;k++)for(let v=k+1;v<w.length&&!b;v++){let S=w[k],x=w[v];if(S.edge===x.edge||!B(S,x))continue;let F=[S,x].filter((T)=>T.interior);for(let T of F){for(let R of f){let L=d(T,R);if(L&&E(T.edge,L)){T.edge.points=L,b=!0;break}let M=m(T,R);if(M&&E(T.edge,M)){T.edge.points=M,b=!0;break}}if(b)break}}if(!b)return}}function pMA(A,e,t,r){let i=e.x-A.x,u=e.y-A.y,a=r.x-t.x,n=r.y-t.y,o=i*n-u*a;if(Math.abs(o)<0.0000000001)return!1;let s=t.x-A.x,l=t.y-A.y,g=(s*n-l*a)/o,C=(s*u-l*i)/o,B=0.01;return g>B&&g<1-B&&C>B&&C<1-B}function fMA(A){let e=A.nodes??[],t=A.edges??[],r=[];if(!t.length||!e.length)return r;let i=qUA(e),u=1,a=[];for(let o of t){if(o.isLayoutOnly)continue;let s=o.points;if(!s||s.length<2)continue;let{start:l,end:g,labelNodeId:C}=o,B=o.id??`${l}->${g}`;for(let E of i){if(E.nodeId===l||E.nodeId===g)continue;if(C&&E.nodeId===C)continue;for(let d=0;d<s.length-1;d++)if(ZM(s[d],s[d+1],E,-u)){r.push({type:"edge-node-overlap",edgeId:B,targetId:E.nodeId,detail:`segment ${d} passes through node "${E.nodeId}"`});break}}for(let E=0;E<s.length-1;E++)a.push({edgeId:B,start:l,end:g,p1:s[E],p2:s[E+1]})}let n=new Set;for(let o=0;o<a.length;o++)for(let s=o+1;s<a.length;s++){let l=a[o],g=a[s];if(l.edgeId===g.edgeId)continue;if(l.start===g.start||l.start===g.end||l.end===g.start||l.end===g.end)continue;if(pMA(l.p1,l.p2,g.p1,g.p2)){let C=l.edgeId<g.edgeId?`${l.edgeId}|${g.edgeId}`:`${g.edgeId}|${l.edgeId}`;if(!n.has(C))n.add(C),r.push({type:"edge-edge-crossing",edgeId:l.edgeId,targetId:g.edgeId,detail:`edges "${l.edgeId}" and "${g.edgeId}" cross`})}}if(r.length>0){let o=r.filter((l)=>l.type==="edge-node-overlap").length,s=r.filter((l)=>l.type==="edge-edge-crossing").length;sA.warn(`[SWIMLANE_VALIDATE] ${r.length} issue(s) detected: ${o} edge-node overlap(s), ${s} edge crossing(s)`);for(let l of r)sA.warn(`[SWIMLANE_VALIDATE] ${l.type}: ${l.detail}`)}return r}function mMA(A,e){let t=A.nodes??[],r=A.edges??[],i=t.filter((n)=>!n.isGroup);if((e==="LR"||e==="RL")&&i.length>0&&!oMA(A,e))return;if(e==="BT"&&i.length>0&&!nMA(A))return;for(let n of r){if(n.isLayoutOnly)continue;let o=n.points;if(!o||o.length<2)continue;n.points=EE(JM(o))}IMA(r,t),QMA(r,t),sMA(r,t);let u=new Map;for(let n of t)u.set(String(n.id),n);MM(r,u),XUA(r,u),lMA(r,u),ZrA(r,u),gMA(r,u),cMA(r,u),OrA(r,u),CMA(r,u);let a=y(()=>{dMA(r,u),BMA(r,u),EMA(r,u),MM(r,u),KrA(r,u),OrA(r,u),MM(r,u),KrA(r,u)},"finalizeRenderedEdges");a(),ZrA(r,u),a(),PrA(r,u),_rA(r,u),PrA(r,u),_rA(r,u)}function e4(A){let e=new Map(A.nodeById),t=new Set,r=[];for(let u of A.edges){if(!e.has(u.src)||!e.has(u.dst))continue;let a=`${u.id}:${u.src}->${u.dst}`;if(t.has(a))continue;t.add(a),r.push(u)}return{nodes:[...e.keys()],edges:r,layout:A.layout,nodeById:e}}function hiA(A,e){return A.edges.filter((t)=>t.dst===e)}function DMA(A){let e=new Map;for(let t of A.nodes)e.set(t,[]);for(let t of A.edges)e.get(t.src).push(t.dst);return e}function QiA(A){let e=DMA(A);for(let t of e.values())t.sort((r,i)=>r.localeCompare(i));return e}function piA(A){let e=new Map;for(let t of A.nodes)e.set(t,0);for(let t of A.edges)e.set(t.dst,(e.get(t.dst)??0)+1);return e}function fiA(A){return[...A.entries()].filter(([,e])=>e===0).map(([e])=>e).sort((e,t)=>e.localeCompare(t))}function jM(A,e=()=>!0){let t=new Map,r=new Map;for(let i of A.nodes)t.set(i,[]),r.set(i,[]);for(let i of A.edges){if(!e(i))continue;r.get(i.src).push(i.dst),t.get(i.dst).push(i.src)}return{preds:t,succs:r}}function miA(A,e,t,r){let i=0;for(let a of A.nodes){if(r?.skipGroups&&A.nodeById.get(a)?.isGroup)continue;i=Math.max(i,t[a]??0)}let u=Array.from({length:i+1},()=>[]);for(let a of e){if(r?.skipGroups&&A.nodeById.get(a)?.isGroup)continue;u[Math.max(0,t[a]??0)].push(a)}return u}function Ck(A){let e=piA(A),t=fiA(e),r=[],i=QiA(A);while(t.length){let u=t.shift();r.push(u);for(let a of i.get(u)??[])if(e.set(a,(e.get(a)??0)-1),(e.get(a)??0)===0){let n=0;while(n<t.length&&t[n]<a)n++;t.splice(n,0,a)}}return r.length===A.nodes.length?r:null}function Uy(A){let e=new Map,t=0;for(let r of A)e.set(r,t),t++;return e}function DiA(A){let e=Array(A.length),t=y((r,i)=>{if(i-r<=1)return 0;let u=r+i>>1,a=t(r,u)+t(u,i),n=r,o=u,s=r;while(n<u||o<i)if(o>=i||n<u&&A[n]<=A[o])e[s++]=A[n++];else e[s++]=A[o++],a+=u-n;for(let l=r;l<i;l++)A[l]=e[l];return a},"count");return t(0,A.length)}function yMA(A){let e=e4(A),t=new Map;for(let l of e.nodes)t.set(l,[]);for(let l of e.edges)t.get(l.src).push(l);for(let l of t.values())l.sort((g,C)=>g.dst===C.dst?g.id.localeCompare(C.id):g.dst.localeCompare(C.dst));let r=Object.create(null);for(let l of e.nodes)r[l]=0;let i=[],u=y((l)=>{r[l]=1;for(let g of t.get(l)??[]){let C=g.dst;if(r[C]===0)u(C);else if(r[C]===1)i.push(g)}r[l]=2},"dfs"),a=[...e.nodes].sort((l,g)=>l.localeCompare(g));for(let l of a)if(r[l]===0)u(l);let n=new Set(i.map((l)=>`${l.id}:${l.src}->${l.dst}`)),o=e.edges.map((l)=>n.has(`${l.id}:${l.src}->${l.dst}`)?{id:l.id,src:l.dst,dst:l.src,weight:l.weight,ref:l.ref}:l);return{acyclic:{nodes:[...e.nodes],edges:o,layout:e.layout,nodeById:new Map(e.nodeById)},reversed:i}}function wMA(A){let e=new Map,t=y((r)=>{if(e.has(r))return e.get(r);let i=A.nodeById.get(r);if(!i)return e.set(r,null),null;let u=i.parentId;if(!u)return e.set(r,null),null;let n=t(u)??u;return e.set(r,n),n},"resolve");for(let r of A.nodes)t(r);return e}function mI(A){let e=wMA(A);return(t)=>e.get(t)??null}function XM(A){let e=[];for(let t of A.layout.nodes??[])if(t.isGroup&&!t.parentId)e.push(t.id);return[...new Set(e)].reverse()}function yiA(A,e){let t=XM(A);if(!e||e.length===0)return t;let r=new Set(t),i=new Set,u=[];for(let a of e){if(!r.has(a)||i.has(a))continue;i.add(a),u.push(a)}for(let a of t){if(i.has(a))continue;u.push(a)}return u}function bMA(A,e){let t=e4(A),r=e?.laneOf??(()=>null),i=e?.rankHint,{preds:u}=jM(t);for(let f of u.values())f.sort((D,w)=>D.localeCompare(w));let a=Ck(t)??[...t.nodes].sort((f,D)=>f.localeCompare(D)),n=new Map;for(let[f,D]of a.entries())n.set(D,f);let o=new Map,s=new Map;for(let f of t.nodes)s.set(f,[]);for(let f of a){let D=(u.get(f)??[]).filter((w)=>o.has(w));if(D.length>0){let w=vMA(f,D,{laneOf:r,rankHint:i,topoIndex:n});o.set(f,w),s.get(w).push(f)}else if(!o.has(f))o.set(f,null)}for(let f of t.nodes)if(!o.has(f))o.set(f,null);let l=new Set;for(let f of t.nodes)if((o.get(f)??null)===null)l.add(f);let g=[...l].sort((f,D)=>{let w=n.get(f)??0,b=n.get(D)??0;if(w===b)return f.localeCompare(D);return w-b}),C=kMA(t),B=new Map;for(let[f,D]of C.entries())B.set(f,[...D].sort((w,b)=>w.localeCompare(b)));let E=FMA(B),d=xMA(B),I=new Map;for(let f of t.nodes)I.set(f,[]);for(let f of d)for(let D of f.nodes){let w=I.get(D);if(w)w.push(f.id);else I.set(D,[f.id])}let h=[],Q=[],p=new Set,m=y((f)=>{if(p.has(f))return;p.add(f),h.push(f);for(let D of s.get(f)??[])m(D);Q.push(f)},"walk");for(let f of g)m(f);for(let f of a)m(f);return{parent:o,children:s,roots:g,componentOf:E,blocks:d,nodeBlocks:I,adjacency:B,preorder:h,postorder:Q,topologicalOrder:a}}function vMA(A,e,t){let r=t.laneOf(A);return[...e].sort((u,a)=>{let n=t.laneOf(u),o=t.laneOf(a),s=n!=null&&n===r,l=o!=null&&o===r;if(s!==l)return s?-1:1;let g=t.rankHint?.[u],C=t.rankHint?.[a];if(g!=null&&C!=null&&g!==C)return C-g;let B=t.topoIndex.get(u)??0,E=t.topoIndex.get(a)??0;if(B!==E)return B-E;return u.localeCompare(a)})[0]}function kMA(A){let e=new Map;for(let t of A.nodes)e.set(t,new Set);for(let t of A.edges)e.get(t.src).add(t.dst),e.get(t.dst).add(t.src);return e}function FMA(A){let e=new Map,t=0;for(let r of A.keys()){if(e.has(r))continue;let i=[r];while(i.length>0){let u=i.pop();if(e.has(u))continue;e.set(u,t);for(let a of A.get(u)??[])if(!e.has(a))i.push(a)}t++}return e}function xMA(A){let e=new Map,t=new Map,r=[],i=[],u=0,a=y((n,o)=>{e.set(n,++u),t.set(n,u);for(let s of A.get(n)??[]){if(s===o)continue;if(!e.has(s)){if(r.push([n,s]),a(s,n),t.set(n,Math.min(t.get(n)??u,t.get(s)??u)),(t.get(s)??0)>=(e.get(n)??0))i.push(SMA(n,s,r,i.length))}else if((e.get(s)??0)<(e.get(n)??0))r.push([n,s]),t.set(n,Math.min(t.get(n)??u,e.get(s)??u))}},"visit");for(let n of A.keys())if(!e.has(n))a(n,null);return i}function SMA(A,e,t,r){let i=[],u=new Set;while(t.length>0){let a=t.pop();if(i.push(a),u.add(a[0]),u.add(a[1]),a[0]===A&&a[1]===e||a[0]===e&&a[1]===A)break}return{id:r,edges:i,nodes:[...u]}}function LMA(A,e,t){let r=[...A.nodes],i=new Map;for(let[Q,p]of r.entries())i.set(p,Q);let u=r.length,a=Array(u).fill(-1),n=Array(u).fill(0),o=[],s=new Set;for(let Q of r){let p=t.parent.get(Q)??null,m=i.get(Q);if(m==null)continue;if(p==null){if(a[m]=-1,n[m]=0,!s.has(Q))s.add(Q),o.push(Q)}}while(o.length>0){let Q=o.shift(),p=i.get(Q);if(p==null)continue;let m=t.children.get(Q)??[];for(let f of m){if(s.has(f))continue;let D=i.get(f);if(D==null)continue;a[D]=p,n[D]=n[p]+1,s.add(f),o.push(f)}}for(let Q of r){if(s.has(Q))continue;let p=i.get(Q);if(p==null)continue;a[p]=-1,n[p]=0,s.add(Q)}let l=Math.max(1,Math.ceil(Math.log2(Math.max(1,u)))+1),g=Array.from({length:l},()=>Array(u).fill(-1));for(let Q=0;Q<u;Q++)g[0][Q]=a[Q];for(let Q=1;Q<l;Q++)for(let p=0;p<u;p++){let m=g[Q-1][p];g[Q][p]=m===-1?-1:g[Q-1][m]}let C=y((Q,p)=>{if(Q===-1||p===-1)return-1;if(n[Q]<n[p])[Q,p]=[p,Q];let m=n[Q]-n[p];for(let f=0;f<l;f++)if(m>>f&1){if(Q=g[f][Q],Q===-1)return-1}if(Q===p)return Q;for(let f=l-1;f>=0;f--){let D=g[f][Q],w=g[f][p];if(D===-1||w===-1)continue;if(D!==w)Q=D,p=w}return g[0][Q]},"lcaIndex"),B=Array.from({length:u},()=>new Map);for(let Q of A.edges){let{src:p,dst:m}=Q,f=e[p],D=e[m];if(f==null||D==null)continue;if(f>D)[p,m]=[m,p],[f,D]=[D,f];if(f==null||D==null||f===D)continue;let w=i.get(p),b=i.get(m);if(w==null||b==null)continue;let k=C(w,b);if(k===-1)continue;let v=B[k];for(let S=f;S<D;S++)v.set(S,(v.get(S)??0)+1)}let E=new Map,d=y((Q,p)=>{if(p.size===0)return;for(let[m,f]of p)Q.set(m,(Q.get(m)??0)+f)},"mergeInto"),I=new Set,h=y((Q)=>{let p=i.get(Q);I.add(Q);let m=p==null?void 0:B[p],f=m?new Map(m):new Map,D=t.children.get(Q)??[];for(let w of D){let b=h(w),k=e[Q];if(k!=null){let v=E.get(Q);if(!v)v=new Map,E.set(Q,v);let S=b.get(k)??0,x=e[w];if(x!=null&&x>k)S+=1;v.set(w,S)}d(f,b)}return f},"dfs");for(let Q of t.roots)if(!I.has(Q))h(Q);for(let Q of r)if(!I.has(Q))h(Q);return E}function RMA(A,e,t){let r=new Map,i=y((u)=>{let a=t[u]??0,n=[...e.get(u)??[]];n.sort(wiA(t));for(let o of n){i(o);let s=r.get(o);if(s!=null)a=Math.min(a,s)}r.set(u,a)},"annotate");for(let u of A)i(u);return r}function wiA(A){return(e,t)=>{let r=A[e]??0,i=A[t]??0;return r===i?e.localeCompare(t):r-i}}function NMA(A,e,t,r){let i=0;for(let o of e){let s=t[o]??0;if(s>i)i=s}let u=Array.from({length:i+1},()=>[]),a=new Set,n=y((o)=>{if(a.has(o))return;a.add(o);let s=t[o]??0;if(!u[s])u[s]=[];u[s].push(o);for(let l of r(o))n(l)},"emit");for(let o of A)n(o);for(let o of e)if(!a.has(o)){let s=t[o]??0;if(!u[s])u[s]=[];u[s].push(o),a.add(o)}return u}function GMA(A){let e=[];for(let t of A){let r=new Set,i=[];for(let u of t){if(r.has(u))continue;r.add(u),i.push(u)}e.push(i)}return e}function UMA(A,e,t,r){return(i)=>{let u=A.get(i)??[];if(u.length===0)return[];let a=e[i]??0,n=[],o=[],s=t.get(i);for(let l of u){let g=r.get(l)??a;if(g>a)n.push({child:l,min:g});else o.push(l)}return n.sort((l,g)=>{if(l.min===g.min)return l.child.localeCompare(g.child);return l.min-g.min}),o.sort((l,g)=>{let C=s?.get(l)??0,B=s?.get(g)??0;if(C!==B)return C-B;let E=r.get(l)??a,d=r.get(g)??a;if(E!==d)return E-d;return l.localeCompare(g)}),[...n.map((l)=>l.child),...o]}}function zM(A,e,t){let r=bMA(A,{rankHint:e,laneOf:t}),{children:i,roots:u}=r;for(let g of A.nodes)if(!i.has(g))i.set(g,[]);let a=LMA(A,e,r),n=[...u].sort(wiA(e)),o=RMA(n,i,e),s=UMA(i,e,a,o),l=NMA(n,A.nodes,e,s);return l=GMA(l),l}function MMA(A,e,t){let r=new Set(A),i=new Set(e),u=Uy(e),a=[];for(let n of t)if(r.has(n.src)&&i.has(n.dst))a.push(u.get(n.dst));return DiA(a)}function VrA(A,e,t){let r=[];for(let u of e){let a=t[u.src],n=t[u.dst];if(a==null||n==null||a===n)continue;let{src:o,dst:s}=u,l=a,g=n;if(a>n)o=u.dst,s=u.src,l=n,g=a;for(let C=l;C<g;C++)r.push({id:`${u.id}@${C}`,src:o,dst:s,ref:u.ref})}let i=0;for(let u=0;u+1<A.length;u++)i+=MMA(A[u],A[u+1],r);return i}function TMA(A,e){let t={...e},{preds:r}=jM(A),i=mI(A),u=zM(A,t,i),a=VrA(u,A.edges,t),n=qM.MAX_CROSSING_OPTIMIZATION_PASSES;for(let o=0;o<n;o++){let s=!1,l=[...A.nodes].sort((g,C)=>(t[C]??0)-(t[g]??0));for(let g of l){let C=t[g]??0;if(C===0)continue;let B=0;for(let h of r.get(g)??[])B=Math.max(B,(t[h]??0)+1);if(B>=C)continue;let E=C;t[g]=B;let d=zM(A,t,i),I=VrA(d,A.edges,t);if(I<a)a=I,s=!0;else t[g]=E}if(!s)break}return t}function YMA(A,e){let t=mI(A),r=[...A.nodes].sort((i,u)=>(e[i]??0)-(e[u]??0)||i.localeCompare(u));for(let i of r){let u=t(i);if(!u)continue;let a=A.edges.filter((d)=>d.src===i);if(a.length===0)continue;let n=!1,o=0;for(let d of a){let I=t(d.dst);if(I==null||I===u)n=!0;else o++}if(o===0||n)continue;let s=0,l=!1;for(let d of A.edges){if(d.dst!==i)continue;let I=t(d.src);if(!I)continue;if(I===u)l=!0;else s++}if(s>0||!l)continue;let g=e[i]??0,C=g+o,B=0;for(let d of A.edges)if(d.dst===i)B=Math.max(B,(e[d.src]??0)+1);let E=Math.max(g,B,C);if(E!==g)e[i]=E}}function HMA(A,e){let t=e4(A),r=Ck(t)??[...t.nodes].sort(),i=e?.compactSingleInput??!1,u=mI(t),a=Object.create(null);for(let o of r){let s=hiA(t,o),l=e?.ignoreCrossLaneEdges?s.filter((g)=>{let C=u(g.src),B=u(o);if(!C||!B)return!0;return C===B}):s;if(l.length===0)a[o]=0;else if(i&&l.length===1){let g=l[0].src,C=u(g),B=u(o);if(C!==B)a[o]=a[g]??0;else a[o]=(a[g]??0)+1}else{let g=-1/0;for(let C of l)g=Math.max(g,(a[C.src]??0)+1);a[o]=g===-1/0?0:g}}if(e?.optimizeRanksByCrossings??!1)a=TMA(t,a);if(e?.ignoreCrossLaneEdges)YMA(t,a);return{layers:zM(t,a,u),rankOf:a,dummy:new Set}}function KMA(A,e){let t=e4(A),i={...HMA(t,{compactSingleInput:e?.compactSingleInput,ignoreCrossLaneEdges:e?.ignoreCrossLaneEdges,optimizeRanksByCrossings:e?.optimizeRanksByCrossings}).rankOf},u=mI(t),{preds:a,succs:n}=jM(t,(E)=>{if(e?.ignoreCrossLaneEdges){let d=u(E.src),I=u(E.dst);if(d&&I&&d!==I)return!1}return!0}),o=Ck(t)??[...t.nodes],s=[...o].reverse(),l=y((E,d)=>{let I=0;for(let p of a.get(E)??[])I=Math.max(I,(i[p]??0)+1);let h=Number.POSITIVE_INFINITY,Q=n.get(E)??[];if(Q.length>0)h=Math.min(...Q.map((p)=>(i[p]??0)-1));if(!Number.isFinite(h))h=Math.max(I,d);return Math.min(Math.max(d,I),h)},"clampFeasible"),g=qM.GRAVITY_ITERATIONS,C=y((E)=>{let d=!1;for(let I of E){let h=a.get(I)??[],Q=n.get(I)??[];if(h.length===0&&Q.length===0)continue;let p=h.length>0?h.reduce((w,b)=>w+(i[b]??0)+1,0)/h.length:i[I]??0,m=Q.length>0?Q.reduce((w,b)=>w+(i[b]??0)-1,0)/Q.length:i[I]??0,f=Math.round((p+m)/2),D=l(I,f);if(D!==i[I])i[I]=D,d=!0}return d},"relaxOrder");for(let E=0;E<g;E++){let d=C(o),I=C(s);if(!d&&!I)break}for(let E of o){let d=0;for(let I of a.get(E)??[])d=Math.max(d,(i[I]??0)+1);if((i[E]??0)<d)i[E]=d}for(let E of s){let d=n.get(E)??[];if(d.length>0){let I=Math.min(...d.map((h)=>(i[h]??0)-1));if((i[E]??0)>I)i[E]=I}}return{layers:miA(t,o,i),rankOf:i,dummy:new Set}}function JMA(A){let e=piA(A),t=QiA(A),r=fiA(e),i=[];while(r.length>0){let u=[];for(let a of r){i.push(a);for(let n of t.get(a)??[])if(e.set(n,(e.get(n)??0)-1),(e.get(n)??0)===0)u.push(n)}r=u.sort((a,n)=>a.localeCompare(n))}return i.length===A.nodes.length?i:null}function OMA(A,e){let t=e4(A),r=e?.direction==="LR"?JMA(t)??[...t.nodes].sort():Ck(t)??[...t.nodes].sort(),i=mI(t),u=y((l)=>i(l)??l,"laneOf"),a=Object.create(null),n=new Map,o=y((l,g)=>{if(e?.ignoreCrossLaneEdges??!0)return u(l)===u(g)?1:0;return 1},"edgeWeight");for(let l of r){if(t.nodeById.get(l)?.isGroup)continue;let C=hiA(t,l),B=0;if(C.length>0)for(let h of C){let Q=h.src,p=a[Q]??0;B=Math.max(B,p+o(Q,l))}let E=u(l),d=n.get(E)??0,I=Math.max(B,d);a[l]=I,n.set(E,I+1)}return{layers:miA(t,r,a,{skipGroups:!0}),rankOf:a,dummy:new Set}}function PMA(A,e){let t=e4(e),{rankOf:r}=A,i=A.layers.map((B)=>[...B]),u=new Set(A.dummy?[...A.dummy]:[]),a=0,n=new Map(t.nodeById),o=y((B)=>{let E=`placeholder-${a++}`,d={id:E,isGroup:!1,isDummy:!0,width:0,height:0};n.set(E,d),u.add(E);while(i.length<=B)i.push([]);return i[B].push(E),r[E]=B,E},"addDummyAt"),s=[...t.edges].sort((B,E)=>B.id===E.id?B.src===E.src?B.dst.localeCompare(E.dst):B.src.localeCompare(E.src):B.id.localeCompare(E.id)),l=[];for(let B of s){let E=r[B.src]??0,d=r[B.dst]??0;if(d-E<=1){l.push(B);continue}let I=B.src;for(let Q=E+1,p=0;Q<d;Q++,p++){let m=o(Q);l.push({id:`${B.id}#${p}`,src:I,dst:m,weight:B.weight,ref:B.ref}),I=m}let h=d-E-2;l.push({id:`${B.id}#${Math.max(h+1,0)}`,src:I,dst:B.dst,weight:B.weight,ref:B.ref})}let C={nodes:[...t.nodes,...[...u].filter((B)=>!t.nodes.includes(B))],edges:l,layout:t.layout,nodeById:n};return{layering:{layers:i,rankOf:r,dummy:u},graphWithDummies:C}}function jrA(A){let e=A.length;if(e===0)return Number.POSITIVE_INFINITY;let t=[...A].sort((r,i)=>r-i);if(e%2===1)return t[(e-1)/2];return 0.5*(t[e/2-1]+t[e/2])}function XrA(A){if(A.length===0)return Number.POSITIVE_INFINITY;return A.reduce((t,r)=>t+r,0)/A.length}function _MA(A,e,t,r){let i=new Map;for(let u of A)i.set(u,[]);for(let u of t)if(r==="down"){if(e.has(u.src)&&i.has(u.dst))i.get(u.dst).push(e.get(u.src))}else if(e.has(u.dst)&&i.has(u.src))i.get(u.src).push(e.get(u.dst));return i}function WMA(A,e,t){let r=t.get(A)??0,i=t.get(e)??0;return r!==i?r-i:A.localeCompare(e)}function $rA(A,e,t){let r=new Set(A),i=new Set(e),u=Uy(A),a=Uy(e),n=[];for(let s of t)if(r.has(s.src)&&i.has(s.dst))n.push({u:u.get(s.src),v:a.get(s.dst)});n.sort((s,l)=>s.u===l.u?s.v-l.v:s.u-l.u);let o=n.map((s)=>s.v);return DiA(o)}function TM(A,e,t){return[...A].sort((r,i)=>{let u=jrA(e.get(r)??[]),a=jrA(e.get(i)??[]);if(u===a)return WMA(r,i,t);if(!isFinite(u))return 1;if(!isFinite(a))return-1;return u-a})}function AiA(A,e,t,r,i,u){let a=Uy(A),n=Uy(e),o=_MA(e,a,t,r);if(!i||!u||u.length===0)return TM(e,o,n);let s=new Map;for(let C of e){let B=i(C),E=s.get(B)??[];E.push(C),s.set(B,E)}let l=[];for(let C of u){let B=s.get(C);if(!B||B.length===0)continue;let E=TM(B,o,n);l.push(...E)}let g=s.get(null);if(g&&g.length>0){let C=TM(g,o,n);for(let B of C){let E=XrA(o.get(B)??[]),d=l.length;if(isFinite(E))for(let[I,h]of l.entries()){let Q=XrA(o.get(h)??[]);if(E<Q){d=I;break}}l.splice(d,0,B)}}return l}function eiA(A,e,t,r,i){let u=[...e],a=new Set(A),n=new Set(e),o=r?new Set(r):null,s=t.filter((d)=>a.has(d.src)&&n.has(d.dst)),l=o?t.filter((d)=>n.has(d.src)&&o.has(d.dst)):void 0,g=y((d)=>{let I=$rA(A,d,s);if(l&&r)I+=$rA(d,r,l);return I},"crossingScore"),C=i?new Map:null;if(i&&C)for(let d of e)C.set(d,i(d));let B=!0,E=g(u);while(B){B=!1;for(let d=0;d+1<u.length;d++){if(C){let Q=C.get(u[d]),p=C.get(u[d+1]);if(Q!==p)continue}let I=E;[u[d],u[d+1]]=[u[d+1],u[d]];let h=g(u);if(h<I)E=h,B=!0;else[u[d],u[d+1]]=[u[d+1],u[d]]}}return u}function qMA(A,e,t){let r=A.layers.map((n)=>[...n]),i=e.edges,u=mI(e),a=yiA(e,t?.laneOrder);for(let n=0;n<3;n++){for(let o=1;o<r.length;o++)r[o]=AiA(r[o-1],r[o],i,"down",u,a),r[o]=eiA(r[o-1],r[o],i,r[o+1],u);for(let o=r.length-2;o>=0;o--)r[o]=AiA(r[o+1],r[o],i,"up",u,a),r[o]=eiA(r[o+1],r[o],i,r[o-1],u)}return{layers:r}}function zMA(A,e,t){let r=t?.layerGap??vUA.DEFAULT_LAYER_GAP,i=t?.nodeGap??vUA.DEFAULT_NODE_GAP,u=t?.laneGap??i*2,a=t?.direction??"TB",n=a==="LR"||a==="RL",o=A.layers,s=Object.create(null),l=Object.create(null),g=y((v)=>e.nodeById.get(v),"getNode"),C=y((v)=>g(v)?.width??0,"getWidth"),B=y((v)=>g(v)?.height??0,"getHeight"),E=mI(e),d=yiA(e,t?.laneOrder),I=o.map((v)=>v.reduce((S,x)=>Math.max(S,B(x)),0)),h=[];if(n)for(let v=0;v+1<o.length;v++){let S=o[v].reduce((U,Y)=>Math.max(U,C(Y)),0),x=o[v+1].reduce((U,Y)=>Math.max(U,C(Y)),0),F=I[v],T=I[v+1],R=F/2+T/2,L=(S+x)/2,M=Math.max(0,L-R-r);h.push(M)}let Q=new Set;for(let v of o)for(let S of v)Q.add(E(S));let p=Q.has(null),m=d.filter((v)=>Q.has(v)),f=[...p?[null]:[],...m],D=Object.create(null);for(let v of m)D[v]=0;if(p)D.null=0;for(let v of o){let S=Object.create(null),x=[];for(let F of v){let T=E(F);if(T===null)x.push(F);else(S[T]||=[]).push(F)}for(let[F,T]of Object.entries(S)){let R=T.reduce((L,M)=>L+C(M),0)+i*Math.max(0,T.length-1);D[F]=Math.max(D[F]??0,R)}if(p&&x.length){let F=x.reduce((T,R)=>T+C(R),0)+i*Math.max(0,x.length-1);D.null=Math.max(D.null??0,F)}}let w=new Map;{let v=f.map((F)=>(F===null?D.null:D[F])??0),x=-(v.reduce((F,T)=>F+T,0)+u*Math.max(0,f.length-1))/2;for(let F=0;F<f.length;F++){let T=f[F],R=v[F]??0,L=x+R/2;if(w.set(T,L),x+=R,F<f.length-1)x+=u}}let b=0;for(let[v,S]of o.entries()){let x=I[v]??0,F=new Map;for(let R of S){let L=E(R),M=F.get(L)??[];M.push(R),F.set(L,M)}for(let R of f){let L=F.get(R)??[];if(L.length===0)continue;let M=w.get(R);if(L.length===1){let U=L[0];s[U]=M,l[U]=b+x/2}else{let U=L.map((J)=>C(J)),Y=U.reduce((J,K)=>J+K,0)+i*(L.length-1),H=M-Y/2;for(let[J,K]of L.entries()){let O=U[J];s[K]=H+O/2,l[K]=b+x/2,H+=O+i}}}let T=h[v]??0;b+=x+r+T}let k=new Map;for(let v of e.edges){let S=v.ref.id;if(!k.has(S))k.set(S,[]);k.get(S).push(v)}for(let[,v]of k){if(v.length===0)continue;let S=v[0].ref,{start:x,end:F}=S;if(x==null||F==null)continue;let T=Math.round(((s[x]??0)+(s[F]??0))/2),R=new Set;for(let L of v)R.add(L.src),R.add(L.dst);for(let L of R){if(L===x||L===F)continue;if(e.nodeById.get(L)?.isDummy)s[L]=T}}return{x:s,y:l}}function VMA(A){let e=2166136261;for(let t=0;t<A.length;t++)e^=A.charCodeAt(t),e=Math.imul(e,16777619);return e>>>0}function jMA(A){let e=A>>>0;return()=>{e+=1831565813;let t=e;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}}function XMA(A,e){let t=[...A],r=jMA(e);for(let i=t.length-1;i>0;i--){let u=Math.floor(r()*(i+1));[t[i],t[u]]=[t[u],t[i]]}return t}function $MA(A,e){let t=0;for(let[r,i]of A.entries())t+=Math.abs(r-(e.get(i)??r));return t}function tiA(A,e){let t=new Map;for(let[i,u]of A.entries())t.set(u,i);let r=0;for(let{a:i,b:u,weight:a}of e){let n=t.get(i),o=t.get(u);if(n==null||o==null)continue;r+=a*Math.abs(n-o)}return r}function ATA(A){let e=XM(A);if(e.length<2)return[];let t=new Map(e.map((u,a)=>[u,a])),r=mI(A),i=new Map;for(let u of A.layout.edges??[]){if(u.isLayoutOnly)continue;let a=typeof u.start==="string"?u.start:void 0,n=typeof u.end==="string"?u.end:void 0;if(!a||!n||!A.nodeById.has(a)||!A.nodeById.has(n))continue;let o=r(a),s=r(n);if(!o||!s||o===s)continue;let l=t.get(o),g=t.get(s);if(l==null||g==null)continue;let[C,B]=l<=g?[o,s]:[s,o],E=`${C}\x00${B}`,d=i.get(E);if(d)d.weight++;else i.set(E,{a:C,b:B,weight:1})}return[...i.values()]}function riA(A,e,t){let r=[...A],i=tiA(r,e),u=!0,a=0,n=Math.max(1,r.length);while(u&&a<n){u=!1,a++;for(let o=0;o+1<r.length;o++){[r[o],r[o+1]]=[r[o+1],r[o]];let s=tiA(r,e);if(s<i)i=s,u=!0;else[r[o],r[o+1]]=[r[o+1],r[o]]}}return{order:r,cost:i,sourceDistance:$MA(r,t)}}function eTA(A,e){if(A.cost!==e.cost)return A.cost<e.cost;return A.sourceDistance<e.sourceDistance}function tTA(A,e,t){let r=[...e].sort((i,u)=>i.a===u.a?i.b.localeCompare(u.b):i.a.localeCompare(u.a)).map(({a:i,b:u,weight:a})=>`${i}:${u}:${a}`).join("|");return VMA(`${A.join("|")}#${r}#${t}`)}function rTA(A,e={}){let t=XM(A);if(t.length<2)return t;let r=ATA(A);if(r.length===0)return t;let i=new Map(t.map((n,o)=>[n,o])),u=riA(t,r,i),a=Math.max(0,e.restarts??ZMA);for(let n=0;n<a;n++){let o=tTA(t,r,n),s=XMA(t,o),l=riA(s,r,i);if(eTA(l,u))u=l}return u.order}function iTA(A,e){let t=e?.ignoreCrossLaneEdges??!0,r=e?.optimizeRanksByCrossings??!0,i=e4(A),u=e?.automaticLaneOrdering?rTA(i,{restarts:ZMA}):void 0,a=yMA(i),n=a.acyclic,o=t?OMA(n,{compactSingleInput:e?.compactSingleInput??qM.DEFAULT_COMPACT_SINGLE_INPUT,ignoreCrossLaneEdges:!0,direction:e?.direction}):KMA(n,{compactSingleInput:e?.compactSingleInput??qM.DEFAULT_COMPACT_SINGLE_INPUT,ignoreCrossLaneEdges:!1,optimizeRanksByCrossings:r}),{layering:s,graphWithDummies:l}=PMA(o,n),g=qMA(s,l,{laneOrder:u}),C=zMA(g,l,{layerGap:e?.layerGap,nodeGap:e?.nodeGap,direction:e?.direction,laneOrder:u});return{acyclic:n,reversed:a.reversed,layering:s,ordered:g,coordinates:C}}function iiA(A,e,t){let r=A.x??0,i=A.y??0,u=e.x-r,a=e.y-i,n=Math.abs(u),o=Math.abs(a);if(n<ni&&o<ni)return t;let s=3;if(o>ni&&o*s>=n)return a>0?"bottom":"top";if(n>ni)return u>0?"right":"left";return t}function uiA(A,e){return Math.abs(A.to-e.from)<ni||Math.abs(A.to-e.to)<ni?A.to:A.from}function Nf(A,e){return A.orient==="vertical"?{x:A.coord,y:e}:{x:e,y:A.coord}}function uTA(A,e){let t=A.nodes??[],r=A.edges??[],i=[];for(let nA of r){if(nA.isLayoutOnly)continue;i.push({...nA,__originalEdge:nA})}let u=new Map,a=new Map,n=[],o=e==="LR";for(let nA of t)u.set(nA.id,nA);let s=t.filter((nA)=>nA.isGroup&&!nA.parentId);for(let nA of s){let eA={id:nA.id},BA=y((yA)=>{a.set(yA.id,eA),t.filter((vA)=>vA.parentId===yA.id).forEach(BA)},"assignLane");BA(nA)}let l=t.filter((nA)=>!nA.isGroup&&!nA.isEdgeLabel).map((nA)=>{let eA=nA.width??10,BA=nA.height??10,yA=nA.x??0,vA=nA.y??0,FA=fht;return{nodeId:nA.id,minX:yA-eA/2-FA,maxX:yA+eA/2+FA,minY:vA-BA/2-FA,maxY:vA+BA/2+FA,visualXHalfExtent:o?BA/2+FA:eA/2+FA}}),g=y((nA,eA,BA,yA)=>{let vA=n.find((FA)=>FA.orientation===nA&&Math.abs(FA.coord-eA)<1);if(!vA)vA={id:`pipe-${nA}-${eA.toFixed(0)}`,orientation:nA,coord:eA,spanMin:BA,spanMax:yA,tracks:[]},n.push(vA);return vA.spanMin=Math.min(vA.spanMin,BA),vA.spanMax=Math.max(vA.spanMax,yA),vA},"getOrAddPipe"),C=y((nA,eA)=>{let BA=nA.width??10,yA=nA.height??10,vA=nA.x??0,FA=nA.y??0;switch(eA){case"top":return{x:vA,y:FA-yA/2};case"bottom":return{x:vA,y:FA+yA/2};case"left":return{x:vA-BA/2,y:FA};case"right":return{x:vA+BA/2,y:FA}}},"portForSide"),B=y((nA,eA,BA)=>C(nA,iiA(nA,eA,BA?"bottom":"top")),"getOrthogonalPort"),E=[],d=[],I=new Set,h=1000,Q=y((nA,eA,BA)=>{if(E.length===0)return 0;let yA=Math.abs(eA.y-BA.y)<ni,vA=Math.abs(eA.x-BA.x)<ni;if(!yA&&!vA)return 0;let FA=0;if(yA){let HA=eA.y,dA=Math.min(eA.x,BA.x)-ni,q=Math.max(eA.x,BA.x)+ni;if(q<=dA)return 0;for(let Z of E){if(Z.edgeIndex===nA||Z.orientation!=="vertical")continue;if(Z.pipe.coord<dA||Z.pipe.coord>q)continue;if(Z.from-ni<=HA&&Z.to+ni>=HA)FA+=h}}else if(vA){let HA=eA.x,dA=Math.min(eA.y,BA.y)-ni,q=Math.max(eA.y,BA.y)+ni;if(q<=dA)return 0;for(let Z of E){if(Z.edgeIndex===nA||Z.orientation!=="horizontal")continue;if(Z.pipe.coord<dA||Z.pipe.coord>q)continue;if(Z.from-ni<=HA&&Z.to+ni>=HA)FA+=h}}return FA},"crossingPenalty"),p=i.map((nA,eA)=>{if(!nA.start||!nA.end)return{idx:eA,crossLane:0,dx:0,dy:0};let BA=u.get(nA.start),yA=u.get(nA.end),vA=a.get(nA.start),FA=a.get(nA.end),HA=vA&&FA&&vA.id!==FA.id?1:0,dA=BA&&yA?Math.abs((yA.x??0)-(BA.x??0)):0,q=BA&&yA?Math.abs((yA.y??0)-(BA.y??0)):0;return{idx:eA,crossLane:HA,dx:dA,dy:q}}).sort((nA,eA)=>{if(nA.crossLane!==eA.crossLane)return eA.crossLane-nA.crossLane;let BA=nA.dx+nA.dy,yA=eA.dx+eA.dy;if(Math.abs(BA-yA)>1)return BA-yA;return nA.idx-eA.idx}).map((nA)=>nA.idx),m=y((nA,eA,BA,yA)=>{let vA=Math.min(nA.x,eA.x),FA=Math.max(nA.x,eA.x),HA=Math.min(nA.y,eA.y),dA=Math.max(nA.y,eA.y);return!!l.find((Z)=>{if(BA&&Z.nodeId===BA)return!1;if(yA&&Z.nodeId===yA)return!1;if(Math.abs(nA.x-eA.x)>ni)return Z.minY<nA.y&&Z.maxY>nA.y&&Z.maxX>vA&&Z.minX<FA;else return Z.minX<nA.x&&Z.maxX>nA.x&&Z.maxY>HA&&Z.minY<dA})},"isSegmentBlocked"),f=new Map,D=new Map;for(let nA of i){if(!nA.start||!nA.end||nA.start===nA.end)continue;D.set(nA.start,(D.get(nA.start)??0)+1),D.set(nA.end,(D.get(nA.end)??0)+1)}let w=y((nA,eA)=>iiA(nA,eA,"bottom"),"determineSide"),b=new Map;for(let[nA,eA]of i.entries()){if(!eA.start||!eA.end||eA.start===eA.end)continue;if(eA.points&&eA.points.length>0)continue;let BA=u.get(eA.start),yA=u.get(eA.end);if(!BA||!yA)continue;let vA=(yA.x??0)-(BA.x??0),FA=(yA.y??0)-(BA.y??0);b.set(nA,{edgeIdx:nA,srcId:eA.start,dstId:eA.end,srcSide:w(BA,{x:yA.x??0,y:yA.y??0}),dstSide:w(yA,{x:BA.x??0,y:BA.y??0}),absDx:Math.abs(vA),absDy:Math.abs(FA),dxSign:Math.sign(vA),dySign:Math.sign(FA)})}let k=y((nA)=>{if(nA.srcSide==="top"||nA.srcSide==="bottom")return nA.absDx===0?1/0:nA.absDy/nA.absDx;return nA.absDy===0?1/0:nA.absDx/nA.absDy},"preferenceStrength"),v=y((nA)=>{if(nA.srcSide==="top"||nA.srcSide==="bottom")return nA.dxSign>=0?"right":"left";return nA.dySign>=0?"bottom":"top"},"secondarySide"),S=new Map;for(let nA of b.values()){let eA=`${nA.srcId}:${nA.srcSide}`;if(!S.has(eA))S.set(eA,[]);S.get(eA).push(nA)}let x=new Map,F=y((nA,eA)=>`${nA}:${eA}`,"loadKey");for(let nA of b.values())x.set(F(nA.srcId,nA.srcSide),(x.get(F(nA.srcId,nA.srcSide))??0)+1),x.set(F(nA.dstId,nA.dstSide),(x.get(F(nA.dstId,nA.dstSide))??0)+1);for(let nA of S.values()){if(nA.length<2)continue;nA.sort((eA,BA)=>{let yA=k(eA),vA=k(BA);if(Math.abs(yA-vA)>0.000000001)return vA-yA;return eA.edgeIdx-BA.edgeIdx});for(let eA=1;eA<nA.length;eA++){let BA=nA[eA],yA=v(BA),vA=x.get(F(BA.srcId,BA.srcSide))??0,FA=x.get(F(BA.srcId,yA))??0;if(FA>=vA)continue;x.set(F(BA.srcId,BA.srcSide),vA-1),x.set(F(BA.srcId,yA),FA+1),BA.srcSide=yA}}let T=y((nA)=>{let eA=nA?.shape;return eA==="question"||eA==="diamond"},"isDiamondNode"),R=new Map;for(let nA of b.values()){if(!R.has(nA.dstId))R.set(nA.dstId,new Set);R.get(nA.dstId).add(nA.dstSide)}for(let nA of b.values()){if(!T(u.get(nA.srcId)))continue;let eA=R.get(nA.srcId);if(!eA?.has(nA.srcSide))continue;let BA=v(nA);if(eA.has(BA)||(x.get(F(nA.srcId,BA))??0)>0)continue;let yA=x.get(F(nA.srcId,nA.srcSide))??0;x.set(F(nA.srcId,nA.srcSide),Math.max(0,yA-1)),x.set(F(nA.srcId,BA),1),nA.srcSide=BA}for(let nA of b.values()){let{edgeIdx:eA,srcId:BA,dstId:yA,srcSide:vA,dstSide:FA}=nA,HA=u.get(BA),dA=u.get(yA),q=`${BA}:${vA}:src`,Z=vA==="top"||vA==="bottom"?dA.x??0:dA.y??0;if(!f.has(q))f.set(q,[]);f.get(q).push({edgeIdx:eA,oppositeCoord:Z});let fA=`${yA}:${FA}:dst`,j=FA==="top"||FA==="bottom"?HA.x??0:HA.y??0;if(!f.has(fA))f.set(fA,[]);f.get(fA).push({edgeIdx:eA,oppositeCoord:j})}let L=new Map,M=8;for(let[nA,eA]of f){if(eA.length<2)continue;eA.sort((ZA,WA)=>ZA.oppositeCoord-WA.oppositeCoord);let BA=nA.split(":"),yA=BA.slice(0,-2).join(":"),vA=BA[BA.length-2],FA=BA[BA.length-1],HA=u.get(yA);if(!HA)continue;let q=vA==="left"||vA==="right"?HA.height??10:HA.width??10,Z=HA.shape,j=Z==="question"||Z==="diamond"?q*0.3:q,rA=Math.min(20,Math.max(M,j/(eA.length+1))),_A=-(rA*(eA.length-1))/2;for(let[ZA,WA]of eA.entries()){let te=_A+ZA*rA,zA=`${WA.edgeIdx}:${FA}`;L.set(zA,te)}}let U=y((nA)=>Boolean(i[nA]?.labelNodeId),"edgeHasLabelNode"),Y=y((nA,eA)=>{if(!nA)return!1;return(f.get(`${nA}:${eA}:src`)??[]).some(({edgeIdx:BA})=>U(BA))||(f.get(`${nA}:${eA}:dst`)??[]).some(({edgeIdx:BA})=>U(BA))},"faceHasLabelNode"),H=y((nA,eA,BA)=>{if(eA==="top"||eA==="bottom")return{x:nA.x+BA,y:nA.y};else return{x:nA.x,y:nA.y+BA}},"applyPortOffset"),J=y((nA,eA,BA)=>{let yA=b.get(nA),vA={x:BA.x??0,y:BA.y??0},FA={x:eA.x??0,y:eA.y??0},HA=yA?.srcSide??w(eA,vA),dA=yA?.dstSide??w(BA,FA),q=yA?C(eA,yA.srcSide):B(eA,vA,!0),Z=yA?C(BA,yA.dstSide):B(BA,FA,!1),fA=L.get(`${nA}:src`),j=L.get(`${nA}:dst`);if(fA!==void 0)q=H(q,HA,fA);if(j!==void 0)Z=H(Z,dA,j);return{pSrcPort:q,pDstPort:Z,srcSide:HA,dstSide:dA}},"portsForEdge");for(let nA of p){let eA=i[nA];if(d[nA]=[],!eA.start||!eA.end)continue;if(eA.points&&eA.points.length>0)continue;if(eA.start===eA.end)continue;let BA=u.get(eA.start),yA=u.get(eA.end);if(!BA||!yA)continue;let{pSrcPort:vA,pDstPort:FA,srcSide:HA,dstSide:dA}=J(nA,BA,yA),q={...vA},Z={...FA},fA=HA==="top"||HA==="bottom",j=dA==="top"||dA==="bottom";if(fA){let Ce=vA.y>(BA.y??0);q.y=Ce?vA.y+Ac:vA.y-Ac}else{let Ce=vA.x>(BA.x??0);q.x=Ce?vA.x+Ac:vA.x-Ac}if(j){let Ce=FA.y>(yA.y??0);Z.y=Ce?FA.y+Ac:FA.y-Ac}else{let Ce=FA.x>(yA.x??0);Z.x=Ce?FA.x+Ac:FA.x-Ac}let mA=y((Ce,ye)=>{for(let Ze of l){if(ye.includes(Ze.nodeId))continue;if(Ce.x>Ze.minX&&Ce.x<Ze.maxX&&Ce.y>Ze.minY&&Ce.y<Ze.maxY)return{inside:!0,obstacle:Ze}}return{inside:!1}},"isPointInObstacle"),rA=y((Ce,ye,Ze,Xt,Vt)=>{if(Vt){let sr=Ce.y>(ye.y??0);return{x:(Ze.x??0)>=Ce.x?Xt.maxX+Rf:Xt.minX-Rf,y:sr?Xt.maxY+Ly:Xt.minY-Ly,leavesPositiveSide:sr}}let or=Ce.x>(ye.x??0),Qi=(Ze.y??0)>=Ce.y;return{x:or?Xt.maxX+Rf:Xt.minX-Rf,y:Qi?Xt.maxY+Ly:Xt.minY-Ly,leavesPositiveSide:or}},"obstacleDetour"),JA=[],_A=[eA.start,eA.end],ZA=mA(q,_A);if(ZA.inside&&ZA.obstacle){let Ce=ZA.obstacle;if(fA){let ye=rA(vA,BA,yA,Ce,!0);q.x=ye.x,q.y=ye.y;let Ze=ye.leavesPositiveSide?Math.min(Ce.minY-2,vA.y+Ac):Math.max(Ce.maxY+2,vA.y-Ac);JA=[{x:vA.x,y:Ze},{x:ye.x,y:Ze},{x:ye.x,y:ye.y}]}else{let ye=rA(vA,BA,yA,Ce,!1),Ze=ye.leavesPositiveSide?Math.min(Ce.minX-2,vA.x+Ac):Math.max(Ce.maxX+2,vA.x-Ac);q.x=ye.x,q.y=ye.y,JA=[{x:Ze,y:vA.y},{x:Ze,y:ye.y},{x:ye.x,y:ye.y}]}}let WA=[],te=mA(Z,_A);if(te.inside&&te.obstacle){let Ce=te.obstacle;if(j){let ye=rA(FA,yA,BA,Ce,!0);Z.x=ye.x,Z.y=ye.y,WA=[{x:ye.x,y:ye.y},{x:FA.x,y:ye.y}]}else{let ye=rA(FA,yA,BA,Ce,!1);Z.x=ye.x,Z.y=ye.y,WA=[{x:ye.x,y:ye.y},{x:ye.x,y:FA.y}]}}if(JA.length===0&&WA.length===0){let Ce=Rf,ye=Math.abs(q.x-Z.x)<Ce,Ze=Math.abs(q.y-Z.y)<Ce,Xt=L.get(`${nA}:src`)!==void 0||L.get(`${nA}:dst`)!==void 0,Vt=(f.get(`${eA.start??""}:${HA}:src`)?.length??0)+(f.get(`${eA.start??""}:${HA}:dst`)?.length??0),or=(f.get(`${eA.end??""}:${dA}:src`)?.length??0)+(f.get(`${eA.end??""}:${dA}:dst`)?.length??0),Qi=Vt>1||or>1,sr=D.get(eA.start??"")??0,et=D.get(eA.end??"")??0,Ye=Vt>1&&Y(eA.start,HA)||or>1&&Y(eA.end,dA),Ct=Vt<=1||sr<=2,lt=or<=1||et<=2;if((ye||Ze)&&!Xt&&(!Qi||Qi&&!Ye&&Ct&&lt)){if(!m(vA,FA,eA.start,eA.end)){eA.points=[{...vA},{...q},{...Z},{...FA}],I.add(nA);let LA=Ze?"horizontal":"vertical",ki=Ze?vA.y:vA.x,YA=Ze?Math.min(vA.x,FA.x):Math.min(vA.y,FA.y),lr=Ze?Math.max(vA.x,FA.x):Math.max(vA.y,FA.y),Du={id:`fast-path-${LA}-${ki.toFixed(0)}-${nA}`,orientation:LA,coord:ki,spanMin:YA,spanMax:lr,tracks:[]};E.push({edgeIndex:nA,segmentIndex:0,orientation:LA,pipe:Du,trackIndex:0,from:YA,to:lr});continue}}}let zA=g("vertical",q.x,q.y,q.y);q.x=zA.coord;let Ae=g("vertical",Z.x,Z.y,Z.y);Z.x=Ae.coord;let $A=Math.min(q.x,Z.x)-50,oe=Math.max(q.x,Z.x)+50,kA=Math.min(q.y,Z.y)-50,Pe=Math.max(q.y,Z.y)+50;for(let Ce of l){let ye=Math.min(q.x,Z.x),Ze=Math.max(q.x,Z.x),Xt=Math.min(q.y,Z.y),Vt=Math.max(q.y,Z.y);if(Ce.minX<Ze&&Ce.maxX>ye&&Ce.minY<Vt&&Ce.maxY>Xt)$A=Math.min($A,Ce.minX-UM),oe=Math.max(oe,Ce.maxX+UM),kA=Math.min(kA,Ce.minY-UM),Pe=Math.max(Pe,Ce.maxY+UM)}for(let Ce of l){if(Ce.maxX<$A||Ce.minX>oe||Ce.maxY<kA||Ce.minY>Pe)continue;let ye=Rf;g("horizontal",Ce.minY-ye,$A,oe),g("horizontal",Ce.maxY+ye,$A,oe);let Ze=Ly;g("vertical",Ce.minX-Ze,kA,Pe),g("vertical",Ce.maxX+Ze,kA,Pe)}g("horizontal",q.y,$A,oe),g("horizontal",Z.y,$A,oe);let MA=n.filter((Ce)=>Ce.orientation==="horizontal"&&Ce.coord>=kA&&Ce.coord<=Pe),ke=n.filter((Ce)=>Ce.orientation==="vertical"&&Ce.coord>=$A&&Ce.coord<=oe),We=y((Ce,ye)=>`${Ce.toFixed(1)},${ye.toFixed(1)}`,"getKey"),ue=We(q.x,q.y),Me=We(Z.x,Z.y),je=new Map,Ge=new Map,wA=new Map,Re=new Set,He=[];je.set(ue,0),wA.set(ue,"n"),He.push({key:ue,f:Math.hypot(Z.x-q.x,Z.y-q.y),pt:q}),Re.add(ue);let de=[],RA=y((Ce,ye)=>m(Ce,ye,eA.start,eA.end),"checkSegmentBlocked"),ce={x:Z.x,y:q.y},me=RA(q,ce),Le=RA(ce,Z),Lt=me||Le,Je={x:q.x,y:Z.y},kt=RA(q,Je),Cr=RA(Je,Z),Pt=kt||Cr;if(!Lt)if(Math.abs(q.y-Z.y)<ni||Math.abs(q.x-Z.x)<ni)de=[q,Z];else de=[q,ce,Z];else if(!Pt)if(Math.abs(q.x-Z.x)<ni)de=[q,Z];else de=[q,Je,Z];if(de.length===0)while(He.length>0){He.sort((et,Ye)=>et.f-Ye.f);let Ce=He.shift();if(Re.delete(Ce.key),Ce.key===Me){let et=Me,Ye=Z;de=[Ye];while(Ge.has(et)){let Ct=Ge.get(et);de.unshift(Ct),Ye=Ct,et=We(Ct.x,Ct.y)}break}let ye=Ce.pt.x,Ze=Ce.pt.y,Xt=ke.sort((et,Ye)=>et.coord-Ye.coord),Vt=Xt.findIndex((et)=>Math.abs(et.coord-ye)<1),or=MA.sort((et,Ye)=>et.coord-Ye.coord),Qi=or.findIndex((et)=>Math.abs(et.coord-Ze)<1),sr=[];if(Vt>0)sr.push({x:Xt[Vt-1].coord,y:Ze});if(Vt>=0&&Vt<Xt.length-1)sr.push({x:Xt[Vt+1].coord,y:Ze});if(Qi>0)sr.push({x:ye,y:or[Qi-1].coord});if(Qi>=0&&Qi<or.length-1)sr.push({x:ye,y:or[Qi+1].coord});for(let et of sr){let Ye=Math.min(ye,et.x),Ct=Math.max(ye,et.x),lt=Math.min(Ze,et.y),Te=Math.max(Ze,et.y);if(l.some((Vn)=>{if(Vn.nodeId===eA.start||Vn.nodeId===eA.end)return!1;if(Ye!==Ct)return Vn.minY<Ze&&Vn.maxY>Ze&&Vn.maxX>Ye&&Vn.minX<Ct;else return Vn.minX<ye&&Vn.maxX>ye&&Vn.maxY>lt&&Vn.minY<Te}))continue;let LA=We(et.x,et.y),ki=Math.abs(et.x-ye)+Math.abs(et.y-Ze),YA=Q(nA,Ce.pt,et),lr=0,Du=Z.x-q.x,zn=Z.y-q.y,an=et.x-ye,as=et.y-Ze;if(zn>10&&as<-5||zn<-10&&as>5)lr=Math.abs(as)*100;if(Du>10&&an<-5||Du<-10&&an>5)lr+=Math.abs(an)*50;let Ai=0,Ku=wA.get(Ce.key)??"n",ko=Math.abs(an)>ni?"h":"v";if(Ku!=="n"&&Ku!==ko)Ai=50;let Zn=ki+YA+lr+Ai,nn=(je.get(Ce.key)??1/0)+Zn,Ud=Math.abs(Z.x-et.x)+Math.abs(Z.y-et.y);if(nn<(je.get(LA)??1/0))if(Ge.set(LA,Ce.pt),je.set(LA,nn),wA.set(LA,ko),!Re.has(LA))He.push({key:LA,f:nn+Ud,pt:et}),Re.add(LA);else{let Vn=He.findIndex((Md)=>Md.key===LA);if(Vn!==-1)He[Vn].f=nn+Ud}}}if(de.length===0)de=[q,{x:q.x,y:Z.y},Z];if(de.length>4){let Ce=de[0],ye=de[de.length-1],Ze=Math.min(Ce.x,ye.x),Xt=Math.max(Ce.x,ye.x),Vt=Math.min(Ce.y,ye.y),or=Math.max(Ce.y,ye.y);for(let lt of de)Ze=Math.min(Ze,lt.x),Xt=Math.max(Xt,lt.x),Vt=Math.min(Vt,lt.y),or=Math.max(or,lt.y);let Qi=Xt>Math.max(Ce.x,ye.x),sr=Ze<Math.min(Ce.x,ye.x);if(o){let lt=Ly;if(Qi){let Te=Math.max(Ce.x,ye.x),Ft=Math.min(Ce.y,ye.y),LA=Math.max(Ce.y,ye.y),ki=l.filter((YA)=>YA.minX<Te&&YA.maxX>Te&&YA.minY<LA&&YA.maxY>Ft);if(ki.length>0){let YA=Math.max(Ce.x,ye.x);for(let lr of ki){let Du=(lr.minX+lr.maxX)/2;if(lr.visualXHalfExtent===void 0||isNaN(lr.visualXHalfExtent))continue;let zn=Du+lr.visualXHalfExtent+lt;YA=Math.max(YA,zn)}if(!isNaN(YA))Xt=YA}}if(sr){let Te=l.filter((Ft)=>Ft.minX<Math.min(Ce.x,ye.x)+lt&&Ft.minY<Math.max(Ce.y,ye.y)&&Ft.maxY>Math.min(Ce.y,ye.y));if(Te.length>0){let Ft=Math.min(Ce.x,ye.x);for(let LA of Te){let YA=(LA.minX+LA.maxX)/2-LA.visualXHalfExtent-lt;Ft=Math.min(Ft,YA)}Ze=Ft}}}let et=y((lt)=>{let Te=ye.y>Ce.y,Ft=l.filter((YA)=>{let lr=Math.min(Ce.x,ye.x)<YA.maxX&&Math.max(Ce.x,ye.x)>YA.minX,Du=Math.min(Ce.y,ye.y)<YA.maxY&&Math.max(Ce.y,ye.y)>YA.minY;return lr&&Du}),LA=Ft;if(o&&Ft.length>0){let YA=Ft.filter((lr)=>lr.minX<lt&&lr.maxX>lt);if(YA.length>0)LA=YA}if(LA.length===0)return ye.y;let ki=Rf;if(Te){let lr=Math.max(...LA.map((Du)=>Du.maxY))+ki;if(lr<ye.y-ni)return lr}else{let lr=Math.min(...LA.map((Du)=>Du.minY))-ki;if(lr>ye.y+ni)return lr}return ye.y},"findBestReturnY"),Ye=y((lt)=>{let Te=et(lt),Ft={x:lt,y:Ce.y},LA={x:lt,y:Te},ki={x:ye.x,y:Te},YA=RA(Ce,Ft),lr=RA(Ft,LA),Du=RA(LA,ki),zn=Te!==ye.y?RA(ki,ye):!1;if(!YA&&!lr&&!Du&&!zn){if(Math.abs(Te-ye.y)<ni)return[Ce,Ft,LA,ye];return[Ce,Ft,LA,ki,ye]}return null},"trySimplifyWithDetourX"),Ct=Qi&&!sr?Ye(Xt):sr&&!Qi?Ye(Ze):null;if(Ct)de=Ct}let dt=[vA,...JA,...de,...WA.reverse(),FA];if(dt.length>=3){let Ce=dt[dt.length-1],ye=dt[dt.length-2],Ze=dt[dt.length-3],Xt=Math.abs(Ze.y-ye.y)<ni&&Math.abs(ye.y-Ce.y)<ni,Vt=Math.abs(Ze.x-ye.x)<ni&&Math.abs(ye.x-Ce.x)<ni;if(Xt){let or=Math.sign(ye.x-Ze.x),Qi=Math.sign(Ce.x-Ze.x);if(or!==0&&or===Qi&&Math.abs(ye.x-Ze.x)>Math.abs(Ce.x-Ze.x))dt.splice(-2,1)}else if(Vt){let or=Math.sign(ye.y-Ze.y),Qi=Math.sign(Ce.y-Ze.y);if(or!==0&&or===Qi&&Math.abs(ye.y-Ze.y)>Math.abs(Ce.y-Ze.y))dt.splice(-2,1)}}let Yt=[dt[0]];for(let Ce=1;Ce<dt.length-1;Ce++){if(Ce===1){Yt.push(dt[Ce]);continue}let ye=Yt[Yt.length-1],Ze=dt[Ce],Xt=dt[Ce+1];if(Math.abs(ye.y-Ze.y)<ni&&Math.abs(Ze.y-Xt.y)<ni){let Vt=Ze.x>ye.x,or=Xt.x>Ze.x;if(Vt!==or){Yt.push(Ze);continue}continue}if(Math.abs(ye.x-Ze.x)<ni&&Math.abs(Ze.x-Xt.x)<ni){let Vt=Ze.y>ye.y,or=Xt.y>Ze.y;if(Vt!==or){Yt.push(Ze);continue}continue}Yt.push(Ze)}Yt.push(dt[dt.length-1]);for(let Ce=0;Ce<Yt.length-1;Ce++){let ye=Yt[Ce],Ze=Yt[Ce+1],Xt=Math.abs(ye.x-Ze.x)<ni?"vertical":"horizontal",Vt=Xt==="vertical"?ye.x:ye.y,or=Xt==="vertical"?Math.min(ye.y,Ze.y):Math.min(ye.x,Ze.x),Qi=Xt==="vertical"?Math.max(ye.y,Ze.y):Math.max(ye.x,Ze.x),sr=g(Xt,Vt,or,Qi),et={edgeIndex:nA,segmentIndex:Ce,orientation:Xt,pipe:sr,trackIndex:0,from:or,to:Qi};if(E.push(et),d[nA].push(E.length-1),!sr.tracks[0])sr.tracks[0]={index:0,coord:sr.coord,segments:[]};sr.tracks[0].segments.push({edgeIndex:nA,segmentIndex:Ce,from:or,to:Qi})}}let K=y((nA,eA)=>nA.from<eA.to&&eA.from<nA.to,"segmentsOverlap"),O=y((nA,eA,BA,yA)=>{let vA=!yA.segments.some((HA)=>(HA.edgeIndex!==eA.edgeIndex||HA.segmentIndex!==eA.segmentIndex)&&K(HA,nA)),FA=!BA.segments.some((HA)=>(HA.edgeIndex!==nA.edgeIndex||HA.segmentIndex!==nA.segmentIndex)&&K(HA,eA));if(vA&&FA)return nA.trackIndex=yA.index,eA.trackIndex=BA.index,BA.segments=[...BA.segments.filter((HA)=>HA.edgeIndex!==nA.edgeIndex||HA.segmentIndex!==nA.segmentIndex),{edgeIndex:eA.edgeIndex,segmentIndex:eA.segmentIndex,from:eA.from,to:eA.to}],yA.segments=[...yA.segments.filter((HA)=>HA.edgeIndex!==eA.edgeIndex||HA.segmentIndex!==eA.segmentIndex),{edgeIndex:nA.edgeIndex,segmentIndex:nA.segmentIndex,from:nA.from,to:nA.to}],!0;return!1},"trySwapSegmentsAcrossTracks"),P=y((nA)=>{let eA=nA.tracks.length;return nA.tracks[eA]={index:eA,coord:nA.coord,segments:[]},eA},"createNewTrack"),z=y((nA,eA)=>{let BA=nA.pipe.tracks[nA.trackIndex];BA.segments=BA.segments.filter((vA)=>vA.edgeIndex!==nA.edgeIndex||vA.segmentIndex!==nA.segmentIndex),nA.trackIndex=eA,nA.pipe.tracks[eA].segments.push({edgeIndex:nA.edgeIndex,segmentIndex:nA.segmentIndex,from:nA.from,to:nA.to})},"moveSegmentToTrack"),AA=y((nA,eA)=>{let BA=d[nA.edgeIndex];for(let yA of BA){let vA=E[yA];if(vA.pipe===nA.pipe)z(vA,eA)}},"moveSegmentChainToTrack"),W=y((nA)=>{let eA=d[nA.edgeIndex],BA=eA.indexOf(E.indexOf(nA)),yA=[];if(BA>0)yA.push(E[eA[BA-1]]);if(BA<eA.length-1)yA.push(E[eA[BA+1]]);return yA},"getAdjacentSegmentsAlongEdge"),CA=y((nA,eA)=>{if(nA.orientation===eA.orientation)return!1;let BA=nA.orientation==="horizontal"?nA:eA,yA=nA.orientation==="horizontal"?eA:nA;return yA.pipe.coord>BA.from&&yA.pipe.coord<BA.to&&BA.pipe.coord>yA.from&&BA.pipe.coord<yA.to},"haveAnyCrossing"),tA=y((nA,eA)=>{for(let BA of nA.tracks)if(!BA.segments.some((vA)=>(vA.edgeIndex!==eA.edgeIndex||vA.segmentIndex!==eA.segmentIndex)&&K(vA,eA)))return BA.index;return-1},"findAvailableTrack"),lA=y((nA,eA)=>{if(nA.trackIndex===eA.trackIndex)return K(nA,eA);let BA=W(nA),yA=W(eA);return BA.some((vA)=>yA.some((FA)=>CA(vA,FA)))},"segmentsConflict"),gA=y((nA,eA,BA)=>{if(O(nA,eA,nA.pipe.tracks[nA.trackIndex],eA.pipe.tracks[eA.trackIndex]))return;let yA=tA(nA.pipe,eA);BA(eA,yA!==-1?yA:P(nA.pipe))},"resolveTrackConflict"),aA=y((nA)=>{let eA=0;for(let BA=0;BA<nA.length;BA++)for(let yA=BA+1;yA<nA.length;yA++){let vA=nA[BA],FA=nA[yA];if(vA.pipe!==FA.pipe)continue;if(lA(vA,FA))eA++,gA(vA,FA,AA)}return eA},"resolveHandleConflicts"),NA=new Map,DA=y((nA)=>{if(NA.has(nA))return NA.get(nA);let eA=d[nA];if(eA.length===0){let dA={dest:0,deviation:0,base:0,delta:0};return NA.set(nA,dA),dA}let yA=E[eA[0]].pipe.coord,vA=yA;for(let dA=1;dA<eA.length;dA++){let q=E[eA[dA]];if(q.orientation==="horizontal"){let{from:Z,to:fA}=q;vA=Math.abs(Z-yA)>Math.abs(fA-yA)?Z:fA;break}}let FA=Math.abs(vA-yA),HA={dest:vA,deviation:FA,base:yA,delta:vA-yA};return NA.set(nA,HA),HA},"getDestInfo"),KA=y(()=>{let nA=0,eA=new Map;for(let[yA,vA]of i.entries()){if(d[yA].length===0)continue;if(!vA.start)continue;if(!eA.has(vA.start))eA.set(vA.start,[]);eA.get(vA.start).push(yA)}let BA=y((yA)=>{let vA=i[yA];if(!vA.start||!vA.end)return 0;let FA=u.get(vA.start),HA=u.get(vA.end);if(!FA||!HA)return 0;let dA=(HA.x??0)-(FA.x??0),q=(HA.y??0)-(FA.y??0);return Math.abs(dA)+Math.abs(q)},"getEdgeDistance");for(let yA of eA.values()){yA.sort((FA,HA)=>{let dA=DA(FA),q=DA(HA);if(Math.abs(dA.deviation-q.deviation)>1)return dA.deviation-q.deviation;if(Math.abs(dA.dest-q.dest)>1)return dA.dest-q.dest;let Z=BA(FA),fA=BA(HA);if(Math.abs(Z-fA)>1)return fA-Z;let j=d[FA].length,mA=d[HA].length;if(j!==mA)return j-mA;if(j===1){let rA=d[FA][0],JA=d[HA][0];if(E[rA]&&E[JA]){let _A=E[rA],ZA=E[JA],WA=Math.abs(_A.to-_A.from),te=Math.abs(ZA.to-ZA.from);if(Math.abs(WA-te)>1)return WA-te}}return 0});let vA=yA.map((FA)=>E[d[FA][0]]);nA+=aA(vA)}return nA},"fixSourceHandleCrossings"),TA=y(()=>{let nA=0,eA=new Map;for(let[BA,yA]of i.entries()){if(d[BA].length===0)continue;if(!yA.end)continue;if(!eA.has(yA.end))eA.set(yA.end,[]);eA.get(yA.end).push(BA)}for(let BA of eA.values()){BA.sort((vA,FA)=>{let HA=y((Z)=>{let fA=d[Z];if(fA.length<2)return 0;let j=E[fA[fA.length-2]];return Math.abs(j.to-j.from)},"getDist"),dA=HA(vA),q=HA(FA);if(Math.abs(dA-q)>0.1)return dA-q;return vA-FA});let yA=BA.map((vA)=>E[d[vA][d[vA].length-1]]);nA+=aA(yA)}return nA},"fixTargetHandleCrossings"),qA=y(()=>{let nA=0;for(let eA of n){let BA=[];for(let yA of eA.tracks)for(let vA of yA.segments){let FA=d[vA.edgeIndex].find((HA)=>E[HA].segmentIndex===vA.segmentIndex);if(FA!==void 0)BA.push(E[FA])}BA.sort((yA,vA)=>yA.edgeIndex-vA.edgeIndex||yA.segmentIndex-vA.segmentIndex);for(let yA=0;yA<BA.length;yA++)for(let vA=yA+1;vA<BA.length;vA++){let FA=BA[yA],HA=BA[vA];if(lA(FA,HA))nA++,gA(FA,HA,z)}}return nA},"fixPipeCrossings"),IA=0,bA=10;while(IA<bA){let nA=0;if(nA+=KA(),nA+=TA(),nA+=qA(),nA===0)break;IA++}let SA=new Map;for(let nA of n){let eA=[];nA.tracks.forEach((yA)=>{yA.segments.forEach((vA)=>{eA.push({edgeIndex:vA.edgeIndex,segmentIndex:vA.segmentIndex,trackIndex:yA.index,from:vA.from,to:vA.to})})}),eA.sort((yA,vA)=>yA.from-vA.from);let BA=[];if(eA.length>0){let yA=[eA[0]],vA=eA[0].to;for(let FA=1;FA<eA.length;FA++){let HA=eA[FA];if(HA.from<vA)yA.push(HA),vA=Math.max(vA,HA.to);else BA.push(yA),yA=[HA],vA=HA.to}BA.push(yA)}for(let yA of BA){let vA=new Set;yA.forEach((rA)=>vA.add(rA.trackIndex));let FA=new Map;yA.forEach((rA)=>{let JA=DA(rA.edgeIndex);FA.set(rA.trackIndex,(FA.get(rA.trackIndex)??0)+JA.delta)});let HA=[...vA].filter((rA)=>(FA.get(rA)??0)<-1),dA=[...vA].filter((rA)=>(FA.get(rA)??0)>1),q=[...vA].filter((rA)=>Math.abs(FA.get(rA)??0)<=1);HA.sort((rA,JA)=>(FA.get(JA)??0)-(FA.get(rA)??0)),dA.sort((rA,JA)=>(FA.get(rA)??0)-(FA.get(JA)??0));let Z=y((rA,JA)=>{yA.filter((_A)=>_A.trackIndex===rA).forEach((_A)=>{let ZA=I.has(_A.edgeIndex)?nA.coord:JA;SA.set(`${_A.edgeIndex}-${_A.segmentIndex}`,ZA)})},"assignCoord"),fA=0;for(let rA of HA)fA++,Z(rA,nA.coord-fA*brA);if(q.length===0&&vA.size>0){let rA=[...vA].sort((ZA,WA)=>Math.abs(FA.get(ZA)??0)-Math.abs(FA.get(WA)??0))[0],JA=HA.indexOf(rA);if(JA!==-1)HA.splice(JA,1);let _A=dA.indexOf(rA);if(_A!==-1)dA.splice(_A,1);q.push(rA)}let j=0;for(let rA of q){if(j===0)Z(rA,nA.coord);else{let JA=j%2===1?1:-1,_A=Math.ceil(j/2);Z(rA,nA.coord+JA*_A*brA*0.5)}j++}let mA=0;for(let rA of dA)mA++,Z(rA,nA.coord+mA*brA)}}for(let[nA,eA]of i.entries()){let BA=d[nA]??[];if(BA.length===0)continue;let yA=[],vA=u.get(eA.start),FA=u.get(eA.end),{pSrcPort:HA,pDstPort:dA}=J(nA,vA,FA),q=BA.map((j)=>{let mA=E[j],rA=SA.get(`${mA.edgeIndex}-${mA.segmentIndex}`)??mA.pipe.coord;return{orient:mA.orientation,coord:rA,from:mA.from,to:mA.to}});yA.push(HA);for(let j=0;j<q.length;j++){let mA=q[j],rA=yA[yA.length-1],JA=mA.orient==="vertical"?rA.y:rA.x,_A=mA.orient==="vertical"?rA.x:rA.y,ZA=q[j+1],WA=j<q.length-1;if(Math.abs(_A-mA.coord)>ni)yA.push(Nf(mA,JA));if(WA&&ZA.orient===mA.orient){if(Math.abs(mA.coord-ZA.coord)>ni){let te=mA.orient==="vertical"?(JA+ZA.from)/2:uiA(mA,ZA);yA.push(Nf(mA,te),Nf(ZA,te))}else if(j===0||j===q.length-2)yA.push(Nf(mA,uiA(mA,ZA)))}else if(WA)yA.push(Nf(mA,ZA.coord));else{let te=Math.abs(mA.from-JA)<Math.abs(mA.to-JA)?mA.to:mA.from;yA.push(Nf(mA,te))}}let Z=yA[yA.length-1];if(Math.abs(Z.x-dA.x)>ni||Math.abs(Z.y-dA.y)>ni)yA.push(dA);let fA=[];if(yA.length>0)fA.push(yA[0]);for(let j=1;j<yA.length;j++){let mA=yA[j],rA=fA[fA.length-1];if(Math.abs(mA.x-rA.x)>ni||Math.abs(mA.y-rA.y)>ni)fA.push(mA)}eA.points=fA}for(let nA of i){let eA=nA.__originalEdge;if(eA&&nA.points)eA.points=nA.points}A.edges=(A.edges??[]).filter((nA)=>!nA.isLayoutOnly);let EA=y((nA,eA)=>{let BA=eA.x??0,yA=eA.y??0,vA=eA.width??0,FA=eA.height??0;if(vA<=0||FA<=0)return nA;let HA=BA-vA/2,dA=BA+vA/2,q=yA-FA/2,Z=yA+FA/2;if(nA.x<HA||nA.x>dA||nA.y<q||nA.y>Z)return nA;let fA=nA.x-HA,j=dA-nA.x,mA=nA.y-q,rA=Z-nA.y,JA=Math.min(fA,j,mA,rA);if(JA===fA)return{x:HA,y:nA.y};if(JA===j)return{x:dA,y:nA.y};if(JA===mA)return{x:nA.x,y:q};return{x:nA.x,y:Z}},"nodeBoundaryClamp");for(let nA of A.edges){let eA=nA.points;if(!eA||eA.length<2)continue;let{start:BA,end:yA}=nA,vA=BA?u.get(BA):void 0,FA=yA?u.get(yA):void 0;if(vA)eA[0]=EA(eA[0],vA);if(FA)eA[eA.length-1]=EA(eA[eA.length-1],FA)}return A}function aTA(A){return A.direction??"TB"}function nTA(A){let e=OUA(A),t=A.config.flowchart?.nodeSpacing??40,r=A.config.flowchart?.rankSpacing??100,i=A.config.swimlane?.ignoreCrossLaneEdges??!0,u=A.config.swimlane?.optimizeRanksByCrossings??!0,a=A.config.swimlane?.automaticLaneOrdering??!1,n=aTA(A),{ordered:o,coordinates:s}=iTA(e,{nodeGap:t,layerGap:r,ignoreCrossLaneEdges:i,optimizeRanksByCrossings:u,automaticLaneOrdering:a,direction:n});PUA(e,o,s,{nodeGap:t,layerGap:r});for(let l of A.edges??[])delete l.points;uTA(A,n);for(let l of A.edges??[])if(!l.curve||l.curve==="basis")l.curve="rounded";return mMA(A,n),fMA(A),n}async function oTA(A,e){let t=e.select("g");uy(t,A.markers,A.type,A.diagramId),dU(),hU(),BU(),vM(),JUA(A);let r=_UA(A);A.nodes=r.nodes,A.edges=r.edges;let{groups:i}=await kUA(t,A);nTA(A),await YUA(A,i)}var mUA=5,LM=0.00001,RM=0.000001,ght=0.001,DrA="__swimlane_default__",cht=21,DUA=20,Cht="[EdgeLabelNodes]",Uo=0.001,yr=0.001,Bht=0.5,yUA=4,dC=0.000001,Eht=8,NM,dht,Ot=0.001,Go=8,ii,yrA,$Q=0.001,Iht=8,gl=0.001,wUA=10,GM=7,wrA=0.000001,hht=8,bUA,Qht=3,pht,qM,vUA,ZMA=8,ni,fht=8,Rf=15,Ly=15,UM=25,Ac=20,brA=10;var lTA=_(()=>{qtA();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt();ng();y(kUA,"createGraphWithElements");y(YM,"buildSegmentList");y(FUA,"segmentIntersection");y(vrA,"isHorizontalSeg");y(xUA,"findEdgeIntersections");y(IC,"fmt");y(Ry,"pointToString");y(SUA,"getArcSweepFlag");y(LUA,"applyMarkerOffsets");y(RUA,"emitJump");y(krA,"computeRoundedCorner");y(NUA,"rewriteEdgePath");y(GUA,"isStraightPath");y(UUA,"curveSupportsLineHops");y(MUA,"decodeDataPoints");y(TUA,"applyLineJumpsToSvg");y(YUA,"adjustLayout");y(HUA,"positionEdgeLabel");y(FrA,"topLaneHorizontalPadding");y(KUA,"assignTopLaneTitleRect");y(JUA,"prepareLayoutForSwimlanes");y(OUA,"toGraphView");y(PUA,"writeBackToLayoutData");y(_UA,"createEdgeLabelNodes");y(aiA,"measuredNodeRect");y(niA,"nodeBoundsInfoFor");y(ec,"samePoint");y(Bi,"sameX");y(fi,"sameY");y(qa,"isHorizontalSegment");y(za,"isVerticalSegment");y(ds,"overlapLength");y(BE,"sameAxisSegmentOverlapLength");y(Gy,"orthogonalSegmentsForPoints");y(og,"countOrthogonalBends");y(Ti,"dedupeConsecutivePoints");y(oiA,"classifyThreeSegmentRoute");y(ZM,"segmentBoundsOverlapRect");y(siA,"pointInsideRect");y(WUA,"rectContainsRect");y(HM,"rectsOverlap");y(xrA,"inflateRect");y(Ny,"rectFromCenterSize");y(cl,"rectOfNodeBounds");y(Gf,"portForRectSide");y(liA,"buildOrthogonalPortPath");y(giA,"buildSameSideTrackPath");y(VM,"collectRealNodeBounds");y(A4,"collectNodeRectEntries");y(qUA,"collectLayoutNodeRects");y(ciA,"getNodePairGeometry");y(En,"segmentHitsAnyRect");y(CiA,"orthogonalSegmentsCross");y(zUA,"sameAxisSegmentsOverlap");y(KM,"segmentConflictsWithAnyEdge");y(fI,"orthogonalSegmentsStrictlyCross");y(SrA,"strictlyBetween");y(ZUA,"isCollinearIntermediate");y(VUA,"simplifyPolylineOnce");y(JM,"orthogonalizePolyline");y(EE,"simplifyPolyline");y(BiA,"endpointContextFor");y(jUA,"segmentEnterPoint");y(LrA,"clipEndpoint");y(XUA,"clipEdgeEndpointsToNodeBoundaries");y(RrA,"snapEndpointToBoundary");y(OM,"firstDistinctAdjacent");y(PM,"cornerClearanceRange");y(NrA,"clampToCornerClearance");y($UA,"intersectRanges");y(GrA,"clearanceRangeForSide");y(_M,"terminalSideForSegment");y(ck,"isHorizontalSide");y(AMA,"straightClearanceRange");y(UrA,"clearStraightEndpointCornerAxis");y(EiA,"clearStraightEndpointCornerConnections");y(eMA,"cornerClearedEndpoint");y(tMA,"moveCollinearEndpointRun");y(MrA,"clearEndpointCornerConnection");y(TrA,"borderSideForSegment");y(YrA,"leavesOutward");y(HrA,"collapseOwnBorderStub");y(rMA,"snapAndCollapseEndpoints");y(KrA,"prepareEdgeEndpointsForRenderer");y(diA,"buildNodeMap");y(iMA,"resolveTopLevelGroupId");y(JrA,"groupDepth");y(IiA,"boundsForChildren");y(uMA,"applyGroupBounds");y(aMA,"recomputeNestedGroupBounds");y(WM,"mirrorAxis");y(nMA,"applyBtDirectionTransform");y(oMA,"applyLrDirectionTransform");NM=Eht,dht=[0,NM,-NM,2*NM,-2*NM];y(sMA,"portSwapToLShape");y(lMA,"collapseShortTerminalStub");ii=Gy,yrA=y((A,e)=>Bi(A,e,Ot)||fi(A,e,Ot),"orthogonallyAligned");y(gMA,"separateSharedRenderedTerminalLanes");y(cMA,"collapseRedundantRectangularDoglegs");y(OrA,"liftObstacleHuggingSameSideRails");y(PrA,"liftTopLaneTitleBandsAboveRails");y(_rA,"shiftLeftLaneTitleBandsLeftOfRails");y(CMA,"swapDestinationTerminalTailsToReduceCrossings");y(BMA,"reassignCrossingExternalRailChannels");y(EMA,"shortcutRedundantOrthogonalJogs");y(dMA,"resolveRenderedOrthogonalCrossings");y(IMA,"simplifyDetouredEdges");y(WrA,"markerClearanceRectFor");y(hMA,"normalizeRect");y(qrA,"labelOverlapsOwnMarker");y(MM,"anchorLabelsToPolyline");bUA=hht/2;y(zrA,"pairKey");y(QMA,"straightenCollinearSiblingDetours");y(ZrA,"nudgeSharedInteriorSubpaths");y(pMA,"segmentsIntersect");y(fMA,"validateSwimlanesLayout");y(mMA,"postProcessSwimlaneLayout");y(e4,"normalizeGraph");y(hiA,"incoming");y(DMA,"buildSuccessorMap");y(QiA,"buildSortedSuccessorMap");y(piA,"buildInDegreeMap");y(fiA,"sortedZeroInDegreeNodes");y(jM,"buildPredecessorSuccessorMaps");y(miA,"buildLayersFromRanks");y(Ck,"topoSortIfAcyclic");y(Uy,"buildLayerIndex");y(DiA,"countInversions");y(yMA,"removeCycles_DFS");y(wMA,"buildTopLaneMap");y(mI,"createTopLaneResolver");y(XM,"buildTopLaneOrder");y(yiA,"resolveTopLaneOrder");pht={EPSILON:0.000001},qM={GRAVITY_ITERATIONS:8,MAX_CROSSING_OPTIMIZATION_PASSES:4,DEFAULT_COMPACT_SINGLE_INPUT:!0},vUA={DEFAULT_LAYER_GAP:100,DEFAULT_NODE_GAP:40};y(bMA,"buildDrivingTree");y(vMA,"chooseParent");y(kMA,"buildAdjacency");y(FMA,"assignComponents");y(xMA,"computeBlocks");y(SMA,"popBlock");y(LMA,"computeSubtreeCrossCounts");y(RMA,"annotateMinimumLayers");y(wiA,"compareByRankThenId");y(NMA,"emitNodesInTreeOrder");y(GMA,"deduplicateLayers");y(UMA,"createChildOrderer");y(zM,"buildMultitreeLayerOrder");y(MMA,"countCrossingsBetweenAdjacent");y(VrA,"totalCrossings");y(TMA,"optimizeRanksByCrossings");y(YMA,"adjustCrossLaneSources");y(HMA,"assignLayers_LongestPath");y(KMA,"assignLayers_Gravity");y(JMA,"topoSortByGenerationIfAcyclic");y(OMA,"assignLayers_LaneAwareCompact");y(PMA,"makeProperLayering");y(jrA,"median");y(XrA,"barycenter");y(_MA,"neighborPositionsFor");y(WMA,"currentOrderTieBreak");y($rA,"countCrossingsBetweenAdjacent");y(TM,"sortByHeuristic");y(AiA,"reorderLayer");y(eiA,"transposeImprove");y(qMA,"orderLayers");y(zMA,"assignCoordinates");y(VMA,"hashString");y(jMA,"mulberry32");y(XMA,"deterministicShuffle");y($MA,"sourceDistance");y(tiA,"laneArrangementCost");y(ATA,"buildWeightedLaneEdges");y(riA,"greedySwitch");y(eTA,"isBetterCandidate");y(tTA,"seedForRestart");y(rTA,"optimizeTopLaneOrder");y(iTA,"sugiyamaLayout");ni=pht.EPSILON;y(iiA,"chooseOrthogonalSide");y(uiA,"sharedLineEndpointCoord");y(Nf,"pointOnLine");y(uTA,"routeEdgesOrthogonal");y(aTA,"getSwimlaneDirection");y(nTA,"runSwimlaneLayoutCore");y(oTA,"render")});function taA(A,e){(e==null||e>A.length)&&(e=A.length);for(var t=0,r=Array(e);t<e;t++)r[t]=A[t];return r}function mht(A){if(Array.isArray(A))return A}function Dht(A){if(Array.isArray(A))return taA(A)}function I4(A,e){if(!(A instanceof e))throw TypeError("Cannot call a class as a function")}function yht(A,e){for(var t=0;t<e.length;t++){var r=e[t];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(A,HHA(r.key),r)}}function h4(A,e,t){return e&&yht(A.prototype,e),Object.defineProperty(A,"prototype",{writable:!1}),A}function Bl(A,e){var t=typeof Symbol<"u"&&A[Symbol.iterator]||A["@@iterator"];if(!t){if(Array.isArray(A)||(t=maA(A))||e){t&&(A=t);var r=0,i=function(){};return{s:i,n:function(){return r>=A.length?{done:!0}:{done:!1,value:A[r++]}},e:function(o){throw o},f:i}}throw TypeError(`Invalid attempt to iterate non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var u,a=!0,n=!1;return{s:function(){t=t.call(A)},n:function(){var o=t.next();return a=o.done,o},e:function(o){n=!0,u=o},f:function(){try{a||t.return==null||t.return()}finally{if(n)throw u}}}}function YHA(A,e,t){return(e=HHA(e))in A?Object.defineProperty(A,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):A[e]=t,A}function wht(A){if(typeof Symbol<"u"&&A[Symbol.iterator]!=null||A["@@iterator"]!=null)return Array.from(A)}function bht(A,e){var t=A==null?null:typeof Symbol<"u"&&A[Symbol.iterator]||A["@@iterator"];if(t!=null){var r,i,u,a,n=[],o=!0,s=!1;try{if(u=(t=t.call(A)).next,e===0){if(Object(t)!==t)return;o=!1}else for(;!(o=(r=u.call(t)).done)&&(n.push(r.value),n.length!==e);o=!0);}catch(l){s=!0,i=l}finally{try{if(!o&&t.return!=null&&(a=t.return(),Object(a)!==a))return}finally{if(s)throw i}}return n}}function vht(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function kht(){throw TypeError(`Invalid attempt to spread non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Mn(A,e){return mht(A)||bht(A,e)||maA(A,e)||vht()}function DT(A){return Dht(A)||wht(A)||maA(A)||kht()}function Fht(A,e){if(typeof A!="object"||!A)return A;var t=A[Symbol.toPrimitive];if(t!==void 0){var r=t.call(A,e);if(typeof r!="object")return r;throw TypeError("@@toPrimitive must return a primitive value.")}return String(A)}function HHA(A){var e=Fht(A,"string");return typeof e=="symbol"?e:e+""}function oo(A){return oo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},oo(A)}function maA(A,e){if(A){if(typeof A=="string")return taA(A,e);var t={}.toString.call(A).slice(8,-1);return t==="Object"&&A.constructor&&(t=A.constructor.name),t==="Map"||t==="Set"?Array.from(A):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?taA(A,e):void 0}}function Yk(A){return A&&A.__esModule&&Object.prototype.hasOwnProperty.call(A,"default")?A.default:A}function Hk(){if(CTA)return biA;CTA=1;function A(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}return biA=A,biA}function jht(){if(BTA)return viA;BTA=1;var A=typeof $M=="object"&&$M&&$M.Object===Object&&$M;return viA=A,viA}function TT(){if(ETA)return kiA;ETA=1;var A=jht(),e=typeof self=="object"&&self&&self.Object===Object&&self,t=A||e||Function("return this")();return kiA=t,kiA}function Xht(){if(dTA)return FiA;dTA=1;var A=TT(),e=function(){return A.Date.now()};return FiA=e,FiA}function $ht(){if(ITA)return xiA;ITA=1;var A=/\s/;function e(t){var r=t.length;while(r--&&A.test(t.charAt(r)));return r}return xiA=e,xiA}function AQt(){if(hTA)return SiA;hTA=1;var A=$ht(),e=/^\s+/;function t(r){return r?r.slice(0,A(r)+1).replace(e,""):r}return SiA=t,SiA}function waA(){if(QTA)return LiA;QTA=1;var A=TT(),e=A.Symbol;return LiA=e,LiA}function eQt(){if(pTA)return RiA;pTA=1;var A=waA(),e=Object.prototype,{hasOwnProperty:t,toString:r}=e,i=A?A.toStringTag:void 0;function u(a){var n=t.call(a,i),o=a[i];try{a[i]=void 0;var s=!0}catch(g){}var l=r.call(a);if(s)if(n)a[i]=o;else delete a[i];return l}return RiA=u,RiA}function tQt(){if(fTA)return NiA;fTA=1;var A=Object.prototype,e=A.toString;function t(r){return e.call(r)}return NiA=t,NiA}function VHA(){if(mTA)return GiA;mTA=1;var A=waA(),e=eQt(),t=tQt(),r="[object Null]",i="[object Undefined]",u=A?A.toStringTag:void 0;function a(n){if(n==null)return n===void 0?i:r;return u&&u in Object(n)?e(n):t(n)}return GiA=a,GiA}function rQt(){if(DTA)return UiA;DTA=1;function A(e){return e!=null&&typeof e=="object"}return UiA=A,UiA}function Kk(){if(yTA)return MiA;yTA=1;var A=VHA(),e=rQt(),t="[object Symbol]";function r(i){return typeof i=="symbol"||e(i)&&A(i)==t}return MiA=r,MiA}function iQt(){if(wTA)return TiA;wTA=1;var A=AQt(),e=Hk(),t=Kk(),r=NaN,i=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,a=/^0o[0-7]+$/i,n=parseInt;function o(s){if(typeof s=="number")return s;if(t(s))return r;if(e(s)){var l=typeof s.valueOf=="function"?s.valueOf():s;s=e(l)?l+"":l}if(typeof s!="string")return s===0?s:+s;s=A(s);var g=u.test(s);return g||a.test(s)?n(s.slice(2),g?2:8):i.test(s)?r:+s}return TiA=o,TiA}function uQt(){if(bTA)return YiA;bTA=1;var A=Hk(),e=Xht(),t=iQt(),r="Expected a function",{max:i,min:u}=Math;function a(n,o,s){var l,g,C,B,E,d,I=0,h=!1,Q=!1,p=!0;if(typeof n!="function")throw TypeError(r);if(o=t(o)||0,A(s))h=!!s.leading,Q="maxWait"in s,C=Q?i(t(s.maxWait)||0,o):C,p="trailing"in s?!!s.trailing:p;function m(F){var T=l,R=g;return l=g=void 0,I=F,B=n.apply(R,T),B}function f(F){return I=F,E=setTimeout(b,o),h?m(F):B}function D(F){var T=F-d,R=F-I,L=o-T;return Q?u(L,C-R):L}function w(F){var T=F-d,R=F-I;return d===void 0||T>=o||T<0||Q&&R>=C}function b(){var F=e();if(w(F))return k(F);E=setTimeout(b,D(F))}function k(F){if(E=void 0,p&&l)return m(F);return l=g=void 0,B}function v(){if(E!==void 0)clearTimeout(E);I=0,l=d=g=E=void 0}function S(){return E===void 0?B:k(e())}function x(){var F=e(),T=w(F);if(l=arguments,g=this,d=F,T){if(E===void 0)return f(d);if(Q)return clearTimeout(E),E=setTimeout(b,o),m(d)}if(E===void 0)E=setTimeout(b,o);return B}return x.cancel=v,x.flush=S,x}return YiA=a,YiA}function lQt(A,e,t,r,i){var u=i*Math.PI/180,a=Math.cos(u)*(A-t)-Math.sin(u)*(e-r)+t,n=Math.sin(u)*(A-t)+Math.cos(u)*(e-r)+r;return{x:a,y:n}}function cQt(A,e,t){if(t===0)return A;var r=(e.x1+e.x2)/2,i=(e.y1+e.y2)/2,u=e.w/e.h,a=1/u,n=lQt(A.x,A.y,r,i,t),o=gQt(n.x,n.y,r,i,u,a);return{x:o.x,y:o.y}}function DQt(){if(STA)return cT.exports;return STA=1,function(A,e){(function(){var t,r,i,u,a,n,o,s,l,g,C,B,E,d,I;i=Math.floor,g=Math.min,r=function(h,Q){if(h<Q)return-1;if(h>Q)return 1;return 0},l=function(h,Q,p,m,f){var D;if(p==null)p=0;if(f==null)f=r;if(p<0)throw Error("lo must be non-negative");if(m==null)m=h.length;while(p<m)if(D=i((p+m)/2),f(Q,h[D])<0)m=D;else p=D+1;return[].splice.apply(h,[p,p-p].concat(Q)),Q},n=function(h,Q,p){if(p==null)p=r;return h.push(Q),d(h,0,h.length-1,p)},a=function(h,Q){var p,m;if(Q==null)Q=r;if(p=h.pop(),h.length)m=h[0],h[0]=p,I(h,0,Q);else m=p;return m},s=function(h,Q,p){var m;if(p==null)p=r;return m=h[0],h[0]=Q,I(h,0,p),m},o=function(h,Q,p){var m;if(p==null)p=r;if(h.length&&p(h[0],Q)<0)m=[h[0],Q],Q=m[0],h[0]=m[1],I(h,0,p);return Q},u=function(h,Q){var p,m,f,D,w,b;if(Q==null)Q=r;D=function(){b=[];for(var k=0,v=i(h.length/2);0<=v?k<v:k>v;0<=v?k++:k--)b.push(k);return b}.apply(this).reverse(),w=[];for(m=0,f=D.length;m<f;m++)p=D[m],w.push(I(h,p,Q));return w},E=function(h,Q,p){var m;if(p==null)p=r;if(m=h.indexOf(Q),m===-1)return;return d(h,0,m,p),I(h,m,p)},C=function(h,Q,p){var m,f,D,w,b;if(p==null)p=r;if(f=h.slice(0,Q),!f.length)return f;u(f,p),b=h.slice(Q);for(D=0,w=b.length;D<w;D++)m=b[D],o(f,m,p);return f.sort(p).reverse()},B=function(h,Q,p){var m,f,D,w,b,k,v,S,x;if(p==null)p=r;if(Q*10<=h.length){if(D=h.slice(0,Q).sort(p),!D.length)return D;f=D[D.length-1],v=h.slice(Q);for(w=0,k=v.length;w<k;w++)if(m=v[w],p(m,f)<0)l(D,m,0,null,p),D.pop(),f=D[D.length-1];return D}u(h,p),x=[];for(b=0,S=g(Q,h.length);0<=S?b<S:b>S;0<=S?++b:--b)x.push(a(h,p));return x},d=function(h,Q,p,m){var f,D,w;if(m==null)m=r;f=h[p];while(p>Q){if(w=p-1>>1,D=h[w],m(f,D)<0){h[p]=D,p=w;continue}break}return h[p]=f},I=function(h,Q,p){var m,f,D,w,b;if(p==null)p=r;f=h.length,b=Q,D=h[Q],m=2*Q+1;while(m<f){if(w=m+1,w<f&&!(p(h[m],h[w])<0))m=w;h[Q]=h[m],Q=m,m=2*Q+1}return h[Q]=D,d(h,b,Q,p)},t=function(){h.push=n,h.pop=a,h.replace=s,h.pushpop=o,h.heapify=u,h.updateItem=E,h.nlargest=C,h.nsmallest=B;function h(Q){this.cmp=Q!=null?Q:r,this.nodes=[]}return h.prototype.push=function(Q){return n(this.nodes,Q,this.cmp)},h.prototype.pop=function(){return a(this.nodes,this.cmp)},h.prototype.peek=function(){return this.nodes[0]},h.prototype.contains=function(Q){return this.nodes.indexOf(Q)!==-1},h.prototype.replace=function(Q){return s(this.nodes,Q,this.cmp)},h.prototype.pushpop=function(Q){return o(this.nodes,Q,this.cmp)},h.prototype.heapify=function(){return u(this.nodes,this.cmp)},h.prototype.updateItem=function(Q){return E(this.nodes,Q,this.cmp)},h.prototype.clear=function(){return this.nodes=[]},h.prototype.empty=function(){return this.nodes.length===0},h.prototype.size=function(){return this.nodes.length},h.prototype.clone=function(){var Q=new h;return Q.nodes=this.nodes.slice(0),Q},h.prototype.toArray=function(){return this.nodes.slice(0)},h.prototype.insert=h.prototype.push,h.prototype.top=h.prototype.peek,h.prototype.front=h.prototype.peek,h.prototype.has=h.prototype.contains,h.prototype.copy=h.prototype.clone,h}(),function(h,Q){return A.exports=Q()}(this,function(){return t})}).call(mQt)}(cT),cT.exports}function yQt(){if(LTA)return KiA;return LTA=1,KiA=DQt(),KiA}function jQt(A,e){if(A.length<3)throw Error("Need at least 3 vertices");var t=function(b,k){return{x:b.x+k.x,y:b.y+k.y}},r=function(b,k){return{x:b.x-k.x,y:b.y-k.y}},i=function(b,k){return{x:b.x*k,y:b.y*k}},u=function(b,k){return b.x*k.y-b.y*k.x},a=function(b){var k=VQt(b.x,b.y);return k===0?{x:0,y:0}:{x:b.x/k,y:b.y/k}},n=function(b){var k=0;for(var v=0;v<b.length;v++){var S=b[v],x=b[(v+1)%b.length];k+=S.x*x.y-x.x*S.y}return k/2},o=function(b,k,v,S){var x=r(k,b),F=r(S,v),T=u(x,F);if(Math.abs(T)<0.000000001)return t(b,i(x,0.5));var R=u(r(v,b),F)/T;return t(b,i(x,R))},s=A.map(function(w){return{x:w.x,y:w.y}});if(n(s)<0)s.reverse();var l=s.length,g=[];for(var C=0;C<l;C++){var B=s[C],E=s[(C+1)%l],d=r(E,B),I=a({x:d.y,y:-d.x});g.push(I)}var h=g.map(function(w,b){var k=t(s[b],i(w,e)),v=t(s[(b+1)%l],i(w,e));return{p1:k,p2:v}}),Q=[];for(var p=0;p<l;p++){var m=h[(p-1+l)%l],f=h[p],D=o(m.p1,m.p2,f.p1,f.p2);Q.push(D)}return Q}function XQt(A,e,t,r,i,u){var a=n4t(A,e,t,r,i),n=jQt(a,u),o=Qs();return n.forEach(function(s){return nKA(o,s.x,s.y)}),o}function _iA(A,e){function t(g){var C=[];for(var B=0;B<g.length;B++){var E=g[B],d=g[(B+1)%g.length],I={x:d.x-E.x,y:d.y-E.y},h={x:-I.y,y:I.x},Q=Math.sqrt(h.x*h.x+h.y*h.y);C.push({x:h.x/Q,y:h.y/Q})}return C}function r(g,C){var B=1/0,E=-1/0,d=Bl(g),I;try{for(d.s();!(I=d.n()).done;){var h=I.value,Q=h.x*C.x+h.y*C.y;B=Math.min(B,Q),E=Math.max(E,Q)}}catch(p){d.e(p)}finally{d.f()}return{min:B,max:E}}function i(g,C){return!(g.max<C.min||C.max<g.min)}var u=[].concat(DT(t(A)),DT(t(e))),a=Bl(u),n;try{for(a.s();!(n=a.n()).done;){var o=n.value,s=r(A,o),l=r(e,o);if(!i(s,l))return!1}}catch(g){a.e(g)}finally{a.f()}return!0}function KT(A,e,t,r,i,u){var a;if(La(A))a=A;else a=$y[A]||$y.euclidean;if(e===0&&La(A))return a(i,u);else return a(e,t,r,i,u)}function JT(){if(VTA)return qiA;VTA=1;var A=Array.isArray;return qiA=A,qiA}function A1t(){if(jTA)return ziA;jTA=1;var A=JT(),e=Kk(),t=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function i(u,a){if(A(u))return!1;var n=typeof u;if(n=="number"||n=="symbol"||n=="boolean"||u==null||e(u))return!0;return r.test(u)||!t.test(u)||a!=null&&u in Object(a)}return ziA=i,ziA}function e1t(){if(XTA)return ZiA;XTA=1;var A=VHA(),e=Hk(),t="[object AsyncFunction]",r="[object Function]",i="[object GeneratorFunction]",u="[object Proxy]";function a(n){if(!e(n))return!1;var o=A(n);return o==r||o==i||o==t||o==u}return ZiA=a,ZiA}function t1t(){if($TA)return ViA;$TA=1;var A=TT(),e=A["__core-js_shared__"];return ViA=e,ViA}function r1t(){if(AYA)return jiA;AYA=1;var A=t1t(),e=function(){var r=/[^.]+$/.exec(A&&A.keys&&A.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();function t(r){return!!e&&e in r}return jiA=t,jiA}function i1t(){if(eYA)return XiA;eYA=1;var A=Function.prototype,e=A.toString;function t(r){if(r!=null){try{return e.call(r)}catch(i){}try{return r+""}catch(i){}}return""}return XiA=t,XiA}function u1t(){if(tYA)return $iA;tYA=1;var A=e1t(),e=r1t(),t=Hk(),r=i1t(),i=/[\\^$.*+?()[\]{}|]/g,u=/^\[object .+?Constructor\]$/,a=Function.prototype,n=Object.prototype,o=a.toString,s=n.hasOwnProperty,l=RegExp("^"+o.call(s).replace(i,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function g(C){if(!t(C)||e(C))return!1;var B=A(C)?l:u;return B.test(r(C))}return $iA=g,$iA}function a1t(){if(rYA)return AuA;rYA=1;function A(e,t){return e==null?void 0:e[t]}return AuA=A,AuA}function NaA(){if(iYA)return euA;iYA=1;var A=u1t(),e=a1t();function t(r,i){var u=e(r,i);return A(u)?u:void 0}return euA=t,euA}function OT(){if(uYA)return tuA;uYA=1;var A=NaA(),e=A(Object,"create");return tuA=e,tuA}function n1t(){if(aYA)return ruA;aYA=1;var A=OT();function e(){this.__data__=A?A(null):{},this.size=0}return ruA=e,ruA}function o1t(){if(nYA)return iuA;nYA=1;function A(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}return iuA=A,iuA}function s1t(){if(oYA)return uuA;oYA=1;var A=OT(),e="__lodash_hash_undefined__",t=Object.prototype,r=t.hasOwnProperty;function i(u){var a=this.__data__;if(A){var n=a[u];return n===e?void 0:n}return r.call(a,u)?a[u]:void 0}return uuA=i,uuA}function l1t(){if(sYA)return auA;sYA=1;var A=OT(),e=Object.prototype,t=e.hasOwnProperty;function r(i){var u=this.__data__;return A?u[i]!==void 0:t.call(u,i)}return auA=r,auA}function g1t(){if(lYA)return nuA;lYA=1;var A=OT(),e="__lodash_hash_undefined__";function t(r,i){var u=this.__data__;return this.size+=this.has(r)?0:1,u[r]=A&&i===void 0?e:i,this}return nuA=t,nuA}function c1t(){if(gYA)return ouA;gYA=1;var A=n1t(),e=o1t(),t=s1t(),r=l1t(),i=g1t();function u(a){var n=-1,o=a==null?0:a.length;this.clear();while(++n<o){var s=a[n];this.set(s[0],s[1])}}return u.prototype.clear=A,u.prototype.delete=e,u.prototype.get=t,u.prototype.has=r,u.prototype.set=i,ouA=u,ouA}function C1t(){if(cYA)return suA;cYA=1;function A(){this.__data__=[],this.size=0}return suA=A,suA}function mKA(){if(CYA)return luA;CYA=1;function A(e,t){return e===t||e!==e&&t!==t}return luA=A,luA}function PT(){if(BYA)return guA;BYA=1;var A=mKA();function e(t,r){var i=t.length;while(i--)if(A(t[i][0],r))return i;return-1}return guA=e,guA}function B1t(){if(EYA)return cuA;EYA=1;var A=PT(),e=Array.prototype,t=e.splice;function r(i){var u=this.__data__,a=A(u,i);if(a<0)return!1;var n=u.length-1;if(a==n)u.pop();else t.call(u,a,1);return--this.size,!0}return cuA=r,cuA}function E1t(){if(dYA)return CuA;dYA=1;var A=PT();function e(t){var r=this.__data__,i=A(r,t);return i<0?void 0:r[i][1]}return CuA=e,CuA}function d1t(){if(IYA)return BuA;IYA=1;var A=PT();function e(t){return A(this.__data__,t)>-1}return BuA=e,BuA}function I1t(){if(hYA)return EuA;hYA=1;var A=PT();function e(t,r){var i=this.__data__,u=A(i,t);if(u<0)++this.size,i.push([t,r]);else i[u][1]=r;return this}return EuA=e,EuA}function h1t(){if(QYA)return duA;QYA=1;var A=C1t(),e=B1t(),t=E1t(),r=d1t(),i=I1t();function u(a){var n=-1,o=a==null?0:a.length;this.clear();while(++n<o){var s=a[n];this.set(s[0],s[1])}}return u.prototype.clear=A,u.prototype.delete=e,u.prototype.get=t,u.prototype.has=r,u.prototype.set=i,duA=u,duA}function Q1t(){if(pYA)return IuA;pYA=1;var A=NaA(),e=TT(),t=A(e,"Map");return IuA=t,IuA}function p1t(){if(fYA)return huA;fYA=1;var A=c1t(),e=h1t(),t=Q1t();function r(){this.size=0,this.__data__={hash:new A,map:new(t||e),string:new A}}return huA=r,huA}function f1t(){if(mYA)return QuA;mYA=1;function A(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}return QuA=A,QuA}function _T(){if(DYA)return puA;DYA=1;var A=f1t();function e(t,r){var i=t.__data__;return A(r)?i[typeof r=="string"?"string":"hash"]:i.map}return puA=e,puA}function m1t(){if(yYA)return fuA;yYA=1;var A=_T();function e(t){var r=A(this,t).delete(t);return this.size-=r?1:0,r}return fuA=e,fuA}function D1t(){if(wYA)return muA;wYA=1;var A=_T();function e(t){return A(this,t).get(t)}return muA=e,muA}function y1t(){if(bYA)return DuA;bYA=1;var A=_T();function e(t){return A(this,t).has(t)}return DuA=e,DuA}function w1t(){if(vYA)return yuA;vYA=1;var A=_T();function e(t,r){var i=A(this,t),u=i.size;return i.set(t,r),this.size+=i.size==u?0:1,this}return yuA=e,yuA}function b1t(){if(kYA)return wuA;kYA=1;var A=p1t(),e=m1t(),t=D1t(),r=y1t(),i=w1t();function u(a){var n=-1,o=a==null?0:a.length;this.clear();while(++n<o){var s=a[n];this.set(s[0],s[1])}}return u.prototype.clear=A,u.prototype.delete=e,u.prototype.get=t,u.prototype.has=r,u.prototype.set=i,wuA=u,wuA}function v1t(){if(FYA)return buA;FYA=1;var A=b1t(),e="Expected a function";function t(r,i){if(typeof r!="function"||i!=null&&typeof i!="function")throw TypeError(e);var u=function(){var a=arguments,n=i?i.apply(this,a):a[0],o=u.cache;if(o.has(n))return o.get(n);var s=r.apply(this,a);return u.cache=o.set(n,s)||o,s};return u.cache=new(t.Cache||A),u}return t.Cache=A,buA=t,buA}function k1t(){if(xYA)return vuA;xYA=1;var A=v1t(),e=500;function t(r){var i=A(r,function(a){if(u.size===e)u.clear();return a}),u=i.cache;return i}return vuA=t,vuA}function DKA(){if(SYA)return kuA;SYA=1;var A=k1t(),e=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,t=/\\(\\)?/g,r=A(function(i){var u=[];if(i.charCodeAt(0)===46)u.push("");return i.replace(e,function(a,n,o,s){u.push(o?s.replace(t,"$1"):n||a)}),u});return kuA=r,kuA}function yKA(){if(LYA)return FuA;LYA=1;function A(e,t){var r=-1,i=e==null?0:e.length,u=Array(i);while(++r<i)u[r]=t(e[r],r,e);return u}return FuA=A,FuA}function F1t(){if(RYA)return xuA;RYA=1;var A=waA(),e=yKA(),t=JT(),r=Kk(),i=A?A.prototype:void 0,u=i?i.toString:void 0;function a(n){if(typeof n=="string")return n;if(t(n))return e(n,a)+"";if(r(n))return u?u.call(n):"";var o=n+"";return o=="0"&&1/n==-1/0?"-0":o}return xuA=a,xuA}function wKA(){if(NYA)return SuA;NYA=1;var A=F1t();function e(t){return t==null?"":A(t)}return SuA=e,SuA}function bKA(){if(GYA)return LuA;GYA=1;var A=JT(),e=A1t(),t=DKA(),r=wKA();function i(u,a){if(A(u))return u;return e(u,a)?[u]:t(r(u))}return LuA=i,LuA}function GaA(){if(UYA)return RuA;UYA=1;var A=Kk();function e(t){if(typeof t=="string"||A(t))return t;var r=t+"";return r=="0"&&1/t==-1/0?"-0":r}return RuA=e,RuA}function x1t(){if(MYA)return NuA;MYA=1;var A=bKA(),e=GaA();function t(r,i){i=A(i,r);var u=0,a=i.length;while(r!=null&&u<a)r=r[e(i[u++])];return u&&u==a?r:void 0}return NuA=t,NuA}function S1t(){if(TYA)return GuA;TYA=1;var A=x1t();function e(t,r,i){var u=t==null?void 0:A(t,r);return u===void 0?i:u}return GuA=e,GuA}function N1t(){if(YYA)return UuA;YYA=1;var A=NaA(),e=function(){try{var t=A(Object,"defineProperty");return t({},"",{}),t}catch(r){}}();return UuA=e,UuA}function G1t(){if(HYA)return MuA;HYA=1;var A=N1t();function e(t,r,i){if(r=="__proto__"&&A)A(t,r,{configurable:!0,enumerable:!0,value:i,writable:!0});else t[r]=i}return MuA=e,MuA}function U1t(){if(KYA)return TuA;KYA=1;var A=G1t(),e=mKA(),t=Object.prototype,r=t.hasOwnProperty;function i(u,a,n){var o=u[a];if(!(r.call(u,a)&&e(o,n))||n===void 0&&!(a in u))A(u,a,n)}return TuA=i,TuA}function M1t(){if(JYA)return YuA;JYA=1;var A=9007199254740991,e=/^(?:0|[1-9]\d*)$/;function t(r,i){var u=typeof r;return i=i==null?A:i,!!i&&(u=="number"||u!="symbol"&&e.test(r))&&(r>-1&&r%1==0&&r<i)}return YuA=t,YuA}function T1t(){if(OYA)return HuA;OYA=1;var A=U1t(),e=bKA(),t=M1t(),r=Hk(),i=GaA();function u(a,n,o,s){if(!r(a))return a;n=e(n,a);var l=-1,g=n.length,C=g-1,B=a;while(B!=null&&++l<g){var E=i(n[l]),d=o;if(E==="__proto__"||E==="constructor"||E==="prototype")return a;if(l!=C){var I=B[E];if(d=s?s(I,E,B):void 0,d===void 0)d=r(I)?I:t(n[l+1])?[]:{}}A(B,E,d),B=B[E]}return a}return HuA=u,HuA}function Y1t(){if(PYA)return KuA;PYA=1;var A=T1t();function e(t,r,i){return t==null?t:A(t,r,i)}return KuA=e,KuA}function J1t(){if(_YA)return JuA;_YA=1;function A(e,t){var r=-1,i=e.length;t||(t=Array(i));while(++r<i)t[r]=e[r];return t}return JuA=A,JuA}function O1t(){if(WYA)return OuA;WYA=1;var A=yKA(),e=J1t(),t=JT(),r=Kk(),i=DKA(),u=GaA(),a=wKA();function n(o){if(t(o))return A(o,u);return r(o)?[o]:e(i(a(o)))}return OuA=n,OuA}function MaA(A,e,t,r){var i=[],u=new rw,a=A.cy(),n=a.hasCompoundNodes();for(var o=0;o<A.length;o++){var s=A[o];if(t)i.push(s);else if(n)r(i,u,s)}while(i.length>0){var l=i.shift();if(e(l),u.add(l.id()),n)r(i,u,l)}return A}function kKA(A,e,t){if(t.isParent()){var r=t._private.children;for(var i=0;i<r.length;i++){var u=r[i];if(!e.has(u.id()))A.push(u)}}}function FKA(A,e,t){if(t.isChild()){var r=t._private.parent;if(!e.has(r.id()))A.push(r)}}function spt(A,e,t){FKA(A,e,t),kKA(A,e,t)}function PuA(A){return function(e){var t=this;if(e===void 0)e=!0;if(t.length===0)return;if(t.isNode()&&!t.removed()){var r=0,i=t[0],u=i._private.edges;for(var a=0;a<u.length;a++){var n=u[a];if(!e&&n.isLoop())continue;r+=A(i,n)}return r}else return}}function Ty(A,e){return function(t){var r,i=this.nodes();for(var u=0;u<i.length;u++){var a=i[u],n=a[A](t);if(n!==void 0&&(r===void 0||e(n,r)))r=n}return r}}function dk(){return!1}function aT(){return!0}function qT(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Fpt,e=arguments.length>1?arguments[1]:void 0;for(var t=0;t<$YA.length;t++){var r=$YA[t];this[r]=A[r]||YKA[r]}this.context=e||this.context,this.listeners=[],this.emitting=0}function PKA(A,e,t){var r=t._private,i=r.styleCache=r.styleCache||[],u;if((u=i[A])!=null)return u;else return u=i[A]=e(t),u}function zT(A,e){return A=Of(A),function(r){return PKA(A,e,r)}}function ZT(A,e){A=Of(A);var t=function(i){return e.call(i)};return function(){var i=this[0];if(i)return PKA(A,t,i)}}function WuA(A,e){var t=A._private,r=t.data.parent?A.parents():null;if(r)for(var i=0;i<r.length;i++){var u=r[i];if(!e(u))return!1}return!0}function TaA(A){var e=A.ok,t=A.edgeOkViaNode||A.ok,r=A.parentOk||A.ok;return function(){var i=this.cy();if(!i.styleEnabled())return!0;var u=this[0],a=i.hasCompoundNodes();if(u){var n=u._private;if(!e(u))return!1;if(u.isNode())return!a||WuA(u,r);else{var{source:o,target:s}=n;return t(o)&&(!a||WuA(o,t))&&(o===s||t(s)&&(!a||WuA(s,t)))}}}}function eHA(A){return function(){var e=arguments,t=[];if(e.length===2){var r=e[0],i=e[1];this.on(A.event,r,i)}else if(e.length===1&&La(e[0])){var u=e[0];this.on(A.event,u)}else if(e.length===0||e.length===1&&Mu(e[0])){var a=e.length===1?e[0]:null;for(var n=0;n<this.length;n++){var o=this[n],s=!A.ableField||o._private[A.ableField],l=o._private[A.field]!=A.value;if(A.overrideAble){var g=A.overrideAble(o);if(g!==void 0){if(s=g,!g)return this}}if(s){if(o._private[A.field]=A.value,l)t.push(o)}}var C=this.spawn(t);if(C.updateStyle(),C.emit(A.event),a)C.emit(a)}return this}}function aw(A){l4[A.field]=function(){var e=this[0];if(e){if(A.overrideField){var t=A.overrideField(e);if(t!==void 0)return t}return e._private[A.field]}},l4[A.on]=eHA({event:A.on,field:A.field,ableField:A.ableField,overrideAble:A.overrideAble,value:!0}),l4[A.off]=eHA({event:A.off,field:A.field,ableField:A.ableField,overrideAble:A.overrideAble,value:!1})}function uHA(A){return function(t){var r=[];for(var i=0;i<this.length;i++){var u=this[i],a=u._private[A.attr];if(a)r.push(a)}return this.spawn(r,!0).filter(t)}}function aHA(A){return function(t){var r=[],i=this._private.cy,u=A||{};if(tr(t))t=i.$(t);for(var a=0;a<t.length;a++){var n=t[a]._private.edges;for(var o=0;o<n.length;o++){var s=n[o],l=s._private.data,g=this.hasElementWithId(l.source)&&t.hasElementWithId(l.target),C=t.hasElementWithId(l.source)&&this.hasElementWithId(l.target),B=g||C;if(!B)continue;if(u.thisIsSrc||u.thisIsTgt){if(u.thisIsSrc&&!g)continue;if(u.thisIsTgt&&!C)continue}r.push(s)}}return this.spawn(r,!0)}}function nHA(A){var e={codirected:!1};return A=dr({},e,A),function(r){var i=[],u=this.edges(),a=A;for(var n=0;n<u.length;n++){var o=u[n],s=o._private,l=s.source,g=l._private.data.id,C=s.data.target,B=l._private.edges;for(var E=0;E<B.length;E++){var d=B[E],I=d._private.data,{target:h,source:Q}=I,p=h===C&&Q===g,m=g===h&&C===Q;if(a.codirected&&p||!a.codirected&&(p||m))i.push(d)}}return this.spawn(i,!0).filter(r)}}function Hpt(A,e,t,r){var i=4,u=0.001,a=0.0000001,n=10,o=11,s=1/(o-1),l=typeof Float32Array<"u";if(arguments.length!==4)return!1;for(var g=0;g<4;++g)if(typeof arguments[g]!=="number"||isNaN(arguments[g])||!isFinite(arguments[g]))return!1;A=Math.min(A,1),t=Math.min(t,1),A=Math.max(A,0),t=Math.max(t,0);var C=l?new Float32Array(o):Array(o);function B(v,S){return 1-3*S+3*v}function E(v,S){return 3*S-6*v}function d(v){return 3*v}function I(v,S,x){return((B(S,x)*v+E(S,x))*v+d(S))*v}function h(v,S,x){return 3*B(S,x)*v*v+2*E(S,x)*v+d(S)}function Q(v,S){for(var x=0;x<i;++x){var F=h(S,A,t);if(F===0)return S;var T=I(S,A,t)-v;S-=T/F}return S}function p(){for(var v=0;v<o;++v)C[v]=I(v*s,A,t)}function m(v,S,x){var F,T,R=0;do if(T=S+(x-S)/2,F=I(T,A,t)-v,F>0)x=T;else S=T;while(Math.abs(F)>a&&++R<n);return T}function f(v){var S=0,x=1,F=o-1;for(;x!==F&&C[x]<=v;++x)S+=s;--x;var T=(v-C[x])/(C[x+1]-C[x]),R=S+T*s,L=h(R,A,t);if(L>=u)return Q(v,R);else if(L===0)return R;else return m(v,S,S+s)}var D=!1;function w(){if(D=!0,A!==e||t!==r)p()}var b=function(S){if(!D)w();if(A===e&&t===r)return S;if(S===0)return 0;if(S===1)return 1;return I(f(S),e,r)};b.getControlPoints=function(){return[{x:A,y:e},{x:t,y:r}]};var k="generateBezier("+[A,e,t,r]+")";return b.toString=function(){return k},b}function oHA(A,e,t,r,i){if(r===1)return t;if(e===t)return t;var u=i(e,t,r);if(A==null)return u;if(A.roundValue||A.color)u=Math.round(u);if(A.min!==void 0)u=Math.max(u,A.min);if(A.max!==void 0)u=Math.min(u,A.max);return u}function sHA(A,e){if(A.pfValue!=null||A.value!=null)if(A.pfValue!=null&&(e==null||e.type.units!=="%"))return A.pfValue;else return A.value;else return A}function Yy(A,e,t,r,i){var u=i!=null?i.type:null;if(t<0)t=0;else if(t>1)t=1;var a=sHA(A,i),n=sHA(e,i);if(ht(a)&&ht(n))return oHA(u,a,n,t,r);else if(Mu(a)&&Mu(n)){var o=[];for(var s=0;s<n.length;s++){var l=a[s],g=n[s];if(l!=null&&g!=null){var C=oHA(u,l,g,t,r);o.push(C)}else o.push(g)}return o}return}function Jpt(A,e,t,r){var i=!r,u=A._private,a=e._private,{easing:n,startTime:o}=a,s=r?A:A.cy(),l=s.style();if(!a.easingImpl)if(n==null)a.easingImpl=IT.linear;else{var g;if(tr(n)){var C=l.parse("transition-timing-function",n);g=C.value}else g=n;var B,E;if(tr(g))B=g,E=[];else B=g[1],E=g.slice(2).map(function(Y){return+Y});if(E.length>0){if(B==="spring")E.push(a.duration);a.easingImpl=IT[B].apply(null,E)}else a.easingImpl=IT[B]}var d=a.easingImpl,I;if(a.duration===0)I=1;else I=(t-o)/a.duration;if(a.applying)I=a.progress;if(I<0)I=0;else if(I>1)I=1;if(a.delay==null){var{startPosition:h,position:Q}=a;if(Q&&i&&!A.locked()){var p={};if(Ik(h.x,Q.x))p.x=Yy(h.x,Q.x,I,d);if(Ik(h.y,Q.y))p.y=Yy(h.y,Q.y,I,d);A.position(p)}var{startPan:m,pan:f}=a,D=u.pan,w=f!=null&&r;if(w){if(Ik(m.x,f.x))D.x=Yy(m.x,f.x,I,d);if(Ik(m.y,f.y))D.y=Yy(m.y,f.y,I,d);A.emit("pan")}var{startZoom:b,zoom:k}=a,v=k!=null&&r;if(v){if(Ik(b,k))u.zoom=xk(u.minZoom,Yy(b,k,I,d),u.maxZoom);A.emit("zoom")}if(w||v)A.emit("viewport");var S=a.style;if(S&&S.length>0&&i){for(var x=0;x<S.length;x++){var F=S[x],T=F.name,R=F,L=a.startStyle[T],M=l.properties[L.name],U=Yy(L,R,I,d,M);l.overrideBypass(A,T,U)}A.emit("style")}}return a.progress=I,I}function Ik(A,e){if(A==null||e==null)return!1;if(ht(A)&&ht(e))return!0;else if(A&&e)return!0;return!1}function Opt(A,e,t,r){var i=e._private;i.started=!0,i.startTime=t-i.progress*i.duration}function lHA(A,e){var t=e._private.aniEles,r=[];function i(l,g){var C=l._private,B=C.animation.current,E=C.animation.queue,d=!1;if(B.length===0){var I=E.shift();if(I)B.push(I)}var h=function(D){for(var w=D.length-1;w>=0;w--){var b=D[w];b()}D.splice(0,D.length)};for(var Q=B.length-1;Q>=0;Q--){var p=B[Q],m=p._private;if(m.stopped){B.splice(Q,1),m.hooked=!1,m.playing=!1,m.started=!1,h(m.frames);continue}if(!m.playing&&!m.applying)continue;if(m.playing&&m.applying)m.applying=!1;if(!m.started)Opt(l,p,A);if(Jpt(l,p,A,g),m.applying)m.applying=!1;if(h(m.frames),m.step!=null)m.step(A);if(p.completed())B.splice(Q,1),m.hooked=!1,m.playing=!1,m.started=!1,h(m.completes);d=!0}if(!g&&B.length===0&&E.length===0)r.push(l);return d}var u=!1;for(var a=0;a<t.length;a++){var n=t[a],o=i(n);u=u||o}var s=i(e,!0);if(u||s)if(t.length>0)e.notify("draw",t);else e.notify("draw");t.unmerge(r),e.emit("step")}function WKA(A){this.options=dr({},jpt,Xpt,A)}function qKA(A){this.options=dr({},$pt,A)}function zKA(A){this.options=dr({},Aft,A)}function XT(A){this.options=dr({},eft,A),this.options.layout=this;var e=this.options.eles.nodes(),t=this.options.eles.edges(),r=t.filter(function(i){var u=i.source().data("id"),a=i.target().data("id"),n=e.some(function(s){return s.data("id")===u}),o=e.some(function(s){return s.data("id")===a});return!n||!o});this.options.eles=this.options.eles.not(r)}function XKA(A){this.options=dr({},dft,A)}function KaA(A){this.options=dr({},Ift,A)}function $KA(A){this.options=dr({},hft,A)}function AJA(A){this.options=dr({},Qft,A)}function eJA(A){this.options=A,this.notifications=0}function iJA(A,e){if(e.radius===0)A.lineTo(e.cx,e.cy);else A.arc(e.cx,e.cy,e.radius,e.startAngle,e.endAngle,e.counterClockwise)}function OaA(A,e,t,r){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;if(r===0||e.radius===0)return{cx:e.x,cy:e.y,radius:0,startX:e.x,startY:e.y,stopX:e.x,stopY:e.y,startAngle:void 0,endAngle:void 0,counterClockwise:void 0};return mft(A,e,t,r,i),{cx:CaA,cy:BaA,radius:Yf,startX:tJA,startY:rJA,stopX:EaA,stopY:daA,startAngle:hE.ang+Math.PI/2*Kf,endAngle:tc.ang-Math.PI/2*Kf,counterClockwise:pT}}function uJA(A){var e=[];if(A==null)return;for(var t=0;t<A.length;t+=2){var r=A[t],i=A[t+1];e.push({x:r,y:i})}return e}function yft(A,e,t){var r=function(s,l,g,C){return Mo(s,l,g,C)},i=e._private,u=i.rstyle.bezierPts;for(var a=0;a<A.bezierProjPcts.length;a++){var n=A.bezierProjPcts[a];u.push({x:r(t[0],t[2],t[4],n),y:r(t[1],t[3],t[5],n)})}}function t3t(A,e){for(var t=0;t<e.length;t++){var r=e[t];A.lineTo(r.x,r.y)}}function r3t(A,e,t){var r;for(var i=0;i<e.length;i++){var u=e[i];if(i===0)r=u;A.lineTo(u.x,u.y)}A.quadraticCurveTo(t.x,t.y,r.x,r.y)}function kHA(A,e,t){if(A.beginPath)A.beginPath();var r=e;for(var i=0;i<r.length;i++){var u=r[i];A.lineTo(u.x,u.y)}var a=t,n=t[0];A.moveTo(n.x,n.y);for(var i=1;i<a.length;i++){var u=a[i];A.lineTo(u.x,u.y)}if(A.closePath)A.closePath()}function i3t(A,e,t,r,i){if(A.beginPath)A.beginPath();A.arc(t,r,i,0,Math.PI*2,!1);var u=e,a=u[0];A.moveTo(a.x,a.y);for(var n=0;n<u.length;n++){var o=u[n];A.lineTo(o.x,o.y)}if(A.closePath)A.closePath()}function u3t(A,e,t,r){A.arc(e,t,r,0,Math.PI*2,!1)}function g3t(A,e,t,r,i){var u=Math.min(r,i),a=u/2,n=e+r/2,o=t+i/2;A.beginPath(),A.arc(n,o,a,0,Math.PI*2),A.closePath()}function FHA(A,e,t,r,i){var u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:5,a=Math.min(u,r/2,i/2);A.beginPath(),A.moveTo(e+a,t),A.lineTo(e+r-a,t),A.quadraticCurveTo(e+r,t,e+r,t+a),A.lineTo(e+r,t+i-a),A.quadraticCurveTo(e+r,t+i,e+r-a,t+i),A.lineTo(e+a,t+i),A.quadraticCurveTo(e,t+i,e,t+i-a),A.lineTo(e,t+a),A.quadraticCurveTo(e,t,e+a,t),A.closePath()}function xHA(A,e,t){var r=A.createShader(e);if(A.shaderSource(r,t),A.compileShader(r),!A.getShaderParameter(r,A.COMPILE_STATUS))throw Error(A.getShaderInfoLog(r));return r}function C3t(A,e,t){var r=xHA(A,A.VERTEX_SHADER,e),i=xHA(A,A.FRAGMENT_SHADER,t),u=A.createProgram();if(A.attachShader(u,r),A.attachShader(u,i),A.linkProgram(u),!A.getProgramParameter(u,A.LINK_STATUS))throw Error("Could not initialize shaders");return u}function B3t(A,e,t){if(t===void 0)t=e;var r=A.makeOffscreenCanvas(e,t),i=r.context=r.getContext("2d");return r.clear=function(){return i.clearRect(0,0,r.width,r.height)},r.clear(),r}function WaA(A){var e=A.pixelRatio,t=A.cy.zoom(),r=A.cy.pan();return{zoom:t*e,pan:{x:r.x*e,y:r.y*e}}}function E3t(A){var e=A.pixelRatio,t=A.cy.zoom();return t*e}function d3t(A,e,t,r,i){var u=r*t+e.x,a=i*t+e.y;return a=Math.round(A.canvasHeight-a),[u,a]}function I3t(A,e){if(e.picking)return!0;else{if(A.pstyle("background-fill").value!=="solid")return!1;if(A.pstyle("background-image").strValue!=="none")return!1;if(A.pstyle("border-width").value===0)return!0;if(A.pstyle("border-opacity").value===0)return!0;if(A.pstyle("border-style").value!=="solid")return!1;return!0}}function h3t(A,e){if(A.length!==e.length)return!1;for(var t=0;t<A.length;t++)if(A[t]!==e[t])return!1;return!0}function Mf(A,e,t){var r=A[0]/255,i=A[1]/255,u=A[2]/255,a=e,n=t||[,,,,];return n[0]=r*a,n[1]=i*a,n[2]=u*a,n[3]=a,n}function Jy(A,e){var t=e||[,,,,];return t[0]=(A>>0&255)/255,t[1]=(A>>8&255)/255,t[2]=(A>>16&255)/255,t[3]=(A>>24&255)/255,t}function Q3t(A){return A[0]+(A[1]<<8)+(A[2]<<16)+(A[3]<<24)}function p3t(A,e){var t=A.createTexture();return t.buffer=function(r){A.bindTexture(A.TEXTURE_2D,t),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_S,A.CLAMP_TO_EDGE),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_T,A.CLAMP_TO_EDGE),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_MAG_FILTER,A.LINEAR),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_MIN_FILTER,A.LINEAR_MIPMAP_NEAREST),A.pixelStorei(A.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0),A.texImage2D(A.TEXTURE_2D,0,A.RGBA,A.RGBA,A.UNSIGNED_BYTE,r),A.generateMipmap(A.TEXTURE_2D),A.bindTexture(A.TEXTURE_2D,null)},t.deleteTexture=function(){A.deleteTexture(t)},t}function QJA(A,e){switch(e){case"float":return[1,A.FLOAT,4];case"vec2":return[2,A.FLOAT,4];case"vec3":return[3,A.FLOAT,4];case"vec4":return[4,A.FLOAT,4];case"int":return[1,A.INT,4];case"ivec2":return[2,A.INT,4]}}function pJA(A,e,t){switch(e){case A.FLOAT:return new Float32Array(t);case A.INT:return new Int32Array(t)}}function f3t(A,e,t,r,i,u){switch(e){case A.FLOAT:return new Float32Array(t.buffer,u*r,i);case A.INT:return new Int32Array(t.buffer,u*r,i)}}function m3t(A,e,t,r){var i=QJA(A,e),u=Mn(i,2),a=u[0],n=u[1],o=pJA(A,n,r),s=A.createBuffer();if(A.bindBuffer(A.ARRAY_BUFFER,s),A.bufferData(A.ARRAY_BUFFER,o,A.STATIC_DRAW),n===A.FLOAT)A.vertexAttribPointer(t,a,n,!1,0,0);else if(n===A.INT)A.vertexAttribIPointer(t,a,n,0,0);return A.enableVertexAttribArray(t),A.bindBuffer(A.ARRAY_BUFFER,null),s}function IE(A,e,t,r){var i=QJA(A,t),u=Mn(i,3),a=u[0],n=u[1],o=u[2],s=pJA(A,n,e*a),l=a*o,g=A.createBuffer();if(A.bindBuffer(A.ARRAY_BUFFER,g),A.bufferData(A.ARRAY_BUFFER,e*l,A.DYNAMIC_DRAW),A.enableVertexAttribArray(r),n===A.FLOAT)A.vertexAttribPointer(r,a,n,!1,l,0);else if(n===A.INT)A.vertexAttribIPointer(r,a,n,l,0);A.vertexAttribDivisor(r,1),A.bindBuffer(A.ARRAY_BUFFER,null);var C=Array(e);for(var B=0;B<e;B++)C[B]=f3t(A,n,s,l,a,B);return g.dataArray=s,g.stride=l,g.size=a,g.getView=function(E){return C[E]},g.setPoint=function(E,d,I){var h=C[E];h[0]=d,h[1]=I},g.bufferSubData=function(E){if(A.bindBuffer(A.ARRAY_BUFFER,g),E)A.bufferSubData(A.ARRAY_BUFFER,0,s,0,E*a);else A.bufferSubData(A.ARRAY_BUFFER,0,s)},g}function D3t(A,e,t){var r=9,i=new Float32Array(e*r),u=Array(e);for(var a=0;a<e;a++){var n=a*r*4;u[a]=new Float32Array(i.buffer,n,r)}var o=A.createBuffer();A.bindBuffer(A.ARRAY_BUFFER,o),A.bufferData(A.ARRAY_BUFFER,i.byteLength,A.DYNAMIC_DRAW);for(var s=0;s<3;s++){var l=t+s;A.enableVertexAttribArray(l),A.vertexAttribPointer(l,3,A.FLOAT,!1,36,s*12),A.vertexAttribDivisor(l,1)}return A.bindBuffer(A.ARRAY_BUFFER,null),o.getMatrixView=function(g){return u[g]},o.setData=function(g,C){u[C].set(g,0)},o.bufferSubData=function(){A.bindBuffer(A.ARRAY_BUFFER,o),A.bufferSubData(A.ARRAY_BUFFER,0,i)},o}function y3t(A){var e=A.createFramebuffer();A.bindFramebuffer(A.FRAMEBUFFER,e);var t=A.createTexture();return A.bindTexture(A.TEXTURE_2D,t),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_MIN_FILTER,A.LINEAR),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_S,A.CLAMP_TO_EDGE),A.texParameteri(A.TEXTURE_2D,A.TEXTURE_WRAP_T,A.CLAMP_TO_EDGE),A.framebufferTexture2D(A.FRAMEBUFFER,A.COLOR_ATTACHMENT0,A.TEXTURE_2D,t,0),A.bindFramebuffer(A.FRAMEBUFFER,null),e.setFramebufferAttachmentSizes=function(r,i){A.bindTexture(A.TEXTURE_2D,t),A.texImage2D(A.TEXTURE_2D,0,A.RGBA,r,i,0,A.RGBA,A.UNSIGNED_BYTE,null)},e}function VuA(){var A=new SHA(9);if(SHA!=Float32Array)A[1]=0,A[2]=0,A[3]=0,A[5]=0,A[6]=0,A[7]=0;return A[0]=1,A[4]=1,A[8]=1,A}function LHA(A){return A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=1,A[5]=0,A[6]=0,A[7]=0,A[8]=1,A}function w3t(A,e,t){var r=e[0],i=e[1],u=e[2],a=e[3],n=e[4],o=e[5],s=e[6],l=e[7],g=e[8],C=t[0],B=t[1],E=t[2],d=t[3],I=t[4],h=t[5],Q=t[6],p=t[7],m=t[8];return A[0]=C*r+B*a+E*s,A[1]=C*i+B*n+E*l,A[2]=C*u+B*o+E*g,A[3]=d*r+I*a+h*s,A[4]=d*i+I*n+h*l,A[5]=d*u+I*o+h*g,A[6]=Q*r+p*a+m*s,A[7]=Q*i+p*n+m*l,A[8]=Q*u+p*o+m*g,A}function mT(A,e,t){var r=e[0],i=e[1],u=e[2],a=e[3],n=e[4],o=e[5],s=e[6],l=e[7],g=e[8],C=t[0],B=t[1];return A[0]=r,A[1]=i,A[2]=u,A[3]=a,A[4]=n,A[5]=o,A[6]=C*r+B*a+s,A[7]=C*i+B*n+l,A[8]=C*u+B*o+g,A}function RHA(A,e,t){var r=e[0],i=e[1],u=e[2],a=e[3],n=e[4],o=e[5],s=e[6],l=e[7],g=e[8],C=Math.sin(t),B=Math.cos(t);return A[0]=B*r+C*a,A[1]=B*i+C*n,A[2]=B*u+C*o,A[3]=B*a-C*r,A[4]=B*n-C*i,A[5]=B*o-C*u,A[6]=s,A[7]=l,A[8]=g,A}function haA(A,e,t){var r=t[0],i=t[1];return A[0]=r*e[0],A[1]=r*e[1],A[2]=r*e[2],A[3]=i*e[3],A[4]=i*e[4],A[5]=i*e[5],A[6]=e[6],A[7]=e[7],A[8]=e[8],A}function b3t(A,e,t){return A[0]=2/e,A[1]=0,A[2]=0,A[3]=0,A[4]=-2/t,A[5]=0,A[6]=-1,A[7]=1,A[8]=1,A}function F3t(A,e){if(A.intersection)return A.intersection(e);else return new Set(DT(A).filter(function(t){return e.has(t)}))}function M3t(A){var e=A.cy.container(),t=e&&e.style&&e.style.backgroundColor||"white";return qHA(t)}function mJA(A,e){var t=A._private.rscratch;return hs(t,"labelWrapCachedLines",e)||[]}function T3t(A){{var e=A.render;A.render=function(u){u=u||{};var a=A.cy;if(A.webgl)if(a.zoom()>BJA)Y3t(A),e.call(A,u);else H3t(A),yJA(A,u,bk.SCREEN)}}{var t=A.matchCanvasSize;A.matchCanvasSize=function(u){t.call(A,u),A.pickingFrameBuffer.setFramebufferAttachmentSizes(A.canvasWidth,A.canvasHeight),A.pickingFrameBuffer.needsDraw=!0}}A.findNearestElements=function(u,a,n,o){return W3t(A,u,a)};{var r=A.invalidateCachedZSortedEles;A.invalidateCachedZSortedEles=function(){r.call(A),A.pickingFrameBuffer.needsDraw=!0}}{var i=A.notify;A.notify=function(u,a){if(i.call(A,u,a),u==="viewport"||u==="bounds")A.pickingFrameBuffer.needsDraw=!0;else if(u==="background")A.drawing.invalidate(a,{type:"node-body"})}}}function Y3t(A){var e=A.data.contexts[A.WEBGL];e.clear(e.COLOR_BUFFER_BIT|e.DEPTH_BUFFER_BIT)}function H3t(A){var e=function(r){r.save(),r.setTransform(1,0,0,1,0,0),r.clearRect(0,0,A.canvasWidth,A.canvasHeight),r.restore()};e(A.data.contexts[A.NODE]),e(A.data.contexts[A.DRAG])}function K3t(A){var{canvasWidth:e,canvasHeight:t}=A,r=WaA(A),{pan:i,zoom:u}=r,a=VuA();mT(a,a,[i.x,i.y]),haA(a,a,[u,u]);var n=VuA();b3t(n,e,t);var o=VuA();return w3t(o,n,a),o}function DJA(A,e){var{canvasWidth:t,canvasHeight:r}=A,i=WaA(A),{pan:u,zoom:a}=i;e.setTransform(1,0,0,1,0,0),e.clearRect(0,0,t,r),e.translate(u.x,u.y),e.scale(a,a)}function J3t(A,e){A.drawSelectionRectangle(e,function(t){return DJA(A,t)})}function O3t(A){var e=A.data.contexts[A.NODE];e.save(),DJA(A,e),e.strokeStyle="rgba(0, 0, 0, 0.3)",e.beginPath(),e.moveTo(-1000,0),e.lineTo(1000,0),e.stroke(),e.beginPath(),e.moveTo(0,-1000),e.lineTo(0,1000),e.stroke(),e.restore()}function P3t(A){var e=function(i,u,a){var n=i.atlasManager.getAtlasCollection(u),o=A.data.contexts[A.NODE],s=n.atlases;for(var l=0;l<s.length;l++){var g=s[l],C=g.canvas;if(C){var{width:B,height:E}=C,d=B*l,I=C.height*a,h=0.4;o.save(),o.scale(h,h),o.drawImage(C,d,I),o.strokeStyle="black",o.rect(d,I,B,E),o.stroke(),o.restore()}}},t=0;e(A.drawing,"node",t++),e(A.drawing,"label",t++)}function _3t(A,e,t,r,i){var u,a,n,o,s=WaA(A),{pan:l,zoom:g}=s;{var C=d3t(A,l,g,e,t),B=Mn(C,2),E=B[0],d=B[1],I=6;u=E-I/2,a=d-I/2,n=I,o=I}if(n===0||o===0)return[];var h=A.data.contexts[A.WEBGL];if(h.bindFramebuffer(h.FRAMEBUFFER,A.pickingFrameBuffer),A.pickingFrameBuffer.needsDraw)h.viewport(0,0,h.canvas.width,h.canvas.height),yJA(A,null,bk.PICKING),A.pickingFrameBuffer.needsDraw=!1;var Q=n*o,p=new Uint8Array(Q*4);h.readPixels(u,a,n,o,h.RGBA,h.UNSIGNED_BYTE,p),h.bindFramebuffer(h.FRAMEBUFFER,null);var m=new Set;for(var f=0;f<Q;f++){var D=p.slice(f*4,f*4+4),w=Q3t(D)-1;if(w>=0)m.add(w)}return m}function W3t(A,e,t){var r=_3t(A,e,t),i=A.getCachedZSortedEles(),u,a,n=Bl(r),o;try{for(n.s();!(o=n.n()).done;){var s=o.value,l=i[s];if(!u&&l.isNode())u=l;if(!a&&l.isEdge())a=l;if(u&&a)break}}catch(g){n.e(g)}finally{n.f()}return[u,a].filter(Boolean)}function eaA(A,e,t){var r=A.drawing;if(e+=1,t.isNode())r.drawNode(t,e,"node-underlay"),r.drawNode(t,e,"node-body"),r.drawTexture(t,e,"label"),r.drawNode(t,e,"node-overlay");else r.drawEdgeLine(t,e),r.drawEdgeArrow(t,e,"source"),r.drawEdgeArrow(t,e,"target"),r.drawTexture(t,e,"label"),r.drawTexture(t,e,"edge-source-label"),r.drawTexture(t,e,"edge-target-label")}function yJA(A,e,t){var r;if(A.webglDebug)r=performance.now();var i=A.drawing,u=0;if(t.screen){if(A.data.canvasNeedsRedraw[A.SELECT_BOX])J3t(A,e)}if(A.data.canvasNeedsRedraw[A.NODE]||t.picking){var a=A.data.contexts[A.WEBGL];if(t.screen)a.clearColor(0,0,0,0),a.enable(a.BLEND),a.blendFunc(a.ONE,a.ONE_MINUS_SRC_ALPHA);else a.disable(a.BLEND);a.clear(a.COLOR_BUFFER_BIT|a.DEPTH_BUFFER_BIT),a.viewport(0,0,a.canvas.width,a.canvas.height);var n=K3t(A),o=A.getCachedZSortedEles();if(u=o.length,i.startFrame(n,t),t.screen){for(var s=0;s<o.nondrag.length;s++)eaA(A,s,o.nondrag[s]);for(var l=0;l<o.drag.length;l++)eaA(A,l,o.drag[l])}else if(t.picking)for(var g=0;g<o.length;g++)eaA(A,g,o[g]);if(i.endFrame(),t.screen&&A.webglDebugShowAtlases)O3t(A),P3t(A);A.data.canvasNeedsRedraw[A.NODE]=!1,A.data.canvasNeedsRedraw[A.DRAG]=!1}if(A.webglDebug){var C=performance.now(),B=!1,E=Math.ceil(C-r),d=i.getDebugInfo(),I=["".concat(u," elements"),"".concat(d.totalInstances," instances"),"".concat(d.batchCount," batches"),"".concat(d.totalAtlases," atlases"),"".concat(d.wrappedCount," wrapped textures"),"".concat(d.simpleCount," simple shapes")].join(", ");if(B)console.log("WebGL (".concat(t.name,") - time ").concat(E,"ms, ").concat(I));else{console.log("WebGL (".concat(t.name,") - frame time ").concat(E,"ms")),console.log("Totals:"),console.log(" ".concat(I)),console.log("Texture Atlases Used:");var h=d.atlasInfo,Q=Bl(h),p;try{for(Q.s();!(p=Q.n()).done;){var m=p.value;console.log(" ".concat(m.type,": ").concat(m.keyCount," keys, ").concat(m.atlasCount," atlases"))}}catch(f){Q.e(f)}finally{Q.f()}console.log("")}}if(A.data.gc)console.log("Garbage Collect!"),A.data.gc=!1,i.gc()}function q3t(A,e){var t=atob(A),r=new ArrayBuffer(t.length),i=new Uint8Array(r);for(var u=0;u<t.length;u++)i[u]=t.charCodeAt(u);return new Blob([r],{type:e})}function THA(A){var e=A.indexOf(",");return A.substr(e+1)}function bJA(A,e,t){var r=function(){return e.toDataURL(t,A.quality)};switch(A.output){case"blob-promise":return new iw(function(i,u){try{e.toBlob(function(a){if(a!=null)i(a);else u(Error("`canvas.toBlob()` sent a null value in its callback"))},t,A.quality)}catch(a){u(a)}});case"blob":return q3t(THA(r()),t);case"base64":return THA(r());case"base64uri":default:return r()}}function kJA(A){var e=this,t=e.cy.window(),r=t.document;if(A.webgl)oi.CANVAS_LAYERS=e.CANVAS_LAYERS=4,console.log("webgl rendering enabled");e.data={canvases:Array(oi.CANVAS_LAYERS),contexts:Array(oi.CANVAS_LAYERS),canvasNeedsRedraw:Array(oi.CANVAS_LAYERS),bufferCanvases:Array(oi.BUFFER_COUNT),bufferContexts:Array(oi.CANVAS_LAYERS)};var i="-webkit-tap-highlight-color",u="rgba(0,0,0,0)";e.data.canvasContainer=r.createElement("div");var a=e.data.canvasContainer.style;e.data.canvasContainer.style[i]=u,a.position="relative",a.zIndex="0",a.overflow="hidden";var n=A.cy.container();n.appendChild(e.data.canvasContainer),n.style[i]=u;var o={"-webkit-user-select":"none","-moz-user-select":"-moz-none","user-select":"none","-webkit-tap-highlight-color":"rgba(0,0,0,0)","outline-style":"none"};if(Tht())o["-ms-touch-action"]="none",o["touch-action"]="none";for(var s=0;s<oi.CANVAS_LAYERS;s++){var l=e.data.canvases[s]=r.createElement("canvas"),g=oi.CANVAS_TYPES[s];if(e.data.contexts[s]=l.getContext(g),!e.data.contexts[s])Qa("Could not create canvas of type "+g);Object.keys(o).forEach(function(tA){l.style[tA]=o[tA]}),l.style.position="absolute",l.setAttribute("data-id","layer"+s),l.style.zIndex=String(oi.CANVAS_LAYERS-s),e.data.canvasContainer.appendChild(l),e.data.canvasNeedsRedraw[s]=!1}if(e.data.topCanvas=e.data.canvases[0],e.data.canvases[oi.NODE].setAttribute("data-id","layer"+oi.NODE+"-node"),e.data.canvases[oi.SELECT_BOX].setAttribute("data-id","layer"+oi.SELECT_BOX+"-selectbox"),e.data.canvases[oi.DRAG].setAttribute("data-id","layer"+oi.DRAG+"-drag"),e.data.canvases[oi.WEBGL])e.data.canvases[oi.WEBGL].setAttribute("data-id","layer"+oi.WEBGL+"-webgl");for(var s=0;s<oi.BUFFER_COUNT;s++)e.data.bufferCanvases[s]=r.createElement("canvas"),e.data.bufferContexts[s]=e.data.bufferCanvases[s].getContext("2d"),e.data.bufferCanvases[s].style.position="absolute",e.data.bufferCanvases[s].setAttribute("data-id","buffer"+s),e.data.bufferCanvases[s].style.zIndex=String(-s-1),e.data.bufferCanvases[s].style.visibility="hidden";e.pathsEnabled=!0;var C=Qs(),B=function(lA){return{x:(lA.x1+lA.x2)/2,y:(lA.y1+lA.y2)/2}},E=function(lA){return{x:-lA.w/2,y:-lA.h/2}},d=function(lA){var gA=lA[0]._private,aA=gA.oldBackgroundTimestamp===gA.backgroundTimestamp;return!aA},I=function(lA){return lA[0]._private.nodeKey},h=function(lA){return lA[0]._private.labelStyleKey},Q=function(lA){return lA[0]._private.sourceLabelStyleKey},p=function(lA){return lA[0]._private.targetLabelStyleKey},m=function(lA,gA,aA,NA,DA){return e.drawElement(lA,gA,aA,!1,!1,DA)},f=function(lA,gA,aA,NA,DA){return e.drawElementText(lA,gA,aA,NA,"main",DA)},D=function(lA,gA,aA,NA,DA){return e.drawElementText(lA,gA,aA,NA,"source",DA)},w=function(lA,gA,aA,NA,DA){return e.drawElementText(lA,gA,aA,NA,"target",DA)},b=function(lA){return lA.boundingBox(),lA[0]._private.bodyBounds},k=function(lA){return lA.boundingBox(),lA[0]._private.labelBounds.main||C},v=function(lA){return lA.boundingBox(),lA[0]._private.labelBounds.source||C},S=function(lA){return lA.boundingBox(),lA[0]._private.labelBounds.target||C},x=function(lA,gA){return gA},F=function(lA){return B(b(lA))},T=function(lA,gA,aA){var NA=lA?lA+"-":"";return{x:gA.x+aA.pstyle(NA+"text-margin-x").pfValue,y:gA.y+aA.pstyle(NA+"text-margin-y").pfValue}},R=function(lA,gA,aA){var NA=lA[0]._private.rscratch;return{x:NA[gA],y:NA[aA]}},L=function(lA){return T("",R(lA,"labelX","labelY"),lA)},M=function(lA){return T("source",R(lA,"sourceLabelX","sourceLabelY"),lA)},U=function(lA){return T("target",R(lA,"targetLabelX","targetLabelY"),lA)},Y=function(lA){return E(b(lA))},H=function(lA){return E(v(lA))},J=function(lA){return E(S(lA))},K=function(lA){var gA=k(lA),aA=E(k(lA));if(lA.isNode()){switch(ew(lA.pstyle("text-halign").value)){case"left":aA.x=-gA.w-(gA.leftPad||0);break;case"right":aA.x=-(gA.rightPad||0);break}switch(tw(lA.pstyle("text-valign").value)){case"top":aA.y=-gA.h-(gA.topPad||0);break;case"bottom":aA.y=-(gA.botPad||0);break}}return aA},O=e.data.eleTxrCache=new Dk(e,{getKey:I,doesEleInvalidateKey:d,drawElement:m,getBoundingBox:b,getRotationPoint:F,getRotationOffset:Y,allowEdgeTxrCaching:!1,allowParentTxrCaching:!1}),P=e.data.lblTxrCache=new Dk(e,{getKey:h,drawElement:f,getBoundingBox:k,getRotationPoint:L,getRotationOffset:K,isVisible:x}),z=e.data.slbTxrCache=new Dk(e,{getKey:Q,drawElement:D,getBoundingBox:v,getRotationPoint:M,getRotationOffset:H,isVisible:x}),AA=e.data.tlbTxrCache=new Dk(e,{getKey:p,drawElement:w,getBoundingBox:S,getRotationPoint:U,getRotationOffset:J,isVisible:x}),W=e.data.lyrTxrCache=new EJA(e);e.onUpdateEleCalcs(function(lA,gA){O.invalidateElements(gA),P.invalidateElements(gA),z.invalidateElements(gA),AA.invalidateElements(gA),W.invalidateElements(gA);for(var aA=0;aA<gA.length;aA++){var NA=gA[aA]._private;NA.oldBackgroundTimestamp=NA.backgroundTimestamp}});var CA=function(lA){for(var gA=0;gA<lA.length;gA++)W.enqueueElementRefinement(lA[gA].ele)};if(O.onDequeue(CA),P.onDequeue(CA),z.onDequeue(CA),AA.onDequeue(CA),A.webgl)e.initWebgl(A,{getStyleKey:I,getLabelKey:h,getSourceLabelKey:Q,getTargetLabelKey:p,drawElement:m,drawLabel:f,drawSourceLabel:D,drawTargetLabel:w,getElementBox:b,getLabelBox:k,getSourceLabelBox:v,getTargetLabelBox:S,getElementRotationPoint:F,getElementRotationOffset:Y,getLabelRotationPoint:L,getSourceLabelRotationPoint:M,getTargetLabelRotationPoint:U,getLabelRotationOffset:K,getSourceLabelRotationOffset:H,getTargetLabelRotationOffset:J})}function SJA(A,e,t){var r=t,i=function(b){du("Can not register `"+e+"` for `"+A+"` since `"+b+"` already exists in the prototype and can not be overridden")};if(A==="core")if(Gk.prototype[e])return i(e);else Gk.prototype[e]=t;else if(A==="collection")if(s0.prototype[e])return i(e);else s0.prototype[e]=t;else if(A==="layout"){var u=function(b){if(this.options=b,t.call(this,b),!Hi(this._private))this._private={};this._private.cy=b.cy,this._private.listeners=[],this.createEmitter()},a=u.prototype=Object.create(t.prototype),n=[];for(var o=0;o<n.length;o++){var s=n[o];a[s]=a[s]||function(){return this}}if(a.start&&!a.run)a.run=function(){return this.start(),this};else if(!a.start&&a.run)a.start=function(){return this.run(),this};var l=t.prototype.stop;if(a.stop=function(){var w=this.options;if(w&&w.animate){var b=this.animations;if(b)for(var k=0;k<b.length;k++)b[k].stop()}if(l)l.call(this);else this.emit("layoutstop");return this},!a.destroy)a.destroy=function(){return this};a.cy=function(){return this._private.cy};var g=function(b){return b._private.cy},C={addEventFields:function(b,k){k.layout=b,k.cy=g(b),k.target=b},bubble:function(){return!0},parent:function(b){return g(b)}};dr(a,{createEmitter:function(){return this._private.emitter=new qT(C,this),this},emitter:function(){return this._private.emitter},on:function(b,k){return this.emitter().on(b,k),this},one:function(b,k){return this.emitter().one(b,k),this},once:function(b,k){return this.emitter().one(b,k),this},removeListener:function(b,k){return this.emitter().removeListener(b,k),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},emit:function(b,k){return this.emitter().emit(b,k),this}}),Eu.eventAliasesOn(a),r=u}else if(A==="renderer"&&e!=="null"&&e!=="base"){var B=LJA("renderer","base"),E=B.prototype,d=t,I=t.prototype,h=function(){B.apply(this,arguments),d.apply(this,arguments)},Q=h.prototype;for(var p in E){var m=E[p],f=I[p]!=null;if(f)return i(p);Q[p]=m}for(var D in I)Q[D]=I[D];E.clientFunctions.forEach(function(w){Q[w]=Q[w]||function(){Qa("Renderer does not implement `renderer."+w+"()` on its prototype")}}),r=h}else if(A==="__proto__"||A==="constructor"||A==="prototype")return Qa(A+" is an illegal type to be registered, possibly lead to prototype pollutions");return zHA({map:FJA,keys:[A,e],value:r})}function LJA(A,e){return ZHA({map:FJA,keys:[A,e]})}function X3t(A,e,t,r,i){return zHA({map:xJA,keys:[A,e,t,r],value:i})}function $3t(A,e,t,r){return ZHA({map:xJA,keys:[A,e,t,r]})}var ao,gTA,xht,KHA,Sht,Lht,Mk=function(e){return e&&e.instanceString&&La(e.instanceString)?e.instanceString():null},tr=function(e){return e!=null&&oo(e)==xht},La=function(e){return e!=null&&oo(e)===Sht},Mu=function(e){return!sg(e)&&(Array.isArray?Array.isArray(e):e!=null&&e instanceof Array)},Hi=function(e){return e!=null&&oo(e)===KHA&&!Mu(e)&&e.constructor===Object},Rht=function(e){return e!=null&&oo(e)===KHA},ht=function(e){return e!=null&&oo(e)===oo(1)&&!isNaN(e)},JHA=function(e){return ht(e)&&Math.floor(e)===e},yT=function(e){if(Lht==="undefined")return;else return e!=null&&e instanceof HTMLElement},sg=function(e){return Tk(e)||OHA(e)},Tk=function(e){return Mk(e)==="collection"&&e._private.single},OHA=function(e){return Mk(e)==="collection"&&!e._private.single},DaA=function(e){return Mk(e)==="core"},PHA=function(e){return Mk(e)==="stylesheet"},Nht=function(e){return Mk(e)==="event"},g4=function(e){if(e===void 0||e===null)return!0;else if(e===""||e.match(/^\s+$/))return!0;return!1},Ght=function(e){if(typeof HTMLElement>"u")return!1;else return e instanceof HTMLElement},Uht=function(e){return Hi(e)&&ht(e.x1)&&ht(e.x2)&&ht(e.y1)&&ht(e.y2)},Mht=function(e){return Rht(e)&&La(e.then)},Tht=function(){return gTA&&gTA.userAgent.match(/msie|trident|edge/i)},Xy=function(e,t){if(!t)t=function(){if(arguments.length===1)return arguments[0];else if(arguments.length===0)return"undefined";var u=[];for(var a=0;a<arguments.length;a++)u.push(arguments[a]);return u.join("$")};var r=function(){var u=this,a=arguments,n,o=t.apply(u,a),s=r.cache;if(!(n=s[o]))n=s[o]=e.apply(u,a);return n};return r.cache={},r},yaA,MT,_HA,cTA=function(e){if(g4(e))return e;return e.charAt(0).toUpperCase()+e.substring(1)},a4=function(e,t){return e.slice(-1*t.length)===t},no="(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))",Yht,Hht,Kht,Jht,Oht="\\#[0-9a-fA-F]{3}",Pht="\\#[0-9a-fA-F]{6}",WHA=function(e,t){if(e<t)return-1;else if(e>t)return 1;else return 0},_ht=function(e,t){return-1*WHA(e,t)},dr,Wht=function(e){if(!(e.length===4||e.length===7)||e[0]!=="#")return;var t=e.length===4,r,i,u,a=16;if(t)r=parseInt(e[1]+e[1],a),i=parseInt(e[2]+e[2],a),u=parseInt(e[3]+e[3],a);else r=parseInt(e[1]+e[2],a),i=parseInt(e[3]+e[4],a),u=parseInt(e[5]+e[6],a);return[r,i,u]},qht=function(e){var t,r,i,u,a,n,o,s;function l(E,d,I){if(I<0)I+=1;if(I>1)I-=1;if(I<0.16666666666666666)return E+(d-E)*6*I;if(I<0.5)return d;if(I<0.6666666666666666)return E+(d-E)*(0.6666666666666666-I)*6;return E}var g=new RegExp("^"+Kht+"$").exec(e);if(g){if(r=parseInt(g[1]),r<0)r=(360- -1*r%360)%360;else if(r>360)r=r%360;if(r/=360,i=parseFloat(g[2]),i<0||i>100)return;if(i=i/100,u=parseFloat(g[3]),u<0||u>100)return;if(u=u/100,a=g[4],a!==void 0){if(a=parseFloat(a),a<0||a>1)return}if(i===0)n=o=s=Math.round(u*255);else{var C=u<0.5?u*(1+i):u+i-u*i,B=2*u-C;n=Math.round(255*l(B,C,r+0.3333333333333333)),o=Math.round(255*l(B,C,r)),s=Math.round(255*l(B,C,r-0.3333333333333333))}t=[n,o,s,a]}return t},zht=function(e){var t,r=new RegExp("^"+Yht+"$").exec(e);if(r){t=[];var i=[];for(var u=1;u<=3;u++){var a=r[u];if(a[a.length-1]==="%")i[u]=!0;if(a=parseFloat(a),i[u])a=a/100*255;if(a<0||a>255)return;t.push(Math.floor(a))}var n=i[1]||i[2]||i[3],o=i[1]&&i[2]&&i[3];if(n&&!o)return;var s=r[4];if(s!==void 0){if(s=parseFloat(s),s<0||s>1)return;t.push(s)}}return t},Zht=function(e){return Vht[e.toLowerCase()]},qHA=function(e){return(Mu(e)?e:null)||Zht(e)||Wht(e)||zht(e)||qht(e)},Vht,zHA=function(e){var{map:t,keys:r}=e,i=r.length;for(var u=0;u<i;u++){var a=r[u];if(Hi(a))throw Error("Tried to set map with object key");if(u<r.length-1){if(t[a]==null)t[a]={};t=t[a]}else t[a]=e.value}},ZHA=function(e){var{map:t,keys:r}=e,i=r.length;for(var u=0;u<i;u++){var a=r[u];if(Hi(a))throw Error("Tried to get map with object key");if(t=t[a],t==null)return t}return t},$M,biA,CTA,viA,BTA,kiA,ETA,FiA,dTA,xiA,ITA,SiA,hTA,LiA,QTA,RiA,pTA,NiA,fTA,GiA,mTA,UiA,DTA,MiA,yTA,TiA,wTA,YiA,bTA,aQt,Jk,HiA,jHA,nQt,wT=function(e){return nQt(e)},wI,Hf=9261,XHA=65599,Py=5381,$HA=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Hf,r=t,i;for(;;){if(i=e.next(),i.done)break;r=r*XHA+i.value|0}return r},vk=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Hf;return t*XHA+e|0},kk=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Py;return(t<<5)+t+e|0},oQt=function(e,t){return e*2097152+t},t4=function(e){return e[0]*2097152+e[1]},AT=function(e,t){return[vk(e[0],t[0]),kk(e[1],t[1])]},vTA=function(e,t){var r={value:0,done:!1},i=0,u=e.length,a={next:function(){if(i<u)r.value=e[i++];else r.done=!0;return r}};return $HA(a,t)},Of=function(e,t){var r={value:0,done:!1},i=0,u=e.length,a={next:function(){if(i<u)r.value=e.charCodeAt(i++);else r.done=!0;return r}};return $HA(a,t)},AKA=function(){return sQt(arguments)},sQt=function(e){var t;for(var r=0;r<e.length;r++){var i=e[r];if(r===0)t=Of(i);else t=Of(i,t)}return t},gQt=function(e,t,r,i,u,a){return{x:(e-r)*u+r,y:(t-i)*a+i}},kTA=!0,CQt,BQt,baA,eKA=function(){return!0},bT=function(){return!1},FTA=function(){return 0},vaA=function(){},Qa=function(e){throw Error(e)},tKA=function(e){if(e!==void 0)kTA=!!e;else return kTA},du=function(e){if(!tKA())return;if(CQt)console.warn(e);else if(console.log(e),BQt)console.trace()},EQt=function(e){return dr({},e)},pE=function(e){if(e==null)return e;if(Mu(e))return e.slice();else if(Hi(e))return EQt(e);else return e},dQt=function(e){return e.slice()},rKA=function(e,t){for(t=e="";e++<36;t+=e*51&52?(e^15?8^Math.random()*(e^20?16:4):4).toString(16):"-");return t},IQt,iKA=function(){return IQt},l0=function(e){var t=Object.keys(e);return function(r){var i={};for(var u=0;u<t.length;u++){var a=t[u],n=r==null?void 0:r[a];i[a]=n===void 0?e[a]:n}return i}},c4=function(e,t,r){for(var i=e.length-1;i>=0;i--)if(e[i]===t)e.splice(i,1)},kaA=function(e){e.splice(0,e.length)},hQt=function(e,t){for(var r=0;r<t.length;r++){var i=t[r];e.push(i)}},hs=function(e,t,r){if(r)t=_HA(r,t);return e[t]},QE=function(e,t,r,i){if(r)t=_HA(r,t);e[t]=i},QQt,yI,pQt="undefined",fQt,rw,YT=function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(e===void 0||t===void 0||!DaA(e)){Qa("An element must have a core reference and parameters set");return}var i=t.group;if(i==null)if(t.data&&t.data.source!=null&&t.data.target!=null)i="edges";else i="nodes";if(i!=="nodes"&&i!=="edges"){Qa("An element must be of type `nodes` or `edges`; you specified `"+i+"`");return}this.length=1,this[0]=this;var u=this._private={cy:e,single:!0,data:t.data||{},position:t.position||{x:0,y:0},autoWidth:void 0,autoHeight:void 0,autoPadding:void 0,compoundBoundsClean:!1,listeners:[],group:i,style:{},rstyle:{},styleCxts:[],styleKeys:{},removed:!0,selected:t.selected?!0:!1,selectable:t.selectable===void 0?!0:t.selectable?!0:!1,locked:t.locked?!0:!1,grabbed:!1,grabbable:t.grabbable===void 0?!0:t.grabbable?!0:!1,pannable:t.pannable===void 0?i==="edges"?!0:!1:t.pannable?!0:!1,active:!1,classes:new rw,animation:{current:[],queue:[]},rscratch:{},scratch:t.scratch||{},edges:[],children:[],parent:t.parent&&t.parent.isNode()?t.parent:null,traversalCache:{},backgrounding:!1,bbCache:null,bbCacheShift:{x:0,y:0},bodyBounds:null,overlayBounds:null,labelBounds:{all:null,source:null,target:null,main:null},arrowBounds:{source:null,target:null,"mid-source":null,"mid-target":null}};if(u.position.x==null)u.position.x=0;if(u.position.y==null)u.position.y=0;if(t.renderedPosition){var a=t.renderedPosition,n=e.pan(),o=e.zoom();u.position={x:(a.x-n.x)/o,y:(a.y-n.y)/o}}var s=[];if(Mu(t.classes))s=t.classes;else if(tr(t.classes))s=t.classes.split(/\s+/);for(var l=0,g=s.length;l<g;l++){var C=s[l];if(!C||C==="")continue;u.classes.add(C)}if(this.createEmitter(),r===void 0||r)this.restore();var B=t.style||t.css;if(B)du("Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead."),this.style(B)},xTA=function(e){return e={bfs:e.bfs||!e.dfs,dfs:e.dfs||!e.bfs},function(r,i,u){var a;if(Hi(r)&&!sg(r))a=r,r=a.roots||a.root,i=a.visit,u=a.directed;u=arguments.length===2&&!La(i)?i:u,i=La(i)?i:function(){};var n=this._private.cy,o=r=tr(r)?this.filter(r):r,s=[],l=[],g={},C={},B={},E=0,d,I=this.byGroup(),{nodes:h,edges:Q}=I;for(var p=0;p<o.length;p++){var m=o[p],f=m.id();if(m.isNode()){if(s.unshift(m),e.bfs)B[f]=!0,l.push(m);C[f]=0}}var D=function(){var F=e.bfs?s.shift():s.pop(),T=F.id();if(e.dfs){if(B[T])return 0;B[T]=!0,l.push(F)}var R=C[T],L=g[T],M=L!=null?L.source():null,U=L!=null?L.target():null,Y=L==null?void 0:F.same(M)?U[0]:M[0],H;if(H=i(F,L,Y,E++,R),H===!0)return d=F,1;if(H===!1)return 1;var J=F.connectedEdges().filter(function(AA){return(!u||AA.source().same(F))&&Q.has(AA)});for(var K=0;K<J.length;K++){var O=J[K],P=O.connectedNodes().filter(function(AA){return!AA.same(F)&&h.has(AA)}),z=P.id();if(P.length!==0&&!B[z]){if(P=P[0],s.push(P),e.bfs)B[z]=!0,l.push(P);g[z]=O,C[z]=C[T]+1}}},w;while(s.length!==0){if(w=D(),w===0)continue;if(w===1)break}var b=n.collection();for(var k=0;k<l.length;k++){var v=l[k],S=g[v.id()];if(S!=null)b.push(S);b.push(v)}return{path:n.collection(b),found:n.collection(d)}}},Fk,cT,mQt,STA,KiA,LTA,wQt,Ok,bQt,vQt,kQt,FQt,xQt,SQt,LQt,RQt,NQt,GQt,UQt=function(e,t,r){if(r.length===0)Qa("Karger-Stein must be run on a connected (sub)graph");var i=r[e],u=i[1],a=i[2],n=t[u],o=t[a],s=r;for(var l=s.length-1;l>=0;l--){var g=s[l],C=g[1],B=g[2];if(t[C]===n&&t[B]===o||t[C]===o&&t[B]===n)s.splice(l,1)}for(var E=0;E<s.length;E++){var d=s[E];if(d[1]===o)s[E]=d.slice(),s[E][1]=n;else if(d[2]===o)s[E]=d.slice(),s[E][2]=n}for(var I=0;I<t.length;I++)if(t[I]===o)t[I]=n;return s},JiA=function(e,t,r,i){while(r>i){var u=Math.floor(Math.random()*t.length);t=UQt(u,e,t),r--}return t},MQt,OiA,TQt=function(e){return{x:e.x,y:e.y}},HT=function(e,t,r){return{x:e.x*t+r.x,y:e.y*t+r.y}},uKA=function(e,t,r){return{x:(e.x-r.x)/t,y:(e.y-r.y)/t}},_y=function(e){return{x:e[0],y:e[1]}},YQt=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=1/0;for(var u=t;u<r;u++){var a=e[u];if(isFinite(a))i=Math.min(a,i)}return i},HQt=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=-1/0;for(var u=t;u<r;u++){var a=e[u];if(isFinite(a))i=Math.max(a,i)}return i},KQt=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=0,u=0;for(var a=t;a<r;a++){var n=e[a];if(isFinite(n))i+=n,u++}return i/u},JQt=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:e.length,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,u=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;if(i)e=e.slice(t,r);else{if(r<e.length)e.splice(r,e.length-r);if(t>0)e.splice(0,t)}var n=0;for(var o=e.length-1;o>=0;o--){var s=e[o];if(a){if(!isFinite(s))e[o]=-1/0,n++}else e.splice(o,1)}if(u)e.sort(function(C,B){return C-B});var l=e.length,g=Math.floor(l/2);if(l%2!==0)return e[g+1+n];else return(e[g-1+n]+e[g+n])/2},aKA=function(e,t){if(t===0)return e;return aKA(t,e%t)},OQt=function(e){var t=e[0];for(var r=0;r<e.length;r++)if(!JHA(e[r]))return 0;else if(r>0)t=aKA(t,e[r]);return t},PQt=function(e){return Math.PI*e/180},eT=function(e,t){return Math.atan2(t,e)-Math.PI/2},FaA,xaA=function(e){if(e>0)return 1;else if(e<0)return-1;else return 0},Pf=function(e,t){return Math.sqrt(Tf(e,t))},Tf=function(e,t){var r=t.x-e.x,i=t.y-e.y;return r*r+i*i},_Qt=function(e){var t=e.length,r=0;for(var i=0;i<t;i++)r+=e[i];for(var u=0;u<t;u++)e[u]=e[u]/r;return e},Mo=function(e,t,r,i){return(1-i)*(1-i)*e+2*(1-i)*i*t+i*i*r},zy=function(e,t,r,i){return{x:Mo(e.x,t.x,r.x,i),y:Mo(e.y,t.y,r.y,i)}},WQt=function(e,t,r,i){var u={x:t.x-e.x,y:t.y-e.y},a=Pf(e,t),n={x:u.x/a,y:u.y/a};return r=r==null?0:r,i=i!=null?i:r*a,{x:e.x+n.x*i,y:e.y+n.y*i}},xk=function(e,t,r){return Math.max(e,Math.min(r,t))},Qs=function(e){if(e==null)return{x1:1/0,y1:1/0,x2:-1/0,y2:-1/0,w:0,h:0};else if(e.x1!=null&&e.y1!=null){if(e.x2!=null&&e.y2!=null&&e.x2>=e.x1&&e.y2>=e.y1)return{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,w:e.x2-e.x1,h:e.y2-e.y1};else if(e.w!=null&&e.h!=null&&e.w>=0&&e.h>=0)return{x1:e.x1,y1:e.y1,x2:e.x1+e.w,y2:e.y1+e.h,w:e.w,h:e.h}}},qQt=function(e){return{x1:e.x1,x2:e.x2,w:e.w,y1:e.y1,y2:e.y2,h:e.h}},zQt=function(e){e.x1=1/0,e.y1=1/0,e.x2=-1/0,e.y2=-1/0,e.w=0,e.h=0},ZQt=function(e,t){e.x1=Math.min(e.x1,t.x1),e.x2=Math.max(e.x2,t.x2),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,t.y1),e.y2=Math.max(e.y2,t.y2),e.h=e.y2-e.y1},nKA=function(e,t,r){e.x1=Math.min(e.x1,t),e.x2=Math.max(e.x2,t),e.w=e.x2-e.x1,e.y1=Math.min(e.y1,r),e.y2=Math.max(e.y2,r),e.h=e.y2-e.y1},CT=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.x1-=t,e.x2+=t,e.y1-=t,e.y2+=t,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},BT=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0],r,i,u,a;if(t.length===1)r=i=u=a=t[0];else if(t.length===2)r=u=t[0],a=i=t[1];else if(t.length===4){var n=Mn(t,4);r=n[0],i=n[1],u=n[2],a=n[3]}return e.x1-=a,e.x2+=i,e.y1-=r,e.y2+=u,e.w=e.x2-e.x1,e.h=e.y2-e.y1,e},RTA=function(e,t){e.x1=t.x1,e.y1=t.y1,e.x2=t.x2,e.y2=t.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},SaA=function(e,t){if(e.x1>t.x2)return!1;if(t.x1>e.x2)return!1;if(e.x2<t.x1)return!1;if(t.x2<e.x1)return!1;if(e.y2<t.y1)return!1;if(t.y2<e.y1)return!1;if(e.y1>t.y2)return!1;if(t.y1>e.y2)return!1;return!0},n4=function(e,t,r){return e.x1<=t&&t<=e.x2&&e.y1<=r&&r<=e.y2},NTA=function(e,t){return n4(e,t.x,t.y)},oKA=function(e,t){return n4(e,t.x1,t.y1)&&n4(e,t.x2,t.y2)},VQt,sKA=function(e,t,r,i,u,a,n){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:"auto",s=o==="auto"?C4(u,a):o,l=u/2,g=a/2;s=Math.min(s,l,g);var C=s!==l,B=s!==g,E;if(C){var d=r-l+s-n,I=i-g-n,h=r+l-s+n,Q=I;if(E=o4(e,t,r,i,d,I,h,Q,!1),E.length>0)return E}if(B){var p=r+l+n,m=i-g+s-n,f=p,D=i+g-s+n;if(E=o4(e,t,r,i,p,m,f,D,!1),E.length>0)return E}if(C){var w=r-l+s-n,b=i+g+n,k=r+l-s+n,v=b;if(E=o4(e,t,r,i,w,b,k,v,!1),E.length>0)return E}if(B){var S=r-l-n,x=i-g+s-n,F=S,T=i+g-s+n;if(E=o4(e,t,r,i,S,x,F,T,!1),E.length>0)return E}var R;{var L=r-l+s,M=i-g+s;if(R=fk(e,t,r,i,L,M,s+n),R.length>0&&R[0]<=L&&R[1]<=M)return[R[0],R[1]]}{var U=r+l-s,Y=i-g+s;if(R=fk(e,t,r,i,U,Y,s+n),R.length>0&&R[0]>=U&&R[1]<=Y)return[R[0],R[1]]}{var H=r+l-s,J=i+g-s;if(R=fk(e,t,r,i,H,J,s+n),R.length>0&&R[0]>=H&&R[1]>=J)return[R[0],R[1]]}{var K=r-l+s,O=i+g-s;if(R=fk(e,t,r,i,K,O,s+n),R.length>0&&R[0]<=K&&R[1]>=O)return[R[0],R[1]]}return[]},$Qt=function(e,t,r,i,u,a,n){var o=n,s=Math.min(r,u),l=Math.max(r,u),g=Math.min(i,a),C=Math.max(i,a);return s-o<=e&&e<=l+o&&g-o<=t&&t<=C+o},A4t=function(e,t,r,i,u,a,n,o,s){var l={x1:Math.min(r,n,u)-s,x2:Math.max(r,n,u)+s,y1:Math.min(i,o,a)-s,y2:Math.max(i,o,a)+s};if(e<l.x1||e>l.x2||t<l.y1||t>l.y2)return!1;else return!0},e4t=function(e,t,r,i){r-=i;var u=t*t-4*e*r;if(u<0)return[];var a=Math.sqrt(u),n=2*e,o=(-t+a)/n,s=(-t-a)/n;return[o,s]},t4t=function(e,t,r,i,u){var a=0.00001;if(e===0)e=a;t/=e,r/=e,i/=e;var n,o,s,l,g,C,B,E;if(o=(3*r-t*t)/9,s=-(27*i)+t*(9*r-2*(t*t)),s/=54,n=o*o*o+s*s,u[1]=0,B=t/3,n>0){g=s+Math.sqrt(n),g=g<0?-Math.pow(-g,0.3333333333333333):Math.pow(g,0.3333333333333333),C=s-Math.sqrt(n),C=C<0?-Math.pow(-C,0.3333333333333333):Math.pow(C,0.3333333333333333),u[0]=-B+g+C,B+=(g+C)/2,u[4]=u[2]=-B,B=Math.sqrt(3)*(-C+g)/2,u[3]=B,u[5]=-B;return}if(u[5]=u[3]=0,n===0){E=s<0?-Math.pow(-s,0.3333333333333333):Math.pow(s,0.3333333333333333),u[0]=-B+2*E,u[4]=u[2]=-(E+B);return}o=-o,l=o*o*o,l=Math.acos(s/Math.sqrt(l)),E=2*Math.sqrt(o),u[0]=-B+E*Math.cos(l/3),u[2]=-B+E*Math.cos((l+2*Math.PI)/3),u[4]=-B+E*Math.cos((l+4*Math.PI)/3);return},r4t=function(e,t,r,i,u,a,n,o){var s=1*r*r-4*r*u+2*r*n+4*u*u-4*u*n+n*n+i*i-4*i*a+2*i*o+4*a*a-4*a*o+o*o,l=9*r*u-3*r*r-3*r*n-6*u*u+3*u*n+9*i*a-3*i*i-3*i*o-6*a*a+3*a*o,g=3*r*r-6*r*u+r*n-r*e+2*u*u+2*u*e-n*e+3*i*i-6*i*a+i*o-i*t+2*a*a+2*a*t-o*t,C=1*r*u-r*r+r*e-u*e+i*a-i*i+i*t-a*t,B=[];t4t(s,l,g,C,B);var E=0.0000001,d=[];for(var I=0;I<6;I+=2)if(Math.abs(B[I+1])<E&&B[I]>=0&&B[I]<=1)d.push(B[I]);d.push(1),d.push(0);var h=-1,Q,p,m;for(var f=0;f<d.length;f++)if(Q=Math.pow(1-d[f],2)*r+2*(1-d[f])*d[f]*u+d[f]*d[f]*n,p=Math.pow(1-d[f],2)*i+2*(1-d[f])*d[f]*a+d[f]*d[f]*o,m=Math.pow(Q-e,2)+Math.pow(p-t,2),h>=0){if(m<h)h=m}else h=m;return h},i4t=function(e,t,r,i,u,a){var n=[e-r,t-i],o=[u-r,a-i],s=o[0]*o[0]+o[1]*o[1],l=n[0]*n[0]+n[1]*n[1],g=n[0]*o[0]+n[1]*o[1],C=g*g/s;if(g<0)return l;if(C>s)return(e-u)*(e-u)+(t-a)*(t-a);return l-C},Cl=function(e,t,r){var i,u,a,n,o,s=0;for(var l=0;l<r.length/2;l++){if(i=r[l*2],u=r[l*2+1],l+1<r.length/2)a=r[(l+1)*2],n=r[(l+1)*2+1];else a=r[(l+1-r.length/2)*2],n=r[(l+1-r.length/2)*2+1];if(i==e&&a==e);else if(i>=e&&e>=a||i<=e&&e<=a){if(o=(e-i)/(a-i)*(n-u)+u,o>t)s++}else continue}if(s%2===0)return!1;else return!0},bI=function(e,t,r,i,u,a,n,o,s){var l=Array(r.length),g;if(o[0]!=null)if(g=Math.atan(o[1]/o[0]),o[0]<0)g=g+Math.PI/2;else g=-g-Math.PI/2;else g=o;var C=Math.cos(-g),B=Math.sin(-g);for(var E=0;E<l.length/2;E++)l[E*2]=a/2*(r[E*2]*C-r[E*2+1]*B),l[E*2+1]=n/2*(r[E*2+1]*C+r[E*2]*B),l[E*2]+=i,l[E*2+1]+=u;var d;if(s>0){var I=kT(l,-s);d=vT(I)}else d=l;return Cl(e,t,d)},u4t=function(e,t,r,i,u,a,n,o){var s=Array(r.length*2);for(var l=0;l<o.length;l++){var g=o[l];s[l*4+0]=g.startX,s[l*4+1]=g.startY,s[l*4+2]=g.stopX,s[l*4+3]=g.stopY;var C=Math.pow(g.cx-e,2)+Math.pow(g.cy-t,2);if(C<=Math.pow(g.radius,2))return!0}return Cl(e,t,s)},vT=function(e){var t=Array(e.length/2),r,i,u,a,n,o,s,l;for(var g=0;g<e.length/4;g++){if(r=e[g*4],i=e[g*4+1],u=e[g*4+2],a=e[g*4+3],g<e.length/4-1)n=e[(g+1)*4],o=e[(g+1)*4+1],s=e[(g+1)*4+2],l=e[(g+1)*4+3];else n=e[0],o=e[1],s=e[2],l=e[3];var C=o4(r,i,u,a,n,o,s,l,!0);t[g*2]=C[0],t[g*2+1]=C[1]}return t},kT=function(e,t){var r=Array(e.length*2),i,u,a,n;for(var o=0;o<e.length/2;o++){if(i=e[o*2],u=e[o*2+1],o<e.length/2-1)a=e[(o+1)*2],n=e[(o+1)*2+1];else a=e[0],n=e[1];var s=n-u,l=-(a-i),g=Math.sqrt(s*s+l*l),C=s/g,B=l/g;r[o*4]=i+C*t,r[o*4+1]=u+B*t,r[o*4+2]=a+C*t,r[o*4+3]=n+B*t}return r},a4t=function(e,t,r,i,u,a){var n=r-e,o=i-t;n/=u,o/=a;var s=Math.sqrt(n*n+o*o),l=s-1;if(l<0)return[];var g=l/s;return[(r-e)*g+e,(i-t)*g+t]},Jf=function(e,t,r,i,u,a,n){return e-=u,t-=a,e/=r/2+n,t/=i/2+n,e*e+t*t<=1},fk=function(e,t,r,i,u,a,n){var o=[r-e,i-t],s=[e-u,t-a],l=o[0]*o[0]+o[1]*o[1],g=2*(s[0]*o[0]+s[1]*o[1]),C=s[0]*s[0]+s[1]*s[1]-n*n,B=g*g-4*l*C;if(B<0)return[];var E=(-g+Math.sqrt(B))/(2*l),d=(-g-Math.sqrt(B))/(2*l),I=Math.min(E,d),h=Math.max(E,d),Q=[];if(I>=0&&I<=1)Q.push(I);if(h>=0&&h<=1)Q.push(h);if(Q.length===0)return[];var p=Q[0]*o[0]+e,m=Q[0]*o[1]+t;if(Q.length>1)if(Q[0]==Q[1])return[p,m];else{var f=Q[1]*o[0]+e,D=Q[1]*o[1]+t;return[p,m,f,D]}else return[p,m]},PiA=function(e,t,r){if(t<=e&&e<=r||r<=e&&e<=t)return e;else if(e<=t&&t<=r||r<=t&&t<=e)return t;else return r},o4=function(e,t,r,i,u,a,n,o,s){var l=e-u,g=r-e,C=n-u,B=t-a,E=i-t,d=o-a,I=C*B-d*l,h=g*B-E*l,Q=d*g-C*E;if(Q!==0){var p=I/Q,m=h/Q,f=0.001,D=0-f,w=1+f;if(D<=p&&p<=w&&D<=m&&m<=w)return[e+p*g,t+p*E];else if(!s)return[];else return[e+p*g,t+p*E]}else if(I===0||h===0){if(PiA(e,r,n)===n)return[n,o];if(PiA(e,r,u)===u)return[u,a];if(PiA(u,n,r)===r)return[r,i];return[]}else return[]},n4t=function(e,t,r,i,u){var a=[],n=i/2,o=u/2,s=t,l=r;a.push({x:s+n*e[0],y:l+o*e[1]});for(var g=1;g<e.length/2;g++)a.push({x:s+n*e[g*2],y:l+o*e[g*2+1]});return a},Sk=function(e,t,r,i,u,a,n,o){var s=[],l,g=Array(r.length),C=!0;if(a==null)C=!1;var B;if(C){for(var E=0;E<g.length/2;E++)g[E*2]=r[E*2]*a+i,g[E*2+1]=r[E*2+1]*n+u;if(o>0){var d=kT(g,-o);B=vT(d)}else B=g}else B=r;var I,h,Q,p;for(var m=0;m<B.length/2;m++){if(I=B[m*2],h=B[m*2+1],m<B.length/2-1)Q=B[(m+1)*2],p=B[(m+1)*2+1];else Q=B[0],p=B[1];if(l=o4(e,t,i,u,I,h,Q,p),l.length!==0)s.push(l[0],l[1])}return s},o4t=function(e,t,r,i,u,a,n,o,s){var l=[],g,C=Array(r.length*2);s.forEach(function(Q,p){if(p===0)C[C.length-2]=Q.startX,C[C.length-1]=Q.startY;else C[p*4-2]=Q.startX,C[p*4-1]=Q.startY;if(C[p*4]=Q.stopX,C[p*4+1]=Q.stopY,g=fk(e,t,i,u,Q.cx,Q.cy,Q.radius),g.length!==0)l.push(g[0],g[1])});for(var B=0;B<C.length/4;B++)if(g=o4(e,t,i,u,C[B*4],C[B*4+1],C[B*4+2],C[B*4+3],!1),g.length!==0)l.push(g[0],g[1]);if(l.length>2){var E=[l[0],l[1]],d=Math.pow(E[0]-e,2)+Math.pow(E[1]-t,2);for(var I=1;I<l.length/2;I++){var h=Math.pow(l[I*2]-e,2)+Math.pow(l[I*2+1]-t,2);if(h<=d)E[0]=l[I*2],E[1]=l[I*2+1],d=h}return E}return l},tT=function(e,t,r){var i=[e[0]-t[0],e[1]-t[1]],u=Math.sqrt(i[0]*i[0]+i[1]*i[1]),a=(u-r)/u;if(a<0)a=0.00001;return[t[0]+a*i[0],t[1]+a*i[1]]},Is=function(e,t){var r=raA(e,t);return r=lKA(r),r},lKA=function(e){var t,r,i=e.length/2,u=1/0,a=1/0,n=-1/0,o=-1/0;for(var s=0;s<i;s++)t=e[2*s],r=e[2*s+1],u=Math.min(u,t),n=Math.max(n,t),a=Math.min(a,r),o=Math.max(o,r);var l=2/(n-u),g=2/(o-a);for(var C=0;C<i;C++)t=e[2*C]=e[2*C]*l,r=e[2*C+1]=e[2*C+1]*g,u=Math.min(u,t),n=Math.max(n,t),a=Math.min(a,r),o=Math.max(o,r);if(a<-1)for(var B=0;B<i;B++)r=e[2*B+1]=e[2*B+1]+(-1-a);return e},raA=function(e,t){var r=1/e*2*Math.PI,i=e%2===0?Math.PI/2+r/2:Math.PI/2;i+=t;var u=Array(e*2),a;for(var n=0;n<e;n++)a=n*r+i,u[2*n]=Math.cos(a),u[2*n+1]=Math.sin(-a);return u},C4=function(e,t){return Math.min(e/4,t/4,8)},gKA=function(e,t){return Math.min(e/10,t/10,8)},LaA=function(){return 8},s4t=function(e,t,r){return[e-2*t+r,2*(t-e),e]},iaA=function(e,t){return{heightOffset:Math.min(15,0.05*t),widthOffset:Math.min(100,0.25*e),ctrlPtOffsetPct:0.05}},l4t,g4t,GTA,Zy,UTA,Vy,c4t,uaA,C4t,B4t=function(e){return C4t(e)},E4t=function(e,t){var r=0;for(var i=0;i<t.length;i++)r+=t[i](e);return r},d4t=function(e,t,r){for(var i=0;i<t;i++)e[i*t+i]=r},cKA=function(e,t){var r;for(var i=0;i<t;i++){r=0;for(var u=0;u<t;u++)r+=e[u*t+i];for(var a=0;a<t;a++)e[a*t+i]=e[a*t+i]/r}},I4t=function(e,t,r){var i=Array(r*r);for(var u=0;u<r;u++){for(var a=0;a<r;a++)i[u*r+a]=0;for(var n=0;n<r;n++)for(var o=0;o<r;o++)i[u*r+o]+=e[u*r+n]*t[n*r+o]}return i},h4t=function(e,t,r){var i=e.slice(0);for(var u=1;u<r;u++)e=I4t(e,i,t);return e},Q4t=function(e,t,r){var i=Array(t*t);for(var u=0;u<t*t;u++)i[u]=Math.pow(e[u],r);return cKA(i,t),i},p4t=function(e,t,r,i){for(var u=0;u<r;u++){var a=Math.round(e[u]*Math.pow(10,i))/Math.pow(10,i),n=Math.round(t[u]*Math.pow(10,i))/Math.pow(10,i);if(a!==n)return!1}return!0},f4t=function(e,t,r,i){var u=[];for(var a=0;a<t;a++){var n=[];for(var o=0;o<t;o++)if(Math.round(e[a*t+o]*1000)/1000>0)n.push(r[o]);if(n.length!==0)u.push(i.collection(n))}return u},m4t=function(e,t){for(var r=0;r<e.length;r++)if(!t[r]||e[r].id()!==t[r].id())return!1;return!0},D4t=function(e){for(var t=0;t<e.length;t++)for(var r=0;r<e.length;r++)if(t!=r&&m4t(e[t],e[r]))e.splice(r,1);return e},MTA=function(e){var t=this.nodes(),r=this.edges(),i=this.cy(),u=B4t(e),a={};for(var n=0;n<t.length;n++)a[t[n].id()]=n;var o=t.length,s=o*o,l=Array(s),g;for(var C=0;C<s;C++)l[C]=0;for(var B=0;B<r.length;B++){var E=r[B],d=a[E.source().id()],I=a[E.target().id()],h=E4t(E,u.attributes);l[d*o+I]+=h,l[I*o+d]+=h}d4t(l,o,u.multFactor),cKA(l,o);var Q=!0,p=0;while(Q&&p<u.maxIterations){if(Q=!1,g=h4t(l,o,u.expandFactor),l=Q4t(g,o,u.inflateFactor),!p4t(l,g,s,4))Q=!0;p++}var m=f4t(l,o,t,i);return m=D4t(m),m},y4t,w4t=function(e){return e},CKA=function(e,t){return Math.abs(t-e)},TTA=function(e,t,r){return e+CKA(t,r)},YTA=function(e,t,r){return e+Math.pow(r-t,2)},b4t=function(e){return Math.sqrt(e)},v4t=function(e,t,r){return Math.max(e,CKA(t,r))},Bk=function(e,t,r,i,u){var a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:w4t,n=i,o,s;for(var l=0;l<e;l++)o=t(l),s=r(l),n=u(n,o,s);return a(n)},$y,k4t,RaA=function(e){return k4t(e)},FT=function(e,t,r,i,u){var a=u!=="kMedoids",n=a?function(g){return r[g]}:function(g){return i[g](r)},o=function(C){return i[C](t)},s=r,l=t;return KT(e,i.length,n,o,s,l)},WiA=function(e,t,r){var i=r.length,u=Array(i),a=Array(i),n=Array(t),o=null;for(var s=0;s<i;s++)u[s]=e.min(r[s]).value,a[s]=e.max(r[s]).value;for(var l=0;l<t;l++){o=[];for(var g=0;g<i;g++)o[g]=Math.random()*(a[g]-u[g])+u[g];n[l]=o}return n},BKA=function(e,t,r,i,u){var a=1/0,n=0;for(var o=0;o<t.length;o++){var s=FT(r,e,t[o],i,u);if(s<a)a=s,n=o}return n},EKA=function(e,t,r){var i=[],u=null;for(var a=0;a<t.length;a++)if(u=t[a],r[u.id()]===e)i.push(u);return i},F4t=function(e,t,r){return Math.abs(t-e)<=r},x4t=function(e,t,r){for(var i=0;i<e.length;i++)for(var u=0;u<e[i].length;u++){var a=Math.abs(e[i][u]-t[i][u]);if(a>r)return!1}return!0},S4t=function(e,t,r){for(var i=0;i<r;i++)if(e===t[i])return!0;return!1},HTA=function(e,t){var r=Array(t);if(e.length<50)for(var i=0;i<t;i++){var u=e[Math.floor(Math.random()*e.length)];while(S4t(u,r,i))u=e[Math.floor(Math.random()*e.length)];r[i]=u}else for(var a=0;a<t;a++)r[a]=e[Math.floor(Math.random()*e.length)];return r},KTA=function(e,t,r){var i=0;for(var u=0;u<t.length;u++)i+=FT("manhattan",t[u],e,r,"kMedoids");return i},L4t=function(e){var t=this.cy(),r=this.nodes(),i=null,u=RaA(e),a=Array(u.k),n={},o;if(u.testMode)if(typeof u.testCentroids==="number")u.testCentroids,o=WiA(r,u.k,u.attributes);else if(oo(u.testCentroids)==="object")o=u.testCentroids;else o=WiA(r,u.k,u.attributes);else o=WiA(r,u.k,u.attributes);var s=!0,l=0;while(s&&l<u.maxIterations){for(var g=0;g<r.length;g++)i=r[g],n[i.id()]=BKA(i,o,u.distance,u.attributes,"kMeans");s=!1;for(var C=0;C<u.k;C++){var B=EKA(C,r,n);if(B.length===0)continue;var E=u.attributes.length,d=o[C],I=Array(E),h=Array(E);for(var Q=0;Q<E;Q++){h[Q]=0;for(var p=0;p<B.length;p++)i=B[p],h[Q]+=u.attributes[Q](i);if(I[Q]=h[Q]/B.length,!F4t(I[Q],d[Q],u.sensitivityThreshold))s=!0}o[C]=I,a[C]=t.collection(B)}l++}return a},R4t=function(e){var t=this.cy(),r=this.nodes(),i=null,u=RaA(e),a=Array(u.k),n,o={},s,l=Array(u.k);if(u.testMode)if(typeof u.testCentroids==="number");else if(oo(u.testCentroids)==="object")n=u.testCentroids;else n=HTA(r,u.k);else n=HTA(r,u.k);var g=!0,C=0;while(g&&C<u.maxIterations){for(var B=0;B<r.length;B++)i=r[B],o[i.id()]=BKA(i,n,u.distance,u.attributes,"kMedoids");g=!1;for(var E=0;E<n.length;E++){var d=EKA(E,r,o);if(d.length===0)continue;l[E]=KTA(n[E],d,u.attributes);for(var I=0;I<d.length;I++)if(s=KTA(d[I],d,u.attributes),s<l[E])l[E]=s,n[E]=d[I],g=!0;a[E]=t.collection(d)}C++}return a},N4t=function(e,t,r,i,u){var a,n;for(var o=0;o<t.length;o++)for(var s=0;s<e.length;s++)i[o][s]=Math.pow(r[o][s],u.m);for(var l=0;l<e.length;l++)for(var g=0;g<u.attributes.length;g++){a=0,n=0;for(var C=0;C<t.length;C++)a+=i[C][l]*u.attributes[g](t[C]),n+=i[C][l];e[l][g]=a/n}},G4t=function(e,t,r,i,u){for(var a=0;a<e.length;a++)t[a]=e[a].slice();var n,o,s,l=2/(u.m-1);for(var g=0;g<r.length;g++)for(var C=0;C<i.length;C++){n=0;for(var B=0;B<r.length;B++)o=FT(u.distance,i[C],r[g],u.attributes,"cmeans"),s=FT(u.distance,i[C],r[B],u.attributes,"cmeans"),n+=Math.pow(o/s,l);e[C][g]=1/n}},U4t=function(e,t,r,i){var u=Array(r.k);for(var a=0;a<u.length;a++)u[a]=[];var n,o;for(var s=0;s<t.length;s++){n=-1/0,o=-1;for(var l=0;l<t[0].length;l++)if(t[s][l]>n)n=t[s][l],o=l;u[o].push(e[s])}for(var g=0;g<u.length;g++)u[g]=i.collection(u[g]);return u},JTA=function(e){var t=this.cy(),r=this.nodes(),i=RaA(e),u,a,n,o,s;o=Array(r.length);for(var l=0;l<r.length;l++)o[l]=Array(i.k);n=Array(r.length);for(var g=0;g<r.length;g++)n[g]=Array(i.k);for(var C=0;C<r.length;C++){var B=0;for(var E=0;E<i.k;E++)n[C][E]=Math.random(),B+=n[C][E];for(var d=0;d<i.k;d++)n[C][d]=n[C][d]/B}a=Array(i.k);for(var I=0;I<i.k;I++)a[I]=Array(i.attributes.length);s=Array(r.length);for(var h=0;h<r.length;h++)s[h]=Array(i.k);var Q=!0,p=0;while(Q&&p<i.maxIterations){if(Q=!1,N4t(a,r,n,s,i),G4t(n,o,a,r,i),!x4t(n,o,i.sensitivityThreshold))Q=!0;p++}return u=U4t(r,n,i,t),{clusters:u,degreeOfMembership:n}},M4t,T4t,Y4t,H4t=function(e){var t=T4t(e),r=Y4t[t.linkage];if(r!=null)t.linkage=r;return t},OTA=function(e,t,r,i,u){var a=0,n=1/0,o,s=u.attributes,l=function(k,v){return KT(u.distance,s.length,function(S){return s[S](k)},function(S){return s[S](v)},k,v)};for(var g=0;g<e.length;g++){var C=e[g].key,B=r[C][i[C]];if(B<n)a=C,n=B}if(u.mode==="threshold"&&n>=u.threshold||u.mode==="dendrogram"&&e.length===1)return!1;var E=t[a],d=t[i[a]],I;if(u.mode==="dendrogram")I={left:E,right:d,key:E.key};else I={value:E.value.concat(d.value),key:E.key};e[E.index]=I,e.splice(d.index,1),t[E.key]=I;for(var h=0;h<e.length;h++){var Q=e[h];if(E.key===Q.key)o=1/0;else if(u.linkage==="min"){if(o=r[E.key][Q.key],r[E.key][Q.key]>r[d.key][Q.key])o=r[d.key][Q.key]}else if(u.linkage==="max"){if(o=r[E.key][Q.key],r[E.key][Q.key]<r[d.key][Q.key])o=r[d.key][Q.key]}else if(u.linkage==="mean")o=(r[E.key][Q.key]*E.size+r[d.key][Q.key]*d.size)/(E.size+d.size);else if(u.mode==="dendrogram")o=l(Q.value,E.value);else o=l(Q.value[0],E.value[0]);r[E.key][Q.key]=r[Q.key][E.key]=o}for(var p=0;p<e.length;p++){var m=e[p].key;if(i[m]===E.key||i[m]===d.key){var f=m;for(var D=0;D<e.length;D++){var w=e[D].key;if(r[m][w]<r[m][f])f=w}i[m]=f}e[p].index=p}return E.key=d.key=E.index=d.index=null,!0},Wy=function(e,t,r){if(!e)return;if(e.value)t.push(e.value);else{if(e.left)Wy(e.left,t);if(e.right)Wy(e.right,t)}},aaA=function(e,t){if(!e)return"";if(e.left&&e.right){var r=aaA(e.left,t),i=aaA(e.right,t),u=t.add({group:"nodes",data:{id:r+","+i}});return t.add({group:"edges",data:{source:r,target:u.id()}}),t.add({group:"edges",data:{source:i,target:u.id()}}),u.id()}else if(e.value)return e.value.id()},naA=function(e,t,r){if(!e)return[];var i=[],u=[],a=[];if(t===0){if(e.left)Wy(e.left,i);if(e.right)Wy(e.right,u);return a=i.concat(u),[r.collection(a)]}else if(t===1)if(e.value)return[r.collection(e.value)];else{if(e.left)Wy(e.left,i);if(e.right)Wy(e.right,u);return[r.collection(i),r.collection(u)]}else if(e.value)return[r.collection(e.value)];else{if(e.left)i=naA(e.left,t-1,r);if(e.right)u=naA(e.right,t-1,r);return i.concat(u)}},PTA=function(e){var t=this.cy(),r=this.nodes(),i=H4t(e),u=i.attributes,a=function(p,m){return KT(i.distance,u.length,function(f){return u[f](p)},function(f){return u[f](m)},p,m)},n=[],o=[],s=[],l=[];for(var g=0;g<r.length;g++){var C={value:i.mode==="dendrogram"?r[g]:[r[g]],key:g,index:g};n[g]=C,l[g]=C,o[g]=[],s[g]=0}for(var B=0;B<n.length;B++)for(var E=0;E<=B;E++){var d=void 0;if(i.mode==="dendrogram")d=B===E?1/0:a(n[B].value,n[E].value);else d=B===E?1/0:a(n[B].value[0],n[E].value[0]);if(o[B][E]=d,o[E][B]=d,d<o[B][s[B]])s[B]=E}var I=OTA(n,l,o,s,i);while(I)I=OTA(n,l,o,s,i);var h;if(i.mode==="dendrogram"){if(h=naA(n[0],i.dendrogramDepth,t),i.addDendrogram)aaA(n[0],t)}else h=Array(n.length),n.forEach(function(Q,p){Q.key=Q.index=null,h[p]=t.collection(Q.value)});return h},K4t,J4t,O4t=function(e){var{damping:t,preference:r}=e;if(!(0.5<=t&&t<1))Qa("Damping must range on [0.5, 1). Got: ".concat(t));var i=["median","mean","min","max"];if(!(i.some(function(u){return u===r})||ht(r)))Qa("Preference must be one of [".concat(i.map(function(u){return"'".concat(u,"'")}).join(", "),"] or a number. Got: ").concat(r));return J4t(e)},P4t=function(e,t,r,i){var u=function(n,o){return i[o](n)};return-KT(e,i.length,function(a){return u(t,a)},function(a){return u(r,a)},t,r)},_4t=function(e,t){var r=null;if(t==="median")r=JQt(e);else if(t==="mean")r=KQt(e);else if(t==="min")r=YQt(e);else if(t==="max")r=HQt(e);else r=t;return r},W4t=function(e,t,r){var i=[];for(var u=0;u<e;u++)if(t[u*e+u]+r[u*e+u]>0)i.push(u);return i},_TA=function(e,t,r){var i=[];for(var u=0;u<e;u++){var a=-1,n=-1/0;for(var o=0;o<r.length;o++){var s=r[o];if(t[u*e+s]>n)a=s,n=t[u*e+s]}if(a>0)i.push(a)}for(var l=0;l<r.length;l++)i[r[l]]=r[l];return i},q4t=function(e,t,r){var i=_TA(e,t,r);for(var u=0;u<r.length;u++){var a=[];for(var n=0;n<i.length;n++)if(i[n]===r[u])a.push(n);var o=-1,s=-1/0;for(var l=0;l<a.length;l++){var g=0;for(var C=0;C<a.length;C++)g+=t[a[C]*e+a[l]];if(g>s)o=l,s=g}r[u]=a[o]}return i=_TA(e,t,r),i},WTA=function(e){var t=this.cy(),r=this.nodes(),i=O4t(e),u={};for(var a=0;a<r.length;a++)u[r[a].id()]=a;var n,o,s,l,g,C;n=r.length,o=n*n,s=Array(o);for(var B=0;B<o;B++)s[B]=-1/0;for(var E=0;E<n;E++)for(var d=0;d<n;d++)if(E!==d)s[E*n+d]=P4t(i.distance,r[E],r[d],i.attributes);l=_4t(s,i.preference);for(var I=0;I<n;I++)s[I*n+I]=l;g=Array(o);for(var h=0;h<o;h++)g[h]=0;C=Array(o);for(var Q=0;Q<o;Q++)C[Q]=0;var p=Array(n),m=Array(n),f=Array(n);for(var D=0;D<n;D++)p[D]=0,m[D]=0,f[D]=0;var w=Array(n*i.minIterations);for(var b=0;b<w.length;b++)w[b]=0;var k;for(k=0;k<i.maxIterations;k++){for(var v=0;v<n;v++){var S=-1/0,x=-1/0,F=-1,T=0;for(var R=0;R<n;R++)if(p[R]=g[v*n+R],T=C[v*n+R]+s[v*n+R],T>=S)x=S,S=T,F=R;else if(T>x)x=T;for(var L=0;L<n;L++)g[v*n+L]=(1-i.damping)*(s[v*n+L]-S)+i.damping*p[L];g[v*n+F]=(1-i.damping)*(s[v*n+F]-x)+i.damping*p[F]}for(var M=0;M<n;M++){var U=0;for(var Y=0;Y<n;Y++)p[Y]=C[Y*n+M],m[Y]=Math.max(0,g[Y*n+M]),U+=m[Y];U-=m[M],m[M]=g[M*n+M],U+=m[M];for(var H=0;H<n;H++)C[H*n+M]=(1-i.damping)*Math.min(0,U-m[H])+i.damping*p[H];C[M*n+M]=(1-i.damping)*(U-m[M])+i.damping*p[M]}var J=0;for(var K=0;K<n;K++){var O=C[K*n+K]+g[K*n+K]>0?1:0;w[k%i.minIterations*n+K]=O,J+=O}if(J>0&&(k>=i.minIterations-1||k==i.maxIterations-1)){var P=0;for(var z=0;z<n;z++){f[z]=0;for(var AA=0;AA<i.minIterations;AA++)f[z]+=w[AA*n+z];if(f[z]===0||f[z]===i.minIterations)P++}if(P===n)break}}var W=W4t(n,g,C),CA=q4t(n,s,W),tA={};for(var lA=0;lA<W.length;lA++)tA[W[lA]]=[];for(var gA=0;gA<r.length;gA++){var aA=u[r[gA].id()],NA=CA[aA];if(NA!=null)tA[NA].push(r[gA])}var DA=Array(W.length);for(var KA=0;KA<W.length;KA++)DA[KA]=t.collection(tA[W[KA]]);return DA},z4t,Z4t,V4t,rT=function(){var e=this,t={},r=0,i=0,u=[],a=[],n={},o=function(C,B){var E=a.length-1,d=[],I=e.spawn();while(a[E].x!=C||a[E].y!=B)d.push(a.pop().edge),E--;d.push(a.pop().edge),d.forEach(function(h){var Q=h.connectedNodes().intersection(e);I.merge(h),Q.forEach(function(p){var m=p.id(),f=p.connectedEdges().intersection(e);if(I.merge(p),!t[m].cutVertex)I.merge(f);else I.merge(f.filter(function(D){return D.isLoop()}))})}),u.push(I)},s=function(C,B,E){if(C===E)i+=1;t[B]={id:r,low:r++,cutVertex:!1};var d=e.getElementById(B).connectedEdges().intersection(e);if(d.size()===0)u.push(e.spawn(e.getElementById(B)));else{var I,h,Q,p;d.forEach(function(m){if(I=m.source().id(),h=m.target().id(),Q=I===B?h:I,Q!==E){if(p=m.id(),!n[p])n[p]=!0,a.push({x:B,y:Q,edge:m});if(!(Q in t)){if(s(C,Q,B),t[B].low=Math.min(t[B].low,t[Q].low),t[B].id<=t[Q].low)t[B].cutVertex=!0,o(B,Q)}else t[B].low=Math.min(t[B].low,t[Q].id)}})}};e.forEach(function(g){if(g.isNode()){var C=g.id();if(!(C in t))i=0,s(C,C),t[C].cutVertex=i>1}});var l=Object.keys(t).filter(function(g){return t[g].cutVertex}).map(function(g){return e.getElementById(g)});return{cut:e.spawn(l),components:u}},j4t,iT=function(){var e=this,t={},r=0,i=[],u=[],a=e.spawn(e),n=function(s){u.push(s),t[s]={index:r,low:r++,explored:!1};var l=e.getElementById(s).connectedEdges().intersection(e);if(l.forEach(function(d){var I=d.target().id();if(I!==s){if(!(I in t))n(I);if(!t[I].explored)t[s].low=Math.min(t[s].low,t[I].low)}}),t[s].index===t[s].low){var g=e.spawn();for(;;){var C=u.pop();if(g.merge(e.getElementById(C)),t[C].low=t[s].index,t[C].explored=!0,C===s)break}var B=g.edgesWith(g),E=g.merge(B);i.push(E),a=a.difference(E)}};return e.forEach(function(o){if(o.isNode()){var s=o.id();if(!(s in t))n(s)}}),{cut:a,components:i}},X4t,dKA,IKA=0,hKA=1,QKA=2,pC=function(e){if(!(this instanceof pC))return new pC(e);if(this.id="Thenable/1.0.7",this.state=IKA,this.fulfillValue=void 0,this.rejectReason=void 0,this.onFulfilled=[],this.onRejected=[],this.proxy={then:this.then.bind(this)},typeof e==="function")e.call(this,this.fulfill.bind(this),this.reject.bind(this))},qTA=function(e,t,r,i){if(e.state===IKA)e.state=t,e[r]=i,pKA(e);return e},pKA=function(e){if(e.state===hKA)zTA(e,"onFulfilled",e.fulfillValue);else if(e.state===QKA)zTA(e,"onRejected",e.rejectReason)},zTA=function(e,t,r){if(e[t].length===0)return;var i=e[t];e[t]=[];var u=function(){for(var n=0;n<i.length;n++)i[n](r)};if(typeof setImmediate==="function")setImmediate(u);else setTimeout(u,0)},ZTA=function(e,t,r){return function(i){if(typeof e!=="function")t[r].call(t,i);else{var u;try{u=e(i)}catch(a){t.reject(a);return}fKA(t,u)}}},fKA=function(e,t){if(e===t||e.proxy===t){e.reject(TypeError("cannot resolve promise with itself"));return}var r;if(oo(t)==="object"&&t!==null||typeof t==="function")try{r=t.then}catch(u){e.reject(u);return}if(typeof r==="function"){var i=!1;try{r.call(t,function(u){if(i)return;if(i=!0,u===t)e.reject(TypeError("circular thenable chain"));else fKA(e,u)},function(u){if(i)return;i=!0,e.reject(u)})}catch(u){if(!i)e.reject(u)}return}e.fulfill(t)},iw,oaA=function(e,t,r){var i=DaA(e),u=!i,a=this._private=dr({duration:1000},t,r);if(a.target=e,a.style=a.style||a.css,a.started=!1,a.playing=!1,a.hooked=!1,a.applying=!1,a.progress=0,a.completes=[],a.frames=[],a.complete&&La(a.complete))a.completes.push(a.complete);if(u){var n=e.position();a.startPosition=a.startPosition||{x:n.x,y:n.y},a.startStyle=a.startStyle||e.cy().style().getAnimationStartStyle(e,a.style)}if(i){var o=e.pan();a.startPan={x:o.x,y:o.y},a.startZoom=e.zoom()}this.length=1,this[0]=this},_f,$4t,qiA,VTA,ziA,jTA,ZiA,XTA,ViA,$TA,jiA,AYA,XiA,eYA,$iA,tYA,AuA,rYA,euA,iYA,tuA,uYA,ruA,aYA,iuA,nYA,uuA,oYA,auA,sYA,nuA,lYA,ouA,gYA,suA,cYA,luA,CYA,guA,BYA,cuA,EYA,CuA,dYA,BuA,IYA,EuA,hYA,duA,QYA,IuA,pYA,huA,fYA,QuA,mYA,puA,DYA,fuA,yYA,muA,wYA,DuA,bYA,yuA,vYA,wuA,kYA,buA,FYA,vuA,xYA,kuA,SYA,FuA,LYA,xuA,RYA,SuA,NYA,LuA,GYA,RuA,UYA,NuA,MYA,GuA,TYA,L1t,R1t,UuA,YYA,MuA,HYA,TuA,KYA,YuA,JYA,HuA,OYA,KuA,PYA,H1t,K1t,JuA,_YA,OuA,WYA,P1t,_1t,W1t,q1t,Eu,z1t,ET,Yi,vu=function(){return{checks:[]}},Gt,saA,Z1t,V1t=function(e,t){return Z1t[e](t)},j1t,My=function(e){return e.replace(new RegExp("\\\\("+Yi.metaChar+")","g"),function(t,r){return r})},r4=function(e,t,r){e[e.length-1]=r},laA,X1t=function(e){var t,r,i;for(var u=0;u<laA.length;u++){var a=laA[u],n=a.name,o=e.match(a.regexObj);if(o!=null){r=o,t=a,i=n;var s=o[0];e=e.substring(s.length);break}}return{expr:t,match:r,name:i,remaining:e}},$1t=function(e){var t=e.match(/^\s+/);if(t){var r=t[0];e=e.substring(r.length)}return e},Apt=function(e){var t=this,r=t.inputText=e,i=t[0]=vu();t.length=1,r=$1t(r);for(;;){var u=X1t(r);if(u.expr==null)return du("The selector `"+e+"`is invalid"),!1;else{var a=u.match.slice(1),n=u.expr.populate(t,i,a);if(n===!1)return!1;else if(n!=null)i=n}if(r=u.remaining,r.match(/^\s*$/))break}var o=t[t.length-1];if(t.currentSubject!=null)o.subject=t.currentSubject;o.edgeCount=t.edgeCount,o.compoundCount=t.compoundCount;for(var s=0;s<t.length;s++){var l=t[s];if(l.compoundCount>0&&l.edgeCount>0)return du("The selector `"+e+"` is invalid because it uses both a compound selector and an edge selector"),!1;if(l.edgeCount>1)return du("The selector `"+e+"` is invalid because it uses multiple edge selectors"),!1;else if(l.edgeCount===1)du("The selector `"+e+"` is deprecated. Edge selectors do not take effect on changes to source and target nodes after an edge is added, for performance reasons. Use a class or data selector on edges instead, updating the class or data of an edge when your app detects a change in source or target nodes.")}return!0},ept=function(){if(this.toStringCache!=null)return this.toStringCache;var e=function(l){if(l==null)return"";else return l},t=function(l){if(tr(l))return'"'+l+'"';else return e(l)},r=function(l){return" "+l+" "},i=function(l,g){var{type:C,value:B}=l;switch(C){case Gt.GROUP:{var E=e(B);return E.substring(0,E.length-1)}case Gt.DATA_COMPARE:{var{field:d,operator:I}=l;return"["+d+r(e(I))+t(B)+"]"}case Gt.DATA_BOOL:{var{operator:h,field:Q}=l;return"["+e(h)+Q+"]"}case Gt.DATA_EXIST:{var p=l.field;return"["+p+"]"}case Gt.META_COMPARE:{var{operator:m,field:f}=l;return"[["+f+r(e(m))+t(B)+"]]"}case Gt.STATE:return B;case Gt.ID:return"#"+B;case Gt.CLASS:return"."+B;case Gt.PARENT:case Gt.CHILD:return u(l.parent,g)+r(">")+u(l.child,g);case Gt.ANCESTOR:case Gt.DESCENDANT:return u(l.ancestor,g)+" "+u(l.descendant,g);case Gt.COMPOUND_SPLIT:{var D=u(l.left,g),w=u(l.subject,g),b=u(l.right,g);return D+(D.length>0?" ":"")+w+b}case Gt.TRUE:return""}},u=function(l,g){return l.checks.reduce(function(C,B,E){return C+(g===l&&E===0?"$":"")+i(B,g)},"")},a="";for(var n=0;n<this.length;n++){var o=this[n];if(a+=u(o,o.subject),this.length>1&&n<this.length-1)a+=", "}return this.toStringCache=a,a},tpt,vKA=function(e,t,r){var i,u=tr(e),a=ht(e),n=tr(r),o,s,l=!1,g=!1,C=!1;if(t.indexOf("!")>=0)t=t.replace("!",""),g=!0;if(t.indexOf("@")>=0)t=t.replace("@",""),l=!0;if(u||n||l)o=!u&&!a?"":""+e,s=""+r;if(l)e=o=o.toLowerCase(),r=s=s.toLowerCase();switch(t){case"*=":i=o.indexOf(s)>=0;break;case"$=":i=o.indexOf(s,o.length-s.length)>=0;break;case"^=":i=o.indexOf(s)===0;break;case"=":i=e===r;break;case">":C=!0,i=e>r;break;case">=":C=!0,i=e>=r;break;case"<":C=!0,i=e<r;break;case"<=":C=!0,i=e<=r;break;default:i=!1;break}if(g&&(e!=null||!C))i=!i;return i},rpt=function(e,t){switch(t){case"?":return e?!0:!1;case"!":return e?!1:!0;case"^":return e===void 0}},ipt=function(e){return e!==void 0},UaA=function(e,t){return e.data(t)},upt=function(e,t){return e[t]()},Za,ea=function(e,t){return e.checks.every(function(r){return Za[r.type](r,t)})},apt=function(e){var t=this;if(t.length===1&&t[0].checks.length===1&&t[0].checks[0].type===Gt.ID)return e.getElementById(t[0].checks[0].value).collection();var r=function(u){for(var a=0;a<t.length;a++){var n=t[a];if(ea(n,u))return!0}return!1};if(t.text()==null)r=function(){return!0};return e.filter(r)},npt=function(e){var t=this;for(var r=0;r<t.length;r++){var i=t[r];if(ea(i,e))return!0}return!1},opt,B4=function(e){if(this.inputText=e,this.currentSubject=null,this.compoundCount=0,this.edgeCount=0,this.length=0,e==null||tr(e)&&e.match(/^\s*$/));else if(sg(e))this.addQuery({checks:[{type:Gt.COLLECTION,value:e.collection()}]});else if(La(e))this.addQuery({checks:[{type:Gt.FILTER,value:e}]});else if(tr(e)){if(!this.parse(e))this.invalid=!0}else Qa("A selector must be created from a string; found ")},E4,s4,ic=function(e,t){return function(i,u,a,n){var o=i,s=this,l;if(o==null)l="";else if(sg(o)&&o.length===1)l=o.id();if(s.length===1&&l){var g=s[0]._private,C=g.traversalCache=g.traversalCache||{},B=C[t]=C[t]||[],E=Of(l),d=B[E];if(d)return d;else return B[E]=e.call(s,i,u,a,n)}else return e.call(s,i,u,a,n)}},Aw,Lk,xKA,lpt,WT,QC,SKA,LKA=function(e,t,r){for(var i=0;i<e.length;i++){var u=e[i];if(!u.locked()){var a=u._private.position,n={x:t.x!=null?t.x-a.x:0,y:t.y!=null?t.y-a.y:0};if(u.isParent()&&!(n.x===0&&n.y===0))u.children().shift(n,r);u.dirtyBoundingBoxCache()}}},qYA,gpt,ew=function(e){switch(e){case"left":case"right-inside":return"left";case"right":case"left-inside":return"right";default:return"center"}},tw=function(e){switch(e){case"top":case"bottom-inside":return"top";case"bottom":case"top-inside":return"bottom";default:return"center"}},cpt=function(e){switch(e){case"left":return"right";case"right":return"left";case"left-inside":return"left";case"right-inside":return"right";default:return"center"}},jy,Q4,rc=function(e){if(e===1/0||e===-1/0)return 0;return e},hC=function(e,t,r,i,u){if(i-t===0||u-r===0)return;if(t==null||r==null||i==null||u==null)return;e.x1=t<e.x1?t:e.x1,e.x2=i>e.x2?i:e.x2,e.y1=r<e.y1?r:e.y1,e.y2=u>e.y2?u:e.y2,e.w=e.x2-e.x1,e.h=e.y2-e.y1},u4=function(e,t){if(t==null)return e;return hC(e,t.x1,t.y1,t.x2,t.y2)},Ek=function(e,t,r){return hs(e,t,r)},uT=function(e,t,r){if(t.cy().headless())return;var i=t._private,u=i.rstyle,a=u.arrowWidth/2,n=t.pstyle(r+"-arrow-shape").value,o,s;if(n!=="none"){if(r==="source")o=u.srcX,s=u.srcY;else if(r==="target")o=u.tgtX,s=u.tgtY;else o=u.midX,s=u.midY;var l=i.arrowBounds=i.arrowBounds||{},g=l[r]=l[r]||{};g.x1=o-a,g.y1=s-a,g.x2=o+a,g.y2=s+a,g.w=g.x2-g.x1,g.h=g.y2-g.y1,CT(g,1),hC(e,g.x1,g.y1,g.x2,g.y2)}},_uA=function(e,t,r){if(t.cy().headless())return;var i;if(r)i=r+"-";else i="";var u=t._private,a=u.rstyle,n=t.pstyle(i+"label").strValue;if(n){var o=t.pstyle("text-halign"),s=t.pstyle("text-valign"),l=Ek(a,"labelWidth",r),g=Ek(a,"labelHeight",r),C=Ek(a,"labelX",r),B=Ek(a,"labelY",r),E=t.pstyle(i+"text-margin-x").pfValue,d=t.pstyle(i+"text-margin-y").pfValue,I=t.isEdge(),h=t.pstyle(i+"text-rotation"),Q=t.pstyle("text-outline-width").pfValue,p=t.pstyle("text-border-width").pfValue,m=p/2,f=t.pstyle("text-background-padding").pfValue,D=2,w=g,b=l,k=b/2,v=w/2,S,x,F,T;if(I)S=C-k,x=C+k,F=B-v,T=B+v;else{switch(ew(o.value)){case"left":S=C-b,x=C;break;case"center":S=C-k,x=C+k;break;case"right":S=C,x=C+b;break}switch(tw(s.value)){case"top":F=B-w,T=B;break;case"center":F=B-v,T=B+v;break;case"bottom":F=B,T=B+w;break}}var R=E-Math.max(Q,m)-f-D,L=E+Math.max(Q,m)+f+D,M=d-Math.max(Q,m)-f-D,U=d+Math.max(Q,m)+f+D;S+=R,x+=L,F+=M,T+=U;var Y=r||"main",H=u.labelBounds,J=H[Y]=H[Y]||{};J.x1=S,J.y1=F,J.x2=x,J.y2=T,J.w=x-S,J.h=T-F,J.leftPad=R,J.rightPad=L,J.topPad=M,J.botPad=U;var K=I&&h.strValue==="autorotate",O=h.pfValue!=null&&h.pfValue!==0;if(K||O){var P=K?Ek(u.rstyle,"labelAngle",r):h.pfValue,z=Math.cos(P),AA=Math.sin(P),W=(S+x)/2,CA=(F+T)/2;if(!I){switch(ew(o.value)){case"left":W=x;break;case"right":W=S;break}switch(tw(s.value)){case"top":CA=T;break;case"bottom":CA=F;break}}var tA=function(qA,IA){return qA=qA-W,IA=IA-CA,{x:qA*z-IA*AA+W,y:qA*AA+IA*z+CA}},lA=tA(S,F),gA=tA(S,T),aA=tA(x,F),NA=tA(x,T);S=Math.min(lA.x,gA.x,aA.x,NA.x),x=Math.max(lA.x,gA.x,aA.x,NA.x),F=Math.min(lA.y,gA.y,aA.y,NA.y),T=Math.max(lA.y,gA.y,aA.y,NA.y)}var DA=Y+"Rot",KA=H[DA]=H[DA]||{};KA.x1=S,KA.y1=F,KA.x2=x,KA.y2=T,KA.w=x-S,KA.h=T-F,hC(e,S,F,x,T),hC(u.labelBounds.all,S,F,x,T)}return e},zYA=function(e,t){if(t.cy().headless())return;var r=t.pstyle("outline-opacity").value,i=t.pstyle("outline-width").value,u=t.pstyle("outline-offset").value,a=i+u;RKA(e,t,r,a,"outside",a/2)},RKA=function(e,t,r,i,u,a){if(r===0||i<=0||u==="inside")return;var n=t.cy(),o=n.renderer(),s=o.nodeShapes[o.getNodeShape(t)];if(!s)return;var l=t.position(),{x:g,y:C}=l,B=t.width(),E=t.height();if(s.hasMiterBounds){if(u==="center")i/=2;var d=s.miterBounds(g,C,B,E,i);u4(e,d)}else if(a!=null&&a>0)BT(e,[a,a,a,a])},Cpt=function(e,t){if(t.cy().headless())return;var r=t.pstyle("border-opacity").value,i=t.pstyle("border-width").pfValue,u=t.pstyle("border-position").value;RKA(e,t,r,i,u)},Bpt=function(e,t){var r=e._private.cy,i=r.styleEnabled(),u=r.headless(),a=Qs(),n=e._private,o=e.isNode(),s=e.isEdge(),l,g,C,B,E,d,I=n.rstyle,h=o&&i?e.pstyle("bounds-expansion").pfValue:[0],Q=function(TA){return TA.pstyle("display").value!=="none"},p=!i||Q(e)&&(!s||Q(e.source())&&Q(e.target()));if(p){var m=0,f=0;if(i&&t.includeOverlays){if(m=e.pstyle("overlay-opacity").value,m!==0)f=e.pstyle("overlay-padding").value}var D=0,w=0;if(i&&t.includeUnderlays){if(D=e.pstyle("underlay-opacity").value,D!==0)w=e.pstyle("underlay-padding").value}var b=Math.max(f,w),k=0,v=0;if(i)k=e.pstyle("width").pfValue,v=k/2;if(o&&t.includeNodes){var S=e.position();E=S.x,d=S.y;var x=e.outerWidth(),F=x/2,T=e.outerHeight(),R=T/2;if(l=E-F,g=E+F,C=d-R,B=d+R,hC(a,l,C,g,B),i)zYA(a,e);if(i&&t.includeOutlines&&!u)zYA(a,e);if(i)Cpt(a,e)}else if(s&&t.includeEdges)if(i&&!u){var L=e.pstyle("curve-style").strValue;if(l=Math.min(I.srcX,I.midX,I.tgtX),g=Math.max(I.srcX,I.midX,I.tgtX),C=Math.min(I.srcY,I.midY,I.tgtY),B=Math.max(I.srcY,I.midY,I.tgtY),l-=v,g+=v,C-=v,B+=v,hC(a,l,C,g,B),L==="haystack"){var M=I.haystackPts;if(M&&M.length===2){if(l=M[0].x,C=M[0].y,g=M[1].x,B=M[1].y,l>g){var U=l;l=g,g=U}if(C>B){var Y=C;C=B,B=Y}hC(a,l-v,C-v,g+v,B+v)}}else if(L==="bezier"||L==="unbundled-bezier"||a4(L,"segments")||a4(L,"taxi")){var H;switch(L){case"bezier":case"unbundled-bezier":H=I.bezierPts;break;case"segments":case"taxi":case"round-segments":case"round-taxi":H=I.linePts;break}if(H!=null)for(var J=0;J<H.length;J++){var K=H[J];l=K.x-v,g=K.x+v,C=K.y-v,B=K.y+v,hC(a,l,C,g,B)}}}else{var O=e.source(),P=O.position(),z=e.target(),AA=z.position();if(l=P.x,g=AA.x,C=P.y,B=AA.y,l>g){var W=l;l=g,g=W}if(C>B){var CA=C;C=B,B=CA}l-=v,g+=v,C-=v,B+=v,hC(a,l,C,g,B)}if(i&&t.includeEdges&&s)uT(a,e,"mid-source"),uT(a,e,"mid-target"),uT(a,e,"source"),uT(a,e,"target");if(i){var tA=e.pstyle("ghost").value==="yes";if(tA){var lA=e.pstyle("ghost-offset-x").pfValue,gA=e.pstyle("ghost-offset-y").pfValue;hC(a,a.x1+lA,a.y1+gA,a.x2+lA,a.y2+gA)}}var aA=n.bodyBounds=n.bodyBounds||{};if(RTA(aA,a),BT(aA,h),CT(aA,1),i)l=a.x1,g=a.x2,C=a.y1,B=a.y2,hC(a,l-b,C-b,g+b,B+b);var NA=n.overlayBounds=n.overlayBounds||{};RTA(NA,a),BT(NA,h),CT(NA,1);var DA=n.labelBounds=n.labelBounds||{};if(DA.all!=null)zQt(DA.all);else DA.all=Qs();if(i&&t.includeLabels){if(t.includeMainLabels)_uA(a,e,null);if(s){if(t.includeSourceLabels)_uA(a,e,"source");if(t.includeTargetLabels)_uA(a,e,"target")}}}if(a.x1=rc(a.x1),a.y1=rc(a.y1),a.x2=rc(a.x2),a.y2=rc(a.y2),a.w=rc(a.x2-a.x1),a.h=rc(a.y2-a.y1),a.w>0&&a.h>0&&p)BT(a,h),CT(a,1);return a},NKA=function(e){var t=0,r=function(a){return(a?1:0)<<t++},i=0;return i+=r(e.incudeNodes),i+=r(e.includeEdges),i+=r(e.includeLabels),i+=r(e.includeMainLabels),i+=r(e.includeSourceLabels),i+=r(e.includeTargetLabels),i+=r(e.includeOverlays),i+=r(e.includeOutlines),i},GKA=function(e){var t=function(n){return Math.round(n)};if(e.isEdge()){var r=e.source().position(),i=e.target().position();return vTA([t(r.x),t(r.y),t(i.x),t(i.y)])}else{var u=e.position();return vTA([t(u.x),t(u.y)])}},ZYA=function(e,t){var r=e._private,i,u=e.isEdge(),a=t==null?VYA:NKA(t),n=a===VYA;if(r.bbCache==null)i=Bpt(e,Rk),r.bbCache=i,r.bbCachePosKey=GKA(e);else i=r.bbCache;if(!n){var o=e.isNode();if(i=Qs(),t.includeNodes&&o||t.includeEdges&&!o)if(t.includeOverlays)u4(i,r.overlayBounds);else u4(i,r.bodyBounds);if(t.includeLabels)if(t.includeMainLabels&&(!u||t.includeSourceLabels&&t.includeTargetLabels))u4(i,r.labelBounds.all);else{if(t.includeMainLabels)u4(i,r.labelBounds.mainRot);if(t.includeSourceLabels)u4(i,r.labelBounds.sourceRot);if(t.includeTargetLabels)u4(i,r.labelBounds.targetRot)}i.w=i.x2-i.x1,i.h=i.y2-i.y1}return i},Rk,VYA,jYA,Ept,mk,Pk,UKA=function(e){e.uppercaseName=cTA(e.name),e.autoName="auto"+e.uppercaseName,e.labelName="label"+e.uppercaseName,e.outerName="outer"+e.uppercaseName,e.uppercaseOuterName=cTA(e.outerName),mk[e.name]=function(){var r=this[0],i=r._private,u=i.cy,a=u._private.styleEnabled;if(r)if(a){if(r.isParent())return r.updateCompoundBounds(),i[e.autoName]||0;var n=r.pstyle(e.name);switch(n.strValue){case"label":return r.recalculateRenderedStyle(),i.rstyle[e.labelName]||0;default:return n.pfValue}}else return 1},mk["outer"+e.uppercaseName]=function(){var r=this[0],i=r._private,u=i.cy,a=u._private.styleEnabled;if(r)if(a){var n=r[e.name](),o=r.pstyle("border-position").value,s;if(o==="center")s=r.pstyle("border-width").pfValue;else if(o==="outside")s=2*r.pstyle("border-width").pfValue;else s=0;var l=2*r.padding();return n+s+l}else return 1},mk["rendered"+e.uppercaseName]=function(){var r=this[0];if(r){var i=r[e.name]();return i*this.cy().zoom()}},mk["rendered"+e.uppercaseOuterName]=function(){var r=this[0];if(r){var i=r[e.outerName]();return i*this.cy().zoom()}}},dpt,Ipt=function(e,t){if(e.isEdge()&&e.takesUpSpace())return t(e)},hpt=function(e,t){if(e.isEdge()&&e.takesUpSpace()){var r=e.cy();return HT(t(e),r.zoom(),r.pan())}},Qpt=function(e,t){if(e.isEdge()&&e.takesUpSpace()){var r=e.cy(),i=r.pan(),u=r.zoom();return t(e).map(function(a){return HT(a,u,i)})}},ppt=function(e){return e.renderer().getControlPoints(e)},fpt=function(e){return e.renderer().getSegmentPoints(e)},mpt=function(e){return e.renderer().getSourceEndpoint(e)},Dpt=function(e){return e.renderer().getTargetEndpoint(e)},ypt=function(e){return e.renderer().getEdgeMidpoint(e)},XYA,wpt=function(e){return"rendered"+e[0].toUpperCase()+e.substr(1)},bpt,vpt,MKA=function(e,t){this.recycle(e,t)},TKA,kpt=".*",YKA,$YA,Fpt,d4,HKA=function(e,t,r,i,u,a,n){if(La(i))u=i,i=null;if(n)if(a==null)a=n;else a=dr({},a,n);var o=Mu(r)?r:r.split(/\s+/);for(var s=0;s<o.length;s++){var l=o[s];if(g4(l))continue;var g=l.match(TKA);if(g){var C=g[1],B=g[2]?g[2]:null,E=t(e,l,C,B,i,u,a);if(E===!1)break}}},AHA=function(e,t){return e.addEventFields(e.context,t),new MKA(t.type,t)},xpt=function(e,t,r){if(Nht(r)){t(e,r);return}else if(Hi(r)){t(e,AHA(e,r));return}var i=Mu(r)?r:r.split(/\s+/);for(var u=0;u<i.length;u++){var a=i[u];if(g4(a))continue;var n=a.match(TKA);if(n){var o=n[1],s=n[2]?n[2]:null,l=AHA(e,{type:o,namespace:s,target:e.context});t(e,l)}}},Spt,nT=function(e){if(tr(e))return new B4(e);else return e},KKA,JKA,Xi,Lpt,OKA=function(e,t){var r=e.cy(),i=r.hasCompoundNodes();function u(l){var g=l.pstyle("z-compound-depth");if(g.value==="auto")return i?l.zDepth():0;else if(g.value==="bottom")return-1;else if(g.value==="top")return baA;return 0}var a=u(e)-u(t);if(a!==0)return a;function n(l){var g=l.pstyle("z-index-compare");if(g.value==="auto")return l.isNode()?1:0;return 0}var o=n(e)-n(t);if(o!==0)return o;var s=e.pstyle("z-index").value-t.pstyle("z-index").value;if(s!==0)return s;return e.poolIndex()-t.poolIndex()},xT,Rpt=function(){var e="undefined",t=(typeof Symbol>"u"?"undefined":oo(Symbol))!=e&&oo(Symbol.iterator)!=e;if(t)xT[Symbol.iterator]=function(){var r=this,i={value:void 0,done:!1},u=0,a=this.length;return YHA({next:function(){if(u<a)i.value=r[u++];else i.value=void 0,i.done=!0;return i}},Symbol.iterator,function(){return this})}},Npt,dT,o0,uw,Gpt,Upt,Mpt,Tpt,l4,T0,tHA=function(e){return function(r){var i=this,u=[];for(var a=0;a<i.length;a++){var n=i[a];if(!n.isNode())continue;var o=!1,s=n.connectedEdges();for(var l=0;l<s.length;l++){var g=s[l],C=g.source(),B=g.target();if(e.noIncomingEdges&&B===n&&C!==n||e.noOutgoingEdges&&C===n&&B!==n){o=!0;break}}if(!o)u.push(n)}return this.spawn(u,!0).filter(r)}},rHA=function(e){return function(t){var r=this,i=[];for(var u=0;u<r.length;u++){var a=r[u];if(!a.isNode())continue;var n=a.connectedEdges();for(var o=0;o<n.length;o++){var s=n[o],l=s.source(),g=s.target();if(e.outgoing&&l===a)i.push(s),i.push(g);else if(e.incoming&&g===a)i.push(s),i.push(l)}}return this.spawn(i,!0).filter(t)}},iHA=function(e){return function(t){var r=this,i=[],u={};for(;;){var a=e.outgoing?r.outgoers():r.incomers();if(a.length===0)break;var n=!1;for(var o=0;o<a.length;o++){var s=a[o],l=s.id();if(!u[l])u[l]=!0,i.push(s),n=!0}if(!n)break;r=a}return this.spawn(i,!0).filter(t)}},s0=function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e===void 0){Qa("A collection must have a reference to the core");return}var u=new yI,a=!1;if(!t)t=[];else if(t.length>0&&Hi(t[0])&&!Tk(t[0])){a=!0;var n=[],o=new rw;for(var s=0,l=t.length;s<l;s++){var g=t[s];if(g.data==null)g.data={};var C=g.data;if(C.id==null)C.id=rKA();else if(e.hasElementWithId(C.id)||o.has(C.id))continue;var B=new YT(e,g,!1);n.push(B),o.add(C.id)}t=n}this.length=0;for(var E=0,d=t.length;E<d;E++){var I=t[E][0];if(I==null)continue;var h=I._private.data.id;if(!r||!u.has(h)){if(r)u.set(h,{index:this.length,ele:I});this[this.length]=I,this.length++}}if(this._private={eles:this,cy:e,get map(){if(this.lazyMap==null)this.rebuildMap();return this.lazyMap},set map(Q){this.lazyMap=Q},rebuildMap:function(){var p=this.lazyMap=new yI,m=this.eles;for(var f=0;f<m.length;f++){var D=m[f];p.set(D.id(),{index:f,ele:D})}}},r)this._private.map=u;if(a&&!i)this.restore()},Pu,Ypt,Kpt,Ou=function(e,t,r,i){var u=Hpt(e,t,r,i);return function(a,n,o){return a+(n-a)*u(o)}},IT,Ppt,_pt,oT=function(e){if(tr(e))return new B4(e);else return e},_KA,gaA,hT,Wpt,qpt,caA,QT,Yo,yk="t",zpt="f",_k,YaA,fE,VT,HaA,Un,jT,To=function(e){if(!(this instanceof To))return new To(e);if(!DaA(e)){Qa("A style must have a core reference");return}this._private={cy:e,coreStyle:{}},this.length=0,this.resetToDefault()},Y0,Zpt,Vpt="single",Wf,Nk,Gk=function(e){var t=this;e=dr({},e);var r=e.container;if(r&&!yT(r)&&yT(r[0]))r=r[0];var i=r?r._cyreg:null;if(i=i||{},i&&i.cy)i.cy.destroy(),i={};var u=i.readies=i.readies||[];if(r)r._cyreg=i;i.cy=t;var a=ao!==void 0&&r!==void 0&&!e.headless,n=e;n.layout=dr({name:a?"grid":"null"},n.layout),n.renderer=dr({name:a?"canvas":"null"},n.renderer);var o=function(E,d,I){if(d!==void 0)return d;else if(I!==void 0)return I;else return E},s=this._private={container:r,ready:!1,options:n,elements:new s0(this),listeners:[],aniEles:new s0(this),data:n.data||{},scratch:{},layout:null,renderer:null,destroyed:!1,notificationsEnabled:!0,minZoom:0.00000000000000000000000000000000000000000000000001,maxZoom:100000000000000000000000000000000000000000000000000,zoomingEnabled:o(!0,n.zoomingEnabled),userZoomingEnabled:o(!0,n.userZoomingEnabled),panningEnabled:o(!0,n.panningEnabled),userPanningEnabled:o(!0,n.userPanningEnabled),boxSelectionEnabled:o(!0,n.boxSelectionEnabled),autolock:o(!1,n.autolock,n.autolockNodes),autoungrabify:o(!1,n.autoungrabify,n.autoungrabifyNodes),autounselectify:o(!1,n.autounselectify),styleEnabled:n.styleEnabled===void 0?a:n.styleEnabled,zoom:ht(n.zoom)?n.zoom:1,pan:{x:Hi(n.pan)&&ht(n.pan.x)?n.pan.x:0,y:Hi(n.pan)&&ht(n.pan.y)?n.pan.y:0},animation:{current:[],queue:[]},hasCompoundNodes:!1,multiClickDebounceTime:o(250,n.multiClickDebounceTime)};this.createEmitter(),this.selectionType(n.selectionType),this.zoomRange({min:n.minZoom,max:n.maxZoom});var l=function(E,d){var I=E.some(Mht);if(I)return iw.all(E).then(d);else d(E)};if(s.styleEnabled)t.setStyle([]);var g=dr({},n,n.renderer);t.initRenderer(g);var C=function(E,d,I){t.notifications(!1);var h=t.mutableElements();if(h.length>0)h.remove();if(E!=null){if(Hi(E)||Mu(E))t.add(E)}t.one("layoutready",function(p){t.notifications(!0),t.emit(p),t.one("load",d),t.emitAndNotify("load")}).one("layoutstop",function(){t.one("done",I),t.emit("done")});var Q=dr({},t._private.options.layout);Q.eles=t.elements(),t.layout(Q).run()};l([n.style,n.elements],function(B){var E=B[0],d=B[1];if(s.styleEnabled)t.style().append(E);C(d,function(){if(t.startAnimationLoop(),s.ready=!0,La(n.ready))t.on("ready",n.ready);for(var I=0;I<u.length;I++){var h=u[I];t.on("ready",h)}if(i)i.readies=[];t.emit("ready")},n.done)})},ST,jpt,Xpt,Hy=function(e){return e.scratch("breadthfirst")},gHA=function(e,t){return e.scratch("breadthfirst",t)},$pt,Aft,quA,eft,tft=function(e,t,r){var i=r.eles.edges(),u=r.eles.nodes(),a=Qs(r.boundingBox?r.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),n={isCompound:e.hasCompoundNodes(),layoutNodes:[],idToIndex:{},nodeSize:u.size(),graphSet:[],indexToGraph:[],layoutEdges:[],edgeSize:i.size(),temperature:r.initialTemp,clientWidth:a.w,clientHeight:a.h,boundingBox:a},o=r.eles.components(),s={};for(var l=0;l<o.length;l++){var g=o[l];for(var C=0;C<g.length;C++){var B=g[C];s[B.id()]=l}}for(var l=0;l<n.nodeSize;l++){var E=u[l],d=E.layoutDimensions(r),I={};I.isLocked=E.locked(),I.id=E.data("id"),I.parentId=E.data("parent"),I.cmptId=s[E.id()],I.children=[],I.positionX=E.position("x"),I.positionY=E.position("y"),I.offsetX=0,I.offsetY=0,I.height=d.w,I.width=d.h,I.maxX=I.positionX+I.width/2,I.minX=I.positionX-I.width/2,I.maxY=I.positionY+I.height/2,I.minY=I.positionY-I.height/2,I.padLeft=parseFloat(E.style("padding")),I.padRight=parseFloat(E.style("padding")),I.padTop=parseFloat(E.style("padding")),I.padBottom=parseFloat(E.style("padding")),I.nodeRepulsion=La(r.nodeRepulsion)?r.nodeRepulsion(E):r.nodeRepulsion,n.layoutNodes.push(I),n.idToIndex[I.id]=l}var h=[],Q=0,p=-1,m=[];for(var l=0;l<n.nodeSize;l++){var E=n.layoutNodes[l],f=E.parentId;if(f!=null)n.layoutNodes[n.idToIndex[f]].children.push(E.id);else h[++p]=E.id,m.push(E.id)}n.graphSet.push(m);while(Q<=p){var D=h[Q++],w=n.idToIndex[D],B=n.layoutNodes[w],b=B.children;if(b.length>0){n.graphSet.push(b);for(var l=0;l<b.length;l++)h[++p]=b[l]}}for(var l=0;l<n.graphSet.length;l++){var k=n.graphSet[l];for(var C=0;C<k.length;C++){var v=n.idToIndex[k[C]];n.indexToGraph[v]=l}}for(var l=0;l<n.edgeSize;l++){var S=i[l],x={};x.id=S.data("id"),x.sourceId=S.data("source"),x.targetId=S.data("target");var F=La(r.idealEdgeLength)?r.idealEdgeLength(S):r.idealEdgeLength,T=La(r.edgeElasticity)?r.edgeElasticity(S):r.edgeElasticity,R=n.idToIndex[x.sourceId],L=n.idToIndex[x.targetId],M=n.indexToGraph[R],U=n.indexToGraph[L];if(M!=U){var Y=rft(x.sourceId,x.targetId,n),H=n.graphSet[Y],J=0,I=n.layoutNodes[R];while(H.indexOf(I.id)===-1)I=n.layoutNodes[n.idToIndex[I.parentId]],J++;I=n.layoutNodes[L];while(H.indexOf(I.id)===-1)I=n.layoutNodes[n.idToIndex[I.parentId]],J++;F*=J*r.nestingFactor}x.idealLength=F,x.elasticity=T,n.layoutEdges.push(x)}return n},rft=function(e,t,r){var i=ZKA(e,t,0,r);if(2>i.count)return 0;else return i.graph},ZKA=function(e,t,r,i){var u=i.graphSet[r];if(-1<u.indexOf(e)&&-1<u.indexOf(t))return{count:2,graph:r};var a=0;for(var n=0;n<u.length;n++){var o=u[n],s=i.idToIndex[o],l=i.layoutNodes[s].children;if(l.length===0)continue;var g=i.indexToGraph[i.idToIndex[l[0]]],C=ZKA(e,t,g,i);if(C.count===0)continue;else if(C.count===1){if(a++,a===2)break}else return C}return{count:a,graph:r}},ift,uft=function(e,t){var{clientWidth:r,clientHeight:i}=e;for(var u=0;u<e.nodeSize;u++){var a=e.layoutNodes[u];if(a.children.length===0&&!a.isLocked)a.positionX=Math.random()*r,a.positionY=Math.random()*i}},VKA=function(e,t,r){var i=e.boundingBox,u={x1:1/0,x2:-1/0,y1:1/0,y2:-1/0};if(t.boundingBox)r.forEach(function(a){var n=e.layoutNodes[e.idToIndex[a.data("id")]];u.x1=Math.min(u.x1,n.positionX),u.x2=Math.max(u.x2,n.positionX),u.y1=Math.min(u.y1,n.positionY),u.y2=Math.max(u.y2,n.positionY)}),u.w=u.x2-u.x1,u.h=u.y2-u.y1;return function(a,n){var o=e.layoutNodes[e.idToIndex[a.data("id")]];if(t.boundingBox){var s=u.w===0?0.5:(o.positionX-u.x1)/u.w,l=u.h===0?0.5:(o.positionY-u.y1)/u.h;return{x:i.x1+s*i.w,y:i.y1+l*i.h}}else return{x:o.positionX,y:o.positionY}}},aft=function(e,t,r){var i=r.layout,u=r.eles.nodes(),a=VKA(e,r,u);if(u.positions(a),e.ready!==!0)e.ready=!0,i.one("layoutready",r.ready),i.emit({type:"layoutready",layout:this})},nft=function(e,t,r){oft(e,t),gft(e),cft(e,t),Cft(e),Bft(e)},oft=function(e,t){for(var r=0;r<e.graphSet.length;r++){var i=e.graphSet[r],u=i.length;for(var a=0;a<u;a++){var n=e.layoutNodes[e.idToIndex[i[a]]];for(var o=a+1;o<u;o++){var s=e.layoutNodes[e.idToIndex[i[o]]];sft(n,s,e,t)}}}},cHA=function(e){return-e+2*e*Math.random()},sft=function(e,t,r,i){var u=e.cmptId,a=t.cmptId;if(u!==a&&!r.isCompound)return;var n=t.positionX-e.positionX,o=t.positionY-e.positionY,s=1;if(n===0&&o===0)n=cHA(s),o=cHA(s);var l=lft(e,t,n,o);if(l>0)var g=i.nodeOverlap*l,C=Math.sqrt(n*n+o*o),B=g*n/C,E=g*o/C;else var d=LT(e,n,o),I=LT(t,-1*n,-1*o),h=I.x-d.x,Q=I.y-d.y,p=h*h+Q*Q,C=Math.sqrt(p),g=(e.nodeRepulsion+t.nodeRepulsion)/p,B=g*h/C,E=g*Q/C;if(!e.isLocked)e.offsetX-=B,e.offsetY-=E;if(!t.isLocked)t.offsetX+=B,t.offsetY+=E;return},lft=function(e,t,r,i){if(r>0)var u=e.maxX-t.minX;else var u=t.maxX-e.minX;if(i>0)var a=e.maxY-t.minY;else var a=t.maxY-e.minY;if(u>=0&&a>=0)return Math.sqrt(u*u+a*a);else return 0},LT=function(e,t,r){var{positionX:i,positionY:u}=e,a=e.height||1,n=e.width||1,o=r/t,s=a/n,l={};if(t===0&&0<r)return l.x=i,l.y=u+a/2,l;if(t===0&&0>r)return l.x=i,l.y=u+a/2,l;if(0<t&&-1*s<=o&&o<=s)return l.x=i+n/2,l.y=u+n*r/2/t,l;if(0>t&&-1*s<=o&&o<=s)return l.x=i-n/2,l.y=u-n*r/2/t,l;if(0<r&&(o<=-1*s||o>=s))return l.x=i+a*t/2/r,l.y=u+a/2,l;if(0>r&&(o<=-1*s||o>=s))return l.x=i-a*t/2/r,l.y=u-a/2,l;return l},gft=function(e,t){for(var r=0;r<e.edgeSize;r++){var i=e.layoutEdges[r],u=e.idToIndex[i.sourceId],a=e.layoutNodes[u],n=e.idToIndex[i.targetId],o=e.layoutNodes[n],s=o.positionX-a.positionX,l=o.positionY-a.positionY;if(s===0&&l===0)continue;var g=LT(a,s,l),C=LT(o,-1*s,-1*l),B=C.x-g.x,E=C.y-g.y,d=Math.sqrt(B*B+E*E),I=Math.pow(i.idealLength-d,2)/i.elasticity;if(d!==0)var h=I*B/d,Q=I*E/d;else var h=0,Q=0;if(!a.isLocked)a.offsetX+=h,a.offsetY+=Q;if(!o.isLocked)o.offsetX-=h,o.offsetY-=Q}},cft=function(e,t){if(t.gravity===0)return;var r=1;for(var i=0;i<e.graphSet.length;i++){var u=e.graphSet[i],a=u.length;if(i===0)var n=e.clientHeight/2,o=e.clientWidth/2;else var s=e.layoutNodes[e.idToIndex[u[0]]],l=e.layoutNodes[e.idToIndex[s.parentId]],{positionX:n,positionY:o}=l;for(var g=0;g<a;g++){var C=e.layoutNodes[e.idToIndex[u[g]]];if(C.isLocked)continue;var B=n-C.positionX,E=o-C.positionY,d=Math.sqrt(B*B+E*E);if(d>r){var I=t.gravity*B/d,h=t.gravity*E/d;C.offsetX+=I,C.offsetY+=h}}}},Cft=function(e,t){var r=[],i=0,u=-1;r.push.apply(r,e.graphSet[0]),u+=e.graphSet[0].length;while(i<=u){var a=r[i++],n=e.idToIndex[a],o=e.layoutNodes[n],s=o.children;if(0<s.length&&!o.isLocked){var{offsetX:l,offsetY:g}=o;for(var C=0;C<s.length;C++){var B=e.layoutNodes[e.idToIndex[s[C]]];B.offsetX+=l,B.offsetY+=g,r[++u]=s[C]}o.offsetX=0,o.offsetY=0}}},Bft=function(e,t){for(var r=0;r<e.nodeSize;r++){var i=e.layoutNodes[r];if(0<i.children.length)i.maxX=void 0,i.minX=void 0,i.maxY=void 0,i.minY=void 0}for(var r=0;r<e.nodeSize;r++){var i=e.layoutNodes[r];if(0<i.children.length||i.isLocked)continue;var u=Eft(i.offsetX,i.offsetY,e.temperature);i.positionX+=u.x,i.positionY+=u.y,i.offsetX=0,i.offsetY=0,i.minX=i.positionX-i.width,i.maxX=i.positionX+i.width,i.minY=i.positionY-i.height,i.maxY=i.positionY+i.height,jKA(i,e)}for(var r=0;r<e.nodeSize;r++){var i=e.layoutNodes[r];if(0<i.children.length&&!i.isLocked)i.positionX=(i.maxX+i.minX)/2,i.positionY=(i.maxY+i.minY)/2,i.width=i.maxX-i.minX,i.height=i.maxY-i.minY}},Eft=function(e,t,r){var i=Math.sqrt(e*e+t*t);if(i>r)var u={x:r*e/i,y:r*t/i};else var u={x:e,y:t};return u},jKA=function(e,t){var r=e.parentId;if(r==null)return;var i=t.layoutNodes[t.idToIndex[r]],u=!1;if(i.maxX==null||e.maxX+i.padRight>i.maxX)i.maxX=e.maxX+i.padRight,u=!0;if(i.minX==null||e.minX-i.padLeft<i.minX)i.minX=e.minX-i.padLeft,u=!0;if(i.maxY==null||e.maxY+i.padBottom>i.maxY)i.maxY=e.maxY+i.padBottom,u=!0;if(i.minY==null||e.minY-i.padTop<i.minY)i.minY=e.minY-i.padTop,u=!0;if(u)return jKA(i,t);return},CHA=function(e,t){var r=e.layoutNodes,i=[];for(var u=0;u<r.length;u++){var a=r[u],n=a.cmptId,o=i[n]=i[n]||[];o.push(a)}var s=0;for(var u=0;u<i.length;u++){var l=i[u];if(!l)continue;l.x1=1/0,l.x2=-1/0,l.y1=1/0,l.y2=-1/0;for(var g=0;g<l.length;g++){var C=l[g];l.x1=Math.min(l.x1,C.positionX-C.width/2),l.x2=Math.max(l.x2,C.positionX+C.width/2),l.y1=Math.min(l.y1,C.positionY-C.height/2),l.y2=Math.max(l.y2,C.positionY+C.height/2)}l.w=l.x2-l.x1,l.h=l.y2-l.y1,s+=l.w*l.h}i.sort(function(Q,p){return p.w*p.h-Q.w*Q.h});var B=0,E=0,d=0,I=0,h=Math.sqrt(s)*e.clientWidth/e.clientHeight;for(var u=0;u<i.length;u++){var l=i[u];if(!l)continue;for(var g=0;g<l.length;g++){var C=l[g];if(!C.isLocked)C.positionX+=B-l.x1,C.positionY+=E-l.y1}if(B+=l.w+t.componentSpacing,d+=l.w+t.componentSpacing,I=Math.max(I,l.h),d>h)E+=I+t.componentSpacing,B=0,d=0,I=0}},dft,Ift,hft,Qft,pft,BHA=function(){},EHA=function(){throw Error("A headless instance can not render images")},JaA,zf,RT,CaA,BaA,hE,tc,dHA,IHA,Kf,pT,DI,Uf,Yf,dE,Ky,sT,tJA,rJA,EaA,daA,hHA,QHA=function(e,t,r){r.x=t.x-e.x,r.y=t.y-e.y,r.len=Math.sqrt(r.x*r.x+r.y*r.y),r.nx=r.x/r.len,r.ny=r.y/r.len,r.ang=Math.atan2(r.ny,r.nx)},fft=function(e,t){t.x=e.x*-1,t.y=e.y*-1,t.nx=e.nx*-1,t.ny=e.ny*-1,t.ang=e.ang>0?-(Math.PI-e.ang):Math.PI+e.ang},mft=function(e,t,r,i,u){if(e!==hHA?QHA(t,e,hE):fft(tc,hE),QHA(t,r,tc),dHA=hE.nx*tc.ny-hE.ny*tc.nx,IHA=hE.nx*tc.nx-hE.ny*-tc.ny,DI=Math.asin(Math.max(-1,Math.min(1,dHA))),Math.abs(DI)<0.000001){CaA=t.x,BaA=t.y,Yf=Ky=0;return}if(Kf=1,pT=!1,IHA<0)if(DI<0)DI=Math.PI+DI;else DI=Math.PI-DI,Kf=-1,pT=!0;else if(DI>0)Kf=-1,pT=!0;if(t.radius!==void 0)Ky=t.radius;else Ky=i;if(Uf=DI/2,sT=Math.min(hE.len/2,tc.len/2),u)if(dE=Math.abs(Math.cos(Uf)*Ky/Math.sin(Uf)),dE>sT)dE=sT,Yf=Math.abs(dE*Math.sin(Uf)/Math.cos(Uf));else Yf=Ky;else dE=Math.min(sT,Ky),Yf=Math.abs(dE*Math.sin(Uf)/Math.cos(Uf));EaA=t.x+tc.nx*dE,daA=t.y+tc.ny*dE,CaA=EaA-tc.ny*Yf*Kf,BaA=daA+tc.nx*Yf*Kf,tJA=t.x+hE.nx*dE,rJA=t.y+hE.ny*dE,hHA=t},Uk=0.01,Dft,H0,Wk,PaA,mE,aJA=function(e,t){var r=Math.atan(t/e);if(e===0&&r<0)r=r*-1;return r},nJA=function(e,t){var r=t.x-e.x,i=t.y-e.y;return aJA(r,i)},wft=function(e,t,r,i){var u=xk(0,i-0.001,1),a=xk(0,i+0.001,1),n=zy(e,t,r,u),o=zy(e,t,r,a);return nJA(n,o)},oJA,pHA=28,fHA=!1,$T,AY,sJA,lJA,gJA=function(e,t){var r=e[0];if(!r||r._private.grabbed===t)return;r._private.grabbed=t,e.updateStyle(!1)},bft=function(e){gJA(e,!0)},vft=function(e){gJA(e,!1)},nw,vI,qk,mHA=function(e,t,r){var i=e.beforeRenderCallbacks;for(var u=0;u<i.length;u++)i[u].fn(t,r)},kft=function(e){this.init(e)},cJA,ow,zuA=16.666666666666668,CJA,Fft,DHA=25,lT=50,fT=-4,IaA=3,BJA=7.99,xft=8,Sft=1024,Lft=1024,Rft=1024,Nft=0.2,Gft=0.8,Uft=10,Mft=0.15,Tft=0.1,Yft=0.9,Hft=0.9,Kft=100,Jft=1,qy,Oft,Dk=function(e,t){var r=this;r.renderer=e,r.onDequeues=[];var i=Oft(t);dr(r,i),r.lookup=new Fft(i.getKey,i.doesEleInvalidateKey),r.setupDequeueing()},so,Pft=1,wk=-4,NT=2,_ft=3.99,Wft=50,qft=50,zft=0.15,Zft=0.1,Vft=0.9,jft=0.9,Xft=1,yHA=250,$ft=16000000,wHA=32767,A3t=!0,EJA=function(e){var t=this,r=t.renderer=e,i=r.cy;t.layersByLevel={},t.firstGet=!0,t.lastInvalidationTime=wI()-2*yHA,t.skipping=!1,t.eleTxrDeqs=i.collection(),t.scheduleElementRefinement=Jk(function(){t.refineElementTextures(t.eleTxrDeqs),t.eleTxrDeqs.unmerge(t.eleTxrDeqs)},qft),r.beforeRender(function(a,n){if(n-t.lastInvalidationTime<=yHA)t.skipping=!0;else t.skipping=!1},r.beforeRenderPriorities.lyrTxrSkip);var u=function(n,o){return o.reqs-n.reqs};t.layersQueue=new Ok(u),t.setupDequeueing()},g0,bHA=0,e3t,dJA,vHA,DE,a3t=function(){return 0},n3t=function(e,t){return e.getTextAngle(t,null)},o3t=function(e,t){return e.getTextAngle(t,"source")},s3t=function(e,t){return e.getTextAngle(t,"target")},l3t=function(e,t){return t.effectiveOpacity()},ZuA=function(e,t){return t.pstyle("text-opacity").pfValue*t.effectiveOpacity()},kI,IJA=function(e){if(!["overlay","underlay"].includes(e))throw Error("Invalid state");return function(t,r){if(!r.visible())return;var i=r.pstyle("".concat(e,"-opacity")).value;if(i===0)return;var u=this,a=u.usePaths(),n=r._private.rscratch,o=r.pstyle("".concat(e,"-padding")).pfValue,s=2*o,l=r.pstyle("".concat(e,"-color")).value;if(t.lineWidth=s,n.edgeType==="self"&&!a)t.lineCap="butt";else t.lineCap="round";u.colorStrokeStyle(t,l[0],l[1],l[2],i),u.drawEdgePath(r,t,n.allpts,"solid")}},_aA,Zf,p4,hJA=function(e){if(!["overlay","underlay"].includes(e))throw Error("Invalid state");return function(t,r,i,u,a){var n=this;if(!r.visible())return;var o=r.pstyle("".concat(e,"-padding")).pfValue,s=r.pstyle("".concat(e,"-opacity")).value,l=r.pstyle("".concat(e,"-color")).value,g=r.pstyle("".concat(e,"-shape")).value,C=r.pstyle("".concat(e,"-corner-radius")).value;if(s>0){if(i=i||r.position(),u==null||a==null){var B=r.padding();u=r.width()+2*B,a=r.height()+2*B}n.colorFillStyle(t,l[0],l[1],l[2],s),n.nodeShapes[g].draw(t,i.x,i.y,u+o*2,a+o*2,C),t.fill()}}},ps,c3t=100,hk,SHA,v3t,k3t,x3t,S3t,L3t=`
float circleSD(vec2 p, float r) {
return distance(vec2(0), p) - r; // signed distance
}
`,R3t=`
float rectangleSD(vec2 p, vec2 b) {
vec2 d = abs(p)-b;
return distance(vec2(0),max(d,0.0)) + min(max(d.x,d.y),0.0);
}
`,N3t=`
float roundRectangleSD(vec2 p, vec2 b, vec4 cr) {
cr.xy = (p.x > 0.0) ? cr.xy : cr.zw;
cr.x = (p.y > 0.0) ? cr.x : cr.y;
vec2 q = abs(p) - b + cr.x;
return min(max(q.x, q.y), 0.0) + distance(vec2(0), max(q, 0.0)) - cr.x;
}
`,G3t=`
float ellipseSD(vec2 p, vec2 ab) {
p = abs( p ); // symmetry
// find root with Newton solver
vec2 q = ab*(p-ab);
float w = (q.x<q.y)? 1.570796327 : 0.0;
for( int i=0; i<5; i++ ) {
vec2 cs = vec2(cos(w),sin(w));
vec2 u = ab*vec2( cs.x,cs.y);
vec2 v = ab*vec2(-cs.y,cs.x);
w = w + dot(p-u,v)/(dot(p-u,u)+dot(v,v));
}
// compute final point and distance
float d = length(p-ab*vec2(cos(w),sin(w)));
// return signed distance
return (dot(p/ab,p/ab)>1.0) ? d : -d;
}
`,bk,GT,juA=0,NHA=1,GHA=2,XuA=3,Oy=4,gT=5,Qk=6,pk=7,U3t,fJA,$uA=function(e,t){return function(r){var i=e(r),u=mJA(r,t);if(u.length>1)return u.map(function(a,n){return"".concat(i,"_").concat(n)});return i}},AaA=function(e,t){return function(r,i){var u=e(r);if(typeof i==="string"){var a=i.indexOf("_");if(a>0){var n=Number(i.substring(a+1)),o=mJA(r,t),s=u.h/o.length,l=s*n,g=u.y1+l;return{x1:u.x1,w:u.w,y1:g,h:s,yOffset:l}}}return u}},f4,UHA,MHA,QaA,paA,wJA,i4,zk,vJA,z3t,oi,Z3t,V3t,j3t,FJA,xJA,faA=function(){if(arguments.length===2)return LJA.apply(null,arguments);else if(arguments.length===3)return SJA.apply(null,arguments);else if(arguments.length===4)return $3t.apply(null,arguments);else if(arguments.length===5)return X3t.apply(null,arguments);else Qa("Invalid extension access syntax")},UT=function(){if(!(this instanceof UT))return new UT;this.length=0},qf,Amt="3.34.2",uc=function(e){if(e===void 0)e={};if(Hi(e))return new Gk(e);else if(tr(e))return faA.apply(faA,arguments)};var qaA=_(()=>{ao=typeof window>"u"?null:window,gTA=ao?ao.navigator:null;ao&&ao.document;xht=oo(""),KHA=oo({}),Sht=oo(function(){}),Lht=typeof HTMLElement>"u"?"undefined":oo(HTMLElement),yaA=Xy(function(A){return A.replace(/([A-Z])/g,function(e){return"-"+e.toLowerCase()})}),MT=Xy(function(A){return A.replace(/(-\w)/g,function(e){return e[1].toUpperCase()})}),_HA=Xy(function(A,e){return A+e[0].toUpperCase()+e.substring(1)},function(A,e){return A+"$"+e}),Yht="rgb[a]?\\(("+no+"[%]?)\\s*,\\s*("+no+"[%]?)\\s*,\\s*("+no+"[%]?)(?:\\s*,\\s*("+no+"))?\\)",Hht="rgb[a]?\\((?:"+no+"[%]?)\\s*,\\s*(?:"+no+"[%]?)\\s*,\\s*(?:"+no+"[%]?)(?:\\s*,\\s*(?:"+no+"))?\\)",Kht="hsl[a]?\\(("+no+")\\s*,\\s*("+no+"[%])\\s*,\\s*("+no+"[%])(?:\\s*,\\s*("+no+"))?\\)",Jht="hsl[a]?\\((?:"+no+")\\s*,\\s*(?:"+no+"[%])\\s*,\\s*(?:"+no+"[%])(?:\\s*,\\s*(?:"+no+"))?\\)",dr=Object.assign!=null?Object.assign.bind(Object):function(A){var e=arguments;for(var t=1;t<e.length;t++){var r=e[t];if(r==null)continue;var i=Object.keys(r);for(var u=0;u<i.length;u++){var a=i[u];A[a]=r[a]}}return A},Vht={transparent:[0,0,0,0],aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],grey:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]},$M=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};aQt=uQt(),Jk=Yk(aQt),HiA=ao?ao.performance:null,jHA=HiA&&HiA.now?function(){return HiA.now()}:function(){return Date.now()},nQt=function(){if(ao){if(ao.requestAnimationFrame)return function(A){ao.requestAnimationFrame(A)};else if(ao.mozRequestAnimationFrame)return function(A){ao.mozRequestAnimationFrame(A)};else if(ao.webkitRequestAnimationFrame)return function(A){ao.webkitRequestAnimationFrame(A)};else if(ao.msRequestAnimationFrame)return function(A){ao.msRequestAnimationFrame(A)}}return function(A){if(A)setTimeout(function(){A(jHA())},16.666666666666668)}}(),wI=jHA;CQt=console.warn!=null,BQt=console.trace!=null,baA=Number.MAX_SAFE_INTEGER||9007199254740991,IQt={},QQt=function(){function A(){I4(this,A),this._obj={}}return h4(A,[{key:"set",value:function(t,r){return this._obj[t]=r,this}},{key:"delete",value:function(t){return this._obj[t]=void 0,this}},{key:"clear",value:function(){this._obj={}}},{key:"has",value:function(t){return this._obj[t]!==void 0}},{key:"get",value:function(t){return this._obj[t]}}])}(),yI=typeof Map<"u"?Map:QQt,fQt=function(){function A(e){if(I4(this,A),this._obj=Object.create(null),this.size=0,e!=null){var t;if(e.instanceString!=null&&e.instanceString()===this.instanceString())t=e.toArray();else t=e;for(var r=0;r<t.length;r++)this.add(t[r])}}return h4(A,[{key:"instanceString",value:function(){return"set"}},{key:"add",value:function(t){var r=this._obj;if(r[t]!==1)r[t]=1,this.size++}},{key:"delete",value:function(t){var r=this._obj;if(r[t]===1)r[t]=0,this.size--}},{key:"clear",value:function(){this._obj=Object.create(null)}},{key:"has",value:function(t){return this._obj[t]===1}},{key:"toArray",value:function(){var t=this;return Object.keys(this._obj).filter(function(r){return t.has(r)})}},{key:"forEach",value:function(t,r){return this.toArray().forEach(t,r)}}])}(),rw=(typeof Set>"u"?"undefined":oo(Set))!==pQt?Set:fQt,Fk={breadthFirstSearch:xTA({bfs:!0}),depthFirstSearch:xTA({dfs:!0})};Fk.bfs=Fk.breadthFirstSearch;Fk.dfs=Fk.depthFirstSearch;cT={exports:{}},mQt=cT.exports;wQt=yQt(),Ok=Yk(wQt),bQt=l0({root:null,weight:function(e){return 1},directed:!1}),vQt={dijkstra:function(e){if(!Hi(e)){var t=arguments;e={root:t[0],weight:t[1],directed:t[2]}}var r=bQt(e),{root:i,weight:u,directed:a}=r,n=this,o=u,s=tr(i)?this.filter(i)[0]:i[0],l={},g={},C={},B=this.byGroup(),{nodes:E,edges:d}=B;d.unmergeBy(function(R){return R.isLoop()});var I=function(L){return l[L.id()]},h=function(L,M){l[L.id()]=M,Q.updateItem(L)},Q=new Ok(function(R,L){return I(R)-I(L)});for(var p=0;p<E.length;p++){var m=E[p];l[m.id()]=m.same(s)?0:1/0,Q.push(m)}var f=function(L,M){var U=(a?L.edgesTo(M):L.edgesWith(M)).intersect(d),Y=1/0,H;for(var J=0;J<U.length;J++){var K=U[J],O=o(K);if(O<Y||!H)Y=O,H=K}return{edge:H,dist:Y}};while(Q.size()>0){var D=Q.pop(),w=I(D),b=D.id();if(C[b]=w,w===1/0)continue;var k=D.neighborhood().intersect(E);for(var v=0;v<k.length;v++){var S=k[v],x=S.id(),F=f(D,S),T=w+F.dist;if(T<I(S))h(S,T),g[x]={node:D,edge:F.edge}}}return{distanceTo:function(L){var M=tr(L)?E.filter(L)[0]:L[0];return C[M.id()]},pathTo:function(L){var M=tr(L)?E.filter(L)[0]:L[0],U=[],Y=M,H=Y.id();if(M.length>0){U.unshift(M);while(g[H]){var J=g[H];U.unshift(J.edge),U.unshift(J.node),Y=J.node,H=Y.id()}}return n.spawn(U)}}}},kQt={kruskal:function(e){e=e||function(p){return 1};var t=this.byGroup(),{nodes:r,edges:i}=t,u=r.length,a=Array(u),n=r,o=function(m){for(var f=0;f<a.length;f++){var D=a[f];if(D.has(m))return f}};for(var s=0;s<u;s++)a[s]=this.spawn(r[s]);var l=i.sort(function(p,m){return e(p)-e(m)});for(var g=0;g<l.length;g++){var C=l[g],B=C.source()[0],E=C.target()[0],d=o(B),I=o(E),h=a[d],Q=a[I];if(d!==I)n.merge(C),h.merge(Q),a.splice(I,1)}return n}},FQt=l0({root:null,goal:null,weight:function(e){return 1},heuristic:function(e){return 0},directed:!1}),xQt={aStar:function(e){var t=this.cy(),r=FQt(e),{root:i,goal:u,heuristic:a,directed:n,weight:o}=r;i=t.collection(i)[0],u=t.collection(u)[0];var s=i.id(),l=u.id(),g={},C={},B={},E=new Ok(function(H,J){return C[H.id()]-C[J.id()]}),d=new rw,I={},h={},Q=function(J,K){E.push(J),d.add(K)},p,m,f=function(){p=E.pop(),m=p.id(),d.delete(m)},D=function(J){return d.has(J)};Q(i,s),g[s]=0,C[s]=a(i);var w=0;while(E.size()>0){if(f(),w++,m===l){var b=[],k=u,v=l,S=h[v];for(;;){if(b.unshift(k),S!=null)b.unshift(S);if(k=I[v],k==null)break;v=k.id(),S=h[v]}return{found:!0,distance:g[m],path:this.spawn(b),steps:w}}B[m]=!0;var x=p._private.edges;for(var F=0;F<x.length;F++){var T=x[F];if(!this.hasElementWithId(T.id()))continue;if(n&&T.data("source")!==m)continue;var R=T.source(),L=T.target(),M=R.id()!==m?R:L,U=M.id();if(!this.hasElementWithId(U))continue;if(B[U])continue;var Y=g[m]+o(T);if(!D(U)){g[U]=Y,C[U]=Y+a(M),Q(M,U),I[U]=p,h[U]=T;continue}if(Y<g[U])g[U]=Y,C[U]=Y+a(M),E.updateItem(M),I[U]=p,h[U]=T}}return{found:!1,distance:void 0,path:void 0,steps:w}}},SQt=l0({weight:function(e){return 1},directed:!1}),LQt={floydWarshall:function(e){var t=this.cy(),r=SQt(e),{weight:i,directed:u}=r,a=i,n=this.byGroup(),{nodes:o,edges:s}=n,l=o.length,g=l*l,C=function(O){return o.indexOf(O)},B=function(O){return o[O]},E=Array(g);for(var d=0;d<g;d++){var I=d%l,h=(d-I)/l;if(h===I)E[d]=0;else E[d]=1/0}var Q=Array(g),p=Array(g);for(var m=0;m<s.length;m++){var f=s[m],D=f.source()[0],w=f.target()[0];if(D===w)continue;var b=C(D),k=C(w),v=b*l+k,S=a(f);if(E[v]>S)E[v]=S,Q[v]=k,p[v]=f;if(!u){var x=k*l+b;if(!u&&E[x]>S)E[x]=S,Q[x]=b,p[x]=f}}for(var F=0;F<l;F++)for(var T=0;T<l;T++){var R=T*l+F;for(var L=0;L<l;L++){var M=T*l+L,U=F*l+L;if(E[R]+E[U]<E[M])E[M]=E[R]+E[U],Q[M]=Q[R]}}var Y=function(O){return(tr(O)?t.filter(O):O)[0]},H=function(O){return C(Y(O))},J={distance:function(O,P){var z=H(O),AA=H(P);return E[z*l+AA]},path:function(O,P){var z=H(O),AA=H(P),W=B(z);if(z===AA)return W.collection();if(Q[z*l+AA]==null)return t.collection();var CA=t.collection(),tA=z,lA;CA.merge(W);while(z!==AA)tA=z,z=Q[z*l+AA],lA=p[tA*l+z],CA.merge(lA),CA.merge(B(z));return CA}};return J}},RQt=l0({weight:function(e){return 1},directed:!1,root:null}),NQt={bellmanFord:function(e){var t=this,r=RQt(e),{weight:i,directed:u,root:a}=r,n=i,o=this,s=this.cy(),l=this.byGroup(),{edges:g,nodes:C}=l,B=C.length,E=new yI,d=!1,I=[];a=s.collection(a)[0],g.unmergeBy(function(qA){return qA.isLoop()});var h=g.length,Q=function(IA){var bA=E.get(IA.id());if(!bA)bA={},E.set(IA.id(),bA);return bA},p=function(IA){return(tr(IA)?s.$(IA):IA)[0]},m=function(IA){return Q(p(IA)).dist},f=function(IA){var bA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:a,SA=p(IA),EA=[],nA=SA;for(;;){if(nA==null)return t.spawn();var eA=Q(nA),{edge:BA,pred:yA}=eA;if(EA.unshift(nA[0]),nA.same(bA)&&EA.length>0)break;if(BA!=null)EA.unshift(BA);nA=yA}return o.spawn(EA)};for(var D=0;D<B;D++){var w=C[D],b=Q(w);if(w.same(a))b.dist=0;else b.dist=1/0;b.pred=null,b.edge=null}var k=!1,v=function(IA,bA,SA,EA,nA,eA){var BA=EA.dist+eA;if(BA<nA.dist&&!SA.same(EA.edge))nA.dist=BA,nA.pred=IA,nA.edge=SA,k=!0};for(var S=1;S<B;S++){k=!1;for(var x=0;x<h;x++){var F=g[x],T=F.source(),R=F.target(),L=n(F),M=Q(T),U=Q(R);if(v(T,R,F,M,U,L),!u)v(R,T,F,U,M,L)}if(!k)break}if(k){var Y=[];for(var H=0;H<h;H++){var J=g[H],K=J.source(),O=J.target(),P=n(J),z=Q(K).dist,AA=Q(O).dist;if(z+P<AA||!u&&AA+P<z){if(!d)du("Graph contains a negative weight cycle for Bellman-Ford"),d=!0;if(e.findNegativeWeightCycles!==!1){var W=[];if(z+P<AA)W.push(K);if(!u&&AA+P<z)W.push(O);var CA=W.length;for(var tA=0;tA<CA;tA++){var lA=W[tA],gA=[lA];gA.push(Q(lA).edge);var aA=Q(lA).pred;while(gA.indexOf(aA)===-1)gA.push(aA),gA.push(Q(aA).edge),aA=Q(aA).pred;gA=gA.slice(gA.indexOf(aA));var NA=gA[0].id(),DA=0;for(var KA=2;KA<gA.length;KA+=2)if(gA[KA].id()<NA)NA=gA[KA].id(),DA=KA;gA=gA.slice(DA).concat(gA.slice(0,DA)),gA.push(gA[0]);var TA=gA.map(function(qA){return qA.id()}).join(",");if(Y.indexOf(TA)===-1)I.push(o.spawn(gA)),Y.push(TA)}}else break}}}return{distanceTo:m,pathTo:f,hasNegativeWeightCycle:d,negativeWeightCycles:I}}},GQt=Math.sqrt(2),MQt={kargerStein:function(){var e=this,t=this.byGroup(),{nodes:r,edges:i}=t;i.unmergeBy(function(U){return U.isLoop()});var u=r.length,a=i.length,n=Math.ceil(Math.pow(Math.log(u)/Math.LN2,2)),o=Math.floor(u/GQt);if(u<2){Qa("At least 2 nodes are required for Karger-Stein algorithm");return}var s=[];for(var l=0;l<a;l++){var g=i[l];s.push([l,r.indexOf(g.source()),r.indexOf(g.target())])}var C=1/0,B=[],E=Array(u),d=Array(u),I=Array(u),h=function(Y,H){for(var J=0;J<u;J++)H[J]=Y[J]};for(var Q=0;Q<=n;Q++){for(var p=0;p<u;p++)d[p]=p;var m=JiA(d,s.slice(),u,o),f=m.slice();h(d,I);var D=JiA(d,m,o,2),w=JiA(I,f,o,2);if(D.length<=w.length&&D.length<C)C=D.length,B=D,h(d,E);else if(w.length<=D.length&&w.length<C)C=w.length,B=w,h(I,E)}var b=this.spawn(B.map(function(U){return i[U[0]]})),k=this.spawn(),v=this.spawn(),S=E[0];for(var x=0;x<E.length;x++){var F=E[x],T=r[x];if(F===S)k.merge(T);else v.merge(T)}var R=function(Y){var H=e.spawn();return Y.forEach(function(J){H.merge(J),J.connectedEdges().forEach(function(K){if(e.contains(K)&&!b.contains(K))H.merge(K)})}),H},L=[R(k),R(v)],M={cut:b,components:L,partition1:k,partition2:v};return M}},FaA=Math.log2||function(A){return Math.log(A)/Math.log(2)},VQt=(OiA=Math.hypot)!==null&&OiA!==void 0?OiA:function(A,e){return Math.sqrt(A*A+e*e)};l4t=l0({dampingFactor:0.8,precision:0.000001,iterations:200,weight:function(e){return 1}}),g4t={pageRank:function(e){var t=l4t(e),{dampingFactor:r,precision:i,iterations:u,weight:a}=t,n=this._private.cy,o=this.byGroup(),{nodes:s,edges:l}=o,g=s.length,C=g*g,B=l.length,E=Array(C),d=Array(g),I=(1-r)/g;for(var h=0;h<g;h++){for(var Q=0;Q<g;Q++){var p=h*g+Q;E[p]=0}d[h]=0}for(var m=0;m<B;m++){var f=l[m],D=f.data("source"),w=f.data("target");if(D===w)continue;var b=s.indexOfId(D),k=s.indexOfId(w),v=a(f),S=k*g+b;E[S]+=v,d[b]+=v}var x=1/g+I;for(var F=0;F<g;F++)if(d[F]===0)for(var T=0;T<g;T++){var R=T*g+F;E[R]=x}else for(var L=0;L<g;L++){var M=L*g+F;E[M]=E[M]/d[F]+I}var U=Array(g),Y=Array(g),H;for(var J=0;J<g;J++)U[J]=1;for(var K=0;K<u;K++){for(var O=0;O<g;O++)Y[O]=0;for(var P=0;P<g;P++)for(var z=0;z<g;z++){var AA=P*g+z;Y[P]+=E[AA]*U[z]}_Qt(Y),H=U,U=Y,Y=H;var W=0;for(var CA=0;CA<g;CA++){var tA=H[CA]-U[CA];W+=tA*tA}if(W<i)break}var lA={rank:function(aA){return aA=n.collection(aA)[0],U[s.indexOf(aA)]}};return lA}},GTA=l0({root:null,weight:function(e){return 1},directed:!1,alpha:0}),Zy={degreeCentralityNormalized:function(e){e=GTA(e);var t=this.cy(),r=this.nodes(),i=r.length;if(!e.directed){var u={},a=0;for(var n=0;n<i;n++){var o=r[n];e.root=o;var s=this.degreeCentrality(e);if(a<s.degree)a=s.degree;u[o.id()]=s.degree}return{degree:function(p){if(a===0)return 0;if(tr(p))p=t.filter(p);return u[p.id()]/a}}}else{var l={},g={},C=0,B=0;for(var E=0;E<i;E++){var d=r[E],I=d.id();e.root=d;var h=this.degreeCentrality(e);if(C<h.indegree)C=h.indegree;if(B<h.outdegree)B=h.outdegree;l[I]=h.indegree,g[I]=h.outdegree}return{indegree:function(p){if(C==0)return 0;if(tr(p))p=t.filter(p);return l[p.id()]/C},outdegree:function(p){if(B===0)return 0;if(tr(p))p=t.filter(p);return g[p.id()]/B}}}},degreeCentrality:function(e){e=GTA(e);var t=this.cy(),r=this,i=e,{root:u,weight:a,directed:n,alpha:o}=i;if(u=t.collection(u)[0],!n){var s=u.connectedEdges().intersection(r),l=s.length,g=0;for(var C=0;C<s.length;C++)g+=a(s[C]);return{degree:Math.pow(l,1-o)*Math.pow(g,o)}}else{var B=u.connectedEdges(),E=B.filter(function(D){return D.target().same(u)&&r.has(D)}),d=B.filter(function(D){return D.source().same(u)&&r.has(D)}),I=E.length,h=d.length,Q=0,p=0;for(var m=0;m<E.length;m++)Q+=a(E[m]);for(var f=0;f<d.length;f++)p+=a(d[f]);return{indegree:Math.pow(I,1-o)*Math.pow(Q,o),outdegree:Math.pow(h,1-o)*Math.pow(p,o)}}}};Zy.dc=Zy.degreeCentrality;Zy.dcn=Zy.degreeCentralityNormalised=Zy.degreeCentralityNormalized;UTA=l0({harmonic:!0,weight:function(){return 1},directed:!1,root:null}),Vy={closenessCentralityNormalized:function(e){var t=UTA(e),{harmonic:r,weight:i,directed:u}=t,a=this.cy(),n={},o=0,s=this.nodes(),l=this.floydWarshall({weight:i,directed:u});for(var g=0;g<s.length;g++){var C=0,B=s[g];for(var E=0;E<s.length;E++)if(g!==E){var d=l.distance(B,s[E]);if(r)C+=1/d;else C+=d}if(!r)C=1/C;if(o<C)o=C;n[B.id()]=C}return{closeness:function(h){if(o==0)return 0;if(tr(h))h=a.filter(h)[0].id();else h=h.id();return n[h]/o}}},closenessCentrality:function(e){var t=UTA(e),{root:r,weight:i,directed:u,harmonic:a}=t;r=this.filter(r)[0];var n=this.dijkstra({root:r,weight:i,directed:u}),o=0,s=this.nodes();for(var l=0;l<s.length;l++){var g=s[l];if(!g.same(r)){var C=n.distanceTo(g);if(a)o+=1/C;else o+=C}}return a?o:1/o}};Vy.cc=Vy.closenessCentrality;Vy.ccn=Vy.closenessCentralityNormalised=Vy.closenessCentralityNormalized;c4t=l0({weight:null,directed:!1}),uaA={betweennessCentrality:function(e){var t=c4t(e),{directed:r,weight:i}=t,u=i!=null,a=this.cy(),n=this.nodes(),o={},s={},l=0,g={set:function(p,m){if(s[p]=m,m>l)l=m},get:function(p){return s[p]}};for(var C=0;C<n.length;C++){var B=n[C],E=B.id();if(r)o[E]=B.outgoers().nodes();else o[E]=B.openNeighborhood().nodes();g.set(E,0)}var d=function(){var p=n[I].id(),m=[],f={},D={},w={},b=new Ok(function(P,z){return w[P]-w[z]});for(var k=0;k<n.length;k++){var v=n[k].id();f[v]=[],D[v]=0,w[v]=1/0}D[p]=1,w[p]=0,b.push(p);while(!b.empty()){var S=b.pop();if(m.push(S),u)for(var x=0;x<o[S].length;x++){var F=o[S][x],T=a.getElementById(S),R=void 0;if(T.edgesTo(F).length>0)R=T.edgesTo(F)[0];else R=F.edgesTo(T)[0];var L=i(R);if(F=F.id(),w[F]>w[S]+L){if(w[F]=w[S]+L,b.nodes.indexOf(F)<0)b.push(F);else b.updateItem(F);D[F]=0,f[F]=[]}if(w[F]==w[S]+L)D[F]=D[F]+D[S],f[F].push(S)}else for(var M=0;M<o[S].length;M++){var U=o[S][M].id();if(w[U]==1/0)b.push(U),w[U]=w[S]+1;if(w[U]==w[S]+1)D[U]=D[U]+D[S],f[U].push(S)}}var Y={};for(var H=0;H<n.length;H++)Y[n[H].id()]=0;while(m.length>0){var J=m.pop();for(var K=0;K<f[J].length;K++){var O=f[J][K];Y[O]=Y[O]+D[O]/D[J]*(1+Y[J])}if(J!=n[I].id())g.set(J,g.get(J)+Y[J])}};for(var I=0;I<n.length;I++)d();var h={betweenness:function(p){var m=a.collection(p).id();return g.get(m)},betweennessNormalized:function(p){if(l==0)return 0;var m=a.collection(p).id();return g.get(m)/l}};return h.betweennessNormalised=h.betweennessNormalized,h}};uaA.bc=uaA.betweennessCentrality;C4t=l0({expandFactor:2,inflateFactor:2,multFactor:1,maxIterations:20,attributes:[function(A){return 1}]}),y4t={markovClustering:MTA,mcl:MTA},$y={euclidean:function(e,t,r){if(e>=2)return Bk(e,t,r,0,YTA,b4t);else return Bk(e,t,r,0,TTA)},squaredEuclidean:function(e,t,r){return Bk(e,t,r,0,YTA)},manhattan:function(e,t,r){return Bk(e,t,r,0,TTA)},max:function(e,t,r){return Bk(e,t,r,-1/0,v4t)}};$y["squared-euclidean"]=$y.squaredEuclidean;$y.squaredeuclidean=$y.squaredEuclidean;k4t=l0({k:2,m:2,sensitivityThreshold:0.0001,distance:"euclidean",maxIterations:10,attributes:[],testMode:!1,testCentroids:null}),M4t={kMeans:L4t,kMedoids:R4t,fuzzyCMeans:JTA,fcm:JTA},T4t=l0({distance:"euclidean",linkage:"min",mode:"threshold",threshold:1/0,addDendrogram:!1,dendrogramDepth:0,attributes:[]}),Y4t={single:"min",complete:"max"},K4t={hierarchicalClustering:PTA,hca:PTA},J4t=l0({distance:"euclidean",preference:"median",damping:0.8,maxIterations:1000,minIterations:100,attributes:[]}),z4t={affinityPropagation:WTA,ap:WTA},Z4t=l0({root:void 0,directed:!1}),V4t={hierholzer:function(e){if(!Hi(e)){var t=arguments;e={root:t[0],directed:t[1]}}var r=Z4t(e),{root:i,directed:u}=r,a=this,n=!1,o,s,l;if(i)l=tr(i)?this.filter(i)[0].id():i[0].id();var g={},C={};if(u)a.forEach(function(Q){var p=Q.id();if(Q.isNode()){var m=Q.indegree(!0),f=Q.outdegree(!0),D=m-f,w=f-m;if(D==1)if(o)n=!0;else o=p;else if(w==1)if(s)n=!0;else s=p;else if(w>1||D>1)n=!0;g[p]=[],Q.outgoers().forEach(function(b){if(b.isEdge())g[p].push(b.id())})}else C[p]=[void 0,Q.target().id()]});else a.forEach(function(Q){var p=Q.id();if(Q.isNode()){var m=Q.degree(!0);if(m%2)if(!o)o=p;else if(!s)s=p;else n=!0;g[p]=[],Q.connectedEdges().forEach(function(f){return g[p].push(f.id())})}else C[p]=[Q.source().id(),Q.target().id()]});var B={found:!1,trail:void 0};if(n)return B;else if(s&&o){if(u){if(l&&s!=l)return B;l=s}else if(l&&s!=l&&o!=l)return B;else if(!l)l=s}else if(!l)l=a[0].id();var E=function(p){var m=p,f=[p],D,w,b;while(g[m].length){if(D=g[m].shift(),w=C[D][0],b=C[D][1],m!=b)g[b]=g[b].filter(function(k){return k!=D}),m=b;else if(!u&&m!=w)g[w]=g[w].filter(function(k){return k!=D}),m=w;f.unshift(D),f.unshift(m)}return f},d=[],I=[];I=E(l);while(I.length!=1)if(g[I[0]].length==0)d.unshift(a.getElementById(I.shift())),d.unshift(a.getElementById(I.shift()));else I=E(I.shift()).concat(I);d.unshift(a.getElementById(I.shift()));for(var h in g)if(g[h].length)return B;return B.found=!0,B.trail=this.spawn(d,!0),B}},j4t={hopcroftTarjanBiconnected:rT,htbc:rT,htb:rT,hopcroftTarjanBiconnectedComponents:rT},X4t={tarjanStronglyConnected:iT,tsc:iT,tscc:iT,tarjanStronglyConnectedComponents:iT},dKA={};[Fk,vQt,kQt,xQt,LQt,NQt,MQt,g4t,Zy,Vy,uaA,y4t,M4t,K4t,z4t,V4t,j4t,X4t].forEach(function(A){dr(dKA,A)});/*!
Embeddable Minimum Strictly-Compliant Promises/A+ 1.1.1 Thenable
Copyright (c) 2013-2014 Ralf S. Engelschall (http://engelschall.com)
Licensed under The MIT License (http://opensource.org/licenses/MIT)
*/pC.prototype={fulfill:function(e){return qTA(this,hKA,"fulfillValue",e)},reject:function(e){return qTA(this,QKA,"rejectReason",e)},then:function(e,t){var r=this,i=new pC;return r.onFulfilled.push(ZTA(e,i,"fulfill")),r.onRejected.push(ZTA(t,i,"reject")),pKA(r),i.proxy}};pC.all=function(A){return new pC(function(e,t){var r=Array(A.length),i=0,u=function(o,s){if(r[o]=s,i++,i===A.length)e(r)};for(var a=0;a<A.length;a++)(function(n){var o=A[n],s=o!=null&&o.then!=null;if(s)o.then(function(g){u(n,g)},function(g){t(g)});else{var l=o;u(n,l)}})(a)})};pC.resolve=function(A){return new pC(function(e,t){e(A)})};pC.reject=function(A){return new pC(function(e,t){t(A)})};iw=typeof Promise<"u"?Promise:pC,_f=oaA.prototype;dr(_f,{instanceString:function(){return"animation"},hook:function(){var e=this._private;if(!e.hooked){var t,r=e.target._private.animation;if(e.queue)t=r.queue;else t=r.current;if(t.push(this),sg(e.target))e.target.cy().addToAnimationPool(e.target);e.hooked=!0}return this},play:function(){var e=this._private;if(e.progress===1)e.progress=0;return e.playing=!0,e.started=!1,e.stopped=!1,this.hook(),this},playing:function(){return this._private.playing},apply:function(){var e=this._private;return e.applying=!0,e.started=!1,e.stopped=!1,this.hook(),this},applying:function(){return this._private.applying},pause:function(){var e=this._private;return e.playing=!1,e.started=!1,this},stop:function(){var e=this._private;return e.playing=!1,e.started=!1,e.stopped=!0,this},rewind:function(){return this.progress(0)},fastforward:function(){return this.progress(1)},time:function(e){var t=this._private;if(e===void 0)return t.progress*t.duration;else return this.progress(e/t.duration)},progress:function(e){var t=this._private,r=t.playing;if(e===void 0)return t.progress;else{if(r)this.pause();if(t.progress=e,t.started=!1,r)this.play()}return this},completed:function(){return this._private.progress===1},reverse:function(){var e=this._private,t=e.playing;if(t)this.pause();e.progress=1-e.progress,e.started=!1;var r=function(s,l){var g=e[s];if(g==null)return;e[s]=e[l],e[l]=g};if(r("zoom","startZoom"),r("pan","startPan"),r("position","startPosition"),e.style)for(var i=0;i<e.style.length;i++){var u=e.style[i],a=u.name,n=e.startStyle[a];e.startStyle[a]=u,e.style[i]=n}if(t)this.play();return this},promise:function(e){var t=this._private,r;switch(e){case"frame":r=t.frames;break;default:case"complete":case"completed":r=t.completes}return new iw(function(i,u){r.push(function(){i()})})}});_f.complete=_f.completed;_f.run=_f.play;_f.running=_f.playing;$4t={animated:function(){return function(){var t=this,r=t.length!==void 0,i=r?t:[t],u=this._private.cy||this;if(!u.styleEnabled())return!1;var a=i[0];if(a)return a._private.animation.current.length>0}},clearQueue:function(){return function(){var t=this,r=t.length!==void 0,i=r?t:[t],u=this._private.cy||this;if(!u.styleEnabled())return this;for(var a=0;a<i.length;a++){var n=i[a];n._private.animation.queue=[]}return this}},delay:function(){return function(t,r){var i=this._private.cy||this;if(!i.styleEnabled())return this;return this.animate({delay:t,duration:t,complete:r})}},delayAnimation:function(){return function(t,r){var i=this._private.cy||this;if(!i.styleEnabled())return this;return this.animation({delay:t,duration:t,complete:r})}},animation:function(){return function(t,r){var i=this,u=i.length!==void 0,a=u?i:[i],n=this._private.cy||this,o=!u,s=!o;if(!n.styleEnabled())return this;var l=n.style();t=dr({},t,r);var g=Object.keys(t).length===0;if(g)return new oaA(a[0],t);if(t.duration===void 0)t.duration=400;switch(t.duration){case"slow":t.duration=600;break;case"fast":t.duration=200;break}if(s)t.style=l.getPropsList(t.style||t.css),t.css=void 0;if(s&&t.renderedPosition!=null){var C=t.renderedPosition,B=n.pan(),E=n.zoom();t.position=uKA(C,E,B)}if(o&&t.panBy!=null){var d=t.panBy,I=n.pan();t.pan={x:I.x+d.x,y:I.y+d.y}}var h=t.center||t.centre;if(o&&h!=null){var Q=n.getCenterPan(h.eles,t.zoom);if(Q!=null)t.pan=Q}if(o&&t.fit!=null){var p=t.fit,m=n.getFitViewport(p.eles||p.boundingBox,p.padding);if(m!=null)t.pan=m.pan,t.zoom=m.zoom}if(o&&Hi(t.zoom)){var f=n.getZoomedViewport(t.zoom);if(f!=null){if(f.zoomed)t.zoom=f.zoom;if(f.panned)t.pan=f.pan}else t.zoom=null}return new oaA(a[0],t)}},animate:function(){return function(t,r){var i=this,u=i.length!==void 0,a=u?i:[i],n=this._private.cy||this;if(!n.styleEnabled())return this;if(r)t=dr({},t,r);for(var o=0;o<a.length;o++){var s=a[o],l=s.animated()&&(t.queue===void 0||t.queue),g=s.animation(t,l?{queue:!0}:void 0);g.play()}return this}},stop:function(){return function(t,r){var i=this,u=i.length!==void 0,a=u?i:[i],n=this._private.cy||this;if(!n.styleEnabled())return this;for(var o=0;o<a.length;o++){var s=a[o],l=s._private,g=l.animation.current;for(var C=0;C<g.length;C++){var B=g[C],E=B._private;if(r)E.duration=0}if(t)l.animation.queue=[];if(!r)l.animation.current=[]}return n.notify("draw"),this}}};L1t=S1t(),R1t=Yk(L1t);H1t=Y1t(),K1t=Yk(H1t);P1t=O1t(),_1t=Yk(P1t),W1t={data:function(e){var t={field:"data",bindingEvent:"data",allowBinding:!1,allowSetting:!1,allowGetting:!1,settingEvent:"data",settingTriggersEvent:!1,triggerFnName:"trigger",immutableKeys:{},updateStyle:!1,beforeGet:function(i){},beforeSet:function(i,u){},onSet:function(i){},canSet:function(i){return!0}};return e=dr({},t,e),function(i,u){var a=e,n=this,o=n.length!==void 0,s=o?n:[n],l=o?n[0]:n;if(tr(i)){var g=i.indexOf(".")!==-1,C=g&&_1t(i);if(a.allowGetting&&u===void 0){var B;if(l)if(a.beforeGet(l),C&&l._private[a.field][i]===void 0)B=R1t(l._private[a.field],C);else B=l._private[a.field][i];return B}else if(a.allowSetting&&u!==void 0){var E=!a.immutableKeys[i];if(E){var d=YHA({},i,u);a.beforeSet(n,d);for(var I=0,h=s.length;I<h;I++){var Q=s[I];if(a.canSet(Q))if(C&&l._private[a.field][i]===void 0)K1t(Q._private[a.field],C,u);else Q._private[a.field][i]=u}if(a.updateStyle)n.updateStyle();if(a.onSet(n),a.settingTriggersEvent)n[a.triggerFnName](a.settingEvent)}}}else if(a.allowSetting&&Hi(i)){var p=i,m,f,D=Object.keys(p);a.beforeSet(n,p);for(var w=0;w<D.length;w++){m=D[w],f=p[m];var b=!a.immutableKeys[m];if(b)for(var k=0;k<s.length;k++){var v=s[k];if(a.canSet(v))v._private[a.field][m]=f}}if(a.updateStyle)n.updateStyle();if(a.onSet(n),a.settingTriggersEvent)n[a.triggerFnName](a.settingEvent)}else if(a.allowBinding&&La(i)){var S=i;n.on(a.bindingEvent,S)}else if(a.allowGetting&&i===void 0){var x;if(l)a.beforeGet(l),x=l._private[a.field];return x}return n}},removeData:function(e){var t={field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!1,immutableKeys:{}};return e=dr({},t,e),function(i){var u=e,a=this,n=a.length!==void 0,o=n?a:[a];if(tr(i)){var s=i.split(/\s+/),l=s.length;for(var g=0;g<l;g++){var C=s[g];if(g4(C))continue;var B=!u.immutableKeys[C];if(B)for(var E=0,d=o.length;E<d;E++)o[E]._private[u.field][C]=void 0}if(u.triggerEvent)a[u.triggerFnName](u.event)}else if(i===void 0){for(var I=0,h=o.length;I<h;I++){var Q=o[I]._private[u.field],p=Object.keys(Q);for(var m=0;m<p.length;m++){var f=p[m],D=!u.immutableKeys[f];if(D)Q[f]=void 0}}if(u.triggerEvent)a[u.triggerFnName](u.event)}return a}}},q1t={eventAliasesOn:function(e){var t=e;t.addListener=t.listen=t.bind=t.on,t.unlisten=t.unbind=t.off=t.removeListener,t.trigger=t.emit,t.pon=t.promiseOn=function(r,i){var u=this,a=Array.prototype.slice.call(arguments,0);return new iw(function(n,o){var s=function(B){u.off.apply(u,g),n(B)},l=a.concat([s]),g=l.concat([]);u.on.apply(u,l)})}}},Eu={};[$4t,W1t,q1t].forEach(function(A){dr(Eu,A)});z1t={animate:Eu.animate(),animation:Eu.animation(),animated:Eu.animated(),clearQueue:Eu.clearQueue(),delay:Eu.delay(),delayAnimation:Eu.delayAnimation(),stop:Eu.stop()},ET={classes:function(e){var t=this;if(e===void 0){var r=[];return t[0]._private.classes.forEach(function(E){return r.push(E)}),r}else if(!Mu(e))e=(e||"").match(/\S+/g)||[];var i=[],u=new rw(e);for(var a=0;a<t.length;a++){var n=t[a],o=n._private,s=o.classes,l=!1;for(var g=0;g<e.length;g++){var C=e[g],B=s.has(C);if(!B){l=!0;break}}if(!l)l=s.size!==e.length;if(l)o.classes=u,i.push(n)}if(i.length>0)this.spawn(i).updateStyle().emit("class");return t},addClass:function(e){return this.toggleClass(e,!0)},hasClass:function(e){var t=this[0];return t!=null&&t._private.classes.has(e)},toggleClass:function(e,t){if(!Mu(e))e=e.match(/\S+/g)||[];var r=this,i=t===void 0,u=[];for(var a=0,n=r.length;a<n;a++){var o=r[a],s=o._private.classes,l=!1;for(var g=0;g<e.length;g++){var C=e[g],B=s.has(C),E=!1;if(t||i&&!B)s.add(C),E=!0;else if(!t||i&&B)s.delete(C),E=!0;if(!l&&E)u.push(o),l=!0}}if(u.length>0)this.spawn(u).updateStyle().emit("class");return r},removeClass:function(e){return this.toggleClass(e,!1)},flashClass:function(e,t){var r=this;if(t==null)t=250;else if(t===0)return r;return r.addClass(e),setTimeout(function(){r.removeClass(e)},t),r}};ET.className=ET.classNames=ET.classes;Yi={metaChar:"[\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\]\\^\\`\\{\\|\\}\\~]",comparatorOp:"=|\\!=|>|>=|<|<=|\\$=|\\^=|\\*=",boolOp:"\\?|\\!|\\^",string:`"(?:\\\\"|[^"])*"|'(?:\\\\'|[^'])*'`,number:no,meta:"degree|indegree|outdegree",separator:"\\s*,\\s*",descendant:"\\s+",child:"\\s+>\\s+",subject:"\\$",group:"node|edge|\\*",directedEdge:"\\s+->\\s+",undirectedEdge:"\\s+<->\\s+"};Yi.variable="(?:[\\w-.]|(?:\\\\"+Yi.metaChar+"))+";Yi.className="(?:[\\w-]|(?:\\\\"+Yi.metaChar+"))+";Yi.value=Yi.string+"|"+Yi.number;Yi.id=Yi.variable;(function(){var A,e,t;A=Yi.comparatorOp.split("|");for(t=0;t<A.length;t++)e=A[t],Yi.comparatorOp+="|@"+e;A=Yi.comparatorOp.split("|");for(t=0;t<A.length;t++){if(e=A[t],e.indexOf("!")>=0)continue;if(e==="=")continue;Yi.comparatorOp+="|\\!"+e}})();Gt={GROUP:0,COLLECTION:1,FILTER:2,DATA_COMPARE:3,DATA_EXIST:4,DATA_BOOL:5,META_COMPARE:6,STATE:7,ID:8,CLASS:9,UNDIRECTED_EDGE:10,DIRECTED_EDGE:11,NODE_SOURCE:12,NODE_TARGET:13,NODE_NEIGHBOR:14,CHILD:15,DESCENDANT:16,PARENT:17,ANCESTOR:18,COMPOUND_SPLIT:19,TRUE:20},saA=[{selector:":selected",matches:function(e){return e.selected()}},{selector:":unselected",matches:function(e){return!e.selected()}},{selector:":selectable",matches:function(e){return e.selectable()}},{selector:":unselectable",matches:function(e){return!e.selectable()}},{selector:":locked",matches:function(e){return e.locked()}},{selector:":unlocked",matches:function(e){return!e.locked()}},{selector:":visible",matches:function(e){return e.visible()}},{selector:":hidden",matches:function(e){return!e.visible()}},{selector:":transparent",matches:function(e){return e.transparent()}},{selector:":grabbed",matches:function(e){return e.grabbed()}},{selector:":free",matches:function(e){return!e.grabbed()}},{selector:":removed",matches:function(e){return e.removed()}},{selector:":inside",matches:function(e){return!e.removed()}},{selector:":grabbable",matches:function(e){return e.grabbable()}},{selector:":ungrabbable",matches:function(e){return!e.grabbable()}},{selector:":animated",matches:function(e){return e.animated()}},{selector:":unanimated",matches:function(e){return!e.animated()}},{selector:":parent",matches:function(e){return e.isParent()}},{selector:":childless",matches:function(e){return e.isChildless()}},{selector:":child",matches:function(e){return e.isChild()}},{selector:":orphan",matches:function(e){return e.isOrphan()}},{selector:":nonorphan",matches:function(e){return e.isChild()}},{selector:":compound",matches:function(e){if(e.isNode())return e.isParent();else return e.source().isParent()||e.target().isParent()}},{selector:":loop",matches:function(e){return e.isLoop()}},{selector:":simple",matches:function(e){return e.isSimple()}},{selector:":active",matches:function(e){return e.active()}},{selector:":inactive",matches:function(e){return!e.active()}},{selector:":backgrounding",matches:function(e){return e.backgrounding()}},{selector:":nonbackgrounding",matches:function(e){return!e.backgrounding()}}].sort(function(A,e){return _ht(A.selector,e.selector)}),Z1t=function(){var A={},e;for(var t=0;t<saA.length;t++)e=saA[t],A[e.selector]=e.matches;return A}(),j1t="("+saA.map(function(A){return A.selector}).join("|")+")",laA=[{name:"group",query:!0,regex:"("+Yi.group+")",populate:function(e,t,r){var i=Mn(r,1),u=i[0];t.checks.push({type:Gt.GROUP,value:u==="*"?u:u+"s"})}},{name:"state",query:!0,regex:j1t,populate:function(e,t,r){var i=Mn(r,1),u=i[0];t.checks.push({type:Gt.STATE,value:u})}},{name:"id",query:!0,regex:"\\#("+Yi.id+")",populate:function(e,t,r){var i=Mn(r,1),u=i[0];t.checks.push({type:Gt.ID,value:My(u)})}},{name:"className",query:!0,regex:"\\.("+Yi.className+")",populate:function(e,t,r){var i=Mn(r,1),u=i[0];t.checks.push({type:Gt.CLASS,value:My(u)})}},{name:"dataExists",query:!0,regex:"\\[\\s*("+Yi.variable+")\\s*\\]",populate:function(e,t,r){var i=Mn(r,1),u=i[0];t.checks.push({type:Gt.DATA_EXIST,field:My(u)})}},{name:"dataCompare",query:!0,regex:"\\[\\s*("+Yi.variable+")\\s*("+Yi.comparatorOp+")\\s*("+Yi.value+")\\s*\\]",populate:function(e,t,r){var i=Mn(r,3),u=i[0],a=i[1],n=i[2],o=new RegExp("^"+Yi.string+"$").exec(n)!=null;if(o)n=n.substring(1,n.length-1);else n=parseFloat(n);t.checks.push({type:Gt.DATA_COMPARE,field:My(u),operator:a,value:n})}},{name:"dataBool",query:!0,regex:"\\[\\s*("+Yi.boolOp+")\\s*("+Yi.variable+")\\s*\\]",populate:function(e,t,r){var i=Mn(r,2),u=i[0],a=i[1];t.checks.push({type:Gt.DATA_BOOL,field:My(a),operator:u})}},{name:"metaCompare",query:!0,regex:"\\[\\[\\s*("+Yi.meta+")\\s*("+Yi.comparatorOp+")\\s*("+Yi.number+")\\s*\\]\\]",populate:function(e,t,r){var i=Mn(r,3),u=i[0],a=i[1],n=i[2];t.checks.push({type:Gt.META_COMPARE,field:My(u),operator:a,value:parseFloat(n)})}},{name:"nextQuery",separator:!0,regex:Yi.separator,populate:function(e,t){var{currentSubject:r,edgeCount:i,compoundCount:u}=e,a=e[e.length-1];if(r!=null)a.subject=r,e.currentSubject=null;a.edgeCount=i,a.compoundCount=u,e.edgeCount=0,e.compoundCount=0;var n=e[e.length++]=vu();return n}},{name:"directedEdge",separator:!0,regex:Yi.directedEdge,populate:function(e,t){if(e.currentSubject==null){var r=vu(),i=t,u=vu();return r.checks.push({type:Gt.DIRECTED_EDGE,source:i,target:u}),r4(e,t,r),e.edgeCount++,u}else{var a=vu(),n=t,o=vu();return a.checks.push({type:Gt.NODE_SOURCE,source:n,target:o}),r4(e,t,a),e.edgeCount++,o}}},{name:"undirectedEdge",separator:!0,regex:Yi.undirectedEdge,populate:function(e,t){if(e.currentSubject==null){var r=vu(),i=t,u=vu();return r.checks.push({type:Gt.UNDIRECTED_EDGE,nodes:[i,u]}),r4(e,t,r),e.edgeCount++,u}else{var a=vu(),n=t,o=vu();return a.checks.push({type:Gt.NODE_NEIGHBOR,node:n,neighbor:o}),r4(e,t,a),o}}},{name:"child",separator:!0,regex:Yi.child,populate:function(e,t){if(e.currentSubject==null){var r=vu(),i=vu(),u=e[e.length-1];return r.checks.push({type:Gt.CHILD,parent:u,child:i}),r4(e,t,r),e.compoundCount++,i}else if(e.currentSubject===t){var a=vu(),n=e[e.length-1],o=vu(),s=vu(),l=vu(),g=vu();return a.checks.push({type:Gt.COMPOUND_SPLIT,left:n,right:o,subject:s}),s.checks=t.checks,t.checks=[{type:Gt.TRUE}],g.checks.push({type:Gt.TRUE}),o.checks.push({type:Gt.PARENT,parent:g,child:l}),r4(e,n,a),e.currentSubject=s,e.compoundCount++,l}else{var C=vu(),B=vu(),E=[{type:Gt.PARENT,parent:C,child:B}];return C.checks=t.checks,t.checks=E,e.compoundCount++,B}}},{name:"descendant",separator:!0,regex:Yi.descendant,populate:function(e,t){if(e.currentSubject==null){var r=vu(),i=vu(),u=e[e.length-1];return r.checks.push({type:Gt.DESCENDANT,ancestor:u,descendant:i}),r4(e,t,r),e.compoundCount++,i}else if(e.currentSubject===t){var a=vu(),n=e[e.length-1],o=vu(),s=vu(),l=vu(),g=vu();return a.checks.push({type:Gt.COMPOUND_SPLIT,left:n,right:o,subject:s}),s.checks=t.checks,t.checks=[{type:Gt.TRUE}],g.checks.push({type:Gt.TRUE}),o.checks.push({type:Gt.ANCESTOR,ancestor:g,descendant:l}),r4(e,n,a),e.currentSubject=s,e.compoundCount++,l}else{var C=vu(),B=vu(),E=[{type:Gt.ANCESTOR,ancestor:C,descendant:B}];return C.checks=t.checks,t.checks=E,e.compoundCount++,B}}},{name:"subject",modifier:!0,regex:Yi.subject,populate:function(e,t){if(e.currentSubject!=null&&e.currentSubject!==t)return du("Redefinition of subject in selector `"+e.toString()+"`"),!1;e.currentSubject=t;var r=e[e.length-1],i=r.checks[0],u=i==null?null:i.type;if(u===Gt.DIRECTED_EDGE)i.type=Gt.NODE_TARGET;else if(u===Gt.UNDIRECTED_EDGE)i.type=Gt.NODE_NEIGHBOR,i.node=i.nodes[1],i.neighbor=i.nodes[0],i.nodes=null}}];laA.forEach(function(A){return A.regexObj=new RegExp("^"+A.regex)});tpt={parse:Apt,toString:ept},Za=[];Za[Gt.GROUP]=function(A,e){var t=A.value;return t==="*"||t===e.group()};Za[Gt.STATE]=function(A,e){var t=A.value;return V1t(t,e)};Za[Gt.ID]=function(A,e){var t=A.value;return e.id()===t};Za[Gt.CLASS]=function(A,e){var t=A.value;return e.hasClass(t)};Za[Gt.META_COMPARE]=function(A,e){var{field:t,operator:r,value:i}=A;return vKA(upt(e,t),r,i)};Za[Gt.DATA_COMPARE]=function(A,e){var{field:t,operator:r,value:i}=A;return vKA(UaA(e,t),r,i)};Za[Gt.DATA_BOOL]=function(A,e){var{field:t,operator:r}=A;return rpt(UaA(e,t),r)};Za[Gt.DATA_EXIST]=function(A,e){var t=A.field;return A.operator,ipt(UaA(e,t))};Za[Gt.UNDIRECTED_EDGE]=function(A,e){var t=A.nodes[0],r=A.nodes[1],i=e.source(),u=e.target();return ea(t,i)&&ea(r,u)||ea(r,i)&&ea(t,u)};Za[Gt.NODE_NEIGHBOR]=function(A,e){return ea(A.node,e)&&e.neighborhood().some(function(t){return t.isNode()&&ea(A.neighbor,t)})};Za[Gt.DIRECTED_EDGE]=function(A,e){return ea(A.source,e.source())&&ea(A.target,e.target())};Za[Gt.NODE_SOURCE]=function(A,e){return ea(A.source,e)&&e.outgoers().some(function(t){return t.isNode()&&ea(A.target,t)})};Za[Gt.NODE_TARGET]=function(A,e){return ea(A.target,e)&&e.incomers().some(function(t){return t.isNode()&&ea(A.source,t)})};Za[Gt.CHILD]=function(A,e){return ea(A.child,e)&&ea(A.parent,e.parent())};Za[Gt.PARENT]=function(A,e){return ea(A.parent,e)&&e.children().some(function(t){return ea(A.child,t)})};Za[Gt.DESCENDANT]=function(A,e){return ea(A.descendant,e)&&e.ancestors().some(function(t){return ea(A.ancestor,t)})};Za[Gt.ANCESTOR]=function(A,e){return ea(A.ancestor,e)&&e.descendants().some(function(t){return ea(A.descendant,t)})};Za[Gt.COMPOUND_SPLIT]=function(A,e){return ea(A.subject,e)&&ea(A.left,e)&&ea(A.right,e)};Za[Gt.TRUE]=function(){return!0};Za[Gt.COLLECTION]=function(A,e){var t=A.value;return t.has(e)};Za[Gt.FILTER]=function(A,e){var t=A.value;return t(e)};opt={matches:npt,filter:apt},E4=B4.prototype;[tpt,opt].forEach(function(A){return dr(E4,A)});E4.text=function(){return this.inputText};E4.size=function(){return this.length};E4.eq=function(A){return this[A]};E4.sameText=function(A){return!this.invalid&&!A.invalid&&this.text()===A.text()};E4.addQuery=function(A){this[this.length++]=A};E4.selector=E4.toString;s4={allAre:function(e){var t=new B4(e);return this.every(function(r){return t.matches(r)})},is:function(e){var t=new B4(e);return this.some(function(r){return t.matches(r)})},some:function(e,t){for(var r=0;r<this.length;r++){var i=!t?e(this[r],r,this):e.apply(t,[this[r],r,this]);if(i)return!0}return!1},every:function(e,t){for(var r=0;r<this.length;r++){var i=!t?e(this[r],r,this):e.apply(t,[this[r],r,this]);if(!i)return!1}return!0},same:function(e){if(this===e)return!0;e=this.cy().collection(e);var t=this.length,r=e.length;if(t!==r)return!1;if(t===1)return this[0]===e[0];return this.every(function(i){return e.hasElementWithId(i.id())})},anySame:function(e){return e=this.cy().collection(e),this.some(function(t){return e.hasElementWithId(t.id())})},allAreNeighbors:function(e){e=this.cy().collection(e);var t=this.neighborhood();return e.every(function(r){return t.hasElementWithId(r.id())})},contains:function(e){e=this.cy().collection(e);var t=this;return e.every(function(r){return t.hasElementWithId(r.id())})}};s4.allAreNeighbours=s4.allAreNeighbors;s4.has=s4.contains;s4.equal=s4.equals=s4.same;Aw={parent:function(e){var t=[];if(this.length===1){var r=this[0]._private.parent;if(r)return r}for(var i=0;i<this.length;i++){var u=this[i],a=u._private.parent;if(a)t.push(a)}return this.spawn(t,!0).filter(e)},parents:function(e){var t=[],r=this.parent();while(r.nonempty()){for(var i=0;i<r.length;i++){var u=r[i];t.push(u)}r=r.parent()}return this.spawn(t,!0).filter(e)},commonAncestors:function(e){var t;for(var r=0;r<this.length;r++){var i=this[r],u=i.parents();t=t||u,t=t.intersect(u)}return t.filter(e)},orphans:function(e){return this.stdFilter(function(t){return t.isOrphan()}).filter(e)},nonorphans:function(e){return this.stdFilter(function(t){return t.isChild()}).filter(e)},children:ic(function(A){var e=[];for(var t=0;t<this.length;t++){var r=this[t],i=r._private.children;for(var u=0;u<i.length;u++)e.push(i[u])}return this.spawn(e,!0).filter(A)},"children"),siblings:function(e){return this.parent().children().not(this).filter(e)},isParent:function(){var e=this[0];if(e)return e.isNode()&&e._private.children.length!==0},isChildless:function(){var e=this[0];if(e)return e.isNode()&&e._private.children.length===0},isChild:function(){var e=this[0];if(e)return e.isNode()&&e._private.parent!=null},isOrphan:function(){var e=this[0];if(e)return e.isNode()&&e._private.parent==null},descendants:function(e){var t=[];function r(i){for(var u=0;u<i.length;u++){var a=i[u];if(t.push(a),a.children().nonempty())r(a.children())}}return r(this.children()),this.spawn(t,!0).filter(e)}};Aw.forEachDown=function(A){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return MaA(this,A,e,kKA)};Aw.forEachUp=function(A){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return MaA(this,A,e,FKA)};Aw.forEachUpAndDown=function(A){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return MaA(this,A,e,spt)};Aw.ancestors=Aw.parents;Lk=xKA={data:Eu.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),removeData:Eu.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,immutableKeys:{id:!0,source:!0,target:!0,parent:!0},updateStyle:!0}),scratch:Eu.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Eu.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),rscratch:Eu.data({field:"rscratch",allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!0}),removeRscratch:Eu.removeData({field:"rscratch",triggerEvent:!1}),id:function(){var e=this[0];if(e)return e._private.data.id}};Lk.attr=Lk.data;Lk.removeAttr=Lk.removeData;lpt=xKA,WT={};dr(WT,{degree:PuA(function(A,e){if(e.source().same(e.target()))return 2;else return 1}),indegree:PuA(function(A,e){if(e.target().same(A))return 1;else return 0}),outdegree:PuA(function(A,e){if(e.source().same(A))return 1;else return 0})});dr(WT,{minDegree:Ty("degree",function(A,e){return A<e}),maxDegree:Ty("degree",function(A,e){return A>e}),minIndegree:Ty("indegree",function(A,e){return A<e}),maxIndegree:Ty("indegree",function(A,e){return A>e}),minOutdegree:Ty("outdegree",function(A,e){return A<e}),maxOutdegree:Ty("outdegree",function(A,e){return A>e})});dr(WT,{totalDegree:function(e){var t=0,r=this.nodes();for(var i=0;i<r.length;i++)t+=r[i].degree(e);return t}});qYA={field:"position",bindingEvent:"position",allowBinding:!0,allowSetting:!0,settingEvent:"position",settingTriggersEvent:!0,triggerFnName:"emitAndNotify",allowGetting:!0,validKeys:["x","y"],beforeGet:function(e){e.updateCompoundBounds()},beforeSet:function(e,t){LKA(e,t,!1)},onSet:function(e){e.dirtyCompoundBoundsCache()},canSet:function(e){return!e.locked()}};QC=SKA={position:Eu.data(qYA),silentPosition:Eu.data(dr({},qYA,{allowBinding:!1,allowSetting:!0,settingTriggersEvent:!1,allowGetting:!1,beforeSet:function(e,t){LKA(e,t,!0)},onSet:function(e){e.dirtyCompoundBoundsCache()}})),positions:function(e,t){if(Hi(e))if(t)this.silentPosition(e);else this.position(e);else if(La(e)){var r=e,i=this.cy();i.startBatch();for(var u=0;u<this.length;u++){var a=this[u],n=void 0;if(n=r(a,u))if(t)a.silentPosition(n);else a.position(n)}i.endBatch()}return this},silentPositions:function(e){return this.positions(e,!0)},shift:function(e,t,r){var i;if(Hi(e))i={x:ht(e.x)?e.x:0,y:ht(e.y)?e.y:0},r=t;else if(tr(e)&&ht(t))i={x:0,y:0},i[e]=t;if(i!=null){var u=this.cy();u.startBatch();for(var a=0;a<this.length;a++){var n=this[a];if(u.hasCompoundNodes()&&n.isChild()&&n.ancestors().anySame(this))continue;var o=n.position(),s={x:o.x+i.x,y:o.y+i.y};if(r)n.silentPosition(s);else n.position(s)}u.endBatch()}return this},silentShift:function(e,t){if(Hi(e))this.shift(e,!0);else if(tr(e)&&ht(t))this.shift(e,t,!0);return this},renderedPosition:function(e,t){var r=this[0],i=this.cy(),u=i.zoom(),a=i.pan(),n=Hi(e)?e:void 0,o=n!==void 0||t!==void 0&&tr(e);if(r&&r.isNode())if(o)for(var s=0;s<this.length;s++){var l=this[s];if(t!==void 0)l.position(e,(t-a[e])/u);else if(n!==void 0)l.position(uKA(n,u,a))}else{var g=r.position();if(n=HT(g,u,a),e===void 0)return n;else return n[e]}else if(!o)return;return this},relativePosition:function(e,t){var r=this[0],i=this.cy(),u=Hi(e)?e:void 0,a=u!==void 0||t!==void 0&&tr(e),n=i.hasCompoundNodes();if(r&&r.isNode())if(a)for(var o=0;o<this.length;o++){var s=this[o],l=n?s.parent():null,g=l&&l.length>0,C=g;if(g)l=l[0];var B=C?l.position():{x:0,y:0};if(t!==void 0)s.position(e,t+B[e]);else if(u!==void 0)s.position({x:u.x+B.x,y:u.y+B.y})}else{var E=r.position(),d=n?r.parent():null,I=d&&d.length>0,h=I;if(I)d=d[0];var Q=h?d.position():{x:0,y:0};if(u={x:E.x-Q.x,y:E.y-Q.y},e===void 0)return u;else return u[e]}else if(!a)return;return this}};QC.modelPosition=QC.point=QC.position;QC.modelPositions=QC.points=QC.positions;QC.renderedPoint=QC.renderedPosition;QC.relativePoint=QC.relativePosition;gpt=SKA;jy=Q4={};Q4.renderedBoundingBox=function(A){var e=this.boundingBox(A),t=this.cy(),r=t.zoom(),i=t.pan(),u=e.x1*r+i.x,a=e.x2*r+i.x,n=e.y1*r+i.y,o=e.y2*r+i.y;return{x1:u,x2:a,y1:n,y2:o,w:a-u,h:o-n}};Q4.dirtyCompoundBoundsCache=function(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();if(!e.styleEnabled()||!e.hasCompoundNodes())return this;return this.forEachUp(function(t){if(t.isParent()){var r=t._private;if(r.compoundBoundsClean=!1,r.bbCache=null,!A)t.emitAndNotify("bounds")}}),this};Q4.updateCompoundBounds=function(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,e=this.cy();if(!e.styleEnabled()||!e.hasCompoundNodes())return this;if(!A&&e.batching())return this;function t(a){if(!a.isParent())return;var n=a._private,o=a.children(),s=a.pstyle("compound-sizing-wrt-labels").value==="include",l={width:{val:a.pstyle("min-width").pfValue,left:a.pstyle("min-width-bias-left"),right:a.pstyle("min-width-bias-right")},height:{val:a.pstyle("min-height").pfValue,top:a.pstyle("min-height-bias-top"),bottom:a.pstyle("min-height-bias-bottom")}},g=o.boundingBox({includeLabels:s,includeOverlays:!1,useCache:!1}),C=n.position;if(g.w===0||g.h===0)g={w:a.pstyle("width").pfValue,h:a.pstyle("height").pfValue},g.x1=C.x-g.w/2,g.x2=C.x+g.w/2,g.y1=C.y-g.h/2,g.y2=C.y+g.h/2;function B(k,v,S){var x=0,F=0,T=v+S;if(k>0&&T>0)x=v/T*k,F=S/T*k;return{biasDiff:x,biasComplementDiff:F}}function E(k,v,S,x){if(S.units==="%")switch(x){case"width":return k>0?S.pfValue*k:0;case"height":return v>0?S.pfValue*v:0;case"average":return k>0&&v>0?S.pfValue*(k+v)/2:0;case"min":return k>0&&v>0?k>v?S.pfValue*v:S.pfValue*k:0;case"max":return k>0&&v>0?k>v?S.pfValue*k:S.pfValue*v:0;default:return 0}else if(S.units==="px")return S.pfValue;else return 0}var d=l.width.left.value;if(l.width.left.units==="px"&&l.width.val>0)d=d*100/l.width.val;var I=l.width.right.value;if(l.width.right.units==="px"&&l.width.val>0)I=I*100/l.width.val;var h=l.height.top.value;if(l.height.top.units==="px"&&l.height.val>0)h=h*100/l.height.val;var Q=l.height.bottom.value;if(l.height.bottom.units==="px"&&l.height.val>0)Q=Q*100/l.height.val;var p=B(l.width.val-g.w,d,I),{biasDiff:m,biasComplementDiff:f}=p,D=B(l.height.val-g.h,h,Q),{biasDiff:w,biasComplementDiff:b}=D;n.autoPadding=E(g.w,g.h,a.pstyle("padding"),a.pstyle("padding-relative-to").value),n.autoWidth=Math.max(g.w,l.width.val),C.x=(-m+g.x1+g.x2+f)/2,n.autoHeight=Math.max(g.h,l.height.val),C.y=(-w+g.y1+g.y2+b)/2}for(var r=0;r<this.length;r++){var i=this[r],u=i._private;if(!u.compoundBoundsClean||A){if(t(i),!e.batching())u.compoundBoundsClean=!0}}return this};Rk={includeNodes:!0,includeEdges:!0,includeLabels:!0,includeMainLabels:!0,includeSourceLabels:!0,includeTargetLabels:!0,includeOverlays:!0,includeUnderlays:!0,includeOutlines:!0,useCache:!0},VYA=NKA(Rk),jYA=l0(Rk);Q4.boundingBox=function(A){var e,t=A===void 0||A.useCache===void 0||A.useCache===!0,r=Xy(function(l){var g=l._private;return g.bbCache==null||g.styleDirty||g.bbCachePosKey!==GKA(l)},function(l){return l.id()});if(t&&this.length===1&&!r(this[0])){if(A===void 0)A=Rk;else A=jYA(A);e=ZYA(this[0],A)}else{e=Qs(),A=A||Rk;var i=jYA(A),u=this,a=u.cy(),n=a.styleEnabled();if(this.edges().forEach(r),this.nodes().forEach(r),n)this.recalculateRenderedStyle(t);this.updateCompoundBounds(!t);for(var o=0;o<u.length;o++){var s=u[o];if(r(s))s.dirtyBoundingBoxCache();u4(e,ZYA(s,i))}}return e.x1=rc(e.x1),e.y1=rc(e.y1),e.x2=rc(e.x2),e.y2=rc(e.y2),e.w=rc(e.x2-e.x1),e.h=rc(e.y2-e.y1),e};Q4.dirtyBoundingBoxCache=function(){for(var A=0;A<this.length;A++){var e=this[A]._private;e.bbCache=null,e.bbCachePosKey=null,e.bodyBounds=null,e.overlayBounds=null,e.labelBounds.all=null,e.labelBounds.source=null,e.labelBounds.target=null,e.labelBounds.main=null,e.labelBounds.sourceRot=null,e.labelBounds.targetRot=null,e.labelBounds.mainRot=null,e.arrowBounds.source=null,e.arrowBounds.target=null,e.arrowBounds["mid-source"]=null,e.arrowBounds["mid-target"]=null}return this.emitAndNotify("bounds"),this};Q4.boundingBoxAt=function(A){var e=this.nodes(),t=this.cy(),r=t.hasCompoundNodes(),i=t.collection();if(r)i=e.filter(function(s){return s.isParent()}),e=e.not(i);if(Hi(A)){var u=A;A=function(){return u}}var a=function(l,g){return l._private.bbAtOldPos=A(l,g)},n=function(l){return l._private.bbAtOldPos};if(t.startBatch(),e.forEach(a).silentPositions(A),r)i.dirtyCompoundBoundsCache(),i.dirtyBoundingBoxCache(),i.updateCompoundBounds(!0);var o=qQt(this.boundingBox({useCache:!1}));if(e.silentPositions(n),r)i.dirtyCompoundBoundsCache(),i.dirtyBoundingBoxCache(),i.updateCompoundBounds(!0);return t.endBatch(),o};jy.boundingbox=jy.bb=jy.boundingBox;jy.renderedBoundingbox=jy.renderedBoundingBox;Ept=Q4;mk=Pk={};UKA({name:"width"});UKA({name:"height"});Pk.padding=function(){var A=this[0],e=A._private;if(A.isParent())if(A.updateCompoundBounds(),e.autoPadding!==void 0)return e.autoPadding;else return A.pstyle("padding").pfValue;else return A.pstyle("padding").pfValue};Pk.paddedHeight=function(){var A=this[0];return A.height()+2*A.padding()};Pk.paddedWidth=function(){var A=this[0];return A.width()+2*A.padding()};dpt=Pk,XYA={controlPoints:{get:ppt,mult:!0},segmentPoints:{get:fpt,mult:!0},sourceEndpoint:{get:mpt},targetEndpoint:{get:Dpt},midpoint:{get:ypt}},bpt=Object.keys(XYA).reduce(function(A,e){var t=XYA[e],r=wpt(e);if(A[e]=function(){return Ipt(this,t.get)},t.mult)A[r]=function(){return Qpt(this,t.get)};else A[r]=function(){return hpt(this,t.get)};return A},{}),vpt=dr({},gpt,Ept,dpt,bpt);/*!
Event object based on jQuery events, MIT license
https://jquery.org/license/
https://tldrlegal.com/license/mit-license
https://github.com/jquery/jquery/blob/master/src/event.js
*/MKA.prototype={instanceString:function(){return"event"},recycle:function(e,t){if(this.isImmediatePropagationStopped=this.isPropagationStopped=this.isDefaultPrevented=dk,e!=null&&e.preventDefault)this.type=e.type,this.isDefaultPrevented=e.defaultPrevented?aT:dk;else if(e!=null&&e.type)t=e;else this.type=e;if(t!=null)this.originalEvent=t.originalEvent,this.type=t.type!=null?t.type:this.type,this.cy=t.cy,this.target=t.target,this.position=t.position,this.renderedPosition=t.renderedPosition,this.namespace=t.namespace,this.layout=t.layout;if(this.cy!=null&&this.position!=null&&this.renderedPosition==null){var r=this.position,i=this.cy.zoom(),u=this.cy.pan();this.renderedPosition={x:r.x*i+u.x,y:r.y*i+u.y}}this.timeStamp=e&&e.timeStamp||Date.now()},preventDefault:function(){this.isDefaultPrevented=aT;var e=this.originalEvent;if(!e)return;if(e.preventDefault)e.preventDefault()},stopPropagation:function(){this.isPropagationStopped=aT;var e=this.originalEvent;if(!e)return;if(e.stopPropagation)e.stopPropagation()},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=aT,this.stopPropagation()},isDefaultPrevented:dk,isPropagationStopped:dk,isImmediatePropagationStopped:dk};TKA=/^([^.]+)(\.(?:[^.]+))?$/,YKA={qualifierCompare:function(e,t){return e===t},eventMatches:function(){return!0},addEventFields:function(){},callbackContext:function(e){return e},beforeEmit:function(){},afterEmit:function(){},bubble:function(){return!1},parent:function(){return null},context:null},$YA=Object.keys(YKA),Fpt={};d4=qT.prototype;d4.on=d4.addListener=function(A,e,t,r,i){return HKA(this,function(u,a,n,o,s,l,g){if(La(l))u.listeners.push({event:a,callback:l,type:n,namespace:o,qualifier:s,conf:g})},A,e,t,r,i),this};d4.one=function(A,e,t,r){return this.on(A,e,t,r,{one:!0})};d4.removeListener=d4.off=function(A,e,t,r){var i=this;if(this.emitting!==0)this.listeners=dQt(this.listeners);var u=this.listeners,a=function(s){var l=u[s];HKA(i,function(g,C,B,E,d,I){if((l.type===B||A==="*")&&(!E&&l.namespace!==".*"||l.namespace===E)&&(!d||g.qualifierCompare(l.qualifier,d))&&(!I||l.callback===I))return u.splice(s,1),!1},A,e,t,r)};for(var n=u.length-1;n>=0;n--)a(n);return this};d4.removeAllListeners=function(){return this.removeListener("*")};d4.emit=d4.trigger=function(A,e,t){var r=this.listeners,i=r.length;if(this.emitting++,!Mu(e))e=[e];return xpt(this,function(u,a){if(t!=null)r=[{event:a.event,type:a.type,namespace:a.namespace,callback:t}],i=r.length;var n=function(){var l=r[o];if(l.type===a.type&&(!l.namespace||l.namespace===a.namespace||l.namespace===kpt)&&u.eventMatches(u.context,l,a)){var g=[a];if(e!=null)hQt(g,e);if(u.beforeEmit(u.context,l,a),l.conf&&l.conf.one)u.listeners=u.listeners.filter(function(E){return E!==l});var C=u.callbackContext(u.context,l,a),B=l.callback.apply(C,g);if(u.afterEmit(u.context,l,a),B===!1)a.stopPropagation(),a.preventDefault()}};for(var o=0;o<i;o++)n();if(u.bubble(u.context)&&!a.isPropagationStopped())u.parent(u.context).emit(a,e)},A),this.emitting--,this};Spt={qualifierCompare:function(e,t){if(e==null||t==null)return e==null&&t==null;else return e.sameText(t)},eventMatches:function(e,t,r){var i=t.qualifier;if(i!=null)return e!==r.target&&Tk(r.target)&&i.matches(r.target);return!0},addEventFields:function(e,t){t.cy=e.cy(),t.target=e},callbackContext:function(e,t,r){return t.qualifier!=null?r.target:e},beforeEmit:function(e,t){if(t.conf&&t.conf.once)t.conf.onceCollection.removeListener(t.event,t.qualifier,t.callback)},bubble:function(){return!0},parent:function(e){return e.isChild()?e.parent():e.cy()}},KKA={createEmitter:function(){for(var e=0;e<this.length;e++){var t=this[e],r=t._private;if(!r.emitter)r.emitter=new qT(Spt,t)}return this},emitter:function(){return this._private.emitter},on:function(e,t,r){var i=nT(t);for(var u=0;u<this.length;u++){var a=this[u];a.emitter().on(e,i,r)}return this},removeListener:function(e,t,r){var i=nT(t);for(var u=0;u<this.length;u++){var a=this[u];a.emitter().removeListener(e,i,r)}return this},removeAllListeners:function(){for(var e=0;e<this.length;e++){var t=this[e];t.emitter().removeAllListeners()}return this},one:function(e,t,r){var i=nT(t);for(var u=0;u<this.length;u++){var a=this[u];a.emitter().one(e,i,r)}return this},once:function(e,t,r){var i=nT(t);for(var u=0;u<this.length;u++){var a=this[u];a.emitter().on(e,i,r,{once:!0,onceCollection:this})}},emit:function(e,t){for(var r=0;r<this.length;r++){var i=this[r];i.emitter().emit(e,t)}return this},emitAndNotify:function(e,t){if(this.length===0)return;return this.cy().notify(e,this),this.emit(e,t),this}};Eu.eventAliasesOn(KKA);JKA={nodes:function(e){return this.filter(function(t){return t.isNode()}).filter(e)},edges:function(e){return this.filter(function(t){return t.isEdge()}).filter(e)},byGroup:function(){var e=this.spawn(),t=this.spawn();for(var r=0;r<this.length;r++){var i=this[r];if(i.isNode())e.push(i);else t.push(i)}return{nodes:e,edges:t}},filter:function(e,t){if(e===void 0)return this;else if(tr(e)||sg(e))return new B4(e).filter(this);else if(La(e)){var r=this.spawn(),i=this;for(var u=0;u<i.length;u++){var a=i[u],n=t?e.apply(t,[a,u,i]):e(a,u,i);if(n)r.push(a)}return r}return this.spawn()},not:function(e){if(!e)return this;else{if(tr(e))e=this.filter(e);var t=this.spawn();for(var r=0;r<this.length;r++){var i=this[r],u=e.has(i);if(!u)t.push(i)}return t}},absoluteComplement:function(){var e=this.cy();return e.mutableElements().not(this)},intersect:function(e){if(tr(e)){var t=e;return this.filter(t)}var r=this.spawn(),i=this,u=e,a=this.length<e.length,n=a?i:u,o=a?u:i;for(var s=0;s<n.length;s++){var l=n[s];if(o.has(l))r.push(l)}return r},xor:function(e){var t=this._private.cy;if(tr(e))e=t.$(e);var r=this.spawn(),i=this,u=e,a=function(o,s){for(var l=0;l<o.length;l++){var g=o[l],C=g._private.data.id,B=s.hasElementWithId(C);if(!B)r.push(g)}};return a(i,u),a(u,i),r},diff:function(e){var t=this._private.cy;if(tr(e))e=t.$(e);var r=this.spawn(),i=this.spawn(),u=this.spawn(),a=this,n=e,o=function(l,g,C){for(var B=0;B<l.length;B++){var E=l[B],d=E._private.data.id,I=g.hasElementWithId(d);if(I)u.merge(E);else C.push(E)}};return o(a,n,r),o(n,a,i),{left:r,right:i,both:u}},add:function(e){var t=this._private.cy;if(!e)return this;if(tr(e)){var r=e;e=t.mutableElements().filter(r)}var i=this.spawnSelf();for(var u=0;u<e.length;u++){var a=e[u],n=!this.has(a);if(n)i.push(a)}return i},merge:function(e){var t=this._private,r=t.cy;if(!e)return this;if(e&&tr(e)){var i=e;e=r.mutableElements().filter(i)}var u=t.map;for(var a=0;a<e.length;a++){var n=e[a],o=n._private.data.id,s=!u.has(o);if(s){var l=this.length++;this[l]=n,u.set(o,{ele:n,index:l})}}return this},unmergeAt:function(e){var t=this[e],r=t.id(),i=this._private,u=i.map;this[e]=void 0,u.delete(r);var a=e===this.length-1;if(this.length>1&&!a){var n=this.length-1,o=this[n],s=o._private.data.id;this[n]=void 0,this[e]=o,u.set(s,{ele:o,index:e})}return this.length--,this},unmergeOne:function(e){e=e[0];var t=this._private,r=e._private.data.id,i=t.map,u=i.get(r);if(!u)return this;var a=u.index;return this.unmergeAt(a),this},unmerge:function(e){var t=this._private.cy;if(!e)return this;if(e&&tr(e)){var r=e;e=t.mutableElements().filter(r)}for(var i=0;i<e.length;i++)this.unmergeOne(e[i]);return this},unmergeBy:function(e){for(var t=this.length-1;t>=0;t--){var r=this[t];if(e(r))this.unmergeAt(t)}return this},map:function(e,t){var r=[],i=this;for(var u=0;u<i.length;u++){var a=i[u],n=t?e.apply(t,[a,u,i]):e(a,u,i);r.push(n)}return r},reduce:function(e,t){var r=t,i=this;for(var u=0;u<i.length;u++)r=e(r,i[u],u,i);return r},max:function(e,t){var r=-1/0,i,u=this;for(var a=0;a<u.length;a++){var n=u[a],o=t?e.apply(t,[n,a,u]):e(n,a,u);if(o>r)r=o,i=n}return{value:r,ele:i}},min:function(e,t){var r=1/0,i,u=this;for(var a=0;a<u.length;a++){var n=u[a],o=t?e.apply(t,[n,a,u]):e(n,a,u);if(o<r)r=o,i=n}return{value:r,ele:i}}},Xi=JKA;Xi.u=Xi["|"]=Xi["+"]=Xi.union=Xi.or=Xi.add;Xi["\\"]=Xi["!"]=Xi["-"]=Xi.difference=Xi.relativeComplement=Xi.subtract=Xi.not;Xi.n=Xi["&"]=Xi["."]=Xi.and=Xi.intersection=Xi.intersect;Xi["^"]=Xi["(+)"]=Xi["(-)"]=Xi.symmetricDifference=Xi.symdiff=Xi.xor;Xi.fnFilter=Xi.filterFn=Xi.stdFilter=Xi.filter;Xi.complement=Xi.abscomp=Xi.absoluteComplement;Lpt={isNode:function(){return this.group()==="nodes"},isEdge:function(){return this.group()==="edges"},isLoop:function(){return this.isEdge()&&this.source()[0]===this.target()[0]},isSimple:function(){return this.isEdge()&&this.source()[0]!==this.target()[0]},group:function(){var e=this[0];if(e)return e._private.group}},xT={forEach:function(e,t){if(La(e)){var r=this.length;for(var i=0;i<r;i++){var u=this[i],a=t?e.apply(t,[u,i,this]):e(u,i,this);if(a===!1)break}}return this},toArray:function(){var e=[];for(var t=0;t<this.length;t++)e.push(this[t]);return e},slice:function(e,t){var r=[],i=this.length;if(t==null)t=i;if(e==null)e=0;if(e<0)e=i+e;if(t<0)t=i+t;for(var u=e;u>=0&&u<t&&u<i;u++)r.push(this[u]);return this.spawn(r)},size:function(){return this.length},eq:function(e){return this[e]||this.spawn()},first:function(){return this[0]||this.spawn()},last:function(){return this[this.length-1]||this.spawn()},empty:function(){return this.length===0},nonempty:function(){return!this.empty()},sort:function(e){if(!La(e))return this;var t=this.toArray().sort(e);return this.spawn(t)},sortByZIndex:function(){return this.sort(OKA)},zDepth:function(){var e=this[0];if(!e)return;var t=e._private,r=t.group;if(r==="nodes"){var i=t.data.parent?e.parents().size():0;if(!e.isParent())return baA-1;return i}else{var{source:u,target:a}=t,n=u.zDepth(),o=a.zDepth();return Math.max(n,o,0)}}};xT.each=xT.forEach;Rpt();Npt=l0({nodeDimensionsIncludeLabels:!1}),dT={layoutDimensions:function(e){e=Npt(e);var t;if(!this.takesUpSpace())t={w:0,h:0};else if(e.nodeDimensionsIncludeLabels){var r=this.boundingBox();t={w:r.w,h:r.h}}else t={w:this.outerWidth(),h:this.outerHeight()};if(t.w===0||t.h===0)t.w=t.h=1;return t},layoutPositions:function(e,t,r){var i=this.nodes().filter(function(f){return!f.isParent()}),u=this.cy(),a=t.eles,n=function(D){return D.id()},o=Xy(r,n);e.emit({type:"layoutstart",layout:e}),e.animations=[];var s=function(D,w,b){var k={x:w.x1+w.w/2,y:w.y1+w.h/2},v={x:(b.x-k.x)*D,y:(b.y-k.y)*D};return{x:k.x+v.x,y:k.y+v.y}},l=t.spacingFactor&&t.spacingFactor!==1,g=function(){if(!l)return null;var D=Qs();for(var w=0;w<i.length;w++){var b=i[w],k=o(b,w);nKA(D,k.x,k.y)}return D},C=g(),B=Xy(function(f,D){var w=o(f,D);if(l){var b=Math.abs(t.spacingFactor);w=s(b,C,w)}if(t.transform!=null)w=t.transform(f,w);return w},n);if(t.animate){for(var E=0;E<i.length;E++){var d=i[E],I=B(d,E),h=t.animateFilter==null||t.animateFilter(d,E);if(h){var Q=d.animation({position:I,duration:t.animationDuration,easing:t.animationEasing});e.animations.push(Q)}else d.position(I)}if(t.fit){var p=u.animation({fit:{boundingBox:a.boundingBoxAt(B),padding:t.padding},duration:t.animationDuration,easing:t.animationEasing});e.animations.push(p)}else if(t.zoom!==void 0&&t.pan!==void 0){var m=u.animation({zoom:t.zoom,pan:t.pan,duration:t.animationDuration,easing:t.animationEasing});e.animations.push(m)}e.animations.forEach(function(f){return f.play()}),e.one("layoutready",t.ready),e.emit({type:"layoutready",layout:e}),iw.all(e.animations.map(function(f){return f.promise()})).then(function(){e.one("layoutstop",t.stop),e.emit({type:"layoutstop",layout:e})})}else{if(i.positions(B),t.fit)u.fit(t.eles,t.padding);if(t.zoom!=null)u.zoom(t.zoom);if(t.pan)u.pan(t.pan);e.one("layoutready",t.ready),e.emit({type:"layoutready",layout:e}),e.one("layoutstop",t.stop),e.emit({type:"layoutstop",layout:e})}return this},layout:function(e){var t=this.cy();return t.makeLayout(dr({},e,{eles:this}))}};dT.createLayout=dT.makeLayout=dT.layout;o0={recalculateRenderedStyle:function(e){var t=this.cy(),r=t.renderer(),i=t.styleEnabled();if(r&&i)r.recalculateRenderedStyle(this,e);return this},dirtyStyleCache:function(){var e=this.cy(),t=function(u){return u._private.styleCache=null};if(e.hasCompoundNodes()){var r=this.spawnSelf().merge(this.descendants()).merge(this.parents());r.merge(r.connectedEdges()),r.forEach(t)}else this.forEach(function(i){t(i),i.connectedEdges().forEach(t)});return this},updateStyle:function(e){var t=this._private.cy;if(!t.styleEnabled())return this;if(t.batching()){var r=t._private.batchStyleEles;return r.merge(this),this}var i=t.hasCompoundNodes(),u=this;if(e=e||e===void 0?!0:!1,i)u=this.spawnSelf().merge(this.descendants()).merge(this.parents());var a=u;if(e)a.emitAndNotify("style");else a.emit("style");return u.forEach(function(n){return n._private.styleDirty=!0}),this},cleanStyle:function(){var e=this.cy();if(!e.styleEnabled())return;for(var t=0;t<this.length;t++){var r=this[t];if(r._private.styleDirty)r._private.styleDirty=!1,e.style().apply(r)}},parsedStyle:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,r=this[0],i=r.cy();if(!i.styleEnabled())return;if(r){if(r._private.styleDirty)r._private.styleDirty=!1,i.style().apply(r);var u=r._private.style[e];if(u!=null)return u;else if(t)return i.style().getDefaultProperty(e);else return null}},numericStyle:function(e){var t=this[0];if(!t.cy().styleEnabled())return;if(t){var r=t.pstyle(e);return r.pfValue!==void 0?r.pfValue:r.value}},numericStyleUnits:function(e){var t=this[0];if(!t.cy().styleEnabled())return;if(t)return t.pstyle(e).units},renderedStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var r=this[0];if(r)return t.style().getRenderedStyle(r,e)},style:function(e,t){var r=this.cy();if(!r.styleEnabled())return this;var i=!1,u=r.style();if(Hi(e)){var a=e;u.applyBypass(this,a,i),this.emitAndNotify("style")}else if(tr(e))if(t===void 0){var n=this[0];if(n)return u.getStylePropertyValue(n,e);else return}else u.applyBypass(this,e,t,i),this.emitAndNotify("style");else if(e===void 0){var o=this[0];if(o)return u.getRawStyle(o);else return}return this},removeStyle:function(e){var t=this.cy();if(!t.styleEnabled())return this;var r=!1,i=t.style(),u=this;if(e===void 0)for(var a=0;a<u.length;a++){var n=u[a];i.removeAllBypasses(n,r)}else{e=e.split(/\s+/);for(var o=0;o<u.length;o++){var s=u[o];i.removeBypasses(s,e,r)}}return this.emitAndNotify("style"),this},show:function(){return this.css("display","element"),this},hide:function(){return this.css("display","none"),this},effectiveOpacity:function(){var e=this.cy();if(!e.styleEnabled())return 1;var t=e.hasCompoundNodes(),r=this[0];if(r){var i=r._private,u=r.pstyle("opacity").value;if(!t)return u;var a=!i.data.parent?null:r.parents();if(a)for(var n=0;n<a.length;n++){var o=a[n],s=o.pstyle("opacity").value;u=s*u}return u}},transparent:function(){var e=this.cy();if(!e.styleEnabled())return!1;var t=this[0],r=t.cy().hasCompoundNodes();if(t)if(!r)return t.pstyle("opacity").value===0;else return t.effectiveOpacity()===0},backgrounding:function(){var e=this.cy();if(!e.styleEnabled())return!1;var t=this[0];return t._private.backgrounding?!0:!1}};uw=zT("eleTakesUpSpace",function(A){return A.pstyle("display").value==="element"&&A.width()!==0&&(A.isNode()?A.height()!==0:!0)});o0.takesUpSpace=ZT("takesUpSpace",TaA({ok:uw}));Gpt=zT("eleInteractive",function(A){return A.pstyle("events").value==="yes"&&A.pstyle("visibility").value==="visible"&&uw(A)}),Upt=zT("parentInteractive",function(A){return A.pstyle("visibility").value==="visible"&&uw(A)});o0.interactive=ZT("interactive",TaA({ok:Gpt,parentOk:Upt,edgeOkViaNode:uw}));o0.noninteractive=function(){var A=this[0];if(A)return!A.interactive()};Mpt=zT("eleVisible",function(A){return A.pstyle("visibility").value==="visible"&&A.pstyle("opacity").pfValue!==0&&uw(A)}),Tpt=uw;o0.visible=ZT("visible",TaA({ok:Mpt,edgeOkViaNode:Tpt}));o0.hidden=function(){var A=this[0];if(A)return!A.visible()};o0.isBundledBezier=ZT("isBundledBezier",function(){if(!this.cy().styleEnabled())return!1;return!this.removed()&&this.pstyle("curve-style").value==="bezier"&&this.takesUpSpace()});o0.bypass=o0.css=o0.style;o0.renderedCss=o0.renderedStyle;o0.removeBypass=o0.removeCss=o0.removeStyle;o0.pstyle=o0.parsedStyle;l4={};aw({field:"locked",overrideField:function(e){return e.cy().autolock()?!0:void 0},on:"lock",off:"unlock"});aw({field:"grabbable",overrideField:function(e){return e.cy().autoungrabify()||e.pannable()?!1:void 0},on:"grabify",off:"ungrabify"});aw({field:"selected",ableField:"selectable",overrideAble:function(e){return e.cy().autounselectify()?!1:void 0},on:"select",off:"unselect"});aw({field:"selectable",overrideField:function(e){return e.cy().autounselectify()?!1:void 0},on:"selectify",off:"unselectify"});l4.deselect=l4.unselect;l4.grabbed=function(){var A=this[0];if(A)return A._private.grabbed};aw({field:"active",on:"activate",off:"unactivate"});aw({field:"pannable",on:"panify",off:"unpanify"});l4.inactive=function(){var A=this[0];if(A)return!A._private.active};T0={};T0.clearTraversalCache=function(){for(var A=0;A<this.length;A++)this[A]._private.traversalCache=null};dr(T0,{roots:tHA({noIncomingEdges:!0}),leaves:tHA({noOutgoingEdges:!0}),outgoers:ic(rHA({outgoing:!0}),"outgoers"),successors:iHA({outgoing:!0}),incomers:ic(rHA({incoming:!0}),"incomers"),predecessors:iHA({})});dr(T0,{neighborhood:ic(function(A){var e=[],t=this.nodes();for(var r=0;r<t.length;r++){var i=t[r],u=i.connectedEdges();for(var a=0;a<u.length;a++){var n=u[a],o=n.source(),s=n.target(),l=i===o?s:o;if(l.length>0)e.push(l[0]);e.push(n[0])}}return this.spawn(e,!0).filter(A)},"neighborhood"),closedNeighborhood:function(e){return this.neighborhood().add(this).filter(e)},openNeighborhood:function(e){return this.neighborhood(e)}});T0.neighbourhood=T0.neighborhood;T0.closedNeighbourhood=T0.closedNeighborhood;T0.openNeighbourhood=T0.openNeighborhood;dr(T0,{source:ic(function(e){var t=this[0],r;if(t)r=t._private.source||t.cy().collection();return r&&e?r.filter(e):r},"source"),target:ic(function(e){var t=this[0],r;if(t)r=t._private.target||t.cy().collection();return r&&e?r.filter(e):r},"target"),sources:uHA({attr:"source"}),targets:uHA({attr:"target"})});dr(T0,{edgesWith:ic(aHA(),"edgesWith"),edgesTo:ic(aHA({thisIsSrc:!0}),"edgesTo")});dr(T0,{connectedEdges:ic(function(A){var e=[],t=this;for(var r=0;r<t.length;r++){var i=t[r];if(!i.isNode())continue;var u=i._private.edges;for(var a=0;a<u.length;a++){var n=u[a];e.push(n)}}return this.spawn(e,!0).filter(A)},"connectedEdges"),connectedNodes:ic(function(A){var e=[],t=this;for(var r=0;r<t.length;r++){var i=t[r];if(!i.isEdge())continue;e.push(i.source()[0]),e.push(i.target()[0])}return this.spawn(e,!0).filter(A)},"connectedNodes"),parallelEdges:ic(nHA(),"parallelEdges"),codirectedEdges:ic(nHA({codirected:!0}),"codirectedEdges")});dr(T0,{components:function(e){var t=this,r=t.cy(),i=r.collection(),u=e==null?t.nodes():e.nodes(),a=[];if(e!=null&&u.empty())u=e.sources();var n=function(l,g){i.merge(l),u.unmerge(l),g.merge(l)};if(u.empty())return t.spawn();var o=function(){var l=r.collection();a.push(l);var g=u[0];n(g,l),t.bfs({directed:!1,roots:g,visit:function(B){return n(B,l)}}),l.forEach(function(C){C.connectedEdges().forEach(function(B){if(t.has(B)&&l.has(B.source())&&l.has(B.target()))l.merge(B)})})};do o();while(u.length>0);return a},component:function(){var e=this[0];return e.cy().mutableElements().components(e)[0]}});T0.componentsOf=T0.components;Pu=YT.prototype=s0.prototype=Object.create(Array.prototype);Pu.instanceString=function(){return"collection"};Pu.spawn=function(A,e){return new s0(this.cy(),A,e)};Pu.spawnSelf=function(){return this.spawn(this)};Pu.cy=function(){return this._private.cy};Pu.renderer=function(){return this._private.cy.renderer()};Pu.element=function(){return this[0]};Pu.collection=function(){if(OHA(this))return this;else return new s0(this._private.cy,[this])};Pu.unique=function(){return new s0(this._private.cy,this,!0)};Pu.hasElementWithId=function(A){return A=""+A,this._private.map.has(A)};Pu.getElementById=function(A){A=""+A;var e=this._private.cy,t=this._private.map.get(A);return t?t.ele:new s0(e)};Pu.$id=Pu.getElementById;Pu.poolIndex=function(){var A=this._private.cy,e=A._private.elements,t=this[0]._private.data.id;return e._private.map.get(t).index};Pu.indexOf=function(A){var e=A[0]._private.data.id;return this._private.map.get(e).index};Pu.indexOfId=function(A){return A=""+A,this._private.map.get(A).index};Pu.json=function(A){var e=this.element(),t=this.cy();if(e==null&&A)return this;if(e==null)return;var r=e._private;if(Hi(A)){if(t.startBatch(),A.data){e.data(A.data);var i=r.data;if(e.isEdge()){var u=!1,a={},n=A.data.source,o=A.data.target;if(n!=null&&n!=i.source)a.source=""+n,u=!0;if(o!=null&&o!=i.target)a.target=""+o,u=!0;if(u)e=e.move(a)}else{var s="parent"in A.data,l=A.data.parent;if(s&&(l!=null||i.parent!=null)&&l!=i.parent){if(l===void 0)l=null;if(l!=null)l=""+l;e=e.move({parent:l})}}}if(A.position)e.position(A.position);var g=function(d,I,h){var Q=A[d];if(Q!=null&&Q!==r[d])if(Q)e[I]();else e[h]()};if(g("removed","remove","restore"),g("selected","select","unselect"),g("selectable","selectify","unselectify"),g("locked","lock","unlock"),g("grabbable","grabify","ungrabify"),g("pannable","panify","unpanify"),A.classes!=null)e.classes(A.classes);return t.endBatch(),this}else if(A===void 0){var C={data:pE(r.data),position:pE(r.position),group:r.group,removed:r.removed,selected:r.selected,selectable:r.selectable,locked:r.locked,grabbable:r.grabbable,pannable:r.pannable,classes:null};C.classes="";var B=0;return r.classes.forEach(function(E){return C.classes+=B++===0?E:" "+E}),C}};Pu.jsons=function(){var A=[];for(var e=0;e<this.length;e++){var t=this[e],r=t.json();A.push(r)}return A};Pu.clone=function(){var A=this.cy(),e=[];for(var t=0;t<this.length;t++){var r=this[t],i=r.json(),u=new YT(A,i,!1);e.push(u)}return new s0(A,e)};Pu.copy=Pu.clone;Pu.restore=function(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,t=this,r=t.cy(),i=r._private,u=[],a=[],n;for(var o=0,s=t.length;o<s;o++){var l=t[o];if(e&&!l.removed())continue;if(l.isNode())u.push(l);else a.push(l)}n=u.concat(a);var g,C=function(){n.splice(g,1),g--};for(g=0;g<n.length;g++){var B=n[g],E=B._private,d=E.data;if(B.clearTraversalCache(),!e&&!E.removed);else if(d.id===void 0)d.id=rKA();else if(ht(d.id))d.id=""+d.id;else if(g4(d.id)||!tr(d.id)){Qa("Can not create element with invalid string ID `"+d.id+"`"),C();continue}else if(r.hasElementWithId(d.id)){Qa("Can not create second element with ID `"+d.id+"`"),C();continue}var I=d.id;if(B.isNode()){var h=E.position;if(h.x==null)h.x=0;if(h.y==null)h.y=0}if(B.isEdge()){var Q=B,p=["source","target"],m=p.length,f=!1;for(var D=0;D<m;D++){var w=p[D],b=d[w];if(ht(b))b=d[w]=""+d[w];if(b==null||b==="")Qa("Can not create edge `"+I+"` with unspecified "+w),f=!0;else if(!r.hasElementWithId(b))Qa("Can not create edge `"+I+"` with nonexistent "+w+" `"+b+"`"),f=!0}if(f){C();continue}var k=r.getElementById(d.source),v=r.getElementById(d.target);if(k.same(v))k._private.edges.push(Q);else k._private.edges.push(Q),v._private.edges.push(Q);Q._private.source=k,Q._private.target=v}if(E.map=new yI,E.map.set(I,{ele:B,index:0}),E.removed=!1,e)r.addToPool(B)}for(var S=0;S<u.length;S++){var x=u[S],F=x._private.data;if(ht(F.parent))F.parent=""+F.parent;var T=F.parent,R=T!=null;if(R||x._private.parent){var L=x._private.parent?r.collection().merge(x._private.parent):r.getElementById(T);if(L.empty())F.parent=void 0;else if(L[0].removed())du("Node added with missing parent, reference to parent removed"),F.parent=void 0,x._private.parent=null;else{var M=!1,U=L;while(!U.empty()){if(x.same(U)){M=!0,F.parent=void 0;break}U=U.parent()}if(!M)L[0]._private.children.push(x),x._private.parent=L[0],i.hasCompoundNodes=!0}}}if(n.length>0){var Y=n.length===t.length?t:new s0(r,n);for(var H=0;H<Y.length;H++){var J=Y[H];if(J.isNode())continue;J.parallelEdges().clearTraversalCache(),J.source().clearTraversalCache(),J.target().clearTraversalCache()}var K;if(i.hasCompoundNodes)K=r.collection().merge(Y).merge(Y.connectedNodes()).merge(Y.parent());else K=Y;if(K.dirtyCompoundBoundsCache().dirtyBoundingBoxCache().updateStyle(A),A)Y.emitAndNotify("add");else if(e)Y.emit("add")}return t};Pu.removed=function(){var A=this[0];return A&&A._private.removed};Pu.inside=function(){var A=this[0];return A&&!A._private.removed};Pu.remove=function(){var A=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,t=this,r=[],i={},u=t._private.cy;function a(T){var R=T._private.edges;for(var L=0;L<R.length;L++)o(R[L])}function n(T){var R=T._private.children;for(var L=0;L<R.length;L++)o(R[L])}function o(T){var R=i[T.id()];if(e&&T.removed()||R)return;else i[T.id()]=!0;if(T.isNode())r.push(T),a(T),n(T);else r.unshift(T)}for(var s=0,l=t.length;s<l;s++){var g=t[s];o(g)}function C(T,R){var L=T._private.edges;c4(L,R),T.clearTraversalCache()}function B(T){T.clearTraversalCache()}var E=[];E.ids={};function d(T,R){R=R[0],T=T[0];var L=T._private.children,M=T.id();if(c4(L,R),R._private.parent=null,!E.ids[M])E.ids[M]=!0,E.push(T)}if(t.dirtyCompoundBoundsCache(),e)u.removeFromPool(r);for(var I=0;I<r.length;I++){var h=r[I];if(h.isEdge()){var Q=h.source()[0],p=h.target()[0];C(Q,h),C(p,h);var m=h.parallelEdges();for(var f=0;f<m.length;f++){var D=m[f];if(B(D),D.isBundledBezier())D.dirtyBoundingBoxCache()}}else{var w=h.parent();if(w.length!==0)d(w,h)}if(e)h._private.removed=!0}var b=u._private.elements;u._private.hasCompoundNodes=!1;for(var k=0;k<b.length;k++){var v=b[k];if(v.isParent()){u._private.hasCompoundNodes=!0;break}}var S=new s0(this.cy(),r);if(S.size()>0){if(A)S.emitAndNotify("remove");else if(e)S.emit("remove")}for(var x=0;x<E.length;x++){var F=E[x];if(!e||!F.removed())F.updateStyle()}return S};Pu.move=function(A){var e=this._private.cy,t=this,r=!1,i=!1,u=function(E){return E==null?E:""+E};if(A.source!==void 0||A.target!==void 0){var a=u(A.source),n=u(A.target),o=a!=null&&e.hasElementWithId(a),s=n!=null&&e.hasElementWithId(n);if(o||s)e.batch(function(){t.remove(r,i),t.emitAndNotify("moveout");for(var B=0;B<t.length;B++){var E=t[B],d=E._private.data;if(E.isEdge()){if(o)d.source=a;if(s)d.target=n}}t.restore(r,i)}),t.emitAndNotify("move")}else if(A.parent!==void 0){var l=u(A.parent),g=l===null||e.hasElementWithId(l);if(g){var C=l===null?void 0:l;e.batch(function(){var B=t.remove(r,i);B.emitAndNotify("moveout");for(var E=0;E<t.length;E++){var d=t[E],I=d._private.data;if(d.isNode())I.parent=C}B.restore(r,i)}),t.emitAndNotify("move")}}return this};[dKA,z1t,ET,s4,Aw,lpt,WT,vpt,KKA,JKA,Lpt,xT,dT,o0,l4,T0].forEach(function(A){dr(Pu,A)});Ypt={add:function(e){var t,r=this;if(sg(e)){var i=e;if(i._private.cy===r)t=i.restore();else{var u=[];for(var a=0;a<i.length;a++){var n=i[a];u.push(n.json())}t=new s0(r,u)}}else if(Mu(e)){var o=e;t=new s0(r,o)}else if(Hi(e)&&(Mu(e.nodes)||Mu(e.edges))){var s=e,l=[],g=["nodes","edges"];for(var C=0,B=g.length;C<B;C++){var E=g[C],d=s[E];if(Mu(d))for(var I=0,h=d.length;I<h;I++){var Q=dr({group:E},d[I]);l.push(Q)}}t=new s0(r,l)}else{var p=e;t=new YT(r,p).collection()}return t},remove:function(e){if(sg(e));else if(tr(e)){var t=e;e=this.$(t)}return e.remove()}};/*! Bezier curve function generator. Copyright Gaetan Renaudeau. MIT License: http://en.wikipedia.org/wiki/MIT_License *//*! Runge-Kutta spring physics function generator. Adapted from Framer.js, copyright Koen Bok. MIT License: http://en.wikipedia.org/wiki/MIT_License */Kpt=function(){function A(r){return-r.tension*r.x-r.friction*r.v}function e(r,i,u){var a={x:r.x+u.dx*i,v:r.v+u.dv*i,tension:r.tension,friction:r.friction};return{dx:a.v,dv:A(a)}}function t(r,i){var u={dx:r.v,dv:A(r)},a=e(r,i*0.5,u),n=e(r,i*0.5,a),o=e(r,i,n),s=0.16666666666666666*(u.dx+2*(a.dx+n.dx)+o.dx),l=0.16666666666666666*(u.dv+2*(a.dv+n.dv)+o.dv);return r.x=r.x+s*i,r.v=r.v+l*i,r}return function r(i,u,a){var n={x:-1,v:0,tension:null,friction:null},o=[0],s=0,l=0.0001,g=0.016,C,B,E;if(i=parseFloat(i)||500,u=parseFloat(u)||20,a=a||null,n.tension=i,n.friction=u,C=a!==null,C)s=r(i,u),B=s/a*g;else B=g;for(;;)if(E=t(E||n,B),o.push(1+E.x),s+=16,!(Math.abs(E.x)>l&&Math.abs(E.v)>l))break;return!C?s:function(d){return o[d*(o.length-1)|0]}}}(),IT={linear:function(e,t,r){return e+(t-e)*r},ease:Ou(0.25,0.1,0.25,1),"ease-in":Ou(0.42,0,1,1),"ease-out":Ou(0,0,0.58,1),"ease-in-out":Ou(0.42,0,0.58,1),"ease-in-sine":Ou(0.47,0,0.745,0.715),"ease-out-sine":Ou(0.39,0.575,0.565,1),"ease-in-out-sine":Ou(0.445,0.05,0.55,0.95),"ease-in-quad":Ou(0.55,0.085,0.68,0.53),"ease-out-quad":Ou(0.25,0.46,0.45,0.94),"ease-in-out-quad":Ou(0.455,0.03,0.515,0.955),"ease-in-cubic":Ou(0.55,0.055,0.675,0.19),"ease-out-cubic":Ou(0.215,0.61,0.355,1),"ease-in-out-cubic":Ou(0.645,0.045,0.355,1),"ease-in-quart":Ou(0.895,0.03,0.685,0.22),"ease-out-quart":Ou(0.165,0.84,0.44,1),"ease-in-out-quart":Ou(0.77,0,0.175,1),"ease-in-quint":Ou(0.755,0.05,0.855,0.06),"ease-out-quint":Ou(0.23,1,0.32,1),"ease-in-out-quint":Ou(0.86,0,0.07,1),"ease-in-expo":Ou(0.95,0.05,0.795,0.035),"ease-out-expo":Ou(0.19,1,0.22,1),"ease-in-out-expo":Ou(1,0,0,1),"ease-in-circ":Ou(0.6,0.04,0.98,0.335),"ease-out-circ":Ou(0.075,0.82,0.165,1),"ease-in-out-circ":Ou(0.785,0.135,0.15,0.86),spring:function(e,t,r){if(r===0)return IT.linear;var i=Kpt(e,t,r);return function(u,a,n){return u+(a-u)*i(n)}},"cubic-bezier":Ou};Ppt={animate:Eu.animate(),animation:Eu.animation(),animated:Eu.animated(),clearQueue:Eu.clearQueue(),delay:Eu.delay(),delayAnimation:Eu.delayAnimation(),stop:Eu.stop(),addToAnimationPool:function(e){var t=this;if(!t.styleEnabled())return;t._private.aniEles.merge(e)},stopAnimationLoop:function(){this._private.animationsRunning=!1},startAnimationLoop:function(){var e=this;if(e._private.animationsRunning=!0,!e.styleEnabled())return;function t(){if(!e._private.animationsRunning)return;wT(function(u){lHA(u,e),t()})}var r=e.renderer();if(r&&r.beforeRender)r.beforeRender(function(u,a){lHA(a,e)},r.beforeRenderPriorities.animations);else t()}},_pt={qualifierCompare:function(e,t){if(e==null||t==null)return e==null&&t==null;else return e.sameText(t)},eventMatches:function(e,t,r){var i=t.qualifier;if(i!=null)return e!==r.target&&Tk(r.target)&&i.matches(r.target);return!0},addEventFields:function(e,t){t.cy=e,t.target=e},callbackContext:function(e,t,r){return t.qualifier!=null?r.target:e}},_KA={createEmitter:function(){var e=this._private;if(!e.emitter)e.emitter=new qT(_pt,this);return this},emitter:function(){return this._private.emitter},on:function(e,t,r){return this.emitter().on(e,oT(t),r),this},removeListener:function(e,t,r){return this.emitter().removeListener(e,oT(t),r),this},removeAllListeners:function(){return this.emitter().removeAllListeners(),this},one:function(e,t,r){return this.emitter().one(e,oT(t),r),this},once:function(e,t,r){return this.emitter().one(e,oT(t),r),this},emit:function(e,t){return this.emitter().emit(e,t),this},emitAndNotify:function(e,t){return this.emit(e),this.notify(e,t),this}};Eu.eventAliasesOn(_KA);gaA={png:function(e){var t=this._private.renderer;return e=e||{},t.png(e)},jpg:function(e){var t=this._private.renderer;return e=e||{},e.bg=e.bg||"#fff",t.jpg(e)}};gaA.jpeg=gaA.jpg;hT={layout:function(e){var t=this;if(e==null){Qa("Layout options must be specified to make a layout");return}if(e.name==null){Qa("A `name` must be specified to make a layout");return}var r=e.name,i=t.extension("layout",r);if(i==null){Qa("No such layout `"+r+"` found. Did you forget to import it and `cytoscape.use()` it?");return}var u;if(tr(e.eles))u=t.$(e.eles);else u=e.eles!=null?e.eles:t.$();var a=new i(dr({},e,{cy:t,eles:u}));return a}};hT.createLayout=hT.makeLayout=hT.layout;Wpt={notify:function(e,t){var r=this._private;if(this.batching()){r.batchNotifications=r.batchNotifications||{};var i=r.batchNotifications[e]=r.batchNotifications[e]||this.collection();if(t!=null)i.merge(t);return}if(!r.notificationsEnabled)return;var u=this.renderer();if(this.destroyed()||!u)return;u.notify(e,t)},notifications:function(e){var t=this._private;if(e===void 0)return t.notificationsEnabled;else t.notificationsEnabled=e?!0:!1;return this},noNotifications:function(e){this.notifications(!1),e(),this.notifications(!0)},batching:function(){return this._private.batchCount>0},startBatch:function(){var e=this._private;if(e.batchCount==null)e.batchCount=0;if(e.batchCount===0)e.batchStyleEles=this.collection(),e.batchNotifications={};return e.batchCount++,this},endBatch:function(){var e=this._private;if(e.batchCount===0)return this;if(e.batchCount--,e.batchCount===0){e.batchStyleEles.updateStyle();var t=this.renderer();Object.keys(e.batchNotifications).forEach(function(r){var i=e.batchNotifications[r];if(i.empty())t.notify(r);else t.notify(r,i)})}return this},batch:function(e){return this.startBatch(),e(),this.endBatch(),this},batchData:function(e){var t=this;return this.batch(function(){var r=Object.keys(e);for(var i=0;i<r.length;i++){var u=r[i],a=e[u],n=t.getElementById(u);n.data(a)}})}},qpt=l0({hideEdgesOnViewport:!1,textureOnViewport:!1,motionBlur:!1,motionBlurOpacity:0.05,pixelRatio:void 0,desktopTapThreshold:4,touchTapThreshold:8,wheelSensitivity:1,debug:!1,showFps:!1,webgl:!1,webglDebug:!1,webglDebugShowAtlases:!1,webglTexSize:2048,webglTexRows:36,webglTexRowsNodes:18,webglBatchSize:2048,webglTexPerBatch:14,webglBgColor:[255,255,255]}),caA={renderTo:function(e,t,r,i){var u=this._private.renderer;return u.renderTo(e,t,r,i),this},renderer:function(){return this._private.renderer},forceRender:function(){return this.notify("draw"),this},resize:function(){return this.invalidateSize(),this.emitAndNotify("resize"),this},initRenderer:function(e){var t=this,r=t.extension("renderer",e.name);if(r==null){Qa("Can not initialise: No such renderer `".concat(e.name,"` found. Did you forget to import it and `cytoscape.use()` it?"));return}if(e.wheelSensitivity!==void 0)du("You have set a custom wheel sensitivity. This will make your app zoom unnaturally when using mainstream mice. You should change this value from the default only if you can guarantee that all your users will use the same hardware and OS configuration as your current machine.");var i=qpt(e);i.cy=t,t._private.renderer=new r(i),this.notify("init")},destroyRenderer:function(){var e=this;e.notify("destroy");var t=e.container();if(t){t._cyreg=null;while(t.childNodes.length>0)t.removeChild(t.childNodes[0])}e._private.renderer=null,e.mutableElements().forEach(function(r){var i=r._private;i.rscratch={},i.rstyle={},i.animation.current=[],i.animation.queue=[]})},onRender:function(e){return this.on("render",e)},offRender:function(e){return this.off("render",e)}};caA.invalidateDimensions=caA.resize;QT={collection:function(e,t){if(tr(e))return this.$(e);else if(sg(e))return e.collection();else if(Mu(e)){if(!t)t={};return new s0(this,e,t.unique,t.removed)}return new s0(this)},nodes:function(e){var t=this.$(function(r){return r.isNode()});if(e)return t.filter(e);return t},edges:function(e){var t=this.$(function(r){return r.isEdge()});if(e)return t.filter(e);return t},$:function(e){var t=this._private.elements;if(e)return t.filter(e);else return t.spawnSelf()},mutableElements:function(){return this._private.elements}};QT.elements=QT.filter=QT.$;Yo={};Yo.apply=function(A){var e=this,t=e._private,r=t.cy,i=r.collection();for(var u=0;u<A.length;u++){var a=A[u],n=e.getContextMeta(a);if(n.empty)continue;var o=e.getContextStyle(n),s=e.applyContextStyle(n,o,a);if(a._private.appliedInitStyle)e.updateTransitions(a,s.diffProps);else a._private.appliedInitStyle=!0;var l=e.updateStyleHints(a);if(l)i.push(a)}return i};Yo.getPropertiesDiff=function(A,e){var t=this,r=t._private.propDiffs=t._private.propDiffs||{},i=A+"-"+e,u=r[i];if(u)return u;var a=[],n={};for(var o=0;o<t.length;o++){var s=t[o],l=A[o]===yk,g=e[o]===yk,C=l!==g,B=s.mappedProperties.length>0;if(C||g&&B){var E=void 0;if(C&&B)E=s.properties;else if(C)E=s.properties;else if(B)E=s.mappedProperties;for(var d=0;d<E.length;d++){var I=E[d],h=I.name,Q=!1;for(var p=o+1;p<t.length;p++){var m=t[p],f=e[p]===yk;if(!f)continue;if(Q=m.properties[I.name]!=null,Q)break}if(!n[h]&&!Q)n[h]=!0,a.push(h)}}}return r[i]=a,a};Yo.getContextMeta=function(A){var e=this,t="",r,i=A._private.styleCxtKey||"";for(var u=0;u<e.length;u++){var a=e[u],n=a.selector&&a.selector.matches(A);if(n)t+=yk;else t+=zpt}return r=e.getPropertiesDiff(i,t),A._private.styleCxtKey=t,{key:t,diffPropNames:r,empty:r.length===0}};Yo.getContextStyle=function(A){var e=A.key,t=this,r=this._private.contextStyles=this._private.contextStyles||{};if(r[e])return r[e];var i={_private:{key:e}};for(var u=0;u<t.length;u++){var a=t[u],n=e[u]===yk;if(!n)continue;for(var o=0;o<a.properties.length;o++){var s=a.properties[o];i[s.name]=s}}return r[e]=i,i};Yo.applyContextStyle=function(A,e,t){var r=this,i=A.diffPropNames,u={},a=r.types;for(var n=0;n<i.length;n++){var o=i[n],s=e[o],l=t.pstyle(o);if(!s)if(!l)continue;else if(l.bypass)s={name:o,deleteBypassed:!0};else s={name:o,delete:!0};if(l===s)continue;if(s.mapped===a.fn&&l!=null&&l.mapping!=null&&l.mapping.value===s.value){var g=l.mapping,C=g.fnValue=s.value(t);if(C===g.prevFnValue)continue}var B=u[o]={prev:l};if(r.applyParsedProperty(t,s),B.next=t.pstyle(o),B.next&&B.next.bypass)B.next=B.next.bypassed}return{diffProps:u}};Yo.updateStyleHints=function(A){var e=A._private,t=this,{propertyGroupNames:r,propertyGroupKeys:i}=t,u=function(aA,NA,DA){return t.getPropertiesHash(aA,NA,DA)},a=e.styleKey;if(A.removed())return!1;var n=e.group==="nodes",o=A._private.style;r=Object.keys(o);for(var s=0;s<i.length;s++){var l=i[s];e.styleKeys[l]=[Hf,Py]}var g=function(aA,NA){return e.styleKeys[NA][0]=vk(aA,e.styleKeys[NA][0])},C=function(aA,NA){return e.styleKeys[NA][1]=kk(aA,e.styleKeys[NA][1])},B=function(aA,NA){g(aA,NA),C(aA,NA)},E=function(aA,NA){for(var DA=0;DA<aA.length;DA++){var KA=aA.charCodeAt(DA);g(KA,NA),C(KA,NA)}},d=2000000000,I=function(aA){return-128<aA&&aA<128&&Math.floor(aA)!==aA?d-(aA*1024|0):aA};for(var h=0;h<r.length;h++){var Q=r[h],p=o[Q];if(p==null)continue;var m=this.properties[Q],{type:f,groupKey:D}=m,w=void 0;if(m.hashOverride!=null)w=m.hashOverride(A,p);else if(p.pfValue!=null)w=p.pfValue;var b=m.enums==null?p.value:null,k=w!=null,v=b!=null,S=k||v,x=p.units;if(f.number&&S&&!f.multiple){var F=k?w:b;if(B(I(F),D),!k&&x!=null)E(x,D)}else E(p.strValue,D)}var T=[Hf,Py];for(var R=0;R<i.length;R++){var L=i[R],M=e.styleKeys[L];T[0]=vk(M[0],T[0]),T[1]=kk(M[1],T[1])}e.styleKey=oQt(T[0],T[1]);var U=e.styleKeys;e.labelDimsKey=t4(U.labelDimensions);var Y=u(A,["label"],U.labelDimensions);if(e.labelKey=t4(Y),e.labelStyleKey=t4(AT(U.commonLabel,Y)),!n){var H=u(A,["source-label"],U.labelDimensions);e.sourceLabelKey=t4(H),e.sourceLabelStyleKey=t4(AT(U.commonLabel,H));var J=u(A,["target-label"],U.labelDimensions);e.targetLabelKey=t4(J),e.targetLabelStyleKey=t4(AT(U.commonLabel,J))}if(n){var K=e.styleKeys,{nodeBody:O,nodeBorder:P,nodeOutline:z,backgroundImage:AA,compound:W,pie:CA,stripe:tA}=K,lA=[O,P,z,AA,W,CA,tA].filter(function(gA){return gA!=null}).reduce(AT,[Hf,Py]);e.nodeKey=t4(lA),e.hasPie=CA!=null&&CA[0]!==Hf&&CA[1]!==Py,e.hasStripe=tA!=null&&tA[0]!==Hf&&tA[1]!==Py}return a!==e.styleKey};Yo.clearStyleHints=function(A){var e=A._private;e.styleCxtKey="",e.styleKeys={},e.styleKey=null,e.labelKey=null,e.labelStyleKey=null,e.sourceLabelKey=null,e.sourceLabelStyleKey=null,e.targetLabelKey=null,e.targetLabelStyleKey=null,e.nodeKey=null,e.hasPie=null,e.hasStripe=null};Yo.applyParsedProperty=function(A,e){var t=this,r=e,i=A._private.style,u,a=t.types,n=t.properties[r.name].type,o=r.bypass,s=i[r.name],l=s&&s.bypass,g=A._private,C="mapping",B=function(O){if(O==null)return null;else if(O.pfValue!=null)return O.pfValue;else return O.value},E=function(){var O=B(s),P=B(r);t.checkTriggers(A,r.name,O,P)};if(e.name==="curve-style"&&A.isEdge()&&(e.value!=="bezier"&&A.isLoop()||e.value==="haystack"&&(A.source().isParent()||A.target().isParent())))r=e=this.parse(e.name,"bezier",o);if(r.delete)return i[r.name]=void 0,E(),!0;if(r.deleteBypassed)if(!s)return E(),!0;else if(s.bypass)return s.bypassed=void 0,E(),!0;else return!1;if(r.deleteBypass)if(!s)return E(),!0;else if(s.bypass)return i[r.name]=s.bypassed,E(),!0;else return!1;var d=function(){du("Do not assign mappings to elements without corresponding data (i.e. ele `"+A.id()+"` has no mapping for property `"+r.name+"` with data field `"+r.field+"`); try a `["+r.field+"]` selector to limit scope to elements with `"+r.field+"` defined")};switch(r.mapped){case a.mapData:{var I=r.field.split("."),h=g.data;for(var Q=0;Q<I.length&&h;Q++){var p=I[Q];h=h[p]}if(h==null)return d(),!1;var m;if(!ht(h))return du("Do not use continuous mappers without specifying numeric data (i.e. `"+r.field+": "+h+"` for `"+A.id()+"` is non-numeric)"),!1;else{var f=r.fieldMax-r.fieldMin;if(f===0)m=0;else m=(h-r.fieldMin)/f}if(m<0)m=0;else if(m>1)m=1;if(n.color){var D=r.valueMin[0],w=r.valueMax[0],b=r.valueMin[1],k=r.valueMax[1],v=r.valueMin[2],S=r.valueMax[2],x=r.valueMin[3]==null?1:r.valueMin[3],F=r.valueMax[3]==null?1:r.valueMax[3],T=[Math.round(D+(w-D)*m),Math.round(b+(k-b)*m),Math.round(v+(S-v)*m),Math.round(x+(F-x)*m)];u={bypass:r.bypass,name:r.name,value:T,strValue:"rgb("+T[0]+", "+T[1]+", "+T[2]+")"}}else if(n.number){var R=r.valueMin+(r.valueMax-r.valueMin)*m;u=this.parse(r.name,R,r.bypass,C)}else return!1;if(!u)return d(),!1;u.mapping=r,r=u;break}case a.data:{var L=r.field.split("."),M=g.data;for(var U=0;U<L.length&&M;U++){var Y=L[U];M=M[Y]}if(M!=null)u=this.parse(r.name,M,r.bypass,C);if(!u)return d(),!1;u.mapping=r,r=u;break}case a.fn:{var H=r.value,J=r.fnValue!=null?r.fnValue:H(A);if(r.prevFnValue=J,J==null)return du("Custom function mappers may not return null (i.e. `"+r.name+"` for ele `"+A.id()+"` is null)"),!1;if(u=this.parse(r.name,J,r.bypass,C),!u)return du("Custom function mappers may not return invalid values for the property type (i.e. `"+r.name+"` for ele `"+A.id()+"` is invalid)"),!1;u.mapping=pE(r),r=u;break}case void 0:break;default:return!1}if(o){if(l)r.bypassed=s.bypassed;else r.bypassed=s;i[r.name]=r}else if(l)s.bypassed=r;else i[r.name]=r;return E(),!0};Yo.cleanElements=function(A,e){for(var t=0;t<A.length;t++){var r=A[t];if(this.clearStyleHints(r),r.dirtyCompoundBoundsCache(),r.dirtyBoundingBoxCache(),!e)r._private.style={};else{var i=r._private.style,u=Object.keys(i);for(var a=0;a<u.length;a++){var n=u[a],o=i[n];if(o!=null)if(o.bypass)o.bypassed=null;else i[n]=null}}}};Yo.update=function(){var A=this._private.cy,e=A.mutableElements();e.updateStyle()};Yo.updateTransitions=function(A,e){var t=this,r=A._private,i=A.pstyle("transition-property").value,u=A.pstyle("transition-duration").pfValue,a=A.pstyle("transition-delay").pfValue;if(i.length>0&&u>0){var n={},o=!1;for(var s=0;s<i.length;s++){var l=i[s],g=A.pstyle(l),C=e[l];if(!C)continue;var B=C.prev,E=B,d=C.next!=null?C.next:g,I=!1,h=void 0,Q=0.000001;if(!E)continue;if(ht(E.pfValue)&&ht(d.pfValue))I=d.pfValue-E.pfValue,h=E.pfValue+Q*I;else if(ht(E.value)&&ht(d.value))I=d.value-E.value,h=E.value+Q*I;else if(Mu(E.value)&&Mu(d.value))I=E.value[0]!==d.value[0]||E.value[1]!==d.value[1]||E.value[2]!==d.value[2],h=E.strValue;if(I)n[l]=d.strValue,this.applyBypass(A,l,h),o=!0}if(!o)return;r.transitioning=!0,new iw(function(p){if(a>0)A.delayAnimation(a).play().promise().then(p);else p()}).then(function(){return A.animation({style:n,duration:u,easing:A.pstyle("transition-timing-function").value,queue:!1}).play().promise()}).then(function(){t.removeBypasses(A,i),A.emitAndNotify("style"),r.transitioning=!1})}else if(r.transitioning)this.removeBypasses(A,i),A.emitAndNotify("style"),r.transitioning=!1};Yo.checkTrigger=function(A,e,t,r,i,u){var a=this.properties[e],n=i(a);if(A.removed())return;if(n!=null&&n(t,r,A))u(a)};Yo.checkZOrderTrigger=function(A,e,t,r){var i=this;this.checkTrigger(A,e,t,r,function(u){return u.triggersZOrder},function(){i._private.cy.notify("zorder",A)})};Yo.checkBoundsTrigger=function(A,e,t,r){this.checkTrigger(A,e,t,r,function(i){return i.triggersBounds},function(i){A.dirtyCompoundBoundsCache(),A.dirtyBoundingBoxCache()})};Yo.checkConnectedEdgesBoundsTrigger=function(A,e,t,r){this.checkTrigger(A,e,t,r,function(i){return i.triggersBoundsOfConnectedEdges},function(i){A.connectedEdges().forEach(function(u){u.dirtyBoundingBoxCache()})})};Yo.checkParallelEdgesBoundsTrigger=function(A,e,t,r){this.checkTrigger(A,e,t,r,function(i){return i.triggersBoundsOfParallelEdges},function(i){A.parallelEdges().forEach(function(u){u.dirtyBoundingBoxCache()})})};Yo.checkTriggers=function(A,e,t,r){A.dirtyStyleCache(),this.checkZOrderTrigger(A,e,t,r),this.checkBoundsTrigger(A,e,t,r),this.checkConnectedEdgesBoundsTrigger(A,e,t,r),this.checkParallelEdgesBoundsTrigger(A,e,t,r)};_k={};_k.applyBypass=function(A,e,t,r){var i=this,u=[],a=!0;if(e==="*"||e==="**"){if(t!==void 0)for(var n=0;n<i.properties.length;n++){var o=i.properties[n],s=o.name,l=this.parse(s,t,!0);if(l)u.push(l)}}else if(tr(e)){var g=this.parse(e,t,!0);if(g)u.push(g)}else if(Hi(e)){var C=e;r=t;var B=Object.keys(C);for(var E=0;E<B.length;E++){var d=B[E],I=C[d];if(I===void 0)I=C[MT(d)];if(I!==void 0){var h=this.parse(d,I,!0);if(h)u.push(h)}}}else return!1;if(u.length===0)return!1;var Q=!1;for(var p=0;p<A.length;p++){var m=A[p],f={},D=void 0;for(var w=0;w<u.length;w++){var b=u[w];if(r){var k=m.pstyle(b.name);D=f[b.name]={prev:k}}if(Q=this.applyParsedProperty(m,pE(b))||Q,r)D.next=m.pstyle(b.name)}if(Q)this.updateStyleHints(m);if(r)this.updateTransitions(m,f,a)}return Q};_k.overrideBypass=function(A,e,t){e=yaA(e);for(var r=0;r<A.length;r++){var i=A[r],u=i._private.style[e],a=this.properties[e].type,{color:n,mutiple:o}=a,s=!u?null:u.pfValue!=null?u.pfValue:u.value;if(!u||!u.bypass)this.applyBypass(i,e,t);else{if(u.value=t,u.pfValue!=null)u.pfValue=t;if(n)u.strValue="rgb("+t.join(",")+")";else if(o)u.strValue=t.join(" ");else u.strValue=""+t;this.updateStyleHints(i)}this.checkTriggers(i,e,s,t)}};_k.removeAllBypasses=function(A,e){return this.removeBypasses(A,this.propertyNames,e)};_k.removeBypasses=function(A,e,t){var r=!0;for(var i=0;i<A.length;i++){var u=A[i],a={};for(var n=0;n<e.length;n++){var o=e[n],s=this.properties[o],l=u.pstyle(s.name);if(!l||!l.bypass)continue;var g="",C=this.parse(o,g,!0),B=a[s.name]={prev:l};this.applyParsedProperty(u,C),B.next=u.pstyle(s.name)}if(this.updateStyleHints(u),t)this.updateTransitions(u,a,r)}};YaA={};YaA.getEmSizeInPixels=function(){var A=this.containerCss("font-size");if(A!=null)return parseFloat(A);else return 1};YaA.containerCss=function(A){var e=this._private.cy,t=e.container(),r=e.window();if(r&&t&&r.getComputedStyle)return r.getComputedStyle(t).getPropertyValue(A)};fE={};fE.getRenderedStyle=function(A,e){if(e)return this.getStylePropertyValue(A,e,!0);else return this.getRawStyle(A,!0)};fE.getRawStyle=function(A,e){var t=this;if(A=A[0],A){var r={};for(var i=0;i<t.properties.length;i++){var u=t.properties[i],a=t.getStylePropertyValue(A,u.name,e);if(a!=null)r[u.name]=a,r[MT(u.name)]=a}return r}};fE.getIndexedStyle=function(A,e,t,r){var i=A.pstyle(e)[t][r];return i!=null?i:A.cy().style().getDefaultProperty(e)[t][0]};fE.getStylePropertyValue=function(A,e,t){var r=this;if(A=A[0],A){var i=r.properties[e];if(i.alias)i=i.pointsTo;var u=i.type,a=A.pstyle(i.name);if(a){var{value:n,units:o,strValue:s}=a;if(t&&u.number&&n!=null&&ht(n)){var l=A.cy().zoom(),g=function(I){return I*l},C=function(I,h){return g(I)+h},B=Mu(n),E=B?o.every(function(d){return d!=null}):o!=null;if(E)if(B)return n.map(function(d,I){return C(d,o[I])}).join(" ");else return C(n,o);else if(B)return n.map(function(d){return tr(d)?d:""+g(d)}).join(" ");else return""+g(n)}else if(s!=null)return s}return null}};fE.getAnimationStartStyle=function(A,e){var t={};for(var r=0;r<e.length;r++){var i=e[r],u=i.name,a=A.pstyle(u);if(a!==void 0)if(Hi(a))a=this.parse(u,a.strValue);else a=this.parse(u,a);if(a)t[u]=a}return t};fE.getPropsList=function(A){var e=this,t=[],r=A,i=e.properties;if(r){var u=Object.keys(r);for(var a=0;a<u.length;a++){var n=u[a],o=r[n],s=i[n]||i[yaA(n)],l=this.parse(s.name,o);if(l)t.push(l)}}return t};fE.getNonDefaultPropertiesHash=function(A,e,t){var r=t.slice(),i,u,a,n,o,s;for(o=0;o<e.length;o++)if(i=e[o],u=A.pstyle(i,!1),u==null)continue;else if(u.pfValue!=null)r[0]=vk(n,r[0]),r[1]=kk(n,r[1]);else{a=u.strValue;for(s=0;s<a.length;s++)n=a.charCodeAt(s),r[0]=vk(n,r[0]),r[1]=kk(n,r[1])}return r};fE.getPropertiesHash=fE.getNonDefaultPropertiesHash;VT={};VT.appendFromJson=function(A){var e=this;for(var t=0;t<A.length;t++){var r=A[t],i=r.selector,u=r.style||r.css,a=Object.keys(u);e.selector(i);for(var n=0;n<a.length;n++){var o=a[n],s=u[o];e.css(o,s)}}return e};VT.fromJson=function(A){var e=this;return e.resetToDefault(),e.appendFromJson(A),e};VT.json=function(){var A=[];for(var e=this.defaultLength;e<this.length;e++){var t=this[e],{selector:r,properties:i}=t,u={};for(var a=0;a<i.length;a++){var n=i[a];u[n.name]=n.strValue}A.push({selector:!r?"core":r.toString(),style:u})}return A};HaA={};HaA.appendFromString=function(A){var e=this,t=this,r=""+A,i,u,a;r=r.replace(/[/][*](\s|.)+?[*][/]/g,"");function n(){if(r.length>i.length)r=r.substr(i.length);else r=""}function o(){if(u.length>a.length)u=u.substr(a.length);else u=""}for(;;){var s=r.match(/^\s*$/);if(s)break;var l=r.match(/^\s*((?:.|\s)+?)\s*\{((?:.|\s)+?)\}/);if(!l){du("Halting stylesheet parsing: String stylesheet contains more to parse but no selector and block found in: "+r);break}i=l[0];var g=l[1];if(g!=="core"){var C=new B4(g);if(C.invalid){du("Skipping parsing of block: Invalid selector found in string stylesheet: "+g),n();continue}}var B=l[2],E=!1;u=B;var d=[];for(;;){var I=u.match(/^\s*$/);if(I)break;var h=u.match(/^\s*(.+?)\s*:\s*(.+?)(?:\s*;|\s*$)/);if(!h){du("Skipping parsing of block: Invalid formatting of style property and value definitions found in:"+B),E=!0;break}a=h[0];var Q=h[1],p=h[2],m=e.properties[Q];if(!m){du("Skipping property: Invalid property name in: "+a),o();continue}var f=t.parse(Q,p);if(!f){du("Skipping property: Invalid property definition in: "+a),o();continue}d.push({name:Q,val:p}),o()}if(E){n();break}t.selector(g);for(var D=0;D<d.length;D++){var w=d[D];t.css(w.name,w.val)}n()}return t};HaA.fromString=function(A){var e=this;return e.resetToDefault(),e.appendFromString(A),e};Un={};(function(){var A=no,e=Hht,t=Jht,r=Oht,i=Pht,u=function(gA){return"^"+gA+"\\s*\\(\\s*([\\w\\.]+)\\s*\\)$"},a=function(gA){var aA=A+"|\\w+|"+e+"|"+t+"|"+r+"|"+i;return"^"+gA+"\\s*\\(([\\w\\.]+)\\s*\\,\\s*("+A+")\\s*\\,\\s*("+A+")\\s*,\\s*("+aA+")\\s*\\,\\s*("+aA+")\\)$"},n=[`^url\\s*\\(\\s*['"]?(.+?)['"]?\\s*\\)$`,"^(none)$","^(.+)$"];Un.types={time:{number:!0,min:0,units:"s|ms",implicitUnits:"ms"},percent:{number:!0,min:0,max:100,units:"%",implicitUnits:"%"},percentages:{number:!0,min:0,max:100,units:"%",implicitUnits:"%",multiple:!0},zeroOneNumber:{number:!0,min:0,max:1,unitless:!0},zeroOneNumbers:{number:!0,min:0,max:1,unitless:!0,multiple:!0},nOneOneNumber:{number:!0,min:-1,max:1,unitless:!0},nonNegativeInt:{number:!0,min:0,integer:!0,unitless:!0},nonNegativeNumber:{number:!0,min:0,unitless:!0},position:{enums:["parent","origin"]},nodeSize:{number:!0,min:0,enums:["label"]},number:{number:!0,unitless:!0},numbers:{number:!0,unitless:!0,multiple:!0},positiveNumber:{number:!0,unitless:!0,min:0,strictMin:!0},size:{number:!0,min:0},bidirectionalSize:{number:!0},bidirectionalSizeMaybePercent:{number:!0,allowPercent:!0},bidirectionalSizes:{number:!0,multiple:!0},sizeMaybePercent:{number:!0,min:0,allowPercent:!0},axisDirection:{enums:["horizontal","leftward","rightward","vertical","upward","downward","auto"]},axisDirectionExplicit:{enums:["leftward","rightward","upward","downward"]},axisDirectionPrimary:{enums:["horizontal","vertical"]},paddingRelativeTo:{enums:["width","height","average","min","max"]},bgWH:{number:!0,min:0,allowPercent:!0,enums:["auto"],multiple:!0},bgPos:{number:!0,allowPercent:!0,multiple:!0},bgRelativeTo:{enums:["inner","include-padding"],multiple:!0},bgRepeat:{enums:["repeat","repeat-x","repeat-y","no-repeat"],multiple:!0},bgFit:{enums:["none","contain","cover"],multiple:!0},bgCrossOrigin:{enums:["anonymous","use-credentials","null"],multiple:!0},bgClip:{enums:["none","node"],multiple:!0},bgContainment:{enums:["inside","over"],multiple:!0},boxSelection:{enums:["contain","overlap","none"]},color:{color:!0},colors:{color:!0,multiple:!0},fill:{enums:["solid","linear-gradient","radial-gradient"]},bool:{enums:["yes","no"]},bools:{enums:["yes","no"],multiple:!0},lineStyle:{enums:["solid","dotted","dashed"]},lineCap:{enums:["butt","round","square"]},linePosition:{enums:["center","inside","outside"]},lineJoin:{enums:["round","bevel","miter"]},borderStyle:{enums:["solid","dotted","dashed","double"]},curveStyle:{enums:["bezier","unbundled-bezier","haystack","segments","straight","straight-triangle","taxi","round-segments","round-taxi"]},radiusType:{enums:["arc-radius","influence-radius"],multiple:!0},fontFamily:{regex:"^([\\w- \\\"]+(?:\\s*,\\s*[\\w- \\\"]+)*)$"},fontStyle:{enums:["italic","normal","oblique"]},fontWeight:{enums:["normal","bold","bolder","lighter","100","200","300","400","500","600","800","900",100,200,300,400,500,600,700,800,900]},textDecoration:{enums:["none","underline","overline","line-through"]},textTransform:{enums:["none","uppercase","lowercase"]},textWrap:{enums:["none","wrap","ellipsis"]},textOverflowWrap:{enums:["whitespace","anywhere"]},textBackgroundShape:{enums:["rectangle","roundrectangle","round-rectangle","circle"]},nodeShape:{enums:["rectangle","roundrectangle","round-rectangle","cutrectangle","cut-rectangle","bottomroundrectangle","bottom-round-rectangle","barrel","ellipse","triangle","round-triangle","square","pentagon","round-pentagon","hexagon","round-hexagon","concavehexagon","concave-hexagon","heptagon","round-heptagon","octagon","round-octagon","tag","round-tag","star","diamond","round-diamond","vee","rhomboid","right-rhomboid","polygon"]},overlayShape:{enums:["roundrectangle","round-rectangle","ellipse"]},cornerRadius:{number:!0,min:0,units:"px|em",implicitUnits:"px",enums:["auto"]},compoundIncludeLabels:{enums:["include","exclude"]},arrowShape:{enums:["tee","triangle","triangle-tee","circle-triangle","triangle-cross","triangle-backcurve","vee","square","circle","diamond","chevron","none"]},arrowFill:{enums:["filled","hollow"]},arrowWidth:{number:!0,units:"%|px|em",implicitUnits:"px",enums:["match-line"]},display:{enums:["element","none"]},visibility:{enums:["hidden","visible"]},zCompoundDepth:{enums:["bottom","orphan","auto","top"]},zIndexCompare:{enums:["auto","manual"]},valign:{enums:["top","top-inside","center","bottom","bottom-inside"]},halign:{enums:["left","left-inside","center","right","right-inside"]},justification:{enums:["left","center","right","auto"]},textMetrics:{enums:["font","glyph"]},text:{string:!0},data:{mapping:!0,regex:u("data")},layoutData:{mapping:!0,regex:u("layoutData")},scratch:{mapping:!0,regex:u("scratch")},mapData:{mapping:!0,regex:a("mapData")},mapLayoutData:{mapping:!0,regex:a("mapLayoutData")},mapScratch:{mapping:!0,regex:a("mapScratch")},fn:{mapping:!0,fn:!0},url:{regexes:n,singleRegexMatchValue:!0},urls:{regexes:n,singleRegexMatchValue:!0,multiple:!0},propList:{propList:!0},angle:{number:!0,units:"deg|rad",implicitUnits:"rad"},textRotation:{number:!0,units:"deg|rad",implicitUnits:"rad",enums:["none","autorotate"]},polygonPointList:{number:!0,multiple:!0,evenMultiple:!0,min:-1,max:1,unitless:!0},edgeDistances:{enums:["intersection","node-position","endpoints"]},edgeEndpoint:{number:!0,multiple:!0,units:"%|px|em|deg|rad",implicitUnits:"px",enums:["inside-to-node","outside-to-node","outside-to-node-or-label","outside-to-line","outside-to-line-or-label"],singleEnum:!0,validate:function(gA,aA){switch(gA.length){case 2:return aA[0]!=="deg"&&aA[0]!=="rad"&&aA[1]!=="deg"&&aA[1]!=="rad";case 1:return tr(gA[0])||aA[0]==="deg"||aA[0]==="rad";default:return!1}}},easing:{regexes:["^(spring)\\s*\\(\\s*("+A+")\\s*,\\s*("+A+")\\s*\\)$","^(cubic-bezier)\\s*\\(\\s*("+A+")\\s*,\\s*("+A+")\\s*,\\s*("+A+")\\s*,\\s*("+A+")\\s*\\)$"],enums:["linear","ease","ease-in","ease-out","ease-in-out","ease-in-sine","ease-out-sine","ease-in-out-sine","ease-in-quad","ease-out-quad","ease-in-out-quad","ease-in-cubic","ease-out-cubic","ease-in-out-cubic","ease-in-quart","ease-out-quart","ease-in-out-quart","ease-in-quint","ease-out-quint","ease-in-out-quint","ease-in-expo","ease-out-expo","ease-in-out-expo","ease-in-circ","ease-out-circ","ease-in-out-circ"]},gradientDirection:{enums:["to-bottom","to-top","to-left","to-right","to-bottom-right","to-bottom-left","to-top-right","to-top-left","to-right-bottom","to-left-bottom","to-right-top","to-left-top"]},boundsExpansion:{number:!0,multiple:!0,min:0,validate:function(gA){var aA=gA.length;return aA===1||aA===2||aA===4}}};var o={zeroNonZero:function(gA,aA){if((gA==null||aA==null)&&gA!==aA)return!0;if(gA==0&&aA!=0)return!0;else if(gA!=0&&aA==0)return!0;else return!1},any:function(gA,aA){return gA!=aA},emptyNonEmpty:function(gA,aA){var NA=g4(gA),DA=g4(aA);return NA&&!DA||!NA&&DA}},s=Un.types,l=[{name:"label",type:s.text,triggersBounds:o.any,triggersZOrder:o.emptyNonEmpty},{name:"text-rotation",type:s.textRotation,triggersBounds:o.any},{name:"text-margin-x",type:s.bidirectionalSize,triggersBounds:o.any},{name:"text-margin-y",type:s.bidirectionalSize,triggersBounds:o.any}],g=[{name:"source-label",type:s.text,triggersBounds:o.any},{name:"source-text-rotation",type:s.textRotation,triggersBounds:o.any},{name:"source-text-margin-x",type:s.bidirectionalSize,triggersBounds:o.any},{name:"source-text-margin-y",type:s.bidirectionalSize,triggersBounds:o.any},{name:"source-text-offset",type:s.size,triggersBounds:o.any}],C=[{name:"target-label",type:s.text,triggersBounds:o.any},{name:"target-text-rotation",type:s.textRotation,triggersBounds:o.any},{name:"target-text-margin-x",type:s.bidirectionalSize,triggersBounds:o.any},{name:"target-text-margin-y",type:s.bidirectionalSize,triggersBounds:o.any},{name:"target-text-offset",type:s.size,triggersBounds:o.any}],B=[{name:"font-family",type:s.fontFamily,triggersBounds:o.any},{name:"font-style",type:s.fontStyle,triggersBounds:o.any},{name:"font-weight",type:s.fontWeight,triggersBounds:o.any},{name:"font-size",type:s.size,triggersBounds:o.any},{name:"text-transform",type:s.textTransform,triggersBounds:o.any},{name:"text-wrap",type:s.textWrap,triggersBounds:o.any},{name:"text-overflow-wrap",type:s.textOverflowWrap,triggersBounds:o.any},{name:"text-max-width",type:s.size,triggersBounds:o.any},{name:"text-outline-width",type:s.size,triggersBounds:o.any},{name:"line-height",type:s.positiveNumber,triggersBounds:o.any}],E=[{name:"text-valign",type:s.valign,triggersBounds:o.any},{name:"text-halign",type:s.halign,triggersBounds:o.any},{name:"color",type:s.color},{name:"text-outline-color",type:s.color},{name:"text-outline-opacity",type:s.zeroOneNumber},{name:"text-background-color",type:s.color},{name:"text-background-opacity",type:s.zeroOneNumber},{name:"text-background-padding",type:s.size,triggersBounds:o.any},{name:"text-border-opacity",type:s.zeroOneNumber},{name:"text-border-color",type:s.color},{name:"text-border-width",type:s.size,triggersBounds:o.any},{name:"text-border-style",type:s.borderStyle,triggersBounds:o.any},{name:"text-background-shape",type:s.textBackgroundShape,triggersBounds:o.any},{name:"text-justification",type:s.justification},{name:"text-metrics",type:s.textMetrics},{name:"box-select-labels",type:s.bool,triggersBounds:o.any}],d=[{name:"events",type:s.bool,triggersZOrder:o.any},{name:"text-events",type:s.bool,triggersZOrder:o.any},{name:"box-selection",type:s.boxSelection,triggersZOrder:o.any}],I=[{name:"display",type:s.display,triggersZOrder:o.any,triggersBounds:o.any,triggersBoundsOfConnectedEdges:o.any,triggersBoundsOfParallelEdges:function(gA,aA,NA){if(gA===aA)return!1;return NA.pstyle("curve-style").value==="bezier"}},{name:"visibility",type:s.visibility,triggersZOrder:o.any},{name:"opacity",type:s.zeroOneNumber,triggersZOrder:o.zeroNonZero},{name:"text-opacity",type:s.zeroOneNumber},{name:"min-zoomed-font-size",type:s.size},{name:"z-compound-depth",type:s.zCompoundDepth,triggersZOrder:o.any},{name:"z-index-compare",type:s.zIndexCompare,triggersZOrder:o.any},{name:"z-index",type:s.number,triggersZOrder:o.any}],h=[{name:"overlay-padding",type:s.size,triggersBounds:o.any},{name:"overlay-color",type:s.color},{name:"overlay-opacity",type:s.zeroOneNumber,triggersBounds:o.zeroNonZero},{name:"overlay-shape",type:s.overlayShape,triggersBounds:o.any},{name:"overlay-corner-radius",type:s.cornerRadius}],Q=[{name:"underlay-padding",type:s.size,triggersBounds:o.any},{name:"underlay-color",type:s.color},{name:"underlay-opacity",type:s.zeroOneNumber,triggersBounds:o.zeroNonZero},{name:"underlay-shape",type:s.overlayShape,triggersBounds:o.any},{name:"underlay-corner-radius",type:s.cornerRadius}],p=[{name:"transition-property",type:s.propList},{name:"transition-duration",type:s.time},{name:"transition-delay",type:s.time},{name:"transition-timing-function",type:s.easing}],m=function(gA,aA){if(aA.value==="label")return-gA.poolIndex();else return aA.pfValue},f=[{name:"height",type:s.nodeSize,triggersBounds:o.any,hashOverride:m},{name:"width",type:s.nodeSize,triggersBounds:o.any,hashOverride:m},{name:"shape",type:s.nodeShape,triggersBounds:o.any},{name:"shape-polygon-points",type:s.polygonPointList,triggersBounds:o.any},{name:"corner-radius",type:s.cornerRadius},{name:"background-color",type:s.color},{name:"background-fill",type:s.fill},{name:"background-opacity",type:s.zeroOneNumber},{name:"background-blacken",type:s.nOneOneNumber},{name:"background-gradient-stop-colors",type:s.colors},{name:"background-gradient-stop-positions",type:s.percentages},{name:"background-gradient-direction",type:s.gradientDirection},{name:"padding",type:s.sizeMaybePercent,triggersBounds:o.any},{name:"padding-relative-to",type:s.paddingRelativeTo,triggersBounds:o.any},{name:"bounds-expansion",type:s.boundsExpansion,triggersBounds:o.any}],D=[{name:"border-color",type:s.color},{name:"border-opacity",type:s.zeroOneNumber},{name:"border-width",type:s.size,triggersBounds:o.any},{name:"border-style",type:s.borderStyle},{name:"border-cap",type:s.lineCap},{name:"border-join",type:s.lineJoin},{name:"border-dash-pattern",type:s.numbers},{name:"border-dash-offset",type:s.number},{name:"border-position",type:s.linePosition}],w=[{name:"outline-color",type:s.color},{name:"outline-opacity",type:s.zeroOneNumber},{name:"outline-width",type:s.size,triggersBounds:o.any},{name:"outline-style",type:s.borderStyle},{name:"outline-offset",type:s.size,triggersBounds:o.any}],b=[{name:"background-image",type:s.urls},{name:"background-image-crossorigin",type:s.bgCrossOrigin},{name:"background-image-opacity",type:s.zeroOneNumbers},{name:"background-image-containment",type:s.bgContainment},{name:"background-image-smoothing",type:s.bools},{name:"background-position-x",type:s.bgPos},{name:"background-position-y",type:s.bgPos},{name:"background-width-relative-to",type:s.bgRelativeTo},{name:"background-height-relative-to",type:s.bgRelativeTo},{name:"background-repeat",type:s.bgRepeat},{name:"background-fit",type:s.bgFit},{name:"background-clip",type:s.bgClip},{name:"background-width",type:s.bgWH},{name:"background-height",type:s.bgWH},{name:"background-offset-x",type:s.bgPos},{name:"background-offset-y",type:s.bgPos}],k=[{name:"position",type:s.position,triggersBounds:o.any},{name:"compound-sizing-wrt-labels",type:s.compoundIncludeLabels,triggersBounds:o.any},{name:"min-width",type:s.size,triggersBounds:o.any},{name:"min-width-bias-left",type:s.sizeMaybePercent,triggersBounds:o.any},{name:"min-width-bias-right",type:s.sizeMaybePercent,triggersBounds:o.any},{name:"min-height",type:s.size,triggersBounds:o.any},{name:"min-height-bias-top",type:s.sizeMaybePercent,triggersBounds:o.any},{name:"min-height-bias-bottom",type:s.sizeMaybePercent,triggersBounds:o.any}],v=[{name:"line-style",type:s.lineStyle},{name:"line-color",type:s.color},{name:"line-fill",type:s.fill},{name:"line-cap",type:s.lineCap},{name:"line-opacity",type:s.zeroOneNumber},{name:"line-dash-pattern",type:s.numbers},{name:"line-dash-offset",type:s.number},{name:"line-outline-width",type:s.size},{name:"line-outline-color",type:s.color},{name:"line-gradient-stop-colors",type:s.colors},{name:"line-gradient-stop-positions",type:s.percentages},{name:"curve-style",type:s.curveStyle,triggersBounds:o.any,triggersBoundsOfParallelEdges:function(gA,aA){if(gA===aA)return!1;return gA==="bezier"||aA==="bezier"}},{name:"haystack-radius",type:s.zeroOneNumber,triggersBounds:o.any},{name:"source-endpoint",type:s.edgeEndpoint,triggersBounds:o.any},{name:"target-endpoint",type:s.edgeEndpoint,triggersBounds:o.any},{name:"control-point-step-size",type:s.size,triggersBounds:o.any},{name:"control-point-distances",type:s.bidirectionalSizes,triggersBounds:o.any},{name:"control-point-weights",type:s.numbers,triggersBounds:o.any},{name:"segment-distances",type:s.bidirectionalSizes,triggersBounds:o.any},{name:"segment-weights",type:s.numbers,triggersBounds:o.any},{name:"segment-radii",type:s.numbers,triggersBounds:o.any},{name:"radius-type",type:s.radiusType,triggersBounds:o.any},{name:"taxi-turn",type:s.bidirectionalSizeMaybePercent,triggersBounds:o.any},{name:"taxi-turn-min-distance",type:s.size,triggersBounds:o.any},{name:"taxi-direction",type:s.axisDirection,triggersBounds:o.any},{name:"taxi-radius",type:s.number,triggersBounds:o.any},{name:"edge-distances",type:s.edgeDistances,triggersBounds:o.any},{name:"arrow-scale",type:s.positiveNumber,triggersBounds:o.any},{name:"loop-direction",type:s.angle,triggersBounds:o.any},{name:"loop-sweep",type:s.angle,triggersBounds:o.any},{name:"source-distance-from-node",type:s.size,triggersBounds:o.any},{name:"target-distance-from-node",type:s.size,triggersBounds:o.any}],S=[{name:"ghost",type:s.bool,triggersBounds:o.any},{name:"ghost-offset-x",type:s.bidirectionalSize,triggersBounds:o.any},{name:"ghost-offset-y",type:s.bidirectionalSize,triggersBounds:o.any},{name:"ghost-opacity",type:s.zeroOneNumber}],x=[{name:"selection-box-color",type:s.color},{name:"selection-box-opacity",type:s.zeroOneNumber},{name:"selection-box-border-color",type:s.color},{name:"selection-box-border-width",type:s.size},{name:"active-bg-color",type:s.color},{name:"active-bg-opacity",type:s.zeroOneNumber},{name:"active-bg-size",type:s.size},{name:"outside-texture-bg-color",type:s.color},{name:"outside-texture-bg-opacity",type:s.zeroOneNumber}],F=[];Un.pieBackgroundN=16,F.push({name:"pie-size",type:s.sizeMaybePercent}),F.push({name:"pie-hole",type:s.sizeMaybePercent}),F.push({name:"pie-start-angle",type:s.angle});for(var T=1;T<=Un.pieBackgroundN;T++)F.push({name:"pie-"+T+"-background-color",type:s.color}),F.push({name:"pie-"+T+"-background-size",type:s.percent}),F.push({name:"pie-"+T+"-background-opacity",type:s.zeroOneNumber});var R=[];Un.stripeBackgroundN=16,R.push({name:"stripe-size",type:s.sizeMaybePercent}),R.push({name:"stripe-direction",type:s.axisDirectionPrimary});for(var L=1;L<=Un.stripeBackgroundN;L++)R.push({name:"stripe-"+L+"-background-color",type:s.color}),R.push({name:"stripe-"+L+"-background-size",type:s.percent}),R.push({name:"stripe-"+L+"-background-opacity",type:s.zeroOneNumber});var M=[],U=Un.arrowPrefixes=["source","mid-source","target","mid-target"];[{name:"arrow-shape",type:s.arrowShape,triggersBounds:o.any},{name:"arrow-color",type:s.color},{name:"arrow-fill",type:s.arrowFill},{name:"arrow-width",type:s.arrowWidth}].forEach(function(lA){U.forEach(function(gA){var aA=gA+"-"+lA.name,{type:NA,triggersBounds:DA}=lA;M.push({name:aA,type:NA,triggersBounds:DA})})},{});var Y=Un.properties=[].concat(d,p,I,h,Q,S,E,B,l,g,C,f,D,w,b,F,R,k,v,M,x),H=Un.propertyGroups={behavior:d,transition:p,visibility:I,overlay:h,underlay:Q,ghost:S,commonLabel:E,labelDimensions:B,mainLabel:l,sourceLabel:g,targetLabel:C,nodeBody:f,nodeBorder:D,nodeOutline:w,backgroundImage:b,pie:F,stripe:R,compound:k,edgeLine:v,edgeArrow:M,core:x},J=Un.propertyGroupNames={},K=Un.propertyGroupKeys=Object.keys(H);K.forEach(function(lA){J[lA]=H[lA].map(function(gA){return gA.name}),H[lA].forEach(function(gA){return gA.groupKey=lA})});var O=Un.aliases=[{name:"content",pointsTo:"label"},{name:"control-point-distance",pointsTo:"control-point-distances"},{name:"control-point-weight",pointsTo:"control-point-weights"},{name:"segment-distance",pointsTo:"segment-distances"},{name:"segment-weight",pointsTo:"segment-weights"},{name:"segment-radius",pointsTo:"segment-radii"},{name:"edge-text-rotation",pointsTo:"text-rotation"},{name:"padding-left",pointsTo:"padding"},{name:"padding-right",pointsTo:"padding"},{name:"padding-top",pointsTo:"padding"},{name:"padding-bottom",pointsTo:"padding"}];Un.propertyNames=Y.map(function(lA){return lA.name});for(var P=0;P<Y.length;P++){var z=Y[P];Y[z.name]=z}for(var AA=0;AA<O.length;AA++){var W=O[AA],CA=Y[W.pointsTo],tA={name:W.name,alias:!0,pointsTo:CA};Y.push(tA),Y[W.name]=tA}})();Un.getDefaultProperty=function(A){return this.getDefaultProperties()[A]};Un.getDefaultProperties=function(){var A=this._private;if(A.defaultProperties!=null)return A.defaultProperties;var e=dr({"selection-box-color":"#ddd","selection-box-opacity":0.65,"selection-box-border-color":"#aaa","selection-box-border-width":1,"active-bg-color":"black","active-bg-opacity":0.15,"active-bg-size":30,"outside-texture-bg-color":"#000","outside-texture-bg-opacity":0.125,events:"yes","text-events":"no","text-valign":"top","text-halign":"center","text-justification":"auto","line-height":1,color:"#000","box-selection":"contain","text-outline-color":"#000","text-outline-width":0,"text-outline-opacity":1,"text-opacity":1,"text-decoration":"none","text-transform":"none","text-wrap":"none","text-overflow-wrap":"whitespace","text-max-width":9999,"text-background-color":"#000","text-background-opacity":0,"text-background-shape":"rectangle","text-background-padding":0,"text-border-opacity":0,"text-border-width":0,"text-border-style":"solid","text-border-color":"#000","font-family":"Helvetica Neue, Helvetica, sans-serif","font-style":"normal","font-weight":"normal","font-size":16,"min-zoomed-font-size":0,"text-rotation":"none","source-text-rotation":"none","target-text-rotation":"none",visibility:"visible",display:"element",opacity:1,"z-compound-depth":"auto","z-index-compare":"auto","z-index":0,label:"","text-margin-x":0,"text-margin-y":0,"source-label":"","source-text-offset":0,"source-text-margin-x":0,"source-text-margin-y":0,"target-label":"","target-text-offset":0,"target-text-margin-x":0,"target-text-margin-y":0,"overlay-opacity":0,"overlay-color":"#000","overlay-padding":10,"overlay-shape":"round-rectangle","overlay-corner-radius":"auto","underlay-opacity":0,"underlay-color":"#000","underlay-padding":10,"underlay-shape":"round-rectangle","underlay-corner-radius":"auto","text-metrics":"font","transition-property":"none","transition-duration":0,"transition-delay":0,"transition-timing-function":"linear","box-select-labels":"no","background-blacken":0,"background-color":"#999","background-fill":"solid","background-opacity":1,"background-image":"none","background-image-crossorigin":"anonymous","background-image-opacity":1,"background-image-containment":"inside","background-image-smoothing":"yes","background-position-x":"50%","background-position-y":"50%","background-offset-x":0,"background-offset-y":0,"background-width-relative-to":"include-padding","background-height-relative-to":"include-padding","background-repeat":"no-repeat","background-fit":"none","background-clip":"node","background-width":"auto","background-height":"auto","border-color":"#000","border-opacity":1,"border-width":0,"border-style":"solid","border-dash-pattern":[4,2],"border-dash-offset":0,"border-cap":"butt","border-join":"miter","border-position":"center","outline-color":"#999","outline-opacity":1,"outline-width":0,"outline-offset":0,"outline-style":"solid",height:30,width:30,shape:"ellipse","shape-polygon-points":"-1, -1, 1, -1, 1, 1, -1, 1","corner-radius":"auto","bounds-expansion":0,"background-gradient-direction":"to-bottom","background-gradient-stop-colors":"#999","background-gradient-stop-positions":"0%",ghost:"no","ghost-offset-y":0,"ghost-offset-x":0,"ghost-opacity":0,padding:0,"padding-relative-to":"width",position:"origin","compound-sizing-wrt-labels":"include","min-width":0,"min-width-bias-left":0,"min-width-bias-right":0,"min-height":0,"min-height-bias-top":0,"min-height-bias-bottom":0},{"pie-size":"100%","pie-hole":0,"pie-start-angle":"0deg"},[{name:"pie-{{i}}-background-color",value:"black"},{name:"pie-{{i}}-background-size",value:"0%"},{name:"pie-{{i}}-background-opacity",value:1}].reduce(function(o,s){for(var l=1;l<=Un.pieBackgroundN;l++){var g=s.name.replace("{{i}}",l),C=s.value;o[g]=C}return o},{}),{"stripe-size":"100%","stripe-direction":"horizontal"},[{name:"stripe-{{i}}-background-color",value:"black"},{name:"stripe-{{i}}-background-size",value:"0%"},{name:"stripe-{{i}}-background-opacity",value:1}].reduce(function(o,s){for(var l=1;l<=Un.stripeBackgroundN;l++){var g=s.name.replace("{{i}}",l),C=s.value;o[g]=C}return o},{}),{"line-style":"solid","line-color":"#999","line-fill":"solid","line-cap":"butt","line-opacity":1,"line-outline-width":0,"line-outline-color":"#000","line-gradient-stop-colors":"#999","line-gradient-stop-positions":"0%","control-point-step-size":40,"control-point-weights":0.5,"segment-weights":0.5,"segment-distances":20,"segment-radii":15,"radius-type":"arc-radius","taxi-turn":"50%","taxi-radius":15,"taxi-turn-min-distance":10,"taxi-direction":"auto","edge-distances":"intersection","curve-style":"haystack","haystack-radius":0,"arrow-scale":1,"loop-direction":"-45deg","loop-sweep":"-90deg","source-distance-from-node":0,"target-distance-from-node":0,"source-endpoint":"outside-to-node","target-endpoint":"outside-to-node","line-dash-pattern":[6,3],"line-dash-offset":0},[{name:"arrow-shape",value:"none"},{name:"arrow-color",value:"#999"},{name:"arrow-fill",value:"filled"},{name:"arrow-width",value:1}].reduce(function(o,s){return Un.arrowPrefixes.forEach(function(l){var g=l+"-"+s.name,C=s.value;o[g]=C}),o},{})),t={};for(var r=0;r<this.properties.length;r++){var i=this.properties[r];if(i.pointsTo)continue;var u=i.name,a=e[u],n=this.parse(u,a);t[u]=n}return A.defaultProperties=t,A.defaultProperties};Un.addDefaultStylesheet=function(){this.selector(":parent").css({shape:"rectangle",padding:10,"background-color":"#eee","border-color":"#ccc","border-width":1}).selector("edge").css({width:3}).selector(":loop").css({"curve-style":"bezier"}).selector("edge:compound").css({"curve-style":"bezier","source-endpoint":"outside-to-line","target-endpoint":"outside-to-line"}).selector(":selected").css({"background-color":"#0169D9","line-color":"#0169D9","source-arrow-color":"#0169D9","target-arrow-color":"#0169D9","mid-source-arrow-color":"#0169D9","mid-target-arrow-color":"#0169D9"}).selector(":parent:selected").css({"background-color":"#CCE1F9","border-color":"#aec8e5"}).selector(":active").css({"overlay-color":"black","overlay-padding":10,"overlay-opacity":0.25}),this.defaultLength=this.length};jT={};jT.parse=function(A,e,t,r){var i=this;if(La(e))return i.parseImplWarn(A,e,t,r);var u=r==="mapping"||r===!0||r===!1||r==null?"dontcare":r,a=t?"t":"f",n=""+e,o=AKA(A,n,a,u),s=i.propCache=i.propCache||[],l;if(!(l=s[o]))l=s[o]=i.parseImplWarn(A,e,t,r);if(t||r==="mapping"){if(l=pE(l),l)l.value=pE(l.value)}return l};jT.parseImplWarn=function(A,e,t,r){var i=this.parseImpl(A,e,t,r);if(!i&&e!=null)du("The style property `".concat(A,": ").concat(e,"` is invalid"));if(i&&(i.name==="width"||i.name==="height")&&e==="label")du("The style value of `label` is deprecated for `"+i.name+"`");return i};jT.parseImpl=function(A,e,t,r){var i=this;A=yaA(A);var u=i.properties[A],a=e,n=i.types;if(!u)return null;if(e===void 0)return null;if(u.alias)u=u.pointsTo,A=u.name;var o=tr(e);if(o)e=e.trim();var s=u.type;if(!s)return null;if(t&&(e===""||e===null))return{name:A,value:e,bypass:!0,deleteBypass:!0};if(La(e))return{name:A,value:e,strValue:"fn",mapped:n.fn,bypass:t};var l,g;if(!o||r||e.length<7||e[1]!=="a");else if(e.length>=7&&e[0]==="d"&&(l=new RegExp(n.data.regex).exec(e))){if(t)return!1;var C=n.data;return{name:A,value:l,strValue:""+e,mapped:C,field:l[1],bypass:t}}else if(e.length>=10&&e[0]==="m"&&(g=new RegExp(n.mapData.regex).exec(e))){if(t)return!1;if(s.multiple)return!1;var B=n.mapData;if(!(s.color||s.number))return!1;var E=this.parse(A,g[4]);if(!E||E.mapped)return!1;var d=this.parse(A,g[5]);if(!d||d.mapped)return!1;if(E.pfValue===d.pfValue||E.strValue===d.strValue)return du("`"+A+": "+e+"` is not a valid mapper because the output range is zero; converting to `"+A+": "+E.strValue+"`"),this.parse(A,E.strValue);else if(s.color){var I=E.value,h=d.value,Q=I[0]===h[0]&&I[1]===h[1]&&I[2]===h[2]&&(I[3]===h[3]||(I[3]==null||I[3]===1)&&(h[3]==null||h[3]===1));if(Q)return!1}return{name:A,value:g,strValue:""+e,mapped:B,field:g[1],fieldMin:parseFloat(g[2]),fieldMax:parseFloat(g[3]),valueMin:E.value,valueMax:d.value,bypass:t}}if(s.multiple&&r!=="multiple"){var p;if(o)p=e.split(/\s+/);else if(Mu(e))p=e;else p=[e];if(s.evenMultiple&&p.length%2!==0)return null;var m=[],f=[],D=[],w="",b=!1;for(var k=0;k<p.length;k++){var v=i.parse(A,p[k],t,"multiple");b=b||tr(v.value),m.push(v.value),D.push(v.pfValue!=null?v.pfValue:v.value),f.push(v.units),w+=(k>0?" ":"")+v.strValue}if(s.validate&&!s.validate(m,f))return null;if(s.singleEnum&&b)if(m.length===1&&tr(m[0]))return{name:A,value:m[0],strValue:m[0],bypass:t};else return null;return{name:A,value:m,pfValue:D,strValue:w,bypass:t,units:f}}var S=function(){for(var tA=0;tA<s.enums.length;tA++){var lA=s.enums[tA];if(lA===e)return{name:A,value:e,strValue:""+e,bypass:t}}return null};if(s.number){var x,F="px";if(s.units)x=s.units;if(s.implicitUnits)F=s.implicitUnits;if(!s.unitless){if(o){var T="px|em"+(s.allowPercent?"|\\%":"");if(x)T=x;var R=e.match("^("+no+")("+T+")?$");if(R)e=R[1],x=R[2]||F}else if(!x||s.implicitUnits)x=F}if(e=parseFloat(e),isNaN(e)&&s.enums===void 0)return null;if(isNaN(e)&&s.enums!==void 0)return e=a,S();if(s.integer&&!JHA(e))return null;if(s.min!==void 0&&(e<s.min||s.strictMin&&e===s.min)||s.max!==void 0&&(e>s.max||s.strictMax&&e===s.max))return null;var L={name:A,value:e,strValue:""+e+(x?x:""),units:x,bypass:t};if(s.unitless||x!=="px"&&x!=="em")L.pfValue=e;else L.pfValue=x==="px"||!x?e:this.getEmSizeInPixels()*e;if(x==="ms"||x==="s")L.pfValue=x==="ms"?e:1000*e;if(x==="deg"||x==="rad")L.pfValue=x==="rad"?e:PQt(e);if(x==="%")L.pfValue=e/100;return L}else if(s.propList){var M=[],U=""+e;if(U==="none");else{var Y=U.split(/\s*,\s*|\s+/);for(var H=0;H<Y.length;H++){var J=Y[H].trim();if(i.properties[J])M.push(J);else du("`"+J+"` is not a valid property name")}if(M.length===0)return null}return{name:A,value:M,strValue:M.length===0?"none":M.join(" "),bypass:t}}else if(s.color){var K=qHA(e);if(!K)return null;return{name:A,value:K,pfValue:K,strValue:"rgb("+K[0]+","+K[1]+","+K[2]+")",bypass:t}}else if(s.regex||s.regexes){if(s.enums){var O=S();if(O)return O}var P=s.regexes?s.regexes:[s.regex];for(var z=0;z<P.length;z++){var AA=new RegExp(P[z]),W=AA.exec(e);if(W)return{name:A,value:s.singleRegexMatchValue?W[1]:W,strValue:""+e,bypass:t}}return null}else if(s.string)return{name:A,value:""+e,strValue:""+e,bypass:t};else if(s.enums)return S();else return null};Y0=To.prototype;Y0.instanceString=function(){return"style"};Y0.clear=function(){var A=this._private,e=A.cy,t=e.elements();for(var r=0;r<this.length;r++)this[r]=void 0;return this.length=0,A.contextStyles={},A.propDiffs={},this.cleanElements(t,!0),t.forEach(function(i){var u=i[0]._private;u.styleDirty=!0,u.appliedInitStyle=!1}),this};Y0.resetToDefault=function(){return this.clear(),this.addDefaultStylesheet(),this};Y0.core=function(A){return this._private.coreStyle[A]||this.getDefaultProperty(A)};Y0.selector=function(A){var e=A==="core"?null:new B4(A),t=this.length++;return this[t]={selector:e,properties:[],mappedProperties:[],index:t},this};Y0.css=function(){var A=this,e=arguments;if(e.length===1){var t=e[0];for(var r=0;r<A.properties.length;r++){var i=A.properties[r],u=t[i.name];if(u===void 0)u=t[MT(i.name)];if(u!==void 0)this.cssRule(i.name,u)}}else if(e.length===2)this.cssRule(e[0],e[1]);return this};Y0.style=Y0.css;Y0.cssRule=function(A,e){var t=this.parse(A,e);if(t){var r=this.length-1;if(this[r].properties.push(t),this[r].properties[t.name]=t,t.name.match(/pie-(\d+)-background-size/)&&t.value)this._private.hasPie=!0;if(t.name.match(/stripe-(\d+)-background-size/)&&t.value)this._private.hasStripe=!0;if(t.mapped)this[r].mappedProperties.push(t);var i=!this[r].selector;if(i)this._private.coreStyle[t.name]=t}return this};Y0.append=function(A){if(PHA(A))A.appendToStyle(this);else if(Mu(A))this.appendFromJson(A);else if(tr(A))this.appendFromString(A);return this};To.fromJson=function(A,e){var t=new To(A);return t.fromJson(e),t};To.fromString=function(A,e){return new To(A).fromString(e)};[Yo,_k,YaA,fE,VT,HaA,Un,jT].forEach(function(A){dr(Y0,A)});To.types=Y0.types;To.properties=Y0.properties;To.propertyGroups=Y0.propertyGroups;To.propertyGroupNames=Y0.propertyGroupNames;To.propertyGroupKeys=Y0.propertyGroupKeys;Zpt={style:function(e){if(e){var t=this.setStyle(e);t.update()}return this._private.style},setStyle:function(e){var t=this._private;if(PHA(e))t.style=e.generateStyle(this);else if(Mu(e))t.style=To.fromJson(this,e);else if(tr(e))t.style=To.fromString(this,e);else t.style=To(this);return t.style},updateStyle:function(){this.mutableElements().updateStyle()}},Wf={autolock:function(e){if(e!==void 0)this._private.autolock=e?!0:!1;else return this._private.autolock;return this},autoungrabify:function(e){if(e!==void 0)this._private.autoungrabify=e?!0:!1;else return this._private.autoungrabify;return this},autounselectify:function(e){if(e!==void 0)this._private.autounselectify=e?!0:!1;else return this._private.autounselectify;return this},selectionType:function(e){var t=this._private;if(t.selectionType==null)t.selectionType=Vpt;if(e!==void 0){if(e==="additive"||e==="single")t.selectionType=e}else return t.selectionType;return this},panningEnabled:function(e){if(e!==void 0)this._private.panningEnabled=e?!0:!1;else return this._private.panningEnabled;return this},userPanningEnabled:function(e){if(e!==void 0)this._private.userPanningEnabled=e?!0:!1;else return this._private.userPanningEnabled;return this},zoomingEnabled:function(e){if(e!==void 0)this._private.zoomingEnabled=e?!0:!1;else return this._private.zoomingEnabled;return this},userZoomingEnabled:function(e){if(e!==void 0)this._private.userZoomingEnabled=e?!0:!1;else return this._private.userZoomingEnabled;return this},boxSelectionEnabled:function(e){if(e!==void 0)this._private.boxSelectionEnabled=e?!0:!1;else return this._private.boxSelectionEnabled;return this},pan:function(){var e=arguments,t=this._private.pan,r,i,u,a,n;switch(e.length){case 0:return t;case 1:if(tr(e[0]))return r=e[0],t[r];else if(Hi(e[0])){if(!this._private.panningEnabled)return this;if(u=e[0],a=u.x,n=u.y,ht(a))t.x=a;if(ht(n))t.y=n;this.emit("pan viewport")}break;case 2:if(!this._private.panningEnabled)return this;if(r=e[0],i=e[1],(r==="x"||r==="y")&&ht(i))t[r]=i;this.emit("pan viewport");break}return this.notify("viewport"),this},panBy:function(e,t){var r=arguments,i=this._private.pan,u,a,n,o,s;if(!this._private.panningEnabled)return this;switch(r.length){case 1:if(Hi(e)){if(n=r[0],o=n.x,s=n.y,ht(o))i.x+=o;if(ht(s))i.y+=s;this.emit("pan viewport")}break;case 2:if(u=e,a=t,(u==="x"||u==="y")&&ht(a))i[u]+=a;this.emit("pan viewport");break}return this.notify("viewport"),this},gc:function(){this.notify("gc")},fit:function(e,t){var r=this.getFitViewport(e,t);if(r){var i=this._private;i.zoom=r.zoom,i.pan=r.pan,this.emit("pan zoom viewport"),this.notify("viewport")}return this},getFitViewport:function(e,t){if(ht(e)&&t===void 0)t=e,e=void 0;if(!this._private.panningEnabled||!this._private.zoomingEnabled)return;var r;if(tr(e)){var i=e;e=this.$(i)}else if(Uht(e)){var u=e;r={x1:u.x1,y1:u.y1,x2:u.x2,y2:u.y2},r.w=r.x2-r.x1,r.h=r.y2-r.y1}else if(!sg(e))e=this.mutableElements();if(sg(e)&&e.empty())return;r=r||e.boundingBox();var a=this.width(),n=this.height(),o;if(t=ht(t)?t:0,!isNaN(a)&&!isNaN(n)&&a>0&&n>0&&!isNaN(r.w)&&!isNaN(r.h)&&r.w>0&&r.h>0){o=Math.min((a-2*t)/r.w,(n-2*t)/r.h),o=o>this._private.maxZoom?this._private.maxZoom:o,o=o<this._private.minZoom?this._private.minZoom:o;var s={x:(a-o*(r.x1+r.x2))/2,y:(n-o*(r.y1+r.y2))/2};return{zoom:o,pan:s}}return},zoomRange:function(e,t){var r=this._private;if(t==null){var i=e;e=i.min,t=i.max}if(ht(e)&&ht(t)&&e<=t)r.minZoom=e,r.maxZoom=t;else if(ht(e)&&t===void 0&&e<=r.maxZoom)r.minZoom=e;else if(ht(t)&&e===void 0&&t>=r.minZoom)r.maxZoom=t;return this},minZoom:function(e){if(e===void 0)return this._private.minZoom;else return this.zoomRange({min:e})},maxZoom:function(e){if(e===void 0)return this._private.maxZoom;else return this.zoomRange({max:e})},getZoomedViewport:function(e){var t=this._private,{pan:r,zoom:i}=t,u,a,n=!1;if(!t.zoomingEnabled)n=!0;if(ht(e))a=e;else if(Hi(e)){if(a=e.level,e.position!=null)u=HT(e.position,i,r);else if(e.renderedPosition!=null)u=e.renderedPosition;if(u!=null&&!t.panningEnabled)n=!0}if(a=a>t.maxZoom?t.maxZoom:a,a=a<t.minZoom?t.minZoom:a,n||!ht(a)||a===i||u!=null&&(!ht(u.x)||!ht(u.y)))return null;if(u!=null){var o=r,s=i,l=a,g={x:-l/s*(u.x-o.x)+u.x,y:-l/s*(u.y-o.y)+u.y};return{zoomed:!0,panned:!0,zoom:l,pan:g}}else return{zoomed:!0,panned:!1,zoom:a,pan:r}},zoom:function(e){if(e===void 0)return this._private.zoom;else{var t=this.getZoomedViewport(e),r=this._private;if(t==null||!t.zoomed)return this;if(r.zoom=t.zoom,t.panned)r.pan.x=t.pan.x,r.pan.y=t.pan.y;return this.emit("zoom"+(t.panned?" pan":"")+" viewport"),this.notify("viewport"),this}},viewport:function(e){var t=this._private,r=!0,i=!0,u=[],a=!1,n=!1;if(!e)return this;if(!ht(e.zoom))r=!1;if(!Hi(e.pan))i=!1;if(!r&&!i)return this;if(r){var o=e.zoom;if(o<t.minZoom||o>t.maxZoom||!t.zoomingEnabled)a=!0;else t.zoom=o,u.push("zoom")}if(i&&(!a||!e.cancelOnFailedZoom)&&t.panningEnabled){var s=e.pan;if(ht(s.x))t.pan.x=s.x,n=!1;if(ht(s.y))t.pan.y=s.y,n=!1;if(!n)u.push("pan")}if(u.length>0)u.push("viewport"),this.emit(u.join(" ")),this.notify("viewport");return this},center:function(e){var t=this.getCenterPan(e);if(t)this._private.pan=t,this.emit("pan viewport"),this.notify("viewport");return this},getCenterPan:function(e,t){if(!this._private.panningEnabled)return;if(tr(e)){var r=e;e=this.mutableElements().filter(r)}else if(!sg(e))e=this.mutableElements();if(e.length===0)return;var i=e.boundingBox(),u=this.width(),a=this.height();t=t===void 0?this._private.zoom:t;var n={x:(u-t*(i.x1+i.x2))/2,y:(a-t*(i.y1+i.y2))/2};return n},reset:function(){if(!this._private.panningEnabled||!this._private.zoomingEnabled)return this;return this.viewport({pan:{x:0,y:0},zoom:1}),this},invalidateSize:function(){this._private.sizeCache=null},size:function(){var e=this._private,t=e.container,r=this;return e.sizeCache=e.sizeCache||(t?function(){var i=r.window().getComputedStyle(t),u=function(n){return parseFloat(i.getPropertyValue(n))};return{width:t.clientWidth-u("padding-left")-u("padding-right"),height:t.clientHeight-u("padding-top")-u("padding-bottom")}}():{width:1,height:1})},width:function(){return this.size().width},height:function(){return this.size().height},extent:function(){var e=this._private.pan,t=this._private.zoom,r=this.renderedExtent(),i={x1:(r.x1-e.x)/t,x2:(r.x2-e.x)/t,y1:(r.y1-e.y)/t,y2:(r.y2-e.y)/t};return i.w=i.x2-i.x1,i.h=i.y2-i.y1,i},renderedExtent:function(){var e=this.width(),t=this.height();return{x1:0,y1:0,x2:e,y2:t,w:e,h:t}},multiClickDebounceTime:function(e){if(e)this._private.multiClickDebounceTime=e;else return this._private.multiClickDebounceTime;return this}};Wf.centre=Wf.center;Wf.autolockNodes=Wf.autolock;Wf.autoungrabifyNodes=Wf.autoungrabify;Nk={data:Eu.data({field:"data",bindingEvent:"data",allowBinding:!0,allowSetting:!0,settingEvent:"data",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeData:Eu.removeData({field:"data",event:"data",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0}),scratch:Eu.data({field:"scratch",bindingEvent:"scratch",allowBinding:!0,allowSetting:!0,settingEvent:"scratch",settingTriggersEvent:!0,triggerFnName:"trigger",allowGetting:!0,updateStyle:!0}),removeScratch:Eu.removeData({field:"scratch",event:"scratch",triggerFnName:"trigger",triggerEvent:!0,updateStyle:!0})};Nk.attr=Nk.data;Nk.removeAttr=Nk.removeData;ST=Gk.prototype;dr(ST,{instanceString:function(){return"core"},isReady:function(){return this._private.ready},destroyed:function(){return this._private.destroyed},ready:function(e){if(this.isReady())this.emitter().emit("ready",[],e);else this.on("ready",e);return this},destroy:function(){var e=this;if(e.destroyed())return;return e.stopAnimationLoop(),e.destroyRenderer(),this.emit("destroy"),e._private.destroyed=!0,e},hasElementWithId:function(e){return this._private.elements.hasElementWithId(e)},getElementById:function(e){return this._private.elements.getElementById(e)},hasCompoundNodes:function(){return this._private.hasCompoundNodes},headless:function(){return this._private.renderer.isHeadless()},styleEnabled:function(){return this._private.styleEnabled},addToPool:function(e){return this._private.elements.merge(e),this},removeFromPool:function(e){return this._private.elements.unmerge(e),this},container:function(){return this._private.container||null},window:function(){var e=this._private.container;if(e==null)return ao;var t=this._private.container.ownerDocument;if(t===void 0||t==null)return ao;return t.defaultView||ao},mount:function(e){if(e==null)return;var t=this,r=t._private,i=r.options;if(!yT(e)&&yT(e[0]))e=e[0];return t.stopAnimationLoop(),t.destroyRenderer(),r.container=e,r.styleEnabled=!0,t.invalidateSize(),t.initRenderer(dr({},i,i.renderer,{name:i.renderer.name==="null"?"canvas":i.renderer.name})),t.startAnimationLoop(),t.style(i.style),t.emit("mount"),t},unmount:function(){var e=this;return e.stopAnimationLoop(),e.destroyRenderer(),e.initRenderer({name:"null"}),e.emit("unmount"),e},options:function(){return pE(this._private.options)},json:function(e){var t=this,r=t._private,i=t.mutableElements(),u=function(m){return t.getElementById(m.id())};if(Hi(e)){if(t.startBatch(),e.elements){var a={},n=function(m,f){var D=[],w=[];for(var b=0;b<m.length;b++){var k=m[b];if(!k.data.id){du("cy.json() cannot handle elements without an ID attribute");continue}var v=""+k.data.id,S=t.getElementById(v);if(a[v]=!0,S.length!==0)w.push({ele:S,json:k});else if(f)k.group=f,D.push(k);else D.push(k)}t.add(D);for(var x=0;x<w.length;x++){var F=w[x],{ele:T,json:R}=F;T.json(R)}};if(Mu(e.elements))n(e.elements);else{var o=["nodes","edges"];for(var s=0;s<o.length;s++){var l=o[s],g=e.elements[l];if(Mu(g))n(g,l)}}var C=t.collection();i.filter(function(p){return!a[p.id()]}).forEach(function(p){if(p.isParent())C.merge(p);else p.remove()}),C.forEach(function(p){return p.children().move({parent:null})}),C.forEach(function(p){return u(p).remove()})}if(e.style)t.style(e.style);if(e.zoom!=null&&e.zoom!==r.zoom)t.zoom(e.zoom);if(e.pan){if(e.pan.x!==r.pan.x||e.pan.y!==r.pan.y)t.pan(e.pan)}if(e.data)t.data(e.data);var B=["minZoom","maxZoom","zoomingEnabled","userZoomingEnabled","panningEnabled","userPanningEnabled","boxSelectionEnabled","autolock","autoungrabify","autounselectify","multiClickDebounceTime"];for(var E=0;E<B.length;E++){var d=B[E];if(e[d]!=null)t[d](e[d])}return t.endBatch(),this}else{var I=!!e,h={};if(I)h.elements=this.elements().map(function(p){return p.json()});else h.elements={},i.forEach(function(p){var m=p.group();if(!h.elements[m])h.elements[m]=[];h.elements[m].push(p.json())});if(this._private.styleEnabled)h.style=t.style().json();h.data=pE(t.data());var Q=r.options;return h.zoomingEnabled=r.zoomingEnabled,h.userZoomingEnabled=r.userZoomingEnabled,h.zoom=r.zoom,h.minZoom=r.minZoom,h.maxZoom=r.maxZoom,h.panningEnabled=r.panningEnabled,h.userPanningEnabled=r.userPanningEnabled,h.pan=pE(r.pan),h.boxSelectionEnabled=r.boxSelectionEnabled,h.renderer=pE(Q.renderer),h.hideEdgesOnViewport=Q.hideEdgesOnViewport,h.textureOnViewport=Q.textureOnViewport,h.wheelSensitivity=Q.wheelSensitivity,h.motionBlur=Q.motionBlur,h.multiClickDebounceTime=Q.multiClickDebounceTime,h}}});ST.$id=ST.getElementById;[Ypt,Ppt,_KA,gaA,hT,Wpt,caA,QT,Zpt,Wf,Nk].forEach(function(A){dr(ST,A)});jpt={fit:!0,directed:!1,direction:"downward",padding:30,circle:!1,grid:!1,spacingFactor:1.75,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,roots:void 0,depthSort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}},Xpt={maximal:!1,acyclic:!1};WKA.prototype.run=function(){var A=this.options,{cy:e,eles:t}=A,r=t.nodes().filter(function(bA){return bA.isChildless()}),i=t,u=A.directed,a=A.acyclic||A.maximal||A.maximalAdjustments>0,n=!!A.boundingBox,o=Qs(n?A.boundingBox:structuredClone(e.extent())),s;if(sg(A.roots))s=A.roots;else if(Mu(A.roots)){var l=[];for(var g=0;g<A.roots.length;g++){var C=A.roots[g],B=e.getElementById(C);l.push(B)}s=e.collection(l)}else if(tr(A.roots))s=e.$(A.roots);else if(u)s=r.roots();else{var E=t.components();s=e.collection();var d=function(){var SA=E[I],EA=SA.maxDegree(!1),nA=SA.filter(function(eA){return eA.degree(!1)===EA});s=s.add(nA)};for(var I=0;I<E.length;I++)d()}var h=[],Q={},p=function(SA,EA){if(h[EA]==null)h[EA]=[];var nA=h[EA].length;h[EA].push(SA),gHA(SA,{index:nA,depth:EA})},m=function(SA,EA){var nA=Hy(SA),{depth:eA,index:BA}=nA;if(h[eA][BA]=null,SA.isChildless())p(SA,EA)};i.bfs({roots:s,directed:A.directed,visit:function(SA,EA,nA,eA,BA){var yA=SA[0],vA=yA.id();if(yA.isChildless())p(yA,BA);Q[vA]=!0}});var f=[];for(var D=0;D<r.length;D++){var w=r[D];if(Q[w.id()])continue;else f.push(w)}var b=function(SA){var EA=h[SA];for(var nA=0;nA<EA.length;nA++){var eA=EA[nA];if(eA==null){EA.splice(nA,1),nA--;continue}gHA(eA,{depth:SA,index:nA})}},k=function(SA,EA){var nA=Hy(SA),eA=SA.incomers().filter(function(q){return q.isNode()&&t.has(q)}),BA=-1,yA=SA.id();for(var vA=0;vA<eA.length;vA++){var FA=eA[vA],HA=Hy(FA);BA=Math.max(BA,HA.depth)}if(nA.depth<=BA){if(!A.acyclic&&EA[yA])return null;var dA=BA+1;return m(SA,dA),EA[yA]=dA,!0}return!1};if(u&&a){var v=[],S={},x=function(SA){return v.push(SA)},F=function(){return v.shift()};r.forEach(function(bA){return v.push(bA)});while(v.length>0){var T=F(),R=k(T,S);if(R)T.outgoers().filter(function(bA){return bA.isNode()&&t.has(bA)}).forEach(x);else if(R===null){du("Detected double maximal shift for node `"+T.id()+"`. Bailing maximal adjustment due to cycle. Use `options.maximal: true` only on DAGs.");break}}}var L=0;if(A.avoidOverlap)for(var M=0;M<r.length;M++){var U=r[M],Y=U.layoutDimensions(A),{w:H,h:J}=Y;L=Math.max(L,H,J)}var K={},O=function(SA){if(K[SA.id()])return K[SA.id()];var EA=Hy(SA).depth,nA=SA.neighborhood(),eA=0,BA=0;for(var yA=0;yA<nA.length;yA++){var vA=nA[yA];if(vA.isEdge()||vA.isParent()||!r.has(vA))continue;var FA=Hy(vA);if(FA==null)continue;var{index:HA,depth:dA}=FA;if(HA==null||dA==null)continue;var q=h[dA].length;if(dA<EA)eA+=HA/q,BA++}if(BA=Math.max(1,BA),eA=eA/BA,BA===0)eA=0;return K[SA.id()]=eA,eA},P=function(SA,EA){var nA=O(SA),eA=O(EA),BA=nA-eA;if(BA===0)return WHA(SA.id(),EA.id());else return BA};if(A.depthSort!==void 0)P=A.depthSort;var z=h.length;for(var AA=0;AA<z;AA++)h[AA].sort(P),b(AA);var W=[];for(var CA=0;CA<f.length;CA++)W.push(f[CA]);var tA=function(){for(var SA=0;SA<z;SA++)b(SA)};if(W.length)h.unshift(W),z=h.length,tA();var lA=0;for(var gA=0;gA<z;gA++)lA=Math.max(h[gA].length,lA);var aA={x:o.x1+o.w/2,y:o.y1+o.h/2},NA=r.reduce(function(bA,SA){return function(EA){return{w:bA.w===-1?EA.w:(bA.w+EA.w)/2,h:bA.h===-1?EA.h:(bA.h+EA.h)/2}}(SA.boundingBox({includeLabels:A.nodeDimensionsIncludeLabels}))},{w:-1,h:-1}),DA=Math.max(z===1?0:n?(o.h-A.padding*2-NA.h)/(z-1):(o.h-A.padding*2-NA.h)/(z+1),L),KA=h.reduce(function(bA,SA){return Math.max(bA,SA.length)},0),TA=function(SA){var EA=Hy(SA),{depth:nA,index:eA}=EA;if(A.circle){var BA=Math.min(o.w/2/z,o.h/2/z);BA=Math.max(BA,L);var yA=BA*nA+BA-(z>0&&h[0].length<=3?BA/2:0),vA=2*Math.PI/h[nA].length*eA;if(nA===0&&h[0].length===1)yA=1;return{x:aA.x+yA*Math.cos(vA),y:aA.y+yA*Math.sin(vA)}}else{var FA=h[nA].length,HA=Math.max(FA===1?0:n?(o.w-A.padding*2-NA.w)/((A.grid?KA:FA)-1):(o.w-A.padding*2-NA.w)/((A.grid?KA:FA)+1),L),dA={x:aA.x+(eA+1-(FA+1)/2)*HA,y:aA.y+(nA+1-(z+1)/2)*DA};return dA}},qA={downward:0,leftward:90,upward:180,rightward:-90};if(Object.keys(qA).indexOf(A.direction)===-1)Qa("Invalid direction '".concat(A.direction,"' specified for breadthfirst layout. Valid values are: ").concat(Object.keys(qA).join(", ")));var IA=function(SA){return cQt(TA(SA),o,qA[A.direction])};return t.nodes().layoutPositions(this,A,IA),this};$pt={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,radius:void 0,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};qKA.prototype.run=function(){var A=this.options,e=A,t=A.cy,r=e.eles,i=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,u=r.nodes().not(":parent");if(e.sort)u=u.sort(e.sort);var a=Qs(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:t.width(),h:t.height()}),n={x:a.x1+a.w/2,y:a.y1+a.h/2},o=e.sweep===void 0?2*Math.PI-2*Math.PI/u.length:e.sweep,s=o/Math.max(1,u.length-1),l,g=0;for(var C=0;C<u.length;C++){var B=u[C],E=B.layoutDimensions(e),{w:d,h:I}=E;g=Math.max(g,d,I)}if(ht(e.radius))l=e.radius;else if(u.length<=1)l=0;else l=Math.min(a.h,a.w)/2-g;if(u.length>1&&e.avoidOverlap){g*=1.75;var h=Math.cos(s)-Math.cos(0),Q=Math.sin(s)-Math.sin(0),p=Math.sqrt(g*g/(h*h+Q*Q));l=Math.max(p,l)}var m=function(D,w){var b=e.startAngle+w*s*(i?1:-1),k=l*Math.cos(b),v=l*Math.sin(b),S={x:n.x+k,y:n.y+v};return S};return r.nodes().layoutPositions(this,e,m),this};Aft={fit:!0,padding:30,startAngle:1.5*Math.PI,sweep:void 0,clockwise:!0,equidistant:!1,minNodeSpacing:10,boundingBox:void 0,avoidOverlap:!0,nodeDimensionsIncludeLabels:!1,height:void 0,width:void 0,spacingFactor:void 0,concentric:function(e){return e.degree()},levelWidth:function(e){return e.maxDegree()/4},animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};zKA.prototype.run=function(){var A=this.options,e=A,t=e.counterclockwise!==void 0?!e.counterclockwise:e.clockwise,r=A.cy,i=e.eles,u=i.nodes().not(":parent"),a=Qs(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:r.width(),h:r.height()}),n={x:a.x1+a.w/2,y:a.y1+a.h/2},o=[],s=0;for(var l=0;l<u.length;l++){var g=u[l],C=void 0;C=e.concentric(g),o.push({value:C,node:g}),g._private.scratch.concentric=C}u.updateStyle();for(var B=0;B<u.length;B++){var E=u[B],d=E.layoutDimensions(e);s=Math.max(s,d.w,d.h)}o.sort(function(DA,KA){return KA.value-DA.value});var I=e.levelWidth(u),h=[[]],Q=h[0];for(var p=0;p<o.length;p++){var m=o[p];if(Q.length>0){var f=Math.abs(Q[0].value-m.value);if(f>=I)Q=[],h.push(Q)}Q.push(m)}var D=s+e.minNodeSpacing;if(!e.avoidOverlap){var w=h.length>0&&h[0].length>1,b=Math.min(a.w,a.h)/2-D,k=b/(h.length+w?1:0);D=Math.min(D,k)}var v=0;for(var S=0;S<h.length;S++){var x=h[S],F=e.sweep===void 0?2*Math.PI-2*Math.PI/x.length:e.sweep,T=x.dTheta=F/Math.max(1,x.length-1);if(x.length>1&&e.avoidOverlap){var R=Math.cos(T)-Math.cos(0),L=Math.sin(T)-Math.sin(0),M=Math.sqrt(D*D/(R*R+L*L));v=Math.max(M,v)}x.r=v,v+=D}if(e.equidistant){var U=0,Y=0;for(var H=0;H<h.length;H++){var J=h[H],K=J.r-Y;U=Math.max(U,K)}Y=0;for(var O=0;O<h.length;O++){var P=h[O];if(O===0)Y=P.r;P.r=Y,Y+=U}}var z={};for(var AA=0;AA<h.length;AA++){var W=h[AA],{dTheta:CA,r:tA}=W;for(var lA=0;lA<W.length;lA++){var gA=W[lA],aA=e.startAngle+(t?1:-1)*CA*lA,NA={x:n.x+tA*Math.cos(aA),y:n.y+tA*Math.sin(aA)};z[gA.node.id()]=NA}}return i.nodes().layoutPositions(this,e,function(DA){var KA=DA.id();return z[KA]}),this};eft={ready:function(){},stop:function(){},animate:!0,animationEasing:void 0,animationDuration:void 0,animateFilter:function(e,t){return!0},animationThreshold:250,refresh:20,fit:!0,padding:30,boundingBox:void 0,nodeDimensionsIncludeLabels:!1,randomize:!1,componentSpacing:40,nodeRepulsion:function(e){return 2048},nodeOverlap:4,idealEdgeLength:function(e){return 32},edgeElasticity:function(e){return 32},nestingFactor:1.2,gravity:1,numIter:1000,initialTemp:1000,coolingFactor:0.99,minTemp:1};XT.prototype.run=function(){var A=this.options,e=A.cy,t=this;if(t.stopped=!1,A.animate===!0||A.animate===!1)t.emit({type:"layoutstart",layout:t});if(A.debug===!0)quA=!0;else quA=!1;var r=tft(e,t,A);if(quA)ift(r);if(A.randomize)uft(r);var i=wI(),u=function(){if(aft(r,e,A),A.fit===!0)e.fit(A.padding)},a=function(C){if(t.stopped||C>=A.numIter)return!1;if(nft(r,A),r.temperature=r.temperature*A.coolingFactor,r.temperature<A.minTemp)return!1;return!0},n=function(){if(A.animate===!0||A.animate===!1)u(),t.one("layoutstop",A.stop),t.emit({type:"layoutstop",layout:t});else{var C=A.eles.nodes(),B=VKA(r,A,C);C.layoutPositions(t,A,B)}},o=0,s=!0;if(A.animate===!0){var l=function(){var C=0;while(s&&C<A.refresh)s=a(o),o++,C++;if(!s)CHA(r,A),n();else{var B=wI();if(B-i>=A.animationThreshold)u();wT(l)}};l()}else{while(s)s=a(o),o++;CHA(r,A),n()}return this};XT.prototype.stop=function(){if(this.stopped=!0,this.thread)this.thread.stop();return this.emit("layoutstop"),this};XT.prototype.destroy=function(){if(this.thread)this.thread.stop();return this};dft={fit:!0,padding:30,boundingBox:void 0,avoidOverlap:!0,avoidOverlapPadding:10,nodeDimensionsIncludeLabels:!1,spacingFactor:void 0,condense:!1,rows:void 0,cols:void 0,position:function(e){},sort:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};XKA.prototype.run=function(){var A=this.options,e=A,t=A.cy,r=e.eles,i=r.nodes().not(":parent");if(e.sort)i=i.sort(e.sort);var u=Qs(e.boundingBox?e.boundingBox:{x1:0,y1:0,w:t.width(),h:t.height()});if(u.h===0||u.w===0)r.nodes().layoutPositions(this,e,function(O){return{x:u.x1,y:u.y1}});else{var a=i.size(),n=Math.sqrt(a*u.h/u.w),o=Math.round(n),s=Math.round(u.w/u.h*n),l=function(P){if(P==null)return Math.min(o,s);else{var z=Math.min(o,s);if(z==o)o=P;else s=P}},g=function(P){if(P==null)return Math.max(o,s);else{var z=Math.max(o,s);if(z==o)o=P;else s=P}},C=e.rows,B=e.cols!=null?e.cols:e.columns;if(C!=null&&B!=null)o=C,s=B;else if(C!=null&&B==null)o=C,s=Math.ceil(a/o);else if(C==null&&B!=null)s=B,o=Math.ceil(a/s);else if(s*o>a){var E=l(),d=g();if((E-1)*d>=a)l(E-1);else if((d-1)*E>=a)g(d-1)}else while(s*o<a){var I=l(),h=g();if((h+1)*I>=a)g(h+1);else l(I+1)}var Q=u.w/s,p=u.h/o;if(e.condense)Q=0,p=0;if(e.avoidOverlap)for(var m=0;m<i.length;m++){var f=i[m],D=f._private.position;if(D.x==null||D.y==null)D.x=0,D.y=0;var w=f.layoutDimensions(e),b=e.avoidOverlapPadding,k=w.w+b,v=w.h+b;Q=Math.max(Q,k),p=Math.max(p,v)}var S={},x=function(P,z){return S["c-"+P+"-"+z]?!0:!1},F=function(P,z){S["c-"+P+"-"+z]=!0},T=0,R=0,L=function(){if(R++,R>=s)R=0,T++},M={};for(var U=0;U<i.length;U++){var Y=i[U],H=e.position(Y);if(H&&(H.row!==void 0||H.col!==void 0)){var J={row:H.row,col:H.col};if(J.col===void 0){J.col=0;while(x(J.row,J.col))J.col++}else if(J.row===void 0){J.row=0;while(x(J.row,J.col))J.row++}M[Y.id()]=J,F(J.row,J.col)}}var K=function(P,z){var AA,W;if(P.locked()||P.isParent())return!1;var CA=M[P.id()];if(CA)AA=CA.col*Q+Q/2+u.x1,W=CA.row*p+p/2+u.y1;else{while(x(T,R))L();AA=R*Q+Q/2+u.x1,W=T*p+p/2+u.y1,F(T,R),L()}return{x:AA,y:W}};i.layoutPositions(this,e,K)}return this};Ift={ready:function(){},stop:function(){}};KaA.prototype.run=function(){var A=this.options,e=A.eles,t=this;return A.cy,t.emit("layoutstart"),e.nodes().positions(function(){return{x:0,y:0}}),t.one("layoutready",A.ready),t.emit("layoutready"),t.one("layoutstop",A.stop),t.emit("layoutstop"),this};KaA.prototype.stop=function(){return this};hft={positions:void 0,zoom:void 0,pan:void 0,fit:!0,padding:30,spacingFactor:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};$KA.prototype.run=function(){var A=this.options,e=A.eles,t=e.nodes(),r=La(A.positions);function i(u){if(A.positions==null)return TQt(u.position());if(r)return A.positions(u);var a=A.positions[u._private.data.id];if(a==null)return null;return a}return t.layoutPositions(this,A,function(u,a){var n=i(u);if(u.locked()||n==null)return!1;return n}),this};Qft={fit:!0,padding:30,boundingBox:void 0,animate:!1,animationDuration:500,animationEasing:void 0,animateFilter:function(e,t){return!0},ready:void 0,stop:void 0,transform:function(e,t){return t}};AJA.prototype.run=function(){var A=this.options,{cy:e,eles:t}=A,r=Qs(A.boundingBox?A.boundingBox:{x1:0,y1:0,w:e.width(),h:e.height()}),i=function(a,n){return{x:r.x1+Math.round(Math.random()*r.w),y:r.y1+Math.round(Math.random()*r.h)}};return t.nodes().layoutPositions(this,A,i),this};pft=[{name:"breadthfirst",impl:WKA},{name:"circle",impl:qKA},{name:"concentric",impl:zKA},{name:"cose",impl:XT},{name:"grid",impl:XKA},{name:"null",impl:KaA},{name:"preset",impl:$KA},{name:"random",impl:AJA}];eJA.prototype={recalculateRenderedStyle:BHA,notify:function(){this.notifications++},init:BHA,isHeadless:function(){return!0},png:EHA,jpg:EHA};JaA={};JaA.arrowShapeWidth=0.3;JaA.registerArrowShapes=function(){var A=this.arrowShapes={},e=this,t=function(s,l,g,C,B,E,d){var I=B.x-g/2-d,h=B.x+g/2+d,Q=B.y-g/2-d,p=B.y+g/2+d,m=I<=s&&s<=h&&Q<=l&&l<=p;return m},r=function(s,l,g,C,B){var E=s*Math.cos(C)-l*Math.sin(C),d=s*Math.sin(C)+l*Math.cos(C),I=E*g,h=d*g,Q=I+B.x,p=h+B.y;return{x:Q,y:p}},i=function(s,l,g,C){var B=[];for(var E=0;E<s.length;E+=2){var d=s[E],I=s[E+1];B.push(r(d,I,l,g,C))}return B},u=function(s){var l=[];for(var g=0;g<s.length;g++){var C=s[g];l.push(C.x,C.y)}return l},a=function(s){return s.pstyle("width").pfValue*s.pstyle("arrow-scale").pfValue*2},n=function(s,l){if(tr(l))l=A[l];A[s]=dr({name:s,points:[-0.15,-0.3,0.15,-0.3,0.15,0.3,-0.15,0.3],collide:function(C,B,E,d,I,h){var Q=u(i(this.points,E+2*h,d,I)),p=Cl(C,B,Q);return p},roughCollide:t,draw:function(C,B,E,d){var I=i(this.points,B,E,d);e.arrowShapeImpl("polygon")(C,I)},spacing:function(C){return 0},gap:a},l)};n("none",{collide:bT,roughCollide:bT,draw:vaA,spacing:FTA,gap:FTA}),n("triangle",{points:[-0.15,-0.3,0,0,0.15,-0.3]}),n("arrow","triangle"),n("triangle-backcurve",{points:A.triangle.points,controlPoint:[0,-0.15],roughCollide:t,draw:function(s,l,g,C,B){var E=i(this.points,l,g,C),d=this.controlPoint,I=r(d[0],d[1],l,g,C);e.arrowShapeImpl(this.name)(s,E,I)},gap:function(s){return a(s)*0.8}}),n("triangle-tee",{points:[0,0,0.15,-0.3,-0.15,-0.3,0,0],pointsTee:[-0.15,-0.4,-0.15,-0.5,0.15,-0.5,0.15,-0.4],collide:function(s,l,g,C,B,E,d){var I=u(i(this.points,g+2*d,C,B)),h=u(i(this.pointsTee,g+2*d,C,B)),Q=Cl(s,l,I)||Cl(s,l,h);return Q},draw:function(s,l,g,C,B){var E=i(this.points,l,g,C),d=i(this.pointsTee,l,g,C);e.arrowShapeImpl(this.name)(s,E,d)}}),n("circle-triangle",{radius:0.15,pointsTr:[0,-0.15,0.15,-0.45,-0.15,-0.45,0,-0.15],collide:function(s,l,g,C,B,E,d){var I=B,h=Math.pow(I.x-s,2)+Math.pow(I.y-l,2)<=Math.pow((g+2*d)*this.radius,2),Q=u(i(this.points,g+2*d,C,B));return Cl(s,l,Q)||h},draw:function(s,l,g,C,B){var E=i(this.pointsTr,l,g,C);e.arrowShapeImpl(this.name)(s,E,C.x,C.y,this.radius*l)},spacing:function(s){return e.getArrowWidth(s.pstyle("width").pfValue,s.pstyle("arrow-scale").value)*this.radius}}),n("triangle-cross",{points:[0,0,0.15,-0.3,-0.15,-0.3,0,0],baseCrossLinePts:[-0.15,-0.4,-0.15,-0.4,0.15,-0.4,0.15,-0.4],crossLinePts:function(s,l){var g=this.baseCrossLinePts.slice(),C=l/s,B=3,E=5;return g[B]=g[B]-C,g[E]=g[E]-C,g},collide:function(s,l,g,C,B,E,d){var I=u(i(this.points,g+2*d,C,B)),h=u(i(this.crossLinePts(g,E),g+2*d,C,B)),Q=Cl(s,l,I)||Cl(s,l,h);return Q},draw:function(s,l,g,C,B){var E=i(this.points,l,g,C),d=i(this.crossLinePts(l,B),l,g,C);e.arrowShapeImpl(this.name)(s,E,d)}}),n("vee",{points:[-0.15,-0.3,0,0,0.15,-0.3,0,-0.15],gap:function(s){return a(s)*0.525}}),n("circle",{radius:0.15,collide:function(s,l,g,C,B,E,d){var I=B,h=Math.pow(I.x-s,2)+Math.pow(I.y-l,2)<=Math.pow((g+2*d)*this.radius,2);return h},draw:function(s,l,g,C,B){e.arrowShapeImpl(this.name)(s,C.x,C.y,this.radius*l)},spacing:function(s){return e.getArrowWidth(s.pstyle("width").pfValue,s.pstyle("arrow-scale").value)*this.radius}}),n("tee",{points:[-0.15,0,-0.15,-0.1,0.15,-0.1,0.15,0],spacing:function(s){return 1},gap:function(s){return 1}}),n("square",{points:[-0.15,0,0.15,0,0.15,-0.3,-0.15,-0.3]}),n("diamond",{points:[-0.15,-0.15,0,-0.3,0.15,-0.15,0,0],gap:function(s){return s.pstyle("width").pfValue*s.pstyle("arrow-scale").value}}),n("chevron",{points:[0,0,-0.15,-0.15,-0.1,-0.2,0,-0.1,0.1,-0.2,0.15,-0.15],gap:function(s){return 0.95*s.pstyle("width").pfValue*s.pstyle("arrow-scale").value}})};zf={};zf.projectIntoViewport=function(A,e){var t=this.cy,r=this.findContainerClientCoords(),i=r[0],u=r[1],a=r[4],n=t.pan(),o=t.zoom(),s=((A-i)/a-n.x)/o,l=((e-u)/a-n.y)/o;return[s,l]};zf.findContainerClientCoords=function(){if(this.containerBB)return this.containerBB;var A=this.container,e=A.getBoundingClientRect(),t=this.cy.window().getComputedStyle(A),r=function(h){return parseFloat(t.getPropertyValue(h))},i={left:r("padding-left"),right:r("padding-right"),top:r("padding-top"),bottom:r("padding-bottom")},u={left:r("border-left-width"),right:r("border-right-width"),top:r("border-top-width"),bottom:r("border-bottom-width")},{clientWidth:a,clientHeight:n}=A,o=i.left+i.right,s=i.top+i.bottom,l=u.left+u.right,g=e.width/(a+l),C=a-o,B=n-s,E=e.left+i.left+u.left,d=e.top+i.top+u.top;return this.containerBB=[E,d,C,B,g]};zf.invalidateContainerClientCoordsCache=function(){this.containerBB=null};zf.findNearestElement=function(A,e,t,r){return this.findNearestElements(A,e,t,r)[0]};zf.findNearestElements=function(A,e,t,r){var i=this,u=this,a=u.getCachedZSortedEles(),n=[],o=u.cy.zoom(),s=u.cy.hasCompoundNodes(),l=(r?24:8)/o,g=(r?8:2)/o,C=(r?8:2)/o,B=1/0,E,d;if(t)a=a.interactive;function I(w,b){if(w.isNode())if(d)return;else d=w,n.push(w);if(w.isEdge()&&(b==null||b<B))if(E){if(E.pstyle("z-compound-depth").value===w.pstyle("z-compound-depth").value&&E.pstyle("z-compound-depth").value===w.pstyle("z-compound-depth").value){for(var k=0;k<n.length;k++)if(n[k].isEdge()){n[k]=w,E=w,B=b!=null?b:B;break}}}else n.push(w),E=w,B=b!=null?b:B}function h(w){var b=w.outerWidth()+2*g,k=w.outerHeight()+2*g,v=b/2,S=k/2,x=w.position(),F=w.pstyle("corner-radius").value==="auto"?"auto":w.pstyle("corner-radius").pfValue,T=w._private.rscratch;if(x.x-v<=A&&A<=x.x+v&&x.y-S<=e&&e<=x.y+S){var R=u.nodeShapes[i.getNodeShape(w)];if(R.checkPoint(A,e,0,b,k,x.x,x.y,F,T))return I(w,0),!0}}function Q(w){var b=w._private,k=b.rscratch,v=w.pstyle("width").pfValue,S=w.pstyle("arrow-scale").value,x=v/2+l,F=x*x,T=x*2,{source:U,target:Y}=b,R;if(k.edgeType==="segments"||k.edgeType==="straight"||k.edgeType==="haystack"){var L=k.allpts;for(var M=0;M+3<L.length;M+=2)if($Qt(A,e,L[M],L[M+1],L[M+2],L[M+3],T)&&F>(R=i4t(A,e,L[M],L[M+1],L[M+2],L[M+3])))return I(w,R),!0}else if(k.edgeType==="bezier"||k.edgeType==="multibezier"||k.edgeType==="self"||k.edgeType==="compound"){var L=k.allpts;for(var M=0;M+5<k.allpts.length;M+=4)if(A4t(A,e,L[M],L[M+1],L[M+2],L[M+3],L[M+4],L[M+5],T)&&F>(R=r4t(A,e,L[M],L[M+1],L[M+2],L[M+3],L[M+4],L[M+5])))return I(w,R),!0}var U=U||b.source,Y=Y||b.target,H=i.getArrowWidth(v,S),J=[{name:"source",x:k.arrowStartX,y:k.arrowStartY,angle:k.srcArrowAngle},{name:"target",x:k.arrowEndX,y:k.arrowEndY,angle:k.tgtArrowAngle},{name:"mid-source",x:k.midX,y:k.midY,angle:k.midsrcArrowAngle},{name:"mid-target",x:k.midX,y:k.midY,angle:k.midtgtArrowAngle}];for(var M=0;M<J.length;M++){var K=J[M],O=u.arrowShapes[w.pstyle(K.name+"-arrow-shape").value],P=w.pstyle("width").pfValue;if(O.roughCollide(A,e,H,K.angle,{x:K.x,y:K.y},P,l)&&O.collide(A,e,H,K.angle,{x:K.x,y:K.y},P,l))return I(w),!0}if(s&&n.length>0)h(U),h(Y)}function p(w,b,k){return hs(w,b,k)}function m(w,b){var k=w._private,v=C,S;if(b)S=b+"-";else S="";w.boundingBox();var x=k.labelBounds[b||"main"],F=w.pstyle(S+"label").value,T=w.pstyle("text-events").strValue==="yes";if(!T||!F)return;var R=p(k.rscratch,"labelX",b),L=p(k.rscratch,"labelY",b),M=p(k.rscratch,"labelAngle",b),U=w.pstyle(S+"text-margin-x").pfValue,Y=w.pstyle(S+"text-margin-y").pfValue,H=x.x1-v-U,J=x.x2+v-U,K=x.y1-v-Y,O=x.y2+v-Y;if(M){var P=Math.cos(M),z=Math.sin(M),AA=function(NA,DA){return NA=NA-R,DA=DA-L,{x:NA*P-DA*z+R,y:NA*z+DA*P+L}},W=AA(H,K),CA=AA(H,O),tA=AA(J,K),lA=AA(J,O),gA=[W.x+U,W.y+Y,tA.x+U,tA.y+Y,lA.x+U,lA.y+Y,CA.x+U,CA.y+Y];if(Cl(A,e,gA))return I(w),!0}else if(n4(x,A,e))return I(w),!0}for(var f=a.length-1;f>=0;f--){var D=a[f];if(D.isNode())h(D)||m(D);else Q(D)||m(D)||m(D,"source")||m(D,"target")}return n};zf.getAllInBox=function(A,e,t,r){var i=this.getCachedZSortedEles().interactive,u=this.cy.zoom(),a=2/u,n=[],o=Math.min(A,t),s=Math.max(A,t),l=Math.min(e,r),g=Math.max(e,r);A=o,t=s,e=l,r=g;var C=Qs({x1:A,y1:e,x2:t,y2:r}),B=[{x:C.x1,y:C.y1},{x:C.x2,y:C.y1},{x:C.x2,y:C.y2},{x:C.x1,y:C.y2}],E=[[B[0],B[1]],[B[1],B[2]],[B[2],B[3]],[B[3],B[0]]];function d(NA,DA,KA){return hs(NA,DA,KA)}function I(NA,DA){var KA=NA._private,TA=a,qA="";NA.boundingBox();var IA=KA.labelBounds.main;if(!IA)return null;var bA=d(KA.rscratch,"labelX",DA),SA=d(KA.rscratch,"labelY",DA),EA=d(KA.rscratch,"labelAngle",DA),nA=NA.pstyle(qA+"text-margin-x").pfValue,eA=NA.pstyle(qA+"text-margin-y").pfValue,BA=IA.x1-TA-nA,yA=IA.x2+TA-nA,vA=IA.y1-TA-eA,FA=IA.y2+TA-eA;if(EA){var HA=Math.cos(EA),dA=Math.sin(EA),q=function(fA,j){return fA=fA-bA,j=j-SA,{x:fA*HA-j*dA+bA,y:fA*dA+j*HA+SA}};return[q(BA,vA),q(yA,vA),q(yA,FA),q(BA,FA)]}else return[{x:BA,y:vA},{x:yA,y:vA},{x:yA,y:FA},{x:BA,y:FA}]}function h(NA,DA,KA,TA){function qA(IA,bA,SA){return(SA.y-IA.y)*(bA.x-IA.x)>(bA.y-IA.y)*(SA.x-IA.x)}return qA(NA,KA,TA)!==qA(DA,KA,TA)&&qA(NA,DA,KA)!==qA(NA,DA,TA)}for(var Q=0;Q<i.length;Q++){var p=i[Q];if(p.isNode()){var m=p,f=m.pstyle("text-events").strValue==="yes",D=m.pstyle("box-selection").strValue,w=m.pstyle("box-select-labels").strValue==="yes";if(D==="none")continue;var b=(D==="overlap"||w)&&f,k=m.boundingBox({includeNodes:!0,includeEdges:!1,includeLabels:b});if(D==="contain"){var v=!1;if(w&&f){var S=I(m);if(S&&_iA(S,B))n.push(m),v=!0}if(!v&&oKA(C,k))n.push(m)}else if(D==="overlap"){if(SaA(C,k)){var x=m.boundingBox({includeNodes:!0,includeEdges:!0,includeLabels:!1,includeMainLabels:!1,includeSourceLabels:!1,includeTargetLabels:!1}),F=[{x:x.x1,y:x.y1},{x:x.x2,y:x.y1},{x:x.x2,y:x.y2},{x:x.x1,y:x.y2}];if(_iA(F,B))n.push(m);else{var T=I(m);if(T&&_iA(T,B))n.push(m)}}}}else{var R=p,L=R._private,M=L.rscratch,U=R.pstyle("box-selection").strValue;if(U==="none")continue;if(U==="contain"){if(M.startX!=null&&M.startY!=null&&!n4(C,M.startX,M.startY))continue;if(M.endX!=null&&M.endY!=null&&!n4(C,M.endX,M.endY))continue;if(M.edgeType==="bezier"||M.edgeType==="multibezier"||M.edgeType==="self"||M.edgeType==="compound"||M.edgeType==="segments"||M.edgeType==="haystack"){var Y=L.rstyle.bezierPts||L.rstyle.linePts||L.rstyle.haystackPts,H=!0;for(var J=0;J<Y.length;J++)if(!NTA(C,Y[J])){H=!1;break}if(H)n.push(R)}else if(M.edgeType==="straight")n.push(R)}else if(U==="overlap"){var K=!1;if(M.startX!=null&&M.startY!=null&&M.endX!=null&&M.endY!=null&&(n4(C,M.startX,M.startY)||n4(C,M.endX,M.endY)))n.push(R),K=!0;else if(!K&&M.edgeType==="haystack"){var O=L.rstyle.haystackPts;for(var P=0;P<O.length;P++)if(NTA(C,O[P])){n.push(R),K=!0;break}}if(!K){var z=L.rstyle.bezierPts||L.rstyle.linePts||L.rstyle.haystackPts;if((!z||z.length<2)&&M.edgeType==="straight"){if(M.startX!=null&&M.startY!=null&&M.endX!=null&&M.endY!=null)z=[{x:M.startX,y:M.startY},{x:M.endX,y:M.endY}]}if(!z||z.length<2)continue;for(var AA=0;AA<z.length-1;AA++){var W=z[AA],CA=z[AA+1];for(var tA=0;tA<E.length;tA++){var lA=Mn(E[tA],2),gA=lA[0],aA=lA[1];if(h(W,CA,gA,aA)){n.push(R),K=!0;break}}if(K)break}}}}}return n};RT={};RT.calculateArrowAngles=function(A){var e=A._private.rscratch,t=e.edgeType==="haystack",r=e.edgeType==="bezier",i=e.edgeType==="multibezier",u=e.edgeType==="segments",a=e.edgeType==="compound",n=e.edgeType==="self",o,s,l,g,C,B,h,Q;if(t)l=e.haystackPts[0],g=e.haystackPts[1],C=e.haystackPts[2],B=e.haystackPts[3];else l=e.arrowStartX,g=e.arrowStartY,C=e.arrowEndX,B=e.arrowEndY;if(h=e.midX,Q=e.midY,u)o=l-e.segpts[0],s=g-e.segpts[1];else if(i||a||n||r){var E=e.allpts,d=Mo(E[0],E[2],E[4],0.1),I=Mo(E[1],E[3],E[5],0.1);o=l-d,s=g-I}else o=l-h,s=g-Q;e.srcArrowAngle=eT(o,s);var{midX:h,midY:Q}=e;if(t)h=(l+C)/2,Q=(g+B)/2;if(o=C-l,s=B-g,u){var E=e.allpts;if(E.length/2%2===0){var p=E.length/2,m=p-2;o=E[p]-E[m],s=E[p+1]-E[m+1]}else if(e.isRound)o=e.midVector[1],s=-e.midVector[0];else{var p=E.length/2-1,m=p-2;o=E[p]-E[m],s=E[p+1]-E[m+1]}}else if(i||a||n){var{allpts:E,ctrlpts:f}=e,D,w,b,k;if(f.length/2%2===0){var v=E.length/2-1,S=v+2,x=S+2;D=Mo(E[v],E[S],E[x],0),w=Mo(E[v+1],E[S+1],E[x+1],0),b=Mo(E[v],E[S],E[x],0.0001),k=Mo(E[v+1],E[S+1],E[x+1],0.0001)}else{var S=E.length/2-1,v=S-2,x=S+2;D=Mo(E[v],E[S],E[x],0.4999),w=Mo(E[v+1],E[S+1],E[x+1],0.4999),b=Mo(E[v],E[S],E[x],0.5),k=Mo(E[v+1],E[S+1],E[x+1],0.5)}o=b-D,s=k-w}if(e.midtgtArrowAngle=eT(o,s),e.midDispX=o,e.midDispY=s,o*=-1,s*=-1,u){var E=e.allpts;if(E.length/2%2===0);else if(!e.isRound){var p=E.length/2-1,F=p+2;o=-(E[F]-E[p]),s=-(E[F+1]-E[p+1])}}if(e.midsrcArrowAngle=eT(o,s),u)o=C-e.segpts[e.segpts.length-2],s=B-e.segpts[e.segpts.length-1];else if(i||a||n||r){var E=e.allpts,T=E.length,d=Mo(E[T-6],E[T-4],E[T-2],0.9),I=Mo(E[T-5],E[T-3],E[T-1],0.9);o=C-d,s=B-I}else o=C-h,s=B-Q;e.tgtArrowAngle=eT(o,s)};RT.getArrowWidth=RT.getArrowHeight=function(A,e){var t=this.arrowWidthCache=this.arrowWidthCache||{},r=t[A+", "+e];if(r)return r;return r=Math.max(Math.pow(A*13.37,0.9),29)*e,t[A+", "+e]=r,r};hE={},tc={};Dft=Math.sqrt(2*Uk),H0={};H0.findMidptPtsEtc=function(A,e){var{posPts:t,intersectionPts:r,vectorNormInverse:i}=e,u,a=A.pstyle("source-endpoint"),n=A.pstyle("target-endpoint"),o=a.units!=null&&n.units!=null,s=function(f,D,w,b){var k=b-D,v=w-f,S=Math.sqrt(v*v+k*k);return{x:-k/S,y:v/S}},l=A.pstyle("edge-distances").value;switch(l){case"node-position":u=t;break;case"intersection":u=r;break;case"endpoints":{if(o){var g=this.manualEndptToPx(A.source()[0],a),C=Mn(g,2),B=C[0],E=C[1],d=this.manualEndptToPx(A.target()[0],n),I=Mn(d,2),h=I[0],Q=I[1],p={x1:B,y1:E,x2:h,y2:Q};i=s(B,E,h,Q),u=p}else du("Edge ".concat(A.id()," has edge-distances:endpoints specified without manual endpoints specified via source-endpoint and target-endpoint. Falling back on edge-distances:intersection (default).")),u=r;break}}return{midptPts:u,vectorNormInverse:i}};H0.findHaystackPoints=function(A){for(var e=0;e<A.length;e++){var t=A[e],r=t._private,i=r.rscratch;if(!i.haystack){var u=Math.random()*2*Math.PI;i.source={x:Math.cos(u),y:Math.sin(u)},u=Math.random()*2*Math.PI,i.target={x:Math.cos(u),y:Math.sin(u)}}var{source:a,target:n}=r,o=a.position(),s=n.position(),l=a.width(),g=n.width(),C=a.height(),B=n.height(),E=t.pstyle("haystack-radius").value,d=E/2;i.haystackPts=i.allpts=[i.source.x*l*d+o.x,i.source.y*C*d+o.y,i.target.x*g*d+s.x,i.target.y*B*d+s.y],i.midX=(i.allpts[0]+i.allpts[2])/2,i.midY=(i.allpts[1]+i.allpts[3])/2,i.edgeType="haystack",i.haystack=!0,this.storeEdgeProjections(t),this.calculateArrowAngles(t),this.recalculateEdgeLabelProjections(t),this.calculateLabelAngles(t)}};H0.findSegmentsPoints=function(A,e){var t=A._private.rscratch,r=A.pstyle("segment-weights"),i=A.pstyle("segment-distances"),u=A.pstyle("segment-radii"),a=A.pstyle("radius-type"),n=Math.min(r.pfValue.length,i.pfValue.length),o=u.pfValue[u.pfValue.length-1],s=a.pfValue[a.pfValue.length-1];t.edgeType="segments",t.segpts=[],t.radii=[],t.isArcRadius=[];for(var l=0;l<n;l++){var g=r.pfValue[l],C=i.pfValue[l],B=1-g,E=g,d=this.findMidptPtsEtc(A,e),{midptPts:I,vectorNormInverse:h}=d,Q={x:I.x1*B+I.x2*E,y:I.y1*B+I.y2*E};t.segpts.push(Q.x+h.x*C,Q.y+h.y*C),t.radii.push(u.pfValue[l]!==void 0?u.pfValue[l]:o),t.isArcRadius.push((a.pfValue[l]!==void 0?a.pfValue[l]:s)==="arc-radius")}};H0.findLoopPoints=function(A,e,t,r){var i=A._private.rscratch,{dirCounts:u,srcPos:a}=e,n=A.pstyle("control-point-distances"),o=n?n.pfValue[0]:void 0,s=A.pstyle("loop-direction").pfValue,l=A.pstyle("loop-sweep").pfValue,g=A.pstyle("control-point-step-size").pfValue;i.edgeType="self";var C=t,B=g;if(r)C=0,B=o;var E=s-Math.PI/2,d=E-l/2,I=E+l/2,h=String(s+"_"+l);C=u[h]===void 0?u[h]=0:++u[h],i.ctrlpts=[a.x+Math.cos(d)*1.4*B*(C/3+1),a.y+Math.sin(d)*1.4*B*(C/3+1),a.x+Math.cos(I)*1.4*B*(C/3+1),a.y+Math.sin(I)*1.4*B*(C/3+1)]};H0.findCompoundLoopPoints=function(A,e,t,r){var i=A._private.rscratch;i.edgeType="compound";var{srcPos:u,tgtPos:a,srcW:n,srcH:o,tgtW:s,tgtH:l}=e,g=A.pstyle("control-point-step-size").pfValue,C=A.pstyle("control-point-distances"),B=C?C.pfValue[0]:void 0,E=t,d=g;if(r)E=0,d=B;var I=50,h={x:u.x-n/2,y:u.y-o/2},Q={x:a.x-s/2,y:a.y-l/2},p={x:Math.min(h.x,Q.x),y:Math.min(h.y,Q.y)},m=0.5,f=Math.max(m,Math.log(n*Uk)),D=Math.max(m,Math.log(s*Uk));i.ctrlpts=[p.x,p.y-(1+Math.pow(I,1.12)/100)*d*(E/3+1)*f,p.x-(1+Math.pow(I,1.12)/100)*d*(E/3+1)*D,p.y]};H0.findStraightEdgePoints=function(A){A._private.rscratch.edgeType="straight"};H0.findBezierPoints=function(A,e,t,r,i){var u=A._private.rscratch,a=A.pstyle("control-point-step-size").pfValue,n=A.pstyle("control-point-distances"),o=A.pstyle("control-point-weights"),s=n&&o?Math.min(n.value.length,o.value.length):1,l=n?n.pfValue[0]:void 0,g=o.value[0],C=r;u.edgeType=C?"multibezier":"bezier",u.ctrlpts=[];for(var B=0;B<s;B++){var E=(0.5-e.eles.length/2+t)*a*(i?-1:1),d=void 0,I=xaA(E);if(C)l=n?n.pfValue[B]:a,g=o.value[B];if(r)d=l;else d=l!==void 0?I*l:void 0;var h=d!==void 0?d:E,Q=1-g,p=g,m=this.findMidptPtsEtc(A,e),{midptPts:f,vectorNormInverse:D}=m,w={x:f.x1*Q+f.x2*p,y:f.y1*Q+f.y2*p};u.ctrlpts.push(w.x+D.x*h,w.y+D.y*h)}};H0.findTaxiPoints=function(A,e){var t=A._private.rscratch;t.edgeType="segments";var r="vertical",i="horizontal",u="leftward",a="rightward",n="downward",o="upward",s="auto",{posPts:l,srcW:g,srcH:C,tgtW:B,tgtH:E}=e,d=A.pstyle("edge-distances").value,I=d!=="node-position",h=A.pstyle("taxi-direction").value,Q=h,p=A.pstyle("taxi-turn"),m=p.units==="%",f=p.pfValue,D=f<0,w=A.pstyle("taxi-turn-min-distance").pfValue,b=I?(g+B)/2:0,k=I?(C+E)/2:0,v=l.x2-l.x1,S=l.y2-l.y1,x=function(j,mA){if(j>0)return Math.max(j-mA,0);else return Math.min(j+mA,0)},F=x(v,b),T=x(S,k),R=!1;if(Q===s)h=Math.abs(F)>Math.abs(T)?i:r;else if(Q===o||Q===n)h=r,R=!0;else if(Q===u||Q===a)h=i,R=!0;var L=h===r,M=L?T:F,U=L?S:v,Y=xaA(U),H=!1;if(!(R&&(m||D))&&(Q===n&&U<0||Q===o&&U>0||Q===u&&U>0||Q===a&&U<0))Y*=-1,M=Y*Math.abs(M),H=!0;var J;if(m){var K=f<0?1+f:f;J=K*M}else{var O=f<0?M:0;J=O+f*Y}var P=function(j){return Math.abs(j)<w||Math.abs(j)>=Math.abs(M)},z=P(J),AA=P(Math.abs(M)-Math.abs(J)),W=z||AA;if(W&&!H)if(L){var CA=Math.abs(U)<=C/2,tA=Math.abs(v)<=B/2;if(CA){var lA=(l.x1+l.x2)/2,{y1:gA,y2:aA}=l;t.segpts=[lA,gA,lA,aA]}else if(tA){var NA=(l.y1+l.y2)/2,{x1:DA,x2:KA}=l;t.segpts=[DA,NA,KA,NA]}else t.segpts=[l.x1,l.y2]}else{var TA=Math.abs(U)<=g/2,qA=Math.abs(S)<=E/2;if(TA){var IA=(l.y1+l.y2)/2,{x1:bA,x2:SA}=l;t.segpts=[bA,IA,SA,IA]}else if(qA){var EA=(l.x1+l.x2)/2,{y1:nA,y2:eA}=l;t.segpts=[EA,nA,EA,eA]}else t.segpts=[l.x2,l.y1]}else if(L){var BA=l.y1+J+(I?C/2*Y:0),{x1:yA,x2:vA}=l;t.segpts=[yA,BA,vA,BA]}else{var FA=l.x1+J+(I?g/2*Y:0),{y1:HA,y2:dA}=l;t.segpts=[FA,HA,FA,dA]}if(t.isRound){var q=A.pstyle("taxi-radius").value,Z=A.pstyle("radius-type").value[0]==="arc-radius";t.radii=Array(t.segpts.length/2).fill(q),t.isArcRadius=Array(t.segpts.length/2).fill(Z)}};H0.tryToCorrectInvalidPoints=function(A,e){var t=A._private.rscratch;if(t.edgeType==="bezier"){var{srcPos:r,tgtPos:i,srcW:u,srcH:a,tgtW:n,tgtH:o,srcShape:s,tgtShape:l,srcCornerRadius:g,tgtCornerRadius:C,srcRs:B,tgtRs:E}=e,d=!ht(t.startX)||!ht(t.startY),I=!ht(t.arrowStartX)||!ht(t.arrowStartY),h=!ht(t.endX)||!ht(t.endY),Q=!ht(t.arrowEndX)||!ht(t.arrowEndY),p=3,m=this.getArrowWidth(A.pstyle("width").pfValue,A.pstyle("arrow-scale").value)*this.arrowShapeWidth,f=p*m,D=Pf({x:t.ctrlpts[0],y:t.ctrlpts[1]},{x:t.startX,y:t.startY}),w=D<f,b=Pf({x:t.ctrlpts[0],y:t.ctrlpts[1]},{x:t.endX,y:t.endY}),k=b<f,v=!1;if(d||I||w){v=!0;var S={x:t.ctrlpts[0]-r.x,y:t.ctrlpts[1]-r.y},x=Math.sqrt(S.x*S.x+S.y*S.y),F={x:S.x/x,y:S.y/x},T=Math.max(u,a),R={x:t.ctrlpts[0]+F.x*2*T,y:t.ctrlpts[1]+F.y*2*T},L=s.intersectLine(r.x,r.y,u,a,R.x,R.y,0,g,B);if(w)t.ctrlpts[0]=t.ctrlpts[0]+F.x*(f-D),t.ctrlpts[1]=t.ctrlpts[1]+F.y*(f-D);else t.ctrlpts[0]=L[0]+F.x*f,t.ctrlpts[1]=L[1]+F.y*f}if(h||Q||k){v=!0;var M={x:t.ctrlpts[0]-i.x,y:t.ctrlpts[1]-i.y},U=Math.sqrt(M.x*M.x+M.y*M.y),Y={x:M.x/U,y:M.y/U},H=Math.max(u,a),J={x:t.ctrlpts[0]+Y.x*2*H,y:t.ctrlpts[1]+Y.y*2*H},K=l.intersectLine(i.x,i.y,n,o,J.x,J.y,0,C,E);if(k)t.ctrlpts[0]=t.ctrlpts[0]+Y.x*(f-b),t.ctrlpts[1]=t.ctrlpts[1]+Y.y*(f-b);else t.ctrlpts[0]=K[0]+Y.x*f,t.ctrlpts[1]=K[1]+Y.y*f}if(v)this.findEndpoints(A)}};H0.storeAllpts=function(A){var e=A._private.rscratch;if(e.edgeType==="multibezier"||e.edgeType==="bezier"||e.edgeType==="self"||e.edgeType==="compound"){e.allpts=[],e.allpts.push(e.startX,e.startY);for(var t=0;t+1<e.ctrlpts.length;t+=2)if(e.allpts.push(e.ctrlpts[t],e.ctrlpts[t+1]),t+3<e.ctrlpts.length)e.allpts.push((e.ctrlpts[t]+e.ctrlpts[t+2])/2,(e.ctrlpts[t+1]+e.ctrlpts[t+3])/2);e.allpts.push(e.endX,e.endY);var r,i;if(e.ctrlpts.length/2%2===0)r=e.allpts.length/2-1,e.midX=e.allpts[r],e.midY=e.allpts[r+1];else r=e.allpts.length/2-3,i=0.5,e.midX=Mo(e.allpts[r],e.allpts[r+2],e.allpts[r+4],i),e.midY=Mo(e.allpts[r+1],e.allpts[r+3],e.allpts[r+5],i)}else if(e.edgeType==="straight")e.allpts=[e.startX,e.startY,e.endX,e.endY],e.midX=(e.startX+e.endX+e.arrowStartX+e.arrowEndX)/4,e.midY=(e.startY+e.endY+e.arrowStartY+e.arrowEndY)/4;else if(e.edgeType==="segments"){if(e.allpts=[],e.allpts.push(e.startX,e.startY),e.allpts.push.apply(e.allpts,e.segpts),e.allpts.push(e.endX,e.endY),e.isRound){e.roundCorners=[];for(var u=2;u+3<e.allpts.length;u+=2){var a=e.radii[u/2-1],n=e.isArcRadius[u/2-1];e.roundCorners.push(OaA({x:e.allpts[u-2],y:e.allpts[u-1]},{x:e.allpts[u],y:e.allpts[u+1],radius:a},{x:e.allpts[u+2],y:e.allpts[u+3]},a,n))}}if(e.segpts.length%4===0){var o=e.segpts.length/2,s=o-2;e.midX=(e.segpts[s]+e.segpts[o])/2,e.midY=(e.segpts[s+1]+e.segpts[o+1])/2}else{var l=e.segpts.length/2-1;if(!e.isRound)e.midX=e.segpts[l],e.midY=e.segpts[l+1];else{var g={x:e.segpts[l],y:e.segpts[l+1]},C=e.roundCorners[l/2];if(C.radius===0){var B={x:e.segpts[l+2],y:e.segpts[l+3]};e.midX=g.x,e.midY=g.y,e.midVector=[g.y-B.y,B.x-g.x]}else{var E=[g.x-C.cx,g.y-C.cy],d=C.radius/Math.sqrt(Math.pow(E[0],2)+Math.pow(E[1],2));E=E.map(function(I){return I*d}),e.midX=C.cx+E[0],e.midY=C.cy+E[1],e.midVector=E}}}}};H0.checkForInvalidEdgeWarning=function(A){var e=A[0]._private.rscratch;if(e.nodesOverlap||ht(e.startX)&&ht(e.startY)&&ht(e.endX)&&ht(e.endY))e.loggedErr=!1;else if(!e.loggedErr)e.loggedErr=!0,du("Edge `"+A.id()+"` has invalid endpoints and so it is impossible to draw. Adjust your edge style (e.g. control points) accordingly or use an alternative edge type. This is expected behaviour when the source node and the target node overlap.")};H0.findEdgeControlPoints=function(A){var e=this;if(!A||A.length===0)return;var t=this,r=t.cy,i=r.hasCompoundNodes(),u=new yI,a=function(k,v){return[].concat(DT(k),[v?1:0]).join("-")},n=[],o=[];for(var s=0;s<A.length;s++){var l=A[s],g=l._private,C=l.pstyle("curve-style").value;if(l.removed()||!l.takesUpSpace())continue;if(C==="haystack"){o.push(l);continue}var B=C==="unbundled-bezier"||a4(C,"segments")||C==="straight"||C==="straight-triangle"||a4(C,"taxi"),E=C==="unbundled-bezier"||C==="bezier",{source:d,target:I}=g,h=d.poolIndex(),Q=I.poolIndex(),p=[h,Q].sort(),m=a(p,B),f=u.get(m);if(f==null)f={eles:[]},n.push({pairId:p,edgeIsUnbundled:B}),u.set(m,f);if(f.eles.push(l),B)f.hasUnbundled=!0;if(E)f.hasBezier=!0}var D=function(){var k=n[w],{pairId:v,edgeIsUnbundled:S}=k,x=a(v,S),F=u.get(x),T;if(!F.hasUnbundled){var R=F.eles[0].parallelEdges().filter(function(Z){return Z.isBundledBezier()});kaA(F.eles),R.forEach(function(Z){return F.eles.push(Z)}),F.eles.sort(function(Z,fA){return Z.poolIndex()-fA.poolIndex()})}var L=F.eles[0],M=L.source(),U=L.target();if(M.poolIndex()>U.poolIndex()){var Y=M;M=U,U=Y}var H=F.srcPos=M.position(),J=F.tgtPos=U.position(),K=F.srcW=M.outerWidth(),O=F.srcH=M.outerHeight(),P=F.tgtW=U.outerWidth(),z=F.tgtH=U.outerHeight(),AA=F.srcShape=t.nodeShapes[e.getNodeShape(M)],W=F.tgtShape=t.nodeShapes[e.getNodeShape(U)],CA=F.srcCornerRadius=M.pstyle("corner-radius").value==="auto"?"auto":M.pstyle("corner-radius").pfValue,tA=F.tgtCornerRadius=U.pstyle("corner-radius").value==="auto"?"auto":U.pstyle("corner-radius").pfValue,lA=F.tgtRs=U._private.rscratch,gA=F.srcRs=M._private.rscratch;F.dirCounts={north:0,west:0,south:0,east:0,northwest:0,southwest:0,northeast:0,southeast:0};for(var aA=0;aA<F.eles.length;aA++){var NA=F.eles[aA],DA=NA[0]._private.rscratch,KA=NA.pstyle("curve-style").value,TA=KA==="unbundled-bezier"||a4(KA,"segments")||a4(KA,"taxi"),qA=!M.same(NA.source());if(!F.calculatedIntersection&&M!==U&&(F.hasBezier||F.hasUnbundled)){F.calculatedIntersection=!0;var IA=AA.intersectLine(H.x,H.y,K,O,J.x,J.y,0,CA,gA),bA=F.srcIntn=IA,SA=W.intersectLine(J.x,J.y,P,z,H.x,H.y,0,tA,lA),EA=F.tgtIntn=SA,nA=F.intersectionPts={x1:IA[0],x2:SA[0],y1:IA[1],y2:SA[1]},eA=F.posPts={x1:H.x,x2:J.x,y1:H.y,y2:J.y},BA=SA[1]-IA[1],yA=SA[0]-IA[0],vA=Math.sqrt(yA*yA+BA*BA);if(ht(vA)&&vA>=Dft);else vA=Math.sqrt(Math.max(yA*yA,Uk)+Math.max(BA*BA,Uk));var FA=F.vector={x:yA,y:BA},HA=F.vectorNorm={x:FA.x/vA,y:FA.y/vA},dA={x:-HA.y,y:HA.x};F.nodesOverlap=!ht(vA)||W.checkPoint(IA[0],IA[1],0,P,z,J.x,J.y,tA,lA)||AA.checkPoint(SA[0],SA[1],0,K,O,H.x,H.y,CA,gA),F.vectorNormInverse=dA,T={nodesOverlap:F.nodesOverlap,dirCounts:F.dirCounts,calculatedIntersection:!0,hasBezier:F.hasBezier,hasUnbundled:F.hasUnbundled,eles:F.eles,srcPos:J,srcRs:lA,tgtPos:H,tgtRs:gA,srcW:P,srcH:z,tgtW:K,tgtH:O,srcIntn:EA,tgtIntn:bA,srcShape:W,tgtShape:AA,posPts:{x1:eA.x2,y1:eA.y2,x2:eA.x1,y2:eA.y1},intersectionPts:{x1:nA.x2,y1:nA.y2,x2:nA.x1,y2:nA.y1},vector:{x:-FA.x,y:-FA.y},vectorNorm:{x:-HA.x,y:-HA.y},vectorNormInverse:{x:-dA.x,y:-dA.y}}}var q=qA?T:F;if(DA.nodesOverlap=q.nodesOverlap,DA.srcIntn=q.srcIntn,DA.tgtIntn=q.tgtIntn,DA.isRound=KA.startsWith("round"),i&&(M.isParent()||M.isChild()||U.isParent()||U.isChild())&&(M.parents().anySame(U)||U.parents().anySame(M)||M.same(U)&&M.isParent()))e.findCompoundLoopPoints(NA,q,aA,TA);else if(M===U)e.findLoopPoints(NA,q,aA,TA);else if(KA.endsWith("segments"))e.findSegmentsPoints(NA,q);else if(KA.endsWith("taxi"))e.findTaxiPoints(NA,q);else if(KA==="straight"||!TA&&F.eles.length%2===1&&aA===Math.floor(F.eles.length/2))e.findStraightEdgePoints(NA);else e.findBezierPoints(NA,q,aA,TA,qA);e.findEndpoints(NA),e.tryToCorrectInvalidPoints(NA,q),e.checkForInvalidEdgeWarning(NA),e.storeAllpts(NA),e.storeEdgeProjections(NA),e.calculateArrowAngles(NA),e.recalculateEdgeLabelProjections(NA),e.calculateLabelAngles(NA)}};for(var w=0;w<n.length;w++)D();this.findHaystackPoints(o)};H0.getSegmentPoints=function(A){var e=A[0]._private.rscratch;this.recalculateRenderedStyle(A);var t=e.edgeType;if(t==="segments")return uJA(e.segpts)};H0.getControlPoints=function(A){var e=A[0]._private.rscratch;this.recalculateRenderedStyle(A);var t=e.edgeType;if(t==="bezier"||t==="multibezier"||t==="self"||t==="compound")return uJA(e.ctrlpts)};H0.getEdgeMidpoint=function(A){var e=A[0]._private.rscratch;return this.recalculateRenderedStyle(A),{x:e.midX,y:e.midY}};Wk={};Wk.manualEndptToPx=function(A,e){var t=this,r=A.position(),i=A.outerWidth(),u=A.outerHeight(),a=A._private.rscratch;if(e.value.length===2){var n=[e.pfValue[0],e.pfValue[1]];if(e.units[0]==="%")n[0]=n[0]*i;if(e.units[1]==="%")n[1]=n[1]*u;return n[0]+=r.x,n[1]+=r.y,n}else{var o=e.pfValue[0];o=-Math.PI/2+o;var s=2*Math.max(i,u),l=[r.x+Math.cos(o)*s,r.y+Math.sin(o)*s];return t.nodeShapes[this.getNodeShape(A)].intersectLine(r.x,r.y,i,u,l[0],l[1],0,A.pstyle("corner-radius").value==="auto"?"auto":A.pstyle("corner-radius").pfValue,a)}};Wk.findEndpoints=function(A){var e,t,r,i,u=this,a,n=A.source()[0],o=A.target()[0],s=n.position(),l=o.position(),g=A.pstyle("target-arrow-shape").value,C=A.pstyle("source-arrow-shape").value,B=A.pstyle("target-distance-from-node").pfValue,E=A.pstyle("source-distance-from-node").pfValue,d=n._private.rscratch,I=o._private.rscratch,h=A.pstyle("curve-style").value,Q=A._private.rscratch,p=Q.edgeType,m=a4(h,"taxi"),f=p==="self"||p==="compound",D=p==="bezier"||p==="multibezier"||f,w=p!=="bezier",b=p==="straight"||p==="segments",k=p==="segments",v=D||w||b,S=f||m,x=A.pstyle("source-endpoint"),F=S?"outside-to-node":x.value,T=n.pstyle("corner-radius").value==="auto"?"auto":n.pstyle("corner-radius").pfValue,R=A.pstyle("target-endpoint"),L=S?"outside-to-node":R.value,M=o.pstyle("corner-radius").value==="auto"?"auto":o.pstyle("corner-radius").pfValue;Q.srcManEndpt=x,Q.tgtManEndpt=R;var U,Y,H,J,K=(e=(R===null||R===void 0||(t=R.pfValue)===null||t===void 0?void 0:t.length)===2?R.pfValue:null)!==null&&e!==void 0?e:[0,0],O=(r=(x===null||x===void 0||(i=x.pfValue)===null||i===void 0?void 0:i.length)===2?x.pfValue:null)!==null&&r!==void 0?r:[0,0];if(D){var P=[Q.ctrlpts[0],Q.ctrlpts[1]],z=w?[Q.ctrlpts[Q.ctrlpts.length-2],Q.ctrlpts[Q.ctrlpts.length-1]]:P;U=z,Y=P}else if(b){var AA=!k?[l.x+K[0],l.y+K[1]]:Q.segpts.slice(0,2),W=!k?[s.x+O[0],s.y+O[1]]:Q.segpts.slice(Q.segpts.length-2);U=W,Y=AA}if(L==="inside-to-node")a=[l.x,l.y];else if(R.units)a=this.manualEndptToPx(o,R);else if(L==="outside-to-line")a=Q.tgtIntn;else{if(L==="outside-to-node"||L==="outside-to-node-or-label")H=U;else if(L==="outside-to-line"||L==="outside-to-line-or-label")H=[s.x,s.y];if(a=u.nodeShapes[this.getNodeShape(o)].intersectLine(l.x,l.y,o.outerWidth(),o.outerHeight(),H[0],H[1],0,M,I),L==="outside-to-node-or-label"||L==="outside-to-line-or-label"){var CA=o._private.rscratch,{labelWidth:tA,labelHeight:lA,labelX:gA,labelY:aA}=CA,NA=tA/2,DA=lA/2,KA=o.pstyle("text-valign").value;if(KA=tw(KA),KA==="top")aA-=DA;else if(KA==="bottom")aA+=DA;var TA=o.pstyle("text-halign").value;if(TA=ew(TA),TA==="left")gA-=NA;else if(TA==="right")gA+=NA;var qA=Sk(H[0],H[1],[gA-NA,aA-DA,gA+NA,aA-DA,gA+NA,aA+DA,gA-NA,aA+DA],l.x,l.y);if(qA.length>0){var IA=s,bA=Tf(IA,_y(a)),SA=Tf(IA,_y(qA)),EA=bA;if(SA<bA)a=qA,EA=SA;if(qA.length>2){var nA=Tf(IA,{x:qA[2],y:qA[3]});if(nA<EA)a=[qA[2],qA[3]]}}}}var eA=tT(a,U,u.arrowShapes[g].spacing(A)+B),BA=tT(a,U,u.arrowShapes[g].gap(A)+B);if(Q.endX=BA[0],Q.endY=BA[1],Q.arrowEndX=eA[0],Q.arrowEndY=eA[1],F==="inside-to-node")a=[s.x,s.y];else if(x.units)a=this.manualEndptToPx(n,x);else if(F==="outside-to-line")a=Q.srcIntn;else{if(F==="outside-to-node"||F==="outside-to-node-or-label")J=Y;else if(F==="outside-to-line"||F==="outside-to-line-or-label")J=[l.x,l.y];if(a=u.nodeShapes[this.getNodeShape(n)].intersectLine(s.x,s.y,n.outerWidth(),n.outerHeight(),J[0],J[1],0,T,d),F==="outside-to-node-or-label"||F==="outside-to-line-or-label"){var yA=n._private.rscratch,{labelWidth:vA,labelHeight:FA,labelX:HA,labelY:dA}=yA,q=vA/2,Z=FA/2,fA=n.pstyle("text-valign").value;if(fA=tw(fA),fA==="top")dA-=Z;else if(fA==="bottom")dA+=Z;var j=n.pstyle("text-halign").value;if(j=ew(j),j==="left")HA-=q;else if(j==="right")HA+=q;var mA=Sk(J[0],J[1],[HA-q,dA-Z,HA+q,dA-Z,HA+q,dA+Z,HA-q,dA+Z],s.x,s.y);if(mA.length>0){var rA=l,JA=Tf(rA,_y(a)),_A=Tf(rA,_y(mA)),ZA=JA;if(_A<JA)a=[mA[0],mA[1]],ZA=_A;if(mA.length>2){var WA=Tf(rA,{x:mA[2],y:mA[3]});if(WA<ZA)a=[mA[2],mA[3]]}}}}var te=tT(a,Y,u.arrowShapes[C].spacing(A)+E),zA=tT(a,Y,u.arrowShapes[C].gap(A)+E);if(Q.startX=zA[0],Q.startY=zA[1],Q.arrowStartX=te[0],Q.arrowStartY=te[1],v)if(!ht(Q.startX)||!ht(Q.startY)||!ht(Q.endX)||!ht(Q.endY))Q.badLine=!0;else Q.badLine=!1};Wk.getSourceEndpoint=function(A){var e=A[0]._private.rscratch;switch(this.recalculateRenderedStyle(A),e.edgeType){case"haystack":return{x:e.haystackPts[0],y:e.haystackPts[1]};default:return{x:e.arrowStartX,y:e.arrowStartY}}};Wk.getTargetEndpoint=function(A){var e=A[0]._private.rscratch;switch(this.recalculateRenderedStyle(A),e.edgeType){case"haystack":return{x:e.haystackPts[2],y:e.haystackPts[3]};default:return{x:e.arrowEndX,y:e.arrowEndY}}};PaA={};PaA.storeEdgeProjections=function(A){var e=A._private,t=e.rscratch,r=t.edgeType;if(e.rstyle.bezierPts=null,e.rstyle.linePts=null,e.rstyle.haystackPts=null,r==="multibezier"||r==="bezier"||r==="self"||r==="compound"){e.rstyle.bezierPts=[];for(var i=0;i+5<t.allpts.length;i+=4)yft(this,A,t.allpts.slice(i,i+6))}else if(r==="segments"){var u=e.rstyle.linePts=[];for(var i=0;i+1<t.allpts.length;i+=2)u.push({x:t.allpts[i],y:t.allpts[i+1]})}else if(r==="haystack"){var a=t.haystackPts;e.rstyle.haystackPts=[{x:a[0],y:a[1]},{x:a[2],y:a[3]}]}e.rstyle.arrowWidth=this.getArrowWidth(A.pstyle("width").pfValue,A.pstyle("arrow-scale").value)*this.arrowShapeWidth};PaA.recalculateEdgeProjections=function(A){this.findEdgeControlPoints(A)};mE={};mE.recalculateNodeLabelProjection=function(A){var e=A.pstyle("label").strValue;if(g4(e))return;var t,r,i=A._private,u=A.width(),a=A.height(),n=A.padding(),o=A.position(),s=A.pstyle("text-halign").strValue,l=A.pstyle("text-valign").strValue,{rscratch:g,rstyle:C}=i;switch(s){case"left":t=o.x-u/2-n;break;case"left-inside":t=o.x-u/2+n;break;case"right":t=o.x+u/2+n;break;case"right-inside":t=o.x+u/2-n;break;default:t=o.x}switch(l){case"top":r=o.y-a/2-n;break;case"top-inside":r=o.y-a/2+n;break;case"bottom":r=o.y+a/2+n;break;case"bottom-inside":r=o.y+a/2-n;break;default:r=o.y}g.labelX=t,g.labelY=r,C.labelX=t,C.labelY=r,this.calculateLabelAngles(A),this.applyLabelDimensions(A)};mE.recalculateEdgeLabelProjections=function(A){var e,t=A._private,r=t.rscratch,i=this,u={mid:A.pstyle("label").strValue,source:A.pstyle("source-label").strValue,target:A.pstyle("target-label").strValue};if(u.mid||u.source||u.target);else return;e={x:r.midX,y:r.midY};var a=function(g,C,B){QE(t.rscratch,g,C,B),QE(t.rstyle,g,C,B)};a("labelX",null,e.x),a("labelY",null,e.y);var n=aJA(r.midDispX,r.midDispY);a("labelAutoAngle",null,n);var o=function(){if(o.cache)return o.cache;var g=[];for(var C=0;C+5<r.allpts.length;C+=4){var B={x:r.allpts[C],y:r.allpts[C+1]},E={x:r.allpts[C+2],y:r.allpts[C+3]},d={x:r.allpts[C+4],y:r.allpts[C+5]};g.push({p0:B,p1:E,p2:d,startDist:0,length:0,segments:[]})}var I=t.rstyle.bezierPts,h=i.bezierProjPcts.length;function Q(w,b,k,v,S){var x=Pf(b,k),F=w.segments[w.segments.length-1],T={p0:b,p1:k,t0:v,t1:S,startDist:F?F.startDist+F.length:0,length:x};w.segments.push(T),w.length+=x}for(var p=0;p<g.length;p++){var m=g[p],f=g[p-1];if(f)m.startDist=f.startDist+f.length;Q(m,m.p0,I[p*h],0,i.bezierProjPcts[0]);for(var D=0;D<h-1;D++)Q(m,I[p*h+D],I[p*h+D+1],i.bezierProjPcts[D],i.bezierProjPcts[D+1]);Q(m,I[p*h+h-1],m.p2,i.bezierProjPcts[h-1],1)}return o.cache=g},s=function(g){var C,B=g==="source";if(!u[g])return;var E=A.pstyle(g+"-text-offset").pfValue;switch(r.edgeType){case"self":case"compound":case"bezier":case"multibezier":{var d=o(),I,h=0,Q=0;for(var p=0;p<d.length;p++){var m=d[B?p:d.length-1-p];for(var f=0;f<m.segments.length;f++){var D=m.segments[B?f:m.segments.length-1-f],w=p===d.length-1&&f===m.segments.length-1;if(h=Q,Q+=D.length,Q>=E||w){I={cp:m,segment:D};break}}if(I)break}var b=I.cp,k=I.segment,v=(E-h)/k.length,S=k.t1-k.t0,x=B?k.t0+S*v:k.t1-S*v;x=xk(0,x,1),e=zy(b.p0,b.p1,b.p2,x),C=wft(b.p0,b.p1,b.p2,x);break}case"straight":case"segments":case"haystack":{var F=0,T,R,L,M,U=r.allpts.length;for(var Y=0;Y+3<U;Y+=2){if(B)L={x:r.allpts[Y],y:r.allpts[Y+1]},M={x:r.allpts[Y+2],y:r.allpts[Y+3]};else L={x:r.allpts[U-2-Y],y:r.allpts[U-1-Y]},M={x:r.allpts[U-4-Y],y:r.allpts[U-3-Y]};if(T=Pf(L,M),R=F,F+=T,F>=E)break}var H=E-R,J=H/T;J=xk(0,J,1),e=WQt(L,M,J),C=nJA(L,M);break}}a("labelX",g,e.x),a("labelY",g,e.y),a("labelAutoAngle",g,C)};s("source"),s("target"),this.applyLabelDimensions(A)};mE.applyLabelDimensions=function(A){if(this.applyPrefixedLabelDimensions(A),A.isEdge())this.applyPrefixedLabelDimensions(A,"source"),this.applyPrefixedLabelDimensions(A,"target")};mE.applyPrefixedLabelDimensions=function(A,e){var t=A._private,r=this.getLabelText(A,e),i=Of(r,A._private.labelDimsKey);if(hs(t.rscratch,"prefixedLabelDimsKey",e)===i)return;QE(t.rscratch,"prefixedLabelDimsKey",e,i);var u=this.calculateLabelDimensions(A,r),a=A.pstyle("line-height").pfValue,n=A.pstyle("font-size").pfValue,o=A.pstyle("text-wrap").strValue,s=hs(t.rscratch,"labelWrapCachedLines",e)||[],l=o!=="wrap"?1:Math.max(s.length,1),g=n*a,C=u.width,B=u.height+(l-1)*(a-1)*n;QE(t.rstyle,"labelWidth",e,C),QE(t.rscratch,"labelWidth",e,C),QE(t.rstyle,"labelHeight",e,B),QE(t.rscratch,"labelHeight",e,B),QE(t.rscratch,"labelLineHeight",e,g),QE(t.rscratch,"labelActualDescent",e,u.labelActualDescent)};mE.getLabelText=function(A,e){var t=A._private,r=e?e+"-":"",i=A.pstyle(r+"label").strValue,u=A.pstyle("text-transform").value,a=function(O,P){if(P)return QE(t.rscratch,O,e,P),P;else return hs(t.rscratch,O,e)};if(!i)return"";if(u=="none");else if(u=="uppercase")i=i.toUpperCase();else if(u=="lowercase")i=i.toLowerCase();var n=A.pstyle("text-wrap").value;if(n==="wrap"){var o=a("labelKey");if(o!=null&&a("labelWrapKey")===o)return a("labelWrapCachedText");var s="​",l=i.split(`
`),g=A.pstyle("text-max-width").pfValue,C=A.pstyle("text-overflow-wrap").value,B=C==="anywhere",E=[],d=/[\s\u200b]+|$/g;for(var I=0;I<l.length;I++){var h=l[I],Q=this.calculateLabelDimensions(A,h),p=Q.width;if(B){var m=h.split("").join(s);h=m}if(p>g){var f=h.matchAll(d),D="",w=0,b=Bl(f),k;try{for(b.s();!(k=b.n()).done;){var v=k.value,S=v[0],x=h.substring(w,v.index);w=v.index+S.length;var F=D.length===0?x:D+x+S,T=this.calculateLabelDimensions(A,F),R=T.width;if(R<=g)D+=x+S;else{if(D)E.push(D);D=x+S}}}catch(K){b.e(K)}finally{b.f()}if(!D.match(/^[\s\u200b]+$/))E.push(D)}else E.push(h)}a("labelWrapCachedLines",E),i=a("labelWrapCachedText",E.join(`
`)),a("labelWrapKey",o)}else if(n==="ellipsis"){var L=A.pstyle("text-max-width").pfValue,M="",U="…",Y=!1;if(this.calculateLabelDimensions(A,i).width<L)return i;for(var H=0;H<i.length;H++){var J=this.calculateLabelDimensions(A,M+i[H]+U).width;if(J>L)break;if(M+=i[H],H===i.length-1)Y=!0}if(!Y)M+=U;return M}return i};mE.getLabelJustification=function(A){var e=A.pstyle("text-justification").strValue,t=A.pstyle("text-halign").strValue;if(e==="auto")if(A.isNode())return cpt(t);else return"center";else return e};mE.calculateLabelDimensions=function(A,e){var t=this,r=t.cy.window(),i=r.document,u=0,a=A.pstyle("font-style").strValue,n=A.pstyle("font-size").pfValue,o=A.pstyle("font-family").strValue,s=A.pstyle("font-weight").strValue,l=A.pstyle("text-metrics").strValue||"font",g=this.labelCalcCanvas,C=this.labelCalcCanvasContext;if(!g){g=this.labelCalcCanvas=i.createElement("canvas"),C=this.labelCalcCanvasContext=g.getContext("2d");var B=g.style;B.position="absolute",B.left="-9999px",B.top="-9999px",B.zIndex="-1",B.visibility="hidden",B.pointerEvents="none"}C.font="".concat(a," ").concat(s," ").concat(n,"px ").concat(o);var E=0,d=0,I=e.split(`
`),h=I.length,Q=0,p=0;for(var m=0;m<h;m++){var f=I[m],D=C.measureText(f),w=Math.ceil(D.width),b=n;if(l==="glyph"){if(m===0)p=D.actualBoundingBoxAscent;if(m===h-1)Q=D.actualBoundingBoxDescent}E=Math.max(w,E),d+=b}if(l==="glyph")d-=n-p-Q;return E+=u,d+=u,{width:E,height:d,labelActualAscent:p,labelActualDescent:Q}};mE.calculateLabelAngle=function(A,e){var t=A._private,r=t.rscratch,i=A.isEdge(),u=e?e+"-":"",a=A.pstyle(u+"text-rotation"),n=a.strValue;if(n==="none")return 0;else if(i&&n==="autorotate")return r.labelAutoAngle;else if(n==="autorotate")return 0;else return a.pfValue};mE.calculateLabelAngles=function(A){var e=this,t=A.isEdge(),r=A._private,i=r.rscratch;if(i.labelAngle=e.calculateLabelAngle(A),t)i.sourceLabelAngle=e.calculateLabelAngle(A,"source"),i.targetLabelAngle=e.calculateLabelAngle(A,"target")};oJA={};oJA.getNodeShape=function(A){var e=this,t=A.pstyle("shape").value;if(t==="cutrectangle"&&(A.width()<pHA||A.height()<pHA)){if(!fHA)du("The `cutrectangle` node shape can not be used at small sizes so `rectangle` is used instead"),fHA=!0;return"rectangle"}if(A.isParent())if(t==="rectangle"||t==="roundrectangle"||t==="round-rectangle"||t==="cutrectangle"||t==="cut-rectangle"||t==="barrel")return t;else return"rectangle";if(t==="polygon"){var r=A.pstyle("shape-polygon-points").value;return e.nodeShapes.makePolygon(r).name}return t};$T={};$T.registerCalculationListeners=function(){var A=this.cy,e=A.collection(),t=this,r=function(a){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(e.merge(a),n)for(var o=0;o<a.length;o++){var s=a[o],l=s._private,g=l.rstyle;g.clean=!1,g.cleanConnected=!1}};t.binder(A).on("bounds.* dirty.*",function(a){var n=a.target;r(n)}).on("style.* background.*",function(a){var n=a.target;r(n,!1)});var i=function(a){if(a){var n=t.onUpdateEleCalcsFns;e.cleanStyle();for(var o=0;o<e.length;o++){var s=e[o],l=s._private.rstyle;if(s.isNode()&&!l.cleanConnected)r(s.connectedEdges()),l.cleanConnected=!0}if(n)for(var g=0;g<n.length;g++){var C=n[g];C(a,e)}t.recalculateRenderedStyle(e),e=A.collection()}};t.flushRenderedStyleQueue=function(){i(!0)},t.beforeRender(i,t.beforeRenderPriorities.eleCalcs)};$T.onUpdateEleCalcs=function(A){var e=this.onUpdateEleCalcsFns=this.onUpdateEleCalcsFns||[];e.push(A)};$T.recalculateRenderedStyle=function(A,e){var t=function(m){return m._private.rstyle.cleanConnected};if(A.length===0)return;var r=[],i=[];if(this.destroyed)return;if(e===void 0)e=!0;for(var u=0;u<A.length;u++){var a=A[u],n=a._private,o=n.rstyle;if(a.isEdge()&&(!t(a.source())||!t(a.target())))o.clean=!1;if(a.isEdge()&&a.isBundledBezier()){if(a.parallelEdges().some(function(p){return!p._private.rstyle.clean&&p.isBundledBezier()}))o.clean=!1}if(e&&o.clean||a.removed())continue;if(a.pstyle("display").value==="none")continue;if(n.group==="nodes")i.push(a);else r.push(a);o.clean=!0}for(var s=0;s<i.length;s++){var l=i[s],g=l._private,C=g.rstyle,B=l.position();this.recalculateNodeLabelProjection(l),C.nodeX=B.x,C.nodeY=B.y,C.nodeW=l.pstyle("width").pfValue,C.nodeH=l.pstyle("height").pfValue}this.recalculateEdgeProjections(r);for(var E=0;E<r.length;E++){var d=r[E],I=d._private,{rstyle:h,rscratch:Q}=I;h.srcX=Q.arrowStartX,h.srcY=Q.arrowStartY,h.tgtX=Q.arrowEndX,h.tgtY=Q.arrowEndY,h.midX=Q.midX,h.midY=Q.midY,h.labelAngle=Q.labelAngle,h.sourceLabelAngle=Q.sourceLabelAngle,h.targetLabelAngle=Q.targetLabelAngle}};AY={};AY.updateCachedGrabbedEles=function(){var A=this.cachedZSortedEles;if(!A)return;A.drag=[],A.nondrag=[];var e=[];for(var t=0;t<A.length;t++){var r=A[t],i=r._private.rscratch;if(r.grabbed()&&!r.isParent())e.push(r);else if(i.inDragLayer)A.drag.push(r);else A.nondrag.push(r)}for(var t=0;t<e.length;t++){var r=e[t];A.drag.push(r)}};AY.invalidateCachedZSortedEles=function(){this.cachedZSortedEles=null};AY.getCachedZSortedEles=function(A){if(A||!this.cachedZSortedEles){var e=this.cy.mutableElements().toArray();e.sort(OKA),e.interactive=e.filter(function(t){return t.interactive()}),this.cachedZSortedEles=e,this.updateCachedGrabbedEles()}else e=this.cachedZSortedEles;return e};sJA={};[zf,RT,H0,Wk,PaA,mE,oJA,$T,AY].forEach(function(A){dr(sJA,A)});lJA={};lJA.getCachedImage=function(A,e,t){var r=this,i=r.imageCache=r.imageCache||{},u=i[A];if(u){if(!u.image.complete)u.image.addEventListener("load",t);return u.image}else{u=i[A]=i[A]||{};var a=u.image=new Image;a.addEventListener("load",t),a.addEventListener("error",function(){a.error=!0});var n="data:",o=A.substring(0,n.length).toLowerCase()===n;if(!o)e=e==="null"?null:e,a.crossOrigin=e;return a.src=A,a}};nw={};nw.registerBinding=function(A,e,t,r){var i=Array.prototype.slice.apply(arguments,[1]);if(Array.isArray(A)){var u=[];for(var a=0;a<A.length;a++){var n=A[a];if(n!==void 0){var o=this.binder(n);u.push(o.on.apply(o,i))}}return u}var o=this.binder(A);return o.on.apply(o,i)};nw.binder=function(A){var e=this,t=e.cy.window(),r=A===t||A===t.document||A===t.document.body||Ght(A);if(e.supportsPassiveEvents==null){var i=!1;try{var u=Object.defineProperty({},"passive",{get:function(){return i=!0,!0}});t.addEventListener("test",null,u)}catch(n){}e.supportsPassiveEvents=i}var a=function(o,s,l){var g=Array.prototype.slice.call(arguments);if(r&&e.supportsPassiveEvents)g[2]={capture:l!=null?l:!1,passive:!1,once:!1};return e.bindings.push({target:A,args:g}),(A.addEventListener||A.on).apply(A,g),this};return{on:a,addEventListener:a,addListener:a,bind:a}};nw.nodeIsDraggable=function(A){return A&&A.isNode()&&!A.locked()&&A.grabbable()};nw.nodeIsGrabbable=function(A){return this.nodeIsDraggable(A)&&A.interactive()};nw.load=function(){var A=this,e=A.cy.window(),t=function(q){return q.selected()},r=function(q){var Z=q.getRootNode();if(Z&&Z.nodeType===11&&Z.host!==void 0)return Z},i=function(q,Z,fA,j){if(q==null)q=A.cy;for(var mA=0;mA<Z.length;mA++){var rA=Z[mA];q.emit({originalEvent:fA,type:rA,position:j})}},u=function(q){return q.shiftKey||q.metaKey||q.ctrlKey},a=function(q,Z){var fA=!0;if(A.cy.hasCompoundNodes()&&q&&q.pannable())for(var j=0;Z&&j<Z.length;j++){var q=Z[j];if(q.isNode()&&q.isParent()&&!q.pannable()){fA=!1;break}}else fA=!0;return fA},n=function(q){q[0]._private.rscratch.inDragLayer=!0},o=function(q){q[0]._private.rscratch.inDragLayer=!1},s=function(q){q[0]._private.rscratch.isGrabTarget=!0},l=function(q){q[0]._private.rscratch.isGrabTarget=!1},g=function(q,Z){var fA=Z.addToList,j=fA.has(q);if(!j&&q.grabbable()&&!q.locked())fA.merge(q),bft(q)},C=function(q,Z){if(!q.cy().hasCompoundNodes())return;if(Z.inDragLayer==null&&Z.addToList==null)return;var fA=q.descendants();if(Z.inDragLayer)fA.forEach(n),fA.connectedEdges().forEach(n);if(Z.addToList)g(fA,Z)},B=function(q,Z){Z=Z||{};var fA=q.cy().hasCompoundNodes();if(Z.inDragLayer)q.forEach(n),q.neighborhood().stdFilter(function(j){return!fA||j.isEdge()}).forEach(n);if(Z.addToList)q.forEach(function(j){g(j,Z)});C(q,Z),I(q,{inDragLayer:Z.inDragLayer}),A.updateCachedGrabbedEles()},E=B,d=function(q){if(!q)return;A.getCachedZSortedEles().forEach(function(Z){vft(Z),o(Z),l(Z)}),A.updateCachedGrabbedEles()},I=function(q,Z){if(Z.inDragLayer==null&&Z.addToList==null)return;if(!q.cy().hasCompoundNodes())return;var fA=q.ancestors().orphans();if(fA.same(q))return;var j=fA.descendants().spawnSelf().merge(fA).unmerge(q).unmerge(q.descendants()),mA=j.connectedEdges();if(Z.inDragLayer)mA.forEach(n),j.forEach(n);if(Z.addToList)j.forEach(function(rA){g(rA,Z)})},h=function(){if(document.activeElement!=null&&document.activeElement.blur!=null)document.activeElement.blur()},Q=typeof MutationObserver<"u",p=typeof ResizeObserver<"u";if(Q){if(A.removeObserver=new MutationObserver(function(dA){for(var q=0;q<dA.length;q++){var Z=dA[q],fA=Z.removedNodes;if(fA)for(var j=0;j<fA.length;j++){var mA=fA[j];if(mA===A.container){A.destroy();break}}}}),A.container.parentNode)A.removeObserver.observe(A.container.parentNode,{childList:!0})}else A.registerBinding(A.container,"DOMNodeRemoved",function(dA){A.destroy()});var m=Jk(function(){A.cy.resize()},100);if(Q)A.styleObserver=new MutationObserver(m),A.styleObserver.observe(A.container,{attributes:!0});if(A.registerBinding(e,"resize",m),p)A.resizeObserver=new ResizeObserver(m),A.resizeObserver.observe(A.container);var f=function(q,Z){while(q!=null)Z(q),q=q.parentNode},D=function(){A.invalidateContainerClientCoordsCache()};f(A.container,function(dA){A.registerBinding(dA,"transitionend",D),A.registerBinding(dA,"animationend",D),A.registerBinding(dA,"scroll",D)}),A.registerBinding(A.container,"contextmenu",function(dA){dA.preventDefault()});var w=function(){return A.selection[4]!==0},b=function(q){var Z=A.findContainerClientCoords(),fA=Z[0],j=Z[1],mA=Z[2],rA=Z[3],JA=q.touches?q.touches:[q],_A=!1;for(var ZA=0;ZA<JA.length;ZA++){var WA=JA[ZA];if(fA<=WA.clientX&&WA.clientX<=fA+mA&&j<=WA.clientY&&WA.clientY<=j+rA){_A=!0;break}}if(!_A)return!1;var te=A.container,zA=q.target,Ae=zA.parentNode,$A=!1;while(Ae){if(Ae===te){$A=!0;break}Ae=Ae.parentNode}if(!$A)return!1;return!0};A.registerBinding(A.container,"mousedown",function(q){if(!b(q))return;if(A.hoverData.which===1&&q.which!==1)return;q.preventDefault(),h(),A.hoverData.capture=!0,A.hoverData.which=q.which;var Z=A.cy,fA=[q.clientX,q.clientY],j=A.projectIntoViewport(fA[0],fA[1]),mA=A.selection,rA=A.findNearestElements(j[0],j[1],!0,!1),JA=rA[0],_A=A.dragData.possibleDragElements;A.hoverData.mdownPos=j,A.hoverData.mdownGPos=fA;var ZA=function(oe){return{originalEvent:q,type:oe,position:{x:j[0],y:j[1]}}},WA=function(){A.hoverData.tapholdCancelled=!1,clearTimeout(A.hoverData.tapholdTimeout),A.hoverData.tapholdTimeout=setTimeout(function(){if(A.hoverData.tapholdCancelled)return;else{var oe=A.hoverData.down;if(oe)oe.emit(ZA("taphold"));else Z.emit(ZA("taphold"))}},A.tapholdDuration)};if(q.which==3){A.hoverData.cxtStarted=!0;var te={originalEvent:q,type:"cxttapstart",position:{x:j[0],y:j[1]}};if(JA)JA.activate(),JA.emit(te),A.hoverData.down=JA;else Z.emit(te);A.hoverData.downTime=new Date().getTime(),A.hoverData.cxtDragged=!1}else if(q.which==1){if(JA)JA.activate();{if(JA!=null){if(A.nodeIsGrabbable(JA)){var zA=function(oe){oe.emit(ZA("grab"))};if(s(JA),!JA.selected())_A=A.dragData.possibleDragElements=Z.collection(),E(JA,{addToList:_A}),JA.emit(ZA("grabon")).emit(ZA("grab"));else{_A=A.dragData.possibleDragElements=Z.collection();var Ae=Z.$(function($A){return $A.isNode()&&$A.selected()&&A.nodeIsGrabbable($A)});B(Ae,{addToList:_A}),JA.emit(ZA("grabon")),Ae.forEach(zA)}A.redrawHint("eles",!0),A.redrawHint("drag",!0)}}A.hoverData.down=JA,A.hoverData.downs=rA,A.hoverData.downTime=new Date().getTime()}if(i(JA,["mousedown","tapstart","vmousedown"],q,{x:j[0],y:j[1]}),JA==null)mA[4]=1,A.data.bgActivePosistion={x:j[0],y:j[1]},A.redrawHint("select",!0),A.redraw();else if(JA.pannable())mA[4]=1;WA()}mA[0]=mA[2]=j[0],mA[1]=mA[3]=j[1]},!1);var k=r(A.container);A.registerBinding([e,k],"mousemove",function(q){var Z=A.hoverData.capture;if(!Z&&!b(q))return;var fA=!1,j=A.cy,mA=j.zoom(),rA=[q.clientX,q.clientY],JA=A.projectIntoViewport(rA[0],rA[1]),_A=A.hoverData.mdownPos,ZA=A.hoverData.mdownGPos,WA=A.selection,te=null;if(!A.hoverData.draggingEles&&!A.hoverData.dragging&&!A.hoverData.selecting)te=A.findNearestElement(JA[0],JA[1],!0,!1);var zA=A.hoverData.last,Ae=A.hoverData.down,$A=[JA[0]-WA[2],JA[1]-WA[3]],oe=A.dragData.possibleDragElements,kA;if(ZA){var Pe=rA[0]-ZA[0],MA=Pe*Pe,ke=rA[1]-ZA[1],We=ke*ke,ue=MA+We;A.hoverData.isOverThresholdDrag=kA=ue>=A.desktopTapThreshold2}var Me=u(q);if(kA)A.hoverData.tapholdCancelled=!0;var je=function(){var Je=A.hoverData.dragDelta=A.hoverData.dragDelta||[];if(Je.length===0)Je.push($A[0]),Je.push($A[1]);else Je[0]+=$A[0],Je[1]+=$A[1]};fA=!0,i(te,["mousemove","vmousemove","tapdrag"],q,{x:JA[0],y:JA[1]});var Ge=function(Je){return{originalEvent:q,type:Je,position:{x:JA[0],y:JA[1]}}},wA=function(){if(A.data.bgActivePosistion=void 0,!A.hoverData.selecting)j.emit(Ge("boxstart"));WA[4]=1,A.hoverData.selecting=!0,A.redrawHint("select",!0),A.redraw()};if(A.hoverData.which===3){if(kA){var Re=Ge("cxtdrag");if(Ae)Ae.emit(Re);else j.emit(Re);if(A.hoverData.cxtDragged=!0,!A.hoverData.cxtOver||te!==A.hoverData.cxtOver){if(A.hoverData.cxtOver)A.hoverData.cxtOver.emit(Ge("cxtdragout"));if(A.hoverData.cxtOver=te,te)te.emit(Ge("cxtdragover"))}}}else if(A.hoverData.dragging){if(fA=!0,j.panningEnabled()&&j.userPanningEnabled()){var He;if(A.hoverData.justStartedPan){var de=A.hoverData.mdownPos;He={x:(JA[0]-de[0])*mA,y:(JA[1]-de[1])*mA},A.hoverData.justStartedPan=!1}else He={x:$A[0]*mA,y:$A[1]*mA};j.panBy(He),j.emit(Ge("dragpan")),A.hoverData.dragged=!0}JA=A.projectIntoViewport(q.clientX,q.clientY)}else if(WA[4]==1&&(Ae==null||Ae.pannable())){if(kA){if(!A.hoverData.dragging&&j.boxSelectionEnabled()&&(Me||!j.panningEnabled()||!j.userPanningEnabled()))wA();else if(!A.hoverData.selecting&&j.panningEnabled()&&j.userPanningEnabled()){var RA=a(Ae,A.hoverData.downs);if(RA)A.hoverData.dragging=!0,A.hoverData.justStartedPan=!0,WA[4]=0,A.data.bgActivePosistion=_y(_A),A.redrawHint("select",!0),A.redraw()}if(Ae&&Ae.pannable()&&Ae.active())Ae.unactivate()}}else{if(Ae&&Ae.pannable()&&Ae.active())Ae.unactivate();if((!Ae||!Ae.grabbed())&&te!=zA){if(zA)i(zA,["mouseout","tapdragout"],q,{x:JA[0],y:JA[1]});if(te)i(te,["mouseover","tapdragover"],q,{x:JA[0],y:JA[1]});A.hoverData.last=te}if(Ae)if(kA){if(j.boxSelectionEnabled()&&Me){if(Ae&&Ae.grabbed()){if(d(oe),Ae.emit(Ge("freeon")),oe.emit(Ge("free")),A.dragData.didDrag)Ae.emit(Ge("dragfreeon")),oe.emit(Ge("dragfree"))}wA()}else if(Ae&&Ae.grabbed()&&A.nodeIsDraggable(Ae)){var ce=!A.dragData.didDrag;if(ce)A.redrawHint("eles",!0);if(A.dragData.didDrag=!0,!A.hoverData.draggingEles)B(oe,{inDragLayer:!0});var me={x:0,y:0};if(ht($A[0])&&ht($A[1])){if(me.x+=$A[0],me.y+=$A[1],ce){var Le=A.hoverData.dragDelta;if(Le&&ht(Le[0])&&ht(Le[1]))me.x+=Le[0],me.y+=Le[1]}}A.hoverData.draggingEles=!0,oe.silentShift(me).emit(Ge("position")).emit(Ge("drag")),A.redrawHint("drag",!0),A.redraw()}}else je();fA=!0}if(WA[2]=JA[0],WA[3]=JA[1],fA){if(q.stopPropagation)q.stopPropagation();if(q.preventDefault)q.preventDefault();return!1}},!1);var v,S,x;A.registerBinding(e,"mouseup",function(q){if(A.hoverData.which===1&&q.which!==1&&A.hoverData.capture)return;var Z=A.hoverData.capture;if(!Z)return;A.hoverData.capture=!1;var fA=A.cy,j=A.projectIntoViewport(q.clientX,q.clientY),mA=A.selection,rA=A.findNearestElement(j[0],j[1],!0,!1),JA=A.dragData.possibleDragElements,_A=A.hoverData.down,ZA=u(q);if(A.data.bgActivePosistion)A.redrawHint("select",!0),A.redraw();if(A.hoverData.tapholdCancelled=!0,A.data.bgActivePosistion=void 0,_A)_A.unactivate();var WA=function(Pe){return{originalEvent:q,type:Pe,position:{x:j[0],y:j[1]}}};if(A.hoverData.which===3){var te=WA("cxttapend");if(_A)_A.emit(te);else fA.emit(te);if(!A.hoverData.cxtDragged){var zA=WA("cxttap");if(_A)_A.emit(zA);else fA.emit(zA)}A.hoverData.cxtDragged=!1,A.hoverData.which=null}else if(A.hoverData.which===1){if(i(rA,["mouseup","tapend","vmouseup"],q,{x:j[0],y:j[1]}),!A.dragData.didDrag&&!A.hoverData.dragged&&!A.hoverData.selecting&&!A.hoverData.isOverThresholdDrag)if(i(_A,["click","tap","vclick"],q,{x:j[0],y:j[1]}),S=!1,q.timeStamp-x<=fA.multiClickDebounceTime())v&&clearTimeout(v),S=!0,x=null,i(_A,["dblclick","dbltap","vdblclick"],q,{x:j[0],y:j[1]});else v=setTimeout(function(){if(S)return;i(_A,["oneclick","onetap","voneclick"],q,{x:j[0],y:j[1]})},fA.multiClickDebounceTime()),x=q.timeStamp;if(_A==null&&!A.dragData.didDrag&&!A.hoverData.selecting&&!A.hoverData.dragged&&!u(q)){if(fA.$(t).unselect(["tapunselect"]),JA.length>0)A.redrawHint("eles",!0);A.dragData.possibleDragElements=JA=fA.collection()}if(rA==_A&&!A.dragData.didDrag&&!A.hoverData.selecting){if(rA!=null&&rA._private.selectable){if(A.hoverData.dragging);else if(fA.selectionType()==="additive"||ZA)if(rA.selected())rA.unselect(["tapunselect"]);else rA.select(["tapselect"]);else if(!ZA)fA.$(t).unmerge(rA).unselect(["tapunselect"]),rA.select(["tapselect"]);A.redrawHint("eles",!0)}}if(A.hoverData.selecting){var Ae=fA.collection(A.getAllInBox(mA[0],mA[1],mA[2],mA[3]));if(A.redrawHint("select",!0),Ae.length>0)A.redrawHint("eles",!0);fA.emit(WA("boxend"));var $A=function(Pe){return Pe.selectable()&&!Pe.selected()};if(fA.selectionType()==="additive")Ae.emit(WA("box")).stdFilter($A).select().emit(WA("boxselect"));else{if(!ZA)fA.$(t).unmerge(Ae).unselect();Ae.emit(WA("box")).stdFilter($A).select().emit(WA("boxselect"))}A.redraw()}if(A.hoverData.dragging)A.hoverData.dragging=!1,A.redrawHint("select",!0),A.redrawHint("eles",!0),A.redraw();if(!mA[4]){A.redrawHint("drag",!0),A.redrawHint("eles",!0);var oe=_A&&_A.grabbed();if(d(JA),oe){if(_A.emit(WA("freeon")),JA.emit(WA("free")),A.dragData.didDrag)_A.emit(WA("dragfreeon")),JA.emit(WA("dragfree"))}}}mA[4]=0,A.hoverData.down=null,A.hoverData.cxtStarted=!1,A.hoverData.draggingEles=!1,A.hoverData.selecting=!1,A.hoverData.isOverThresholdDrag=!1,A.dragData.didDrag=!1,A.hoverData.dragged=!1,A.hoverData.dragDelta=[],A.hoverData.mdownPos=null,A.hoverData.mdownGPos=null,A.hoverData.which=null},!1);var F=[],T=4,R,L=1e5,M=function(q){var Z=Math.abs(q[0]);for(var fA=1;fA<q.length;fA++)if(Math.abs(q[fA])!==Z)return!1;return!0},U=function(q){var Z=!1,fA=q.deltaY;if(fA==null){if(q.wheelDeltaY!=null)fA=q.wheelDeltaY/4;else if(q.wheelDelta!=null)fA=q.wheelDelta/4}if(fA===0)return;if(R==null)if(F.length>=T){R=!1;var j=F;if(j[0]>=5){var mA;if(M(j))mA=j[0];else mA=OQt(j);if(mA>1)R=!0,L=mA}}else F.push(Math.abs(fA)),Z=!0;else if(R)L=Math.min(Math.abs(fA),L);if(A.scrollingPage)return;var rA=A.cy,JA=rA.zoom(),_A=rA.pan(),ZA=A.projectIntoViewport(q.clientX,q.clientY),WA=[ZA[0]*JA+_A.x,ZA[1]*JA+_A.y];if(A.hoverData.draggingEles||A.hoverData.dragging||A.hoverData.cxtStarted||w()){q.preventDefault();return}if(rA.panningEnabled()&&rA.userPanningEnabled()&&rA.zoomingEnabled()&&rA.userZoomingEnabled()){q.preventDefault(),A.data.wheelZooming=!0,clearTimeout(A.data.wheelTimeout),A.data.wheelTimeout=setTimeout(function(){A.data.wheelZooming=!1,A.redrawHint("eles",!0),A.redraw()},150);var te;if(Z&&Math.abs(fA)>5)fA=xaA(fA)*5;if(te=fA/-250,R)te/=L,te*=3;te=te*A.wheelSensitivity;var zA=q.deltaMode===1;if(zA)te*=33;var Ae=rA.zoom()*Math.pow(10,te);if(q.type==="gesturechange")Ae=A.gestureStartZoom*q.scale;rA.zoom({level:Ae,renderedPosition:{x:WA[0],y:WA[1]}}),rA.emit({type:q.type==="gesturechange"?"pinchzoom":"scrollzoom",originalEvent:q,position:{x:ZA[0],y:ZA[1]}})}};A.registerBinding(A.container,"wheel",U,!0),A.registerBinding(e,"scroll",function(q){A.scrollingPage=!0,clearTimeout(A.scrollingPageTimeout),A.scrollingPageTimeout=setTimeout(function(){A.scrollingPage=!1},250)},!0),A.registerBinding(A.container,"gesturestart",function(q){if(A.gestureStartZoom=A.cy.zoom(),!A.hasTouchStarted)q.preventDefault()},!0),A.registerBinding(A.container,"gesturechange",function(dA){if(!A.hasTouchStarted)U(dA)},!0),A.registerBinding(A.container,"mouseout",function(q){var Z=A.projectIntoViewport(q.clientX,q.clientY);A.cy.emit({originalEvent:q,type:"mouseout",position:{x:Z[0],y:Z[1]}})},!1),A.registerBinding(A.container,"mouseover",function(q){var Z=A.projectIntoViewport(q.clientX,q.clientY);A.cy.emit({originalEvent:q,type:"mouseover",position:{x:Z[0],y:Z[1]}})},!1);var Y,H,J,K,O,P,z,AA,W,CA,tA,lA,gA,aA=function(q,Z,fA,j){return Math.sqrt((fA-q)*(fA-q)+(j-Z)*(j-Z))},NA=function(q,Z,fA,j){return(fA-q)*(fA-q)+(j-Z)*(j-Z)},DA;A.registerBinding(A.container,"touchstart",DA=function(q){if(A.hasTouchStarted=!0,!b(q))return;h(),A.touchData.capture=!0,A.data.bgActivePosistion=void 0;var Z=A.cy,fA=A.touchData.now,j=A.touchData.earlier;if(q.touches[0]){var mA=A.projectIntoViewport(q.touches[0].clientX,q.touches[0].clientY);fA[0]=mA[0],fA[1]=mA[1]}if(q.touches[1]){var mA=A.projectIntoViewport(q.touches[1].clientX,q.touches[1].clientY);fA[2]=mA[0],fA[3]=mA[1]}if(q.touches[2]){var mA=A.projectIntoViewport(q.touches[2].clientX,q.touches[2].clientY);fA[4]=mA[0],fA[5]=mA[1]}var rA=function(Me){return{originalEvent:q,type:Me,position:{x:fA[0],y:fA[1]}}};if(q.touches[1]){A.touchData.singleTouchMoved=!0,d(A.dragData.touchDragEles);var JA=A.findContainerClientCoords();W=JA[0],CA=JA[1],tA=JA[2],lA=JA[3],Y=q.touches[0].clientX-W,H=q.touches[0].clientY-CA,J=q.touches[1].clientX-W,K=q.touches[1].clientY-CA,gA=0<=Y&&Y<=tA&&0<=J&&J<=tA&&0<=H&&H<=lA&&0<=K&&K<=lA;var _A=Z.pan(),ZA=Z.zoom();O=aA(Y,H,J,K),P=NA(Y,H,J,K),z=[(Y+J)/2,(H+K)/2],AA=[(z[0]-_A.x)/ZA,(z[1]-_A.y)/ZA];var WA=200,te=WA*WA;if(P<te&&!q.touches[2]){var zA=A.findNearestElement(fA[0],fA[1],!0,!0),Ae=A.findNearestElement(fA[2],fA[3],!0,!0);if(zA&&zA.isNode())zA.activate().emit(rA("cxttapstart")),A.touchData.start=zA;else if(Ae&&Ae.isNode())Ae.activate().emit(rA("cxttapstart")),A.touchData.start=Ae;else Z.emit(rA("cxttapstart"));if(A.touchData.start)A.touchData.start._private.grabbed=!1;A.touchData.cxt=!0,A.touchData.cxtDragged=!1,A.data.bgActivePosistion=void 0,A.redraw();return}}if(q.touches[2]){if(Z.boxSelectionEnabled())q.preventDefault()}else if(q.touches[1]);else if(q.touches[0]){var $A=A.findNearestElements(fA[0],fA[1],!0,!0),oe=$A[0];if(oe!=null){if(oe.activate(),A.touchData.start=oe,A.touchData.starts=$A,A.nodeIsGrabbable(oe)){var kA=A.dragData.touchDragEles=Z.collection(),Pe=null;if(A.redrawHint("eles",!0),A.redrawHint("drag",!0),oe.selected())Pe=Z.$(function(ue){return ue.selected()&&A.nodeIsGrabbable(ue)}),B(Pe,{addToList:kA});else E(oe,{addToList:kA});if(s(oe),oe.emit(rA("grabon")),Pe)Pe.forEach(function(ue){ue.emit(rA("grab"))});else oe.emit(rA("grab"))}}if(i(oe,["touchstart","tapstart","vmousedown"],q,{x:fA[0],y:fA[1]}),oe==null)A.data.bgActivePosistion={x:mA[0],y:mA[1]},A.redrawHint("select",!0),A.redraw();A.touchData.singleTouchMoved=!1,A.touchData.singleTouchStartTime=+new Date,clearTimeout(A.touchData.tapholdTimeout),A.touchData.tapholdTimeout=setTimeout(function(){if(A.touchData.singleTouchMoved===!1&&!A.pinching&&!A.touchData.selecting)i(A.touchData.start,["taphold"],q,{x:fA[0],y:fA[1]})},A.tapholdDuration)}if(q.touches.length>=1){var MA=A.touchData.startPosition=[null,null,null,null,null,null];for(var ke=0;ke<fA.length;ke++)MA[ke]=j[ke]=fA[ke];var We=q.touches[0];A.touchData.startGPosition=[We.clientX,We.clientY]}},!1);var KA;A.registerBinding(e,"touchmove",KA=function(q){var Z=A.touchData.capture;if(!Z&&!b(q))return;var{selection:fA,cy:j}=A,mA=A.touchData.now,rA=A.touchData.earlier,JA=j.zoom();if(q.touches[0]){var _A=A.projectIntoViewport(q.touches[0].clientX,q.touches[0].clientY);mA[0]=_A[0],mA[1]=_A[1]}if(q.touches[1]){var _A=A.projectIntoViewport(q.touches[1].clientX,q.touches[1].clientY);mA[2]=_A[0],mA[3]=_A[1]}if(q.touches[2]){var _A=A.projectIntoViewport(q.touches[2].clientX,q.touches[2].clientY);mA[4]=_A[0],mA[5]=_A[1]}var ZA=function(YA){return{originalEvent:q,type:YA,position:{x:mA[0],y:mA[1]}}},WA=A.touchData.startGPosition,te;if(Z&&q.touches[0]&&WA){var zA=[];for(var Ae=0;Ae<mA.length;Ae++)zA[Ae]=mA[Ae]-rA[Ae];var $A=q.touches[0].clientX-WA[0],oe=$A*$A,kA=q.touches[0].clientY-WA[1],Pe=kA*kA,MA=oe+Pe;te=MA>=A.touchTapThreshold2}if(Z&&A.touchData.cxt){q.preventDefault();var ke=q.touches[0].clientX-W,We=q.touches[0].clientY-CA,ue=q.touches[1].clientX-W,Me=q.touches[1].clientY-CA,je=NA(ke,We,ue,Me),Ge=je/P,wA=150,Re=wA*wA,He=1.5,de=He*He;if(Ge>=de||je>=Re){A.touchData.cxt=!1,A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);var RA=ZA("cxttapend");if(A.touchData.start)A.touchData.start.unactivate().emit(RA),A.touchData.start=null;else j.emit(RA)}}if(Z&&A.touchData.cxt){var RA=ZA("cxtdrag");if(A.data.bgActivePosistion=void 0,A.redrawHint("select",!0),A.touchData.start)A.touchData.start.emit(RA);else j.emit(RA);if(A.touchData.start)A.touchData.start._private.grabbed=!1;A.touchData.cxtDragged=!0;var ce=A.findNearestElement(mA[0],mA[1],!0,!0);if(!A.touchData.cxtOver||ce!==A.touchData.cxtOver){if(A.touchData.cxtOver)A.touchData.cxtOver.emit(ZA("cxtdragout"));if(A.touchData.cxtOver=ce,ce)ce.emit(ZA("cxtdragover"))}}else if(Z&&q.touches[2]&&j.boxSelectionEnabled()){if(q.preventDefault(),A.data.bgActivePosistion=void 0,this.lastThreeTouch=+new Date,!A.touchData.selecting)j.emit(ZA("boxstart"));if(A.touchData.selecting=!0,A.touchData.didSelect=!0,fA[4]=1,!fA||fA.length===0||fA[0]===void 0)fA[0]=(mA[0]+mA[2]+mA[4])/3,fA[1]=(mA[1]+mA[3]+mA[5])/3,fA[2]=(mA[0]+mA[2]+mA[4])/3+1,fA[3]=(mA[1]+mA[3]+mA[5])/3+1;else fA[2]=(mA[0]+mA[2]+mA[4])/3,fA[3]=(mA[1]+mA[3]+mA[5])/3;A.redrawHint("select",!0),A.redraw()}else if(Z&&q.touches[1]&&!A.touchData.didSelect&&j.zoomingEnabled()&&j.panningEnabled()&&j.userZoomingEnabled()&&j.userPanningEnabled()){q.preventDefault(),A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);var me=A.dragData.touchDragEles;if(me){A.redrawHint("drag",!0);for(var Le=0;Le<me.length;Le++){var Lt=me[Le]._private;Lt.grabbed=!1,Lt.rscratch.inDragLayer=!1}}var Je=A.touchData.start,ke=q.touches[0].clientX-W,We=q.touches[0].clientY-CA,ue=q.touches[1].clientX-W,Me=q.touches[1].clientY-CA,kt=aA(ke,We,ue,Me),Cr=kt/O;if(gA){var Pt=ke-Y,dt=We-H,Yt=ue-J,Ce=Me-K,ye=(Pt+Yt)/2,Ze=(dt+Ce)/2,Xt=j.zoom(),Vt=Xt*Cr,or=j.pan(),Qi=AA[0]*Xt+or.x,sr=AA[1]*Xt+or.y,et={x:-Vt/Xt*(Qi-or.x-ye)+Qi,y:-Vt/Xt*(sr-or.y-Ze)+sr};if(Je&&Je.active()){var me=A.dragData.touchDragEles;if(d(me),A.redrawHint("drag",!0),A.redrawHint("eles",!0),Je.unactivate().emit(ZA("freeon")),me)me.emit(ZA("free"));if(A.dragData.didDrag){if(Je.emit(ZA("dragfreeon")),me)me.emit(ZA("dragfree"))}}j.viewport({zoom:Vt,pan:et,cancelOnFailedZoom:!0}),j.emit(ZA("pinchzoom")),O=kt,Y=ke,H=We,J=ue,K=Me,A.pinching=!0}if(q.touches[0]){var _A=A.projectIntoViewport(q.touches[0].clientX,q.touches[0].clientY);mA[0]=_A[0],mA[1]=_A[1]}if(q.touches[1]){var _A=A.projectIntoViewport(q.touches[1].clientX,q.touches[1].clientY);mA[2]=_A[0],mA[3]=_A[1]}if(q.touches[2]){var _A=A.projectIntoViewport(q.touches[2].clientX,q.touches[2].clientY);mA[4]=_A[0],mA[5]=_A[1]}}else if(q.touches[0]&&!A.touchData.didSelect){var Ye=A.touchData.start,Ct=A.touchData.last,ce;if(!A.hoverData.draggingEles&&!A.swipePanning)ce=A.findNearestElement(mA[0],mA[1],!0,!0);if(Z&&Ye!=null)q.preventDefault();if(Z&&Ye!=null&&A.nodeIsDraggable(Ye))if(te){var me=A.dragData.touchDragEles,lt=!A.dragData.didDrag;if(lt)B(me,{inDragLayer:!0});A.dragData.didDrag=!0;var Te={x:0,y:0};if(ht(zA[0])&&ht(zA[1])){if(Te.x+=zA[0],Te.y+=zA[1],lt){A.redrawHint("eles",!0);var Ft=A.touchData.dragDelta;if(Ft&&ht(Ft[0])&&ht(Ft[1]))Te.x+=Ft[0],Te.y+=Ft[1]}}if(A.hoverData.draggingEles=!0,me.silentShift(Te).emit(ZA("position")).emit(ZA("drag")),A.redrawHint("drag",!0),A.touchData.startPosition[0]==rA[0]&&A.touchData.startPosition[1]==rA[1])A.redrawHint("eles",!0);A.redraw()}else{var Ft=A.touchData.dragDelta=A.touchData.dragDelta||[];if(Ft.length===0)Ft.push(zA[0]),Ft.push(zA[1]);else Ft[0]+=zA[0],Ft[1]+=zA[1]}{if(i(Ye||ce,["touchmove","tapdrag","vmousemove"],q,{x:mA[0],y:mA[1]}),(!Ye||!Ye.grabbed())&&ce!=Ct){if(Ct)Ct.emit(ZA("tapdragout"));if(ce)ce.emit(ZA("tapdragover"))}A.touchData.last=ce}if(Z){for(var Le=0;Le<mA.length;Le++)if(mA[Le]&&A.touchData.startPosition[Le]&&te)A.touchData.singleTouchMoved=!0}if(Z&&(Ye==null||Ye.pannable())&&j.panningEnabled()&&j.userPanningEnabled()){var LA=a(Ye,A.touchData.starts);if(LA){if(q.preventDefault(),!A.data.bgActivePosistion)A.data.bgActivePosistion=_y(A.touchData.startPosition);if(A.swipePanning)j.panBy({x:zA[0]*JA,y:zA[1]*JA}),j.emit(ZA("dragpan"));else if(te){if(A.swipePanning=!0,j.panBy({x:$A*JA,y:kA*JA}),j.emit(ZA("dragpan")),Ye)Ye.unactivate(),A.redrawHint("select",!0),A.touchData.start=null}}var _A=A.projectIntoViewport(q.touches[0].clientX,q.touches[0].clientY);mA[0]=_A[0],mA[1]=_A[1]}}for(var Ae=0;Ae<mA.length;Ae++)rA[Ae]=mA[Ae];if(Z&&q.touches.length>0&&!A.hoverData.draggingEles&&!A.swipePanning&&A.data.bgActivePosistion!=null)A.data.bgActivePosistion=void 0,A.redrawHint("select",!0),A.redraw()},!1);var TA;A.registerBinding(e,"touchcancel",TA=function(q){var Z=A.touchData.start;if(A.touchData.capture=!1,Z)Z.unactivate()});var qA,IA,bA,SA;if(A.registerBinding(e,"touchend",qA=function(q){var Z=A.touchData.start,fA=A.touchData.capture;if(fA){if(q.touches.length===0)A.touchData.capture=!1;q.preventDefault()}else return;var j=A.selection;A.swipePanning=!1,A.hoverData.draggingEles=!1;var mA=A.cy,rA=mA.zoom(),JA=A.touchData.now,_A=A.touchData.earlier;if(q.touches[0]){var ZA=A.projectIntoViewport(q.touches[0].clientX,q.touches[0].clientY);JA[0]=ZA[0],JA[1]=ZA[1]}if(q.touches[1]){var ZA=A.projectIntoViewport(q.touches[1].clientX,q.touches[1].clientY);JA[2]=ZA[0],JA[3]=ZA[1]}if(q.touches[2]){var ZA=A.projectIntoViewport(q.touches[2].clientX,q.touches[2].clientY);JA[4]=ZA[0],JA[5]=ZA[1]}var WA=function(Re){return{originalEvent:q,type:Re,position:{x:JA[0],y:JA[1]}}};if(Z)Z.unactivate();var te;if(A.touchData.cxt){if(te=WA("cxttapend"),Z)Z.emit(te);else mA.emit(te);if(!A.touchData.cxtDragged){var zA=WA("cxttap");if(Z)Z.emit(zA);else mA.emit(zA)}if(A.touchData.start)A.touchData.start._private.grabbed=!1;A.touchData.cxt=!1,A.touchData.start=null,A.redraw();return}if(!q.touches[2]&&mA.boxSelectionEnabled()&&A.touchData.selecting){A.touchData.selecting=!1;var Ae=mA.collection(A.getAllInBox(j[0],j[1],j[2],j[3]));j[0]=void 0,j[1]=void 0,j[2]=void 0,j[3]=void 0,j[4]=0,A.redrawHint("select",!0),mA.emit(WA("boxend"));var $A=function(Re){return Re.selectable()&&!Re.selected()};if(Ae.emit(WA("box")).stdFilter($A).select().emit(WA("boxselect")),Ae.nonempty())A.redrawHint("eles",!0);A.redraw()}if(Z!=null)Z.unactivate();if(q.touches[2])A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);else if(q.touches[1]);else if(q.touches[0]);else if(!q.touches[0]){A.data.bgActivePosistion=void 0,A.redrawHint("select",!0);var oe=A.dragData.touchDragEles;if(Z!=null){var kA=Z._private.grabbed;if(d(oe),A.redrawHint("drag",!0),A.redrawHint("eles",!0),kA){if(Z.emit(WA("freeon")),oe.emit(WA("free")),A.dragData.didDrag)Z.emit(WA("dragfreeon")),oe.emit(WA("dragfree"))}i(Z,["touchend","tapend","vmouseup","tapdragout"],q,{x:JA[0],y:JA[1]}),Z.unactivate(),A.touchData.start=null}else{var Pe=A.findNearestElement(JA[0],JA[1],!0,!0);i(Pe,["touchend","tapend","vmouseup","tapdragout"],q,{x:JA[0],y:JA[1]})}var MA=A.touchData.startPosition[0]-JA[0],ke=MA*MA,We=A.touchData.startPosition[1]-JA[1],ue=We*We,Me=ke+ue,je=Me*rA*rA;if(!A.touchData.singleTouchMoved){if(!Z)mA.$(":selected").unselect(["tapunselect"]);if(i(Z,["tap","vclick"],q,{x:JA[0],y:JA[1]}),IA=!1,q.timeStamp-SA<=mA.multiClickDebounceTime())bA&&clearTimeout(bA),IA=!0,SA=null,i(Z,["dbltap","vdblclick"],q,{x:JA[0],y:JA[1]});else bA=setTimeout(function(){if(IA)return;i(Z,["onetap","voneclick"],q,{x:JA[0],y:JA[1]})},mA.multiClickDebounceTime()),SA=q.timeStamp}if(Z!=null&&!A.dragData.didDrag&&Z._private.selectable&&je<A.touchTapThreshold2&&!A.pinching){if(mA.selectionType()==="single")mA.$(t).unmerge(Z).unselect(["tapunselect"]),Z.select(["tapselect"]);else if(Z.selected())Z.unselect(["tapunselect"]);else Z.select(["tapselect"]);A.redrawHint("eles",!0)}A.touchData.singleTouchMoved=!0}for(var Ge=0;Ge<JA.length;Ge++)_A[Ge]=JA[Ge];if(A.dragData.didDrag=!1,q.touches.length===0)A.touchData.dragDelta=[],A.touchData.startPosition=[null,null,null,null,null,null],A.touchData.startGPosition=null,A.touchData.didSelect=!1;if(q.touches.length<2){if(q.touches.length===1)A.touchData.startGPosition=[q.touches[0].clientX,q.touches[0].clientY];A.pinching=!1,A.redrawHint("eles",!0),A.redraw()}},!1),typeof TouchEvent>"u"){var EA=[],nA=function(q){return{clientX:q.clientX,clientY:q.clientY,force:1,identifier:q.pointerId,pageX:q.pageX,pageY:q.pageY,radiusX:q.width/2,radiusY:q.height/2,screenX:q.screenX,screenY:q.screenY,target:q.target}},eA=function(q){return{event:q,touch:nA(q)}},BA=function(q){EA.push(eA(q))},yA=function(q){for(var Z=0;Z<EA.length;Z++){var fA=EA[Z];if(fA.event.pointerId===q.pointerId){EA.splice(Z,1);return}}},vA=function(q){var Z=EA.filter(function(fA){return fA.event.pointerId===q.pointerId})[0];Z.event=q,Z.touch=nA(q)},FA=function(q){q.touches=EA.map(function(Z){return Z.touch})},HA=function(q){return q.pointerType==="mouse"||q.pointerType===4};A.registerBinding(A.container,"pointerdown",function(dA){if(HA(dA))return;dA.preventDefault(),BA(dA),FA(dA),DA(dA)}),A.registerBinding(A.container,"pointerup",function(dA){if(HA(dA))return;yA(dA),FA(dA),qA(dA)}),A.registerBinding(A.container,"pointercancel",function(dA){if(HA(dA))return;yA(dA),FA(dA),TA(dA)}),A.registerBinding(A.container,"pointermove",function(dA){if(HA(dA))return;dA.preventDefault(),vA(dA),FA(dA),KA(dA)})}};vI={};vI.generatePolygon=function(A,e){return this.nodeShapes[A]={renderer:this,name:A,points:e,draw:function(r,i,u,a,n,o){this.renderer.nodeShapeImpl("polygon",r,i,u,a,n,this.points)},intersectLine:function(r,i,u,a,n,o,s,l){return Sk(n,o,this.points,r,i,u/2,a/2,s)},checkPoint:function(r,i,u,a,n,o,s,l){return bI(r,i,this.points,o,s,a,n,[0,-1],u)},hasMiterBounds:A!=="rectangle",miterBounds:function(r,i,u,a,n,o){return XQt(this.points,r,i,u,a,n)}}};vI.generateEllipse=function(){return this.nodeShapes.ellipse={renderer:this,name:"ellipse",draw:function(e,t,r,i,u,a){this.renderer.nodeShapeImpl(this.name,e,t,r,i,u)},intersectLine:function(e,t,r,i,u,a,n,o){return a4t(u,a,e,t,r/2+n,i/2+n)},checkPoint:function(e,t,r,i,u,a,n,o){return Jf(e,t,i,u,a,n,r)}}};vI.generateRoundPolygon=function(A,e){return this.nodeShapes[A]={renderer:this,name:A,points:e,getOrCreateCorners:function(r,i,u,a,n,o,s){if(o[s]!==void 0&&o[s+"-cx"]===r&&o[s+"-cy"]===i&&o[s+"-w"]===u&&o[s+"-h"]===a&&o[s+"-corner-radius"]===n)return o[s];o[s]=Array(e.length/2),o[s+"-cx"]=r,o[s+"-cy"]=i,o[s+"-w"]=u,o[s+"-h"]=a,o[s+"-corner-radius"]=n;var l=u/2,g=a/2;n=n==="auto"?gKA(u,a):n;var C=Array(e.length/2);for(var B=0;B<e.length/2;B++)C[B]={x:r+l*e[B*2],y:i+g*e[B*2+1]};var E,d,I,h,Q=C.length;d=C[Q-1];for(E=0;E<Q;E++)I=C[E%Q],h=C[(E+1)%Q],o[s][E]=OaA(d,I,h,n),d=I,I=h;return o[s]},draw:function(r,i,u,a,n,o,s){this.renderer.nodeShapeImpl("round-polygon",r,i,u,a,n,this.points,this.getOrCreateCorners(i,u,a,n,o,s,"drawCorners"))},intersectLine:function(r,i,u,a,n,o,s,l,g){return o4t(n,o,this.points,r,i,u,a,s,this.getOrCreateCorners(r,i,u,a,l,g,"corners"))},checkPoint:function(r,i,u,a,n,o,s,l,g){return u4t(r,i,this.points,o,s,a,n,this.getOrCreateCorners(o,s,a,n,l,g,"corners"))}}};vI.generateRoundRectangle=function(){return this.nodeShapes["round-rectangle"]=this.nodeShapes.roundrectangle={renderer:this,name:"round-rectangle",points:Is(4,0),draw:function(e,t,r,i,u,a){this.renderer.nodeShapeImpl(this.name,e,t,r,i,u,this.points,a)},intersectLine:function(e,t,r,i,u,a,n,o){return sKA(u,a,e,t,r,i,n,o)},checkPoint:function(e,t,r,i,u,a,n,o){var s=i/2,l=u/2;o=o==="auto"?C4(i,u):o,o=Math.min(s,l,o);var g=o*2;if(bI(e,t,this.points,a,n,i,u-g,[0,-1],r))return!0;if(bI(e,t,this.points,a,n,i-g,u,[0,-1],r))return!0;if(Jf(e,t,g,g,a-s+o,n-l+o,r))return!0;if(Jf(e,t,g,g,a+s-o,n-l+o,r))return!0;if(Jf(e,t,g,g,a+s-o,n+l-o,r))return!0;if(Jf(e,t,g,g,a-s+o,n+l-o,r))return!0;return!1}}};vI.generateCutRectangle=function(){return this.nodeShapes["cut-rectangle"]=this.nodeShapes.cutrectangle={renderer:this,name:"cut-rectangle",cornerLength:LaA(),points:Is(4,0),draw:function(e,t,r,i,u,a){this.renderer.nodeShapeImpl(this.name,e,t,r,i,u,null,a)},generateCutTrianglePts:function(e,t,r,i,u){var a=u==="auto"?this.cornerLength:u,n=t/2,o=e/2,s=r-o,l=r+o,g=i-n,C=i+n;return{topLeft:[s,g+a,s+a,g,s+a,g+a],topRight:[l-a,g,l,g+a,l-a,g+a],bottomRight:[l,C-a,l-a,C,l-a,C-a],bottomLeft:[s+a,C,s,C-a,s+a,C-a]}},intersectLine:function(e,t,r,i,u,a,n,o){var s=this.generateCutTrianglePts(r+2*n,i+2*n,e,t,o),l=[].concat.apply([],[s.topLeft.splice(0,4),s.topRight.splice(0,4),s.bottomRight.splice(0,4),s.bottomLeft.splice(0,4)]);return Sk(u,a,l,e,t)},checkPoint:function(e,t,r,i,u,a,n,o){var s=o==="auto"?this.cornerLength:o;if(bI(e,t,this.points,a,n,i,u-2*s,[0,-1],r))return!0;if(bI(e,t,this.points,a,n,i-2*s,u,[0,-1],r))return!0;var l=this.generateCutTrianglePts(i,u,a,n);return Cl(e,t,l.topLeft)||Cl(e,t,l.topRight)||Cl(e,t,l.bottomRight)||Cl(e,t,l.bottomLeft)}}};vI.generateBarrel=function(){return this.nodeShapes.barrel={renderer:this,name:"barrel",points:Is(4,0),draw:function(e,t,r,i,u,a){this.renderer.nodeShapeImpl(this.name,e,t,r,i,u)},intersectLine:function(e,t,r,i,u,a,n,o){var s=0.15,l=0.5,g=0.85,C=this.generateBarrelBezierPts(r+2*n,i+2*n,e,t),B=function(I){var h=zy({x:I[0],y:I[1]},{x:I[2],y:I[3]},{x:I[4],y:I[5]},s),Q=zy({x:I[0],y:I[1]},{x:I[2],y:I[3]},{x:I[4],y:I[5]},l),p=zy({x:I[0],y:I[1]},{x:I[2],y:I[3]},{x:I[4],y:I[5]},g);return[I[0],I[1],h.x,h.y,Q.x,Q.y,p.x,p.y,I[4],I[5]]},E=[].concat(B(C.topLeft),B(C.topRight),B(C.bottomRight),B(C.bottomLeft));return Sk(u,a,E,e,t)},generateBarrelBezierPts:function(e,t,r,i){var u=t/2,a=e/2,n=r-a,o=r+a,s=i-u,l=i+u,g=iaA(e,t),{heightOffset:C,widthOffset:B}=g,E=g.ctrlPtOffsetPct*e,d={topLeft:[n,s+C,n+E,s,n+B,s],topRight:[o-B,s,o-E,s,o,s+C],bottomRight:[o,l-C,o-E,l,o-B,l],bottomLeft:[n+B,l,n+E,l,n,l-C]};return d.topLeft.isTop=!0,d.topRight.isTop=!0,d.bottomLeft.isBottom=!0,d.bottomRight.isBottom=!0,d},checkPoint:function(e,t,r,i,u,a,n,o){var s=iaA(i,u),{heightOffset:l,widthOffset:g}=s;if(bI(e,t,this.points,a,n,i,u-2*l,[0,-1],r))return!0;if(bI(e,t,this.points,a,n,i-2*g,u,[0,-1],r))return!0;var C=this.generateBarrelBezierPts(i,u,a,n),B=function(b,k,v){var S=v[4],x=v[2],F=v[0],T=v[5],R=v[1],L=Math.min(S,F),M=Math.max(S,F),U=Math.min(T,R),Y=Math.max(T,R);if(L<=b&&b<=M&&U<=k&&k<=Y){var H=s4t(S,x,F),J=e4t(H[0],H[1],H[2],b),K=J.filter(function(O){return 0<=O&&O<=1});if(K.length>0)return K[0]}return null},E=Object.keys(C);for(var d=0;d<E.length;d++){var I=E[d],h=C[I],Q=B(e,t,h);if(Q==null)continue;var p=h[5],m=h[3],f=h[1],D=Mo(p,m,f,Q);if(h.isTop&&D<=t)return!0;if(h.isBottom&&t<=D)return!0}return!1}}};vI.generateBottomRoundrectangle=function(){return this.nodeShapes["bottom-round-rectangle"]=this.nodeShapes.bottomroundrectangle={renderer:this,name:"bottom-round-rectangle",points:Is(4,0),draw:function(e,t,r,i,u,a){this.renderer.nodeShapeImpl(this.name,e,t,r,i,u,this.points,a)},intersectLine:function(e,t,r,i,u,a,n,o){var s=e-(r/2+n),l=t-(i/2+n),g=l,C=e+(r/2+n),B=o4(u,a,e,t,s,l,C,g,!1);if(B.length>0)return B;return sKA(u,a,e,t,r,i,n,o)},checkPoint:function(e,t,r,i,u,a,n,o){o=o==="auto"?C4(i,u):o;var s=2*o;if(bI(e,t,this.points,a,n,i,u-s,[0,-1],r))return!0;if(bI(e,t,this.points,a,n,i-s,u,[0,-1],r))return!0;var l=i/2+2*r,g=u/2+2*r,C=[a-l,n-g,a-l,n,a+l,n,a+l,n-g];if(Cl(e,t,C))return!0;if(Jf(e,t,s,s,a+i/2-o,n+u/2-o,r))return!0;if(Jf(e,t,s,s,a-i/2+o,n+u/2-o,r))return!0;return!1}}};vI.registerNodeShapes=function(){var A=this.nodeShapes={},e=this;this.generateEllipse(),this.generatePolygon("triangle",Is(3,0)),this.generateRoundPolygon("round-triangle",Is(3,0)),this.generatePolygon("rectangle",Is(4,0)),A.square=A.rectangle,this.generateRoundRectangle(),this.generateCutRectangle(),this.generateBarrel(),this.generateBottomRoundrectangle();{var t=[0,1,1,0,0,-1,-1,0];this.generatePolygon("diamond",t),this.generateRoundPolygon("round-diamond",t)}this.generatePolygon("pentagon",Is(5,0)),this.generateRoundPolygon("round-pentagon",Is(5,0)),this.generatePolygon("hexagon",Is(6,0)),this.generateRoundPolygon("round-hexagon",Is(6,0)),this.generatePolygon("heptagon",Is(7,0)),this.generateRoundPolygon("round-heptagon",Is(7,0)),this.generatePolygon("octagon",Is(8,0)),this.generateRoundPolygon("round-octagon",Is(8,0));var r=Array(20);{var i=raA(5,0),u=raA(5,Math.PI/5),a=0.5*(3-Math.sqrt(5));a*=1.57;for(var n=0;n<u.length/2;n++)u[n*2]*=a,u[n*2+1]*=a;for(var n=0;n<5;n++)r[n*4]=i[n*2],r[n*4+1]=i[n*2+1],r[n*4+2]=u[n*2],r[n*4+3]=u[n*2+1]}r=lKA(r),this.generatePolygon("star",r),this.generatePolygon("vee",[-1,-1,0,-0.333,1,-1,0,1]),this.generatePolygon("rhomboid",[-1,-1,0.333,-1,1,1,-0.333,1]),this.generatePolygon("right-rhomboid",[-0.333,-1,1,-1,0.333,1,-1,1]),this.nodeShapes.concavehexagon=this.generatePolygon("concave-hexagon",[-1,-0.95,-0.75,0,-1,0.95,1,0.95,0.75,0,1,-0.95]);{var o=[-1,-1,0.25,-1,1,0,0.25,1,-1,1];this.generatePolygon("tag",o),this.generateRoundPolygon("round-tag",o)}A.makePolygon=function(s){var l=s.join("$"),g="polygon-"+l,C;if(C=this[g])return C;return e.generatePolygon(g,s)}};qk={};qk.timeToRender=function(){return this.redrawTotalTime/this.redrawCount};qk.redraw=function(A){A=A||iKA();var e=this;if(e.averageRedrawTime===void 0)e.averageRedrawTime=0;if(e.lastRedrawTime===void 0)e.lastRedrawTime=0;if(e.lastDrawTime===void 0)e.lastDrawTime=0;e.requestedFrame=!0,e.renderOptions=A};qk.beforeRender=function(A,e){if(this.destroyed)return;if(e==null)Qa("Priority is not optional for beforeRender");var t=this.beforeRenderCallbacks;t.push({fn:A,priority:e}),t.sort(function(r,i){return i.priority-r.priority})};qk.startRenderLoop=function(){var A=this,e=A.cy;if(A.renderLoopStarted)return;else A.renderLoopStarted=!0;var t=function(i){if(A.destroyed)return;if(e.batching());else if(A.requestedFrame&&!A.skipFrame){mHA(A,!0,i);var u=wI();A.render(A.renderOptions);var a=A.lastDrawTime=wI();if(A.averageRedrawTime===void 0)A.averageRedrawTime=a-u;if(A.redrawCount===void 0)A.redrawCount=0;if(A.redrawCount++,A.redrawTotalTime===void 0)A.redrawTotalTime=0;var n=a-u;A.redrawTotalTime+=n,A.lastRedrawTime=n,A.averageRedrawTime=A.averageRedrawTime/2+n/2,A.requestedFrame=!1}else mHA(A,!1,i);A.skipFrame=!1,wT(t)};wT(t)};cJA=kft,ow=cJA.prototype;ow.clientFunctions=["redrawHint","render","renderTo","matchCanvasSize","nodeShapeImpl","arrowShapeImpl"];ow.init=function(A){var e=this;e.options=A,e.cy=A.cy;var t=e.container=A.cy.container(),r=e.cy.window();if(r){var i=r.document,u=i.head,a="__________cytoscape_stylesheet",n="__________cytoscape_container",o=i.getElementById(a)!=null;if(t.className.indexOf(n)<0)t.className=(t.className||"")+" "+n;if(!o){var s=i.createElement("style");s.id=a,s.textContent="."+n+" { position: relative; }",u.insertBefore(s,u.children[0])}var l=r.getComputedStyle(t),g=l.getPropertyValue("position");if(g==="static")du("A Cytoscape container has style position:static and so can not use UI extensions properly")}e.selection=[void 0,void 0,void 0,void 0,0],e.bezierProjPcts=[0.05,0.225,0.4,0.5,0.6,0.775,0.95],e.hoverData={down:null,last:null,downTime:null,triggerMode:null,dragging:!1,initialPan:[null,null],capture:!1},e.dragData={possibleDragElements:[]},e.touchData={start:null,capture:!1,startPosition:[null,null,null,null,null,null],singleTouchStartTime:null,singleTouchMoved:!0,now:[null,null,null,null,null,null],earlier:[null,null,null,null,null,null]},e.redraws=0,e.showFps=A.showFps,e.debug=A.debug,e.webgl=A.webgl,e.hideEdgesOnViewport=A.hideEdgesOnViewport,e.textureOnViewport=A.textureOnViewport,e.wheelSensitivity=A.wheelSensitivity,e.motionBlurEnabled=A.motionBlur,e.forcedPixelRatio=ht(A.pixelRatio)?A.pixelRatio:null,e.motionBlur=A.motionBlur,e.motionBlurOpacity=A.motionBlurOpacity,e.motionBlurTransparency=1-e.motionBlurOpacity,e.motionBlurPxRatio=1,e.mbPxRBlurry=1,e.minMbLowQualFrames=4,e.fullQualityMb=!1,e.clearedForMotionBlur=[],e.desktopTapThreshold=A.desktopTapThreshold,e.desktopTapThreshold2=A.desktopTapThreshold*A.desktopTapThreshold,e.touchTapThreshold=A.touchTapThreshold,e.touchTapThreshold2=A.touchTapThreshold*A.touchTapThreshold,e.tapholdDuration=500,e.bindings=[],e.beforeRenderCallbacks=[],e.beforeRenderPriorities={animations:400,eleCalcs:300,eleTxrDeq:200,lyrTxrDeq:150,lyrTxrSkip:100},e.registerNodeShapes(),e.registerArrowShapes(),e.registerCalculationListeners()};ow.notify=function(A,e){var t=this,r=t.cy;if(this.destroyed)return;if(A==="init"){t.load();return}if(A==="destroy"){t.destroy();return}if(A==="add"||A==="remove"||A==="move"&&r.hasCompoundNodes()||A==="load"||A==="zorder"||A==="mount")t.invalidateCachedZSortedEles();if(A==="viewport")t.redrawHint("select",!0);if(A==="gc")t.redrawHint("gc",!0);if(A==="load"||A==="resize"||A==="mount")t.invalidateContainerClientCoordsCache(),t.matchCanvasSize(t.container);t.redrawHint("eles",!0),t.redrawHint("drag",!0),this.startRenderLoop(),this.redraw()};ow.destroy=function(){var A=this;A.destroyed=!0,A.cy.stopAnimationLoop();for(var e=0;e<A.bindings.length;e++){var t=A.bindings[e],r=t,i=r.target;(i.off||i.removeEventListener).apply(i,r.args)}if(A.bindings=[],A.beforeRenderCallbacks=[],A.onUpdateEleCalcsFns=[],A.removeObserver)A.removeObserver.disconnect();if(A.styleObserver)A.styleObserver.disconnect();if(A.resizeObserver)A.resizeObserver.disconnect();if(A.labelCalcDiv)try{document.body.removeChild(A.labelCalcDiv)}catch(u){}};ow.isHeadless=function(){return!1};[JaA,sJA,lJA,nw,vI,qk].forEach(function(A){dr(ow,A)});CJA={setupDequeueing:function(e){return function(){var r=this,i=this.renderer;if(r.dequeueingSetup)return;else r.dequeueingSetup=!0;var u=Jk(function(){i.redrawHint("eles",!0),i.redrawHint("drag",!0),i.redraw()},e.deqRedrawThreshold),a=function(s,l){var g=wI(),{averageRedrawTime:C,lastRedrawTime:B}=i,E=[],d=i.cy.extent(),I=i.getPixelRatio();if(!s)i.flushRenderedStyleQueue();while(!0){var h=wI(),Q=h-g,p=h-l;if(B<zuA){var m=zuA-(s?C:0);if(p>=e.deqFastCost*m)break}else if(s){if(Q>=e.deqCost*B||Q>=e.deqAvgCost*C)break}else if(p>=e.deqNoDrawCost*zuA)break;var f=e.deq(r,I,d);if(f.length>0)for(var D=0;D<f.length;D++)E.push(f[D]);else break}if(E.length>0){if(e.onDeqd(r,E),!s&&e.shouldRedraw(r,E,I,d))u()}},n=e.priority||vaA;i.beforeRender(a,n(r))}}},Fft=function(){function A(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:bT;I4(this,A),this.idsByKey=new yI,this.keyForId=new yI,this.cachesByLvl=new yI,this.lvls=[],this.getKey=e,this.doesEleInvalidateKey=t}return h4(A,[{key:"getIdsFor",value:function(t){if(t==null)Qa("Can not get id list for null key");var r=this.idsByKey,i=this.idsByKey.get(t);if(!i)i=new rw,r.set(t,i);return i}},{key:"addIdForKey",value:function(t,r){if(t!=null)this.getIdsFor(t).add(r)}},{key:"deleteIdForKey",value:function(t,r){if(t!=null)this.getIdsFor(t).delete(r)}},{key:"getNumberOfIdsForKey",value:function(t){if(t==null)return 0;else return this.getIdsFor(t).size}},{key:"updateKeyMappingFor",value:function(t){var r=t.id(),i=this.keyForId.get(r),u=this.getKey(t);this.deleteIdForKey(i,r),this.addIdForKey(u,r),this.keyForId.set(r,u)}},{key:"deleteKeyMappingFor",value:function(t){var r=t.id(),i=this.keyForId.get(r);this.deleteIdForKey(i,r),this.keyForId.delete(r)}},{key:"keyHasChangedFor",value:function(t){var r=t.id(),i=this.keyForId.get(r),u=this.getKey(t);return i!==u}},{key:"isInvalid",value:function(t){return this.keyHasChangedFor(t)||this.doesEleInvalidateKey(t)}},{key:"getCachesAt",value:function(t){var r=this.cachesByLvl,i=this.lvls,u=r.get(t);if(!u)u=new yI,r.set(t,u),i.push(t);return u}},{key:"getCache",value:function(t,r){return this.getCachesAt(r).get(t)}},{key:"get",value:function(t,r){var i=this.getKey(t),u=this.getCache(i,r);if(u!=null)this.updateKeyMappingFor(t);return u}},{key:"getForCachedKey",value:function(t,r){var i=this.keyForId.get(t.id()),u=this.getCache(i,r);return u}},{key:"hasCache",value:function(t,r){return this.getCachesAt(r).has(t)}},{key:"has",value:function(t,r){var i=this.getKey(t);return this.hasCache(i,r)}},{key:"setCache",value:function(t,r,i){i.key=t,this.getCachesAt(r).set(t,i)}},{key:"set",value:function(t,r,i){var u=this.getKey(t);this.setCache(u,r,i),this.updateKeyMappingFor(t)}},{key:"deleteCache",value:function(t,r){this.getCachesAt(r).delete(t)}},{key:"delete",value:function(t,r){var i=this.getKey(t);this.deleteCache(i,r)}},{key:"invalidateKey",value:function(t){var r=this;this.lvls.forEach(function(i){return r.deleteCache(t,i)})}},{key:"invalidate",value:function(t){var r=t.id(),i=this.keyForId.get(r);this.deleteKeyMappingFor(t);var u=this.doesEleInvalidateKey(t);if(u)this.invalidateKey(i);return u||this.getNumberOfIdsForKey(i)===0}}])}(),qy={dequeue:"dequeue",downscale:"downscale",highQuality:"highQuality"},Oft=l0({getKey:null,doesEleInvalidateKey:bT,drawElement:null,getBoundingBox:null,getRotationPoint:null,getRotationOffset:null,isVisible:eKA,allowEdgeTxrCaching:!0,allowParentTxrCaching:!0}),so=Dk.prototype;so.reasons=qy;so.getTextureQueue=function(A){var e=this;return e.eleImgCaches=e.eleImgCaches||{},e.eleImgCaches[A]=e.eleImgCaches[A]||[]};so.getRetiredTextureQueue=function(A){var e=this,t=e.eleImgCaches.retired=e.eleImgCaches.retired||{},r=t[A]=t[A]||[];return r};so.getElementQueue=function(){var A=this,e=A.eleCacheQueue=A.eleCacheQueue||new Ok(function(t,r){return r.reqs-t.reqs});return e};so.getElementKeyToQueue=function(){var A=this,e=A.eleKeyToCacheQueue=A.eleKeyToCacheQueue||{};return e};so.getElement=function(A,e,t,r,i){var u=this,a=this.renderer,n=a.cy.zoom(),o=this.lookup;if(!e||e.w===0||e.h===0||isNaN(e.w)||isNaN(e.h)||!A.visible()||A.removed())return null;if(!u.allowEdgeTxrCaching&&A.isEdge()||!u.allowParentTxrCaching&&A.isParent())return null;if(r==null)r=Math.ceil(FaA(n*t));if(r<fT)r=fT;else if(n>=BJA||r>IaA)return null;var s=Math.pow(2,r),l=e.h*s,g=e.w*s,C=a.eleTextBiggerThanMin(A,s);if(!this.isVisible(A,C))return null;var B=o.get(A,r);if(B&&B.invalidated)B.invalidated=!1,B.texture.invalidatedWidth-=B.width;if(B)return B;var E;if(l<=DHA)E=DHA;else if(l<=lT)E=lT;else E=Math.ceil(l/lT)*lT;if(l>Rft||g>Lft)return null;var d=u.getTextureQueue(E),I=d[d.length-2],h=function(){return u.recycleTexture(E,g)||u.addTexture(E,g)};if(!I)I=d[d.length-1];if(!I)I=h();if(I.width-I.usedWidth<g)I=h();var Q=function(L){return L&&L.scaledLabelShown===C},p=i&&i===qy.dequeue,m=i&&i===qy.highQuality,f=i&&i===qy.downscale,D;for(var w=r+1;w<=IaA;w++){var b=o.get(A,w);if(b){D=b;break}}var k=D&&D.level===r+1?D:null,v=function(){I.context.drawImage(k.texture.canvas,k.x,0,k.width,k.height,I.usedWidth,0,g,l)};if(I.context.setTransform(1,0,0,1,0,0),I.context.clearRect(I.usedWidth,0,g,E),Q(k))v();else if(Q(D))if(m){for(var S=D.level;S>r;S--)k=u.getElement(A,e,t,S,qy.downscale);v()}else return u.queueElement(A,D.level-1),D;else{var x;if(!p&&!m&&!f)for(var F=r-1;F>=fT;F--){var T=o.get(A,F);if(T){x=T;break}}if(Q(x))return u.queueElement(A,r),x;I.context.translate(I.usedWidth,0),I.context.scale(s,s),this.drawElement(I.context,A,e,C,!1),I.context.scale(1/s,1/s),I.context.translate(-I.usedWidth,0)}return B={x:I.usedWidth,texture:I,level:r,scale:s,width:g,height:l,scaledLabelShown:C},I.usedWidth+=Math.ceil(g+xft),I.eleCaches.push(B),o.set(A,r,B),u.checkTextureFullness(I),B};so.invalidateElements=function(A){for(var e=0;e<A.length;e++)this.invalidateElement(A[e])};so.invalidateElement=function(A){var e=this,t=e.lookup,r=[],i=t.isInvalid(A);if(!i)return;for(var u=fT;u<=IaA;u++){var a=t.getForCachedKey(A,u);if(a)r.push(a)}var n=t.invalidate(A);if(n)for(var o=0;o<r.length;o++){var s=r[o],l=s.texture;l.invalidatedWidth+=s.width,s.invalidated=!0,e.checkTextureUtility(l)}e.removeFromQueue(A)};so.checkTextureUtility=function(A){if(A.invalidatedWidth>=Nft*A.width)this.retireTexture(A)};so.checkTextureFullness=function(A){var e=this,t=e.getTextureQueue(A.height);if(A.usedWidth/A.width>Gft&&A.fullnessChecks>=Uft)c4(t,A);else A.fullnessChecks++};so.retireTexture=function(A){var e=this,t=A.height,r=e.getTextureQueue(t),i=this.lookup;c4(r,A),A.retired=!0;var u=A.eleCaches;for(var a=0;a<u.length;a++){var n=u[a];i.deleteCache(n.key,n.level)}kaA(u);var o=e.getRetiredTextureQueue(t);o.push(A)};so.addTexture=function(A,e){var t=this,r=t.getTextureQueue(A),i={};return r.push(i),i.eleCaches=[],i.height=A,i.width=Math.max(Sft,e),i.usedWidth=0,i.invalidatedWidth=0,i.fullnessChecks=0,i.canvas=t.renderer.makeOffscreenCanvas(i.width,i.height),i.context=i.canvas.getContext("2d"),i};so.recycleTexture=function(A,e){var t=this,r=t.getTextureQueue(A),i=t.getRetiredTextureQueue(A);for(var u=0;u<i.length;u++){var a=i[u];if(a.width>=e)return a.retired=!1,a.usedWidth=0,a.invalidatedWidth=0,a.fullnessChecks=0,kaA(a.eleCaches),a.context.setTransform(1,0,0,1,0,0),a.context.clearRect(0,0,a.width,a.height),c4(i,a),r.push(a),a}};so.queueElement=function(A,e){var t=this,r=t.getElementQueue(),i=t.getElementKeyToQueue(),u=this.getKey(A),a=i[u];if(a)a.level=Math.max(a.level,e),a.eles.merge(A),a.reqs++,r.updateItem(a);else{var n={eles:A.spawn().merge(A),level:e,reqs:1,key:u};r.push(n),i[u]=n}};so.dequeue=function(A){var e=this,t=e.getElementQueue(),r=e.getElementKeyToQueue(),i=[],u=e.lookup;for(var a=0;a<Jft;a++)if(t.size()>0){var n=t.pop(),o=n.key,s=n.eles[0],l=u.hasCache(s,n.level);if(r[o]=null,l)continue;i.push(n);var g=e.getBoundingBox(s);e.getElement(s,g,A,n.level,qy.dequeue)}else break;return i};so.removeFromQueue=function(A){var e=this,t=e.getElementQueue(),r=e.getElementKeyToQueue(),i=this.getKey(A),u=r[i];if(u!=null)if(u.eles.length===1)u.reqs=baA,t.updateItem(u),t.pop(),r[i]=null;else u.eles.unmerge(A)};so.onDequeue=function(A){this.onDequeues.push(A)};so.offDequeue=function(A){c4(this.onDequeues,A)};so.setupDequeueing=CJA.setupDequeueing({deqRedrawThreshold:Kft,deqCost:Mft,deqAvgCost:Tft,deqNoDrawCost:Yft,deqFastCost:Hft,deq:function(e,t,r){return e.dequeue(t,r)},onDeqd:function(e,t){for(var r=0;r<e.onDequeues.length;r++){var i=e.onDequeues[r];i(t)}},shouldRedraw:function(e,t,r,i){for(var u=0;u<t.length;u++){var a=t[u].eles;for(var n=0;n<a.length;n++){var o=a[n].boundingBox();if(SaA(o,i))return!0}}return!1},priority:function(e){return e.renderer.beforeRenderPriorities.eleTxrDeq}});g0=EJA.prototype,e3t=Math.pow(2,53)-1;g0.makeLayer=function(A,e){var t=Math.pow(2,e),r=Math.ceil(A.w*t),i=Math.ceil(A.h*t),u=this.renderer.makeOffscreenCanvas(r,i),a={id:bHA=++bHA%e3t,bb:A,level:e,width:r,height:i,canvas:u,context:u.getContext("2d"),eles:[],elesQueue:[],reqs:0},n=a.context,o=-a.bb.x1,s=-a.bb.y1;return n.scale(t,t),n.translate(o,s),a};g0.getLayers=function(A,e,t){var r=this,i=r.renderer,u=i.cy,a=u.zoom(),n=r.firstGet;if(r.firstGet=!1,t==null){if(t=Math.ceil(FaA(a*e)),t<wk)t=wk;else if(a>=_ft||t>NT)return null}r.validateLayersElesOrdering(t,A);var o=r.layersByLevel,s=Math.pow(2,t),l=o[t]=o[t]||[],g,C=r.levelIsComplete(t,A),B,E=function(){var v=function(R){if(r.validateLayersElesOrdering(R,A),r.levelIsComplete(R,A))return B=o[R],!0},S=function(R){if(B)return;for(var L=t+R;wk<=L&&L<=NT;L+=R)if(v(L))break};S(1),S(-1);for(var x=l.length-1;x>=0;x--){var F=l[x];if(F.invalid)c4(l,F)}};if(!C)E();else return l;var d=function(){if(!g){g=Qs();for(var v=0;v<A.length;v++)ZQt(g,A[v].boundingBox())}return g},I=function(v){v=v||{};var S=v.after;d();var x=Math.ceil(g.w*s),F=Math.ceil(g.h*s);if(x>wHA||F>wHA)return null;var T=x*F;if(T>$ft)return null;var R=r.makeLayer(g,t);if(S!=null){var L=l.indexOf(S)+1;l.splice(L,0,R)}else if(v.insert===void 0||v.insert)l.unshift(R);return R};if(r.skipping&&!n)return null;var h=null,Q=A.length/Pft,p=!n;for(var m=0;m<A.length;m++){var f=A[m],D=f._private.rscratch,w=D.imgLayerCaches=D.imgLayerCaches||{},b=w[t];if(b){h=b;continue}if(!h||h.eles.length>=Q||!oKA(h.bb,f.boundingBox())){if(h=I({insert:!0,after:h}),!h)return null}if(B||p)r.queueLayer(h,f);else r.drawEleInLayer(h,f,t,e);h.eles.push(f),w[t]=h}if(B)return B;if(p)return null;return l};g0.getEleLevelForLayerLevel=function(A,e){return A};g0.drawEleInLayer=function(A,e,t,r){var i=this,u=this.renderer,a=A.context,n=e.boundingBox();if(n.w===0||n.h===0||!e.visible())return;t=i.getEleLevelForLayerLevel(t,r),u.setImgSmoothing(a,!1),u.drawCachedElement(a,e,null,null,t,A3t),u.setImgSmoothing(a,!0)};g0.levelIsComplete=function(A,e){var t=this,r=t.layersByLevel[A];if(!r||r.length===0)return!1;var i=0;for(var u=0;u<r.length;u++){var a=r[u];if(a.reqs>0)return!1;if(a.invalid)return!1;i+=a.eles.length}if(i!==e.length)return!1;return!0};g0.validateLayersElesOrdering=function(A,e){var t=this.layersByLevel[A];if(!t)return;for(var r=0;r<t.length;r++){var i=t[r],u=-1;for(var a=0;a<e.length;a++)if(i.eles[0]===e[a]){u=a;break}if(u<0){this.invalidateLayer(i);continue}var n=u;for(var a=0;a<i.eles.length;a++)if(i.eles[a]!==e[n+a]){this.invalidateLayer(i);break}}};g0.updateElementsInLayers=function(A,e){var t=this,r=Tk(A[0]);for(var i=0;i<A.length;i++){var u=r?null:A[i],a=r?A[i]:A[i].ele,n=a._private.rscratch,o=n.imgLayerCaches=n.imgLayerCaches||{};for(var s=wk;s<=NT;s++){var l=o[s];if(!l)continue;if(u&&t.getEleLevelForLayerLevel(l.level)!==u.level)continue;e(l,a,u)}}};g0.haveLayers=function(){var A=this,e=!1;for(var t=wk;t<=NT;t++){var r=A.layersByLevel[t];if(r&&r.length>0){e=!0;break}}return e};g0.invalidateElements=function(A){var e=this;if(A.length===0)return;if(e.lastInvalidationTime=wI(),A.length===0||!e.haveLayers())return;e.updateElementsInLayers(A,function(r,i,u){e.invalidateLayer(r)})};g0.invalidateLayer=function(A){if(this.lastInvalidationTime=wI(),A.invalid)return;var{level:e,eles:t}=A,r=this.layersByLevel[e];if(c4(r,A),A.elesQueue=[],A.invalid=!0,A.replacement)A.replacement.invalid=!0;for(var i=0;i<t.length;i++){var u=t[i]._private.rscratch.imgLayerCaches;if(u)u[e]=null}};g0.refineElementTextures=function(A){var e=this;e.updateElementsInLayers(A,function(r,i,u){var a=r.replacement;if(!a)a=r.replacement=e.makeLayer(r.bb,r.level),a.replaces=r,a.eles=r.eles;if(!a.reqs)for(var n=0;n<a.eles.length;n++)e.queueLayer(a,a.eles[n])})};g0.enqueueElementRefinement=function(A){this.eleTxrDeqs.merge(A),this.scheduleElementRefinement()};g0.queueLayer=function(A,e){var t=this,r=t.layersQueue,i=A.elesQueue,u=i.hasId=i.hasId||{};if(A.replacement)return;if(e){if(u[e.id()])return;i.push(e),u[e.id()]=!0}if(A.reqs)A.reqs++,r.updateItem(A);else A.reqs=1,r.push(A)};g0.dequeue=function(A){var e=this,t=e.layersQueue,r=[],i=0;while(i<Xft){if(t.size()===0)break;var u=t.peek();if(u.replacement){t.pop();continue}if(u.replaces&&u!==u.replaces.replacement){t.pop();continue}if(u.invalid){t.pop();continue}var a=u.elesQueue.shift();if(a)e.drawEleInLayer(u,a,u.level,A),i++;if(r.length===0)r.push(!0);if(u.elesQueue.length===0){if(t.pop(),u.reqs=0,u.replaces)e.applyLayerReplacement(u);e.requestRedraw()}}return r};g0.applyLayerReplacement=function(A){var e=this,t=e.layersByLevel[A.level],r=A.replaces,i=t.indexOf(r);if(i<0||r.invalid)return;t[i]=A;for(var u=0;u<A.eles.length;u++){var a=A.eles[u]._private,n=a.imgLayerCaches=a.imgLayerCaches||{};if(n)n[A.level]=A}e.requestRedraw()};g0.requestRedraw=Jk(function(){var A=this.renderer;A.redrawHint("eles",!0),A.redrawHint("drag",!0),A.redraw()},100);g0.setupDequeueing=CJA.setupDequeueing({deqRedrawThreshold:Wft,deqCost:zft,deqAvgCost:Zft,deqNoDrawCost:Vft,deqFastCost:jft,deq:function(e,t){return e.dequeue(t)},onDeqd:vaA,shouldRedraw:eKA,priority:function(e){return e.renderer.beforeRenderPriorities.lyrTxrDeq}});dJA={};dJA.arrowShapeImpl=function(A){return(vHA||(vHA={polygon:t3t,"triangle-backcurve":r3t,"triangle-tee":kHA,"circle-triangle":i3t,"triangle-cross":kHA,circle:u3t}))[A]};DE={};DE.drawElement=function(A,e,t,r,i,u){var a=this;if(e.isNode())a.drawNode(A,e,t,r,i,u);else a.drawEdge(A,e,t,r,i,u)};DE.drawElementOverlay=function(A,e){var t=this;if(e.isNode())t.drawNodeOverlay(A,e);else t.drawEdgeOverlay(A,e)};DE.drawElementUnderlay=function(A,e){var t=this;if(e.isNode())t.drawNodeUnderlay(A,e);else t.drawEdgeUnderlay(A,e)};DE.drawCachedElementPortion=function(A,e,t,r,i,u,a,n){var o=this,s=t.getBoundingBox(e);if(s.w===0||s.h===0)return;var l=t.getElement(e,s,r,i,u);if(l!=null){var g=n(o,e);if(g===0)return;var C=a(o,e),{x1:B,y1:E,w:d,h:I}=s,h,Q,p,m,f;if(C!==0){var D=t.getRotationPoint(e);if(p=D.x,m=D.y,A.translate(p,m),A.rotate(C),f=o.getImgSmoothing(A),!f)o.setImgSmoothing(A,!0);var w=t.getRotationOffset(e);h=w.x,Q=w.y}else h=B,Q=E;var b;if(g!==1)b=A.globalAlpha,A.globalAlpha=b*g;if(A.drawImage(l.texture.canvas,l.x,0,l.width,l.height,h,Q,d,I),g!==1)A.globalAlpha=b;if(C!==0){if(A.rotate(-C),A.translate(-p,-m),!f)o.setImgSmoothing(A,!1)}}else t.drawElement(A,e)};DE.drawCachedElement=function(A,e,t,r,i,u){var a=this,n=a.data,{eleTxrCache:o,lblTxrCache:s,slbTxrCache:l,tlbTxrCache:g}=n,C=e.boundingBox(),B=u===!0?o.reasons.highQuality:null;if(C.w===0||C.h===0||!e.visible())return;if(!r||SaA(C,r)){var E=e.isEdge(),d=e.element()._private.rscratch.badLine;if(a.drawElementUnderlay(A,e),a.drawCachedElementPortion(A,e,o,t,i,B,a3t,l3t),!E||!d)a.drawCachedElementPortion(A,e,s,t,i,B,n3t,ZuA);if(E&&!d)a.drawCachedElementPortion(A,e,l,t,i,B,o3t,ZuA),a.drawCachedElementPortion(A,e,g,t,i,B,s3t,ZuA);a.drawElementOverlay(A,e)}};DE.drawElements=function(A,e){var t=this;for(var r=0;r<e.length;r++){var i=e[r];t.drawElement(A,i)}};DE.drawCachedElements=function(A,e,t,r){var i=this;for(var u=0;u<e.length;u++){var a=e[u];i.drawCachedElement(A,a,t,r)}};DE.drawCachedNodes=function(A,e,t,r){var i=this;for(var u=0;u<e.length;u++){var a=e[u];if(!a.isNode())continue;i.drawCachedElement(A,a,t,r)}};DE.drawLayeredElements=function(A,e,t,r){var i=this,u=i.data.lyrTxrCache.getLayers(e,t);if(u)for(var a=0;a<u.length;a++){var n=u[a],o=n.bb;if(o.w===0||o.h===0)continue;A.drawImage(n.canvas,o.x1,o.y1,o.w,o.h)}else i.drawCachedElements(A,e,t,r)};kI={};kI.drawEdge=function(A,e,t){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,a=this,n=e._private.rscratch;if(u&&!e.visible())return;if(n.badLine||n.allpts==null||isNaN(n.allpts[0]))return;var o;if(t)o=t,A.translate(-o.x1,-o.y1);var s=u?e.pstyle("opacity").value:1,l=u?e.pstyle("line-opacity").value:1,g=e.pstyle("curve-style").value,C=e.pstyle("line-style").value,B=e.pstyle("width").pfValue,E=e.pstyle("line-cap").value,d=e.pstyle("line-outline-width").value,I=e.pstyle("line-outline-color").value,h=s*l,Q=s*l,p=function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:h;if(g==="straight-triangle")a.eleStrokeStyle(A,e,R),a.drawEdgeTrianglePath(e,A,n.allpts);else A.lineWidth=B,A.lineCap=E,a.eleStrokeStyle(A,e,R),a.drawEdgePath(e,A,n.allpts,C),A.lineCap="butt"},m=function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:h;if(A.lineWidth=B+d,A.lineCap=E,d>0)a.colorStrokeStyle(A,I[0],I[1],I[2],R);else{A.lineCap="butt";return}if(g==="straight-triangle")a.drawEdgeTrianglePath(e,A,n.allpts);else a.drawEdgePath(e,A,n.allpts,C),A.lineCap="butt"},f=function(){if(!i)return;a.drawEdgeOverlay(A,e)},D=function(){if(!i)return;a.drawEdgeUnderlay(A,e)},w=function(){var R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Q;a.drawArrowheads(A,e,R)},b=function(){a.drawElementText(A,e,null,r)};A.lineJoin="round";var k=e.pstyle("ghost").value==="yes";if(k){var v=e.pstyle("ghost-offset-x").pfValue,S=e.pstyle("ghost-offset-y").pfValue,x=e.pstyle("ghost-opacity").value,F=h*x;A.translate(v,S),p(F),w(F),A.translate(-v,-S)}else m();if(D(),p(),w(),f(),b(),t)A.translate(o.x1,o.y1)};kI.drawEdgeOverlay=IJA("overlay");kI.drawEdgeUnderlay=IJA("underlay");kI.drawEdgePath=function(A,e,t,r){var i=A._private.rscratch,u=e,a,n=!1,o=this.usePaths(),s=A.pstyle("line-dash-pattern").pfValue,l=A.pstyle("line-dash-offset").pfValue;if(o){var g=t.join("$"),C=i.pathCacheKey&&i.pathCacheKey===g;if(C)a=e=i.pathCache,n=!0;else a=e=new Path2D,i.pathCacheKey=g,i.pathCache=a}if(u.setLineDash)switch(r){case"dotted":u.setLineDash([1,1]);break;case"dashed":u.setLineDash(s),u.lineDashOffset=l;break;case"solid":u.setLineDash([]);break}if(!n&&!i.badLine){if(e.beginPath)e.beginPath();switch(e.moveTo(t[0],t[1]),i.edgeType){case"bezier":case"self":case"compound":case"multibezier":for(var B=2;B+3<t.length;B+=4)e.quadraticCurveTo(t[B],t[B+1],t[B+2],t[B+3]);break;case"straight":case"haystack":for(var E=2;E+1<t.length;E+=2)e.lineTo(t[E],t[E+1]);break;case"segments":if(i.isRound){var d=Bl(i.roundCorners),I;try{for(d.s();!(I=d.n()).done;){var h=I.value;iJA(e,h)}}catch(p){d.e(p)}finally{d.f()}e.lineTo(t[t.length-2],t[t.length-1])}else for(var Q=2;Q+1<t.length;Q+=2)e.lineTo(t[Q],t[Q+1]);break}}if(e=u,o)e.stroke(a);else e.stroke();if(e.setLineDash)e.setLineDash([])};kI.drawEdgeTrianglePath=function(A,e,t){e.fillStyle=e.strokeStyle;var r=A.pstyle("width").pfValue;for(var i=0;i+1<t.length;i+=2){var u=[t[i+2]-t[i],t[i+3]-t[i+1]],a=Math.sqrt(u[0]*u[0]+u[1]*u[1]),n=[u[1]/a,-u[0]/a],o=[n[0]*r/2,n[1]*r/2];e.beginPath(),e.moveTo(t[i]-o[0],t[i+1]-o[1]),e.lineTo(t[i]+o[0],t[i+1]+o[1]),e.lineTo(t[i+2],t[i+3]),e.closePath(),e.fill()}};kI.drawArrowheads=function(A,e,t){var r=e._private.rscratch,i=r.edgeType==="haystack";if(!i)this.drawArrowhead(A,e,"source",r.arrowStartX,r.arrowStartY,r.srcArrowAngle,t);if(this.drawArrowhead(A,e,"mid-target",r.midX,r.midY,r.midtgtArrowAngle,t),this.drawArrowhead(A,e,"mid-source",r.midX,r.midY,r.midsrcArrowAngle,t),!i)this.drawArrowhead(A,e,"target",r.arrowEndX,r.arrowEndY,r.tgtArrowAngle,t)};kI.drawArrowhead=function(A,e,t,r,i,u,a){if(isNaN(r)||r==null||isNaN(i)||i==null||isNaN(u)||u==null)return;var n=this,o=e.pstyle(t+"-arrow-shape").value;if(o==="none")return;var s=e.pstyle(t+"-arrow-fill").value==="hollow"?"both":"filled",l=e.pstyle(t+"-arrow-fill").value,g=e.pstyle("width").pfValue,C=e.pstyle(t+"-arrow-width"),B=C.value==="match-line"?g:C.pfValue;if(C.units==="%")B*=g;var E=e.pstyle("opacity").value;if(a===void 0)a=E;var d=A.globalCompositeOperation;if(a!==1||l==="hollow")A.globalCompositeOperation="destination-out",n.colorFillStyle(A,255,255,255,1),n.colorStrokeStyle(A,255,255,255,1),n.drawArrowShape(e,A,s,g,o,B,r,i,u),A.globalCompositeOperation=d;var I=e.pstyle(t+"-arrow-color").value;n.colorFillStyle(A,I[0],I[1],I[2],a),n.colorStrokeStyle(A,I[0],I[1],I[2],a),n.drawArrowShape(e,A,l,g,o,B,r,i,u)};kI.drawArrowShape=function(A,e,t,r,i,u,a,n,o){var s=this,l=this.usePaths()&&i!=="triangle-cross",g=!1,C,B=e,E={x:a,y:n},d=A.pstyle("arrow-scale").value,I=this.getArrowWidth(r,d),h=s.arrowShapes[i];if(l){var Q=s.arrowPathCache=s.arrowPathCache||[],p=Of(i),m=Q[p];if(m!=null)C=e=m,g=!0;else C=e=new Path2D,Q[p]=C}if(!g){if(e.beginPath)e.beginPath();if(l)h.draw(e,1,0,{x:0,y:0},1);else h.draw(e,I,o,E,r);if(e.closePath)e.closePath()}if(e=B,l)e.translate(a,n),e.rotate(o),e.scale(I,I);if(t==="filled"||t==="both")if(l)e.fill(C);else e.fill();if(t==="hollow"||t==="both")if(e.lineWidth=u/(l?I:1),e.lineJoin="miter",l)e.stroke(C);else e.stroke();if(l)e.scale(1/I,1/I),e.rotate(-o),e.translate(-a,-n)};_aA={};_aA.safeDrawImage=function(A,e,t,r,i,u,a,n,o,s){if(i<=0||u<=0||o<=0||s<=0)return;try{A.drawImage(e,t,r,i,u,a,n,o,s)}catch(l){du(l)}};_aA.drawInscribedImage=function(A,e,t,r,i){var u=this,a=t.position(),{x:n,y:o}=a,s=t.cy().style(),l=s.getIndexedStyle.bind(s),g=l(t,"background-fit","value",r),C=l(t,"background-repeat","value",r),B=t.width(),E=t.height(),d=t.padding()*2,I=B+(l(t,"background-width-relative-to","value",r)==="inner"?0:d),h=E+(l(t,"background-height-relative-to","value",r)==="inner"?0:d),Q=t._private.rscratch,p=l(t,"background-clip","value",r),m=p==="node",f=l(t,"background-image-opacity","value",r)*i,D=l(t,"background-image-smoothing","value",r),w=t.pstyle("corner-radius").value;if(w!=="auto")w=t.pstyle("corner-radius").pfValue;var b=e.width||e.cachedW,k=e.height||e.cachedH;if(b==null||k==null)document.body.appendChild(e),b=e.cachedW=e.width||e.offsetWidth,k=e.cachedH=e.height||e.offsetHeight,document.body.removeChild(e);var v=b,S=k;if(l(t,"background-width","value",r)!=="auto")if(l(t,"background-width","units",r)==="%")v=l(t,"background-width","pfValue",r)*I;else v=l(t,"background-width","pfValue",r);if(l(t,"background-height","value",r)!=="auto")if(l(t,"background-height","units",r)==="%")S=l(t,"background-height","pfValue",r)*h;else S=l(t,"background-height","pfValue",r);if(v===0||S===0)return;if(g==="contain"){var x=Math.min(I/v,h/S);v*=x,S*=x}else if(g==="cover"){var x=Math.max(I/v,h/S);v*=x,S*=x}var F=n-I/2,T=l(t,"background-position-x","units",r),R=l(t,"background-position-x","pfValue",r);if(T==="%")F+=(I-v)*R;else F+=R;var L=l(t,"background-offset-x","units",r),M=l(t,"background-offset-x","pfValue",r);if(L==="%")F+=(I-v)*M;else F+=M;var U=o-h/2,Y=l(t,"background-position-y","units",r),H=l(t,"background-position-y","pfValue",r);if(Y==="%")U+=(h-S)*H;else U+=H;var J=l(t,"background-offset-y","units",r),K=l(t,"background-offset-y","pfValue",r);if(J==="%")U+=(h-S)*K;else U+=K;if(Q.pathCache)F-=n,U-=o,n=0,o=0;var O=A.globalAlpha;A.globalAlpha=f;var P=u.getImgSmoothing(A),z=!1;if(D==="no"&&P)u.setImgSmoothing(A,!1),z=!0;else if(D==="yes"&&!P)u.setImgSmoothing(A,!0),z=!0;if(C==="no-repeat"){if(m)if(A.save(),Q.pathCache)A.clip(Q.pathCache);else u.nodeShapes[u.getNodeShape(t)].draw(A,n,o,I,h,w,Q),A.clip();if(u.safeDrawImage(A,e,0,0,b,k,F,U,v,S),m)A.restore()}else{var AA=A.createPattern(e,C);A.fillStyle=AA,u.nodeShapes[u.getNodeShape(t)].draw(A,n,o,I,h,w,Q),A.translate(F,U),A.fill(),A.translate(-F,-U)}if(A.globalAlpha=O,z)u.setImgSmoothing(A,P)};Zf={};Zf.eleTextBiggerThanMin=function(A,e){if(!e){var t=A.cy().zoom(),r=this.getPixelRatio(),i=Math.ceil(FaA(t*r));e=Math.pow(2,i)}var u=A.pstyle("font-size").pfValue*e,a=A.pstyle("min-zoomed-font-size").pfValue;if(u<a)return!1;return!0};Zf.drawElementText=function(A,e,t,r,i){var u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,a=this;if(r==null){if(u&&!a.eleTextBiggerThanMin(e))return}else if(r===!1)return;if(e.isNode()){var n=e.pstyle("label");if(!n||!n.value)return;var o=a.getLabelJustification(e),s=e.pstyle("text-metrics").strValue==="glyph";A.textAlign=o,A.textBaseline=s?"alphabetic":"bottom"}else{var l=e.element()._private.rscratch.badLine,g=e.pstyle("label"),C=e.pstyle("source-label"),B=e.pstyle("target-label");if(l||(!g||!g.value)&&(!C||!C.value)&&(!B||!B.value))return;A.textAlign="center",A.textBaseline="bottom"}var E=!t,d;if(t)d=t,A.translate(-d.x1,-d.y1);if(i==null){if(a.drawText(A,e,null,E,u),e.isEdge())a.drawText(A,e,"source",E,u),a.drawText(A,e,"target",E,u)}else a.drawText(A,e,i,E,u);if(t)A.translate(d.x1,d.y1)};Zf.getFontCache=function(A){var e;this.fontCaches=this.fontCaches||[];for(var t=0;t<this.fontCaches.length;t++)if(e=this.fontCaches[t],e.context===A)return e;return e={context:A},this.fontCaches.push(e),e};Zf.setupTextStyle=function(A,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=e.pstyle("font-style").strValue,i=e.pstyle("font-size").pfValue+"px",u=e.pstyle("font-family").strValue,a=e.pstyle("font-weight").strValue,n=t?e.effectiveOpacity()*e.pstyle("text-opacity").value:1,o=e.pstyle("text-outline-opacity").value*n,s=e.pstyle("color").value,l=e.pstyle("text-outline-color").value;A.font=r+" "+a+" "+i+" "+u,A.lineJoin="round",this.colorFillStyle(A,s[0],s[1],s[2],n),this.colorStrokeStyle(A,l[0],l[1],l[2],o)};Zf.getTextAngle=function(A,e){var t,r=A._private,i=r.rscratch,u=e?e+"-":"",a=A.pstyle(u+"text-rotation");if(a.strValue==="autorotate"){var n=hs(i,"labelAngle",e);t=A.isEdge()?n:0}else if(a.strValue==="none")t=0;else t=a.pfValue;return t};Zf.drawText=function(A,e,t){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,u=e._private,a=u.rscratch,n=i?e.effectiveOpacity():1;if(i&&(n===0||e.pstyle("text-opacity").value===0))return;if(t==="main")t=null;var o=hs(a,"labelX",t),s=hs(a,"labelY",t),l,g,C=this.getLabelText(e,t);if(C!=null&&C!==""&&!isNaN(o)&&!isNaN(s)){this.setupTextStyle(A,e,i);var B=t?t+"-":"",E=hs(a,"labelWidth",t),d=hs(a,"labelHeight",t),I=hs(a,"labelActualDescent",t),h=e.pstyle(B+"text-margin-x").pfValue,Q=e.pstyle(B+"text-margin-y").pfValue,p=e.isEdge(),m=e.pstyle("text-halign").value,f=e.pstyle("text-valign").value;if(p)m="center",f="center";o+=h,s+=Q;var D;if(!r)D=0;else D=this.getTextAngle(e,t);if(D!==0)l=o,g=s,A.translate(l,g),A.rotate(D),o=0,s=0;var w=ew(m),b=tw(f);switch(b){case"top":break;case"center":s+=d/2;break;case"bottom":s+=d;break}var k=e.pstyle("text-background-opacity").value,v=e.pstyle("text-border-opacity").value,S=e.pstyle("text-border-width").pfValue,x=e.pstyle("text-background-padding").pfValue,F=e.pstyle("text-background-shape").strValue,T=F==="round-rectangle"||F==="roundrectangle",R=F==="circle",L=2;if(k>0||S>0&&v>0){var{fillStyle:M,strokeStyle:U,lineWidth:Y}=A,H=e.pstyle("text-background-color").value,J=e.pstyle("text-border-color").value,K=e.pstyle("text-border-style").value,O=k>0,P=S>0&&v>0,z=o-x;switch(w){case"left":z-=E;break;case"center":z-=E/2;break}var AA=s-d-x,W=E+2*x,CA=d+2*x;if(O)A.fillStyle="rgba(".concat(H[0],",").concat(H[1],",").concat(H[2],",").concat(k*n,")");if(P){if(A.strokeStyle="rgba(".concat(J[0],",").concat(J[1],",").concat(J[2],",").concat(v*n,")"),A.lineWidth=S,A.setLineDash)switch(K){case"dotted":A.setLineDash([1,1]);break;case"dashed":A.setLineDash([4,2]);break;case"double":A.lineWidth=S/4,A.setLineDash([]);break;case"solid":default:A.setLineDash([]);break}}if(T)A.beginPath(),FHA(A,z,AA,W,CA,L);else if(R)A.beginPath(),g3t(A,z,AA,W,CA);else A.beginPath(),A.rect(z,AA,W,CA);if(O)A.fill();if(P)A.stroke();if(P&&K==="double"){var tA=S/2;if(A.beginPath(),T)FHA(A,z+tA,AA+tA,W-2*tA,CA-2*tA,L);else A.rect(z+tA,AA+tA,W-2*tA,CA-2*tA);A.stroke()}if(A.fillStyle=M,A.strokeStyle=U,A.lineWidth=Y,A.setLineDash)A.setLineDash([])}var lA=2*e.pstyle("text-outline-width").pfValue;if(lA>0)A.lineWidth=lA;if(s-=I,e.pstyle("text-wrap").value==="wrap"){var gA=hs(a,"labelWrapCachedLines",t),aA=hs(a,"labelLineHeight",t),NA=E/2,DA=this.getLabelJustification(e);if(DA==="auto");else if(w==="left"){if(DA==="left")o+=-E;else if(DA==="center")o+=-NA}else if(w==="center"){if(DA==="left")o+=-NA;else if(DA==="right")o+=NA}else if(w==="right"){if(DA==="center")o+=NA;else if(DA==="right")o+=E}switch(b){case"top":s-=(gA.length-1)*aA;break;case"center":case"bottom":s-=(gA.length-1)*aA;break}for(var KA=0;KA<gA.length;KA++){if(lA>0)A.strokeText(gA[KA],o,s);A.fillText(gA[KA],o,s),s+=aA}}else{if(lA>0)A.strokeText(C,o,s);A.fillText(C,o,s)}if(D!==0)A.rotate(-D),A.translate(-l,-g)}};p4={};p4.drawNode=function(A,e,t){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0,a=this,n,o,s=e._private,l=s.rscratch,g=e.position();if(!ht(g.x)||!ht(g.y))return;if(u&&!e.visible())return;var C=u?e.effectiveOpacity():1,B=a.usePaths(),E,d=!1,I=e.padding();n=e.width()+2*I,o=e.height()+2*I;var h;if(t)h=t,A.translate(-h.x1,-h.y1);var Q=e.pstyle("background-image"),p=Q.value,m=Array(p.length),f=Array(p.length),D=0;for(var w=0;w<p.length;w++){var b=p[w],k=m[w]=b!=null&&b!=="none";if(k){var v=e.cy().style().getIndexedStyle(e,"background-image-crossorigin","value",w);D++,f[w]=a.getCachedImage(b,v,function(){s.backgroundTimestamp=Date.now(),e.emitAndNotify("background")})}}var S=e.pstyle("background-blacken").value,x=e.pstyle("border-width").pfValue,F=e.pstyle("background-opacity").value*C,T=e.pstyle("border-color").value,R=e.pstyle("border-style").value,L=e.pstyle("border-join").value,M=e.pstyle("border-cap").value,U=e.pstyle("border-position").value,Y=e.pstyle("border-dash-pattern").pfValue,H=e.pstyle("border-dash-offset").pfValue,J=e.pstyle("border-opacity").value*C,K=e.pstyle("outline-width").pfValue,O=e.pstyle("outline-color").value,P=e.pstyle("outline-style").value,z=e.pstyle("outline-opacity").value*C,AA=e.pstyle("outline-offset").value,W=e.pstyle("corner-radius").value;if(W!=="auto")W=e.pstyle("corner-radius").pfValue;var CA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:F;a.eleFillStyle(A,e,Z)},tA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:J;a.colorStrokeStyle(A,T[0],T[1],T[2],Z)},lA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:z;a.colorStrokeStyle(A,O[0],O[1],O[2],Z)},gA=function(Z,fA,j,mA){var rA=a.nodePathCache=a.nodePathCache||[],JA=AKA(j==="polygon"?j+","+mA.join(","):j,""+fA,""+Z,""+W),_A=rA[JA],ZA,WA=!1;if(_A!=null)ZA=_A,WA=!0,l.pathCache=ZA;else ZA=new Path2D,rA[JA]=l.pathCache=ZA;return{path:ZA,cacheHit:WA}},aA=e.pstyle("shape").strValue,NA=e.pstyle("shape-polygon-points").pfValue;if(B){A.translate(g.x,g.y);var DA=gA(n,o,aA,NA);E=DA.path,d=DA.cacheHit}var KA=function(){if(!d){var Z=g;if(B)Z={x:0,y:0};a.nodeShapes[a.getNodeShape(e)].draw(E||A,Z.x,Z.y,n,o,W,l)}if(B)A.fill(E);else A.fill()},TA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:C,fA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,j=s.backgrounding,mA=0;for(var rA=0;rA<f.length;rA++){var JA=e.cy().style().getIndexedStyle(e,"background-image-containment","value",rA);if(fA&&JA==="over"||!fA&&JA==="inside"){mA++;continue}if(m[rA]&&f[rA].complete&&!f[rA].error)mA++,a.drawInscribedImage(A,f[rA],e,rA,Z)}if(s.backgrounding=mA!==D,j!==s.backgrounding)e.updateStyle(!1)},qA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,fA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:C;if(a.hasPie(e)){if(a.drawPie(A,e,fA),Z){if(!B)a.nodeShapes[a.getNodeShape(e)].draw(A,g.x,g.y,n,o,W,l)}}},IA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,fA=arguments.length>1&&arguments[1]!==void 0?arguments[1]:C;if(a.hasStripe(e)){if(A.save(),B)A.clip(l.pathCache);else a.nodeShapes[a.getNodeShape(e)].draw(A,g.x,g.y,n,o,W,l),A.clip();if(a.drawStripe(A,e,fA),A.restore(),Z){if(!B)a.nodeShapes[a.getNodeShape(e)].draw(A,g.x,g.y,n,o,W,l)}}},bA=function(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:C,fA=(S>0?S:-S)*Z,j=S>0?0:255;if(S!==0)if(a.colorFillStyle(A,j,j,j,fA),B)A.fill(E);else A.fill()},SA=function(){if(x>0){if(A.lineWidth=x,A.lineCap=M,A.lineJoin=L,A.setLineDash)switch(R){case"dotted":A.setLineDash([1,1]);break;case"dashed":A.setLineDash(Y),A.lineDashOffset=H;break;case"solid":case"double":A.setLineDash([]);break}if(U!=="center"){if(A.save(),A.lineWidth*=2,U==="inside")B?A.clip(E):A.clip();else{var Z=new Path2D;Z.rect(-n/2-x,-o/2-x,n+2*x,o+2*x),Z.addPath(E),A.clip(Z,"evenodd")}B?A.stroke(E):A.stroke(),A.restore()}else B?A.stroke(E):A.stroke();if(R==="double"){A.lineWidth=x/3;var fA=A.globalCompositeOperation;if(A.globalCompositeOperation="destination-out",B)A.stroke(E);else A.stroke();A.globalCompositeOperation=fA}if(A.setLineDash)A.setLineDash([])}},EA=function(){if(K>0){if(A.lineWidth=K,A.lineCap="butt",A.setLineDash)switch(P){case"dotted":A.setLineDash([1,1]);break;case"dashed":A.setLineDash([4,2]);break;case"solid":case"double":A.setLineDash([]);break}var Z=g;if(B)Z={x:0,y:0};var fA=a.getNodeShape(e),j=x;if(U==="inside")j=0;if(U==="outside")j*=2;var mA=(n+j+(K+AA))/n,rA=(o+j+(K+AA))/o,JA=n*mA,_A=o*rA,ZA=a.nodeShapes[fA].points,WA;if(B){var te=gA(JA,_A,fA,ZA);WA=te.path}if(fA==="ellipse")a.drawEllipsePath(WA||A,Z.x,Z.y,JA,_A);else if(["round-diamond","round-heptagon","round-hexagon","round-octagon","round-pentagon","round-polygon","round-triangle","round-tag"].includes(fA)){var zA=0,Ae=0,$A=0;if(fA==="round-diamond")zA=(j+AA+K)*1.4;else if(fA==="round-heptagon")zA=(j+AA+K)*1.075,$A=-(j/2+AA+K)/35;else if(fA==="round-hexagon")zA=(j+AA+K)*1.12;else if(fA==="round-pentagon")zA=(j+AA+K)*1.13,$A=-(j/2+AA+K)/15;else if(fA==="round-tag")zA=(j+AA+K)*1.12,Ae=(j/2+K+AA)*0.07;else if(fA==="round-triangle")zA=(j+AA+K)*(Math.PI/2),$A=-(j+AA/2+K)/Math.PI;if(zA!==0){if(mA=(n+zA)/n,JA=n*mA,!["round-hexagon","round-tag"].includes(fA))rA=(o+zA)/o,_A=o*rA}W=W==="auto"?gKA(JA,_A):W;var oe=JA/2,kA=_A/2,Pe=W+(j+K+AA)/2,MA=Array(ZA.length/2),ke=Array(ZA.length/2);for(var We=0;We<ZA.length/2;We++)MA[We]={x:Z.x+Ae+oe*ZA[We*2],y:Z.y+$A+kA*ZA[We*2+1]};var ue,Me,je,Ge,wA=MA.length;Me=MA[wA-1];for(ue=0;ue<wA;ue++)je=MA[ue%wA],Ge=MA[(ue+1)%wA],ke[ue]=OaA(Me,je,Ge,Pe),Me=je,je=Ge;a.drawRoundPolygonPath(WA||A,Z.x+Ae,Z.y+$A,n*mA,o*rA,ZA,ke)}else if(["roundrectangle","round-rectangle"].includes(fA))W=W==="auto"?C4(JA,_A):W,a.drawRoundRectanglePath(WA||A,Z.x,Z.y,JA,_A,W+(j+K+AA)/2);else if(["cutrectangle","cut-rectangle"].includes(fA))W=W==="auto"?LaA():W,a.drawCutRectanglePath(WA||A,Z.x,Z.y,JA,_A,null,W+(j+K+AA)/4);else if(["bottomroundrectangle","bottom-round-rectangle"].includes(fA))W=W==="auto"?C4(JA,_A):W,a.drawBottomRoundRectanglePath(WA||A,Z.x,Z.y,JA,_A,W+(j+K+AA)/2);else if(fA==="barrel")a.drawBarrelPath(WA||A,Z.x,Z.y,JA,_A);else if(fA.startsWith("polygon")||["rhomboid","right-rhomboid","round-tag","tag","vee"].includes(fA)){var Re=(j+K+AA)/n;ZA=vT(kT(ZA,Re)),a.drawPolygonPath(WA||A,Z.x,Z.y,n,o,ZA)}else{var He=(j+K+AA)/n;ZA=vT(kT(ZA,-He)),a.drawPolygonPath(WA||A,Z.x,Z.y,n,o,ZA)}if(B)A.stroke(WA);else A.stroke();if(P==="double"){A.lineWidth=j/3;var de=A.globalCompositeOperation;if(A.globalCompositeOperation="destination-out",B)A.stroke(WA);else A.stroke();A.globalCompositeOperation=de}if(A.setLineDash)A.setLineDash([])}},nA=function(){if(i)a.drawNodeOverlay(A,e,g,n,o)},eA=function(){if(i)a.drawNodeUnderlay(A,e,g,n,o)},BA=function(){a.drawElementText(A,e,null,r)},yA=e.pstyle("ghost").value==="yes";if(yA){var vA=e.pstyle("ghost-offset-x").pfValue,FA=e.pstyle("ghost-offset-y").pfValue,HA=e.pstyle("ghost-opacity").value,dA=HA*C;A.translate(vA,FA),lA(),EA(),CA(HA*F),KA(),TA(dA,!0),tA(HA*J),SA(),qA(S!==0||x!==0),IA(S!==0||x!==0),TA(dA,!1),bA(dA),A.translate(-vA,-FA)}if(B)A.translate(-g.x,-g.y);if(eA(),B)A.translate(g.x,g.y);if(lA(),EA(),CA(),KA(),TA(C,!0),tA(),SA(),qA(S!==0||x!==0),IA(S!==0||x!==0),TA(C,!1),bA(),B)A.translate(-g.x,-g.y);if(BA(),nA(),t)A.translate(h.x1,h.y1)};p4.drawNodeOverlay=hJA("overlay");p4.drawNodeUnderlay=hJA("underlay");p4.hasPie=function(A){return A=A[0],A._private.hasPie};p4.hasStripe=function(A){return A=A[0],A._private.hasStripe};p4.drawPie=function(A,e,t,r){e=e[0],r=r||e.position();var i=e.cy().style(),u=e.pstyle("pie-size"),a=e.pstyle("pie-hole"),n=e.pstyle("pie-start-angle").pfValue,o=r.x,s=r.y,l=e.width(),g=e.height(),C=Math.min(l,g)/2,B,E=0,d=this.usePaths();if(d)o=0,s=0;if(u.units==="%")C=C*u.pfValue;else if(u.pfValue!==void 0)C=u.pfValue/2;if(a.units==="%")B=C*a.pfValue;else if(a.pfValue!==void 0)B=a.pfValue/2;if(B>=C)return;for(var I=1;I<=i.pieBackgroundN;I++){var h=e.pstyle("pie-"+I+"-background-size").value,Q=e.pstyle("pie-"+I+"-background-color").value,p=e.pstyle("pie-"+I+"-background-opacity").value*t,m=h/100;if(m+E>1)m=1-E;var f=1.5*Math.PI+2*Math.PI*E;f+=n;var D=2*Math.PI*m,w=f+D;if(h===0||E>=1||E+m>1)continue;if(B===0)A.beginPath(),A.moveTo(o,s),A.arc(o,s,C,f,w),A.closePath();else A.beginPath(),A.arc(o,s,C,f,w),A.arc(o,s,B,w,f,!0),A.closePath();this.colorFillStyle(A,Q[0],Q[1],Q[2],p),A.fill(),E+=m}};p4.drawStripe=function(A,e,t,r){e=e[0],r=r||e.position();var i=e.cy().style(),u=r.x,a=r.y,n=e.width(),o=e.height(),s=0,l=this.usePaths();A.save();var g=e.pstyle("stripe-direction").value,C=e.pstyle("stripe-size");switch(g){case"vertical":break;case"righward":A.rotate(-Math.PI/2);break}var B=n,E=o;if(C.units==="%")B=B*C.pfValue,E=E*C.pfValue;else if(C.pfValue!==void 0)B=C.pfValue,E=C.pfValue;if(l)u=0,a=0;a-=B/2,u-=E/2;for(var d=1;d<=i.stripeBackgroundN;d++){var I=e.pstyle("stripe-"+d+"-background-size").value,h=e.pstyle("stripe-"+d+"-background-color").value,Q=e.pstyle("stripe-"+d+"-background-opacity").value*t,p=I/100;if(p+s>1)p=1-s;if(I===0||s>=1||s+p>1)continue;A.beginPath(),A.rect(u,a+E*s,B,E*p),A.closePath(),this.colorFillStyle(A,h[0],h[1],h[2],Q),A.fill(),s+=p}A.restore()};ps={};ps.getPixelRatio=function(){var A=this.data.contexts[0];if(this.forcedPixelRatio!=null)return this.forcedPixelRatio;var e=this.cy.window(),t=A.backingStorePixelRatio||A.webkitBackingStorePixelRatio||A.mozBackingStorePixelRatio||A.msBackingStorePixelRatio||A.oBackingStorePixelRatio||A.backingStorePixelRatio||1;return(e.devicePixelRatio||1)/t};ps.paintCache=function(A){var e=this.paintCaches=this.paintCaches||[],t=!0,r;for(var i=0;i<e.length;i++)if(r=e[i],r.context===A){t=!1;break}if(t)r={context:A},e.push(r);return r};ps.createGradientStyleFor=function(A,e,t,r,i){var u,a=this.usePaths(),n=t.pstyle(e+"-gradient-stop-colors").value,o=t.pstyle(e+"-gradient-stop-positions").pfValue;if(r==="radial-gradient")if(t.isEdge()){var s=t.sourceEndpoint(),l=t.targetEndpoint(),g=t.midpoint(),C=Pf(s,g),B=Pf(l,g);u=A.createRadialGradient(g.x,g.y,0,g.x,g.y,Math.max(C,B))}else{var E=a?{x:0,y:0}:t.position(),d=t.paddedWidth(),I=t.paddedHeight();u=A.createRadialGradient(E.x,E.y,0,E.x,E.y,Math.max(d,I))}else if(t.isEdge()){var h=t.sourceEndpoint(),Q=t.targetEndpoint();u=A.createLinearGradient(h.x,h.y,Q.x,Q.y)}else{var p=a?{x:0,y:0}:t.position(),m=t.paddedWidth(),f=t.paddedHeight(),D=m/2,w=f/2,b=t.pstyle("background-gradient-direction").value;switch(b){case"to-bottom":u=A.createLinearGradient(p.x,p.y-w,p.x,p.y+w);break;case"to-top":u=A.createLinearGradient(p.x,p.y+w,p.x,p.y-w);break;case"to-left":u=A.createLinearGradient(p.x+D,p.y,p.x-D,p.y);break;case"to-right":u=A.createLinearGradient(p.x-D,p.y,p.x+D,p.y);break;case"to-bottom-right":case"to-right-bottom":u=A.createLinearGradient(p.x-D,p.y-w,p.x+D,p.y+w);break;case"to-top-right":case"to-right-top":u=A.createLinearGradient(p.x-D,p.y+w,p.x+D,p.y-w);break;case"to-bottom-left":case"to-left-bottom":u=A.createLinearGradient(p.x+D,p.y-w,p.x-D,p.y+w);break;case"to-top-left":case"to-left-top":u=A.createLinearGradient(p.x+D,p.y+w,p.x-D,p.y-w);break}}if(!u)return null;var k=o.length===n.length,v=n.length;for(var S=0;S<v;S++)u.addColorStop(k?o[S]:S/(v-1),"rgba("+n[S][0]+","+n[S][1]+","+n[S][2]+","+i+")");return u};ps.gradientFillStyle=function(A,e,t,r){var i=this.createGradientStyleFor(A,"background",e,t,r);if(!i)return null;A.fillStyle=i};ps.colorFillStyle=function(A,e,t,r,i){A.fillStyle="rgba("+e+","+t+","+r+","+i+")"};ps.eleFillStyle=function(A,e,t){var r=e.pstyle("background-fill").value;if(r==="linear-gradient"||r==="radial-gradient")this.gradientFillStyle(A,e,r,t);else{var i=e.pstyle("background-color").value;this.colorFillStyle(A,i[0],i[1],i[2],t)}};ps.gradientStrokeStyle=function(A,e,t,r){var i=this.createGradientStyleFor(A,"line",e,t,r);if(!i)return null;A.strokeStyle=i};ps.colorStrokeStyle=function(A,e,t,r,i){A.strokeStyle="rgba("+e+","+t+","+r+","+i+")"};ps.eleStrokeStyle=function(A,e,t){var r=e.pstyle("line-fill").value;if(r==="linear-gradient"||r==="radial-gradient")this.gradientStrokeStyle(A,e,r,t);else{var i=e.pstyle("line-color").value;this.colorStrokeStyle(A,i[0],i[1],i[2],t)}};ps.matchCanvasSize=function(A){var e=this,t=e.data,r=e.findContainerClientCoords(),i=r[2],u=r[3],a=e.getPixelRatio(),n=e.motionBlurPxRatio;if(A===e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_NODE]||A===e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_DRAG])a=n;var o=i*a,s=u*a,l;if(o===e.canvasWidth&&s===e.canvasHeight)return;e.fontCaches=null;var g=t.canvasContainer;g.style.width=i+"px",g.style.height=u+"px";for(var C=0;C<e.CANVAS_LAYERS;C++)l=t.canvases[C],l.width=o,l.height=s,l.style.width=i+"px",l.style.height=u+"px";for(var C=0;C<e.BUFFER_COUNT;C++)l=t.bufferCanvases[C],l.width=o,l.height=s,l.style.width=i+"px",l.style.height=u+"px";if(e.textureMult=1,a<=1)l=t.bufferCanvases[e.TEXTURE_BUFFER],e.textureMult=2,l.width=o*e.textureMult,l.height=s*e.textureMult;e.canvasWidth=o,e.canvasHeight=s,e.pixelRatio=a};ps.renderTo=function(A,e,t,r){this.render({forcedContext:A,forcedZoom:e,forcedPan:t,drawAllLayers:!0,forcedPxRatio:r})};ps.clearCanvas=function(){var A=this,e=A.data;function t(r){r.clearRect(0,0,A.canvasWidth,A.canvasHeight)}t(e.contexts[A.NODE]),t(e.contexts[A.DRAG])};ps.render=function(A){var e=this;A=A||iKA();var t=e.cy,r=A.forcedContext,i=A.drawAllLayers,u=A.drawOnlyNodeLayer,a=A.forcedZoom,n=A.forcedPan,o=A.forcedPxRatio===void 0?this.getPixelRatio():A.forcedPxRatio,s=e.data,l=s.canvasNeedsRedraw,g=e.textureOnViewport&&!r&&(e.pinching||e.hoverData.dragging||e.swipePanning||e.data.wheelZooming),C=A.motionBlur!==void 0?A.motionBlur:e.motionBlur,B=e.motionBlurPxRatio,E=t.hasCompoundNodes(),d=e.hoverData.draggingEles,I=e.hoverData.selecting||e.touchData.selecting?!0:!1;C=C&&!r&&e.motionBlurEnabled&&!I;var h=C;if(!r){if(e.prevPxRatio!==o)e.invalidateContainerClientCoordsCache(),e.matchCanvasSize(e.container),e.redrawHint("eles",!0),e.redrawHint("drag",!0);e.prevPxRatio=o}if(!r&&e.motionBlurTimeout)clearTimeout(e.motionBlurTimeout);if(C){if(e.mbFrames==null)e.mbFrames=0;if(e.mbFrames++,e.mbFrames<3)h=!1;if(e.mbFrames>e.minMbLowQualFrames)e.motionBlurPxRatio=e.mbPxRBlurry}if(e.clearingMotionBlur)e.motionBlurPxRatio=1;if(e.textureDrawLastFrame&&!g)l[e.NODE]=!0,l[e.SELECT_BOX]=!0;var Q=t.style(),p=t.zoom(),m=a!==void 0?a:p,f=t.pan(),D={x:f.x,y:f.y},w={zoom:p,pan:{x:f.x,y:f.y}},b=e.prevViewport,k=b===void 0||w.zoom!==b.zoom||w.pan.x!==b.pan.x||w.pan.y!==b.pan.y;if(!k&&!(d&&!E))e.motionBlurPxRatio=1;if(n)D=n;m*=o,D.x*=o,D.y*=o;var v=e.getCachedZSortedEles();function S(tA,lA,gA,aA,NA){var DA=tA.globalCompositeOperation;tA.globalCompositeOperation="destination-out",e.colorFillStyle(tA,255,255,255,e.motionBlurTransparency),tA.fillRect(lA,gA,aA,NA),tA.globalCompositeOperation=DA}function x(tA,lA){var gA,aA,NA,DA;if(!e.clearingMotionBlur&&(tA===s.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]||tA===s.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG]))gA={x:f.x*B,y:f.y*B},aA=p*B,NA=e.canvasWidth*B,DA=e.canvasHeight*B;else gA=D,aA=m,NA=e.canvasWidth,DA=e.canvasHeight;if(tA.setTransform(1,0,0,1,0,0),lA==="motionBlur")S(tA,0,0,NA,DA);else if(!r&&(lA===void 0||lA))tA.clearRect(0,0,NA,DA);if(!i)tA.translate(gA.x,gA.y),tA.scale(aA,aA);if(n)tA.translate(n.x,n.y);if(a)tA.scale(a,a)}if(!g)e.textureDrawLastFrame=!1;if(g){if(e.textureDrawLastFrame=!0,!e.textureCache){e.textureCache={},e.textureCache.bb=t.mutableElements().boundingBox(),e.textureCache.texture=e.data.bufferCanvases[e.TEXTURE_BUFFER];var F=e.data.bufferContexts[e.TEXTURE_BUFFER];F.setTransform(1,0,0,1,0,0),F.clearRect(0,0,e.canvasWidth*e.textureMult,e.canvasHeight*e.textureMult),e.render({forcedContext:F,drawOnlyNodeLayer:!0,forcedPxRatio:o*e.textureMult});var w=e.textureCache.viewport={zoom:t.zoom(),pan:t.pan(),width:e.canvasWidth,height:e.canvasHeight};w.mpan={x:(0-w.pan.x)/w.zoom,y:(0-w.pan.y)/w.zoom}}l[e.DRAG]=!1,l[e.NODE]=!1;var T=s.contexts[e.NODE],R=e.textureCache.texture,w=e.textureCache.viewport;if(T.setTransform(1,0,0,1,0,0),C)S(T,0,0,w.width,w.height);else T.clearRect(0,0,w.width,w.height);var L=Q.core("outside-texture-bg-color").value,M=Q.core("outside-texture-bg-opacity").value;e.colorFillStyle(T,L[0],L[1],L[2],M),T.fillRect(0,0,w.width,w.height);var p=t.zoom();x(T,!1),T.clearRect(w.mpan.x,w.mpan.y,w.width/w.zoom/o,w.height/w.zoom/o),T.drawImage(R,w.mpan.x,w.mpan.y,w.width/w.zoom/o,w.height/w.zoom/o)}else if(e.textureOnViewport&&!r)e.textureCache=null;var U=t.extent(),Y=e.pinching||e.hoverData.dragging||e.swipePanning||e.data.wheelZooming||e.hoverData.draggingEles||e.cy.animated(),H=e.hideEdgesOnViewport&&Y,J=[];if(J[e.NODE]=!l[e.NODE]&&C&&!e.clearedForMotionBlur[e.NODE]||e.clearingMotionBlur,J[e.NODE])e.clearedForMotionBlur[e.NODE]=!0;if(J[e.DRAG]=!l[e.DRAG]&&C&&!e.clearedForMotionBlur[e.DRAG]||e.clearingMotionBlur,J[e.DRAG])e.clearedForMotionBlur[e.DRAG]=!0;if(l[e.NODE]||i||u||J[e.NODE]){var K=C&&!J[e.NODE]&&B!==1,T=r||(K?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_NODE]:s.contexts[e.NODE]),O=C&&!K?"motionBlur":void 0;if(x(T,O),H)e.drawCachedNodes(T,v.nondrag,o,U);else e.drawLayeredElements(T,v.nondrag,o,U);if(e.debug)e.drawDebugPoints(T,v.nondrag);if(!i&&!C)l[e.NODE]=!1}if(!u&&(l[e.DRAG]||i||J[e.DRAG])){var K=C&&!J[e.DRAG]&&B!==1,T=r||(K?e.data.bufferContexts[e.MOTIONBLUR_BUFFER_DRAG]:s.contexts[e.DRAG]);if(x(T,C&&!K?"motionBlur":void 0),H)e.drawCachedNodes(T,v.drag,o,U);else e.drawCachedElements(T,v.drag,o,U);if(e.debug)e.drawDebugPoints(T,v.drag);if(!i&&!C)l[e.DRAG]=!1}if(this.drawSelectionRectangle(A,x),C&&B!==1){var P=s.contexts[e.NODE],z=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_NODE],AA=s.contexts[e.DRAG],W=e.data.bufferCanvases[e.MOTIONBLUR_BUFFER_DRAG],CA=function(lA,gA,aA){if(lA.setTransform(1,0,0,1,0,0),aA||!h)lA.clearRect(0,0,e.canvasWidth,e.canvasHeight);else S(lA,0,0,e.canvasWidth,e.canvasHeight);var NA=B;lA.drawImage(gA,0,0,e.canvasWidth*NA,e.canvasHeight*NA,0,0,e.canvasWidth,e.canvasHeight)};if(l[e.NODE]||J[e.NODE])CA(P,z,J[e.NODE]),l[e.NODE]=!1;if(l[e.DRAG]||J[e.DRAG])CA(AA,W,J[e.DRAG]),l[e.DRAG]=!1}if(e.prevViewport=w,e.clearingMotionBlur)e.clearingMotionBlur=!1,e.motionBlurCleared=!0,e.motionBlur=!0;if(C)e.motionBlurTimeout=setTimeout(function(){e.motionBlurTimeout=null,e.clearedForMotionBlur[e.NODE]=!1,e.clearedForMotionBlur[e.DRAG]=!1,e.motionBlur=!1,e.clearingMotionBlur=!g,e.mbFrames=0,l[e.NODE]=!0,l[e.DRAG]=!0,e.redraw()},c3t);if(!r)t.emit("render")};ps.drawSelectionRectangle=function(A,e){var t=this,{cy:r,data:i}=t,u=r.style(),{drawOnlyNodeLayer:a,drawAllLayers:n}=A,o=i.canvasNeedsRedraw,s=A.forcedContext;if(t.showFps||!a&&o[t.SELECT_BOX]&&!n){var l=s||i.contexts[t.SELECT_BOX];if(e(l),t.selection[4]==1&&(t.hoverData.selecting||t.touchData.selecting)){var g=t.cy.zoom(),C=u.core("selection-box-border-width").value/g;if(l.lineWidth=C,l.fillStyle="rgba("+u.core("selection-box-color").value[0]+","+u.core("selection-box-color").value[1]+","+u.core("selection-box-color").value[2]+","+u.core("selection-box-opacity").value+")",l.fillRect(t.selection[0],t.selection[1],t.selection[2]-t.selection[0],t.selection[3]-t.selection[1]),C>0)l.strokeStyle="rgba("+u.core("selection-box-border-color").value[0]+","+u.core("selection-box-border-color").value[1]+","+u.core("selection-box-border-color").value[2]+","+u.core("selection-box-opacity").value+")",l.strokeRect(t.selection[0],t.selection[1],t.selection[2]-t.selection[0],t.selection[3]-t.selection[1])}if(i.bgActivePosistion&&!t.hoverData.selecting){var g=t.cy.zoom(),B=i.bgActivePosistion;l.fillStyle="rgba("+u.core("active-bg-color").value[0]+","+u.core("active-bg-color").value[1]+","+u.core("active-bg-color").value[2]+","+u.core("active-bg-opacity").value+")",l.beginPath(),l.arc(B.x,B.y,u.core("active-bg-size").pfValue/g,0,2*Math.PI),l.fill()}var E=t.lastRedrawTime;if(t.showFps&&E){E=Math.round(E);var d=Math.round(1000/E),I="1 frame = "+E+" ms = "+d+" fps";if(l.setTransform(1,0,0,1,0,0),l.fillStyle="rgba(255, 0, 0, 0.75)",l.strokeStyle="rgba(255, 0, 0, 0.75)",l.font="30px Arial",!hk){var h=l.measureText(I);hk=h.actualBoundingBoxAscent}l.fillText(I,0,hk);var Q=60;l.strokeRect(0,hk+10,250,20),l.fillRect(0,hk+10,250*Math.min(d/Q,1),20)}if(!n)o[t.SELECT_BOX]=!1}};SHA=typeof Float32Array<"u"?Float32Array:Array;if(!Math.hypot)Math.hypot=function(){var A=0,e=arguments.length;while(e--)A+=arguments[e]*arguments[e];return Math.sqrt(A)};v3t=function(){function A(e,t,r,i){I4(this,A),this.debugID=Math.floor(Math.random()*1e4),this.r=e,this.texSize=t,this.texRows=r,this.texHeight=Math.floor(t/r),this.enableWrapping=!0,this.locked=!1,this.texture=null,this.needsBuffer=!0,this.freePointer={x:0,row:0},this.keyToLocation=new Map,this.canvas=i(e,t,t),this.scratch=i(e,t,this.texHeight,"scratch")}return h4(A,[{key:"lock",value:function(){this.locked=!0}},{key:"getKeys",value:function(){return new Set(this.keyToLocation.keys())}},{key:"getScale",value:function(t){var{w:r,h:i}=t,u=this.texHeight,a=this.texSize,n=u/i,o=r*n,s=i*n;if(o>a)n=a/r,o=r*n,s=i*n;return{scale:n,texW:o,texH:s}}},{key:"draw",value:function(t,r,i){var u=this;if(this.locked)throw Error("can't draw, atlas is locked");var a=this.texSize,n=this.texRows,o=this.texHeight,s=this.getScale(r),{scale:l,texW:g,texH:C}=s,B=function(p,m){if(i&&m){var f=m.context,{x:D,row:w}=p,b=D,k=o*w;f.save(),f.translate(b,k),f.scale(l,l),i(f,r),f.restore()}},E=[null,null],d=function(){if(B(u.freePointer,u.canvas),E[0]={x:u.freePointer.x,y:u.freePointer.row*o,w:g,h:C},E[1]={x:u.freePointer.x+g,y:u.freePointer.row*o,w:0,h:C},u.freePointer.x+=g,u.freePointer.x==a)u.freePointer.x=0,u.freePointer.row++},I=function(){var{scratch:p,canvas:m}=u;p.clear(),B({x:0,row:0},p);var f=a-u.freePointer.x,D=g-f,w=o;{var b=u.freePointer.x,k=u.freePointer.row*o,v=f;m.context.drawImage(p,0,0,v,w,b,k,v,w),E[0]={x:b,y:k,w:v,h:C}}{var S=f,x=(u.freePointer.row+1)*o,F=D;if(m)m.context.drawImage(p,S,0,F,w,0,x,F,w);E[1]={x:0,y:x,w:F,h:C}}u.freePointer.x=D,u.freePointer.row++},h=function(){u.freePointer.x=0,u.freePointer.row++};if(this.freePointer.x+g<=a)d();else if(this.freePointer.row>=n-1)return!1;else if(this.freePointer.x===a)h(),d();else if(this.enableWrapping)I();else h(),d();return this.keyToLocation.set(t,E),this.needsBuffer=!0,E}},{key:"getOffsets",value:function(t){return this.keyToLocation.get(t)}},{key:"isEmpty",value:function(){return this.freePointer.x===0&&this.freePointer.row===0}},{key:"canFit",value:function(t){if(this.locked)return!1;var r=this.texSize,i=this.texRows,u=this.getScale(t),a=u.texW;if(this.freePointer.x+a>r)return this.freePointer.row<i-1;return!0}},{key:"bufferIfNeeded",value:function(t){if(!this.texture)this.texture=p3t(t,this.debugID);if(this.needsBuffer){if(this.texture.buffer(this.canvas),this.needsBuffer=!1,this.locked)this.canvas=null,this.scratch=null}}},{key:"dispose",value:function(){if(this.texture)this.texture.deleteTexture(),this.texture=null;this.canvas=null,this.scratch=null,this.locked=!0}}])}(),k3t=function(){function A(e,t,r,i){I4(this,A),this.r=e,this.texSize=t,this.texRows=r,this.createTextureCanvas=i,this.atlases=[],this.styleKeyToAtlas=new Map,this.markedKeys=new Set}return h4(A,[{key:"getKeys",value:function(){return new Set(this.styleKeyToAtlas.keys())}},{key:"_createAtlas",value:function(){var t=this.r,r=this.texSize,i=this.texRows,u=this.createTextureCanvas;return new v3t(t,r,i,u)}},{key:"_getScratchCanvas",value:function(){if(!this.scratch){var t=this.r,r=this.texSize,i=this.texRows,u=this.createTextureCanvas,a=Math.floor(r/i);this.scratch=u(t,r,a,"scratch")}return this.scratch}},{key:"draw",value:function(t,r,i){var u=this.styleKeyToAtlas.get(t);if(!u){if(u=this.atlases[this.atlases.length-1],!u||!u.canFit(r)){if(u)u.lock();u=this._createAtlas(),this.atlases.push(u)}u.draw(t,r,i),this.styleKeyToAtlas.set(t,u)}return u}},{key:"getAtlas",value:function(t){return this.styleKeyToAtlas.get(t)}},{key:"hasAtlas",value:function(t){return this.styleKeyToAtlas.has(t)}},{key:"markKeyForGC",value:function(t){this.markedKeys.add(t)}},{key:"gc",value:function(){var t=this,r=this.markedKeys;if(r.size===0){console.log("nothing to garbage collect");return}var i=[],u=new Map,a=null,n=Bl(this.atlases),o;try{var s=function(){var g=o.value,C=g.getKeys(),B=F3t(r,C);if(B.size===0)return i.push(g),C.forEach(function(f){return u.set(f,g)}),1;if(!a)a=t._createAtlas(),i.push(a);var E=Bl(C),d;try{for(E.s();!(d=E.n()).done;){var I=d.value;if(!B.has(I)){var h=g.getOffsets(I),Q=Mn(h,2),p=Q[0],m=Q[1];if(!a.canFit({w:p.w+m.w,h:p.h}))a.lock(),a=t._createAtlas(),i.push(a);if(g.canvas)t._copyTextureToNewAtlas(I,g,a),u.set(I,a)}}}catch(f){E.e(f)}finally{E.f()}g.dispose()};for(n.s();!(o=n.n()).done;)if(s())continue}catch(l){n.e(l)}finally{n.f()}this.atlases=i,this.styleKeyToAtlas=u,this.markedKeys=new Set}},{key:"_copyTextureToNewAtlas",value:function(t,r,i){var u=r.getOffsets(t),a=Mn(u,2),n=a[0],o=a[1];if(o.w===0)i.draw(t,n,function(C){C.drawImage(r.canvas,n.x,n.y,n.w,n.h,0,0,n.w,n.h)});else{var s=this._getScratchCanvas();s.clear(),s.context.drawImage(r.canvas,n.x,n.y,n.w,n.h,0,0,n.w,n.h),s.context.drawImage(r.canvas,o.x,o.y,o.w,o.h,n.w,0,o.w,o.h);var l=n.w+o.w,g=n.h;i.draw(t,{w:l,h:g},function(C){C.drawImage(s,0,0,l,g,0,0,l,g)})}}},{key:"getCounts",value:function(){return{keyCount:this.styleKeyToAtlas.size,atlasCount:new Set(this.styleKeyToAtlas.values()).size}}}])}();x3t=function(){function A(e,t){I4(this,A),this.r=e,this.globalOptions=t,this.atlasSize=t.webglTexSize,this.maxAtlasesPerBatch=t.webglTexPerBatch,this.renderTypes=new Map,this.collections=new Map,this.typeAndIdToKey=new Map}return h4(A,[{key:"getAtlasSize",value:function(){return this.atlasSize}},{key:"addAtlasCollection",value:function(t,r){var i=this.globalOptions,{webglTexSize:u,createTextureCanvas:a}=i,n=r.texRows,o=this._cacheScratchCanvas(a),s=new k3t(this.r,u,n,o);this.collections.set(t,s)}},{key:"addRenderType",value:function(t,r){var i=r.collection;if(!this.collections.has(i))throw Error("invalid atlas collection name '".concat(i,"'"));var u=this.collections.get(i),a=dr({type:t,atlasCollection:u},r);this.renderTypes.set(t,a)}},{key:"getRenderTypeOpts",value:function(t){return this.renderTypes.get(t)}},{key:"getAtlasCollection",value:function(t){return this.collections.get(t)}},{key:"_cacheScratchCanvas",value:function(t){var r=-1,i=-1,u=null;return function(a,n,o,s){if(s){if(!u||n!=r||o!=i)r=n,i=o,u=t(a,n,o);return u}else return t(a,n,o)}}},{key:"_key",value:function(t,r){return"".concat(t,"-").concat(r)}},{key:"invalidate",value:function(t){var r=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},u=i.forceRedraw,a=u===void 0?!1:u,n=i.filterEle,o=n===void 0?function(){return!0}:n,s=i.filterType,l=s===void 0?function(){return!0}:s,g=!1,C=!1,B=Bl(t),E;try{for(B.s();!(E=B.n()).done;){var d=E.value;if(o(d)){var I=Bl(this.renderTypes.values()),h;try{var Q=function(){var m=h.value,f=m.type;if(l(f)){var D=r.collections.get(m.collection),w=m.getKey(d),b=Array.isArray(w)?w:[w];if(a)b.forEach(function(x){return D.markKeyForGC(x)}),C=!0;else{var k=m.getID?m.getID(d):d.id(),v=r._key(f,k),S=r.typeAndIdToKey.get(v);if(S!==void 0&&!h3t(b,S))g=!0,r.typeAndIdToKey.delete(v),S.forEach(function(x){return D.markKeyForGC(x)})}}};for(I.s();!(h=I.n()).done;)Q()}catch(p){I.e(p)}finally{I.f()}}}}catch(p){B.e(p)}finally{B.f()}if(C)this.gc(),g=!1;return g}},{key:"gc",value:function(){var t=Bl(this.collections.values()),r;try{for(t.s();!(r=t.n()).done;){var i=r.value;i.gc()}}catch(u){t.e(u)}finally{t.f()}}},{key:"getOrCreateAtlas",value:function(t,r,i,u){var a=this.renderTypes.get(r),n=this.collections.get(a.collection),o=!1,s=n.draw(u,i,function(C){if(a.drawClipped)C.save(),C.beginPath(),C.rect(0,0,i.w,i.h),C.clip(),a.drawElement(C,t,i,!0,!0),C.restore();else a.drawElement(C,t,i,!0,!0);o=!0});if(o){var l=a.getID?a.getID(t):t.id(),g=this._key(r,l);if(this.typeAndIdToKey.has(g))this.typeAndIdToKey.get(g).push(u);else this.typeAndIdToKey.set(g,[u])}return s}},{key:"getAtlasInfo",value:function(t,r){var i=this,u=this.renderTypes.get(r),a=u.getKey(t),n=Array.isArray(a)?a:[a];return n.map(function(o){var s=u.getBoundingBox(t,o),l=i.getOrCreateAtlas(t,r,s,o),g=l.getOffsets(o),C=Mn(g,2),B=C[0],E=C[1];return{atlas:l,tex:B,tex1:B,tex2:E,bb:s}})}},{key:"getDebugInfo",value:function(){var t=[],r=Bl(this.collections),i;try{for(r.s();!(i=r.n()).done;){var u=Mn(i.value,2),a=u[0],n=u[1],o=n.getCounts(),{keyCount:s,atlasCount:l}=o;t.push({type:a,keyCount:s,atlasCount:l})}}catch(g){r.e(g)}finally{r.f()}return t}}])}(),S3t=function(){function A(e){I4(this,A),this.globalOptions=e,this.atlasSize=e.webglTexSize,this.maxAtlasesPerBatch=e.webglTexPerBatch,this.batchAtlases=[]}return h4(A,[{key:"getMaxAtlasesPerBatch",value:function(){return this.maxAtlasesPerBatch}},{key:"getAtlasSize",value:function(){return this.atlasSize}},{key:"getIndexArray",value:function(){return Array.from({length:this.maxAtlasesPerBatch},function(t,r){return r})}},{key:"startBatch",value:function(){this.batchAtlases=[]}},{key:"getAtlasCount",value:function(){return this.batchAtlases.length}},{key:"getAtlases",value:function(){return this.batchAtlases}},{key:"canAddToCurrentBatch",value:function(t){if(this.batchAtlases.length===this.maxAtlasesPerBatch)return this.batchAtlases.includes(t);return!0}},{key:"getAtlasIndexForBatch",value:function(t){var r=this.batchAtlases.indexOf(t);if(r<0){if(this.batchAtlases.length===this.maxAtlasesPerBatch)throw Error("cannot add more atlases to batch");this.batchAtlases.push(t),r=this.batchAtlases.length-1}return r}}])}(),bk={SCREEN:{name:"screen",screen:!0},PICKING:{name:"picking",picking:!0}},GT={IGNORE:1,USE_BB:2},U3t=function(){function A(e,t,r){I4(this,A),this.r=e,this.gl=t,this.maxInstances=r.webglBatchSize,this.atlasSize=r.webglTexSize,this.bgColor=r.bgColor,this.debug=r.webglDebug,this.batchDebugInfo=[],r.enableWrapping=!0,r.createTextureCanvas=B3t,this.atlasManager=new x3t(e,r),this.batchManager=new S3t(r),this.simpleShapeOptions=new Map,this.program=this._createShaderProgram(bk.SCREEN),this.pickingProgram=this._createShaderProgram(bk.PICKING),this.vao=this._createVAO()}return h4(A,[{key:"addAtlasCollection",value:function(t,r){this.atlasManager.addAtlasCollection(t,r)}},{key:"addTextureAtlasRenderType",value:function(t,r){this.atlasManager.addRenderType(t,r)}},{key:"addSimpleShapeRenderType",value:function(t,r){this.simpleShapeOptions.set(t,r)}},{key:"invalidate",value:function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=r.type,u=this.atlasManager;if(i)return u.invalidate(t,{filterType:function(n){return n===i},forceRedraw:!0});else return u.invalidate(t)}},{key:"gc",value:function(){this.atlasManager.gc()}},{key:"_createShaderProgram",value:function(t){var r=this.gl,i=`#version 300 es
precision highp float;
uniform mat3 uPanZoomMatrix;
uniform int uAtlasSize;
// instanced
in vec2 aPosition; // a vertex from the unit square
in mat3 aTransform; // used to transform verticies, eg into a bounding box
in int aVertType; // the type of thing we are rendering
// the z-index that is output when using picking mode
in vec4 aIndex;
// For textures
in int aAtlasId; // which shader unit/atlas to use
in vec4 aTex; // x/y/w/h of texture in atlas
// for edges
in vec4 aPointAPointB;
in vec4 aPointCPointD;
in vec2 aLineWidth; // also used for node border width
// simple shapes
in vec4 aCornerRadius; // for round-rectangle [top-right, bottom-right, top-left, bottom-left]
in vec4 aColor; // also used for edges
in vec4 aBorderColor; // aLineWidth is used for border width
// output values passed to the fragment shader
out vec2 vTexCoord;
out vec4 vColor;
out vec2 vPosition;
// flat values are not interpolated
flat out int vAtlasId;
flat out int vVertType;
flat out vec2 vTopRight;
flat out vec2 vBotLeft;
flat out vec4 vCornerRadius;
flat out vec4 vBorderColor;
flat out vec2 vBorderWidth;
flat out vec4 vIndex;
void main(void) {
int vid = gl_VertexID;
vec2 position = aPosition; // TODO make this a vec3, simplifies some code below
if(aVertType == `.concat(juA,`) {
float texX = aTex.x; // texture coordinates
float texY = aTex.y;
float texW = aTex.z;
float texH = aTex.w;
if(vid == 1 || vid == 2 || vid == 4) {
texX += texW;
}
if(vid == 2 || vid == 4 || vid == 5) {
texY += texH;
}
float d = float(uAtlasSize);
vTexCoord = vec2(texX / d, texY / d); // tex coords must be between 0 and 1
gl_Position = vec4(uPanZoomMatrix * aTransform * vec3(position, 1.0), 1.0);
}
else if(aVertType == `).concat(Oy," || aVertType == ").concat(pk,`
|| aVertType == `).concat(gT," || aVertType == ").concat(Qk,`) { // simple shapes
// the bounding box is needed by the fragment shader
vBotLeft = (aTransform * vec3(0, 0, 1)).xy; // flat
vTopRight = (aTransform * vec3(1, 1, 1)).xy; // flat
vPosition = (aTransform * vec3(position, 1)).xy; // will be interpolated
// calculations are done in the fragment shader, just pass these along
vColor = aColor;
vCornerRadius = aCornerRadius;
vBorderColor = aBorderColor;
vBorderWidth = aLineWidth;
gl_Position = vec4(uPanZoomMatrix * aTransform * vec3(position, 1.0), 1.0);
}
else if(aVertType == `).concat(NHA,`) {
vec2 source = aPointAPointB.xy;
vec2 target = aPointAPointB.zw;
// adjust the geometry so that the line is centered on the edge
position.y = position.y - 0.5;
// stretch the unit square into a long skinny rectangle
vec2 xBasis = target - source;
vec2 yBasis = normalize(vec2(-xBasis.y, xBasis.x));
vec2 point = source + xBasis * position.x + yBasis * aLineWidth[0] * position.y;
gl_Position = vec4(uPanZoomMatrix * vec3(point, 1.0), 1.0);
vColor = aColor;
}
else if(aVertType == `).concat(GHA,`) {
vec2 pointA = aPointAPointB.xy;
vec2 pointB = aPointAPointB.zw;
vec2 pointC = aPointCPointD.xy;
vec2 pointD = aPointCPointD.zw;
// adjust the geometry so that the line is centered on the edge
position.y = position.y - 0.5;
vec2 p0, p1, p2, pos;
if(position.x == 0.0) { // The left side of the unit square
p0 = pointA;
p1 = pointB;
p2 = pointC;
pos = position;
} else { // The right side of the unit square, use same approach but flip the geometry upside down
p0 = pointD;
p1 = pointC;
p2 = pointB;
pos = vec2(0.0, -position.y);
}
vec2 p01 = p1 - p0;
vec2 p12 = p2 - p1;
vec2 p21 = p1 - p2;
// Find the normal vector.
vec2 tangent = normalize(normalize(p12) + normalize(p01));
vec2 normal = vec2(-tangent.y, tangent.x);
// Find the vector perpendicular to p0 -> p1.
vec2 p01Norm = normalize(vec2(-p01.y, p01.x));
// Determine the bend direction.
float sigma = sign(dot(p01 + p21, normal));
float width = aLineWidth[0];
if(sign(pos.y) == -sigma) {
// This is an intersecting vertex. Adjust the position so that there's no overlap.
vec2 point = 0.5 * width * normal * -sigma / dot(normal, p01Norm);
gl_Position = vec4(uPanZoomMatrix * vec3(p1 + point, 1.0), 1.0);
} else {
// This is a non-intersecting vertex. Treat it like a mitre join.
vec2 point = 0.5 * width * normal * sigma * dot(normal, p01Norm);
gl_Position = vec4(uPanZoomMatrix * vec3(p1 + point, 1.0), 1.0);
}
vColor = aColor;
}
else if(aVertType == `).concat(XuA,` && vid < 3) {
// massage the first triangle into an edge arrow
if(vid == 0)
position = vec2(-0.15, -0.3);
if(vid == 1)
position = vec2( 0.0, 0.0);
if(vid == 2)
position = vec2( 0.15, -0.3);
gl_Position = vec4(uPanZoomMatrix * aTransform * vec3(position, 1.0), 1.0);
vColor = aColor;
}
else {
gl_Position = vec4(2.0, 0.0, 0.0, 1.0); // discard vertex by putting it outside webgl clip space
}
vAtlasId = aAtlasId;
vVertType = aVertType;
vIndex = aIndex;
}
`),u=this.batchManager.getIndexArray(),a=`#version 300 es
precision highp float;
// declare texture unit for each texture atlas in the batch
`.concat(u.map(function(s){return"uniform sampler2D uTexture".concat(s,";")}).join(`
`),`
uniform vec4 uBGColor;
uniform float uZoom;
in vec2 vTexCoord;
in vec4 vColor;
in vec2 vPosition; // model coordinates
flat in int vAtlasId;
flat in vec4 vIndex;
flat in int vVertType;
flat in vec2 vTopRight;
flat in vec2 vBotLeft;
flat in vec4 vCornerRadius;
flat in vec4 vBorderColor;
flat in vec2 vBorderWidth;
out vec4 outColor;
`).concat(L3t,`
`).concat(R3t,`
`).concat(N3t,`
`).concat(G3t,`
vec4 blend(vec4 top, vec4 bot) { // blend colors with premultiplied alpha
return vec4(
top.rgb + (bot.rgb * (1.0 - top.a)),
top.a + (bot.a * (1.0 - top.a))
);
}
vec4 distInterp(vec4 cA, vec4 cB, float d) { // interpolate color using Signed Distance
// scale to the zoom level so that borders don't look blurry when zoomed in
// note 1.5 is an aribitrary value chosen because it looks good
return mix(cA, cB, 1.0 - smoothstep(0.0, 1.5 / uZoom, abs(d)));
}
void main(void) {
if(vVertType == `).concat(juA,`) {
// look up the texel from the texture unit
`).concat(u.map(function(s){return"if(vAtlasId == ".concat(s,") outColor = texture(uTexture").concat(s,", vTexCoord);")}).join(`
else `),`
}
else if(vVertType == `).concat(XuA,`) {
// mimics how canvas renderer uses context.globalCompositeOperation = 'destination-out';
outColor = blend(vColor, uBGColor);
outColor.a = 1.0; // make opaque, masks out line under arrow
}
else if(vVertType == `).concat(Oy,` && vBorderWidth == vec2(0.0)) { // simple rectangle with no border
outColor = vColor; // unit square is already transformed to the rectangle, nothing else needs to be done
}
else if(vVertType == `).concat(Oy," || vVertType == ").concat(pk,`
|| vVertType == `).concat(gT," || vVertType == ").concat(Qk,`) { // use SDF
float outerBorder = vBorderWidth[0];
float innerBorder = vBorderWidth[1];
float borderPadding = outerBorder * 2.0;
float w = vTopRight.x - vBotLeft.x - borderPadding;
float h = vTopRight.y - vBotLeft.y - borderPadding;
vec2 b = vec2(w/2.0, h/2.0); // half width, half height
vec2 p = vPosition - vec2(vTopRight.x - b[0] - outerBorder, vTopRight.y - b[1] - outerBorder); // translate to center
float d; // signed distance
if(vVertType == `).concat(Oy,`) {
d = rectangleSD(p, b);
} else if(vVertType == `).concat(pk,` && w == h) {
d = circleSD(p, b.x); // faster than ellipse
} else if(vVertType == `).concat(pk,`) {
d = ellipseSD(p, b);
} else {
d = roundRectangleSD(p, b, vCornerRadius.wzyx);
}
// use the distance to interpolate a color to smooth the edges of the shape, doesn't need multisampling
// we must smooth colors inwards, because we can't change pixels outside the shape's bounding box
if(d > 0.0) {
if(d > outerBorder) {
discard;
} else {
outColor = distInterp(vBorderColor, vec4(0), d - outerBorder);
}
} else {
if(d > innerBorder) {
vec4 outerColor = outerBorder == 0.0 ? vec4(0) : vBorderColor;
vec4 innerBorderColor = blend(vBorderColor, vColor);
outColor = distInterp(innerBorderColor, outerColor, d);
}
else {
vec4 outerColor;
if(innerBorder == 0.0 && outerBorder == 0.0) {
outerColor = vec4(0);
} else if(innerBorder == 0.0) {
outerColor = vBorderColor;
} else {
outerColor = blend(vBorderColor, vColor);
}
outColor = distInterp(vColor, outerColor, d - innerBorder);
}
}
}
else {
outColor = vColor;
}
`).concat(t.picking?`if(outColor.a == 0.0) discard;
else outColor = vIndex;`:"",`
}
`),n=C3t(r,i,a);n.aPosition=r.getAttribLocation(n,"aPosition"),n.aIndex=r.getAttribLocation(n,"aIndex"),n.aVertType=r.getAttribLocation(n,"aVertType"),n.aTransform=r.getAttribLocation(n,"aTransform"),n.aAtlasId=r.getAttribLocation(n,"aAtlasId"),n.aTex=r.getAttribLocation(n,"aTex"),n.aPointAPointB=r.getAttribLocation(n,"aPointAPointB"),n.aPointCPointD=r.getAttribLocation(n,"aPointCPointD"),n.aLineWidth=r.getAttribLocation(n,"aLineWidth"),n.aColor=r.getAttribLocation(n,"aColor"),n.aCornerRadius=r.getAttribLocation(n,"aCornerRadius"),n.aBorderColor=r.getAttribLocation(n,"aBorderColor"),n.uPanZoomMatrix=r.getUniformLocation(n,"uPanZoomMatrix"),n.uAtlasSize=r.getUniformLocation(n,"uAtlasSize"),n.uBGColor=r.getUniformLocation(n,"uBGColor"),n.uZoom=r.getUniformLocation(n,"uZoom"),n.uTextures=[];for(var o=0;o<this.batchManager.getMaxAtlasesPerBatch();o++)n.uTextures.push(r.getUniformLocation(n,"uTexture".concat(o)));return n}},{key:"_createVAO",value:function(){var t=[0,0,1,0,1,1,0,0,1,1,0,1];this.vertexCount=t.length/2;var r=this.maxInstances,i=this.gl,u=this.program,a=i.createVertexArray();return i.bindVertexArray(a),m3t(i,"vec2",u.aPosition,t),this.transformBuffer=D3t(i,r,u.aTransform),this.indexBuffer=IE(i,r,"vec4",u.aIndex),this.vertTypeBuffer=IE(i,r,"int",u.aVertType),this.atlasIdBuffer=IE(i,r,"int",u.aAtlasId),this.texBuffer=IE(i,r,"vec4",u.aTex),this.pointAPointBBuffer=IE(i,r,"vec4",u.aPointAPointB),this.pointCPointDBuffer=IE(i,r,"vec4",u.aPointCPointD),this.lineWidthBuffer=IE(i,r,"vec2",u.aLineWidth),this.colorBuffer=IE(i,r,"vec4",u.aColor),this.cornerRadiusBuffer=IE(i,r,"vec4",u.aCornerRadius),this.borderColorBuffer=IE(i,r,"vec4",u.aBorderColor),i.bindVertexArray(null),a}},{key:"buffers",get:function(){var t=this;if(!this._buffers)this._buffers=Object.keys(this).filter(function(r){return a4(r,"Buffer")}).map(function(r){return t[r]});return this._buffers}},{key:"startFrame",value:function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:bk.SCREEN;this.panZoomMatrix=t,this.renderTarget=r,this.batchDebugInfo=[],this.wrappedCount=0,this.simpleCount=0,this.startBatch()}},{key:"startBatch",value:function(){this.instanceCount=0,this.batchManager.startBatch()}},{key:"endFrame",value:function(){this.endBatch()}},{key:"_isVisible",value:function(t,r){if(t.visible()){if(r&&r.isVisible)return r.isVisible(t);return!0}return!1}},{key:"drawTexture",value:function(t,r,i){var u=this.atlasManager,a=this.batchManager,n=u.getRenderTypeOpts(i);if(!this._isVisible(t,n))return;if(t.isEdge()&&!this._isValidEdge(t))return;if(this.renderTarget.picking&&n.getTexPickingMode){var o=n.getTexPickingMode(t);if(o===GT.IGNORE)return;else if(o==GT.USE_BB){this.drawPickingRectangle(t,r,i);return}}var s=u.getAtlasInfo(t,i),l=Bl(s),g;try{for(l.s();!(g=l.n()).done;){var C=g.value,{atlas:B,tex1:E,tex2:d}=C;if(!a.canAddToCurrentBatch(B))this.endBatch();var I=a.getAtlasIndexForBatch(B);for(var h=0,Q=[[E,!0],[d,!1]];h<Q.length;h++){var p=Mn(Q[h],2),m=p[0],f=p[1];if(m.w!=0){var D=this.instanceCount;this.vertTypeBuffer.getView(D)[0]=juA;var w=this.indexBuffer.getView(D);Jy(r,w);var b=this.atlasIdBuffer.getView(D);b[0]=I;var k=this.texBuffer.getView(D);k[0]=m.x,k[1]=m.y,k[2]=m.w,k[3]=m.h;var v=this.transformBuffer.getMatrixView(D);if(this.setTransformMatrix(t,v,n,C,f),this.instanceCount++,!f)this.wrappedCount++;if(this.instanceCount>=this.maxInstances)this.endBatch()}}}}catch(S){l.e(S)}finally{l.f()}}},{key:"setTransformMatrix",value:function(t,r,i,u){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0,n=0;if(i.shapeProps&&i.shapeProps.padding)n=t.pstyle(i.shapeProps.padding).pfValue;if(u){var{bb:o,tex1:s,tex2:l}=u,g=s.w/(s.w+l.w);if(!a)g=1-g;var C=this._getAdjustedBB(o,n,a,g);this._applyTransformMatrix(r,C,i,t)}else{var B=i.getBoundingBox(t),E=this._getAdjustedBB(B,n,!0,1);this._applyTransformMatrix(r,E,i,t)}}},{key:"_applyTransformMatrix",value:function(t,r,i,u){var a,n;LHA(t);var o=i.getRotation?i.getRotation(u):0;if(o!==0){var s=i.getRotationPoint(u),{x:l,y:g}=s;mT(t,t,[l,g]),RHA(t,t,o);var C=i.getRotationOffset(u);a=C.x+(r.xOffset||0),n=C.y+(r.yOffset||0)}else a=r.x1,n=r.y1;mT(t,t,[a,n]),haA(t,t,[r.w,r.h])}},{key:"_getAdjustedBB",value:function(t,r,i,u){var{x1:a,y1:n,w:o,h:s,yOffset:l}=t;if(r)a-=r,n-=r,o+=2*r,s+=2*r;var g=0,C=o*u;if(i&&u<1)o=C;else if(!i&&u<1)g=o-C,a+=g,o=C;return{x1:a,y1:n,w:o,h:s,xOffset:g,yOffset:l}}},{key:"drawPickingRectangle",value:function(t,r,i){var u=this.atlasManager.getRenderTypeOpts(i),a=this.instanceCount;this.vertTypeBuffer.getView(a)[0]=Oy;var n=this.indexBuffer.getView(a);Jy(r,n);var o=this.colorBuffer.getView(a);Mf([0,0,0],1,o);var s=this.transformBuffer.getMatrixView(a);if(this.setTransformMatrix(t,s,u),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}},{key:"drawNode",value:function(t,r,i){var u=this.simpleShapeOptions.get(i);if(!this._isVisible(t,u))return;var a=u.shapeProps,n=this._getVertTypeForShape(t,a.shape);if(n===void 0||u.isSimple&&!u.isSimple(t,this.renderTarget)){this.drawTexture(t,r,i);return}var o=this.instanceCount;if(this.vertTypeBuffer.getView(o)[0]=n,n===gT||n===Qk){var s=u.getBoundingBox(t),l=this._getCornerRadius(t,a.radius,s),g=this.cornerRadiusBuffer.getView(o);if(g[0]=l,g[1]=l,g[2]=l,g[3]=l,n===Qk)g[0]=0,g[2]=0}var C=this.indexBuffer.getView(o);Jy(r,C);var B=this.renderTarget.picking?1:i==="node-body"?t.effectiveOpacity():1,E=this.renderTarget.picking?1:t.pstyle(a.opacity).value*B,d=t.pstyle(a.color).value,I=this.colorBuffer.getView(o);Mf(d,E,I);var h=this.lineWidthBuffer.getView(o);if(h[0]=0,h[1]=0,a.border){var Q=t.pstyle("border-width").value;if(Q>0){var p=t.pstyle("border-color").value,m=B*t.pstyle("border-opacity").value,f=this.borderColorBuffer.getView(o);Mf(p,m,f);var D=t.pstyle("border-position").value;if(D==="inside")h[0]=0,h[1]=-Q;else if(D==="outside")h[0]=Q,h[1]=0;else{var w=Q/2;h[0]=w,h[1]=-w}}}var b=this.transformBuffer.getMatrixView(o);if(this.setTransformMatrix(t,b,u),this.simpleCount++,this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}},{key:"_getVertTypeForShape",value:function(t,r){var i=t.pstyle(r).value;switch(i){case"rectangle":return Oy;case"ellipse":return pk;case"roundrectangle":case"round-rectangle":return gT;case"bottom-round-rectangle":return Qk;default:return}}},{key:"_getCornerRadius",value:function(t,r,i){var{w:u,h:a}=i;if(t.pstyle(r).value==="auto")return C4(u,a);else{var n=t.pstyle(r).pfValue,o=u/2,s=a/2;return Math.min(n,s,o)}}},{key:"drawEdgeArrow",value:function(t,r,i){if(!t.visible())return;var u=t._private.rscratch,a,n,o;if(i==="source")a=u.arrowStartX,n=u.arrowStartY,o=u.srcArrowAngle;else a=u.arrowEndX,n=u.arrowEndY,o=u.tgtArrowAngle;if(isNaN(a)||a==null||isNaN(n)||n==null||isNaN(o)||o==null)return;var s=t.pstyle(i+"-arrow-shape").value;if(s==="none")return;var l=t.pstyle(i+"-arrow-color").value,g=t.pstyle("opacity").value,C=t.pstyle("line-opacity").value,B=g*C,E=t.pstyle("width").pfValue,d=t.pstyle("arrow-scale").value,I=this.r.getArrowWidth(E,d),h=this.instanceCount,Q=this.transformBuffer.getMatrixView(h);LHA(Q),mT(Q,Q,[a,n]),haA(Q,Q,[I,I]),RHA(Q,Q,o),this.vertTypeBuffer.getView(h)[0]=XuA;var p=this.indexBuffer.getView(h);Jy(r,p);var m=this.colorBuffer.getView(h);if(Mf(l,B,m),this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}},{key:"drawEdgeLine",value:function(t,r){if(!t.visible())return;var i=this._getEdgePoints(t);if(!i)return;var u=t.pstyle("opacity").value,a=t.pstyle("line-opacity").value,n=t.pstyle("width").pfValue,o=t.pstyle("line-color").value,s=u*a;if(i.length/2+this.instanceCount>this.maxInstances)this.endBatch();if(i.length==4){var l=this.instanceCount;this.vertTypeBuffer.getView(l)[0]=NHA;var g=this.indexBuffer.getView(l);Jy(r,g);var C=this.colorBuffer.getView(l);Mf(o,s,C);var B=this.lineWidthBuffer.getView(l);B[0]=n;var E=this.pointAPointBBuffer.getView(l);if(E[0]=i[0],E[1]=i[1],E[2]=i[2],E[3]=i[3],this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}else for(var d=0;d<i.length-2;d+=2){var I=this.instanceCount;this.vertTypeBuffer.getView(I)[0]=GHA;var h=this.indexBuffer.getView(I);Jy(r,h);var Q=this.colorBuffer.getView(I);Mf(o,s,Q);var p=this.lineWidthBuffer.getView(I);p[0]=n;var m=i[d-2],f=i[d-1],D=i[d],w=i[d+1],b=i[d+2],k=i[d+3],v=i[d+4],S=i[d+5];if(d==0)m=2*D-b+0.001,f=2*w-k+0.001;if(d==i.length-4)v=2*b-D+0.001,S=2*k-w+0.001;var x=this.pointAPointBBuffer.getView(I);x[0]=m,x[1]=f,x[2]=D,x[3]=w;var F=this.pointCPointDBuffer.getView(I);if(F[0]=b,F[1]=k,F[2]=v,F[3]=S,this.instanceCount++,this.instanceCount>=this.maxInstances)this.endBatch()}}},{key:"_isValidEdge",value:function(t){var r=t._private.rscratch;if(r.badLine||r.allpts==null||isNaN(r.allpts[0]))return!1;return!0}},{key:"_getEdgePoints",value:function(t){var r=t._private.rscratch;if(!this._isValidEdge(t))return;var i=r.allpts;if(i.length==4)return i;var u=this._getNumSegments(t);return this._getCurveSegmentPoints(i,u)}},{key:"_getNumSegments",value:function(t){var r=15;return Math.min(Math.max(r,5),this.maxInstances)}},{key:"_getCurveSegmentPoints",value:function(t,r){if(t.length==4)return t;var i=Array((r+1)*2);for(var u=0;u<=r;u++)if(u==0)i[0]=t[0],i[1]=t[1];else if(u==r)i[u*2]=t[t.length-2],i[u*2+1]=t[t.length-1];else{var a=u/r;this._setCurvePoint(t,a,i,u*2)}return i}},{key:"_setCurvePoint",value:function(t,r,i,u){if(t.length<=2)i[u]=t[0],i[u+1]=t[1];else{var a=Array(t.length-2);for(var n=0;n<a.length;n+=2){var o=(1-r)*t[n]+r*t[n+2],s=(1-r)*t[n+1]+r*t[n+3];a[n]=o,a[n+1]=s}return this._setCurvePoint(a,r,i,u)}}},{key:"endBatch",value:function(){var t=this.gl,r=this.vao,i=this.vertexCount,u=this.instanceCount;if(u===0)return;var a=this.renderTarget.picking?this.pickingProgram:this.program;t.useProgram(a),t.bindVertexArray(r);var n=Bl(this.buffers),o;try{for(n.s();!(o=n.n()).done;){var s=o.value;s.bufferSubData(u)}}catch(E){n.e(E)}finally{n.f()}var l=this.batchManager.getAtlases();for(var g=0;g<l.length;g++)l[g].bufferIfNeeded(t);for(var C=0;C<l.length;C++)t.activeTexture(t.TEXTURE0+C),t.bindTexture(t.TEXTURE_2D,l[C].texture),t.uniform1i(a.uTextures[C],C);t.uniform1f(a.uZoom,E3t(this.r)),t.uniformMatrix3fv(a.uPanZoomMatrix,!1,this.panZoomMatrix),t.uniform1i(a.uAtlasSize,this.batchManager.getAtlasSize());var B=Mf(this.bgColor,1);if(t.uniform4fv(a.uBGColor,B),t.drawArraysInstanced(t.TRIANGLES,0,i,u),t.bindVertexArray(null),t.bindTexture(t.TEXTURE_2D,null),this.debug)this.batchDebugInfo.push({count:u,atlasCount:l.length});this.startBatch()}},{key:"getDebugInfo",value:function(){var t=this.atlasManager.getDebugInfo(),r=t.reduce(function(a,n){return a+n.atlasCount},0),i=this.batchDebugInfo,u=i.reduce(function(a,n){return a+n.count},0);return{atlasInfo:t,totalAtlases:r,wrappedCount:this.wrappedCount,simpleCount:this.simpleCount,batchCount:i.length,batchInfo:i,totalInstances:u}}}])}(),fJA={};fJA.initWebgl=function(A,e){var t=this,r=t.data.contexts[t.WEBGL];A.bgColor=M3t(t),A.webglTexSize=Math.min(A.webglTexSize,r.getParameter(r.MAX_TEXTURE_SIZE)),A.webglTexRows=Math.min(A.webglTexRows,54),A.webglTexRowsNodes=Math.min(A.webglTexRowsNodes,54),A.webglBatchSize=Math.min(A.webglBatchSize,16384),A.webglTexPerBatch=Math.min(A.webglTexPerBatch,r.getParameter(r.MAX_TEXTURE_IMAGE_UNITS)),t.webglDebug=A.webglDebug,t.webglDebugShowAtlases=A.webglDebugShowAtlases,t.pickingFrameBuffer=y3t(r),t.pickingFrameBuffer.needsDraw=!0,t.drawing=new U3t(t,r,A);var i=function(g){return function(C){return t.getTextAngle(C,g)}},u=function(g){return function(C){var B=C.pstyle(g);return B&&B.value}},a=function(g){return function(C){return C.pstyle("".concat(g,"-opacity")).value>0}},n=function(g){var C=g.pstyle("text-events").strValue==="yes";return C?GT.USE_BB:GT.IGNORE},o=function(g){var C=g.position(),{x:B,y:E}=C,d=g.outerWidth(),I=g.outerHeight();return{w:d,h:I,x1:B-d/2,y1:E-I/2}};t.drawing.addAtlasCollection("node",{texRows:A.webglTexRowsNodes}),t.drawing.addAtlasCollection("label",{texRows:A.webglTexRows}),t.drawing.addTextureAtlasRenderType("node-body",{collection:"node",getKey:e.getStyleKey,getBoundingBox:e.getElementBox,drawElement:e.drawElement}),t.drawing.addSimpleShapeRenderType("node-body",{getBoundingBox:o,isSimple:I3t,shapeProps:{shape:"shape",color:"background-color",opacity:"background-opacity",radius:"corner-radius",border:!0}}),t.drawing.addSimpleShapeRenderType("node-overlay",{getBoundingBox:o,isVisible:a("overlay"),shapeProps:{shape:"overlay-shape",color:"overlay-color",opacity:"overlay-opacity",padding:"overlay-padding",radius:"overlay-corner-radius"}}),t.drawing.addSimpleShapeRenderType("node-underlay",{getBoundingBox:o,isVisible:a("underlay"),shapeProps:{shape:"underlay-shape",color:"underlay-color",opacity:"underlay-opacity",padding:"underlay-padding",radius:"underlay-corner-radius"}}),t.drawing.addTextureAtlasRenderType("label",{collection:"label",getTexPickingMode:n,getKey:$uA(e.getLabelKey,null),getBoundingBox:AaA(e.getLabelBox,null),drawClipped:!0,drawElement:e.drawLabel,getRotation:i(null),getRotationPoint:e.getLabelRotationPoint,getRotationOffset:e.getLabelRotationOffset,isVisible:u("label")}),t.drawing.addTextureAtlasRenderType("edge-source-label",{collection:"label",getTexPickingMode:n,getKey:$uA(e.getSourceLabelKey,"source"),getBoundingBox:AaA(e.getSourceLabelBox,"source"),drawClipped:!0,drawElement:e.drawSourceLabel,getRotation:i("source"),getRotationPoint:e.getSourceLabelRotationPoint,getRotationOffset:e.getSourceLabelRotationOffset,isVisible:u("source-label")}),t.drawing.addTextureAtlasRenderType("edge-target-label",{collection:"label",getTexPickingMode:n,getKey:$uA(e.getTargetLabelKey,"target"),getBoundingBox:AaA(e.getTargetLabelBox,"target"),drawClipped:!0,drawElement:e.drawTargetLabel,getRotation:i("target"),getRotationPoint:e.getTargetLabelRotationPoint,getRotationOffset:e.getTargetLabelRotationOffset,isVisible:u("target-label")});var s=Jk(function(){console.log("garbage collect flag set"),t.data.gc=!0},1e4);t.onUpdateEleCalcs(function(l,g){var C=!1;if(g&&g.length>0)C|=t.drawing.invalidate(g);if(C)s()}),T3t(t)};f4={};f4.drawPolygonPath=function(A,e,t,r,i,u){var a=r/2,n=i/2;if(A.beginPath)A.beginPath();A.moveTo(e+a*u[0],t+n*u[1]);for(var o=1;o<u.length/2;o++)A.lineTo(e+a*u[o*2],t+n*u[o*2+1]);A.closePath()};f4.drawRoundPolygonPath=function(A,e,t,r,i,u,a){a.forEach(function(n){return iJA(A,n)}),A.closePath()};f4.drawRoundRectanglePath=function(A,e,t,r,i,u){var a=r/2,n=i/2,o=u==="auto"?C4(r,i):Math.min(u,n,a);if(A.beginPath)A.beginPath();A.moveTo(e,t-n),A.arcTo(e+a,t-n,e+a,t,o),A.arcTo(e+a,t+n,e,t+n,o),A.arcTo(e-a,t+n,e-a,t,o),A.arcTo(e-a,t-n,e,t-n,o),A.lineTo(e,t-n),A.closePath()};f4.drawBottomRoundRectanglePath=function(A,e,t,r,i,u){var a=r/2,n=i/2,o=u==="auto"?C4(r,i):u;if(A.beginPath)A.beginPath();A.moveTo(e,t-n),A.lineTo(e+a,t-n),A.lineTo(e+a,t),A.arcTo(e+a,t+n,e,t+n,o),A.arcTo(e-a,t+n,e-a,t,o),A.lineTo(e-a,t-n),A.lineTo(e,t-n),A.closePath()};f4.drawCutRectanglePath=function(A,e,t,r,i,u,a){var n=r/2,o=i/2,s=a==="auto"?LaA():a;if(A.beginPath)A.beginPath();A.moveTo(e-n+s,t-o),A.lineTo(e+n-s,t-o),A.lineTo(e+n,t-o+s),A.lineTo(e+n,t+o-s),A.lineTo(e+n-s,t+o),A.lineTo(e-n+s,t+o),A.lineTo(e-n,t+o-s),A.lineTo(e-n,t-o+s),A.closePath()};f4.drawBarrelPath=function(A,e,t,r,i){var u=r/2,a=i/2,n=e-u,o=e+u,s=t-a,l=t+a,g=iaA(r,i),{widthOffset:C,heightOffset:B}=g,E=g.ctrlPtOffsetPct*C;if(A.beginPath)A.beginPath();A.moveTo(n,s+B),A.lineTo(n,l-B),A.quadraticCurveTo(n+E,l,n+C,l),A.lineTo(o-C,l),A.quadraticCurveTo(o-E,l,o,l-B),A.lineTo(o,s+B),A.quadraticCurveTo(o-E,s,o-C,s),A.lineTo(n+C,s),A.quadraticCurveTo(n+E,s,n,s+B),A.closePath()};UHA=Math.sin(0),MHA=Math.cos(0),QaA={},paA={},wJA=Math.PI/40;for(i4=0*Math.PI;i4<2*Math.PI;i4+=wJA)QaA[i4]=Math.sin(i4),paA[i4]=Math.cos(i4);f4.drawEllipsePath=function(A,e,t,r,i){if(A.beginPath)A.beginPath();if(A.ellipse)A.ellipse(e,t,r/2,i/2,0,0,2*Math.PI);else{var u,a,n=r/2,o=i/2;for(var s=0*Math.PI;s<2*Math.PI;s+=wJA)if(u=e-n*QaA[s]*UHA+n*paA[s]*MHA,a=t+o*paA[s]*UHA+o*QaA[s]*MHA,s===0)A.moveTo(u,a);else A.lineTo(u,a)}A.closePath()};zk={};zk.createBuffer=function(A,e){var t=document.createElement("canvas");return t.width=A,t.height=e,[t,t.getContext("2d")]};zk.bufferCanvasImage=function(A){var e=this.cy,t=e.mutableElements(),r=t.boundingBox(),i=this.findContainerClientCoords(),u=A.full?Math.ceil(r.w):i[2],a=A.full?Math.ceil(r.h):i[3],n=ht(A.maxWidth)||ht(A.maxHeight),o=this.getPixelRatio(),s=1;if(A.scale!==void 0)u*=A.scale,a*=A.scale,s=A.scale;else if(n){var l=1/0,g=1/0;if(ht(A.maxWidth))l=s*A.maxWidth/u;if(ht(A.maxHeight))g=s*A.maxHeight/a;s=Math.min(l,g),u*=s,a*=s}if(!n)u*=o,a*=o,s*=o;var C=document.createElement("canvas");C.width=u,C.height=a,C.style.width=u+"px",C.style.height=a+"px";var B=C.getContext("2d");if(u>0&&a>0){B.clearRect(0,0,u,a),B.globalCompositeOperation="source-over";var E=this.getCachedZSortedEles();if(A.full)B.translate(-r.x1*s,-r.y1*s),B.scale(s,s),this.drawElements(B,E),B.scale(1/s,1/s),B.translate(r.x1*s,r.y1*s);else{var d=e.pan(),I={x:d.x*s,y:d.y*s};s*=e.zoom(),B.translate(I.x,I.y),B.scale(s,s),this.drawElements(B,E),B.scale(1/s,1/s),B.translate(-I.x,-I.y)}if(A.bg)B.globalCompositeOperation="destination-over",B.fillStyle=A.bg,B.rect(0,0,u,a),B.fill()}return C};zk.png=function(A){return bJA(A,this.bufferCanvasImage(A),"image/png")};zk.jpg=function(A){return bJA(A,this.bufferCanvasImage(A),"image/jpeg")};vJA={};vJA.nodeShapeImpl=function(A,e,t,r,i,u,a,n){switch(A){case"ellipse":return this.drawEllipsePath(e,t,r,i,u);case"polygon":return this.drawPolygonPath(e,t,r,i,u,a);case"round-polygon":return this.drawRoundPolygonPath(e,t,r,i,u,a,n);case"roundrectangle":case"round-rectangle":return this.drawRoundRectanglePath(e,t,r,i,u,n);case"cutrectangle":case"cut-rectangle":return this.drawCutRectanglePath(e,t,r,i,u,a,n);case"bottomroundrectangle":case"bottom-round-rectangle":return this.drawBottomRoundRectanglePath(e,t,r,i,u,n);case"barrel":return this.drawBarrelPath(e,t,r,i,u)}};z3t=kJA,oi=kJA.prototype;oi.CANVAS_LAYERS=3;oi.SELECT_BOX=0;oi.DRAG=1;oi.NODE=2;oi.WEBGL=3;oi.CANVAS_TYPES=["2d","2d","2d","webgl2"];oi.BUFFER_COUNT=3;oi.TEXTURE_BUFFER=0;oi.MOTIONBLUR_BUFFER_NODE=1;oi.MOTIONBLUR_BUFFER_DRAG=2;oi.redrawHint=function(A,e){var t=this;switch(A){case"eles":t.data.canvasNeedsRedraw[oi.NODE]=e;break;case"drag":t.data.canvasNeedsRedraw[oi.DRAG]=e;break;case"select":t.data.canvasNeedsRedraw[oi.SELECT_BOX]=e;break;case"gc":t.data.gc=!0;break}};Z3t=typeof Path2D<"u";oi.path2dEnabled=function(A){if(A===void 0)return this.pathsEnabled;this.pathsEnabled=A?!0:!1};oi.usePaths=function(){return Z3t&&this.pathsEnabled};oi.setImgSmoothing=function(A,e){if(A.imageSmoothingEnabled!=null)A.imageSmoothingEnabled=e;else A.webkitImageSmoothingEnabled=e,A.mozImageSmoothingEnabled=e,A.msImageSmoothingEnabled=e};oi.getImgSmoothing=function(A){if(A.imageSmoothingEnabled!=null)return A.imageSmoothingEnabled;else return A.webkitImageSmoothingEnabled||A.mozImageSmoothingEnabled||A.msImageSmoothingEnabled};oi.makeOffscreenCanvas=function(A,e){var t;if((typeof OffscreenCanvas>"u"?"undefined":oo(OffscreenCanvas))!=="undefined")t=new OffscreenCanvas(A,e);else{var r=this.cy.window(),i=r.document;t=i.createElement("canvas"),t.width=A,t.height=e}return t};[dJA,DE,kI,_aA,Zf,p4,ps,fJA,f4,zk,vJA].forEach(function(A){dr(oi,A)});V3t=[{name:"null",impl:eJA},{name:"base",impl:cJA},{name:"canvas",impl:z3t}],j3t=[{type:"layout",extensions:pft},{type:"renderer",extensions:V3t}],FJA={},xJA={};Gk.prototype.extension=faA;j3t.forEach(function(A){A.extensions.forEach(function(e){SJA(A.type,e.name,e.impl)})});qf=UT.prototype;qf.instanceString=function(){return"stylesheet"};qf.selector=function(A){var e=this.length++;return this[e]={selector:A,properties:[]},this};qf.css=function(A,e){var t=this.length-1;if(tr(A))this[t].properties.push({name:A,value:e});else if(Hi(A)){var r=A,i=Object.keys(r);for(var u=0;u<i.length;u++){var a=i[u],n=r[a];if(n==null)continue;var o=To.properties[a]||To.properties[MT(a)];if(o==null)continue;var s=o.name,l=n;this[t].properties.push({name:s,value:l})}}return this};qf.style=qf.css;qf.generateStyle=function(A){var e=new To(A);return this.appendToStyle(e)};qf.appendToStyle=function(A){for(var e=0;e<this.length;e++){var t=this[e],{selector:r,properties:i}=t;A.selector(r);for(var u=0;u<i.length;u++){var a=i[u];A.css(a.name,a.value)}}return A};uc.use=function(A){var e=Array.prototype.slice.call(arguments,1);return e.unshift(uc),A.apply(null,e),this};uc.warnings=function(A){return tKA(A)};uc.version=Amt;uc.stylesheet=uc.Stylesheet=UT});var ZaA=wu(function(Zk,zaA){(function(e,t){if(typeof Zk==="object"&&typeof zaA==="object")zaA.exports=t();else if(typeof define==="function"&&define.amd)define([],t);else if(typeof Zk==="object")Zk.layoutBase=t();else e.layoutBase=t()})(Zk,function(){return function(A){var e={};function t(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return A[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}return t.m=A,t.c=e,t.i=function(r){return r},t.d=function(r,i,u){if(!t.o(r,i))Object.defineProperty(r,i,{configurable:!1,enumerable:!0,get:u})},t.n=function(r){var i=r&&r.__esModule?function(){return r.default}:function(){return r};return t.d(i,"a",i),i},t.o=function(r,i){return Object.prototype.hasOwnProperty.call(r,i)},t.p="",t(t.s=26)}([function(A,e,t){function r(){}r.QUALITY=1,r.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,r.DEFAULT_INCREMENTAL=!1,r.DEFAULT_ANIMATION_ON_LAYOUT=!0,r.DEFAULT_ANIMATION_DURING_LAYOUT=!1,r.DEFAULT_ANIMATION_PERIOD=50,r.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,r.DEFAULT_GRAPH_MARGIN=15,r.NODE_DIMENSIONS_INCLUDE_LABELS=!1,r.SIMPLE_NODE_SIZE=40,r.SIMPLE_NODE_HALF_SIZE=r.SIMPLE_NODE_SIZE/2,r.EMPTY_COMPOUND_NODE_SIZE=40,r.MIN_EDGE_LENGTH=1,r.WORLD_BOUNDARY=1e6,r.INITIAL_WORLD_BOUNDARY=r.WORLD_BOUNDARY/1000,r.WORLD_CENTER_X=1200,r.WORLD_CENTER_Y=900,A.exports=r},function(A,e,t){var r=t(2),i=t(8),u=t(9);function a(o,s,l){r.call(this,l),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=l,this.bendpoints=[],this.source=o,this.target=s}a.prototype=Object.create(r.prototype);for(var n in r)a[n]=r[n];a.prototype.getSource=function(){return this.source},a.prototype.getTarget=function(){return this.target},a.prototype.isInterGraph=function(){return this.isInterGraph},a.prototype.getLength=function(){return this.length},a.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},a.prototype.getBendpoints=function(){return this.bendpoints},a.prototype.getLca=function(){return this.lca},a.prototype.getSourceInLca=function(){return this.sourceInLca},a.prototype.getTargetInLca=function(){return this.targetInLca},a.prototype.getOtherEnd=function(o){if(this.source===o)return this.target;else if(this.target===o)return this.source;else throw"Node is not incident with this edge"},a.prototype.getOtherEndInGraph=function(o,s){var l=this.getOtherEnd(o),g=s.getGraphManager().getRoot();while(!0){if(l.getOwner()==s)return l;if(l.getOwner()==g)break;l=l.getOwner().getParent()}return null},a.prototype.updateLength=function(){var o=[,,,,];if(this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),o),!this.isOverlapingSourceAndTarget){if(this.lengthX=o[0]-o[2],this.lengthY=o[1]-o[3],Math.abs(this.lengthX)<1)this.lengthX=u.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=u.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)}},a.prototype.updateLengthSimple=function(){if(this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1)this.lengthX=u.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=u.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},A.exports=a},function(A,e,t){function r(i){this.vGraphObject=i}A.exports=r},function(A,e,t){var r=t(2),i=t(10),u=t(13),a=t(0),n=t(16),o=t(4);function s(g,C,B,E){if(B==null&&E==null)E=C;if(r.call(this,E),g.graphManager!=null)g=g.graphManager;if(this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=E,this.edges=[],this.graphManager=g,B!=null&&C!=null)this.rect=new u(C.x,C.y,B.width,B.height);else this.rect=new u}s.prototype=Object.create(r.prototype);for(var l in r)s[l]=r[l];s.prototype.getEdges=function(){return this.edges},s.prototype.getChild=function(){return this.child},s.prototype.getOwner=function(){return this.owner},s.prototype.getWidth=function(){return this.rect.width},s.prototype.setWidth=function(g){this.rect.width=g},s.prototype.getHeight=function(){return this.rect.height},s.prototype.setHeight=function(g){this.rect.height=g},s.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},s.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},s.prototype.getCenter=function(){return new o(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},s.prototype.getLocation=function(){return new o(this.rect.x,this.rect.y)},s.prototype.getRect=function(){return this.rect},s.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},s.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},s.prototype.setRect=function(g,C){this.rect.x=g.x,this.rect.y=g.y,this.rect.width=C.width,this.rect.height=C.height},s.prototype.setCenter=function(g,C){this.rect.x=g-this.rect.width/2,this.rect.y=C-this.rect.height/2},s.prototype.setLocation=function(g,C){this.rect.x=g,this.rect.y=C},s.prototype.moveBy=function(g,C){this.rect.x+=g,this.rect.y+=C},s.prototype.getEdgeListToNode=function(g){var C=[],B,E=this;return E.edges.forEach(function(d){if(d.target==g){if(d.source!=E)throw"Incorrect edge source!";C.push(d)}}),C},s.prototype.getEdgesBetween=function(g){var C=[],B,E=this;return E.edges.forEach(function(d){if(!(d.source==E||d.target==E))throw"Incorrect edge source and/or target";if(d.target==g||d.source==g)C.push(d)}),C},s.prototype.getNeighborsList=function(){var g=new Set,C=this;return C.edges.forEach(function(B){if(B.source==C)g.add(B.target);else{if(B.target!=C)throw"Incorrect incidency!";g.add(B.source)}}),g},s.prototype.withChildren=function(){var g=new Set,C,B;if(g.add(this),this.child!=null){var E=this.child.getNodes();for(var d=0;d<E.length;d++)C=E[d],B=C.withChildren(),B.forEach(function(I){g.add(I)})}return g},s.prototype.getNoOfChildren=function(){var g=0,C;if(this.child==null)g=1;else{var B=this.child.getNodes();for(var E=0;E<B.length;E++)C=B[E],g+=C.getNoOfChildren()}if(g==0)g=1;return g},s.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},s.prototype.calcEstimatedSize=function(){if(this.child==null)return this.estimatedSize=(this.rect.width+this.rect.height)/2;else return this.estimatedSize=this.child.calcEstimatedSize(),this.rect.width=this.estimatedSize,this.rect.height=this.estimatedSize,this.estimatedSize},s.prototype.scatter=function(){var g,C,B=-a.INITIAL_WORLD_BOUNDARY,E=a.INITIAL_WORLD_BOUNDARY;g=a.WORLD_CENTER_X+n.nextDouble()*(E-B)+B;var d=-a.INITIAL_WORLD_BOUNDARY,I=a.INITIAL_WORLD_BOUNDARY;C=a.WORLD_CENTER_Y+n.nextDouble()*(I-d)+d,this.rect.x=g,this.rect.y=C},s.prototype.updateBounds=function(){if(this.getChild()==null)throw"assert failed";if(this.getChild().getNodes().length!=0){var g=this.getChild();if(g.updateBounds(!0),this.rect.x=g.getLeft(),this.rect.y=g.getTop(),this.setWidth(g.getRight()-g.getLeft()),this.setHeight(g.getBottom()-g.getTop()),a.NODE_DIMENSIONS_INCLUDE_LABELS){var C=g.getRight()-g.getLeft(),B=g.getBottom()-g.getTop();if(this.labelWidth>C)this.rect.x-=(this.labelWidth-C)/2,this.setWidth(this.labelWidth);if(this.labelHeight>B){if(this.labelPos=="center")this.rect.y-=(this.labelHeight-B)/2;else if(this.labelPos=="top")this.rect.y-=this.labelHeight-B;this.setHeight(this.labelHeight)}}}},s.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},s.prototype.transform=function(g){var C=this.rect.x;if(C>a.WORLD_BOUNDARY)C=a.WORLD_BOUNDARY;else if(C<-a.WORLD_BOUNDARY)C=-a.WORLD_BOUNDARY;var B=this.rect.y;if(B>a.WORLD_BOUNDARY)B=a.WORLD_BOUNDARY;else if(B<-a.WORLD_BOUNDARY)B=-a.WORLD_BOUNDARY;var E=new o(C,B),d=g.inverseTransformPoint(E);this.setLocation(d.x,d.y)},s.prototype.getLeft=function(){return this.rect.x},s.prototype.getRight=function(){return this.rect.x+this.rect.width},s.prototype.getTop=function(){return this.rect.y},s.prototype.getBottom=function(){return this.rect.y+this.rect.height},s.prototype.getParent=function(){if(this.owner==null)return null;return this.owner.getParent()},A.exports=s},function(A,e,t){function r(i,u){if(i==null&&u==null)this.x=0,this.y=0;else this.x=i,this.y=u}r.prototype.getX=function(){return this.x},r.prototype.getY=function(){return this.y},r.prototype.setX=function(i){this.x=i},r.prototype.setY=function(i){this.y=i},r.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},r.prototype.getCopy=function(){return new r(this.x,this.y)},r.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},A.exports=r},function(A,e,t){var r=t(2),i=t(10),u=t(0),a=t(6),n=t(3),o=t(1),s=t(13),l=t(12),g=t(11);function C(E,d,I){if(r.call(this,I),this.estimatedSize=i.MIN_VALUE,this.margin=u.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=E,d!=null&&d instanceof a)this.graphManager=d;else if(d!=null&&d instanceof Layout)this.graphManager=d.graphManager}C.prototype=Object.create(r.prototype);for(var B in r)C[B]=r[B];C.prototype.getNodes=function(){return this.nodes},C.prototype.getEdges=function(){return this.edges},C.prototype.getGraphManager=function(){return this.graphManager},C.prototype.getParent=function(){return this.parent},C.prototype.getLeft=function(){return this.left},C.prototype.getRight=function(){return this.right},C.prototype.getTop=function(){return this.top},C.prototype.getBottom=function(){return this.bottom},C.prototype.isConnected=function(){return this.isConnected},C.prototype.add=function(E,d,I){if(d==null&&I==null){var h=E;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(h)>-1)throw"Node already in graph!";return h.owner=this,this.getNodes().push(h),h}else{var Q=E;if(!(this.getNodes().indexOf(d)>-1&&this.getNodes().indexOf(I)>-1))throw"Source or target not in graph!";if(!(d.owner==I.owner&&d.owner==this))throw"Both owners must be this graph!";if(d.owner!=I.owner)return null;if(Q.source=d,Q.target=I,Q.isInterGraph=!1,this.getEdges().push(Q),d.edges.push(Q),I!=d)I.edges.push(Q);return Q}},C.prototype.remove=function(E){var d=E;if(E instanceof n){if(d==null)throw"Node is null!";if(!(d.owner!=null&&d.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";var I=d.edges.slice(),h,Q=I.length;for(var p=0;p<Q;p++)if(h=I[p],h.isInterGraph)this.graphManager.remove(h);else h.source.owner.remove(h);var m=this.nodes.indexOf(d);if(m==-1)throw"Node not in owner node list!";this.nodes.splice(m,1)}else if(E instanceof o){var h=E;if(h==null)throw"Edge is null!";if(!(h.source!=null&&h.target!=null))throw"Source and/or target is null!";if(!(h.source.owner!=null&&h.target.owner!=null&&h.source.owner==this&&h.target.owner==this))throw"Source and/or target owner is invalid!";var f=h.source.edges.indexOf(h),D=h.target.edges.indexOf(h);if(!(f>-1&&D>-1))throw"Source and/or target doesn't know this edge!";if(h.source.edges.splice(f,1),h.target!=h.source)h.target.edges.splice(D,1);var m=h.source.owner.getEdges().indexOf(h);if(m==-1)throw"Not in owner's edge list!";h.source.owner.getEdges().splice(m,1)}},C.prototype.updateLeftTop=function(){var{MAX_VALUE:E,MAX_VALUE:d}=i,I,h,Q,p=this.getNodes(),m=p.length;for(var f=0;f<m;f++){var D=p[f];if(I=D.getTop(),h=D.getLeft(),E>I)E=I;if(d>h)d=h}if(E==i.MAX_VALUE)return null;if(p[0].getParent().paddingLeft!=null)Q=p[0].getParent().paddingLeft;else Q=this.margin;return this.left=d-Q,this.top=E-Q,new l(this.left,this.top)},C.prototype.updateBounds=function(E){var d=i.MAX_VALUE,I=-i.MAX_VALUE,h=i.MAX_VALUE,Q=-i.MAX_VALUE,p,m,f,D,w,b=this.nodes,k=b.length;for(var v=0;v<k;v++){var S=b[v];if(E&&S.child!=null)S.updateBounds();if(p=S.getLeft(),m=S.getRight(),f=S.getTop(),D=S.getBottom(),d>p)d=p;if(I<m)I=m;if(h>f)h=f;if(Q<D)Q=D}var x=new s(d,h,I-d,Q-h);if(d==i.MAX_VALUE)this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom();if(b[0].getParent().paddingLeft!=null)w=b[0].getParent().paddingLeft;else w=this.margin;this.left=x.x-w,this.right=x.x+x.width+w,this.top=x.y-w,this.bottom=x.y+x.height+w},C.calculateBounds=function(E){var d=i.MAX_VALUE,I=-i.MAX_VALUE,h=i.MAX_VALUE,Q=-i.MAX_VALUE,p,m,f,D,w=E.length;for(var b=0;b<w;b++){var k=E[b];if(p=k.getLeft(),m=k.getRight(),f=k.getTop(),D=k.getBottom(),d>p)d=p;if(I<m)I=m;if(h>f)h=f;if(Q<D)Q=D}var v=new s(d,h,I-d,Q-h);return v},C.prototype.getInclusionTreeDepth=function(){if(this==this.graphManager.getRoot())return 1;else return this.parent.getInclusionTreeDepth()},C.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},C.prototype.calcEstimatedSize=function(){var E=0,d=this.nodes,I=d.length;for(var h=0;h<I;h++){var Q=d[h];E+=Q.calcEstimatedSize()}if(E==0)this.estimatedSize=u.EMPTY_COMPOUND_NODE_SIZE;else this.estimatedSize=E/Math.sqrt(this.nodes.length);return this.estimatedSize},C.prototype.updateConnected=function(){var E=this;if(this.nodes.length==0){this.isConnected=!0;return}var d=new g,I=new Set,h=this.nodes[0],Q,p,m=h.withChildren();m.forEach(function(v){d.push(v),I.add(v)});while(d.length!==0){h=d.shift(),Q=h.getEdges();var f=Q.length;for(var D=0;D<f;D++){var w=Q[D];if(p=w.getOtherEndInGraph(h,this),p!=null&&!I.has(p)){var b=p.withChildren();b.forEach(function(v){d.push(v),I.add(v)})}}}if(this.isConnected=!1,I.size>=this.nodes.length){var k=0;if(I.forEach(function(v){if(v.owner==E)k++}),k==this.nodes.length)this.isConnected=!0}},A.exports=C},function(A,e,t){var r,i=t(1);function u(a){r=t(5),this.layout=a,this.graphs=[],this.edges=[]}u.prototype.addRoot=function(){var a=this.layout.newGraph(),n=this.layout.newNode(null),o=this.add(a,n);return this.setRootGraph(o),this.rootGraph},u.prototype.add=function(a,n,o,s,l){if(o==null&&s==null&&l==null){if(a==null)throw"Graph is null!";if(n==null)throw"Parent node is null!";if(this.graphs.indexOf(a)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(a),a.parent!=null)throw"Already has a parent!";if(n.child!=null)throw"Already has a child!";return a.parent=n,n.child=a,a}else{l=o,s=n,o=a;var g=s.getOwner(),C=l.getOwner();if(!(g!=null&&g.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(C!=null&&C.getGraphManager()==this))throw"Target not in this graph mgr!";if(g==C)return o.isInterGraph=!1,g.add(o,s,l);else{if(o.isInterGraph=!0,o.source=s,o.target=l,this.edges.indexOf(o)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(o),!(o.source!=null&&o.target!=null))throw"Edge source and/or target is null!";if(!(o.source.edges.indexOf(o)==-1&&o.target.edges.indexOf(o)==-1))throw"Edge already in source and/or target incidency list!";return o.source.edges.push(o),o.target.edges.push(o),o}}},u.prototype.remove=function(a){if(a instanceof r){var n=a;if(n.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(n==this.rootGraph||n.parent!=null&&n.parent.graphManager==this))throw"Invalid parent node!";var o=[];o=o.concat(n.getEdges());var s,l=o.length;for(var g=0;g<l;g++)s=o[g],n.remove(s);var C=[];C=C.concat(n.getNodes());var B;l=C.length;for(var g=0;g<l;g++)B=C[g],n.remove(B);if(n==this.rootGraph)this.setRootGraph(null);var E=this.graphs.indexOf(n);this.graphs.splice(E,1),n.parent=null}else if(a instanceof i){if(s=a,s==null)throw"Edge is null!";if(!s.isInterGraph)throw"Not an inter-graph edge!";if(!(s.source!=null&&s.target!=null))throw"Source and/or target is null!";if(!(s.source.edges.indexOf(s)!=-1&&s.target.edges.indexOf(s)!=-1))throw"Source and/or target doesn't know this edge!";var E=s.source.edges.indexOf(s);if(s.source.edges.splice(E,1),E=s.target.edges.indexOf(s),s.target.edges.splice(E,1),!(s.source.owner!=null&&s.source.owner.getGraphManager()!=null))throw"Edge owner graph or owner graph manager is null!";if(s.source.owner.getGraphManager().edges.indexOf(s)==-1)throw"Not in owner graph manager's edge list!";var E=s.source.owner.getGraphManager().edges.indexOf(s);s.source.owner.getGraphManager().edges.splice(E,1)}},u.prototype.updateBounds=function(){this.rootGraph.updateBounds(!0)},u.prototype.getGraphs=function(){return this.graphs},u.prototype.getAllNodes=function(){if(this.allNodes==null){var a=[],n=this.getGraphs(),o=n.length;for(var s=0;s<o;s++)a=a.concat(n[s].getNodes());this.allNodes=a}return this.allNodes},u.prototype.resetAllNodes=function(){this.allNodes=null},u.prototype.resetAllEdges=function(){this.allEdges=null},u.prototype.resetAllNodesToApplyGravitation=function(){this.allNodesToApplyGravitation=null},u.prototype.getAllEdges=function(){if(this.allEdges==null){var a=[],n=this.getGraphs(),o=n.length;for(var s=0;s<n.length;s++)a=a.concat(n[s].getEdges());a=a.concat(this.edges),this.allEdges=a}return this.allEdges},u.prototype.getAllNodesToApplyGravitation=function(){return this.allNodesToApplyGravitation},u.prototype.setAllNodesToApplyGravitation=function(a){if(this.allNodesToApplyGravitation!=null)throw"assert failed";this.allNodesToApplyGravitation=a},u.prototype.getRoot=function(){return this.rootGraph},u.prototype.setRootGraph=function(a){if(a.getGraphManager()!=this)throw"Root not in this graph mgr!";if(this.rootGraph=a,a.parent==null)a.parent=this.layout.newNode("Root node")},u.prototype.getLayout=function(){return this.layout},u.prototype.isOneAncestorOfOther=function(a,n){if(!(a!=null&&n!=null))throw"assert failed";if(a==n)return!0;var o=a.getOwner(),s;do{if(s=o.getParent(),s==null)break;if(s==n)return!0;if(o=s.getOwner(),o==null)break}while(!0);o=n.getOwner();do{if(s=o.getParent(),s==null)break;if(s==a)return!0;if(o=s.getOwner(),o==null)break}while(!0);return!1},u.prototype.calcLowestCommonAncestors=function(){var a,n,o,s,l,g=this.getAllEdges(),C=g.length;for(var B=0;B<C;B++){if(a=g[B],n=a.source,o=a.target,a.lca=null,a.sourceInLca=n,a.targetInLca=o,n==o){a.lca=n.getOwner();continue}s=n.getOwner();while(a.lca==null){a.targetInLca=o,l=o.getOwner();while(a.lca==null){if(l==s){a.lca=l;break}if(l==this.rootGraph)break;if(a.lca!=null)throw"assert failed";a.targetInLca=l.getParent(),l=a.targetInLca.getOwner()}if(s==this.rootGraph)break;if(a.lca==null)a.sourceInLca=s.getParent(),s=a.sourceInLca.getOwner()}if(a.lca==null)throw"assert failed"}},u.prototype.calcLowestCommonAncestor=function(a,n){if(a==n)return a.getOwner();var o=a.getOwner();do{if(o==null)break;var s=n.getOwner();do{if(s==null)break;if(s==o)return s;s=s.getParent().getOwner()}while(!0);o=o.getParent().getOwner()}while(!0);return o},u.prototype.calcInclusionTreeDepths=function(a,n){if(a==null&&n==null)a=this.rootGraph,n=1;var o,s=a.getNodes(),l=s.length;for(var g=0;g<l;g++)if(o=s[g],o.inclusionTreeDepth=n,o.child!=null)this.calcInclusionTreeDepths(o.child,n+1)},u.prototype.includesInvalidEdge=function(){var a,n=this.edges.length;for(var o=0;o<n;o++)if(a=this.edges[o],this.isOneAncestorOfOther(a.source,a.target))return!0;return!1},A.exports=u},function(A,e,t){var r=t(0);function i(){}for(var u in r)i[u]=r[u];i.MAX_ITERATIONS=2500,i.DEFAULT_EDGE_LENGTH=50,i.DEFAULT_SPRING_STRENGTH=0.45,i.DEFAULT_REPULSION_STRENGTH=4500,i.DEFAULT_GRAVITY_STRENGTH=0.4,i.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,i.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,i.DEFAULT_COOLING_FACTOR_INCREMENTAL=0.3,i.COOLING_ADAPTATION_FACTOR=0.33,i.ADAPTATION_LOWER_NODE_LIMIT=1000,i.ADAPTATION_UPPER_NODE_LIMIT=5000,i.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,i.MAX_NODE_DISPLACEMENT=i.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,i.MIN_REPULSION_DIST=i.DEFAULT_EDGE_LENGTH/10,i.CONVERGENCE_CHECK_PERIOD=100,i.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=0.1,i.MIN_EDGE_LENGTH=1,i.GRID_CALCULATION_CHECK_PERIOD=10,A.exports=i},function(A,e,t){var r=t(12);function i(){}i.calcSeparationAmount=function(u,a,n,o){if(!u.intersects(a))throw"assert failed";var s=[,,];if(this.decideDirectionsForOverlappingNodes(u,a,s),n[0]=Math.min(u.getRight(),a.getRight())-Math.max(u.x,a.x),n[1]=Math.min(u.getBottom(),a.getBottom())-Math.max(u.y,a.y),u.getX()<=a.getX()&&u.getRight()>=a.getRight())n[0]+=Math.min(a.getX()-u.getX(),u.getRight()-a.getRight());else if(a.getX()<=u.getX()&&a.getRight()>=u.getRight())n[0]+=Math.min(u.getX()-a.getX(),a.getRight()-u.getRight());if(u.getY()<=a.getY()&&u.getBottom()>=a.getBottom())n[1]+=Math.min(a.getY()-u.getY(),u.getBottom()-a.getBottom());else if(a.getY()<=u.getY()&&a.getBottom()>=u.getBottom())n[1]+=Math.min(u.getY()-a.getY(),a.getBottom()-u.getBottom());var l=Math.abs((a.getCenterY()-u.getCenterY())/(a.getCenterX()-u.getCenterX()));if(a.getCenterY()===u.getCenterY()&&a.getCenterX()===u.getCenterX())l=1;var g=l*n[0],C=n[1]/l;if(n[0]<C)C=n[0];else g=n[1];n[0]=-1*s[0]*(C/2+o),n[1]=-1*s[1]*(g/2+o)},i.decideDirectionsForOverlappingNodes=function(u,a,n){if(u.getCenterX()<a.getCenterX())n[0]=-1;else n[0]=1;if(u.getCenterY()<a.getCenterY())n[1]=-1;else n[1]=1},i.getIntersection2=function(u,a,n){var o=u.getCenterX(),s=u.getCenterY(),l=a.getCenterX(),g=a.getCenterY();if(u.intersects(a))return n[0]=o,n[1]=s,n[2]=l,n[3]=g,!0;var C=u.getX(),B=u.getY(),E=u.getRight(),d=u.getX(),I=u.getBottom(),h=u.getRight(),Q=u.getWidthHalf(),p=u.getHeightHalf(),m=a.getX(),f=a.getY(),D=a.getRight(),w=a.getX(),b=a.getBottom(),k=a.getRight(),v=a.getWidthHalf(),S=a.getHeightHalf(),x=!1,F=!1;if(o===l){if(s>g)return n[0]=o,n[1]=B,n[2]=l,n[3]=b,!1;else if(s<g)return n[0]=o,n[1]=I,n[2]=l,n[3]=f,!1}else if(s===g){if(o>l)return n[0]=C,n[1]=s,n[2]=D,n[3]=g,!1;else if(o<l)return n[0]=E,n[1]=s,n[2]=m,n[3]=g,!1}else{var T=u.height/u.width,R=a.height/a.width,L=(g-s)/(l-o),M=void 0,U=void 0,Y=void 0,H=void 0,J=void 0,K=void 0;if(-T===L)if(o>l)n[0]=d,n[1]=I,x=!0;else n[0]=E,n[1]=B,x=!0;else if(T===L)if(o>l)n[0]=C,n[1]=B,x=!0;else n[0]=h,n[1]=I,x=!0;if(-R===L)if(l>o)n[2]=w,n[3]=b,F=!0;else n[2]=D,n[3]=f,F=!0;else if(R===L)if(l>o)n[2]=m,n[3]=f,F=!0;else n[2]=k,n[3]=b,F=!0;if(x&&F)return!1;if(o>l)if(s>g)M=this.getCardinalDirection(T,L,4),U=this.getCardinalDirection(R,L,2);else M=this.getCardinalDirection(-T,L,3),U=this.getCardinalDirection(-R,L,1);else if(s>g)M=this.getCardinalDirection(-T,L,1),U=this.getCardinalDirection(-R,L,3);else M=this.getCardinalDirection(T,L,2),U=this.getCardinalDirection(R,L,4);if(!x)switch(M){case 1:H=B,Y=o+-p/L,n[0]=Y,n[1]=H;break;case 2:Y=h,H=s+Q*L,n[0]=Y,n[1]=H;break;case 3:H=I,Y=o+p/L,n[0]=Y,n[1]=H;break;case 4:Y=d,H=s+-Q*L,n[0]=Y,n[1]=H;break}if(!F)switch(U){case 1:K=f,J=l+-S/L,n[2]=J,n[3]=K;break;case 2:J=k,K=g+v*L,n[2]=J,n[3]=K;break;case 3:K=b,J=l+S/L,n[2]=J,n[3]=K;break;case 4:J=w,K=g+-v*L,n[2]=J,n[3]=K;break}}return!1},i.getCardinalDirection=function(u,a,n){if(u>a)return n;else return 1+n%4},i.getIntersection=function(u,a,n,o){if(o==null)return this.getIntersection2(u,a,n);var{x:s,y:l}=u,{x:g,y:C}=a,{x:B,y:E}=n,{x:d,y:I}=o,h=void 0,Q=void 0,p=void 0,m=void 0,f=void 0,D=void 0,w=void 0,b=void 0,k=void 0;if(p=C-l,f=s-g,w=g*l-s*C,m=I-E,D=B-d,b=d*E-B*I,k=p*D-m*f,k===0)return null;return h=(f*b-D*w)/k,Q=(m*w-p*b)/k,new r(h,Q)},i.angleOfVector=function(u,a,n,o){var s=void 0;if(u!==n){if(s=Math.atan((o-a)/(n-u)),n<u)s+=Math.PI;else if(o<a)s+=this.TWO_PI}else if(o<a)s=this.ONE_AND_HALF_PI;else s=this.HALF_PI;return s},i.doIntersect=function(u,a,n,o){var{x:s,y:l}=u,{x:g,y:C}=a,{x:B,y:E}=n,{x:d,y:I}=o,h=(g-s)*(I-E)-(d-B)*(C-l);if(h===0)return!1;else{var Q=((I-E)*(d-s)+(B-d)*(I-l))/h,p=((l-C)*(d-s)+(g-s)*(I-l))/h;return 0<Q&&Q<1&&0<p&&p<1}},i.HALF_PI=0.5*Math.PI,i.ONE_AND_HALF_PI=1.5*Math.PI,i.TWO_PI=2*Math.PI,i.THREE_PI=3*Math.PI,A.exports=i},function(A,e,t){function r(){}r.sign=function(i){if(i>0)return 1;else if(i<0)return-1;else return 0},r.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},r.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},A.exports=r},function(A,e,t){function r(){}r.MAX_VALUE=2147483647,r.MIN_VALUE=-2147483648,A.exports=r},function(A,e,t){var r=function(){function s(l,g){for(var C=0;C<g.length;C++){var B=g[C];if(B.enumerable=B.enumerable||!1,B.configurable=!0,"value"in B)B.writable=!0;Object.defineProperty(l,B.key,B)}}return function(l,g,C){if(g)s(l.prototype,g);if(C)s(l,C);return l}}();function i(s,l){if(!(s instanceof l))throw TypeError("Cannot call a class as a function")}var u=function(l){return{value:l,next:null,prev:null}},a=function(l,g,C,B){if(l!==null)l.next=g;else B.head=g;if(C!==null)C.prev=g;else B.tail=g;return g.prev=l,g.next=C,B.length++,g},n=function(l,g){var{prev:C,next:B}=l;if(C!==null)C.next=B;else g.head=B;if(B!==null)B.prev=C;else g.tail=C;return l.prev=l.next=null,g.length--,l},o=function(){function s(l){var g=this;if(i(this,s),this.length=0,this.head=null,this.tail=null,l!=null)l.forEach(function(C){return g.push(C)})}return r(s,[{key:"size",value:function(){return this.length}},{key:"insertBefore",value:function(g,C){return a(C.prev,u(g),C,this)}},{key:"insertAfter",value:function(g,C){return a(C,u(g),C.next,this)}},{key:"insertNodeBefore",value:function(g,C){return a(C.prev,g,C,this)}},{key:"insertNodeAfter",value:function(g,C){return a(C,g,C.next,this)}},{key:"push",value:function(g){return a(this.tail,u(g),null,this)}},{key:"unshift",value:function(g){return a(null,u(g),this.head,this)}},{key:"remove",value:function(g){return n(g,this)}},{key:"pop",value:function(){return n(this.tail,this).value}},{key:"popNode",value:function(){return n(this.tail,this)}},{key:"shift",value:function(){return n(this.head,this).value}},{key:"shiftNode",value:function(){return n(this.head,this)}},{key:"get_object_at",value:function(g){if(g<=this.length()){var C=1,B=this.head;while(C<g)B=B.next,C++;return B.value}}},{key:"set_object_at",value:function(g,C){if(g<=this.length()){var B=1,E=this.head;while(B<g)E=E.next,B++;E.value=C}}}]),s}();A.exports=o},function(A,e,t){function r(i,u,a){if(this.x=null,this.y=null,i==null&&u==null&&a==null)this.x=0,this.y=0;else if(typeof i=="number"&&typeof u=="number"&&a==null)this.x=i,this.y=u;else if(i.constructor.name=="Point"&&u==null&&a==null)a=i,this.x=a.x,this.y=a.y}r.prototype.getX=function(){return this.x},r.prototype.getY=function(){return this.y},r.prototype.getLocation=function(){return new r(this.x,this.y)},r.prototype.setLocation=function(i,u,a){if(i.constructor.name=="Point"&&u==null&&a==null)a=i,this.setLocation(a.x,a.y);else if(typeof i=="number"&&typeof u=="number"&&a==null)if(parseInt(i)==i&&parseInt(u)==u)this.move(i,u);else this.x=Math.floor(i+0.5),this.y=Math.floor(u+0.5)},r.prototype.move=function(i,u){this.x=i,this.y=u},r.prototype.translate=function(i,u){this.x+=i,this.y+=u},r.prototype.equals=function(i){if(i.constructor.name=="Point"){var u=i;return this.x==u.x&&this.y==u.y}return this==i},r.prototype.toString=function(){return new r().constructor.name+"[x="+this.x+",y="+this.y+"]"},A.exports=r},function(A,e,t){function r(i,u,a,n){if(this.x=0,this.y=0,this.width=0,this.height=0,i!=null&&u!=null&&a!=null&&n!=null)this.x=i,this.y=u,this.width=a,this.height=n}r.prototype.getX=function(){return this.x},r.prototype.setX=function(i){this.x=i},r.prototype.getY=function(){return this.y},r.prototype.setY=function(i){this.y=i},r.prototype.getWidth=function(){return this.width},r.prototype.setWidth=function(i){this.width=i},r.prototype.getHeight=function(){return this.height},r.prototype.setHeight=function(i){this.height=i},r.prototype.getRight=function(){return this.x+this.width},r.prototype.getBottom=function(){return this.y+this.height},r.prototype.intersects=function(i){if(this.getRight()<i.x)return!1;if(this.getBottom()<i.y)return!1;if(i.getRight()<this.x)return!1;if(i.getBottom()<this.y)return!1;return!0},r.prototype.getCenterX=function(){return this.x+this.width/2},r.prototype.getMinX=function(){return this.getX()},r.prototype.getMaxX=function(){return this.getX()+this.width},r.prototype.getCenterY=function(){return this.y+this.height/2},r.prototype.getMinY=function(){return this.getY()},r.prototype.getMaxY=function(){return this.getY()+this.height},r.prototype.getWidthHalf=function(){return this.width/2},r.prototype.getHeightHalf=function(){return this.height/2},A.exports=r},function(A,e,t){var r=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(u){return typeof u}:function(u){return u&&typeof Symbol==="function"&&u.constructor===Symbol&&u!==Symbol.prototype?"symbol":typeof u};function i(){}i.lastID=0,i.createID=function(u){if(i.isPrimitive(u))return u;if(u.uniqueID!=null)return u.uniqueID;return u.uniqueID=i.getString(),i.lastID++,u.uniqueID},i.getString=function(u){if(u==null)u=i.lastID;return"Object#"+u},i.isPrimitive=function(u){var a=typeof u>"u"?"undefined":r(u);return u==null||a!="object"&&a!="function"},A.exports=i},function(A,e,t){function r(B){if(Array.isArray(B)){for(var E=0,d=Array(B.length);E<B.length;E++)d[E]=B[E];return d}else return Array.from(B)}var i=t(0),u=t(6),a=t(3),n=t(1),o=t(5),s=t(4),l=t(17),g=t(27);function C(B){if(g.call(this),this.layoutQuality=i.QUALITY,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.incremental=i.DEFAULT_INCREMENTAL,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES,this.edgeToDummyNodes=new Map,this.graphManager=new u(this),this.isLayoutFinished=!1,this.isSubLayout=!1,this.isRemoteUse=!1,B!=null)this.isRemoteUse=B}C.RANDOM_SEED=1,C.prototype=Object.create(g.prototype),C.prototype.getGraphManager=function(){return this.graphManager},C.prototype.getAllNodes=function(){return this.graphManager.getAllNodes()},C.prototype.getAllEdges=function(){return this.graphManager.getAllEdges()},C.prototype.getAllNodesToApplyGravitation=function(){return this.graphManager.getAllNodesToApplyGravitation()},C.prototype.newGraphManager=function(){var B=new u(this);return this.graphManager=B,B},C.prototype.newGraph=function(B){return new o(null,this.graphManager,B)},C.prototype.newNode=function(B){return new a(this.graphManager,B)},C.prototype.newEdge=function(B){return new n(null,null,B)},C.prototype.checkLayoutSuccess=function(){return this.graphManager.getRoot()==null||this.graphManager.getRoot().getNodes().length==0||this.graphManager.includesInvalidEdge()},C.prototype.runLayout=function(){if(this.isLayoutFinished=!1,this.tilingPreLayout)this.tilingPreLayout();this.initParameters();var B;if(this.checkLayoutSuccess())B=!1;else B=this.layout();if(i.ANIMATE==="during")return!1;if(B){if(!this.isSubLayout)this.doPostLayout()}if(this.tilingPostLayout)this.tilingPostLayout();return this.isLayoutFinished=!0,B},C.prototype.doPostLayout=function(){if(!this.incremental)this.transform();this.update()},C.prototype.update2=function(){if(this.createBendsAsNeeded)this.createBendpointsFromDummyNodes(),this.graphManager.resetAllEdges();if(!this.isRemoteUse){var B,E=this.graphManager.getAllEdges();for(var d=0;d<E.length;d++)B=E[d];var I,h=this.graphManager.getRoot().getNodes();for(var d=0;d<h.length;d++)I=h[d];this.update(this.graphManager.getRoot())}},C.prototype.update=function(B){if(B==null)this.update2();else if(B instanceof a){var E=B;if(E.getChild()!=null){var d=E.getChild().getNodes();for(var I=0;I<d.length;I++)update(d[I])}if(E.vGraphObject!=null){var h=E.vGraphObject;h.update(E)}}else if(B instanceof n){var Q=B;if(Q.vGraphObject!=null){var p=Q.vGraphObject;p.update(Q)}}else if(B instanceof o){var m=B;if(m.vGraphObject!=null){var f=m.vGraphObject;f.update(m)}}},C.prototype.initParameters=function(){if(!this.isSubLayout)this.layoutQuality=i.QUALITY,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.incremental=i.DEFAULT_INCREMENTAL,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES;if(this.animationDuringLayout)this.animationOnLayout=!1},C.prototype.transform=function(B){if(B==null)this.transform(new s(0,0));else{var E=new l,d=this.graphManager.getRoot().updateLeftTop();if(d!=null){E.setWorldOrgX(B.x),E.setWorldOrgY(B.y),E.setDeviceOrgX(d.x),E.setDeviceOrgY(d.y);var I=this.getAllNodes(),h;for(var Q=0;Q<I.length;Q++)h=I[Q],h.transform(E)}}},C.prototype.positionNodesRandomly=function(B){if(B==null)this.positionNodesRandomly(this.getGraphManager().getRoot()),this.getGraphManager().getRoot().updateBounds(!0);else{var E,d,I=B.getNodes();for(var h=0;h<I.length;h++)if(E=I[h],d=E.getChild(),d==null)E.scatter();else if(d.getNodes().length==0)E.scatter();else this.positionNodesRandomly(d),E.updateBounds()}},C.prototype.getFlatForest=function(){var B=[],E=!0,d=this.graphManager.getRoot().getNodes(),I=!0;for(var h=0;h<d.length;h++)if(d[h].getChild()!=null)I=!1;if(!I)return B;var Q=new Set,p=[],m=new Map,f=[];f=f.concat(d);while(f.length>0&&E){p.push(f[0]);while(p.length>0&&E){var D=p[0];p.splice(0,1),Q.add(D);var w=D.getEdges();for(var h=0;h<w.length;h++){var b=w[h].getOtherEnd(D);if(m.get(D)!=b)if(!Q.has(b))p.push(b),m.set(b,D);else{E=!1;break}}}if(!E)B=[];else{var k=[].concat(r(Q));B.push(k);for(var h=0;h<k.length;h++){var v=k[h],S=f.indexOf(v);if(S>-1)f.splice(S,1)}Q=new Set,m=new Map}}return B},C.prototype.createDummyNodesForBendpoints=function(B){var E=[],d=B.source,I=this.graphManager.calcLowestCommonAncestor(B.source,B.target);for(var h=0;h<B.bendpoints.length;h++){var Q=this.newNode(null);Q.setRect(new Point(0,0),new Dimension(1,1)),I.add(Q);var p=this.newEdge(null);this.graphManager.add(p,d,Q),E.add(Q),d=Q}var p=this.newEdge(null);if(this.graphManager.add(p,d,B.target),this.edgeToDummyNodes.set(B,E),B.isInterGraph())this.graphManager.remove(B);else I.remove(B);return E},C.prototype.createBendpointsFromDummyNodes=function(){var B=[];B=B.concat(this.graphManager.getAllEdges()),B=[].concat(r(this.edgeToDummyNodes.keys())).concat(B);for(var E=0;E<B.length;E++){var d=B[E];if(d.bendpoints.length>0){var I=this.edgeToDummyNodes.get(d);for(var h=0;h<I.length;h++){var Q=I[h],p=new s(Q.getCenterX(),Q.getCenterY()),m=d.bendpoints.get(h);m.x=p.x,m.y=p.y,Q.getOwner().remove(Q)}this.graphManager.add(d,d.source,d.target)}}},C.transform=function(B,E,d,I){if(d!=null&&I!=null){var h=E;if(B<=50){var Q=E/d;h-=(E-Q)/50*(50-B)}else{var p=E*I;h+=(p-E)/50*(B-50)}return h}else{var m,f;if(B<=50)m=9*E/500,f=E/10;else m=9*E/50,f=-8*E;return m*B+f}},C.findCenterOfTree=function(B){var E=[];E=E.concat(B);var d=[],I=new Map,h=!1,Q=null;if(E.length==1||E.length==2)h=!0,Q=E[0];for(var p=0;p<E.length;p++){var m=E[p],f=m.getNeighborsList().size;if(I.set(m,m.getNeighborsList().size),f==1)d.push(m)}var D=[];D=D.concat(d);while(!h){var w=[];w=w.concat(D),D=[];for(var p=0;p<E.length;p++){var m=E[p],b=E.indexOf(m);if(b>=0)E.splice(b,1);var k=m.getNeighborsList();k.forEach(function(x){if(d.indexOf(x)<0){var F=I.get(x),T=F-1;if(T==1)D.push(x);I.set(x,T)}})}if(d=d.concat(D),E.length==1||E.length==2)h=!0,Q=E[0]}return Q},C.prototype.setGraphManager=function(B){this.graphManager=B},A.exports=C},function(A,e,t){function r(){}r.seed=1,r.x=0,r.nextDouble=function(){return r.x=Math.sin(r.seed++)*1e4,r.x-Math.floor(r.x)},A.exports=r},function(A,e,t){var r=t(4);function i(u,a){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(u){this.lworldOrgX=u},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(u){this.lworldOrgY=u},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(u){this.lworldExtX=u},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(u){this.lworldExtY=u},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(u){this.ldeviceOrgX=u},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(u){this.ldeviceOrgY=u},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(u){this.ldeviceExtX=u},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(u){this.ldeviceExtY=u},i.prototype.transformX=function(u){var a=0,n=this.lworldExtX;if(n!=0)a=this.ldeviceOrgX+(u-this.lworldOrgX)*this.ldeviceExtX/n;return a},i.prototype.transformY=function(u){var a=0,n=this.lworldExtY;if(n!=0)a=this.ldeviceOrgY+(u-this.lworldOrgY)*this.ldeviceExtY/n;return a},i.prototype.inverseTransformX=function(u){var a=0,n=this.ldeviceExtX;if(n!=0)a=this.lworldOrgX+(u-this.ldeviceOrgX)*this.lworldExtX/n;return a},i.prototype.inverseTransformY=function(u){var a=0,n=this.ldeviceExtY;if(n!=0)a=this.lworldOrgY+(u-this.ldeviceOrgY)*this.lworldExtY/n;return a},i.prototype.inverseTransformPoint=function(u){var a=new r(this.inverseTransformX(u.x),this.inverseTransformY(u.y));return a},A.exports=i},function(A,e,t){function r(g){if(Array.isArray(g)){for(var C=0,B=Array(g.length);C<g.length;C++)B[C]=g[C];return B}else return Array.from(g)}var i=t(15),u=t(7),a=t(0),n=t(8),o=t(9);function s(){i.call(this),this.useSmartIdealEdgeLengthCalculation=u.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.idealEdgeLength=u.DEFAULT_EDGE_LENGTH,this.springConstant=u.DEFAULT_SPRING_STRENGTH,this.repulsionConstant=u.DEFAULT_REPULSION_STRENGTH,this.gravityConstant=u.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=u.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=u.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=u.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.displacementThresholdPerNode=3*u.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=u.MAX_ITERATIONS}s.prototype=Object.create(i.prototype);for(var l in i)s[l]=i[l];s.prototype.initParameters=function(){i.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=u.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},s.prototype.calcIdealEdgeLengths=function(){var g,C,B,E,d,I,h=this.getGraphManager().getAllEdges();for(var Q=0;Q<h.length;Q++)if(g=h[Q],g.idealLength=this.idealEdgeLength,g.isInterGraph){if(B=g.getSource(),E=g.getTarget(),d=g.getSourceInLca().getEstimatedSize(),I=g.getTargetInLca().getEstimatedSize(),this.useSmartIdealEdgeLengthCalculation)g.idealLength+=d+I-2*a.SIMPLE_NODE_SIZE;C=g.getLca().getInclusionTreeDepth(),g.idealLength+=u.DEFAULT_EDGE_LENGTH*u.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR*(B.getInclusionTreeDepth()+E.getInclusionTreeDepth()-2*C)}},s.prototype.initSpringEmbedder=function(){var g=this.getAllNodes().length;if(this.incremental){if(g>u.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(this.coolingFactor*u.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(g-u.ADAPTATION_LOWER_NODE_LIMIT)/(u.ADAPTATION_UPPER_NODE_LIMIT-u.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-u.COOLING_ADAPTATION_FACTOR));this.maxNodeDisplacement=u.MAX_NODE_DISPLACEMENT_INCREMENTAL}else{if(g>u.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(u.COOLING_ADAPTATION_FACTOR,1-(g-u.ADAPTATION_LOWER_NODE_LIMIT)/(u.ADAPTATION_UPPER_NODE_LIMIT-u.ADAPTATION_LOWER_NODE_LIMIT)*(1-u.COOLING_ADAPTATION_FACTOR));else this.coolingFactor=1;this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=u.MAX_NODE_DISPLACEMENT}this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},s.prototype.calcSpringForces=function(){var g=this.getAllEdges(),C;for(var B=0;B<g.length;B++)C=g[B],this.calcSpringForce(C,C.idealLength)},s.prototype.calcRepulsionForces=function(){var g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,B,E,d,I,h=this.getAllNodes(),Q;if(this.useFRGridVariant){if(this.totalIterations%u.GRID_CALCULATION_CHECK_PERIOD==1&&g)this.updateGrid();Q=new Set;for(B=0;B<h.length;B++)d=h[B],this.calculateRepulsionForceOfANode(d,Q,g,C),Q.add(d)}else for(B=0;B<h.length;B++){d=h[B];for(E=B+1;E<h.length;E++){if(I=h[E],d.getOwner()!=I.getOwner())continue;this.calcRepulsionForce(d,I)}}},s.prototype.calcGravitationalForces=function(){var g,C=this.getAllNodesToApplyGravitation();for(var B=0;B<C.length;B++)g=C[B],this.calcGravitationalForce(g)},s.prototype.moveNodes=function(){var g=this.getAllNodes(),C;for(var B=0;B<g.length;B++)C=g[B],C.move()},s.prototype.calcSpringForce=function(g,C){var B=g.getSource(),E=g.getTarget(),d,I,h,Q;if(this.uniformLeafNodeSizes&&B.getChild()==null&&E.getChild()==null)g.updateLengthSimple();else if(g.updateLength(),g.isOverlapingSourceAndTarget)return;if(d=g.getLength(),d==0)return;I=this.springConstant*(d-C),h=I*(g.lengthX/d),Q=I*(g.lengthY/d),B.springForceX+=h,B.springForceY+=Q,E.springForceX-=h,E.springForceY-=Q},s.prototype.calcRepulsionForce=function(g,C){var B=g.getRect(),E=C.getRect(),d=[,,],I=[,,,,],h,Q,p,m,f,D,w;if(B.intersects(E)){n.calcSeparationAmount(B,E,d,u.DEFAULT_EDGE_LENGTH/2),D=2*d[0],w=2*d[1];var b=g.noOfChildren*C.noOfChildren/(g.noOfChildren+C.noOfChildren);g.repulsionForceX-=b*D,g.repulsionForceY-=b*w,C.repulsionForceX+=b*D,C.repulsionForceY+=b*w}else{if(this.uniformLeafNodeSizes&&g.getChild()==null&&C.getChild()==null)h=E.getCenterX()-B.getCenterX(),Q=E.getCenterY()-B.getCenterY();else n.getIntersection(B,E,I),h=I[2]-I[0],Q=I[3]-I[1];if(Math.abs(h)<u.MIN_REPULSION_DIST)h=o.sign(h)*u.MIN_REPULSION_DIST;if(Math.abs(Q)<u.MIN_REPULSION_DIST)Q=o.sign(Q)*u.MIN_REPULSION_DIST;p=h*h+Q*Q,m=Math.sqrt(p),f=this.repulsionConstant*g.noOfChildren*C.noOfChildren/p,D=f*h/m,w=f*Q/m,g.repulsionForceX-=D,g.repulsionForceY-=w,C.repulsionForceX+=D,C.repulsionForceY+=w}},s.prototype.calcGravitationalForce=function(g){var C,B,E,d,I,h,Q,p;if(C=g.getOwner(),B=(C.getRight()+C.getLeft())/2,E=(C.getTop()+C.getBottom())/2,d=g.getCenterX()-B,I=g.getCenterY()-E,h=Math.abs(d)+g.getWidth()/2,Q=Math.abs(I)+g.getHeight()/2,g.getOwner()==this.graphManager.getRoot()){if(p=C.getEstimatedSize()*this.gravityRangeFactor,h>p||Q>p)g.gravitationForceX=-this.gravityConstant*d,g.gravitationForceY=-this.gravityConstant*I}else if(p=C.getEstimatedSize()*this.compoundGravityRangeFactor,h>p||Q>p)g.gravitationForceX=-this.gravityConstant*d*this.compoundGravityConstant,g.gravitationForceY=-this.gravityConstant*I*this.compoundGravityConstant},s.prototype.isConverged=function(){var g,C=!1;if(this.totalIterations>this.maxIterations/3)C=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2;return g=this.totalDisplacement<this.totalDisplacementThreshold,this.oldTotalDisplacement=this.totalDisplacement,g||C},s.prototype.animate=function(){if(this.animationDuringLayout&&!this.isSubLayout)if(this.notAnimatedIterations==this.animationPeriod)this.update(),this.notAnimatedIterations=0;else this.notAnimatedIterations++},s.prototype.calcNoOfChildrenForAllNodes=function(){var g,C=this.graphManager.getAllNodes();for(var B=0;B<C.length;B++)g=C[B],g.noOfChildren=g.getNoOfChildren()},s.prototype.calcGrid=function(g){var C=0,B=0;C=parseInt(Math.ceil((g.getRight()-g.getLeft())/this.repulsionRange)),B=parseInt(Math.ceil((g.getBottom()-g.getTop())/this.repulsionRange));var E=Array(C);for(var d=0;d<C;d++)E[d]=Array(B);for(var d=0;d<C;d++)for(var I=0;I<B;I++)E[d][I]=[];return E},s.prototype.addNodeToGrid=function(g,C,B){var E=0,d=0,I=0,h=0;E=parseInt(Math.floor((g.getRect().x-C)/this.repulsionRange)),d=parseInt(Math.floor((g.getRect().width+g.getRect().x-C)/this.repulsionRange)),I=parseInt(Math.floor((g.getRect().y-B)/this.repulsionRange)),h=parseInt(Math.floor((g.getRect().height+g.getRect().y-B)/this.repulsionRange));for(var Q=E;Q<=d;Q++)for(var p=I;p<=h;p++)this.grid[Q][p].push(g),g.setGridCoordinates(E,d,I,h)},s.prototype.updateGrid=function(){var g,C,B=this.getAllNodes();this.grid=this.calcGrid(this.graphManager.getRoot());for(g=0;g<B.length;g++)C=B[g],this.addNodeToGrid(C,this.graphManager.getRoot().getLeft(),this.graphManager.getRoot().getTop())},s.prototype.calculateRepulsionForceOfANode=function(g,C,B,E){if(this.totalIterations%u.GRID_CALCULATION_CHECK_PERIOD==1&&B||E){var d=new Set;g.surrounding=[];var I,h=this.grid;for(var Q=g.startX-1;Q<g.finishX+2;Q++)for(var p=g.startY-1;p<g.finishY+2;p++)if(!(Q<0||p<0||Q>=h.length||p>=h[0].length))for(var m=0;m<h[Q][p].length;m++){if(I=h[Q][p][m],g.getOwner()!=I.getOwner()||g==I)continue;if(!C.has(I)&&!d.has(I)){var f=Math.abs(g.getCenterX()-I.getCenterX())-(g.getWidth()/2+I.getWidth()/2),D=Math.abs(g.getCenterY()-I.getCenterY())-(g.getHeight()/2+I.getHeight()/2);if(f<=this.repulsionRange&&D<=this.repulsionRange)d.add(I)}}g.surrounding=[].concat(r(d))}for(Q=0;Q<g.surrounding.length;Q++)this.calcRepulsionForce(g,g.surrounding[Q])},s.prototype.calcRepulsionRange=function(){return 0},A.exports=s},function(A,e,t){var r=t(1),i=t(7);function u(n,o,s){r.call(this,n,o,s),this.idealLength=i.DEFAULT_EDGE_LENGTH}u.prototype=Object.create(r.prototype);for(var a in r)u[a]=r[a];A.exports=u},function(A,e,t){var r=t(3);function i(a,n,o,s){r.call(this,a,n,o,s),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0,this.startX=0,this.finishX=0,this.startY=0,this.finishY=0,this.surrounding=[]}i.prototype=Object.create(r.prototype);for(var u in r)i[u]=r[u];i.prototype.setGridCoordinates=function(a,n,o,s){this.startX=a,this.finishX=n,this.startY=o,this.finishY=s},A.exports=i},function(A,e,t){function r(i,u){if(this.width=0,this.height=0,i!==null&&u!==null)this.height=u,this.width=i}r.prototype.getWidth=function(){return this.width},r.prototype.setWidth=function(i){this.width=i},r.prototype.getHeight=function(){return this.height},r.prototype.setHeight=function(i){this.height=i},A.exports=r},function(A,e,t){var r=t(14);function i(){this.map={},this.keys=[]}i.prototype.put=function(u,a){var n=r.createID(u);if(!this.contains(n))this.map[n]=a,this.keys.push(u)},i.prototype.contains=function(u){var a=r.createID(u);return this.map[u]!=null},i.prototype.get=function(u){var a=r.createID(u);return this.map[a]},i.prototype.keySet=function(){return this.keys},A.exports=i},function(A,e,t){var r=t(14);function i(){this.set={}}i.prototype.add=function(u){var a=r.createID(u);if(!this.contains(a))this.set[a]=u},i.prototype.remove=function(u){delete this.set[r.createID(u)]},i.prototype.clear=function(){this.set={}},i.prototype.contains=function(u){return this.set[r.createID(u)]==u},i.prototype.isEmpty=function(){return this.size()===0},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAllTo=function(u){var a=Object.keys(this.set),n=a.length;for(var o=0;o<n;o++)u.push(this.set[a[o]])},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAll=function(u){var a=u.length;for(var n=0;n<a;n++){var o=u[n];this.add(o)}},A.exports=i},function(A,e,t){var r=function(){function n(o,s){for(var l=0;l<s.length;l++){var g=s[l];if(g.enumerable=g.enumerable||!1,g.configurable=!0,"value"in g)g.writable=!0;Object.defineProperty(o,g.key,g)}}return function(o,s,l){if(s)n(o.prototype,s);if(l)n(o,l);return o}}();function i(n,o){if(!(n instanceof o))throw TypeError("Cannot call a class as a function")}var u=t(11),a=function(){function n(o,s){if(i(this,n),s!==null||s!==void 0)this.compareFunction=this._defaultCompareFunction;var l=void 0;if(o instanceof u)l=o.size();else l=o.length;this._quicksort(o,0,l-1)}return r(n,[{key:"_quicksort",value:function(s,l,g){if(l<g){var C=this._partition(s,l,g);this._quicksort(s,l,C),this._quicksort(s,C+1,g)}}},{key:"_partition",value:function(s,l,g){var C=this._get(s,l),B=l,E=g;while(!0){while(this.compareFunction(C,this._get(s,E)))E--;while(this.compareFunction(this._get(s,B),C))B++;if(B<E)this._swap(s,B,E),B++,E--;else return E}}},{key:"_get",value:function(s,l){if(s instanceof u)return s.get_object_at(l);else return s[l]}},{key:"_set",value:function(s,l,g){if(s instanceof u)s.set_object_at(l,g);else s[l]=g}},{key:"_swap",value:function(s,l,g){var C=this._get(s,l);this._set(s,l,this._get(s,g)),this._set(s,g,C)}},{key:"_defaultCompareFunction",value:function(s,l){return l>s}}]),n}();A.exports=a},function(A,e,t){var r=function(){function a(n,o){for(var s=0;s<o.length;s++){var l=o[s];if(l.enumerable=l.enumerable||!1,l.configurable=!0,"value"in l)l.writable=!0;Object.defineProperty(n,l.key,l)}}return function(n,o,s){if(o)a(n.prototype,o);if(s)a(n,s);return n}}();function i(a,n){if(!(a instanceof n))throw TypeError("Cannot call a class as a function")}var u=function(){function a(n,o){var s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,g=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,a),this.sequence1=n,this.sequence2=o,this.match_score=s,this.mismatch_penalty=l,this.gap_penalty=g,this.iMax=n.length+1,this.jMax=o.length+1,this.grid=Array(this.iMax);for(var C=0;C<this.iMax;C++){this.grid[C]=Array(this.jMax);for(var B=0;B<this.jMax;B++)this.grid[C][B]=0}this.tracebackGrid=Array(this.iMax);for(var E=0;E<this.iMax;E++){this.tracebackGrid[E]=Array(this.jMax);for(var d=0;d<this.jMax;d++)this.tracebackGrid[E][d]=[null,null,null]}this.alignments=[],this.score=-1,this.computeGrids()}return r(a,[{key:"getScore",value:function(){return this.score}},{key:"getAlignments",value:function(){return this.alignments}},{key:"computeGrids",value:function(){for(var o=1;o<this.jMax;o++)this.grid[0][o]=this.grid[0][o-1]+this.gap_penalty,this.tracebackGrid[0][o]=[!1,!1,!0];for(var s=1;s<this.iMax;s++)this.grid[s][0]=this.grid[s-1][0]+this.gap_penalty,this.tracebackGrid[s][0]=[!1,!0,!1];for(var l=1;l<this.iMax;l++)for(var g=1;g<this.jMax;g++){var C=void 0;if(this.sequence1[l-1]===this.sequence2[g-1])C=this.grid[l-1][g-1]+this.match_score;else C=this.grid[l-1][g-1]+this.mismatch_penalty;var B=this.grid[l-1][g]+this.gap_penalty,E=this.grid[l][g-1]+this.gap_penalty,d=[C,B,E],I=this.arrayAllMaxIndexes(d);this.grid[l][g]=d[I[0]],this.tracebackGrid[l][g]=[I.includes(0),I.includes(1),I.includes(2)]}this.score=this.grid[this.iMax-1][this.jMax-1]}},{key:"alignmentTraceback",value:function(){var o=[];o.push({pos:[this.sequence1.length,this.sequence2.length],seq1:"",seq2:""});while(o[0]){var s=o[0],l=this.tracebackGrid[s.pos[0]][s.pos[1]];if(l[0])o.push({pos:[s.pos[0]-1,s.pos[1]-1],seq1:this.sequence1[s.pos[0]-1]+s.seq1,seq2:this.sequence2[s.pos[1]-1]+s.seq2});if(l[1])o.push({pos:[s.pos[0]-1,s.pos[1]],seq1:this.sequence1[s.pos[0]-1]+s.seq1,seq2:"-"+s.seq2});if(l[2])o.push({pos:[s.pos[0],s.pos[1]-1],seq1:"-"+s.seq1,seq2:this.sequence2[s.pos[1]-1]+s.seq2});if(s.pos[0]===0&&s.pos[1]===0)this.alignments.push({sequence1:s.seq1,sequence2:s.seq2});o.shift()}return this.alignments}},{key:"getAllIndexes",value:function(o,s){var l=[],g=-1;while((g=o.indexOf(s,g+1))!==-1)l.push(g);return l}},{key:"arrayAllMaxIndexes",value:function(o){return this.getAllIndexes(o,Math.max.apply(null,o))}}]),a}();A.exports=u},function(A,e,t){var r=function(){return};r.FDLayout=t(18),r.FDLayoutConstants=t(7),r.FDLayoutEdge=t(19),r.FDLayoutNode=t(20),r.DimensionD=t(21),r.HashMap=t(22),r.HashSet=t(23),r.IGeometry=t(8),r.IMath=t(9),r.Integer=t(10),r.Point=t(12),r.PointD=t(4),r.RandomSeed=t(16),r.RectangleD=t(13),r.Transform=t(17),r.UniqueIDGeneretor=t(14),r.Quicksort=t(24),r.LinkedList=t(11),r.LGraphObject=t(2),r.LGraph=t(5),r.LEdge=t(1),r.LGraphManager=t(6),r.LNode=t(3),r.Layout=t(15),r.LayoutConstants=t(0),r.NeedlemanWunsch=t(25),A.exports=r},function(A,e,t){function r(){this.listeners=[]}var i=r.prototype;i.addListener=function(u,a){this.listeners.push({event:u,callback:a})},i.removeListener=function(u,a){for(var n=this.listeners.length;n>=0;n--){var o=this.listeners[n];if(o.event===u&&o.callback===a)this.listeners.splice(n,1)}},i.emit=function(u,a){for(var n=0;n<this.listeners.length;n++){var o=this.listeners[n];if(u===o.event)o.callback(a)}},A.exports=r}])})});var jaA=wu(function(Vk,VaA){(function(e,t){if(typeof Vk==="object"&&typeof VaA==="object")VaA.exports=t(ZaA());else if(typeof define==="function"&&define.amd)define(["layout-base"],t);else if(typeof Vk==="object")Vk.coseBase=t(ZaA());else e.coseBase=t(e.layoutBase)})(Vk,function(A){return function(e){var t={};function r(i){if(t[i])return t[i].exports;var u=t[i]={i,l:!1,exports:{}};return e[i].call(u.exports,u,u.exports,r),u.l=!0,u.exports}return r.m=e,r.c=t,r.i=function(i){return i},r.d=function(i,u,a){if(!r.o(i,u))Object.defineProperty(i,u,{configurable:!1,enumerable:!0,get:a})},r.n=function(i){var u=i&&i.__esModule?function(){return i.default}:function(){return i};return r.d(u,"a",u),u},r.o=function(i,u){return Object.prototype.hasOwnProperty.call(i,u)},r.p="",r(r.s=7)}([function(e,t){e.exports=A},function(e,t,r){var i=r(0).FDLayoutConstants;function u(){}for(var a in i)u[a]=i[a];u.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,u.DEFAULT_RADIAL_SEPARATION=i.DEFAULT_EDGE_LENGTH,u.DEFAULT_COMPONENT_SEPERATION=60,u.TILE=!0,u.TILING_PADDING_VERTICAL=10,u.TILING_PADDING_HORIZONTAL=10,u.TREE_REDUCTION_ON_INCREMENTAL=!1,e.exports=u},function(e,t,r){var i=r(0).FDLayoutEdge;function u(n,o,s){i.call(this,n,o,s)}u.prototype=Object.create(i.prototype);for(var a in i)u[a]=i[a];e.exports=u},function(e,t,r){var i=r(0).LGraph;function u(n,o,s){i.call(this,n,o,s)}u.prototype=Object.create(i.prototype);for(var a in i)u[a]=i[a];e.exports=u},function(e,t,r){var i=r(0).LGraphManager;function u(n){i.call(this,n)}u.prototype=Object.create(i.prototype);for(var a in i)u[a]=i[a];e.exports=u},function(e,t,r){var i=r(0).FDLayoutNode,u=r(0).IMath;function a(o,s,l,g){i.call(this,o,s,l,g)}a.prototype=Object.create(i.prototype);for(var n in i)a[n]=i[n];a.prototype.move=function(){var o=this.graphManager.getLayout();if(this.displacementX=o.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY=o.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren,Math.abs(this.displacementX)>o.coolingFactor*o.maxNodeDisplacement)this.displacementX=o.coolingFactor*o.maxNodeDisplacement*u.sign(this.displacementX);if(Math.abs(this.displacementY)>o.coolingFactor*o.maxNodeDisplacement)this.displacementY=o.coolingFactor*o.maxNodeDisplacement*u.sign(this.displacementY);if(this.child==null)this.moveBy(this.displacementX,this.displacementY);else if(this.child.getNodes().length==0)this.moveBy(this.displacementX,this.displacementY);else this.propogateDisplacementToChildren(this.displacementX,this.displacementY);o.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY),this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},a.prototype.propogateDisplacementToChildren=function(o,s){var l=this.getChild().getNodes(),g;for(var C=0;C<l.length;C++)if(g=l[C],g.getChild()==null)g.moveBy(o,s),g.displacementX+=o,g.displacementY+=s;else g.propogateDisplacementToChildren(o,s)},a.prototype.setPred1=function(o){this.pred1=o},a.prototype.getPred1=function(){return pred1},a.prototype.getPred2=function(){return pred2},a.prototype.setNext=function(o){this.next=o},a.prototype.getNext=function(){return next},a.prototype.setProcessed=function(o){this.processed=o},a.prototype.isProcessed=function(){return processed},e.exports=a},function(e,t,r){var i=r(0).FDLayout,u=r(4),a=r(3),n=r(5),o=r(2),s=r(1),l=r(0).FDLayoutConstants,g=r(0).LayoutConstants,C=r(0).Point,B=r(0).PointD,E=r(0).Layout,d=r(0).Integer,I=r(0).IGeometry,h=r(0).LGraph,Q=r(0).Transform;function p(){i.call(this),this.toBeTiled={}}p.prototype=Object.create(i.prototype);for(var m in i)p[m]=i[m];p.prototype.newGraphManager=function(){var f=new u(this);return this.graphManager=f,f},p.prototype.newGraph=function(f){return new a(null,this.graphManager,f)},p.prototype.newNode=function(f){return new n(this.graphManager,f)},p.prototype.newEdge=function(f){return new o(null,null,f)},p.prototype.initParameters=function(){if(i.prototype.initParameters.call(this,arguments),!this.isSubLayout){if(s.DEFAULT_EDGE_LENGTH<10)this.idealEdgeLength=10;else this.idealEdgeLength=s.DEFAULT_EDGE_LENGTH;this.useSmartIdealEdgeLengthCalculation=s.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.springConstant=l.DEFAULT_SPRING_STRENGTH,this.repulsionConstant=l.DEFAULT_REPULSION_STRENGTH,this.gravityConstant=l.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=l.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=l.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=l.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1,this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/l.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=l.CONVERGENCE_CHECK_PERIOD/this.maxIterations,this.coolingAdjuster=1}},p.prototype.layout=function(){var f=g.DEFAULT_CREATE_BENDS_AS_NEEDED;if(f)this.createBendpoints(),this.graphManager.resetAllEdges();return this.level=0,this.classicLayout()},p.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),!this.incremental){var f=this.getFlatForest();if(f.length>0)this.positionNodesRadially(f);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var D=new Set(this.getAllNodes()),w=this.nodesWithGravity.filter(function(b){return D.has(b)});this.graphManager.setAllNodesToApplyGravitation(w),this.positionNodesRandomly()}}else if(s.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var D=new Set(this.getAllNodes()),w=this.nodesWithGravity.filter(function(v){return D.has(v)});this.graphManager.setAllNodesToApplyGravitation(w)}return this.initSpringEmbedder(),this.runSpringEmbedder(),!0},p.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%l.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.coolingCycle++,this.layoutQuality==0)this.coolingAdjuster=this.coolingCycle;else if(this.layoutQuality==1)this.coolingAdjuster=this.coolingCycle/3;this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var f=new Set(this.getAllNodes()),D=this.nodesWithGravity.filter(function(k){return f.has(k)});this.graphManager.setAllNodesToApplyGravitation(D),this.graphManager.updateBounds(),this.updateGrid(),this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;if(this.afterGrowthIterations%10==0)this.graphManager.updateBounds(),this.updateGrid();this.coolingFactor=l.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100),this.afterGrowthIterations++}var w=!this.isTreeGrowing&&!this.isGrowthFinished,b=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(w,b),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},p.prototype.getPositionsData=function(){var f=this.graphManager.getAllNodes(),D={};for(var w=0;w<f.length;w++){var b=f[w].rect,k=f[w].id;D[k]={id:k,x:b.getCenterX(),y:b.getCenterY(),w:b.width,h:b.height}}return D},p.prototype.runSpringEmbedder=function(){this.initialAnimationPeriod=25,this.animationPeriod=this.initialAnimationPeriod;var f=!1;if(l.ANIMATE==="during")this.emit("layoutstarted");else{while(!f)f=this.tick();this.graphManager.updateBounds()}},p.prototype.calculateNodesToApplyGravitationTo=function(){var f=[],D,w=this.graphManager.getGraphs(),b=w.length,k;for(k=0;k<b;k++)if(D=w[k],D.updateConnected(),!D.isConnected)f=f.concat(D.getNodes());return f},p.prototype.createBendpoints=function(){var f=[];f=f.concat(this.graphManager.getAllEdges());var D=new Set,w;for(w=0;w<f.length;w++){var b=f[w];if(!D.has(b)){var k=b.getSource(),v=b.getTarget();if(k==v)b.getBendpoints().push(new B),b.getBendpoints().push(new B),this.createDummyNodesForBendpoints(b),D.add(b);else{var S=[];if(S=S.concat(k.getEdgeListToNode(v)),S=S.concat(v.getEdgeListToNode(k)),!D.has(S[0])){if(S.length>1){var x;for(x=0;x<S.length;x++){var F=S[x];F.getBendpoints().push(new B),this.createDummyNodesForBendpoints(F)}}S.forEach(function(T){D.add(T)})}}}if(D.size==f.length)break}},p.prototype.positionNodesRadially=function(f){var D=new C(0,0),w=Math.ceil(Math.sqrt(f.length)),b=0,k=0,v=0,S=new B(0,0);for(var x=0;x<f.length;x++){if(x%w==0){if(v=0,k=b,x!=0)k+=s.DEFAULT_COMPONENT_SEPERATION;b=0}var F=f[x],T=E.findCenterOfTree(F);if(D.x=v,D.y=k,S=p.radialLayout(F,T,D),S.y>b)b=Math.floor(S.y);v=Math.floor(S.x+s.DEFAULT_COMPONENT_SEPERATION)}this.transform(new B(g.WORLD_CENTER_X-S.x/2,g.WORLD_CENTER_Y-S.y/2))},p.radialLayout=function(f,D,w){var b=Math.max(this.maxDiagonalInTree(f),s.DEFAULT_RADIAL_SEPARATION);p.branchRadialLayout(D,null,0,359,0,b);var k=h.calculateBounds(f),v=new Q;v.setDeviceOrgX(k.getMinX()),v.setDeviceOrgY(k.getMinY()),v.setWorldOrgX(w.x),v.setWorldOrgY(w.y);for(var S=0;S<f.length;S++){var x=f[S];x.transform(v)}var F=new B(k.getMaxX(),k.getMaxY());return v.inverseTransformPoint(F)},p.branchRadialLayout=function(f,D,w,b,k,v){var S=(b-w+1)/2;if(S<0)S+=180;var x=(S+w)%360,F=x*I.TWO_PI/360,T=Math.cos(F),R=k*Math.cos(F),L=k*Math.sin(F);f.setCenter(R,L);var M=[];M=M.concat(f.getEdges());var U=M.length;if(D!=null)U--;var Y=0,H=M.length,J,K=f.getEdgesBetween(D);while(K.length>1){var O=K[0];K.splice(0,1);var P=M.indexOf(O);if(P>=0)M.splice(P,1);H--,U--}if(D!=null)J=(M.indexOf(K[0])+1)%H;else J=0;var z=Math.abs(b-w)/U;for(var AA=J;Y!=U;AA=++AA%H){var W=M[AA].getOtherEnd(f);if(W==D)continue;var CA=(w+Y*z)%360,tA=(CA+z)%360;p.branchRadialLayout(W,f,CA,tA,k+v,v),Y++}},p.maxDiagonalInTree=function(f){var D=d.MIN_VALUE;for(var w=0;w<f.length;w++){var b=f[w],k=b.getDiagonal();if(k>D)D=k}return D},p.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},p.prototype.groupZeroDegreeMembers=function(){var f=this,D={};this.memberGroups={},this.idToDummyNode={};var w=[],b=this.graphManager.getAllNodes();for(var k=0;k<b.length;k++){var v=b[k],S=v.getParent();if(this.getNodeDegreeWithChildren(v)===0&&(S.id==null||!this.getToBeTiled(S)))w.push(v)}for(var k=0;k<w.length;k++){var v=w[k],x=v.getParent().id;if(typeof D[x]>"u")D[x]=[];D[x]=D[x].concat(v)}Object.keys(D).forEach(function(F){if(D[F].length>1){var T="DummyCompound_"+F;f.memberGroups[T]=D[F];var R=D[F][0].getParent(),L=new n(f.graphManager);L.id=T,L.paddingLeft=R.paddingLeft||0,L.paddingRight=R.paddingRight||0,L.paddingBottom=R.paddingBottom||0,L.paddingTop=R.paddingTop||0,f.idToDummyNode[T]=L;var M=f.getGraphManager().add(f.newGraph(),L),U=R.getChild();U.add(L);for(var Y=0;Y<D[F].length;Y++){var H=D[F][Y];U.remove(H),M.add(H)}}})},p.prototype.clearCompounds=function(){var f={},D={};this.performDFSOnCompounds();for(var w=0;w<this.compoundOrder.length;w++)D[this.compoundOrder[w].id]=this.compoundOrder[w],f[this.compoundOrder[w].id]=[].concat(this.compoundOrder[w].getChild().getNodes()),this.graphManager.remove(this.compoundOrder[w].getChild()),this.compoundOrder[w].child=null;this.graphManager.resetAllNodes(),this.tileCompoundMembers(f,D)},p.prototype.clearZeroDegreeMembers=function(){var f=this,D=this.tiledZeroDegreePack=[];Object.keys(this.memberGroups).forEach(function(w){var b=f.idToDummyNode[w];D[w]=f.tileNodes(f.memberGroups[w],b.paddingLeft+b.paddingRight),b.rect.width=D[w].width,b.rect.height=D[w].height})},p.prototype.repopulateCompounds=function(){for(var f=this.compoundOrder.length-1;f>=0;f--){var D=this.compoundOrder[f],{id:w,paddingLeft:b,paddingTop:k}=D;this.adjustLocations(this.tiledMemberPack[w],D.rect.x,D.rect.y,b,k)}},p.prototype.repopulateZeroDegreeMembers=function(){var f=this,D=this.tiledZeroDegreePack;Object.keys(D).forEach(function(w){var b=f.idToDummyNode[w],{paddingLeft:k,paddingTop:v}=b;f.adjustLocations(D[w],b.rect.x,b.rect.y,k,v)})},p.prototype.getToBeTiled=function(f){var D=f.id;if(this.toBeTiled[D]!=null)return this.toBeTiled[D];var w=f.getChild();if(w==null)return this.toBeTiled[D]=!1,!1;var b=w.getNodes();for(var k=0;k<b.length;k++){var v=b[k];if(this.getNodeDegree(v)>0)return this.toBeTiled[D]=!1,!1;if(v.getChild()==null){this.toBeTiled[v.id]=!1;continue}if(!this.getToBeTiled(v))return this.toBeTiled[D]=!1,!1}return this.toBeTiled[D]=!0,!0},p.prototype.getNodeDegree=function(f){var D=f.id,w=f.getEdges(),b=0;for(var k=0;k<w.length;k++){var v=w[k];if(v.getSource().id!==v.getTarget().id)b=b+1}return b},p.prototype.getNodeDegreeWithChildren=function(f){var D=this.getNodeDegree(f);if(f.getChild()==null)return D;var w=f.getChild().getNodes();for(var b=0;b<w.length;b++){var k=w[b];D+=this.getNodeDegreeWithChildren(k)}return D},p.prototype.performDFSOnCompounds=function(){this.compoundOrder=[],this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes())},p.prototype.fillCompexOrderByDFS=function(f){for(var D=0;D<f.length;D++){var w=f[D];if(w.getChild()!=null)this.fillCompexOrderByDFS(w.getChild().getNodes());if(this.getToBeTiled(w))this.compoundOrder.push(w)}},p.prototype.adjustLocations=function(f,D,w,b,k){D+=b,w+=k;var v=D;for(var S=0;S<f.rows.length;S++){var x=f.rows[S];D=v;var F=0;for(var T=0;T<x.length;T++){var R=x[T];if(R.rect.x=D,R.rect.y=w,D+=R.rect.width+f.horizontalPadding,R.rect.height>F)F=R.rect.height}w+=F+f.verticalPadding}},p.prototype.tileCompoundMembers=function(f,D){var w=this;this.tiledMemberPack=[],Object.keys(f).forEach(function(b){var k=D[b];w.tiledMemberPack[b]=w.tileNodes(f[b],k.paddingLeft+k.paddingRight),k.rect.width=w.tiledMemberPack[b].width,k.rect.height=w.tiledMemberPack[b].height})},p.prototype.tileNodes=function(f,D){var{TILING_PADDING_VERTICAL:w,TILING_PADDING_HORIZONTAL:b}=s,k={rows:[],rowWidth:[],rowHeight:[],width:0,height:D,verticalPadding:w,horizontalPadding:b};f.sort(function(x,F){if(x.rect.width*x.rect.height>F.rect.width*F.rect.height)return-1;if(x.rect.width*x.rect.height<F.rect.width*F.rect.height)return 1;return 0});for(var v=0;v<f.length;v++){var S=f[v];if(k.rows.length==0)this.insertNodeToRow(k,S,0,D);else if(this.canAddHorizontal(k,S.rect.width,S.rect.height))this.insertNodeToRow(k,S,this.getShortestRowIndex(k),D);else this.insertNodeToRow(k,S,k.rows.length,D);this.shiftToLastRow(k)}return k},p.prototype.insertNodeToRow=function(f,D,w,b){var k=b;if(w==f.rows.length){var v=[];f.rows.push(v),f.rowWidth.push(k),f.rowHeight.push(0)}var S=f.rowWidth[w]+D.rect.width;if(f.rows[w].length>0)S+=f.horizontalPadding;if(f.rowWidth[w]=S,f.width<S)f.width=S;var x=D.rect.height;if(w>0)x+=f.verticalPadding;var F=0;if(x>f.rowHeight[w])F=f.rowHeight[w],f.rowHeight[w]=x,F=f.rowHeight[w]-F;f.height+=F,f.rows[w].push(D)},p.prototype.getShortestRowIndex=function(f){var D=-1,w=Number.MAX_VALUE;for(var b=0;b<f.rows.length;b++)if(f.rowWidth[b]<w)D=b,w=f.rowWidth[b];return D},p.prototype.getLongestRowIndex=function(f){var D=-1,w=Number.MIN_VALUE;for(var b=0;b<f.rows.length;b++)if(f.rowWidth[b]>w)D=b,w=f.rowWidth[b];return D},p.prototype.canAddHorizontal=function(f,D,w){var b=this.getShortestRowIndex(f);if(b<0)return!0;var k=f.rowWidth[b];if(k+f.horizontalPadding+D<=f.width)return!0;var v=0;if(f.rowHeight[b]<w){if(b>0)v=w+f.verticalPadding-f.rowHeight[b]}var S;if(f.width-k>=D+f.horizontalPadding)S=(f.height+v)/(k+D+f.horizontalPadding);else S=(f.height+v)/f.width;v=w+f.verticalPadding;var x;if(f.width<D)x=(f.height+v)/D;else x=(f.height+v)/f.width;if(x<1)x=1/x;if(S<1)S=1/S;return S<x},p.prototype.shiftToLastRow=function(f){var D=this.getLongestRowIndex(f),w=f.rowWidth.length-1,b=f.rows[D],k=b[b.length-1],v=k.width+f.horizontalPadding;if(f.width-f.rowWidth[w]>v&&D!=w){b.splice(-1,1),f.rows[w].push(k),f.rowWidth[D]=f.rowWidth[D]-v,f.rowWidth[w]=f.rowWidth[w]+v,f.width=f.rowWidth[instance.getLongestRowIndex(f)];var S=Number.MIN_VALUE;for(var x=0;x<b.length;x++)if(b[x].height>S)S=b[x].height;if(D>0)S+=f.verticalPadding;var F=f.rowHeight[D]+f.rowHeight[w];if(f.rowHeight[D]=S,f.rowHeight[w]<k.height+f.verticalPadding)f.rowHeight[w]=k.height+f.verticalPadding;var T=f.rowHeight[D]+f.rowHeight[w];f.height+=T-F,this.shiftToLastRow(f)}},p.prototype.tilingPreLayout=function(){if(s.TILE)this.groupZeroDegreeMembers(),this.clearCompounds(),this.clearZeroDegreeMembers()},p.prototype.tilingPostLayout=function(){if(s.TILE)this.repopulateZeroDegreeMembers(),this.repopulateCompounds()},p.prototype.reduceTrees=function(){var f=[],D=!0,w;while(D){var b=this.graphManager.getAllNodes(),k=[];D=!1;for(var v=0;v<b.length;v++)if(w=b[v],w.getEdges().length==1&&!w.getEdges()[0].isInterGraph&&w.getChild()==null)k.push([w,w.getEdges()[0],w.getOwner()]),D=!0;if(D==!0){var S=[];for(var x=0;x<k.length;x++)if(k[x][0].getEdges().length==1)S.push(k[x]),k[x][0].getOwner().remove(k[x][0]);f.push(S),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()}}this.prunedNodesAll=f},p.prototype.growTree=function(f){var D=f.length,w=f[D-1],b;for(var k=0;k<w.length;k++)b=w[k],this.findPlaceforPrunedNode(b),b[2].add(b[0]),b[2].add(b[1],b[1].source,b[1].target);f.splice(f.length-1,1),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()},p.prototype.findPlaceforPrunedNode=function(f){var D,w,b=f[0];if(b==f[1].source)w=f[1].target;else w=f[1].source;var k=w.startX,v=w.finishX,S=w.startY,x=w.finishY,F=0,T=0,R=0,L=0,M=[F,R,T,L];if(S>0)for(var U=k;U<=v;U++)M[0]+=this.grid[U][S-1].length+this.grid[U][S].length-1;if(v<this.grid.length-1)for(var U=S;U<=x;U++)M[1]+=this.grid[v+1][U].length+this.grid[v][U].length-1;if(x<this.grid[0].length-1)for(var U=k;U<=v;U++)M[2]+=this.grid[U][x+1].length+this.grid[U][x].length-1;if(k>0)for(var U=S;U<=x;U++)M[3]+=this.grid[k-1][U].length+this.grid[k][U].length-1;var Y=d.MAX_VALUE,H,J;for(var K=0;K<M.length;K++)if(M[K]<Y)Y=M[K],H=1,J=K;else if(M[K]==Y)H++;if(H==3&&Y==0){if(M[0]==0&&M[1]==0&&M[2]==0)D=1;else if(M[0]==0&&M[1]==0&&M[3]==0)D=0;else if(M[0]==0&&M[2]==0&&M[3]==0)D=3;else if(M[1]==0&&M[2]==0&&M[3]==0)D=2}else if(H==2&&Y==0){var O=Math.floor(Math.random()*2);if(M[0]==0&&M[1]==0)if(O==0)D=0;else D=1;else if(M[0]==0&&M[2]==0)if(O==0)D=0;else D=2;else if(M[0]==0&&M[3]==0)if(O==0)D=0;else D=3;else if(M[1]==0&&M[2]==0)if(O==0)D=1;else D=2;else if(M[1]==0&&M[3]==0)if(O==0)D=1;else D=3;else if(O==0)D=2;else D=3}else if(H==4&&Y==0){var O=Math.floor(Math.random()*4);D=O}else D=J;if(D==0)b.setCenter(w.getCenterX(),w.getCenterY()-w.getHeight()/2-l.DEFAULT_EDGE_LENGTH-b.getHeight()/2);else if(D==1)b.setCenter(w.getCenterX()+w.getWidth()/2+l.DEFAULT_EDGE_LENGTH+b.getWidth()/2,w.getCenterY());else if(D==2)b.setCenter(w.getCenterX(),w.getCenterY()+w.getHeight()/2+l.DEFAULT_EDGE_LENGTH+b.getHeight()/2);else b.setCenter(w.getCenterX()-w.getWidth()/2-l.DEFAULT_EDGE_LENGTH-b.getWidth()/2,w.getCenterY())},e.exports=p},function(e,t,r){var i={};i.layoutBase=r(0),i.CoSEConstants=r(1),i.CoSEEdge=r(2),i.CoSEGraph=r(3),i.CoSEGraphManager=r(4),i.CoSELayout=r(6),i.CoSENode=r(5),e.exports=i}])})});var RJA=wu(function(jk,XaA){(function(e,t){if(typeof jk==="object"&&typeof XaA==="object")XaA.exports=t(jaA());else if(typeof define==="function"&&define.amd)define(["cose-base"],t);else if(typeof jk==="object")jk.cytoscapeCoseBilkent=t(jaA());else e.cytoscapeCoseBilkent=t(e.coseBase)})(jk,function(A){return function(e){var t={};function r(i){if(t[i])return t[i].exports;var u=t[i]={i,l:!1,exports:{}};return e[i].call(u.exports,u,u.exports,r),u.l=!0,u.exports}return r.m=e,r.c=t,r.i=function(i){return i},r.d=function(i,u,a){if(!r.o(i,u))Object.defineProperty(i,u,{configurable:!1,enumerable:!0,get:a})},r.n=function(i){var u=i&&i.__esModule?function(){return i.default}:function(){return i};return r.d(u,"a",u),u},r.o=function(i,u){return Object.prototype.hasOwnProperty.call(i,u)},r.p="",r(r.s=1)}([function(e,t){e.exports=A},function(e,t,r){var i=r(0).layoutBase.LayoutConstants,u=r(0).layoutBase.FDLayoutConstants,a=r(0).CoSEConstants,n=r(0).CoSELayout,o=r(0).CoSENode,s=r(0).layoutBase.PointD,l=r(0).layoutBase.DimensionD,g={ready:function(){},stop:function(){},quality:"default",nodeDimensionsIncludeLabels:!1,refresh:30,fit:!0,padding:10,randomize:!0,nodeRepulsion:4500,idealEdgeLength:50,edgeElasticity:0.45,nestingFactor:0.1,gravity:0.25,numIter:2500,tile:!0,animate:"end",animationDuration:500,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:0.5};function C(I,h){var Q={};for(var p in I)Q[p]=I[p];for(var p in h)Q[p]=h[p];return Q}function B(I){this.options=C(g,I),E(this.options)}var E=function(h){if(h.nodeRepulsion!=null)a.DEFAULT_REPULSION_STRENGTH=u.DEFAULT_REPULSION_STRENGTH=h.nodeRepulsion;if(h.idealEdgeLength!=null)a.DEFAULT_EDGE_LENGTH=u.DEFAULT_EDGE_LENGTH=h.idealEdgeLength;if(h.edgeElasticity!=null)a.DEFAULT_SPRING_STRENGTH=u.DEFAULT_SPRING_STRENGTH=h.edgeElasticity;if(h.nestingFactor!=null)a.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=u.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=h.nestingFactor;if(h.gravity!=null)a.DEFAULT_GRAVITY_STRENGTH=u.DEFAULT_GRAVITY_STRENGTH=h.gravity;if(h.numIter!=null)a.MAX_ITERATIONS=u.MAX_ITERATIONS=h.numIter;if(h.gravityRange!=null)a.DEFAULT_GRAVITY_RANGE_FACTOR=u.DEFAULT_GRAVITY_RANGE_FACTOR=h.gravityRange;if(h.gravityCompound!=null)a.DEFAULT_COMPOUND_GRAVITY_STRENGTH=u.DEFAULT_COMPOUND_GRAVITY_STRENGTH=h.gravityCompound;if(h.gravityRangeCompound!=null)a.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=u.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=h.gravityRangeCompound;if(h.initialEnergyOnIncremental!=null)a.DEFAULT_COOLING_FACTOR_INCREMENTAL=u.DEFAULT_COOLING_FACTOR_INCREMENTAL=h.initialEnergyOnIncremental;if(h.quality=="draft")i.QUALITY=0;else if(h.quality=="proof")i.QUALITY=2;else i.QUALITY=1;a.NODE_DIMENSIONS_INCLUDE_LABELS=u.NODE_DIMENSIONS_INCLUDE_LABELS=i.NODE_DIMENSIONS_INCLUDE_LABELS=h.nodeDimensionsIncludeLabels,a.DEFAULT_INCREMENTAL=u.DEFAULT_INCREMENTAL=i.DEFAULT_INCREMENTAL=!h.randomize,a.ANIMATE=u.ANIMATE=i.ANIMATE=h.animate,a.TILE=h.tile,a.TILING_PADDING_VERTICAL=typeof h.tilingPaddingVertical==="function"?h.tilingPaddingVertical.call():h.tilingPaddingVertical,a.TILING_PADDING_HORIZONTAL=typeof h.tilingPaddingHorizontal==="function"?h.tilingPaddingHorizontal.call():h.tilingPaddingHorizontal};B.prototype.run=function(){var I,h,Q=this.options,p=this.idToLNode={},m=this.layout=new n,f=this;f.stopped=!1,this.cy=this.options.cy,this.cy.trigger({type:"layoutstart",layout:this});var D=m.newGraphManager();this.gm=D;var w=this.options.eles.nodes(),b=this.options.eles.edges();this.root=D.addRoot(),this.processChildrenList(this.root,this.getTopMostNodes(w),m);for(var k=0;k<b.length;k++){var v=b[k],S=this.idToLNode[v.data("source")],x=this.idToLNode[v.data("target")];if(S!==x&&S.getEdgesBetween(x).length==0){var F=D.add(m.newEdge(),S,x);F.id=v.id()}}var T=function(M,U){if(typeof M==="number")M=U;var Y=M.data("id"),H=f.idToLNode[Y];return{x:H.getRect().getCenterX(),y:H.getRect().getCenterY()}},R=function L(){var M=function(){if(Q.fit)Q.cy.fit(Q.eles,Q.padding);if(!I)I=!0,f.cy.one("layoutready",Q.ready),f.cy.trigger({type:"layoutready",layout:f})},U=f.options.refresh,Y;for(var H=0;H<U&&!Y;H++)Y=f.stopped||f.layout.tick();if(Y){if(m.checkLayoutSuccess()&&!m.isSubLayout)m.doPostLayout();if(m.tilingPostLayout)m.tilingPostLayout();if(m.isLayoutFinished=!0,f.options.eles.nodes().positions(T),M(),f.cy.one("layoutstop",f.options.stop),f.cy.trigger({type:"layoutstop",layout:f}),h)cancelAnimationFrame(h);I=!1;return}var J=f.layout.getPositionsData();Q.eles.nodes().positions(function(K,O){if(typeof K==="number")K=O;if(!K.isParent()){var P=K.id(),z=J[P],AA=K;while(z==null)if(z=J[AA.data("parent")]||J["DummyCompound_"+AA.data("parent")],J[P]=z,AA=AA.parent()[0],AA==null)break;if(z!=null)return{x:z.x,y:z.y};else return{x:K.position("x"),y:K.position("y")}}}),M(),h=requestAnimationFrame(L)};if(m.addListener("layoutstarted",function(){if(f.options.animate==="during")h=requestAnimationFrame(R)}),m.runLayout(),this.options.animate!=="during")f.options.eles.nodes().not(":parent").layoutPositions(f,f.options,T),I=!1;return this},B.prototype.getTopMostNodes=function(I){var h={};for(var Q=0;Q<I.length;Q++)h[I[Q].id()]=!0;var p=I.filter(function(m,f){if(typeof m==="number")m=f;var D=m.parent()[0];while(D!=null){if(h[D.id()])return!1;D=D.parent()[0]}return!0});return p},B.prototype.processChildrenList=function(I,h,Q){var p=h.length;for(var m=0;m<p;m++){var f=h[m],D=f.children(),w,b=f.layoutDimensions({nodeDimensionsIncludeLabels:this.options.nodeDimensionsIncludeLabels});if(f.outerWidth()!=null&&f.outerHeight()!=null)w=I.add(new o(Q.graphManager,new s(f.position("x")-b.w/2,f.position("y")-b.h/2),new l(parseFloat(b.w),parseFloat(b.h))));else w=I.add(new o(this.graphManager));if(w.id=f.data("id"),w.paddingLeft=parseInt(f.css("padding")),w.paddingTop=parseInt(f.css("padding")),w.paddingRight=parseInt(f.css("padding")),w.paddingBottom=parseInt(f.css("padding")),this.options.nodeDimensionsIncludeLabels){if(f.isParent()){var k=f.boundingBox({includeLabels:!0,includeNodes:!1}).w,v=f.boundingBox({includeLabels:!0,includeNodes:!1}).h,S=f.css("text-halign");w.labelWidth=k,w.labelHeight=v,w.labelPos=S}}if(this.idToLNode[f.data("id")]=w,isNaN(w.rect.x))w.rect.x=0;if(isNaN(w.rect.y))w.rect.y=0;if(D!=null&&D.length>0){var x=Q.getGraphManager().add(Q.newGraph(),w);this.processChildrenList(x,D,Q)}}},B.prototype.stop=function(){return this.stopped=!0,this};var d=function(h){h("layout","cose-bilkent",B)};if(typeof cytoscape<"u")d(cytoscape);e.exports=d}])})});var JJA={};Dt(JJA,{render:()=>tmt});function GJA(A,e){A.forEach((t)=>{let r={id:t.id,labelText:t.label,height:t.height,width:t.width,padding:t.padding??0};Object.keys(t).forEach((i)=>{if(!["id","label","height","width","padding","x","y"].includes(i))r[i]=t[i]}),e.add({group:"nodes",data:r,position:{x:t.x??0,y:t.y??0}})})}function UJA(A,e){A.forEach((t)=>{let r={id:t.id,source:t.start,target:t.end};Object.keys(t).forEach((i)=>{if(!["id","start","end"].includes(i))r[i]=t[i]}),e.add({group:"edges",data:r})})}function MJA(A){return new Promise((e)=>{let t=Qe("body").append("div").attr("id","cy").attr("style","display:none"),r=uc({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"bezier"}}]});t.remove(),GJA(A.nodes,r),UJA(A.edges,r),r.nodes().forEach(function(u){u.layoutDimensions=()=>{let a=u.data();return{w:a.width,h:a.height}}});let i={name:"cose-bilkent",quality:"proof",styleEnabled:!1,animate:!1};r.layout(i).run(),r.ready((u)=>{sA.info("Cytoscape ready",u),e(r)})})}function TJA(A){return A.nodes().map((e)=>{let t=e.data(),r=e.position(),i={id:t.id,x:r.x,y:r.y};return Object.keys(t).forEach((u)=>{if(u!=="id")i[u]=t[u]}),i})}function YJA(A){return A.edges().map((e)=>{let t=e.data(),r=e._private.rscratch,i={id:t.id,source:t.source,target:t.target,startX:r.startX,startY:r.startY,midX:r.midX,midY:r.midY,endX:r.endX,endY:r.endY};return Object.keys(t).forEach((u)=>{if(!["id","source","target"].includes(u))i[u]=t[u]}),i})}async function HJA(A,e){sA.debug("Starting cose-bilkent layout algorithm");try{KJA(A);let t=await MJA(A),r=TJA(t),i=YJA(t);return sA.debug(`Layout completed: ${r.length} nodes, ${i.length} edges`),{nodes:r,edges:i}}catch(t){throw sA.error("Error in cose-bilkent layout algorithm:",t),t}}function KJA(A){if(!A)throw Error("Layout data is required");if(!A.config)throw Error("Configuration is required in layout data");if(!A.rootNode)throw Error("Root node is required");if(!A.nodes||!Array.isArray(A.nodes))throw Error("No nodes found in layout data");if(!Array.isArray(A.edges))throw Error("Edges array is required in layout data");return!0}var NJA,emt,tmt;var OJA=_(()=>{ir();Nt();qaA();Pr();NJA=yu(RJA(),1);uc.use(NJA.default);y(GJA,"addNodes");y(UJA,"addEdges");y(MJA,"createCytoscapeInstance");y(TJA,"extractPositionedNodes");y(YJA,"extractPositionedEdges");y(HJA,"executeCoseBilkentLayout");y(KJA,"validateLayoutData");emt=y(async(A,e,{insertCluster:t,insertEdge:r,insertEdgeLabel:i,insertMarkers:u,insertNode:a,log:n,positionEdgeLabel:o},{algorithm:s})=>{let l={},g={},C=e.select("g");u(C,A.markers,A.type,A.diagramId);let B=C.insert("g").attr("class","subgraphs"),E=C.insert("g").attr("class","edgePaths"),d=C.insert("g").attr("class","edgeLabels"),I=C.insert("g").attr("class","nodes");n.debug("Inserting nodes into DOM for dimension calculation"),await Promise.all(A.nodes.map(async(p)=>{if(p.isGroup){let m={...p};g[p.id]=m,l[p.id]=m,await t(B,p)}else{let m={...p};l[p.id]=m;let f=await a(I,p,{config:A.config,dir:A.direction||"TB"}),D=f.node().getBBox();m.width=D.width,m.height=D.height,m.domId=f,n.debug(`Node ${p.id} dimensions: ${D.width}x${D.height}`)}})),n.debug("Running cose-bilkent layout algorithm");let h={...A,nodes:A.nodes.map((p)=>{let m=l[p.id];return{...p,width:m.width,height:m.height}})},Q=await HJA(h,A.config);n.debug("Positioning nodes based on layout results"),Q.nodes.forEach((p)=>{let m=l[p.id];if(m?.domId)m.domId.attr("transform",`translate(${p.x}, ${p.y})`),m.x=p.x,m.y=p.y,n.debug(`Positioned node ${m.id} at center (${p.x}, ${p.y})`)}),Q.edges.forEach((p)=>{let m=A.edges.find((f)=>f.id===p.id);if(m)m.points=[{x:p.startX,y:p.startY},{x:p.midX,y:p.midY},{x:p.endX,y:p.endY}]}),n.debug("Inserting and positioning edges"),await Promise.all(A.edges.map(async(p)=>{let m=await i(d,p),f=l[p.start??""],D=l[p.end??""];if(f&&D){let w=Q.edges.find((b)=>b.id===p.id);if(w){n.debug("APA01 positionedEdge",w);let b={...p},k=r(E,b,g,A.type,f,D,A.diagramId);o(b,k)}else{let b={...p,points:[{x:f.x||0,y:f.y||0},{x:D.x||0,y:D.y||0}]},k=r(E,b,g,A.type,f,D,A.diagramId);o(b,k)}}})),n.debug("Cose-bilkent rendering completed")},"render"),tmt=emt});var rmt,Xk,$aA,imt,ac,yE;var El=_(()=>{ul();n0();ai();rr();ir();Nt();rmt={common:_e,getConfig:ot,insertCluster:kQ,insertEdge:iy,insertEdgeLabel:hf,insertMarkers:uy,insertNode:BI,interpolateToCurve:JG,labelHelper:Qr,log:sA,positionEdgeLabel:QU},Xk={},$aA=y((A)=>{for(let e of A)Xk[e.name]=e},"registerLayoutLoaders"),imt=y(()=>{$aA([{name:"dagre",loader:y(async()=>await Promise.resolve().then(() => (hUA(),IUA)),"loader")},{name:"swimlane",loader:y(async()=>await Promise.resolve().then(() => (lTA(),sTA)),"loader")},{name:"cose-bilkent",loader:y(async()=>await Promise.resolve().then(() => (OJA(),JJA)),"loader")}])},"registerDefaultLayoutLoaders");imt();ac=y(async(A,e,t)=>{if(!(A.layoutAlgorithm in Xk))throw Error(`Unknown layout algorithm: ${A.layoutAlgorithm}`);if(A.diagramId)for(let g of A.nodes){let C=g.domId||g.id;g.domId=`${A.diagramId}-${C}`}let r=Xk[A.layoutAlgorithm],i=await r.loader(),{theme:u,themeVariables:a}=A.config,{useGradient:n,gradientStart:o,gradientStop:s}=a,l=e.attr("id");if(e.append("defs").append("filter").attr("id",`${l}-drop-shadow`).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${u?.includes("dark")?"#FFFFFF":"#000000"}`),e.append("defs").append("filter").attr("id",`${l}-drop-shadow-small`).attr("height","150%").attr("width","150%").append("feDropShadow").attr("dx","2").attr("dy","2").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${u?.includes("dark")?"#FFFFFF":"#000000"}`),n){let g=e.append("linearGradient").attr("id",e.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");g.append("svg:stop").attr("offset","0%").attr("stop-color",o).attr("stop-opacity",1),g.append("svg:stop").attr("offset","100%").attr("stop-color",s).attr("stop-opacity",1)}return i.render(A,e,rmt,{algorithm:r.algorithm},t)},"render"),yE=y((A="",{fallback:e="dagre"}={})=>{if(A in Xk)return A;if(e in Xk)return sA.warn(`Layout algorithm ${A} is not registered. Using ${e} as fallback.`),e;throw Error(`Both layout algorithms ${A} and ${e} are not registered.`)},"getRegisteredLayoutAlgorithm")});var sw="comm",eY="rule",tY="decl",PJA="@media",_JA="@import",WJA="@supports",qJA="@namespace",$k="@keyframes",rY="@layer",zJA="@scope";function iY(A){return A.trim()}function AF(A,e,t){return A.replace(e,t)}function FI(A,e){return A.charCodeAt(e)|0}function xI(A,e,t){return A.slice(e,t)}function dl(A){return A.length}function uY(A){return A.length}function lw(A,e){return e.push(A),A}var ZJA,Vf;var gw=_(()=>{ZJA=Math.abs,Vf=String.fromCharCode});function nY(A,e,t,r,i,u,a,n){return{value:A,root:e,parent:t,type:r,props:i,children:u,line:aY,column:cw,length:a,return:"",siblings:n}}function jJA(){return Tn}function XJA(){if(Tn=nc>0?FI(Bw,--nc):0,cw--,Tn===10)cw=1,aY--;return Tn}function oc(){if(Tn=nc<VJA?FI(Bw,nc++):0,cw++,Tn===10)cw=1,aY++;return Tn}function SI(){return FI(Bw,nc)}function eF(){return nc}function oY(A,e){return xI(Bw,A,e)}function Cw(A){switch(A){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function $JA(A){return aY=cw=1,VJA=dl(Bw=A),nc=0,[]}function AOA(A){return Bw="",A}function sY(A){return iY(oY(nc-1,AnA(A===91?A+2:A===40?A+1:A)))}function eOA(A){while(Tn=SI())if(Tn<33)oc();else break;return Cw(A)>2||Cw(Tn)>3?"":" "}function tOA(A,e){while(--e&&oc())if(Tn<48||Tn>102||Tn>57&&Tn<65||Tn>70&&Tn<97)break;return oY(A,eF()+(e<6&&SI()==32&&oc()==32))}function AnA(A){while(oc())switch(Tn){case A:return nc;case 34:case 39:if(A!==34&&A!==39)AnA(Tn);break;case 40:if(A===41)AnA(A);break;case 92:oc();break}return nc}function rOA(A,e){while(oc())if(A+Tn===57)break;else if(A+Tn===84&&SI()===47)break;return"/*"+oY(e,nc-1)+"*"+Vf(A===47?A:oc())}function iOA(A){while(!Cw(SI()))oc();return oY(A,nc)}var aY=1,cw=1,VJA=0,nc=0,Tn=0,Bw="";var enA=_(()=>{gw()});function nOA(A){return AOA(lY("",null,null,null,[""],A=$JA(A),0,[0],A))}function lY(A,e,t,r,i,u,a,n,o){var s=0,l=0,g=a,C=0,B=0,E=0,d=1,I=1,h=1,Q=0,p=0,m="",f=i,D=u,w=r,b=m;while(I)switch(E=p,p=oc()){case 40:if(E!=108&&FI(b,g-1)==58)Q++,b+="(";else b+=sY(p);break;case 41:Q--,b+=")";break;case 34:case 39:case 91:b+=sY(p);break;case 9:case 10:case 13:case 32:if(Q>0){b+=Vf(p);break}b+=eOA(E);break;case 92:b+=tOA(eF()-1,7);continue;case 47:switch(SI()){case 42:case 47:if(lw(amt(rOA(oc(),eF()),e,t,o),o),(Cw(E||1)==5||Cw(SI()||1)==5)&&dl(b)&&xI(b,-1,void 0)!==" ")b+=" ";break;default:b+="/"}break;case 123*d:n[s++]=dl(b)*h;case 125*d:case 59:case 0:if(Q>0&&p){b+=Vf(p);break}switch(p){case 0:case 125:I=0;case 59+l:if(h==-1)b=AF(b,/\f/g,"");if(B>0&&(dl(b)-g||d===0))lw(B>32?aOA(b+";",r,t,g-1,o):aOA(AF(b," ","")+";",r,t,g-2,o),o);break;case 59:b+=";";default:if(lw(w=uOA(b,e,t,s,l,i,n,m,f=[],D=[],g,u),u),p===123)if(l===0)lY(b,e,w,w,f,u,g,n,D);else{switch(C){case 99:if(FI(b,3)===110)break;case 108:if(FI(b,2)===97)break;default:l=0;case 100:case 109:case 115:}if(l)lY(A,w,w,r&&lw(uOA(A,w,w,0,0,i,n,m,i,f=[],g,D),D),i,D,g,n,r?f:D);else lY(b,w,w,w,[""],D,0,n,D)}}s=l=B=0,d=h=1,m=b="",g=a;break;case 58:g=1+dl(b),B=E;default:if(d<1){if(p==123)--d;else if(p==125&&d++==0&&XJA()==125)continue}switch(b+=Vf(p),p*d){case 38:h=l>0?1:(b+="\f",-1);break;case 44:if(Q>0)break;n[s++]=(dl(b)-1)*h,h=1;break;case 64:if(SI()===45)b+=sY(oc());C=SI(),l=g=dl(m=b+=iOA(eF())),p++;break;case 45:if(E===45&&dl(b)==2)d=0}}return u}function uOA(A,e,t,r,i,u,a,n,o,s,l,g){var C=i-1,B=i===0?u:[""],E=uY(B);for(var d=0,I=0,h=0;d<r;++d)for(var Q=0,p=xI(A,C+1,C=ZJA(I=a[d])),m=A;Q<E;++Q)if(m=iY(I>0?B[Q]+" "+p:AF(p,/&\f/g,B[Q])))o[h++]=m;return nY(A,e,t,i===0?eY:n,o,s,l,g)}function amt(A,e,t,r){return nY(A,e,t,sw,Vf(jJA()),xI(A,2,-2),0,r)}function aOA(A,e,t,r,i){return nY(A,e,t,tY,xI(A,0,r),xI(A,r+1,-1),r,i)}var oOA=_(()=>{gw();enA()});var sOA=()=>{};function gY(A,e){var t="";for(var r=0;r<A.length;r++)t+=e(A[r],r,A,e)||"";return t}function lOA(A,e,t,r){switch(A.type){case rY:if(A.children.length)break;case _JA:case qJA:case tY:return A.return=A.return||A.value;case sw:return"";case $k:return A.return=A.value+"{"+gY(A.children,r)+"}";case eY:if(!dl(A.value=A.props.join(",")))return""}return dl(t=gY(A.children,r))?A.return=A.value+"{"+t+"}":""}var gOA=_(()=>{gw()});function cOA(A){var e=uY(A);return function(t,r,i,u){var a="";for(var n=0;n<e;n++)a+=A[n](t,r,i,u)||"";return a}}var COA=_(()=>{gw()});var BOA=_(()=>{gw();oOA();sOA();enA();gOA();COA()});var tnA,jf,cY,EOA,CY,BY,K0,EY,Ew;var lg=_(()=>{rr();Nt();Pr();tnA=yu(JD(),1),jf=y((A,e)=>{let t=A.append("rect");if(t.attr("x",e.x),t.attr("y",e.y),t.attr("fill",e.fill),t.attr("stroke",e.stroke),t.attr("width",e.width),t.attr("height",e.height),e.name)t.attr("name",e.name);if(e.rx)t.attr("rx",e.rx);if(e.ry)t.attr("ry",e.ry);if(e.attrs!==void 0)for(let r in e.attrs)t.attr(r,e.attrs[r]);if(e.class)t.attr("class",e.class);return t},"drawRect"),cY=y((A,e)=>{let t={x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,stroke:e.stroke,class:"rect"};jf(A,t).lower()},"drawBackgroundRect"),EOA=y((A,e)=>{let t=e.text.replace(Kp," "),r=A.append("text");if(r.attr("x",e.x),r.attr("y",e.y),r.attr("class","legend"),r.style("text-anchor",e.anchor),e.class)r.attr("class",e.class);let i=r.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(t),r},"drawText"),CY=y((A,e,t,r)=>{let i=A.append("image");i.attr("x",e),i.attr("y",t);let u=tnA.sanitizeUrl(r);i.attr("xlink:href",u)},"drawImage"),BY=y((A,e,t,r)=>{let i=A.append("use");i.attr("x",e),i.attr("y",t);let u=tnA.sanitizeUrl(r);i.attr("xlink:href",`#${u}`)},"drawEmbeddedImage"),K0=y(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),EY=y(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),Ew=y(()=>{let A=Qe(".mermaidTooltip");if(A.empty())A=Qe("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100");return A},"createTooltip")});function lc(A,e,t,r,i){if(!e[A].width)if(t)e[A].text=gf(e[A].text,i,r),e[A].textLines=e[A].text.split(_e.lineBreakRegex).length,e[A].width=i,e[A].height=Qv(e[A].text,r);else{let u=e[A].text.split(_e.lineBreakRegex);e[A].textLines=u.length;let a=0;e[A].height=0,e[A].width=0;for(let n of u)e[A].width=Math.max(i0(n,r),e[A].width),a=Qv(n,r),e[A].height=e[A].height+a}}function snA(A,e,t,r,i){let u=new yOA(i);u.data.widthLimit=t.data.widthLimit/Math.min(inA,r.length);for(let[a,n]of r.entries()){let o=0;if(n.image={width:0,height:0,Y:0},n.sprite)n.image.width=48,n.image.height=48,n.image.Y=o,o=n.image.Y+n.image.height;let s=n.wrap&&Zt.wrap,l=dY(Zt);if(l.fontSize=l.fontSize+2,l.fontWeight="bold",lc("label",n,s,l,u.data.widthLimit),n.label.Y=o+8,o=n.label.Y+n.label.height,n.type&&n.type.text!==""){n.type.text="["+n.type.text+"]";let E=dY(Zt);lc("type",n,s,E,u.data.widthLimit),n.type.Y=o+5,o=n.type.Y+n.type.height}if(n.descr&&n.descr.text!==""){let E=dY(Zt);E.fontSize=E.fontSize-2,lc("descr",n,s,E,u.data.widthLimit),n.descr.Y=o+20,o=n.descr.Y+n.descr.height}if(a==0||a%inA===0){let E=t.data.startx+Zt.diagramMarginX,d=t.data.stopy+Zt.diagramMarginY+o;u.setData(E,E,d,d)}else{let E=u.data.stopx!==u.data.startx?u.data.stopx+Zt.diagramMarginX:u.data.startx,d=u.data.starty;u.setData(E,E,d,d)}u.name=n.alias;let g=i.db.getC4ShapeArray(n.alias),C=i.db.getC4ShapeKeys(n.alias);if(C.length>0)bOA(u,A,g,C);e=n.alias;let B=i.db.getBoundaries(e);if(B.length>0)snA(A,e,u,B,i);if(n.alias!=="global")wOA(A,n,u);t.data.stopy=Math.max(u.data.stopy+Zt.c4ShapeMargin,t.data.stopy),t.data.stopx=Math.max(u.data.stopx+Zt.c4ShapeMargin,t.data.stopx),pY=Math.max(pY,t.data.stopx),fY=Math.max(fY,t.data.stopy)}}var fOA,IY,nmt,mC,m4,fs="global",fC="",bE,rF,anA="",nnA=!1,hY=4,QY=2,hOA,omt,smt,lmt,gmt,cmt,Cmt,Bmt,Emt,dmt,Imt,hmt,Qmt,pmt,fmt,mmt,Dmt,ymt,QOA,wmt,bmt,pOA,vmt,kmt,Fmt,xmt,D4,Smt,Lmt,Rmt,Nmt,Gmt,rnA,onA,mOA,Umt,Mmt,Tmt,Ymt,Hmt,Kmt,Jmt,Omt,Pmt,_mt,Wmt,LI,wE,pY=0,fY=0,DOA=4,inA=2,Zt,yOA,unA,tF,dY,qmt,wOA,bOA,sc,dOA,zmt,Zmt,Vmt,IOA,jmt,Xmt,vOA;var kOA=_(()=>{lg();ai();rr();ir();Nt();Pr();fOA=yu(JD(),1),IY=function(){var A=y(function(eA,BA,yA,vA){for(yA=yA||{},vA=eA.length;vA--;yA[eA[vA]]=BA);return yA},"o"),e=[1,24],t=[1,25],r=[1,26],i=[1,27],u=[1,28],a=[1,63],n=[1,64],o=[1,65],s=[1,66],l=[1,67],g=[1,68],C=[1,69],B=[1,29],E=[1,30],d=[1,31],I=[1,32],h=[1,33],Q=[1,34],p=[1,35],m=[1,36],f=[1,37],D=[1,38],w=[1,39],b=[1,40],k=[1,41],v=[1,42],S=[1,43],x=[1,44],F=[1,45],T=[1,46],R=[1,47],L=[1,48],M=[1,50],U=[1,51],Y=[1,52],H=[1,53],J=[1,54],K=[1,55],O=[1,56],P=[1,57],z=[1,58],AA=[1,59],W=[1,60],CA=[14,42],tA=[14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],lA=[12,14,34,36,37,38,39,40,41,42,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],gA=[1,82],aA=[1,83],NA=[1,84],DA=[1,85],KA=[12,14,42],TA=[12,14,33,42],qA=[12,14,33,42,76,77,79,80],IA=[12,33],bA=[34,36,37,38,39,40,41,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],SA={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,direction_tb:6,direction_bt:7,direction_rl:8,direction_lr:9,graphConfig:10,C4_CONTEXT:11,NEWLINE:12,statements:13,EOF:14,C4_CONTAINER:15,C4_COMPONENT:16,C4_DYNAMIC:17,C4_DEPLOYMENT:18,otherStatements:19,diagramStatements:20,otherStatement:21,title:22,accDescription:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,boundaryStatement:29,boundaryStartStatement:30,boundaryStopStatement:31,boundaryStart:32,LBRACE:33,ENTERPRISE_BOUNDARY:34,attributes:35,SYSTEM_BOUNDARY:36,BOUNDARY:37,CONTAINER_BOUNDARY:38,NODE:39,NODE_L:40,NODE_R:41,RBRACE:42,diagramStatement:43,PERSON:44,PERSON_EXT:45,SYSTEM:46,SYSTEM_DB:47,SYSTEM_QUEUE:48,SYSTEM_EXT:49,SYSTEM_EXT_DB:50,SYSTEM_EXT_QUEUE:51,CONTAINER:52,CONTAINER_DB:53,CONTAINER_QUEUE:54,CONTAINER_EXT:55,CONTAINER_EXT_DB:56,CONTAINER_EXT_QUEUE:57,COMPONENT:58,COMPONENT_DB:59,COMPONENT_QUEUE:60,COMPONENT_EXT:61,COMPONENT_EXT_DB:62,COMPONENT_EXT_QUEUE:63,REL:64,BIREL:65,REL_U:66,REL_D:67,REL_L:68,REL_R:69,REL_B:70,REL_INDEX:71,UPDATE_EL_STYLE:72,UPDATE_REL_STYLE:73,UPDATE_LAYOUT_CONFIG:74,attribute:75,STR:76,STR_KEY:77,STR_VALUE:78,ATTRIBUTE:79,ATTRIBUTE_EMPTY:80,$accept:0,$end:1},terminals_:{2:"error",6:"direction_tb",7:"direction_bt",8:"direction_rl",9:"direction_lr",11:"C4_CONTEXT",12:"NEWLINE",14:"EOF",15:"C4_CONTAINER",16:"C4_COMPONENT",17:"C4_DYNAMIC",18:"C4_DEPLOYMENT",22:"title",23:"accDescription",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"LBRACE",34:"ENTERPRISE_BOUNDARY",36:"SYSTEM_BOUNDARY",37:"BOUNDARY",38:"CONTAINER_BOUNDARY",39:"NODE",40:"NODE_L",41:"NODE_R",42:"RBRACE",44:"PERSON",45:"PERSON_EXT",46:"SYSTEM",47:"SYSTEM_DB",48:"SYSTEM_QUEUE",49:"SYSTEM_EXT",50:"SYSTEM_EXT_DB",51:"SYSTEM_EXT_QUEUE",52:"CONTAINER",53:"CONTAINER_DB",54:"CONTAINER_QUEUE",55:"CONTAINER_EXT",56:"CONTAINER_EXT_DB",57:"CONTAINER_EXT_QUEUE",58:"COMPONENT",59:"COMPONENT_DB",60:"COMPONENT_QUEUE",61:"COMPONENT_EXT",62:"COMPONENT_EXT_DB",63:"COMPONENT_EXT_QUEUE",64:"REL",65:"BIREL",66:"REL_U",67:"REL_D",68:"REL_L",69:"REL_R",70:"REL_B",71:"REL_INDEX",72:"UPDATE_EL_STYLE",73:"UPDATE_REL_STYLE",74:"UPDATE_LAYOUT_CONFIG",76:"STR",77:"STR_KEY",78:"STR_VALUE",79:"ATTRIBUTE",80:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[5,1],[5,1],[5,1],[5,1],[4,1],[10,4],[10,4],[10,4],[10,4],[10,4],[13,1],[13,1],[13,2],[19,1],[19,2],[19,3],[21,1],[21,1],[21,2],[21,2],[21,1],[29,3],[30,3],[30,3],[30,4],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[32,2],[31,1],[20,1],[20,2],[20,3],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,1],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[43,2],[35,1],[35,2],[75,1],[75,2],[75,1],[75,1]],performAction:y(function(BA,yA,vA,FA,HA,dA,q){var Z=dA.length-1;switch(HA){case 3:FA.setDirection("TB");break;case 4:FA.setDirection("BT");break;case 5:FA.setDirection("RL");break;case 6:FA.setDirection("LR");break;case 8:case 9:case 10:case 11:case 12:FA.setC4Type(dA[Z-3]);break;case 19:FA.setTitle(dA[Z].substring(6)),this.$=dA[Z].substring(6);break;case 20:FA.setAccDescription(dA[Z].substring(15)),this.$=dA[Z].substring(15);break;case 21:this.$=dA[Z].trim(),FA.setTitle(this.$);break;case 22:case 23:this.$=dA[Z].trim(),FA.setAccDescription(this.$);break;case 28:dA[Z].splice(2,0,"ENTERPRISE"),FA.addPersonOrSystemBoundary(...dA[Z]),this.$=dA[Z];break;case 29:dA[Z].splice(2,0,"SYSTEM"),FA.addPersonOrSystemBoundary(...dA[Z]),this.$=dA[Z];break;case 30:FA.addPersonOrSystemBoundary(...dA[Z]),this.$=dA[Z];break;case 31:dA[Z].splice(2,0,"CONTAINER"),FA.addContainerBoundary(...dA[Z]),this.$=dA[Z];break;case 32:FA.addDeploymentNode("node",...dA[Z]),this.$=dA[Z];break;case 33:FA.addDeploymentNode("nodeL",...dA[Z]),this.$=dA[Z];break;case 34:FA.addDeploymentNode("nodeR",...dA[Z]),this.$=dA[Z];break;case 35:FA.popBoundaryParseStack();break;case 39:FA.addPersonOrSystem("person",...dA[Z]),this.$=dA[Z];break;case 40:FA.addPersonOrSystem("external_person",...dA[Z]),this.$=dA[Z];break;case 41:FA.addPersonOrSystem("system",...dA[Z]),this.$=dA[Z];break;case 42:FA.addPersonOrSystem("system_db",...dA[Z]),this.$=dA[Z];break;case 43:FA.addPersonOrSystem("system_queue",...dA[Z]),this.$=dA[Z];break;case 44:FA.addPersonOrSystem("external_system",...dA[Z]),this.$=dA[Z];break;case 45:FA.addPersonOrSystem("external_system_db",...dA[Z]),this.$=dA[Z];break;case 46:FA.addPersonOrSystem("external_system_queue",...dA[Z]),this.$=dA[Z];break;case 47:FA.addContainer("container",...dA[Z]),this.$=dA[Z];break;case 48:FA.addContainer("container_db",...dA[Z]),this.$=dA[Z];break;case 49:FA.addContainer("container_queue",...dA[Z]),this.$=dA[Z];break;case 50:FA.addContainer("external_container",...dA[Z]),this.$=dA[Z];break;case 51:FA.addContainer("external_container_db",...dA[Z]),this.$=dA[Z];break;case 52:FA.addContainer("external_container_queue",...dA[Z]),this.$=dA[Z];break;case 53:FA.addComponent("component",...dA[Z]),this.$=dA[Z];break;case 54:FA.addComponent("component_db",...dA[Z]),this.$=dA[Z];break;case 55:FA.addComponent("component_queue",...dA[Z]),this.$=dA[Z];break;case 56:FA.addComponent("external_component",...dA[Z]),this.$=dA[Z];break;case 57:FA.addComponent("external_component_db",...dA[Z]),this.$=dA[Z];break;case 58:FA.addComponent("external_component_queue",...dA[Z]),this.$=dA[Z];break;case 60:FA.addRel("rel",...dA[Z]),this.$=dA[Z];break;case 61:FA.addRel("birel",...dA[Z]),this.$=dA[Z];break;case 62:FA.addRel("rel_u",...dA[Z]),this.$=dA[Z];break;case 63:FA.addRel("rel_d",...dA[Z]),this.$=dA[Z];break;case 64:FA.addRel("rel_l",...dA[Z]),this.$=dA[Z];break;case 65:FA.addRel("rel_r",...dA[Z]),this.$=dA[Z];break;case 66:FA.addRel("rel_b",...dA[Z]),this.$=dA[Z];break;case 67:dA[Z].splice(0,1),FA.addRel("rel",...dA[Z]),this.$=dA[Z];break;case 68:FA.updateElStyle("update_el_style",...dA[Z]),this.$=dA[Z];break;case 69:FA.updateRelStyle("update_rel_style",...dA[Z]),this.$=dA[Z];break;case 70:FA.updateLayoutConfig("update_layout_config",...dA[Z]),this.$=dA[Z];break;case 71:this.$=[dA[Z]];break;case 72:dA[Z].unshift(dA[Z-1]),this.$=dA[Z];break;case 73:case 75:this.$=dA[Z].trim();break;case 74:let fA={};fA[dA[Z-1].trim()]=dA[Z].trim(),this.$=fA;break;case 76:this.$="";break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],7:[1,6],8:[1,7],9:[1,8],10:4,11:[1,9],15:[1,10],16:[1,11],17:[1,12],18:[1,13]},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,7]},{1:[2,3]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{12:[1,14]},{12:[1,15]},{12:[1,16]},{12:[1,17]},{12:[1,18]},{13:19,19:20,20:21,21:22,22:e,23:t,24:r,26:i,28:u,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:k,57:v,58:S,59:x,60:F,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:P,72:z,73:AA,74:W},{13:70,19:20,20:21,21:22,22:e,23:t,24:r,26:i,28:u,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:k,57:v,58:S,59:x,60:F,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:P,72:z,73:AA,74:W},{13:71,19:20,20:21,21:22,22:e,23:t,24:r,26:i,28:u,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:k,57:v,58:S,59:x,60:F,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:P,72:z,73:AA,74:W},{13:72,19:20,20:21,21:22,22:e,23:t,24:r,26:i,28:u,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:k,57:v,58:S,59:x,60:F,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:P,72:z,73:AA,74:W},{13:73,19:20,20:21,21:22,22:e,23:t,24:r,26:i,28:u,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:k,57:v,58:S,59:x,60:F,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:P,72:z,73:AA,74:W},{14:[1,74]},A(CA,[2,13],{43:23,29:49,30:61,32:62,20:75,34:a,36:n,37:o,38:s,39:l,40:g,41:C,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:k,57:v,58:S,59:x,60:F,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:P,72:z,73:AA,74:W}),A(CA,[2,14]),A(tA,[2,16],{12:[1,76]}),A(CA,[2,36],{12:[1,77]}),A(lA,[2,19]),A(lA,[2,20]),{25:[1,78]},{27:[1,79]},A(lA,[2,23]),{35:80,75:81,76:gA,77:aA,79:NA,80:DA},{35:86,75:81,76:gA,77:aA,79:NA,80:DA},{35:87,75:81,76:gA,77:aA,79:NA,80:DA},{35:88,75:81,76:gA,77:aA,79:NA,80:DA},{35:89,75:81,76:gA,77:aA,79:NA,80:DA},{35:90,75:81,76:gA,77:aA,79:NA,80:DA},{35:91,75:81,76:gA,77:aA,79:NA,80:DA},{35:92,75:81,76:gA,77:aA,79:NA,80:DA},{35:93,75:81,76:gA,77:aA,79:NA,80:DA},{35:94,75:81,76:gA,77:aA,79:NA,80:DA},{35:95,75:81,76:gA,77:aA,79:NA,80:DA},{35:96,75:81,76:gA,77:aA,79:NA,80:DA},{35:97,75:81,76:gA,77:aA,79:NA,80:DA},{35:98,75:81,76:gA,77:aA,79:NA,80:DA},{35:99,75:81,76:gA,77:aA,79:NA,80:DA},{35:100,75:81,76:gA,77:aA,79:NA,80:DA},{35:101,75:81,76:gA,77:aA,79:NA,80:DA},{35:102,75:81,76:gA,77:aA,79:NA,80:DA},{35:103,75:81,76:gA,77:aA,79:NA,80:DA},{35:104,75:81,76:gA,77:aA,79:NA,80:DA},A(KA,[2,59]),{35:105,75:81,76:gA,77:aA,79:NA,80:DA},{35:106,75:81,76:gA,77:aA,79:NA,80:DA},{35:107,75:81,76:gA,77:aA,79:NA,80:DA},{35:108,75:81,76:gA,77:aA,79:NA,80:DA},{35:109,75:81,76:gA,77:aA,79:NA,80:DA},{35:110,75:81,76:gA,77:aA,79:NA,80:DA},{35:111,75:81,76:gA,77:aA,79:NA,80:DA},{35:112,75:81,76:gA,77:aA,79:NA,80:DA},{35:113,75:81,76:gA,77:aA,79:NA,80:DA},{35:114,75:81,76:gA,77:aA,79:NA,80:DA},{35:115,75:81,76:gA,77:aA,79:NA,80:DA},{20:116,29:49,30:61,32:62,34:a,36:n,37:o,38:s,39:l,40:g,41:C,43:23,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:k,57:v,58:S,59:x,60:F,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:P,72:z,73:AA,74:W},{12:[1,118],33:[1,117]},{35:119,75:81,76:gA,77:aA,79:NA,80:DA},{35:120,75:81,76:gA,77:aA,79:NA,80:DA},{35:121,75:81,76:gA,77:aA,79:NA,80:DA},{35:122,75:81,76:gA,77:aA,79:NA,80:DA},{35:123,75:81,76:gA,77:aA,79:NA,80:DA},{35:124,75:81,76:gA,77:aA,79:NA,80:DA},{35:125,75:81,76:gA,77:aA,79:NA,80:DA},{14:[1,126]},{14:[1,127]},{14:[1,128]},{14:[1,129]},{1:[2,8]},A(CA,[2,15]),A(tA,[2,17],{21:22,19:130,22:e,23:t,24:r,26:i,28:u}),A(CA,[2,37],{19:20,20:21,21:22,43:23,29:49,30:61,32:62,13:131,22:e,23:t,24:r,26:i,28:u,34:a,36:n,37:o,38:s,39:l,40:g,41:C,44:B,45:E,46:d,47:I,48:h,49:Q,50:p,51:m,52:f,53:D,54:w,55:b,56:k,57:v,58:S,59:x,60:F,61:T,62:R,63:L,64:M,65:U,66:Y,67:H,68:J,69:K,70:O,71:P,72:z,73:AA,74:W}),A(lA,[2,21]),A(lA,[2,22]),A(KA,[2,39]),A(TA,[2,71],{75:81,35:132,76:gA,77:aA,79:NA,80:DA}),A(qA,[2,73]),{78:[1,133]},A(qA,[2,75]),A(qA,[2,76]),A(KA,[2,40]),A(KA,[2,41]),A(KA,[2,42]),A(KA,[2,43]),A(KA,[2,44]),A(KA,[2,45]),A(KA,[2,46]),A(KA,[2,47]),A(KA,[2,48]),A(KA,[2,49]),A(KA,[2,50]),A(KA,[2,51]),A(KA,[2,52]),A(KA,[2,53]),A(KA,[2,54]),A(KA,[2,55]),A(KA,[2,56]),A(KA,[2,57]),A(KA,[2,58]),A(KA,[2,60]),A(KA,[2,61]),A(KA,[2,62]),A(KA,[2,63]),A(KA,[2,64]),A(KA,[2,65]),A(KA,[2,66]),A(KA,[2,67]),A(KA,[2,68]),A(KA,[2,69]),A(KA,[2,70]),{31:134,42:[1,135]},{12:[1,136]},{33:[1,137]},A(IA,[2,28]),A(IA,[2,29]),A(IA,[2,30]),A(IA,[2,31]),A(IA,[2,32]),A(IA,[2,33]),A(IA,[2,34]),{1:[2,9]},{1:[2,10]},{1:[2,11]},{1:[2,12]},A(tA,[2,18]),A(CA,[2,38]),A(TA,[2,72]),A(qA,[2,74]),A(KA,[2,24]),A(KA,[2,35]),A(bA,[2,25]),A(bA,[2,26],{12:[1,138]}),A(bA,[2,27])],defaultActions:{2:[2,1],3:[2,2],4:[2,7],5:[2,3],6:[2,4],7:[2,5],8:[2,6],74:[2,8],126:[2,9],127:[2,10],128:[2,11],129:[2,12]},parseError:y(function(BA,yA){if(yA.recoverable)this.trace(BA);else{var vA=Error(BA);throw vA.hash=yA,vA}},"parseError"),parse:y(function(BA){var yA=this,vA=[0],FA=[],HA=[null],dA=[],q=this.table,Z="",fA=0,j=0,mA=0,rA=2,JA=1,_A=dA.slice.call(arguments,1),ZA=Object.create(this.lexer),WA={yy:{}};for(var te in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,te))WA.yy[te]=this.yy[te];if(ZA.setInput(BA,WA.yy),WA.yy.lexer=ZA,WA.yy.parser=this,typeof ZA.yylloc>"u")ZA.yylloc={};var zA=ZA.yylloc;dA.push(zA);var Ae=ZA.options&&ZA.options.ranges;if(typeof WA.yy.parseError==="function")this.parseError=WA.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function $A(de){vA.length=vA.length-2*de,HA.length=HA.length-de,dA.length=dA.length-de}y($A,"popStack");function oe(){var de=FA.pop()||ZA.lex()||JA;if(typeof de!=="number"){if(de instanceof Array)FA=de,de=FA.pop();de=yA.symbols_[de]||de}return de}y(oe,"lex");var kA,Pe,MA,ke,We,ue,Me={},je,Ge,wA,Re;while(!0){if(MA=vA[vA.length-1],this.defaultActions[MA])ke=this.defaultActions[MA];else{if(kA===null||typeof kA>"u")kA=oe();ke=q[MA]&&q[MA][kA]}if(typeof ke>"u"||!ke.length||!ke[0]){var He="";Re=[];for(je in q[MA])if(this.terminals_[je]&&je>rA)Re.push("'"+this.terminals_[je]+"'");if(ZA.showPosition)He="Parse error on line "+(fA+1)+`:
`+ZA.showPosition()+`
Expecting `+Re.join(", ")+", got '"+(this.terminals_[kA]||kA)+"'";else He="Parse error on line "+(fA+1)+": Unexpected "+(kA==JA?"end of input":"'"+(this.terminals_[kA]||kA)+"'");this.parseError(He,{text:ZA.match,token:this.terminals_[kA]||kA,line:ZA.yylineno,loc:zA,expected:Re})}if(ke[0]instanceof Array&&ke.length>1)throw Error("Parse Error: multiple actions possible at state: "+MA+", token: "+kA);switch(ke[0]){case 1:if(vA.push(kA),HA.push(ZA.yytext),dA.push(ZA.yylloc),vA.push(ke[1]),kA=null,!Pe){if(j=ZA.yyleng,Z=ZA.yytext,fA=ZA.yylineno,zA=ZA.yylloc,mA>0)mA--}else kA=Pe,Pe=null;break;case 2:if(Ge=this.productions_[ke[1]][1],Me.$=HA[HA.length-Ge],Me._$={first_line:dA[dA.length-(Ge||1)].first_line,last_line:dA[dA.length-1].last_line,first_column:dA[dA.length-(Ge||1)].first_column,last_column:dA[dA.length-1].last_column},Ae)Me._$.range=[dA[dA.length-(Ge||1)].range[0],dA[dA.length-1].range[1]];if(ue=this.performAction.apply(Me,[Z,j,fA,WA.yy,ke[1],HA,dA].concat(_A)),typeof ue<"u")return ue;if(Ge)vA=vA.slice(0,-1*Ge*2),HA=HA.slice(0,-1*Ge),dA=dA.slice(0,-1*Ge);vA.push(this.productions_[ke[1]][0]),HA.push(Me.$),dA.push(Me._$),wA=q[vA[vA.length-2]][vA[vA.length-1]],vA.push(wA);break;case 3:return!0}}return!0},"parse")},EA=function(){var eA={EOF:1,parseError:y(function(yA,vA){if(this.yy.parser)this.yy.parser.parseError(yA,vA);else throw Error(yA)},"parseError"),setInput:y(function(BA,yA){if(this.yy=yA||this.yy||{},this._input=BA,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var BA=this._input[0];this.yytext+=BA,this.yyleng++,this.offset++,this.match+=BA,this.matched+=BA;var yA=BA.match(/(?:\r\n?|\n).*/g);if(yA)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),BA},"input"),unput:y(function(BA){var yA=BA.length,vA=BA.split(/(?:\r\n?|\n)/g);this._input=BA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-yA),this.offset-=yA;var FA=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),vA.length-1)this.yylineno-=vA.length-1;var HA=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:vA?(vA.length===FA.length?this.yylloc.first_column:0)+FA[FA.length-vA.length].length-vA[0].length:this.yylloc.first_column-yA},this.options.ranges)this.yylloc.range=[HA[0],HA[0]+this.yyleng-yA];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(BA){this.unput(this.match.slice(BA))},"less"),pastInput:y(function(){var BA=this.matched.substr(0,this.matched.length-this.match.length);return(BA.length>20?"...":"")+BA.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var BA=this.match;if(BA.length<20)BA+=this._input.substr(0,20-BA.length);return(BA.substr(0,20)+(BA.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var BA=this.pastInput(),yA=Array(BA.length+1).join("-");return BA+this.upcomingInput()+`
`+yA+"^"},"showPosition"),test_match:y(function(BA,yA){var vA,FA,HA;if(this.options.backtrack_lexer){if(HA={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)HA.yylloc.range=this.yylloc.range.slice(0)}if(FA=BA[0].match(/(?:\r\n?|\n).*/g),FA)this.yylineno+=FA.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:FA?FA[FA.length-1].length-FA[FA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+BA[0].length},this.yytext+=BA[0],this.match+=BA[0],this.matches=BA,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(BA[0].length),this.matched+=BA[0],vA=this.performAction.call(this,this.yy,this,yA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(vA)return vA;else if(this._backtrack){for(var dA in HA)this[dA]=HA[dA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var BA,yA,vA,FA;if(!this._more)this.yytext="",this.match="";var HA=this._currentRules();for(var dA=0;dA<HA.length;dA++)if(vA=this._input.match(this.rules[HA[dA]]),vA&&(!yA||vA[0].length>yA[0].length)){if(yA=vA,FA=dA,this.options.backtrack_lexer)if(BA=this.test_match(vA,HA[dA]),BA!==!1)return BA;else if(this._backtrack){yA=!1;continue}else return!1;else if(!this.options.flex)break}if(yA){if(BA=this.test_match(yA,HA[FA]),BA!==!1)return BA;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var yA=this.next();if(yA)return yA;else return this.lex()},"lex"),begin:y(function(yA){this.conditionStack.push(yA)},"begin"),popState:y(function(){var yA=this.conditionStack.length-1;if(yA>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(yA){if(yA=this.conditionStack.length-1-Math.abs(yA||0),yA>=0)return this.conditionStack[yA];else return"INITIAL"},"topState"),pushState:y(function(yA){this.begin(yA)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:y(function(yA,vA,FA,HA){var dA=HA;switch(FA){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),26;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;break;case 23:return this.begin("person"),44;break;case 24:return this.begin("system_ext_queue"),51;break;case 25:return this.begin("system_ext_db"),50;break;case 26:return this.begin("system_ext"),49;break;case 27:return this.begin("system_queue"),48;break;case 28:return this.begin("system_db"),47;break;case 29:return this.begin("system"),46;break;case 30:return this.begin("boundary"),37;break;case 31:return this.begin("enterprise_boundary"),34;break;case 32:return this.begin("system_boundary"),36;break;case 33:return this.begin("container_ext_queue"),57;break;case 34:return this.begin("container_ext_db"),56;break;case 35:return this.begin("container_ext"),55;break;case 36:return this.begin("container_queue"),54;break;case 37:return this.begin("container_db"),53;break;case 38:return this.begin("container"),52;break;case 39:return this.begin("container_boundary"),38;break;case 40:return this.begin("component_ext_queue"),63;break;case 41:return this.begin("component_ext_db"),62;break;case 42:return this.begin("component_ext"),61;break;case 43:return this.begin("component_queue"),60;break;case 44:return this.begin("component_db"),59;break;case 45:return this.begin("component"),58;break;case 46:return this.begin("node"),39;break;case 47:return this.begin("node"),39;break;case 48:return this.begin("node_l"),40;break;case 49:return this.begin("node_r"),41;break;case 50:return this.begin("rel"),64;break;case 51:return this.begin("birel"),65;break;case 52:return this.begin("rel_u"),66;break;case 53:return this.begin("rel_u"),66;break;case 54:return this.begin("rel_d"),67;break;case 55:return this.begin("rel_d"),67;break;case 56:return this.begin("rel_l"),68;break;case 57:return this.begin("rel_l"),68;break;case 58:return this.begin("rel_r"),69;break;case 59:return this.begin("rel_r"),69;break;case 60:return this.begin("rel_b"),70;break;case 61:return this.begin("rel_index"),71;break;case 62:return this.begin("update_el_style"),72;break;case 63:return this.begin("update_rel_style"),73;break;case 64:return this.begin("update_layout_config"),74;break;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";break;case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";break;case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[65,66,67,68],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}};return eA}();SA.lexer=EA;function nA(){this.yy={}}return y(nA,"Parser"),nA.prototype=SA,SA.Parser=nA,new nA}();IY.parser=IY;nmt=IY,mC=[],m4=[""],bE=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],rF=[],omt=y(function(){return hOA},"getC4Type"),smt=y(function(A){hOA=gr(A,OA())},"setC4Type"),lmt=y(function(A,e,t,r,i,u,a,n,o){if(A===void 0||A===null||e===void 0||e===null||t===void 0||t===null||r===void 0||r===null)return;let s={},l=rF.find((g)=>g.from===e&&g.to===t);if(l)s=l;else rF.push(s);if(s.type=A,s.from=e,s.to=t,s.label={text:r},i===void 0||i===null)s.techn={text:""};else if(typeof i==="object"){let[g,C]=Object.entries(i)[0];s[g]={text:C}}else s.techn={text:i};if(u===void 0||u===null)s.descr={text:""};else if(typeof u==="object"){let[g,C]=Object.entries(u)[0];s[g]={text:C}}else s.descr={text:u};if(typeof a==="object"){let[g,C]=Object.entries(a)[0];s[g]=C}else s.sprite=a;if(typeof n==="object"){let[g,C]=Object.entries(n)[0];s[g]=C}else s.tags=n;if(typeof o==="object"){let[g,C]=Object.entries(o)[0];s[g]=C}else s.link=o;s.wrap=D4()},"addRel"),gmt=y(function(A,e,t,r,i,u,a){if(e===null||t===null)return;let n={},o=mC.find((s)=>s.alias===e);if(o&&e===o.alias)n=o;else n.alias=e,mC.push(n);if(t===void 0||t===null)n.label={text:""};else n.label={text:t};if(r===void 0||r===null)n.descr={text:""};else if(typeof r==="object"){let[s,l]=Object.entries(r)[0];n[s]={text:l}}else n.descr={text:r};if(typeof i==="object"){let[s,l]=Object.entries(i)[0];n[s]=l}else n.sprite=i;if(typeof u==="object"){let[s,l]=Object.entries(u)[0];n[s]=l}else n.tags=u;if(typeof a==="object"){let[s,l]=Object.entries(a)[0];n[s]=l}else n.link=a;n.typeC4Shape={text:A},n.parentBoundary=fs,n.wrap=D4()},"addPersonOrSystem"),cmt=y(function(A,e,t,r,i,u,a,n){if(e===null||t===null)return;let o={},s=mC.find((l)=>l.alias===e);if(s&&e===s.alias)o=s;else o.alias=e,mC.push(o);if(t===void 0||t===null)o.label={text:""};else o.label={text:t};if(r===void 0||r===null)o.techn={text:""};else if(typeof r==="object"){let[l,g]=Object.entries(r)[0];o[l]={text:g}}else o.techn={text:r};if(i===void 0||i===null)o.descr={text:""};else if(typeof i==="object"){let[l,g]=Object.entries(i)[0];o[l]={text:g}}else o.descr={text:i};if(typeof u==="object"){let[l,g]=Object.entries(u)[0];o[l]=g}else o.sprite=u;if(typeof a==="object"){let[l,g]=Object.entries(a)[0];o[l]=g}else o.tags=a;if(typeof n==="object"){let[l,g]=Object.entries(n)[0];o[l]=g}else o.link=n;o.wrap=D4(),o.typeC4Shape={text:A},o.parentBoundary=fs},"addContainer"),Cmt=y(function(A,e,t,r,i,u,a,n){if(e===null||t===null)return;let o={},s=mC.find((l)=>l.alias===e);if(s&&e===s.alias)o=s;else o.alias=e,mC.push(o);if(t===void 0||t===null)o.label={text:""};else o.label={text:t};if(r===void 0||r===null)o.techn={text:""};else if(typeof r==="object"){let[l,g]=Object.entries(r)[0];o[l]={text:g}}else o.techn={text:r};if(i===void 0||i===null)o.descr={text:""};else if(typeof i==="object"){let[l,g]=Object.entries(i)[0];o[l]={text:g}}else o.descr={text:i};if(typeof u==="object"){let[l,g]=Object.entries(u)[0];o[l]=g}else o.sprite=u;if(typeof a==="object"){let[l,g]=Object.entries(a)[0];o[l]=g}else o.tags=a;if(typeof n==="object"){let[l,g]=Object.entries(n)[0];o[l]=g}else o.link=n;o.wrap=D4(),o.typeC4Shape={text:A},o.parentBoundary=fs},"addComponent"),Bmt=y(function(A,e,t,r,i){if(A===null||e===null)return;let u={},a=bE.find((n)=>n.alias===A);if(a&&A===a.alias)u=a;else u.alias=A,bE.push(u);if(e===void 0||e===null)u.label={text:""};else u.label={text:e};if(t===void 0||t===null)u.type={text:"system"};else if(typeof t==="object"){let[n,o]=Object.entries(t)[0];u[n]={text:o}}else u.type={text:t};if(typeof r==="object"){let[n,o]=Object.entries(r)[0];u[n]=o}else u.tags=r;if(typeof i==="object"){let[n,o]=Object.entries(i)[0];u[n]=o}else u.link=i;u.parentBoundary=fs,u.wrap=D4(),fC=fs,fs=A,m4.push(fC)},"addPersonOrSystemBoundary"),Emt=y(function(A,e,t,r,i){if(A===null||e===null)return;let u={},a=bE.find((n)=>n.alias===A);if(a&&A===a.alias)u=a;else u.alias=A,bE.push(u);if(e===void 0||e===null)u.label={text:""};else u.label={text:e};if(t===void 0||t===null)u.type={text:"container"};else if(typeof t==="object"){let[n,o]=Object.entries(t)[0];u[n]={text:o}}else u.type={text:t};if(typeof r==="object"){let[n,o]=Object.entries(r)[0];u[n]=o}else u.tags=r;if(typeof i==="object"){let[n,o]=Object.entries(i)[0];u[n]=o}else u.link=i;u.parentBoundary=fs,u.wrap=D4(),fC=fs,fs=A,m4.push(fC)},"addContainerBoundary"),dmt=y(function(A,e,t,r,i,u,a,n){if(e===null||t===null)return;let o={},s=bE.find((l)=>l.alias===e);if(s&&e===s.alias)o=s;else o.alias=e,bE.push(o);if(t===void 0||t===null)o.label={text:""};else o.label={text:t};if(r===void 0||r===null)o.type={text:"node"};else if(typeof r==="object"){let[l,g]=Object.entries(r)[0];o[l]={text:g}}else o.type={text:r};if(i===void 0||i===null)o.descr={text:""};else if(typeof i==="object"){let[l,g]=Object.entries(i)[0];o[l]={text:g}}else o.descr={text:i};if(typeof a==="object"){let[l,g]=Object.entries(a)[0];o[l]=g}else o.tags=a;if(typeof n==="object"){let[l,g]=Object.entries(n)[0];o[l]=g}else o.link=n;o.nodeType=A,o.parentBoundary=fs,o.wrap=D4(),fC=fs,fs=e,m4.push(fC)},"addDeploymentNode"),Imt=y(function(){fs=fC,m4.pop(),fC=m4.pop(),m4.push(fC)},"popBoundaryParseStack"),hmt=y(function(A,e,t,r,i,u,a,n,o,s,l){let g=mC.find((C)=>C.alias===e);if(g===void 0){if(g=bE.find((C)=>C.alias===e),g===void 0)return}if(t!==void 0&&t!==null)if(typeof t==="object"){let[C,B]=Object.entries(t)[0];g[C]=B}else g.bgColor=t;if(r!==void 0&&r!==null)if(typeof r==="object"){let[C,B]=Object.entries(r)[0];g[C]=B}else g.fontColor=r;if(i!==void 0&&i!==null)if(typeof i==="object"){let[C,B]=Object.entries(i)[0];g[C]=B}else g.borderColor=i;if(u!==void 0&&u!==null)if(typeof u==="object"){let[C,B]=Object.entries(u)[0];g[C]=B}else g.shadowing=u;if(a!==void 0&&a!==null)if(typeof a==="object"){let[C,B]=Object.entries(a)[0];g[C]=B}else g.shape=a;if(n!==void 0&&n!==null)if(typeof n==="object"){let[C,B]=Object.entries(n)[0];g[C]=B}else g.sprite=n;if(o!==void 0&&o!==null)if(typeof o==="object"){let[C,B]=Object.entries(o)[0];g[C]=B}else g.techn=o;if(s!==void 0&&s!==null)if(typeof s==="object"){let[C,B]=Object.entries(s)[0];g[C]=B}else g.legendText=s;if(l!==void 0&&l!==null)if(typeof l==="object"){let[C,B]=Object.entries(l)[0];g[C]=B}else g.legendSprite=l},"updateElStyle"),Qmt=y(function(A,e,t,r,i,u,a){let n=rF.find((o)=>o.from===e&&o.to===t);if(n===void 0)return;if(r!==void 0&&r!==null)if(typeof r==="object"){let[o,s]=Object.entries(r)[0];n[o]=s}else n.textColor=r;if(i!==void 0&&i!==null)if(typeof i==="object"){let[o,s]=Object.entries(i)[0];n[o]=s}else n.lineColor=i;if(u!==void 0&&u!==null)if(typeof u==="object"){let[o,s]=Object.entries(u)[0];n[o]=parseInt(s)}else n.offsetX=parseInt(u);if(a!==void 0&&a!==null)if(typeof a==="object"){let[o,s]=Object.entries(a)[0];n[o]=parseInt(s)}else n.offsetY=parseInt(a)},"updateRelStyle"),pmt=y(function(A,e,t){let r=hY,i=QY;if(typeof e==="object"){let u=Object.values(e)[0];r=parseInt(u)}else r=parseInt(e);if(typeof t==="object"){let u=Object.values(t)[0];i=parseInt(u)}else i=parseInt(t);if(r>=1)hY=r;if(i>=1)QY=i},"updateLayoutConfig"),fmt=y(function(){return hY},"getC4ShapeInRow"),mmt=y(function(){return QY},"getC4BoundaryInRow"),Dmt=y(function(){return fs},"getCurrentBoundaryParse"),ymt=y(function(){return fC},"getParentBoundaryParse"),QOA=y(function(A){if(A===void 0||A===null)return mC;else return mC.filter((e)=>e.parentBoundary===A)},"getC4ShapeArray"),wmt=y(function(A){return mC.find((e)=>e.alias===A)},"getC4Shape"),bmt=y(function(A){return Object.keys(QOA(A))},"getC4ShapeKeys"),pOA=y(function(A){if(A===void 0||A===null)return bE;else return bE.filter((e)=>e.parentBoundary===A)},"getBoundaries"),vmt=pOA,kmt=y(function(){return rF},"getRels"),Fmt=y(function(){return anA},"getTitle"),xmt=y(function(A){nnA=A},"setWrap"),D4=y(function(){return nnA},"autoWrap"),Smt=y(function(){mC=[],bE=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],fC="",fs="global",m4=[""],rF=[],m4=[""],anA="",nnA=!1,hY=4,QY=2},"clear"),Lmt={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},Rmt={FILLED:0,OPEN:1},Nmt={LEFTOF:0,RIGHTOF:1,OVER:2},Gmt=y(function(A){anA=gr(A,OA())},"setTitle"),rnA={addPersonOrSystem:gmt,addPersonOrSystemBoundary:Bmt,addContainer:cmt,addContainerBoundary:Emt,addComponent:Cmt,addDeploymentNode:dmt,popBoundaryParseStack:Imt,addRel:lmt,updateElStyle:hmt,updateRelStyle:Qmt,updateLayoutConfig:pmt,autoWrap:D4,setWrap:xmt,getC4ShapeArray:QOA,getC4Shape:wmt,getC4ShapeKeys:bmt,getBoundaries:pOA,getBoundarys:vmt,getCurrentBoundaryParse:Dmt,getParentBoundaryParse:ymt,getRels:kmt,getTitle:Fmt,getC4Type:omt,getC4ShapeInRow:fmt,getC4BoundaryInRow:mmt,setAccTitle:Dr,getAccTitle:kr,getAccDescription:xr,setAccDescription:Fr,getConfig:y(()=>OA().c4,"getConfig"),clear:Smt,LINETYPE:Lmt,ARROWTYPE:Rmt,PLACEMENT:Nmt,setTitle:Gmt,setC4Type:smt},onA=y(function(A,e){return jf(A,e)},"drawRect"),mOA=y(function(A,e,t,r,i,u){let a=A.append("image");a.attr("width",e),a.attr("height",t),a.attr("x",r),a.attr("y",i);let n=u.startsWith("data:image/png;base64")?u:fOA.sanitizeUrl(u);a.attr("xlink:href",n)},"drawImage"),Umt=y((A,e,t,r)=>{let i=A.append("g"),u=0;for(let a of e){let n=a.textColor?a.textColor:"#444444",o=a.lineColor?a.lineColor:"#444444",s=a.offsetX?parseInt(a.offsetX):0,l=a.offsetY?parseInt(a.offsetY):0,g="";if(u===0){let B=i.append("line");if(B.attr("x1",a.startPoint.x),B.attr("y1",a.startPoint.y),B.attr("x2",a.endPoint.x),B.attr("y2",a.endPoint.y),B.attr("stroke-width","1"),B.attr("stroke",o),B.style("fill","none"),a.type!=="rel_b")B.attr("marker-end","url("+g+"#"+r+"-arrowhead)");if(a.type==="birel"||a.type==="rel_b")B.attr("marker-start","url("+g+"#"+r+"-arrowend)");u=-1}else{let B=i.append("path");if(B.attr("fill","none").attr("stroke-width","1").attr("stroke",o).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",a.startPoint.x).replaceAll("starty",a.startPoint.y).replaceAll("controlx",a.startPoint.x+(a.endPoint.x-a.startPoint.x)/2-(a.endPoint.x-a.startPoint.x)/4).replaceAll("controly",a.startPoint.y+(a.endPoint.y-a.startPoint.y)/2).replaceAll("stopx",a.endPoint.x).replaceAll("stopy",a.endPoint.y)),a.type!=="rel_b")B.attr("marker-end","url("+g+"#"+r+"-arrowhead)");if(a.type==="birel"||a.type==="rel_b")B.attr("marker-start","url("+g+"#"+r+"-arrowend)")}let C=t.messageFont();if(LI(t)(a.label.text,i,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+s,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+l,a.label.width,a.label.height,{fill:n},C),a.techn&&a.techn.text!=="")C=t.messageFont(),LI(t)("["+a.techn.text+"]",i,Math.min(a.startPoint.x,a.endPoint.x)+Math.abs(a.endPoint.x-a.startPoint.x)/2+s,Math.min(a.startPoint.y,a.endPoint.y)+Math.abs(a.endPoint.y-a.startPoint.y)/2+t.messageFontSize+5+l,Math.max(a.label.width,a.techn.width),a.techn.height,{fill:n,"font-style":"italic"},C)}},"drawRels"),Mmt=y(function(A,e,t){let r=A.append("g"),i=e.bgColor?e.bgColor:"none",u=e.borderColor?e.borderColor:"#444444",a=e.fontColor?e.fontColor:"black",n={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};if(e.nodeType)n={"stroke-width":1};let o={x:e.x,y:e.y,fill:i,stroke:u,width:e.width,height:e.height,rx:2.5,ry:2.5,attrs:n};onA(r,o);let s=t.boundaryFont();if(s.fontWeight="bold",s.fontSize=s.fontSize+2,s.fontColor=a,LI(t)(e.label.text,r,e.x,e.y+e.label.Y,e.width,e.height,{fill:"#444444"},s),e.type&&e.type.text!=="")s=t.boundaryFont(),s.fontColor=a,LI(t)(e.type.text,r,e.x,e.y+e.type.Y,e.width,e.height,{fill:"#444444"},s);if(e.descr&&e.descr.text!=="")s=t.boundaryFont(),s.fontSize=s.fontSize-2,s.fontColor=a,LI(t)(e.descr.text,r,e.x,e.y+e.descr.Y,e.width,e.height,{fill:"#444444"},s)},"drawBoundary"),Tmt=y(function(A,e,t){let r=e.bgColor?e.bgColor:t[e.typeC4Shape.text+"_bg_color"],i=e.borderColor?e.borderColor:t[e.typeC4Shape.text+"_border_color"],u=e.fontColor?e.fontColor:"#FFFFFF",a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(e.typeC4Shape.text){case"person":a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}let n=A.append("g");n.attr("class","person-man");let o=K0();switch(e.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":o.x=e.x,o.y=e.y,o.fill=r,o.width=e.width,o.height=e.height,o.stroke=i,o.rx=2.5,o.ry=2.5,o.attrs={"stroke-width":0.5},onA(n,o);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":n.append("path").attr("fill",r).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2).replaceAll("height",e.height)),n.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("half",e.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":n.append("path").attr("fill",r).attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",e.x).replaceAll("starty",e.y).replaceAll("width",e.width).replaceAll("half",e.height/2)),n.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",i).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",e.x+e.width).replaceAll("starty",e.y).replaceAll("half",e.height/2));break}let s=Wmt(t,e.typeC4Shape.text);switch(n.append("text").attr("fill",u).attr("font-family",s.fontFamily).attr("font-size",s.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",e.typeC4Shape.width).attr("x",e.x+e.width/2-e.typeC4Shape.width/2).attr("y",e.y+e.typeC4Shape.Y).text("<<"+e.typeC4Shape.text+">>"),e.typeC4Shape.text){case"person":case"external_person":mOA(n,48,48,e.x+e.width/2-24,e.y+e.image.Y,a);break}let l=t[e.typeC4Shape.text+"Font"]();if(l.fontWeight="bold",l.fontSize=l.fontSize+2,l.fontColor=u,LI(t)(e.label.text,n,e.x,e.y+e.label.Y,e.width,e.height,{fill:u},l),l=t[e.typeC4Shape.text+"Font"](),l.fontColor=u,e.techn&&e.techn?.text!=="")LI(t)(e.techn.text,n,e.x,e.y+e.techn.Y,e.width,e.height,{fill:u,"font-style":"italic"},l);else if(e.type&&e.type.text!=="")LI(t)(e.type.text,n,e.x,e.y+e.type.Y,e.width,e.height,{fill:u,"font-style":"italic"},l);if(e.descr&&e.descr.text!=="")l=t.personFont(),l.fontColor=u,LI(t)(e.descr.text,n,e.x,e.y+e.descr.Y,e.width,e.height,{fill:u},l);return e.height},"drawC4Shape"),Ymt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),Hmt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),Kmt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),Jmt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z")},"insertArrowHead"),Omt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-arrowend").attr("refX",1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z")},"insertArrowEnd"),Pmt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-filled-head").attr("refX",18).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),_mt=y(function(A,e){let r=A.append("defs").append("marker").attr("id",e+"-crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);r.append("path").attr("fill","black").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 9,2 V 6 L16,4 Z"),r.append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1px").attr("d","M 0,1 L 6,7 M 6,1 L 0,7")},"insertArrowCrossHead"),Wmt=y((A,e)=>({fontFamily:A[e+"FontFamily"],fontSize:A[e+"FontSize"],fontWeight:A[e+"FontWeight"]}),"getC4ShapeFont"),LI=function(){function A(i,u,a,n,o,s,l){let g=u.append("text").attr("x",a+o/2).attr("y",n+s/2+5).style("text-anchor","middle").text(i);r(g,l)}y(A,"byText");function e(i,u,a,n,o,s,l,g){let{fontSize:C,fontFamily:B,fontWeight:E}=g,d=i.split(_e.lineBreakRegex);for(let I=0;I<d.length;I++){let h=I*C-C*(d.length-1)/2,Q=u.append("text").attr("x",a+o/2).attr("y",n).style("text-anchor","middle").attr("dominant-baseline","middle").style("font-size",C).style("font-weight",E).style("font-family",B);Q.append("tspan").attr("dy",h).text(d[I]).attr("alignment-baseline","mathematical"),r(Q,l)}}y(e,"byTspan");function t(i,u,a,n,o,s,l,g){let C=u.append("switch"),E=C.append("foreignObject").attr("x",a).attr("y",n).attr("width",o).attr("height",s).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");E.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,C,a,n,o,s,l,g),r(E,l)}y(t,"byFo");function r(i,u){for(let a in u)if(u.hasOwnProperty(a))i.attr(a,u[a])}return y(r,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?t:i.textPlacement==="old"?A:e}}(),wE={drawRect:onA,drawBoundary:Mmt,drawC4Shape:Tmt,drawRels:Umt,drawImage:mOA,insertArrowHead:Jmt,insertArrowEnd:Omt,insertArrowFilledHead:Pmt,insertArrowCrossHead:_mt,insertDatabaseIcon:Ymt,insertComputerIcon:Hmt,insertClockIcon:Kmt};IY.yy=rnA;Zt={},yOA=class{static{y(this,"Bounds")}constructor(A){this.name="",this.data={},this.data.startx=void 0,this.data.stopx=void 0,this.data.starty=void 0,this.data.stopy=void 0,this.data.widthLimit=void 0,this.nextData={},this.nextData.startx=void 0,this.nextData.stopx=void 0,this.nextData.starty=void 0,this.nextData.stopy=void 0,this.nextData.cnt=0,unA(A.db.getConfig())}setData(A,e,t,r){this.nextData.startx=this.data.startx=A,this.nextData.stopx=this.data.stopx=e,this.nextData.starty=this.data.starty=t,this.nextData.stopy=this.data.stopy=r}updateVal(A,e,t,r){if(A[e]===void 0)A[e]=t;else A[e]=r(t,A[e])}insert(A){this.nextData.cnt=this.nextData.cnt+1;let e=this.nextData.startx===this.nextData.stopx?this.nextData.stopx+A.margin:this.nextData.stopx+A.margin*2,t=e+A.width,r=this.nextData.starty+A.margin*2,i=r+A.height;if(e>=this.data.widthLimit||t>=this.data.widthLimit||this.nextData.cnt>DOA)e=this.nextData.startx+A.margin+Zt.nextLinePaddingX,r=this.nextData.stopy+A.margin*2,this.nextData.stopx=t=e+A.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=i=r+A.height,this.nextData.cnt=1;A.x=e,A.y=r,this.updateVal(this.data,"startx",e,Math.min),this.updateVal(this.data,"starty",r,Math.min),this.updateVal(this.data,"stopx",t,Math.max),this.updateVal(this.data,"stopy",i,Math.max),this.updateVal(this.nextData,"startx",e,Math.min),this.updateVal(this.nextData,"starty",r,Math.min),this.updateVal(this.nextData,"stopx",t,Math.max),this.updateVal(this.nextData,"stopy",i,Math.max)}init(A){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},unA(A.db.getConfig())}bumpLastMargin(A){this.data.stopx+=A,this.data.stopy+=A}},unA=y(function(A){if(Ea(Zt,A),A.fontFamily)Zt.personFontFamily=Zt.systemFontFamily=Zt.messageFontFamily=A.fontFamily;if(A.fontSize)Zt.personFontSize=Zt.systemFontSize=Zt.messageFontSize=A.fontSize;if(A.fontWeight)Zt.personFontWeight=Zt.systemFontWeight=Zt.messageFontWeight=A.fontWeight},"setConf"),tF=y((A,e)=>({fontFamily:A[e+"FontFamily"],fontSize:A[e+"FontSize"],fontWeight:A[e+"FontWeight"]}),"c4ShapeFont"),dY=y((A)=>({fontFamily:A.boundaryFontFamily,fontSize:A.boundaryFontSize,fontWeight:A.boundaryFontWeight}),"boundaryFont"),qmt=y((A)=>({fontFamily:A.messageFontFamily,fontSize:A.messageFontSize,fontWeight:A.messageFontWeight}),"messageFont");y(lc,"calcC4ShapeTextWH");wOA=y(function(A,e,t){e.x=t.data.startx,e.y=t.data.starty,e.width=t.data.stopx-t.data.startx,e.height=t.data.stopy-t.data.starty,e.label.y=Zt.c4ShapeMargin-35;let r=e.wrap&&Zt.wrap,i=dY(Zt);i.fontSize=i.fontSize+2,i.fontWeight="bold";let u=i0(e.label.text,i);lc("label",e,r,i,u),wE.drawBoundary(A,e,Zt)},"drawBoundary"),bOA=y(function(A,e,t,r){let i=0;for(let u of r){i=0;let a=t[u],n=tF(Zt,a.typeC4Shape.text);switch(n.fontSize=n.fontSize-2,a.typeC4Shape.width=i0("«"+a.typeC4Shape.text+"»",n),a.typeC4Shape.height=n.fontSize+2,a.typeC4Shape.Y=Zt.c4ShapePadding,i=a.typeC4Shape.Y+a.typeC4Shape.height-4,a.image={width:0,height:0,Y:0},a.typeC4Shape.text){case"person":case"external_person":a.image.width=48,a.image.height=48,a.image.Y=i,i=a.image.Y+a.image.height;break}if(a.sprite)a.image.width=48,a.image.height=48,a.image.Y=i,i=a.image.Y+a.image.height;let o=a.wrap&&Zt.wrap,s=Zt.width-Zt.c4ShapePadding*2,l=tF(Zt,a.typeC4Shape.text);if(l.fontSize=l.fontSize+2,l.fontWeight="bold",lc("label",a,o,l,s),a.label.Y=i+8,i=a.label.Y+a.label.height,a.type&&a.type.text!==""){a.type.text="["+a.type.text+"]";let B=tF(Zt,a.typeC4Shape.text);lc("type",a,o,B,s),a.type.Y=i+5,i=a.type.Y+a.type.height}else if(a.techn&&a.techn.text!==""){a.techn.text="["+a.techn.text+"]";let B=tF(Zt,a.techn.text);lc("techn",a,o,B,s),a.techn.Y=i+5,i=a.techn.Y+a.techn.height}let g=i,C=a.label.width;if(a.descr&&a.descr.text!==""){let B=tF(Zt,a.typeC4Shape.text);lc("descr",a,o,B,s),a.descr.Y=i+20,i=a.descr.Y+a.descr.height,C=Math.max(a.label.width,a.descr.width),g=i-a.descr.textLines*5}C=C+Zt.c4ShapePadding,a.width=Math.max(a.width||Zt.width,C,Zt.width),a.height=Math.max(a.height||Zt.height,g,Zt.height),a.margin=a.margin||Zt.c4ShapeMargin,A.insert(a),wE.drawC4Shape(e,a,Zt)}A.bumpLastMargin(Zt.c4ShapeMargin)},"drawC4ShapeArray"),sc=class{static{y(this,"Point")}constructor(A,e){this.x=A,this.y=e}},dOA=y(function(A,e){let{x:t,y:r}=A,{x:i,y:u}=e,a=t+A.width/2,n=r+A.height/2,o=Math.abs(t-i),s=Math.abs(r-u),l=s/o,g=A.height/A.width,C=null;if(r==u&&t<i)C=new sc(t+A.width,n);else if(r==u&&t>i)C=new sc(t,n);else if(t==i&&r<u)C=new sc(a,r+A.height);else if(t==i&&r>u)C=new sc(a,r);if(t>i&&r<u)if(g>=l)C=new sc(t,n+l*A.width/2);else C=new sc(a-o/s*A.height/2,r+A.height);else if(t<i&&r<u)if(g>=l)C=new sc(t+A.width,n+l*A.width/2);else C=new sc(a+o/s*A.height/2,r+A.height);else if(t<i&&r>u)if(g>=l)C=new sc(t+A.width,n-l*A.width/2);else C=new sc(a+A.height/2*o/s,r);else if(t>i&&r>u)if(g>=l)C=new sc(t,n-A.width/2*l);else C=new sc(a-A.height/2*o/s,r);return C},"getIntersectPoint"),zmt=y(function(A,e){let t={x:0,y:0};t.x=e.x+e.width/2,t.y=e.y+e.height/2;let r=dOA(A,t);t.x=A.x+A.width/2,t.y=A.y+A.height/2;let i=dOA(e,t);return{startPoint:r,endPoint:i}},"getIntersectPoints"),Zmt=y(function(A,e,t,r,i){let u=0;for(let a of e){u=u+1;let n=a.wrap&&Zt.wrap,o=qmt(Zt);if(r.db.getC4Type()==="C4Dynamic")a.label.text=u+": "+a.label.text;let l=i0(a.label.text,o);if(lc("label",a,n,o,l),a.techn&&a.techn.text!=="")l=i0(a.techn.text,o),lc("techn",a,n,o,l);if(a.descr&&a.descr.text!=="")l=i0(a.descr.text,o),lc("descr",a,n,o,l);let g=t(a.from),C=t(a.to),B=zmt(g,C);a.startPoint=B.startPoint,a.endPoint=B.endPoint}wE.drawRels(A,e,Zt,i)},"drawRels");y(snA,"drawInsideBoundary");Vmt=y(function(A,e,t,r){Zt=OA().c4;let i=OA().securityLevel,u;if(i==="sandbox")u=Qe("#i"+e);let a=i==="sandbox"?Qe(u.nodes()[0].contentDocument.body):Qe("body"),n=r.db;r.db.setWrap(Zt.wrap),DOA=n.getC4ShapeInRow(),inA=n.getC4BoundaryInRow(),sA.debug(`C:${JSON.stringify(Zt,null,2)}`);let o=i==="sandbox"?a.select(`[id="${e}"]`):Qe(`[id="${e}"]`);wE.insertComputerIcon(o,e),wE.insertDatabaseIcon(o,e),wE.insertClockIcon(o,e);let s=new yOA(r);s.setData(Zt.diagramMarginX,Zt.diagramMarginX,Zt.diagramMarginY,Zt.diagramMarginY),s.data.widthLimit=screen.availWidth,pY=Zt.diagramMarginX,fY=Zt.diagramMarginY;let l=r.db.getTitle(),g=r.db.getBoundaries("");snA(o,"",s,g,r),wE.insertArrowHead(o,e),wE.insertArrowEnd(o,e),wE.insertArrowCrossHead(o,e),wE.insertArrowFilledHead(o,e),Zmt(o,r.db.getRels(),r.db.getC4Shape,r,e),s.data.stopx=pY,s.data.stopy=fY;let C=s.data,E=C.stopy-C.starty+2*Zt.diagramMarginY,I=C.stopx-C.startx+2*Zt.diagramMarginX;if(l)o.append("text").text(l).attr("x",(C.stopx-C.startx)/2-4*Zt.diagramMarginX).attr("y",C.starty+Zt.diagramMarginY);Xr(o,E,I,Zt.useMaxWidth);let h=l?60:0;o.attr("viewBox",C.startx-Zt.diagramMarginX+" -"+(Zt.diagramMarginY+h)+" "+I+" "+(E+h)),sA.debug("models:",C)},"draw"),IOA={drawPersonOrSystemArray:bOA,drawBoundary:wOA,setConf:unA,draw:Vmt},jmt=y((A)=>`.person {
stroke: ${A.personBorder};
fill: ${A.personBkg};
}
`,"getStyles"),Xmt=jmt,vOA={parser:nmt,db:rnA,renderer:IOA,styles:Xmt,init:y(({c4:A,wrap:e})=>{IOA.setConf(A),rnA.setWrap(e)},"init")}});var vE;var kE=_(()=>{Nt();vE=y(()=>`
/* Font Awesome icon styling - consolidated */
.label-icon {
display: inline-block;
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.node .label-icon path {
fill: currentColor;
stroke: revert;
stroke-width: revert;
}
`,"getIconStyles")});var gc;var gg=_(()=>{Nt();Pr();gc=y((A,e)=>{let t;if(e==="sandbox")t=Qe("#i"+A);return(e==="sandbox"?Qe(t.nodes()[0].contentDocument.body):Qe("body")).select(`[id="${A}"]`)},"getDiagramElement")});var Il,$mt,A2t;var hl=_(()=>{rr();ir();Nt();Il=y((A,e,t,r)=>{A.attr("class",t);let{width:i,height:u,x:a,y:n}=$mt(A,e);Xr(A,u,i,r);let o=A2t(a,n,i,u,e);A.attr("viewBox",o),sA.debug(`viewBox configured: ${o} with padding: ${e}`)},"setupViewPortForSVG"),$mt=y((A,e)=>{let t=A.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:t.width+e*2,height:t.height+e*2,x:t.x,y:t.y}},"calculateDimensionsWithPadding"),A2t=y((A,e,t,r,i)=>`${A-i} ${e-i} ${t} ${r}`,"createViewBox")});var e2t="flowchart-",t2t,r2t,i2t,u2t,lnA,FOA,xOA,a2t,n2t,o2t,gnA,mY,Xf;var cnA=_(()=>{kE();gg();hl();of();El();lg();n0();ai();rr();ir();Nt();Pr();$2();vn();t2t=class{constructor(){this.vertexCounter=0,this.config=OA(),this.diagramId="",this.vertices=new Map,this.edges=[],this.classes=new Map,this.subGraphs=[],this.subGraphLookup=new Map,this.tooltips=new Map,this.subCount=0,this.firstGraphFlag=!0,this.secCount=-1,this.posCrossRef=[],this.funs=[],this.setAccTitle=Dr,this.setAccDescription=Fr,this.setDiagramTitle=Tr,this.getAccTitle=kr,this.getAccDescription=xr,this.getDiagramTitle=Sr,this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{y(this,"FlowDB")}sanitizeText(A){return _e.sanitizeText(A,this.config)}sanitizeNodeLabelType(A){switch(A){case"markdown":case"string":case"text":return A;default:return"markdown"}}setDiagramId(A){this.diagramId=A}lookUpDomId(A){for(let e of this.vertices.values())if(e.id===A)return this.diagramId?`${this.diagramId}-${e.domId}`:e.domId;return this.diagramId?`${this.diagramId}-${A}`:A}addVertex(A,e,t,r,i,u,a={},n){if(!A||A.trim().length===0)return;let o;if(n!==void 0){let C;if(!n.includes(`
`))C=`{
`+n+`
}`;else C=n+`
`;o=mQ(C,{schema:fQ})}let s=this.edges.find((C)=>C.id===A);if(s){let C=o;if(C?.animate!==void 0)s.animate=C.animate;if(C?.animation!==void 0)s.animation=C.animation;if(C?.curve!==void 0)s.interpolate=C.curve;return}let l,g=this.vertices.get(A);if(g===void 0){if(e===void 0&&t===void 0&&r!==void 0&&r!==null)sA.warn(`Style applied to unknown node "${A}". This may indicate a typo. The node will be created automatically.`);g={id:A,labelType:"text",domId:e2t+A+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(A,g)}if(this.vertexCounter++,e!==void 0){if(this.config=OA(),l=this.sanitizeText(e.text.trim()),g.labelType=e.type,l.startsWith('"')&&l.endsWith('"'))l=l.substring(1,l.length-1);g.text=l}else if(g.text===void 0)g.text=A;if(t!==void 0)g.type=t;if(r!==void 0&&r!==null)r.forEach((C)=>{g.styles.push(C)});if(i!==void 0&&i!==null)i.forEach((C)=>{g.classes.push(C)});if(u!==void 0)g.dir=u;if(g.props===void 0)g.props=a;else if(a!==void 0)Object.assign(g.props,a);if(o!==void 0){if(o.shape){if(o.shape!==o.shape.toLowerCase()||o.shape.includes("_"))throw Error(`No such shape: ${o.shape}. Shape names should be lowercase.`);else if(!KeA(o.shape))throw Error(`No such shape: ${o.shape}.`);g.type=o?.shape}if(o?.label)g.text=o?.label,g.labelType=this.sanitizeNodeLabelType(o?.labelType);if(o?.icon){if(g.icon=o?.icon,!o.label?.trim()&&g.text===A)g.text=""}if(o?.form)g.form=o?.form;if(o?.pos)g.pos=o?.pos;if(o?.img){if(g.img=o?.img,!o.label?.trim()&&g.text===A)g.text=""}if(o?.constraint)g.constraint=o.constraint;if(o.w)g.assetWidth=Number(o.w);if(o.h)g.assetHeight=Number(o.h)}}addSingleLink(A,e,t,r){let a={start:A,end:e,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};sA.info("abc78 Got edge...",a);let n=t.text;if(n!==void 0){if(a.text=this.sanitizeText(n.text.trim()),a.text.startsWith('"')&&a.text.endsWith('"'))a.text=a.text.substring(1,a.text.length-1);a.labelType=this.sanitizeNodeLabelType(n.type)}if(t!==void 0)a.type=t.type,a.stroke=t.stroke,a.length=t.length>10?10:t.length;if(r&&!this.edges.some((o)=>o.id===r))a.id=r,a.isUserDefinedId=!0;else{let o=this.edges.filter((s)=>s.start===a.start&&s.end===a.end);if(o.length===0)a.id=AE(a.start,a.end,{counter:0,prefix:"L"});else a.id=AE(a.start,a.end,{counter:o.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))sA.info("Pushing edge..."),this.edges.push(a);else throw Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}.
Initialize mermaid with maxEdges set to a higher number to allow more edges.
You cannot set this config via configuration inside the diagram as it is a secure config.
You have to call mermaid.initialize.`)}isLinkData(A){return A!==null&&typeof A==="object"&&"id"in A&&typeof A.id==="string"}addLink(A,e,t){let r=this.isLinkData(t)?t.id.replace("@",""):void 0;sA.info("addLink",A,e,r);for(let i of A)for(let u of e){let a=i===A[A.length-1],n=u===e[0];if(a&&n)this.addSingleLink(i,u,t,r);else this.addSingleLink(i,u,t,void 0)}}updateLinkInterpolate(A,e){A.forEach((t)=>{if(t==="default")this.edges.defaultInterpolate=e;else this.edges[t].interpolate=e})}updateLink(A,e){A.forEach((t)=>{if(typeof t==="number"&&t>=this.edges.length)throw Error(`The index ${t} for linkStyle is out of bounds. Valid indices for linkStyle are between 0 and ${this.edges.length-1}. (Help: Ensure that the index is within the range of existing edges.)`);if(t==="default")this.edges.defaultStyle=e;else if(this.edges[t].style=e,(this.edges[t]?.style?.length??0)>0&&!this.edges[t]?.style?.some((r)=>r?.startsWith("fill")))this.edges[t]?.style?.push("fill:none")})}addClass(A,e){let t=e.join().replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");A.split(",").forEach((r)=>{let i=this.classes.get(r);if(i===void 0)i={id:r,styles:[],textStyles:[]},this.classes.set(r,i);if(t!==void 0&&t!==null)t.forEach((u)=>{if(/color/.exec(u)){let a=u.replace("fill","bgFill");i.textStyles.push(a)}i.styles.push(u)})})}setDirection(A){if(this.direction=A.trim(),/.*</.exec(this.direction))this.direction="RL";if(/.*\^/.exec(this.direction))this.direction="BT";if(/.*>/.exec(this.direction))this.direction="LR";if(/.*v/.exec(this.direction))this.direction="TB";if(this.direction==="TD")this.direction="TB"}setClass(A,e){for(let t of A.split(",")){let r=this.vertices.get(t);if(r)r.classes.push(e);let i=this.edges.find((a)=>a.id===t);if(i)i.classes.push(e);let u=this.subGraphLookup.get(t);if(u)u.classes.push(e)}}setTooltip(A,e){if(e===void 0)return;e=this.sanitizeText(e);for(let t of A.split(","))this.tooltips.set(this.version==="gen-1"?this.lookUpDomId(t):t,e)}setClickFun(A,e,t){if(OA().securityLevel!=="loose")return;if(e===void 0)return;let r=[];if(typeof t==="string"){r=t.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let u=0;u<r.length;u++){let a=r[u].trim();if(a.startsWith('"')&&a.endsWith('"'))a=a.substr(1,a.length-2);r[u]=a}}if(r.length===0)r.push(A);let i=this.vertices.get(A);if(i)i.haveCallback=!0,this.funs.push(()=>{let u=this.lookUpDomId(A),a=document.querySelector(`[id="${u}"]`);if(a!==null)a.addEventListener("click",()=>{Jt.runFunc(e,...r)},!1)})}setLink(A,e,t){A.split(",").forEach((r)=>{let i=this.vertices.get(r);if(i!==void 0)i.link=Jt.formatUrl(e,this.config),i.linkTarget=t}),this.setClass(A,"clickable")}getTooltip(A){return this.tooltips.get(A)}setClickEvent(A,e,t){A.split(",").forEach((r)=>{this.setClickFun(r,e,t)}),this.setClass(A,"clickable")}bindFunctions(A){this.funs.forEach((e)=>{e(A)})}getDirection(){return this.direction?.trim()}getVertices(){return this.vertices}getEdges(){return this.edges}getClasses(){return this.classes}setupToolTips(A){let e=Ew();Qe(A).select("svg").selectAll("g.node").on("mouseover",(i)=>{let u=Qe(i.currentTarget),a=u.attr("title");if(a===null)return;let n=i.currentTarget?.getBoundingClientRect();e.transition().duration(200).style("opacity",".9"),e.text(u.attr("title")).style("left",window.scrollX+n.left+(n.right-n.left)/2+"px").style("top",window.scrollY+n.bottom+"px"),e.html(js.sanitize(a)),u.classed("hover",!0)}).on("mouseout",(i)=>{e.transition().duration(500).style("opacity",0),Qe(i.currentTarget).classed("hover",!1)})}clear(A="gen-2"){this.vertices=new Map,this.classes=new Map,this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.diagramId="",this.subGraphs=[],this.subGraphLookup=new Map,this.subCount=0,this.tooltips=new Map,this.firstGraphFlag=!0,this.version=A,this.config=OA(),cr()}setGen(A){this.version=A||"gen-2"}defaultStyle(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"}addSubGraph(A,e,t){let r=A.text.trim(),i=t.text;if(A===t&&/\s/.exec(t.text))r=void 0;let a=y((B)=>{let E={boolean:{},number:{},string:{}},d=[],I;return{nodeList:B.filter(function(Q){let p=typeof Q;if(Q.stmt&&Q.stmt==="dir")return I=Q.value,!1;if(Q.trim()==="")return!1;if(p in E)return E[p].hasOwnProperty(Q)?!1:E[p][Q]=!0;else return d.includes(Q)?!1:d.push(Q)}),dir:I}},"uniq")(e.flat()),{nodeList:n,dir:o}=a,s=o!==void 0,l=OA().flowchart??{},g=o??(l.inheritDir?this.getDirection()??OA().direction??void 0:void 0);if(this.version==="gen-1")for(let B=0;B<n.length;B++)n[B]=this.lookUpDomId(n[B]);r=r??"subGraph"+this.subCount,i=i||"",i=this.sanitizeText(i),this.subCount=this.subCount+1;let C={id:r,nodes:n,title:i.trim(),classes:[],dir:g,hasExplicitDir:s,labelType:this.sanitizeNodeLabelType(t?.type)};return sA.info("Adding",C.id,C.nodes,C.dir),C.nodes=this.makeUniq(C,this.subGraphs).nodes,this.subGraphs.push(C),this.subGraphLookup.set(r,C),r}getPosForId(A){for(let[e,t]of this.subGraphs.entries())if(t.id===A)return e;return-1}indexNodes2(A,e){let t=this.subGraphs[e].nodes;if(this.secCount=this.secCount+1,this.secCount>2000)return{result:!1,count:0};if(this.posCrossRef[this.secCount]=e,this.subGraphs[e].id===A)return{result:!0,count:0};let r=0,i=1;while(r<t.length){let u=this.getPosForId(t[r]);if(u>=0){let a=this.indexNodes2(A,u);if(a.result)return{result:!0,count:i+a.count};else i=i+a.count}r=r+1}return{result:!1,count:i}}getDepthFirstPos(A){return this.posCrossRef[A]}indexNodes(){if(this.secCount=-1,this.subGraphs.length>0)this.indexNodes2("none",this.subGraphs.length-1)}getSubGraphs(){return this.subGraphs}firstGraph(){if(this.firstGraphFlag)return this.firstGraphFlag=!1,!0;return!1}destructStartLink(A){let e=A.trim(),t="arrow_open";switch(e[0]){case"<":t="arrow_point",e=e.slice(1);break;case"x":t="arrow_cross",e=e.slice(1);break;case"o":t="arrow_circle",e=e.slice(1);break}let r="normal";if(e.includes("="))r="thick";if(e.includes("."))r="dotted";return{type:t,stroke:r}}countChar(A,e){let t=e.length,r=0;for(let i=0;i<t;++i)if(e[i]===A)++r;return r}destructEndLink(A){let e=A.trim(),t=e.slice(0,-1),r="arrow_open";switch(e.slice(-1)){case"x":if(r="arrow_cross",e.startsWith("x"))r="double_"+r,t=t.slice(1);break;case">":if(r="arrow_point",e.startsWith("<"))r="double_"+r,t=t.slice(1);break;case"o":if(r="arrow_circle",e.startsWith("o"))r="double_"+r,t=t.slice(1);break}let i="normal",u=t.length-1;if(t.startsWith("="))i="thick";if(t.startsWith("~"))i="invisible";let a=this.countChar(".",t);if(a)i="dotted",u=a;return{type:r,stroke:i,length:u}}destructLink(A,e){let t=this.destructEndLink(A),r;if(e){if(r=this.destructStartLink(e),r.stroke!==t.stroke)return{type:"INVALID",stroke:"INVALID"};if(r.type==="arrow_open")r.type=t.type;else{if(r.type!==t.type)return{type:"INVALID",stroke:"INVALID"};r.type="double_"+r.type}if(r.type==="double_arrow")r.type="double_arrow_point";return r.length=t.length,r}return t}exists(A,e){for(let t of A)if(t.nodes.includes(e))return!0;return!1}makeUniq(A,e){let t=[];return A.nodes.forEach((r,i)=>{if(!this.exists(e,r))t.push(A.nodes[i])}),{nodes:t}}getTypeFromVertex(A){if(A.img)return"imageSquare";if(A.icon){if(A.form==="circle")return"iconCircle";if(A.form==="square")return"iconSquare";if(A.form==="rounded")return"iconRounded";return"icon"}switch(A.type){case"square":case void 0:return"squareRect";case"round":return"roundedRect";case"ellipse":return"ellipse";default:return A.type}}findNode(A,e){return A.find((t)=>t.id===e)}destructEdgeType(A){let e="none",t="arrow_point";switch(A){case"arrow_point":case"arrow_circle":case"arrow_cross":t=A;break;case"double_arrow_point":case"double_arrow_circle":case"double_arrow_cross":e=A.replace("double_",""),t=e;break}return{arrowTypeStart:e,arrowTypeEnd:t}}addNodeFromVertex(A,e,t,r,i,u){let a=t.get(A.id),n=r.get(A.id)??!1,o=this.findNode(e,A.id);if(o)o.cssStyles=A.styles,o.cssCompiledStyles=this.getCompiledStyles(A.classes),o.cssClasses=A.classes.join(" ");else{let s={id:A.id,label:A.text,labelType:A.labelType,labelStyle:"",parentId:a,padding:i.flowchart?.padding||8,cssStyles:A.styles,cssCompiledStyles:this.getCompiledStyles(["default","node",...A.classes]),cssClasses:"default "+A.classes.join(" "),dir:A.dir,domId:A.domId,look:u,link:A.link,linkTarget:A.linkTarget,tooltip:this.getTooltip(A.id),icon:A.icon,pos:A.pos,img:A.img,assetWidth:A.assetWidth,assetHeight:A.assetHeight,constraint:A.constraint};if(n)e.push({...s,isGroup:!0,shape:"rect"});else e.push({...s,isGroup:!1,shape:this.getTypeFromVertex(A)})}}getCompiledStyles(A){let e=[];for(let t of A){let r=this.classes.get(t);if(r?.styles)e=[...e,...r.styles??[]].map((i)=>i.trim());if(r?.textStyles)e=[...e,...r.textStyles??[]].map((i)=>i.trim())}return e}getData(){let A=OA(),e=[],t=[],r=this.getSubGraphs(),i=new Map,u=new Map;for(let o=r.length-1;o>=0;o--){let s=r[o];if(s.nodes.length>0)u.set(s.id,!0);for(let l of s.nodes)i.set(l,s.id)}for(let o=r.length-1;o>=0;o--){let s=r[o];e.push({id:s.id,label:s.title,labelStyle:"",labelType:s.labelType,parentId:i.get(s.id),padding:8,cssCompiledStyles:this.getCompiledStyles(s.classes),cssClasses:s.classes.join(" "),shape:"rect",dir:s.dir==="TD"?"TB":s.dir,explicitDir:s.hasExplicitDir,isGroup:!0,look:A.look})}this.getVertices().forEach((o)=>{this.addNodeFromVertex(o,e,i,u,A,A.look||"classic")});let n=this.getEdges();return n.forEach((o,s)=>{let{arrowTypeStart:l,arrowTypeEnd:g}=this.destructEdgeType(o.type),C=[...n.defaultStyle??[]];if(o.style)C.push(...o.style);let B={id:AE(o.start,o.end,{counter:s,prefix:"L"},o.id),isUserDefinedId:o.isUserDefinedId,start:o.start,end:o.end,type:o.type??"normal",label:o.text,labelType:o.labelType,labelpos:"c",thickness:o.stroke,minlen:o.length,classes:o?.stroke==="invisible"?"":"edge-thickness-normal edge-pattern-solid flowchart-link",arrowTypeStart:o?.stroke==="invisible"||o?.type==="arrow_open"?"none":l,arrowTypeEnd:o?.stroke==="invisible"||o?.type==="arrow_open"?"none":g,arrowheadStyle:"fill: #333",cssCompiledStyles:this.getCompiledStyles(o.classes),labelStyle:C,style:C,pattern:o.stroke,look:A.look,animate:o.animate,animation:o.animation,curve:o.interpolate||this.edges.defaultInterpolate||A.flowchart?.curve};t.push(B)}),{nodes:e,edges:t,other:{},config:A}}defaultConfig(){return HR.flowchart}},r2t=y(function(A,e){return e.db.getClasses()},"getClasses"),i2t=y(async function(A,e,t,r,i){sA.info("REF0:"),sA.info("Drawing state diagram (v2)",e);let{securityLevel:u,flowchart:a,layout:n}=OA();r.db.setDiagramId(e),sA.debug("Before getData: ");let o=r.db.getData();sA.debug("Data: ",o);let s=gc(e,u),l=r.db.getDirection();if(o.type=r.type,o.layoutAlgorithm=yE(n),o.layoutAlgorithm==="dagre"&&n==="elk")sA.warn("flowchart-elk was moved to an external package in Mermaid v11. Please refer [release notes](https://github.com/mermaid-js/mermaid/releases/tag/v11.0.0) for more details. This diagram will be rendered using `dagre` layout as a fallback.");o.direction=l,o.nodeSpacing=a?.nodeSpacing||50,o.rankSpacing=a?.rankSpacing||50,o.markers=["point","circle","cross"],o.diagramId=e,sA.debug("REF1:",o),await ac(o,s,i);let g=o.config.flowchart?.diagramPadding??8;Jt.insertTitle(s,"flowchartTitleText",a?.titleTopMargin||0,r.db.getDiagramTitle()),Il(s,g,"flowchart",a?.useMaxWidth||!1)},"draw"),u2t={getClasses:r2t,draw:i2t},lnA=function(){var A=y(function(et,Ye,Ct,lt){for(Ct=Ct||{},lt=et.length;lt--;Ct[et[lt]]=Ye);return Ct},"o"),e=[1,4],t=[1,3],r=[1,5],i=[1,8,9,10,11,27,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],u=[2,2],a=[1,13],n=[1,14],o=[1,15],s=[1,16],l=[1,23],g=[1,25],C=[1,26],B=[1,27],E=[1,50],d=[1,49],I=[1,29],h=[1,30],Q=[1,31],p=[1,32],m=[1,33],f=[1,45],D=[1,47],w=[1,43],b=[1,48],k=[1,44],v=[1,51],S=[1,46],x=[1,52],F=[1,53],T=[1,34],R=[1,35],L=[1,36],M=[1,37],U=[1,38],Y=[1,58],H=[1,8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],J=[1,62],K=[1,61],O=[1,63],P=[8,9,11,75,77,78],z=[1,79],AA=[1,92],W=[1,97],CA=[1,96],tA=[1,93],lA=[1,89],gA=[1,95],aA=[1,91],NA=[1,98],DA=[1,94],KA=[1,99],TA=[1,90],qA=[8,9,10,11,40,75,77,78],IA=[8,9,10,11,40,46,75,77,78],bA=[8,9,10,11,29,40,44,46,48,50,52,54,56,58,60,63,65,67,68,70,75,77,78,89,102,105,106,109,111,114,115,116],SA=[8,9,11,44,60,75,77,78,89,102,105,106,109,111,114,115,116],EA=[44,60,89,102,105,106,109,111,114,115,116],nA=[1,122],eA=[1,123],BA=[1,125],yA=[1,124],vA=[44,60,62,74,89,102,105,106,109,111,114,115,116],FA=[1,134],HA=[1,148],dA=[1,149],q=[1,150],Z=[1,151],fA=[1,136],j=[1,138],mA=[1,142],rA=[1,143],JA=[1,144],_A=[1,145],ZA=[1,146],WA=[1,147],te=[1,152],zA=[1,153],Ae=[1,132],$A=[1,133],oe=[1,140],kA=[1,135],Pe=[1,139],MA=[1,137],ke=[8,9,10,11,27,32,34,36,38,44,60,84,85,86,87,88,89,102,105,106,109,111,114,115,116,121,122,123,124,125],We=[1,155],ue=[1,157],Me=[8,9,11],je=[8,9,10,11,14,44,60,89,105,106,109,111,114,115,116],Ge=[1,177],wA=[1,173],Re=[1,174],He=[1,178],de=[1,175],RA=[1,176],ce=[77,116,119],me=[8,9,10,11,12,14,27,29,32,44,60,75,84,85,86,87,88,89,90,105,109,111,114,115,116],Le=[10,106],Lt=[31,49,51,53,55,57,62,64,66,67,69,71,116,117,118],Je=[1,248],kt=[1,246],Cr=[1,250],Pt=[1,244],dt=[1,245],Yt=[1,247],Ce=[1,249],ye=[1,251],Ze=[1,269],Xt=[8,9,11,106],Vt=[8,9,10,11,60,84,105,106,109,110,111,112],or={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,graphConfig:4,document:5,line:6,statement:7,SEMI:8,NEWLINE:9,SPACE:10,EOF:11,GRAPH:12,NODIR:13,DIR:14,FirstStmtSeparator:15,ending:16,endToken:17,spaceList:18,spaceListNewline:19,vertexStatement:20,separator:21,styleStatement:22,linkStyleStatement:23,classDefStatement:24,classStatement:25,clickStatement:26,subgraph:27,textNoTags:28,SQS:29,text:30,SQE:31,end:32,direction:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,shapeData:39,SHAPE_DATA:40,link:41,node:42,styledVertex:43,AMP:44,vertex:45,STYLE_SEPARATOR:46,idString:47,DOUBLECIRCLESTART:48,DOUBLECIRCLEEND:49,PS:50,PE:51,"(-":52,"-)":53,STADIUMSTART:54,STADIUMEND:55,SUBROUTINESTART:56,SUBROUTINEEND:57,VERTEX_WITH_PROPS_START:58,"NODE_STRING[field]":59,COLON:60,"NODE_STRING[value]":61,PIPE:62,CYLINDERSTART:63,CYLINDEREND:64,DIAMOND_START:65,DIAMOND_STOP:66,TAGEND:67,TRAPSTART:68,TRAPEND:69,INVTRAPSTART:70,INVTRAPEND:71,linkStatement:72,arrowText:73,TESTSTR:74,START_LINK:75,edgeText:76,LINK:77,LINK_ID:78,edgeTextToken:79,STR:80,MD_STR:81,textToken:82,keywords:83,STYLE:84,LINKSTYLE:85,CLASSDEF:86,CLASS:87,CLICK:88,DOWN:89,UP:90,textNoTagsToken:91,stylesOpt:92,"idString[vertex]":93,"idString[class]":94,CALLBACKNAME:95,CALLBACKARGS:96,HREF:97,LINK_TARGET:98,"STR[link]":99,"STR[tooltip]":100,alphaNum:101,DEFAULT:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,NODE_STRING:109,UNIT:110,BRKT:111,PCT:112,idStringToken:113,MINUS:114,MULT:115,UNICODE_TEXT:116,TEXT:117,TAGSTART:118,EDGE_TEXT:119,alphaNumToken:120,direction_tb:121,direction_bt:122,direction_rl:123,direction_lr:124,direction_td:125,$accept:0,$end:1},terminals_:{2:"error",8:"SEMI",9:"NEWLINE",10:"SPACE",11:"EOF",12:"GRAPH",13:"NODIR",14:"DIR",27:"subgraph",29:"SQS",31:"SQE",32:"end",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",40:"SHAPE_DATA",44:"AMP",46:"STYLE_SEPARATOR",48:"DOUBLECIRCLESTART",49:"DOUBLECIRCLEEND",50:"PS",51:"PE",52:"(-",53:"-)",54:"STADIUMSTART",55:"STADIUMEND",56:"SUBROUTINESTART",57:"SUBROUTINEEND",58:"VERTEX_WITH_PROPS_START",59:"NODE_STRING[field]",60:"COLON",61:"NODE_STRING[value]",62:"PIPE",63:"CYLINDERSTART",64:"CYLINDEREND",65:"DIAMOND_START",66:"DIAMOND_STOP",67:"TAGEND",68:"TRAPSTART",69:"TRAPEND",70:"INVTRAPSTART",71:"INVTRAPEND",74:"TESTSTR",75:"START_LINK",77:"LINK",78:"LINK_ID",80:"STR",81:"MD_STR",84:"STYLE",85:"LINKSTYLE",86:"CLASSDEF",87:"CLASS",88:"CLICK",89:"DOWN",90:"UP",93:"idString[vertex]",94:"idString[class]",95:"CALLBACKNAME",96:"CALLBACKARGS",97:"HREF",98:"LINK_TARGET",99:"STR[link]",100:"STR[tooltip]",102:"DEFAULT",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"NODE_STRING",110:"UNIT",111:"BRKT",112:"PCT",114:"MINUS",115:"MULT",116:"UNICODE_TEXT",117:"TEXT",118:"TAGSTART",119:"EDGE_TEXT",121:"direction_tb",122:"direction_bt",123:"direction_rl",124:"direction_lr",125:"direction_td"},productions_:[0,[3,2],[5,0],[5,2],[6,1],[6,1],[6,1],[6,1],[6,1],[4,2],[4,2],[4,2],[4,3],[16,2],[16,1],[17,1],[17,1],[17,1],[15,1],[15,1],[15,2],[19,2],[19,2],[19,1],[19,1],[18,2],[18,1],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,9],[7,6],[7,4],[7,1],[7,2],[7,2],[7,1],[21,1],[21,1],[21,1],[39,2],[39,1],[20,4],[20,3],[20,4],[20,2],[20,2],[20,1],[42,1],[42,6],[42,5],[43,1],[43,3],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,8],[45,4],[45,4],[45,4],[45,6],[45,4],[45,4],[45,4],[45,4],[45,4],[45,1],[41,2],[41,3],[41,3],[41,1],[41,3],[41,4],[76,1],[76,2],[76,1],[76,1],[72,1],[72,2],[73,3],[30,1],[30,2],[30,1],[30,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[28,1],[28,2],[28,1],[28,1],[24,5],[25,5],[26,2],[26,4],[26,3],[26,5],[26,3],[26,5],[26,5],[26,7],[26,2],[26,4],[26,2],[26,4],[26,4],[26,6],[22,5],[23,5],[23,5],[23,9],[23,9],[23,7],[23,7],[103,1],[103,3],[92,1],[92,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[113,1],[82,1],[82,1],[82,1],[82,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[91,1],[79,1],[79,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[120,1],[47,1],[47,2],[101,1],[101,2],[33,1],[33,1],[33,1],[33,1],[33,1]],performAction:y(function(Ye,Ct,lt,Te,Ft,LA,ki){var YA=LA.length-1;switch(Ft){case 2:this.$=[];break;case 3:if(!Array.isArray(LA[YA])||LA[YA].length>0)LA[YA-1].push(LA[YA]);this.$=LA[YA-1];break;case 4:case 183:this.$=LA[YA];break;case 11:Te.setDirection("TB"),this.$="TB";break;case 12:Te.setDirection(LA[YA-1]),this.$=LA[YA-1];break;case 27:this.$=LA[YA-1].nodes;break;case 28:case 29:case 30:case 31:case 32:this.$=[];break;case 33:this.$=Te.addSubGraph(LA[YA-6],LA[YA-1],LA[YA-4]);break;case 34:this.$=Te.addSubGraph(LA[YA-3],LA[YA-1],LA[YA-3]);break;case 35:this.$=Te.addSubGraph(void 0,LA[YA-1],void 0);break;case 37:this.$=LA[YA].trim(),Te.setAccTitle(this.$);break;case 38:case 39:this.$=LA[YA].trim(),Te.setAccDescription(this.$);break;case 43:this.$=LA[YA-1]+LA[YA];break;case 44:this.$=LA[YA];break;case 45:Te.addVertex(LA[YA-1][LA[YA-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,LA[YA]),Te.addLink(LA[YA-3].stmt,LA[YA-1],LA[YA-2]),this.$={stmt:LA[YA-1],nodes:LA[YA-1].concat(LA[YA-3].nodes)};break;case 46:Te.addLink(LA[YA-2].stmt,LA[YA],LA[YA-1]),this.$={stmt:LA[YA],nodes:LA[YA].concat(LA[YA-2].nodes)};break;case 47:Te.addLink(LA[YA-3].stmt,LA[YA-1],LA[YA-2]),this.$={stmt:LA[YA-1],nodes:LA[YA-1].concat(LA[YA-3].nodes)};break;case 48:this.$={stmt:LA[YA-1],nodes:LA[YA-1]};break;case 49:Te.addVertex(LA[YA-1][LA[YA-1].length-1],void 0,void 0,void 0,void 0,void 0,void 0,LA[YA]),this.$={stmt:LA[YA-1],nodes:LA[YA-1],shapeData:LA[YA]};break;case 50:this.$={stmt:LA[YA],nodes:LA[YA]};break;case 51:this.$=[LA[YA]];break;case 52:Te.addVertex(LA[YA-5][LA[YA-5].length-1],void 0,void 0,void 0,void 0,void 0,void 0,LA[YA-4]),this.$=LA[YA-5].concat(LA[YA]);break;case 53:this.$=LA[YA-4].concat(LA[YA]);break;case 54:this.$=LA[YA];break;case 55:this.$=LA[YA-2],Te.setClass(LA[YA-2],LA[YA]);break;case 56:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"square");break;case 57:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"doublecircle");break;case 58:this.$=LA[YA-5],Te.addVertex(LA[YA-5],LA[YA-2],"circle");break;case 59:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"ellipse");break;case 60:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"stadium");break;case 61:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"subroutine");break;case 62:this.$=LA[YA-7],Te.addVertex(LA[YA-7],LA[YA-1],"rect",void 0,void 0,void 0,Object.fromEntries([[LA[YA-5],LA[YA-3]]]));break;case 63:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"cylinder");break;case 64:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"round");break;case 65:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"diamond");break;case 66:this.$=LA[YA-5],Te.addVertex(LA[YA-5],LA[YA-2],"hexagon");break;case 67:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"odd");break;case 68:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"trapezoid");break;case 69:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"inv_trapezoid");break;case 70:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"lean_right");break;case 71:this.$=LA[YA-3],Te.addVertex(LA[YA-3],LA[YA-1],"lean_left");break;case 72:this.$=LA[YA],Te.addVertex(LA[YA]);break;case 73:LA[YA-1].text=LA[YA],this.$=LA[YA-1];break;case 74:case 75:LA[YA-2].text=LA[YA-1],this.$=LA[YA-2];break;case 76:this.$=LA[YA];break;case 77:var lr=Te.destructLink(LA[YA],LA[YA-2]);this.$={type:lr.type,stroke:lr.stroke,length:lr.length,text:LA[YA-1]};break;case 78:var lr=Te.destructLink(LA[YA],LA[YA-2]);this.$={type:lr.type,stroke:lr.stroke,length:lr.length,text:LA[YA-1],id:LA[YA-3]};break;case 79:this.$={text:LA[YA],type:"text"};break;case 80:this.$={text:LA[YA-1].text+""+LA[YA],type:LA[YA-1].type};break;case 81:this.$={text:LA[YA],type:"string"};break;case 82:this.$={text:LA[YA],type:"markdown"};break;case 83:var lr=Te.destructLink(LA[YA]);this.$={type:lr.type,stroke:lr.stroke,length:lr.length};break;case 84:var lr=Te.destructLink(LA[YA]);this.$={type:lr.type,stroke:lr.stroke,length:lr.length,id:LA[YA-1]};break;case 85:this.$=LA[YA-1];break;case 86:this.$={text:LA[YA],type:"text"};break;case 87:this.$={text:LA[YA-1].text+""+LA[YA],type:LA[YA-1].type};break;case 88:this.$={text:LA[YA],type:"string"};break;case 89:case 104:this.$={text:LA[YA],type:"markdown"};break;case 101:this.$={text:LA[YA],type:"text"};break;case 102:this.$={text:LA[YA-1].text+""+LA[YA],type:LA[YA-1].type};break;case 103:this.$={text:LA[YA],type:"text"};break;case 105:this.$=LA[YA-4],Te.addClass(LA[YA-2],LA[YA]);break;case 106:this.$=LA[YA-4],Te.setClass(LA[YA-2],LA[YA]);break;case 107:case 115:this.$=LA[YA-1],Te.setClickEvent(LA[YA-1],LA[YA]);break;case 108:case 116:this.$=LA[YA-3],Te.setClickEvent(LA[YA-3],LA[YA-2]),Te.setTooltip(LA[YA-3],LA[YA]);break;case 109:this.$=LA[YA-2],Te.setClickEvent(LA[YA-2],LA[YA-1],LA[YA]);break;case 110:this.$=LA[YA-4],Te.setClickEvent(LA[YA-4],LA[YA-3],LA[YA-2]),Te.setTooltip(LA[YA-4],LA[YA]);break;case 111:this.$=LA[YA-2],Te.setLink(LA[YA-2],LA[YA]);break;case 112:this.$=LA[YA-4],Te.setLink(LA[YA-4],LA[YA-2]),Te.setTooltip(LA[YA-4],LA[YA]);break;case 113:this.$=LA[YA-4],Te.setLink(LA[YA-4],LA[YA-2],LA[YA]);break;case 114:this.$=LA[YA-6],Te.setLink(LA[YA-6],LA[YA-4],LA[YA]),Te.setTooltip(LA[YA-6],LA[YA-2]);break;case 117:this.$=LA[YA-1],Te.setLink(LA[YA-1],LA[YA]);break;case 118:this.$=LA[YA-3],Te.setLink(LA[YA-3],LA[YA-2]),Te.setTooltip(LA[YA-3],LA[YA]);break;case 119:this.$=LA[YA-3],Te.setLink(LA[YA-3],LA[YA-2],LA[YA]);break;case 120:this.$=LA[YA-5],Te.setLink(LA[YA-5],LA[YA-4],LA[YA]),Te.setTooltip(LA[YA-5],LA[YA-2]);break;case 121:this.$=LA[YA-4],Te.addVertex(LA[YA-2],void 0,void 0,LA[YA]);break;case 122:this.$=LA[YA-4],Te.updateLink([LA[YA-2]],LA[YA]);break;case 123:this.$=LA[YA-4],Te.updateLink(LA[YA-2],LA[YA]);break;case 124:this.$=LA[YA-8],Te.updateLinkInterpolate([LA[YA-6]],LA[YA-2]),Te.updateLink([LA[YA-6]],LA[YA]);break;case 125:this.$=LA[YA-8],Te.updateLinkInterpolate(LA[YA-6],LA[YA-2]),Te.updateLink(LA[YA-6],LA[YA]);break;case 126:this.$=LA[YA-6],Te.updateLinkInterpolate([LA[YA-4]],LA[YA]);break;case 127:this.$=LA[YA-6],Te.updateLinkInterpolate(LA[YA-4],LA[YA]);break;case 128:case 130:this.$=[LA[YA]];break;case 129:case 131:LA[YA-2].push(LA[YA]),this.$=LA[YA-2];break;case 133:this.$=LA[YA-1]+LA[YA];break;case 181:this.$=LA[YA];break;case 182:this.$=LA[YA-1]+""+LA[YA];break;case 184:this.$=LA[YA-1]+""+LA[YA];break;case 185:this.$={stmt:"dir",value:"TB"};break;case 186:this.$={stmt:"dir",value:"BT"};break;case 187:this.$={stmt:"dir",value:"RL"};break;case 188:this.$={stmt:"dir",value:"LR"};break;case 189:this.$={stmt:"dir",value:"TD"};break}},"anonymous"),table:[{3:1,4:2,9:e,10:t,12:r},{1:[3]},A(i,u,{5:6}),{4:7,9:e,10:t,12:r},{4:8,9:e,10:t,12:r},{13:[1,9],14:[1,10]},{1:[2,1],6:11,7:12,8:a,9:n,10:o,11:s,20:17,22:18,23:19,24:20,25:21,26:22,27:l,33:24,34:g,36:C,38:B,42:28,43:39,44:E,45:40,47:41,60:d,84:I,85:h,86:Q,87:p,88:m,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F,121:T,122:R,123:L,124:M,125:U},A(i,[2,9]),A(i,[2,10]),A(i,[2,11]),{8:[1,55],9:[1,56],10:Y,15:54,18:57},A(H,[2,3]),A(H,[2,4]),A(H,[2,5]),A(H,[2,6]),A(H,[2,7]),A(H,[2,8]),{8:J,9:K,11:O,21:59,41:60,72:64,75:[1,65],77:[1,67],78:[1,66]},{8:J,9:K,11:O,21:68},{8:J,9:K,11:O,21:69},{8:J,9:K,11:O,21:70},{8:J,9:K,11:O,21:71},{8:J,9:K,11:O,21:72},{8:J,9:K,10:[1,73],11:O,21:74},A(H,[2,36]),{35:[1,75]},{37:[1,76]},A(H,[2,39]),A(P,[2,50],{18:77,39:78,10:Y,40:z}),{10:[1,80]},{10:[1,81]},{10:[1,82]},{10:[1,83]},{14:AA,44:W,60:CA,80:[1,87],89:tA,95:[1,84],97:[1,85],101:86,105:lA,106:gA,109:aA,111:NA,114:DA,115:KA,116:TA,120:88},A(H,[2,185]),A(H,[2,186]),A(H,[2,187]),A(H,[2,188]),A(H,[2,189]),A(qA,[2,51]),A(qA,[2,54],{46:[1,100]}),A(IA,[2,72],{113:113,29:[1,101],44:E,48:[1,102],50:[1,103],52:[1,104],54:[1,105],56:[1,106],58:[1,107],60:d,63:[1,108],65:[1,109],67:[1,110],68:[1,111],70:[1,112],89:f,102:D,105:w,106:b,109:k,111:v,114:S,115:x,116:F}),A(bA,[2,181]),A(bA,[2,142]),A(bA,[2,143]),A(bA,[2,144]),A(bA,[2,145]),A(bA,[2,146]),A(bA,[2,147]),A(bA,[2,148]),A(bA,[2,149]),A(bA,[2,150]),A(bA,[2,151]),A(bA,[2,152]),A(i,[2,12]),A(i,[2,18]),A(i,[2,19]),{9:[1,114]},A(SA,[2,26],{18:115,10:Y}),A(H,[2,27]),{42:116,43:39,44:E,45:40,47:41,60:d,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F},A(H,[2,40]),A(H,[2,41]),A(H,[2,42]),A(EA,[2,76],{73:117,62:[1,119],74:[1,118]}),{76:120,79:121,80:nA,81:eA,116:BA,119:yA},{75:[1,126],77:[1,127]},A(vA,[2,83]),A(H,[2,28]),A(H,[2,29]),A(H,[2,30]),A(H,[2,31]),A(H,[2,32]),{10:FA,12:HA,14:dA,27:q,28:128,32:Z,44:fA,60:j,75:mA,80:[1,130],81:[1,131],83:141,84:rA,85:JA,86:_A,87:ZA,88:WA,89:te,90:zA,91:129,105:Ae,109:$A,111:oe,114:kA,115:Pe,116:MA},A(ke,u,{5:154}),A(H,[2,37]),A(H,[2,38]),A(P,[2,48],{44:We}),A(P,[2,49],{18:156,10:Y,40:ue}),A(qA,[2,44]),{44:E,47:158,60:d,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F},{102:[1,159],103:160,105:[1,161]},{44:E,47:162,60:d,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F},{44:E,47:163,60:d,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F},A(Me,[2,107],{10:[1,164],96:[1,165]}),{80:[1,166]},A(Me,[2,115],{120:168,10:[1,167],14:AA,44:W,60:CA,89:tA,105:lA,106:gA,109:aA,111:NA,114:DA,115:KA,116:TA}),A(Me,[2,117],{10:[1,169]}),A(je,[2,183]),A(je,[2,170]),A(je,[2,171]),A(je,[2,172]),A(je,[2,173]),A(je,[2,174]),A(je,[2,175]),A(je,[2,176]),A(je,[2,177]),A(je,[2,178]),A(je,[2,179]),A(je,[2,180]),{44:E,47:170,60:d,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F},{30:171,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{30:179,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{30:181,50:[1,180],67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{30:182,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{30:183,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{30:184,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{109:[1,185]},{30:186,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{30:187,65:[1,188],67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{30:189,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{30:190,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{30:191,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},A(bA,[2,182]),A(i,[2,20]),A(SA,[2,25]),A(P,[2,46],{39:192,18:193,10:Y,40:z}),A(EA,[2,73],{10:[1,194]}),{10:[1,195]},{30:196,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{77:[1,197],79:198,116:BA,119:yA},A(ce,[2,79]),A(ce,[2,81]),A(ce,[2,82]),A(ce,[2,168]),A(ce,[2,169]),{76:199,79:121,80:nA,81:eA,116:BA,119:yA},A(vA,[2,84]),{8:J,9:K,10:FA,11:O,12:HA,14:dA,21:201,27:q,29:[1,200],32:Z,44:fA,60:j,75:mA,83:141,84:rA,85:JA,86:_A,87:ZA,88:WA,89:te,90:zA,91:202,105:Ae,109:$A,111:oe,114:kA,115:Pe,116:MA},A(me,[2,101]),A(me,[2,103]),A(me,[2,104]),A(me,[2,157]),A(me,[2,158]),A(me,[2,159]),A(me,[2,160]),A(me,[2,161]),A(me,[2,162]),A(me,[2,163]),A(me,[2,164]),A(me,[2,165]),A(me,[2,166]),A(me,[2,167]),A(me,[2,90]),A(me,[2,91]),A(me,[2,92]),A(me,[2,93]),A(me,[2,94]),A(me,[2,95]),A(me,[2,96]),A(me,[2,97]),A(me,[2,98]),A(me,[2,99]),A(me,[2,100]),{6:11,7:12,8:a,9:n,10:o,11:s,20:17,22:18,23:19,24:20,25:21,26:22,27:l,32:[1,203],33:24,34:g,36:C,38:B,42:28,43:39,44:E,45:40,47:41,60:d,84:I,85:h,86:Q,87:p,88:m,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F,121:T,122:R,123:L,124:M,125:U},{10:Y,18:204},{44:[1,205]},A(qA,[2,43]),{10:[1,206],44:E,60:d,89:f,102:D,105:w,106:b,109:k,111:v,113:113,114:S,115:x,116:F},{10:[1,207]},{10:[1,208],106:[1,209]},A(Le,[2,128]),{10:[1,210],44:E,60:d,89:f,102:D,105:w,106:b,109:k,111:v,113:113,114:S,115:x,116:F},{10:[1,211],44:E,60:d,89:f,102:D,105:w,106:b,109:k,111:v,113:113,114:S,115:x,116:F},{80:[1,212]},A(Me,[2,109],{10:[1,213]}),A(Me,[2,111],{10:[1,214]}),{80:[1,215]},A(je,[2,184]),{80:[1,216],98:[1,217]},A(qA,[2,55],{113:113,44:E,60:d,89:f,102:D,105:w,106:b,109:k,111:v,114:S,115:x,116:F}),{31:[1,218],67:Ge,82:219,116:He,117:de,118:RA},A(Lt,[2,86]),A(Lt,[2,88]),A(Lt,[2,89]),A(Lt,[2,153]),A(Lt,[2,154]),A(Lt,[2,155]),A(Lt,[2,156]),{49:[1,220],67:Ge,82:219,116:He,117:de,118:RA},{30:221,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{51:[1,222],67:Ge,82:219,116:He,117:de,118:RA},{53:[1,223],67:Ge,82:219,116:He,117:de,118:RA},{55:[1,224],67:Ge,82:219,116:He,117:de,118:RA},{57:[1,225],67:Ge,82:219,116:He,117:de,118:RA},{60:[1,226]},{64:[1,227],67:Ge,82:219,116:He,117:de,118:RA},{66:[1,228],67:Ge,82:219,116:He,117:de,118:RA},{30:229,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},{31:[1,230],67:Ge,82:219,116:He,117:de,118:RA},{67:Ge,69:[1,231],71:[1,232],82:219,116:He,117:de,118:RA},{67:Ge,69:[1,234],71:[1,233],82:219,116:He,117:de,118:RA},A(P,[2,45],{18:156,10:Y,40:ue}),A(P,[2,47],{44:We}),A(EA,[2,75]),A(EA,[2,74]),{62:[1,235],67:Ge,82:219,116:He,117:de,118:RA},A(EA,[2,77]),A(ce,[2,80]),{77:[1,236],79:198,116:BA,119:yA},{30:237,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},A(ke,u,{5:238}),A(me,[2,102]),A(H,[2,35]),{43:239,44:E,45:40,47:41,60:d,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F},{10:Y,18:240},{10:Je,60:kt,84:Cr,92:241,105:Pt,107:242,108:243,109:dt,110:Yt,111:Ce,112:ye},{10:Je,60:kt,84:Cr,92:252,104:[1,253],105:Pt,107:242,108:243,109:dt,110:Yt,111:Ce,112:ye},{10:Je,60:kt,84:Cr,92:254,104:[1,255],105:Pt,107:242,108:243,109:dt,110:Yt,111:Ce,112:ye},{105:[1,256]},{10:Je,60:kt,84:Cr,92:257,105:Pt,107:242,108:243,109:dt,110:Yt,111:Ce,112:ye},{44:E,47:258,60:d,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F},A(Me,[2,108]),{80:[1,259]},{80:[1,260],98:[1,261]},A(Me,[2,116]),A(Me,[2,118],{10:[1,262]}),A(Me,[2,119]),A(IA,[2,56]),A(Lt,[2,87]),A(IA,[2,57]),{51:[1,263],67:Ge,82:219,116:He,117:de,118:RA},A(IA,[2,64]),A(IA,[2,59]),A(IA,[2,60]),A(IA,[2,61]),{109:[1,264]},A(IA,[2,63]),A(IA,[2,65]),{66:[1,265],67:Ge,82:219,116:He,117:de,118:RA},A(IA,[2,67]),A(IA,[2,68]),A(IA,[2,70]),A(IA,[2,69]),A(IA,[2,71]),A([10,44,60,89,102,105,106,109,111,114,115,116],[2,85]),A(EA,[2,78]),{31:[1,266],67:Ge,82:219,116:He,117:de,118:RA},{6:11,7:12,8:a,9:n,10:o,11:s,20:17,22:18,23:19,24:20,25:21,26:22,27:l,32:[1,267],33:24,34:g,36:C,38:B,42:28,43:39,44:E,45:40,47:41,60:d,84:I,85:h,86:Q,87:p,88:m,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F,121:T,122:R,123:L,124:M,125:U},A(qA,[2,53]),{43:268,44:E,45:40,47:41,60:d,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F},A(Me,[2,121],{106:Ze}),A(Xt,[2,130],{108:270,10:Je,60:kt,84:Cr,105:Pt,109:dt,110:Yt,111:Ce,112:ye}),A(Vt,[2,132]),A(Vt,[2,134]),A(Vt,[2,135]),A(Vt,[2,136]),A(Vt,[2,137]),A(Vt,[2,138]),A(Vt,[2,139]),A(Vt,[2,140]),A(Vt,[2,141]),A(Me,[2,122],{106:Ze}),{10:[1,271]},A(Me,[2,123],{106:Ze}),{10:[1,272]},A(Le,[2,129]),A(Me,[2,105],{106:Ze}),A(Me,[2,106],{113:113,44:E,60:d,89:f,102:D,105:w,106:b,109:k,111:v,114:S,115:x,116:F}),A(Me,[2,110]),A(Me,[2,112],{10:[1,273]}),A(Me,[2,113]),{98:[1,274]},{51:[1,275]},{62:[1,276]},{66:[1,277]},{8:J,9:K,11:O,21:278},A(H,[2,34]),A(qA,[2,52]),{10:Je,60:kt,84:Cr,105:Pt,107:279,108:243,109:dt,110:Yt,111:Ce,112:ye},A(Vt,[2,133]),{14:AA,44:W,60:CA,89:tA,101:280,105:lA,106:gA,109:aA,111:NA,114:DA,115:KA,116:TA,120:88},{14:AA,44:W,60:CA,89:tA,101:281,105:lA,106:gA,109:aA,111:NA,114:DA,115:KA,116:TA,120:88},{98:[1,282]},A(Me,[2,120]),A(IA,[2,58]),{30:283,67:Ge,80:wA,81:Re,82:172,116:He,117:de,118:RA},A(IA,[2,66]),A(ke,u,{5:284}),A(Xt,[2,131],{108:270,10:Je,60:kt,84:Cr,105:Pt,109:dt,110:Yt,111:Ce,112:ye}),A(Me,[2,126],{120:168,10:[1,285],14:AA,44:W,60:CA,89:tA,105:lA,106:gA,109:aA,111:NA,114:DA,115:KA,116:TA}),A(Me,[2,127],{120:168,10:[1,286],14:AA,44:W,60:CA,89:tA,105:lA,106:gA,109:aA,111:NA,114:DA,115:KA,116:TA}),A(Me,[2,114]),{31:[1,287],67:Ge,82:219,116:He,117:de,118:RA},{6:11,7:12,8:a,9:n,10:o,11:s,20:17,22:18,23:19,24:20,25:21,26:22,27:l,32:[1,288],33:24,34:g,36:C,38:B,42:28,43:39,44:E,45:40,47:41,60:d,84:I,85:h,86:Q,87:p,88:m,89:f,102:D,105:w,106:b,109:k,111:v,113:42,114:S,115:x,116:F,121:T,122:R,123:L,124:M,125:U},{10:Je,60:kt,84:Cr,92:289,105:Pt,107:242,108:243,109:dt,110:Yt,111:Ce,112:ye},{10:Je,60:kt,84:Cr,92:290,105:Pt,107:242,108:243,109:dt,110:Yt,111:Ce,112:ye},A(IA,[2,62]),A(H,[2,33]),A(Me,[2,124],{106:Ze}),A(Me,[2,125],{106:Ze})],defaultActions:{},parseError:y(function(Ye,Ct){if(Ct.recoverable)this.trace(Ye);else{var lt=Error(Ye);throw lt.hash=Ct,lt}},"parseError"),parse:y(function(Ye){var Ct=this,lt=[0],Te=[],Ft=[null],LA=[],ki=this.table,YA="",lr=0,Du=0,zn=0,an=2,as=1,Ai=LA.slice.call(arguments,1),Ku=Object.create(this.lexer),ko={yy:{}};for(var Zn in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Zn))ko.yy[Zn]=this.yy[Zn];if(Ku.setInput(Ye,ko.yy),ko.yy.lexer=Ku,ko.yy.parser=this,typeof Ku.yylloc>"u")Ku.yylloc={};var nn=Ku.yylloc;LA.push(nn);var Ud=Ku.options&&Ku.options.ranges;if(typeof ko.yy.parseError==="function")this.parseError=ko.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function Vn(br){lt.length=lt.length-2*br,Ft.length=Ft.length-br,LA.length=LA.length-br}y(Vn,"popStack");function Md(){var br=Te.pop()||Ku.lex()||as;if(typeof br!=="number"){if(br instanceof Array)Te=br,br=Te.pop();br=Ct.symbols_[br]||br}return br}y(Md,"lex");var on,Td,_l,jn,Fp,Xe,UA={},se,Oe,rt,Ht;while(!0){if(_l=lt[lt.length-1],this.defaultActions[_l])jn=this.defaultActions[_l];else{if(on===null||typeof on>"u")on=Md();jn=ki[_l]&&ki[_l][on]}if(typeof jn>"u"||!jn.length||!jn[0]){var _r="";Ht=[];for(se in ki[_l])if(this.terminals_[se]&&se>an)Ht.push("'"+this.terminals_[se]+"'");if(Ku.showPosition)_r="Parse error on line "+(lr+1)+`:
`+Ku.showPosition()+`
Expecting `+Ht.join(", ")+", got '"+(this.terminals_[on]||on)+"'";else _r="Parse error on line "+(lr+1)+": Unexpected "+(on==as?"end of input":"'"+(this.terminals_[on]||on)+"'");this.parseError(_r,{text:Ku.match,token:this.terminals_[on]||on,line:Ku.yylineno,loc:nn,expected:Ht})}if(jn[0]instanceof Array&&jn.length>1)throw Error("Parse Error: multiple actions possible at state: "+_l+", token: "+on);switch(jn[0]){case 1:if(lt.push(on),Ft.push(Ku.yytext),LA.push(Ku.yylloc),lt.push(jn[1]),on=null,!Td){if(Du=Ku.yyleng,YA=Ku.yytext,lr=Ku.yylineno,nn=Ku.yylloc,zn>0)zn--}else on=Td,Td=null;break;case 2:if(Oe=this.productions_[jn[1]][1],UA.$=Ft[Ft.length-Oe],UA._$={first_line:LA[LA.length-(Oe||1)].first_line,last_line:LA[LA.length-1].last_line,first_column:LA[LA.length-(Oe||1)].first_column,last_column:LA[LA.length-1].last_column},Ud)UA._$.range=[LA[LA.length-(Oe||1)].range[0],LA[LA.length-1].range[1]];if(Xe=this.performAction.apply(UA,[YA,Du,lr,ko.yy,jn[1],Ft,LA].concat(Ai)),typeof Xe<"u")return Xe;if(Oe)lt=lt.slice(0,-1*Oe*2),Ft=Ft.slice(0,-1*Oe),LA=LA.slice(0,-1*Oe);lt.push(this.productions_[jn[1]][0]),Ft.push(UA.$),LA.push(UA._$),rt=ki[lt[lt.length-2]][lt[lt.length-1]],lt.push(rt);break;case 3:return!0}}return!0},"parse")},Qi=function(){var et={EOF:1,parseError:y(function(Ct,lt){if(this.yy.parser)this.yy.parser.parseError(Ct,lt);else throw Error(Ct)},"parseError"),setInput:y(function(Ye,Ct){if(this.yy=Ct||this.yy||{},this._input=Ye,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var Ye=this._input[0];this.yytext+=Ye,this.yyleng++,this.offset++,this.match+=Ye,this.matched+=Ye;var Ct=Ye.match(/(?:\r\n?|\n).*/g);if(Ct)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),Ye},"input"),unput:y(function(Ye){var Ct=Ye.length,lt=Ye.split(/(?:\r\n?|\n)/g);this._input=Ye+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ct),this.offset-=Ct;var Te=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),lt.length-1)this.yylineno-=lt.length-1;var Ft=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:lt?(lt.length===Te.length?this.yylloc.first_column:0)+Te[Te.length-lt.length].length-lt[0].length:this.yylloc.first_column-Ct},this.options.ranges)this.yylloc.range=[Ft[0],Ft[0]+this.yyleng-Ct];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(Ye){this.unput(this.match.slice(Ye))},"less"),pastInput:y(function(){var Ye=this.matched.substr(0,this.matched.length-this.match.length);return(Ye.length>20?"...":"")+Ye.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var Ye=this.match;if(Ye.length<20)Ye+=this._input.substr(0,20-Ye.length);return(Ye.substr(0,20)+(Ye.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var Ye=this.pastInput(),Ct=Array(Ye.length+1).join("-");return Ye+this.upcomingInput()+`
`+Ct+"^"},"showPosition"),test_match:y(function(Ye,Ct){var lt,Te,Ft;if(this.options.backtrack_lexer){if(Ft={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)Ft.yylloc.range=this.yylloc.range.slice(0)}if(Te=Ye[0].match(/(?:\r\n?|\n).*/g),Te)this.yylineno+=Te.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Te?Te[Te.length-1].length-Te[Te.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ye[0].length},this.yytext+=Ye[0],this.match+=Ye[0],this.matches=Ye,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(Ye[0].length),this.matched+=Ye[0],lt=this.performAction.call(this,this.yy,this,Ct,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(lt)return lt;else if(this._backtrack){for(var LA in Ft)this[LA]=Ft[LA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var Ye,Ct,lt,Te;if(!this._more)this.yytext="",this.match="";var Ft=this._currentRules();for(var LA=0;LA<Ft.length;LA++)if(lt=this._input.match(this.rules[Ft[LA]]),lt&&(!Ct||lt[0].length>Ct[0].length)){if(Ct=lt,Te=LA,this.options.backtrack_lexer)if(Ye=this.test_match(lt,Ft[LA]),Ye!==!1)return Ye;else if(this._backtrack){Ct=!1;continue}else return!1;else if(!this.options.flex)break}if(Ct){if(Ye=this.test_match(Ct,Ft[Te]),Ye!==!1)return Ye;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var Ct=this.next();if(Ct)return Ct;else return this.lex()},"lex"),begin:y(function(Ct){this.conditionStack.push(Ct)},"begin"),popState:y(function(){var Ct=this.conditionStack.length-1;if(Ct>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(Ct){if(Ct=this.conditionStack.length-1-Math.abs(Ct||0),Ct>=0)return this.conditionStack[Ct];else return"INITIAL"},"topState"),pushState:y(function(Ct){this.begin(Ct)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:y(function(Ct,lt,Te,Ft){var LA=Ft;switch(Te){case 0:return this.begin("acc_title"),34;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),36;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.pushState("shapeData"),lt.yytext="",40;break;case 8:return this.pushState("shapeDataStr"),40;break;case 9:return this.popState(),40;break;case 10:let ki=/\n\s*/g;return lt.yytext=lt.yytext.replace(ki,"<br/>"),40;break;case 11:return 40;case 12:this.popState();break;case 13:this.begin("callbackname");break;case 14:this.popState();break;case 15:this.popState(),this.begin("callbackargs");break;case 16:return 95;case 17:this.popState();break;case 18:return 96;case 19:return"MD_STR";case 20:this.popState();break;case 21:this.begin("md_string");break;case 22:return"STR";case 23:this.popState();break;case 24:this.pushState("string");break;case 25:return 84;case 26:return 102;case 27:return 85;case 28:return 104;case 29:return 86;case 30:return 87;case 31:return 97;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 88;case 35:if(Ct.lex.firstGraph())this.begin("dir");return 12;case 36:if(Ct.lex.firstGraph())this.begin("dir");return 12;case 37:if(Ct.lex.firstGraph())this.begin("dir");return 12;case 38:if(Ct.lex.firstGraph())this.begin("dir");return 12;case 39:return 27;case 40:return 32;case 41:return 98;case 42:return 98;case 43:return 98;case 44:return 98;case 45:return this.popState(),13;break;case 46:return this.popState(),14;break;case 47:return this.popState(),14;break;case 48:return this.popState(),14;break;case 49:return this.popState(),14;break;case 50:return this.popState(),14;break;case 51:return this.popState(),14;break;case 52:return this.popState(),14;break;case 53:return this.popState(),14;break;case 54:return this.popState(),14;break;case 55:return this.popState(),14;break;case 56:return 121;case 57:return 122;case 58:return 123;case 59:return 124;case 60:return 125;case 61:return 78;case 62:return 105;case 63:return 111;case 64:return 46;case 65:return 60;case 66:return 44;case 67:return 8;case 68:return 106;case 69:return 115;case 70:return this.popState(),77;break;case 71:return this.pushState("edgeText"),75;break;case 72:return 119;case 73:return this.popState(),77;break;case 74:return this.pushState("thickEdgeText"),75;break;case 75:return 119;case 76:return this.popState(),77;break;case 77:return this.pushState("dottedEdgeText"),75;break;case 78:return 119;case 79:return 77;case 80:return this.popState(),53;break;case 81:return"TEXT";case 82:return this.pushState("ellipseText"),52;break;case 83:return this.popState(),55;break;case 84:return this.pushState("text"),54;break;case 85:return this.popState(),57;break;case 86:return this.pushState("text"),56;break;case 87:return 58;case 88:return this.pushState("text"),67;break;case 89:return this.popState(),64;break;case 90:return this.pushState("text"),63;break;case 91:return this.popState(),49;break;case 92:return this.pushState("text"),48;break;case 93:return this.popState(),69;break;case 94:return this.popState(),71;break;case 95:return 117;case 96:return this.pushState("trapText"),68;break;case 97:return this.pushState("trapText"),70;break;case 98:return 118;case 99:return 67;case 100:return 90;case 101:return"SEP";case 102:return 89;case 103:return 115;case 104:return 111;case 105:return 44;case 106:return 109;case 107:return 114;case 108:return 116;case 109:return this.popState(),62;break;case 110:return this.pushState("text"),62;break;case 111:return this.popState(),51;break;case 112:return this.pushState("text"),50;break;case 113:return this.popState(),31;break;case 114:return this.pushState("text"),29;break;case 115:return this.popState(),66;break;case 116:return this.pushState("text"),65;break;case 117:return"TEXT";case 118:return"QUOTE";case 119:return 9;case 120:return 10;case 121:return 11}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:@\{)/,/^(?:["])/,/^(?:["])/,/^(?:[^\"]+)/,/^(?:[^}^"]+)/,/^(?:\})/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["][`])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:["])/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s])/,/^(?:click[\s]+)/,/^(?:[\s\n])/,/^(?:[^\s\n]*)/,/^(?:flowchart-elk\b)/,/^(?:swimlane-beta\b)/,/^(?:graph\b)/,/^(?:flowchart\b)/,/^(?:subgraph\b)/,/^(?:end\b\s*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:(\r?\n)*\s*\n)/,/^(?:\s*LR\b)/,/^(?:\s*RL\b)/,/^(?:\s*TB\b)/,/^(?:\s*BT\b)/,/^(?:\s*TD\b)/,/^(?:\s*BR\b)/,/^(?:\s*<)/,/^(?:\s*>)/,/^(?:\s*\^)/,/^(?:\s*v\b)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:.*direction\s+TD[^\n]*)/,/^(?:[^\s\"]+@(?=[^\{\"]))/,/^(?:[0-9]+)/,/^(?:#)/,/^(?::::)/,/^(?::)/,/^(?:&)/,/^(?:;)/,/^(?:,)/,/^(?:\*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:[^-]|-(?!-)+)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:[^=]|=(?!))/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:[^\.]|\.(?!))/,/^(?:\s*~~[\~]+\s*)/,/^(?:[-/\)][\)])/,/^(?:[^\(\)\[\]\{\}]|!\)+)/,/^(?:\(-)/,/^(?:\]\))/,/^(?:\(\[)/,/^(?:\]\])/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:>)/,/^(?:\)\])/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\(\(\()/,/^(?:[\\(?=\])][\]])/,/^(?:\/(?=\])\])/,/^(?:\/(?!\])|\\(?!\])|[^\\\[\]\(\)\{\}\/]+)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:\*)/,/^(?:#)/,/^(?:&)/,/^(?:([A-Za-z0-9!"\#$%&'*+\.`?\\_\/]|-(?=[^\>\-\.])|(?!))+)/,/^(?:-)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\|)/,/^(?:\))/,/^(?:\()/,/^(?:\])/,/^(?:\[)/,/^(?:(\}))/,/^(?:\{)/,/^(?:[^\[\]\(\)\{\}\|\"]+)/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{shapeDataEndBracket:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},shapeDataStr:{rules:[9,10,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},shapeData:{rules:[8,11,12,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},callbackargs:{rules:[17,18,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},callbackname:{rules:[14,15,16,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},href:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},click:{rules:[21,24,33,34,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},dottedEdgeText:{rules:[21,24,76,78,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},thickEdgeText:{rules:[21,24,73,75,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},edgeText:{rules:[21,24,70,72,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},trapText:{rules:[21,24,79,82,84,86,90,92,93,94,95,96,97,110,112,114,116],inclusive:!1},ellipseText:{rules:[21,24,79,80,81,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},text:{rules:[21,24,79,82,83,84,85,86,89,90,91,92,96,97,109,110,111,112,113,114,115,116,117],inclusive:!1},vertex:{rules:[21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},dir:{rules:[21,24,45,46,47,48,49,50,51,52,53,54,55,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_descr_multiline:{rules:[5,6,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_descr:{rules:[3,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},acc_title:{rules:[1,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},md_string:{rules:[19,20,21,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},string:{rules:[21,22,23,24,79,82,84,86,90,92,96,97,110,112,114,116],inclusive:!1},INITIAL:{rules:[0,2,4,7,13,21,24,25,26,27,28,29,30,31,32,35,36,37,38,39,40,41,42,43,44,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,73,74,76,77,79,82,84,86,87,88,90,92,96,97,98,99,100,101,102,103,104,105,106,107,108,110,112,114,116,118,119,120,121],inclusive:!0}}};return et}();or.lexer=Qi;function sr(){this.yy={}}return y(sr,"Parser"),sr.prototype=or,or.Parser=sr,new sr}();lnA.parser=lnA;FOA=lnA,xOA=Object.assign({},FOA);xOA.parse=(A)=>{let e=A.replace(/}\s*\n/g,`}
`);return FOA.parse(e)};a2t=xOA,n2t=y((A,e)=>{let t=Lp,r=t(A,"r"),i=t(A,"g"),u=t(A,"b");return ln(r,i,u,e)},"fade"),o2t=y((A)=>`.label {
font-family: ${A.fontFamily};
color: ${A.nodeTextColor||A.textColor};
}
.cluster-label text {
fill: ${A.titleColor};
}
.cluster-label span {
color: ${A.titleColor};
}
.cluster-label span p {
background-color: transparent;
}
.label text,span {
fill: ${A.nodeTextColor||A.textColor};
color: ${A.nodeTextColor||A.textColor};
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${A.mainBkg};
stroke: ${A.nodeBorder};
stroke-width: ${A.strokeWidth??1}px;
}
.rough-node .label text , .node .label text, .image-shape .label, .icon-shape .label {
text-anchor: middle;
}
.node .katex path {
fill: #000;
stroke: #000;
stroke-width: 1px;
}
.rough-node .label,.node .label, .image-shape .label, .icon-shape .label {
text-align: center;
}
.node.clickable {
cursor: pointer;
}
.root .anchor path {
fill: ${A.lineColor} !important;
stroke-width: 0;
stroke: ${A.lineColor};
}
.arrowheadPath {
fill: ${A.arrowheadColor};
}
.edgePath .path {
stroke: ${A.lineColor};
stroke-width: ${A.strokeWidth??2}px;
}
.flowchart-link {
stroke: ${A.lineColor};
fill: none;
}
.edgeLabel {
background-color: ${A.edgeLabelBackground};
p {
background-color: ${A.edgeLabelBackground};
}
rect {
opacity: 0.5;
background-color: ${A.edgeLabelBackground};
fill: ${A.edgeLabelBackground};
}
text-align: center;
}
/* For html labels only */
.labelBkg {
background-color: ${n2t(A.edgeLabelBackground,0.5)};
// background-color:
}
.cluster rect {
fill: ${A.clusterBkg};
stroke: ${A.clusterBorder};
stroke-width: 1px;
}
.cluster text {
fill: ${A.titleColor};
}
.cluster span {
color: ${A.titleColor};
}
/* .cluster div {
color: ${A.titleColor};
} */
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: ${A.fontFamily};
font-size: 12px;
background: ${A.tertiaryColor};
border: 1px solid ${A.border2};
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
.flowchartTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${A.textColor};
}
rect.text {
fill: none;
stroke-width: 0;
}
.icon-shape, .image-shape {
background-color: ${A.edgeLabelBackground};
p {
background-color: ${A.edgeLabelBackground};
padding: 2px;
}
.label rect {
opacity: 0.5;
background-color: ${A.edgeLabelBackground};
fill: ${A.edgeLabelBackground};
}
text-align: center;
}
${vE()}
`,"getStyles"),gnA=o2t,mY=y(({defaultLayout:A,styles:e=gnA}={})=>({parser:a2t,get db(){return new t2t},renderer:u2t,styles:e,init:y((t)=>{if(!t.flowchart)t.flowchart={};let r=UR().layout??A??t.layout;if(r)db({layout:r});t.flowchart.arrowMarkerAbsolute=t.arrowMarkerAbsolute,db({flowchart:{arrowMarkerAbsolute:t.arrowMarkerAbsolute}})},"init")}),"createFlowDiagram"),Xf=mY()});var DY=_(()=>{cnA();kE();gg();hl();of();El();lg();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt()});var s2t,l2t,SOA;var LOA=_(()=>{cnA();kE();gg();hl();of();El();lg();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt();s2t=y((A)=>`${gnA(A)}
.swimlane.cluster rect {
stroke: ${A.clusterBorder} !important;
}
[data-look="neo"].cluster rect {
filter: none;
}
`,"getStyles"),l2t=s2t,SOA=mY({defaultLayout:"swimlane",styles:l2t})});var CnA,g2t,c2t,NOA,C2t,ROA,yY,B2t,E2t,d2t,GOA;var UOA=_(()=>{gg();hl();El();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt();Pr();vn();CnA=function(){var A=y(function(KA,TA,qA,IA){for(qA=qA||{},IA=KA.length;IA--;qA[KA[IA]]=TA);return qA},"o"),e=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52],t=[1,10],r=[1,11],i=[1,12],u=[1,13],a=[1,23],n=[1,24],o=[1,25],s=[1,26],l=[1,27],g=[1,19],C=[1,28],B=[1,29],E=[1,20],d=[1,18],I=[1,21],h=[1,22],Q=[1,36],p=[1,37],m=[1,38],f=[1,39],D=[1,40],w=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52,66,67,68,69,70],b=[1,45],k=[1,46],v=[1,55],S=[40,48,50,51,52,71,72],x=[1,66],F=[1,64],T=[1,61],R=[1,65],L=[1,67],M=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,51,52,66,67,68,69,70],U=[66,67,68,69,70],Y=[1,85],H=[1,84],J=[1,82],K=[1,83],O=[6,10,42,47],P=[6,10,13,41,42,47,48,49],z=[1,93],AA=[1,92],W=[1,91],CA=[19,58],tA=[1,102],lA=[1,101],gA=[19,58,61,63],aA={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,DECIMAL_NUM:51,ENTITY_ONE:52,attribute:53,attributeType:54,attributeName:55,attributeKeyTypeList:56,attributeComment:57,ATTRIBUTE_WORD:58,"?":59,attributeKeyType:60,",":61,ATTRIBUTE_KEY:62,COMMENT:63,cardinality:64,relType:65,ZERO_OR_ONE:66,ZERO_OR_MORE:67,ONE_OR_MORE:68,ONLY_ONE:69,MD_PARENT:70,NON_IDENTIFYING:71,IDENTIFYING:72,WORD:73,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",51:"DECIMAL_NUM",52:"ENTITY_ONE",58:"ATTRIBUTE_WORD",59:"?",61:",",62:"ATTRIBUTE_KEY",63:"COMMENT",66:"ZERO_OR_ONE",67:"ZERO_OR_MORE",68:"ONE_OR_MORE",69:"ONLY_ONE",70:"MD_PARENT",71:"NON_IDENTIFYING",72:"IDENTIFYING",73:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[11,1],[11,1],[11,1],[18,1],[18,2],[53,2],[53,3],[53,3],[53,4],[54,1],[54,2],[55,1],[56,1],[56,3],[60,1],[57,1],[12,3],[64,1],[64,1],[64,1],[64,1],[64,1],[65,1],[65,1],[14,1],[14,1],[14,1]],performAction:y(function(TA,qA,IA,bA,SA,EA,nA){var eA=EA.length-1;switch(SA){case 1:break;case 2:this.$=[];break;case 3:EA[eA-1].push(EA[eA]),this.$=EA[eA-1];break;case 4:case 5:this.$=EA[eA];break;case 6:case 7:this.$=[];break;case 8:bA.addEntity(EA[eA-4]),bA.addEntity(EA[eA-2]),bA.addRelationship(EA[eA-4],EA[eA],EA[eA-2],EA[eA-3]);break;case 9:bA.addEntity(EA[eA-8]),bA.addEntity(EA[eA-4]),bA.addRelationship(EA[eA-8],EA[eA],EA[eA-4],EA[eA-5]),bA.setClass([EA[eA-8]],EA[eA-6]),bA.setClass([EA[eA-4]],EA[eA-2]);break;case 10:bA.addEntity(EA[eA-6]),bA.addEntity(EA[eA-2]),bA.addRelationship(EA[eA-6],EA[eA],EA[eA-2],EA[eA-3]),bA.setClass([EA[eA-6]],EA[eA-4]);break;case 11:bA.addEntity(EA[eA-6]),bA.addEntity(EA[eA-4]),bA.addRelationship(EA[eA-6],EA[eA],EA[eA-4],EA[eA-5]),bA.setClass([EA[eA-4]],EA[eA-2]);break;case 12:bA.addEntity(EA[eA-3]),bA.addAttributes(EA[eA-3],EA[eA-1]);break;case 13:bA.addEntity(EA[eA-5]),bA.addAttributes(EA[eA-5],EA[eA-1]),bA.setClass([EA[eA-5]],EA[eA-3]);break;case 14:bA.addEntity(EA[eA-2]);break;case 15:bA.addEntity(EA[eA-4]),bA.setClass([EA[eA-4]],EA[eA-2]);break;case 16:bA.addEntity(EA[eA]);break;case 17:bA.addEntity(EA[eA-2]),bA.setClass([EA[eA-2]],EA[eA]);break;case 18:bA.addEntity(EA[eA-6],EA[eA-4]),bA.addAttributes(EA[eA-6],EA[eA-1]);break;case 19:bA.addEntity(EA[eA-8],EA[eA-6]),bA.addAttributes(EA[eA-8],EA[eA-1]),bA.setClass([EA[eA-8]],EA[eA-3]);break;case 20:bA.addEntity(EA[eA-5],EA[eA-3]);break;case 21:bA.addEntity(EA[eA-7],EA[eA-5]),bA.setClass([EA[eA-7]],EA[eA-2]);break;case 22:bA.addEntity(EA[eA-3],EA[eA-1]);break;case 23:bA.addEntity(EA[eA-5],EA[eA-3]),bA.setClass([EA[eA-5]],EA[eA]);break;case 24:case 25:this.$=EA[eA].trim(),bA.setAccTitle(this.$);break;case 26:case 27:this.$=EA[eA].trim(),bA.setAccDescription(this.$);break;case 32:bA.setDirection("TB");break;case 33:bA.setDirection("BT");break;case 34:bA.setDirection("RL");break;case 35:bA.setDirection("LR");break;case 36:this.$=EA[eA-3],bA.addClass(EA[eA-2],EA[eA-1]);break;case 37:case 38:case 59:case 68:this.$=[EA[eA]];break;case 39:case 40:this.$=EA[eA-2].concat([EA[eA]]);break;case 41:this.$=EA[eA-2],bA.setClass(EA[eA-1],EA[eA]);break;case 42:this.$=EA[eA-3],bA.addCssStyles(EA[eA-2],EA[eA-1]);break;case 43:this.$=[EA[eA]];break;case 44:EA[eA-2].push(EA[eA]),this.$=EA[eA-2];break;case 46:this.$=EA[eA-1]+EA[eA];break;case 54:case 80:case 81:this.$=EA[eA].replace(/"/g,"");break;case 55:case 56:case 57:case 58:case 82:this.$=EA[eA];break;case 60:EA[eA].push(EA[eA-1]),this.$=EA[eA];break;case 61:this.$={type:EA[eA-1],name:EA[eA]};break;case 62:this.$={type:EA[eA-2],name:EA[eA-1],keys:EA[eA]};break;case 63:this.$={type:EA[eA-2],name:EA[eA-1],comment:EA[eA]};break;case 64:this.$={type:EA[eA-3],name:EA[eA-2],keys:EA[eA-1],comment:EA[eA]};break;case 65:case 67:case 70:this.$=EA[eA];break;case 66:this.$=EA[eA-1]+EA[eA];break;case 69:EA[eA-2].push(EA[eA]),this.$=EA[eA-2];break;case 71:this.$=EA[eA].replace(/"/g,"");break;case 72:this.$={cardA:EA[eA],relType:EA[eA-1],cardB:EA[eA-2]};break;case 73:this.$=bA.Cardinality.ZERO_OR_ONE;break;case 74:this.$=bA.Cardinality.ZERO_OR_MORE;break;case 75:this.$=bA.Cardinality.ONE_OR_MORE;break;case 76:this.$=bA.Cardinality.ONLY_ONE;break;case 77:this.$=bA.Cardinality.MD_PARENT;break;case 78:this.$=bA.Identification.NON_IDENTIFYING;break;case 79:this.$=bA.Identification.IDENTIFYING;break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},A(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:t,24:r,26:i,28:u,29:14,30:15,31:16,32:17,33:a,34:n,35:o,36:s,37:l,40:g,43:C,44:B,48:E,50:d,51:I,52:h},A(e,[2,7],{1:[2,1]}),A(e,[2,3]),{9:30,11:9,22:t,24:r,26:i,28:u,29:14,30:15,31:16,32:17,33:a,34:n,35:o,36:s,37:l,40:g,43:C,44:B,48:E,50:d,51:I,52:h},A(e,[2,5]),A(e,[2,6]),A(e,[2,16],{12:31,64:35,15:[1,32],17:[1,33],20:[1,34],66:Q,67:p,68:m,69:f,70:D}),{23:[1,41]},{25:[1,42]},{27:[1,43]},A(e,[2,27]),A(e,[2,28]),A(e,[2,29]),A(e,[2,30]),A(e,[2,31]),A(w,[2,54]),A(w,[2,55]),A(w,[2,56]),A(w,[2,57]),A(w,[2,58]),A(e,[2,32]),A(e,[2,33]),A(e,[2,34]),A(e,[2,35]),{16:44,40:b,41:k},{16:47,40:b,41:k},{16:48,40:b,41:k},A(e,[2,4]),{11:49,40:g,48:E,50:d,51:I,52:h},{16:50,40:b,41:k},{18:51,19:[1,52],53:53,54:54,58:v},{11:56,40:g,48:E,50:d,51:I,52:h},{65:57,71:[1,58],72:[1,59]},A(S,[2,73]),A(S,[2,74]),A(S,[2,75]),A(S,[2,76]),A(S,[2,77]),A(e,[2,24]),A(e,[2,25]),A(e,[2,26]),{13:x,38:60,41:F,42:T,45:62,46:63,48:R,49:L},A(M,[2,37]),A(M,[2,38]),{16:68,40:b,41:k,42:T},{13:x,38:69,41:F,42:T,45:62,46:63,48:R,49:L},{13:[1,70],15:[1,71]},A(e,[2,17],{64:35,12:72,17:[1,73],42:T,66:Q,67:p,68:m,69:f,70:D}),{19:[1,74]},A(e,[2,14]),{18:75,19:[2,59],53:53,54:54,58:v},{55:76,58:[1,77]},{58:[2,65],59:[1,78]},{21:[1,79]},{64:80,66:Q,67:p,68:m,69:f,70:D},A(U,[2,78]),A(U,[2,79]),{6:Y,10:H,39:81,42:J,47:K},{40:[1,86],41:[1,87]},A(O,[2,43],{46:88,13:x,41:F,48:R,49:L}),A(P,[2,45]),A(P,[2,50]),A(P,[2,51]),A(P,[2,52]),A(P,[2,53]),A(e,[2,41],{42:T}),{6:Y,10:H,39:89,42:J,47:K},{14:90,40:z,50:AA,73:W},{16:94,40:b,41:k},{11:95,40:g,48:E,50:d,51:I,52:h},{18:96,19:[1,97],53:53,54:54,58:v},A(e,[2,12]),{19:[2,60]},A(CA,[2,61],{56:98,57:99,60:100,62:tA,63:lA}),A([19,58,62,63],[2,67]),{58:[2,66]},A(e,[2,22],{15:[1,104],17:[1,103]}),A([40,48,50,51,52],[2,72]),A(e,[2,36]),{13:x,41:F,45:105,46:63,48:R,49:L},A(e,[2,47]),A(e,[2,48]),A(e,[2,49]),A(M,[2,39]),A(M,[2,40]),A(P,[2,46]),A(e,[2,42]),A(e,[2,8]),A(e,[2,80]),A(e,[2,81]),A(e,[2,82]),{13:[1,106],42:T},{13:[1,108],15:[1,107]},{19:[1,109]},A(e,[2,15]),A(CA,[2,62],{57:110,61:[1,111],63:lA}),A(CA,[2,63]),A(gA,[2,68]),A(CA,[2,71]),A(gA,[2,70]),{18:112,19:[1,113],53:53,54:54,58:v},{16:114,40:b,41:k},A(O,[2,44],{46:88,13:x,41:F,48:R,49:L}),{14:115,40:z,50:AA,73:W},{16:116,40:b,41:k},{14:117,40:z,50:AA,73:W},A(e,[2,13]),A(CA,[2,64]),{60:118,62:tA},{19:[1,119]},A(e,[2,20]),A(e,[2,23],{17:[1,120],42:T}),A(e,[2,11]),{13:[1,121],42:T},A(e,[2,10]),A(gA,[2,69]),A(e,[2,18]),{18:122,19:[1,123],53:53,54:54,58:v},{14:124,40:z,50:AA,73:W},{19:[1,125]},A(e,[2,21]),A(e,[2,9]),A(e,[2,19])],defaultActions:{75:[2,60],78:[2,66]},parseError:y(function(TA,qA){if(qA.recoverable)this.trace(TA);else{var IA=Error(TA);throw IA.hash=qA,IA}},"parseError"),parse:y(function(TA){var qA=this,IA=[0],bA=[],SA=[null],EA=[],nA=this.table,eA="",BA=0,yA=0,vA=0,FA=2,HA=1,dA=EA.slice.call(arguments,1),q=Object.create(this.lexer),Z={yy:{}};for(var fA in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,fA))Z.yy[fA]=this.yy[fA];if(q.setInput(TA,Z.yy),Z.yy.lexer=q,Z.yy.parser=this,typeof q.yylloc>"u")q.yylloc={};var j=q.yylloc;EA.push(j);var mA=q.options&&q.options.ranges;if(typeof Z.yy.parseError==="function")this.parseError=Z.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function rA(We){IA.length=IA.length-2*We,SA.length=SA.length-We,EA.length=EA.length-We}y(rA,"popStack");function JA(){var We=bA.pop()||q.lex()||HA;if(typeof We!=="number"){if(We instanceof Array)bA=We,We=bA.pop();We=qA.symbols_[We]||We}return We}y(JA,"lex");var _A,ZA,WA,te,zA,Ae,$A={},oe,kA,Pe,MA;while(!0){if(WA=IA[IA.length-1],this.defaultActions[WA])te=this.defaultActions[WA];else{if(_A===null||typeof _A>"u")_A=JA();te=nA[WA]&&nA[WA][_A]}if(typeof te>"u"||!te.length||!te[0]){var ke="";MA=[];for(oe in nA[WA])if(this.terminals_[oe]&&oe>FA)MA.push("'"+this.terminals_[oe]+"'");if(q.showPosition)ke="Parse error on line "+(BA+1)+`:
`+q.showPosition()+`
Expecting `+MA.join(", ")+", got '"+(this.terminals_[_A]||_A)+"'";else ke="Parse error on line "+(BA+1)+": Unexpected "+(_A==HA?"end of input":"'"+(this.terminals_[_A]||_A)+"'");this.parseError(ke,{text:q.match,token:this.terminals_[_A]||_A,line:q.yylineno,loc:j,expected:MA})}if(te[0]instanceof Array&&te.length>1)throw Error("Parse Error: multiple actions possible at state: "+WA+", token: "+_A);switch(te[0]){case 1:if(IA.push(_A),SA.push(q.yytext),EA.push(q.yylloc),IA.push(te[1]),_A=null,!ZA){if(yA=q.yyleng,eA=q.yytext,BA=q.yylineno,j=q.yylloc,vA>0)vA--}else _A=ZA,ZA=null;break;case 2:if(kA=this.productions_[te[1]][1],$A.$=SA[SA.length-kA],$A._$={first_line:EA[EA.length-(kA||1)].first_line,last_line:EA[EA.length-1].last_line,first_column:EA[EA.length-(kA||1)].first_column,last_column:EA[EA.length-1].last_column},mA)$A._$.range=[EA[EA.length-(kA||1)].range[0],EA[EA.length-1].range[1]];if(Ae=this.performAction.apply($A,[eA,yA,BA,Z.yy,te[1],SA,EA].concat(dA)),typeof Ae<"u")return Ae;if(kA)IA=IA.slice(0,-1*kA*2),SA=SA.slice(0,-1*kA),EA=EA.slice(0,-1*kA);IA.push(this.productions_[te[1]][0]),SA.push($A.$),EA.push($A._$),Pe=nA[IA[IA.length-2]][IA[IA.length-1]],IA.push(Pe);break;case 3:return!0}}return!0},"parse")},NA=function(){var KA={EOF:1,parseError:y(function(qA,IA){if(this.yy.parser)this.yy.parser.parseError(qA,IA);else throw Error(qA)},"parseError"),setInput:y(function(TA,qA){if(this.yy=qA||this.yy||{},this._input=TA,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var TA=this._input[0];this.yytext+=TA,this.yyleng++,this.offset++,this.match+=TA,this.matched+=TA;var qA=TA.match(/(?:\r\n?|\n).*/g);if(qA)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),TA},"input"),unput:y(function(TA){var qA=TA.length,IA=TA.split(/(?:\r\n?|\n)/g);this._input=TA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-qA),this.offset-=qA;var bA=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),IA.length-1)this.yylineno-=IA.length-1;var SA=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:IA?(IA.length===bA.length?this.yylloc.first_column:0)+bA[bA.length-IA.length].length-IA[0].length:this.yylloc.first_column-qA},this.options.ranges)this.yylloc.range=[SA[0],SA[0]+this.yyleng-qA];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(TA){this.unput(this.match.slice(TA))},"less"),pastInput:y(function(){var TA=this.matched.substr(0,this.matched.length-this.match.length);return(TA.length>20?"...":"")+TA.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var TA=this.match;if(TA.length<20)TA+=this._input.substr(0,20-TA.length);return(TA.substr(0,20)+(TA.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var TA=this.pastInput(),qA=Array(TA.length+1).join("-");return TA+this.upcomingInput()+`
`+qA+"^"},"showPosition"),test_match:y(function(TA,qA){var IA,bA,SA;if(this.options.backtrack_lexer){if(SA={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)SA.yylloc.range=this.yylloc.range.slice(0)}if(bA=TA[0].match(/(?:\r\n?|\n).*/g),bA)this.yylineno+=bA.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:bA?bA[bA.length-1].length-bA[bA.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+TA[0].length},this.yytext+=TA[0],this.match+=TA[0],this.matches=TA,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(TA[0].length),this.matched+=TA[0],IA=this.performAction.call(this,this.yy,this,qA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(IA)return IA;else if(this._backtrack){for(var EA in SA)this[EA]=SA[EA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var TA,qA,IA,bA;if(!this._more)this.yytext="",this.match="";var SA=this._currentRules();for(var EA=0;EA<SA.length;EA++)if(IA=this._input.match(this.rules[SA[EA]]),IA&&(!qA||IA[0].length>qA[0].length)){if(qA=IA,bA=EA,this.options.backtrack_lexer)if(TA=this.test_match(IA,SA[EA]),TA!==!1)return TA;else if(this._backtrack){qA=!1;continue}else return!1;else if(!this.options.flex)break}if(qA){if(TA=this.test_match(qA,SA[bA]),TA!==!1)return TA;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var qA=this.next();if(qA)return qA;else return this.lex()},"lex"),begin:y(function(qA){this.conditionStack.push(qA)},"begin"),popState:y(function(){var qA=this.conditionStack.length-1;if(qA>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(qA){if(qA=this.conditionStack.length-1-Math.abs(qA||0),qA>=0)return this.conditionStack[qA];else return"INITIAL"},"topState"),pushState:y(function(qA){this.begin(qA)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(qA,IA,bA,SA){var EA=SA;switch(bA){case 0:return this.begin("acc_title"),24;break;case 1:return this.popState(),"acc_title_value";break;case 2:return this.begin("acc_descr"),26;break;case 3:return this.popState(),"acc_descr_value";break;case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 33;case 8:return 34;case 9:return 35;case 10:return 36;case 11:return 10;case 12:break;case 13:return 8;case 14:return 50;case 15:return 73;case 16:return 4;case 17:return this.begin("block"),17;break;case 18:return 49;case 19:return 49;case 20:return 42;case 21:return 15;case 22:return 13;case 23:break;case 24:return 62;case 25:return 58;case 26:return 58;case 27:this.begin("block_bq");break;case 28:return 58;case 29:this.popState();break;case 30:return 63;case 31:break;case 32:return this.popState(),19;break;case 33:return IA.yytext[0];case 34:return 20;case 35:return 21;case 36:return this.begin("style"),44;break;case 37:return this.popState(),10;break;case 38:break;case 39:return 13;case 40:return 42;case 41:return 49;case 42:return this.begin("style"),37;break;case 43:return 43;case 44:return 66;case 45:return 68;case 46:return 68;case 47:return 68;case 48:return 66;case 49:return 66;case 50:return 67;case 51:return 67;case 52:return 67;case 53:return 67;case 54:return 67;case 55:return 68;case 56:return 67;case 57:return 68;case 58:return 69;case 59:return 69;case 60:return 51;case 61:return 69;case 62:return 69;case 63:return 69;case 64:return 52;case 65:return 48;case 66:return 69;case 67:return 66;case 68:return 67;case 69:return 68;case 70:return 70;case 71:return 71;case 72:return 72;case 73:return 72;case 74:return 71;case 75:return 71;case 76:return 71;case 77:return 41;case 78:return 47;case 79:return 40;case 80:return IA.yytext[0];case 81:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\.,\u00C0-\uFFFF\*]*))/i,/^(?:[`])/i,/^(?:[^`]+)/i,/^(?:[`])/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:[0-9]+\.[0-9]+)/i,/^(?:1(?=\s+[A-Za-z_"']))/i,/^(?:1(?=\s+[0-9]))/i,/^(?:1(?=(--|\.\.|\.-|-\.)))/i,/^(?:1\b)/i,/^(?:[0-9]+)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:u(?=[\.\-\|]))/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*|\.)+)/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[37,38,39,40,41,77,78],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block_bq:{rules:[28,29],inclusive:!1},block:{rules:[23,24,25,26,27,30,31,32,33],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,34,35,36,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,79,80,81],inclusive:!0}}};return KA}();aA.lexer=NA;function DA(){this.yy={}}return y(DA,"Parser"),DA.prototype=aA,aA.Parser=DA,new DA}();CnA.parser=CnA;g2t=CnA,c2t=class{constructor(){this.entities=new Map,this.relationships=[],this.classes=new Map,this.direction="TB",this.Cardinality={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},this.Identification={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},this.setAccTitle=Dr,this.getAccTitle=kr,this.setAccDescription=Fr,this.getAccDescription=xr,this.setDiagramTitle=Tr,this.getDiagramTitle=Sr,this.getConfig=y(()=>OA().er,"getConfig"),this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{y(this,"ErDB")}addEntity(A,e=""){if(!this.entities.has(A))this.entities.set(A,{id:`entity-${A}-${this.entities.size}`,label:A,attributes:[],alias:e,shape:"erBox",look:OA().look??"default",cssClasses:"default",cssStyles:[],labelType:"markdown"}),sA.info("Added new entity :",A);else if(!this.entities.get(A)?.alias&&e)this.entities.get(A).alias=e,sA.info(`Add alias '${e}' to entity '${A}'`);return this.entities.get(A)}getEntity(A){return this.entities.get(A)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(A,e){let t=this.addEntity(A),r;for(r=e.length-1;r>=0;r--){if(!e[r].keys)e[r].keys=[];if(!e[r].comment)e[r].comment="";t.attributes.push(e[r]),sA.debug("Added attribute ",e[r].name)}}addRelationship(A,e,t,r){let i=this.entities.get(A),u=this.entities.get(t);if(!i||!u)return;let a={entityA:i.id,roleA:e,entityB:u.id,relSpec:r};this.relationships.push(a),sA.debug("Added new relationship :",a)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(A){this.direction=A}getCompiledStyles(A){let e=[];for(let t of A){let r=this.classes.get(t);if(r?.styles)e=[...e,...r.styles??[]].map((i)=>i.trim());if(r?.textStyles)e=[...e,...r.textStyles??[]].map((i)=>i.trim())}return e}addCssStyles(A,e){for(let t of A){let r=this.entities.get(t);if(!e||!r)return;for(let i of e)r.cssStyles.push(i)}}addClass(A,e){A.forEach((t)=>{let r=this.classes.get(t);if(r===void 0)r={id:t,styles:[],textStyles:[]},this.classes.set(t,r);if(e)e.forEach(function(i){if(/color/.exec(i)){let u=i.replace("fill","bgFill");r.textStyles.push(u)}r.styles.push(i)})})}setClass(A,e){for(let t of A){let r=this.entities.get(t);if(r)for(let i of e)r.cssClasses+=" "+i}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],cr()}getData(){let A=[],e=[],t=OA(),r=0;for(let u of this.entities.keys()){let a=this.entities.get(u);if(a)a.cssCompiledStyles=this.getCompiledStyles(a.cssClasses.split(" ")),a.colorIndex=r++,A.push(a)}let i=0;for(let u of this.relationships){let a={id:AE(u.entityA,u.entityB,{prefix:"id",counter:i++}),type:"normal",curve:"basis",start:u.entityA,end:u.entityB,label:u.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:u.relSpec.cardB.toLowerCase(),arrowTypeEnd:u.relSpec.cardA.toLowerCase(),pattern:u.relSpec.relType=="IDENTIFYING"?"solid":"dashed",look:t.look,labelType:"markdown"};e.push(a)}return{nodes:A,edges:e,other:{},config:t,direction:"TB"}}},NOA={};Vh(NOA,{draw:()=>C2t});C2t=y(async function(A,e,t,r){sA.info("REF0:"),sA.info("Drawing er diagram (unified)",e);let{securityLevel:i,er:u,layout:a}=OA(),n=r.db.getData(),o=gc(e,i);n.type=r.type,n.layoutAlgorithm=yE(a),n.config.flowchart.nodeSpacing=u?.nodeSpacing||140,n.config.flowchart.rankSpacing=u?.rankSpacing||80,n.direction=r.db.getDirection();let{config:s}=n,{look:l}=s;if(l==="neo")n.markers=["only_one_neo","zero_or_one_neo","one_or_more_neo","zero_or_more_neo"];else n.markers=["only_one","zero_or_one","one_or_more","zero_or_more"];if(n.diagramId=e,await ac(n,o),n.layoutAlgorithm==="elk")o.select(".edges").lower();let g=o.selectAll('[id*="-background"]');if(Array.from(g).length>0)g.each(function(){let B=Qe(this),d=B.attr("id").replace("-background",""),I=o.select(`#${CSS.escape(d)}`);if(!I.empty()){let h=I.attr("transform");B.attr("transform",h)}});let C=8;Jt.insertTitle(o,"erDiagramTitleText",u?.titleTopMargin??25,r.db.getDiagramTitle()),Il(o,C,"erDiagram",u?.useMaxWidth??!0)},"draw"),ROA=y((A,e)=>{let t=Lp,r=t(A,"r"),i=t(A,"g"),u=t(A,"b");return ln(r,i,u,e)},"fade"),yY=new Set(["redux-color","redux-dark-color"]),B2t=y((A)=>{let{theme:e,look:t,bkgColorArray:r,borderColorArray:i}=A;if(!yY.has(e))return"";let u=r?.length>0,a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++)a+=`
[data-look="${t}"][data-color-id="color-${n}"].node path {
stroke: ${i[n]};
${u?`fill: ${r[n]};`:""}
}
[data-look="${t}"][data-color-id="color-${n}"].node rect {
stroke: ${i[n]};
${u?`fill: ${r[n]};`:""}
}
`;return a},"genColor"),E2t=y((A)=>{let{look:e,theme:t,erEdgeLabelBackground:r,strokeWidth:i}=A;return`
${B2t(A)}
.entityBox {
fill: ${A.mainBkg};
stroke: ${A.nodeBorder};
}
.relationshipLabelBox {
fill: ${A.tertiaryColor};
opacity: 0.7;
background-color: ${A.tertiaryColor};
rect {
opacity: 0.5;
}
}
.labelBkg {
background-color: ${yY.has(t)&&r?r:ROA(A.tertiaryColor,0.5)};
}
.edgeLabel {
background-color: ${yY.has(t)&&r?r:A.edgeLabelBackground};
}
.edgeLabel .label rect {
fill: ${yY.has(t)&&r?r:A.edgeLabelBackground};
}
.edgeLabel .label text {
fill: ${A.textColor};
}
.edgeLabel .label {
fill: ${A.nodeBorder};
font-size: 14px;
}
.label {
font-family: ${A.fontFamily};
color: ${A.nodeTextColor||A.textColor};
}
.edge-pattern-dashed {
stroke-dasharray: 8,8;
}
.node rect,
.node circle,
.node ellipse,
.node polygon
{
fill: ${A.mainBkg};
stroke: ${A.nodeBorder};
stroke-width: ${e==="neo"?i:"1px"};
}
.relationshipLine {
stroke: ${A.lineColor};
stroke-width: ${e==="neo"?i:"1px"};
fill: none;
}
.marker {
fill: none !important;
stroke: ${A.lineColor} !important;
stroke-width: 1;
}
[data-look=neo].labelBkg {
background-color: ${ROA(A.tertiaryColor,0.5)};
}
`},"getStyles"),d2t=E2t,GOA={parser:g2t,get db(){return new c2t},renderer:NOA,styles:d2t}});var dw;var wY=_(()=>{Nt();dw=class{constructor(A){this.init=A,this.records=this.init()}static{y(this,"ImperativeState")}reset(){this.records=this.init()}}});function hu(A,e){if(A.accDescr)e.setAccDescription?.(A.accDescr);if(A.accTitle)e.setAccTitle?.(A.accTitle);if(A.title)e.setDiagramTitle?.(A.title)}var ms=_(()=>{Nt();y(hu,"populateCommonDb")});var J0={};Dt(J0,{AbnfAlternation:()=>XH,AbnfConcatenation:()=>$H,AbnfElement:()=>HF,AbnfGroup:()=>AK,AbnfNumVal:()=>eK,AbnfOptionalGroup:()=>tK,AbnfPrimary:()=>x4,AbnfRule:()=>KF,AbnfRuleName:()=>rK,AbnfStringLiteral:()=>iK,AbstractMermaidTokenBuilder:()=>lu,AbstractMermaidValueConverter:()=>hn,Architecture:()=>cc,ArchitectureGrammarGeneratedModule:()=>KJ,Branch:()=>Mw,Commit:()=>N4,CommonTokenBuilder:()=>Dte,CommonValueConverter:()=>wl,Cynefin:()=>HI,CynefinGrammarGeneratedModule:()=>JJ,DomainBlock:()=>Tw,DomainItem:()=>gx,EbnfChoice:()=>uK,EbnfExceptionPostfix:()=>aK,EbnfGroup:()=>nK,EbnfNonTerminal:()=>oK,EbnfOneOrMorePostfix:()=>sK,EbnfOptional:()=>lK,EbnfOptionalPostfix:()=>gK,EbnfPostfix:()=>Q3,EbnfPrimary:()=>MI,EbnfRepetition:()=>cK,EbnfRule:()=>JF,EbnfSequence:()=>CK,EbnfSpecial:()=>BK,EbnfTerm:()=>OF,EbnfTerminal:()=>EK,EbnfZeroOrMorePostfix:()=>dK,EmDataEntity:()=>S4,EmFrame:()=>TI,EmptyFileSystem:()=>Ji,EventModel:()=>yC,EventModelingGeneratedModule:()=>OJ,GitGraph:()=>KI,GitGraphGrammarGeneratedModule:()=>PJ,Info:()=>b3,InfoGrammarGeneratedModule:()=>_J,Merge:()=>G4,MermaidGeneratedSharedModule:()=>$i,Packet:()=>U4,PacketBlock:()=>M4,PacketGrammarGeneratedModule:()=>WJ,PegAny:()=>IK,PegGroup:()=>hK,PegIdentifier:()=>QK,PegLiteral:()=>pK,PegOrderedChoice:()=>fK,PegPrefix:()=>PF,PegPrimary:()=>p3,PegRule:()=>_F,PegSequence:()=>mK,PegSuffix:()=>WF,Pie:()=>JI,PieGrammarGeneratedModule:()=>qJ,PieSection:()=>Yw,Radar:()=>YI,RadarGrammarGeneratedModule:()=>zJ,Railroad:()=>T4,RailroadAbnf:()=>Y4,RailroadAbnfGrammarGeneratedModule:()=>ZJ,RailroadChoiceExpr:()=>DK,RailroadEbnf:()=>H4,RailroadEbnfGrammarGeneratedModule:()=>VJ,RailroadExpression:()=>wC,RailroadGrammarGeneratedModule:()=>jJ,RailroadNonTerminalExpr:()=>yK,RailroadOneOrMoreExpr:()=>wK,RailroadOptionalExpr:()=>bK,RailroadPeg:()=>K4,RailroadPegGrammarGeneratedModule:()=>XJ,RailroadRule:()=>qF,RailroadSequenceExpr:()=>vK,RailroadSpecialExpr:()=>kK,RailroadTerminalExpr:()=>FK,RailroadZeroOrMoreExpr:()=>xK,Statement:()=>L4,Transition:()=>v3,TreeNode:()=>R4,TreeView:()=>f3,TreeViewGrammarGeneratedModule:()=>AO,Treemap:()=>J4,TreemapGrammarGeneratedModule:()=>$J,Wardley:()=>lo,WardleyGrammarGeneratedModule:()=>eO,__name:()=>G,createDefaultCoreModule:()=>xi,createDefaultSharedCoreModule:()=>Si,inject:()=>wr,isArchitecture:()=>QgA,isBranch:()=>pgA,isCommit:()=>fgA,isCynefin:()=>mgA,isDomainBlock:()=>DgA,isDomainItem:()=>ygA,isEmModelEntityType:()=>wgA,isEmResetFrame:()=>Nx,isGitGraph:()=>bgA,isInfo:()=>vgA,isMerge:()=>kgA,isPacket:()=>FgA,isPacketBlock:()=>xgA,isPie:()=>SgA,isPieSection:()=>LgA,isRailroad:()=>RgA,isRailroadAbnf:()=>NgA,isRailroadEbnf:()=>GgA,isRailroadPeg:()=>UgA,isTransition:()=>MgA,isTreemap:()=>TgA,isWardley:()=>YgA,lib_exports:()=>Jo});function Yn(A){return typeof A==="object"&&A!==null&&typeof A.$type==="string"}function ys(A){return typeof A==="object"&&A!==null&&typeof A.$refText==="string"&&"ref"in A}function UE(A){return typeof A==="object"&&A!==null&&typeof A.$refText==="string"&&"items"in A}function Y0A(A){return typeof A==="object"&&A!==null&&typeof A.name==="string"&&typeof A.type==="string"&&typeof A.path==="string"}function n3(A){return typeof A==="object"&&A!==null&&typeof A.info==="object"&&typeof A.message==="string"}function PI(A){return typeof A==="object"&&A!==null&&Array.isArray(A.content)}function G3(A){return typeof A==="object"&&A!==null&&typeof A.tokenType==="object"}function NK(A){return PI(A)&&typeof A.fullText==="string"}function R_A(A){if(typeof A==="string")return A;if(typeof A>"u")return"undefined";if(typeof A.toString==="function")return A.toString();return Object.prototype.toString.call(A)}function zF(A){return!!A&&typeof A[Symbol.iterator]==="function"}function Qu(...A){if(A.length===1){let e=A[0];if(e instanceof NE)return e;if(zF(e))return new NE(()=>e[Symbol.iterator](),(t)=>t.next());if(typeof e.length==="number")return new NE(()=>({index:0}),(t)=>{if(t.index<e.length)return{done:!1,value:e[t.index++]};else return Ds})}if(A.length>1)return new NE(()=>({collIndex:0,arrIndex:0}),(e)=>{do{if(e.iterator){let t=e.iterator.next();if(!t.done)return t;e.iterator=void 0}if(e.array){if(e.arrIndex<e.array.length)return{done:!1,value:e.array[e.arrIndex++]};e.array=void 0,e.arrIndex=0}if(e.collIndex<A.length){let t=A[e.collIndex++];if(zF(t))e.iterator=t[Symbol.iterator]();else if(t&&typeof t.length==="number")e.array=t}}while(e.iterator||e.array||e.collIndex<A.length);return Ds});return Hw}function Jw(A,e={}){for(let[t,r]of Object.entries(A))if(!t.startsWith("$")){if(Array.isArray(r))r.forEach((i,u)=>{if(Yn(i)){if(i.$container=A,i.$containerProperty=t,i.$containerIndex=u,e.deep)Jw(i,e)}});else if(Yn(r)){if(r.$container=A,r.$containerProperty=t,e.deep)Jw(r,e)}}}function U3(A,e){let t=A;while(t){if(e(t))return t;t=t.$container}return}function N_A(A,e){let t=A;while(t){if(e(t))return!0;t=t.$container}return!1}function kC(A){let t=Rw(A).$document;if(!t)throw Error("AST node has no document.");return t}function Rw(A){while(A.$container)A=A.$container;return A}function gH(A){if(ys(A))return A.ref?[A.ref]:[];else if(UE(A))return A.items.map((e)=>e.ref);return[]}function Ex(A,e){if(!A)throw Error("Node must be an AstNode.");let t=e?.range;return new NE(()=>({keys:Object.keys(A),keyIndex:0,arrayIndex:0}),(r)=>{while(r.keyIndex<r.keys.length){let i=r.keys[r.keyIndex];if(!i.startsWith("$")){let u=A[i];if(Yn(u)){if(r.keyIndex++,cH(u,t))return{done:!1,value:u}}else if(Array.isArray(u)){while(r.arrayIndex<u.length){let a=r.arrayIndex++,n=u[a];if(Yn(n)&&cH(n,t))return{done:!1,value:n}}r.arrayIndex=0}}r.keyIndex++}return Ds})}function Ah(A,e){if(!A)throw Error("Root node must be an AstNode.");return new Kw(A,(t)=>Ex(t,e))}function FC(A,e){if(!A)throw Error("Root node must be an AstNode.");else if(e?.range&&!cH(A,e.range))return new Kw(A,()=>[]);return new Kw(A,(t)=>Ex(t,e),{includeRoot:!0})}function cH(A,e){if(!e)return!0;let t=A.$cstNode?.range;if(!t)return!1;return gsA(t,e)}function Ow(A){return new NE(()=>({keys:Object.keys(A),keyIndex:0,arrayIndex:0}),(e)=>{while(e.keyIndex<e.keys.length){let t=e.keys[e.keyIndex];if(!t.startsWith("$")){let r=A[t];if(ys(r)||UE(r))return e.keyIndex++,{done:!1,value:{reference:r,container:A,property:t}};else if(Array.isArray(r)){while(e.arrayIndex<r.length){let i=e.arrayIndex++,u=r[i];if(ys(u)||UE(r))return{done:!1,value:{reference:u,container:A,property:t,index:i}}}e.arrayIndex=0}}e.keyIndex++}return Ds})}function J0A(A,e){let t=A.getTypeMetaData(e.$type),r=e;for(let i of Object.values(t.properties))if(i.defaultValue!==void 0&&r[i.name]===void 0)r[i.name]=O0A(i.defaultValue)}function O0A(A){if(Array.isArray(A))return[...A.map(O0A)];else return A}function CH(A,e,t){let r={$type:A.$type};if(t)t.set(A,r),t.set(r,A);for(let[i,u]of Object.entries(A))if(!i.startsWith("$"))if(Yn(u))r[i]=CH(u,e,t);else if(ys(u))r[i]=e(r,i,u.$refNode,u.$refText,u);else if(Array.isArray(u)){let a=[];for(let n of u)if(Yn(n))a.push(CH(n,e,t));else if(ys(n))a.push(e(r,i,n.$refNode,n.$refText,n));else a.push(n);r[i]=a}else r[i]=u;return Jw(r,{deep:!0}),r}function GK(A){return Ir.isInstance(A,Ql.$type)}function M3(A){return Ir.isInstance(A,wF.$type)}function U_A(A){return Ir.isInstance(A,ww.$type)}function M_A(A){return Ir.isInstance(A,cg.$type)}function O4(A){return Ir.isInstance(A,w4.$type)}function UK(A){return Ir.isInstance(A,bF.$type)}function T_A(A){return Ir.isInstance(A,BH.$type)}function P0A(A){return Ir.isInstance(A,EH.$type)}function _I(A){return Ir.isInstance(A,b4.$type)}function _0A(A){return Ir.isInstance(A,dH.$type)}function W0A(A){return Ir.isInstance(A,v4.$type)}function Y_A(A){return Ir.isInstance(A,k4.$type)}function q0A(A){return Ir.isInstance(A,vF.$type)}function T3(A){return Ir.isInstance(A,F4.$type)}function z0A(A){return Ir.isInstance(A,kF.$type)}function Z0A(A){return Ir.isInstance(A,IH.$type)}function H_A(A){return Ir.isInstance(A,GI.$type)}function K_A(A){return Ir.isInstance(A,hH.$type)}function Y3(A){return Ir.isInstance(A,o3.$type)}function dx(A){return Ir.isInstance(A,QH.$type)}function Pw(A){return Ir.isInstance(A,SE.$type)}function J_A(A){return Ir.isInstance(A,FF.$type)}function O_A(A){return Ir.isInstance(A,pH.$type)}function V0A(A){return Ir.isInstance(A,bw.$type)}function WI(A){return Ir.isInstance(A,vw.$type)}function P_A(A){return Ir.isInstance(A,kw.$type)}function j0A(A){return Ir.isInstance(A,s3.$type)}function X0A(A){return Ir.isInstance(A,fH.$type)}function __A(A){return Ir.isInstance(A,mH.$type)}function W_A(A){return Ir.isInstance(A,Fw.$type)}function $0A(A){return Ir.isInstance(A,DH.$type)}function vs(A){return Ir.isInstance(A,DC.$type)}function AsA(A){return Ir.isInstance(A,xF.$type)}function esA(A){return Ir.isInstance(A,l3.$type)}function tsA(A){return Ir.isInstance(A,yH.$type)}function qI(A){return Ir.isInstance(A,g3.$type)}function MK(A){return Ir.isInstance(A,xw.$type)}function q_A(A){return Ir.isInstance(A,wH.$type)}function rsA(A){return Ir.isInstance(A,c3.$type)}function z_A(A){return Ir.isInstance(A,pl.$type)}function isA(A){return Ir.isInstance(A,C3.$type)}function Ic(A){return Ir.isInstance(A,UI.$type)}function TK(A){return Ir.isInstance(A,B3.$type)}function YK(A){return Ir.isInstance(A,SF.$type)}function Z_A(A){return Ir.isInstance(A,E3.$type)}function V_A(A){return Ir.isInstance(A,d3.$type)}function usA(A){return Ir.isInstance(A,bH.$type)}function HK(A){return Ir.isInstance(A,LF.$type)}function asA(A){return Ir.isInstance(A,I3.$type)}function j_A(A){return Ir.isInstance(A,h3.$type)}function nsA(A){return Ir.isInstance(A,Sw.$type)}function X_A(A){let e=A,t=!1;while(e){let r=U3(e.grammarSource,vs);if(r&&r.dataType)e=e.container,t=!0;else if(t)return e;else return}return}function _w(A){return new Kw(A,(e)=>{if(PI(e))return e.content;else return[]},{includeRoot:!0})}function $_A(A){return _w(A).filter(G3)}function ssA(A,e){while(A.container)if(A=A.container,A===e)return!0;return!1}function VF(A){return{start:{character:A.startColumn-1,line:A.startLine-1},end:{character:A.endColumn,line:A.endLine-1}}}function Ww(A){if(!A)return;let{offset:e,end:t,range:r}=A;return{range:r,offset:e,end:t,length:t-e}}function lsA(A,e){if(A.end.line<e.start.line||A.end.line===e.start.line&&A.end.character<=e.start.character)return RE.Before;else if(A.start.line>e.end.line||A.start.line===e.end.line&&A.start.character>=e.end.character)return RE.After;let t=A.start.line>e.start.line||A.start.line===e.start.line&&A.start.character>=e.start.character,r=A.end.line<e.end.line||A.end.line===e.end.line&&A.end.character<=e.end.character;if(t&&r)return RE.Inside;else if(t)return RE.OverlapBack;else if(r)return RE.OverlapFront;else return RE.Outside}function gsA(A,e){return lsA(A,e)>RE.After}function AWA(A,e,t=csA){if(A){if(e>0){let r=e-A.offset,i=A.text.charAt(r);if(!t.test(i))e--}return KK(A,e)}return}function CsA(A,e){if(A){let t=dsA(A,!0);if(t&&vH(t,e))return t;if(NK(A)){let r=A.content.findIndex((i)=>!i.hidden);for(let i=r-1;i>=0;i--){let u=A.content[i];if(vH(u,e))return u}}}return}function vH(A,e){return G3(A)&&e.includes(A.tokenType.name)}function KK(A,e){if(G3(A))return A;else if(PI(A)){let t=EsA(A,e,!1);if(t)return KK(t,e)}return}function BsA(A,e){if(G3(A))return A;else if(PI(A)){let t=EsA(A,e,!0);if(t)return BsA(t,e)}return}function EsA(A,e,t){let r=0,i=A.content.length-1,u=void 0;while(r<=i){let a=Math.floor((r+i)/2),n=A.content[a];if(n.offset<=e&&n.end>e)return n;if(n.end<=e)u=t?n:void 0,r=a+1;else i=a-1}return u}function dsA(A,e=!0){while(A.container){let t=A.container,r=t.content.indexOf(A);while(r>0){r--;let i=t.content[r];if(e||!i.hidden)return i}A=t}return}function eWA(A,e=!0){while(A.container){let t=A.container,r=t.content.indexOf(A),i=t.content.length-1;while(r<i){r++;let u=t.content[r];if(e||!u.hidden)return u}A=t}return}function tWA(A){if(A.range.start.character===0)return A;let e=A.range.start.line,t=A,r;while(A.container){let i=A.container,u=r??i.content.indexOf(A);if(u===0)A=i,r=void 0;else r=u-1,A=i.content[r];if(A.range.start.line!==e)break;t=A}return t}function rWA(A,e){let t=iWA(A,e);if(!t)return[];return t.parent.content.slice(t.a+1,t.b)}function iWA(A,e){let t=MoA(A),r=MoA(e),i;for(let u=0;u<t.length&&u<r.length;u++){let a=t[u],n=r[u];if(a.parent===n.parent)i={parent:a.parent,a:a.index,b:n.index};else break}return i}function MoA(A){let e=[];while(A.container){let t=A.container,r=t.content.indexOf(A);e.push({parent:t,index:r}),A=t}return e.reverse()}function Z4(A,e="Error: Got unexpected value."){throw Error(e)}function hsA(A,e="Error: Condition is violated."){if(!A)throw Error(e)}function Lr(A){return A.charCodeAt(0)}function jY(A,e){if(Array.isArray(A))A.forEach(function(t){e.push(t)});else e.push(A)}function Dw(A,e){if(A[e]===!0)throw"duplicate flag "+e;let t=A[e];A[e]=!0}function r3(A){if(A===void 0)throw Error("Internal Error - Should never get here!");return!0}function pF(){throw Error("Internal Error - Should never get here!")}function ToA(A){return A.type==="Character"}function oWA(A){try{if(typeof A!=="string")A=A.source;A=`/${A}/`;let e=nWA.pattern(A),t=[];for(let r of e.value.value)m3.reset(A),m3.visit(r),t.push({start:m3.startRegexp,end:m3.endRegex});return t}catch{return[]}}function psA(A){try{if(typeof A==="string")A=new RegExp(A);return A=A.toString(),m3.reset(A),m3.visit(nWA.pattern(A)),m3.multiline}catch{return!1}}function PK(A){let e=typeof A==="string"?new RegExp(A):A;return sWA.some((t)=>e.test(t))}function $w(A){return A.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function fsA(A,e){let t=msA(A),r=e.match(t);return!!r&&r[0].length>0}function msA(A){if(typeof A==="string")A=new RegExp(A);let e=A,t=A.source,r=0;function i(){let u="",a;function n(s){u+=t.substr(r,s),r+=s}G(n,"appendRaw");function o(s){u+="(?:"+t.substr(r,s)+"|$)",r+=s}G(o,"appendOptional");while(r<t.length)switch(t[r]){case"\\":switch(t[r+1]){case"c":o(3);break;case"x":o(4);break;case"u":if(e.unicode)if(t[r+2]==="{")o(t.indexOf("}",r)-r+1);else o(6);else o(2);break;case"p":case"P":if(e.unicode)o(t.indexOf("}",r)-r+1);else o(2);break;case"k":o(t.indexOf(">",r)-r+1);break;default:o(2);break}break;case"[":a=/\[(?:\\.|.)*?\]/g,a.lastIndex=r,a=a.exec(t)||[],o(a[0].length);break;case"|":case"^":case"$":case"*":case"+":case"?":n(1);break;case"{":if(a=/\{\d+,?\d*\}/g,a.lastIndex=r,a=a.exec(t),a)n(a[0].length);else o(1);break;case"(":if(t[r+1]==="?")switch(t[r+2]){case":":u+="(?:",r+=3,u+=i()+"|$)";break;case"=":u+="(?=",r+=3,u+=i()+")";break;case"!":a=r,r+=3,i(),u+=t.substr(a,r-a);break;case"<":switch(t[r+3]){case"=":case"!":a=r,r+=4,i(),u+=t.substr(a,r-a);break;default:n(t.indexOf(">",r)-r+1),u+=i()+"|$)";break}break}else n(1),u+=i()+"|$)";break;case")":return++r,u;default:o(1);break}return u}return G(i,"process"),new RegExp(i(),A.flags)}function DsA(A){return A.rules.find((e)=>vs(e)&&e.entry)}function ysA(A){return A.rules.filter((e)=>Ic(e)&&e.hidden)}function _K(A,e){let t=new Set,r=DsA(A);if(!r)return new Set(A.rules);let i=[r].concat(ysA(A));for(let a of i)wsA(a,t,e);let u=new Set;for(let a of A.rules)if(t.has(a.name)||Ic(a)&&a.hidden)u.add(a);return u}function wsA(A,e,t){e.add(A.name),Ah(A).forEach((r)=>{if(qI(r)||t&&TK(r)){let i=r.rule.ref;if(i&&!e.has(i.name))wsA(i,e,t)}})}function lWA(A){let e=new Set;return Ah(A).forEach((t)=>{if(T3(t)){if(vs(t.type.ref))e.add(t.type.ref);if(dx(t.type.ref)&&vs(t.type.ref.$container))e.add(t.type.ref.$container)}}),e}function bsA(A){if(A.terminal)return A.terminal;else if(A.type.ref)return ZK(A.type.ref)?.terminal;return}function vsA(A){return A.hidden&&!PK(Qx(A))}function ksA(A,e){if(!A||!e)return[];return qK(A,e,A.astNode,!0)}function WK(A,e,t){if(!A||!e)return;let r=qK(A,e,A.astNode,!0);if(r.length===0)return;if(t!==void 0)t=Math.max(0,Math.min(t,r.length-1));else t=0;return r[t]}function qK(A,e,t,r){if(!r){let i=U3(A.grammarSource,_I);if(i&&i.feature===e)return[A]}if(PI(A)&&A.astNode===t)return A.content.flatMap((i)=>qK(i,e,t,!1));return[]}function gWA(A,e){if(!A)return[];return zK(A,e,A?.astNode)}function FsA(A,e,t){if(!A)return;let r=zK(A,e,A?.astNode);if(r.length===0)return;if(t!==void 0)t=Math.max(0,Math.min(t,r.length-1));else t=0;return r[t]}function zK(A,e,t){if(A.astNode!==t)return[];if(WI(A.grammarSource)&&A.grammarSource.value===e)return[A];let r=_w(A).iterator(),i,u=[];do if(i=r.next(),!i.done){let a=i.value;if(a.astNode===t){if(WI(a.grammarSource)&&a.grammarSource.value===e)u.push(a)}else r.prune()}while(!i.done);return u}function xsA(A){let e=A.astNode;while(e===A.container?.astNode){let t=U3(A.grammarSource,_I);if(t)return t;A=A.container}return}function ZK(A){let e=A;if(dx(e))if(O4(e.$container))e=e.$container.$container;else if(M3(e.$container))e=e.$container;else Z4(e.$container);return SsA(A,e,new Map)}function SsA(A,e,t){function r(i,u){let a=void 0;if(!U3(i,_I))a=SsA(u,u,t);return t.set(A,a),a}if(G(r,"go"),t.has(A))return t.get(A);t.set(A,void 0);for(let i of Ah(e))if(_I(i)&&i.feature.toLowerCase()==="name")return t.set(A,i),i;else if(qI(i)&&vs(i.rule.ref))return r(i,i.rule.ref);else if(MK(i)&&i.typeRef?.ref)return r(i,i.typeRef.ref);return}function LsA(A){let e=A.$container;if(Y3(e)){let t=e.elements,r=t.indexOf(A);for(let i=r-1;i>=0;i--){let u=t[i];if(O4(u))return u;else{let a=Ah(t[i]).find(O4);if(a)return a}}}if(GK(e))return LsA(e);else return}function cWA(A,e){return A==="?"||A==="*"||Y3(e)&&Boolean(e.guardCondition)}function CWA(A){return A==="*"||A==="+"}function BWA(A){return A==="+="}function Ix(A){return RsA(A,new Set)}function RsA(A,e){if(e.has(A))return!0;else e.add(A);for(let t of Ah(A))if(qI(t)){if(!t.rule.ref)return!1;if(vs(t.rule.ref)&&!RsA(t.rule.ref,e))return!1;if(Pw(t.rule.ref))return!1}else if(_I(t))return!1;else if(O4(t))return!1;return Boolean(A.definition)}function EWA(A){return xH(A.type,new Set)}function xH(A,e){if(e.has(A))return!0;else e.add(A);if(P0A(A))return!1;else if(AsA(A))return!1;else if(usA(A))return A.types.every((t)=>xH(t,e));else if(MK(A))if(A.primitiveType!==void 0)return!0;else if(A.stringType!==void 0)return!0;else if(A.typeRef!==void 0){let t=A.typeRef.ref;if(YK(t))return xH(t.type,e);else return!1}else return!1;else return!1}function hx(A){if(Ic(A))return;if(A.inferredType)return A.inferredType.name;else if(A.dataType)return A.dataType;else if(A.returnType){let e=A.returnType.ref;if(e)return e.name}return}function x3(A){if(M3(A))return vs(A)&&Ix(A)?A.name:hx(A)??A.name;else if(V0A(A)||YK(A)||tsA(A))return A.name;else if(O4(A)){let e=NsA(A);if(e)return e}else if(dx(A))return A.name;throw Error("Cannot get name of Unknown Type")}function NsA(A){if(A.inferredType)return A.inferredType.name;else if(A.type?.ref)return x3(A.type.ref);return}function dWA(A){if(Ic(A))return A.type?.name??"string";else return vs(A)&&Ix(A)?A.name:hx(A)??A.name}function GsA(A){if(Ic(A))return A.type?.name??"string";else return hx(A)??A.name}function Qx(A){let e={s:!1,i:!1,u:!1},t=H3(A.definition,e),r=Object.entries(e).filter(([,i])=>i).map(([i])=>i).join("");return new RegExp(t,r)}function H3(A,e){if(rsA(A))return IWA(A);else if(isA(A))return hWA(A);else if(W0A(A))return fWA(A);else if(TK(A)){let t=A.rule.ref;if(!t)throw Error("Missing rule reference.");return ME(H3(t.definition),{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized})}else if(j0A(A))return pWA(A);else if(asA(A))return QWA(A);else if(esA(A)){let t=A.regex.lastIndexOf("/"),r=A.regex.substring(1,t),i=A.regex.substring(t+1);if(e)e.i=i.includes("i"),e.s=i.includes("s"),e.u=i.includes("u");return ME(r,{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized,wrap:!1})}else if(nsA(A))return ME(UsA,{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized});else throw Error(`Invalid terminal element: ${A?.$type}, ${A?.$cstNode?.text}`)}function IWA(A){return ME(A.elements.map((e)=>H3(e)).join("|"),{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized,wrap:!1})}function hWA(A){return ME(A.elements.map((e)=>H3(e)).join(""),{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized,wrap:!1})}function QWA(A){return ME(`${UsA}*?${H3(A.terminal)}`,{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized})}function pWA(A){return ME(`(?!${H3(A.terminal)})${UsA}*?`,{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized})}function fWA(A){if(A.right)return ME(`[${XY(A.left)}-${XY(A.right)}]`,{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized,wrap:!1});return ME(XY(A.left),{cardinality:A.cardinality,lookahead:A.lookahead,parenthesized:A.parenthesized,wrap:!1})}function XY(A){return $w(A.value)}function ME(A,e){if(e.parenthesized||e.lookahead||e.wrap!==!1)A=`(${e.lookahead??(e.parenthesized?"":"?:")}${A})`;if(e.cardinality)return`${A}${e.cardinality}`;return A}function MsA(A){let e=[],t=A.Grammar;for(let r of t.rules)if(Ic(r)&&vsA(r)&&psA(Qx(r)))e.push(r.name);return{multilineCommentRules:e,nameRegexp:csA}}function yWA(A){var e=oDt.call(A,uF),t=A[uF];try{A[uF]=void 0;var r=!0}catch(u){}var i=sDt.call(A);if(r)if(e)A[uF]=t;else delete A[uF];return i}function wWA(A){return cDt.call(A)}function bWA(A){if(A==null)return A===void 0?EDt:BDt;return HOA&&HOA in Object(A)?lDt(A):CDt(A)}function vWA(A){return A!=null&&typeof A=="object"}function kWA(A){return typeof A=="symbol"||LC(A)&&V4(A)==dDt}function FWA(A,e){var t=-1,r=A==null?0:A.length,i=Array(r);while(++t<r)i[t]=e(A[t],t,A);return i}function TsA(A){if(typeof A=="string")return A;if(Ki(A))return px(A,TsA)+"";if(VK(A))return JOA?JOA.call(A):"";var e=A+"";return e=="0"&&1/A==-hDt?"-0":e}function xWA(A){var e=A.length;while(e--&&pDt.test(A.charAt(e)));return e}function SWA(A){return A?A.slice(0,fDt(A)+1).replace(mDt,""):A}function LWA(A){var e=typeof A;return A!=null&&(e=="object"||e=="function")}function RWA(A){if(typeof A=="number")return A;if(VK(A))return OOA;if(dc(A)){var e=typeof A.valueOf=="function"?A.valueOf():A;A=dc(e)?e+"":e}if(typeof A!="string")return A===0?A:+A;A=DDt(A);var t=wDt.test(A);return t||bDt.test(A)?vDt(A.slice(2),t?2:8):yDt.test(A)?OOA:+A}function NWA(A){if(!A)return A===0?A:0;if(A=kDt(A),A===POA||A===-POA){var e=A<0?-1:1;return e*FDt}return A===A?A:0}function GWA(A){var e=xDt(A),t=e%1;return e===e?t?e-t:e:0}function UWA(A){return A}function MWA(A){if(!dc(A))return!1;var e=V4(A);return e==LDt||e==RDt||e==SDt||e==NDt}function TWA(A){return!!_OA&&_OA in A}function YWA(A){if(A!=null){try{return TDt.call(A)}catch(e){}try{return A+""}catch(e){}}return""}function HWA(A){if(!dc(A)||UDt(A))return!1;var e=eh(A)?_Dt:HDt;return e.test(K3(A))}function KWA(A,e){return A==null?void 0:A[e]}function JWA(A,e){var t=qDt(A,e);return WDt(t)?t:void 0}function OWA(A,e,t){switch(t.length){case 0:return A.call(e);case 1:return A.call(e,t[0]);case 2:return A.call(e,t[0],t[1]);case 3:return A.call(e,t[0],t[1],t[2])}return A.apply(e,t)}function PWA(){}function _WA(A,e){var t=-1,r=A.length;e||(e=Array(r));while(++t<r)e[t]=A[t];return e}function WWA(A){var e=0,t=0;return function(){var r=eyt(),i=Ayt-(r-t);if(t=r,i>0){if(++e>=$Dt)return arguments[0]}else e=0;return A.apply(void 0,arguments)}}function qWA(A){return function(){return A}}function zWA(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A)===!1)break;return A}function VWA(A,e,t,r){var i=A.length,u=t+(r?1:-1);while(r?u--:++u<i)if(e(A[u],u,A))return u;return-1}function XWA(A){return A!==A}function $WA(A,e,t){var r=t-1,i=A.length;while(++r<i)if(A[r]===e)return r;return-1}function AqA(A,e,t){return e===e?lyt(A,e,t):jWA(A,syt,t)}function eqA(A,e){var t=A==null?0:A.length;return!!t&&YsA(A,e,0)>-1}function rqA(A,e){var t=typeof A;return e=e==null?gyt:e,!!e&&(t=="number"||t!="symbol"&&cyt.test(A))&&(A>-1&&A%1==0&&A<e)}function iqA(A,e,t){if(e=="__proto__"&&SH)SH(A,e,{configurable:!0,enumerable:!0,value:t,writable:!0});else A[e]=t}function uqA(A,e){return A===e||A!==A&&e!==e}function aqA(A,e,t){var r=A[e];if(!(Byt.call(A,e)&&Dx(r,t))||t===void 0&&!(e in A))HsA(A,e,t)}function nqA(A,e,t,r){var i=!t;t||(t={});var u=-1,a=e.length;while(++u<a){var n=e[u],o=r?r(t[n],A[n],n,t,A):void 0;if(o===void 0)o=A[n];if(i)HsA(t,n,o);else XK(t,n,o)}return t}function oqA(A,e,t){return e=qOA(e===void 0?A.length-1:e,0),function(){var r=arguments,i=-1,u=qOA(r.length-e,0),a=Array(u);while(++i<u)a[i]=r[e+i];i=-1;var n=Array(e+1);while(++i<e)n[i]=r[i];return n[e]=t(a),jDt(A,this,n)}}function sqA(A,e){return oyt(Eyt(A,e,mx),A+"")}function lqA(A){return typeof A=="number"&&A>-1&&A%1==0&&A<=dyt}function gqA(A){return A!=null&&JsA(A.length)&&!eh(A)}function cqA(A,e,t){if(!dc(t))return!1;var r=typeof e;if(r=="number"?HE(t)&&jK(e,t.length):r=="string"&&(e in t))return Dx(t[e],A);return!1}function CqA(A){return KsA(function(e,t){var r=-1,i=t.length,u=i>1?t[i-1]:void 0,a=i>2?t[2]:void 0;if(u=A.length>3&&typeof u=="function"?(i--,u):void 0,a&&$K(t[0],t[1],a))u=i<3?void 0:u,i=1;e=Object(e);while(++r<i){var n=t[r];if(n)A(e,n,r,u)}return e})}function BqA(A){var e=A&&A.constructor,t=typeof e=="function"&&e.prototype||hyt;return A===t}function EqA(A,e){var t=-1,r=Array(A);while(++t<A)r[t]=e(t);return r}function dqA(A){return LC(A)&&V4(A)==pyt}function hqA(){return!1}function pqA(A){return LC(A)&&JsA(A.length)&&!!ta[V4(A)]}function fqA(A){return function(e){return A(e)}}function DqA(A,e){var t=Ki(A),r=!t&&AJ(A),i=!t&&!r&&jF(A),u=!t&&!r&&!i&&OsA(A),a=t||r||i||u,n=a?Qyt(A.length,String):[],o=n.length;for(var s in A)if((e||rwt.call(A,s))&&!(a&&(s=="length"||i&&(s=="offset"||s=="parent")||u&&(s=="buffer"||s=="byteLength"||s=="byteOffset")||jK(s,o))))n.push(s);return n}function wqA(A,e){return function(t){return A(e(t))}}function vqA(A){if(!wx(A))return uwt(A);var e=[];for(var t in Object(A))if(nwt.call(A,t)&&t!="constructor")e.push(t);return e}function FqA(A){return HE(A)?yqA(A):kqA(A)}function xqA(A){var e=[];if(A!=null)for(var t in Object(A))e.push(t);return e}function SqA(A){if(!dc(A))return gwt(A);var e=wx(A),t=[];for(var r in A)if(!(r=="constructor"&&(e||!Cwt.call(A,r))))t.push(r);return t}function LqA(A){return HE(A)?yqA(A,!0):Bwt(A)}function RqA(A,e){if(Ki(A))return!1;var t=typeof A;if(t=="number"||t=="symbol"||t=="boolean"||A==null||VK(A))return!0;return dwt.test(A)||!Ewt.test(A)||e!=null&&A in Object(e)}function NqA(){this.__data__=XF?XF(null):{},this.size=0}function GqA(A){var e=this.has(A)&&delete this.__data__[A];return this.size-=e?1:0,e}function UqA(A){var e=this.__data__;if(XF){var t=e[A];return t===pwt?void 0:t}return mwt.call(e,A)?e[A]:void 0}function MqA(A){var e=this.__data__;return XF?e[A]!==void 0:wwt.call(e,A)}function TqA(A,e){var t=this.__data__;return this.size+=this.has(A)?0:1,t[A]=XF&&e===void 0?vwt:e,this}function O3(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function YqA(){this.__data__=[],this.size=0}function HqA(A,e){var t=A.length;while(t--)if(Dx(A[t][0],e))return t;return-1}function KqA(A){var e=this.__data__,t=tJ(e,A);if(t<0)return!1;var r=e.length-1;if(t==r)e.pop();else Swt.call(e,t,1);return--this.size,!0}function JqA(A){var e=this.__data__,t=tJ(e,A);return t<0?void 0:e[t][1]}function OqA(A){return tJ(this.__data__,A)>-1}function PqA(A,e){var t=this.__data__,r=tJ(t,A);if(r<0)++this.size,t.push([A,e]);else t[r][1]=e;return this}function P3(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function _qA(){this.size=0,this.__data__={hash:new XOA,map:new($F||rJ),string:new XOA}}function WqA(A){var e=typeof A;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?A!=="__proto__":A===null}function qqA(A,e){var t=A.__data__;return Twt(e)?t[typeof e=="string"?"string":"hash"]:t.map}function zqA(A){var e=iJ(this,A).delete(A);return this.size-=e?1:0,e}function ZqA(A){return iJ(this,A).get(A)}function VqA(A){return iJ(this,A).has(A)}function jqA(A,e){var t=iJ(this,A),r=t.size;return t.set(A,e),this.size+=t.size==r?0:1,this}function _3(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function aJ(A,e){if(typeof A!="function"||e!=null&&typeof e!="function")throw TypeError(Owt);var t=G(function(){var r=arguments,i=e?e.apply(this,r):r[0],u=t.cache;if(u.has(i))return u.get(i);var a=A.apply(this,r);return t.cache=u.set(i,a)||u,a},"memoized");return t.cache=new(aJ.Cache||uJ),t}function XqA(A){var e=Pwt(A,function(r){if(t.size===_wt)t.clear();return r}),t=e.cache;return e}function $qA(A){return A==null?"":QDt(A)}function AzA(A,e){if(Ki(A))return A;return PsA(A,e)?[A]:Vwt(jwt(A))}function ezA(A){if(typeof A=="string"||VK(A))return A;var e=A+"";return e=="0"&&1/A==-Xwt?"-0":e}function tzA(A,e){e=nJ(e,A);var t=0,r=e.length;while(A!=null&&t<r)A=A[vx(e[t++])];return t&&t==r?A:void 0}function rzA(A,e,t){var r=A==null?void 0:_sA(A,e);return r===void 0?t:r}function izA(A,e){var t=-1,r=e.length,i=A.length;while(++t<r)A[i+t]=e[t];return A}function uzA(A){return Ki(A)||AJ(A)||!!($OA&&A&&A[$OA])}function qsA(A,e,t,r,i){var u=-1,a=A.length;t||(t=A6t),i||(i=[]);while(++u<a){var n=A[u];if(e>0&&t(n))if(e>1)qsA(n,e-1,t,r,i);else WsA(i,n);else if(!r)i[i.length]=n}return i}function azA(A){var e=A==null?0:A.length;return e?zsA(A,1):[]}function ozA(A,e,t){var r=-1,i=A.length;if(e<0)e=-e>i?0:i+e;if(t=t>i?i:t,t<0)t+=i;i=e>t?0:t-e>>>0,e>>>=0;var u=Array(i);while(++r<i)u[r]=A[r+e];return u}function lzA(A,e,t,r){var i=-1,u=A==null?0:A.length;if(r&&u)t=A[++i];while(++i<u)t=e(t,A[i],i,A);return t}function gzA(){this.__data__=new rJ,this.size=0}function czA(A){var e=this.__data__,t=e.delete(A);return this.size=e.size,t}function CzA(A){return this.__data__.get(A)}function BzA(A){return this.__data__.has(A)}function EzA(A,e){var t=this.__data__;if(t instanceof rJ){var r=t.__data__;if(!$F||r.length<n6t-1)return r.push([A,e]),this.size=++t.size,this;t=this.__data__=new uJ(r)}return t.set(A,e),this.size=t.size,this}function W3(A){var e=this.__data__=new rJ(A);this.size=e.size}function dzA(A,e){return A&&yx(e,Bg(e),A)}function IzA(A,e){return A&&yx(e,eJ(e),A)}function QzA(A,e){if(e)return A.slice();var t=A.length,r=tPA?tPA(t):new A.constructor(t);return A.copy(r),r}function pzA(A,e){var t=-1,r=A==null?0:A.length,i=0,u=[];while(++t<r){var a=A[t];if(e(a,t,A))u[i++]=a}return u}function fzA(){return[]}function DzA(A,e){return yx(A,VsA(A),e)}function wzA(A,e){return yx(A,yzA(A),e)}function bzA(A,e,t){var r=e(A);return Ki(A)?r:WsA(r,t(A))}function kzA(A){return vzA(A,Bg,VsA)}function FzA(A){return vzA(A,eJ,yzA)}function SzA(A){var e=A.length,t=new A.constructor(e);if(e&&typeof A[0]=="string"&&x6t.call(A,"index"))t.index=A.index,t.input=A.input;return t}function LzA(A){var e=new A.constructor(A.byteLength);return new LH(e).set(new LH(A)),e}function RzA(A,e){var t=e?jsA(A.buffer):A.buffer;return new A.constructor(t,A.byteOffset,A.byteLength)}function NzA(A){var e=new A.constructor(A.source,N6t.exec(A));return e.lastIndex=A.lastIndex,e}function GzA(A){return lPA?Object(lPA.call(A)):{}}function UzA(A,e){var t=e?jsA(A.buffer):A.buffer;return new A.constructor(t,A.byteOffset,A.length)}function MzA(A,e,t){var r=A.constructor;switch(e){case W6t:return jsA(A);case T6t:case Y6t:return new r(+A);case q6t:return R6t(A,t);case z6t:case Z6t:case V6t:case j6t:case X6t:case $6t:case A9t:case e9t:case t9t:return M6t(A,t);case H6t:return new r;case K6t:case P6t:return new r(A);case J6t:return G6t(A);case O6t:return new r;case _6t:return U6t(A)}}function TzA(A){return typeof A.constructor=="function"&&!wx(A)?VDt(nzA(A)):{}}function YzA(A){return LC(A)&&qw(A)==u9t}function HzA(A){return LC(A)&&qw(A)==s9t}function GF(A,e,t,r,i,u){var a,n=e&C9t,o=e&B9t,s=e&E9t;if(t)a=i?t(A,r,i,u):t(A);if(a!==void 0)return a;if(!dc(A))return A;var l=Ki(A);if(l){if(a=S6t(A),!n)return XDt(A,a)}else{var g=qw(A),C=g==JzA||g==p9t;if(jF(A))return c6t(A,n);if(g==OzA||g==KzA||C&&!i){if(a=o||C?{}:i9t(A),!n)return o?Q6t(A,l6t(a,A)):d6t(A,s6t(a,A))}else{if(!_u[g])return i?A:{};a=r9t(A,g,n)}}u||(u=new NF);var B=u.get(A);if(B)return B;if(u.set(A,a),c9t(A))A.forEach(function(I){a.add(GF(I,e,t,I,A,u))});else if(o9t(A))A.forEach(function(I,h){a.set(h,GF(I,e,t,h,A,u))});var E=s?o?xzA:HoA:o?eJ:Bg,d=l?void 0:E(A);return ZWA(d||A,function(I,h){if(d)h=I,I=A[h];XK(a,h,GF(I,e,t,h,A,u))}),a}function PzA(A){return Y9t(A,H9t)}function _zA(A){var e=-1,t=A==null?0:A.length,r=0,i=[];while(++e<t){var u=A[e];if(u)i[r++]=u}return i}function WzA(A){return this.__data__.set(A,K9t),this}function qzA(A){return this.__data__.has(A)}function Ax(A){var e=-1,t=A==null?0:A.length;this.__data__=new uJ;while(++e<t)this.add(A[e])}function zzA(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A))return!0;return!1}function VzA(A,e){return A.has(e)}function jzA(A,e,t,r,i,u){var a=t&P9t,n=A.length,o=e.length;if(n!=o&&!(a&&o>n))return!1;var s=u.get(A),l=u.get(e);if(s&&l)return s==e&&l==A;var g=-1,C=!0,B=t&_9t?new XsA:void 0;u.set(A,e),u.set(e,A);while(++g<n){var E=A[g],d=e[g];if(r)var I=a?r(d,E,g,e,A,u):r(E,d,g,A,e,u);if(I!==void 0){if(I)continue;C=!1;break}if(B){if(!ZzA(e,function(h,Q){if(!$sA(B,Q)&&(E===h||i(E,h,t,r,u)))return B.push(Q)})){C=!1;break}}else if(!(E===d||i(E,d,t,r,u))){C=!1;break}}return u.delete(A),u.delete(e),C}function $zA(A){var e=-1,t=Array(A.size);return A.forEach(function(r,i){t[++e]=[i,r]}),t}function AZA(A){var e=-1,t=Array(A.size);return A.forEach(function(r){t[++e]=r}),t}function eZA(A,e,t,r,i,u,a){switch(t){case u5t:if(A.byteLength!=e.byteLength||A.byteOffset!=e.byteOffset)return!1;A=A.buffer,e=e.buffer;case i5t:if(A.byteLength!=e.byteLength||!u(new LH(A),new LH(e)))return!1;return!0;case Z9t:case V9t:case $9t:return Dx(+A,+e);case j9t:return A.name==e.name&&A.message==e.message;case A5t:case t5t:return A==e+"";case X9t:var n=W9t;case e5t:var o=r&q9t;if(n||(n=AlA),A.size!=e.size&&!o)return!1;var s=a.get(A);if(s)return s==e;r|=z9t,a.set(A,e);var l=XzA(n(A),n(e),r,i,u,a);return a.delete(A),l;case r5t:if(InA)return InA.call(A)==InA.call(e)}return!1}function tZA(A,e,t,r,i,u){var a=t&n5t,n=HoA(A),o=n.length,s=HoA(e),l=s.length;if(o!=l&&!a)return!1;var g=o;while(g--){var C=n[g];if(!(a?C in e:s5t.call(e,C)))return!1}var B=u.get(A),E=u.get(e);if(B&&E)return B==e&&E==A;var d=!0;u.set(A,e),u.set(e,A);var I=a;while(++g<o){C=n[g];var h=A[C],Q=e[C];if(r)var p=a?r(Q,h,C,e,A,u):r(h,Q,C,A,e,u);if(!(p===void 0?h===Q||i(h,Q,t,r,u):p)){d=!1;break}I||(I=C=="constructor")}if(d&&!I){var m=A.constructor,f=e.constructor;if(m!=f&&(("constructor"in A)&&("constructor"in e))&&!(typeof m=="function"&&m instanceof m&&typeof f=="function"&&f instanceof f))d=!1}return u.delete(A),u.delete(e),d}function rZA(A,e,t,r,i,u){var a=Ki(A),n=Ki(e),o=a?EPA:qw(A),s=n?EPA:qw(e);o=o==BPA?vY:o,s=s==BPA?vY:s;var l=o==vY,g=s==vY,C=o==s;if(C&&jF(A)){if(!jF(e))return!1;a=!0,l=!1}if(C&&!l)return u||(u=new NF),a||OsA(A)?XzA(A,e,t,r,i,u):a5t(A,e,o,t,r,i,u);if(!(t&g5t)){var B=l&&dPA.call(A,"__wrapped__"),E=g&&dPA.call(e,"__wrapped__");if(B||E){var d=B?A.value():A,I=E?e.value():e;return u||(u=new NF),i(d,I,t,r,u)}}if(!C)return!1;return u||(u=new NF),l5t(A,e,t,r,i,u)}function elA(A,e,t,r,i){if(A===e)return!0;if(A==null||e==null||!LC(A)&&!LC(e))return A!==A&&e!==e;return C5t(A,e,t,r,elA,i)}function uZA(A,e,t,r){var i=t.length,u=i,a=!r;if(A==null)return!u;A=Object(A);while(i--){var n=t[i];if(a&&n[2]?n[1]!==A[n[0]]:!(n[0]in A))return!1}while(++i<u){n=t[i];var o=n[0],s=A[o],l=n[1];if(a&&n[2]){if(s===void 0&&!(o in A))return!1}else{var g=new NF;if(r)var C=r(s,l,o,A,e,g);if(!(C===void 0?iZA(l,s,B5t|E5t,r,g):C))return!1}}return!0}function aZA(A){return A===A&&!dc(A)}function oZA(A){var e=Bg(A),t=e.length;while(t--){var r=e[t],i=A[r];e[t]=[r,i,nZA(i)]}return e}function sZA(A,e){return function(t){if(t==null)return!1;return t[A]===e&&(e!==void 0||(A in Object(t)))}}function gZA(A){var e=I5t(A);if(e.length==1&&e[0][2])return lZA(e[0][0],e[0][1]);return function(t){return t===A||d5t(t,A,e)}}function cZA(A,e){return A!=null&&e in Object(A)}function CZA(A,e,t){e=nJ(e,A);var r=-1,i=e.length,u=!1;while(++r<i){var a=vx(e[r]);if(!(u=A!=null&&t(A,a)))break;A=A[a]}if(u||++r!=i)return u;return i=A==null?0:A.length,!!i&&JsA(i)&&jK(a,i)&&(Ki(A)||AJ(A))}function EZA(A,e){return A!=null&&BZA(A,e,Q5t)}function dZA(A,e){if(PsA(A)&&nZA(e))return lZA(vx(A),e);return function(t){var r=$wt(t,A);return r===void 0&&r===e?p5t(t,A):iZA(e,r,f5t|m5t)}}function IZA(A){return function(e){return e==null?void 0:e[A]}}function hZA(A){return function(e){return _sA(e,A)}}function QZA(A){return PsA(A)?y5t(vx(A)):w5t(A)}function pZA(A){if(typeof A=="function")return A;if(A==null)return mx;if(typeof A=="object")return Ki(A)?D5t(A[0],A[1]):h5t(A);return b5t(A)}function fZA(A,e,t,r){var i=-1,u=A==null?0:A.length;while(++i<u){var a=A[i];e(r,a,t(a),A)}return r}function mZA(A){return function(e,t,r){var i=-1,u=Object(e),a=r(e),n=a.length;while(n--){var o=a[A?n:++i];if(t(u[o],o,u)===!1)break}return e}}function DZA(A,e){return A&&x5t(A,e,Bg)}function yZA(A,e){return function(t,r){if(t==null)return t;if(!HE(t))return A(t,r);var i=t.length,u=e?i:-1,a=Object(t);while(e?u--:++u<i)if(r(a[u],u,a)===!1)break;return t}}function wZA(A,e,t,r){return q3(A,function(i,u,a){e(r,i,t(i),a)}),r}function bZA(A,e){return function(t,r){var i=Ki(t)?v5t:N5t,u=e?e():{};return i(t,A,KE(r,2),u)}}function kZA(A){return LC(A)&&HE(A)}function FZA(A,e,t){var r=-1,i=A==null?0:A.length;while(++r<i)if(t(e,A[r]))return!0;return!1}function SZA(A,e,t,r){var i=-1,u=tqA,a=!0,n=A.length,o=[],s=e.length;if(!n)return o;if(t)e=px(e,bx(t));if(r)u=xZA,a=!1;else if(e.length>=T5t)u=$sA,a=!1,e=new XsA(e);A:while(++i<n){var l=A[i],g=t==null?l:t(l);if(l=r||l!==0?l:0,a&&g===g){var C=s;while(C--)if(e[C]===g)continue A;o.push(l)}else if(!u(e,g,r))o.push(l)}return o}function LZA(A){var e=A==null?0:A.length;return e?A[e-1]:void 0}function RZA(A,e,t){var r=A==null?0:A.length;if(!r)return[];return e=t||e===void 0?1:fx(e),szA(A,e<0?0:e,r)}function NZA(A,e,t){var r=A==null?0:A.length;if(!r)return[];return e=t||e===void 0?1:fx(e),e=r-e,szA(A,0,e<0?0:e)}function GZA(A){return typeof A=="function"?A:mx}function UZA(A,e){var t=Ki(A)?ZWA:q3;return t(A,K5t(e))}function MZA(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(!e(A[t],t,A))return!1;return!0}function TZA(A,e){var t=!0;return q3(A,function(r,i,u){return t=!!e(r,i,u),t}),t}function YZA(A,e,t){var r=Ki(A)?J5t:O5t;if(t&&$K(A,e,t))e=void 0;return r(A,KE(e,3))}function HZA(A,e){var t=[];return q3(A,function(r,i,u){if(e(r,i,u))t.push(r)}),t}function JZA(A,e){var t=Ki(A)?ZsA:KZA;return t(A,KE(e,3))}function OZA(A){return function(e,t,r){var i=Object(e);if(!HE(e)){var u=KE(t,3);e=Bg(e),t=G(function(n){return u(i[n],n,i)},"predicate")}var a=A(e,t,r);return a>-1?i[u?e[a]:a]:void 0}}function PZA(A,e,t){var r=A==null?0:A.length;if(!r)return-1;var i=t==null?0:fx(t);if(i<0)i=_5t(r+i,0);return jWA(A,KE(e,3),i)}function _ZA(A){return A&&A.length?A[0]:void 0}function WZA(A,e){var t=-1,r=HE(A)?Array(A.length):[];return q3(A,function(i,u,a){r[++t]=e(i,u,a)}),r}function qZA(A,e){var t=Ki(A)?px:z5t;return t(A,KE(e,3))}function zZA(A,e){return zsA(er(A,e),1)}function ZZA(A,e){return A!=null&&Abt.call(A,e)}function VZA(A,e){return A!=null&&BZA(A,e,ebt)}function jZA(A){return typeof A=="string"||!Ki(A)&&LC(A)&&V4(A)==tbt}function XZA(A,e){return px(e,function(t){return A[t]})}function $ZA(A){return A==null?[]:rbt(A,Bg(A))}function AVA(A,e,t,r){A=HE(A)?A:go(A),t=t&&!r?fx(t):0;var i=A.length;if(t<0)t=ibt(i+t,0);return fl(A)?t<=i&&A.indexOf(e,t)>-1:!!i&&YsA(A,e,t)>-1}function eVA(A,e,t){var r=A==null?0:A.length;if(!r)return-1;var i=t==null?0:fx(t);if(i<0)i=ubt(r+i,0);return YsA(A,e,i)}function tVA(A){if(A==null)return!0;if(HE(A)&&(Ki(A)||typeof A=="string"||typeof A.splice=="function"||jF(A)||OsA(A)||AJ(A)))return!A.length;var e=qw(A);if(e==abt||e==nbt)return!A.size;if(wx(A))return!kqA(A).length;for(var t in A)if(sbt.call(A,t))return!1;return!0}function rVA(A){return LC(A)&&V4(A)==lbt}function iVA(A){return A===void 0}function uVA(A){if(typeof A!="function")throw TypeError(Cbt);return function(){var e=arguments;switch(e.length){case 0:return!A.call(this);case 1:return!A.call(this,e[0]);case 2:return!A.call(this,e[0],e[1]);case 3:return!A.call(this,e[0],e[1],e[2])}return!A.apply(this,e)}}function aVA(A,e,t,r){if(!dc(A))return A;e=nJ(e,A);var i=-1,u=e.length,a=u-1,n=A;while(n!=null&&++i<u){var o=vx(e[i]),s=t;if(o==="__proto__"||o==="constructor"||o==="prototype")return A;if(i!=a){var l=n[o];if(s=r?r(l,o,n):void 0,s===void 0)s=dc(l)?l:jK(e[i+1])?[]:{}}XK(n,o,s),n=n[o]}return A}function nVA(A,e,t){var r=-1,i=e.length,u={};while(++r<i){var a=e[r],n=_sA(A,a);if(t(n,a))Ebt(u,nJ(a,A),n)}return u}function oVA(A,e){if(A==null)return{};var t=px(xzA(A),function(r){return[r]});return e=KE(e),dbt(A,t,function(r,i){return e(r,i[0])})}function sVA(A,e,t,r,i){return i(A,function(u,a,n){t=r?(r=!1,u):e(t,u,a,n)}),t}function lVA(A,e,t){var r=Ki(A)?t6t:Ibt,i=arguments.length<3;return r(A,KE(e,4),t,i,q3)}function gVA(A,e){var t=Ki(A)?ZsA:KZA;return t(A,Bbt(KE(e,3)))}function cVA(A,e){var t;return q3(A,function(r,i,u){return t=e(r,i,u),!t}),!!t}function CVA(A,e,t){var r=Ki(A)?ZzA:hbt;if(t&&$K(A,e,t))e=void 0;return r(A,KE(e,3))}function EVA(A,e,t){var r=-1,i=tqA,u=A.length,a=!0,n=[],o=n;if(t)a=!1,i=xZA;else if(u>=mbt){var s=e?null:fbt(A);if(s)return AlA(s);a=!1,i=$sA,o=new XsA}else o=e?[]:n;A:while(++r<u){var l=A[r],g=e?e(l):l;if(l=t||l!==0?l:0,a&&g===g){var C=o.length;while(C--)if(o[C]===g)continue A;if(e)o.push(g);n.push(l)}else if(!i(o,g,t)){if(o!==n)o.push(g);n.push(l)}}return n}function dVA(A){return A&&A.length?Dbt(A):[]}function RH(A){if(console&&console.error)console.error(`Error: ${A}`)}function ilA(A){if(console&&console.warn)console.warn(`Warning: ${A}`)}function ulA(A){let e=new Date().getTime(),t=A();return{time:new Date().getTime()-e,value:t}}function alA(A){function e(){}G(e,"FakeConstructor"),e.prototype=A;let t=new e;function r(){return typeof t.bar}return G(r,"fakeAccess"),r(),r(),A;(0,eval)(A)}function IVA(A){if(hVA(A))return A.LABEL;else return A.name}function hVA(A){return fl(A.LABEL)&&A.LABEL!==""}function QVA(A){return er(A,UF)}function UF(A){function e(t){return er(t,UF)}if(G(e,"convertDefinition"),A instanceof ks){let t={type:"NonTerminal",name:A.nonTerminalName,idx:A.idx};if(fl(A.label))t.label=A.label;return t}else if(A instanceof ml)return{type:"Alternative",definition:e(A.definition)};else if(A instanceof B0)return{type:"Option",idx:A.idx,definition:e(A.definition)};else if(A instanceof Ig)return{type:"RepetitionMandatory",idx:A.idx,definition:e(A.definition)};else if(A instanceof hg)return{type:"RepetitionMandatoryWithSeparator",idx:A.idx,separator:UF(new ia({terminalType:A.separator})),definition:e(A.definition)};else if(A instanceof Dl)return{type:"RepetitionWithSeparator",idx:A.idx,separator:UF(new ia({terminalType:A.separator})),definition:e(A.definition)};else if(A instanceof Va)return{type:"Repetition",idx:A.idx,definition:e(A.definition)};else if(A instanceof yl)return{type:"Alternation",idx:A.idx,definition:e(A.definition)};else if(A instanceof ia){let t={type:"Terminal",name:A.terminalType.name,label:IVA(A.terminalType),idx:A.idx};if(fl(A.label))t.terminalLabel=A.label;let r=A.terminalType.PATTERN;if(A.terminalType.PATTERN)t.pattern=zI(r)?r.source:r;return t}else if(A instanceof A6)return{type:"Rule",name:A.name,orgText:A.orgText,definition:e(A.definition)};else throw Error("non exhaustive match")}function pVA(A){return A instanceof ml||A instanceof B0||A instanceof Va||A instanceof Ig||A instanceof hg||A instanceof Dl||A instanceof ia||A instanceof A6}function tx(A,e=[]){if(A instanceof B0||A instanceof Va||A instanceof Dl)return!0;if(A instanceof yl)return BVA(A.definition,(r)=>tx(r,e));else if(A instanceof ks&&Ss(e,A))return!1;else if(A instanceof JE){if(A instanceof ks)e.push(A);return SC(A.definition,(r)=>tx(r,e))}else return!1}function fVA(A){return A instanceof yl}function bC(A){if(A instanceof ks)return"SUBRULE";else if(A instanceof B0)return"OPTION";else if(A instanceof yl)return"OR";else if(A instanceof Ig)return"AT_LEAST_ONE";else if(A instanceof hg)return"AT_LEAST_ONE_SEP";else if(A instanceof Dl)return"MANY_SEP";else if(A instanceof Va)return"MANY";else if(A instanceof ia)return"CONSUME";else throw Error("non exhaustive match")}function OoA(A,e,t){return[new B0({definition:[new ia({terminalType:A.separator})].concat(A.definition)})].concat(e,t)}function t6(A){if(A instanceof ks)return t6(A.referencedRule);else if(A instanceof ia)return yVA(A);else if(pVA(A))return mVA(A);else if(fVA(A))return DVA(A);else throw Error("non exhaustive match")}function mVA(A){let e=[],t=A.definition,r=0,i=t.length>r,u,a=!0;while(i&&a)u=t[r],a=tx(u),e=e.concat(t6(u)),r=r+1,i=t.length>r;return rlA(e)}function DVA(A){let e=er(A.definition,(t)=>t6(t));return rlA(xC(e))}function yVA(A){return[A.terminalType]}function bVA(A){let e={};return Rr(A,(t)=>{let r=new ybt(t).startWalking();Eg(e,r)}),e}function vVA(A,e){return A.name+e+wVA}function Fx(A){let e=A.toString();if($Y.hasOwnProperty(e))return $Y[e];else{let t=wbt.pattern(e);return $Y[e]=t,t}}function kVA(){$Y={}}function xVA(A,e=!1){try{let t=Fx(A);return GH(t.value,{},t.flags.ignoreCase)}catch(t){if(t.message===FVA){if(e)ilA(`${NH} Unable to optimize: < ${A.toString()} >
Complement Sets cannot be automatically optimized.
This will disable the lexer's first char optimizations.
See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`)}else{let r="";if(e)r=`
This will disable the lexer's first char optimizations.
See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`;RH(`${NH}
Failed parsing: < ${A.toString()} >
Using the @chevrotain/regexp-to-ast library
Please open an issue at: https://github.com/chevrotain/chevrotain/issues`+r)}}return[]}function GH(A,e,t){switch(A.type){case"Disjunction":for(let i=0;i<A.value.length;i++)GH(A.value[i],e,t);break;case"Alternative":let r=A.value;for(let i=0;i<r.length;i++){let u=r[i];switch(u.type){case"EndAnchor":case"GroupBackReference":case"Lookahead":case"NegativeLookahead":case"Lookbehind":case"NegativeLookbehind":case"StartAnchor":case"WordBoundary":case"NonWordBoundary":continue}let a=u;switch(a.type){case"Character":fF(a.value,e,t);break;case"Set":if(a.complement===!0)throw Error(FVA);Rr(a.value,(o)=>{if(typeof o==="number")fF(o,e,t);else{let s=o;if(t===!0)for(let l=s.from;l<=s.to;l++)fF(l,e,t);else{for(let l=s.from;l<=s.to&&l<DF;l++)fF(l,e,t);if(s.to>=DF){let l=s.from>=DF?s.from:DF,g=s.to,C=VI(l),B=VI(g);for(let E=C;E<=B;E++)e[E]=E}}}});break;case"Group":GH(a.value,e,t);break;default:throw Error("Non Exhaustive Match")}let n=a.quantifier!==void 0&&a.quantifier.atLeast===0;if(a.type==="Group"&&UH(a)===!1||a.type!=="Group"&&n===!1)break}break;default:throw Error("non exhaustive match!")}return go(e)}function fF(A,e,t){let r=VI(A);if(e[r]=r,t===!0)SVA(A,e)}function SVA(A,e){let t=String.fromCharCode(A),r=t.toUpperCase();if(r!==t){let i=VI(r.charCodeAt(0));e[i]=i}else{let i=t.toLowerCase();if(i!==t){let u=VI(i.charCodeAt(0));e[u]=u}}}function PoA(A,e){return zw(A.value,(t)=>{if(typeof t==="number")return Ss(e,t);else{let r=t;return zw(e,(i)=>r.from<=i&&i<=r.to)!==void 0}})}function UH(A){let e=A.quantifier;if(e&&e.atLeast===0)return!0;if(!A.value)return!1;return Ki(A.value)?SC(A.value,UH):UH(A.value)}function gJ(A,e){if(e instanceof RegExp){let t=Fx(e),r=new bbt(A);return r.visit(t),r.found}else return zw(e,(t)=>Ss(A,t.charCodeAt(0)))!==void 0}function LVA(A,e){e=tlA(e,{debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",`
`],tracer:G((Q,p)=>p(),"tracer")});let t=e.tracer;t("initCharCodeToOptimizedIndexMap",()=>{$VA()});let r;t("Reject Lexer.NA",()=>{r=sJ(A,(Q)=>Q[L3]===bs.NA)});let i=!1,u;t("Transform Patterns",()=>{i=!1,u=er(r,(Q)=>{let p=Q[L3];if(zI(p)){let m=p.source;if(m.length===1&&m!=="^"&&m!=="$"&&m!=="."&&!p.ignoreCase)return m;else if(m.length===2&&m[0]==="\\"&&!Ss(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],m[1]))return m[1];else return _oA(p)}else if(eh(p))return i=!0,{exec:p};else if(typeof p==="object")return i=!0,p;else if(typeof p==="string")if(p.length===1)return p;else{let m=p.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),f=new RegExp(m);return _oA(f)}else throw Error("non exhaustive match")})});let a,n,o,s,l;t("misc mapping",()=>{a=er(r,(Q)=>Q.tokenTypeIdx),n=er(r,(Q)=>{let p=Q.GROUP;if(p===bs.SKIPPED)return;else if(fl(p))return p;else if(ZI(p))return!1;else throw Error("non exhaustive match")}),o=er(r,(Q)=>{let p=Q.LONGER_ALT;if(p)return Ki(p)?er(p,(f)=>hPA(r,f)):[hPA(r,p)]}),s=er(r,(Q)=>Q.PUSH_MODE),l=er(r,(Q)=>pr(Q,"POP_MODE"))});let g;t("Line Terminator Handling",()=>{let Q=slA(e.lineTerminatorCharacters);if(g=er(r,(p)=>!1),e.positionTracking!=="onlyOffset")g=er(r,(p)=>{if(pr(p,"LINE_BREAKS"))return!!p.LINE_BREAKS;else return olA(p,Q)===!1&&gJ(Q,p.PATTERN)})});let C,B,E,d;t("Misc Mapping #2",()=>{C=er(r,nlA),B=er(u,jVA),E=dg(r,(Q,p)=>{let m=p.GROUP;if(fl(m)&&m!==bs.SKIPPED)Q[m]=[];return Q},{}),d=er(u,(Q,p)=>({pattern:u[p],longerAlt:o[p],canLineTerminator:g[p],isCustom:C[p],short:B[p],group:n[p],push:s[p],pop:l[p],tokenTypeIdx:a[p],tokenType:r[p]}))});let I=!0,h=[];if(!e.safeMode)t("First Char Optimization",()=>{h=dg(r,(Q,p,m)=>{if(typeof p.PATTERN==="string"){let f=p.PATTERN.charCodeAt(0),D=VI(f);AH(Q,D,d[m])}else if(Ki(p.START_CHARS_HINT)){let f;Rr(p.START_CHARS_HINT,(D)=>{let w=typeof D==="string"?D.charCodeAt(0):D,b=VI(w);if(f!==b)f=b,AH(Q,b,d[m])})}else if(zI(p.PATTERN))if(p.PATTERN.unicode){if(I=!1,e.ensureOptimizations)RH(`${NH} Unable to analyze < ${p.PATTERN.toString()} > pattern.
The regexp unicode flag is not currently supported by the regexp-to-ast library.
This will disable the lexer's first char optimizations.
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`)}else{let f=xVA(p.PATTERN,e.ensureOptimizations);if(qu(f))I=!1;Rr(f,(D)=>{AH(Q,D,d[m])})}else{if(e.ensureOptimizations)RH(`${NH} TokenType: <${p.name}> is using a custom token pattern without providing <start_chars_hint> parameter.
This will disable the lexer's first char optimizations.
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`);I=!1}return Q},[])});return{emptyGroups:E,patternIdxToConfig:d,charCodeToPatternIdxToConfig:h,hasCustom:i,canBeOptimized:I}}function RVA(A,e){let t=[],r=GVA(A);t=t.concat(r.errors);let i=UVA(r.valid),u=i.valid;return t=t.concat(i.errors),t=t.concat(NVA(u)),t=t.concat(JVA(u)),t=t.concat(OVA(u,e)),t=t.concat(PVA(u)),t}function NVA(A){let e=[],t=hc(A,(r)=>zI(r[L3]));return e=e.concat(MVA(t)),e=e.concat(YVA(t)),e=e.concat(HVA(t)),e=e.concat(KVA(t)),e=e.concat(TVA(t)),e}function GVA(A){let e=hc(A,(i)=>!pr(i,L3)),t=er(e,(i)=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:ja.MISSING_PATTERN,tokenTypes:[i]})),r=oJ(A,e);return{errors:t,valid:r}}function UVA(A){let e=hc(A,(i)=>{let u=i[L3];return!zI(u)&&!eh(u)&&!pr(u,"exec")&&!fl(u)}),t=er(e,(i)=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:ja.INVALID_PATTERN,tokenTypes:[i]})),r=oJ(A,e);return{errors:t,valid:r}}function MVA(A){class e extends OK{static{G(this,"EndAnchorFinder")}constructor(){super(...arguments);this.found=!1}visitEndAnchor(i){this.found=!0}}let t=hc(A,(i)=>{let u=i.PATTERN;try{let a=Fx(u),n=new e;return n.visit(a),n.found}catch(a){return vbt.test(u.source)}});return er(t,(i)=>({message:`Unexpected RegExp Anchor Error:
Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain end of input anchor '$'
See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:ja.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function TVA(A){let e=hc(A,(r)=>r.PATTERN.test(""));return er(e,(r)=>({message:"Token Type: ->"+r.name+"<- static 'PATTERN' must not match an empty string",type:ja.EMPTY_MATCH_PATTERN,tokenTypes:[r]}))}function YVA(A){class e extends OK{static{G(this,"StartAnchorFinder")}constructor(){super(...arguments);this.found=!1}visitStartAnchor(i){this.found=!0}}let t=hc(A,(i)=>{let u=i.PATTERN;try{let a=Fx(u),n=new e;return n.visit(a),n.found}catch(a){return kbt.test(u.source)}});return er(t,(i)=>({message:`Unexpected RegExp Anchor Error:
Token Type: ->`+i.name+`<- static 'PATTERN' cannot contain start of input anchor '^'
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:ja.SOI_ANCHOR_FOUND,tokenTypes:[i]}))}function HVA(A){let e=hc(A,(r)=>{let i=r[L3];return i instanceof RegExp&&(i.multiline||i.global)});return er(e,(r)=>({message:"Token Type: ->"+r.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:ja.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[r]}))}function KVA(A){let e=[],t=er(A,(u)=>dg(A,(a,n)=>{if(u.PATTERN.source===n.PATTERN.source&&!Ss(e,n)&&n.PATTERN!==bs.NA)return e.push(n),a.push(n),a;return a},[]));t=kx(t);let r=hc(t,(u)=>u.length>1);return er(r,(u)=>{let a=er(u,(o)=>o.name);return{message:`The same RegExp pattern ->${RC(u).PATTERN}<-has been used in all of the following Token Types: ${a.join(", ")} <-`,type:ja.DUPLICATE_PATTERNS_FOUND,tokenTypes:u}})}function JVA(A){let e=hc(A,(r)=>{if(!pr(r,"GROUP"))return!1;let i=r.GROUP;return i!==bs.SKIPPED&&i!==bs.NA&&!fl(i)});return er(e,(r)=>({message:"Token Type: ->"+r.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:ja.INVALID_GROUP_TYPE_FOUND,tokenTypes:[r]}))}function OVA(A,e){let t=hc(A,(i)=>i.PUSH_MODE!==void 0&&!Ss(e,i.PUSH_MODE));return er(t,(i)=>({message:`Token Type: ->${i.name}<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->${i.PUSH_MODE}<-which does not exist`,type:ja.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[i]}))}function PVA(A){let e=[],t=dg(A,(r,i,u)=>{let a=i.PATTERN;if(a===bs.NA)return r;if(fl(a))r.push({str:a,idx:u,tokenType:i});else if(zI(a)&&WVA(a))r.push({str:a.source,idx:u,tokenType:i});return r},[]);return Rr(A,(r,i)=>{Rr(t,({str:u,idx:a,tokenType:n})=>{if(i<a&&_VA(u,r.PATTERN)){let o=`Token: ->${n.name}<- can never be matched.
Because it appears AFTER the Token Type ->${r.name}<-in the lexer's definition.
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:o,type:ja.UNREACHABLE_PATTERN,tokenTypes:[r,n]})}})}),e}function _VA(A,e){if(zI(e)){if(qVA(e))return!1;let t=e.exec(A);return t!==null&&t.index===0}else if(eh(e))return e(A,0,[],{});else if(pr(e,"exec"))return e.exec(A,0,[],{});else if(typeof e==="string")return e===A;else throw Error("non exhaustive match")}function WVA(A){return zw([".","\\","[","]","|","^","$","(",")","?","*","+","{"],(t)=>A.source.indexOf(t)!==-1)===void 0}function qVA(A){return/(\(\?=)|(\(\?!)|(\(\?<=)|(\(\?<!)/.test(A.source)}function _oA(A){let e=A.ignoreCase?"iy":"y";return new RegExp(`${A.source}`,e)}function zVA(A,e,t){let r=[];if(!pr(A,mF))r.push({message:"A MultiMode Lexer cannot be initialized without a <"+mF+`> property in its definition
`,type:ja.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE});if(!pr(A,kY))r.push({message:"A MultiMode Lexer cannot be initialized without a <"+kY+`> property in its definition
`,type:ja.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY});if(pr(A,kY)&&pr(A,mF)&&!pr(A.modes,A.defaultMode))r.push({message:`A MultiMode Lexer cannot be initialized with a ${mF}: <${A.defaultMode}>which does not exist
`,type:ja.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST});if(pr(A,kY))Rr(A.modes,(i,u)=>{Rr(i,(a,n)=>{if(ZI(a))r.push({message:`A Lexer cannot be initialized using an undefined Token Type. Mode:<${u}> at index: <${n}>
`,type:ja.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED});else if(pr(a,"LONGER_ALT")){let o=Ki(a.LONGER_ALT)?a.LONGER_ALT:[a.LONGER_ALT];Rr(o,(s)=>{if(!ZI(s)&&!Ss(i,s))r.push({message:`A MultiMode Lexer cannot be initialized with a longer_alt <${s.name}> on token <${a.name}> outside of mode <${u}>
`,type:ja.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE})})}})});return r}function ZVA(A,e,t){let r=[],i=!1,u=kx(xC(go(A.modes))),a=sJ(u,(o)=>o[L3]===bs.NA),n=slA(t);if(e)Rr(a,(o)=>{let s=olA(o,n);if(s!==!1){let g={message:XVA(o,s),type:s.issue,tokenType:o};r.push(g)}else if(pr(o,"LINE_BREAKS")){if(o.LINE_BREAKS===!0)i=!0}else if(gJ(n,o.PATTERN))i=!0});if(e&&!i)r.push({message:`Warning: No LINE_BREAKS Found.
This Lexer has been defined to track line and column information,
But none of the Token Types can be identified as matching a line terminator.
See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS
for details.`,type:ja.NO_LINE_BREAKS_FLAGS});return r}function VVA(A){let e={},t=Bg(A);return Rr(t,(r)=>{let i=A[r];if(Ki(i))e[r]=[];else throw Error("non exhaustive match")}),e}function nlA(A){let e=A.PATTERN;if(zI(e))return!1;else if(eh(e))return!0;else if(pr(e,"exec"))return!0;else if(fl(e))return!1;else throw Error("non exhaustive match")}function jVA(A){if(fl(A)&&A.length===1)return A.charCodeAt(0);else return!1}function olA(A,e){if(pr(A,"LINE_BREAKS"))return!1;else if(zI(A.PATTERN)){try{gJ(e,A.PATTERN)}catch(t){return{issue:ja.IDENTIFY_TERMINATOR,errMsg:t.message}}return!1}else if(fl(A.PATTERN))return!1;else if(nlA(A))return{issue:ja.CUSTOM_LINE_BREAK};else throw Error("non exhaustive match")}function XVA(A,e){if(e.issue===ja.IDENTIFY_TERMINATOR)return`Warning: unable to identify line terminator usage in pattern.
The problem is in the <${A.name}> Token Type
Root cause: ${e.errMsg}.
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR`;else if(e.issue===ja.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the <line_breaks> option.
The problem is in the <${A.name}> Token Type
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK`;else throw Error("non exhaustive match")}function slA(A){return er(A,(t)=>{if(fl(t))return t.charCodeAt(0);else return t})}function AH(A,e,t){if(A[e]===void 0)A[e]=[t];else A[e].push(t)}function VI(A){return A<DF?A:eH[A]}function $VA(){if(qu(eH)){eH=Array(65536);for(let A=0;A<65536;A++)eH[A]=A>255?255+~~(A/255):A}}function r6(A,e){let t=A.tokenTypeIdx;if(t===e.tokenTypeIdx)return!0;else return e.isParent===!0&&e.categoryMatchesMap[t]===!0}function rx(A,e){return A.tokenTypeIdx===e.tokenTypeIdx}function i6(A){let e=ejA(A);tjA(e),ijA(e),rjA(e),Rr(e,(t)=>{t.isParent=t.categoryMatches.length>0})}function ejA(A){let e=E0(A),t=A,r=!0;while(r){t=kx(xC(er(t,(u)=>u.CATEGORIES)));let i=oJ(t,e);if(e=e.concat(i),qu(i))r=!1;else t=i}return e}function tjA(A){Rr(A,(e)=>{if(!glA(e))AjA[pPA]=e,e.tokenTypeIdx=pPA++;if(WoA(e)&&!Ki(e.CATEGORIES))e.CATEGORIES=[e.CATEGORIES];if(!WoA(e))e.CATEGORIES=[];if(!ujA(e))e.categoryMatches=[];if(!ajA(e))e.categoryMatchesMap={}})}function rjA(A){Rr(A,(e)=>{e.categoryMatches=[],Rr(e.categoryMatchesMap,(t,r)=>{e.categoryMatches.push(AjA[r].tokenTypeIdx)})})}function ijA(A){Rr(A,(e)=>{llA([],e)})}function llA(A,e){Rr(A,(t)=>{e.categoryMatchesMap[t.tokenTypeIdx]=!0}),Rr(e.CATEGORIES,(t)=>{let r=A.concat(e);if(!Ss(r,t))llA(r,t)})}function glA(A){return pr(A,"tokenTypeIdx")}function WoA(A){return pr(A,"CATEGORIES")}function ujA(A){return pr(A,"categoryMatches")}function ajA(A){return pr(A,"categoryMatchesMap")}function njA(A){return pr(A,"tokenTypeIdx")}function k3(A){if(clA(A))return A.LABEL;else return A.name}function clA(A){return fl(A.LABEL)&&A.LABEL!==""}function Gw(A){return ojA(A)}function ojA(A){let e=A.pattern,t={};if(t.name=A.name,!ZI(e))t.PATTERN=e;if(pr(A,xbt))throw`The parent property is no longer supported.
See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;if(pr(A,fPA))t.CATEGORIES=A[fPA];if(i6([t]),pr(A,mPA))t.LABEL=A[mPA];if(pr(A,DPA))t.GROUP=A[DPA];if(pr(A,wPA))t.POP_MODE=A[wPA];if(pr(A,yPA))t.PUSH_MODE=A[yPA];if(pr(A,bPA))t.LONGER_ALT=A[bPA];if(pr(A,vPA))t.LINE_BREAKS=A[vPA];if(pr(A,kPA))t.START_CHARS_HINT=A[kPA];return t}function xx(A,e,t,r,i,u,a,n){return{image:e,startOffset:t,endOffset:r,startLine:i,endLine:u,startColumn:a,endColumn:n,tokenTypeIdx:A.tokenTypeIdx,tokenType:A}}function ClA(A,e){return r6(A,e)}function sjA(A,e){let t=new Lbt(A,e);return t.resolveRefs(),t.errors}function MH(A,e,t=[]){t=E0(t);let r=[],i=0;function u(n){return n.concat(C0(A,i+1))}G(u,"remainingPathWith");function a(n){let o=MH(u(n),e,t);return r.concat(o)}G(a,"getAlternativesForProd");while(t.length<e&&i<A.length){let n=A[i];if(n instanceof ml)return a(n.definition);else if(n instanceof ks)return a(n.definition);else if(n instanceof B0)r=a(n.definition);else if(n instanceof Ig){let o=n.definition.concat([new Va({definition:n.definition})]);return a(o)}else if(n instanceof hg){let o=[new ml({definition:n.definition}),new Va({definition:[new ia({terminalType:n.separator})].concat(n.definition)})];return a(o)}else if(n instanceof Dl){let o=n.definition.concat([new Va({definition:[new ia({terminalType:n.separator})].concat(n.definition)})]);r=a(o)}else if(n instanceof Va){let o=n.definition.concat([new Va({definition:n.definition})]);r=a(o)}else if(n instanceof yl)return Rr(n.definition,(o)=>{if(qu(o.definition)===!1)r=a(o.definition)}),r;else if(n instanceof ia)t.push(n.terminalType);else throw Error("non exhaustive match");i++}return r.push({partialPath:t,suffixDef:C0(A,i)}),r}function BlA(A,e,t,r){let u=["EXIT_NONE_TERMINAL"],a="EXIT_ALTERNATIVE",n=!1,o=e.length,s=o-r-1,l=[],g=[];g.push({idx:-1,def:A,ruleStack:[],occurrenceStack:[]});while(!qu(g)){let C=g.pop();if(C==="EXIT_ALTERNATIVE"){if(n&&S3(g).idx<=s)g.pop();continue}let{def:B,idx:E,ruleStack:d,occurrenceStack:I}=C;if(qu(B))continue;let h=B[0];if(h==="EXIT_NONE_TERMINAL"){let Q={idx:E,def:C0(B),ruleStack:ex(d),occurrenceStack:ex(I)};g.push(Q)}else if(h instanceof ia)if(E<o-1){let Q=E+1,p=e[Q];if(t(p,h.terminalType)){let m={idx:Q,def:C0(B),ruleStack:d,occurrenceStack:I};g.push(m)}}else if(E===o-1)l.push({nextTokenType:h.terminalType,nextTokenOccurrence:h.idx,ruleStack:d,occurrenceStack:I}),n=!0;else throw Error("non exhaustive match");else if(h instanceof ks){let Q=E0(d);Q.push(h.nonTerminalName);let p=E0(I);p.push(h.idx);let m={idx:E,def:h.definition.concat(u,C0(B)),ruleStack:Q,occurrenceStack:p};g.push(m)}else if(h instanceof B0){let Q={idx:E,def:C0(B),ruleStack:d,occurrenceStack:I};g.push(Q),g.push("EXIT_ALTERNATIVE");let p={idx:E,def:h.definition.concat(C0(B)),ruleStack:d,occurrenceStack:I};g.push(p)}else if(h instanceof Ig){let Q=new Va({definition:h.definition,idx:h.idx}),p=h.definition.concat([Q],C0(B)),m={idx:E,def:p,ruleStack:d,occurrenceStack:I};g.push(m)}else if(h instanceof hg){let Q=new ia({terminalType:h.separator}),p=new Va({definition:[Q].concat(h.definition),idx:h.idx}),m=h.definition.concat([p],C0(B)),f={idx:E,def:m,ruleStack:d,occurrenceStack:I};g.push(f)}else if(h instanceof Dl){let Q={idx:E,def:C0(B),ruleStack:d,occurrenceStack:I};g.push(Q),g.push("EXIT_ALTERNATIVE");let p=new ia({terminalType:h.separator}),m=new Va({definition:[p].concat(h.definition),idx:h.idx}),f=h.definition.concat([m],C0(B)),D={idx:E,def:f,ruleStack:d,occurrenceStack:I};g.push(D)}else if(h instanceof Va){let Q={idx:E,def:C0(B),ruleStack:d,occurrenceStack:I};g.push(Q),g.push("EXIT_ALTERNATIVE");let p=new Va({definition:h.definition,idx:h.idx}),m=h.definition.concat([p],C0(B)),f={idx:E,def:m,ruleStack:d,occurrenceStack:I};g.push(f)}else if(h instanceof yl)for(let Q=h.definition.length-1;Q>=0;Q--){let p=h.definition[Q],m={idx:E,def:p.definition.concat(C0(B)),ruleStack:d,occurrenceStack:I};g.push(m),g.push("EXIT_ALTERNATIVE")}else if(h instanceof ml)g.push({idx:E,def:h.definition.concat(C0(B)),ruleStack:d,occurrenceStack:I});else if(h instanceof A6)g.push(ljA(h,E,d,I));else throw Error("non exhaustive match")}return l}function ljA(A,e,t,r){let i=E0(t);i.push(A.name);let u=E0(r);return u.push(1),{idx:e,def:A.definition,ruleStack:i,occurrenceStack:u}}function CJ(A){if(A instanceof B0||A==="Option")return Ra.OPTION;else if(A instanceof Va||A==="Repetition")return Ra.REPETITION;else if(A instanceof Ig||A==="RepetitionMandatory")return Ra.REPETITION_MANDATORY;else if(A instanceof hg||A==="RepetitionMandatoryWithSeparator")return Ra.REPETITION_MANDATORY_WITH_SEPARATOR;else if(A instanceof Dl||A==="RepetitionWithSeparator")return Ra.REPETITION_WITH_SEPARATOR;else if(A instanceof yl||A==="Alternation")return Ra.ALTERNATION;else throw Error("non exhaustive match")}function zoA(A){let{occurrence:e,rule:t,prodType:r,maxLookahead:i}=A,u=CJ(r);if(u===Ra.ALTERNATION)return Sx(e,t,i);else return Lx(e,t,u,i)}function gjA(A,e,t,r,i,u){let a=Sx(A,e,t),n=dlA(a)?rx:r6;return u(a,r,n,i)}function cjA(A,e,t,r,i,u){let a=Lx(A,e,i,t),n=dlA(a)?rx:r6;return u(a[0],n,r)}function CjA(A,e,t,r){let i=A.length,u=SC(A,(a)=>SC(a,(n)=>n.length===1));if(e)return function(a){let n=er(a,(o)=>o.GATE);for(let o=0;o<i;o++){let s=A[o],l=s.length,g=n[o];if(g!==void 0&&g.call(this)===!1)continue;A:for(let C=0;C<l;C++){let B=s[C],E=B.length;for(let d=0;d<E;d++){let I=this.LA(d+1);if(t(I,B[d])===!1)continue A}return o}}return};else if(u&&!r){let a=er(A,(o)=>xC(o)),n=dg(a,(o,s,l)=>(Rr(s,(g)=>{if(!pr(o,g.tokenTypeIdx))o[g.tokenTypeIdx]=l;Rr(g.categoryMatches,(C)=>{if(!pr(o,C))o[C]=l})}),o),{});return function(){let o=this.LA(1);return n[o.tokenTypeIdx]}}else return function(){for(let a=0;a<i;a++){let n=A[a],o=n.length;A:for(let s=0;s<o;s++){let l=n[s],g=l.length;for(let C=0;C<g;C++){let B=this.LA(C+1);if(t(B,l[C])===!1)continue A}return a}}return}}function BjA(A,e,t){let r=SC(A,(u)=>u.length===1),i=A.length;if(r&&!t){let u=xC(A);if(u.length===1&&qu(u[0].categoryMatches)){let n=u[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===n}}else{let a=dg(u,(n,o,s)=>(n[o.tokenTypeIdx]=!0,Rr(o.categoryMatches,(l)=>{n[l]=!0}),n),[]);return function(){let n=this.LA(1);return a[n.tokenTypeIdx]===!0}}}else return function(){A:for(let u=0;u<i;u++){let a=A[u],n=a.length;for(let o=0;o<n;o++){let s=this.LA(o+1);if(e(s,a[o])===!1)continue A}return!0}return!1}}function ZoA(A){let e=Array(A);for(let t=0;t<A;t++)e[t]=[];return e}function tH(A){let e=[""];for(let t=0;t<A.length;t++){let r=A[t],i=[];for(let u=0;u<e.length;u++){let a=e[u];i.push(a+"_"+r.tokenTypeIdx);for(let n=0;n<r.categoryMatches.length;n++){let o="_"+r.categoryMatches[n];i.push(a+o)}}e=i}return e}function djA(A,e,t){for(let r=0;r<A.length;r++){if(r===t)continue;let i=A[r];for(let u=0;u<e.length;u++){let a=e[u];if(i[a]===!0)return!1}}return!0}function ElA(A,e){let t=er(A,(a)=>MH([a],1)),r=ZoA(t.length),i=er(t,(a)=>{let n={};return Rr(a,(o)=>{let s=tH(o.partialPath);Rr(s,(l)=>{n[l]=!0})}),n}),u=t;for(let a=1;a<=e;a++){let n=u;u=ZoA(n.length);for(let o=0;o<n.length;o++){let s=n[o];for(let l=0;l<s.length;l++){let g=s[l].partialPath,C=s[l].suffixDef,B=tH(g);if(djA(i,B,o)||qu(C)||g.length===e){let d=r[o];if(TH(d,g)===!1){d.push(g);for(let I=0;I<B.length;I++){let h=B[I];i[o][h]=!0}}}else{let d=MH(C,a+1,g);u[o]=u[o].concat(d),Rr(d,(I)=>{let h=tH(I.partialPath);Rr(h,(Q)=>{i[o][Q]=!0})})}}}}return r}function Sx(A,e,t,r){let i=new EjA(A,Ra.ALTERNATION,r);return e.accept(i),ElA(i.result,t)}function Lx(A,e,t,r){let i=new EjA(A,t);e.accept(i);let u=i.result,n=new Mbt(e,A,t).startWalking(),o=new ml({definition:u}),s=new ml({definition:n});return ElA([o,s],r)}function TH(A,e){A:for(let t=0;t<A.length;t++){let r=A[t];if(r.length!==e.length)continue;for(let i=0;i<r.length;i++){let u=e[i],a=r[i];if((u===a||a.categoryMatchesMap[u.tokenTypeIdx]!==void 0)===!1)continue A}return!0}return!1}function IjA(A,e){return A.length<e.length&&SC(A,(t,r)=>{let i=e[r];return t===i||i.categoryMatchesMap[t.tokenTypeIdx]})}function dlA(A){return SC(A,(e)=>SC(e,(t)=>SC(t,(r)=>qu(r.categoryMatches))))}function hjA(A){let e=A.lookaheadStrategy.validate({rules:A.rules,tokenTypes:A.tokenTypes,grammarName:A.grammarName});return er(e,(t)=>Object.assign({type:Fs.CUSTOM_LOOKAHEAD_VALIDATION},t))}function QjA(A,e,t,r){let i=Bc(A,(o)=>pjA(o,t)),u=xjA(A,e,t),a=Bc(A,(o)=>bjA(o,t)),n=Bc(A,(o)=>mjA(o,A,r,t));return i.concat(u,a,n)}function pjA(A,e){let t=new Tbt;A.accept(t);let r=t.allProductions,i=X5t(r,fjA),u=NC(i,(n)=>n.length>1);return er(go(u),(n)=>{let o=RC(n),s=e.buildDuplicateFoundError(A,n),l=bC(o),g={message:s,type:Fs.DUPLICATE_PRODUCTIONS,ruleName:A.name,dslName:l,occurrence:o.idx},C=IlA(o);if(C)g.parameter=C;return g})}function fjA(A){return`${bC(A)}_#_${A.idx}_#_${IlA(A)}`}function IlA(A){if(A instanceof ia)return A.terminalType.name;else if(A instanceof ks)return A.nonTerminalName;else return""}function mjA(A,e,t,r){let i=[];if(dg(e,(a,n)=>{if(n.name===A.name)return a+1;return a},0)>1){let a=r.buildDuplicateRuleNameError({topLevelRule:A,grammarName:t});i.push({message:a,type:Fs.DUPLICATE_RULE_NAME,ruleName:A.name})}return i}function DjA(A,e,t){let r=[],i;if(!Ss(e,A))i=`Invalid rule override, rule: ->${A}<- cannot be overridden in the grammar: ->${t}<-as it is not defined in any of the super grammars `,r.push({message:i,type:Fs.INVALID_RULE_OVERRIDE,ruleName:A});return r}function hlA(A,e,t,r=[]){let i=[],u=MF(e.definition);if(qu(u))return[];else{let a=A.name;if(Ss(u,A))i.push({message:t.buildLeftRecursionError({topLevelRule:A,leftRecursionPath:r}),type:Fs.LEFT_RECURSION,ruleName:a});let o=oJ(u,r.concat([A])),s=Bc(o,(l)=>{let g=E0(r);return g.push(l),hlA(A,l,t,g)});return i.concat(s)}}function MF(A){let e=[];if(qu(A))return e;let t=RC(A);if(t instanceof ks)e.push(t.referencedRule);else if(t instanceof ml||t instanceof B0||t instanceof Ig||t instanceof hg||t instanceof Dl||t instanceof Va)e=e.concat(MF(t.definition));else if(t instanceof yl)e=xC(er(t.definition,(u)=>MF(u.definition)));else if(t instanceof ia);else throw Error("non exhaustive match");let r=tx(t),i=A.length>1;if(r&&i){let u=C0(A);return e.concat(MF(u))}else return e}function yjA(A,e){let t=new QlA;A.accept(t);let r=t.alternations;return Bc(r,(u)=>{let a=ex(u.definition);return Bc(a,(n,o)=>{let s=BlA([n],[],r6,1);if(qu(s))return[{message:e.buildEmptyAlternationError({topLevelRule:A,alternation:u,emptyChoiceIdx:o}),type:Fs.NONE_LAST_EMPTY_ALT,ruleName:A.name,occurrence:u.idx,alternative:o+1}];else return[]})})}function wjA(A,e,t){let r=new QlA;A.accept(r);let i=r.alternations;return i=sJ(i,(a)=>a.ignoreAmbiguities===!0),Bc(i,(a)=>{let n=a.idx,o=a.maxLookahead||e,s=Sx(n,A,o,a),l=kjA(s,a,A,t),g=FjA(s,a,A,t);return l.concat(g)})}function bjA(A,e){let t=new QlA;A.accept(t);let r=t.alternations;return Bc(r,(u)=>{if(u.definition.length>255)return[{message:e.buildTooManyAlternativesError({topLevelRule:A,alternation:u}),type:Fs.TOO_MANY_ALTS,ruleName:A.name,occurrence:u.idx}];else return[]})}function vjA(A,e,t){let r=[];return Rr(A,(i)=>{let u=new Ybt;i.accept(u);let a=u.allProductions;Rr(a,(n)=>{let o=CJ(n),s=n.maxLookahead||e,l=n.idx,C=Lx(l,i,o,s)[0];if(qu(xC(C))){let B=t.buildEmptyRepetitionError({topLevelRule:i,repetition:n});r.push({message:B,type:Fs.NO_NON_EMPTY_LOOKAHEAD,ruleName:i.name})}})}),r}function kjA(A,e,t,r){let i=[],u=dg(A,(n,o,s)=>{if(e.definition[s].ignoreAmbiguities===!0)return n;return Rr(o,(l)=>{let g=[s];if(Rr(A,(C,B)=>{if(s!==B&&TH(C,l)&&e.definition[B].ignoreAmbiguities!==!0)g.push(B)}),g.length>1&&!TH(i,l))i.push(l),n.push({alts:g,path:l})}),n},[]);return er(u,(n)=>{let o=er(n.alts,(l)=>l+1);return{message:r.buildAlternationAmbiguityError({topLevelRule:t,alternation:e,ambiguityIndices:o,prefixPath:n.path}),type:Fs.AMBIGUOUS_ALTS,ruleName:t.name,occurrence:e.idx,alternatives:n.alts}})}function FjA(A,e,t,r){let i=dg(A,(a,n,o)=>{let s=er(n,(l)=>({idx:o,path:l}));return a.concat(s)},[]);return kx(Bc(i,(a)=>{if(e.definition[a.idx].ignoreAmbiguities===!0)return[];let{idx:o,path:s}=a,l=hc(i,(C)=>e.definition[C.idx].ignoreAmbiguities!==!0&&C.idx<o&&IjA(C.path,s));return er(l,(C)=>{let B=[C.idx+1,o+1],E=e.idx===0?"":e.idx;return{message:r.buildAlternationPrefixAmbiguityError({topLevelRule:t,alternation:e,ambiguityIndices:B,prefixPath:C.path}),type:Fs.AMBIGUOUS_PREFIX_ALTS,ruleName:t.name,occurrence:E,alternatives:B}})}))}function xjA(A,e,t){let r=[],i=er(e,(u)=>u.name);return Rr(A,(u)=>{let a=u.name;if(Ss(i,a)){let n=t.buildNamespaceConflictError(u);r.push({message:n,type:Fs.CONFLICT_TOKENS_RULES_NAMESPACE,ruleName:a})}}),r}function SjA(A){let e=tlA(A,{errMsgProvider:Sbt}),t={};return Rr(A.rules,(r)=>{t[r.name]=r}),sjA(t,e.errMsgProvider)}function LjA(A){return A=tlA(A,{errMsgProvider:D3}),QjA(A.rules,A.tokenTypes,A.errMsgProvider,A.grammarName)}function ix(A){return Ss(MjA,A.name)}function HjA(A,e,t,r,i,u,a){let n=this.getKeyForAutomaticLookahead(r,i),o=this.firstAfterRepMap[n];if(o===void 0){let C=this.getCurrRuleFullName(),B=this.getGAstProductions()[C];o=new u(B,i).startWalking(),this.firstAfterRepMap[n]=o}let s=o.token,l=o.occurrence,g=o.isEndOfRule;if(this.RULE_STACK.length===1&&g&&s===void 0)s=_4,l=1;if(s===void 0||l===void 0)return;if(this.shouldInRepetitionRecoveryBeTried(s,l,a))this.tryInRepetitionRecovery(A,e,t,s)}function iH(A,e,t){return t|e|A}function OjA(A){FY.reset(),A.accept(FY);let e=FY.dslMethods;return FY.reset(),e}function $oA(A,e){if(isNaN(A.startOffset)===!0)A.startOffset=e.startOffset,A.endOffset=e.endOffset;else if(A.endOffset<e.endOffset===!0)A.endOffset=e.endOffset}function A0A(A,e){if(isNaN(A.startOffset)===!0)A.startOffset=e.startOffset,A.startColumn=e.startColumn,A.startLine=e.startLine,A.endOffset=e.endOffset,A.endColumn=e.endColumn,A.endLine=e.endLine;else if(A.endOffset<e.endOffset===!0)A.endOffset=e.endOffset,A.endColumn=e.endColumn,A.endLine=e.endLine}function PjA(A,e,t){if(A.children[t]===void 0)A.children[t]=[e];else A.children[t].push(e)}function _jA(A,e,t){if(A.children[e]===void 0)A.children[e]=[t];else A.children[e].push(t)}function flA(A,e){Object.defineProperty(A,Zbt,{enumerable:!1,configurable:!0,writable:!1,value:e})}function WjA(A,e){let t=Bg(A),r=t.length;for(let i=0;i<r;i++){let u=t[i],a=A[u],n=a.length;for(let o=0;o<n;o++){let s=a[o];if(s.tokenTypeIdx===void 0)this[s.name](s.children,e)}}}function qjA(A,e){let t=G(function(){},"derivedConstructor");flA(t,A+"BaseSemantics");let r={visit:G(function(i,u){if(Ki(i))i=i[0];if(ZI(i))return;return this[i.name](i.children,u)},"visit"),validateVisitor:G(function(){let i=ZjA(this,e);if(!qu(i)){let u=er(i,(a)=>a.msg);throw Error(`Errors Detected in CST Visitor <${this.constructor.name}>:
${u.join(`
`).replace(/\n/g,`
`)}`)}},"validateVisitor")};return t.prototype=r,t.prototype.constructor=t,t._RULE_NAMES=e,t}function zjA(A,e,t){let r=G(function(){},"derivedConstructor");flA(r,A+"BaseSemanticsWithDefaults");let i=Object.create(t.prototype);return Rr(e,(u)=>{i[u]=WjA}),r.prototype=i,r.prototype.constructor=r,r}function ZjA(A,e){return VjA(A,e)}function VjA(A,e){let t=hc(e,(i)=>eh(A[i])===!1),r=er(t,(i)=>({msg:`Missing visitor method: <${i}> on ${A.constructor.name} CST Visitor.`,type:e0A.MISSING_METHOD,methodName:i}));return kx(r)}function yw(A,e,t,r=!1){ux(t);let i=S3(this.recordingProdStack),u=eh(e)?e:e.DEF,a=new A({definition:[],idx:t});if(r)a.separator=e.SEP;if(pr(e,"MAX_LOOKAHEAD"))a.maxLookahead=e.MAX_LOOKAHEAD;return this.recordingProdStack.push(a),u.call(this),i.definition.push(a),this.recordingProdStack.pop(),EJ}function $jA(A,e){ux(e);let t=S3(this.recordingProdStack),r=Ki(A)===!1,i=r===!1?A:A.DEF,u=new yl({definition:[],idx:e,ignoreAmbiguities:r&&A.IGNORE_AMBIGUITIES===!0});if(pr(A,"MAX_LOOKAHEAD"))u.maxLookahead=A.MAX_LOOKAHEAD;let a=BVA(i,(n)=>eh(n.GATE));return u.hasPredicates=a,t.definition.push(u),Rr(i,(n)=>{let o=new ml({definition:[]});if(u.definition.push(o),pr(n,"IGNORE_AMBIGUITIES"))o.ignoreAmbiguities=n.IGNORE_AMBIGUITIES;else if(pr(n,"GATE"))o.ignoreAmbiguities=!0;this.recordingProdStack.push(o),n.ALT.call(this),this.recordingProdStack.pop()}),EJ}function t0A(A){return A===0?"":`${A}`}function ux(A){if(A<0||A>LPA){let e=Error(`Invalid DSL Method idx value: <${A}>
Idx value must be a none negative value smaller than ${LPA+1}`);throw e.KNOWN_RECORDER_ERROR=!0,e}}function AXA(A,e){e.forEach((t)=>{let r=t.prototype;Object.getOwnPropertyNames(r).forEach((i)=>{if(i==="constructor")return;let u=Object.getOwnPropertyDescriptor(r,i);if(u&&(u.get||u.set))Object.defineProperty(A.prototype,i,u);else A.prototype[i]=t.prototype[i]})})}function r0A(A=void 0){return function(){return A}}function eXA(A,e){var t=-1,r=A==null?0:A.length,i=Array(r);while(++t<r)i[t]=e(A[t],t,A);return i}function rXA(){this.__data__=[],this.size=0}function iXA(A,e){return A===e||A!==A&&e!==e}function aXA(A,e){var t=A.length;while(t--)if(uXA(A[t][0],e))return t;return-1}function nXA(A){var e=this.__data__,t=dJ(e,A);if(t<0)return!1;var r=e.length-1;if(t==r)e.pop();else ovt.call(e,t,1);return--this.size,!0}function oXA(A){var e=this.__data__,t=dJ(e,A);return t<0?void 0:e[t][1]}function sXA(A){return dJ(this.__data__,A)>-1}function lXA(A,e){var t=this.__data__,r=dJ(t,A);if(r<0)++this.size,t.push([A,e]);else t[r][1]=e;return this}function z3(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function gXA(){this.__data__=new IJ,this.size=0}function cXA(A){var e=this.__data__,t=e.delete(A);return this.size=e.size,t}function CXA(A){return this.__data__.get(A)}function BXA(A){return this.__data__.has(A)}function IXA(A){var e=fvt.call(A,aF),t=A[aF];try{A[aF]=void 0;var r=!0}catch(u){}var i=mvt.call(A);if(r)if(e)A[aF]=t;else delete A[aF];return i}function hXA(A){return wvt.call(A)}function QXA(A){if(A==null)return A===void 0?kvt:vvt;return RPA&&RPA in Object(A)?Dvt(A):bvt(A)}function pXA(A){var e=typeof A;return A!=null&&(e=="object"||e=="function")}function fXA(A){if(!DlA(A))return!1;var e=u6(A);return e==xvt||e==Svt||e==Fvt||e==Lvt}function DXA(A){return!!NPA&&NPA in A}function yXA(A){if(A!=null){try{return Uvt.call(A)}catch(e){}try{return A+""}catch(e){}}return""}function wXA(A){if(!DlA(A)||Nvt(A))return!1;var e=mXA(A)?Ovt:Tvt;return e.test(Z3(A))}function bXA(A,e){return A==null?void 0:A[e]}function vXA(A,e){var t=_vt(A,e);return Pvt(t)?t:void 0}function kXA(){this.__data__=nx?nx(null):{},this.size=0}function FXA(A){var e=this.has(A)&&delete this.__data__[A];return this.size-=e?1:0,e}function xXA(A){var e=this.__data__;if(nx){var t=e[A];return t===Vvt?void 0:t}return Xvt.call(e,A)?e[A]:void 0}function SXA(A){var e=this.__data__;return nx?e[A]!==void 0:ekt.call(e,A)}function LXA(A,e){var t=this.__data__;return this.size+=this.has(A)?0:1,t[A]=nx&&e===void 0?rkt:e,this}function V3(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function RXA(){this.size=0,this.__data__={hash:new GPA,map:new(ax||IJ),string:new GPA}}function NXA(A){var e=typeof A;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?A!=="__proto__":A===null}function GXA(A,e){var t=A.__data__;return akt(e)?t[typeof e=="string"?"string":"hash"]:t.map}function UXA(A){var e=hJ(this,A).delete(A);return this.size-=e?1:0,e}function MXA(A){return hJ(this,A).get(A)}function TXA(A){return hJ(this,A).has(A)}function YXA(A,e){var t=hJ(this,A),r=t.size;return t.set(A,e),this.size+=t.size==r?0:1,this}function j3(A){var e=-1,t=A==null?0:A.length;this.clear();while(++e<t){var r=A[e];this.set(r[0],r[1])}}function HXA(A,e){var t=this.__data__;if(t instanceof IJ){var r=t.__data__;if(!ax||r.length<gkt-1)return r.push([A,e]),this.size=++t.size,this;t=this.__data__=new QJ(r)}return t.set(A,e),this.size=t.size,this}function X3(A){var e=this.__data__=new IJ(A);this.size=e.size}function KXA(A){return this.__data__.set(A,Ckt),this}function JXA(A){return this.__data__.has(A)}function ox(A){var e=-1,t=A==null?0:A.length;this.__data__=new QJ;while(++e<t)this.add(A[e])}function PXA(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A))return!0;return!1}function _XA(A,e){return A.has(e)}function qXA(A,e,t,r,i,u){var a=t&Ikt,n=A.length,o=e.length;if(n!=o&&!(a&&o>n))return!1;var s=u.get(A),l=u.get(e);if(s&&l)return s==e&&l==A;var g=-1,C=!0,B=t&hkt?new OXA:void 0;u.set(A,e),u.set(e,A);while(++g<n){var E=A[g],d=e[g];if(r)var I=a?r(d,E,g,e,A,u):r(E,d,g,A,e,u);if(I!==void 0){if(I)continue;C=!1;break}if(B){if(!dkt(e,function(h,Q){if(!WXA(B,Q)&&(E===h||i(E,h,t,r,u)))return B.push(Q)})){C=!1;break}}else if(!(E===d||i(E,d,t,r,u))){C=!1;break}}return u.delete(A),u.delete(e),C}function ZXA(A){var e=-1,t=Array(A.size);return A.forEach(function(r,i){t[++e]=[i,r]}),t}function VXA(A){var e=-1,t=Array(A.size);return A.forEach(function(r){t[++e]=r}),t}function jXA(A,e,t,r,i,u,a){switch(t){case Rkt:if(A.byteLength!=e.byteLength||A.byteOffset!=e.byteOffset)return!1;A=A.buffer,e=e.buffer;case Lkt:if(A.byteLength!=e.byteLength||!u(new UPA(A),new UPA(e)))return!1;return!0;case Dkt:case ykt:case vkt:return uXA(+A,+e);case wkt:return A.name==e.name&&A.message==e.message;case kkt:case xkt:return A==e+"";case bkt:var n=pkt;case Fkt:var o=r&fkt;if(n||(n=ylA),A.size!=e.size&&!o)return!1;var s=a.get(A);if(s)return s==e;r|=mkt,a.set(A,e);var l=zXA(n(A),n(e),r,i,u,a);return a.delete(A),l;case Skt:if(pnA)return pnA.call(A)==pnA.call(e)}return!1}function XXA(A,e){var t=-1,r=e.length,i=A.length;while(++t<r)A[i+t]=e[t];return A}function A$A(A,e,t){var r=e(A);return xs(A)?r:$XA(r,t(A))}function e$A(A,e){var t=-1,r=A==null?0:A.length,i=0,u=[];while(++t<r){var a=A[t];if(e(a,t,A))u[i++]=a}return u}function r$A(){return[]}function i$A(A,e){var t=-1,r=Array(A);while(++t<A)r[t]=e(t);return r}function u$A(A){return A!=null&&typeof A=="object"}function a$A(A){return Zw(A)&&u6(A)==Okt}function o$A(){return!1}function l$A(A,e){var t=typeof A;return e=e==null?jkt:e,!!e&&(t=="number"||t!="symbol"&&Xkt.test(A))&&(A>-1&&A%1==0&&A<e)}function c$A(A){return typeof A=="number"&&A>-1&&A%1==0&&A<=$kt}function C$A(A){return Zw(A)&&wlA(A.length)&&!!ra[u6(A)]}function B$A(A){return function(e){return A(e)}}function d$A(A,e){var t=xs(A),r=!t&&pJ(A),i=!t&&!r&&KH(A),u=!t&&!r&&!i&&blA(A),a=t||r||i||u,n=a?Jkt(A.length,String):[],o=n.length;for(var s in A)if((e||xFt.call(A,s))&&!(a&&(s=="length"||i&&(s=="offset"||s=="parent")||u&&(s=="buffer"||s=="byteLength"||s=="byteOffset")||g$A(s,o))))n.push(s);return n}function I$A(A){var e=A&&A.constructor,t=typeof e=="function"&&e.prototype||LFt;return A===t}function Q$A(A,e){return function(t){return A(e(t))}}function p$A(A){if(!h$A(A))return GFt(A);var e=[];for(var t in Object(A))if(MFt.call(A,t)&&t!="constructor")e.push(t);return e}function m$A(A){return A!=null&&wlA(A.length)&&!mXA(A)}function D$A(A){return fJ(A)?SFt(A):f$A(A)}function y$A(A){return Ukt(A,vlA,Kkt)}function w$A(A,e,t,r,i,u){var a=t&TFt,n=PPA(A),o=n.length,s=PPA(e),l=s.length;if(o!=l&&!a)return!1;var g=o;while(g--){var C=n[g];if(!(a?C in e:HFt.call(e,C)))return!1}var B=u.get(A),E=u.get(e);if(B&&E)return B==e&&E==A;var d=!0;u.set(A,e),u.set(e,A);var I=a;while(++g<o){C=n[g];var h=A[C],Q=e[C];if(r)var p=a?r(Q,h,C,e,A,u):r(h,Q,C,A,e,u);if(!(p===void 0?h===Q||i(h,Q,t,r,u):p)){d=!1;break}I||(I=C=="constructor")}if(d&&!I){var m=A.constructor,f=e.constructor;if(m!=f&&(("constructor"in A)&&("constructor"in e))&&!(typeof m=="function"&&m instanceof m&&typeof f=="function"&&f instanceof f))d=!1}return u.delete(A),u.delete(e),d}function b$A(A,e,t,r,i,u){var a=xs(A),n=xs(e),o=a?jPA:n0A(A),s=n?jPA:n0A(e);o=o==VPA?xY:o,s=s==VPA?xY:s;var l=o==xY,g=s==xY,C=o==s;if(C&&KH(A)){if(!KH(e))return!1;a=!0,l=!1}if(C&&!l)return u||(u=new uH),a||blA(A)?zXA(A,e,t,r,i,u):Nkt(A,e,o,t,r,i,u);if(!(t&XFt)){var B=l&&XPA.call(A,"__wrapped__"),E=g&&XPA.call(e,"__wrapped__");if(B||E){var d=B?A.value():A,I=E?e.value():e;return u||(u=new uH),i(d,I,t,r,u)}}if(!C)return!1;return u||(u=new uH),KFt(A,e,t,r,i,u)}function klA(A,e,t,r,i){if(A===e)return!0;if(A==null||e==null||!Zw(A)&&!Zw(e))return A!==A&&e!==e;return Axt(A,e,t,r,klA,i)}function k$A(A,e,t,r){var i=t.length,u=i,a=!r;if(A==null)return!u;A=Object(A);while(i--){var n=t[i];if(a&&n[2]?n[1]!==A[n[0]]:!(n[0]in A))return!1}while(++i<u){n=t[i];var o=n[0],s=A[o],l=n[1];if(a&&n[2]){if(s===void 0&&!(o in A))return!1}else{var g=new uH;if(r)var C=r(s,l,o,A,e,g);if(!(C===void 0?v$A(l,s,ext|txt,r,g):C))return!1}}return!0}function F$A(A){return A===A&&!DlA(A)}function S$A(A){var e=vlA(A),t=e.length;while(t--){var r=e[t],i=A[r];e[t]=[r,i,x$A(i)]}return e}function L$A(A,e){return function(t){if(t==null)return!1;return t[A]===e&&(e!==void 0||(A in Object(t)))}}function N$A(A){var e=ixt(A);if(e.length==1&&e[0][2])return R$A(e[0][0],e[0][1]);return function(t){return t===A||rxt(t,A,e)}}function G$A(A){return typeof A=="symbol"||Zw(A)&&u6(A)==axt}function U$A(A,e){if(xs(A))return!1;var t=typeof A;if(t=="number"||t=="symbol"||t=="boolean"||A==null||mJ(A))return!0;return oxt.test(A)||!nxt.test(A)||e!=null&&A in Object(e)}function DJ(A,e){if(typeof A!="function"||e!=null&&typeof e!="function")throw TypeError(sxt);var t=G(function(){var r=arguments,i=e?e.apply(this,r):r[0],u=t.cache;if(u.has(i))return u.get(i);var a=A.apply(this,r);return t.cache=u.set(i,a)||u,a},"memoized");return t.cache=new(DJ.Cache||QJ),t}function M$A(A){var e=lxt(A,function(r){if(t.size===gxt)t.clear();return r}),t=e.cache;return e}function xlA(A){if(typeof A=="string")return A;if(xs(A))return tXA(A,xlA)+"";if(mJ(A))return A_A?A_A.call(A):"";var e=A+"";return e=="0"&&1/A==-Ixt?"-0":e}function T$A(A){return A==null?"":hxt(A)}function Y$A(A,e){if(xs(A))return A;return FlA(A,e)?[A]:dxt(Qxt(A))}function K$A(A){if(typeof A=="string"||mJ(A))return A;var e=A+"";return e=="0"&&1/A==-pxt?"-0":e}function J$A(A,e){e=H$A(e,A);var t=0,r=e.length;while(A!=null&&t<r)A=A[yJ(e[t++])];return t&&t==r?A:void 0}function P$A(A,e,t){var r=A==null?void 0:O$A(A,e);return r===void 0?t:r}function _$A(A,e){return A!=null&&e in Object(A)}function W$A(A,e,t){e=H$A(e,A);var r=-1,i=e.length,u=!1;while(++r<i){var a=yJ(e[r]);if(!(u=A!=null&&t(A,a)))break;A=A[a]}if(u||++r!=i)return u;return i=A==null?0:A.length,!!i&&wlA(i)&&g$A(a,i)&&(xs(A)||pJ(A))}function q$A(A,e){return A!=null&&Dxt(A,e,mxt)}function z$A(A,e){if(FlA(A)&&x$A(e))return R$A(yJ(A),e);return function(t){var r=fxt(t,A);return r===void 0&&r===e?yxt(t,A):v$A(e,r,wxt|bxt)}}function Z$A(A){return A}function V$A(A){return function(e){return e==null?void 0:e[A]}}function j$A(A){return function(e){return O$A(e,A)}}function X$A(A){return FlA(A)?kxt(yJ(A)):Fxt(A)}function $$A(A){if(typeof A=="function")return A;if(A==null)return SlA;if(typeof A=="object")return xs(A)?vxt(A[0],A[1]):uxt(A);return xxt(A)}function AAe(A){return function(e,t,r){var i=-1,u=Object(e),a=r(e),n=a.length;while(n--){var o=a[A?n:++i];if(t(u[o],o,u)===!1)break}return e}}function eAe(A,e){return A&&Rxt(A,e,vlA)}function tAe(A,e){return function(t,r){if(t==null)return t;if(!fJ(t))return A(t,r);var i=t.length,u=e?i:-1,a=Object(t);while(e?u--:++u<i)if(r(a[u],u,a)===!1)break;return t}}function rAe(A,e){var t=-1,r=fJ(A)?Array(A.length):[];return bJ(A,function(i,u,a){r[++t]=e(i,u,a)}),r}function iAe(A,e){var t=xs(A)?tXA:Mxt;return t(A,wJ(e,3))}function uAe(A,e){var t=[];return bJ(A,function(r,i,u){if(e(r,i,u))t.push(r)}),t}function aAe(A,e){var t=xs(A)?t$A:Txt;return t(A,wJ(e,3))}function R3(A,e,t){return`${A.name}_${e}_${t}`}function gAe(A){let e={decisionMap:{},decisionStates:[],ruleToStartState:new Map,ruleToStopState:new Map,states:[]};cAe(e,A);let t=A.length;for(let r=0;r<t;r++){let i=A[r],u=X4(e,i,i);if(u===void 0)continue;DAe(e,i,u)}return e}function cAe(A,e){let t=e.length;for(let r=0;r<t;r++){let i=e[r],u=co(A,i,void 0,{type:Hxt}),a=co(A,i,void 0,{type:Rx});u.stop=a,A.ruleToStartState.set(i,u),A.ruleToStopState.set(i,a)}}function GlA(A,e,t){if(t instanceof ia)return vJ(A,e,t.terminalType,t);else if(t instanceof ks)return mAe(A,e,t);else if(t instanceof yl)return IAe(A,e,t);else if(t instanceof B0)return hAe(A,e,t);else if(t instanceof Va)return CAe(A,e,t);else if(t instanceof Dl)return BAe(A,e,t);else if(t instanceof Ig)return EAe(A,e,t);else if(t instanceof hg)return dAe(A,e,t);else return X4(A,e,t)}function CAe(A,e,t){let r=co(A,e,t,{type:oAe});rh(A,r);let i=$3(A,e,r,t,X4(A,e,t));return MlA(A,e,t,i)}function BAe(A,e,t){let r=co(A,e,t,{type:oAe});rh(A,r);let i=$3(A,e,r,t,X4(A,e,t)),u=vJ(A,e,t.separator,t);return MlA(A,e,t,i,u)}function EAe(A,e,t){let r=co(A,e,t,{type:nAe});rh(A,r);let i=$3(A,e,r,t,X4(A,e,t));return UlA(A,e,t,i)}function dAe(A,e,t){let r=co(A,e,t,{type:nAe});rh(A,r);let i=$3(A,e,r,t,X4(A,e,t)),u=vJ(A,e,t.separator,t);return UlA(A,e,t,i,u)}function IAe(A,e,t){let r=co(A,e,t,{type:W4});rh(A,r);let i=OI(t.definition,(a)=>GlA(A,e,a));return $3(A,e,r,t,...i)}function hAe(A,e,t){let r=co(A,e,t,{type:W4});rh(A,r);let i=$3(A,e,r,t,X4(A,e,t));return QAe(A,e,t,i)}function X4(A,e,t){let r=Yxt(OI(t.definition,(i)=>GlA(A,e,i)),(i)=>i!==void 0);if(r.length===1)return r[0];else if(r.length===0)return;else return fAe(A,r)}function UlA(A,e,t,r,i){let{left:u,right:a}=r,n=co(A,e,t,{type:Pxt});rh(A,n);let o=co(A,e,t,{type:sAe});if(u.loopback=n,o.loopback=n,A.decisionMap[R3(e,i?"RepetitionMandatoryWithSeparator":"RepetitionMandatory",t.idx)]=n,dn(a,n),i===void 0)dn(n,u),dn(n,o);else dn(n,o),dn(n,i.left),dn(i.right,u);return{left:u,right:o}}function MlA(A,e,t,r,i){let{left:u,right:a}=r,n=co(A,e,t,{type:Oxt});rh(A,n);let o=co(A,e,t,{type:sAe}),s=co(A,e,t,{type:Jxt});if(n.loopback=s,o.loopback=s,dn(n,u),dn(n,o),dn(a,s),i!==void 0)dn(s,o),dn(s,i.left),dn(i.right,u);else dn(s,n);return A.decisionMap[R3(e,i?"RepetitionWithSeparator":"Repetition",t.idx)]=n,{left:n,right:o}}function QAe(A,e,t,r){let{left:i,right:u}=r;return dn(i,u),A.decisionMap[R3(e,"Option",t.idx)]=i,r}function rh(A,e){return A.decisionStates.push(e),e.decision=A.decisionStates.length-1,e.decision}function $3(A,e,t,r,...i){let u=co(A,e,r,{type:Kxt,start:t});t.end=u;for(let n of i)if(n!==void 0)dn(t,n.left),dn(n.right,u);else dn(t,u);let a={left:t,right:u};return A.decisionMap[R3(e,pAe(r),r.idx)]=t,a}function pAe(A){if(A instanceof yl)return"Alternation";else if(A instanceof B0)return"Option";else if(A instanceof Va)return"Repetition";else if(A instanceof Dl)return"RepetitionWithSeparator";else if(A instanceof Ig)return"RepetitionMandatory";else if(A instanceof hg)return"RepetitionMandatoryWithSeparator";else throw Error("Invalid production type encountered")}function fAe(A,e){let t=e.length;for(let u=0;u<t-1;u++){let a=e[u],n;if(a.left.transitions.length===1)n=a.left.transitions[0];let o=n instanceof NlA,s=n,l=e[u+1].left;if(a.left.type===W4&&a.right.type===W4&&n!==void 0&&(o&&s.followState===a.right||n.target===a.right)){if(o)s.followState=l;else n.target=l;yAe(A,a.right)}else dn(a.right,l)}let r=e[0],i=e[t-1];return{left:r.left,right:i.right}}function vJ(A,e,t,r){let i=co(A,e,r,{type:W4}),u=co(A,e,r,{type:W4});return kJ(i,new RlA(u,t)),{left:i,right:u}}function mAe(A,e,t){let r=t.referencedRule,i=A.ruleToStartState.get(r),u=co(A,e,t,{type:W4}),a=co(A,e,t,{type:W4}),n=new NlA(i,r,a);return kJ(u,n),{left:u,right:a}}function DAe(A,e,t){let r=A.ruleToStartState.get(e);dn(r,t.left);let i=A.ruleToStopState.get(e);return dn(t.right,i),{left:r,right:i}}function dn(A,e){let t=new lAe(e);kJ(A,t)}function co(A,e,t,r){let i=Object.assign({atn:A,production:t,epsilonOnlyTransitions:!1,rule:e,transitions:[],nextTokenWithinRule:[],stateNumber:A.states.length},r);return A.states.push(i),i}function kJ(A,e){if(A.transitions.length===0)A.epsilonOnlyTransitions=e.isEpsilon();A.transitions.push(e)}function yAe(A,e){A.states.splice(A.states.indexOf(e),1)}function TlA(A,e=!0){return`${e?`a${A.alt}`:""}s${A.state.stateNumber}:${A.stack.map((t)=>t.stateNumber.toString()).join("_")}`}function wAe(A,e,t){var r=-1,i=A.length;while(++r<i){var u=A[r],a=e(u);if(a!=null&&(n===void 0?a===a&&!mJ(a):t(a,n)))var n=a,o=u}return o}function bAe(A,e){return A<e}function vAe(A){return A&&A.length?_xt(A,SlA,Wxt):void 0}function kAe(A){return xs(A)||pJ(A)||!!(e_A&&A&&A[e_A])}function YlA(A,e,t,r,i){var u=-1,a=A.length;t||(t=zxt),i||(i=[]);while(++u<a){var n=A[u];if(e>0&&t(n))if(e>1)YlA(n,e-1,t,r,i);else $XA(i,n);else if(!r)i[i.length]=n}return i}function xAe(A,e){return FAe(OI(A,e),1)}function SAe(A,e,t,r){var i=A.length,u=t+(r?1:-1);while(r?u--:++u<i)if(e(A[u],u,A))return u;return-1}function LAe(A){return A!==A}function RAe(A,e,t){var r=t-1,i=A.length;while(++r<i)if(A[r]===e)return r;return-1}function NAe(A,e,t){return e===e?Xxt(A,e,t):Vxt(A,jxt,t)}function GAe(A,e){var t=A==null?0:A.length;return!!t&&$xt(A,e,0)>-1}function UAe(A,e,t){var r=-1,i=A==null?0:A.length;while(++r<i)if(t(e,A[r]))return!0;return!1}function MAe(){}function TAe(A,e,t){var r=-1,i=A7t,u=A.length,a=!0,n=[],o=n;if(t)a=!1,i=e7t;else if(u>=a7t){var s=e?null:u7t(A);if(s)return ylA(s);a=!1,i=WXA,o=new OXA}else o=e?[]:n;A:while(++r<u){var l=A[r],g=e?e(l):l;if(l=t||l!==0?l:0,a&&g===g){var C=o.length;while(C--)if(o[C]===g)continue A;if(e)o.push(g);n.push(l)}else if(!i(o,g,t)){if(o!==n)o.push(g);n.push(l)}}return n}function YAe(A,e){return A&&A.length?n7t(A,wJ(e,2)):[]}function HAe(A){var e=A==null?0:A.length;return e?FAe(A,1):[]}function KAe(A,e){var t=-1,r=A==null?0:A.length;while(++t<r)if(e(A[t],t,A)===!1)break;return A}function JAe(A){return typeof A=="function"?A:SlA}function OAe(A,e){var t=xs(A)?l7t:bJ;return t(A,g7t(e))}function PAe(A){if(A==null)return!0;if(fJ(A)&&(xs(A)||typeof A=="string"||typeof A.splice=="function"||KH(A)||blA(A)||pJ(A)))return!A.length;var e=n0A(A);if(e==c7t||e==C7t)return!A.size;if(h$A(A))return!f$A(A).length;for(var t in A)if(E7t.call(A,t))return!1;return!0}function _Ae(A,e,t,r){var i=-1,u=A==null?0:A.length;if(r&&u)t=A[++i];while(++i<u)t=e(t,A[i],i,A);return t}function WAe(A,e,t,r,i){return i(A,function(u,a,n){t=r?(r=!1,u):e(t,u,a,n)}),t}function qAe(A,e,t){var r=xs(A)?I7t:h7t,i=arguments.length<3;return r(A,wJ(e,4),t,i,bJ)}function zAe(A,e){let t={};return(r)=>{let i=r.toString(),u=t[i];if(u!==void 0)return u;else return u={atnStartState:A,decision:e,states:{}},t[i]=u,u}}function s0A(A,e=!0){let t=new Set;for(let r of A){let i=new Set;for(let u of r){if(u===void 0)if(e)break;else return!1;let a=[u.tokenTypeIdx].concat(u.categoryMatches);for(let n of a)if(t.has(n)){if(!i.has(n))return!1}else t.add(n),i.add(n)}}return!0}function VAe(A){let e=A.decisionStates.length,t=Array(e);for(let r=0;r<e;r++)t[r]=zAe(A.decisionStates[r],r);return t}function aH(A,e,t,r){let i=A[e](t),u=i.start;if(u===void 0){let n=nee(i.atnStartState);u=KlA(i,HlA(n)),i.start=u}return jAe.apply(this,[i,u,t,r])}function jAe(A,e,t,r){let i=e,u=1,a=[],n=this.LA(u++);while(!0){let o=ree(i,n);if(o===void 0)o=XAe.apply(this,[A,i,n,u,t,r]);if(o===JH)return tee(a,i,n);if(o.isAcceptState===!0)return o.prediction;i=o,a.push(n),n=this.LA(u++)}}function XAe(A,e,t,r,i,u){let a=iee(e.configs,t,i);if(a.size===0)return l0A(A,e,t,JH),JH;let n=HlA(a),o=aee(a,i);if(o!==void 0)n.isAcceptState=!0,n.prediction=o,n.configs.uniqueAlt=o;else if(gee(a)){let s=qxt(a.alts);n.isAcceptState=!0,n.prediction=s,n.configs.uniqueAlt=s,$Ae.apply(this,[A,r,a.alts,u])}return n=l0A(A,e,t,n),n}function $Ae(A,e,t,r){let i=[];for(let s=1;s<=e;s++)i.push(this.LA(s).tokenType);let u=A.atnStartState,{rule:a,production:n}=u,o=Aee({topLevelRule:a,ambiguityIndices:t,production:n,prefixPath:i});r(o)}function Aee(A){let e=OI(A.prefixPath,(i)=>k3(i)).join(", "),t=A.production.idx===0?"":A.production.idx,r=`Ambiguous Alternatives Detected: <${A.ambiguityIndices.join(", ")}> in <${eee(A.production)}${t}> inside <${A.topLevelRule.name}> Rule,
<${e}> may appears as a prefix path in all these alternatives.
`;return r=r+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
For Further details.`,r}function eee(A){if(A instanceof ks)return"SUBRULE";else if(A instanceof B0)return"OPTION";else if(A instanceof yl)return"OR";else if(A instanceof Ig)return"AT_LEAST_ONE";else if(A instanceof hg)return"AT_LEAST_ONE_SEP";else if(A instanceof Dl)return"MANY_SEP";else if(A instanceof Va)return"MANY";else if(A instanceof ia)return"CONSUME";else throw Error("non exhaustive match")}function tee(A,e,t){let r=Zxt(e.configs.elements,(u)=>u.state.transitions),i=o7t(r.filter((u)=>u instanceof RlA).map((u)=>u.tokenType),(u)=>u.tokenTypeIdx);return{actualToken:t,possibleTokenTypes:i,tokenPath:A}}function ree(A,e){return A.edges[e.tokenTypeIdx]}function iee(A,e,t){let r=new o0A,i=[];for(let a of A.elements){if(t.is(a.alt)===!1)continue;if(a.state.type===Rx){i.push(a);continue}let n=a.state.transitions.length;for(let o=0;o<n;o++){let s=a.state.transitions[o],l=uee(s,e);if(l!==void 0)r.add({state:l,alt:a.alt,stack:a.stack})}}let u;if(i.length===0&&r.size===1)u=r;if(u===void 0){u=new o0A;for(let a of r.elements)sx(a,u)}if(i.length>0&&!see(u))for(let a of i)u.add(a);return u}function uee(A,e){if(A instanceof RlA&&ClA(e,A.tokenType))return A.target;return}function aee(A,e){let t;for(let r of A.elements)if(e.is(r.alt)===!0){if(t===void 0)t=r.alt;else if(t!==r.alt)return}return t}function HlA(A){return{configs:A,edges:{},isAcceptState:!1,prediction:-1}}function l0A(A,e,t,r){return r=KlA(A,r),e.edges[t.tokenTypeIdx]=r,r}function KlA(A,e){if(e===JH)return e;let t=e.configs.key,r=A.states[t];if(r!==void 0)return r;return e.configs.finalize(),A.states[t]=e,e}function nee(A){let e=new o0A,t=A.transitions.length;for(let r=0;r<t;r++){let u={state:A.transitions[r].target,alt:r,stack:[]};sx(u,e)}return e}function sx(A,e){let t=A.state;if(t.type===Rx){if(A.stack.length>0){let i=[...A.stack],a={state:i.pop(),alt:A.alt,stack:i};sx(a,e)}else e.add(A);return}if(!t.epsilonOnlyTransitions)e.add(A);let r=t.transitions.length;for(let i=0;i<r;i++){let u=t.transitions[i],a=oee(A,u);if(a!==void 0)sx(a,e)}}function oee(A,e){if(e instanceof lAe)return{state:e.target,alt:A.alt,stack:A.stack};else if(e instanceof NlA){let t=[...A.stack,e.followState];return{state:e.target,alt:A.alt,stack:t}}return}function see(A){for(let e of A.elements)if(e.state.type===Rx)return!0;return!1}function lee(A){for(let e of A.elements)if(e.state.type!==Rx)return!1;return!0}function gee(A){if(lee(A))return!0;let e=cee(A.elements);return Cee(e)&&!Bee(e)}function cee(A){let e=new Map;for(let t of A){let r=TlA(t,!1),i=e.get(r);if(i===void 0)i={},e.set(r,i);i[t.alt]=!0}return e}function Cee(A){for(let e of Array.from(A.values()))if(Object.keys(e).length>1)return!0;return!1}function Bee(A){for(let e of Array.from(A.values()))if(Object.keys(e).length===1)return!0;return!1}function nH(A){return A.$type===PH}function xJ(A,e,t){return fee({parser:e,tokens:t,ruleNames:new Map},A),e}function fee(A,e){let t=_K(e,!1),r=Qu(e.rules).filter(vs).filter((u)=>t.has(u));for(let u of r){let a={...A,consume:1,optional:1,subrule:1,many:1,or:1};A.parser.rule(u,q4(a,u.definition))}let i=Qu(e.rules).filter(Pw).filter((u)=>t.has(u));for(let u of i)A.parser.rule(u,mee(A,u))}function mee(A,e){let t=e.call.rule.ref;if(!t)throw Error("Could not resolve reference to infix operator rule: "+e.call.rule.$refText);if(Ic(t))throw Error("Cannot use terminal rule in infix expression");let r=e.operators.precedences.flatMap((B)=>B.operators),i={$type:"Group",elements:[]},u={$container:i,$type:"Assignment",feature:"parts",operator:"+=",terminal:e.call},a={$container:i,$type:"Group",elements:[],cardinality:"*"};i.elements.push(u,a);let o={$container:a,$type:"Assignment",feature:"operators",operator:"+=",terminal:{$type:"Alternatives",elements:r}},s={...u,$container:a};a.elements.push(o,s);let g=r.map((B)=>A.tokens[B.value]).map((B,E)=>({ALT:G(()=>A.parser.consume(E,B,o),"ALT")})),C;return(B)=>{C??(C=SJ(A,t)),A.parser.subrule(0,C,!1,u,B),A.parser.many(0,{DEF:G(()=>{A.parser.alternatives(0,g),A.parser.subrule(1,C,!1,s,B)},"DEF")})}}function q4(A,e,t=!1){let r;if(WI(e))r=Fee(A,e);else if(O4(e))r=Dee(A,e);else if(_I(e))r=q4(A,e.terminal);else if(T3(e))r=WlA(A,e);else if(qI(e))r=yee(A,e);else if(UK(e))r=bee(A,e);else if(HK(e))r=vee(A,e);else if(Y3(e))r=kee(A,e);else if(Z0A(e)){let i=A.consume++;r=G(()=>A.parser.consume(i,_4,e),"method")}else throw new JK(e.$cstNode,`Unexpected element type: ${e.$type}`);return qlA(A,t?void 0:lx(e),r,e.cardinality)}function Dee(A,e){let t=x3(e);return()=>A.parser.action(t,e)}function yee(A,e){let t=e.rule.ref;if(M3(t)){let r=A.subrule++,i=vs(t)&&t.fragment,u=e.arguments.length>0?wee(t,e.arguments):()=>({}),a;return(n)=>{a??(a=SJ(A,t)),A.parser.subrule(r,a,i,e,u(n))}}else if(Ic(t)){let r=A.consume++,i=_H(A,t.name);return()=>A.parser.consume(r,i,e)}else if(!t)throw new JK(e.$cstNode,`Undefined rule: ${e.rule.$refText}`);else Z4(t)}function wee(A,e){if(e.some((r)=>r.calledByName)){let r=e.map((i)=>({parameterName:i.parameter?.ref?.name,predicate:vC(i.value)}));return(i)=>{let u={};for(let{parameterName:a,predicate:n}of r)if(a)u[a]=n(i);return u}}else{let r=e.map((i)=>vC(i.value));return(i)=>{let u={};for(let a=0;a<r.length;a++)if(a<A.parameters.length){let n=A.parameters[a].name,o=r[a];u[n]=o(i)}return u}}}function vC(A){if(z0A(A)){let e=vC(A.left),t=vC(A.right);return(r)=>e(r)||t(r)}else if(q0A(A)){let e=vC(A.left),t=vC(A.right);return(r)=>e(r)&&t(r)}else if(X0A(A)){let e=vC(A.value);return(t)=>!e(t)}else if($0A(A)){let e=A.parameter.ref.name;return(t)=>t!==void 0&&t[e]===!0}else if(_0A(A)){let e=Boolean(A.true);return()=>e}Z4(A)}function bee(A,e){if(e.elements.length===1)return q4(A,e.elements[0]);else{let t=[];for(let i of e.elements){let u={ALT:q4(A,i,!0)},a=lx(i);if(a)u.GATE=vC(a);t.push(u)}let r=A.or++;return(i)=>A.parser.alternatives(r,t.map((u)=>{let a={ALT:G(()=>u.ALT(i),"ALT")},n=u.GATE;if(n)a.GATE=()=>n(i);return a}))}}function vee(A,e){if(e.elements.length===1)return q4(A,e.elements[0]);let t=[];for(let n of e.elements){let o={ALT:q4(A,n,!0)},s=lx(n);if(s)o.GATE=vC(s);t.push(o)}let r=A.or++,i=G((n,o)=>{let s=o.getRuleStack().join("-");return`uGroup_${n}_${s}`},"idFunc"),u=G((n)=>A.parser.alternatives(r,t.map((o,s)=>{let l={ALT:G(()=>!0,"ALT")},g=A.parser;l.ALT=()=>{if(o.ALT(n),!g.isRecording()){let B=i(r,g);if(!g.unorderedGroups.get(B))g.unorderedGroups.set(B,[]);let E=g.unorderedGroups.get(B);if(typeof E?.[s]>"u")E[s]=!0}};let C=o.GATE;if(C)l.GATE=()=>C(n);else l.GATE=()=>!g.unorderedGroups.get(i(r,g))?.[s];return l})),"alternatives"),a=qlA(A,lx(e),u,"*");return(n)=>{if(a(n),!A.parser.isRecording())A.parser.unorderedGroups.delete(i(r,A.parser))}}function kee(A,e){let t=e.elements.map((r)=>q4(A,r));return(r)=>t.forEach((i)=>i(r))}function lx(A){if(Y3(A))return A.guardCondition;return}function WlA(A,e,t=e.terminal){if(!t){if(!e.type.ref)throw Error("Could not resolve reference to type: "+e.type.$refText);let i=ZK(e.type.ref)?.terminal;if(!i)throw Error("Could not find name assignment for type: "+x3(e.type.ref));return WlA(A,e,i)}else if(qI(t)&&vs(t.rule.ref)){let r=t.rule.ref,i=A.subrule++,u;return(a)=>{u??(u=SJ(A,r)),A.parser.subrule(i,u,!1,e,a)}}else if(qI(t)&&Ic(t.rule.ref)){let r=A.consume++,i=_H(A,t.rule.ref.name);return()=>A.parser.consume(r,i,e)}else if(WI(t)){let r=A.consume++,i=_H(A,t.value);return()=>A.parser.consume(r,i,e)}else throw Error("Could not build cross reference parser")}function Fee(A,e){let t=A.consume++,r=A.tokens[e.value];if(!r)throw Error("Could not find token for keyword: "+e.value);return()=>A.parser.consume(t,r,e)}function qlA(A,e,t,r){let i=e&&vC(e);if(!r)if(i){let u=A.or++;return(a)=>A.parser.alternatives(u,[{ALT:G(()=>t(a),"ALT"),GATE:G(()=>i(a),"GATE")},{ALT:r0A(),GATE:G(()=>!i(a),"GATE")}])}else return t;if(r==="*"){let u=A.many++;return(a)=>A.parser.many(u,{DEF:G(()=>t(a),"DEF"),GATE:i?()=>i(a):void 0})}else if(r==="+"){let u=A.many++;if(i){let a=A.or++;return(n)=>A.parser.alternatives(a,[{ALT:G(()=>A.parser.atLeastOne(u,{DEF:G(()=>t(n),"DEF")}),"ALT"),GATE:G(()=>i(n),"GATE")},{ALT:r0A(),GATE:G(()=>!i(n),"GATE")}])}else return(a)=>A.parser.atLeastOne(u,{DEF:G(()=>t(a),"DEF")})}else if(r==="?"){let u=A.optional++;return(a)=>A.parser.optional(u,{DEF:G(()=>t(a),"DEF"),GATE:i?()=>i(a):void 0})}else Z4(r)}function SJ(A,e){let t=xee(A,e),r=A.parser.getRule(t);if(!r)throw Error(`Rule "${t}" not found."`);return r}function xee(A,e){if(M3(e))return e.name;else if(A.ruleNames.has(e))return A.ruleNames.get(e);else{let t=e,r=t.$container,i=e.$type;while(!vs(r)){if(Y3(r)||UK(r)||HK(r))i=r.elements.indexOf(t).toString()+":"+i;t=r,r=r.$container}return i=r.name+":"+i,A.ruleNames.set(e,i),i}}function _H(A,e){let t=A.tokens[e];if(!t)throw Error(`Token "${e}" not found."`);return t}function zlA(A){let e=A.Grammar,t=A.parser.Lexer,r=new Qee(A);return xJ(e,r,t.definition),r.finalize(),r}function ZlA(A){let e=VlA(A);return e.finalize(),e}function VlA(A){let e=A.Grammar,t=A.parser.Lexer,r=new Iee(A);return xJ(e,r,t.definition)}function RJ(){return new Promise((A)=>{if(typeof setImmediate>"u")setTimeout(A,0);else setImmediate(A)})}function NJ(){return oH=performance.now(),new Wu.CancellationTokenSource}function XlA(A){See=A}function Am(A){return A===GE}async function Ko(A){if(A===Wu.CancellationToken.None)return;let e=performance.now();if(e-oH>=See)oH=e,await RJ(),oH=performance.now();if(A.isCancellationRequested)throw GE}function qH(A,e){if(A.length<=1)return A;let t=A.length/2|0,r=A.slice(0,t),i=A.slice(t);qH(r,e),qH(i,e);let u=0,a=0,n=0;while(u<r.length&&a<i.length)if(e(r[u],i[a])<=0)A[n++]=r[u++];else A[n++]=i[a++];while(u<r.length)A[n++]=r[u++];while(a<i.length)A[n++]=i[a++];return A}function g0A(A,e,t=0){let r=e?[t]:[];for(let i=0;i<A.length;i++){let u=A.charCodeAt(i);if($lA(u)){if(u===13&&i+1<A.length&&A.charCodeAt(i+1)===10)i++;r.push(t+i+1)}}return r}function $lA(A){return A===13||A===10}function AgA(A){let{start:e,end:t}=A;if(e.line>t.line||e.line===t.line&&e.character>t.character)return{start:t,end:e};return A}function Lee(A){let e=AgA(A.range);if(e!==A.range)return{newText:A.newText,range:e};return A}function tgA(A){return typeof A.name==="string"}function ugA(A){return typeof A.$comment==="string"}function C0A(A){return typeof A==="object"&&!!A&&(("$ref"in A)||("$error"in A))}function y3(A){return{code:A}}function agA(A){if(A.range)return A.range;let e;if(typeof A.property==="string")e=WK(A.node.$cstNode,A.property,A.index);else if(typeof A.keyword==="string")e=FsA(A.node.$cstNode,A.keyword,A.index);if(e??(e=A.node.$cstNode),!e)return{start:{line:0,character:0},end:{line:0,character:0}};return e.range}function YF(A){switch(A){case"error":return 1;case"warning":return 2;case"info":return 3;case"hint":return 4;default:throw Error("Invalid diagnostic severity: "+A)}}function ngA(A){switch(A){case"error":return y3(Cc.LexingError);case"warning":return y3(Cc.LexingWarning);case"info":return y3(Cc.LexingInfo);case"hint":return y3(Cc.LexingHint);default:throw Error("Invalid diagnostic severity: "+A)}}function TJ(A){return Array.isArray(A)&&(A.length===0||("name"in A[0]))}function YJ(A){return A&&"modes"in A&&"defaultMode"in A}function VH(A){return!TJ(A)&&!YJ(A)}function lgA(A,e,t){let r,i;if(typeof A==="string")i=e,r=t;else i=A.range.start,r=e;if(!i)i=su.create(0,0);let u=cgA(A),a=HJ(r),n=tte({lines:u,position:i,options:a});return ute({index:0,tokens:n,position:i})}function ggA(A,e){let t=HJ(e),r=cgA(A);if(r.length===0)return!1;let i=r[0],u=r[r.length-1],{start:a,end:n}=t;return Boolean(a?.exec(i))&&Boolean(n?.exec(u))}function cgA(A){let e="";if(typeof A==="string")e=A;else e=A.text;return e.split(aWA)}function tte(A){let e=[],t=A.position.line,r=A.position.character;for(let i=0;i<A.lines.length;i++){let u=i===0,a=i===A.lines.length-1,n=A.lines[i],o=0;if(u&&A.options.start){let l=A.options.start?.exec(n);if(l)o=l.index+l[0].length}else{let l=A.options.line?.exec(n);if(l)o=l.index+l[0].length}if(a){let l=A.options.end?.exec(n);if(l)n=n.substring(0,l.index)}if(n=n.substring(0,ite(n)),jH(n,o)>=n.length){if(e.length>0){let l=su.create(t,r);e.push({type:"break",content:"",range:mi.create(l,l)})}}else{a_A.lastIndex=o;let l=a_A.exec(n);if(l){let g=l[0],C=l[1],B=su.create(t,r+o),E=su.create(t,r+o+g.length);e.push({type:"tag",content:C,range:mi.create(B,E)}),o+=g.length,o=jH(n,o)}if(o<n.length){let g=n.substring(o),C=Array.from(g.matchAll(w7t));e.push(...rte(C,g,t,r+o))}}t++,r=0}if(e.length>0&&e[e.length-1].type==="break")return e.slice(0,-1);return e}function rte(A,e,t,r){let i=[];if(A.length===0){let u=su.create(t,r),a=su.create(t,r+e.length);i.push({type:"text",content:e,range:mi.create(u,a)})}else{let u=0;for(let n of A){let o=n.index,s=e.substring(u,o);if(s.length>0)i.push({type:"text",content:e.substring(u,o),range:mi.create(su.create(t,u+r),su.create(t,o+r))});let l=s.length+1,g=n[1];if(i.push({type:"inline-tag",content:g,range:mi.create(su.create(t,u+l+r),su.create(t,u+l+g.length+r))}),l+=g.length,n.length===4){l+=n[2].length;let C=n[3];i.push({type:"text",content:C,range:mi.create(su.create(t,u+l+r),su.create(t,u+l+C.length+r))})}else i.push({type:"text",content:"",range:mi.create(su.create(t,u+l+r),su.create(t,u+l+r))});u=o+n[0].length}let a=e.substring(u);if(a.length>0)i.push({type:"text",content:a,range:mi.create(su.create(t,u+r),su.create(t,u+r+a.length))})}return i}function jH(A,e){let t=A.substring(e).match(b7t);if(t)return e+t.index;else return A.length}function ite(A){let e=A.match(v7t);if(e&&typeof e.index==="number")return e.index;return}function ute(A){let e=su.create(A.position.line,A.position.character);if(A.tokens.length===0)return new n_A([],mi.create(e,e));let t=[];while(A.index<A.tokens.length){let u=ate(A,t[t.length-1]);if(u)t.push(u)}let r=t[0]?.range.start??e,i=t[t.length-1]?.range.end??e;return new n_A(t,mi.create(r,i))}function ate(A,e){let t=A.tokens[A.index];if(t.type==="tag")return BgA(A,!1);else if(t.type==="text"||t.type==="inline-tag")return CgA(A);else{nte(t,e),A.index++;return}}function nte(A,e){if(e){let t=new gte("",A.range);if("inlines"in e)e.inlines.push(t);else e.content.inlines.push(t)}}function CgA(A){let e=A.tokens[A.index],t=e,r=e,i=[];while(e&&e.type!=="break"&&e.type!=="tag")i.push(ote(A)),r=e,e=A.tokens[A.index];return new B0A(i,mi.create(t.range.start,r.range.end))}function ote(A){if(A.tokens[A.index].type==="inline-tag")return BgA(A,!0);else return EgA(A)}function BgA(A,e){let t=A.tokens[A.index++],r=t.content.substring(1);if(A.tokens[A.index]?.type==="text")if(e){let u=EgA(A);return new DnA(r,new B0A([u],u.range),e,mi.create(t.range.start,u.range.end))}else{let u=CgA(A);return new DnA(r,u,e,mi.create(t.range.start,u.range.end))}else{let u=t.range;return new DnA(r,new B0A([],u),e,u)}}function EgA(A){let e=A.tokens[A.index++];return new gte(e.content,e.range)}function HJ(A){if(!A)return HJ({start:"/**",end:"*/",line:"*"});let{start:e,end:t,line:r}=A;return{start:sH(e,!0),end:sH(t,!1),line:sH(r,!0)}}function sH(A,e){if(typeof A==="string"||typeof A==="object"){let t=typeof A==="string"?$w(A):A.source;if(e)return new RegExp(`^\\s*${t}`);else return new RegExp(`\\s*${t}\\s*$`)}else return A}function ste(A,e,t){if(A==="linkplain"||A==="linkcode"||A==="link"){let r=e.indexOf(" "),i=e;if(r>0){let a=jH(e,r);i=e.substring(a),e=e.substring(0,r)}if(A==="linkcode"||A==="link"&&t.link==="code")i=`\`${i}\``;return t.renderLink?.(e,i)??lte(e,i)}return}function lte(A,e){try{return Cg.parse(A,!0),`[${e}](${A})`}catch{return A}}function E0A(A){if(A.endsWith(`
`))return`
`;else return`
`}function xi(A){return{documentation:{CommentProvider:G((e)=>new Cte(e),"CommentProvider"),DocumentationProvider:G((e)=>new cte(e),"DocumentationProvider")},parser:{AsyncParser:G((e)=>new Bte(e),"AsyncParser"),GrammarConfig:G((e)=>MsA(e),"GrammarConfig"),LangiumParser:G((e)=>ZlA(e),"LangiumParser"),CompletionParser:G((e)=>zlA(e),"CompletionParser"),ValueConverter:G(()=>new jlA,"ValueConverter"),TokenBuilder:G(()=>new LJ,"TokenBuilder"),Lexer:G((e)=>new sgA(e),"Lexer"),ParserErrorMessageProvider:G(()=>new _lA,"ParserErrorMessageProvider"),LexerErrorMessageProvider:G(()=>new ete,"LexerErrorMessageProvider")},workspace:{AstNodeLocator:G(()=>new Vee,"AstNodeLocator"),AstNodeDescriptionProvider:G((e)=>new zee(e),"AstNodeDescriptionProvider"),ReferenceDescriptionProvider:G((e)=>new Zee(e),"ReferenceDescriptionProvider")},references:{Linker:G((e)=>new Uee(e),"Linker"),NameProvider:G(()=>new Mee,"NameProvider"),ScopeProvider:G((e)=>new Jee(e),"ScopeProvider"),ScopeComputation:G((e)=>new Yee(e),"ScopeComputation"),References:G((e)=>new Tee(e),"References")},serializer:{Hydrator:G((e)=>new dte(e),"Hydrator"),JsonSerializer:G((e)=>new Oee(e),"JsonSerializer")},validation:{DocumentValidator:G((e)=>new qee(e),"DocumentValidator"),ValidationRegistry:G((e)=>new _ee(e),"ValidationRegistry")},shared:G(()=>A.shared,"shared")}}function Si(A){return{ServiceRegistry:G((e)=>new Pee(e),"ServiceRegistry"),workspace:{LangiumDocuments:G((e)=>new Gee(e),"LangiumDocuments"),LangiumDocumentFactory:G((e)=>new Nee(e),"LangiumDocumentFactory"),DocumentBuilder:G((e)=>new Xee(e),"DocumentBuilder"),IndexManager:G((e)=>new $ee(e),"IndexManager"),WorkspaceManager:G((e)=>new Ate(e),"WorkspaceManager"),FileSystemProvider:G((e)=>A.fileSystemProvider(e),"FileSystemProvider"),WorkspaceLock:G(()=>new Ete,"WorkspaceLock"),ConfigurationProvider:G((e)=>new jee(e),"ConfigurationProvider")},profilers:{}}}function wr(A,e,t,r,i,u,a,n,o){let s=[A,e,t,r,i,u,a,n,o].reduce(Vw,{});return IgA(s)}function dgA(A){if(A&&A[Ite])for(let e of Object.values(A))dgA(e);return A}function IgA(A,e){let t=new Proxy({},{deleteProperty:G(()=>!1,"deleteProperty"),set:G(()=>{throw Error("Cannot set property on injected service container")},"set"),get:G((r,i)=>{if(i===Ite)return!0;else return I0A(r,i,A,e||t)},"get"),getOwnPropertyDescriptor:G((r,i)=>(I0A(r,i,A,e||t),Object.getOwnPropertyDescriptor(r,i)),"getOwnPropertyDescriptor"),has:G((r,i)=>(i in A),"has"),ownKeys:G(()=>[...Object.getOwnPropertyNames(A)],"ownKeys")});return t}function I0A(A,e,t,r){if(e in A){if(A[e]instanceof Error)throw Error("Construction failure. Please make sure that your dependencies are constructable. Cause: "+A[e]);if(A[e]===o_A)throw Error('Cycle detected. Please make "'+String(e)+'" lazy. Visit https://langium.org/docs/reference/configuration-services/#resolving-cyclic-dependencies');return A[e]}else if(e in t){let i=t[e];A[e]=o_A;try{A[e]=typeof i==="function"?i(r):IgA(i,r)}catch(u){throw A[e]=u instanceof Error?u:void 0,u}return A[e]}else return}function Vw(A,e){if(e){for(let[t,r]of Object.entries(e))if(r!==void 0&&r!==null)if(typeof r==="object"){let i=A[t];if(typeof i==="object"&&i!==null)A[t]=Vw(i,r);else A[t]=Vw({},r)}else A[t]=r}return A}function pte(){let A=wr(Si(Ji),L7t),e=wr(xi({shared:A}),S7t);return A.ServiceRegistry.register(e),e}function Oo(A){let e=pte(),t=e.serializer.JsonSerializer.deserialize(A);return e.shared.workspace.LangiumDocumentFactory.fromModel(t,Cg.parse(`memory:/${t.name??"grammar"}.langium`)),t}function QgA(A){return In.isInstance(A,cc.$type)}function pgA(A){return In.isInstance(A,Mw.$type)}function fgA(A){return In.isInstance(A,N4.$type)}function mgA(A){return In.isInstance(A,HI.$type)}function DgA(A){return In.isInstance(A,Tw.$type)}function ygA(A){return In.isInstance(A,gx.$type)}function wgA(A){return A==="rmo"||A==="readmodel"||A==="ui"||A==="cmd"||A==="command"||A==="evt"||A==="event"||A==="pcr"||A==="processor"}function Nx(A){return In.isInstance(A,NI.$type)}function bgA(A){return In.isInstance(A,KI.$type)}function vgA(A){return In.isInstance(A,b3.$type)}function kgA(A){return In.isInstance(A,G4.$type)}function FgA(A){return In.isInstance(A,U4.$type)}function xgA(A){return In.isInstance(A,M4.$type)}function SgA(A){return In.isInstance(A,JI.$type)}function LgA(A){return In.isInstance(A,Yw.$type)}function RgA(A){return In.isInstance(A,T4.$type)}function NgA(A){return In.isInstance(A,Y4.$type)}function GgA(A){return In.isInstance(A,H4.$type)}function UgA(A){return In.isInstance(A,K4.$type)}function MgA(A){return In.isInstance(A,v3.$type)}function TgA(A){return In.isInstance(A,J4.$type)}function YgA(A){return In.isInstance(A,lo.$type)}var I2t,cx,h2t,N0A,Q2t,p2t,G=(A,e)=>cx(A,"name",{value:e,configurable:!0}),f2t=(A,e)=>function(){return A&&(e=(0,A[N0A(A)[0]])(A=0)),e},Vr=(A,e)=>function(){return e||(0,A[N0A(A)[0]])((e={exports:{}}).exports,e),e.exports},z4=(A,e)=>{for(var t in e)cx(A,t,{get:e[t],enumerable:!0})},lH=(A,e,t,r)=>{if(e&&typeof e==="object"||typeof e==="function"){for(let i of N0A(e))if(!p2t.call(A,i)&&i!==t)cx(A,i,{get:()=>e[i],enumerable:!(r=h2t(e,i))||r.enumerable})}return A},SK=(A,e,t)=>(lH(A,e,"default"),t&&lH(t,e,"default")),G0A=(A,e,t)=>(t=A!=null?I2t(Q2t(A)):{},lH(e||!A||!A.__esModule?cx(t,"default",{value:A,enumerable:!0}):t,A)),U0A=(A)=>lH(cx({},"__esModule",{value:!0}),A),LK,UnA,PY,MnA,CF,su,mi,BF,TnA,_Y,YnA,HnA,KnA,JnA,WY,OnA,PnA,_nA,EF,e3,xE,t3,c0,RI,dF,Qw,pw,fw,qY,iF,BnA,k_A,WnA,qnA,IF,znA,zY,mw,ZnA,VnA,jnA,XnA,$nA,AoA,eoA,toA,hF,roA,ioA,uoA,aoA,noA,ooA,soA,loA,goA,coA,CoA,QF,BoA,EoA,doA,IoA,hoA,QoA,poA,foA,moA,DoA,yoA,woA,boA,ZY,VY,voA,koA,FoA,xoA,SoA,LoA,RoA,NoA,F_A,GoA,MOA,pe,Cx,N3,Bx,jw,RK,x_A,S_A,m2t,D2t,L_A,y2t,w2t,b2t,v2t,UoA,k2t,Xw,TOA,Na,M0A,F2t,x2t,S2t,L2t,R2t,N2t,G2t,U2t,M2t,T2t,Y2t,H2t,K2t,J2t,O2t,P2t,_2t,W2t,q2t,z2t,Z2t,V2t,j2t,X2t,$2t,Jo,T0A,H0A,NE,Hw,Ds,Kw,ZF,K0A,G_A,ADt,Ql,wF,ww,cg,w4,bF,BH,EH,b4,dH,v4,k4,vF,F4,kF,IH,GI,hH,o3,QH,SE,FF,pH,bw,vw,kw,s3,fH,mH,Fw,DH,DC,xF,l3,yH,g3,xw,wH,c3,pl,C3,UI,B3,SF,E3,d3,bH,LF,I3,h3,Sw,osA,Ir,RE,csA,IsA,JK,QsA,kH,FH,YOA,eDt,bY,tDt,uWA,OK,aWA,nWA,rDt,m3,sWA,UsA,iDt,mWA,uDt,aDt,YE,nDt,Ec,DWA,oDt,sDt,uF,lDt,gDt,cDt,CDt,BDt="[object Null]",EDt="[object Undefined]",HOA,V4,LC,dDt="[object Symbol]",VK,px,IDt,Ki,hDt=1/0,KOA,JOA,QDt,pDt,fDt,mDt,DDt,dc,OOA=NaN,yDt,wDt,bDt,vDt,kDt,POA=1/0,FDt=179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,xDt,fx,mx,SDt="[object AsyncFunction]",LDt="[object Function]",RDt="[object GeneratorFunction]",NDt="[object Proxy]",eh,GDt,EnA,_OA,UDt,MDt,TDt,K3,YDt,HDt,KDt,JDt,ODt,PDt,_Dt,WDt,qDt,J3,zDt,YoA,WOA,ZDt,VDt,jDt,Ho,XDt,$Dt=800,Ayt=16,eyt,tyt,ryt,iyt,SH,uyt,ayt,nyt,oyt,ZWA,jWA,syt,lyt,YsA,tqA,gyt=9007199254740991,cyt,jK,HsA,Dx,Cyt,Byt,XK,yx,qOA,Eyt,KsA,dyt=9007199254740991,JsA,HE,$K,Iyt,hyt,wx,Qyt,pyt="[object Arguments]",zOA,IqA,fyt,myt,Dyt,AJ,yyt,QqA,ZOA,wyt,VOA,byt,vyt,jF,kyt="[object Arguments]",Fyt="[object Array]",xyt="[object Boolean]",Syt="[object Date]",Lyt="[object Error]",Ryt="[object Function]",Nyt="[object Map]",Gyt="[object Number]",Uyt="[object Object]",Myt="[object RegExp]",Tyt="[object Set]",Yyt="[object String]",Hyt="[object WeakMap]",Kyt="[object ArrayBuffer]",Jyt="[object DataView]",Oyt="[object Float32Array]",Pyt="[object Float64Array]",_yt="[object Int8Array]",Wyt="[object Int16Array]",qyt="[object Int32Array]",zyt="[object Uint8Array]",Zyt="[object Uint8ClampedArray]",Vyt="[object Uint16Array]",jyt="[object Uint32Array]",ta,Xyt,bx,mqA,RF,$yt,dnA,Awt,P4,jOA,ewt,OsA,twt,rwt,yqA,bqA,iwt,uwt,awt,nwt,kqA,Bg,owt,swt,lwt,Eg,gwt,cwt,Cwt,Bwt,eJ,Ewt,dwt,PsA,Iwt,XF,hwt,Qwt,pwt="__lodash_hash_undefined__",fwt,mwt,Dwt,ywt,wwt,bwt,vwt="__lodash_hash_undefined__",kwt,XOA,Fwt,tJ,xwt,Swt,Lwt,Rwt,Nwt,Gwt,rJ,Uwt,$F,Mwt,Twt,iJ,Ywt,Hwt,Kwt,Jwt,uJ,Owt="Expected a function",Pwt,_wt=500,Wwt,qwt,zwt,Zwt,Vwt,jwt,nJ,Xwt=1/0,vx,_sA,$wt,WsA,$OA,A6t,zsA,xC,e6t,nzA,szA,t6t,r6t,i6t,u6t,a6t,n6t=200,o6t,NF,s6t,l6t,hzA,APA,g6t,ePA,tPA,c6t,ZsA,mzA,C6t,B6t,rPA,E6t,VsA,d6t,I6t,h6t,yzA,Q6t,vzA,HoA,xzA,p6t,KoA,f6t,JoA,m6t,Nw,iPA="[object Map]",D6t="[object Object]",uPA="[object Promise]",aPA="[object Set]",nPA="[object WeakMap]",oPA="[object DataView]",y6t,w6t,b6t,v6t,k6t,i3,qw,F6t,x6t,S6t,L6t,LH,jsA,R6t,N6t,G6t,sPA,lPA,U6t,M6t,T6t="[object Boolean]",Y6t="[object Date]",H6t="[object Map]",K6t="[object Number]",J6t="[object RegExp]",O6t="[object Set]",P6t="[object String]",_6t="[object Symbol]",W6t="[object ArrayBuffer]",q6t="[object DataView]",z6t="[object Float32Array]",Z6t="[object Float64Array]",V6t="[object Int8Array]",j6t="[object Int16Array]",X6t="[object Int32Array]",$6t="[object Uint8Array]",A9t="[object Uint8ClampedArray]",e9t="[object Uint16Array]",t9t="[object Uint32Array]",r9t,i9t,u9t="[object Map]",a9t,gPA,n9t,o9t,s9t="[object Set]",l9t,cPA,g9t,c9t,C9t=1,B9t=2,E9t=4,KzA="[object Arguments]",d9t="[object Array]",I9t="[object Boolean]",h9t="[object Date]",Q9t="[object Error]",JzA="[object Function]",p9t="[object GeneratorFunction]",f9t="[object Map]",m9t="[object Number]",OzA="[object Object]",D9t="[object RegExp]",y9t="[object Set]",w9t="[object String]",b9t="[object Symbol]",v9t="[object WeakMap]",k9t="[object ArrayBuffer]",F9t="[object DataView]",x9t="[object Float32Array]",S9t="[object Float64Array]",L9t="[object Int8Array]",R9t="[object Int16Array]",N9t="[object Int32Array]",G9t="[object Uint8Array]",U9t="[object Uint8ClampedArray]",M9t="[object Uint16Array]",T9t="[object Uint32Array]",_u,Y9t,H9t=4,E0,kx,K9t="__lodash_hash_undefined__",J9t,O9t,XsA,ZzA,$sA,P9t=1,_9t=2,XzA,W9t,AlA,q9t=1,z9t=2,Z9t="[object Boolean]",V9t="[object Date]",j9t="[object Error]",X9t="[object Map]",$9t="[object Number]",A5t="[object RegExp]",e5t="[object Set]",t5t="[object String]",r5t="[object Symbol]",i5t="[object ArrayBuffer]",u5t="[object DataView]",CPA,InA,a5t,n5t=1,o5t,s5t,l5t,g5t=1,BPA="[object Arguments]",EPA="[object Array]",vY="[object Object]",c5t,dPA,C5t,iZA,B5t=1,E5t=2,d5t,nZA,I5t,lZA,h5t,Q5t,BZA,p5t,f5t=1,m5t=2,D5t,y5t,w5t,b5t,KE,v5t,k5t,F5t,x5t,S5t,L5t,R5t,q3,N5t,G5t,vZA,U5t,M5t,tlA,IPA,xZA,T5t=200,Y5t,H5t,oJ,S3,C0,ex,K5t,Rr,J5t,O5t,SC,KZA,hc,P5t,_5t,W5t,q5t,zw,RC,z5t,er,Bc,Z5t,V5t,j5t,X5t,$5t,Abt,ebt,pr,tbt="[object String]",fl,rbt,go,ibt,Ss,ubt,hPA,abt="[object Map]",nbt="[object Set]",obt,sbt,qu,lbt="[object RegExp]",gbt,QPA,cbt,zI,ZI,Cbt="Expected a function",Bbt,Ebt,dbt,NC,Ibt,dg,sJ,hbt,BVA,Qbt=1/0,pbt,fbt,mbt=200,Dbt,rlA,JE,ks,A6,ml,B0,Ig,hg,Va,Dl,yl,ia,e6,lJ,wVA="_~IN~_",ybt,$Y,wbt,FVA="Complement Sets are not supported for first char optimization",NH=`Unable to use "first char" lexer optimizations:
`,bbt,L3="PATTERN",mF="defaultMode",kY="modes",vbt,kbt,Fbt,DF=256,eH,pPA=1,AjA,qoA,ja,yF,bs,xbt="parent",fPA="categories",mPA="label",DPA="group",yPA="push_mode",wPA="pop_mode",bPA="longer_alt",vPA="line_breaks",kPA="start_chars_hint",_4,Lw,Sbt,D3,Lbt,Rbt,Nbt,cJ,Gbt,FPA,Ubt,xPA,Ra,Mbt,EjA,Tbt,QlA,Ybt,RjA="MismatchedTokenException",NjA="NoViableAltException",GjA="EarlyExitException",UjA="NotAllInputParsedException",MjA,BJ,TjA,Hbt,Kbt,Jbt,hnA,YjA="InRuleRecoveryException",Obt,Pbt,_bt=4,j4=8,Wbt=8,KjA,JjA,VoA,joA,XoA,rH,lni,plA,qbt,zbt,FY,Zbt="name",e0A,Vbt,jbt,Xbt,$bt,Avt,evt,EJ,SPA=!0,LPA,jjA,XjA,tvt,rvt,ivt,YH,jI,HH,Fs,mlA,uvt,tXA,avt,uXA,dJ,nvt,ovt,svt,lvt,gvt,cvt,IJ,Cvt,Bvt,Evt,dvt,Ivt,EXA,hvt,Qvt,th,pvt,TE,dXA,fvt,mvt,aF,Dvt,yvt,wvt,bvt,vvt="[object Null]",kvt="[object Undefined]",RPA,u6,DlA,Fvt="[object AsyncFunction]",xvt="[object Function]",Svt="[object GeneratorFunction]",Lvt="[object Proxy]",mXA,Rvt,QnA,NPA,Nvt,Gvt,Uvt,Z3,Mvt,Tvt,Yvt,Hvt,Kvt,Jvt,Ovt,Pvt,_vt,a6,Wvt,ax,qvt,nx,zvt,Zvt,Vvt="__lodash_hash_undefined__",jvt,Xvt,$vt,Akt,ekt,tkt,rkt="__lodash_hash_undefined__",ikt,GPA,ukt,akt,hJ,nkt,okt,skt,lkt,QJ,gkt=200,ckt,uH,Ckt="__lodash_hash_undefined__",Bkt,Ekt,OXA,dkt,WXA,Ikt=1,hkt=2,zXA,Qkt,UPA,pkt,ylA,fkt=1,mkt=2,Dkt="[object Boolean]",ykt="[object Date]",wkt="[object Error]",bkt="[object Map]",vkt="[object Number]",kkt="[object RegExp]",Fkt="[object Set]",xkt="[object String]",Skt="[object Symbol]",Lkt="[object ArrayBuffer]",Rkt="[object DataView]",MPA,pnA,Nkt,$XA,Gkt,xs,Ukt,t$A,Mkt,Tkt,Ykt,TPA,Hkt,Kkt,Jkt,Zw,Okt="[object Arguments]",YPA,n$A,Pkt,_kt,Wkt,pJ,qkt,s$A,HPA,zkt,KPA,Zkt,Vkt,KH,jkt=9007199254740991,Xkt,g$A,$kt=9007199254740991,wlA,AFt="[object Arguments]",eFt="[object Array]",tFt="[object Boolean]",rFt="[object Date]",iFt="[object Error]",uFt="[object Function]",aFt="[object Map]",nFt="[object Number]",oFt="[object Object]",sFt="[object RegExp]",lFt="[object Set]",gFt="[object String]",cFt="[object WeakMap]",CFt="[object ArrayBuffer]",BFt="[object DataView]",EFt="[object Float32Array]",dFt="[object Float64Array]",IFt="[object Int8Array]",hFt="[object Int16Array]",QFt="[object Int32Array]",pFt="[object Uint8Array]",fFt="[object Uint8ClampedArray]",mFt="[object Uint16Array]",DFt="[object Uint32Array]",ra,yFt,wFt,E$A,TF,bFt,fnA,vFt,JPA,OPA,kFt,blA,FFt,xFt,SFt,LFt,h$A,RFt,NFt,GFt,UFt,MFt,f$A,fJ,vlA,PPA,TFt=1,YFt,HFt,KFt,JFt,i0A,OFt,u0A,PFt,Uw,_Ft,a0A,_PA="[object Map]",WFt="[object Object]",WPA="[object Promise]",qPA="[object Set]",zPA="[object WeakMap]",ZPA="[object DataView]",qFt,zFt,ZFt,VFt,jFt,u3,n0A,XFt=1,VPA="[object Arguments]",jPA="[object Array]",xY="[object Object]",$Ft,XPA,Axt,v$A,ext=1,txt=2,rxt,x$A,ixt,R$A,uxt,axt="[object Symbol]",mJ,nxt,oxt,FlA,sxt="Expected a function",lxt,gxt=500,cxt,Cxt,Bxt,Ext,dxt,Ixt=1/0,$PA,A_A,hxt,Qxt,H$A,pxt=1/0,yJ,O$A,fxt,mxt,Dxt,yxt,wxt=1,bxt=2,vxt,SlA,kxt,Fxt,xxt,wJ,Sxt,Lxt,Rxt,Nxt,Gxt,Uxt,bJ,Mxt,OI,Txt,Yxt,W4=1,Hxt=2,nAe=4,oAe=5,Rx=7,Kxt=8,Jxt=9,Oxt=10,Pxt=11,sAe=12,LlA,RlA,lAe,NlA,JH,o0A,_xt,Wxt,qxt,e_A,zxt,FAe,Zxt,Vxt,jxt,Xxt,$xt,A7t,e7t,t7t,r7t=1/0,i7t,u7t,a7t=200,n7t,o7t,s7t,l7t,g7t,mnA,c7t="[object Map]",C7t="[object Set]",B7t,E7t,d7t,I7t,h7t,t_A,ZAe,r_A,Q7t,Eee,JlA,OH,FJ,p7t,OlA,PH,i_A="​",dee,PlA,Iee,hee,_lA,Qee,f7t,pee,m7t,LJ,jlA,LE,Wu,oH=0,See=10,GE,XI,u_A,WH,Ree,Cg,nF,ws,egA,li,Nee,Gee,a3,Uee,Mee,Tee,$I,zH,Yee,c0A,D7t,Hee,y7t,GJ,rgA,UJ,Kee,igA,Jee,Oee,Pee,ZH,_ee,Wee,qee,Cc,zee,Zee,Vee,MJ,jee,SY,F3,Xee,$ee,Ate,ete,ogA,sgA,a_A,w7t,b7t,v7t,n_A,DnA,B0A,gte,cte,Cte,Bte,k7t,F7t,Ete,dte,d0A,Ite,o_A,h0A,w3,hte,x7t,hgA,Qte,Ji,S7t,L7t,R7t,fte,Q0A,p0A,f0A,m0A,D0A,y0A,w0A,b0A,v0A,k0A,F0A,x0A,S0A,L0A,R0A,gni,XH,$H,HF,AK,eK,tK,x4,KF,rK,iK,LY,ynA,RY,oF,wnA,cc,NY,Mw,s_A,GY,bnA,N4,UY,$f,MY,HI,TY,l_A,Iw,Tw,gx,uK,aK,nK,oK,sK,lK,gK,Q3,MI,cK,JF,CK,BK,OF,EK,dK,FE,S4,TI,sF,g_A,vnA,YY,NI,y4,knA,yC,c_A,HY,FnA,KI,lF,b3,gF,xnA,cF,KY,A3,G4,JY,SnA,U4,M4,IK,hK,QK,pK,fK,PF,p3,_F,mK,WF,JI,Yw,LnA,OY,YI,T4,Y4,DK,H4,wC,yK,wK,bK,K4,qF,vK,kK,FK,xK,RnA,hw,NnA,L4,v3,J4,GnA,R4,f3,lo,mte,In,C_A,N7t,B_A,G7t,E_A,U7t,d_A,M7t,I_A,T7t,h_A,Y7t,Q_A,H7t,p_A,K7t,f_A,J7t,m_A,O7t,D_A,P7t,y_A,_7t,w_A,W7t,b_A,q7t,v_A,z7t,Z7t,V7t,j7t,X7t,$7t,A8t,e8t,t8t,r8t,i8t,u8t,a8t,n8t,o8t,s8t,$i,KJ,JJ,OJ,PJ,_J,WJ,qJ,zJ,ZJ,VJ,jJ,XJ,$J,AO,eO,l8t,g8t,c8t,C8t,hn,wl,lu,Dte;var Au=_(()=>{I2t=Object.create,cx=Object.defineProperty,h2t=Object.getOwnPropertyDescriptor,N0A=Object.getOwnPropertyNames,Q2t=Object.getPrototypeOf,p2t=Object.prototype.hasOwnProperty,LK={};z4(LK,{AnnotatedTextEdit:()=>RI,ChangeAnnotation:()=>t3,ChangeAnnotationIdentifier:()=>c0,CodeAction:()=>EoA,CodeActionContext:()=>BoA,CodeActionKind:()=>CoA,CodeActionTriggerKind:()=>QF,CodeDescription:()=>_nA,CodeLens:()=>doA,Color:()=>_Y,ColorInformation:()=>YnA,ColorPresentation:()=>HnA,Command:()=>e3,CompletionItem:()=>eoA,CompletionItemKind:()=>ZnA,CompletionItemLabelDetails:()=>AoA,CompletionItemTag:()=>jnA,CompletionList:()=>toA,CreateFile:()=>Qw,DeleteFile:()=>fw,Diagnostic:()=>EF,DiagnosticRelatedInformation:()=>WY,DiagnosticSeverity:()=>OnA,DiagnosticTag:()=>PnA,DocumentHighlight:()=>noA,DocumentHighlightKind:()=>aoA,DocumentLink:()=>hoA,DocumentSymbol:()=>coA,DocumentUri:()=>UnA,EOL:()=>F_A,FoldingRange:()=>JnA,FoldingRangeKind:()=>KnA,FormattingOptions:()=>IoA,Hover:()=>roA,InlayHint:()=>voA,InlayHintKind:()=>ZY,InlayHintLabelPart:()=>VY,InlineCompletionContext:()=>RoA,InlineCompletionItem:()=>FoA,InlineCompletionList:()=>xoA,InlineCompletionTriggerKind:()=>SoA,InlineValueContext:()=>boA,InlineValueEvaluatableExpression:()=>woA,InlineValueText:()=>DoA,InlineValueVariableLookup:()=>yoA,InsertReplaceEdit:()=>XnA,InsertTextFormat:()=>VnA,InsertTextMode:()=>$nA,Location:()=>BF,LocationLink:()=>TnA,MarkedString:()=>hF,MarkupContent:()=>mw,MarkupKind:()=>zY,OptionalVersionedTextDocumentIdentifier:()=>IF,ParameterInformation:()=>ioA,Position:()=>su,Range:()=>mi,RenameFile:()=>pw,SelectedCompletionInfo:()=>LoA,SelectionRange:()=>QoA,SemanticTokenModifiers:()=>foA,SemanticTokenTypes:()=>poA,SemanticTokens:()=>moA,SignatureInformation:()=>uoA,StringValue:()=>koA,SymbolInformation:()=>loA,SymbolKind:()=>ooA,SymbolTag:()=>soA,TextDocument:()=>GoA,TextDocumentEdit:()=>dF,TextDocumentIdentifier:()=>WnA,TextDocumentItem:()=>znA,TextEdit:()=>xE,URI:()=>PY,VersionedTextDocumentIdentifier:()=>qnA,WorkspaceChange:()=>k_A,WorkspaceEdit:()=>qY,WorkspaceFolder:()=>NoA,WorkspaceSymbol:()=>goA,integer:()=>MnA,uinteger:()=>CF});Cx=f2t({"../../node_modules/.pnpm/vscode-languageserver-types@3.17.5/node_modules/vscode-languageserver-types/lib/esm/main.js"(){(function(A){function e(t){return typeof t==="string"}G(e,"is"),A.is=e})(UnA||(UnA={})),function(A){function e(t){return typeof t==="string"}G(e,"is"),A.is=e}(PY||(PY={})),function(A){A.MIN_VALUE=-2147483648,A.MAX_VALUE=2147483647;function e(t){return typeof t==="number"&&A.MIN_VALUE<=t&&t<=A.MAX_VALUE}G(e,"is"),A.is=e}(MnA||(MnA={})),function(A){A.MIN_VALUE=0,A.MAX_VALUE=2147483647;function e(t){return typeof t==="number"&&A.MIN_VALUE<=t&&t<=A.MAX_VALUE}G(e,"is"),A.is=e}(CF||(CF={})),function(A){function e(r,i){if(r===Number.MAX_VALUE)r=CF.MAX_VALUE;if(i===Number.MAX_VALUE)i=CF.MAX_VALUE;return{line:r,character:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&pe.uinteger(i.line)&&pe.uinteger(i.character)}G(t,"is"),A.is=t}(su||(su={})),function(A){function e(r,i,u,a){if(pe.uinteger(r)&&pe.uinteger(i)&&pe.uinteger(u)&&pe.uinteger(a))return{start:su.create(r,i),end:su.create(u,a)};else if(su.is(r)&&su.is(i))return{start:r,end:i};else throw Error(`Range#create called with invalid arguments[${r}, ${i}, ${u}, ${a}]`)}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&su.is(i.start)&&su.is(i.end)}G(t,"is"),A.is=t}(mi||(mi={})),function(A){function e(r,i){return{uri:r,range:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&mi.is(i.range)&&(pe.string(i.uri)||pe.undefined(i.uri))}G(t,"is"),A.is=t}(BF||(BF={})),function(A){function e(r,i,u,a){return{targetUri:r,targetRange:i,targetSelectionRange:u,originSelectionRange:a}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&mi.is(i.targetRange)&&pe.string(i.targetUri)&&mi.is(i.targetSelectionRange)&&(mi.is(i.originSelectionRange)||pe.undefined(i.originSelectionRange))}G(t,"is"),A.is=t}(TnA||(TnA={})),function(A){function e(r,i,u,a){return{red:r,green:i,blue:u,alpha:a}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&pe.numberRange(i.red,0,1)&&pe.numberRange(i.green,0,1)&&pe.numberRange(i.blue,0,1)&&pe.numberRange(i.alpha,0,1)}G(t,"is"),A.is=t}(_Y||(_Y={})),function(A){function e(r,i){return{range:r,color:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&mi.is(i.range)&&_Y.is(i.color)}G(t,"is"),A.is=t}(YnA||(YnA={})),function(A){function e(r,i,u){return{label:r,textEdit:i,additionalTextEdits:u}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&pe.string(i.label)&&(pe.undefined(i.textEdit)||xE.is(i))&&(pe.undefined(i.additionalTextEdits)||pe.typedArray(i.additionalTextEdits,xE.is))}G(t,"is"),A.is=t}(HnA||(HnA={})),function(A){A.Comment="comment",A.Imports="imports",A.Region="region"}(KnA||(KnA={})),function(A){function e(r,i,u,a,n,o){let s={startLine:r,endLine:i};if(pe.defined(u))s.startCharacter=u;if(pe.defined(a))s.endCharacter=a;if(pe.defined(n))s.kind=n;if(pe.defined(o))s.collapsedText=o;return s}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&pe.uinteger(i.startLine)&&pe.uinteger(i.startLine)&&(pe.undefined(i.startCharacter)||pe.uinteger(i.startCharacter))&&(pe.undefined(i.endCharacter)||pe.uinteger(i.endCharacter))&&(pe.undefined(i.kind)||pe.string(i.kind))}G(t,"is"),A.is=t}(JnA||(JnA={})),function(A){function e(r,i){return{location:r,message:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&BF.is(i.location)&&pe.string(i.message)}G(t,"is"),A.is=t}(WY||(WY={})),function(A){A.Error=1,A.Warning=2,A.Information=3,A.Hint=4}(OnA||(OnA={})),function(A){A.Unnecessary=1,A.Deprecated=2}(PnA||(PnA={})),function(A){function e(t){let r=t;return pe.objectLiteral(r)&&pe.string(r.href)}G(e,"is"),A.is=e}(_nA||(_nA={})),function(A){function e(r,i,u,a,n,o){let s={range:r,message:i};if(pe.defined(u))s.severity=u;if(pe.defined(a))s.code=a;if(pe.defined(n))s.source=n;if(pe.defined(o))s.relatedInformation=o;return s}G(e,"create"),A.create=e;function t(r){var i;let u=r;return pe.defined(u)&&mi.is(u.range)&&pe.string(u.message)&&(pe.number(u.severity)||pe.undefined(u.severity))&&(pe.integer(u.code)||pe.string(u.code)||pe.undefined(u.code))&&(pe.undefined(u.codeDescription)||pe.string((i=u.codeDescription)===null||i===void 0?void 0:i.href))&&(pe.string(u.source)||pe.undefined(u.source))&&(pe.undefined(u.relatedInformation)||pe.typedArray(u.relatedInformation,WY.is))}G(t,"is"),A.is=t}(EF||(EF={})),function(A){function e(r,i,...u){let a={title:r,command:i};if(pe.defined(u)&&u.length>0)a.arguments=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.string(i.title)&&pe.string(i.command)}G(t,"is"),A.is=t}(e3||(e3={})),function(A){function e(u,a){return{range:u,newText:a}}G(e,"replace"),A.replace=e;function t(u,a){return{range:{start:u,end:u},newText:a}}G(t,"insert"),A.insert=t;function r(u){return{range:u,newText:""}}G(r,"del"),A.del=r;function i(u){let a=u;return pe.objectLiteral(a)&&pe.string(a.newText)&&mi.is(a.range)}G(i,"is"),A.is=i}(xE||(xE={})),function(A){function e(r,i,u){let a={label:r};if(i!==void 0)a.needsConfirmation=i;if(u!==void 0)a.description=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&pe.string(i.label)&&(pe.boolean(i.needsConfirmation)||i.needsConfirmation===void 0)&&(pe.string(i.description)||i.description===void 0)}G(t,"is"),A.is=t}(t3||(t3={})),function(A){function e(t){let r=t;return pe.string(r)}G(e,"is"),A.is=e}(c0||(c0={})),function(A){function e(u,a,n){return{range:u,newText:a,annotationId:n}}G(e,"replace"),A.replace=e;function t(u,a,n){return{range:{start:u,end:u},newText:a,annotationId:n}}G(t,"insert"),A.insert=t;function r(u,a){return{range:u,newText:"",annotationId:a}}G(r,"del"),A.del=r;function i(u){let a=u;return xE.is(a)&&(t3.is(a.annotationId)||c0.is(a.annotationId))}G(i,"is"),A.is=i}(RI||(RI={})),function(A){function e(r,i){return{textDocument:r,edits:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&IF.is(i.textDocument)&&Array.isArray(i.edits)}G(t,"is"),A.is=t}(dF||(dF={})),function(A){function e(r,i,u){let a={kind:"create",uri:r};if(i!==void 0&&(i.overwrite!==void 0||i.ignoreIfExists!==void 0))a.options=i;if(u!==void 0)a.annotationId=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return i&&i.kind==="create"&&pe.string(i.uri)&&(i.options===void 0||(i.options.overwrite===void 0||pe.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||pe.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||c0.is(i.annotationId))}G(t,"is"),A.is=t}(Qw||(Qw={})),function(A){function e(r,i,u,a){let n={kind:"rename",oldUri:r,newUri:i};if(u!==void 0&&(u.overwrite!==void 0||u.ignoreIfExists!==void 0))n.options=u;if(a!==void 0)n.annotationId=a;return n}G(e,"create"),A.create=e;function t(r){let i=r;return i&&i.kind==="rename"&&pe.string(i.oldUri)&&pe.string(i.newUri)&&(i.options===void 0||(i.options.overwrite===void 0||pe.boolean(i.options.overwrite))&&(i.options.ignoreIfExists===void 0||pe.boolean(i.options.ignoreIfExists)))&&(i.annotationId===void 0||c0.is(i.annotationId))}G(t,"is"),A.is=t}(pw||(pw={})),function(A){function e(r,i,u){let a={kind:"delete",uri:r};if(i!==void 0&&(i.recursive!==void 0||i.ignoreIfNotExists!==void 0))a.options=i;if(u!==void 0)a.annotationId=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return i&&i.kind==="delete"&&pe.string(i.uri)&&(i.options===void 0||(i.options.recursive===void 0||pe.boolean(i.options.recursive))&&(i.options.ignoreIfNotExists===void 0||pe.boolean(i.options.ignoreIfNotExists)))&&(i.annotationId===void 0||c0.is(i.annotationId))}G(t,"is"),A.is=t}(fw||(fw={})),function(A){function e(t){let r=t;return r&&(r.changes!==void 0||r.documentChanges!==void 0)&&(r.documentChanges===void 0||r.documentChanges.every((i)=>{if(pe.string(i.kind))return Qw.is(i)||pw.is(i)||fw.is(i);else return dF.is(i)}))}G(e,"is"),A.is=e}(qY||(qY={})),iF=class{static{G(this,"TextEditChangeImpl")}constructor(A,e){this.edits=A,this.changeAnnotations=e}insert(A,e,t){let r,i;if(t===void 0)r=xE.insert(A,e);else if(c0.is(t))i=t,r=RI.insert(A,e,t);else this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(t),r=RI.insert(A,e,i);if(this.edits.push(r),i!==void 0)return i}replace(A,e,t){let r,i;if(t===void 0)r=xE.replace(A,e);else if(c0.is(t))i=t,r=RI.replace(A,e,t);else this.assertChangeAnnotations(this.changeAnnotations),i=this.changeAnnotations.manage(t),r=RI.replace(A,e,i);if(this.edits.push(r),i!==void 0)return i}delete(A,e){let t,r;if(e===void 0)t=xE.del(A);else if(c0.is(e))r=e,t=RI.del(A,e);else this.assertChangeAnnotations(this.changeAnnotations),r=this.changeAnnotations.manage(e),t=RI.del(A,r);if(this.edits.push(t),r!==void 0)return r}add(A){this.edits.push(A)}all(){return this.edits}clear(){this.edits.splice(0,this.edits.length)}assertChangeAnnotations(A){if(A===void 0)throw Error("Text edit change is not configured to manage change annotations.")}},BnA=class{static{G(this,"ChangeAnnotations")}constructor(A){this._annotations=A===void 0?Object.create(null):A,this._counter=0,this._size=0}all(){return this._annotations}get size(){return this._size}manage(A,e){let t;if(c0.is(A))t=A;else t=this.nextId(),e=A;if(this._annotations[t]!==void 0)throw Error(`Id ${t} is already in use.`);if(e===void 0)throw Error(`No annotation provided for id ${t}`);return this._annotations[t]=e,this._size++,t}nextId(){return this._counter++,this._counter.toString()}},k_A=class{static{G(this,"WorkspaceChange")}constructor(A){if(this._textEditChanges=Object.create(null),A!==void 0){if(this._workspaceEdit=A,A.documentChanges)this._changeAnnotations=new BnA(A.changeAnnotations),A.changeAnnotations=this._changeAnnotations.all(),A.documentChanges.forEach((e)=>{if(dF.is(e)){let t=new iF(e.edits,this._changeAnnotations);this._textEditChanges[e.textDocument.uri]=t}});else if(A.changes)Object.keys(A.changes).forEach((e)=>{let t=new iF(A.changes[e]);this._textEditChanges[e]=t})}else this._workspaceEdit={}}get edit(){if(this.initDocumentChanges(),this._changeAnnotations!==void 0)if(this._changeAnnotations.size===0)this._workspaceEdit.changeAnnotations=void 0;else this._workspaceEdit.changeAnnotations=this._changeAnnotations.all();return this._workspaceEdit}getTextEditChange(A){if(IF.is(A)){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let e={uri:A.uri,version:A.version},t=this._textEditChanges[e.uri];if(!t){let r=[],i={textDocument:e,edits:r};this._workspaceEdit.documentChanges.push(i),t=new iF(r,this._changeAnnotations),this._textEditChanges[e.uri]=t}return t}else{if(this.initChanges(),this._workspaceEdit.changes===void 0)throw Error("Workspace edit is not configured for normal text edit changes.");let e=this._textEditChanges[A];if(!e){let t=[];this._workspaceEdit.changes[A]=t,e=new iF(t),this._textEditChanges[A]=e}return e}}initDocumentChanges(){if(this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0)this._changeAnnotations=new BnA,this._workspaceEdit.documentChanges=[],this._workspaceEdit.changeAnnotations=this._changeAnnotations.all()}initChanges(){if(this._workspaceEdit.documentChanges===void 0&&this._workspaceEdit.changes===void 0)this._workspaceEdit.changes=Object.create(null)}createFile(A,e,t){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let r;if(t3.is(e)||c0.is(e))r=e;else t=e;let i,u;if(r===void 0)i=Qw.create(A,t);else u=c0.is(r)?r:this._changeAnnotations.manage(r),i=Qw.create(A,t,u);if(this._workspaceEdit.documentChanges.push(i),u!==void 0)return u}renameFile(A,e,t,r){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let i;if(t3.is(t)||c0.is(t))i=t;else r=t;let u,a;if(i===void 0)u=pw.create(A,e,r);else a=c0.is(i)?i:this._changeAnnotations.manage(i),u=pw.create(A,e,r,a);if(this._workspaceEdit.documentChanges.push(u),a!==void 0)return a}deleteFile(A,e,t){if(this.initDocumentChanges(),this._workspaceEdit.documentChanges===void 0)throw Error("Workspace edit is not configured for document changes.");let r;if(t3.is(e)||c0.is(e))r=e;else t=e;let i,u;if(r===void 0)i=fw.create(A,t);else u=c0.is(r)?r:this._changeAnnotations.manage(r),i=fw.create(A,t,u);if(this._workspaceEdit.documentChanges.push(i),u!==void 0)return u}},function(A){function e(r){return{uri:r}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.string(i.uri)}G(t,"is"),A.is=t}(WnA||(WnA={})),function(A){function e(r,i){return{uri:r,version:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.string(i.uri)&&pe.integer(i.version)}G(t,"is"),A.is=t}(qnA||(qnA={})),function(A){function e(r,i){return{uri:r,version:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.string(i.uri)&&(i.version===null||pe.integer(i.version))}G(t,"is"),A.is=t}(IF||(IF={})),function(A){function e(r,i,u,a){return{uri:r,languageId:i,version:u,text:a}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.string(i.uri)&&pe.string(i.languageId)&&pe.integer(i.version)&&pe.string(i.text)}G(t,"is"),A.is=t}(znA||(znA={})),function(A){A.PlainText="plaintext",A.Markdown="markdown";function e(t){let r=t;return r===A.PlainText||r===A.Markdown}G(e,"is"),A.is=e}(zY||(zY={})),function(A){function e(t){let r=t;return pe.objectLiteral(t)&&zY.is(r.kind)&&pe.string(r.value)}G(e,"is"),A.is=e}(mw||(mw={})),function(A){A.Text=1,A.Method=2,A.Function=3,A.Constructor=4,A.Field=5,A.Variable=6,A.Class=7,A.Interface=8,A.Module=9,A.Property=10,A.Unit=11,A.Value=12,A.Enum=13,A.Keyword=14,A.Snippet=15,A.Color=16,A.File=17,A.Reference=18,A.Folder=19,A.EnumMember=20,A.Constant=21,A.Struct=22,A.Event=23,A.Operator=24,A.TypeParameter=25}(ZnA||(ZnA={})),function(A){A.PlainText=1,A.Snippet=2}(VnA||(VnA={})),function(A){A.Deprecated=1}(jnA||(jnA={})),function(A){function e(r,i,u){return{newText:r,insert:i,replace:u}}G(e,"create"),A.create=e;function t(r){let i=r;return i&&pe.string(i.newText)&&mi.is(i.insert)&&mi.is(i.replace)}G(t,"is"),A.is=t}(XnA||(XnA={})),function(A){A.asIs=1,A.adjustIndentation=2}($nA||($nA={})),function(A){function e(t){let r=t;return r&&(pe.string(r.detail)||r.detail===void 0)&&(pe.string(r.description)||r.description===void 0)}G(e,"is"),A.is=e}(AoA||(AoA={})),function(A){function e(t){return{label:t}}G(e,"create"),A.create=e}(eoA||(eoA={})),function(A){function e(t,r){return{items:t?t:[],isIncomplete:!!r}}G(e,"create"),A.create=e}(toA||(toA={})),function(A){function e(r){return r.replace(/[\\`*_{}[\]()#+\-.!]/g,"\\$&")}G(e,"fromPlainText"),A.fromPlainText=e;function t(r){let i=r;return pe.string(i)||pe.objectLiteral(i)&&pe.string(i.language)&&pe.string(i.value)}G(t,"is"),A.is=t}(hF||(hF={})),function(A){function e(t){let r=t;return!!r&&pe.objectLiteral(r)&&(mw.is(r.contents)||hF.is(r.contents)||pe.typedArray(r.contents,hF.is))&&(t.range===void 0||mi.is(t.range))}G(e,"is"),A.is=e}(roA||(roA={})),function(A){function e(t,r){return r?{label:t,documentation:r}:{label:t}}G(e,"create"),A.create=e}(ioA||(ioA={})),function(A){function e(t,r,...i){let u={label:t};if(pe.defined(r))u.documentation=r;if(pe.defined(i))u.parameters=i;else u.parameters=[];return u}G(e,"create"),A.create=e}(uoA||(uoA={})),function(A){A.Text=1,A.Read=2,A.Write=3}(aoA||(aoA={})),function(A){function e(t,r){let i={range:t};if(pe.number(r))i.kind=r;return i}G(e,"create"),A.create=e}(noA||(noA={})),function(A){A.File=1,A.Module=2,A.Namespace=3,A.Package=4,A.Class=5,A.Method=6,A.Property=7,A.Field=8,A.Constructor=9,A.Enum=10,A.Interface=11,A.Function=12,A.Variable=13,A.Constant=14,A.String=15,A.Number=16,A.Boolean=17,A.Array=18,A.Object=19,A.Key=20,A.Null=21,A.EnumMember=22,A.Struct=23,A.Event=24,A.Operator=25,A.TypeParameter=26}(ooA||(ooA={})),function(A){A.Deprecated=1}(soA||(soA={})),function(A){function e(t,r,i,u,a){let n={name:t,kind:r,location:{uri:u,range:i}};if(a)n.containerName=a;return n}G(e,"create"),A.create=e}(loA||(loA={})),function(A){function e(t,r,i,u){return u!==void 0?{name:t,kind:r,location:{uri:i,range:u}}:{name:t,kind:r,location:{uri:i}}}G(e,"create"),A.create=e}(goA||(goA={})),function(A){function e(r,i,u,a,n,o){let s={name:r,detail:i,kind:u,range:a,selectionRange:n};if(o!==void 0)s.children=o;return s}G(e,"create"),A.create=e;function t(r){let i=r;return i&&pe.string(i.name)&&pe.number(i.kind)&&mi.is(i.range)&&mi.is(i.selectionRange)&&(i.detail===void 0||pe.string(i.detail))&&(i.deprecated===void 0||pe.boolean(i.deprecated))&&(i.children===void 0||Array.isArray(i.children))&&(i.tags===void 0||Array.isArray(i.tags))}G(t,"is"),A.is=t}(coA||(coA={})),function(A){A.Empty="",A.QuickFix="quickfix",A.Refactor="refactor",A.RefactorExtract="refactor.extract",A.RefactorInline="refactor.inline",A.RefactorRewrite="refactor.rewrite",A.Source="source",A.SourceOrganizeImports="source.organizeImports",A.SourceFixAll="source.fixAll"}(CoA||(CoA={})),function(A){A.Invoked=1,A.Automatic=2}(QF||(QF={})),function(A){function e(r,i,u){let a={diagnostics:r};if(i!==void 0&&i!==null)a.only=i;if(u!==void 0&&u!==null)a.triggerKind=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.typedArray(i.diagnostics,EF.is)&&(i.only===void 0||pe.typedArray(i.only,pe.string))&&(i.triggerKind===void 0||i.triggerKind===QF.Invoked||i.triggerKind===QF.Automatic)}G(t,"is"),A.is=t}(BoA||(BoA={})),function(A){function e(r,i,u){let a={title:r},n=!0;if(typeof i==="string")n=!1,a.kind=i;else if(e3.is(i))a.command=i;else a.edit=i;if(n&&u!==void 0)a.kind=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return i&&pe.string(i.title)&&(i.diagnostics===void 0||pe.typedArray(i.diagnostics,EF.is))&&(i.kind===void 0||pe.string(i.kind))&&(i.edit!==void 0||i.command!==void 0)&&(i.command===void 0||e3.is(i.command))&&(i.isPreferred===void 0||pe.boolean(i.isPreferred))&&(i.edit===void 0||qY.is(i.edit))}G(t,"is"),A.is=t}(EoA||(EoA={})),function(A){function e(r,i){let u={range:r};if(pe.defined(i))u.data=i;return u}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&mi.is(i.range)&&(pe.undefined(i.command)||e3.is(i.command))}G(t,"is"),A.is=t}(doA||(doA={})),function(A){function e(r,i){return{tabSize:r,insertSpaces:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&pe.uinteger(i.tabSize)&&pe.boolean(i.insertSpaces)}G(t,"is"),A.is=t}(IoA||(IoA={})),function(A){function e(r,i,u){return{range:r,target:i,data:u}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&mi.is(i.range)&&(pe.undefined(i.target)||pe.string(i.target))}G(t,"is"),A.is=t}(hoA||(hoA={})),function(A){function e(r,i){return{range:r,parent:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&mi.is(i.range)&&(i.parent===void 0||A.is(i.parent))}G(t,"is"),A.is=t}(QoA||(QoA={})),function(A){A.namespace="namespace",A.type="type",A.class="class",A.enum="enum",A.interface="interface",A.struct="struct",A.typeParameter="typeParameter",A.parameter="parameter",A.variable="variable",A.property="property",A.enumMember="enumMember",A.event="event",A.function="function",A.method="method",A.macro="macro",A.keyword="keyword",A.modifier="modifier",A.comment="comment",A.string="string",A.number="number",A.regexp="regexp",A.operator="operator",A.decorator="decorator"}(poA||(poA={})),function(A){A.declaration="declaration",A.definition="definition",A.readonly="readonly",A.static="static",A.deprecated="deprecated",A.abstract="abstract",A.async="async",A.modification="modification",A.documentation="documentation",A.defaultLibrary="defaultLibrary"}(foA||(foA={})),function(A){function e(t){let r=t;return pe.objectLiteral(r)&&(r.resultId===void 0||typeof r.resultId==="string")&&Array.isArray(r.data)&&(r.data.length===0||typeof r.data[0]==="number")}G(e,"is"),A.is=e}(moA||(moA={})),function(A){function e(r,i){return{range:r,text:i}}G(e,"create"),A.create=e;function t(r){let i=r;return i!==void 0&&i!==null&&mi.is(i.range)&&pe.string(i.text)}G(t,"is"),A.is=t}(DoA||(DoA={})),function(A){function e(r,i,u){return{range:r,variableName:i,caseSensitiveLookup:u}}G(e,"create"),A.create=e;function t(r){let i=r;return i!==void 0&&i!==null&&mi.is(i.range)&&pe.boolean(i.caseSensitiveLookup)&&(pe.string(i.variableName)||i.variableName===void 0)}G(t,"is"),A.is=t}(yoA||(yoA={})),function(A){function e(r,i){return{range:r,expression:i}}G(e,"create"),A.create=e;function t(r){let i=r;return i!==void 0&&i!==null&&mi.is(i.range)&&(pe.string(i.expression)||i.expression===void 0)}G(t,"is"),A.is=t}(woA||(woA={})),function(A){function e(r,i){return{frameId:r,stoppedLocation:i}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.defined(i)&&mi.is(r.stoppedLocation)}G(t,"is"),A.is=t}(boA||(boA={})),function(A){A.Type=1,A.Parameter=2;function e(t){return t===1||t===2}G(e,"is"),A.is=e}(ZY||(ZY={})),function(A){function e(r){return{value:r}}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&(i.tooltip===void 0||pe.string(i.tooltip)||mw.is(i.tooltip))&&(i.location===void 0||BF.is(i.location))&&(i.command===void 0||e3.is(i.command))}G(t,"is"),A.is=t}(VY||(VY={})),function(A){function e(r,i,u){let a={position:r,label:i};if(u!==void 0)a.kind=u;return a}G(e,"create"),A.create=e;function t(r){let i=r;return pe.objectLiteral(i)&&su.is(i.position)&&(pe.string(i.label)||pe.typedArray(i.label,VY.is))&&(i.kind===void 0||ZY.is(i.kind))&&i.textEdits===void 0||pe.typedArray(i.textEdits,xE.is)&&(i.tooltip===void 0||pe.string(i.tooltip)||mw.is(i.tooltip))&&(i.paddingLeft===void 0||pe.boolean(i.paddingLeft))&&(i.paddingRight===void 0||pe.boolean(i.paddingRight))}G(t,"is"),A.is=t}(voA||(voA={})),function(A){function e(t){return{kind:"snippet",value:t}}G(e,"createSnippet"),A.createSnippet=e}(koA||(koA={})),function(A){function e(t,r,i,u){return{insertText:t,filterText:r,range:i,command:u}}G(e,"create"),A.create=e}(FoA||(FoA={})),function(A){function e(t){return{items:t}}G(e,"create"),A.create=e}(xoA||(xoA={})),function(A){A.Invoked=0,A.Automatic=1}(SoA||(SoA={})),function(A){function e(t,r){return{range:t,text:r}}G(e,"create"),A.create=e}(LoA||(LoA={})),function(A){function e(t,r){return{triggerKind:t,selectedCompletionInfo:r}}G(e,"create"),A.create=e}(RoA||(RoA={})),function(A){function e(t){let r=t;return pe.objectLiteral(r)&&PY.is(r.uri)&&pe.string(r.name)}G(e,"is"),A.is=e}(NoA||(NoA={})),F_A=[`
`,`\r
`,"\r"],function(A){function e(u,a,n,o){return new MOA(u,a,n,o)}G(e,"create"),A.create=e;function t(u){let a=u;return pe.defined(a)&&pe.string(a.uri)&&(pe.undefined(a.languageId)||pe.string(a.languageId))&&pe.uinteger(a.lineCount)&&pe.func(a.getText)&&pe.func(a.positionAt)&&pe.func(a.offsetAt)?!0:!1}G(t,"is"),A.is=t;function r(u,a){let n=u.getText(),o=i(a,(l,g)=>{let C=l.range.start.line-g.range.start.line;if(C===0)return l.range.start.character-g.range.start.character;return C}),s=n.length;for(let l=o.length-1;l>=0;l--){let g=o[l],C=u.offsetAt(g.range.start),B=u.offsetAt(g.range.end);if(B<=s)n=n.substring(0,C)+g.newText+n.substring(B,n.length);else throw Error("Overlapping edit");s=C}return n}G(r,"applyEdits"),A.applyEdits=r;function i(u,a){if(u.length<=1)return u;let n=u.length/2|0,o=u.slice(0,n),s=u.slice(n);i(o,a),i(s,a);let l=0,g=0,C=0;while(l<o.length&&g<s.length)if(a(o[l],s[g])<=0)u[C++]=o[l++];else u[C++]=s[g++];while(l<o.length)u[C++]=o[l++];while(g<s.length)u[C++]=s[g++];return u}G(i,"mergeSort")}(GoA||(GoA={})),MOA=class{static{G(this,"FullTextDocument")}constructor(A,e,t,r){this._uri=A,this._languageId=e,this._version=t,this._content=r,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(A){if(A){let e=this.offsetAt(A.start),t=this.offsetAt(A.end);return this._content.substring(e,t)}return this._content}update(A,e){this._content=A.text,this._version=e,this._lineOffsets=void 0}getLineOffsets(){if(this._lineOffsets===void 0){let A=[],e=this._content,t=!0;for(let r=0;r<e.length;r++){if(t)A.push(r),t=!1;let i=e.charAt(r);if(t=i==="\r"||i===`
`,i==="\r"&&r+1<e.length&&e.charAt(r+1)===`
`)r++}if(t&&e.length>0)A.push(e.length);this._lineOffsets=A}return this._lineOffsets}positionAt(A){A=Math.max(Math.min(A,this._content.length),0);let e=this.getLineOffsets(),t=0,r=e.length;if(r===0)return su.create(0,A);while(t<r){let u=Math.floor((t+r)/2);if(e[u]>A)r=u;else t=u+1}let i=t-1;return su.create(i,A-e[i])}offsetAt(A){let e=this.getLineOffsets();if(A.line>=e.length)return this._content.length;else if(A.line<0)return 0;let t=e[A.line],r=A.line+1<e.length?e[A.line+1]:this._content.length;return Math.max(Math.min(t+A.character,r),t)}get lineCount(){return this.getLineOffsets().length}},function(A){let e=Object.prototype.toString;function t(B){return typeof B<"u"}G(t,"defined"),A.defined=t;function r(B){return typeof B>"u"}G(r,"undefined"),A.undefined=r;function i(B){return B===!0||B===!1}G(i,"boolean"),A.boolean=i;function u(B){return e.call(B)==="[object String]"}G(u,"string"),A.string=u;function a(B){return e.call(B)==="[object Number]"}G(a,"number"),A.number=a;function n(B,E,d){return e.call(B)==="[object Number]"&&E<=B&&B<=d}G(n,"numberRange"),A.numberRange=n;function o(B){return e.call(B)==="[object Number]"&&-2147483648<=B&&B<=2147483647}G(o,"integer"),A.integer=o;function s(B){return e.call(B)==="[object Number]"&&0<=B&&B<=2147483647}G(s,"uinteger"),A.uinteger=s;function l(B){return e.call(B)==="[object Function]"}G(l,"func"),A.func=l;function g(B){return B!==null&&typeof B==="object"}G(g,"objectLiteral"),A.objectLiteral=g;function C(B,E){return Array.isArray(B)&&B.every(E)}G(C,"typedArray"),A.typedArray=C}(pe||(pe={}))}}),N3=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/ral.js"(A){Object.defineProperty(A,"__esModule",{value:!0});var e;function t(){if(e===void 0)throw Error("No runtime abstraction layer installed");return e}G(t,"RAL"),function(r){function i(u){if(u===void 0)throw Error("No runtime abstraction layer provided");e=u}G(i,"install"),r.install=i}(t||(t={})),A.default=t}}),Bx=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/is.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.stringArray=A.array=A.func=A.error=A.number=A.string=A.boolean=void 0;function e(o){return o===!0||o===!1}G(e,"boolean"),A.boolean=e;function t(o){return typeof o==="string"||o instanceof String}G(t,"string"),A.string=t;function r(o){return typeof o==="number"||o instanceof Number}G(r,"number"),A.number=r;function i(o){return o instanceof Error}G(i,"error"),A.error=i;function u(o){return typeof o==="function"}G(u,"func"),A.func=u;function a(o){return Array.isArray(o)}G(a,"array"),A.array=a;function n(o){return a(o)&&o.every((s)=>t(s))}G(n,"stringArray"),A.stringArray=n}}),jw=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/events.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.Emitter=A.Event=void 0;var e=N3(),t;(function(u){let a={dispose(){}};u.None=function(){return a}})(t||(A.Event=t={}));var r=class{static{G(this,"CallbackList")}add(u,a=null,n){if(!this._callbacks)this._callbacks=[],this._contexts=[];if(this._callbacks.push(u),this._contexts.push(a),Array.isArray(n))n.push({dispose:G(()=>this.remove(u,a),"dispose")})}remove(u,a=null){if(!this._callbacks)return;let n=!1;for(let o=0,s=this._callbacks.length;o<s;o++)if(this._callbacks[o]===u)if(this._contexts[o]===a){this._callbacks.splice(o,1),this._contexts.splice(o,1);return}else n=!0;if(n)throw Error("When adding a listener with a context, you should remove it with the same context")}invoke(...u){if(!this._callbacks)return[];let a=[],n=this._callbacks.slice(0),o=this._contexts.slice(0);for(let s=0,l=n.length;s<l;s++)try{a.push(n[s].apply(o[s],u))}catch(g){(0,e.default)().console.error(g)}return a}isEmpty(){return!this._callbacks||this._callbacks.length===0}dispose(){this._callbacks=void 0,this._contexts=void 0}},i=class u{static{G(this,"Emitter")}constructor(a){this._options=a}get event(){if(!this._event)this._event=(a,n,o)=>{if(!this._callbacks)this._callbacks=new r;if(this._options&&this._options.onFirstListenerAdd&&this._callbacks.isEmpty())this._options.onFirstListenerAdd(this);this._callbacks.add(a,n);let s={dispose:G(()=>{if(!this._callbacks)return;if(this._callbacks.remove(a,n),s.dispose=u._noop,this._options&&this._options.onLastListenerRemove&&this._callbacks.isEmpty())this._options.onLastListenerRemove(this)},"dispose")};if(Array.isArray(o))o.push(s);return s};return this._event}fire(a){if(this._callbacks)this._callbacks.invoke.call(this._callbacks,a)}dispose(){if(this._callbacks)this._callbacks.dispose(),this._callbacks=void 0}};A.Emitter=i,i._noop=function(){}}}),RK=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/cancellation.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.CancellationTokenSource=A.CancellationToken=void 0;var e=N3(),t=Bx(),r=jw(),i;(function(o){o.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:r.Event.None}),o.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:r.Event.None});function s(l){let g=l;return g&&(g===o.None||g===o.Cancelled||t.boolean(g.isCancellationRequested)&&!!g.onCancellationRequested)}G(s,"is"),o.is=s})(i||(A.CancellationToken=i={}));var u=Object.freeze(function(o,s){let l=(0,e.default)().timer.setTimeout(o.bind(s),0);return{dispose(){l.dispose()}}}),a=class{static{G(this,"MutableToken")}constructor(){this._isCancelled=!1}cancel(){if(!this._isCancelled){if(this._isCancelled=!0,this._emitter)this._emitter.fire(void 0),this.dispose()}}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){if(this._isCancelled)return u;if(!this._emitter)this._emitter=new r.Emitter;return this._emitter.event}dispose(){if(this._emitter)this._emitter.dispose(),this._emitter=void 0}},n=class{static{G(this,"CancellationTokenSource")}get token(){if(!this._token)this._token=new a;return this._token}cancel(){if(!this._token)this._token=i.Cancelled;else this._token.cancel()}dispose(){if(!this._token)this._token=i.None;else if(this._token instanceof a)this._token.dispose()}};A.CancellationTokenSource=n}}),x_A=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messages.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.Message=A.NotificationType9=A.NotificationType8=A.NotificationType7=A.NotificationType6=A.NotificationType5=A.NotificationType4=A.NotificationType3=A.NotificationType2=A.NotificationType1=A.NotificationType0=A.NotificationType=A.RequestType9=A.RequestType8=A.RequestType7=A.RequestType6=A.RequestType5=A.RequestType4=A.RequestType3=A.RequestType2=A.RequestType1=A.RequestType=A.RequestType0=A.AbstractMessageSignature=A.ParameterStructures=A.ResponseError=A.ErrorCodes=void 0;var e=Bx(),t;(function(F){F.ParseError=-32700,F.InvalidRequest=-32600,F.MethodNotFound=-32601,F.InvalidParams=-32602,F.InternalError=-32603,F.jsonrpcReservedErrorRangeStart=-32099,F.serverErrorStart=-32099,F.MessageWriteError=-32099,F.MessageReadError=-32098,F.PendingResponseRejected=-32097,F.ConnectionInactive=-32096,F.ServerNotInitialized=-32002,F.UnknownErrorCode=-32001,F.jsonrpcReservedErrorRangeEnd=-32000,F.serverErrorEnd=-32000})(t||(A.ErrorCodes=t={}));var r=class F extends Error{static{G(this,"ResponseError")}constructor(T,R,L){super(R);this.code=e.number(T)?T:t.UnknownErrorCode,this.data=L,Object.setPrototypeOf(this,F.prototype)}toJson(){let T={code:this.code,message:this.message};if(this.data!==void 0)T.data=this.data;return T}};A.ResponseError=r;var i=class F{static{G(this,"ParameterStructures")}constructor(T){this.kind=T}static is(T){return T===F.auto||T===F.byName||T===F.byPosition}toString(){return this.kind}};A.ParameterStructures=i,i.auto=new i("auto"),i.byPosition=new i("byPosition"),i.byName=new i("byName");var u=class{static{G(this,"AbstractMessageSignature")}constructor(F,T){this.method=F,this.numberOfParams=T}get parameterStructures(){return i.auto}};A.AbstractMessageSignature=u;var a=class extends u{static{G(this,"RequestType0")}constructor(F){super(F,0)}};A.RequestType0=a;var n=class extends u{static{G(this,"RequestType")}constructor(F,T=i.auto){super(F,1);this._parameterStructures=T}get parameterStructures(){return this._parameterStructures}};A.RequestType=n;var o=class extends u{static{G(this,"RequestType1")}constructor(F,T=i.auto){super(F,1);this._parameterStructures=T}get parameterStructures(){return this._parameterStructures}};A.RequestType1=o;var s=class extends u{static{G(this,"RequestType2")}constructor(F){super(F,2)}};A.RequestType2=s;var l=class extends u{static{G(this,"RequestType3")}constructor(F){super(F,3)}};A.RequestType3=l;var g=class extends u{static{G(this,"RequestType4")}constructor(F){super(F,4)}};A.RequestType4=g;var C=class extends u{static{G(this,"RequestType5")}constructor(F){super(F,5)}};A.RequestType5=C;var B=class extends u{static{G(this,"RequestType6")}constructor(F){super(F,6)}};A.RequestType6=B;var E=class extends u{static{G(this,"RequestType7")}constructor(F){super(F,7)}};A.RequestType7=E;var d=class extends u{static{G(this,"RequestType8")}constructor(F){super(F,8)}};A.RequestType8=d;var I=class extends u{static{G(this,"RequestType9")}constructor(F){super(F,9)}};A.RequestType9=I;var h=class extends u{static{G(this,"NotificationType")}constructor(F,T=i.auto){super(F,1);this._parameterStructures=T}get parameterStructures(){return this._parameterStructures}};A.NotificationType=h;var Q=class extends u{static{G(this,"NotificationType0")}constructor(F){super(F,0)}};A.NotificationType0=Q;var p=class extends u{static{G(this,"NotificationType1")}constructor(F,T=i.auto){super(F,1);this._parameterStructures=T}get parameterStructures(){return this._parameterStructures}};A.NotificationType1=p;var m=class extends u{static{G(this,"NotificationType2")}constructor(F){super(F,2)}};A.NotificationType2=m;var f=class extends u{static{G(this,"NotificationType3")}constructor(F){super(F,3)}};A.NotificationType3=f;var D=class extends u{static{G(this,"NotificationType4")}constructor(F){super(F,4)}};A.NotificationType4=D;var w=class extends u{static{G(this,"NotificationType5")}constructor(F){super(F,5)}};A.NotificationType5=w;var b=class extends u{static{G(this,"NotificationType6")}constructor(F){super(F,6)}};A.NotificationType6=b;var k=class extends u{static{G(this,"NotificationType7")}constructor(F){super(F,7)}};A.NotificationType7=k;var v=class extends u{static{G(this,"NotificationType8")}constructor(F){super(F,8)}};A.NotificationType8=v;var S=class extends u{static{G(this,"NotificationType9")}constructor(F){super(F,9)}};A.NotificationType9=S;var x;(function(F){function T(M){let U=M;return U&&e.string(U.method)&&(e.string(U.id)||e.number(U.id))}G(T,"isRequest"),F.isRequest=T;function R(M){let U=M;return U&&e.string(U.method)&&M.id===void 0}G(R,"isNotification"),F.isNotification=R;function L(M){let U=M;return U&&(U.result!==void 0||!!U.error)&&(e.string(U.id)||e.number(U.id)||U.id===null)}G(L,"isResponse"),F.isResponse=L})(x||(A.Message=x={}))}}),S_A=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/linkedMap.js"(A){var e;Object.defineProperty(A,"__esModule",{value:!0}),A.LRUCache=A.LinkedMap=A.Touch=void 0;var t;(function(u){u.None=0,u.First=1,u.AsOld=u.First,u.Last=2,u.AsNew=u.Last})(t||(A.Touch=t={}));var r=class{static{G(this,"LinkedMap")}constructor(){this[e]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){return this._head?.value}get last(){return this._tail?.value}has(u){return this._map.has(u)}get(u,a=t.None){let n=this._map.get(u);if(!n)return;if(a!==t.None)this.touch(n,a);return n.value}set(u,a,n=t.None){let o=this._map.get(u);if(o){if(o.value=a,n!==t.None)this.touch(o,n)}else{switch(o={key:u,value:a,next:void 0,previous:void 0},n){case t.None:this.addItemLast(o);break;case t.First:this.addItemFirst(o);break;case t.Last:this.addItemLast(o);break;default:this.addItemLast(o);break}this._map.set(u,o),this._size++}return this}delete(u){return!!this.remove(u)}remove(u){let a=this._map.get(u);if(!a)return;return this._map.delete(u),this.removeItem(a),this._size--,a.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw Error("Invalid list");let u=this._head;return this._map.delete(u.key),this.removeItem(u),this._size--,u.value}forEach(u,a){let n=this._state,o=this._head;while(o){if(a)u.bind(a)(o.value,o.key,this);else u(o.value,o.key,this);if(this._state!==n)throw Error("LinkedMap got modified during iteration.");o=o.next}}keys(){let u=this._state,a=this._head,n={[Symbol.iterator]:()=>n,next:G(()=>{if(this._state!==u)throw Error("LinkedMap got modified during iteration.");if(a){let o={value:a.key,done:!1};return a=a.next,o}else return{value:void 0,done:!0}},"next")};return n}values(){let u=this._state,a=this._head,n={[Symbol.iterator]:()=>n,next:G(()=>{if(this._state!==u)throw Error("LinkedMap got modified during iteration.");if(a){let o={value:a.value,done:!1};return a=a.next,o}else return{value:void 0,done:!0}},"next")};return n}entries(){let u=this._state,a=this._head,n={[Symbol.iterator]:()=>n,next:G(()=>{if(this._state!==u)throw Error("LinkedMap got modified during iteration.");if(a){let o={value:[a.key,a.value],done:!1};return a=a.next,o}else return{value:void 0,done:!0}},"next")};return n}[(e=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(u){if(u>=this.size)return;if(u===0){this.clear();return}let a=this._head,n=this.size;while(a&&n>u)this._map.delete(a.key),a=a.next,n--;if(this._head=a,this._size=n,a)a.previous=void 0;this._state++}addItemFirst(u){if(!this._head&&!this._tail)this._tail=u;else if(!this._head)throw Error("Invalid list");else u.next=this._head,this._head.previous=u;this._head=u,this._state++}addItemLast(u){if(!this._head&&!this._tail)this._head=u;else if(!this._tail)throw Error("Invalid list");else u.previous=this._tail,this._tail.next=u;this._tail=u,this._state++}removeItem(u){if(u===this._head&&u===this._tail)this._head=void 0,this._tail=void 0;else if(u===this._head){if(!u.next)throw Error("Invalid list");u.next.previous=void 0,this._head=u.next}else if(u===this._tail){if(!u.previous)throw Error("Invalid list");u.previous.next=void 0,this._tail=u.previous}else{let{next:a,previous:n}=u;if(!a||!n)throw Error("Invalid list");a.previous=n,n.next=a}u.next=void 0,u.previous=void 0,this._state++}touch(u,a){if(!this._head||!this._tail)throw Error("Invalid list");if(a!==t.First&&a!==t.Last)return;if(a===t.First){if(u===this._head)return;let{next:n,previous:o}=u;if(u===this._tail)o.next=void 0,this._tail=o;else n.previous=o,o.next=n;u.previous=void 0,u.next=this._head,this._head.previous=u,this._head=u,this._state++}else if(a===t.Last){if(u===this._tail)return;let{next:n,previous:o}=u;if(u===this._head)n.previous=void 0,this._head=n;else n.previous=o,o.next=n;u.next=void 0,u.previous=this._tail,this._tail.next=u,this._tail=u,this._state++}}toJSON(){let u=[];return this.forEach((a,n)=>{u.push([n,a])}),u}fromJSON(u){this.clear();for(let[a,n]of u)this.set(a,n)}};A.LinkedMap=r;var i=class extends r{static{G(this,"LRUCache")}constructor(u,a=1){super();this._limit=u,this._ratio=Math.min(Math.max(0,a),1)}get limit(){return this._limit}set limit(u){this._limit=u,this.checkTrim()}get ratio(){return this._ratio}set ratio(u){this._ratio=Math.min(Math.max(0,u),1),this.checkTrim()}get(u,a=t.AsNew){return super.get(u,a)}peek(u){return super.get(u,t.None)}set(u,a){return super.set(u,a,t.Last),this.checkTrim(),this}checkTrim(){if(this.size>this._limit)this.trimOld(Math.round(this._limit*this._ratio))}};A.LRUCache=i}}),m2t=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/disposable.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.Disposable=void 0;var e;(function(t){function r(i){return{dispose:i}}G(r,"create"),t.create=r})(e||(A.Disposable=e={}))}}),D2t=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.SharedArrayReceiverStrategy=A.SharedArraySenderStrategy=void 0;var e=RK(),t;(function(n){n.Continue=0,n.Cancelled=1})(t||(t={}));var r=class{static{G(this,"SharedArraySenderStrategy")}constructor(){this.buffers=new Map}enableCancellation(n){if(n.id===null)return;let o=new SharedArrayBuffer(4),s=new Int32Array(o,0,1);s[0]=t.Continue,this.buffers.set(n.id,o),n.$cancellationData=o}async sendCancellation(n,o){let s=this.buffers.get(o);if(s===void 0)return;let l=new Int32Array(s,0,1);Atomics.store(l,0,t.Cancelled)}cleanup(n){this.buffers.delete(n)}dispose(){this.buffers.clear()}};A.SharedArraySenderStrategy=r;var i=class{static{G(this,"SharedArrayBufferCancellationToken")}constructor(n){this.data=new Int32Array(n,0,1)}get isCancellationRequested(){return Atomics.load(this.data,0)===t.Cancelled}get onCancellationRequested(){throw Error("Cancellation over SharedArrayBuffer doesn't support cancellation events")}},u=class{static{G(this,"SharedArrayBufferCancellationTokenSource")}constructor(n){this.token=new i(n)}cancel(){}dispose(){}},a=class{static{G(this,"SharedArrayReceiverStrategy")}constructor(){this.kind="request"}createCancellationTokenSource(n){let o=n.$cancellationData;if(o===void 0)return new e.CancellationTokenSource;return new u(o)}};A.SharedArrayReceiverStrategy=a}}),L_A=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/semaphore.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.Semaphore=void 0;var e=N3(),t=class{static{G(this,"Semaphore")}constructor(r=1){if(r<=0)throw Error("Capacity must be greater than 0");this._capacity=r,this._active=0,this._waiting=[]}lock(r){return new Promise((i,u)=>{this._waiting.push({thunk:r,resolve:i,reject:u}),this.runNext()})}get active(){return this._active}runNext(){if(this._waiting.length===0||this._active===this._capacity)return;(0,e.default)().timer.setImmediate(()=>this.doRunNext())}doRunNext(){if(this._waiting.length===0||this._active===this._capacity)return;let r=this._waiting.shift();if(this._active++,this._active>this._capacity)throw Error("To many thunks active");try{let i=r.thunk();if(i instanceof Promise)i.then((u)=>{this._active--,r.resolve(u),this.runNext()},(u)=>{this._active--,r.reject(u),this.runNext()});else this._active--,r.resolve(i),this.runNext()}catch(i){this._active--,r.reject(i),this.runNext()}}};A.Semaphore=t}}),y2t=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageReader.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ReadableStreamMessageReader=A.AbstractMessageReader=A.MessageReader=void 0;var e=N3(),t=Bx(),r=jw(),i=L_A(),u;(function(s){function l(g){let C=g;return C&&t.func(C.listen)&&t.func(C.dispose)&&t.func(C.onError)&&t.func(C.onClose)&&t.func(C.onPartialMessage)}G(l,"is"),s.is=l})(u||(A.MessageReader=u={}));var a=class{static{G(this,"AbstractMessageReader")}constructor(){this.errorEmitter=new r.Emitter,this.closeEmitter=new r.Emitter,this.partialMessageEmitter=new r.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(s){this.errorEmitter.fire(this.asError(s))}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}get onPartialMessage(){return this.partialMessageEmitter.event}firePartialMessage(s){this.partialMessageEmitter.fire(s)}asError(s){if(s instanceof Error)return s;else return Error(`Reader received error. Reason: ${t.string(s.message)?s.message:"unknown"}`)}};A.AbstractMessageReader=a;var n;(function(s){function l(g){let C,B,E,d=new Map,I,h=new Map;if(g===void 0||typeof g==="string")C=g??"utf-8";else{if(C=g.charset??"utf-8",g.contentDecoder!==void 0)E=g.contentDecoder,d.set(E.name,E);if(g.contentDecoders!==void 0)for(let Q of g.contentDecoders)d.set(Q.name,Q);if(g.contentTypeDecoder!==void 0)I=g.contentTypeDecoder,h.set(I.name,I);if(g.contentTypeDecoders!==void 0)for(let Q of g.contentTypeDecoders)h.set(Q.name,Q)}if(I===void 0)I=(0,e.default)().applicationJson.decoder,h.set(I.name,I);return{charset:C,contentDecoder:E,contentDecoders:d,contentTypeDecoder:I,contentTypeDecoders:h}}G(l,"fromOptions"),s.fromOptions=l})(n||(n={}));var o=class extends a{static{G(this,"ReadableStreamMessageReader")}constructor(s,l){super();this.readable=s,this.options=n.fromOptions(l),this.buffer=(0,e.default)().messageBuffer.create(this.options.charset),this._partialMessageTimeout=1e4,this.nextMessageLength=-1,this.messageToken=0,this.readSemaphore=new i.Semaphore(1)}set partialMessageTimeout(s){this._partialMessageTimeout=s}get partialMessageTimeout(){return this._partialMessageTimeout}listen(s){this.nextMessageLength=-1,this.messageToken=0,this.partialMessageTimer=void 0,this.callback=s;let l=this.readable.onData((g)=>{this.onData(g)});return this.readable.onError((g)=>this.fireError(g)),this.readable.onClose(()=>this.fireClose()),l}onData(s){try{this.buffer.append(s);while(!0){if(this.nextMessageLength===-1){let g=this.buffer.tryReadHeaders(!0);if(!g)return;let C=g.get("content-length");if(!C){this.fireError(Error(`Header must provide a Content-Length property.
${JSON.stringify(Object.fromEntries(g))}`));return}let B=parseInt(C);if(isNaN(B)){this.fireError(Error(`Content-Length value must be a number. Got ${C}`));return}this.nextMessageLength=B}let l=this.buffer.tryReadBody(this.nextMessageLength);if(l===void 0){this.setPartialMessageTimer();return}this.clearPartialMessageTimer(),this.nextMessageLength=-1,this.readSemaphore.lock(async()=>{let g=this.options.contentDecoder!==void 0?await this.options.contentDecoder.decode(l):l,C=await this.options.contentTypeDecoder.decode(g,this.options);this.callback(C)}).catch((g)=>{this.fireError(g)})}}catch(l){this.fireError(l)}}clearPartialMessageTimer(){if(this.partialMessageTimer)this.partialMessageTimer.dispose(),this.partialMessageTimer=void 0}setPartialMessageTimer(){if(this.clearPartialMessageTimer(),this._partialMessageTimeout<=0)return;this.partialMessageTimer=(0,e.default)().timer.setTimeout((s,l)=>{if(this.partialMessageTimer=void 0,s===this.messageToken)this.firePartialMessage({messageToken:s,waitingTime:l}),this.setPartialMessageTimer()},this._partialMessageTimeout,this.messageToken,this._partialMessageTimeout)}};A.ReadableStreamMessageReader=o}}),w2t=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageWriter.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.WriteableStreamMessageWriter=A.AbstractMessageWriter=A.MessageWriter=void 0;var e=N3(),t=Bx(),r=L_A(),i=jw(),u="Content-Length: ",a=`\r
`,n;(function(g){function C(B){let E=B;return E&&t.func(E.dispose)&&t.func(E.onClose)&&t.func(E.onError)&&t.func(E.write)}G(C,"is"),g.is=C})(n||(A.MessageWriter=n={}));var o=class{static{G(this,"AbstractMessageWriter")}constructor(){this.errorEmitter=new i.Emitter,this.closeEmitter=new i.Emitter}dispose(){this.errorEmitter.dispose(),this.closeEmitter.dispose()}get onError(){return this.errorEmitter.event}fireError(g,C,B){this.errorEmitter.fire([this.asError(g),C,B])}get onClose(){return this.closeEmitter.event}fireClose(){this.closeEmitter.fire(void 0)}asError(g){if(g instanceof Error)return g;else return Error(`Writer received error. Reason: ${t.string(g.message)?g.message:"unknown"}`)}};A.AbstractMessageWriter=o;var s;(function(g){function C(B){if(B===void 0||typeof B==="string")return{charset:B??"utf-8",contentTypeEncoder:(0,e.default)().applicationJson.encoder};else return{charset:B.charset??"utf-8",contentEncoder:B.contentEncoder,contentTypeEncoder:B.contentTypeEncoder??(0,e.default)().applicationJson.encoder}}G(C,"fromOptions"),g.fromOptions=C})(s||(s={}));var l=class extends o{static{G(this,"WriteableStreamMessageWriter")}constructor(g,C){super();this.writable=g,this.options=s.fromOptions(C),this.errorCount=0,this.writeSemaphore=new r.Semaphore(1),this.writable.onError((B)=>this.fireError(B)),this.writable.onClose(()=>this.fireClose())}async write(g){return this.writeSemaphore.lock(async()=>this.options.contentTypeEncoder.encode(g,this.options).then((B)=>{if(this.options.contentEncoder!==void 0)return this.options.contentEncoder.encode(B);else return B}).then((B)=>{let E=[];return E.push(u,B.byteLength.toString(),a),E.push(a),this.doWrite(g,E,B)},(B)=>{throw this.fireError(B),B}))}async doWrite(g,C,B){try{return await this.writable.write(C.join(""),"ascii"),this.writable.write(B)}catch(E){return this.handleError(E,g),Promise.reject(E)}}handleError(g,C){this.errorCount++,this.fireError(g,C,this.errorCount)}end(){this.writable.end()}};A.WriteableStreamMessageWriter=l}}),b2t=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.AbstractMessageBuffer=void 0;var e=13,t=10,r=`\r
`,i=class{static{G(this,"AbstractMessageBuffer")}constructor(u="utf-8"){this._encoding=u,this._chunks=[],this._totalLength=0}get encoding(){return this._encoding}append(u){let a=typeof u==="string"?this.fromString(u,this._encoding):u;this._chunks.push(a),this._totalLength+=a.byteLength}tryReadHeaders(u=!1){if(this._chunks.length===0)return;let a=0,n=0,o=0,s=0;A:while(n<this._chunks.length){let B=this._chunks[n];o=0;e:while(o<B.length){switch(B[o]){case e:switch(a){case 0:a=1;break;case 2:a=3;break;default:a=0}break;case t:switch(a){case 1:a=2;break;case 3:a=4,o++;break A;default:a=0}break;default:a=0}o++}s+=B.byteLength,n++}if(a!==4)return;let l=this._read(s+o),g=new Map,C=this.toString(l,"ascii").split(r);if(C.length<2)return g;for(let B=0;B<C.length-2;B++){let E=C[B],d=E.indexOf(":");if(d===-1)throw Error(`Message header must separate key and value using ':'
${E}`);let I=E.substr(0,d),h=E.substr(d+1).trim();g.set(u?I.toLowerCase():I,h)}return g}tryReadBody(u){if(this._totalLength<u)return;return this._read(u)}get numberOfBytes(){return this._totalLength}_read(u){if(u===0)return this.emptyBuffer();if(u>this._totalLength)throw Error("Cannot read so many bytes!");if(this._chunks[0].byteLength===u){let s=this._chunks[0];return this._chunks.shift(),this._totalLength-=u,this.asNative(s)}if(this._chunks[0].byteLength>u){let s=this._chunks[0],l=this.asNative(s,u);return this._chunks[0]=s.slice(u),this._totalLength-=u,l}let a=this.allocNative(u),n=0,o=0;while(u>0){let s=this._chunks[o];if(s.byteLength>u){let l=s.slice(0,u);a.set(l,n),n+=u,this._chunks[o]=s.slice(u),this._totalLength-=u,u-=u}else a.set(s,n),n+=s.byteLength,this._chunks.shift(),this._totalLength-=s.byteLength,u-=s.byteLength}return a}};A.AbstractMessageBuffer=i}}),v2t=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/connection.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.createMessageConnection=A.ConnectionOptions=A.MessageStrategy=A.CancellationStrategy=A.CancellationSenderStrategy=A.CancellationReceiverStrategy=A.RequestCancellationReceiverStrategy=A.IdCancellationReceiverStrategy=A.ConnectionStrategy=A.ConnectionError=A.ConnectionErrors=A.LogTraceNotification=A.SetTraceNotification=A.TraceFormat=A.TraceValues=A.Trace=A.NullLogger=A.ProgressType=A.ProgressToken=void 0;var e=N3(),t=Bx(),r=x_A(),i=S_A(),u=jw(),a=RK(),n;(function(F){F.type=new r.NotificationType("$/cancelRequest")})(n||(n={}));var o;(function(F){function T(R){return typeof R==="string"||typeof R==="number"}G(T,"is"),F.is=T})(o||(A.ProgressToken=o={}));var s;(function(F){F.type=new r.NotificationType("$/progress")})(s||(s={}));var l=class{static{G(this,"ProgressType")}constructor(){}};A.ProgressType=l;var g;(function(F){function T(R){return t.func(R)}G(T,"is"),F.is=T})(g||(g={})),A.NullLogger=Object.freeze({error:G(()=>{},"error"),warn:G(()=>{},"warn"),info:G(()=>{},"info"),log:G(()=>{},"log")});var C;(function(F){F[F.Off=0]="Off",F[F.Messages=1]="Messages",F[F.Compact=2]="Compact",F[F.Verbose=3]="Verbose"})(C||(A.Trace=C={}));var B;(function(F){F.Off="off",F.Messages="messages",F.Compact="compact",F.Verbose="verbose"})(B||(A.TraceValues=B={})),function(F){function T(L){if(!t.string(L))return F.Off;switch(L=L.toLowerCase(),L){case"off":return F.Off;case"messages":return F.Messages;case"compact":return F.Compact;case"verbose":return F.Verbose;default:return F.Off}}G(T,"fromString"),F.fromString=T;function R(L){switch(L){case F.Off:return"off";case F.Messages:return"messages";case F.Compact:return"compact";case F.Verbose:return"verbose";default:return"off"}}G(R,"toString"),F.toString=R}(C||(A.Trace=C={}));var E;(function(F){F.Text="text",F.JSON="json"})(E||(A.TraceFormat=E={})),function(F){function T(R){if(!t.string(R))return F.Text;if(R=R.toLowerCase(),R==="json")return F.JSON;else return F.Text}G(T,"fromString"),F.fromString=T}(E||(A.TraceFormat=E={}));var d;(function(F){F.type=new r.NotificationType("$/setTrace")})(d||(A.SetTraceNotification=d={}));var I;(function(F){F.type=new r.NotificationType("$/logTrace")})(I||(A.LogTraceNotification=I={}));var h;(function(F){F[F.Closed=1]="Closed",F[F.Disposed=2]="Disposed",F[F.AlreadyListening=3]="AlreadyListening"})(h||(A.ConnectionErrors=h={}));var Q=class F extends Error{static{G(this,"ConnectionError")}constructor(T,R){super(R);this.code=T,Object.setPrototypeOf(this,F.prototype)}};A.ConnectionError=Q;var p;(function(F){function T(R){let L=R;return L&&t.func(L.cancelUndispatched)}G(T,"is"),F.is=T})(p||(A.ConnectionStrategy=p={}));var m;(function(F){function T(R){let L=R;return L&&(L.kind===void 0||L.kind==="id")&&t.func(L.createCancellationTokenSource)&&(L.dispose===void 0||t.func(L.dispose))}G(T,"is"),F.is=T})(m||(A.IdCancellationReceiverStrategy=m={}));var f;(function(F){function T(R){let L=R;return L&&L.kind==="request"&&t.func(L.createCancellationTokenSource)&&(L.dispose===void 0||t.func(L.dispose))}G(T,"is"),F.is=T})(f||(A.RequestCancellationReceiverStrategy=f={}));var D;(function(F){F.Message=Object.freeze({createCancellationTokenSource(R){return new a.CancellationTokenSource}});function T(R){return m.is(R)||f.is(R)}G(T,"is"),F.is=T})(D||(A.CancellationReceiverStrategy=D={}));var w;(function(F){F.Message=Object.freeze({sendCancellation(R,L){return R.sendNotification(n.type,{id:L})},cleanup(R){}});function T(R){let L=R;return L&&t.func(L.sendCancellation)&&t.func(L.cleanup)}G(T,"is"),F.is=T})(w||(A.CancellationSenderStrategy=w={}));var b;(function(F){F.Message=Object.freeze({receiver:D.Message,sender:w.Message});function T(R){let L=R;return L&&D.is(L.receiver)&&w.is(L.sender)}G(T,"is"),F.is=T})(b||(A.CancellationStrategy=b={}));var k;(function(F){function T(R){let L=R;return L&&t.func(L.handleMessage)}G(T,"is"),F.is=T})(k||(A.MessageStrategy=k={}));var v;(function(F){function T(R){let L=R;return L&&(b.is(L.cancellationStrategy)||p.is(L.connectionStrategy)||k.is(L.messageStrategy))}G(T,"is"),F.is=T})(v||(A.ConnectionOptions=v={}));var S;(function(F){F[F.New=1]="New",F[F.Listening=2]="Listening",F[F.Closed=3]="Closed",F[F.Disposed=4]="Disposed"})(S||(S={}));function x(F,T,R,L){let M=R!==void 0?R:A.NullLogger,U=0,Y=0,H=0,J="2.0",K=void 0,O=new Map,P=void 0,z=new Map,AA=new Map,W,CA=new i.LinkedMap,tA=new Map,lA=new Set,gA=new Map,aA=C.Off,NA=E.Text,DA,KA=S.New,TA=new u.Emitter,qA=new u.Emitter,IA=new u.Emitter,bA=new u.Emitter,SA=new u.Emitter,EA=L&&L.cancellationStrategy?L.cancellationStrategy:b.Message;function nA(RA){if(RA===null)throw Error("Can't send requests with id null since the response can't be correlated.");return"req-"+RA.toString()}G(nA,"createRequestQueueKey");function eA(RA){if(RA===null)return"res-unknown-"+(++H).toString();else return"res-"+RA.toString()}G(eA,"createResponseQueueKey");function BA(){return"not-"+(++Y).toString()}G(BA,"createNotificationQueueKey");function yA(RA,ce){if(r.Message.isRequest(ce))RA.set(nA(ce.id),ce);else if(r.Message.isResponse(ce))RA.set(eA(ce.id),ce);else RA.set(BA(),ce)}G(yA,"addMessageToQueue");function vA(RA){return}G(vA,"cancelUndispatched");function FA(){return KA===S.Listening}G(FA,"isListening");function HA(){return KA===S.Closed}G(HA,"isClosed");function dA(){return KA===S.Disposed}G(dA,"isDisposed");function q(){if(KA===S.New||KA===S.Listening)KA=S.Closed,qA.fire(void 0)}G(q,"closeHandler");function Z(RA){TA.fire([RA,void 0,void 0])}G(Z,"readErrorHandler");function fA(RA){TA.fire(RA)}G(fA,"writeErrorHandler"),F.onClose(q),F.onError(Z),T.onClose(q),T.onError(fA);function j(){if(W||CA.size===0)return;W=(0,e.default)().timer.setImmediate(()=>{W=void 0,rA()})}G(j,"triggerMessageQueue");function mA(RA){if(r.Message.isRequest(RA))_A(RA);else if(r.Message.isNotification(RA))WA(RA);else if(r.Message.isResponse(RA))ZA(RA);else te(RA)}G(mA,"handleMessage");function rA(){if(CA.size===0)return;let RA=CA.shift();try{let ce=L?.messageStrategy;if(k.is(ce))ce.handleMessage(RA,mA);else mA(RA)}finally{j()}}G(rA,"processMessageQueue");let JA=G((RA)=>{try{if(r.Message.isNotification(RA)&&RA.method===n.type.method){let ce=RA.params.id,me=nA(ce),Le=CA.get(me);if(r.Message.isRequest(Le)){let Je=L?.connectionStrategy,kt=Je&&Je.cancelUndispatched?Je.cancelUndispatched(Le,vA):vA(Le);if(kt&&(kt.error!==void 0||kt.result!==void 0)){CA.delete(me),gA.delete(ce),kt.id=Le.id,oe(kt,RA.method,Date.now()),T.write(kt).catch(()=>M.error("Sending response for canceled message failed."));return}}let Lt=gA.get(ce);if(Lt!==void 0){Lt.cancel(),Pe(RA);return}else lA.add(ce)}yA(CA,RA)}finally{j()}},"callback");function _A(RA){if(dA())return;function ce(Pt,dt,Yt){let Ce={jsonrpc:J,id:RA.id};if(Pt instanceof r.ResponseError)Ce.error=Pt.toJson();else Ce.result=Pt===void 0?null:Pt;oe(Ce,dt,Yt),T.write(Ce).catch(()=>M.error("Sending response failed."))}G(ce,"reply");function me(Pt,dt,Yt){let Ce={jsonrpc:J,id:RA.id,error:Pt.toJson()};oe(Ce,dt,Yt),T.write(Ce).catch(()=>M.error("Sending response failed."))}G(me,"replyError");function Le(Pt,dt,Yt){if(Pt===void 0)Pt=null;let Ce={jsonrpc:J,id:RA.id,result:Pt};oe(Ce,dt,Yt),T.write(Ce).catch(()=>M.error("Sending response failed."))}G(Le,"replySuccess"),kA(RA);let Lt=O.get(RA.method),Je,kt;if(Lt)Je=Lt.type,kt=Lt.handler;let Cr=Date.now();if(kt||K){let Pt=RA.id??String(Date.now()),dt=m.is(EA.receiver)?EA.receiver.createCancellationTokenSource(Pt):EA.receiver.createCancellationTokenSource(RA);if(RA.id!==null&&lA.has(RA.id))dt.cancel();if(RA.id!==null)gA.set(Pt,dt);try{let Yt;if(kt)if(RA.params===void 0){if(Je!==void 0&&Je.numberOfParams!==0){me(new r.ResponseError(r.ErrorCodes.InvalidParams,`Request ${RA.method} defines ${Je.numberOfParams} params but received none.`),RA.method,Cr);return}Yt=kt(dt.token)}else if(Array.isArray(RA.params)){if(Je!==void 0&&Je.parameterStructures===r.ParameterStructures.byName){me(new r.ResponseError(r.ErrorCodes.InvalidParams,`Request ${RA.method} defines parameters by name but received parameters by position`),RA.method,Cr);return}Yt=kt(...RA.params,dt.token)}else{if(Je!==void 0&&Je.parameterStructures===r.ParameterStructures.byPosition){me(new r.ResponseError(r.ErrorCodes.InvalidParams,`Request ${RA.method} defines parameters by position but received parameters by name`),RA.method,Cr);return}Yt=kt(RA.params,dt.token)}else if(K)Yt=K(RA.method,RA.params,dt.token);let Ce=Yt;if(!Yt)gA.delete(Pt),Le(Yt,RA.method,Cr);else if(Ce.then)Ce.then((ye)=>{gA.delete(Pt),ce(ye,RA.method,Cr)},(ye)=>{if(gA.delete(Pt),ye instanceof r.ResponseError)me(ye,RA.method,Cr);else if(ye&&t.string(ye.message))me(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${RA.method} failed with message: ${ye.message}`),RA.method,Cr);else me(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${RA.method} failed unexpectedly without providing any details.`),RA.method,Cr)});else gA.delete(Pt),ce(Yt,RA.method,Cr)}catch(Yt){if(gA.delete(Pt),Yt instanceof r.ResponseError)ce(Yt,RA.method,Cr);else if(Yt&&t.string(Yt.message))me(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${RA.method} failed with message: ${Yt.message}`),RA.method,Cr);else me(new r.ResponseError(r.ErrorCodes.InternalError,`Request ${RA.method} failed unexpectedly without providing any details.`),RA.method,Cr)}}else me(new r.ResponseError(r.ErrorCodes.MethodNotFound,`Unhandled method ${RA.method}`),RA.method,Cr)}G(_A,"handleRequest");function ZA(RA){if(dA())return;if(RA.id===null)if(RA.error)M.error(`Received response message without id: Error is:
${JSON.stringify(RA.error,void 0,4)}`);else M.error("Received response message without id. No further error information provided.");else{let ce=RA.id,me=tA.get(ce);if(MA(RA,me),me!==void 0){tA.delete(ce);try{if(RA.error){let Le=RA.error;me.reject(new r.ResponseError(Le.code,Le.message,Le.data))}else if(RA.result!==void 0)me.resolve(RA.result);else throw Error("Should never happen.")}catch(Le){if(Le.message)M.error(`Response handler '${me.method}' failed with message: ${Le.message}`);else M.error(`Response handler '${me.method}' failed unexpectedly.`)}}}}G(ZA,"handleResponse");function WA(RA){if(dA())return;let ce=void 0,me;if(RA.method===n.type.method){let Le=RA.params.id;lA.delete(Le),Pe(RA);return}else{let Le=z.get(RA.method);if(Le)me=Le.handler,ce=Le.type}if(me||P)try{if(Pe(RA),me)if(RA.params===void 0){if(ce!==void 0){if(ce.numberOfParams!==0&&ce.parameterStructures!==r.ParameterStructures.byName)M.error(`Notification ${RA.method} defines ${ce.numberOfParams} params but received none.`)}me()}else if(Array.isArray(RA.params)){let Le=RA.params;if(RA.method===s.type.method&&Le.length===2&&o.is(Le[0]))me({token:Le[0],value:Le[1]});else{if(ce!==void 0){if(ce.parameterStructures===r.ParameterStructures.byName)M.error(`Notification ${RA.method} defines parameters by name but received parameters by position`);if(ce.numberOfParams!==RA.params.length)M.error(`Notification ${RA.method} defines ${ce.numberOfParams} params but received ${Le.length} arguments`)}me(...Le)}}else{if(ce!==void 0&&ce.parameterStructures===r.ParameterStructures.byPosition)M.error(`Notification ${RA.method} defines parameters by position but received parameters by name`);me(RA.params)}else if(P)P(RA.method,RA.params)}catch(Le){if(Le.message)M.error(`Notification handler '${RA.method}' failed with message: ${Le.message}`);else M.error(`Notification handler '${RA.method}' failed unexpectedly.`)}else IA.fire(RA)}G(WA,"handleNotification");function te(RA){if(!RA){M.error("Received empty message.");return}M.error(`Received message which is neither a response nor a notification message:
${JSON.stringify(RA,null,4)}`);let ce=RA;if(t.string(ce.id)||t.number(ce.id)){let me=ce.id,Le=tA.get(me);if(Le)Le.reject(Error("The received response has neither a result nor an error property."))}}G(te,"handleInvalidMessage");function zA(RA){if(RA===void 0||RA===null)return;switch(aA){case C.Verbose:return JSON.stringify(RA,null,4);case C.Compact:return JSON.stringify(RA);default:return}}G(zA,"stringifyTrace");function Ae(RA){if(aA===C.Off||!DA)return;if(NA===E.Text){let ce=void 0;if((aA===C.Verbose||aA===C.Compact)&&RA.params)ce=`Params: ${zA(RA.params)}
`;DA.log(`Sending request '${RA.method} - (${RA.id})'.`,ce)}else ke("send-request",RA)}G(Ae,"traceSendingRequest");function $A(RA){if(aA===C.Off||!DA)return;if(NA===E.Text){let ce=void 0;if(aA===C.Verbose||aA===C.Compact)if(RA.params)ce=`Params: ${zA(RA.params)}
`;else ce=`No parameters provided.
`;DA.log(`Sending notification '${RA.method}'.`,ce)}else ke("send-notification",RA)}G($A,"traceSendingNotification");function oe(RA,ce,me){if(aA===C.Off||!DA)return;if(NA===E.Text){let Le=void 0;if(aA===C.Verbose||aA===C.Compact){if(RA.error&&RA.error.data)Le=`Error data: ${zA(RA.error.data)}
`;else if(RA.result)Le=`Result: ${zA(RA.result)}
`;else if(RA.error===void 0)Le=`No result returned.
`}DA.log(`Sending response '${ce} - (${RA.id})'. Processing request took ${Date.now()-me}ms`,Le)}else ke("send-response",RA)}G(oe,"traceSendingResponse");function kA(RA){if(aA===C.Off||!DA)return;if(NA===E.Text){let ce=void 0;if((aA===C.Verbose||aA===C.Compact)&&RA.params)ce=`Params: ${zA(RA.params)}
`;DA.log(`Received request '${RA.method} - (${RA.id})'.`,ce)}else ke("receive-request",RA)}G(kA,"traceReceivedRequest");function Pe(RA){if(aA===C.Off||!DA||RA.method===I.type.method)return;if(NA===E.Text){let ce=void 0;if(aA===C.Verbose||aA===C.Compact)if(RA.params)ce=`Params: ${zA(RA.params)}
`;else ce=`No parameters provided.
`;DA.log(`Received notification '${RA.method}'.`,ce)}else ke("receive-notification",RA)}G(Pe,"traceReceivedNotification");function MA(RA,ce){if(aA===C.Off||!DA)return;if(NA===E.Text){let me=void 0;if(aA===C.Verbose||aA===C.Compact){if(RA.error&&RA.error.data)me=`Error data: ${zA(RA.error.data)}
`;else if(RA.result)me=`Result: ${zA(RA.result)}
`;else if(RA.error===void 0)me=`No result returned.
`}if(ce){let Le=RA.error?` Request failed: ${RA.error.message} (${RA.error.code}).`:"";DA.log(`Received response '${ce.method} - (${RA.id})' in ${Date.now()-ce.timerStart}ms.${Le}`,me)}else DA.log(`Received response ${RA.id} without active response promise.`,me)}else ke("receive-response",RA)}G(MA,"traceReceivedResponse");function ke(RA,ce){if(!DA||aA===C.Off)return;let me={isLSPMessage:!0,type:RA,message:ce,timestamp:Date.now()};DA.log(me)}G(ke,"logLSPMessage");function We(){if(HA())throw new Q(h.Closed,"Connection is closed.");if(dA())throw new Q(h.Disposed,"Connection is disposed.")}G(We,"throwIfClosedOrDisposed");function ue(){if(FA())throw new Q(h.AlreadyListening,"Connection is already listening")}G(ue,"throwIfListening");function Me(){if(!FA())throw Error("Call listen() first.")}G(Me,"throwIfNotListening");function je(RA){if(RA===void 0)return null;else return RA}G(je,"undefinedToNull");function Ge(RA){if(RA===null)return;else return RA}G(Ge,"nullToUndefined");function wA(RA){return RA!==void 0&&RA!==null&&!Array.isArray(RA)&&typeof RA==="object"}G(wA,"isNamedParam");function Re(RA,ce){switch(RA){case r.ParameterStructures.auto:if(wA(ce))return Ge(ce);else return[je(ce)];case r.ParameterStructures.byName:if(!wA(ce))throw Error("Received parameters by name but param is not an object literal.");return Ge(ce);case r.ParameterStructures.byPosition:return[je(ce)];default:throw Error(`Unknown parameter structure ${RA.toString()}`)}}G(Re,"computeSingleParam");function He(RA,ce){let me,Le=RA.numberOfParams;switch(Le){case 0:me=void 0;break;case 1:me=Re(RA.parameterStructures,ce[0]);break;default:me=[];for(let Lt=0;Lt<ce.length&&Lt<Le;Lt++)me.push(je(ce[Lt]));if(ce.length<Le)for(let Lt=ce.length;Lt<Le;Lt++)me.push(null);break}return me}G(He,"computeMessageParams");let de={sendNotification:G((RA,...ce)=>{We();let me,Le;if(t.string(RA)){me=RA;let Je=ce[0],kt=0,Cr=r.ParameterStructures.auto;if(r.ParameterStructures.is(Je))kt=1,Cr=Je;let Pt=ce.length,dt=Pt-kt;switch(dt){case 0:Le=void 0;break;case 1:Le=Re(Cr,ce[kt]);break;default:if(Cr===r.ParameterStructures.byName)throw Error(`Received ${dt} parameters for 'by Name' notification parameter structure.`);Le=ce.slice(kt,Pt).map((Yt)=>je(Yt));break}}else{let Je=ce;me=RA.method,Le=He(RA,Je)}let Lt={jsonrpc:J,method:me,params:Le};return $A(Lt),T.write(Lt).catch((Je)=>{throw M.error("Sending notification failed."),Je})},"sendNotification"),onNotification:G((RA,ce)=>{We();let me;if(t.func(RA))P=RA;else if(ce)if(t.string(RA))me=RA,z.set(RA,{type:void 0,handler:ce});else me=RA.method,z.set(RA.method,{type:RA,handler:ce});return{dispose:G(()=>{if(me!==void 0)z.delete(me);else P=void 0},"dispose")}},"onNotification"),onProgress:G((RA,ce,me)=>{if(AA.has(ce))throw Error(`Progress handler for token ${ce} already registered`);return AA.set(ce,me),{dispose:G(()=>{AA.delete(ce)},"dispose")}},"onProgress"),sendProgress:G((RA,ce,me)=>de.sendNotification(s.type,{token:ce,value:me}),"sendProgress"),onUnhandledProgress:bA.event,sendRequest:G((RA,...ce)=>{We(),Me();let me,Le,Lt=void 0;if(t.string(RA)){me=RA;let Pt=ce[0],dt=ce[ce.length-1],Yt=0,Ce=r.ParameterStructures.auto;if(r.ParameterStructures.is(Pt))Yt=1,Ce=Pt;let ye=ce.length;if(a.CancellationToken.is(dt))ye=ye-1,Lt=dt;let Ze=ye-Yt;switch(Ze){case 0:Le=void 0;break;case 1:Le=Re(Ce,ce[Yt]);break;default:if(Ce===r.ParameterStructures.byName)throw Error(`Received ${Ze} parameters for 'by Name' request parameter structure.`);Le=ce.slice(Yt,ye).map((Xt)=>je(Xt));break}}else{let Pt=ce;me=RA.method,Le=He(RA,Pt);let dt=RA.numberOfParams;Lt=a.CancellationToken.is(Pt[dt])?Pt[dt]:void 0}let Je=U++,kt;if(Lt)kt=Lt.onCancellationRequested(()=>{let Pt=EA.sender.sendCancellation(de,Je);if(Pt===void 0)return M.log(`Received no promise from cancellation strategy when cancelling id ${Je}`),Promise.resolve();else return Pt.catch(()=>{M.log(`Sending cancellation messages for id ${Je} failed`)})});let Cr={jsonrpc:J,id:Je,method:me,params:Le};if(Ae(Cr),typeof EA.sender.enableCancellation==="function")EA.sender.enableCancellation(Cr);return new Promise(async(Pt,dt)=>{let Yt=G((Ze)=>{Pt(Ze),EA.sender.cleanup(Je),kt?.dispose()},"resolveWithCleanup"),Ce=G((Ze)=>{dt(Ze),EA.sender.cleanup(Je),kt?.dispose()},"rejectWithCleanup"),ye={method:me,timerStart:Date.now(),resolve:Yt,reject:Ce};try{await T.write(Cr),tA.set(Je,ye)}catch(Ze){throw M.error("Sending request failed."),ye.reject(new r.ResponseError(r.ErrorCodes.MessageWriteError,Ze.message?Ze.message:"Unknown reason")),Ze}})},"sendRequest"),onRequest:G((RA,ce)=>{We();let me=null;if(g.is(RA))me=void 0,K=RA;else if(t.string(RA)){if(me=null,ce!==void 0)me=RA,O.set(RA,{handler:ce,type:void 0})}else if(ce!==void 0)me=RA.method,O.set(RA.method,{type:RA,handler:ce});return{dispose:G(()=>{if(me===null)return;if(me!==void 0)O.delete(me);else K=void 0},"dispose")}},"onRequest"),hasPendingResponse:G(()=>tA.size>0,"hasPendingResponse"),trace:G(async(RA,ce,me)=>{let Le=!1,Lt=E.Text;if(me!==void 0)if(t.boolean(me))Le=me;else Le=me.sendNotification||!1,Lt=me.traceFormat||E.Text;if(aA=RA,NA=Lt,aA===C.Off)DA=void 0;else DA=ce;if(Le&&!HA()&&!dA())await de.sendNotification(d.type,{value:C.toString(RA)})},"trace"),onError:TA.event,onClose:qA.event,onUnhandledNotification:IA.event,onDispose:SA.event,end:G(()=>{T.end()},"end"),dispose:G(()=>{if(dA())return;KA=S.Disposed,SA.fire(void 0);let RA=new r.ResponseError(r.ErrorCodes.PendingResponseRejected,"Pending response rejected since connection got disposed");for(let ce of tA.values())ce.reject(RA);if(tA=new Map,gA=new Map,lA=new Set,CA=new i.LinkedMap,t.func(T.dispose))T.dispose();if(t.func(F.dispose))F.dispose()},"dispose"),listen:G(()=>{We(),ue(),KA=S.Listening,F.listen(JA)},"listen"),inspect:G(()=>{(0,e.default)().console.log("inspect")},"inspect")};return de.onNotification(I.type,(RA)=>{if(aA===C.Off||!DA)return;let ce=aA===C.Verbose||aA===C.Compact;DA.log(RA.message,ce?RA.verbose:void 0)}),de.onNotification(s.type,(RA)=>{let ce=AA.get(RA.token);if(ce)ce(RA.value);else bA.fire(RA)}),de}G(x,"createMessageConnection"),A.createMessageConnection=x}}),UoA=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/common/api.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ProgressType=A.ProgressToken=A.createMessageConnection=A.NullLogger=A.ConnectionOptions=A.ConnectionStrategy=A.AbstractMessageBuffer=A.WriteableStreamMessageWriter=A.AbstractMessageWriter=A.MessageWriter=A.ReadableStreamMessageReader=A.AbstractMessageReader=A.MessageReader=A.SharedArrayReceiverStrategy=A.SharedArraySenderStrategy=A.CancellationToken=A.CancellationTokenSource=A.Emitter=A.Event=A.Disposable=A.LRUCache=A.Touch=A.LinkedMap=A.ParameterStructures=A.NotificationType9=A.NotificationType8=A.NotificationType7=A.NotificationType6=A.NotificationType5=A.NotificationType4=A.NotificationType3=A.NotificationType2=A.NotificationType1=A.NotificationType0=A.NotificationType=A.ErrorCodes=A.ResponseError=A.RequestType9=A.RequestType8=A.RequestType7=A.RequestType6=A.RequestType5=A.RequestType4=A.RequestType3=A.RequestType2=A.RequestType1=A.RequestType0=A.RequestType=A.Message=A.RAL=void 0,A.MessageStrategy=A.CancellationStrategy=A.CancellationSenderStrategy=A.CancellationReceiverStrategy=A.ConnectionError=A.ConnectionErrors=A.LogTraceNotification=A.SetTraceNotification=A.TraceFormat=A.TraceValues=A.Trace=void 0;var e=x_A();Object.defineProperty(A,"Message",{enumerable:!0,get:G(function(){return e.Message},"get")}),Object.defineProperty(A,"RequestType",{enumerable:!0,get:G(function(){return e.RequestType},"get")}),Object.defineProperty(A,"RequestType0",{enumerable:!0,get:G(function(){return e.RequestType0},"get")}),Object.defineProperty(A,"RequestType1",{enumerable:!0,get:G(function(){return e.RequestType1},"get")}),Object.defineProperty(A,"RequestType2",{enumerable:!0,get:G(function(){return e.RequestType2},"get")}),Object.defineProperty(A,"RequestType3",{enumerable:!0,get:G(function(){return e.RequestType3},"get")}),Object.defineProperty(A,"RequestType4",{enumerable:!0,get:G(function(){return e.RequestType4},"get")}),Object.defineProperty(A,"RequestType5",{enumerable:!0,get:G(function(){return e.RequestType5},"get")}),Object.defineProperty(A,"RequestType6",{enumerable:!0,get:G(function(){return e.RequestType6},"get")}),Object.defineProperty(A,"RequestType7",{enumerable:!0,get:G(function(){return e.RequestType7},"get")}),Object.defineProperty(A,"RequestType8",{enumerable:!0,get:G(function(){return e.RequestType8},"get")}),Object.defineProperty(A,"RequestType9",{enumerable:!0,get:G(function(){return e.RequestType9},"get")}),Object.defineProperty(A,"ResponseError",{enumerable:!0,get:G(function(){return e.ResponseError},"get")}),Object.defineProperty(A,"ErrorCodes",{enumerable:!0,get:G(function(){return e.ErrorCodes},"get")}),Object.defineProperty(A,"NotificationType",{enumerable:!0,get:G(function(){return e.NotificationType},"get")}),Object.defineProperty(A,"NotificationType0",{enumerable:!0,get:G(function(){return e.NotificationType0},"get")}),Object.defineProperty(A,"NotificationType1",{enumerable:!0,get:G(function(){return e.NotificationType1},"get")}),Object.defineProperty(A,"NotificationType2",{enumerable:!0,get:G(function(){return e.NotificationType2},"get")}),Object.defineProperty(A,"NotificationType3",{enumerable:!0,get:G(function(){return e.NotificationType3},"get")}),Object.defineProperty(A,"NotificationType4",{enumerable:!0,get:G(function(){return e.NotificationType4},"get")}),Object.defineProperty(A,"NotificationType5",{enumerable:!0,get:G(function(){return e.NotificationType5},"get")}),Object.defineProperty(A,"NotificationType6",{enumerable:!0,get:G(function(){return e.NotificationType6},"get")}),Object.defineProperty(A,"NotificationType7",{enumerable:!0,get:G(function(){return e.NotificationType7},"get")}),Object.defineProperty(A,"NotificationType8",{enumerable:!0,get:G(function(){return e.NotificationType8},"get")}),Object.defineProperty(A,"NotificationType9",{enumerable:!0,get:G(function(){return e.NotificationType9},"get")}),Object.defineProperty(A,"ParameterStructures",{enumerable:!0,get:G(function(){return e.ParameterStructures},"get")});var t=S_A();Object.defineProperty(A,"LinkedMap",{enumerable:!0,get:G(function(){return t.LinkedMap},"get")}),Object.defineProperty(A,"LRUCache",{enumerable:!0,get:G(function(){return t.LRUCache},"get")}),Object.defineProperty(A,"Touch",{enumerable:!0,get:G(function(){return t.Touch},"get")});var r=m2t();Object.defineProperty(A,"Disposable",{enumerable:!0,get:G(function(){return r.Disposable},"get")});var i=jw();Object.defineProperty(A,"Event",{enumerable:!0,get:G(function(){return i.Event},"get")}),Object.defineProperty(A,"Emitter",{enumerable:!0,get:G(function(){return i.Emitter},"get")});var u=RK();Object.defineProperty(A,"CancellationTokenSource",{enumerable:!0,get:G(function(){return u.CancellationTokenSource},"get")}),Object.defineProperty(A,"CancellationToken",{enumerable:!0,get:G(function(){return u.CancellationToken},"get")});var a=D2t();Object.defineProperty(A,"SharedArraySenderStrategy",{enumerable:!0,get:G(function(){return a.SharedArraySenderStrategy},"get")}),Object.defineProperty(A,"SharedArrayReceiverStrategy",{enumerable:!0,get:G(function(){return a.SharedArrayReceiverStrategy},"get")});var n=y2t();Object.defineProperty(A,"MessageReader",{enumerable:!0,get:G(function(){return n.MessageReader},"get")}),Object.defineProperty(A,"AbstractMessageReader",{enumerable:!0,get:G(function(){return n.AbstractMessageReader},"get")}),Object.defineProperty(A,"ReadableStreamMessageReader",{enumerable:!0,get:G(function(){return n.ReadableStreamMessageReader},"get")});var o=w2t();Object.defineProperty(A,"MessageWriter",{enumerable:!0,get:G(function(){return o.MessageWriter},"get")}),Object.defineProperty(A,"AbstractMessageWriter",{enumerable:!0,get:G(function(){return o.AbstractMessageWriter},"get")}),Object.defineProperty(A,"WriteableStreamMessageWriter",{enumerable:!0,get:G(function(){return o.WriteableStreamMessageWriter},"get")});var s=b2t();Object.defineProperty(A,"AbstractMessageBuffer",{enumerable:!0,get:G(function(){return s.AbstractMessageBuffer},"get")});var l=v2t();Object.defineProperty(A,"ConnectionStrategy",{enumerable:!0,get:G(function(){return l.ConnectionStrategy},"get")}),Object.defineProperty(A,"ConnectionOptions",{enumerable:!0,get:G(function(){return l.ConnectionOptions},"get")}),Object.defineProperty(A,"NullLogger",{enumerable:!0,get:G(function(){return l.NullLogger},"get")}),Object.defineProperty(A,"createMessageConnection",{enumerable:!0,get:G(function(){return l.createMessageConnection},"get")}),Object.defineProperty(A,"ProgressToken",{enumerable:!0,get:G(function(){return l.ProgressToken},"get")}),Object.defineProperty(A,"ProgressType",{enumerable:!0,get:G(function(){return l.ProgressType},"get")}),Object.defineProperty(A,"Trace",{enumerable:!0,get:G(function(){return l.Trace},"get")}),Object.defineProperty(A,"TraceValues",{enumerable:!0,get:G(function(){return l.TraceValues},"get")}),Object.defineProperty(A,"TraceFormat",{enumerable:!0,get:G(function(){return l.TraceFormat},"get")}),Object.defineProperty(A,"SetTraceNotification",{enumerable:!0,get:G(function(){return l.SetTraceNotification},"get")}),Object.defineProperty(A,"LogTraceNotification",{enumerable:!0,get:G(function(){return l.LogTraceNotification},"get")}),Object.defineProperty(A,"ConnectionErrors",{enumerable:!0,get:G(function(){return l.ConnectionErrors},"get")}),Object.defineProperty(A,"ConnectionError",{enumerable:!0,get:G(function(){return l.ConnectionError},"get")}),Object.defineProperty(A,"CancellationReceiverStrategy",{enumerable:!0,get:G(function(){return l.CancellationReceiverStrategy},"get")}),Object.defineProperty(A,"CancellationSenderStrategy",{enumerable:!0,get:G(function(){return l.CancellationSenderStrategy},"get")}),Object.defineProperty(A,"CancellationStrategy",{enumerable:!0,get:G(function(){return l.CancellationStrategy},"get")}),Object.defineProperty(A,"MessageStrategy",{enumerable:!0,get:G(function(){return l.MessageStrategy},"get")});var g=N3();A.RAL=g.default}}),k2t=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/ril.js"(A){Object.defineProperty(A,"__esModule",{value:!0});var e=UoA(),t=class o extends e.AbstractMessageBuffer{static{G(this,"MessageBuffer")}constructor(s="utf-8"){super(s);this.asciiDecoder=new TextDecoder("ascii")}emptyBuffer(){return o.emptyBuffer}fromString(s,l){return new TextEncoder().encode(s)}toString(s,l){if(l==="ascii")return this.asciiDecoder.decode(s);else return new TextDecoder(l).decode(s)}asNative(s,l){if(l===void 0)return s;else return s.slice(0,l)}allocNative(s){return new Uint8Array(s)}};t.emptyBuffer=new Uint8Array(0);var r=class{static{G(this,"ReadableStreamWrapper")}constructor(o){this.socket=o,this._onData=new e.Emitter,this._messageListener=(s)=>{s.data.arrayBuffer().then((g)=>{this._onData.fire(new Uint8Array(g))},()=>{(0,e.RAL)().console.error("Converting blob to array buffer failed.")})},this.socket.addEventListener("message",this._messageListener)}onClose(o){return this.socket.addEventListener("close",o),e.Disposable.create(()=>this.socket.removeEventListener("close",o))}onError(o){return this.socket.addEventListener("error",o),e.Disposable.create(()=>this.socket.removeEventListener("error",o))}onEnd(o){return this.socket.addEventListener("end",o),e.Disposable.create(()=>this.socket.removeEventListener("end",o))}onData(o){return this._onData.event(o)}},i=class{static{G(this,"WritableStreamWrapper")}constructor(o){this.socket=o}onClose(o){return this.socket.addEventListener("close",o),e.Disposable.create(()=>this.socket.removeEventListener("close",o))}onError(o){return this.socket.addEventListener("error",o),e.Disposable.create(()=>this.socket.removeEventListener("error",o))}onEnd(o){return this.socket.addEventListener("end",o),e.Disposable.create(()=>this.socket.removeEventListener("end",o))}write(o,s){if(typeof o==="string"){if(s!==void 0&&s!=="utf-8")throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${s}`);this.socket.send(o)}else this.socket.send(o);return Promise.resolve()}end(){this.socket.close()}},u=new TextEncoder,a=Object.freeze({messageBuffer:Object.freeze({create:G((o)=>new t(o),"create")}),applicationJson:Object.freeze({encoder:Object.freeze({name:"application/json",encode:G((o,s)=>{if(s.charset!=="utf-8")throw Error(`In a Browser environments only utf-8 text encoding is supported. But got encoding: ${s.charset}`);return Promise.resolve(u.encode(JSON.stringify(o,void 0,0)))},"encode")}),decoder:Object.freeze({name:"application/json",decode:G((o,s)=>{if(!(o instanceof Uint8Array))throw Error("In a Browser environments only Uint8Arrays are supported.");return Promise.resolve(JSON.parse(new TextDecoder(s.charset).decode(o)))},"decode")})}),stream:Object.freeze({asReadableStream:G((o)=>new r(o),"asReadableStream"),asWritableStream:G((o)=>new i(o),"asWritableStream")}),console,timer:Object.freeze({setTimeout(o,s,...l){let g=setTimeout(o,s,...l);return{dispose:G(()=>clearTimeout(g),"dispose")}},setImmediate(o,...s){let l=setTimeout(o,0,...s);return{dispose:G(()=>clearTimeout(l),"dispose")}},setInterval(o,s,...l){let g=setInterval(o,s,...l);return{dispose:G(()=>clearInterval(g),"dispose")}}})});function n(){return a}G(n,"RIL"),function(o){function s(){e.RAL.install(a)}G(s,"install"),o.install=s}(n||(n={})),A.default=n}}),Xw=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/lib/browser/main.js"(A){var e=A&&A.__createBinding||(Object.create?function(o,s,l,g){if(g===void 0)g=l;var C=Object.getOwnPropertyDescriptor(s,l);if(!C||("get"in C?!s.__esModule:C.writable||C.configurable))C={enumerable:!0,get:G(function(){return s[l]},"get")};Object.defineProperty(o,g,C)}:function(o,s,l,g){if(g===void 0)g=l;o[g]=s[l]}),t=A&&A.__exportStar||function(o,s){for(var l in o)if(l!=="default"&&!Object.prototype.hasOwnProperty.call(s,l))e(s,o,l)};Object.defineProperty(A,"__esModule",{value:!0}),A.createMessageConnection=A.BrowserMessageWriter=A.BrowserMessageReader=void 0;var r=k2t();r.default.install();var i=UoA();t(UoA(),A);var u=class extends i.AbstractMessageReader{static{G(this,"BrowserMessageReader")}constructor(o){super();this._onData=new i.Emitter,this._messageListener=(s)=>{this._onData.fire(s.data)},o.addEventListener("error",(s)=>this.fireError(s)),o.onmessage=this._messageListener}listen(o){return this._onData.event(o)}};A.BrowserMessageReader=u;var a=class extends i.AbstractMessageWriter{static{G(this,"BrowserMessageWriter")}constructor(o){super();this.port=o,this.errorCount=0,o.addEventListener("error",(s)=>this.fireError(s))}write(o){try{return this.port.postMessage(o),Promise.resolve()}catch(s){return this.handleError(s,o),Promise.reject(s)}}handleError(o,s){this.errorCount++,this.fireError(o,s,this.errorCount)}end(){}};A.BrowserMessageWriter=a;function n(o,s,l,g){if(l===void 0)l=i.NullLogger;if(i.ConnectionStrategy.is(g))g={connectionStrategy:g};return(0,i.createMessageConnection)(o,s,l,g)}G(n,"createMessageConnection"),A.createMessageConnection=n}}),TOA=Vr({"../../node_modules/.pnpm/vscode-jsonrpc@8.2.0/node_modules/vscode-jsonrpc/browser.js"(A,e){e.exports=Xw()}}),Na=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/messages.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ProtocolNotificationType=A.ProtocolNotificationType0=A.ProtocolRequestType=A.ProtocolRequestType0=A.RegistrationType=A.MessageDirection=void 0;var e=Xw(),t;(function(o){o.clientToServer="clientToServer",o.serverToClient="serverToClient",o.both="both"})(t||(A.MessageDirection=t={}));var r=class{static{G(this,"RegistrationType")}constructor(o){this.method=o}};A.RegistrationType=r;var i=class extends e.RequestType0{static{G(this,"ProtocolRequestType0")}constructor(o){super(o)}};A.ProtocolRequestType0=i;var u=class extends e.RequestType{static{G(this,"ProtocolRequestType")}constructor(o){super(o,e.ParameterStructures.byName)}};A.ProtocolRequestType=u;var a=class extends e.NotificationType0{static{G(this,"ProtocolNotificationType0")}constructor(o){super(o)}};A.ProtocolNotificationType0=a;var n=class extends e.NotificationType{static{G(this,"ProtocolNotificationType")}constructor(o){super(o,e.ParameterStructures.byName)}};A.ProtocolNotificationType=n}}),M0A=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.objectLiteral=A.typedArray=A.stringArray=A.array=A.func=A.error=A.number=A.string=A.boolean=void 0;function e(l){return l===!0||l===!1}G(e,"boolean"),A.boolean=e;function t(l){return typeof l==="string"||l instanceof String}G(t,"string"),A.string=t;function r(l){return typeof l==="number"||l instanceof Number}G(r,"number"),A.number=r;function i(l){return l instanceof Error}G(i,"error"),A.error=i;function u(l){return typeof l==="function"}G(u,"func"),A.func=u;function a(l){return Array.isArray(l)}G(a,"array"),A.array=a;function n(l){return a(l)&&l.every((g)=>t(g))}G(n,"stringArray"),A.stringArray=n;function o(l,g){return Array.isArray(l)&&l.every(g)}G(o,"typedArray"),A.typedArray=o;function s(l){return l!==null&&typeof l==="object"}G(s,"objectLiteral"),A.objectLiteral=s}}),F2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ImplementationRequest=void 0;var e=Na(),t;(function(r){r.method="textDocument/implementation",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.ImplementationRequest=t={}))}}),x2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.TypeDefinitionRequest=void 0;var e=Na(),t;(function(r){r.method="textDocument/typeDefinition",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.TypeDefinitionRequest=t={}))}}),S2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.DidChangeWorkspaceFoldersNotification=A.WorkspaceFoldersRequest=void 0;var e=Na(),t;(function(i){i.method="workspace/workspaceFolders",i.messageDirection=e.MessageDirection.serverToClient,i.type=new e.ProtocolRequestType0(i.method)})(t||(A.WorkspaceFoldersRequest=t={}));var r;(function(i){i.method="workspace/didChangeWorkspaceFolders",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolNotificationType(i.method)})(r||(A.DidChangeWorkspaceFoldersNotification=r={}))}}),L2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ConfigurationRequest=void 0;var e=Na(),t;(function(r){r.method="workspace/configuration",r.messageDirection=e.MessageDirection.serverToClient,r.type=new e.ProtocolRequestType(r.method)})(t||(A.ConfigurationRequest=t={}))}}),R2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ColorPresentationRequest=A.DocumentColorRequest=void 0;var e=Na(),t;(function(i){i.method="textDocument/documentColor",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(t||(A.DocumentColorRequest=t={}));var r;(function(i){i.method="textDocument/colorPresentation",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(r||(A.ColorPresentationRequest=r={}))}}),N2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.FoldingRangeRefreshRequest=A.FoldingRangeRequest=void 0;var e=Na(),t;(function(i){i.method="textDocument/foldingRange",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(t||(A.FoldingRangeRequest=t={}));var r;(function(i){i.method="workspace/foldingRange/refresh",i.messageDirection=e.MessageDirection.serverToClient,i.type=new e.ProtocolRequestType0(i.method)})(r||(A.FoldingRangeRefreshRequest=r={}))}}),G2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.DeclarationRequest=void 0;var e=Na(),t;(function(r){r.method="textDocument/declaration",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.DeclarationRequest=t={}))}}),U2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.SelectionRangeRequest=void 0;var e=Na(),t;(function(r){r.method="textDocument/selectionRange",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.SelectionRangeRequest=t={}))}}),M2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.WorkDoneProgressCancelNotification=A.WorkDoneProgressCreateRequest=A.WorkDoneProgress=void 0;var e=Xw(),t=Na(),r;(function(a){a.type=new e.ProgressType;function n(o){return o===a.type}G(n,"is"),a.is=n})(r||(A.WorkDoneProgress=r={}));var i;(function(a){a.method="window/workDoneProgress/create",a.messageDirection=t.MessageDirection.serverToClient,a.type=new t.ProtocolRequestType(a.method)})(i||(A.WorkDoneProgressCreateRequest=i={}));var u;(function(a){a.method="window/workDoneProgress/cancel",a.messageDirection=t.MessageDirection.clientToServer,a.type=new t.ProtocolNotificationType(a.method)})(u||(A.WorkDoneProgressCancelNotification=u={}))}}),T2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.CallHierarchyOutgoingCallsRequest=A.CallHierarchyIncomingCallsRequest=A.CallHierarchyPrepareRequest=void 0;var e=Na(),t;(function(u){u.method="textDocument/prepareCallHierarchy",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(t||(A.CallHierarchyPrepareRequest=t={}));var r;(function(u){u.method="callHierarchy/incomingCalls",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(r||(A.CallHierarchyIncomingCallsRequest=r={}));var i;(function(u){u.method="callHierarchy/outgoingCalls",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(i||(A.CallHierarchyOutgoingCallsRequest=i={}))}}),Y2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.SemanticTokensRefreshRequest=A.SemanticTokensRangeRequest=A.SemanticTokensDeltaRequest=A.SemanticTokensRequest=A.SemanticTokensRegistrationType=A.TokenFormat=void 0;var e=Na(),t;(function(o){o.Relative="relative"})(t||(A.TokenFormat=t={}));var r;(function(o){o.method="textDocument/semanticTokens",o.type=new e.RegistrationType(o.method)})(r||(A.SemanticTokensRegistrationType=r={}));var i;(function(o){o.method="textDocument/semanticTokens/full",o.messageDirection=e.MessageDirection.clientToServer,o.type=new e.ProtocolRequestType(o.method),o.registrationMethod=r.method})(i||(A.SemanticTokensRequest=i={}));var u;(function(o){o.method="textDocument/semanticTokens/full/delta",o.messageDirection=e.MessageDirection.clientToServer,o.type=new e.ProtocolRequestType(o.method),o.registrationMethod=r.method})(u||(A.SemanticTokensDeltaRequest=u={}));var a;(function(o){o.method="textDocument/semanticTokens/range",o.messageDirection=e.MessageDirection.clientToServer,o.type=new e.ProtocolRequestType(o.method),o.registrationMethod=r.method})(a||(A.SemanticTokensRangeRequest=a={}));var n;(function(o){o.method="workspace/semanticTokens/refresh",o.messageDirection=e.MessageDirection.serverToClient,o.type=new e.ProtocolRequestType0(o.method)})(n||(A.SemanticTokensRefreshRequest=n={}))}}),H2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.ShowDocumentRequest=void 0;var e=Na(),t;(function(r){r.method="window/showDocument",r.messageDirection=e.MessageDirection.serverToClient,r.type=new e.ProtocolRequestType(r.method)})(t||(A.ShowDocumentRequest=t={}))}}),K2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.LinkedEditingRangeRequest=void 0;var e=Na(),t;(function(r){r.method="textDocument/linkedEditingRange",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.LinkedEditingRangeRequest=t={}))}}),J2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.WillDeleteFilesRequest=A.DidDeleteFilesNotification=A.DidRenameFilesNotification=A.WillRenameFilesRequest=A.DidCreateFilesNotification=A.WillCreateFilesRequest=A.FileOperationPatternKind=void 0;var e=Na(),t;(function(s){s.file="file",s.folder="folder"})(t||(A.FileOperationPatternKind=t={}));var r;(function(s){s.method="workspace/willCreateFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolRequestType(s.method)})(r||(A.WillCreateFilesRequest=r={}));var i;(function(s){s.method="workspace/didCreateFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolNotificationType(s.method)})(i||(A.DidCreateFilesNotification=i={}));var u;(function(s){s.method="workspace/willRenameFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolRequestType(s.method)})(u||(A.WillRenameFilesRequest=u={}));var a;(function(s){s.method="workspace/didRenameFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolNotificationType(s.method)})(a||(A.DidRenameFilesNotification=a={}));var n;(function(s){s.method="workspace/didDeleteFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolNotificationType(s.method)})(n||(A.DidDeleteFilesNotification=n={}));var o;(function(s){s.method="workspace/willDeleteFiles",s.messageDirection=e.MessageDirection.clientToServer,s.type=new e.ProtocolRequestType(s.method)})(o||(A.WillDeleteFilesRequest=o={}))}}),O2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.MonikerRequest=A.MonikerKind=A.UniquenessLevel=void 0;var e=Na(),t;(function(u){u.document="document",u.project="project",u.group="group",u.scheme="scheme",u.global="global"})(t||(A.UniquenessLevel=t={}));var r;(function(u){u.$import="import",u.$export="export",u.local="local"})(r||(A.MonikerKind=r={}));var i;(function(u){u.method="textDocument/moniker",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(i||(A.MonikerRequest=i={}))}}),P2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.TypeHierarchySubtypesRequest=A.TypeHierarchySupertypesRequest=A.TypeHierarchyPrepareRequest=void 0;var e=Na(),t;(function(u){u.method="textDocument/prepareTypeHierarchy",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(t||(A.TypeHierarchyPrepareRequest=t={}));var r;(function(u){u.method="typeHierarchy/supertypes",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(r||(A.TypeHierarchySupertypesRequest=r={}));var i;(function(u){u.method="typeHierarchy/subtypes",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(i||(A.TypeHierarchySubtypesRequest=i={}))}}),_2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.InlineValueRefreshRequest=A.InlineValueRequest=void 0;var e=Na(),t;(function(i){i.method="textDocument/inlineValue",i.messageDirection=e.MessageDirection.clientToServer,i.type=new e.ProtocolRequestType(i.method)})(t||(A.InlineValueRequest=t={}));var r;(function(i){i.method="workspace/inlineValue/refresh",i.messageDirection=e.MessageDirection.serverToClient,i.type=new e.ProtocolRequestType0(i.method)})(r||(A.InlineValueRefreshRequest=r={}))}}),W2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.InlayHintRefreshRequest=A.InlayHintResolveRequest=A.InlayHintRequest=void 0;var e=Na(),t;(function(u){u.method="textDocument/inlayHint",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(t||(A.InlayHintRequest=t={}));var r;(function(u){u.method="inlayHint/resolve",u.messageDirection=e.MessageDirection.clientToServer,u.type=new e.ProtocolRequestType(u.method)})(r||(A.InlayHintResolveRequest=r={}));var i;(function(u){u.method="workspace/inlayHint/refresh",u.messageDirection=e.MessageDirection.serverToClient,u.type=new e.ProtocolRequestType0(u.method)})(i||(A.InlayHintRefreshRequest=i={}))}}),q2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.DiagnosticRefreshRequest=A.WorkspaceDiagnosticRequest=A.DocumentDiagnosticRequest=A.DocumentDiagnosticReportKind=A.DiagnosticServerCancellationData=void 0;var e=Xw(),t=M0A(),r=Na(),i;(function(s){function l(g){let C=g;return C&&t.boolean(C.retriggerRequest)}G(l,"is"),s.is=l})(i||(A.DiagnosticServerCancellationData=i={}));var u;(function(s){s.Full="full",s.Unchanged="unchanged"})(u||(A.DocumentDiagnosticReportKind=u={}));var a;(function(s){s.method="textDocument/diagnostic",s.messageDirection=r.MessageDirection.clientToServer,s.type=new r.ProtocolRequestType(s.method),s.partialResult=new e.ProgressType})(a||(A.DocumentDiagnosticRequest=a={}));var n;(function(s){s.method="workspace/diagnostic",s.messageDirection=r.MessageDirection.clientToServer,s.type=new r.ProtocolRequestType(s.method),s.partialResult=new e.ProgressType})(n||(A.WorkspaceDiagnosticRequest=n={}));var o;(function(s){s.method="workspace/diagnostic/refresh",s.messageDirection=r.MessageDirection.serverToClient,s.type=new r.ProtocolRequestType0(s.method)})(o||(A.DiagnosticRefreshRequest=o={}))}}),z2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.DidCloseNotebookDocumentNotification=A.DidSaveNotebookDocumentNotification=A.DidChangeNotebookDocumentNotification=A.NotebookCellArrayChange=A.DidOpenNotebookDocumentNotification=A.NotebookDocumentSyncRegistrationType=A.NotebookDocument=A.NotebookCell=A.ExecutionSummary=A.NotebookCellKind=void 0;var e=(Cx(),U0A(LK)),t=M0A(),r=Na(),i;(function(E){E.Markup=1,E.Code=2;function d(I){return I===1||I===2}G(d,"is"),E.is=d})(i||(A.NotebookCellKind=i={}));var u;(function(E){function d(Q,p){let m={executionOrder:Q};if(p===!0||p===!1)m.success=p;return m}G(d,"create"),E.create=d;function I(Q){let p=Q;return t.objectLiteral(p)&&e.uinteger.is(p.executionOrder)&&(p.success===void 0||t.boolean(p.success))}G(I,"is"),E.is=I;function h(Q,p){if(Q===p)return!0;if(Q===null||Q===void 0||p===null||p===void 0)return!1;return Q.executionOrder===p.executionOrder&&Q.success===p.success}G(h,"equals"),E.equals=h})(u||(A.ExecutionSummary=u={}));var a;(function(E){function d(p,m){return{kind:p,document:m}}G(d,"create"),E.create=d;function I(p){let m=p;return t.objectLiteral(m)&&i.is(m.kind)&&e.DocumentUri.is(m.document)&&(m.metadata===void 0||t.objectLiteral(m.metadata))}G(I,"is"),E.is=I;function h(p,m){let f=new Set;if(p.document!==m.document)f.add("document");if(p.kind!==m.kind)f.add("kind");if(p.executionSummary!==m.executionSummary)f.add("executionSummary");if((p.metadata!==void 0||m.metadata!==void 0)&&!Q(p.metadata,m.metadata))f.add("metadata");if((p.executionSummary!==void 0||m.executionSummary!==void 0)&&!u.equals(p.executionSummary,m.executionSummary))f.add("executionSummary");return f}G(h,"diff"),E.diff=h;function Q(p,m){if(p===m)return!0;if(p===null||p===void 0||m===null||m===void 0)return!1;if(typeof p!==typeof m)return!1;if(typeof p!=="object")return!1;let f=Array.isArray(p),D=Array.isArray(m);if(f!==D)return!1;if(f&&D){if(p.length!==m.length)return!1;for(let w=0;w<p.length;w++)if(!Q(p[w],m[w]))return!1}if(t.objectLiteral(p)&&t.objectLiteral(m)){let w=Object.keys(p),b=Object.keys(m);if(w.length!==b.length)return!1;if(w.sort(),b.sort(),!Q(w,b))return!1;for(let k=0;k<w.length;k++){let v=w[k];if(!Q(p[v],m[v]))return!1}}return!0}G(Q,"equalsMetadata")})(a||(A.NotebookCell=a={}));var n;(function(E){function d(h,Q,p,m){return{uri:h,notebookType:Q,version:p,cells:m}}G(d,"create"),E.create=d;function I(h){let Q=h;return t.objectLiteral(Q)&&t.string(Q.uri)&&e.integer.is(Q.version)&&t.typedArray(Q.cells,a.is)}G(I,"is"),E.is=I})(n||(A.NotebookDocument=n={}));var o;(function(E){E.method="notebookDocument/sync",E.messageDirection=r.MessageDirection.clientToServer,E.type=new r.RegistrationType(E.method)})(o||(A.NotebookDocumentSyncRegistrationType=o={}));var s;(function(E){E.method="notebookDocument/didOpen",E.messageDirection=r.MessageDirection.clientToServer,E.type=new r.ProtocolNotificationType(E.method),E.registrationMethod=o.method})(s||(A.DidOpenNotebookDocumentNotification=s={}));var l;(function(E){function d(h){let Q=h;return t.objectLiteral(Q)&&e.uinteger.is(Q.start)&&e.uinteger.is(Q.deleteCount)&&(Q.cells===void 0||t.typedArray(Q.cells,a.is))}G(d,"is"),E.is=d;function I(h,Q,p){let m={start:h,deleteCount:Q};if(p!==void 0)m.cells=p;return m}G(I,"create"),E.create=I})(l||(A.NotebookCellArrayChange=l={}));var g;(function(E){E.method="notebookDocument/didChange",E.messageDirection=r.MessageDirection.clientToServer,E.type=new r.ProtocolNotificationType(E.method),E.registrationMethod=o.method})(g||(A.DidChangeNotebookDocumentNotification=g={}));var C;(function(E){E.method="notebookDocument/didSave",E.messageDirection=r.MessageDirection.clientToServer,E.type=new r.ProtocolNotificationType(E.method),E.registrationMethod=o.method})(C||(A.DidSaveNotebookDocumentNotification=C={}));var B;(function(E){E.method="notebookDocument/didClose",E.messageDirection=r.MessageDirection.clientToServer,E.type=new r.ProtocolNotificationType(E.method),E.registrationMethod=o.method})(B||(A.DidCloseNotebookDocumentNotification=B={}))}}),Z2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.InlineCompletionRequest=void 0;var e=Na(),t;(function(r){r.method="textDocument/inlineCompletion",r.messageDirection=e.MessageDirection.clientToServer,r.type=new e.ProtocolRequestType(r.method)})(t||(A.InlineCompletionRequest=t={}))}}),V2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/protocol.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.WorkspaceSymbolRequest=A.CodeActionResolveRequest=A.CodeActionRequest=A.DocumentSymbolRequest=A.DocumentHighlightRequest=A.ReferencesRequest=A.DefinitionRequest=A.SignatureHelpRequest=A.SignatureHelpTriggerKind=A.HoverRequest=A.CompletionResolveRequest=A.CompletionRequest=A.CompletionTriggerKind=A.PublishDiagnosticsNotification=A.WatchKind=A.RelativePattern=A.FileChangeType=A.DidChangeWatchedFilesNotification=A.WillSaveTextDocumentWaitUntilRequest=A.WillSaveTextDocumentNotification=A.TextDocumentSaveReason=A.DidSaveTextDocumentNotification=A.DidCloseTextDocumentNotification=A.DidChangeTextDocumentNotification=A.TextDocumentContentChangeEvent=A.DidOpenTextDocumentNotification=A.TextDocumentSyncKind=A.TelemetryEventNotification=A.LogMessageNotification=A.ShowMessageRequest=A.ShowMessageNotification=A.MessageType=A.DidChangeConfigurationNotification=A.ExitNotification=A.ShutdownRequest=A.InitializedNotification=A.InitializeErrorCodes=A.InitializeRequest=A.WorkDoneProgressOptions=A.TextDocumentRegistrationOptions=A.StaticRegistrationOptions=A.PositionEncodingKind=A.FailureHandlingKind=A.ResourceOperationKind=A.UnregistrationRequest=A.RegistrationRequest=A.DocumentSelector=A.NotebookCellTextDocumentFilter=A.NotebookDocumentFilter=A.TextDocumentFilter=void 0,A.MonikerRequest=A.MonikerKind=A.UniquenessLevel=A.WillDeleteFilesRequest=A.DidDeleteFilesNotification=A.WillRenameFilesRequest=A.DidRenameFilesNotification=A.WillCreateFilesRequest=A.DidCreateFilesNotification=A.FileOperationPatternKind=A.LinkedEditingRangeRequest=A.ShowDocumentRequest=A.SemanticTokensRegistrationType=A.SemanticTokensRefreshRequest=A.SemanticTokensRangeRequest=A.SemanticTokensDeltaRequest=A.SemanticTokensRequest=A.TokenFormat=A.CallHierarchyPrepareRequest=A.CallHierarchyOutgoingCallsRequest=A.CallHierarchyIncomingCallsRequest=A.WorkDoneProgressCancelNotification=A.WorkDoneProgressCreateRequest=A.WorkDoneProgress=A.SelectionRangeRequest=A.DeclarationRequest=A.FoldingRangeRefreshRequest=A.FoldingRangeRequest=A.ColorPresentationRequest=A.DocumentColorRequest=A.ConfigurationRequest=A.DidChangeWorkspaceFoldersNotification=A.WorkspaceFoldersRequest=A.TypeDefinitionRequest=A.ImplementationRequest=A.ApplyWorkspaceEditRequest=A.ExecuteCommandRequest=A.PrepareRenameRequest=A.RenameRequest=A.PrepareSupportDefaultBehavior=A.DocumentOnTypeFormattingRequest=A.DocumentRangesFormattingRequest=A.DocumentRangeFormattingRequest=A.DocumentFormattingRequest=A.DocumentLinkResolveRequest=A.DocumentLinkRequest=A.CodeLensRefreshRequest=A.CodeLensResolveRequest=A.CodeLensRequest=A.WorkspaceSymbolResolveRequest=void 0,A.InlineCompletionRequest=A.DidCloseNotebookDocumentNotification=A.DidSaveNotebookDocumentNotification=A.DidChangeNotebookDocumentNotification=A.NotebookCellArrayChange=A.DidOpenNotebookDocumentNotification=A.NotebookDocumentSyncRegistrationType=A.NotebookDocument=A.NotebookCell=A.ExecutionSummary=A.NotebookCellKind=A.DiagnosticRefreshRequest=A.WorkspaceDiagnosticRequest=A.DocumentDiagnosticRequest=A.DocumentDiagnosticReportKind=A.DiagnosticServerCancellationData=A.InlayHintRefreshRequest=A.InlayHintResolveRequest=A.InlayHintRequest=A.InlineValueRefreshRequest=A.InlineValueRequest=A.TypeHierarchySupertypesRequest=A.TypeHierarchySubtypesRequest=A.TypeHierarchyPrepareRequest=void 0;var e=Na(),t=(Cx(),U0A(LK)),r=M0A(),i=F2t();Object.defineProperty(A,"ImplementationRequest",{enumerable:!0,get:G(function(){return i.ImplementationRequest},"get")});var u=x2t();Object.defineProperty(A,"TypeDefinitionRequest",{enumerable:!0,get:G(function(){return u.TypeDefinitionRequest},"get")});var a=S2t();Object.defineProperty(A,"WorkspaceFoldersRequest",{enumerable:!0,get:G(function(){return a.WorkspaceFoldersRequest},"get")}),Object.defineProperty(A,"DidChangeWorkspaceFoldersNotification",{enumerable:!0,get:G(function(){return a.DidChangeWorkspaceFoldersNotification},"get")});var n=L2t();Object.defineProperty(A,"ConfigurationRequest",{enumerable:!0,get:G(function(){return n.ConfigurationRequest},"get")});var o=R2t();Object.defineProperty(A,"DocumentColorRequest",{enumerable:!0,get:G(function(){return o.DocumentColorRequest},"get")}),Object.defineProperty(A,"ColorPresentationRequest",{enumerable:!0,get:G(function(){return o.ColorPresentationRequest},"get")});var s=N2t();Object.defineProperty(A,"FoldingRangeRequest",{enumerable:!0,get:G(function(){return s.FoldingRangeRequest},"get")}),Object.defineProperty(A,"FoldingRangeRefreshRequest",{enumerable:!0,get:G(function(){return s.FoldingRangeRefreshRequest},"get")});var l=G2t();Object.defineProperty(A,"DeclarationRequest",{enumerable:!0,get:G(function(){return l.DeclarationRequest},"get")});var g=U2t();Object.defineProperty(A,"SelectionRangeRequest",{enumerable:!0,get:G(function(){return g.SelectionRangeRequest},"get")});var C=M2t();Object.defineProperty(A,"WorkDoneProgress",{enumerable:!0,get:G(function(){return C.WorkDoneProgress},"get")}),Object.defineProperty(A,"WorkDoneProgressCreateRequest",{enumerable:!0,get:G(function(){return C.WorkDoneProgressCreateRequest},"get")}),Object.defineProperty(A,"WorkDoneProgressCancelNotification",{enumerable:!0,get:G(function(){return C.WorkDoneProgressCancelNotification},"get")});var B=T2t();Object.defineProperty(A,"CallHierarchyIncomingCallsRequest",{enumerable:!0,get:G(function(){return B.CallHierarchyIncomingCallsRequest},"get")}),Object.defineProperty(A,"CallHierarchyOutgoingCallsRequest",{enumerable:!0,get:G(function(){return B.CallHierarchyOutgoingCallsRequest},"get")}),Object.defineProperty(A,"CallHierarchyPrepareRequest",{enumerable:!0,get:G(function(){return B.CallHierarchyPrepareRequest},"get")});var E=Y2t();Object.defineProperty(A,"TokenFormat",{enumerable:!0,get:G(function(){return E.TokenFormat},"get")}),Object.defineProperty(A,"SemanticTokensRequest",{enumerable:!0,get:G(function(){return E.SemanticTokensRequest},"get")}),Object.defineProperty(A,"SemanticTokensDeltaRequest",{enumerable:!0,get:G(function(){return E.SemanticTokensDeltaRequest},"get")}),Object.defineProperty(A,"SemanticTokensRangeRequest",{enumerable:!0,get:G(function(){return E.SemanticTokensRangeRequest},"get")}),Object.defineProperty(A,"SemanticTokensRefreshRequest",{enumerable:!0,get:G(function(){return E.SemanticTokensRefreshRequest},"get")}),Object.defineProperty(A,"SemanticTokensRegistrationType",{enumerable:!0,get:G(function(){return E.SemanticTokensRegistrationType},"get")});var d=H2t();Object.defineProperty(A,"ShowDocumentRequest",{enumerable:!0,get:G(function(){return d.ShowDocumentRequest},"get")});var I=K2t();Object.defineProperty(A,"LinkedEditingRangeRequest",{enumerable:!0,get:G(function(){return I.LinkedEditingRangeRequest},"get")});var h=J2t();Object.defineProperty(A,"FileOperationPatternKind",{enumerable:!0,get:G(function(){return h.FileOperationPatternKind},"get")}),Object.defineProperty(A,"DidCreateFilesNotification",{enumerable:!0,get:G(function(){return h.DidCreateFilesNotification},"get")}),Object.defineProperty(A,"WillCreateFilesRequest",{enumerable:!0,get:G(function(){return h.WillCreateFilesRequest},"get")}),Object.defineProperty(A,"DidRenameFilesNotification",{enumerable:!0,get:G(function(){return h.DidRenameFilesNotification},"get")}),Object.defineProperty(A,"WillRenameFilesRequest",{enumerable:!0,get:G(function(){return h.WillRenameFilesRequest},"get")}),Object.defineProperty(A,"DidDeleteFilesNotification",{enumerable:!0,get:G(function(){return h.DidDeleteFilesNotification},"get")}),Object.defineProperty(A,"WillDeleteFilesRequest",{enumerable:!0,get:G(function(){return h.WillDeleteFilesRequest},"get")});var Q=O2t();Object.defineProperty(A,"UniquenessLevel",{enumerable:!0,get:G(function(){return Q.UniquenessLevel},"get")}),Object.defineProperty(A,"MonikerKind",{enumerable:!0,get:G(function(){return Q.MonikerKind},"get")}),Object.defineProperty(A,"MonikerRequest",{enumerable:!0,get:G(function(){return Q.MonikerRequest},"get")});var p=P2t();Object.defineProperty(A,"TypeHierarchyPrepareRequest",{enumerable:!0,get:G(function(){return p.TypeHierarchyPrepareRequest},"get")}),Object.defineProperty(A,"TypeHierarchySubtypesRequest",{enumerable:!0,get:G(function(){return p.TypeHierarchySubtypesRequest},"get")}),Object.defineProperty(A,"TypeHierarchySupertypesRequest",{enumerable:!0,get:G(function(){return p.TypeHierarchySupertypesRequest},"get")});var m=_2t();Object.defineProperty(A,"InlineValueRequest",{enumerable:!0,get:G(function(){return m.InlineValueRequest},"get")}),Object.defineProperty(A,"InlineValueRefreshRequest",{enumerable:!0,get:G(function(){return m.InlineValueRefreshRequest},"get")});var f=W2t();Object.defineProperty(A,"InlayHintRequest",{enumerable:!0,get:G(function(){return f.InlayHintRequest},"get")}),Object.defineProperty(A,"InlayHintResolveRequest",{enumerable:!0,get:G(function(){return f.InlayHintResolveRequest},"get")}),Object.defineProperty(A,"InlayHintRefreshRequest",{enumerable:!0,get:G(function(){return f.InlayHintRefreshRequest},"get")});var D=q2t();Object.defineProperty(A,"DiagnosticServerCancellationData",{enumerable:!0,get:G(function(){return D.DiagnosticServerCancellationData},"get")}),Object.defineProperty(A,"DocumentDiagnosticReportKind",{enumerable:!0,get:G(function(){return D.DocumentDiagnosticReportKind},"get")}),Object.defineProperty(A,"DocumentDiagnosticRequest",{enumerable:!0,get:G(function(){return D.DocumentDiagnosticRequest},"get")}),Object.defineProperty(A,"WorkspaceDiagnosticRequest",{enumerable:!0,get:G(function(){return D.WorkspaceDiagnosticRequest},"get")}),Object.defineProperty(A,"DiagnosticRefreshRequest",{enumerable:!0,get:G(function(){return D.DiagnosticRefreshRequest},"get")});var w=z2t();Object.defineProperty(A,"NotebookCellKind",{enumerable:!0,get:G(function(){return w.NotebookCellKind},"get")}),Object.defineProperty(A,"ExecutionSummary",{enumerable:!0,get:G(function(){return w.ExecutionSummary},"get")}),Object.defineProperty(A,"NotebookCell",{enumerable:!0,get:G(function(){return w.NotebookCell},"get")}),Object.defineProperty(A,"NotebookDocument",{enumerable:!0,get:G(function(){return w.NotebookDocument},"get")}),Object.defineProperty(A,"NotebookDocumentSyncRegistrationType",{enumerable:!0,get:G(function(){return w.NotebookDocumentSyncRegistrationType},"get")}),Object.defineProperty(A,"DidOpenNotebookDocumentNotification",{enumerable:!0,get:G(function(){return w.DidOpenNotebookDocumentNotification},"get")}),Object.defineProperty(A,"NotebookCellArrayChange",{enumerable:!0,get:G(function(){return w.NotebookCellArrayChange},"get")}),Object.defineProperty(A,"DidChangeNotebookDocumentNotification",{enumerable:!0,get:G(function(){return w.DidChangeNotebookDocumentNotification},"get")}),Object.defineProperty(A,"DidSaveNotebookDocumentNotification",{enumerable:!0,get:G(function(){return w.DidSaveNotebookDocumentNotification},"get")}),Object.defineProperty(A,"DidCloseNotebookDocumentNotification",{enumerable:!0,get:G(function(){return w.DidCloseNotebookDocumentNotification},"get")});var b=Z2t();Object.defineProperty(A,"InlineCompletionRequest",{enumerable:!0,get:G(function(){return b.InlineCompletionRequest},"get")});var k;(function(wA){function Re(He){let de=He;return r.string(de)||(r.string(de.language)||r.string(de.scheme)||r.string(de.pattern))}G(Re,"is"),wA.is=Re})(k||(A.TextDocumentFilter=k={}));var v;(function(wA){function Re(He){let de=He;return r.objectLiteral(de)&&(r.string(de.notebookType)||r.string(de.scheme)||r.string(de.pattern))}G(Re,"is"),wA.is=Re})(v||(A.NotebookDocumentFilter=v={}));var S;(function(wA){function Re(He){let de=He;return r.objectLiteral(de)&&(r.string(de.notebook)||v.is(de.notebook))&&(de.language===void 0||r.string(de.language))}G(Re,"is"),wA.is=Re})(S||(A.NotebookCellTextDocumentFilter=S={}));var x;(function(wA){function Re(He){if(!Array.isArray(He))return!1;for(let de of He)if(!r.string(de)&&!k.is(de)&&!S.is(de))return!1;return!0}G(Re,"is"),wA.is=Re})(x||(A.DocumentSelector=x={}));var F;(function(wA){wA.method="client/registerCapability",wA.messageDirection=e.MessageDirection.serverToClient,wA.type=new e.ProtocolRequestType(wA.method)})(F||(A.RegistrationRequest=F={}));var T;(function(wA){wA.method="client/unregisterCapability",wA.messageDirection=e.MessageDirection.serverToClient,wA.type=new e.ProtocolRequestType(wA.method)})(T||(A.UnregistrationRequest=T={}));var R;(function(wA){wA.Create="create",wA.Rename="rename",wA.Delete="delete"})(R||(A.ResourceOperationKind=R={}));var L;(function(wA){wA.Abort="abort",wA.Transactional="transactional",wA.TextOnlyTransactional="textOnlyTransactional",wA.Undo="undo"})(L||(A.FailureHandlingKind=L={}));var M;(function(wA){wA.UTF8="utf-8",wA.UTF16="utf-16",wA.UTF32="utf-32"})(M||(A.PositionEncodingKind=M={}));var U;(function(wA){function Re(He){let de=He;return de&&r.string(de.id)&&de.id.length>0}G(Re,"hasId"),wA.hasId=Re})(U||(A.StaticRegistrationOptions=U={}));var Y;(function(wA){function Re(He){let de=He;return de&&(de.documentSelector===null||x.is(de.documentSelector))}G(Re,"is"),wA.is=Re})(Y||(A.TextDocumentRegistrationOptions=Y={}));var H;(function(wA){function Re(de){let RA=de;return r.objectLiteral(RA)&&(RA.workDoneProgress===void 0||r.boolean(RA.workDoneProgress))}G(Re,"is"),wA.is=Re;function He(de){let RA=de;return RA&&r.boolean(RA.workDoneProgress)}G(He,"hasWorkDoneProgress"),wA.hasWorkDoneProgress=He})(H||(A.WorkDoneProgressOptions=H={}));var J;(function(wA){wA.method="initialize",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(J||(A.InitializeRequest=J={}));var K;(function(wA){wA.unknownProtocolVersion=1})(K||(A.InitializeErrorCodes=K={}));var O;(function(wA){wA.method="initialized",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolNotificationType(wA.method)})(O||(A.InitializedNotification=O={}));var P;(function(wA){wA.method="shutdown",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType0(wA.method)})(P||(A.ShutdownRequest=P={}));var z;(function(wA){wA.method="exit",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolNotificationType0(wA.method)})(z||(A.ExitNotification=z={}));var AA;(function(wA){wA.method="workspace/didChangeConfiguration",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolNotificationType(wA.method)})(AA||(A.DidChangeConfigurationNotification=AA={}));var W;(function(wA){wA.Error=1,wA.Warning=2,wA.Info=3,wA.Log=4,wA.Debug=5})(W||(A.MessageType=W={}));var CA;(function(wA){wA.method="window/showMessage",wA.messageDirection=e.MessageDirection.serverToClient,wA.type=new e.ProtocolNotificationType(wA.method)})(CA||(A.ShowMessageNotification=CA={}));var tA;(function(wA){wA.method="window/showMessageRequest",wA.messageDirection=e.MessageDirection.serverToClient,wA.type=new e.ProtocolRequestType(wA.method)})(tA||(A.ShowMessageRequest=tA={}));var lA;(function(wA){wA.method="window/logMessage",wA.messageDirection=e.MessageDirection.serverToClient,wA.type=new e.ProtocolNotificationType(wA.method)})(lA||(A.LogMessageNotification=lA={}));var gA;(function(wA){wA.method="telemetry/event",wA.messageDirection=e.MessageDirection.serverToClient,wA.type=new e.ProtocolNotificationType(wA.method)})(gA||(A.TelemetryEventNotification=gA={}));var aA;(function(wA){wA.None=0,wA.Full=1,wA.Incremental=2})(aA||(A.TextDocumentSyncKind=aA={}));var NA;(function(wA){wA.method="textDocument/didOpen",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolNotificationType(wA.method)})(NA||(A.DidOpenTextDocumentNotification=NA={}));var DA;(function(wA){function Re(de){let RA=de;return RA!==void 0&&RA!==null&&typeof RA.text==="string"&&RA.range!==void 0&&(RA.rangeLength===void 0||typeof RA.rangeLength==="number")}G(Re,"isIncremental"),wA.isIncremental=Re;function He(de){let RA=de;return RA!==void 0&&RA!==null&&typeof RA.text==="string"&&RA.range===void 0&&RA.rangeLength===void 0}G(He,"isFull"),wA.isFull=He})(DA||(A.TextDocumentContentChangeEvent=DA={}));var KA;(function(wA){wA.method="textDocument/didChange",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolNotificationType(wA.method)})(KA||(A.DidChangeTextDocumentNotification=KA={}));var TA;(function(wA){wA.method="textDocument/didClose",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolNotificationType(wA.method)})(TA||(A.DidCloseTextDocumentNotification=TA={}));var qA;(function(wA){wA.method="textDocument/didSave",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolNotificationType(wA.method)})(qA||(A.DidSaveTextDocumentNotification=qA={}));var IA;(function(wA){wA.Manual=1,wA.AfterDelay=2,wA.FocusOut=3})(IA||(A.TextDocumentSaveReason=IA={}));var bA;(function(wA){wA.method="textDocument/willSave",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolNotificationType(wA.method)})(bA||(A.WillSaveTextDocumentNotification=bA={}));var SA;(function(wA){wA.method="textDocument/willSaveWaitUntil",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(SA||(A.WillSaveTextDocumentWaitUntilRequest=SA={}));var EA;(function(wA){wA.method="workspace/didChangeWatchedFiles",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolNotificationType(wA.method)})(EA||(A.DidChangeWatchedFilesNotification=EA={}));var nA;(function(wA){wA.Created=1,wA.Changed=2,wA.Deleted=3})(nA||(A.FileChangeType=nA={}));var eA;(function(wA){function Re(He){let de=He;return r.objectLiteral(de)&&(t.URI.is(de.baseUri)||t.WorkspaceFolder.is(de.baseUri))&&r.string(de.pattern)}G(Re,"is"),wA.is=Re})(eA||(A.RelativePattern=eA={}));var BA;(function(wA){wA.Create=1,wA.Change=2,wA.Delete=4})(BA||(A.WatchKind=BA={}));var yA;(function(wA){wA.method="textDocument/publishDiagnostics",wA.messageDirection=e.MessageDirection.serverToClient,wA.type=new e.ProtocolNotificationType(wA.method)})(yA||(A.PublishDiagnosticsNotification=yA={}));var vA;(function(wA){wA.Invoked=1,wA.TriggerCharacter=2,wA.TriggerForIncompleteCompletions=3})(vA||(A.CompletionTriggerKind=vA={}));var FA;(function(wA){wA.method="textDocument/completion",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(FA||(A.CompletionRequest=FA={}));var HA;(function(wA){wA.method="completionItem/resolve",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(HA||(A.CompletionResolveRequest=HA={}));var dA;(function(wA){wA.method="textDocument/hover",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(dA||(A.HoverRequest=dA={}));var q;(function(wA){wA.Invoked=1,wA.TriggerCharacter=2,wA.ContentChange=3})(q||(A.SignatureHelpTriggerKind=q={}));var Z;(function(wA){wA.method="textDocument/signatureHelp",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(Z||(A.SignatureHelpRequest=Z={}));var fA;(function(wA){wA.method="textDocument/definition",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(fA||(A.DefinitionRequest=fA={}));var j;(function(wA){wA.method="textDocument/references",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(j||(A.ReferencesRequest=j={}));var mA;(function(wA){wA.method="textDocument/documentHighlight",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(mA||(A.DocumentHighlightRequest=mA={}));var rA;(function(wA){wA.method="textDocument/documentSymbol",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(rA||(A.DocumentSymbolRequest=rA={}));var JA;(function(wA){wA.method="textDocument/codeAction",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(JA||(A.CodeActionRequest=JA={}));var _A;(function(wA){wA.method="codeAction/resolve",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(_A||(A.CodeActionResolveRequest=_A={}));var ZA;(function(wA){wA.method="workspace/symbol",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(ZA||(A.WorkspaceSymbolRequest=ZA={}));var WA;(function(wA){wA.method="workspaceSymbol/resolve",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(WA||(A.WorkspaceSymbolResolveRequest=WA={}));var te;(function(wA){wA.method="textDocument/codeLens",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(te||(A.CodeLensRequest=te={}));var zA;(function(wA){wA.method="codeLens/resolve",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(zA||(A.CodeLensResolveRequest=zA={}));var Ae;(function(wA){wA.method="workspace/codeLens/refresh",wA.messageDirection=e.MessageDirection.serverToClient,wA.type=new e.ProtocolRequestType0(wA.method)})(Ae||(A.CodeLensRefreshRequest=Ae={}));var $A;(function(wA){wA.method="textDocument/documentLink",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})($A||(A.DocumentLinkRequest=$A={}));var oe;(function(wA){wA.method="documentLink/resolve",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(oe||(A.DocumentLinkResolveRequest=oe={}));var kA;(function(wA){wA.method="textDocument/formatting",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(kA||(A.DocumentFormattingRequest=kA={}));var Pe;(function(wA){wA.method="textDocument/rangeFormatting",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(Pe||(A.DocumentRangeFormattingRequest=Pe={}));var MA;(function(wA){wA.method="textDocument/rangesFormatting",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(MA||(A.DocumentRangesFormattingRequest=MA={}));var ke;(function(wA){wA.method="textDocument/onTypeFormatting",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(ke||(A.DocumentOnTypeFormattingRequest=ke={}));var We;(function(wA){wA.Identifier=1})(We||(A.PrepareSupportDefaultBehavior=We={}));var ue;(function(wA){wA.method="textDocument/rename",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(ue||(A.RenameRequest=ue={}));var Me;(function(wA){wA.method="textDocument/prepareRename",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(Me||(A.PrepareRenameRequest=Me={}));var je;(function(wA){wA.method="workspace/executeCommand",wA.messageDirection=e.MessageDirection.clientToServer,wA.type=new e.ProtocolRequestType(wA.method)})(je||(A.ExecuteCommandRequest=je={}));var Ge;(function(wA){wA.method="workspace/applyEdit",wA.messageDirection=e.MessageDirection.serverToClient,wA.type=new e.ProtocolRequestType("workspace/applyEdit")})(Ge||(A.ApplyWorkspaceEditRequest=Ge={}))}}),j2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/connection.js"(A){Object.defineProperty(A,"__esModule",{value:!0}),A.createProtocolConnection=void 0;var e=Xw();function t(r,i,u,a){if(e.ConnectionStrategy.is(a))a={connectionStrategy:a};return(0,e.createMessageConnection)(r,i,u,a)}G(t,"createProtocolConnection"),A.createProtocolConnection=t}}),X2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/common/api.js"(A){var e=A&&A.__createBinding||(Object.create?function(u,a,n,o){if(o===void 0)o=n;var s=Object.getOwnPropertyDescriptor(a,n);if(!s||("get"in s?!a.__esModule:s.writable||s.configurable))s={enumerable:!0,get:G(function(){return a[n]},"get")};Object.defineProperty(u,o,s)}:function(u,a,n,o){if(o===void 0)o=n;u[o]=a[n]}),t=A&&A.__exportStar||function(u,a){for(var n in u)if(n!=="default"&&!Object.prototype.hasOwnProperty.call(a,n))e(a,u,n)};Object.defineProperty(A,"__esModule",{value:!0}),A.LSPErrorCodes=A.createProtocolConnection=void 0,t(Xw(),A),t((Cx(),U0A(LK)),A),t(Na(),A),t(V2t(),A);var r=j2t();Object.defineProperty(A,"createProtocolConnection",{enumerable:!0,get:G(function(){return r.createProtocolConnection},"get")});var i;(function(u){u.lspReservedErrorRangeStart=-32899,u.RequestFailed=-32803,u.ServerCancelled=-32802,u.ContentModified=-32801,u.RequestCancelled=-32800,u.lspReservedErrorRangeEnd=-32800})(i||(A.LSPErrorCodes=i={}))}}),$2t=Vr({"../../node_modules/.pnpm/vscode-languageserver-protocol@3.17.5/node_modules/vscode-languageserver-protocol/lib/browser/main.js"(A){var e=A&&A.__createBinding||(Object.create?function(u,a,n,o){if(o===void 0)o=n;var s=Object.getOwnPropertyDescriptor(a,n);if(!s||("get"in s?!a.__esModule:s.writable||s.configurable))s={enumerable:!0,get:G(function(){return a[n]},"get")};Object.defineProperty(u,o,s)}:function(u,a,n,o){if(o===void 0)o=n;u[o]=a[n]}),t=A&&A.__exportStar||function(u,a){for(var n in u)if(n!=="default"&&!Object.prototype.hasOwnProperty.call(a,n))e(a,u,n)};Object.defineProperty(A,"__esModule",{value:!0}),A.createProtocolConnection=void 0;var r=TOA();t(TOA(),A),t(X2t(),A);function i(u,a,n,o){return(0,r.createMessageConnection)(u,a,n,o)}G(i,"createProtocolConnection"),A.createProtocolConnection=i}}),Jo={};z4(Jo,{AbstractAstReflection:()=>H0A,AbstractCstNode:()=>JlA,AbstractLangiumParser:()=>PlA,AbstractParserErrorMessageProvider:()=>hee,AbstractThreadedAsyncParser:()=>k7t,AstUtils:()=>K0A,BiMap:()=>zH,Cancellation:()=>Wu,CompositeCstNodeImpl:()=>FJ,ContextCache:()=>UJ,CstNodeBuilder:()=>Eee,CstUtils:()=>T0A,DEFAULT_TOKENIZE_OPTIONS:()=>ogA,DONE_RESULT:()=>Ds,DatatypeSymbol:()=>PH,DefaultAstNodeDescriptionProvider:()=>zee,DefaultAstNodeLocator:()=>Vee,DefaultAsyncParser:()=>Bte,DefaultCommentProvider:()=>Cte,DefaultConfigurationProvider:()=>jee,DefaultDocumentBuilder:()=>Xee,DefaultDocumentValidator:()=>qee,DefaultHydrator:()=>dte,DefaultIndexManager:()=>$ee,DefaultJsonSerializer:()=>Oee,DefaultLangiumDocumentFactory:()=>Nee,DefaultLangiumDocuments:()=>Gee,DefaultLangiumProfiler:()=>R7t,DefaultLexer:()=>sgA,DefaultLexerErrorMessageProvider:()=>ete,DefaultLinker:()=>Uee,DefaultNameProvider:()=>Mee,DefaultReferenceDescriptionProvider:()=>Zee,DefaultReferences:()=>Tee,DefaultScopeComputation:()=>Yee,DefaultScopeProvider:()=>Jee,DefaultServiceRegistry:()=>Pee,DefaultTokenBuilder:()=>LJ,DefaultValueConverter:()=>jlA,DefaultWorkspaceLock:()=>Ete,DefaultWorkspaceManager:()=>Ate,Deferred:()=>XI,Disposable:()=>F3,DisposableCache:()=>GJ,DocumentCache:()=>Kee,DocumentState:()=>li,DocumentValidator:()=>Cc,EMPTY_SCOPE:()=>y7t,EMPTY_STREAM:()=>Hw,EmptyFileSystem:()=>Ji,EmptyFileSystemProvider:()=>Qte,ErrorWithLocation:()=>JK,GrammarAST:()=>G_A,GrammarUtils:()=>IsA,IndentationAwareLexer:()=>x7t,IndentationAwareTokenBuilder:()=>hte,JSDocDocumentationProvider:()=>cte,LangiumCompletionParser:()=>Qee,LangiumParser:()=>Iee,LangiumParserErrorMessageProvider:()=>_lA,LeafCstNodeImpl:()=>OH,LexingMode:()=>w3,MapScope:()=>D7t,Module:()=>d0A,MultiMap:()=>$I,MultiMapScope:()=>Hee,OperationCancelled:()=>GE,ParserWorker:()=>F7t,ProfilingTask:()=>fte,Reduction:()=>ZF,RefResolving:()=>a3,RegExpUtils:()=>QsA,RootCstNodeImpl:()=>OlA,SimpleCache:()=>rgA,StreamImpl:()=>NE,StreamScope:()=>c0A,TextDocument:()=>WH,TreeStreamImpl:()=>Kw,URI:()=>Cg,UriTrie:()=>egA,UriUtils:()=>ws,VALIDATE_EACH_NODE:()=>Wee,ValidationCategory:()=>ZH,ValidationRegistry:()=>_ee,ValueConverter:()=>LE,WorkspaceCache:()=>igA,assertCondition:()=>hsA,assertUnreachable:()=>Z4,createCompletionParser:()=>zlA,createDefaultCoreModule:()=>xi,createDefaultSharedCoreModule:()=>Si,createGrammarConfig:()=>MsA,createLangiumParser:()=>ZlA,createParser:()=>xJ,delayNextTick:()=>RJ,diagnosticData:()=>y3,eagerLoad:()=>dgA,getDiagnosticRange:()=>agA,indentationBuilderDefaultOptions:()=>h0A,inject:()=>wr,interruptAndCheck:()=>Ko,isAstNode:()=>Yn,isAstNodeDescription:()=>Y0A,isAstNodeWithComment:()=>ugA,isCompositeCstNode:()=>PI,isIMultiModeLexerDefinition:()=>YJ,isJSDoc:()=>ggA,isLeafCstNode:()=>G3,isLinkingError:()=>n3,isMultiReference:()=>UE,isNamed:()=>tgA,isOperationCancelled:()=>Am,isReference:()=>ys,isRootCstNode:()=>NK,isTokenTypeArray:()=>TJ,isTokenTypeDictionary:()=>VH,loadGrammarFromJson:()=>Oo,parseJSDoc:()=>lgA,prepareLangiumParser:()=>VlA,setInterruptionPeriod:()=>XlA,startCancelableOperation:()=>NJ,stream:()=>Qu,toDiagnosticData:()=>ngA,toDiagnosticSeverity:()=>YF});T0A={};z4(T0A,{DefaultNameRegexp:()=>csA,RangeComparison:()=>RE,compareRange:()=>lsA,findCommentNode:()=>CsA,findDeclarationNodeAtOffset:()=>AWA,findLeafNodeAtOffset:()=>KK,findLeafNodeBeforeOffset:()=>BsA,flattenCst:()=>$_A,getDatatypeNode:()=>X_A,getInteriorNodes:()=>rWA,getNextNode:()=>eWA,getPreviousNode:()=>dsA,getStartlineNode:()=>tWA,inRange:()=>gsA,isChildNode:()=>ssA,isCommentNode:()=>vH,streamCst:()=>_w,toDocumentSegment:()=>Ww,tokenToRange:()=>VF});G(Yn,"isAstNode");G(ys,"isReference");G(UE,"isMultiReference");G(Y0A,"isAstNodeDescription");G(n3,"isLinkingError");H0A=class{static{G(this,"AbstractAstReflection")}constructor(){this.subtypes={},this.allSubtypes={}}getAllTypes(){return Object.keys(this.types)}getReferenceType(A){let e=this.types[A.container.$type];if(!e)throw Error(`Type ${A.container.$type||"undefined"} not found.`);let t=e.properties[A.property]?.referenceType;if(!t)throw Error(`Property ${A.property||"undefined"} of type ${A.container.$type} is not a reference.`);return t}getTypeMetaData(A){let e=this.types[A];if(!e)return{name:A,properties:{},superTypes:[]};return e}isInstance(A,e){return Yn(A)&&this.isSubtype(A.$type,e)}isSubtype(A,e){if(A===e)return!0;let t=this.subtypes[A];if(!t)t=this.subtypes[A]={};let r=t[e];if(r!==void 0)return r;else{let i=this.types[A],u=i?i.superTypes.some((a)=>this.isSubtype(a,e)):!1;return t[e]=u,u}}getAllSubTypes(A){let e=this.allSubtypes[A];if(e)return e;else{let t=this.getAllTypes(),r=[];for(let i of t)if(this.isSubtype(i,A))r.push(i);return this.allSubtypes[A]=r,r}}};G(PI,"isCompositeCstNode");G(G3,"isLeafCstNode");G(NK,"isRootCstNode");NE=class A{static{G(this,"StreamImpl")}constructor(e,t){this.startFn=e,this.nextFn=t}iterator(){let e={state:this.startFn(),next:G(()=>this.nextFn(e.state),"next"),[Symbol.iterator]:()=>e};return e}[Symbol.iterator](){return this.iterator()}isEmpty(){let e=this.iterator();return Boolean(e.next().done)}count(){let e=this.iterator(),t=0,r=e.next();while(!r.done)t++,r=e.next();return t}toArray(){let e=[],t=this.iterator(),r;do if(r=t.next(),r.value!==void 0)e.push(r.value);while(!r.done);return e}toSet(){return new Set(this)}toMap(e,t){let r=this.map((i)=>[e?e(i):i,t?t(i):i]);return new Map(r)}toString(){return this.join()}concat(e){return new A(()=>({first:this.startFn(),firstDone:!1,iterator:e[Symbol.iterator]()}),(t)=>{let r;if(!t.firstDone){do if(r=this.nextFn(t.first),!r.done)return r;while(!r.done);t.firstDone=!0}do if(r=t.iterator.next(),!r.done)return r;while(!r.done);return Ds})}join(e=","){let t=this.iterator(),r="",i,u=!1;do{if(i=t.next(),!i.done){if(u)r+=e;r+=R_A(i.value)}u=!0}while(!i.done);return r}indexOf(e,t=0){let r=this.iterator(),i=0,u=r.next();while(!u.done){if(i>=t&&u.value===e)return i;u=r.next(),i++}return-1}every(e){let t=this.iterator(),r=t.next();while(!r.done){if(!e(r.value))return!1;r=t.next()}return!0}some(e){let t=this.iterator(),r=t.next();while(!r.done){if(e(r.value))return!0;r=t.next()}return!1}forEach(e){let t=this.iterator(),r=0,i=t.next();while(!i.done)e(i.value,r),i=t.next(),r++}map(e){return new A(this.startFn,(t)=>{let{done:r,value:i}=this.nextFn(t);if(r)return Ds;else return{done:!1,value:e(i)}})}filter(e){return new A(this.startFn,(t)=>{let r;do if(r=this.nextFn(t),!r.done&&e(r.value))return r;while(!r.done);return Ds})}nonNullable(){return this.filter((e)=>e!==void 0&&e!==null)}reduce(e,t){let r=this.iterator(),i=t,u=r.next();while(!u.done){if(i===void 0)i=u.value;else i=e(i,u.value);u=r.next()}return i}reduceRight(e,t){return this.recursiveReduce(this.iterator(),e,t)}recursiveReduce(e,t,r){let i=e.next();if(i.done)return r;let u=this.recursiveReduce(e,t,r);if(u===void 0)return i.value;return t(u,i.value)}find(e){let t=this.iterator(),r=t.next();while(!r.done){if(e(r.value))return r.value;r=t.next()}return}findIndex(e){let t=this.iterator(),r=0,i=t.next();while(!i.done){if(e(i.value))return r;i=t.next(),r++}return-1}includes(e){let t=this.iterator(),r=t.next();while(!r.done){if(r.value===e)return!0;r=t.next()}return!1}flatMap(e){return new A(()=>({this:this.startFn()}),(t)=>{do{if(t.iterator){let u=t.iterator.next();if(u.done)t.iterator=void 0;else return u}let{done:r,value:i}=this.nextFn(t.this);if(!r){let u=e(i);if(zF(u))t.iterator=u[Symbol.iterator]();else return{done:!1,value:u}}}while(t.iterator);return Ds})}flat(e){if(e===void 0)e=1;if(e<=0)return this;let t=e>1?this.flat(e-1):this;return new A(()=>({this:t.startFn()}),(r)=>{do{if(r.iterator){let a=r.iterator.next();if(a.done)r.iterator=void 0;else return a}let{done:i,value:u}=t.nextFn(r.this);if(!i)if(zF(u))r.iterator=u[Symbol.iterator]();else return{done:!1,value:u}}while(r.iterator);return Ds})}head(){let t=this.iterator().next();if(t.done)return;return t.value}tail(e=1){return new A(()=>{let t=this.startFn();for(let r=0;r<e;r++)if(this.nextFn(t).done)return t;return t},this.nextFn)}limit(e){return new A(()=>({size:0,state:this.startFn()}),(t)=>{if(t.size++,t.size>e)return Ds;return this.nextFn(t.state)})}distinct(e){return new A(()=>({set:new Set,internalState:this.startFn()}),(t)=>{let r;do if(r=this.nextFn(t.internalState),!r.done){let i=e?e(r.value):r.value;if(!t.set.has(i))return t.set.add(i),r}while(!r.done);return Ds})}exclude(e,t){let r=new Set;for(let i of e){let u=t?t(i):i;r.add(u)}return this.filter((i)=>{let u=t?t(i):i;return!r.has(u)})}};G(R_A,"toString");G(zF,"isIterable");Hw=new NE(()=>{return},()=>Ds),Ds=Object.freeze({done:!0,value:void 0});G(Qu,"stream");Kw=class extends NE{static{G(this,"TreeStreamImpl")}constructor(A,e,t){super(()=>({iterators:t?.includeRoot?[[A][Symbol.iterator]()]:[e(A)[Symbol.iterator]()],pruned:!1}),(r)=>{if(r.pruned)r.iterators.pop(),r.pruned=!1;while(r.iterators.length>0){let u=r.iterators[r.iterators.length-1].next();if(u.done)r.iterators.pop();else return r.iterators.push(e(u.value)[Symbol.iterator]()),u}return Ds})}iterator(){let A={state:this.startFn(),next:G(()=>this.nextFn(A.state),"next"),prune:G(()=>{A.state.pruned=!0},"prune"),[Symbol.iterator]:()=>A};return A}};(function(A){function e(u){return u.reduce((a,n)=>a+n,0)}G(e,"sum"),A.sum=e;function t(u){return u.reduce((a,n)=>a*n,0)}G(t,"product"),A.product=t;function r(u){return u.reduce((a,n)=>Math.min(a,n))}G(r,"min"),A.min=r;function i(u){return u.reduce((a,n)=>Math.max(a,n))}G(i,"max"),A.max=i})(ZF||(ZF={}));K0A={};z4(K0A,{assignMandatoryProperties:()=>J0A,copyAstNode:()=>CH,findRootNode:()=>Rw,getContainerOfType:()=>U3,getDocument:()=>kC,getReferenceNodes:()=>gH,hasContainerOfType:()=>N_A,linkContentToContainer:()=>Jw,streamAllContents:()=>Ah,streamAst:()=>FC,streamContents:()=>Ex,streamReferences:()=>Ow});G(Jw,"linkContentToContainer");G(U3,"getContainerOfType");G(N_A,"hasContainerOfType");G(kC,"getDocument");G(Rw,"findRootNode");G(gH,"getReferenceNodes");G(Ex,"streamContents");G(Ah,"streamAllContents");G(FC,"streamAst");G(cH,"isAstNodeInRange");G(Ow,"streamReferences");G(J0A,"assignMandatoryProperties");G(O0A,"copyDefaultValue");G(CH,"copyAstNode");G_A={};z4(G_A,{AbstractElement:()=>Ql,AbstractParserRule:()=>wF,AbstractRule:()=>ww,AbstractType:()=>cg,Action:()=>w4,Alternatives:()=>bF,ArrayLiteral:()=>BH,ArrayType:()=>EH,Assignment:()=>b4,BooleanLiteral:()=>dH,CharacterRange:()=>v4,Condition:()=>k4,Conjunction:()=>vF,CrossReference:()=>F4,Disjunction:()=>kF,EndOfFile:()=>IH,Grammar:()=>GI,GrammarImport:()=>hH,Group:()=>o3,InferredType:()=>QH,InfixRule:()=>SE,InfixRuleOperatorList:()=>FF,InfixRuleOperators:()=>pH,Interface:()=>bw,Keyword:()=>vw,LangiumGrammarAstReflection:()=>osA,LangiumGrammarTerminals:()=>ADt,NamedArgument:()=>kw,NegatedToken:()=>s3,Negation:()=>fH,NumberLiteral:()=>mH,Parameter:()=>Fw,ParameterReference:()=>DH,ParserRule:()=>DC,ReferenceType:()=>xF,RegexToken:()=>l3,ReturnType:()=>yH,RuleCall:()=>g3,SimpleType:()=>xw,StringLiteral:()=>wH,TerminalAlternatives:()=>c3,TerminalElement:()=>pl,TerminalGroup:()=>C3,TerminalRule:()=>UI,TerminalRuleCall:()=>B3,Type:()=>SF,TypeAttribute:()=>E3,TypeDefinition:()=>d3,UnionType:()=>bH,UnorderedGroup:()=>LF,UntilToken:()=>I3,ValueLiteral:()=>h3,Wildcard:()=>Sw,isAbstractElement:()=>GK,isAbstractParserRule:()=>M3,isAbstractRule:()=>U_A,isAbstractType:()=>M_A,isAction:()=>O4,isAlternatives:()=>UK,isArrayLiteral:()=>T_A,isArrayType:()=>P0A,isAssignment:()=>_I,isBooleanLiteral:()=>_0A,isCharacterRange:()=>W0A,isCondition:()=>Y_A,isConjunction:()=>q0A,isCrossReference:()=>T3,isDisjunction:()=>z0A,isEndOfFile:()=>Z0A,isGrammar:()=>H_A,isGrammarImport:()=>K_A,isGroup:()=>Y3,isInferredType:()=>dx,isInfixRule:()=>Pw,isInfixRuleOperatorList:()=>J_A,isInfixRuleOperators:()=>O_A,isInterface:()=>V0A,isKeyword:()=>WI,isNamedArgument:()=>P_A,isNegatedToken:()=>j0A,isNegation:()=>X0A,isNumberLiteral:()=>__A,isParameter:()=>W_A,isParameterReference:()=>$0A,isParserRule:()=>vs,isReferenceType:()=>AsA,isRegexToken:()=>esA,isReturnType:()=>tsA,isRuleCall:()=>qI,isSimpleType:()=>MK,isStringLiteral:()=>q_A,isTerminalAlternatives:()=>rsA,isTerminalElement:()=>z_A,isTerminalGroup:()=>isA,isTerminalRule:()=>Ic,isTerminalRuleCall:()=>TK,isType:()=>YK,isTypeAttribute:()=>Z_A,isTypeDefinition:()=>V_A,isUnionType:()=>usA,isUnorderedGroup:()=>HK,isUntilToken:()=>asA,isValueLiteral:()=>j_A,isWildcard:()=>nsA,reflection:()=>Ir});ADt={ID:/\^?[_a-zA-Z][\w_]*/,STRING:/"(\\.|[^"\\])*"|'(\\.|[^'\\])*'/,NUMBER:/NaN|-?((\d*\.\d+|\d+)([Ee][+-]?\d+)?|Infinity)/,RegexLiteral:/\/(?![*+?])(?:[^\r\n\[/\\]|\\.|\[(?:[^\r\n\]\\]|\\.)*\])+\/[a-z]*/,WS:/\s+/,ML_COMMENT:/\/\*[\s\S]*?\*\//,SL_COMMENT:/\/\/[^\n\r]*/},Ql={$type:"AbstractElement",cardinality:"cardinality"};G(GK,"isAbstractElement");wF={$type:"AbstractParserRule"};G(M3,"isAbstractParserRule");ww={$type:"AbstractRule"};G(U_A,"isAbstractRule");cg={$type:"AbstractType"};G(M_A,"isAbstractType");w4={$type:"Action",cardinality:"cardinality",feature:"feature",inferredType:"inferredType",operator:"operator",type:"type"};G(O4,"isAction");bF={$type:"Alternatives",cardinality:"cardinality",elements:"elements"};G(UK,"isAlternatives");BH={$type:"ArrayLiteral",elements:"elements"};G(T_A,"isArrayLiteral");EH={$type:"ArrayType",elementType:"elementType"};G(P0A,"isArrayType");b4={$type:"Assignment",cardinality:"cardinality",feature:"feature",operator:"operator",predicate:"predicate",terminal:"terminal"};G(_I,"isAssignment");dH={$type:"BooleanLiteral",true:"true"};G(_0A,"isBooleanLiteral");v4={$type:"CharacterRange",cardinality:"cardinality",left:"left",lookahead:"lookahead",parenthesized:"parenthesized",right:"right"};G(W0A,"isCharacterRange");k4={$type:"Condition"};G(Y_A,"isCondition");vF={$type:"Conjunction",left:"left",right:"right"};G(q0A,"isConjunction");F4={$type:"CrossReference",cardinality:"cardinality",deprecatedSyntax:"deprecatedSyntax",isMulti:"isMulti",terminal:"terminal",type:"type"};G(T3,"isCrossReference");kF={$type:"Disjunction",left:"left",right:"right"};G(z0A,"isDisjunction");IH={$type:"EndOfFile",cardinality:"cardinality"};G(Z0A,"isEndOfFile");GI={$type:"Grammar",imports:"imports",interfaces:"interfaces",isDeclared:"isDeclared",name:"name",rules:"rules",types:"types"};G(H_A,"isGrammar");hH={$type:"GrammarImport",path:"path"};G(K_A,"isGrammarImport");o3={$type:"Group",cardinality:"cardinality",elements:"elements",guardCondition:"guardCondition",predicate:"predicate"};G(Y3,"isGroup");QH={$type:"InferredType",name:"name"};G(dx,"isInferredType");SE={$type:"InfixRule",call:"call",dataType:"dataType",inferredType:"inferredType",name:"name",operators:"operators",parameters:"parameters",returnType:"returnType"};G(Pw,"isInfixRule");FF={$type:"InfixRuleOperatorList",associativity:"associativity",operators:"operators"};G(J_A,"isInfixRuleOperatorList");pH={$type:"InfixRuleOperators",precedences:"precedences"};G(O_A,"isInfixRuleOperators");bw={$type:"Interface",attributes:"attributes",name:"name",superTypes:"superTypes"};G(V0A,"isInterface");vw={$type:"Keyword",cardinality:"cardinality",predicate:"predicate",value:"value"};G(WI,"isKeyword");kw={$type:"NamedArgument",calledByName:"calledByName",parameter:"parameter",value:"value"};G(P_A,"isNamedArgument");s3={$type:"NegatedToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};G(j0A,"isNegatedToken");fH={$type:"Negation",value:"value"};G(X0A,"isNegation");mH={$type:"NumberLiteral",value:"value"};G(__A,"isNumberLiteral");Fw={$type:"Parameter",name:"name"};G(W_A,"isParameter");DH={$type:"ParameterReference",parameter:"parameter"};G($0A,"isParameterReference");DC={$type:"ParserRule",dataType:"dataType",definition:"definition",entry:"entry",fragment:"fragment",inferredType:"inferredType",name:"name",parameters:"parameters",returnType:"returnType"};G(vs,"isParserRule");xF={$type:"ReferenceType",isMulti:"isMulti",referenceType:"referenceType"};G(AsA,"isReferenceType");l3={$type:"RegexToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",regex:"regex"};G(esA,"isRegexToken");yH={$type:"ReturnType",name:"name"};G(tsA,"isReturnType");g3={$type:"RuleCall",arguments:"arguments",cardinality:"cardinality",predicate:"predicate",rule:"rule"};G(qI,"isRuleCall");xw={$type:"SimpleType",primitiveType:"primitiveType",stringType:"stringType",typeRef:"typeRef"};G(MK,"isSimpleType");wH={$type:"StringLiteral",value:"value"};G(q_A,"isStringLiteral");c3={$type:"TerminalAlternatives",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};G(rsA,"isTerminalAlternatives");pl={$type:"TerminalElement",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};G(z_A,"isTerminalElement");C3={$type:"TerminalGroup",cardinality:"cardinality",elements:"elements",lookahead:"lookahead",parenthesized:"parenthesized"};G(isA,"isTerminalGroup");UI={$type:"TerminalRule",definition:"definition",fragment:"fragment",hidden:"hidden",name:"name",type:"type"};G(Ic,"isTerminalRule");B3={$type:"TerminalRuleCall",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",rule:"rule"};G(TK,"isTerminalRuleCall");SF={$type:"Type",name:"name",type:"type"};G(YK,"isType");E3={$type:"TypeAttribute",defaultValue:"defaultValue",isOptional:"isOptional",name:"name",type:"type"};G(Z_A,"isTypeAttribute");d3={$type:"TypeDefinition"};G(V_A,"isTypeDefinition");bH={$type:"UnionType",types:"types"};G(usA,"isUnionType");LF={$type:"UnorderedGroup",cardinality:"cardinality",elements:"elements"};G(HK,"isUnorderedGroup");I3={$type:"UntilToken",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized",terminal:"terminal"};G(asA,"isUntilToken");h3={$type:"ValueLiteral"};G(j_A,"isValueLiteral");Sw={$type:"Wildcard",cardinality:"cardinality",lookahead:"lookahead",parenthesized:"parenthesized"};G(nsA,"isWildcard");osA=class extends H0A{static{G(this,"LangiumGrammarAstReflection")}constructor(){super(...arguments);this.types={AbstractElement:{name:Ql.$type,properties:{cardinality:{name:Ql.cardinality}},superTypes:[]},AbstractParserRule:{name:wF.$type,properties:{},superTypes:[ww.$type,cg.$type]},AbstractRule:{name:ww.$type,properties:{},superTypes:[]},AbstractType:{name:cg.$type,properties:{},superTypes:[]},Action:{name:w4.$type,properties:{cardinality:{name:w4.cardinality},feature:{name:w4.feature},inferredType:{name:w4.inferredType},operator:{name:w4.operator},type:{name:w4.type,referenceType:cg.$type}},superTypes:[Ql.$type]},Alternatives:{name:bF.$type,properties:{cardinality:{name:bF.cardinality},elements:{name:bF.elements,defaultValue:[]}},superTypes:[Ql.$type]},ArrayLiteral:{name:BH.$type,properties:{elements:{name:BH.elements,defaultValue:[]}},superTypes:[h3.$type]},ArrayType:{name:EH.$type,properties:{elementType:{name:EH.elementType}},superTypes:[d3.$type]},Assignment:{name:b4.$type,properties:{cardinality:{name:b4.cardinality},feature:{name:b4.feature},operator:{name:b4.operator},predicate:{name:b4.predicate},terminal:{name:b4.terminal}},superTypes:[Ql.$type]},BooleanLiteral:{name:dH.$type,properties:{true:{name:dH.true,defaultValue:!1}},superTypes:[k4.$type,h3.$type]},CharacterRange:{name:v4.$type,properties:{cardinality:{name:v4.cardinality},left:{name:v4.left},lookahead:{name:v4.lookahead},parenthesized:{name:v4.parenthesized,defaultValue:!1},right:{name:v4.right}},superTypes:[pl.$type]},Condition:{name:k4.$type,properties:{},superTypes:[]},Conjunction:{name:vF.$type,properties:{left:{name:vF.left},right:{name:vF.right}},superTypes:[k4.$type]},CrossReference:{name:F4.$type,properties:{cardinality:{name:F4.cardinality},deprecatedSyntax:{name:F4.deprecatedSyntax,defaultValue:!1},isMulti:{name:F4.isMulti,defaultValue:!1},terminal:{name:F4.terminal},type:{name:F4.type,referenceType:cg.$type}},superTypes:[Ql.$type]},Disjunction:{name:kF.$type,properties:{left:{name:kF.left},right:{name:kF.right}},superTypes:[k4.$type]},EndOfFile:{name:IH.$type,properties:{cardinality:{name:IH.cardinality}},superTypes:[Ql.$type]},Grammar:{name:GI.$type,properties:{imports:{name:GI.imports,defaultValue:[]},interfaces:{name:GI.interfaces,defaultValue:[]},isDeclared:{name:GI.isDeclared,defaultValue:!1},name:{name:GI.name},rules:{name:GI.rules,defaultValue:[]},types:{name:GI.types,defaultValue:[]}},superTypes:[]},GrammarImport:{name:hH.$type,properties:{path:{name:hH.path}},superTypes:[]},Group:{name:o3.$type,properties:{cardinality:{name:o3.cardinality},elements:{name:o3.elements,defaultValue:[]},guardCondition:{name:o3.guardCondition},predicate:{name:o3.predicate}},superTypes:[Ql.$type]},InferredType:{name:QH.$type,properties:{name:{name:QH.name}},superTypes:[cg.$type]},InfixRule:{name:SE.$type,properties:{call:{name:SE.call},dataType:{name:SE.dataType},inferredType:{name:SE.inferredType},name:{name:SE.name},operators:{name:SE.operators},parameters:{name:SE.parameters,defaultValue:[]},returnType:{name:SE.returnType,referenceType:cg.$type}},superTypes:[wF.$type]},InfixRuleOperatorList:{name:FF.$type,properties:{associativity:{name:FF.associativity},operators:{name:FF.operators,defaultValue:[]}},superTypes:[]},InfixRuleOperators:{name:pH.$type,properties:{precedences:{name:pH.precedences,defaultValue:[]}},superTypes:[]},Interface:{name:bw.$type,properties:{attributes:{name:bw.attributes,defaultValue:[]},name:{name:bw.name},superTypes:{name:bw.superTypes,defaultValue:[],referenceType:cg.$type}},superTypes:[cg.$type]},Keyword:{name:vw.$type,properties:{cardinality:{name:vw.cardinality},predicate:{name:vw.predicate},value:{name:vw.value}},superTypes:[Ql.$type]},NamedArgument:{name:kw.$type,properties:{calledByName:{name:kw.calledByName,defaultValue:!1},parameter:{name:kw.parameter,referenceType:Fw.$type},value:{name:kw.value}},superTypes:[]},NegatedToken:{name:s3.$type,properties:{cardinality:{name:s3.cardinality},lookahead:{name:s3.lookahead},parenthesized:{name:s3.parenthesized,defaultValue:!1},terminal:{name:s3.terminal}},superTypes:[pl.$type]},Negation:{name:fH.$type,properties:{value:{name:fH.value}},superTypes:[k4.$type]},NumberLiteral:{name:mH.$type,properties:{value:{name:mH.value}},superTypes:[h3.$type]},Parameter:{name:Fw.$type,properties:{name:{name:Fw.name}},superTypes:[]},ParameterReference:{name:DH.$type,properties:{parameter:{name:DH.parameter,referenceType:Fw.$type}},superTypes:[k4.$type]},ParserRule:{name:DC.$type,properties:{dataType:{name:DC.dataType},definition:{name:DC.definition},entry:{name:DC.entry,defaultValue:!1},fragment:{name:DC.fragment,defaultValue:!1},inferredType:{name:DC.inferredType},name:{name:DC.name},parameters:{name:DC.parameters,defaultValue:[]},returnType:{name:DC.returnType,referenceType:cg.$type}},superTypes:[wF.$type]},ReferenceType:{name:xF.$type,properties:{isMulti:{name:xF.isMulti,defaultValue:!1},referenceType:{name:xF.referenceType}},superTypes:[d3.$type]},RegexToken:{name:l3.$type,properties:{cardinality:{name:l3.cardinality},lookahead:{name:l3.lookahead},parenthesized:{name:l3.parenthesized,defaultValue:!1},regex:{name:l3.regex}},superTypes:[pl.$type]},ReturnType:{name:yH.$type,properties:{name:{name:yH.name}},superTypes:[]},RuleCall:{name:g3.$type,properties:{arguments:{name:g3.arguments,defaultValue:[]},cardinality:{name:g3.cardinality},predicate:{name:g3.predicate},rule:{name:g3.rule,referenceType:ww.$type}},superTypes:[Ql.$type]},SimpleType:{name:xw.$type,properties:{primitiveType:{name:xw.primitiveType},stringType:{name:xw.stringType},typeRef:{name:xw.typeRef,referenceType:cg.$type}},superTypes:[d3.$type]},StringLiteral:{name:wH.$type,properties:{value:{name:wH.value}},superTypes:[h3.$type]},TerminalAlternatives:{name:c3.$type,properties:{cardinality:{name:c3.cardinality},elements:{name:c3.elements,defaultValue:[]},lookahead:{name:c3.lookahead},parenthesized:{name:c3.parenthesized,defaultValue:!1}},superTypes:[pl.$type]},TerminalElement:{name:pl.$type,properties:{cardinality:{name:pl.cardinality},lookahead:{name:pl.lookahead},parenthesized:{name:pl.parenthesized,defaultValue:!1}},superTypes:[Ql.$type]},TerminalGroup:{name:C3.$type,properties:{cardinality:{name:C3.cardinality},elements:{name:C3.elements,defaultValue:[]},lookahead:{name:C3.lookahead},parenthesized:{name:C3.parenthesized,defaultValue:!1}},superTypes:[pl.$type]},TerminalRule:{name:UI.$type,properties:{definition:{name:UI.definition},fragment:{name:UI.fragment,defaultValue:!1},hidden:{name:UI.hidden,defaultValue:!1},name:{name:UI.name},type:{name:UI.type}},superTypes:[ww.$type]},TerminalRuleCall:{name:B3.$type,properties:{cardinality:{name:B3.cardinality},lookahead:{name:B3.lookahead},parenthesized:{name:B3.parenthesized,defaultValue:!1},rule:{name:B3.rule,referenceType:UI.$type}},superTypes:[pl.$type]},Type:{name:SF.$type,properties:{name:{name:SF.name},type:{name:SF.type}},superTypes:[cg.$type]},TypeAttribute:{name:E3.$type,properties:{defaultValue:{name:E3.defaultValue},isOptional:{name:E3.isOptional,defaultValue:!1},name:{name:E3.name},type:{name:E3.type}},superTypes:[]},TypeDefinition:{name:d3.$type,properties:{},superTypes:[]},UnionType:{name:bH.$type,properties:{types:{name:bH.types,defaultValue:[]}},superTypes:[d3.$type]},UnorderedGroup:{name:LF.$type,properties:{cardinality:{name:LF.cardinality},elements:{name:LF.elements,defaultValue:[]}},superTypes:[Ql.$type]},UntilToken:{name:I3.$type,properties:{cardinality:{name:I3.cardinality},lookahead:{name:I3.lookahead},parenthesized:{name:I3.parenthesized,defaultValue:!1},terminal:{name:I3.terminal}},superTypes:[pl.$type]},ValueLiteral:{name:h3.$type,properties:{},superTypes:[]},Wildcard:{name:Sw.$type,properties:{cardinality:{name:Sw.cardinality},lookahead:{name:Sw.lookahead},parenthesized:{name:Sw.parenthesized,defaultValue:!1}},superTypes:[pl.$type]}}}},Ir=new osA;G(X_A,"getDatatypeNode");G(_w,"streamCst");G($_A,"flattenCst");G(ssA,"isChildNode");G(VF,"tokenToRange");G(Ww,"toDocumentSegment");(function(A){A[A.Before=0]="Before",A[A.After=1]="After",A[A.OverlapFront=2]="OverlapFront",A[A.OverlapBack=3]="OverlapBack",A[A.Inside=4]="Inside",A[A.Outside=5]="Outside"})(RE||(RE={}));G(lsA,"compareRange");G(gsA,"inRange");csA=/^[\w\p{L}]$/u;G(AWA,"findDeclarationNodeAtOffset");G(CsA,"findCommentNode");G(vH,"isCommentNode");G(KK,"findLeafNodeAtOffset");G(BsA,"findLeafNodeBeforeOffset");G(EsA,"binarySearch");G(dsA,"getPreviousNode");G(eWA,"getNextNode");G(tWA,"getStartlineNode");G(rWA,"getInteriorNodes");G(iWA,"getCommonParent");G(MoA,"getParentChain");IsA={};z4(IsA,{findAssignment:()=>xsA,findNameAssignment:()=>ZK,findNodeForKeyword:()=>FsA,findNodeForProperty:()=>WK,findNodesForKeyword:()=>gWA,findNodesForKeywordInternal:()=>zK,findNodesForProperty:()=>ksA,getActionAtElement:()=>LsA,getActionType:()=>NsA,getAllReachableRules:()=>_K,getAllRulesUsedForCrossReferences:()=>lWA,getCrossReferenceTerminal:()=>bsA,getEntryRule:()=>DsA,getExplicitRuleType:()=>hx,getHiddenRules:()=>ysA,getRuleType:()=>GsA,getRuleTypeName:()=>dWA,getTypeName:()=>x3,isArrayCardinality:()=>CWA,isArrayOperator:()=>BWA,isCommentTerminal:()=>vsA,isDataType:()=>EWA,isDataTypeRule:()=>Ix,isOptionalCardinality:()=>cWA,terminalRegex:()=>Qx});JK=class extends Error{static{G(this,"ErrorWithLocation")}constructor(A,e){super(A?`${e} at ${A.range.start.line}:${A.range.start.character}`:e)}};G(Z4,"assertUnreachable");G(hsA,"assertCondition");QsA={};z4(QsA,{NEWLINE_REGEXP:()=>aWA,escapeRegExp:()=>$w,getTerminalParts:()=>oWA,isMultilineComment:()=>psA,isWhitespace:()=>PK,partialMatches:()=>fsA,partialRegExp:()=>msA,whitespaceCharacters:()=>sWA});G(Lr,"cc");G(jY,"insertToSet");G(Dw,"addFlag");G(r3,"ASSERT_EXISTS");G(pF,"ASSERT_NEVER_REACH_HERE");G(ToA,"isCharacter");kH=[];for(let A=Lr("0");A<=Lr("9");A++)kH.push(A);FH=[Lr("_")].concat(kH);for(let A=Lr("a");A<=Lr("z");A++)FH.push(A);for(let A=Lr("A");A<=Lr("Z");A++)FH.push(A);YOA=[Lr(" "),Lr("\f"),Lr(`
`),Lr("\r"),Lr("\t"),Lr("\v"),Lr("\t"),Lr(" "),Lr(" "),Lr(" "),Lr(" "),Lr(" "),Lr(" "),Lr(" "),Lr(" "),Lr(" "),Lr(" "),Lr(" "),Lr(" "),Lr(" "),Lr("\u2028"),Lr("\u2029"),Lr(" "),Lr(" "),Lr(" "),Lr("\uFEFF")],eDt=/[0-9a-fA-F]/,bY=/[0-9]/,tDt=/[1-9]/,uWA=class{static{G(this,"RegExpParser")}constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(A){this.idx=A.idx,this.input=A.input,this.groupIdx=A.groupIdx}pattern(A){this.idx=0,this.input=A,this.groupIdx=0,this.consumeChar("/");let e=this.disjunction();this.consumeChar("/");let t={type:"Flags",loc:{begin:this.idx,end:A.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};while(this.isRegExpFlag())switch(this.popChar()){case"g":Dw(t,"global");break;case"i":Dw(t,"ignoreCase");break;case"m":Dw(t,"multiLine");break;case"u":Dw(t,"unicode");break;case"y":Dw(t,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:t,value:e,loc:this.loc(0)}}disjunction(){let A=[],e=this.idx;A.push(this.alternative());while(this.peekChar()==="|")this.consumeChar("|"),A.push(this.alternative());return{type:"Disjunction",value:A,loc:this.loc(e)}}alternative(){let A=[],e=this.idx;while(this.isTerm())A.push(this.term());return{type:"Alternative",value:A,loc:this.loc(e)}}term(){if(this.isAssertion())return this.assertion();else return this.atom()}assertion(){let A=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(A)};case"$":return{type:"EndAnchor",loc:this.loc(A)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(A)};case"B":return{type:"NonWordBoundary",loc:this.loc(A)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let e;switch(this.popChar()){case"=":e="Lookahead";break;case"!":e="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":e="Lookbehind";break;case"!":e="NegativeLookbehind"}break}}r3(e);let t=this.disjunction();return this.consumeChar(")"),{type:e,value:t,loc:this.loc(A)}}return pF()}quantifier(A=!1){let e=void 0,t=this.idx;switch(this.popChar()){case"*":e={atLeast:0,atMost:1/0};break;case"+":e={atLeast:1,atMost:1/0};break;case"?":e={atLeast:0,atMost:1};break;case"{":let r=this.integerIncludingZero();switch(this.popChar()){case"}":e={atLeast:r,atMost:r};break;case",":let i;if(this.isDigit())i=this.integerIncludingZero(),e={atLeast:r,atMost:i};else e={atLeast:r,atMost:1/0};this.consumeChar("}");break}if(A===!0&&e===void 0)return;r3(e);break}if(A===!0&&e===void 0)return;if(r3(e)){if(this.peekChar(0)==="?")this.consumeChar("?"),e.greedy=!1;else e.greedy=!0;return e.type="Quantifier",e.loc=this.loc(t),e}}atom(){let A,e=this.idx;switch(this.peekChar()){case".":A=this.dotAll();break;case"\\":A=this.atomEscape();break;case"[":A=this.characterClass();break;case"(":A=this.group();break}if(A===void 0&&this.isPatternCharacter())A=this.patternCharacter();if(r3(A)){if(A.loc=this.loc(e),this.isQuantifier())A.quantifier=this.quantifier();return A}return pF()}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[Lr(`
`),Lr("\r"),Lr("\u2028"),Lr("\u2029")]}}atomEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}decimalEscapeAtom(){return{type:"GroupBackReference",value:this.positiveInteger()}}characterClassEscape(){let A,e=!1;switch(this.popChar()){case"d":A=kH;break;case"D":A=kH,e=!0;break;case"s":A=YOA;break;case"S":A=YOA,e=!0;break;case"w":A=FH;break;case"W":A=FH,e=!0;break}if(r3(A))return{type:"Set",value:A,complement:e};return pF()}controlEscapeAtom(){let A;switch(this.popChar()){case"f":A=Lr("\f");break;case"n":A=Lr(`
`);break;case"r":A=Lr("\r");break;case"t":A=Lr("\t");break;case"v":A=Lr("\v");break}if(r3(A))return{type:"Character",value:A};return pF()}controlLetterEscapeAtom(){this.consumeChar("c");let A=this.popChar();if(/[a-zA-Z]/.test(A)===!1)throw Error("Invalid ");return{type:"Character",value:A.toUpperCase().charCodeAt(0)-64}}nulCharacterAtom(){return this.consumeChar("0"),{type:"Character",value:Lr("\x00")}}hexEscapeSequenceAtom(){return this.consumeChar("x"),this.parseHexDigits(2)}regExpUnicodeEscapeSequenceAtom(){return this.consumeChar("u"),this.parseHexDigits(4)}identityEscapeAtom(){let A=this.popChar();return{type:"Character",value:Lr(A)}}classPatternCharacterAtom(){switch(this.peekChar()){case`
`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:let A=this.popChar();return{type:"Character",value:Lr(A)}}}characterClass(){let A=[],e=!1;if(this.consumeChar("["),this.peekChar(0)==="^")this.consumeChar("^"),e=!0;while(this.isClassAtom()){let t=this.classAtom(),r=t.type==="Character";if(ToA(t)&&this.isRangeDash()){this.consumeChar("-");let i=this.classAtom(),u=i.type==="Character";if(ToA(i)){if(i.value<t.value)throw Error("Range out of order in character class");A.push({from:t.value,to:i.value})}else jY(t.value,A),A.push(Lr("-")),jY(i.value,A)}else jY(t.value,A)}return this.consumeChar("]"),{type:"Set",complement:e,value:A}}classAtom(){switch(this.peekChar()){case"]":case`
`:case"\r":case"\u2028":case"\u2029":throw Error("TBD");case"\\":return this.classEscape();default:return this.classPatternCharacterAtom()}}classEscape(){switch(this.consumeChar("\\"),this.peekChar()){case"b":return this.consumeChar("b"),{type:"Character",value:Lr("\b")};case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}}group(){let A=!0;switch(this.consumeChar("("),this.peekChar(0)){case"?":this.consumeChar("?"),this.consumeChar(":"),A=!1;break;default:this.groupIdx++;break}let e=this.disjunction();this.consumeChar(")");let t={type:"Group",capturing:A,value:e};if(A)t.idx=this.groupIdx;return t}positiveInteger(){let A=this.popChar();if(tDt.test(A)===!1)throw Error("Expecting a positive integer");while(bY.test(this.peekChar(0)))A+=this.popChar();return parseInt(A,10)}integerIncludingZero(){let A=this.popChar();if(bY.test(A)===!1)throw Error("Expecting an integer");while(bY.test(this.peekChar(0)))A+=this.popChar();return parseInt(A,10)}patternCharacter(){let A=this.popChar();switch(A){case`
`:case"\r":case"\u2028":case"\u2029":case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":throw Error("TBD");default:return{type:"Character",value:Lr(A)}}}isRegExpFlag(){switch(this.peekChar(0)){case"g":case"i":case"m":case"u":case"y":return!0;default:return!1}}isRangeDash(){return this.peekChar()==="-"&&this.isClassAtom(1)}isDigit(){return bY.test(this.peekChar(0))}isClassAtom(A=0){switch(this.peekChar(A)){case"]":case`
`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}isTerm(){return this.isAtom()||this.isAssertion()}isAtom(){if(this.isPatternCharacter())return!0;switch(this.peekChar(0)){case".":case"\\":case"[":case"(":return!0;default:return!1}}isAssertion(){switch(this.peekChar(0)){case"^":case"$":return!0;case"\\":switch(this.peekChar(1)){case"b":case"B":return!0;default:return!1}case"(":return this.peekChar(1)==="?"&&(this.peekChar(2)==="="||this.peekChar(2)==="!"||this.peekChar(2)==="<"&&(this.peekChar(3)==="="||this.peekChar(3)==="!"));default:return!1}}isQuantifier(){let A=this.saveState();try{return this.quantifier(!0)!==void 0}catch(e){return!1}finally{this.restoreState(A)}}isPatternCharacter(){switch(this.peekChar()){case"^":case"$":case"\\":case".":case"*":case"+":case"?":case"(":case")":case"[":case"|":case"/":case`
`:case"\r":case"\u2028":case"\u2029":return!1;default:return!0}}parseHexDigits(A){let e="";for(let r=0;r<A;r++){let i=this.popChar();if(eDt.test(i)===!1)throw Error("Expecting a HexDecimal digits");e+=i}return{type:"Character",value:parseInt(e,16)}}peekChar(A=0){return this.input[this.idx+A]}popChar(){let A=this.peekChar(0);return this.consumeChar(void 0),A}consumeChar(A){if(A!==void 0&&this.input[this.idx]!==A)throw Error("Expected: '"+A+"' but found: '"+this.input[this.idx]+"' at offset: "+this.idx);if(this.idx>=this.input.length)throw Error("Unexpected end of input");this.idx++}loc(A){return{begin:A,end:this.idx}}},OK=class{static{G(this,"BaseRegExpVisitor")}visitChildren(A){for(let e in A){let t=A[e];if(A.hasOwnProperty(e)){if(t.type!==void 0)this.visit(t);else if(Array.isArray(t))t.forEach((r)=>{this.visit(r)},this)}}}visit(A){switch(A.type){case"Pattern":this.visitPattern(A);break;case"Flags":this.visitFlags(A);break;case"Disjunction":this.visitDisjunction(A);break;case"Alternative":this.visitAlternative(A);break;case"StartAnchor":this.visitStartAnchor(A);break;case"EndAnchor":this.visitEndAnchor(A);break;case"WordBoundary":this.visitWordBoundary(A);break;case"NonWordBoundary":this.visitNonWordBoundary(A);break;case"Lookahead":this.visitLookahead(A);break;case"NegativeLookahead":this.visitNegativeLookahead(A);break;case"Lookbehind":this.visitLookbehind(A);break;case"NegativeLookbehind":this.visitNegativeLookbehind(A);break;case"Character":this.visitCharacter(A);break;case"Set":this.visitSet(A);break;case"Group":this.visitGroup(A);break;case"GroupBackReference":this.visitGroupBackReference(A);break;case"Quantifier":this.visitQuantifier(A);break}this.visitChildren(A)}visitPattern(A){}visitFlags(A){}visitDisjunction(A){}visitAlternative(A){}visitStartAnchor(A){}visitEndAnchor(A){}visitWordBoundary(A){}visitNonWordBoundary(A){}visitLookahead(A){}visitNegativeLookahead(A){}visitLookbehind(A){}visitNegativeLookbehind(A){}visitCharacter(A){}visitSet(A){}visitGroup(A){}visitGroupBackReference(A){}visitQuantifier(A){}},aWA=/\r?\n/gm,nWA=new uWA,rDt=class extends OK{static{G(this,"TerminalRegExpVisitor")}constructor(){super(...arguments);this.isStarting=!0,this.endRegexpStack=[],this.multiline=!1}get endRegex(){return this.endRegexpStack.join("")}reset(A){this.multiline=!1,this.regex=A,this.startRegexp="",this.isStarting=!0,this.endRegexpStack=[]}visitGroup(A){if(A.quantifier)this.isStarting=!1,this.endRegexpStack=[]}visitCharacter(A){let e=String.fromCharCode(A.value);if(!this.multiline&&e===`
`)this.multiline=!0;if(A.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let t=$w(e);if(this.endRegexpStack.push(t),this.isStarting)this.startRegexp+=t}}visitSet(A){if(!this.multiline){let e=this.regex.substring(A.loc.begin,A.loc.end),t=new RegExp(e);this.multiline=Boolean(`
`.match(t))}if(A.quantifier)this.isStarting=!1,this.endRegexpStack=[];else{let e=this.regex.substring(A.loc.begin,A.loc.end);if(this.endRegexpStack.push(e),this.isStarting)this.startRegexp+=e}}visitChildren(A){if(A.type==="Group"){if(A.quantifier)return}super.visitChildren(A)}},m3=new rDt;G(oWA,"getTerminalParts");G(psA,"isMultilineComment");sWA=`\f
\r \v              \u2028\u2029   \uFEFF`.split("");G(PK,"isWhitespace");G($w,"escapeRegExp");G(fsA,"partialMatches");G(msA,"partialRegExp");G(DsA,"getEntryRule");G(ysA,"getHiddenRules");G(_K,"getAllReachableRules");G(wsA,"ruleDfs");G(lWA,"getAllRulesUsedForCrossReferences");G(bsA,"getCrossReferenceTerminal");G(vsA,"isCommentTerminal");G(ksA,"findNodesForProperty");G(WK,"findNodeForProperty");G(qK,"findNodesForPropertyInternal");G(gWA,"findNodesForKeyword");G(FsA,"findNodeForKeyword");G(zK,"findNodesForKeywordInternal");G(xsA,"findAssignment");G(ZK,"findNameAssignment");G(SsA,"findNameAssignmentInternal");G(LsA,"getActionAtElement");G(cWA,"isOptionalCardinality");G(CWA,"isArrayCardinality");G(BWA,"isArrayOperator");G(Ix,"isDataTypeRule");G(RsA,"isDataTypeRuleInternal");G(EWA,"isDataType");G(xH,"isDataTypeInternal");G(hx,"getExplicitRuleType");G(x3,"getTypeName");G(NsA,"getActionType");G(dWA,"getRuleTypeName");G(GsA,"getRuleType");G(Qx,"terminalRegex");UsA=/[\s\S]/.source;G(H3,"abstractElementToRegex");G(IWA,"terminalAlternativesToRegex");G(hWA,"terminalGroupToRegex");G(QWA,"untilTokenToRegex");G(pWA,"negateTokenToRegex");G(fWA,"characterRangeToRegex");G(XY,"keywordToRegex");G(ME,"withCardinality");G(MsA,"createGrammarConfig");iDt=typeof global=="object"&&global&&global.Object===Object&&global,mWA=iDt,uDt=typeof self=="object"&&self&&self.Object===Object&&self,aDt=mWA||uDt||Function("return this")(),YE=aDt,nDt=YE.Symbol,Ec=nDt,DWA=Object.prototype,oDt=DWA.hasOwnProperty,sDt=DWA.toString,uF=Ec?Ec.toStringTag:void 0;G(yWA,"getRawTag");lDt=yWA,gDt=Object.prototype,cDt=gDt.toString;G(wWA,"objectToString");CDt=wWA,HOA=Ec?Ec.toStringTag:void 0;G(bWA,"baseGetTag");V4=bWA;G(vWA,"isObjectLike");LC=vWA;G(kWA,"isSymbol");VK=kWA;G(FWA,"arrayMap");px=FWA,IDt=Array.isArray,Ki=IDt,KOA=Ec?Ec.prototype:void 0,JOA=KOA?KOA.toString:void 0;G(TsA,"baseToString");QDt=TsA,pDt=/\s/;G(xWA,"trimmedEndIndex");fDt=xWA,mDt=/^\s+/;G(SWA,"baseTrim");DDt=SWA;G(LWA,"isObject");dc=LWA,yDt=/^[-+]0x[0-9a-f]+$/i,wDt=/^0b[01]+$/i,bDt=/^0o[0-7]+$/i,vDt=parseInt;G(RWA,"toNumber");kDt=RWA;G(NWA,"toFinite");xDt=NWA;G(GWA,"toInteger");fx=GWA;G(UWA,"identity");mx=UWA;G(MWA,"isFunction");eh=MWA,GDt=YE["__core-js_shared__"],EnA=GDt,_OA=function(){var A=/[^.]+$/.exec(EnA&&EnA.keys&&EnA.keys.IE_PROTO||"");return A?"Symbol(src)_1."+A:""}();G(TWA,"isMasked");UDt=TWA,MDt=Function.prototype,TDt=MDt.toString;G(YWA,"toSource");K3=YWA,YDt=/[\\^$.*+?()[\]{}|]/g,HDt=/^\[object .+?Constructor\]$/,KDt=Function.prototype,JDt=Object.prototype,ODt=KDt.toString,PDt=JDt.hasOwnProperty,_Dt=RegExp("^"+ODt.call(PDt).replace(YDt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");G(HWA,"baseIsNative");WDt=HWA;G(KWA,"getValue");qDt=KWA;G(JWA,"getNative");J3=JWA,zDt=J3(YE,"WeakMap"),YoA=zDt,WOA=Object.create,ZDt=function(){function A(){}return G(A,"object"),function(e){if(!dc(e))return{};if(WOA)return WOA(e);A.prototype=e;var t=new A;return A.prototype=void 0,t}}(),VDt=ZDt;G(OWA,"apply");jDt=OWA;G(PWA,"noop");Ho=PWA;G(_WA,"copyArray");XDt=_WA,eyt=Date.now;G(WWA,"shortOut");tyt=WWA;G(qWA,"constant");ryt=qWA,iyt=function(){try{var A=J3(Object,"defineProperty");return A({},"",{}),A}catch(e){}}(),SH=iyt,uyt=!SH?mx:function(A,e){return SH(A,"toString",{configurable:!0,enumerable:!1,value:ryt(e),writable:!0})},ayt=uyt,nyt=tyt(ayt),oyt=nyt;G(zWA,"arrayEach");ZWA=zWA;G(VWA,"baseFindIndex");jWA=VWA;G(XWA,"baseIsNaN");syt=XWA;G($WA,"strictIndexOf");lyt=$WA;G(AqA,"baseIndexOf");YsA=AqA;G(eqA,"arrayIncludes");tqA=eqA,cyt=/^(?:0|[1-9]\d*)$/;G(rqA,"isIndex");jK=rqA;G(iqA,"baseAssignValue");HsA=iqA;G(uqA,"eq");Dx=uqA,Cyt=Object.prototype,Byt=Cyt.hasOwnProperty;G(aqA,"assignValue");XK=aqA;G(nqA,"copyObject");yx=nqA,qOA=Math.max;G(oqA,"overRest");Eyt=oqA;G(sqA,"baseRest");KsA=sqA;G(lqA,"isLength");JsA=lqA;G(gqA,"isArrayLike");HE=gqA;G(cqA,"isIterateeCall");$K=cqA;G(CqA,"createAssigner");Iyt=CqA,hyt=Object.prototype;G(BqA,"isPrototype");wx=BqA;G(EqA,"baseTimes");Qyt=EqA;G(dqA,"baseIsArguments");zOA=dqA,IqA=Object.prototype,fyt=IqA.hasOwnProperty,myt=IqA.propertyIsEnumerable,Dyt=zOA(function(){return arguments}())?zOA:function(A){return LC(A)&&fyt.call(A,"callee")&&!myt.call(A,"callee")},AJ=Dyt;G(hqA,"stubFalse");yyt=hqA,QqA=typeof J0=="object"&&J0&&!J0.nodeType&&J0,ZOA=QqA&&typeof Hn=="object"&&Hn&&!Hn.nodeType&&Hn,wyt=ZOA&&ZOA.exports===QqA,VOA=wyt?YE.Buffer:void 0,byt=VOA?VOA.isBuffer:void 0,vyt=byt||yyt,jF=vyt,ta={};ta[Oyt]=ta[Pyt]=ta[_yt]=ta[Wyt]=ta[qyt]=ta[zyt]=ta[Zyt]=ta[Vyt]=ta[jyt]=!0;ta[kyt]=ta[Fyt]=ta[Kyt]=ta[xyt]=ta[Jyt]=ta[Syt]=ta[Lyt]=ta[Ryt]=ta[Nyt]=ta[Gyt]=ta[Uyt]=ta[Myt]=ta[Tyt]=ta[Yyt]=ta[Hyt]=!1;G(pqA,"baseIsTypedArray");Xyt=pqA;G(fqA,"baseUnary");bx=fqA,mqA=typeof J0=="object"&&J0&&!J0.nodeType&&J0,RF=mqA&&typeof Hn=="object"&&Hn&&!Hn.nodeType&&Hn,$yt=RF&&RF.exports===mqA,dnA=$yt&&mWA.process,Awt=function(){try{var A=RF&&RF.require&&RF.require("util").types;if(A)return A;return dnA&&dnA.binding&&dnA.binding("util")}catch(e){}}(),P4=Awt,jOA=P4&&P4.isTypedArray,ewt=jOA?bx(jOA):Xyt,OsA=ewt,twt=Object.prototype,rwt=twt.hasOwnProperty;G(DqA,"arrayLikeKeys");yqA=DqA;G(wqA,"overArg");bqA=wqA,iwt=bqA(Object.keys,Object),uwt=iwt,awt=Object.prototype,nwt=awt.hasOwnProperty;G(vqA,"baseKeys");kqA=vqA;G(FqA,"keys");Bg=FqA,owt=Object.prototype,swt=owt.hasOwnProperty,lwt=Iyt(function(A,e){if(wx(e)||HE(e)){yx(e,Bg(e),A);return}for(var t in e)if(swt.call(e,t))XK(A,t,e[t])}),Eg=lwt;G(xqA,"nativeKeysIn");gwt=xqA,cwt=Object.prototype,Cwt=cwt.hasOwnProperty;G(SqA,"baseKeysIn");Bwt=SqA;G(LqA,"keysIn");eJ=LqA,Ewt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,dwt=/^\w*$/;G(RqA,"isKey");PsA=RqA,Iwt=J3(Object,"create"),XF=Iwt;G(NqA,"hashClear");hwt=NqA;G(GqA,"hashDelete");Qwt=GqA,fwt=Object.prototype,mwt=fwt.hasOwnProperty;G(UqA,"hashGet");Dwt=UqA,ywt=Object.prototype,wwt=ywt.hasOwnProperty;G(MqA,"hashHas");bwt=MqA;G(TqA,"hashSet");kwt=TqA;G(O3,"Hash");O3.prototype.clear=hwt;O3.prototype.delete=Qwt;O3.prototype.get=Dwt;O3.prototype.has=bwt;O3.prototype.set=kwt;XOA=O3;G(YqA,"listCacheClear");Fwt=YqA;G(HqA,"assocIndexOf");tJ=HqA,xwt=Array.prototype,Swt=xwt.splice;G(KqA,"listCacheDelete");Lwt=KqA;G(JqA,"listCacheGet");Rwt=JqA;G(OqA,"listCacheHas");Nwt=OqA;G(PqA,"listCacheSet");Gwt=PqA;G(P3,"ListCache");P3.prototype.clear=Fwt;P3.prototype.delete=Lwt;P3.prototype.get=Rwt;P3.prototype.has=Nwt;P3.prototype.set=Gwt;rJ=P3,Uwt=J3(YE,"Map"),$F=Uwt;G(_qA,"mapCacheClear");Mwt=_qA;G(WqA,"isKeyable");Twt=WqA;G(qqA,"getMapData");iJ=qqA;G(zqA,"mapCacheDelete");Ywt=zqA;G(ZqA,"mapCacheGet");Hwt=ZqA;G(VqA,"mapCacheHas");Kwt=VqA;G(jqA,"mapCacheSet");Jwt=jqA;G(_3,"MapCache");_3.prototype.clear=Mwt;_3.prototype.delete=Ywt;_3.prototype.get=Hwt;_3.prototype.has=Kwt;_3.prototype.set=Jwt;uJ=_3;G(aJ,"memoize");aJ.Cache=uJ;Pwt=aJ;G(XqA,"memoizeCapped");Wwt=XqA,qwt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,zwt=/\\(\\)?/g,Zwt=Wwt(function(A){var e=[];if(A.charCodeAt(0)===46)e.push("");return A.replace(qwt,function(t,r,i,u){e.push(i?u.replace(zwt,"$1"):r||t)}),e}),Vwt=Zwt;G($qA,"toString");jwt=$qA;G(AzA,"castPath");nJ=AzA;G(ezA,"toKey");vx=ezA;G(tzA,"baseGet");_sA=tzA;G(rzA,"get");$wt=rzA;G(izA,"arrayPush");WsA=izA,$OA=Ec?Ec.isConcatSpreadable:void 0;G(uzA,"isFlattenable");A6t=uzA;G(qsA,"baseFlatten");zsA=qsA;G(azA,"flatten");xC=azA,e6t=bqA(Object.getPrototypeOf,Object),nzA=e6t;G(ozA,"baseSlice");szA=ozA;G(lzA,"arrayReduce");t6t=lzA;G(gzA,"stackClear");r6t=gzA;G(czA,"stackDelete");i6t=czA;G(CzA,"stackGet");u6t=CzA;G(BzA,"stackHas");a6t=BzA;G(EzA,"stackSet");o6t=EzA;G(W3,"Stack");W3.prototype.clear=r6t;W3.prototype.delete=i6t;W3.prototype.get=u6t;W3.prototype.has=a6t;W3.prototype.set=o6t;NF=W3;G(dzA,"baseAssign");s6t=dzA;G(IzA,"baseAssignIn");l6t=IzA,hzA=typeof J0=="object"&&J0&&!J0.nodeType&&J0,APA=hzA&&typeof Hn=="object"&&Hn&&!Hn.nodeType&&Hn,g6t=APA&&APA.exports===hzA,ePA=g6t?YE.Buffer:void 0,tPA=ePA?ePA.allocUnsafe:void 0;G(QzA,"cloneBuffer");c6t=QzA;G(pzA,"arrayFilter");ZsA=pzA;G(fzA,"stubArray");mzA=fzA,C6t=Object.prototype,B6t=C6t.propertyIsEnumerable,rPA=Object.getOwnPropertySymbols,E6t=!rPA?mzA:function(A){if(A==null)return[];return A=Object(A),ZsA(rPA(A),function(e){return B6t.call(A,e)})},VsA=E6t;G(DzA,"copySymbols");d6t=DzA,I6t=Object.getOwnPropertySymbols,h6t=!I6t?mzA:function(A){var e=[];while(A)WsA(e,VsA(A)),A=nzA(A);return e},yzA=h6t;G(wzA,"copySymbolsIn");Q6t=wzA;G(bzA,"baseGetAllKeys");vzA=bzA;G(kzA,"getAllKeys");HoA=kzA;G(FzA,"getAllKeysIn");xzA=FzA,p6t=J3(YE,"DataView"),KoA=p6t,f6t=J3(YE,"Promise"),JoA=f6t,m6t=J3(YE,"Set"),Nw=m6t,y6t=K3(KoA),w6t=K3($F),b6t=K3(JoA),v6t=K3(Nw),k6t=K3(YoA),i3=V4;if(KoA&&i3(new KoA(new ArrayBuffer(1)))!=oPA||$F&&i3(new $F)!=iPA||JoA&&i3(JoA.resolve())!=uPA||Nw&&i3(new Nw)!=aPA||YoA&&i3(new YoA)!=nPA)i3=G(function(A){var e=V4(A),t=e==D6t?A.constructor:void 0,r=t?K3(t):"";if(r)switch(r){case y6t:return oPA;case w6t:return iPA;case b6t:return uPA;case v6t:return aPA;case k6t:return nPA}return e},"getTag");qw=i3,F6t=Object.prototype,x6t=F6t.hasOwnProperty;G(SzA,"initCloneArray");S6t=SzA,L6t=YE.Uint8Array,LH=L6t;G(LzA,"cloneArrayBuffer");jsA=LzA;G(RzA,"cloneDataView");R6t=RzA,N6t=/\w*$/;G(NzA,"cloneRegExp");G6t=NzA,sPA=Ec?Ec.prototype:void 0,lPA=sPA?sPA.valueOf:void 0;G(GzA,"cloneSymbol");U6t=GzA;G(UzA,"cloneTypedArray");M6t=UzA;G(MzA,"initCloneByTag");r9t=MzA;G(TzA,"initCloneObject");i9t=TzA;G(YzA,"baseIsMap");a9t=YzA,gPA=P4&&P4.isMap,n9t=gPA?bx(gPA):a9t,o9t=n9t;G(HzA,"baseIsSet");l9t=HzA,cPA=P4&&P4.isSet,g9t=cPA?bx(cPA):l9t,c9t=g9t,_u={};_u[KzA]=_u[d9t]=_u[k9t]=_u[F9t]=_u[I9t]=_u[h9t]=_u[x9t]=_u[S9t]=_u[L9t]=_u[R9t]=_u[N9t]=_u[f9t]=_u[m9t]=_u[OzA]=_u[D9t]=_u[y9t]=_u[w9t]=_u[b9t]=_u[G9t]=_u[U9t]=_u[M9t]=_u[T9t]=!0;_u[Q9t]=_u[JzA]=_u[v9t]=!1;G(GF,"baseClone");Y9t=GF;G(PzA,"clone");E0=PzA;G(_zA,"compact");kx=_zA;G(WzA,"setCacheAdd");J9t=WzA;G(qzA,"setCacheHas");O9t=qzA;G(Ax,"SetCache");Ax.prototype.add=Ax.prototype.push=J9t;Ax.prototype.has=O9t;XsA=Ax;G(zzA,"arraySome");ZzA=zzA;G(VzA,"cacheHas");$sA=VzA;G(jzA,"equalArrays");XzA=jzA;G($zA,"mapToArray");W9t=$zA;G(AZA,"setToArray");AlA=AZA,CPA=Ec?Ec.prototype:void 0,InA=CPA?CPA.valueOf:void 0;G(eZA,"equalByTag");a5t=eZA,o5t=Object.prototype,s5t=o5t.hasOwnProperty;G(tZA,"equalObjects");l5t=tZA,c5t=Object.prototype,dPA=c5t.hasOwnProperty;G(rZA,"baseIsEqualDeep");C5t=rZA;G(elA,"baseIsEqual");iZA=elA;G(uZA,"baseIsMatch");d5t=uZA;G(aZA,"isStrictComparable");nZA=aZA;G(oZA,"getMatchData");I5t=oZA;G(sZA,"matchesStrictComparable");lZA=sZA;G(gZA,"baseMatches");h5t=gZA;G(cZA,"baseHasIn");Q5t=cZA;G(CZA,"hasPath");BZA=CZA;G(EZA,"hasIn");p5t=EZA;G(dZA,"baseMatchesProperty");D5t=dZA;G(IZA,"baseProperty");y5t=IZA;G(hZA,"basePropertyDeep");w5t=hZA;G(QZA,"property");b5t=QZA;G(pZA,"baseIteratee");KE=pZA;G(fZA,"arrayAggregator");v5t=fZA;G(mZA,"createBaseFor");k5t=mZA,F5t=k5t(),x5t=F5t;G(DZA,"baseForOwn");S5t=DZA;G(yZA,"createBaseEach");L5t=yZA,R5t=L5t(S5t),q3=R5t;G(wZA,"baseAggregator");N5t=wZA;G(bZA,"createAggregator");G5t=bZA,vZA=Object.prototype,U5t=vZA.hasOwnProperty,M5t=KsA(function(A,e){A=Object(A);var t=-1,r=e.length,i=r>2?e[2]:void 0;if(i&&$K(e[0],e[1],i))r=1;while(++t<r){var u=e[t],a=eJ(u),n=-1,o=a.length;while(++n<o){var s=a[n],l=A[s];if(l===void 0||Dx(l,vZA[s])&&!U5t.call(A,s))A[s]=u[s]}}return A}),tlA=M5t;G(kZA,"isArrayLikeObject");IPA=kZA;G(FZA,"arrayIncludesWith");xZA=FZA;G(SZA,"baseDifference");Y5t=SZA,H5t=KsA(function(A,e){return IPA(A)?Y5t(A,zsA(e,1,IPA,!0)):[]}),oJ=H5t;G(LZA,"last");S3=LZA;G(RZA,"drop");C0=RZA;G(NZA,"dropRight");ex=NZA;G(GZA,"castFunction");K5t=GZA;G(UZA,"forEach");Rr=UZA;G(MZA,"arrayEvery");J5t=MZA;G(TZA,"baseEvery");O5t=TZA;G(YZA,"every");SC=YZA;G(HZA,"baseFilter");KZA=HZA;G(JZA,"filter");hc=JZA;G(OZA,"createFind");P5t=OZA,_5t=Math.max;G(PZA,"findIndex");W5t=PZA,q5t=P5t(W5t),zw=q5t;G(_ZA,"head");RC=_ZA;G(WZA,"baseMap");z5t=WZA;G(qZA,"map");er=qZA;G(zZA,"flatMap");Bc=zZA,Z5t=Object.prototype,V5t=Z5t.hasOwnProperty,j5t=G5t(function(A,e,t){if(V5t.call(A,t))A[t].push(e);else HsA(A,t,[e])}),X5t=j5t,$5t=Object.prototype,Abt=$5t.hasOwnProperty;G(ZZA,"baseHas");ebt=ZZA;G(VZA,"has");pr=VZA;G(jZA,"isString");fl=jZA;G(XZA,"baseValues");rbt=XZA;G($ZA,"values");go=$ZA,ibt=Math.max;G(AVA,"includes");Ss=AVA,ubt=Math.max;G(eVA,"indexOf");hPA=eVA,obt=Object.prototype,sbt=obt.hasOwnProperty;G(tVA,"isEmpty");qu=tVA;G(rVA,"baseIsRegExp");gbt=rVA,QPA=P4&&P4.isRegExp,cbt=QPA?bx(QPA):gbt,zI=cbt;G(iVA,"isUndefined");ZI=iVA;G(uVA,"negate");Bbt=uVA;G(aVA,"baseSet");Ebt=aVA;G(nVA,"basePickBy");dbt=nVA;G(oVA,"pickBy");NC=oVA;G(sVA,"baseReduce");Ibt=sVA;G(lVA,"reduce");dg=lVA;G(gVA,"reject");sJ=gVA;G(cVA,"baseSome");hbt=cVA;G(CVA,"some");BVA=CVA,pbt=!(Nw&&1/AlA(new Nw([,-0]))[1]==Qbt)?Ho:function(A){return new Nw(A)},fbt=pbt;G(EVA,"baseUniq");Dbt=EVA;G(dVA,"uniq");rlA=dVA;G(RH,"PRINT_ERROR");G(ilA,"PRINT_WARNING");G(ulA,"timer");G(alA,"toFastProperties");G(IVA,"tokenLabel");G(hVA,"hasTokenLabel");JE=class{static{G(this,"AbstractProduction")}get definition(){return this._definition}set definition(A){this._definition=A}constructor(A){this._definition=A}accept(A){A.visit(this),Rr(this.definition,(e)=>{e.accept(A)})}},ks=class extends JE{static{G(this,"NonTerminal")}constructor(A){super([]);this.idx=1,Eg(this,NC(A,(e)=>e!==void 0))}set definition(A){}get definition(){if(this.referencedRule!==void 0)return this.referencedRule.definition;return[]}accept(A){A.visit(this)}},A6=class extends JE{static{G(this,"Rule")}constructor(A){super(A.definition);this.orgText="",Eg(this,NC(A,(e)=>e!==void 0))}},ml=class extends JE{static{G(this,"Alternative")}constructor(A){super(A.definition);this.ignoreAmbiguities=!1,Eg(this,NC(A,(e)=>e!==void 0))}},B0=class extends JE{static{G(this,"Option")}constructor(A){super(A.definition);this.idx=1,Eg(this,NC(A,(e)=>e!==void 0))}},Ig=class extends JE{static{G(this,"RepetitionMandatory")}constructor(A){super(A.definition);this.idx=1,Eg(this,NC(A,(e)=>e!==void 0))}},hg=class extends JE{static{G(this,"RepetitionMandatoryWithSeparator")}constructor(A){super(A.definition);this.idx=1,Eg(this,NC(A,(e)=>e!==void 0))}},Va=class extends JE{static{G(this,"Repetition")}constructor(A){super(A.definition);this.idx=1,Eg(this,NC(A,(e)=>e!==void 0))}},Dl=class extends JE{static{G(this,"RepetitionWithSeparator")}constructor(A){super(A.definition);this.idx=1,Eg(this,NC(A,(e)=>e!==void 0))}},yl=class extends JE{static{G(this,"Alternation")}get definition(){return this._definition}set definition(A){this._definition=A}constructor(A){super(A.definition);this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,Eg(this,NC(A,(e)=>e!==void 0))}},ia=class{static{G(this,"Terminal")}constructor(A){this.idx=1,Eg(this,NC(A,(e)=>e!==void 0))}accept(A){A.visit(this)}};G(QVA,"serializeGrammar");G(UF,"serializeProduction");e6=class{static{G(this,"GAstVisitor")}visit(A){let e=A;switch(e.constructor){case ks:return this.visitNonTerminal(e);case ml:return this.visitAlternative(e);case B0:return this.visitOption(e);case Ig:return this.visitRepetitionMandatory(e);case hg:return this.visitRepetitionMandatoryWithSeparator(e);case Dl:return this.visitRepetitionWithSeparator(e);case Va:return this.visitRepetition(e);case yl:return this.visitAlternation(e);case ia:return this.visitTerminal(e);case A6:return this.visitRule(e);default:throw Error("non exhaustive match")}}visitNonTerminal(A){}visitAlternative(A){}visitOption(A){}visitRepetition(A){}visitRepetitionMandatory(A){}visitRepetitionMandatoryWithSeparator(A){}visitRepetitionWithSeparator(A){}visitAlternation(A){}visitTerminal(A){}visitRule(A){}};G(pVA,"isSequenceProd");G(tx,"isOptionalProd");G(fVA,"isBranchingProd");G(bC,"getProductionDslName");lJ=class{static{G(this,"RestWalker")}walk(A,e=[]){Rr(A.definition,(t,r)=>{let i=C0(A.definition,r+1);if(t instanceof ks)this.walkProdRef(t,i,e);else if(t instanceof ia)this.walkTerminal(t,i,e);else if(t instanceof ml)this.walkFlat(t,i,e);else if(t instanceof B0)this.walkOption(t,i,e);else if(t instanceof Ig)this.walkAtLeastOne(t,i,e);else if(t instanceof hg)this.walkAtLeastOneSep(t,i,e);else if(t instanceof Dl)this.walkManySep(t,i,e);else if(t instanceof Va)this.walkMany(t,i,e);else if(t instanceof yl)this.walkOr(t,i,e);else throw Error("non exhaustive match")})}walkTerminal(A,e,t){}walkProdRef(A,e,t){}walkFlat(A,e,t){let r=e.concat(t);this.walk(A,r)}walkOption(A,e,t){let r=e.concat(t);this.walk(A,r)}walkAtLeastOne(A,e,t){let r=[new B0({definition:A.definition})].concat(e,t);this.walk(A,r)}walkAtLeastOneSep(A,e,t){let r=OoA(A,e,t);this.walk(A,r)}walkMany(A,e,t){let r=[new B0({definition:A.definition})].concat(e,t);this.walk(A,r)}walkManySep(A,e,t){let r=OoA(A,e,t);this.walk(A,r)}walkOr(A,e,t){let r=e.concat(t);Rr(A.definition,(i)=>{let u=new ml({definition:[i]});this.walk(u,r)})}};G(OoA,"restForRepetitionWithSeparator");G(t6,"first");G(mVA,"firstForSequence");G(DVA,"firstForBranching");G(yVA,"firstForTerminal");ybt=class extends lJ{static{G(this,"ResyncFollowsWalker")}constructor(A){super();this.topProd=A,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(A,e,t){}walkProdRef(A,e,t){let r=vVA(A.referencedRule,A.idx)+this.topProd.name,i=e.concat(t),u=new ml({definition:i}),a=t6(u);this.follows[r]=a}};G(bVA,"computeAllProdsFollows");G(vVA,"buildBetweenProdsFollowPrefix");$Y={},wbt=new uWA;G(Fx,"getRegExpAst");G(kVA,"clearRegExpParserCache");G(xVA,"getOptimizedStartCodesIndices");G(GH,"firstCharOptimizedIndices");G(fF,"addOptimizedIdxToResult");G(SVA,"handleIgnoreCase");G(PoA,"findCode");G(UH,"isWholeOptional");bbt=class extends OK{static{G(this,"CharCodeFinder")}constructor(A){super();this.targetCharCodes=A,this.found=!1}visitChildren(A){if(this.found===!0)return;switch(A.type){case"Lookahead":this.visitLookahead(A);return;case"NegativeLookahead":this.visitNegativeLookahead(A);return;case"Lookbehind":this.visitLookbehind(A);return;case"NegativeLookbehind":this.visitNegativeLookbehind(A);return}super.visitChildren(A)}visitCharacter(A){if(Ss(this.targetCharCodes,A.value))this.found=!0}visitSet(A){if(A.complement){if(PoA(A,this.targetCharCodes)===void 0)this.found=!0}else if(PoA(A,this.targetCharCodes)!==void 0)this.found=!0}};G(gJ,"canMatchCharCode");G(LVA,"analyzeTokenTypes");G(RVA,"validatePatterns");G(NVA,"validateRegExpPattern");G(GVA,"findMissingPatterns");G(UVA,"findInvalidPatterns");vbt=/[^\\][$]/;G(MVA,"findEndOfInputAnchor");G(TVA,"findEmptyMatchRegExps");kbt=/[^\\[][\^]|^\^/;G(YVA,"findStartOfInputAnchor");G(HVA,"findUnsupportedFlags");G(KVA,"findDuplicatePatterns");G(JVA,"findInvalidGroupType");G(OVA,"findModesThatDoNotExist");G(PVA,"findUnreachablePatterns");G(_VA,"tryToMatchStrToPattern");G(WVA,"noMetaChar");G(qVA,"usesLookAheadOrBehind");G(_oA,"addStickyFlag");G(zVA,"performRuntimeChecks");G(ZVA,"performWarningRuntimeChecks");G(VVA,"cloneEmptyGroups");G(nlA,"isCustomPattern");G(jVA,"isShortPattern");Fbt={test:G(function(A){let e=A.length;for(let t=this.lastIndex;t<e;t++){let r=A.charCodeAt(t);if(r===10)return this.lastIndex=t+1,!0;else if(r===13){if(A.charCodeAt(t+1)===10)this.lastIndex=t+2;else this.lastIndex=t+1;return!0}}return!1},"test"),lastIndex:0};G(olA,"checkLineBreaksIssues");G(XVA,"buildLineBreakIssueMessage");G(slA,"getCharCodes");G(AH,"addToMapOfArrays");eH=[];G(VI,"charCodeToOptimizedIndex");G($VA,"initCharCodeToOptimizedIndexMap");G(r6,"tokenStructuredMatcher");G(rx,"tokenStructuredMatcherNoCategories");AjA={};G(i6,"augmentTokenTypes");G(ejA,"expandCategories");G(tjA,"assignTokenDefaultProps");G(rjA,"assignCategoriesTokensProp");G(ijA,"assignCategoriesMapProp");G(llA,"singleAssignCategoriesToksMap");G(glA,"hasShortKeyProperty");G(WoA,"hasCategoriesProperty");G(ujA,"hasExtendingTokensTypesProperty");G(ajA,"hasExtendingTokensTypesMapProperty");G(njA,"isTokenType");qoA={buildUnableToPopLexerModeMessage(A){return`Unable to pop Lexer Mode after encountering Token ->${A.image}<- The Mode Stack is empty`},buildUnexpectedCharactersMessage(A,e,t,r,i,u){return`unexpected character: ->${A.charAt(e)}<- at offset: ${e}, skipped ${t} characters.`}};(function(A){A[A.MISSING_PATTERN=0]="MISSING_PATTERN",A[A.INVALID_PATTERN=1]="INVALID_PATTERN",A[A.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",A[A.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",A[A.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",A[A.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",A[A.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",A[A.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",A[A.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",A[A.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",A[A.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",A[A.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",A[A.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",A[A.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",A[A.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",A[A.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",A[A.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK",A[A.MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE=17]="MULTI_MODE_LEXER_LONGER_ALT_NOT_IN_CURRENT_MODE"})(ja||(ja={}));yF={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[`
`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:qoA,traceInitPerf:!1,skipValidations:!1,recoveryEnabled:!0};Object.freeze(yF);bs=class{static{G(this,"Lexer")}constructor(A,e=yF){if(this.lexerDefinition=A,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},this.TRACE_INIT=(r,i)=>{if(this.traceInitPerf===!0){this.traceInitIndent++;let u=Array(this.traceInitIndent+1).join("\t");if(this.traceInitIndent<this.traceInitMaxIdent)console.log(`${u}--> <${r}>`);let{time:a,value:n}=ulA(i),o=a>10?console.warn:console.log;if(this.traceInitIndent<this.traceInitMaxIdent)o(`${u}<-- <${r}> time: ${a}ms`);return this.traceInitIndent--,n}else return i()},typeof e==="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object.
a boolean 2nd argument is no longer supported`);this.config=Eg({},yF,e);let t=this.config.traceInitPerf;if(t===!0)this.traceInitMaxIdent=1/0,this.traceInitPerf=!0;else if(typeof t==="number")this.traceInitMaxIdent=t,this.traceInitPerf=!0;this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",()=>{let r,i=!0;if(this.TRACE_INIT("Lexer Config handling",()=>{if(this.config.lineTerminatorsPattern===yF.lineTerminatorsPattern)this.config.lineTerminatorsPattern=Fbt;else if(this.config.lineTerminatorCharacters===yF.lineTerminatorCharacters)throw Error(`Error: Missing <lineTerminatorCharacters> property on the Lexer config.
For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(e.safeMode&&e.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');if(this.trackStartLines=/full|onlyStart/i.test(this.config.positionTracking),this.trackEndLines=/full/i.test(this.config.positionTracking),Ki(A))r={modes:{defaultMode:E0(A)},defaultMode:mF};else i=!1,r=E0(A)}),this.config.skipValidations===!1)this.TRACE_INIT("performRuntimeChecks",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(zVA(r,this.trackStartLines,this.config.lineTerminatorCharacters))}),this.TRACE_INIT("performWarningRuntimeChecks",()=>{this.lexerDefinitionWarning=this.lexerDefinitionWarning.concat(ZVA(r,this.trackStartLines,this.config.lineTerminatorCharacters))});r.modes=r.modes?r.modes:{},Rr(r.modes,(a,n)=>{r.modes[n]=sJ(a,(o)=>ZI(o))});let u=Bg(r.modes);if(Rr(r.modes,(a,n)=>{this.TRACE_INIT(`Mode: <${n}> processing`,()=>{if(this.modes.push(n),this.config.skipValidations===!1)this.TRACE_INIT("validatePatterns",()=>{this.lexerDefinitionErrors=this.lexerDefinitionErrors.concat(RVA(a,u))});if(qu(this.lexerDefinitionErrors)){i6(a);let o;this.TRACE_INIT("analyzeTokenTypes",()=>{o=LVA(a,{lineTerminatorCharacters:this.config.lineTerminatorCharacters,positionTracking:e.positionTracking,ensureOptimizations:e.ensureOptimizations,safeMode:e.safeMode,tracer:this.TRACE_INIT})}),this.patternIdxToConfig[n]=o.patternIdxToConfig,this.charCodeToPatternIdxToConfig[n]=o.charCodeToPatternIdxToConfig,this.emptyGroups=Eg({},this.emptyGroups,o.emptyGroups),this.hasCustom=o.hasCustom||this.hasCustom,this.canModeBeOptimized[n]=o.canBeOptimized}})}),this.defaultMode=r.defaultMode,!qu(this.lexerDefinitionErrors)&&!this.config.deferDefinitionErrorsHandling){let n=er(this.lexerDefinitionErrors,(o)=>o.message).join(`-----------------------
`);throw Error(`Errors detected in definition of Lexer:
`+n)}Rr(this.lexerDefinitionWarning,(a)=>{ilA(a.message)}),this.TRACE_INIT("Choosing sub-methods implementations",()=>{if(i)this.handleModes=Ho;if(this.trackStartLines===!1)this.computeNewColumn=mx;if(this.trackEndLines===!1)this.updateTokenEndLineColumnLocation=Ho;if(/full/i.test(this.config.positionTracking))this.createTokenInstance=this.createFullToken;else if(/onlyStart/i.test(this.config.positionTracking))this.createTokenInstance=this.createStartOnlyToken;else if(/onlyOffset/i.test(this.config.positionTracking))this.createTokenInstance=this.createOffsetOnlyToken;else throw Error(`Invalid <positionTracking> config option: "${this.config.positionTracking}"`);if(this.hasCustom)this.addToken=this.addTokenUsingPush,this.handlePayload=this.handlePayloadWithCustom;else this.addToken=this.addTokenUsingMemberAccess,this.handlePayload=this.handlePayloadNoCustom}),this.TRACE_INIT("Failed Optimization Warnings",()=>{let a=dg(this.canModeBeOptimized,(n,o,s)=>{if(o===!1)n.push(s);return n},[]);if(e.ensureOptimizations&&!qu(a))throw Error(`Lexer Modes: < ${a.join(", ")} > cannot be optimized.
Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode.
Or inspect the console log for details on how to resolve these issues.`)}),this.TRACE_INIT("clearRegExpParserCache",()=>{kVA()}),this.TRACE_INIT("toFastProperties",()=>{alA(this)})})}tokenize(A,e=this.defaultMode){if(!qu(this.lexerDefinitionErrors)){let r=er(this.lexerDefinitionErrors,(i)=>i.message).join(`-----------------------
`);throw Error(`Unable to Tokenize because Errors detected in definition of Lexer:
`+r)}return this.tokenizeInternal(A,e)}tokenizeInternal(A,e){let t,r,i,u,a,n,o,s,l,g,C,B,E,d,I,h=A,Q=h.length,p=0,m=0,f=this.hasCustom?0:Math.floor(A.length/10),D=Array(f),w=[],b=this.trackStartLines?1:void 0,k=this.trackStartLines?1:void 0,v=VVA(this.emptyGroups),S=this.trackStartLines,x=this.config.lineTerminatorsPattern,F=0,T=[],R=[],L=[],M=[];Object.freeze(M);let U=!1,Y=G((O)=>{if(L.length===1&&O.tokenType.PUSH_MODE===void 0){let P=this.config.errorMessageProvider.buildUnableToPopLexerModeMessage(O);w.push({offset:O.startOffset,line:O.startLine,column:O.startColumn,length:O.image.length,message:P})}else{L.pop();let P=S3(L);T=this.patternIdxToConfig[P],R=this.charCodeToPatternIdxToConfig[P],F=T.length;let z=this.canModeBeOptimized[P]&&this.config.safeMode===!1;if(R&&z)U=!0;else U=!1}},"pop_mode");function H(O){L.push(O),R=this.charCodeToPatternIdxToConfig[O],T=this.patternIdxToConfig[O],F=T.length,F=T.length;let P=this.canModeBeOptimized[O]&&this.config.safeMode===!1;if(R&&P)U=!0;else U=!1}G(H,"push_mode"),H.call(this,e);let J,K=this.config.recoveryEnabled;while(p<Q){n=null,l=-1;let O=h.charCodeAt(p),P;if(U){let AA=VI(O),W=R[AA];P=W!==void 0?W:M}else P=T;let z=P.length;for(t=0;t<z;t++){J=P[t];let AA=J.pattern;o=null;let W=J.short;if(W!==!1){if(O===W)l=1,n=AA}else if(J.isCustom===!0)if(I=AA.exec(h,p,D,v),I!==null){if(n=I[0],l=n.length,I.payload!==void 0)o=I.payload}else n=null;else AA.lastIndex=p,l=this.matchLength(AA,A,p);if(l!==-1){if(a=J.longerAlt,a!==void 0){n=A.substring(p,p+l);let CA=a.length;for(i=0;i<CA;i++){let tA=T[a[i]],lA=tA.pattern;if(s=null,tA.isCustom===!0)if(I=lA.exec(h,p,D,v),I!==null){if(u=I[0],I.payload!==void 0)s=I.payload}else u=null;else lA.lastIndex=p,u=this.match(lA,A,p);if(u&&u.length>n.length){n=u,l=u.length,o=s,J=tA;break}}}break}}if(l!==-1){if(g=J.group,g!==void 0)if(n=n!==null?n:A.substring(p,p+l),C=J.tokenTypeIdx,B=this.createTokenInstance(n,p,C,J.tokenType,b,k,l),this.handlePayload(B,o),g===!1)m=this.addToken(D,m,B);else v[g].push(B);if(S===!0&&J.canLineTerminator===!0){let AA=0,W,CA;x.lastIndex=0;do if(n=n!==null?n:A.substring(p,p+l),W=x.test(n),W===!0)CA=x.lastIndex-1,AA++;while(W===!0);if(AA!==0)b=b+AA,k=l-CA,this.updateTokenEndLineColumnLocation(B,g,CA,AA,b,k,l);else k=this.computeNewColumn(k,l)}else k=this.computeNewColumn(k,l);p=p+l,this.handleModes(J,Y,H,B)}else{let AA=p,W=b,CA=k,tA=K===!1;while(tA===!1&&p<Q){p++;for(r=0;r<F;r++){let lA=T[r],{pattern:gA,short:aA}=lA;if(aA!==!1){if(h.charCodeAt(p)===aA)tA=!0}else if(lA.isCustom===!0)tA=gA.exec(h,p,D,v)!==null;else gA.lastIndex=p,tA=gA.exec(A)!==null;if(tA===!0)break}}if(E=p-AA,k=this.computeNewColumn(k,E),d=this.config.errorMessageProvider.buildUnexpectedCharactersMessage(h,AA,E,W,CA,S3(L)),w.push({offset:AA,line:W,column:CA,length:E,message:d}),K===!1)break}}if(!this.hasCustom)D.length=m;return{tokens:D,groups:v,errors:w}}handleModes(A,e,t,r){if(A.pop===!0){let i=A.push;if(e(r),i!==void 0)t.call(this,i)}else if(A.push!==void 0)t.call(this,A.push)}updateTokenEndLineColumnLocation(A,e,t,r,i,u,a){let n,o;if(e!==void 0){if(n=t===a-1,o=n?-1:0,!(r===1&&n===!0))A.endLine=i+o,A.endColumn=u-1+-o}}computeNewColumn(A,e){return A+e}createOffsetOnlyToken(A,e,t,r){return{image:A,startOffset:e,tokenTypeIdx:t,tokenType:r}}createStartOnlyToken(A,e,t,r,i,u){return{image:A,startOffset:e,startLine:i,startColumn:u,tokenTypeIdx:t,tokenType:r}}createFullToken(A,e,t,r,i,u,a){return{image:A,startOffset:e,endOffset:e+a-1,startLine:i,endLine:i,startColumn:u,endColumn:u+a-1,tokenTypeIdx:t,tokenType:r}}addTokenUsingPush(A,e,t){return A.push(t),e}addTokenUsingMemberAccess(A,e,t){return A[e]=t,e++,e}handlePayloadNoCustom(A,e){}handlePayloadWithCustom(A,e){if(e!==null)A.payload=e}match(A,e,t){if(A.test(e)===!0)return e.substring(t,A.lastIndex);return null}matchLength(A,e,t){if(A.test(e)===!0)return A.lastIndex-t;return-1}};bs.SKIPPED="This marks a skipped Token pattern, this means each token identified by it will be consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.";bs.NA=/NOT_APPLICABLE/;G(k3,"tokenLabel");G(clA,"hasTokenLabel");G(Gw,"createToken");G(ojA,"createTokenInternal");_4=Gw({name:"EOF",pattern:bs.NA});i6([_4]);G(xx,"createTokenInstance");G(ClA,"tokenMatcher");Lw={buildMismatchTokenMessage({expected:A,actual:e,previous:t,ruleName:r}){return`Expecting ${clA(A)?`--> ${k3(A)} <--`:`token of type --> ${A.name} <--`} but found --> '${e.image}' <--`},buildNotAllInputParsedMessage({firstRedundant:A,ruleName:e}){return"Redundant input, expecting EOF but found: "+A.image},buildNoViableAltMessage({expectedPathsPerAlt:A,actual:e,previous:t,customUserDescription:r,ruleName:i}){let n=`
but found: '`+RC(e).image+"'";if(r)return"Expecting: "+r+n;else{let o=dg(A,(C,B)=>C.concat(B),[]),s=er(o,(C)=>`[${er(C,(B)=>k3(B)).join(", ")}]`);return`Expecting: one of these possible Token sequences:
${er(s,(C,B)=>` ${B+1}. ${C}`).join(`
`)}`+n}},buildEarlyExitMessage({expectedIterationPaths:A,actual:e,customUserDescription:t,ruleName:r}){let a=`
but found: '`+RC(e).image+"'";if(t)return"Expecting: "+t+a;else return`Expecting: expecting at least one iteration which starts with one of these possible Token sequences::
<${er(A,(s)=>`[${er(s,(l)=>k3(l)).join(",")}]`).join(" ,")}>`+a}};Object.freeze(Lw);Sbt={buildRuleNotFoundError(A,e){return"Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<-
inside top level rule: ->`+A.name+"<-"}},D3={buildDuplicateFoundError(A,e){function t(l){if(l instanceof ia)return l.terminalType.name;else if(l instanceof ks)return l.nonTerminalName;else return""}G(t,"getExtraProductionArgument");let r=A.name,i=RC(e),u=i.idx,a=bC(i),n=t(i),o=u>0,s=`->${a}${o?u:""}<- ${n?`with argument: ->${n}<-`:""}
appears more than once (${e.length} times) in the top level rule: ->${r}<-.
For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES
`;return s=s.replace(/[ \t]+/g," "),s=s.replace(/\s\s+/g,`
`),s},buildNamespaceConflictError(A){return`Namespace conflict found in grammar.
The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <${A.name}>.
To resolve this make sure each Terminal and Non-Terminal names are unique
This is easy to accomplish by using the convention that Terminal names start with an uppercase letter
and Non-Terminal names start with a lower case letter.`},buildAlternationPrefixAmbiguityError(A){let e=er(A.prefixPath,(i)=>k3(i)).join(", "),t=A.alternation.idx===0?"":A.alternation.idx;return`Ambiguous alternatives: <${A.ambiguityIndices.join(" ,")}> due to common lookahead prefix
in <OR${t}> inside <${A.topLevelRule.name}> Rule,
<${e}> may appears as a prefix path in all these alternatives.
See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX
For Further details.`},buildAlternationAmbiguityError(A){let e=A.alternation.idx===0?"":A.alternation.idx,t=A.prefixPath.length===0,r=`Ambiguous Alternatives Detected: <${A.ambiguityIndices.join(" ,")}> in <OR${e}> inside <${A.topLevelRule.name}> Rule,
`;if(t)r+=`These alternatives are all empty (match no tokens), making them indistinguishable.
Only the last alternative may be empty.
`;else{let i=er(A.prefixPath,(u)=>k3(u)).join(", ");r+=`<${i}> may appears as a prefix path in all these alternatives.
`}return r+=`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES
For Further details.`,r},buildEmptyRepetitionError(A){let e=bC(A.repetition);if(A.repetition.idx!==0)e+=A.repetition.idx;return`The repetition <${e}> within Rule <${A.topLevelRule.name}> can never consume any tokens.
This could lead to an infinite loop.`},buildTokenNameError(A){return"deprecated"},buildEmptyAlternationError(A){return`Ambiguous empty alternative: <${A.emptyChoiceIdx+1}> in <OR${A.alternation.idx}> inside <${A.topLevelRule.name}> Rule.
Only the last alternative may be an empty alternative.`},buildTooManyAlternativesError(A){return`An Alternation cannot have more than 256 alternatives:
<OR${A.alternation.idx}> inside <${A.topLevelRule.name}> Rule.
has ${A.alternation.definition.length+1} alternatives.`},buildLeftRecursionError(A){let e=A.topLevelRule.name,t=er(A.leftRecursionPath,(u)=>u.name),r=`${e} --> ${t.concat([e]).join(" --> ")}`;return`Left Recursion found in grammar.
rule: <${e}> can be invoked from itself (directly or indirectly)
without consuming any Tokens. The grammar path that causes this is:
${r}
To fix this refactor your grammar to remove the left recursion.
see: https://en.wikipedia.org/wiki/LL_parser#Left_factoring.`},buildInvalidRuleNameError(A){return"deprecated"},buildDuplicateRuleNameError(A){let e;if(A.topLevelRule instanceof A6)e=A.topLevelRule.name;else e=A.topLevelRule;return`Duplicate definition, rule: ->${e}<- is already defined in the grammar: ->${A.grammarName}<-`}};G(sjA,"resolveGrammar");Lbt=class extends e6{static{G(this,"GastRefResolverVisitor")}constructor(A,e){super();this.nameToTopRule=A,this.errMsgProvider=e,this.errors=[]}resolveRefs(){Rr(go(this.nameToTopRule),(A)=>{this.currTopLevel=A,A.accept(this)})}visitNonTerminal(A){let e=this.nameToTopRule[A.nonTerminalName];if(!e){let t=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,A);this.errors.push({message:t,type:Fs.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:A.nonTerminalName})}else A.referencedRule=e}},Rbt=class extends lJ{static{G(this,"AbstractNextPossibleTokensWalker")}constructor(A,e){super();this.topProd=A,this.path=e,this.possibleTokTypes=[],this.nextProductionName="",this.nextProductionOccurrence=0,this.found=!1,this.isAtEndOfPath=!1}startWalking(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=E0(this.path.ruleStack).reverse(),this.occurrenceStack=E0(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes}walk(A,e=[]){if(!this.found)super.walk(A,e)}walkProdRef(A,e,t){if(A.referencedRule.name===this.nextProductionName&&A.idx===this.nextProductionOccurrence){let r=e.concat(t);this.updateExpectedNext(),this.walk(A.referencedRule,r)}}updateExpectedNext(){if(qu(this.ruleStack))this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0;else this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop()}},Nbt=class extends Rbt{static{G(this,"NextAfterTokenWalker")}constructor(A,e){super(A,e);this.path=e,this.nextTerminalName="",this.nextTerminalOccurrence=0,this.nextTerminalName=this.path.lastTok.name,this.nextTerminalOccurrence=this.path.lastTokOccurrence}walkTerminal(A,e,t){if(this.isAtEndOfPath&&A.terminalType.name===this.nextTerminalName&&A.idx===this.nextTerminalOccurrence&&!this.found){let r=e.concat(t),i=new ml({definition:r});this.possibleTokTypes=t6(i),this.found=!0}}},cJ=class extends lJ{static{G(this,"AbstractNextTerminalAfterProductionWalker")}constructor(A,e){super();this.topRule=A,this.occurrence=e,this.result={token:void 0,occurrence:void 0,isEndOfRule:void 0}}startWalking(){return this.walk(this.topRule),this.result}},Gbt=class extends cJ{static{G(this,"NextTerminalAfterManyWalker")}walkMany(A,e,t){if(A.idx===this.occurrence){let r=RC(e.concat(t));if(this.result.isEndOfRule=r===void 0,r instanceof ia)this.result.token=r.terminalType,this.result.occurrence=r.idx}else super.walkMany(A,e,t)}},FPA=class extends cJ{static{G(this,"NextTerminalAfterManySepWalker")}walkManySep(A,e,t){if(A.idx===this.occurrence){let r=RC(e.concat(t));if(this.result.isEndOfRule=r===void 0,r instanceof ia)this.result.token=r.terminalType,this.result.occurrence=r.idx}else super.walkManySep(A,e,t)}},Ubt=class extends cJ{static{G(this,"NextTerminalAfterAtLeastOneWalker")}walkAtLeastOne(A,e,t){if(A.idx===this.occurrence){let r=RC(e.concat(t));if(this.result.isEndOfRule=r===void 0,r instanceof ia)this.result.token=r.terminalType,this.result.occurrence=r.idx}else super.walkAtLeastOne(A,e,t)}},xPA=class extends cJ{static{G(this,"NextTerminalAfterAtLeastOneSepWalker")}walkAtLeastOneSep(A,e,t){if(A.idx===this.occurrence){let r=RC(e.concat(t));if(this.result.isEndOfRule=r===void 0,r instanceof ia)this.result.token=r.terminalType,this.result.occurrence=r.idx}else super.walkAtLeastOneSep(A,e,t)}};G(MH,"possiblePathsFrom");G(BlA,"nextPossibleTokensAfter");G(ljA,"expandTopLevelRule");(function(A){A[A.OPTION=0]="OPTION",A[A.REPETITION=1]="REPETITION",A[A.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",A[A.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",A[A.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",A[A.ALTERNATION=5]="ALTERNATION"})(Ra||(Ra={}));G(CJ,"getProdType");G(zoA,"getLookaheadPaths");G(gjA,"buildLookaheadFuncForOr");G(cjA,"buildLookaheadFuncForOptionalProd");G(CjA,"buildAlternativesLookAheadFunc");G(BjA,"buildSingleAlternativeLookaheadFunction");Mbt=class extends lJ{static{G(this,"RestDefinitionFinderWalker")}constructor(A,e,t){super();this.topProd=A,this.targetOccurrence=e,this.targetProdType=t}startWalking(){return this.walk(this.topProd),this.restDef}checkIsTarget(A,e,t,r){if(A.idx===this.targetOccurrence&&this.targetProdType===e)return this.restDef=t.concat(r),!0;return!1}walkOption(A,e,t){if(!this.checkIsTarget(A,Ra.OPTION,e,t))super.walkOption(A,e,t)}walkAtLeastOne(A,e,t){if(!this.checkIsTarget(A,Ra.REPETITION_MANDATORY,e,t))super.walkOption(A,e,t)}walkAtLeastOneSep(A,e,t){if(!this.checkIsTarget(A,Ra.REPETITION_MANDATORY_WITH_SEPARATOR,e,t))super.walkOption(A,e,t)}walkMany(A,e,t){if(!this.checkIsTarget(A,Ra.REPETITION,e,t))super.walkOption(A,e,t)}walkManySep(A,e,t){if(!this.checkIsTarget(A,Ra.REPETITION_WITH_SEPARATOR,e,t))super.walkOption(A,e,t)}},EjA=class extends e6{static{G(this,"InsideDefinitionFinderVisitor")}constructor(A,e,t){super();this.targetOccurrence=A,this.targetProdType=e,this.targetRef=t,this.result=[]}checkIsTarget(A,e){if(A.idx===this.targetOccurrence&&this.targetProdType===e&&(this.targetRef===void 0||A===this.targetRef))this.result=A.definition}visitOption(A){this.checkIsTarget(A,Ra.OPTION)}visitRepetition(A){this.checkIsTarget(A,Ra.REPETITION)}visitRepetitionMandatory(A){this.checkIsTarget(A,Ra.REPETITION_MANDATORY)}visitRepetitionMandatoryWithSeparator(A){this.checkIsTarget(A,Ra.REPETITION_MANDATORY_WITH_SEPARATOR)}visitRepetitionWithSeparator(A){this.checkIsTarget(A,Ra.REPETITION_WITH_SEPARATOR)}visitAlternation(A){this.checkIsTarget(A,Ra.ALTERNATION)}};G(ZoA,"initializeArrayOfArrays");G(tH,"pathToHashKeys");G(djA,"isUniquePrefixHash");G(ElA,"lookAheadSequenceFromAlternatives");G(Sx,"getLookaheadPathsForOr");G(Lx,"getLookaheadPathsForOptionalProd");G(TH,"containsPath");G(IjA,"isStrictPrefixOfPath");G(dlA,"areTokenCategoriesNotUsed");G(hjA,"validateLookahead");G(QjA,"validateGrammar");G(pjA,"validateDuplicateProductions");G(fjA,"identifyProductionForDuplicates");G(IlA,"getExtraProductionArgument");Tbt=class extends e6{static{G(this,"OccurrenceValidationCollector")}constructor(){super(...arguments);this.allProductions=[]}visitNonTerminal(A){this.allProductions.push(A)}visitOption(A){this.allProductions.push(A)}visitRepetitionWithSeparator(A){this.allProductions.push(A)}visitRepetitionMandatory(A){this.allProductions.push(A)}visitRepetitionMandatoryWithSeparator(A){this.allProductions.push(A)}visitRepetition(A){this.allProductions.push(A)}visitAlternation(A){this.allProductions.push(A)}visitTerminal(A){this.allProductions.push(A)}};G(mjA,"validateRuleDoesNotAlreadyExist");G(DjA,"validateRuleIsOverridden");G(hlA,"validateNoLeftRecursion");G(MF,"getFirstNoneTerminal");QlA=class extends e6{static{G(this,"OrCollector")}constructor(){super(...arguments);this.alternations=[]}visitAlternation(A){this.alternations.push(A)}};G(yjA,"validateEmptyOrAlternative");G(wjA,"validateAmbiguousAlternationAlternatives");Ybt=class extends e6{static{G(this,"RepetitionCollector")}constructor(){super(...arguments);this.allProductions=[]}visitRepetitionWithSeparator(A){this.allProductions.push(A)}visitRepetitionMandatory(A){this.allProductions.push(A)}visitRepetitionMandatoryWithSeparator(A){this.allProductions.push(A)}visitRepetition(A){this.allProductions.push(A)}};G(bjA,"validateTooManyAlts");G(vjA,"validateSomeNonEmptyLookaheadPath");G(kjA,"checkAlternativesAmbiguities");G(FjA,"checkPrefixAlternativesAmbiguities");G(xjA,"checkTerminalAndNoneTerminalsNameSpace");G(SjA,"resolveGrammar");G(LjA,"validateGrammar");MjA=[RjA,NjA,GjA,UjA];Object.freeze(MjA);G(ix,"isRecognitionException");BJ=class extends Error{static{G(this,"RecognitionException")}constructor(A,e){super(A);if(this.token=e,this.resyncedTokens=[],Object.setPrototypeOf(this,new.target.prototype),Error.captureStackTrace)Error.captureStackTrace(this,this.constructor)}},TjA=class extends BJ{static{G(this,"MismatchedTokenException")}constructor(A,e,t){super(A,e);this.previousToken=t,this.name=RjA}},Hbt=class extends BJ{static{G(this,"NoViableAltException")}constructor(A,e,t){super(A,e);this.previousToken=t,this.name=NjA}},Kbt=class extends BJ{static{G(this,"NotAllInputParsedException")}constructor(A,e){super(A,e);this.name=UjA}},Jbt=class extends BJ{static{G(this,"EarlyExitException")}constructor(A,e,t){super(A,e);this.previousToken=t,this.name=GjA}},hnA={},Obt=class extends Error{static{G(this,"InRuleRecoveryException")}constructor(A){super(A);this.name=YjA}},Pbt=class{static{G(this,"Recoverable")}initRecoverable(A){if(this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=pr(A,"recoveryEnabled")?A.recoveryEnabled:jI.recoveryEnabled,this.recoveryEnabled)this.attemptInRepetitionRecovery=HjA}getTokenToInsert(A){let e=xx(A,"",NaN,NaN,NaN,NaN,NaN,NaN);return e.isInsertedInRecovery=!0,e}canTokenTypeBeInsertedInRecovery(A){return!0}canTokenTypeBeDeletedInRecovery(A){return!0}tryInRepetitionRecovery(A,e,t,r){let i=this.findReSyncTokenType(),u=this.exportLexerState(),a=[],n=!1,o=this.LA(1),s=this.LA(1),l=G(()=>{let g=this.LA(0),C=this.errorMessageProvider.buildMismatchTokenMessage({expected:r,actual:o,previous:g,ruleName:this.getCurrRuleFullName()}),B=new TjA(C,o,this.LA(0));B.resyncedTokens=ex(a),this.SAVE_ERROR(B)},"generateErrorMessage");while(!n)if(this.tokenMatcher(s,r)){l();return}else if(t.call(this)){l(),A.apply(this,e);return}else if(this.tokenMatcher(s,i))n=!0;else s=this.SKIP_TOKEN(),this.addToResyncTokens(s,a);this.importLexerState(u)}shouldInRepetitionRecoveryBeTried(A,e,t){if(t===!1)return!1;if(this.tokenMatcher(this.LA(1),A))return!1;if(this.isBackTracking())return!1;if(this.canPerformInRuleRecovery(A,this.getFollowsForInRuleRecovery(A,e)))return!1;return!0}getFollowsForInRuleRecovery(A,e){let t=this.getCurrentGrammarPath(A,e);return this.getNextPossibleTokenTypes(t)}tryInRuleRecovery(A,e){if(this.canRecoverWithSingleTokenInsertion(A,e))return this.getTokenToInsert(A);if(this.canRecoverWithSingleTokenDeletion(A)){let t=this.SKIP_TOKEN();return this.consumeToken(),t}throw new Obt("sad sad panda")}canPerformInRuleRecovery(A,e){return this.canRecoverWithSingleTokenInsertion(A,e)||this.canRecoverWithSingleTokenDeletion(A)}canRecoverWithSingleTokenInsertion(A,e){if(!this.canTokenTypeBeInsertedInRecovery(A))return!1;if(qu(e))return!1;let t=this.LA(1);return zw(e,(i)=>this.tokenMatcher(t,i))!==void 0}canRecoverWithSingleTokenDeletion(A){if(!this.canTokenTypeBeDeletedInRecovery(A))return!1;return this.tokenMatcher(this.LA(2),A)}isInCurrentRuleReSyncSet(A){let e=this.getCurrFollowKey(),t=this.getFollowSetFromFollowKey(e);return Ss(t,A)}findReSyncTokenType(){let A=this.flattenFollowSet(),e=this.LA(1),t=2;while(!0){let r=zw(A,(i)=>ClA(e,i));if(r!==void 0)return r;e=this.LA(t),t++}}getCurrFollowKey(){if(this.RULE_STACK.length===1)return hnA;let A=this.getLastExplicitRuleShortName(),e=this.getLastExplicitRuleOccurrenceIndex(),t=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(A),idxInCallingRule:e,inRule:this.shortRuleNameToFullName(t)}}buildFullFollowKeyStack(){let A=this.RULE_STACK,e=this.RULE_OCCURRENCE_STACK;return er(A,(t,r)=>{if(r===0)return hnA;return{ruleName:this.shortRuleNameToFullName(t),idxInCallingRule:e[r],inRule:this.shortRuleNameToFullName(A[r-1])}})}flattenFollowSet(){let A=er(this.buildFullFollowKeyStack(),(e)=>this.getFollowSetFromFollowKey(e));return xC(A)}getFollowSetFromFollowKey(A){if(A===hnA)return[_4];let e=A.ruleName+A.idxInCallingRule+wVA+A.inRule;return this.resyncFollows[e]}addToResyncTokens(A,e){if(!this.tokenMatcher(A,_4))e.push(A);return e}reSyncTo(A){let e=[],t=this.LA(1);while(this.tokenMatcher(t,A)===!1)t=this.SKIP_TOKEN(),this.addToResyncTokens(t,e);return ex(e)}attemptInRepetitionRecovery(A,e,t,r,i,u,a){}getCurrentGrammarPath(A,e){let t=this.getHumanReadableRuleStack(),r=E0(this.RULE_OCCURRENCE_STACK);return{ruleStack:t,occurrenceStack:r,lastTok:A,lastTokOccurrence:e}}getHumanReadableRuleStack(){return er(this.RULE_STACK,(A)=>this.shortRuleNameToFullName(A))}};G(HjA,"attemptInRepetitionRecovery");KjA=1<<j4,JjA=2<<j4,VoA=3<<j4,joA=4<<j4,XoA=5<<j4,rH=6<<j4;G(iH,"getKeyForAutomaticLookahead");lni=32-Wbt,plA=class{static{G(this,"LLkLookaheadStrategy")}constructor(A){var e;this.maxLookahead=(e=A===null||A===void 0?void 0:A.maxLookahead)!==null&&e!==void 0?e:jI.maxLookahead}validate(A){let e=this.validateNoLeftRecursion(A.rules);if(qu(e)){let t=this.validateEmptyOrAlternatives(A.rules),r=this.validateAmbiguousAlternationAlternatives(A.rules,this.maxLookahead),i=this.validateSomeNonEmptyLookaheadPath(A.rules,this.maxLookahead);return[...e,...t,...r,...i]}return e}validateNoLeftRecursion(A){return Bc(A,(e)=>hlA(e,e,D3))}validateEmptyOrAlternatives(A){return Bc(A,(e)=>yjA(e,D3))}validateAmbiguousAlternationAlternatives(A,e){return Bc(A,(t)=>wjA(t,e,D3))}validateSomeNonEmptyLookaheadPath(A,e){return vjA(A,e,D3)}buildLookaheadForAlternation(A){return gjA(A.prodOccurrence,A.rule,A.maxLookahead,A.hasPredicates,A.dynamicTokensEnabled,CjA)}buildLookaheadForOptional(A){return cjA(A.prodOccurrence,A.rule,A.maxLookahead,A.dynamicTokensEnabled,CJ(A.prodType),BjA)}},qbt=class{static{G(this,"LooksAhead")}initLooksAhead(A){this.dynamicTokensEnabled=pr(A,"dynamicTokensEnabled")?A.dynamicTokensEnabled:jI.dynamicTokensEnabled,this.maxLookahead=pr(A,"maxLookahead")?A.maxLookahead:jI.maxLookahead,this.lookaheadStrategy=pr(A,"lookaheadStrategy")?A.lookaheadStrategy:new plA({maxLookahead:this.maxLookahead}),this.lookAheadFuncsCache=new Map}preComputeLookaheadFunctions(A){Rr(A,(e)=>{this.TRACE_INIT(`${e.name} Rule Lookahead`,()=>{let{alternation:t,repetition:r,option:i,repetitionMandatory:u,repetitionMandatoryWithSeparator:a,repetitionWithSeparator:n}=OjA(e);Rr(t,(o)=>{let s=o.idx===0?"":o.idx;this.TRACE_INIT(`${bC(o)}${s}`,()=>{let l=this.lookaheadStrategy.buildLookaheadForAlternation({prodOccurrence:o.idx,rule:e,maxLookahead:o.maxLookahead||this.maxLookahead,hasPredicates:o.hasPredicates,dynamicTokensEnabled:this.dynamicTokensEnabled}),g=iH(this.fullRuleNameToShort[e.name],KjA,o.idx);this.setLaFuncCache(g,l)})}),Rr(r,(o)=>{this.computeLookaheadFunc(e,o.idx,VoA,"Repetition",o.maxLookahead,bC(o))}),Rr(i,(o)=>{this.computeLookaheadFunc(e,o.idx,JjA,"Option",o.maxLookahead,bC(o))}),Rr(u,(o)=>{this.computeLookaheadFunc(e,o.idx,joA,"RepetitionMandatory",o.maxLookahead,bC(o))}),Rr(a,(o)=>{this.computeLookaheadFunc(e,o.idx,rH,"RepetitionMandatoryWithSeparator",o.maxLookahead,bC(o))}),Rr(n,(o)=>{this.computeLookaheadFunc(e,o.idx,XoA,"RepetitionWithSeparator",o.maxLookahead,bC(o))})})})}computeLookaheadFunc(A,e,t,r,i,u){this.TRACE_INIT(`${u}${e===0?"":e}`,()=>{let a=this.lookaheadStrategy.buildLookaheadForOptional({prodOccurrence:e,rule:A,maxLookahead:i||this.maxLookahead,dynamicTokensEnabled:this.dynamicTokensEnabled,prodType:r}),n=iH(this.fullRuleNameToShort[A.name],t,e);this.setLaFuncCache(n,a)})}getKeyForAutomaticLookahead(A,e){let t=this.getLastExplicitRuleShortName();return iH(t,A,e)}getLaFuncFromCache(A){return this.lookAheadFuncsCache.get(A)}setLaFuncCache(A,e){this.lookAheadFuncsCache.set(A,e)}},zbt=class extends e6{static{G(this,"DslMethodsCollectorVisitor")}constructor(){super(...arguments);this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}reset(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}}visitOption(A){this.dslMethods.option.push(A)}visitRepetitionWithSeparator(A){this.dslMethods.repetitionWithSeparator.push(A)}visitRepetitionMandatory(A){this.dslMethods.repetitionMandatory.push(A)}visitRepetitionMandatoryWithSeparator(A){this.dslMethods.repetitionMandatoryWithSeparator.push(A)}visitRepetition(A){this.dslMethods.repetition.push(A)}visitAlternation(A){this.dslMethods.alternation.push(A)}},FY=new zbt;G(OjA,"collectMethods");G($oA,"setNodeLocationOnlyOffset");G(A0A,"setNodeLocationFull");G(PjA,"addTerminalToCst");G(_jA,"addNoneTerminalToCst");G(flA,"defineNameProp");G(WjA,"defaultVisit");G(qjA,"createBaseSemanticVisitorConstructor");G(zjA,"createBaseVisitorConstructorWithDefaults");(function(A){A[A.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",A[A.MISSING_METHOD=1]="MISSING_METHOD"})(e0A||(e0A={}));G(ZjA,"validateVisitor");G(VjA,"validateMissingCstMethods");Vbt=class{static{G(this,"TreeBuilder")}initTreeBuilder(A){if(this.CST_STACK=[],this.outputCst=A.outputCst,this.nodeLocationTracking=pr(A,"nodeLocationTracking")?A.nodeLocationTracking:jI.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=Ho,this.cstFinallyStateUpdate=Ho,this.cstPostTerminal=Ho,this.cstPostNonTerminal=Ho,this.cstPostRule=Ho;else if(/full/i.test(this.nodeLocationTracking))if(this.recoveryEnabled)this.setNodeLocationFromToken=A0A,this.setNodeLocationFromNode=A0A,this.cstPostRule=Ho,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery;else this.setNodeLocationFromToken=Ho,this.setNodeLocationFromNode=Ho,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular;else if(/onlyOffset/i.test(this.nodeLocationTracking))if(this.recoveryEnabled)this.setNodeLocationFromToken=$oA,this.setNodeLocationFromNode=$oA,this.cstPostRule=Ho,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery;else this.setNodeLocationFromToken=Ho,this.setNodeLocationFromNode=Ho,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular;else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=Ho,this.setNodeLocationFromNode=Ho,this.cstPostRule=Ho,this.setInitialNodeLocation=Ho;else throw Error(`Invalid <nodeLocationTracking> config option: "${A.nodeLocationTracking}"`)}setInitialNodeLocationOnlyOffsetRecovery(A){A.location={startOffset:NaN,endOffset:NaN}}setInitialNodeLocationOnlyOffsetRegular(A){A.location={startOffset:this.LA(1).startOffset,endOffset:NaN}}setInitialNodeLocationFullRecovery(A){A.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}}setInitialNodeLocationFullRegular(A){let e=this.LA(1);A.location={startOffset:e.startOffset,startLine:e.startLine,startColumn:e.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}}cstInvocationStateUpdate(A){let e={name:A,children:Object.create(null)};this.setInitialNodeLocation(e),this.CST_STACK.push(e)}cstFinallyStateUpdate(){this.CST_STACK.pop()}cstPostRuleFull(A){let e=this.LA(0),t=A.location;if(t.startOffset<=e.startOffset===!0)t.endOffset=e.endOffset,t.endLine=e.endLine,t.endColumn=e.endColumn;else t.startOffset=NaN,t.startLine=NaN,t.startColumn=NaN}cstPostRuleOnlyOffset(A){let e=this.LA(0),t=A.location;if(t.startOffset<=e.startOffset===!0)t.endOffset=e.endOffset;else t.startOffset=NaN}cstPostTerminal(A,e){let t=this.CST_STACK[this.CST_STACK.length-1];PjA(t,e,A),this.setNodeLocationFromToken(t.location,e)}cstPostNonTerminal(A,e){let t=this.CST_STACK[this.CST_STACK.length-1];_jA(t,e,A),this.setNodeLocationFromNode(t.location,A.location)}getBaseCstVisitorConstructor(){if(ZI(this.baseCstVisitorConstructor)){let A=qjA(this.className,Bg(this.gastProductionsCache));return this.baseCstVisitorConstructor=A,A}return this.baseCstVisitorConstructor}getBaseCstVisitorConstructorWithDefaults(){if(ZI(this.baseCstVisitorWithDefaultsConstructor)){let A=zjA(this.className,Bg(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=A,A}return this.baseCstVisitorWithDefaultsConstructor}getLastExplicitRuleShortName(){let A=this.RULE_STACK;return A[A.length-1]}getPreviousExplicitRuleShortName(){let A=this.RULE_STACK;return A[A.length-2]}getLastExplicitRuleOccurrenceIndex(){let A=this.RULE_OCCURRENCE_STACK;return A[A.length-1]}},jbt=class{static{G(this,"LexerAdapter")}initLexerAdapter(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1}set input(A){if(this.selfAnalysisDone!==!0)throw Error("Missing <performSelfAnalysis> invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=A,this.tokVectorLength=A.length}get input(){return this.tokVector}SKIP_TOKEN(){if(this.currIdx<=this.tokVector.length-2)return this.consumeToken(),this.LA(1);else return YH}LA(A){let e=this.currIdx+A;if(e<0||this.tokVectorLength<=e)return YH;else return this.tokVector[e]}consumeToken(){this.currIdx++}exportLexerState(){return this.currIdx}importLexerState(A){this.currIdx=A}resetLexerState(){this.currIdx=-1}moveToTerminatedState(){this.currIdx=this.tokVector.length-1}getLexerPosition(){return this.exportLexerState()}},Xbt=class{static{G(this,"RecognizerApi")}ACTION(A){return A.call(this)}consume(A,e,t){return this.consumeInternal(e,A,t)}subrule(A,e,t){return this.subruleInternal(e,A,t)}option(A,e){return this.optionInternal(e,A)}or(A,e){return this.orInternal(e,A)}many(A,e){return this.manyInternal(A,e)}atLeastOne(A,e){return this.atLeastOneInternal(A,e)}CONSUME(A,e){return this.consumeInternal(A,0,e)}CONSUME1(A,e){return this.consumeInternal(A,1,e)}CONSUME2(A,e){return this.consumeInternal(A,2,e)}CONSUME3(A,e){return this.consumeInternal(A,3,e)}CONSUME4(A,e){return this.consumeInternal(A,4,e)}CONSUME5(A,e){return this.consumeInternal(A,5,e)}CONSUME6(A,e){return this.consumeInternal(A,6,e)}CONSUME7(A,e){return this.consumeInternal(A,7,e)}CONSUME8(A,e){return this.consumeInternal(A,8,e)}CONSUME9(A,e){return this.consumeInternal(A,9,e)}SUBRULE(A,e){return this.subruleInternal(A,0,e)}SUBRULE1(A,e){return this.subruleInternal(A,1,e)}SUBRULE2(A,e){return this.subruleInternal(A,2,e)}SUBRULE3(A,e){return this.subruleInternal(A,3,e)}SUBRULE4(A,e){return this.subruleInternal(A,4,e)}SUBRULE5(A,e){return this.subruleInternal(A,5,e)}SUBRULE6(A,e){return this.subruleInternal(A,6,e)}SUBRULE7(A,e){return this.subruleInternal(A,7,e)}SUBRULE8(A,e){return this.subruleInternal(A,8,e)}SUBRULE9(A,e){return this.subruleInternal(A,9,e)}OPTION(A){return this.optionInternal(A,0)}OPTION1(A){return this.optionInternal(A,1)}OPTION2(A){return this.optionInternal(A,2)}OPTION3(A){return this.optionInternal(A,3)}OPTION4(A){return this.optionInternal(A,4)}OPTION5(A){return this.optionInternal(A,5)}OPTION6(A){return this.optionInternal(A,6)}OPTION7(A){return this.optionInternal(A,7)}OPTION8(A){return this.optionInternal(A,8)}OPTION9(A){return this.optionInternal(A,9)}OR(A){return this.orInternal(A,0)}OR1(A){return this.orInternal(A,1)}OR2(A){return this.orInternal(A,2)}OR3(A){return this.orInternal(A,3)}OR4(A){return this.orInternal(A,4)}OR5(A){return this.orInternal(A,5)}OR6(A){return this.orInternal(A,6)}OR7(A){return this.orInternal(A,7)}OR8(A){return this.orInternal(A,8)}OR9(A){return this.orInternal(A,9)}MANY(A){this.manyInternal(0,A)}MANY1(A){this.manyInternal(1,A)}MANY2(A){this.manyInternal(2,A)}MANY3(A){this.manyInternal(3,A)}MANY4(A){this.manyInternal(4,A)}MANY5(A){this.manyInternal(5,A)}MANY6(A){this.manyInternal(6,A)}MANY7(A){this.manyInternal(7,A)}MANY8(A){this.manyInternal(8,A)}MANY9(A){this.manyInternal(9,A)}MANY_SEP(A){this.manySepFirstInternal(0,A)}MANY_SEP1(A){this.manySepFirstInternal(1,A)}MANY_SEP2(A){this.manySepFirstInternal(2,A)}MANY_SEP3(A){this.manySepFirstInternal(3,A)}MANY_SEP4(A){this.manySepFirstInternal(4,A)}MANY_SEP5(A){this.manySepFirstInternal(5,A)}MANY_SEP6(A){this.manySepFirstInternal(6,A)}MANY_SEP7(A){this.manySepFirstInternal(7,A)}MANY_SEP8(A){this.manySepFirstInternal(8,A)}MANY_SEP9(A){this.manySepFirstInternal(9,A)}AT_LEAST_ONE(A){this.atLeastOneInternal(0,A)}AT_LEAST_ONE1(A){return this.atLeastOneInternal(1,A)}AT_LEAST_ONE2(A){this.atLeastOneInternal(2,A)}AT_LEAST_ONE3(A){this.atLeastOneInternal(3,A)}AT_LEAST_ONE4(A){this.atLeastOneInternal(4,A)}AT_LEAST_ONE5(A){this.atLeastOneInternal(5,A)}AT_LEAST_ONE6(A){this.atLeastOneInternal(6,A)}AT_LEAST_ONE7(A){this.atLeastOneInternal(7,A)}AT_LEAST_ONE8(A){this.atLeastOneInternal(8,A)}AT_LEAST_ONE9(A){this.atLeastOneInternal(9,A)}AT_LEAST_ONE_SEP(A){this.atLeastOneSepFirstInternal(0,A)}AT_LEAST_ONE_SEP1(A){this.atLeastOneSepFirstInternal(1,A)}AT_LEAST_ONE_SEP2(A){this.atLeastOneSepFirstInternal(2,A)}AT_LEAST_ONE_SEP3(A){this.atLeastOneSepFirstInternal(3,A)}AT_LEAST_ONE_SEP4(A){this.atLeastOneSepFirstInternal(4,A)}AT_LEAST_ONE_SEP5(A){this.atLeastOneSepFirstInternal(5,A)}AT_LEAST_ONE_SEP6(A){this.atLeastOneSepFirstInternal(6,A)}AT_LEAST_ONE_SEP7(A){this.atLeastOneSepFirstInternal(7,A)}AT_LEAST_ONE_SEP8(A){this.atLeastOneSepFirstInternal(8,A)}AT_LEAST_ONE_SEP9(A){this.atLeastOneSepFirstInternal(9,A)}RULE(A,e,t=HH){if(Ss(this.definedRulesNames,A)){let u={message:D3.buildDuplicateRuleNameError({topLevelRule:A,grammarName:this.className}),type:Fs.DUPLICATE_RULE_NAME,ruleName:A};this.definitionErrors.push(u)}this.definedRulesNames.push(A);let r=this.defineRule(A,e,t);return this[A]=r,r}OVERRIDE_RULE(A,e,t=HH){let r=DjA(A,this.definedRulesNames,this.className);this.definitionErrors=this.definitionErrors.concat(r);let i=this.defineRule(A,e,t);return this[A]=i,i}BACKTRACK(A,e){return function(){this.isBackTrackingStack.push(1);let t=this.saveRecogState();try{return A.apply(this,e),!0}catch(r){if(ix(r))return!1;else throw r}finally{this.reloadRecogState(t),this.isBackTrackingStack.pop()}}}getGAstProductions(){return this.gastProductionsCache}getSerializedGastProductions(){return QVA(go(this.gastProductionsCache))}},$bt=class{static{G(this,"RecognizerEngine")}initRecognizerEngine(A,e){if(this.className=this.constructor.name,this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=rx,this.subruleIdx=0,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},pr(e,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a <serializedGrammar> property.
See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0
For Further details.`);if(Ki(A)){if(qu(A))throw Error(`A Token Vocabulary cannot be empty.
Note that the first argument for the parser constructor
is no longer a Token vector (since v4.0).`);if(typeof A[0].startOffset==="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument.
See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0
For Further details.`)}if(Ki(A))this.tokensMap=dg(A,(i,u)=>(i[u.name]=u,i),{});else if(pr(A,"modes")&&SC(xC(go(A.modes)),njA)){let i=xC(go(A.modes)),u=rlA(i);this.tokensMap=dg(u,(a,n)=>(a[n.name]=n,a),{})}else if(dc(A))this.tokensMap=E0(A);else throw Error("<tokensDictionary> argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=_4;let t=pr(A,"modes")?xC(go(A.modes)):go(A),r=SC(t,(i)=>qu(i.categoryMatches));this.tokenMatcher=r?rx:r6,i6(go(this.tokensMap))}defineRule(A,e,t){if(this.selfAnalysisDone)throw Error(`Grammar rule <${A}> may not be defined after the 'performSelfAnalysis' method has been called'
Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);let r=pr(t,"resyncEnabled")?t.resyncEnabled:HH.resyncEnabled,i=pr(t,"recoveryValueFunc")?t.recoveryValueFunc:HH.recoveryValueFunc,u=this.ruleShortNameIdx<<_bt+j4;this.ruleShortNameIdx++,this.shortRuleNameToFull[u]=A,this.fullRuleNameToShort[A]=u;let a;if(this.outputCst===!0)a=G(function(...s){try{this.ruleInvocationStateUpdate(u,A,this.subruleIdx),e.apply(this,s);let l=this.CST_STACK[this.CST_STACK.length-1];return this.cstPostRule(l),l}catch(l){return this.invokeRuleCatch(l,r,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTry");else a=G(function(...s){try{return this.ruleInvocationStateUpdate(u,A,this.subruleIdx),e.apply(this,s)}catch(l){return this.invokeRuleCatch(l,r,i)}finally{this.ruleFinallyStateUpdate()}},"invokeRuleWithTryCst");return Object.assign(a,{ruleName:A,originalGrammarAction:e})}invokeRuleCatch(A,e,t){let r=this.RULE_STACK.length===1,i=e&&!this.isBackTracking()&&this.recoveryEnabled;if(ix(A)){let u=A;if(i){let a=this.findReSyncTokenType();if(this.isInCurrentRuleReSyncSet(a))if(u.resyncedTokens=this.reSyncTo(a),this.outputCst){let n=this.CST_STACK[this.CST_STACK.length-1];return n.recoveredNode=!0,n}else return t(A);else{if(this.outputCst){let n=this.CST_STACK[this.CST_STACK.length-1];n.recoveredNode=!0,u.partialCstResult=n}throw u}}else if(r)return this.moveToTerminatedState(),t(A);else throw u}else throw A}optionInternal(A,e){let t=this.getKeyForAutomaticLookahead(JjA,e);return this.optionInternalLogic(A,e,t)}optionInternalLogic(A,e,t){let r=this.getLaFuncFromCache(t),i;if(typeof A!=="function"){i=A.DEF;let u=A.GATE;if(u!==void 0){let a=r;r=G(()=>u.call(this)&&a.call(this),"lookAheadFunc")}}else i=A;if(r.call(this)===!0)return i.call(this);return}atLeastOneInternal(A,e){let t=this.getKeyForAutomaticLookahead(joA,A);return this.atLeastOneInternalLogic(A,e,t)}atLeastOneInternalLogic(A,e,t){let r=this.getLaFuncFromCache(t),i;if(typeof e!=="function"){i=e.DEF;let u=e.GATE;if(u!==void 0){let a=r;r=G(()=>u.call(this)&&a.call(this),"lookAheadFunc")}}else i=e;if(r.call(this)===!0){let u=this.doSingleRepetition(i);while(r.call(this)===!0&&u===!0)u=this.doSingleRepetition(i)}else throw this.raiseEarlyExitException(A,Ra.REPETITION_MANDATORY,e.ERR_MSG);this.attemptInRepetitionRecovery(this.atLeastOneInternal,[A,e],r,joA,A,Ubt)}atLeastOneSepFirstInternal(A,e){let t=this.getKeyForAutomaticLookahead(rH,A);this.atLeastOneSepFirstInternalLogic(A,e,t)}atLeastOneSepFirstInternalLogic(A,e,t){let{DEF:r,SEP:i}=e;if(this.getLaFuncFromCache(t).call(this)===!0){r.call(this);let a=G(()=>this.tokenMatcher(this.LA(1),i),"separatorLookAheadFunc");while(this.tokenMatcher(this.LA(1),i)===!0)this.CONSUME(i),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[A,i,a,r,xPA],a,rH,A,xPA)}else throw this.raiseEarlyExitException(A,Ra.REPETITION_MANDATORY_WITH_SEPARATOR,e.ERR_MSG)}manyInternal(A,e){let t=this.getKeyForAutomaticLookahead(VoA,A);return this.manyInternalLogic(A,e,t)}manyInternalLogic(A,e,t){let r=this.getLaFuncFromCache(t),i;if(typeof e!=="function"){i=e.DEF;let a=e.GATE;if(a!==void 0){let n=r;r=G(()=>a.call(this)&&n.call(this),"lookaheadFunction")}}else i=e;let u=!0;while(r.call(this)===!0&&u===!0)u=this.doSingleRepetition(i);this.attemptInRepetitionRecovery(this.manyInternal,[A,e],r,VoA,A,Gbt,u)}manySepFirstInternal(A,e){let t=this.getKeyForAutomaticLookahead(XoA,A);this.manySepFirstInternalLogic(A,e,t)}manySepFirstInternalLogic(A,e,t){let{DEF:r,SEP:i}=e;if(this.getLaFuncFromCache(t).call(this)===!0){r.call(this);let a=G(()=>this.tokenMatcher(this.LA(1),i),"separatorLookAheadFunc");while(this.tokenMatcher(this.LA(1),i)===!0)this.CONSUME(i),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[A,i,a,r,FPA],a,XoA,A,FPA)}}repetitionSepSecondInternal(A,e,t,r,i){while(t())this.CONSUME(e),r.call(this);this.attemptInRepetitionRecovery(this.repetitionSepSecondInternal,[A,e,t,r,i],t,rH,A,i)}doSingleRepetition(A){let e=this.getLexerPosition();return A.call(this),this.getLexerPosition()>e}orInternal(A,e){let t=this.getKeyForAutomaticLookahead(KjA,e),r=Ki(A)?A:A.DEF,u=this.getLaFuncFromCache(t).call(this,r);if(u!==void 0)return r[u].ALT.call(this);this.raiseNoAltException(e,A.ERR_MSG)}ruleFinallyStateUpdate(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){let A=this.LA(1),e=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:A,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new Kbt(e,A))}}subruleInternal(A,e,t){let r;try{let i=t!==void 0?t.ARGS:void 0;return this.subruleIdx=e,r=A.apply(this,i),this.cstPostNonTerminal(r,t!==void 0&&t.LABEL!==void 0?t.LABEL:A.ruleName),r}catch(i){throw this.subruleInternalError(i,t,A.ruleName)}}subruleInternalError(A,e,t){if(ix(A)&&A.partialCstResult!==void 0)this.cstPostNonTerminal(A.partialCstResult,e!==void 0&&e.LABEL!==void 0?e.LABEL:t),delete A.partialCstResult;throw A}consumeInternal(A,e,t){let r;try{let i=this.LA(1);if(this.tokenMatcher(i,A)===!0)this.consumeToken(),r=i;else this.consumeInternalError(A,i,t)}catch(i){r=this.consumeInternalRecovery(A,e,i)}return this.cstPostTerminal(t!==void 0&&t.LABEL!==void 0?t.LABEL:A.name,r),r}consumeInternalError(A,e,t){let r,i=this.LA(0);if(t!==void 0&&t.ERR_MSG)r=t.ERR_MSG;else r=this.errorMessageProvider.buildMismatchTokenMessage({expected:A,actual:e,previous:i,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new TjA(r,e,i))}consumeInternalRecovery(A,e,t){if(this.recoveryEnabled&&t.name==="MismatchedTokenException"&&!this.isBackTracking()){let r=this.getFollowsForInRuleRecovery(A,e);try{return this.tryInRuleRecovery(A,r)}catch(i){if(i.name===YjA)throw t;else throw i}}else throw t}saveRecogState(){let A=this.errors,e=E0(this.RULE_STACK);return{errors:A,lexerState:this.exportLexerState(),RULE_STACK:e,CST_STACK:this.CST_STACK}}reloadRecogState(A){this.errors=A.errors,this.importLexerState(A.lexerState),this.RULE_STACK=A.RULE_STACK}ruleInvocationStateUpdate(A,e,t){this.RULE_OCCURRENCE_STACK.push(t),this.RULE_STACK.push(A),this.cstInvocationStateUpdate(e)}isBackTracking(){return this.isBackTrackingStack.length!==0}getCurrRuleFullName(){let A=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[A]}shortRuleNameToFullName(A){return this.shortRuleNameToFull[A]}isAtEndOfInput(){return this.tokenMatcher(this.LA(1),_4)}reset(){this.resetLexerState(),this.subruleIdx=0,this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]}},Avt=class{static{G(this,"ErrorHandler")}initErrorHandler(A){this._errors=[],this.errorMessageProvider=pr(A,"errorMessageProvider")?A.errorMessageProvider:jI.errorMessageProvider}SAVE_ERROR(A){if(ix(A))return A.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:E0(this.RULE_OCCURRENCE_STACK)},this._errors.push(A),A;else throw Error("Trying to save an Error which is not a RecognitionException")}get errors(){return E0(this._errors)}set errors(A){this._errors=A}raiseEarlyExitException(A,e,t){let r=this.getCurrRuleFullName(),i=this.getGAstProductions()[r],a=Lx(A,i,e,this.maxLookahead)[0],n=[];for(let s=1;s<=this.maxLookahead;s++)n.push(this.LA(s));let o=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:a,actual:n,previous:this.LA(0),customUserDescription:t,ruleName:r});throw this.SAVE_ERROR(new Jbt(o,this.LA(1),this.LA(0)))}raiseNoAltException(A,e){let t=this.getCurrRuleFullName(),r=this.getGAstProductions()[t],i=Sx(A,r,this.maxLookahead),u=[];for(let o=1;o<=this.maxLookahead;o++)u.push(this.LA(o));let a=this.LA(0),n=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:i,actual:u,previous:a,customUserDescription:e,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new Hbt(n,this.LA(1),a))}},evt=class{static{G(this,"ContentAssist")}initContentAssist(){}computeContentAssist(A,e){let t=this.gastProductionsCache[A];if(ZI(t))throw Error(`Rule ->${A}<- does not exist in this grammar.`);return BlA([t],e,this.tokenMatcher,this.maxLookahead)}getNextPossibleTokenTypes(A){let e=RC(A.ruleStack),r=this.getGAstProductions()[e];return new Nbt(r,A).startWalking()}},EJ={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(EJ);LPA=Math.pow(2,j4)-1,jjA=Gw({name:"RECORDING_PHASE_TOKEN",pattern:bs.NA});i6([jjA]);XjA=xx(jjA,`This IToken indicates the Parser is in Recording Phase
See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(XjA);tvt={name:`This CSTNode indicates the Parser is in Recording Phase
See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},rvt=class{static{G(this,"GastRecorder")}initGastRecorder(A){this.recordingProdStack=[],this.RECORDING_PHASE=!1}enableRecording(){this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",()=>{for(let A=0;A<10;A++){let e=A>0?A:"";this[`CONSUME${e}`]=function(t,r){return this.consumeInternalRecord(t,A,r)},this[`SUBRULE${e}`]=function(t,r){return this.subruleInternalRecord(t,A,r)},this[`OPTION${e}`]=function(t){return this.optionInternalRecord(t,A)},this[`OR${e}`]=function(t){return this.orInternalRecord(t,A)},this[`MANY${e}`]=function(t){this.manyInternalRecord(A,t)},this[`MANY_SEP${e}`]=function(t){this.manySepFirstInternalRecord(A,t)},this[`AT_LEAST_ONE${e}`]=function(t){this.atLeastOneInternalRecord(A,t)},this[`AT_LEAST_ONE_SEP${e}`]=function(t){this.atLeastOneSepFirstInternalRecord(A,t)}}this.consume=function(A,e,t){return this.consumeInternalRecord(e,A,t)},this.subrule=function(A,e,t){return this.subruleInternalRecord(e,A,t)},this.option=function(A,e){return this.optionInternalRecord(e,A)},this.or=function(A,e){return this.orInternalRecord(e,A)},this.many=function(A,e){this.manyInternalRecord(A,e)},this.atLeastOne=function(A,e){this.atLeastOneInternalRecord(A,e)},this.ACTION=this.ACTION_RECORD,this.BACKTRACK=this.BACKTRACK_RECORD,this.LA=this.LA_RECORD})}disableRecording(){this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",()=>{let A=this;for(let e=0;e<10;e++){let t=e>0?e:"";delete A[`CONSUME${t}`],delete A[`SUBRULE${t}`],delete A[`OPTION${t}`],delete A[`OR${t}`],delete A[`MANY${t}`],delete A[`MANY_SEP${t}`],delete A[`AT_LEAST_ONE${t}`],delete A[`AT_LEAST_ONE_SEP${t}`]}delete A.consume,delete A.subrule,delete A.option,delete A.or,delete A.many,delete A.atLeastOne,delete A.ACTION,delete A.BACKTRACK,delete A.LA})}ACTION_RECORD(A){}BACKTRACK_RECORD(A,e){return()=>!0}LA_RECORD(A){return YH}topLevelRuleRecord(A,e){try{let t=new A6({definition:[],name:A});return t.name=A,this.recordingProdStack.push(t),e.call(this),this.recordingProdStack.pop(),t}catch(t){if(t.KNOWN_RECORDER_ERROR!==!0)try{t.message=t.message+`
This error was thrown during the "grammar recording phase" For more info see:
https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch(r){throw t}throw t}}optionInternalRecord(A,e){return yw.call(this,B0,A,e)}atLeastOneInternalRecord(A,e){yw.call(this,Ig,e,A)}atLeastOneSepFirstInternalRecord(A,e){yw.call(this,hg,e,A,SPA)}manyInternalRecord(A,e){yw.call(this,Va,e,A)}manySepFirstInternalRecord(A,e){yw.call(this,Dl,e,A,SPA)}orInternalRecord(A,e){return $jA.call(this,A,e)}subruleInternalRecord(A,e,t){if(ux(e),!A||pr(A,"ruleName")===!1){let a=Error(`<SUBRULE${t0A(e)}> argument is invalid expecting a Parser method reference but got: <${JSON.stringify(A)}>
inside top level rule: <${this.recordingProdStack[0].name}>`);throw a.KNOWN_RECORDER_ERROR=!0,a}let r=S3(this.recordingProdStack),i=A.ruleName,u=new ks({idx:e,nonTerminalName:i,label:t===null||t===void 0?void 0:t.LABEL,referencedRule:void 0});return r.definition.push(u),this.outputCst?tvt:EJ}consumeInternalRecord(A,e,t){if(ux(e),!glA(A)){let u=Error(`<CONSUME${t0A(e)}> argument is invalid expecting a TokenType reference but got: <${JSON.stringify(A)}>
inside top level rule: <${this.recordingProdStack[0].name}>`);throw u.KNOWN_RECORDER_ERROR=!0,u}let r=S3(this.recordingProdStack),i=new ia({idx:e,terminalType:A,label:t===null||t===void 0?void 0:t.LABEL});return r.definition.push(i),XjA}};G(yw,"recordProd");G($jA,"recordOrProd");G(t0A,"getIdxSuffix");G(ux,"assertMethodIdxIsValid");ivt=class{static{G(this,"PerformanceTracer")}initPerformanceTracer(A){if(pr(A,"traceInitPerf")){let e=A.traceInitPerf,t=typeof e==="number";this.traceInitMaxIdent=t?e:1/0,this.traceInitPerf=t?e>0:e}else this.traceInitMaxIdent=0,this.traceInitPerf=jI.traceInitPerf;this.traceInitIndent=-1}TRACE_INIT(A,e){if(this.traceInitPerf===!0){this.traceInitIndent++;let t=Array(this.traceInitIndent+1).join("\t");if(this.traceInitIndent<this.traceInitMaxIdent)console.log(`${t}--> <${A}>`);let{time:r,value:i}=ulA(e),u=r>10?console.warn:console.log;if(this.traceInitIndent<this.traceInitMaxIdent)u(`${t}<-- <${A}> time: ${r}ms`);return this.traceInitIndent--,i}else return e()}};G(AXA,"applyMixins");YH=xx(_4,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(YH);jI=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:Lw,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1}),HH=Object.freeze({recoveryValueFunc:G(()=>{return},"recoveryValueFunc"),resyncEnabled:!0});(function(A){A[A.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",A[A.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",A[A.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",A[A.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",A[A.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",A[A.LEFT_RECURSION=5]="LEFT_RECURSION",A[A.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",A[A.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",A[A.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",A[A.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",A[A.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",A[A.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",A[A.TOO_MANY_ALTS=12]="TOO_MANY_ALTS",A[A.CUSTOM_LOOKAHEAD_VALIDATION=13]="CUSTOM_LOOKAHEAD_VALIDATION"})(Fs||(Fs={}));G(r0A,"EMPTY_ALT");mlA=class A{static{G(this,"Parser")}static performSelfAnalysis(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated.\t\nUse the **instance** method with the same name instead.")}performSelfAnalysis(){this.TRACE_INIT("performSelfAnalysis",()=>{let e;this.selfAnalysisDone=!0;let t=this.className;this.TRACE_INIT("toFastProps",()=>{alA(this)}),this.TRACE_INIT("Grammar Recording",()=>{try{this.enableRecording(),Rr(this.definedRulesNames,(i)=>{let a=this[i].originalGrammarAction,n;this.TRACE_INIT(`${i} Rule`,()=>{n=this.topLevelRuleRecord(i,a)}),this.gastProductionsCache[i]=n})}finally{this.disableRecording()}});let r=[];if(this.TRACE_INIT("Grammar Resolving",()=>{r=SjA({rules:go(this.gastProductionsCache)}),this.definitionErrors=this.definitionErrors.concat(r)}),this.TRACE_INIT("Grammar Validations",()=>{if(qu(r)&&this.skipValidations===!1){let i=LjA({rules:go(this.gastProductionsCache),tokenTypes:go(this.tokensMap),errMsgProvider:D3,grammarName:t}),u=hjA({lookaheadStrategy:this.lookaheadStrategy,rules:go(this.gastProductionsCache),tokenTypes:go(this.tokensMap),grammarName:t});this.definitionErrors=this.definitionErrors.concat(i,u)}}),qu(this.definitionErrors)){if(this.recoveryEnabled)this.TRACE_INIT("computeAllProdsFollows",()=>{let i=bVA(go(this.gastProductionsCache));this.resyncFollows=i});this.TRACE_INIT("ComputeLookaheadFunctions",()=>{var i,u;(u=(i=this.lookaheadStrategy).initialize)===null||u===void 0||u.call(i,{rules:go(this.gastProductionsCache)}),this.preComputeLookaheadFunctions(go(this.gastProductionsCache))})}if(!A.DEFER_DEFINITION_ERRORS_HANDLING&&!qu(this.definitionErrors))throw e=er(this.definitionErrors,(i)=>i.message),Error(`Parser Definition Errors detected:
${e.join(`
-------------------------------
`)}`)})}constructor(e,t){this.definitionErrors=[],this.selfAnalysisDone=!1;let r=this;if(r.initErrorHandler(t),r.initLexerAdapter(),r.initLooksAhead(t),r.initRecognizerEngine(e,t),r.initRecoverable(t),r.initTreeBuilder(t),r.initContentAssist(),r.initGastRecorder(t),r.initPerformanceTracer(t),pr(t,"ignoredIssues"))throw Error(`The <ignoredIssues> IParserConfig property has been deprecated.
Please use the <IGNORE_AMBIGUITIES> flag on the relevant DSL method instead.
See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES
For further details.`);this.skipValidations=pr(t,"skipValidations")?t.skipValidations:jI.skipValidations}};mlA.DEFER_DEFINITION_ERRORS_HANDLING=!1;AXA(mlA,[Pbt,qbt,Vbt,jbt,$bt,Xbt,Avt,evt,rvt,ivt]);uvt=class extends mlA{static{G(this,"EmbeddedActionsParser")}constructor(A,e=jI){let t=E0(e);t.outputCst=!1;super(A,t)}};G(eXA,"arrayMap");tXA=eXA;G(rXA,"listCacheClear");avt=rXA;G(iXA,"eq");uXA=iXA;G(aXA,"assocIndexOf");dJ=aXA,nvt=Array.prototype,ovt=nvt.splice;G(nXA,"listCacheDelete");svt=nXA;G(oXA,"listCacheGet");lvt=oXA;G(sXA,"listCacheHas");gvt=sXA;G(lXA,"listCacheSet");cvt=lXA;G(z3,"ListCache");z3.prototype.clear=avt;z3.prototype.delete=svt;z3.prototype.get=lvt;z3.prototype.has=gvt;z3.prototype.set=cvt;IJ=z3;G(gXA,"stackClear");Cvt=gXA;G(cXA,"stackDelete");Bvt=cXA;G(CXA,"stackGet");Evt=CXA;G(BXA,"stackHas");dvt=BXA,Ivt=typeof global=="object"&&global&&global.Object===Object&&global,EXA=Ivt,hvt=typeof self=="object"&&self&&self.Object===Object&&self,Qvt=EXA||hvt||Function("return this")(),th=Qvt,pvt=th.Symbol,TE=pvt,dXA=Object.prototype,fvt=dXA.hasOwnProperty,mvt=dXA.toString,aF=TE?TE.toStringTag:void 0;G(IXA,"getRawTag");Dvt=IXA,yvt=Object.prototype,wvt=yvt.toString;G(hXA,"objectToString");bvt=hXA,RPA=TE?TE.toStringTag:void 0;G(QXA,"baseGetTag");u6=QXA;G(pXA,"isObject");DlA=pXA;G(fXA,"isFunction");mXA=fXA,Rvt=th["__core-js_shared__"],QnA=Rvt,NPA=function(){var A=/[^.]+$/.exec(QnA&&QnA.keys&&QnA.keys.IE_PROTO||"");return A?"Symbol(src)_1."+A:""}();G(DXA,"isMasked");Nvt=DXA,Gvt=Function.prototype,Uvt=Gvt.toString;G(yXA,"toSource");Z3=yXA,Mvt=/[\\^$.*+?()[\]{}|]/g,Tvt=/^\[object .+?Constructor\]$/,Yvt=Function.prototype,Hvt=Object.prototype,Kvt=Yvt.toString,Jvt=Hvt.hasOwnProperty,Ovt=RegExp("^"+Kvt.call(Jvt).replace(Mvt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");G(wXA,"baseIsNative");Pvt=wXA;G(bXA,"getValue");_vt=bXA;G(vXA,"getNative");a6=vXA,Wvt=a6(th,"Map"),ax=Wvt,qvt=a6(Object,"create"),nx=qvt;G(kXA,"hashClear");zvt=kXA;G(FXA,"hashDelete");Zvt=FXA,jvt=Object.prototype,Xvt=jvt.hasOwnProperty;G(xXA,"hashGet");$vt=xXA,Akt=Object.prototype,ekt=Akt.hasOwnProperty;G(SXA,"hashHas");tkt=SXA;G(LXA,"hashSet");ikt=LXA;G(V3,"Hash");V3.prototype.clear=zvt;V3.prototype.delete=Zvt;V3.prototype.get=$vt;V3.prototype.has=tkt;V3.prototype.set=ikt;GPA=V3;G(RXA,"mapCacheClear");ukt=RXA;G(NXA,"isKeyable");akt=NXA;G(GXA,"getMapData");hJ=GXA;G(UXA,"mapCacheDelete");nkt=UXA;G(MXA,"mapCacheGet");okt=MXA;G(TXA,"mapCacheHas");skt=TXA;G(YXA,"mapCacheSet");lkt=YXA;G(j3,"MapCache");j3.prototype.clear=ukt;j3.prototype.delete=nkt;j3.prototype.get=okt;j3.prototype.has=skt;j3.prototype.set=lkt;QJ=j3;G(HXA,"stackSet");ckt=HXA;G(X3,"Stack");X3.prototype.clear=Cvt;X3.prototype.delete=Bvt;X3.prototype.get=Evt;X3.prototype.has=dvt;X3.prototype.set=ckt;uH=X3;G(KXA,"setCacheAdd");Bkt=KXA;G(JXA,"setCacheHas");Ekt=JXA;G(ox,"SetCache");ox.prototype.add=ox.prototype.push=Bkt;ox.prototype.has=Ekt;OXA=ox;G(PXA,"arraySome");dkt=PXA;G(_XA,"cacheHas");WXA=_XA;G(qXA,"equalArrays");zXA=qXA,Qkt=th.Uint8Array,UPA=Qkt;G(ZXA,"mapToArray");pkt=ZXA;G(VXA,"setToArray");ylA=VXA,MPA=TE?TE.prototype:void 0,pnA=MPA?MPA.valueOf:void 0;G(jXA,"equalByTag");Nkt=jXA;G(XXA,"arrayPush");$XA=XXA,Gkt=Array.isArray,xs=Gkt;G(A$A,"baseGetAllKeys");Ukt=A$A;G(e$A,"arrayFilter");t$A=e$A;G(r$A,"stubArray");Mkt=r$A,Tkt=Object.prototype,Ykt=Tkt.propertyIsEnumerable,TPA=Object.getOwnPropertySymbols,Hkt=!TPA?Mkt:function(A){if(A==null)return[];return A=Object(A),t$A(TPA(A),function(e){return Ykt.call(A,e)})},Kkt=Hkt;G(i$A,"baseTimes");Jkt=i$A;G(u$A,"isObjectLike");Zw=u$A;G(a$A,"baseIsArguments");YPA=a$A,n$A=Object.prototype,Pkt=n$A.hasOwnProperty,_kt=n$A.propertyIsEnumerable,Wkt=YPA(function(){return arguments}())?YPA:function(A){return Zw(A)&&Pkt.call(A,"callee")&&!_kt.call(A,"callee")},pJ=Wkt;G(o$A,"stubFalse");qkt=o$A,s$A=typeof J0=="object"&&J0&&!J0.nodeType&&J0,HPA=s$A&&typeof Hn=="object"&&Hn&&!Hn.nodeType&&Hn,zkt=HPA&&HPA.exports===s$A,KPA=zkt?th.Buffer:void 0,Zkt=KPA?KPA.isBuffer:void 0,Vkt=Zkt||qkt,KH=Vkt,Xkt=/^(?:0|[1-9]\d*)$/;G(l$A,"isIndex");g$A=l$A;G(c$A,"isLength");wlA=c$A,ra={};ra[EFt]=ra[dFt]=ra[IFt]=ra[hFt]=ra[QFt]=ra[pFt]=ra[fFt]=ra[mFt]=ra[DFt]=!0;ra[AFt]=ra[eFt]=ra[CFt]=ra[tFt]=ra[BFt]=ra[rFt]=ra[iFt]=ra[uFt]=ra[aFt]=ra[nFt]=ra[oFt]=ra[sFt]=ra[lFt]=ra[gFt]=ra[cFt]=!1;G(C$A,"baseIsTypedArray");yFt=C$A;G(B$A,"baseUnary");wFt=B$A,E$A=typeof J0=="object"&&J0&&!J0.nodeType&&J0,TF=E$A&&typeof Hn=="object"&&Hn&&!Hn.nodeType&&Hn,bFt=TF&&TF.exports===E$A,fnA=bFt&&EXA.process,vFt=function(){try{var A=TF&&TF.require&&TF.require("util").types;if(A)return A;return fnA&&fnA.binding&&fnA.binding("util")}catch(e){}}(),JPA=vFt,OPA=JPA&&JPA.isTypedArray,kFt=OPA?wFt(OPA):yFt,blA=kFt,FFt=Object.prototype,xFt=FFt.hasOwnProperty;G(d$A,"arrayLikeKeys");SFt=d$A,LFt=Object.prototype;G(I$A,"isPrototype");h$A=I$A;G(Q$A,"overArg");RFt=Q$A,NFt=RFt(Object.keys,Object),GFt=NFt,UFt=Object.prototype,MFt=UFt.hasOwnProperty;G(p$A,"baseKeys");f$A=p$A;G(m$A,"isArrayLike");fJ=m$A;G(D$A,"keys");vlA=D$A;G(y$A,"getAllKeys");PPA=y$A,YFt=Object.prototype,HFt=YFt.hasOwnProperty;G(w$A,"equalObjects");KFt=w$A,JFt=a6(th,"DataView"),i0A=JFt,OFt=a6(th,"Promise"),u0A=OFt,PFt=a6(th,"Set"),Uw=PFt,_Ft=a6(th,"WeakMap"),a0A=_Ft,qFt=Z3(i0A),zFt=Z3(ax),ZFt=Z3(u0A),VFt=Z3(Uw),jFt=Z3(a0A),u3=u6;if(i0A&&u3(new i0A(new ArrayBuffer(1)))!=ZPA||ax&&u3(new ax)!=_PA||u0A&&u3(u0A.resolve())!=WPA||Uw&&u3(new Uw)!=qPA||a0A&&u3(new a0A)!=zPA)u3=G(function(A){var e=u6(A),t=e==WFt?A.constructor:void 0,r=t?Z3(t):"";if(r)switch(r){case qFt:return ZPA;case zFt:return _PA;case ZFt:return WPA;case VFt:return qPA;case jFt:return zPA}return e},"getTag");n0A=u3,$Ft=Object.prototype,XPA=$Ft.hasOwnProperty;G(b$A,"baseIsEqualDeep");Axt=b$A;G(klA,"baseIsEqual");v$A=klA;G(k$A,"baseIsMatch");rxt=k$A;G(F$A,"isStrictComparable");x$A=F$A;G(S$A,"getMatchData");ixt=S$A;G(L$A,"matchesStrictComparable");R$A=L$A;G(N$A,"baseMatches");uxt=N$A;G(G$A,"isSymbol");mJ=G$A,nxt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,oxt=/^\w*$/;G(U$A,"isKey");FlA=U$A;G(DJ,"memoize");DJ.Cache=QJ;lxt=DJ;G(M$A,"memoizeCapped");cxt=M$A,Cxt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Bxt=/\\(\\)?/g,Ext=cxt(function(A){var e=[];if(A.charCodeAt(0)===46)e.push("");return A.replace(Cxt,function(t,r,i,u){e.push(i?u.replace(Bxt,"$1"):r||t)}),e}),dxt=Ext,$PA=TE?TE.prototype:void 0,A_A=$PA?$PA.toString:void 0;G(xlA,"baseToString");hxt=xlA;G(T$A,"toString");Qxt=T$A;G(Y$A,"castPath");H$A=Y$A;G(K$A,"toKey");yJ=K$A;G(J$A,"baseGet");O$A=J$A;G(P$A,"get");fxt=P$A;G(_$A,"baseHasIn");mxt=_$A;G(W$A,"hasPath");Dxt=W$A;G(q$A,"hasIn");yxt=q$A;G(z$A,"baseMatchesProperty");vxt=z$A;G(Z$A,"identity");SlA=Z$A;G(V$A,"baseProperty");kxt=V$A;G(j$A,"basePropertyDeep");Fxt=j$A;G(X$A,"property");xxt=X$A;G($$A,"baseIteratee");wJ=$$A;G(AAe,"createBaseFor");Sxt=AAe,Lxt=Sxt(),Rxt=Lxt;G(eAe,"baseForOwn");Nxt=eAe;G(tAe,"createBaseEach");Gxt=tAe,Uxt=Gxt(Nxt),bJ=Uxt;G(rAe,"baseMap");Mxt=rAe;G(iAe,"map");OI=iAe;G(uAe,"baseFilter");Txt=uAe;G(aAe,"filter");Yxt=aAe;G(R3,"buildATNKey");LlA=class{static{G(this,"AbstractTransition")}constructor(A){this.target=A}isEpsilon(){return!1}},RlA=class extends LlA{static{G(this,"AtomTransition")}constructor(A,e){super(A);this.tokenType=e}},lAe=class extends LlA{static{G(this,"EpsilonTransition")}constructor(A){super(A)}isEpsilon(){return!0}},NlA=class extends LlA{static{G(this,"RuleTransition")}constructor(A,e,t){super(A);this.rule=e,this.followState=t}isEpsilon(){return!0}};G(gAe,"createATN");G(cAe,"createRuleStartAndStopATNStates");G(GlA,"atom");G(CAe,"repetition");G(BAe,"repetitionSep");G(EAe,"repetitionMandatory");G(dAe,"repetitionMandatorySep");G(IAe,"alternation");G(hAe,"option");G(X4,"block");G(UlA,"plus");G(MlA,"star");G(QAe,"optional");G(rh,"defineDecisionState");G($3,"makeAlts");G(pAe,"getProdType");G(fAe,"makeBlock");G(vJ,"tokenRef");G(mAe,"ruleRef");G(DAe,"buildRuleHandle");G(dn,"epsilon");G(co,"newState");G(kJ,"addTransition");G(yAe,"removeState");JH={},o0A=class{static{G(this,"ATNConfigSet")}constructor(){this.map={},this.configs=[]}get size(){return this.configs.length}finalize(){this.map={}}add(A){let e=TlA(A);if(!(e in this.map))this.map[e]=this.configs.length,this.configs.push(A)}get elements(){return this.configs}get alts(){return OI(this.configs,(A)=>A.alt)}get key(){let A="";for(let e in this.map)A+=e+":";return A}};G(TlA,"getATNConfigKey");G(wAe,"baseExtremum");_xt=wAe;G(bAe,"baseLt");Wxt=bAe;G(vAe,"min");qxt=vAe,e_A=TE?TE.isConcatSpreadable:void 0;G(kAe,"isFlattenable");zxt=kAe;G(YlA,"baseFlatten");FAe=YlA;G(xAe,"flatMap");Zxt=xAe;G(SAe,"baseFindIndex");Vxt=SAe;G(LAe,"baseIsNaN");jxt=LAe;G(RAe,"strictIndexOf");Xxt=RAe;G(NAe,"baseIndexOf");$xt=NAe;G(GAe,"arrayIncludes");A7t=GAe;G(UAe,"arrayIncludesWith");e7t=UAe;G(MAe,"noop");t7t=MAe,i7t=!(Uw&&1/ylA(new Uw([,-0]))[1]==r7t)?t7t:function(A){return new Uw(A)},u7t=i7t;G(TAe,"baseUniq");n7t=TAe;G(YAe,"uniqBy");o7t=YAe;G(HAe,"flatten");s7t=HAe;G(KAe,"arrayEach");l7t=KAe;G(JAe,"castFunction");g7t=JAe;G(OAe,"forEach");mnA=OAe,B7t=Object.prototype,E7t=B7t.hasOwnProperty;G(PAe,"isEmpty");d7t=PAe;G(_Ae,"arrayReduce");I7t=_Ae;G(WAe,"baseReduce");h7t=WAe;G(qAe,"reduce");t_A=qAe;G(zAe,"createDFACache");ZAe=class{static{G(this,"PredicateSet")}constructor(){this.predicates=[]}is(A){return A>=this.predicates.length||this.predicates[A]}set(A,e){this.predicates[A]=e}toString(){let A="",e=this.predicates.length;for(let t=0;t<e;t++)A+=this.predicates[t]===!0?"1":"0";return A}},r_A=new ZAe,Q7t=class extends plA{static{G(this,"LLStarLookaheadStrategy")}constructor(A){var e;super();this.logging=(e=A===null||A===void 0?void 0:A.logging)!==null&&e!==void 0?e:(t)=>console.log(t)}initialize(A){this.atn=gAe(A.rules),this.dfas=VAe(this.atn)}validateAmbiguousAlternationAlternatives(){return[]}validateEmptyOrAlternatives(){return[]}buildLookaheadForAlternation(A){let{prodOccurrence:e,rule:t,hasPredicates:r,dynamicTokensEnabled:i}=A,u=this.dfas,a=this.logging,n=R3(t,"Alternation",e),s=this.atn.decisionMap[n].decision,l=OI(zoA({maxLookahead:1,occurrence:e,prodType:"Alternation",rule:t}),(g)=>OI(g,(C)=>C[0]));if(s0A(l,!1)&&!i){let g=t_A(l,(C,B,E)=>(mnA(B,(d)=>{if(d)C[d.tokenTypeIdx]=E,mnA(d.categoryMatches,(I)=>{C[I]=E})}),C),{});if(r)return function(C){var B;let E=this.LA(1),d=g[E.tokenTypeIdx];if(C!==void 0&&d!==void 0){let I=(B=C[d])===null||B===void 0?void 0:B.GATE;if(I!==void 0&&I.call(this)===!1)return}return d};else return function(){let C=this.LA(1);return g[C.tokenTypeIdx]}}else if(r)return function(g){let C=new ZAe,B=g===void 0?0:g.length;for(let d=0;d<B;d++){let I=g===null||g===void 0?void 0:g[d].GATE;C.set(d,I===void 0||I.call(this))}let E=aH.call(this,u,s,C,a);return typeof E==="number"?E:void 0};else return function(){let g=aH.call(this,u,s,r_A,a);return typeof g==="number"?g:void 0}}buildLookaheadForOptional(A){let{prodOccurrence:e,rule:t,prodType:r,dynamicTokensEnabled:i}=A,u=this.dfas,a=this.logging,n=R3(t,r,e),s=this.atn.decisionMap[n].decision,l=OI(zoA({maxLookahead:1,occurrence:e,prodType:r,rule:t}),(g)=>OI(g,(C)=>C[0]));if(s0A(l)&&l[0][0]&&!i){let g=l[0],C=s7t(g);if(C.length===1&&d7t(C[0].categoryMatches)){let E=C[0].tokenTypeIdx;return function(){return this.LA(1).tokenTypeIdx===E}}else{let B=t_A(C,(E,d)=>{if(d!==void 0)E[d.tokenTypeIdx]=!0,mnA(d.categoryMatches,(I)=>{E[I]=!0});return E},{});return function(){let E=this.LA(1);return B[E.tokenTypeIdx]===!0}}}return function(){let g=aH.call(this,u,s,r_A,a);return typeof g==="object"?!1:g===0}}};G(s0A,"isLL1Sequence");G(VAe,"initATNSimulator");G(aH,"adaptivePredict");G(jAe,"performLookahead");G(XAe,"computeLookaheadTarget");G($Ae,"reportLookaheadAmbiguity");G(Aee,"buildAmbiguityError");G(eee,"getProductionDslName");G(tee,"buildAdaptivePredictError");G(ree,"getExistingTargetState");G(iee,"computeReachSet");G(uee,"getReachableTarget");G(aee,"getUniqueAlt");G(HlA,"newDFAState");G(l0A,"addDFAEdge");G(KlA,"addDFAState");G(nee,"computeStartState");G(sx,"closure");G(oee,"getEpsilonTarget");G(see,"hasConfigInRuleStopState");G(lee,"allConfigsInRuleStopStates");G(gee,"hasConflictTerminatingPrediction");G(cee,"getConflictingAltSets");G(Cee,"hasConflictingAltSet");G(Bee,"hasStateAssociatedWithOneAlt");Cx();Eee=class{static{G(this,"CstNodeBuilder")}constructor(){this.nodeStack=[]}get current(){return this.nodeStack[this.nodeStack.length-1]??this.rootNode}buildRootNode(A){return this.rootNode=new OlA(A),this.rootNode.root=this.rootNode,this.nodeStack=[this.rootNode],this.rootNode}buildCompositeNode(A){let e=new FJ;return e.grammarSource=A,e.root=this.rootNode,this.current.content.push(e),this.nodeStack.push(e),e}buildLeafNode(A,e){let t=new OH(A.startOffset,A.image.length,VF(A),A.tokenType,!e);return t.grammarSource=e,t.root=this.rootNode,this.current.content.push(t),t}removeNode(A){let e=A.container;if(e){let t=e.content.indexOf(A);if(t>=0)e.content.splice(t,1)}}addHiddenNodes(A){let e=[];for(let i of A){let u=new OH(i.startOffset,i.image.length,VF(i),i.tokenType,!0);u.root=this.rootNode,e.push(u)}let t=this.current,r=!1;if(t.content.length>0){t.content.push(...e);return}while(t.container){let i=t.container.content.indexOf(t);if(i>0){t.container.content.splice(i,0,...e),r=!0;break}t=t.container}if(!r)this.rootNode.content.unshift(...e)}construct(A){let e=this.current;if(typeof A.$type==="string"&&!A.$infixName)this.current.astNode=A;A.$cstNode=e;let t=this.nodeStack.pop();if(t?.content.length===0)this.removeNode(t)}},JlA=class{static{G(this,"AbstractCstNode")}get hidden(){return!1}get astNode(){let A=typeof this._astNode?.$type==="string"?this._astNode:this.container?.astNode;if(!A)throw Error("This node has no associated AST element");return A}set astNode(A){this._astNode=A}get text(){return this.root.fullText.substring(this.offset,this.end)}},OH=class extends JlA{static{G(this,"LeafCstNodeImpl")}get offset(){return this._offset}get length(){return this._length}get end(){return this._offset+this._length}get hidden(){return this._hidden}get tokenType(){return this._tokenType}get range(){return this._range}constructor(A,e,t,r,i=!1){super();this._hidden=i,this._offset=A,this._tokenType=r,this._length=e,this._range=t}},FJ=class extends JlA{static{G(this,"CompositeCstNodeImpl")}constructor(){super(...arguments);this.content=new p7t(this)}get offset(){return this.firstNonHiddenNode?.offset??0}get length(){return this.end-this.offset}get end(){return this.lastNonHiddenNode?.end??0}get range(){let A=this.firstNonHiddenNode,e=this.lastNonHiddenNode;if(A&&e){if(this._rangeCache===void 0){let{range:t}=A,{range:r}=e;this._rangeCache={start:t.start,end:r.end.line<t.start.line?t.start:r.end}}return this._rangeCache}else return{start:su.create(0,0),end:su.create(0,0)}}get firstNonHiddenNode(){for(let A of this.content)if(!A.hidden)return A;return this.content[0]}get lastNonHiddenNode(){for(let A=this.content.length-1;A>=0;A--){let e=this.content[A];if(!e.hidden)return e}return this.content[this.content.length-1]}},p7t=class A extends Array{static{G(this,"CstNodeContainer")}constructor(e){super();this.parent=e,Object.setPrototypeOf(this,A.prototype)}push(...e){return this.addParents(e),super.push(...e)}unshift(...e){return this.addParents(e),super.unshift(...e)}splice(e,t,...r){return this.addParents(r),super.splice(e,t,...r)}addParents(e){for(let t of e)t.container=this.parent}},OlA=class extends FJ{static{G(this,"RootCstNodeImpl")}get text(){return this._text.substring(this.offset,this.end)}get fullText(){return this._text}constructor(A){super();this._text="",this._text=A??""}},PH=Symbol("Datatype");G(nH,"isDataTypeNode");dee=G((A)=>A.endsWith(i_A)?A:A+i_A,"withRuleSuffix"),PlA=class{static{G(this,"AbstractLangiumParser")}constructor(A){this._unorderedGroups=new Map,this.allRules=new Map,this.lexer=A.parser.Lexer;let e=this.lexer.definition,t=A.LanguageMetaData.mode==="production";if(A.shared.profilers.LangiumProfiler?.isActive("parsing"))this.wrapper=new m7t(e,{...A.parser.ParserConfig,skipValidations:t,errorMessageProvider:A.parser.ParserErrorMessageProvider},A.shared.profilers.LangiumProfiler.createTask("parsing",A.LanguageMetaData.languageId));else this.wrapper=new pee(e,{...A.parser.ParserConfig,skipValidations:t,errorMessageProvider:A.parser.ParserErrorMessageProvider})}alternatives(A,e){this.wrapper.wrapOr(A,e)}optional(A,e){this.wrapper.wrapOption(A,e)}many(A,e){this.wrapper.wrapMany(A,e)}atLeastOne(A,e){this.wrapper.wrapAtLeastOne(A,e)}getRule(A){return this.allRules.get(A)}isRecording(){return this.wrapper.IS_RECORDING}get unorderedGroups(){return this._unorderedGroups}getRuleStack(){return this.wrapper.RULE_STACK}finalize(){this.wrapper.wrapSelfAnalysis()}},Iee=class extends PlA{static{G(this,"LangiumParser")}get current(){return this.stack[this.stack.length-1]}constructor(A){super(A);this.nodeBuilder=new Eee,this.stack=[],this.assignmentMap=new Map,this.operatorPrecedence=new Map,this.linker=A.references.Linker,this.converter=A.parser.ValueConverter,this.astReflection=A.shared.AstReflection}rule(A,e){let t=this.computeRuleType(A),r=void 0;if(Pw(A))r=A.name,this.registerPrecedenceMap(A);let i=this.wrapper.DEFINE_RULE(dee(A.name),this.startImplementation(t,r,e).bind(this));if(this.allRules.set(A.name,i),vs(A)&&A.entry)this.mainRule=i;return i}registerPrecedenceMap(A){let e=A.name,t=new Map;for(let r=0;r<A.operators.precedences.length;r++){let i=A.operators.precedences[r];for(let u of i.operators)t.set(u.value,{precedence:r,rightAssoc:i.associativity==="right"})}this.operatorPrecedence.set(e,t)}computeRuleType(A){if(Pw(A))return x3(A);else if(A.fragment)return;else if(Ix(A))return PH;else return x3(A)}parse(A,e={}){this.nodeBuilder.buildRootNode(A);let t=this.lexerResult=this.lexer.tokenize(A);this.wrapper.input=t.tokens;let r=e.rule?this.allRules.get(e.rule):this.mainRule;if(!r)throw Error(e.rule?`No rule found with name '${e.rule}'`:"No main rule available.");let i=this.doParse(r);return this.nodeBuilder.addHiddenNodes(t.hidden),this.unorderedGroups.clear(),this.lexerResult=void 0,Jw(i,{deep:!0}),{value:i,lexerErrors:t.errors,lexerReport:t.report,parserErrors:this.wrapper.errors}}doParse(A){let e=this.wrapper.rule(A);if(this.stack.length>0)e=this.construct();if(e===void 0)throw Error("No result from parser");else if(this.stack.length>0)throw Error("Parser stack is not empty after parsing");return e}startImplementation(A,e,t){return(r)=>{let i=!this.isRecording()&&A!==void 0;if(i){let u={$type:A};if(this.stack.push(u),A===PH)u.value="";else if(e!==void 0)u.$infixName=e}return t(r),i?this.construct():void 0}}extractHiddenTokens(A){let e=this.lexerResult.hidden;if(!e.length)return[];let t=A.startOffset;for(let r=0;r<e.length;r++)if(e[r].startOffset>t)return e.splice(0,r);return e.splice(0,e.length)}consume(A,e,t){let r=this.wrapper.wrapConsume(A,e);if(!this.isRecording()&&this.isValidToken(r)){let i=this.extractHiddenTokens(r);this.nodeBuilder.addHiddenNodes(i);let u=this.nodeBuilder.buildLeafNode(r,t),{assignment:a,crossRef:n}=this.getAssignment(t),o=this.current;if(a){let s=WI(t)?r.image:this.converter.convert(r.image,u);this.assign(a.operator,a.feature,s,u,n)}else if(nH(o)){let s=r.image;if(!WI(t))s=this.converter.convert(s,u).toString();o.value+=s}}}isValidToken(A){return!A.isInsertedInRecovery&&!isNaN(A.startOffset)&&typeof A.endOffset==="number"&&!isNaN(A.endOffset)}subrule(A,e,t,r,i){let u;if(!this.isRecording()&&!t)u=this.nodeBuilder.buildCompositeNode(r);let a;try{a=this.wrapper.wrapSubrule(A,e,i)}finally{if(!this.isRecording()){if(a===void 0&&!t)a=this.construct();if(a!==void 0&&u&&u.length>0)this.performSubruleAssignment(a,r,u)}}}performSubruleAssignment(A,e,t){let{assignment:r,crossRef:i}=this.getAssignment(e);if(r)this.assign(r.operator,r.feature,A,t,i);else if(!r){let u=this.current;if(nH(u))u.value+=A.toString();else if(typeof A==="object"&&A){let n=this.assignWithoutOverride(A,u);this.stack.pop(),this.stack.push(n)}}}action(A,e){if(!this.isRecording()){let t=this.current;if(e.feature&&e.operator){t=this.construct(),this.nodeBuilder.removeNode(t.$cstNode),this.nodeBuilder.buildCompositeNode(e).content.push(t.$cstNode);let i={$type:A};this.stack.push(i),this.assign(e.operator,e.feature,t,t.$cstNode)}else t.$type=A}}construct(){if(this.isRecording())return;let A=this.stack.pop();if(this.nodeBuilder.construct(A),"$infixName"in A)return this.constructInfix(A,this.operatorPrecedence.get(A.$infixName));else if(nH(A))return this.converter.convert(A.value,A.$cstNode);else J0A(this.astReflection,A);return A}constructInfix(A,e){let t=A.parts;if(!Array.isArray(t)||t.length===0)return;let r=A.operators;if(!Array.isArray(r)||t.length<2)return t[0];let i=0,u=-1;for(let E=0;E<r.length;E++){let d=r[E],I=e.get(d)??{precedence:1/0,rightAssoc:!1};if(I.precedence>u)u=I.precedence,i=E;else if(I.precedence===u){if(!I.rightAssoc)i=E}}let a=r.slice(0,i),n=r.slice(i+1),o=t.slice(0,i+1),s=t.slice(i+1),l={$infixName:A.$infixName,$type:A.$type,$cstNode:A.$cstNode,parts:o,operators:a},g={$infixName:A.$infixName,$type:A.$type,$cstNode:A.$cstNode,parts:s,operators:n},C=this.constructInfix(l,e),B=this.constructInfix(g,e);return{$type:A.$type,$cstNode:A.$cstNode,left:C,operator:r[i],right:B}}getAssignment(A){if(!this.assignmentMap.has(A)){let e=U3(A,_I);this.assignmentMap.set(A,{assignment:e,crossRef:e&&T3(e.terminal)?e.terminal.isMulti?"multi":"single":void 0})}return this.assignmentMap.get(A)}assign(A,e,t,r,i){let u=this.current,a;if(i==="single"&&typeof t==="string")a=this.linker.buildReference(u,e,r,t);else if(i==="multi"&&typeof t==="string")a=this.linker.buildMultiReference(u,e,r,t);else a=t;switch(A){case"=":{u[e]=a;break}case"?=":{u[e]=!0;break}case"+=":{if(!Array.isArray(u[e]))u[e]=[];u[e].push(a)}}}assignWithoutOverride(A,e){for(let[r,i]of Object.entries(e)){let u=A[r];if(u===void 0)A[r]=i;else if(Array.isArray(u)&&Array.isArray(i))i.push(...u),A[r]=i}let t=A.$cstNode;if(t)t.astNode=void 0,A.$cstNode=void 0;return A}get definitionErrors(){return this.wrapper.definitionErrors}},hee=class{static{G(this,"AbstractParserErrorMessageProvider")}buildMismatchTokenMessage(A){return Lw.buildMismatchTokenMessage(A)}buildNotAllInputParsedMessage(A){return Lw.buildNotAllInputParsedMessage(A)}buildNoViableAltMessage(A){return Lw.buildNoViableAltMessage(A)}buildEarlyExitMessage(A){return Lw.buildEarlyExitMessage(A)}},_lA=class extends hee{static{G(this,"LangiumParserErrorMessageProvider")}buildMismatchTokenMessage({expected:A,actual:e}){return`Expecting ${A.LABEL?"`"+A.LABEL+"`":A.name.endsWith(":KW")?`keyword '${A.name.substring(0,A.name.length-3)}'`:`token of type '${A.name}'`} but found \`${e.image}\`.`}buildNotAllInputParsedMessage({firstRedundant:A}){return`Expecting end of file but found \`${A.image}\`.`}},Qee=class extends PlA{static{G(this,"LangiumCompletionParser")}constructor(){super(...arguments);this.tokens=[],this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}action(){}construct(){return}parse(A){this.resetState();let e=this.lexer.tokenize(A,{mode:"partial"});return this.tokens=e.tokens,this.wrapper.input=[...this.tokens],this.mainRule.call(this.wrapper,{}),this.unorderedGroups.clear(),{tokens:this.tokens,elementStack:[...this.lastElementStack],tokenIndex:this.nextTokenIndex}}rule(A,e){let t=this.wrapper.DEFINE_RULE(dee(A.name),this.startImplementation(e).bind(this));if(this.allRules.set(A.name,t),A.entry)this.mainRule=t;return t}resetState(){this.elementStack=[],this.lastElementStack=[],this.nextTokenIndex=0,this.stackSize=0}startImplementation(A){return(e)=>{let t=this.keepStackSize();try{A(e)}finally{this.resetStackSize(t)}}}removeUnexpectedElements(){this.elementStack.splice(this.stackSize)}keepStackSize(){let A=this.elementStack.length;return this.stackSize=A,A}resetStackSize(A){this.removeUnexpectedElements(),this.stackSize=A}consume(A,e,t){if(this.wrapper.wrapConsume(A,e),!this.isRecording())this.lastElementStack=[...this.elementStack,t],this.nextTokenIndex=this.currIdx+1}subrule(A,e,t,r,i){this.before(r),this.wrapper.wrapSubrule(A,e,i),this.after(r)}before(A){if(!this.isRecording())this.elementStack.push(A)}after(A){if(!this.isRecording()){let e=this.elementStack.lastIndexOf(A);if(e>=0)this.elementStack.splice(e)}}get currIdx(){return this.wrapper.currIdx}},f7t={recoveryEnabled:!0,nodeLocationTracking:"full",skipValidations:!0,errorMessageProvider:new _lA},pee=class extends uvt{static{G(this,"ChevrotainWrapper")}constructor(A,e){let t=e&&"maxLookahead"in e;super(A,{...f7t,lookaheadStrategy:t?new plA({maxLookahead:e.maxLookahead}):new Q7t({logging:e.skipValidations?()=>{}:void 0}),...e})}get IS_RECORDING(){return this.RECORDING_PHASE}DEFINE_RULE(A,e,t){return this.RULE(A,e,t)}wrapSelfAnalysis(){this.performSelfAnalysis()}wrapConsume(A,e){return this.consume(A,e,void 0)}wrapSubrule(A,e,t){return this.subrule(A,e,{ARGS:[t]})}wrapOr(A,e){this.or(A,e)}wrapOption(A,e){this.option(A,e)}wrapMany(A,e){this.many(A,e)}wrapAtLeastOne(A,e){this.atLeastOne(A,e)}rule(A){return A.call(this,{})}},m7t=class extends pee{static{G(this,"ProfilerWrapper")}constructor(A,e,t){super(A,e);this.task=t}rule(A){this.task.start(),this.task.startSubTask(this.ruleName(A));try{return super.rule(A)}finally{this.task.stopSubTask(this.ruleName(A)),this.task.stop()}}ruleName(A){return A.ruleName}subrule(A,e,t){this.task.startSubTask(this.ruleName(e));try{return super.subrule(A,e,t)}finally{this.task.stopSubTask(this.ruleName(e))}}};G(xJ,"createParser");G(fee,"buildRules");G(mee,"buildInfixRule");G(q4,"buildElement");G(Dee,"buildAction");G(yee,"buildRuleCall");G(wee,"buildRuleCallPredicate");G(vC,"buildPredicate");G(bee,"buildAlternatives");G(vee,"buildUnorderedGroup");G(kee,"buildGroup");G(lx,"getGuardCondition");G(WlA,"buildCrossReference");G(Fee,"buildKeyword");G(qlA,"wrap");G(SJ,"getRule");G(xee,"getRuleName");G(_H,"getToken");G(zlA,"createCompletionParser");G(ZlA,"createLangiumParser");G(VlA,"prepareLangiumParser");LJ=class{static{G(this,"DefaultTokenBuilder")}constructor(){this.diagnostics=[]}buildTokens(A,e){let t=Qu(_K(A,!1)),r=this.buildTerminalTokens(t),i=this.buildKeywordTokens(t,r,e);return i.push(...r),i}flushLexingReport(A){return{diagnostics:this.popDiagnostics()}}popDiagnostics(){let A=[...this.diagnostics];return this.diagnostics=[],A}buildTerminalTokens(A){return A.filter(Ic).filter((e)=>!e.fragment).map((e)=>this.buildTerminalToken(e)).toArray()}buildTerminalToken(A){let e=Qx(A),t=this.requiresCustomPattern(e)?this.regexPatternFunction(e):e,r={name:A.name,PATTERN:t};if(typeof t==="function")r.LINE_BREAKS=!0;if(A.hidden)r.GROUP=PK(e)?bs.SKIPPED:"hidden";return r}requiresCustomPattern(A){if(A.flags.includes("u")||A.flags.includes("s"))return!0;else return!1}regexPatternFunction(A){let e=new RegExp(A,A.flags+"y");return(t,r)=>(e.lastIndex=r,e.exec(t))}buildKeywordTokens(A,e,t){return A.filter(M3).flatMap((r)=>Ah(r).filter(WI)).distinct((r)=>r.value).toArray().sort((r,i)=>i.value.length-r.value.length).map((r)=>this.buildKeywordToken(r,e,Boolean(t?.caseInsensitive)))}buildKeywordToken(A,e,t){let r=this.buildKeywordPattern(A,t),i={name:A.value,PATTERN:r,LONGER_ALT:this.findLongerAlt(A,e)};if(typeof r==="function")i.LINE_BREAKS=!0;return i}buildKeywordPattern(A,e){return e?new RegExp($w(A.value),"i"):A.value}findLongerAlt(A,e){return e.reduce((t,r)=>{let i=r?.PATTERN;if(i?.source&&fsA("^"+i.source+"$",A.value))t.push(r);return t},[])}},jlA=class{static{G(this,"DefaultValueConverter")}convert(A,e){let t=e.grammarSource;if(T3(t))t=bsA(t);if(qI(t)){let r=t.rule.ref;if(!r)throw Error("This cst node was not parsed by a rule.");return this.runConverter(r,A,e)}return A}runConverter(A,e,t){switch(A.name.toUpperCase()){case"INT":return LE.convertInt(e);case"STRING":return LE.convertString(e);case"ID":return LE.convertID(e)}switch(GsA(A)?.toLowerCase()){case"number":return LE.convertNumber(e);case"boolean":return LE.convertBoolean(e);case"bigint":return LE.convertBigint(e);case"date":return LE.convertDate(e);default:return e}}};(function(A){function e(s){let l="";for(let g=1;g<s.length-1;g++){let C=s.charAt(g);if(C==="\\"){let B=s.charAt(++g);l+=t(B)}else l+=C}return l}G(e,"convertString"),A.convertString=e;function t(s){switch(s){case"b":return"\b";case"f":return"\f";case"n":return`
`;case"r":return"\r";case"t":return"\t";case"v":return"\v";case"0":return"\x00";default:return s}}G(t,"convertEscapeCharacter");function r(s){if(s.charAt(0)==="^")return s.substring(1);else return s}G(r,"convertID"),A.convertID=r;function i(s){return parseInt(s)}G(i,"convertInt"),A.convertInt=i;function u(s){return BigInt(s)}G(u,"convertBigint"),A.convertBigint=u;function a(s){return new Date(s)}G(a,"convertDate"),A.convertDate=a;function n(s){return Number(s)}G(n,"convertNumber"),A.convertNumber=n;function o(s){return s.toLowerCase()==="true"}G(o,"convertBoolean"),A.convertBoolean=o})(LE||(LE={}));Wu={};SK(Wu,G0A(RK(),1));G(RJ,"delayNextTick");G(NJ,"startCancelableOperation");G(XlA,"setInterruptionPeriod");GE=Symbol("OperationCancelled");G(Am,"isOperationCancelled");G(Ko,"interruptAndCheck");XI=class{static{G(this,"Deferred")}constructor(){this.promise=new Promise((A,e)=>{this.resolve=(t)=>(A(t),this),this.reject=(t)=>(e(t),this)})}},u_A=class A{static{G(this,"FullTextDocument")}constructor(e,t,r,i){this._uri=e,this._languageId=t,this._version=r,this._content=i,this._lineOffsets=void 0}get uri(){return this._uri}get languageId(){return this._languageId}get version(){return this._version}getText(e){if(e){let t=this.offsetAt(e.start),r=this.offsetAt(e.end);return this._content.substring(t,r)}return this._content}update(e,t){for(let r of e)if(A.isIncremental(r)){let i=AgA(r.range),u=this.offsetAt(i.start),a=this.offsetAt(i.end);this._content=this._content.substring(0,u)+r.text+this._content.substring(a,this._content.length);let n=Math.max(i.start.line,0),o=Math.max(i.end.line,0),s=this._lineOffsets,l=g0A(r.text,!1,u);if(o-n===l.length)for(let C=0,B=l.length;C<B;C++)s[C+n+1]=l[C];else if(l.length<1e4)s.splice(n+1,o-n,...l);else this._lineOffsets=s=s.slice(0,n+1).concat(l,s.slice(o+1));let g=r.text.length-(a-u);if(g!==0)for(let C=n+1+l.length,B=s.length;C<B;C++)s[C]=s[C]+g}else if(A.isFull(r))this._content=r.text,this._lineOffsets=void 0;else throw Error("Unknown change event received");this._version=t}getLineOffsets(){if(this._lineOffsets===void 0)this._lineOffsets=g0A(this._content,!0);return this._lineOffsets}positionAt(e){e=Math.max(Math.min(e,this._content.length),0);let t=this.getLineOffsets(),r=0,i=t.length;if(i===0)return{line:0,character:e};while(r<i){let a=Math.floor((r+i)/2);if(t[a]>e)i=a;else r=a+1}let u=r-1;return e=this.ensureBeforeEOL(e,t[u]),{line:u,character:e-t[u]}}offsetAt(e){let t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;else if(e.line<0)return 0;let r=t[e.line];if(e.character<=0)return r;let i=e.line+1<t.length?t[e.line+1]:this._content.length,u=Math.min(r+e.character,i);return this.ensureBeforeEOL(u,r)}ensureBeforeEOL(e,t){while(e>t&&$lA(this._content.charCodeAt(e-1)))e--;return e}get lineCount(){return this.getLineOffsets().length}static isIncremental(e){let t=e;return t!==void 0&&t!==null&&typeof t.text==="string"&&t.range!==void 0&&(t.rangeLength===void 0||typeof t.rangeLength==="number")}static isFull(e){let t=e;return t!==void 0&&t!==null&&typeof t.text==="string"&&t.range===void 0&&t.rangeLength===void 0}};(function(A){function e(i,u,a,n){return new u_A(i,u,a,n)}G(e,"create"),A.create=e;function t(i,u,a){if(i instanceof u_A)return i.update(u,a),i;else throw Error("TextDocument.update: document must be created by TextDocument.create")}G(t,"update"),A.update=t;function r(i,u){let a=i.getText(),n=qH(u.map(Lee),(l,g)=>{let C=l.range.start.line-g.range.start.line;if(C===0)return l.range.start.character-g.range.start.character;return C}),o=0,s=[];for(let l of n){let g=i.offsetAt(l.range.start);if(g<o)throw Error("Overlapping edit");else if(g>o)s.push(a.substring(o,g));if(l.newText.length)s.push(l.newText);o=i.offsetAt(l.range.end)}return s.push(a.substr(o)),s.join("")}G(r,"applyEdits"),A.applyEdits=r})(WH||(WH={}));G(qH,"mergeSort");G(g0A,"computeLineOffsets");G($lA,"isEOL");G(AgA,"getWellformedRange");G(Lee,"getWellformedEdit");(()=>{var A={975:(S)=>{function x(R){if(typeof R!="string")throw TypeError("Path must be a string. Received "+JSON.stringify(R))}G(x,"e");function F(R,L){for(var M,U="",Y=0,H=-1,J=0,K=0;K<=R.length;++K){if(K<R.length)M=R.charCodeAt(K);else{if(M===47)break;M=47}if(M===47){if(H===K-1||J===1);else if(H!==K-1&&J===2){if(U.length<2||Y!==2||U.charCodeAt(U.length-1)!==46||U.charCodeAt(U.length-2)!==46){if(U.length>2){var O=U.lastIndexOf("/");if(O!==U.length-1){O===-1?(U="",Y=0):Y=(U=U.slice(0,O)).length-1-U.lastIndexOf("/"),H=K,J=0;continue}}else if(U.length===2||U.length===1){U="",Y=0,H=K,J=0;continue}}L&&(U.length>0?U+="/..":U="..",Y=2)}else U.length>0?U+="/"+R.slice(H+1,K):U=R.slice(H+1,K),Y=K-H-1;H=K,J=0}else M===46&&J!==-1?++J:J=-1}return U}G(F,"r");var T={resolve:G(function(){for(var R,L="",M=!1,U=arguments.length-1;U>=-1&&!M;U--){var Y;U>=0?Y=arguments[U]:(R===void 0&&(R=process.cwd()),Y=R),x(Y),Y.length!==0&&(L=Y+"/"+L,M=Y.charCodeAt(0)===47)}return L=F(L,!M),M?L.length>0?"/"+L:"/":L.length>0?L:"."},"resolve"),normalize:G(function(R){if(x(R),R.length===0)return".";var L=R.charCodeAt(0)===47,M=R.charCodeAt(R.length-1)===47;return(R=F(R,!L)).length!==0||L||(R="."),R.length>0&&M&&(R+="/"),L?"/"+R:R},"normalize"),isAbsolute:G(function(R){return x(R),R.length>0&&R.charCodeAt(0)===47},"isAbsolute"),join:G(function(){if(arguments.length===0)return".";for(var R,L=0;L<arguments.length;++L){var M=arguments[L];x(M),M.length>0&&(R===void 0?R=M:R+="/"+M)}return R===void 0?".":T.normalize(R)},"join"),relative:G(function(R,L){if(x(R),x(L),R===L)return"";if((R=T.resolve(R))===(L=T.resolve(L)))return"";for(var M=1;M<R.length&&R.charCodeAt(M)===47;++M);for(var U=R.length,Y=U-M,H=1;H<L.length&&L.charCodeAt(H)===47;++H);for(var J=L.length-H,K=Y<J?Y:J,O=-1,P=0;P<=K;++P){if(P===K){if(J>K){if(L.charCodeAt(H+P)===47)return L.slice(H+P+1);if(P===0)return L.slice(H+P)}else Y>K&&(R.charCodeAt(M+P)===47?O=P:P===0&&(O=0));break}var z=R.charCodeAt(M+P);if(z!==L.charCodeAt(H+P))break;z===47&&(O=P)}var AA="";for(P=M+O+1;P<=U;++P)P!==U&&R.charCodeAt(P)!==47||(AA.length===0?AA+="..":AA+="/..");return AA.length>0?AA+L.slice(H+O):(H+=O,L.charCodeAt(H)===47&&++H,L.slice(H))},"relative"),_makeLong:G(function(R){return R},"_makeLong"),dirname:G(function(R){if(x(R),R.length===0)return".";for(var L=R.charCodeAt(0),M=L===47,U=-1,Y=!0,H=R.length-1;H>=1;--H)if((L=R.charCodeAt(H))===47){if(!Y){U=H;break}}else Y=!1;return U===-1?M?"/":".":M&&U===1?"//":R.slice(0,U)},"dirname"),basename:G(function(R,L){if(L!==void 0&&typeof L!="string")throw TypeError('"ext" argument must be a string');x(R);var M,U=0,Y=-1,H=!0;if(L!==void 0&&L.length>0&&L.length<=R.length){if(L.length===R.length&&L===R)return"";var J=L.length-1,K=-1;for(M=R.length-1;M>=0;--M){var O=R.charCodeAt(M);if(O===47){if(!H){U=M+1;break}}else K===-1&&(H=!1,K=M+1),J>=0&&(O===L.charCodeAt(J)?--J==-1&&(Y=M):(J=-1,Y=K))}return U===Y?Y=K:Y===-1&&(Y=R.length),R.slice(U,Y)}for(M=R.length-1;M>=0;--M)if(R.charCodeAt(M)===47){if(!H){U=M+1;break}}else Y===-1&&(H=!1,Y=M+1);return Y===-1?"":R.slice(U,Y)},"basename"),extname:G(function(R){x(R);for(var L=-1,M=0,U=-1,Y=!0,H=0,J=R.length-1;J>=0;--J){var K=R.charCodeAt(J);if(K!==47)U===-1&&(Y=!1,U=J+1),K===46?L===-1?L=J:H!==1&&(H=1):L!==-1&&(H=-1);else if(!Y){M=J+1;break}}return L===-1||U===-1||H===0||H===1&&L===U-1&&L===M+1?"":R.slice(L,U)},"extname"),format:G(function(R){if(R===null||typeof R!="object")throw TypeError('The "pathObject" argument must be of type Object. Received type '+typeof R);return function(L,M){var U=M.dir||M.root,Y=M.base||(M.name||"")+(M.ext||"");return U?U===M.root?U+Y:U+"/"+Y:Y}(0,R)},"format"),parse:G(function(R){x(R);var L={root:"",dir:"",base:"",ext:"",name:""};if(R.length===0)return L;var M,U=R.charCodeAt(0),Y=U===47;Y?(L.root="/",M=1):M=0;for(var H=-1,J=0,K=-1,O=!0,P=R.length-1,z=0;P>=M;--P)if((U=R.charCodeAt(P))!==47)K===-1&&(O=!1,K=P+1),U===46?H===-1?H=P:z!==1&&(z=1):H!==-1&&(z=-1);else if(!O){J=P+1;break}return H===-1||K===-1||z===0||z===1&&H===K-1&&H===J+1?K!==-1&&(L.base=L.name=J===0&&Y?R.slice(1,K):R.slice(J,K)):(J===0&&Y?(L.name=R.slice(1,H),L.base=R.slice(1,K)):(L.name=R.slice(J,H),L.base=R.slice(J,K)),L.ext=R.slice(H,K)),J>0?L.dir=R.slice(0,J-1):Y&&(L.dir="/"),L},"parse"),sep:"/",delimiter:":",win32:null,posix:null};T.posix=T,S.exports=T}},e={};function t(S){var x=e[S];if(x!==void 0)return x.exports;var F=e[S]={exports:{}};return A[S](F,F.exports,t),F.exports}G(t,"r"),t.d=(S,x)=>{for(var F in x)t.o(x,F)&&!t.o(S,F)&&Object.defineProperty(S,F,{enumerable:!0,get:x[F]})},t.o=(S,x)=>Object.prototype.hasOwnProperty.call(S,x),t.r=(S)=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(S,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(S,"__esModule",{value:!0})};var r={};let i;if(t.r(r),t.d(r,{URI:G(()=>C,"URI"),Utils:G(()=>v,"Utils")}),typeof process=="object")i=process.platform==="win32";else if(typeof navigator=="object")i=navigator.userAgent.indexOf("Windows")>=0;let u=/^\w[\w\d+.-]*$/,a=/^\//,n=/^\/\//;function o(S,x){if(!S.scheme&&x)throw Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${S.authority}", path: "${S.path}", query: "${S.query}", fragment: "${S.fragment}"}`);if(S.scheme&&!u.test(S.scheme))throw Error("[UriError]: Scheme contains illegal characters.");if(S.path){if(S.authority){if(!a.test(S.path))throw Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(n.test(S.path))throw Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}G(o,"a");let s="",l="/",g=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class C{static{G(this,"l")}static isUri(S){return S instanceof C||!!S&&typeof S.authority=="string"&&typeof S.fragment=="string"&&typeof S.path=="string"&&typeof S.query=="string"&&typeof S.scheme=="string"&&typeof S.fsPath=="string"&&typeof S.with=="function"&&typeof S.toString=="function"}scheme;authority;path;query;fragment;constructor(S,x,F,T,R,L=!1){typeof S=="object"?(this.scheme=S.scheme||s,this.authority=S.authority||s,this.path=S.path||s,this.query=S.query||s,this.fragment=S.fragment||s):(this.scheme=function(M,U){return M||U?M:"file"}(S,L),this.authority=x||s,this.path=function(M,U){switch(M){case"https":case"http":case"file":U?U[0]!==l&&(U=l+U):U=l}return U}(this.scheme,F||s),this.query=T||s,this.fragment=R||s,o(this,L))}get fsPath(){return Q(this,!1)}with(S){if(!S)return this;let{scheme:x,authority:F,path:T,query:R,fragment:L}=S;return x===void 0?x=this.scheme:x===null&&(x=s),F===void 0?F=this.authority:F===null&&(F=s),T===void 0?T=this.path:T===null&&(T=s),R===void 0?R=this.query:R===null&&(R=s),L===void 0?L=this.fragment:L===null&&(L=s),x===this.scheme&&F===this.authority&&T===this.path&&R===this.query&&L===this.fragment?this:new E(x,F,T,R,L)}static parse(S,x=!1){let F=g.exec(S);return F?new E(F[2]||s,D(F[4]||s),D(F[5]||s),D(F[7]||s),D(F[9]||s),x):new E(s,s,s,s,s)}static file(S){let x=s;if(i&&(S=S.replace(/\\/g,l)),S[0]===l&&S[1]===l){let F=S.indexOf(l,2);F===-1?(x=S.substring(2),S=l):(x=S.substring(2,F),S=S.substring(F)||l)}return new E("file",x,S,s,s)}static from(S){let x=new E(S.scheme,S.authority,S.path,S.query,S.fragment);return o(x,!0),x}toString(S=!1){return p(this,S)}toJSON(){return this}static revive(S){if(S){if(S instanceof C)return S;{let x=new E(S);return x._formatted=S.external,x._fsPath=S._sep===B?S.fsPath:null,x}}return S}}let B=i?1:void 0;class E extends C{static{G(this,"d")}_formatted=null;_fsPath=null;get fsPath(){return this._fsPath||(this._fsPath=Q(this,!1)),this._fsPath}toString(S=!1){return S?p(this,!0):(this._formatted||(this._formatted=p(this,!1)),this._formatted)}toJSON(){let S={$mid:1};return this._fsPath&&(S.fsPath=this._fsPath,S._sep=B),this._formatted&&(S.external=this._formatted),this.path&&(S.path=this.path),this.scheme&&(S.scheme=this.scheme),this.authority&&(S.authority=this.authority),this.query&&(S.query=this.query),this.fragment&&(S.fragment=this.fragment),S}}let d={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function I(S,x,F){let T,R=-1;for(let L=0;L<S.length;L++){let M=S.charCodeAt(L);if(M>=97&&M<=122||M>=65&&M<=90||M>=48&&M<=57||M===45||M===46||M===95||M===126||x&&M===47||F&&M===91||F&&M===93||F&&M===58)R!==-1&&(T+=encodeURIComponent(S.substring(R,L)),R=-1),T!==void 0&&(T+=S.charAt(L));else{T===void 0&&(T=S.substr(0,L));let U=d[M];U!==void 0?(R!==-1&&(T+=encodeURIComponent(S.substring(R,L)),R=-1),T+=U):R===-1&&(R=L)}}return R!==-1&&(T+=encodeURIComponent(S.substring(R))),T!==void 0?T:S}G(I,"m");function h(S){let x;for(let F=0;F<S.length;F++){let T=S.charCodeAt(F);T===35||T===63?(x===void 0&&(x=S.substr(0,F)),x+=d[T]):x!==void 0&&(x+=S[F])}return x!==void 0?x:S}G(h,"y");function Q(S,x){let F;return F=S.authority&&S.path.length>1&&S.scheme==="file"?`//${S.authority}${S.path}`:S.path.charCodeAt(0)===47&&(S.path.charCodeAt(1)>=65&&S.path.charCodeAt(1)<=90||S.path.charCodeAt(1)>=97&&S.path.charCodeAt(1)<=122)&&S.path.charCodeAt(2)===58?x?S.path.substr(1):S.path[1].toLowerCase()+S.path.substr(2):S.path,i&&(F=F.replace(/\//g,"\\")),F}G(Q,"v");function p(S,x){let F=x?h:I,T="",{scheme:R,authority:L,path:M,query:U,fragment:Y}=S;if(R&&(T+=R,T+=":"),(L||R==="file")&&(T+=l,T+=l),L){let H=L.indexOf("@");if(H!==-1){let J=L.substr(0,H);L=L.substr(H+1),H=J.lastIndexOf(":"),H===-1?T+=F(J,!1,!1):(T+=F(J.substr(0,H),!1,!1),T+=":",T+=F(J.substr(H+1),!1,!0)),T+="@"}L=L.toLowerCase(),H=L.lastIndexOf(":"),H===-1?T+=F(L,!1,!0):(T+=F(L.substr(0,H),!1,!0),T+=L.substr(H))}if(M){if(M.length>=3&&M.charCodeAt(0)===47&&M.charCodeAt(2)===58){let H=M.charCodeAt(1);H>=65&&H<=90&&(M=`/${String.fromCharCode(H+32)}:${M.substr(3)}`)}else if(M.length>=2&&M.charCodeAt(1)===58){let H=M.charCodeAt(0);H>=65&&H<=90&&(M=`${String.fromCharCode(H+32)}:${M.substr(2)}`)}T+=F(M,!0,!1)}return U&&(T+="?",T+=F(U,!1,!1)),Y&&(T+="#",T+=x?Y:I(Y,!1,!1)),T}G(p,"b");function m(S){try{return decodeURIComponent(S)}catch{return S.length>3?S.substr(0,3)+m(S.substr(3)):S}}G(m,"C");let f=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function D(S){return S.match(f)?S.replace(f,(x)=>m(x)):S}G(D,"w");var w=t(975);let b=w.posix||w,k="/";var v;(function(S){S.joinPath=function(x,...F){return x.with({path:b.join(x.path,...F)})},S.resolvePath=function(x,...F){let T=x.path,R=!1;T[0]!==k&&(T=k+T,R=!0);let L=b.resolve(T,...F);return R&&L[0]===k&&!x.authority&&(L=L.substring(1)),x.with({path:L})},S.dirname=function(x){if(x.path.length===0||x.path===k)return x;let F=b.dirname(x.path);return F.length===1&&F.charCodeAt(0)===46&&(F=""),x.with({path:F})},S.basename=function(x){return b.basename(x.path)},S.extname=function(x){return b.extname(x.path)}})(v||(v={})),Ree=r})();({URI:Cg,Utils:nF}=Ree);(function(A){A.basename=nF.basename,A.dirname=nF.dirname,A.extname=nF.extname,A.joinPath=nF.joinPath,A.resolvePath=nF.resolvePath;let e=typeof process==="object"&&process?.platform==="win32";function t(a,n){return a?.toString()===n?.toString()}G(t,"equals"),A.equals=t;function r(a,n){let o=typeof a==="string"?Cg.parse(a).path:a.path,s=typeof n==="string"?Cg.parse(n).path:n.path,l=o.split("/").filter((d)=>d.length>0),g=s.split("/").filter((d)=>d.length>0);if(e){let d=/^[A-Z]:$/;if(l[0]&&d.test(l[0]))l[0]=l[0].toLowerCase();if(g[0]&&d.test(g[0]))g[0]=g[0].toLowerCase();if(l[0]!==g[0])return s.substring(1)}let C=0;for(;C<l.length;C++)if(l[C]!==g[C])break;let B="../".repeat(l.length-C),E=g.slice(C).join("/");return B+E}G(r,"relative"),A.relative=r;function i(a){return Cg.parse(a.toString()).toString()}G(i,"normalize"),A.normalize=i;function u(a,n){let o=typeof a==="string"?a:a.path,s=typeof n==="string"?n:n.path;if(s.charAt(s.length-1)==="/")s=s.slice(0,-1);if(o.charAt(o.length-1)==="/")o=o.slice(0,-1);if(s===o)return!0;if(s.length<o.length)return!1;if(s.charAt(o.length)!=="/")return!1;return s.startsWith(o)}G(u,"contains"),A.contains=u})(ws||(ws={}));egA=class{static{G(this,"UriTrie")}constructor(){this.root={name:"",children:new Map}}normalizeUri(A){return ws.normalize(A)}clear(){this.root.children.clear()}insert(A,e){let t=this.getNode(this.normalizeUri(A),!0);t.element=e}delete(A){let e=this.getNode(this.normalizeUri(A),!1);if(e?.parent)e.parent.children.delete(e.name)}has(A){return this.getNode(this.normalizeUri(A),!1)?.element!==void 0}hasNode(A){return this.getNode(this.normalizeUri(A),!1)!==void 0}find(A){return this.getNode(this.normalizeUri(A),!1)?.element}findNode(A){let e=this.normalizeUri(A),t=this.getNode(e,!1);if(!t)return;return{name:t.name,uri:ws.joinPath(Cg.parse(e),t.name).toString(),element:t.element}}findChildren(A){let e=this.normalizeUri(A),t=this.getNode(e,!1);if(!t)return[];return Array.from(t.children.values()).map((r)=>({name:r.name,uri:ws.joinPath(Cg.parse(e),r.name).toString(),element:r.element}))}all(){return this.collectValues(this.root)}findAll(A){let e=this.getNode(ws.normalize(A),!1);if(!e)return[];return this.collectValues(e)}getNode(A,e){let t=A.split("/");if(A.charAt(A.length-1)==="/")t.pop();let r=this.root;for(let i of t){let u=r.children.get(i);if(!u)if(e)u={name:i,children:new Map,parent:r},r.children.set(i,u);else return;r=u}return r}collectValues(A){let e=[];if(A.element)e.push(A.element);for(let t of A.children.values())e.push(...this.collectValues(t));return e}};(function(A){A[A.Changed=0]="Changed",A[A.Parsed=1]="Parsed",A[A.IndexedContent=2]="IndexedContent",A[A.ComputedScopes=3]="ComputedScopes",A[A.Linked=4]="Linked",A[A.IndexedReferences=5]="IndexedReferences",A[A.Validated=6]="Validated"})(li||(li={}));Nee=class{static{G(this,"DefaultLangiumDocumentFactory")}constructor(A){this.serviceRegistry=A.ServiceRegistry,this.textDocuments=A.workspace.TextDocuments,this.fileSystemProvider=A.workspace.FileSystemProvider}async fromUri(A,e=Wu.CancellationToken.None){let t=await this.fileSystemProvider.readFile(A);return this.createAsync(A,t,e)}fromTextDocument(A,e,t){if(e=e??Cg.parse(A.uri),Wu.CancellationToken.is(t))return this.createAsync(e,A,t);else return this.create(e,A,t)}fromString(A,e,t){if(Wu.CancellationToken.is(t))return this.createAsync(e,A,t);else return this.create(e,A,t)}fromModel(A,e){return this.create(e,{$model:A})}create(A,e,t){if(typeof e==="string"){let r=this.parse(A,e,t);return this.createLangiumDocument(r,A,void 0,e)}else if("$model"in e){let r={value:e.$model,parserErrors:[],lexerErrors:[]};return this.createLangiumDocument(r,A)}else{let r=this.parse(A,e.getText(),t);return this.createLangiumDocument(r,A,e)}}async createAsync(A,e,t){if(typeof e==="string"){let r=await this.parseAsync(A,e,t);return this.createLangiumDocument(r,A,void 0,e)}else{let r=await this.parseAsync(A,e.getText(),t);return this.createLangiumDocument(r,A,e)}}createLangiumDocument(A,e,t,r){let i;if(t)i={parseResult:A,uri:e,state:li.Parsed,references:[],textDocument:t};else{let u=this.createTextDocumentGetter(e,r);i={parseResult:A,uri:e,state:li.Parsed,references:[],get textDocument(){return u()}}}return A.value.$document=i,i}async update(A,e){let t=A.parseResult.value.$cstNode?.root.fullText,r=this.textDocuments?.get(A.uri.toString()),i=r?r.getText():await this.fileSystemProvider.readFile(A.uri);if(r)Object.defineProperty(A,"textDocument",{value:r});else{let u=this.createTextDocumentGetter(A.uri,i);Object.defineProperty(A,"textDocument",{get:u})}if(t!==i)A.parseResult=await this.parseAsync(A.uri,i,e),A.parseResult.value.$document=A;return A.state=li.Parsed,A}parse(A,e,t){return this.serviceRegistry.getServices(A).parser.LangiumParser.parse(e,t)}parseAsync(A,e,t){return this.serviceRegistry.getServices(A).parser.AsyncParser.parse(e,t)}createTextDocumentGetter(A,e){let t=this.serviceRegistry,r=void 0;return()=>r??(r=WH.create(A.toString(),t.getServices(A).LanguageMetaData.languageId,0,e??""))}},Gee=class{static{G(this,"DefaultLangiumDocuments")}constructor(A){this.documentTrie=new egA,this.services=A,this.langiumDocumentFactory=A.workspace.LangiumDocumentFactory,this.documentBuilder=()=>A.workspace.DocumentBuilder}get all(){return Qu(this.documentTrie.all())}addDocument(A){let e=A.uri.toString();if(this.documentTrie.has(e))throw Error(`A document with the URI '${e}' is already present.`);this.documentTrie.insert(e,A)}getDocument(A){let e=A.toString();return this.documentTrie.find(e)}getDocuments(A){let e=A.toString();return this.documentTrie.findAll(e)}async getOrCreateDocument(A,e){let t=this.getDocument(A);if(t)return t;return t=await this.langiumDocumentFactory.fromUri(A,e),this.addDocument(t),t}createDocument(A,e,t){if(t)return this.langiumDocumentFactory.fromString(e,A,t).then((r)=>(this.addDocument(r),r));else{let r=this.langiumDocumentFactory.fromString(e,A);return this.addDocument(r),r}}hasDocument(A){return this.documentTrie.has(A.toString())}invalidateDocument(A){let e=A.toString(),t=this.documentTrie.find(e);if(t)this.documentBuilder().resetToState(t,li.Changed);return t}deleteDocument(A){let e=A.toString(),t=this.documentTrie.find(e);if(t)t.state=li.Changed,this.documentTrie.delete(e);return t}deleteDocuments(A){let e=A.toString(),t=this.documentTrie.findAll(e);for(let r of t)r.state=li.Changed;return this.documentTrie.delete(e),t}},a3=Symbol("RefResolving"),Uee=class{static{G(this,"DefaultLinker")}constructor(A){this.reflection=A.shared.AstReflection,this.langiumDocuments=()=>A.shared.workspace.LangiumDocuments,this.scopeProvider=A.references.ScopeProvider,this.astNodeLocator=A.workspace.AstNodeLocator,this.profiler=A.shared.profilers.LangiumProfiler,this.languageId=A.LanguageMetaData.languageId}async link(A,e=Wu.CancellationToken.None){if(this.profiler?.isActive("linking")){let t=this.profiler.createTask("linking",this.languageId);t.start();try{for(let r of FC(A.parseResult.value))await Ko(e),Ow(r).forEach((i)=>{let u=`${r.$type}:${i.property}`;t.startSubTask(u);try{this.doLink(i,A)}finally{t.stopSubTask(u)}})}finally{t.stop()}}else for(let t of FC(A.parseResult.value))await Ko(e),Ow(t).forEach((r)=>this.doLink(r,A))}doLink(A,e){let t=A.reference;if("_ref"in t&&t._ref===void 0){t._ref=a3;try{let r=this.getCandidate(A);if(n3(r))t._ref=r;else{t._nodeDescription=r;let i=this.loadAstNode(r);t._ref=i??this.createLinkingError(A,r)}}catch(r){console.error(`An error occurred while resolving reference to '${t.$refText}':`,r);let i=r.message??String(r);t._ref={info:A,message:`An error occurred while resolving reference to '${t.$refText}': ${i}`}}e.references.push(t)}else if("_items"in t&&t._items===void 0){t._items=a3;try{let r=this.getCandidates(A),i=[];if(n3(r))t._linkingError=r;else for(let u of r){let a=this.loadAstNode(u);if(a)i.push({ref:a,$nodeDescription:u})}t._items=i}catch(r){t._linkingError={info:A,message:`An error occurred while resolving reference to '${t.$refText}': ${r}`},t._items=[]}e.references.push(t)}}unlink(A){for(let e of A.references)if("_ref"in e)e._ref=void 0,delete e._nodeDescription;else if("_items"in e)e._items=void 0,delete e._linkingError;A.references=[]}getCandidate(A){return this.scopeProvider.getScope(A).getElement(A.reference.$refText)??this.createLinkingError(A)}getCandidates(A){let t=this.scopeProvider.getScope(A).getElements(A.reference.$refText).distinct((r)=>`${r.documentUri}#${r.path}`).toArray();return t.length>0?t:this.createLinkingError(A)}buildReference(A,e,t,r){let i=this,u={$refNode:t,$refText:r,_ref:void 0,get ref(){if(Yn(this._ref))return this._ref;else if(Y0A(this._nodeDescription)){let a=i.loadAstNode(this._nodeDescription);this._ref=a??i.createLinkingError({reference:u,container:A,property:e},this._nodeDescription)}else if(this._ref===void 0){this._ref=a3;let a=Rw(A).$document,n=i.getLinkedNode({reference:u,container:A,property:e});if(n.error&&a&&a.state<li.ComputedScopes)return this._ref=void 0;this._ref=n.node??n.error,this._nodeDescription=n.descr,a?.references.push(this)}else if(this._ref===a3)i.throwCyclicReferenceError(A,e,r);return Yn(this._ref)?this._ref:void 0},get $nodeDescription(){return this._nodeDescription},get error(){return n3(this._ref)?this._ref:void 0}};return u}buildMultiReference(A,e,t,r){let i=this,u={$refNode:t,$refText:r,_items:void 0,get items(){if(Array.isArray(this._items))return this._items;else if(this._items===void 0){this._items=a3;let a=Rw(A).$document,n=i.getCandidates({reference:u,container:A,property:e}),o=[];if(n3(n))this._linkingError=n;else for(let s of n){let l=i.loadAstNode(s);if(l)o.push({ref:l,$nodeDescription:s})}this._items=o,a?.references.push(this)}else if(this._items===a3)i.throwCyclicReferenceError(A,e,r);return Array.isArray(this._items)?this._items:[]},get error(){if(this._linkingError)return this._linkingError;if(this.items.length>0)return;else return this._linkingError=i.createLinkingError({reference:u,container:A,property:e})}};return u}throwCyclicReferenceError(A,e,t){throw Error(`Cyclic reference resolution detected: ${this.astNodeLocator.getAstNodePath(A)}/${e} (symbol '${t}')`)}getLinkedNode(A){try{let e=this.getCandidate(A);if(n3(e))return{error:e};let t=this.loadAstNode(e);if(t)return{node:t,descr:e};else return{descr:e,error:this.createLinkingError(A,e)}}catch(e){console.error(`An error occurred while resolving reference to '${A.reference.$refText}':`,e);let t=e.message??String(e);return{error:{info:A,message:`An error occurred while resolving reference to '${A.reference.$refText}': ${t}`}}}}loadAstNode(A){if(A.node)return A.node;let e=this.langiumDocuments().getDocument(A.documentUri);if(!e)return;return this.astNodeLocator.getAstNode(e.parseResult.value,A.path)}createLinkingError(A,e){let t=Rw(A.container).$document;if(t&&t.state<li.ComputedScopes)console.warn(`Attempted reference resolution before document reached ComputedScopes state (${t.uri}).`);let r=this.reflection.getReferenceType(A);return{info:A,message:`Could not resolve reference to ${r} named '${A.reference.$refText}'.`,targetDescription:e}}};G(tgA,"isNamed");Mee=class{static{G(this,"DefaultNameProvider")}getName(A){if(tgA(A))return A.name;return}getNameNode(A){return WK(A.$cstNode,"name")}},Tee=class{static{G(this,"DefaultReferences")}constructor(A){this.nameProvider=A.references.NameProvider,this.index=A.shared.workspace.IndexManager,this.nodeLocator=A.workspace.AstNodeLocator,this.documents=A.shared.workspace.LangiumDocuments,this.hasMultiReference=FC(A.Grammar).some((e)=>T3(e)&&e.isMulti)}findDeclarations(A){if(A){let e=xsA(A),t=A.astNode;if(e&&t){let r=t[e.feature];if(ys(r)||UE(r))return gH(r);else if(Array.isArray(r)){for(let i of r)if((ys(i)||UE(i))&&i.$refNode&&i.$refNode.offset<=A.offset&&i.$refNode.end>=A.end)return gH(i)}}if(t){let r=this.nameProvider.getNameNode(t);if(r&&(r===A||ssA(A,r)))return this.getSelfNodes(t)}}return[]}getSelfNodes(A){if(!this.hasMultiReference)return[A];else{let e=this.index.findAllReferences(A,this.nodeLocator.getAstNodePath(A)),t=this.getNodeFromReferenceDescription(e.head());if(t){for(let r of Ow(t))if(UE(r.reference)&&r.reference.items.some((i)=>i.ref===A))return r.reference.items.map((i)=>i.ref)}return[A]}}getNodeFromReferenceDescription(A){if(!A)return;let e=this.documents.getDocument(A.sourceUri);if(e)return this.nodeLocator.getAstNode(e.parseResult.value,A.sourcePath);return}findDeclarationNodes(A){let e=this.findDeclarations(A),t=[];for(let r of e){let i=this.nameProvider.getNameNode(r)??r.$cstNode;if(i)t.push(i)}return t}findReferences(A,e){let t=[];if(e.includeDeclaration)t.push(...this.getSelfReferences(A));let r=this.index.findAllReferences(A,this.nodeLocator.getAstNodePath(A));if(e.documentUri)r=r.filter((i)=>ws.equals(i.sourceUri,e.documentUri));return t.push(...r),Qu(t)}getSelfReferences(A){let e=this.getSelfNodes(A),t=[];for(let r of e){let i=this.nameProvider.getNameNode(r);if(i){let u=kC(r),a=this.nodeLocator.getAstNodePath(r);t.push({sourceUri:u.uri,sourcePath:a,targetUri:u.uri,targetPath:a,segment:Ww(i),local:!0})}}return t}},$I=class{static{G(this,"MultiMap")}constructor(A){if(this.map=new Map,A)for(let[e,t]of A)this.add(e,t)}get size(){return ZF.sum(Qu(this.map.values()).map((A)=>A.length))}clear(){this.map.clear()}delete(A,e){if(e===void 0)return this.map.delete(A);else{let t=this.map.get(A);if(t){let r=t.indexOf(e);if(r>=0){if(t.length===1)this.map.delete(A);else t.splice(r,1);return!0}}return!1}}get(A){return this.map.get(A)??[]}getStream(A){let e=this.map.get(A);return e?Qu(e):Hw}has(A,e){if(e===void 0)return this.map.has(A);else{let t=this.map.get(A);if(t)return t.indexOf(e)>=0;return!1}}add(A,e){if(this.map.has(A))this.map.get(A).push(e);else this.map.set(A,[e]);return this}addAll(A,e){if(this.map.has(A))this.map.get(A).push(...e);else this.map.set(A,Array.from(e));return this}forEach(A){this.map.forEach((e,t)=>e.forEach((r)=>A(r,t,this)))}[Symbol.iterator](){return this.entries().iterator()}entries(){return Qu(this.map.entries()).flatMap(([A,e])=>e.map((t)=>[A,t]))}keys(){return Qu(this.map.keys())}values(){return Qu(this.map.values()).flat()}entriesGroupedByKey(){return Qu(this.map.entries())}},zH=class{static{G(this,"BiMap")}get size(){return this.map.size}constructor(A){if(this.map=new Map,this.inverse=new Map,A)for(let[e,t]of A)this.set(e,t)}clear(){this.map.clear(),this.inverse.clear()}set(A,e){return this.map.set(A,e),this.inverse.set(e,A),this}get(A){return this.map.get(A)}getKey(A){return this.inverse.get(A)}delete(A){let e=this.map.get(A);if(e!==void 0)return this.map.delete(A),this.inverse.delete(e),!0;return!1}},Yee=class{static{G(this,"DefaultScopeComputation")}constructor(A){this.nameProvider=A.references.NameProvider,this.descriptions=A.workspace.AstNodeDescriptionProvider}async collectExportedSymbols(A,e=Wu.CancellationToken.None){return this.collectExportedSymbolsForNode(A.parseResult.value,A,void 0,e)}async collectExportedSymbolsForNode(A,e,t=Ex,r=Wu.CancellationToken.None){let i=[];this.addExportedSymbol(A,i,e);for(let u of t(A))await Ko(r),this.addExportedSymbol(u,i,e);return i}addExportedSymbol(A,e,t){let r=this.nameProvider.getName(A);if(r)e.push(this.descriptions.createDescription(A,r,t))}async collectLocalSymbols(A,e=Wu.CancellationToken.None){let t=A.parseResult.value,r=new $I;for(let i of Ah(t))await Ko(e),this.addLocalSymbol(i,A,r);return r}addLocalSymbol(A,e,t){let r=A.$container;if(r){let i=this.nameProvider.getName(A);if(i)t.add(r,this.descriptions.createDescription(A,i,e))}}},c0A=class{static{G(this,"StreamScope")}constructor(A,e,t){this.elements=A,this.outerScope=e,this.caseInsensitive=t?.caseInsensitive??!1,this.concatOuterScope=t?.concatOuterScope??!0}getAllElements(){if(this.outerScope)return this.elements.concat(this.outerScope.getAllElements());else return this.elements}getElement(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.caseInsensitive?this.elements.find((r)=>r.name.toLowerCase()===e):this.elements.find((r)=>r.name===A);if(t)return t;if(this.outerScope)return this.outerScope.getElement(A);return}getElements(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.caseInsensitive?this.elements.filter((r)=>r.name.toLowerCase()===e):this.elements.filter((r)=>r.name===A);if((this.concatOuterScope||t.isEmpty())&&this.outerScope)return t.concat(this.outerScope.getElements(A));else return t}},D7t=class{static{G(this,"MapScope")}constructor(A,e,t){this.elements=new Map,this.caseInsensitive=t?.caseInsensitive??!1,this.concatOuterScope=t?.concatOuterScope??!0;for(let r of A){let i=this.caseInsensitive?r.name.toLowerCase():r.name;this.elements.set(i,r)}this.outerScope=e}getElement(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.elements.get(e);if(t)return t;if(this.outerScope)return this.outerScope.getElement(A);return}getElements(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.elements.get(e),r=t?[t]:[];if((this.concatOuterScope||r.length>0)&&this.outerScope)return Qu(r).concat(this.outerScope.getElements(A));else return Qu(r)}getAllElements(){let A=Qu(this.elements.values());if(this.outerScope)A=A.concat(this.outerScope.getAllElements());return A}},Hee=class{static{G(this,"MultiMapScope")}constructor(A,e,t){this.elements=new $I,this.caseInsensitive=t?.caseInsensitive??!1,this.concatOuterScope=t?.concatOuterScope??!0;for(let r of A){let i=this.caseInsensitive?r.name.toLowerCase():r.name;this.elements.add(i,r)}this.outerScope=e}getElement(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.elements.get(e)[0];if(t)return t;if(this.outerScope)return this.outerScope.getElement(A);return}getElements(A){let e=this.caseInsensitive?A.toLowerCase():A,t=this.elements.get(e);if((this.concatOuterScope||t.length===0)&&this.outerScope)return Qu(t).concat(this.outerScope.getElements(A));else return Qu(t)}getAllElements(){let A=Qu(this.elements.values());if(this.outerScope)A=A.concat(this.outerScope.getAllElements());return A}},y7t={getElement(){return},getElements(){return Hw},getAllElements(){return Hw}},GJ=class{static{G(this,"DisposableCache")}constructor(){this.toDispose=[],this.isDisposed=!1}onDispose(A){this.toDispose.push(A)}dispose(){this.throwIfDisposed(),this.clear(),this.isDisposed=!0,this.toDispose.forEach((A)=>A.dispose())}throwIfDisposed(){if(this.isDisposed)throw Error("This cache has already been disposed")}},rgA=class extends GJ{static{G(this,"SimpleCache")}constructor(){super(...arguments);this.cache=new Map}has(A){return this.throwIfDisposed(),this.cache.has(A)}set(A,e){this.throwIfDisposed(),this.cache.set(A,e)}get(A,e){if(this.throwIfDisposed(),this.cache.has(A))return this.cache.get(A);else if(e){let t=e();return this.cache.set(A,t),t}else return}delete(A){return this.throwIfDisposed(),this.cache.delete(A)}clear(){this.throwIfDisposed(),this.cache.clear()}},UJ=class extends GJ{static{G(this,"ContextCache")}constructor(A){super();this.cache=new Map,this.converter=A??((e)=>e)}has(A,e){return this.throwIfDisposed(),this.cacheForContext(A).has(e)}set(A,e,t){this.throwIfDisposed(),this.cacheForContext(A).set(e,t)}get(A,e,t){this.throwIfDisposed();let r=this.cacheForContext(A);if(r.has(e))return r.get(e);else if(t){let i=t();return r.set(e,i),i}else return}delete(A,e){return this.throwIfDisposed(),this.cacheForContext(A).delete(e)}clear(A){if(this.throwIfDisposed(),A){let e=this.converter(A);this.cache.delete(e)}else this.cache.clear()}cacheForContext(A){let e=this.converter(A),t=this.cache.get(e);if(!t)t=new Map,this.cache.set(e,t);return t}},Kee=class extends UJ{static{G(this,"DocumentCache")}constructor(A,e){super((t)=>t.toString());if(e)this.toDispose.push(A.workspace.DocumentBuilder.onDocumentPhase(e,(t)=>{this.clear(t.uri.toString())})),this.toDispose.push(A.workspace.DocumentBuilder.onUpdate((t,r)=>{for(let i of r)this.clear(i)}));else this.toDispose.push(A.workspace.DocumentBuilder.onUpdate((t,r)=>{let i=t.concat(r);for(let u of i)this.clear(u)}))}},igA=class extends rgA{static{G(this,"WorkspaceCache")}constructor(A,e){super();if(e)this.toDispose.push(A.workspace.DocumentBuilder.onBuildPhase(e,()=>{this.clear()})),this.toDispose.push(A.workspace.DocumentBuilder.onUpdate((t,r)=>{if(r.length>0)this.clear()}));else this.toDispose.push(A.workspace.DocumentBuilder.onUpdate(()=>{this.clear()}))}},Jee=class{static{G(this,"DefaultScopeProvider")}constructor(A){this.reflection=A.shared.AstReflection,this.nameProvider=A.references.NameProvider,this.descriptions=A.workspace.AstNodeDescriptionProvider,this.indexManager=A.shared.workspace.IndexManager,this.globalScopeCache=new igA(A.shared)}getScope(A){let e=[],t=this.reflection.getReferenceType(A),r=kC(A.container).localSymbols;if(r){let u=A.container;do{if(r.has(u))e.push(r.getStream(u).filter((a)=>this.reflection.isSubtype(a.type,t)));u=u.$container}while(u)}let i=this.getGlobalScope(t,A);for(let u=e.length-1;u>=0;u--)i=this.createScope(e[u],i);return i}createScope(A,e,t){return new c0A(Qu(A),e,t)}createScopeForNodes(A,e,t){let r=Qu(A).map((i)=>{let u=this.nameProvider.getName(i);if(u)return this.descriptions.createDescription(i,u);return}).nonNullable();return new c0A(r,e,t)}getGlobalScope(A,e){return this.globalScopeCache.get(A,()=>new Hee(this.indexManager.allElements(A)))}};G(ugA,"isAstNodeWithComment");G(C0A,"isIntermediateReference");Oee=class{static{G(this,"DefaultJsonSerializer")}constructor(A){this.ignoreProperties=new Set(["$container","$containerProperty","$containerIndex","$document","$cstNode"]),this.langiumDocuments=A.shared.workspace.LangiumDocuments,this.astNodeLocator=A.workspace.AstNodeLocator,this.nameProvider=A.references.NameProvider,this.commentProvider=A.documentation.CommentProvider}serialize(A,e){let t=e??{},r=e?.replacer,i=G((a,n)=>this.replacer(a,n,t),"defaultReplacer"),u=r?(a,n)=>r(a,n,i):i;try{return this.currentDocument=kC(A),JSON.stringify(A,u,e?.space)}finally{this.currentDocument=void 0}}deserialize(A,e){let t=e??{},r=JSON.parse(A);return this.linkNode(r,r,t),r}replacer(A,e,{refText:t,sourceText:r,textRegions:i,comments:u,uriConverter:a}){if(this.ignoreProperties.has(A))return;else if(ys(e)){let n=e.ref,o=t?e.$refText:void 0;if(n){let s=kC(n),l="";if(this.currentDocument&&this.currentDocument!==s)if(a)l=a(s.uri,n);else l=s.uri.toString();let g=this.astNodeLocator.getAstNodePath(n);return{$ref:`${l}#${g}`,$refText:o}}else return{$error:e.error?.message??"Could not resolve reference",$refText:o}}else if(UE(e)){let n=t?e.$refText:void 0,o=[];for(let s of e.items){let l=s.ref,g=kC(s.ref),C="";if(this.currentDocument&&this.currentDocument!==g)if(a)C=a(g.uri,l);else C=g.uri.toString();let B=this.astNodeLocator.getAstNodePath(l);o.push(`${C}#${B}`)}return{$refs:o,$refText:n}}else if(Yn(e)){let n=void 0;if(i){if(n=this.addAstNodeRegionWithAssignmentsTo({...e}),(!A||e.$document)&&n?.$textRegion)n.$textRegion.documentURI=this.currentDocument?.uri.toString()}if(r&&!A)n??(n={...e}),n.$sourceText=e.$cstNode?.text;if(u){n??(n={...e});let o=this.commentProvider.getComment(e);if(o)n.$comment=o.replace(/\r/g,"")}return n??e}else return e}addAstNodeRegionWithAssignmentsTo(A){let e=G((t)=>({offset:t.offset,end:t.end,length:t.length,range:t.range}),"createDocumentSegment");if(A.$cstNode){let t=A.$textRegion=e(A.$cstNode),r=t.assignments={};return Object.keys(A).filter((i)=>!i.startsWith("$")).forEach((i)=>{let u=ksA(A.$cstNode,i).map(e);if(u.length!==0)r[i]=u}),A}return}linkNode(A,e,t,r,i,u){for(let[n,o]of Object.entries(A))if(Array.isArray(o))for(let s=0;s<o.length;s++){let l=o[s];if(C0A(l))o[s]=this.reviveReference(A,n,e,l,t);else if(Yn(l))this.linkNode(l,e,t,A,n,s)}else if(C0A(o))A[n]=this.reviveReference(A,n,e,o,t);else if(Yn(o))this.linkNode(o,e,t,A,n);let a=A;a.$container=r,a.$containerProperty=i,a.$containerIndex=u}reviveReference(A,e,t,r,i){let{$refText:u,$error:a}=r,n;if(r.$ref){let o=this.getRefNode(t,r.$ref,i.uriConverter);if(Yn(o)){if(!u)u=this.nameProvider.getName(o);return{$refText:u??"",ref:o}}else a=o}else if(r.$refs){let o=[];for(let s of r.$refs){let l=this.getRefNode(t,s,i.uriConverter);if(Yn(l))o.push({ref:l})}if(o.length===0)n={$refText:u??"",items:o},a??(a="Could not resolve multi-reference");else return{$refText:u??"",items:o}}if(a)return n??(n={$refText:u??"",ref:void 0}),n.error={info:{container:A,property:e,reference:n},message:a},n;else return}getRefNode(A,e,t){try{let r=e.indexOf("#");if(r===0){let n=this.astNodeLocator.getAstNode(A,e.substring(1));if(!n)return"Could not resolve path: "+e;return n}if(r<0){let n=t?t(e):Cg.parse(e),o=this.langiumDocuments.getDocument(n);if(!o)return"Could not find document for URI: "+e;return o.parseResult.value}let i=t?t(e.substring(0,r)):Cg.parse(e.substring(0,r)),u=this.langiumDocuments.getDocument(i);if(!u)return"Could not find document for URI: "+e;if(r===e.length-1)return u.parseResult.value;let a=this.astNodeLocator.getAstNode(u.parseResult.value,e.substring(r+1));if(!a)return"Could not resolve URI: "+e;return a}catch(r){return String(r)}}},Pee=class{static{G(this,"DefaultServiceRegistry")}get map(){return this.fileExtensionMap}constructor(A){this.languageIdMap=new Map,this.fileExtensionMap=new Map,this.fileNameMap=new Map,this.textDocuments=A?.workspace.TextDocuments}register(A){let e=A.LanguageMetaData;for(let t of e.fileExtensions){if(this.fileExtensionMap.has(t))console.warn(`The file extension ${t} is used by multiple languages. It is now assigned to '${e.languageId}'.`);this.fileExtensionMap.set(t,A)}if(e.fileNames)for(let t of e.fileNames){if(this.fileNameMap.has(t))console.warn(`The file name ${t} is used by multiple languages. It is now assigned to '${e.languageId}'.`);this.fileNameMap.set(t,A)}this.languageIdMap.set(e.languageId,A)}getServices(A){if(this.languageIdMap.size===0)throw Error("The service registry is empty. Use `register` to register the services of a language.");let e=this.textDocuments?.get(A)?.languageId;if(e!==void 0){let u=this.languageIdMap.get(e);if(u)return u}let t=ws.extname(A),r=ws.basename(A),i=this.fileNameMap.get(r)??this.fileExtensionMap.get(t);if(!i)if(e)throw Error(`The service registry contains no services for the extension '${t}' for language '${e}'.`);else throw Error(`The service registry contains no services for the extension '${t}'.`);return i}hasServices(A){try{return this.getServices(A),!0}catch{return!1}}get all(){return Array.from(this.languageIdMap.values())}};G(y3,"diagnosticData");(function(A){A.defaults=["fast","slow","built-in"],A.all=A.defaults})(ZH||(ZH={}));_ee=class{static{G(this,"ValidationRegistry")}constructor(A){this.entries=new $I,this.knownCategories=new Set(ZH.defaults),this.entriesBefore=[],this.entriesAfter=[],this.reflection=A.shared.AstReflection}register(A,e=this,t="fast"){if(t==="built-in")throw Error("The 'built-in' category is reserved for lexer, parser, and linker errors.");this.knownCategories.add(t);for(let[r,i]of Object.entries(A)){let u=i;if(Array.isArray(u))for(let a of u){let n={check:this.wrapValidationException(a,e),category:t};this.addEntry(r,n)}else if(typeof u==="function"){let a={check:this.wrapValidationException(u,e),category:t};this.addEntry(r,a)}else Z4(u)}}wrapValidationException(A,e){return async(t,r,i)=>{await this.handleException(()=>A.call(e,t,r,i),"An error occurred during validation",r,t)}}async handleException(A,e,t,r){try{await A()}catch(i){if(Am(i))throw i;if(console.error(`${e}:`,i),i instanceof Error&&i.stack)console.error(i.stack);let u=i instanceof Error?i.message:String(i);t("error",`${e}: ${u}`,{node:r})}}addEntry(A,e){if(A==="AstNode"){this.entries.add("AstNode",e);return}for(let t of this.reflection.getAllSubTypes(A))this.entries.add(t,e)}getChecks(A,e){let t=Qu(this.entries.get(A)).concat(this.entries.get("AstNode"));if(e)t=t.filter((r)=>e.includes(r.category));return t.map((r)=>r.check)}registerBeforeDocument(A,e=this){this.entriesBefore.push(this.wrapPreparationException(A,"An error occurred during set-up of the validation",e))}registerAfterDocument(A,e=this){this.entriesAfter.push(this.wrapPreparationException(A,"An error occurred during tear-down of the validation",e))}wrapPreparationException(A,e,t){return async(r,i,u,a)=>{await this.handleException(()=>A.call(t,r,i,u,a),e,i,r)}}get checksBefore(){return this.entriesBefore}get checksAfter(){return this.entriesAfter}getAllValidationCategories(A){return this.knownCategories}},Wee=Object.freeze({validateNode:!0,validateChildren:!0}),qee=class{static{G(this,"DefaultDocumentValidator")}constructor(A){this.validationRegistry=A.validation.ValidationRegistry,this.metadata=A.LanguageMetaData,this.profiler=A.shared.profilers.LangiumProfiler,this.languageId=A.LanguageMetaData.languageId}async validateDocument(A,e={},t=Wu.CancellationToken.None){let r=A.parseResult,i=[];if(await Ko(t),!e.categories||e.categories.includes("built-in")){if(this.processLexingErrors(r,i,e),e.stopAfterLexingErrors&&i.some((u)=>u.data?.code===Cc.LexingError))return i;if(this.processParsingErrors(r,i,e),e.stopAfterParsingErrors&&i.some((u)=>u.data?.code===Cc.ParsingError))return i;if(this.processLinkingErrors(A,i,e),e.stopAfterLinkingErrors&&i.some((u)=>u.data?.code===Cc.LinkingError))return i}try{i.push(...await this.validateAst(r.value,e,t))}catch(u){if(Am(u))throw u;console.error("An error occurred during validation:",u)}return await Ko(t),i}processLexingErrors(A,e,t){let r=[...A.lexerErrors,...A.lexerReport?.diagnostics??[]];for(let i of r){let u=i.severity??"error",a={severity:YF(u),range:{start:{line:i.line-1,character:i.column-1},end:{line:i.line-1,character:i.column+i.length-1}},message:i.message,data:ngA(u),source:this.getSource()};e.push(a)}}processParsingErrors(A,e,t){for(let r of A.parserErrors){let i=void 0;if(isNaN(r.token.startOffset)){if("previousToken"in r){let u=r.previousToken;if(!isNaN(u.startOffset)){let a={line:u.endLine-1,character:u.endColumn};i={start:a,end:a}}else{let a={line:0,character:0};i={start:a,end:a}}}}else i=VF(r.token);if(i){let u={severity:YF("error"),range:i,message:r.message,data:y3(Cc.ParsingError),source:this.getSource()};e.push(u)}}}processLinkingErrors(A,e,t){for(let r of A.references){let i=r.error;if(i){let u={node:i.info.container,range:r.$refNode?.range,property:i.info.property,index:i.info.index,data:{code:Cc.LinkingError,containerType:i.info.container.$type,property:i.info.property,refText:i.info.reference.$refText}};e.push(this.toDiagnostic("error",i.message,u))}}}async validateAst(A,e,t=Wu.CancellationToken.None){let r=[],i=G((u,a,n)=>{r.push(this.toDiagnostic(u,a,n))},"acceptor");return await this.validateAstBefore(A,e,i,t),await this.validateAstNodes(A,e,i,t),await this.validateAstAfter(A,e,i,t),r}async validateAstBefore(A,e,t,r=Wu.CancellationToken.None){let i=this.validationRegistry.checksBefore;for(let u of i)await Ko(r),await u(A,t,e.categories??[],r)}async validateAstNodes(A,e,t,r=Wu.CancellationToken.None){if(this.profiler?.isActive("validating")){let i=this.profiler.createTask("validating",this.languageId);i.start();try{let u=FC(A).iterator();for(let a of u){i.startSubTask(a.$type);let n=this.validateSingleNodeOptions(a,e);if(n.validateNode)try{let o=this.validationRegistry.getChecks(a.$type,e.categories);for(let s of o)await s(a,t,r)}finally{i.stopSubTask(a.$type)}if(!n.validateChildren)u.prune()}}finally{i.stop()}}else{let i=FC(A).iterator();for(let u of i){await Ko(r);let a=this.validateSingleNodeOptions(u,e);if(a.validateNode){let n=this.validationRegistry.getChecks(u.$type,e.categories);for(let o of n)await o(u,t,r)}if(!a.validateChildren)i.prune()}}}validateSingleNodeOptions(A,e){return Wee}async validateAstAfter(A,e,t,r=Wu.CancellationToken.None){let i=this.validationRegistry.checksAfter;for(let u of i)await Ko(r),await u(A,t,e.categories??[],r)}toDiagnostic(A,e,t){return{message:e,range:agA(t),severity:YF(A),code:t.code,codeDescription:t.codeDescription,tags:t.tags,relatedInformation:t.relatedInformation,data:t.data,source:this.getSource()}}getSource(){return this.metadata.languageId}};G(agA,"getDiagnosticRange");G(YF,"toDiagnosticSeverity");G(ngA,"toDiagnosticData");(function(A){A.LexingError="lexing-error",A.LexingWarning="lexing-warning",A.LexingInfo="lexing-info",A.LexingHint="lexing-hint",A.ParsingError="parsing-error",A.LinkingError="linking-error"})(Cc||(Cc={}));zee=class{static{G(this,"DefaultAstNodeDescriptionProvider")}constructor(A){this.astNodeLocator=A.workspace.AstNodeLocator,this.nameProvider=A.references.NameProvider}createDescription(A,e,t){let r=t??kC(A);e??(e=this.nameProvider.getName(A));let i=this.astNodeLocator.getAstNodePath(A);if(!e)throw Error(`Node at path ${i} has no name.`);let u,a=G(()=>u??(u=Ww(this.nameProvider.getNameNode(A)??A.$cstNode)),"nameSegmentGetter");return{node:A,name:e,get nameSegment(){return a()},selectionSegment:Ww(A.$cstNode),type:A.$type,documentUri:r.uri,path:i}}},Zee=class{static{G(this,"DefaultReferenceDescriptionProvider")}constructor(A){this.nodeLocator=A.workspace.AstNodeLocator}async createDescriptions(A,e=Wu.CancellationToken.None){let t=[],r=A.parseResult.value;for(let i of FC(r))await Ko(e),Ow(i).forEach((u)=>{if(!u.reference.error)t.push(...this.createInfoDescriptions(u))});return t}createInfoDescriptions(A){let e=A.reference;if(e.error||!e.$refNode)return[];let t=[];if(ys(e)&&e.$nodeDescription)t=[e.$nodeDescription];else if(UE(e))t=e.items.map((n)=>n.$nodeDescription).filter((n)=>n!==void 0);let r=kC(A.container).uri,i=this.nodeLocator.getAstNodePath(A.container),u=[],a=Ww(e.$refNode);for(let n of t)u.push({sourceUri:r,sourcePath:i,targetUri:n.documentUri,targetPath:n.path,segment:a,local:ws.equals(n.documentUri,r)});return u}},Vee=class{static{G(this,"DefaultAstNodeLocator")}constructor(){this.segmentSeparator="/",this.indexSeparator="@"}getAstNodePath(A){if(A.$container){let e=this.getAstNodePath(A.$container),t=this.getPathSegment(A);return e+this.segmentSeparator+t}return""}getPathSegment({$containerProperty:A,$containerIndex:e}){if(!A)throw Error("Missing '$containerProperty' in AST node.");if(e!==void 0)return A+this.indexSeparator+e;return A}getAstNode(A,e){return e.split(this.segmentSeparator).reduce((r,i)=>{if(!r||i.length===0)return r;let u=i.indexOf(this.indexSeparator);if(u>0){let a=i.substring(0,u),n=parseInt(i.substring(u+1));return r[a]?.[n]}return r[i]},A)}},MJ={};SK(MJ,G0A(jw(),1));jee=class{static{G(this,"DefaultConfigurationProvider")}constructor(A){this._ready=new XI,this.onConfigurationSectionUpdateEmitter=new MJ.Emitter,this.settings={},this.workspaceConfig=!1,this.serviceRegistry=A.ServiceRegistry}get ready(){return this._ready.promise}initialize(A){this.workspaceConfig=A.capabilities.workspace?.configuration??!1}async initialized(A){if(this.workspaceConfig){if(A.register){let e=this.serviceRegistry.all;A.register({section:e.map((t)=>this.toSectionName(t.LanguageMetaData.languageId))})}if(A.fetchConfiguration){let e=this.serviceRegistry.all.map((r)=>({section:this.toSectionName(r.LanguageMetaData.languageId)})),t=await A.fetchConfiguration(e);e.forEach((r,i)=>{this.updateSectionConfiguration(r.section,t[i])})}}this._ready.resolve()}updateConfiguration(A){if(typeof A.settings!=="object"||A.settings===null)return;Object.entries(A.settings).forEach(([e,t])=>{this.updateSectionConfiguration(e,t),this.onConfigurationSectionUpdateEmitter.fire({section:e,configuration:t})})}updateSectionConfiguration(A,e){this.settings[A]=e}async getConfiguration(A,e){await this.ready;let t=this.toSectionName(A);if(this.settings[t])return this.settings[t][e]}toSectionName(A){return`${A}`}get onConfigurationSectionUpdate(){return this.onConfigurationSectionUpdateEmitter.event}},SY=G0A($2t(),1);(function(A){function e(t){return{dispose:G(async()=>await t(),"dispose")}}G(e,"create"),A.create=e})(F3||(F3={}));Xee=class{static{G(this,"DefaultDocumentBuilder")}constructor(A){this.updateBuildOptions={validation:{categories:["built-in","fast"]}},this.updateListeners=[],this.buildPhaseListeners=new $I,this.documentPhaseListeners=new $I,this.buildState=new Map,this.documentBuildWaiters=new Map,this.currentState=li.Changed,this.langiumDocuments=A.workspace.LangiumDocuments,this.langiumDocumentFactory=A.workspace.LangiumDocumentFactory,this.textDocuments=A.workspace.TextDocuments,this.indexManager=A.workspace.IndexManager,this.fileSystemProvider=A.workspace.FileSystemProvider,this.workspaceManager=()=>A.workspace.WorkspaceManager,this.serviceRegistry=A.ServiceRegistry}async build(A,e={},t=Wu.CancellationToken.None){for(let r of A){let i=r.uri.toString();if(r.state===li.Validated){if(typeof e.validation==="boolean"&&e.validation)this.resetToState(r,li.IndexedReferences);else if(typeof e.validation==="object"){let u=this.findMissingValidationCategories(r,e);if(u.length>0)this.buildState.set(i,{completed:!1,options:{validation:{categories:u}},result:this.buildState.get(i)?.result}),r.state=li.IndexedReferences}}else this.buildState.delete(i)}this.currentState=li.Changed,await this.emitUpdate(A.map((r)=>r.uri),[]),await this.buildDocuments(A,e,t)}async update(A,e,t=Wu.CancellationToken.None){this.currentState=li.Changed;let r=[];for(let n of e){let o=this.langiumDocuments.deleteDocuments(n);for(let s of o)r.push(s.uri),this.cleanUpDeleted(s)}let i=(await Promise.all(A.map((n)=>this.findChangedUris(n)))).flat();for(let n of i){let o=this.langiumDocuments.getDocument(n);if(o===void 0)o=this.langiumDocumentFactory.fromModel({$type:"INVALID"},n),o.state=li.Changed,this.langiumDocuments.addDocument(o);this.resetToState(o,li.Changed)}let u=Qu(i).concat(r).map((n)=>n.toString()).toSet();this.langiumDocuments.all.filter((n)=>!u.has(n.uri.toString())&&this.shouldRelink(n,u)).forEach((n)=>this.resetToState(n,li.ComputedScopes)),await this.emitUpdate(i,r),await Ko(t);let a=this.sortDocuments(this.langiumDocuments.all.filter((n)=>n.state<li.Validated||!this.buildState.get(n.uri.toString())?.completed||this.resultsAreIncomplete(n,this.updateBuildOptions)).toArray());await this.buildDocuments(a,this.updateBuildOptions,t)}resultsAreIncomplete(A,e){return this.findMissingValidationCategories(A,e).length>=1}findMissingValidationCategories(A,e){let t=this.buildState.get(A.uri.toString()),r=this.serviceRegistry.getServices(A.uri).validation.ValidationRegistry.getAllValidationCategories(A),i=t?.result?.validationChecks?new Set(t?.result?.validationChecks):t?.completed?r:new Set,u=e===void 0||e.validation===!0?r:typeof e.validation==="object"?e.validation.categories??r:[];return Qu(u).filter((a)=>!i.has(a)).toArray()}async findChangedUris(A){if(this.langiumDocuments.getDocument(A)??this.textDocuments?.get(A))return[A];try{let t=await this.fileSystemProvider.stat(A);if(t.isDirectory)return await this.workspaceManager().searchFolder(A);else if(this.workspaceManager().shouldIncludeEntry(t))return[A]}catch{}return[]}async emitUpdate(A,e){await Promise.all(this.updateListeners.map((t)=>t(A,e)))}sortDocuments(A){let e=0,t=A.length-1;while(e<t){while(e<A.length&&this.hasTextDocument(A[e]))e++;while(t>=0&&!this.hasTextDocument(A[t]))t--;if(e<t)[A[e],A[t]]=[A[t],A[e]]}return A}hasTextDocument(A){return Boolean(this.textDocuments?.get(A.uri))}shouldRelink(A,e){if(A.references.some((t)=>t.error!==void 0))return!0;return this.indexManager.isAffected(A,e)}onUpdate(A){return this.updateListeners.push(A),F3.create(()=>{let e=this.updateListeners.indexOf(A);if(e>=0)this.updateListeners.splice(e,1)})}resetToState(A,e){switch(e){case li.Changed:case li.Parsed:this.indexManager.removeContent(A.uri);case li.IndexedContent:A.localSymbols=void 0;case li.ComputedScopes:this.serviceRegistry.getServices(A.uri).references.Linker.unlink(A);case li.Linked:this.indexManager.removeReferences(A.uri);case li.IndexedReferences:A.diagnostics=void 0,this.buildState.delete(A.uri.toString());case li.Validated:}if(A.state>e)A.state=e}cleanUpDeleted(A){this.buildState.delete(A.uri.toString()),this.indexManager.remove(A.uri),A.state=li.Changed}async buildDocuments(A,e,t){this.prepareBuild(A,e),await this.runCancelable(A,li.Parsed,t,(u)=>this.langiumDocumentFactory.update(u,t)),await this.runCancelable(A,li.IndexedContent,t,(u)=>this.indexManager.updateContent(u,t)),await this.runCancelable(A,li.ComputedScopes,t,async(u)=>{let a=this.serviceRegistry.getServices(u.uri).references.ScopeComputation;u.localSymbols=await a.collectLocalSymbols(u,t)});let r=A.filter((u)=>this.shouldLink(u));await this.runCancelable(r,li.Linked,t,(u)=>this.serviceRegistry.getServices(u.uri).references.Linker.link(u,t)),await this.runCancelable(r,li.IndexedReferences,t,(u)=>this.indexManager.updateReferences(u,t));let i=A.filter((u)=>{if(this.shouldValidate(u))return!0;else return this.markAsCompleted(u),!1});await this.runCancelable(i,li.Validated,t,async(u)=>{await this.validate(u,t),this.markAsCompleted(u)})}markAsCompleted(A){let e=this.buildState.get(A.uri.toString());if(e)e.completed=!0}prepareBuild(A,e){for(let t of A){let r=t.uri.toString(),i=this.buildState.get(r);if(!i||i.completed)this.buildState.set(r,{completed:!1,options:e,result:i?.result})}}async runCancelable(A,e,t,r){for(let u of A)if(u.state<e)await Ko(t),await r(u),u.state=e,await this.notifyDocumentPhase(u,e,t);let i=A.filter((u)=>u.state===e);await this.notifyBuildPhase(i,e,t),this.currentState=e}onBuildPhase(A,e){return this.buildPhaseListeners.add(A,e),F3.create(()=>{this.buildPhaseListeners.delete(A,e)})}onDocumentPhase(A,e){return this.documentPhaseListeners.add(A,e),F3.create(()=>{this.documentPhaseListeners.delete(A,e)})}waitUntil(A,e,t){let r=void 0;if(e&&"path"in e)r=e;else t=e;if(t??(t=Wu.CancellationToken.None),r)return this.awaitDocumentState(A,r,t);else return this.awaitBuilderState(A,t)}awaitDocumentState(A,e,t){let r=this.langiumDocuments.getDocument(e);if(!r)return Promise.reject(new SY.ResponseError(SY.LSPErrorCodes.ServerCancelled,`No document found for URI: ${e.toString()}`));else if(r.state>=A)return Promise.resolve(e);else if(t.isCancellationRequested)return Promise.reject(GE);else if(this.currentState>=A&&A>r.state)return Promise.reject(new SY.ResponseError(SY.LSPErrorCodes.RequestFailed,`Document state of ${e.toString()} is ${li[r.state]}, requiring ${li[A]}, but workspace state is already ${li[this.currentState]}. Returning undefined.`));return new Promise((i,u)=>{let a=this.onDocumentPhase(A,(o)=>{if(ws.equals(o.uri,e))a.dispose(),n.dispose(),i(o.uri)}),n=t.onCancellationRequested(()=>{a.dispose(),n.dispose(),u(GE)})})}awaitBuilderState(A,e){if(this.currentState>=A)return Promise.resolve();else if(e.isCancellationRequested)return Promise.reject(GE);return new Promise((t,r)=>{let i=this.onBuildPhase(A,()=>{i.dispose(),u.dispose(),t()}),u=e.onCancellationRequested(()=>{i.dispose(),u.dispose(),r(GE)})})}async notifyDocumentPhase(A,e,t){let i=this.documentPhaseListeners.get(e).slice();for(let u of i)try{await Ko(t),await u(A,t)}catch(a){if(!Am(a))throw a}}async notifyBuildPhase(A,e,t){if(A.length===0)return;let i=this.buildPhaseListeners.get(e).slice();for(let u of i)await Ko(t),await u(A,t)}shouldLink(A){return this.getBuildOptions(A).eagerLinking??!0}shouldValidate(A){return Boolean(this.getBuildOptions(A).validation)}async validate(A,e){let t=this.serviceRegistry.getServices(A.uri).validation.DocumentValidator,r=this.getBuildOptions(A),i=typeof r.validation==="object"?{...r.validation}:{};i.categories=this.findMissingValidationCategories(A,r);let u=await t.validateDocument(A,i,e);if(A.diagnostics)A.diagnostics.push(...u);else A.diagnostics=u;let a=this.buildState.get(A.uri.toString());if(a)if(a.result??(a.result={}),a.result.validationChecks)a.result.validationChecks=Qu(a.result.validationChecks).concat(i.categories).distinct().toArray();else a.result.validationChecks=[...i.categories]}getBuildOptions(A){return this.buildState.get(A.uri.toString())?.options??{}}},$ee=class{static{G(this,"DefaultIndexManager")}constructor(A){this.symbolIndex=new Map,this.symbolByTypeIndex=new UJ,this.referenceIndex=new Map,this.documents=A.workspace.LangiumDocuments,this.serviceRegistry=A.ServiceRegistry,this.astReflection=A.AstReflection}findAllReferences(A,e){let t=kC(A).uri,r=[];return this.referenceIndex.forEach((i)=>{i.forEach((u)=>{if(ws.equals(u.targetUri,t)&&u.targetPath===e)r.push(u)})}),Qu(r)}allElements(A,e){let t=Qu(this.symbolIndex.keys());if(e)t=t.filter((r)=>!e||e.has(r));return t.map((r)=>this.getFileDescriptions(r,A)).flat()}getFileDescriptions(A,e){if(!e)return this.symbolIndex.get(A)??[];return this.symbolByTypeIndex.get(A,e,()=>(this.symbolIndex.get(A)??[]).filter((i)=>this.astReflection.isSubtype(i.type,e)))}remove(A){this.removeContent(A),this.removeReferences(A)}removeContent(A){let e=A.toString();this.symbolIndex.delete(e),this.symbolByTypeIndex.clear(e)}removeReferences(A){let e=A.toString();this.referenceIndex.delete(e)}async updateContent(A,e=Wu.CancellationToken.None){let r=await this.serviceRegistry.getServices(A.uri).references.ScopeComputation.collectExportedSymbols(A,e),i=A.uri.toString();this.symbolIndex.set(i,r),this.symbolByTypeIndex.clear(i)}async updateReferences(A,e=Wu.CancellationToken.None){let r=await this.serviceRegistry.getServices(A.uri).workspace.ReferenceDescriptionProvider.createDescriptions(A,e);this.referenceIndex.set(A.uri.toString(),r)}isAffected(A,e){let t=this.referenceIndex.get(A.uri.toString());if(!t)return!1;return t.some((r)=>!r.local&&e.has(r.targetUri.toString()))}},Ate=class{static{G(this,"DefaultWorkspaceManager")}constructor(A){this.initialBuildOptions={},this._ready=new XI,this.serviceRegistry=A.ServiceRegistry,this.langiumDocuments=A.workspace.LangiumDocuments,this.documentBuilder=A.workspace.DocumentBuilder,this.fileSystemProvider=A.workspace.FileSystemProvider,this.mutex=A.workspace.WorkspaceLock}get ready(){return this._ready.promise}get workspaceFolders(){return this.folders}initialize(A){this.folders=A.workspaceFolders??void 0}initialized(A){return this.mutex.write((e)=>this.initializeWorkspace(this.folders??[],e))}async initializeWorkspace(A,e=Wu.CancellationToken.None){let t=await this.performStartup(A);await Ko(e),await this.documentBuilder.build(t,this.initialBuildOptions,e)}async performStartup(A){let e=[],t=G((u)=>{if(e.push(u),!this.langiumDocuments.hasDocument(u.uri))this.langiumDocuments.addDocument(u)},"collector");await this.loadAdditionalDocuments(A,t);let r=[];await Promise.all(A.map((u)=>this.getRootFolder(u)).map(async(u)=>this.traverseFolder(u,r)));let i=Qu(r).distinct((u)=>u.toString()).filter((u)=>!this.langiumDocuments.hasDocument(u));return await this.loadWorkspaceDocuments(i,t),this._ready.resolve(),e}async loadWorkspaceDocuments(A,e){await Promise.all(A.map(async(t)=>{let r=await this.langiumDocuments.getOrCreateDocument(t);e(r)}))}loadAdditionalDocuments(A,e){return Promise.resolve()}getRootFolder(A){return Cg.parse(A.uri)}async traverseFolder(A,e){try{let t=await this.fileSystemProvider.readDirectory(A);await Promise.all(t.map(async(r)=>{if(this.shouldIncludeEntry(r)){if(r.isDirectory)await this.traverseFolder(r.uri,e);else if(r.isFile)e.push(r.uri)}}))}catch(t){console.error("Failure to read directory content of "+A.toString(!0),t)}}async searchFolder(A){let e=[];return await this.traverseFolder(A,e),e}shouldIncludeEntry(A){let e=ws.basename(A.uri);if(e.startsWith("."))return!1;if(A.isDirectory)return e!=="node_modules"&&e!=="out";else if(A.isFile)return this.serviceRegistry.hasServices(A.uri);return!1}},ete=class{static{G(this,"DefaultLexerErrorMessageProvider")}buildUnexpectedCharactersMessage(A,e,t,r,i){return qoA.buildUnexpectedCharactersMessage(A,e,t,r,i)}buildUnableToPopLexerModeMessage(A){return qoA.buildUnableToPopLexerModeMessage(A)}},ogA={mode:"full"},sgA=class{static{G(this,"DefaultLexer")}constructor(A){this.errorMessageProvider=A.parser.LexerErrorMessageProvider,this.tokenBuilder=A.parser.TokenBuilder;let e=this.tokenBuilder.buildTokens(A.Grammar,{caseInsensitive:A.LanguageMetaData.caseInsensitive});this.tokenTypes=this.toTokenTypeDictionary(e);let t=VH(e)?Object.values(e):e,r=A.LanguageMetaData.mode==="production";this.chevrotainLexer=new bs(t,{positionTracking:"full",skipValidations:r,errorMessageProvider:this.errorMessageProvider})}get definition(){return this.tokenTypes}tokenize(A,e=ogA){let t=this.chevrotainLexer.tokenize(A);return{tokens:t.tokens,errors:t.errors,hidden:t.groups.hidden??[],report:this.tokenBuilder.flushLexingReport?.(A)}}toTokenTypeDictionary(A){if(VH(A))return A;let e=YJ(A)?Object.values(A.modes).flat():A,t={};return e.forEach((r)=>t[r.name]=r),t}};G(TJ,"isTokenTypeArray");G(YJ,"isIMultiModeLexerDefinition");G(VH,"isTokenTypeDictionary");Cx();G(lgA,"parseJSDoc");G(ggA,"isJSDoc");G(cgA,"getLines");a_A=/\s*(@([\p{L}][\p{L}\p{N}]*)?)/uy,w7t=/\{(@[\p{L}][\p{L}\p{N}]*)(\s*)([^\r\n}]+)?\}/gu;G(tte,"tokenize");G(rte,"buildInlineTokens");b7t=/\S/,v7t=/\s*$/;G(jH,"skipWhitespace");G(ite,"lastCharacter");G(ute,"parseJSDocComment");G(ate,"parseJSDocElement");G(nte,"appendEmptyLine");G(CgA,"parseJSDocText");G(ote,"parseJSDocInline");G(BgA,"parseJSDocTag");G(EgA,"parseJSDocLine");G(HJ,"normalizeOptions");G(sH,"normalizeOption");n_A=class{static{G(this,"JSDocCommentImpl")}constructor(A,e){this.elements=A,this.range=e}getTag(A){return this.getAllTags().find((e)=>e.name===A)}getTags(A){return this.getAllTags().filter((e)=>e.name===A)}getAllTags(){return this.elements.filter((A)=>("name"in A))}toString(){let A="";for(let e of this.elements)if(A.length===0)A=e.toString();else{let t=e.toString();A+=E0A(A)+t}return A.trim()}toMarkdown(A){let e="";for(let t of this.elements)if(e.length===0)e=t.toMarkdown(A);else{let r=t.toMarkdown(A);e+=E0A(e)+r}return e.trim()}},DnA=class{static{G(this,"JSDocTagImpl")}constructor(A,e,t,r){this.name=A,this.content=e,this.inline=t,this.range=r}toString(){let A=`@${this.name}`,e=this.content.toString();if(this.content.inlines.length===1)A=`${A} ${e}`;else if(this.content.inlines.length>1)A=`${A}
${e}`;if(this.inline)return`{${A}}`;else return A}toMarkdown(A){return A?.renderTag?.(this)??this.toMarkdownDefault(A)}toMarkdownDefault(A){let e=this.content.toMarkdown(A);if(this.inline){let i=ste(this.name,e,A??{});if(typeof i==="string")return i}let t="";if(A?.tag==="italic"||A?.tag===void 0)t="*";else if(A?.tag==="bold")t="**";else if(A?.tag==="bold-italic")t="***";let r=`${t}@${this.name}${t}`;if(this.content.inlines.length===1)r=`${r} — ${e}`;else if(this.content.inlines.length>1)r=`${r}
${e}`;if(this.inline)return`{${r}}`;else return r}};G(ste,"renderInlineTag");G(lte,"renderLinkDefault");B0A=class{static{G(this,"JSDocTextImpl")}constructor(A,e){this.inlines=A,this.range=e}toString(){let A="";for(let e=0;e<this.inlines.length;e++){let t=this.inlines[e],r=this.inlines[e+1];if(A+=t.toString(),r&&r.range.start.line>t.range.start.line)A+=`
`}return A}toMarkdown(A){let e="";for(let t=0;t<this.inlines.length;t++){let r=this.inlines[t],i=this.inlines[t+1];if(e+=r.toMarkdown(A),i&&i.range.start.line>r.range.start.line)e+=`
`}return e}},gte=class{static{G(this,"JSDocLineImpl")}constructor(A,e){this.text=A,this.range=e}toString(){return this.text}toMarkdown(){return this.text}};G(E0A,"fillNewlines");cte=class{static{G(this,"JSDocDocumentationProvider")}constructor(A){this.indexManager=A.shared.workspace.IndexManager,this.commentProvider=A.documentation.CommentProvider}getDocumentation(A){let e=this.commentProvider.getComment(A);if(e&&ggA(e))return lgA(e).toMarkdown({renderLink:G((r,i)=>this.documentationLinkRenderer(A,r,i),"renderLink"),renderTag:G((r)=>this.documentationTagRenderer(A,r),"renderTag")});return}documentationLinkRenderer(A,e,t){let r=this.findNameInLocalSymbols(A,e)??this.findNameInGlobalScope(A,e);if(r&&r.nameSegment){let i=r.nameSegment.range.start.line+1,u=r.nameSegment.range.start.character+1,a=r.documentUri.with({fragment:`L${i},${u}`});return`[${t}](${a.toString()})`}else return}documentationTagRenderer(A,e){return}findNameInLocalSymbols(A,e){let r=kC(A).localSymbols;if(!r)return;let i=A;do{let a=r.getStream(i).find((n)=>n.name===e);if(a)return a;i=i.$container}while(i);return}findNameInGlobalScope(A,e){return this.indexManager.allElements().find((r)=>r.name===e)}},Cte=class{static{G(this,"DefaultCommentProvider")}constructor(A){this.grammarConfig=()=>A.parser.GrammarConfig}getComment(A){if(ugA(A))return A.$comment;return CsA(A.$cstNode,this.grammarConfig().multilineCommentRules)?.text}},Bte=class{static{G(this,"DefaultAsyncParser")}constructor(A){this.syncParser=A.parser.LangiumParser}parse(A,e){return Promise.resolve(this.syncParser.parse(A))}},k7t=class{static{G(this,"AbstractThreadedAsyncParser")}constructor(A){this.threadCount=8,this.terminationDelay=200,this.workerPool=[],this.queue=[],this.hydrator=A.serializer.Hydrator}initializeWorkers(){while(this.workerPool.length<this.threadCount){let A=this.createWorker();A.onReady(()=>{if(this.queue.length>0){let e=this.queue.shift();if(e)A.lock(),e.resolve(A)}}),this.workerPool.push(A)}}async parse(A,e){let t=await this.acquireParserWorker(e),r=new XI,i,u=e.onCancellationRequested(()=>{i=setTimeout(()=>{this.terminateWorker(t)},this.terminationDelay)});return t.parse(A).then((a)=>{let n=this.hydrator.hydrate(a);r.resolve(n)}).catch((a)=>{r.reject(a)}).finally(()=>{u.dispose(),clearTimeout(i)}),r.promise}terminateWorker(A){A.terminate();let e=this.workerPool.indexOf(A);if(e>=0)this.workerPool.splice(e,1)}async acquireParserWorker(A){this.initializeWorkers();for(let t of this.workerPool)if(t.ready)return t.lock(),t;let e=new XI;return A.onCancellationRequested(()=>{let t=this.queue.indexOf(e);if(t>=0)this.queue.splice(t,1);e.reject(GE)}),this.queue.push(e),e.promise}},F7t=class{static{G(this,"ParserWorker")}get ready(){return this._ready}get onReady(){return this.onReadyEmitter.event}constructor(A,e,t,r){this.onReadyEmitter=new MJ.Emitter,this.deferred=new XI,this._ready=!0,this._parsing=!1,this.sendMessage=A,this._terminate=r,e((i)=>{let u=i;this.deferred.resolve(u),this.unlock()}),t((i)=>{this.deferred.reject(i),this.unlock()})}terminate(){this.deferred.reject(GE),this._terminate()}lock(){this._ready=!1}unlock(){this._parsing=!1,this._ready=!0,this.onReadyEmitter.fire()}parse(A){if(this._parsing)throw Error("Parser worker is busy");return this._parsing=!0,this.deferred=new XI,this.sendMessage(A),this.deferred.promise}},Ete=class{static{G(this,"DefaultWorkspaceLock")}constructor(){this.previousTokenSource=new Wu.CancellationTokenSource,this.writeQueue=[],this.readQueue=[],this.done=!0}write(A){this.cancelWrite();let e=NJ();return this.previousTokenSource=e,this.enqueue(this.writeQueue,A,e.token)}read(A){return this.enqueue(this.readQueue,A)}enqueue(A,e,t=Wu.CancellationToken.None){let r=new XI,i={action:e,deferred:r,cancellationToken:t};return A.push(i),this.performNextOperation(),r.promise}async performNextOperation(){if(!this.done)return;let A=[];if(this.writeQueue.length>0)A.push(this.writeQueue.shift());else if(this.readQueue.length>0)A.push(...this.readQueue.splice(0,this.readQueue.length));else return;this.done=!1,await Promise.all(A.map(async({action:e,deferred:t,cancellationToken:r})=>{try{let i=await Promise.resolve().then(()=>e(r));t.resolve(i)}catch(i){if(Am(i))t.resolve(void 0);else t.reject(i)}})),this.done=!0,this.performNextOperation()}cancelWrite(){this.previousTokenSource.cancel()}},dte=class{static{G(this,"DefaultHydrator")}constructor(A){this.grammarElementIdMap=new zH,this.tokenTypeIdMap=new zH,this.grammar=A.Grammar,this.lexer=A.parser.Lexer,this.linker=A.references.Linker}dehydrate(A){return{lexerErrors:A.lexerErrors,lexerReport:A.lexerReport?this.dehydrateLexerReport(A.lexerReport):void 0,parserErrors:A.parserErrors.map((e)=>({...e,message:e.message})),value:this.dehydrateAstNode(A.value,this.createDehyrationContext(A.value))}}dehydrateLexerReport(A){return A}createDehyrationContext(A){let e=new Map,t=new Map;for(let r of FC(A))e.set(r,{});if(A.$cstNode)for(let r of _w(A.$cstNode))t.set(r,{});return{astNodes:e,cstNodes:t}}dehydrateAstNode(A,e){let t=e.astNodes.get(A);if(t.$type=A.$type,t.$containerIndex=A.$containerIndex,t.$containerProperty=A.$containerProperty,A.$cstNode!==void 0)t.$cstNode=this.dehydrateCstNode(A.$cstNode,e);for(let[r,i]of Object.entries(A)){if(r.startsWith("$"))continue;if(Array.isArray(i)){let u=[];t[r]=u;for(let a of i)if(Yn(a))u.push(this.dehydrateAstNode(a,e));else if(ys(a))u.push(this.dehydrateReference(a,e));else u.push(a)}else if(Yn(i))t[r]=this.dehydrateAstNode(i,e);else if(ys(i))t[r]=this.dehydrateReference(i,e);else if(i!==void 0)t[r]=i}return t}dehydrateReference(A,e){let t={};if(t.$refText=A.$refText,A.$refNode)t.$refNode=e.cstNodes.get(A.$refNode);return t}dehydrateCstNode(A,e){let t=e.cstNodes.get(A);if(NK(A))t.fullText=A.fullText;else t.grammarSource=this.getGrammarElementId(A.grammarSource);if(t.hidden=A.hidden,t.astNode=e.astNodes.get(A.astNode),PI(A))t.content=A.content.map((r)=>this.dehydrateCstNode(r,e));else if(G3(A))t.tokenType=A.tokenType.name,t.offset=A.offset,t.length=A.length,t.startLine=A.range.start.line,t.startColumn=A.range.start.character,t.endLine=A.range.end.line,t.endColumn=A.range.end.character;return t}hydrate(A){let e=A.value,t=this.createHydrationContext(e);if("$cstNode"in e)this.hydrateCstNode(e.$cstNode,t);return{lexerErrors:A.lexerErrors,lexerReport:A.lexerReport,parserErrors:A.parserErrors,value:this.hydrateAstNode(e,t)}}createHydrationContext(A){let e=new Map,t=new Map;for(let i of FC(A))e.set(i,{});let r;if(A.$cstNode)for(let i of _w(A.$cstNode)){let u;if("fullText"in i)u=new OlA(i.fullText),r=u;else if("content"in i)u=new FJ;else if("tokenType"in i)u=this.hydrateCstLeafNode(i);if(u)t.set(i,u),u.root=r}return{astNodes:e,cstNodes:t}}hydrateAstNode(A,e){let t=e.astNodes.get(A);if(t.$type=A.$type,t.$containerIndex=A.$containerIndex,t.$containerProperty=A.$containerProperty,A.$cstNode)t.$cstNode=e.cstNodes.get(A.$cstNode);for(let[r,i]of Object.entries(A)){if(r.startsWith("$"))continue;if(Array.isArray(i)){let u=[];t[r]=u;for(let a of i)if(Yn(a))u.push(this.setParent(this.hydrateAstNode(a,e),t));else if(ys(a))u.push(this.hydrateReference(a,t,r,e));else u.push(a)}else if(Yn(i))t[r]=this.setParent(this.hydrateAstNode(i,e),t);else if(ys(i))t[r]=this.hydrateReference(i,t,r,e);else if(i!==void 0)t[r]=i}return t}setParent(A,e){return A.$container=e,A}hydrateReference(A,e,t,r){return this.linker.buildReference(e,t,r.cstNodes.get(A.$refNode),A.$refText)}hydrateCstNode(A,e,t=0){let r=e.cstNodes.get(A);if(typeof A.grammarSource==="number")r.grammarSource=this.getGrammarElement(A.grammarSource);if(r.astNode=e.astNodes.get(A.astNode),PI(r))for(let i of A.content){let u=this.hydrateCstNode(i,e,t++);r.content.push(u)}return r}hydrateCstLeafNode(A){let e=this.getTokenType(A.tokenType),{offset:t,length:r,startLine:i,startColumn:u,endLine:a,endColumn:n,hidden:o}=A;return new OH(t,r,{start:{line:i,character:u},end:{line:a,character:n}},e,o)}getTokenType(A){return this.lexer.definition[A]}getGrammarElementId(A){if(!A)return;if(this.grammarElementIdMap.size===0)this.createGrammarElementIdMap();return this.grammarElementIdMap.get(A)}getGrammarElement(A){if(this.grammarElementIdMap.size===0)this.createGrammarElementIdMap();return this.grammarElementIdMap.getKey(A)}createGrammarElementIdMap(){let A=0;for(let e of FC(this.grammar))if(GK(e))this.grammarElementIdMap.set(e,A++)}};G(xi,"createDefaultCoreModule");G(Si,"createDefaultSharedCoreModule");(function(A){A.merge=(e,t)=>Vw(Vw({},e),t)})(d0A||(d0A={}));G(wr,"inject");Ite=Symbol("isProxy");G(dgA,"eagerLoad");G(IgA,"_inject");o_A=Symbol();G(I0A,"_resolve");G(Vw,"_merge");h0A={indentTokenName:"INDENT",dedentTokenName:"DEDENT",whitespaceTokenName:"WS",ignoreIndentationDelimiters:[]};(function(A){A.REGULAR="indentation-sensitive",A.IGNORE_INDENTATION="ignore-indentation"})(w3||(w3={}));hte=class extends LJ{static{G(this,"IndentationAwareTokenBuilder")}constructor(A=h0A){super();this.indentationStack=[0],this.whitespaceRegExp=/[ \t]+/y,this.options={...h0A,...A},this.indentTokenType=Gw({name:this.options.indentTokenName,pattern:this.indentMatcher.bind(this),line_breaks:!1}),this.dedentTokenType=Gw({name:this.options.dedentTokenName,pattern:this.dedentMatcher.bind(this),line_breaks:!1})}buildTokens(A,e){let t=super.buildTokens(A,e);if(!TJ(t))throw Error("Invalid tokens built by default builder");let{indentTokenName:r,dedentTokenName:i,whitespaceTokenName:u,ignoreIndentationDelimiters:a}=this.options,n,o,s,l=[];for(let g of t){for(let[C,B]of a)if(g.name===C)g.PUSH_MODE=w3.IGNORE_INDENTATION;else if(g.name===B)g.POP_MODE=!0;if(g.name===i)n=g;else if(g.name===r)o=g;else if(g.name===u)s=g;else l.push(g)}if(!n||!o||!s)throw Error("Some indentation/whitespace tokens not found!");if(a.length>0)return{modes:{[w3.REGULAR]:[n,o,...l,s],[w3.IGNORE_INDENTATION]:[...l,s]},defaultMode:w3.REGULAR};else return[n,o,s,...l]}flushLexingReport(A){return{...super.flushLexingReport(A),remainingDedents:this.flushRemainingDedents(A)}}isStartOfLine(A,e){return e===0||`\r
`.includes(A[e-1])}matchWhitespace(A,e,t,r){this.whitespaceRegExp.lastIndex=e;let i=this.whitespaceRegExp.exec(A);return{currIndentLevel:i?.[0].length??0,prevIndentLevel:this.indentationStack.at(-1),match:i}}createIndentationTokenInstance(A,e,t,r){let i=this.getLineNumber(e,r);return xx(A,t,r,r+t.length,i,i,1,t.length)}getLineNumber(A,e){return A.substring(0,e).split(/\r\n|\r|\n/).length}indentMatcher(A,e,t,r){if(!this.isStartOfLine(A,e))return null;let{currIndentLevel:i,prevIndentLevel:u,match:a}=this.matchWhitespace(A,e,t,r);if(i<=u)return null;return this.indentationStack.push(i),a}dedentMatcher(A,e,t,r){if(!this.isStartOfLine(A,e))return null;let{currIndentLevel:i,prevIndentLevel:u,match:a}=this.matchWhitespace(A,e,t,r);if(i>=u)return null;let n=this.indentationStack.lastIndexOf(i);if(n===-1)return this.diagnostics.push({severity:"error",message:`Invalid dedent level ${i} at offset: ${e}. Current indentation stack: ${this.indentationStack}`,offset:e,length:a?.[0]?.length??0,line:this.getLineNumber(A,e),column:1}),null;let o=this.indentationStack.length-n-1,s=A.substring(0,e).match(/[\r\n]+$/)?.[0].length??1;for(let l=0;l<o;l++){let g=this.createIndentationTokenInstance(this.dedentTokenType,A,"",e-(s-1));t.push(g),this.indentationStack.pop()}return null}buildTerminalToken(A){let e=super.buildTerminalToken(A),{indentTokenName:t,dedentTokenName:r,whitespaceTokenName:i}=this.options;if(e.name===t)return this.indentTokenType;else if(e.name===r)return this.dedentTokenType;else if(e.name===i)return Gw({name:i,pattern:this.whitespaceRegExp,group:bs.SKIPPED});return e}flushRemainingDedents(A){let e=[];while(this.indentationStack.length>1)e.push(this.createIndentationTokenInstance(this.dedentTokenType,A,"",A.length)),this.indentationStack.pop();return this.indentationStack=[0],e}},x7t=class extends sgA{static{G(this,"IndentationAwareLexer")}constructor(A){super(A);if(A.parser.TokenBuilder instanceof hte)this.indentationTokenBuilder=A.parser.TokenBuilder;else throw Error("IndentationAwareLexer requires an accompanying IndentationAwareTokenBuilder")}tokenize(A,e=ogA){let t=super.tokenize(A),r=t.report;if(e?.mode==="full")t.tokens.push(...r.remainingDedents);r.remainingDedents=[];let{indentTokenType:i,dedentTokenType:u}=this.indentationTokenBuilder,a=i.tokenTypeIdx,n=u.tokenTypeIdx,o=[],s=t.tokens.length-1;for(let l=0;l<s;l++){let g=t.tokens[l],C=t.tokens[l+1];if(g.tokenTypeIdx===a&&C.tokenTypeIdx===n){l++;continue}o.push(g)}if(s>=0)o.push(t.tokens[s]);return t.tokens=o,t}},hgA={};z4(hgA,{AstUtils:()=>K0A,BiMap:()=>zH,Cancellation:()=>Wu,ContextCache:()=>UJ,CstUtils:()=>T0A,DONE_RESULT:()=>Ds,Deferred:()=>XI,Disposable:()=>F3,DisposableCache:()=>GJ,DocumentCache:()=>Kee,EMPTY_STREAM:()=>Hw,ErrorWithLocation:()=>JK,GrammarUtils:()=>IsA,MultiMap:()=>$I,OperationCancelled:()=>GE,Reduction:()=>ZF,RegExpUtils:()=>QsA,SimpleCache:()=>rgA,StreamImpl:()=>NE,TreeStreamImpl:()=>Kw,URI:()=>Cg,UriTrie:()=>egA,UriUtils:()=>ws,WorkspaceCache:()=>igA,assertCondition:()=>hsA,assertUnreachable:()=>Z4,delayNextTick:()=>RJ,interruptAndCheck:()=>Ko,isOperationCancelled:()=>Am,loadGrammarFromJson:()=>Oo,setInterruptionPeriod:()=>XlA,startCancelableOperation:()=>NJ,stream:()=>Qu});SK(hgA,MJ);Qte=class{static{G(this,"EmptyFileSystemProvider")}stat(A){throw Error("No file system is available.")}statSync(A){throw Error("No file system is available.")}async exists(){return!1}existsSync(){return!1}readBinary(){throw Error("No file system is available.")}readBinarySync(){throw Error("No file system is available.")}readFile(){throw Error("No file system is available.")}readFileSync(){throw Error("No file system is available.")}async readDirectory(){return[]}readDirectorySync(){return[]}},Ji={fileSystemProvider:G(()=>new Qte,"fileSystemProvider")},S7t={Grammar:G(()=>{return},"Grammar"),LanguageMetaData:G(()=>({caseInsensitive:!1,fileExtensions:[".langium"],languageId:"langium"}),"LanguageMetaData")},L7t={AstReflection:G(()=>new osA,"AstReflection")};G(pte,"createMinimalGrammarServices");G(Oo,"loadGrammarFromJson");SK(Jo,hgA);R7t=class{static{G(this,"DefaultLangiumProfiler")}constructor(A){this.activeCategories=new Set,this.allCategories=new Set(["validating","parsing","linking"]),this.activeCategories=A??new Set(this.allCategories),this.records=new $I}isActive(A){return this.activeCategories.has(A)}start(...A){if(!A)this.activeCategories=new Set(this.allCategories);else A.forEach((e)=>this.activeCategories.add(e))}stop(...A){if(!A)this.activeCategories.clear();else A.forEach((e)=>this.activeCategories.delete(e))}createTask(A,e){if(!this.isActive(A))throw Error(`Category "${A}" is not active.`);return console.log(`Creating profiling task for '${A}.${e}'.`),new fte((t)=>this.records.add(A,this.dumpRecord(A,t)),e)}dumpRecord(A,e){console.info(`Task ${A}.${e.identifier} executed in ${e.duration.toFixed(2)}ms and ended at ${e.date.toISOString()}`);let t=[];for(let u of e.entries.keys()){let a=e.entries.get(u),n=a.reduce((o,s)=>o+s);t.push({name:`${e.identifier}.${u}`,count:a.length,duration:n})}let r=e.duration-t.map((u)=>u.duration).reduce((u,a)=>u+a,0);t.push({name:e.identifier,count:1,duration:r}),t.sort((u,a)=>a.duration-u.duration);function i(u){return Math.round(100*u)/100}return G(i,"Round"),console.table(t.map((u)=>({Element:u.name,Count:u.count,"Self %":i(100*u.duration/e.duration),"Time (ms)":i(u.duration)}))),e}getRecords(...A){if(A.length===0)return this.records.values();else return this.records.entries().filter((e)=>A.some((t)=>t===e[0])).flatMap((e)=>e[1])}},fte=class{static{G(this,"ProfilingTask")}constructor(A,e){this.stack=[],this.entries=new $I,this.addRecord=A,this.identifier=e}start(){if(this.startTime!==void 0)throw Error(`Task "${this.identifier}" is already started.`);this.startTime=performance.now()}stop(){if(this.startTime===void 0)throw Error(`Task "${this.identifier}" was not started.`);if(this.stack.length!==0)throw Error(`Task "${this.identifier}" cannot be stopped before sub-task(s): ${this.stack.map((e)=>e.id).join(", ")}.`);let A={identifier:this.identifier,date:new Date,duration:performance.now()-this.startTime,entries:this.entries};this.addRecord(A),this.startTime=void 0,this.entries.clear()}startSubTask(A){this.stack.push({id:A,start:performance.now(),content:0})}stopSubTask(A){let e=this.stack.pop();if(!e)throw Error(`Task "${this.identifier}.${A}" was not started.`);if(e.id!==A)throw Error(`Sub-Task "${e.id}" is not already stopped.`);let t=performance.now()-e.start;if(this.stack.at(-1)!==void 0)this.stack[this.stack.length-1].content+=t;let r=t-e.content;this.entries.add(A,r)}};((A)=>{A.Terminals={ARROW_DIRECTION:/L|R|T|B/,ARROW_GROUP:/\{group\}/,ARROW_INTO:/<|>/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ARCH_ICON:/\([\w-:]+\)/,ARCH_TITLE:/\[(?:"([^"\\]|\\.)*"|'([^'\\]|\\.)*'|[^\[\]\r\n]+)\]/}})(Q0A||(Q0A={}));((A)=>{A.Terminals={DOMAIN_NAME:/complex|complicated|clear|chaotic|confusion/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(p0A||(p0A={}));((A)=>{A.Terminals={EM_ID:/[_a-zA-Z][\w_]*/,EM_FID:/\d{1,3}/,EM_DATA_INLINE:/\{(.*)\}|"(.*)"|'(.*)'/,EM_DATA_BLOCK:/\{[\t ]*\r?\n(?:[\S\s]*?\r?\n)?\}(?:\r?\n|(?!\S))/,EM_ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EM_ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,EM_TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,EM_WS:/\s+/,EM_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EM_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EM_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EM_ML_COMMENT:/\/\*[\s\S]*?\*\//,EM_SL_COMMENT:/\/\/[^\n\r]*/}})(f0A||(f0A={}));((A)=>{A.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,REFERENCE:/\w([-\./\w]*[-\w])?/}})(m0A||(m0A={}));((A)=>{A.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(D0A||(D0A={}));((A)=>{A.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(y0A||(y0A={}));((A)=>{A.Terminals={NUMBER_PIE:/(?:-?[0-9]+\.[0-9]+(?!\.))|(?:-?(0|[1-9][0-9]*)(?!\.))/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(w0A||(w0A={}));((A)=>{A.Terminals={GRATICULE:/circle|polygon/,BOOLEAN:/true|false/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,NUMBER:/(?:[0-9]+\.[0-9]+(?!\.))|(?:0|[1-9][0-9]*(?!\.))/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(b0A||(b0A={}));((A)=>{A.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ABNF_RULENAME:/[A-Za-z][A-Za-z0-9-]*/,ABNF_STRING:/"[^"]*"/,ABNF_NUMVAL:/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\.[0-9A-Fa-f]+)*/,ABNF_REPEAT:/[0-9]*\*[0-9]*/,ABNF_EXACT_REPEAT:/[0-9]+/,ABNF_WHITESPACE:/[\t \r\n]+/,ABNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,ABNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,ABNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,ABNF_COMMENT:/;[^\n\r]*/}})(v0A||(v0A={}));((A)=>{A.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,EBNF_ID:/[A-Z_a-z][\w-]*/,EBNF_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,EBNF_SPECIAL_SEQUENCE:/\?(?=[^?;]*[^?\s;][^?;]*\?)[^?;]*\?/,EBNF_WHITESPACE:/[\t \r\n]+/,EBNF_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,EBNF_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,EBNF_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,EBNF_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//,EBNF_ISO_COMMENT:/\(\*[\s\S]*?\*\)/}})(k0A||(k0A={}));((A)=>{A.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,RR_ID:/[A-Z_a-z][\w-]*/,RR_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,RR_WHITESPACE:/[\t \r\n]+/,RR_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,RR_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,RR_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,RR_BLOCK_COMMENT:/\/\*[\s\S]*?\*\//}})(F0A||(F0A={}));((A)=>{A.Terminals={TITLE:/title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,ACC_TITLE:/accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,ACC_DESCR:/accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,PEG_ID:/[A-Z_a-z][\w-]*/,PEG_STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,PEG_WHITESPACE:/[\t \r\n]+/,PEG_YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,PEG_DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,PEG_SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/,PEG_LINE_COMMENT:/#[^\n\r]*/}})(x0A||(x0A={}));((A)=>{A.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,TREEMAP_KEYWORD:/treemap-beta|treemap/,CLASS_DEF:/classDef\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\s+([^;\r\n]*))?(?:;)?/,STYLE_SEPARATOR:/:::/,SEPARATOR:/:/,COMMA:/,/,INDENTATION:/[ \t]{1,}/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,ID2:/[a-zA-Z_][a-zA-Z0-9_]*/,NUMBER2:/[0-9_\.\,]+/,STRING2:/"[^"]*"|'[^']*'/}})(S0A||(S0A={}));((A)=>{A.Terminals={ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,CLASS_ANNOTATION:/[ \t]+:::[ \t]*[A-Za-z_][\w-]*/,ICON_ANNOTATION:/[ \t]+icon\([\w-]*(?::[\w-]+)?\)/,DESC_ANNOTATION:/[ \t]+##[^\n\r]*/,INDENTATION:/[ \t]{1,}/,QUOTED_NAME:/"[^"]*"|'[^']*'/,WS:/[ \t]+/,ML_COMMENT:/\%\%[^\n]*/,NL:/\r?\n/,BARE_NAME:/(?!:::|icon\(|##)[^ \t\n\r"'](?:(?![ \t]+:::[ \t]*[A-Za-z_]|[ \t]+icon\(|[ \t]+##)[^\n\r])*/}})(L0A||(L0A={}));((A)=>{A.Terminals={WARDLEY_NUMBER:/[0-9]+\.[0-9]+/,ARROW:/->/,LINK_PORT:/\+<>|\+>|\+</,LINK_ARROW:/-->|-\.->|>|\+'[^']*'<>|\+'[^']*'<|\+'[^']*'>/,LINK_LABEL:/;[^\n\r]+/,STRATEGY:/build|buy|outsource|market/,KW_WARDLEY:/wardley-beta/,KW_SIZE:/size/,KW_EVOLUTION:/evolution/,KW_ANCHOR:/anchor/,KW_COMPONENT:/component/,KW_LABEL:/label/,KW_INERTIA:/inertia/,KW_EVOLVE:/evolve/,KW_PIPELINE:/pipeline/,KW_NOTE:/note/,KW_ANNOTATIONS:/annotations/,KW_ANNOTATION:/annotation/,KW_ACCELERATOR:/accelerator/,KW_DEACCELERATOR:/deaccelerator/,NAME_WITH_SPACES:/(?!title\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/,WS:/[ \t]+/,ACC_DESCR:/[\t ]*accDescr(?:[\t ]*:([^\n\r]*?(?=%%)|[^\n\r]*)|\s*{([^}]*)})/,ACC_TITLE:/[\t ]*accTitle[\t ]*:(?:[^\n\r]*?(?=%%)|[^\n\r]*)/,TITLE:/[\t ]*title(?:[\t ][^\n\r]*?(?=%%)|[\t ][^\n\r]*|)/,INT:/0|[1-9][0-9]*(?!\.)/,STRING:/"([^"\\]|\\.)*"|'([^'\\]|\\.)*'/,ID:/[\w]([-\w]*\w)?/,NEWLINE:/\r?\n/,WHITESPACE:/[\t ]+/,YAML:/---[\t ]*\r?\n(?:[\S\s]*?\r?\n)?---(?:\r?\n|(?!\S))/,DIRECTIVE:/[\t ]*%%{[\S\s]*?}%%(?:\r?\n|(?!\S))/,SINGLE_LINE_COMMENT:/[\t ]*%%[^\n\r]*/}})(R0A||(R0A={}));gni={...Q0A.Terminals,...p0A.Terminals,...f0A.Terminals,...m0A.Terminals,...D0A.Terminals,...y0A.Terminals,...w0A.Terminals,...b0A.Terminals,...v0A.Terminals,...k0A.Terminals,...F0A.Terminals,...x0A.Terminals,...L0A.Terminals,...S0A.Terminals,...R0A.Terminals},XH={$type:"AbnfAlternation",alternatives:"alternatives"},$H={$type:"AbnfConcatenation",elements:"elements"},HF={$type:"AbnfElement",primary:"primary",repeat:"repeat"},AK={$type:"AbnfGroup",element:"element"},eK={$type:"AbnfNumVal",value:"value"},tK={$type:"AbnfOptionalGroup",element:"element"},x4={$type:"AbnfPrimary"},KF={$type:"AbnfRule",definition:"definition",name:"name"},rK={$type:"AbnfRuleName",name:"name"},iK={$type:"AbnfStringLiteral",value:"value"},LY={$type:"Accelerator",name:"name",x:"x",y:"y"},ynA={$type:"Alignment",direction:"direction",members:"members"},RY={$type:"Anchor",evolution:"evolution",name:"name",visibility:"visibility"},oF={$type:"Annotation",number:"number",text:"text",x:"x",y:"y"},wnA={$type:"Annotations",x:"x",y:"y"},cc={$type:"Architecture",accDescr:"accDescr",accTitle:"accTitle",alignments:"alignments",edges:"edges",groups:"groups",junctions:"junctions",services:"services",title:"title"};G(QgA,"isArchitecture");NY={$type:"Axis",label:"label",name:"name"},Mw={$type:"Branch",name:"name",order:"order"};G(pgA,"isBranch");s_A={$type:"Checkout",branch:"branch"},GY={$type:"CherryPicking",id:"id",parent:"parent",tags:"tags"},bnA={$type:"ClassDefStatement",className:"className",styleText:"styleText"},N4={$type:"Commit",id:"id",message:"message",tags:"tags",type:"type"};G(fgA,"isCommit");UY={$type:"Common",accDescr:"accDescr",accTitle:"accTitle",title:"title"},$f={$type:"Component",decorator:"decorator",evolution:"evolution",inertia:"inertia",label:"label",name:"name",visibility:"visibility"},MY={$type:"Curve",entries:"entries",label:"label",name:"name"},HI={$type:"Cynefin",accDescr:"accDescr",accTitle:"accTitle",domains:"domains",title:"title",transitions:"transitions"};G(mgA,"isCynefin");TY={$type:"Deaccelerator",name:"name",x:"x",y:"y"},l_A={$type:"Decorator",strategy:"strategy"},Iw={$type:"Direction",accDescr:"accDescr",accTitle:"accTitle",dir:"dir",statements:"statements",title:"title"},Tw={$type:"DomainBlock",domain:"domain",items:"items"};G(DgA,"isDomainBlock");gx={$type:"DomainItem",label:"label"};G(ygA,"isDomainItem");uK={$type:"EbnfChoice",alternatives:"alternatives"},aK={$type:"EbnfExceptionPostfix",except:"except"},nK={$type:"EbnfGroup",element:"element"},oK={$type:"EbnfNonTerminal",name:"name"},sK={$type:"EbnfOneOrMorePostfix",operator:"operator"},lK={$type:"EbnfOptional",element:"element"},gK={$type:"EbnfOptionalPostfix",operator:"operator"},Q3={$type:"EbnfPostfix"},MI={$type:"EbnfPrimary"},cK={$type:"EbnfRepetition",element:"element"},JF={$type:"EbnfRule",definition:"definition",name:"name"},CK={$type:"EbnfSequence",elements:"elements"},BK={$type:"EbnfSpecial",text:"text"},OF={$type:"EbnfTerm",base:"base",postfixes:"postfixes"},EK={$type:"EbnfTerminal",value:"value"},dK={$type:"EbnfZeroOrMorePostfix",operator:"operator"},FE={$type:"Edge",lhsDir:"lhsDir",lhsGroup:"lhsGroup",lhsId:"lhsId",lhsInto:"lhsInto",rhsDir:"rhsDir",rhsGroup:"rhsGroup",rhsId:"rhsId",rhsInto:"rhsInto",title:"title"},S4={$type:"EmDataEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",name:"name"},TI={$type:"EmFrame"},sF={$type:"EmGwt",givenStatements:"givenStatements",sourceFrame:"sourceFrame",thenStatements:"thenStatements",whenStatements:"whenStatements"},g_A={$type:"EmGwtStatement",entityIdentifier:"entityIdentifier"},vnA={$type:"EmModelEntity",name:"name"};G(wgA,"isEmModelEntityType");YY={$type:"EmNoteEntity",dataBlockValue:"dataBlockValue",dataType:"dataType",sourceFrame:"sourceFrame"},NI={$type:"EmResetFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"};G(Nx,"isEmResetFrame");y4={$type:"EmTimeFrame",dataInlineValue:"dataInlineValue",dataReference:"dataReference",dataType:"dataType",entityIdentifier:"entityIdentifier",modelEntityType:"modelEntityType",name:"name",sourceFrames:"sourceFrames"},knA={$type:"Entry",axis:"axis",value:"value"},yC={$type:"EventModel",accDescr:"accDescr",accTitle:"accTitle",dataEntities:"dataEntities",frames:"frames",gwtEntities:"gwtEntities",modelEntities:"modelEntities",noteEntities:"noteEntities",title:"title"},c_A={$type:"Evolution",stages:"stages"},HY={$type:"EvolutionStage",boundary:"boundary",name:"name",secondName:"secondName"},FnA={$type:"Evolve",component:"component",target:"target"},KI={$type:"GitGraph",accDescr:"accDescr",accTitle:"accTitle",statements:"statements",title:"title"};G(bgA,"isGitGraph");lF={$type:"Group",icon:"icon",id:"id",in:"in",title:"title"},b3={$type:"Info",accDescr:"accDescr",accTitle:"accTitle",title:"title"};G(vgA,"isInfo");gF={$type:"Item",classSelector:"classSelector",name:"name"},xnA={$type:"Junction",id:"id",in:"in"},cF={$type:"Label",negX:"negX",negY:"negY",offsetX:"offsetX",offsetY:"offsetY"},KY={$type:"Leaf",classSelector:"classSelector",name:"name",value:"value"},A3={$type:"Link",arrow:"arrow",from:"from",fromPort:"fromPort",linkLabel:"linkLabel",to:"to",toPort:"toPort"},G4={$type:"Merge",branch:"branch",id:"id",tags:"tags",type:"type"};G(kgA,"isMerge");JY={$type:"Note",evolution:"evolution",text:"text",visibility:"visibility"},SnA={$type:"Option",name:"name",value:"value"},U4={$type:"Packet",accDescr:"accDescr",accTitle:"accTitle",blocks:"blocks",title:"title"};G(FgA,"isPacket");M4={$type:"PacketBlock",bits:"bits",end:"end",label:"label",start:"start"};G(xgA,"isPacketBlock");IK={$type:"PegAny",dot:"dot"},hK={$type:"PegGroup",element:"element"},QK={$type:"PegIdentifier",name:"name"},pK={$type:"PegLiteral",value:"value"},fK={$type:"PegOrderedChoice",alternatives:"alternatives"},PF={$type:"PegPrefix",operator:"operator",suffix:"suffix"},p3={$type:"PegPrimary"},_F={$type:"PegRule",definition:"definition",name:"name"},mK={$type:"PegSequence",elements:"elements"},WF={$type:"PegSuffix",operator:"operator",primary:"primary"},JI={$type:"Pie",accDescr:"accDescr",accTitle:"accTitle",sections:"sections",showData:"showData",title:"title"};G(SgA,"isPie");Yw={$type:"PieSection",label:"label",value:"value"};G(LgA,"isPieSection");LnA={$type:"Pipeline",components:"components",parent:"parent"},OY={$type:"PipelineComponent",evolution:"evolution",label:"label",name:"name"},YI={$type:"Radar",accDescr:"accDescr",accTitle:"accTitle",axes:"axes",curves:"curves",options:"options",title:"title"},T4={$type:"Railroad",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};G(RgA,"isRailroad");Y4={$type:"RailroadAbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};G(NgA,"isRailroadAbnf");DK={$type:"RailroadChoiceExpr",alternatives:"alternatives"},H4={$type:"RailroadEbnf",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};G(GgA,"isRailroadEbnf");wC={$type:"RailroadExpression"},yK={$type:"RailroadNonTerminalExpr",name:"name"},wK={$type:"RailroadOneOrMoreExpr",element:"element"},bK={$type:"RailroadOptionalExpr",element:"element"},K4={$type:"RailroadPeg",accDescr:"accDescr",accTitle:"accTitle",rules:"rules",title:"title"};G(UgA,"isRailroadPeg");qF={$type:"RailroadRule",definition:"definition",name:"name"},vK={$type:"RailroadSequenceExpr",elements:"elements"},kK={$type:"RailroadSpecialExpr",text:"text"},FK={$type:"RailroadTerminalExpr",value:"value"},xK={$type:"RailroadZeroOrMoreExpr",element:"element"},RnA={$type:"Section",classSelector:"classSelector",name:"name"},hw={$type:"Service",icon:"icon",iconText:"iconText",id:"id",in:"in",title:"title"},NnA={$type:"Size",height:"height",width:"width"},L4={$type:"Statement"},v3={$type:"Transition",from:"from",label:"label",to:"to"};G(MgA,"isTransition");J4={$type:"Treemap",accDescr:"accDescr",accTitle:"accTitle",title:"title",TreemapRows:"TreemapRows"};G(TgA,"isTreemap");GnA={$type:"TreemapRow",indent:"indent",item:"item"},R4={$type:"TreeNode",classAnnotation:"classAnnotation",descAnnotation:"descAnnotation",iconAnnotation:"iconAnnotation",indent:"indent",name:"name"},f3={$type:"TreeView",accDescr:"accDescr",accTitle:"accTitle",nodes:"nodes",title:"title"},lo={$type:"Wardley",accDescr:"accDescr",accelerators:"accelerators",accTitle:"accTitle",anchors:"anchors",annotation:"annotation",annotations:"annotations",components:"components",deaccelerators:"deaccelerators",evolution:"evolution",evolves:"evolves",links:"links",notes:"notes",pipelines:"pipelines",size:"size",title:"title"};G(YgA,"isWardley");mte=class extends H0A{constructor(){super(...arguments);this.types={AbnfAlternation:{name:XH.$type,properties:{alternatives:{name:XH.alternatives,defaultValue:[]}},superTypes:[]},AbnfConcatenation:{name:$H.$type,properties:{elements:{name:$H.elements,defaultValue:[]}},superTypes:[]},AbnfElement:{name:HF.$type,properties:{primary:{name:HF.primary},repeat:{name:HF.repeat}},superTypes:[]},AbnfGroup:{name:AK.$type,properties:{element:{name:AK.element}},superTypes:[x4.$type]},AbnfNumVal:{name:eK.$type,properties:{value:{name:eK.value}},superTypes:[x4.$type]},AbnfOptionalGroup:{name:tK.$type,properties:{element:{name:tK.element}},superTypes:[x4.$type]},AbnfPrimary:{name:x4.$type,properties:{},superTypes:[]},AbnfRule:{name:KF.$type,properties:{definition:{name:KF.definition},name:{name:KF.name}},superTypes:[]},AbnfRuleName:{name:rK.$type,properties:{name:{name:rK.name}},superTypes:[x4.$type]},AbnfStringLiteral:{name:iK.$type,properties:{value:{name:iK.value}},superTypes:[x4.$type]},Accelerator:{name:LY.$type,properties:{name:{name:LY.name},x:{name:LY.x},y:{name:LY.y}},superTypes:[]},Alignment:{name:ynA.$type,properties:{direction:{name:ynA.direction},members:{name:ynA.members,defaultValue:[]}},superTypes:[]},Anchor:{name:RY.$type,properties:{evolution:{name:RY.evolution},name:{name:RY.name},visibility:{name:RY.visibility}},superTypes:[]},Annotation:{name:oF.$type,properties:{number:{name:oF.number},text:{name:oF.text},x:{name:oF.x},y:{name:oF.y}},superTypes:[]},Annotations:{name:wnA.$type,properties:{x:{name:wnA.x},y:{name:wnA.y}},superTypes:[]},Architecture:{name:cc.$type,properties:{accDescr:{name:cc.accDescr},accTitle:{name:cc.accTitle},alignments:{name:cc.alignments,defaultValue:[]},edges:{name:cc.edges,defaultValue:[]},groups:{name:cc.groups,defaultValue:[]},junctions:{name:cc.junctions,defaultValue:[]},services:{name:cc.services,defaultValue:[]},title:{name:cc.title}},superTypes:[]},Axis:{name:NY.$type,properties:{label:{name:NY.label},name:{name:NY.name}},superTypes:[]},Branch:{name:Mw.$type,properties:{name:{name:Mw.name},order:{name:Mw.order}},superTypes:[L4.$type]},Checkout:{name:s_A.$type,properties:{branch:{name:s_A.branch}},superTypes:[L4.$type]},CherryPicking:{name:GY.$type,properties:{id:{name:GY.id},parent:{name:GY.parent},tags:{name:GY.tags,defaultValue:[]}},superTypes:[L4.$type]},ClassDefStatement:{name:bnA.$type,properties:{className:{name:bnA.className},styleText:{name:bnA.styleText}},superTypes:[]},Commit:{name:N4.$type,properties:{id:{name:N4.id},message:{name:N4.message},tags:{name:N4.tags,defaultValue:[]},type:{name:N4.type}},superTypes:[L4.$type]},Common:{name:UY.$type,properties:{accDescr:{name:UY.accDescr},accTitle:{name:UY.accTitle},title:{name:UY.title}},superTypes:[]},Component:{name:$f.$type,properties:{decorator:{name:$f.decorator},evolution:{name:$f.evolution},inertia:{name:$f.inertia,defaultValue:!1},label:{name:$f.label},name:{name:$f.name},visibility:{name:$f.visibility}},superTypes:[]},Curve:{name:MY.$type,properties:{entries:{name:MY.entries,defaultValue:[]},label:{name:MY.label},name:{name:MY.name}},superTypes:[]},Cynefin:{name:HI.$type,properties:{accDescr:{name:HI.accDescr},accTitle:{name:HI.accTitle},domains:{name:HI.domains,defaultValue:[]},title:{name:HI.title},transitions:{name:HI.transitions,defaultValue:[]}},superTypes:[]},Deaccelerator:{name:TY.$type,properties:{name:{name:TY.name},x:{name:TY.x},y:{name:TY.y}},superTypes:[]},Decorator:{name:l_A.$type,properties:{strategy:{name:l_A.strategy}},superTypes:[]},Direction:{name:Iw.$type,properties:{accDescr:{name:Iw.accDescr},accTitle:{name:Iw.accTitle},dir:{name:Iw.dir},statements:{name:Iw.statements,defaultValue:[]},title:{name:Iw.title}},superTypes:[KI.$type]},DomainBlock:{name:Tw.$type,properties:{domain:{name:Tw.domain},items:{name:Tw.items,defaultValue:[]}},superTypes:[]},DomainItem:{name:gx.$type,properties:{label:{name:gx.label}},superTypes:[]},EbnfChoice:{name:uK.$type,properties:{alternatives:{name:uK.alternatives,defaultValue:[]}},superTypes:[]},EbnfExceptionPostfix:{name:aK.$type,properties:{except:{name:aK.except}},superTypes:[Q3.$type]},EbnfGroup:{name:nK.$type,properties:{element:{name:nK.element}},superTypes:[MI.$type]},EbnfNonTerminal:{name:oK.$type,properties:{name:{name:oK.name}},superTypes:[MI.$type]},EbnfOneOrMorePostfix:{name:sK.$type,properties:{operator:{name:sK.operator}},superTypes:[Q3.$type]},EbnfOptional:{name:lK.$type,properties:{element:{name:lK.element}},superTypes:[MI.$type]},EbnfOptionalPostfix:{name:gK.$type,properties:{operator:{name:gK.operator}},superTypes:[Q3.$type]},EbnfPostfix:{name:Q3.$type,properties:{},superTypes:[]},EbnfPrimary:{name:MI.$type,properties:{},superTypes:[]},EbnfRepetition:{name:cK.$type,properties:{element:{name:cK.element}},superTypes:[MI.$type]},EbnfRule:{name:JF.$type,properties:{definition:{name:JF.definition},name:{name:JF.name}},superTypes:[]},EbnfSequence:{name:CK.$type,properties:{elements:{name:CK.elements,defaultValue:[]}},superTypes:[]},EbnfSpecial:{name:BK.$type,properties:{text:{name:BK.text}},superTypes:[MI.$type]},EbnfTerm:{name:OF.$type,properties:{base:{name:OF.base},postfixes:{name:OF.postfixes,defaultValue:[]}},superTypes:[]},EbnfTerminal:{name:EK.$type,properties:{value:{name:EK.value}},superTypes:[MI.$type]},EbnfZeroOrMorePostfix:{name:dK.$type,properties:{operator:{name:dK.operator}},superTypes:[Q3.$type]},Edge:{name:FE.$type,properties:{lhsDir:{name:FE.lhsDir},lhsGroup:{name:FE.lhsGroup,defaultValue:!1},lhsId:{name:FE.lhsId},lhsInto:{name:FE.lhsInto,defaultValue:!1},rhsDir:{name:FE.rhsDir},rhsGroup:{name:FE.rhsGroup,defaultValue:!1},rhsId:{name:FE.rhsId},rhsInto:{name:FE.rhsInto,defaultValue:!1},title:{name:FE.title}},superTypes:[]},EmDataEntity:{name:S4.$type,properties:{dataBlockValue:{name:S4.dataBlockValue},dataType:{name:S4.dataType},name:{name:S4.name}},superTypes:[]},EmFrame:{name:TI.$type,properties:{},superTypes:[]},EmGwt:{name:sF.$type,properties:{givenStatements:{name:sF.givenStatements,defaultValue:[]},sourceFrame:{name:sF.sourceFrame,referenceType:TI.$type},thenStatements:{name:sF.thenStatements,defaultValue:[]},whenStatements:{name:sF.whenStatements,defaultValue:[]}},superTypes:[]},EmGwtStatement:{name:g_A.$type,properties:{entityIdentifier:{name:g_A.entityIdentifier,referenceType:vnA.$type}},superTypes:[]},EmModelEntity:{name:vnA.$type,properties:{name:{name:vnA.name}},superTypes:[]},EmNoteEntity:{name:YY.$type,properties:{dataBlockValue:{name:YY.dataBlockValue},dataType:{name:YY.dataType},sourceFrame:{name:YY.sourceFrame,referenceType:TI.$type}},superTypes:[]},EmResetFrame:{name:NI.$type,properties:{dataInlineValue:{name:NI.dataInlineValue},dataReference:{name:NI.dataReference,referenceType:S4.$type},dataType:{name:NI.dataType},entityIdentifier:{name:NI.entityIdentifier},modelEntityType:{name:NI.modelEntityType},name:{name:NI.name},sourceFrames:{name:NI.sourceFrames,defaultValue:[],referenceType:TI.$type}},superTypes:[TI.$type]},EmTimeFrame:{name:y4.$type,properties:{dataInlineValue:{name:y4.dataInlineValue},dataReference:{name:y4.dataReference,referenceType:S4.$type},dataType:{name:y4.dataType},entityIdentifier:{name:y4.entityIdentifier},modelEntityType:{name:y4.modelEntityType},name:{name:y4.name},sourceFrames:{name:y4.sourceFrames,defaultValue:[],referenceType:TI.$type}},superTypes:[TI.$type]},Entry:{name:knA.$type,properties:{axis:{name:knA.axis,referenceType:NY.$type},value:{name:knA.value}},superTypes:[]},EventModel:{name:yC.$type,properties:{accDescr:{name:yC.accDescr},accTitle:{name:yC.accTitle},dataEntities:{name:yC.dataEntities,defaultValue:[]},frames:{name:yC.frames,defaultValue:[]},gwtEntities:{name:yC.gwtEntities,defaultValue:[]},modelEntities:{name:yC.modelEntities,defaultValue:[]},noteEntities:{name:yC.noteEntities,defaultValue:[]},title:{name:yC.title}},superTypes:[]},Evolution:{name:c_A.$type,properties:{stages:{name:c_A.stages,defaultValue:[]}},superTypes:[]},EvolutionStage:{name:HY.$type,properties:{boundary:{name:HY.boundary},name:{name:HY.name},secondName:{name:HY.secondName}},superTypes:[]},Evolve:{name:FnA.$type,properties:{component:{name:FnA.component},target:{name:FnA.target}},superTypes:[]},GitGraph:{name:KI.$type,properties:{accDescr:{name:KI.accDescr},accTitle:{name:KI.accTitle},statements:{name:KI.statements,defaultValue:[]},title:{name:KI.title}},superTypes:[]},Group:{name:lF.$type,properties:{icon:{name:lF.icon},id:{name:lF.id},in:{name:lF.in},title:{name:lF.title}},superTypes:[]},Info:{name:b3.$type,properties:{accDescr:{name:b3.accDescr},accTitle:{name:b3.accTitle},title:{name:b3.title}},superTypes:[]},Item:{name:gF.$type,properties:{classSelector:{name:gF.classSelector},name:{name:gF.name}},superTypes:[]},Junction:{name:xnA.$type,properties:{id:{name:xnA.id},in:{name:xnA.in}},superTypes:[]},Label:{name:cF.$type,properties:{negX:{name:cF.negX,defaultValue:!1},negY:{name:cF.negY,defaultValue:!1},offsetX:{name:cF.offsetX},offsetY:{name:cF.offsetY}},superTypes:[]},Leaf:{name:KY.$type,properties:{classSelector:{name:KY.classSelector},name:{name:KY.name},value:{name:KY.value}},superTypes:[gF.$type]},Link:{name:A3.$type,properties:{arrow:{name:A3.arrow},from:{name:A3.from},fromPort:{name:A3.fromPort},linkLabel:{name:A3.linkLabel},to:{name:A3.to},toPort:{name:A3.toPort}},superTypes:[]},Merge:{name:G4.$type,properties:{branch:{name:G4.branch},id:{name:G4.id},tags:{name:G4.tags,defaultValue:[]},type:{name:G4.type}},superTypes:[L4.$type]},Note:{name:JY.$type,properties:{evolution:{name:JY.evolution},text:{name:JY.text},visibility:{name:JY.visibility}},superTypes:[]},Option:{name:SnA.$type,properties:{name:{name:SnA.name},value:{name:SnA.value,defaultValue:!1}},superTypes:[]},Packet:{name:U4.$type,properties:{accDescr:{name:U4.accDescr},accTitle:{name:U4.accTitle},blocks:{name:U4.blocks,defaultValue:[]},title:{name:U4.title}},superTypes:[]},PacketBlock:{name:M4.$type,properties:{bits:{name:M4.bits},end:{name:M4.end},label:{name:M4.label},start:{name:M4.start}},superTypes:[]},PegAny:{name:IK.$type,properties:{dot:{name:IK.dot}},superTypes:[p3.$type]},PegGroup:{name:hK.$type,properties:{element:{name:hK.element}},superTypes:[p3.$type]},PegIdentifier:{name:QK.$type,properties:{name:{name:QK.name}},superTypes:[p3.$type]},PegLiteral:{name:pK.$type,properties:{value:{name:pK.value}},superTypes:[p3.$type]},PegOrderedChoice:{name:fK.$type,properties:{alternatives:{name:fK.alternatives,defaultValue:[]}},superTypes:[]},PegPrefix:{name:PF.$type,properties:{operator:{name:PF.operator},suffix:{name:PF.suffix}},superTypes:[]},PegPrimary:{name:p3.$type,properties:{},superTypes:[]},PegRule:{name:_F.$type,properties:{definition:{name:_F.definition},name:{name:_F.name}},superTypes:[]},PegSequence:{name:mK.$type,properties:{elements:{name:mK.elements,defaultValue:[]}},superTypes:[]},PegSuffix:{name:WF.$type,properties:{operator:{name:WF.operator},primary:{name:WF.primary}},superTypes:[]},Pie:{name:JI.$type,properties:{accDescr:{name:JI.accDescr},accTitle:{name:JI.accTitle},sections:{name:JI.sections,defaultValue:[]},showData:{name:JI.showData,defaultValue:!1},title:{name:JI.title}},superTypes:[]},PieSection:{name:Yw.$type,properties:{label:{name:Yw.label},value:{name:Yw.value}},superTypes:[]},Pipeline:{name:LnA.$type,properties:{components:{name:LnA.components,defaultValue:[]},parent:{name:LnA.parent}},superTypes:[]},PipelineComponent:{name:OY.$type,properties:{evolution:{name:OY.evolution},label:{name:OY.label},name:{name:OY.name}},superTypes:[]},Radar:{name:YI.$type,properties:{accDescr:{name:YI.accDescr},accTitle:{name:YI.accTitle},axes:{name:YI.axes,defaultValue:[]},curves:{name:YI.curves,defaultValue:[]},options:{name:YI.options,defaultValue:[]},title:{name:YI.title}},superTypes:[]},Railroad:{name:T4.$type,properties:{accDescr:{name:T4.accDescr},accTitle:{name:T4.accTitle},rules:{name:T4.rules,defaultValue:[]},title:{name:T4.title}},superTypes:[]},RailroadAbnf:{name:Y4.$type,properties:{accDescr:{name:Y4.accDescr},accTitle:{name:Y4.accTitle},rules:{name:Y4.rules,defaultValue:[]},title:{name:Y4.title}},superTypes:[]},RailroadChoiceExpr:{name:DK.$type,properties:{alternatives:{name:DK.alternatives,defaultValue:[]}},superTypes:[wC.$type]},RailroadEbnf:{name:H4.$type,properties:{accDescr:{name:H4.accDescr},accTitle:{name:H4.accTitle},rules:{name:H4.rules,defaultValue:[]},title:{name:H4.title}},superTypes:[]},RailroadExpression:{name:wC.$type,properties:{},superTypes:[]},RailroadNonTerminalExpr:{name:yK.$type,properties:{name:{name:yK.name}},superTypes:[wC.$type]},RailroadOneOrMoreExpr:{name:wK.$type,properties:{element:{name:wK.element}},superTypes:[wC.$type]},RailroadOptionalExpr:{name:bK.$type,properties:{element:{name:bK.element}},superTypes:[wC.$type]},RailroadPeg:{name:K4.$type,properties:{accDescr:{name:K4.accDescr},accTitle:{name:K4.accTitle},rules:{name:K4.rules,defaultValue:[]},title:{name:K4.title}},superTypes:[]},RailroadRule:{name:qF.$type,properties:{definition:{name:qF.definition},name:{name:qF.name}},superTypes:[]},RailroadSequenceExpr:{name:vK.$type,properties:{elements:{name:vK.elements,defaultValue:[]}},superTypes:[wC.$type]},RailroadSpecialExpr:{name:kK.$type,properties:{text:{name:kK.text}},superTypes:[wC.$type]},RailroadTerminalExpr:{name:FK.$type,properties:{value:{name:FK.value}},superTypes:[wC.$type]},RailroadZeroOrMoreExpr:{name:xK.$type,properties:{element:{name:xK.element}},superTypes:[wC.$type]},Section:{name:RnA.$type,properties:{classSelector:{name:RnA.classSelector},name:{name:RnA.name}},superTypes:[gF.$type]},Service:{name:hw.$type,properties:{icon:{name:hw.icon},iconText:{name:hw.iconText},id:{name:hw.id},in:{name:hw.in},title:{name:hw.title}},superTypes:[]},Size:{name:NnA.$type,properties:{height:{name:NnA.height},width:{name:NnA.width}},superTypes:[]},Statement:{name:L4.$type,properties:{},superTypes:[]},Transition:{name:v3.$type,properties:{from:{name:v3.from},label:{name:v3.label},to:{name:v3.to}},superTypes:[]},TreeNode:{name:R4.$type,properties:{classAnnotation:{name:R4.classAnnotation},descAnnotation:{name:R4.descAnnotation},iconAnnotation:{name:R4.iconAnnotation},indent:{name:R4.indent},name:{name:R4.name}},superTypes:[]},TreeView:{name:f3.$type,properties:{accDescr:{name:f3.accDescr},accTitle:{name:f3.accTitle},nodes:{name:f3.nodes,defaultValue:[]},title:{name:f3.title}},superTypes:[]},Treemap:{name:J4.$type,properties:{accDescr:{name:J4.accDescr},accTitle:{name:J4.accTitle},title:{name:J4.title},TreemapRows:{name:J4.TreemapRows,defaultValue:[]}},superTypes:[]},TreemapRow:{name:GnA.$type,properties:{indent:{name:GnA.indent},item:{name:GnA.item}},superTypes:[]},Wardley:{name:lo.$type,properties:{accDescr:{name:lo.accDescr},accelerators:{name:lo.accelerators,defaultValue:[]},accTitle:{name:lo.accTitle},anchors:{name:lo.anchors,defaultValue:[]},annotation:{name:lo.annotation,defaultValue:[]},annotations:{name:lo.annotations,defaultValue:[]},components:{name:lo.components,defaultValue:[]},deaccelerators:{name:lo.deaccelerators,defaultValue:[]},evolution:{name:lo.evolution},evolves:{name:lo.evolves,defaultValue:[]},links:{name:lo.links,defaultValue:[]},notes:{name:lo.notes,defaultValue:[]},pipelines:{name:lo.pipelines,defaultValue:[]},size:{name:lo.size},title:{name:lo.title}},superTypes:[]}}}static{G(this,"MermaidAstReflection")}},In=new mte,N7t=G(()=>C_A??(C_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"ArchitectureGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Architecture","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"architecture-beta"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"groups","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"services","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"junctions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Assignment","feature":"edges","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"alignments","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"LeftPort","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"lhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"RightPort","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"rhsDir","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Keyword","value":":"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Arrow","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Assignment","feature":"lhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"--"},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]}},{"$type":"Keyword","value":"-"}]}]},{"$type":"Assignment","feature":"rhsInto","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Group","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"group"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Service","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"service"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"iconText","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"icon","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Junction","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"junction"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"in"},{"$type":"Assignment","feature":"in","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Edge","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"lhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"lhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Assignment","feature":"rhsId","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"rhsGroup","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Alignment","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"align"},{"$type":"Assignment","feature":"direction","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"row"},{"$type":"Keyword","value":"column"}]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Assignment","feature":"members","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ARROW_DIRECTION","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"L"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"R"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"T"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"B"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_GROUP","definition":{"$type":"RegexToken","regex":"/\\\\{group\\\\}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW_INTO","definition":{"$type":"RegexToken","regex":"/<|>/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@19"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@20"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"ARCH_ICON","definition":{"$type":"RegexToken","regex":"/\\\\([\\\\w-:]+\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARCH_TITLE","definition":{"$type":"RegexToken","regex":"/\\\\[(?:\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'|[^\\\\[\\\\]\\\\r\\\\n]+)\\\\]/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"ArchitectureGrammarGrammar"),G7t=G(()=>B_A??(B_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"CynefinGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Cynefin","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"cynefin-beta"},{"$type":"Keyword","value":"cynefin-beta:"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"domains","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"transitions","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainBlock","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"domain","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Assignment","feature":"items","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"DomainItem","definition":{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Transition","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":"-->"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"DOMAIN_NAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complex"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"complicated"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"clear"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"chaotic"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"confusion"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"CynefinGrammarGrammar"),U7t=G(()=>E_A??(E_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"EventModeling","interfaces":[{"$type":"Interface","name":"Common","attributes":[{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"rules":[{"$type":"ParserRule","entry":true,"name":"EventModel","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"eventmodeling"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"frames","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"dataEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"noteEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"gwtEntities","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntityType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rmo"},{"$type":"Keyword","value":"readmodel"},{"$type":"Keyword","value":"ui"},{"$type":"Keyword","value":"cmd"},{"$type":"Keyword","value":"command"},{"$type":"Keyword","value":"evt"},{"$type":"Keyword","value":"event"},{"$type":"Keyword","value":"pcr"},{"$type":"Keyword","value":"processor"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataType","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"json"},{"$type":"Keyword","value":"jsobj"},{"$type":"Keyword","value":"figma"},{"$type":"Keyword","value":"salt"},{"$type":"Keyword","value":"uri"},{"$type":"Keyword","value":"md"},{"$type":"Keyword","value":"html"},{"$type":"Keyword","value":"text"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataInline","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataInlineValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"EmDataBlock","definition":{"$type":"Group","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"`"},{"$type":"Assignment","feature":"dataType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Keyword","value":"`"}],"cardinality":"?"},{"$type":"Assignment","feature":"dataBlockValue","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"QualifiedName","dataType":"string","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"."},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmTimeFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"tf"},{"$type":"Keyword","value":"timeframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmResetFrame","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"rf"},{"$type":"Keyword","value":"resetframe"}]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"modelEntityType","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"->>"},{"$type":"Assignment","feature":"sourceFrames","operator":"+=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"[["},{"$type":"Assignment","feature":"dataReference","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@10"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"]]"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmFrame","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmModelEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"entity"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmDataEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"data"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmNoteEntity","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"note"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwt","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"gwt"},{"$type":"Assignment","feature":"sourceFrame","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@8"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":"given"},{"$type":"Assignment","feature":"givenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"},{"$type":"Group","elements":[{"$type":"Keyword","value":"when"},{"$type":"Assignment","feature":"whenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}],"cardinality":"?"},{"$type":"Keyword","value":"then"},{"$type":"Assignment","feature":"thenStatements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"+"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EmGwtStatement","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]},{"$type":"Assignment","feature":"entityIdentifier","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@9"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_EID","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EM_FI","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"EM_ID","definition":{"$type":"RegexToken","regex":"/[_a-zA-Z][\\\\w_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_FID","definition":{"$type":"RegexToken","regex":"/\\\\d{1,3}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_INLINE","definition":{"$type":"RegexToken","regex":"/\\\\{(.*)\\\\}|\\"(.*)\\"|\'(.*)\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_DATA_BLOCK","definition":{"$type":"RegexToken","regex":"/\\\\{[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?\\\\}(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EM_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EM_WS","definition":{"$type":"RegexToken","regex":"/\\\\s+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EM_SL_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\/[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"imports":[],"types":[]}')),"EventModelingGrammar"),M7t=G(()=>d_A??(d_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"GitGraphGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"GitGraph","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"Keyword","value":":"}]},{"$type":"Keyword","value":"gitGraph:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"gitGraph"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]},{"$type":"Keyword","value":":"}]}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"Assignment","feature":"statements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Direction","definition":{"$type":"Assignment","feature":"dir","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"LR"},{"$type":"Keyword","value":"TB"},{"$type":"Keyword","value":"BT"}]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Commit","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"commit"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"msg:","cardinality":"?"},{"$type":"Assignment","feature":"message","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Branch","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"branch"},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"order:"},{"$type":"Assignment","feature":"order","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Merge","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"merge"},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"type:"},{"$type":"Assignment","feature":"type","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"NORMAL"},{"$type":"Keyword","value":"REVERSE"},{"$type":"Keyword","value":"HIGHLIGHT"}]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Checkout","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"checkout"},{"$type":"Keyword","value":"switch"}]},{"$type":"Assignment","feature":"branch","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CherryPicking","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"cherry-pick"},{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Keyword","value":"id:"},{"$type":"Assignment","feature":"id","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"tag:"},{"$type":"Assignment","feature":"tags","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"parent:"},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@14"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"REFERENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\w([-\\\\./\\\\w]*[-\\\\w])?/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[],"types":[]}')),"GitGraphGrammarGrammar"),T7t=G(()=>I_A??(I_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"InfoGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Info","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"info"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"},{"$type":"Group","elements":[{"$type":"Keyword","value":"showInfo"},{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"*"}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[],"cardinality":"?"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@7"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"InfoGrammarGrammar"),Y7t=G(()=>h_A??(h_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"PacketGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Packet","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"packet"},{"$type":"Keyword","value":"packet-beta"}]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]},{"$type":"Assignment","feature":"blocks","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PacketBlock","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"start","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"end","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}],"cardinality":"?"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"+"},{"$type":"Assignment","feature":"bits","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}}]}]},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@8"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@9"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PacketGrammarGrammar"),H7t=G(()=>Q_A??(Q_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"PieGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Pie","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"*"},{"$type":"Keyword","value":"pie"},{"$type":"Assignment","feature":"showData","operator":"?=","terminal":{"$type":"Keyword","value":"showData"},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Assignment","feature":"sections","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PieSection","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":":"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"FLOAT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/-?(0|[1-9][0-9]*)(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER_PIE","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@2"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@3"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@11"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@12"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"PieGrammarGrammar"),K7t=G(()=>p_A??(p_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"RadarGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Radar","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":"radar-beta:"},{"$type":"Group","elements":[{"$type":"Keyword","value":"radar-beta"},{"$type":"Keyword","value":":"}]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]},{"$type":"Group","elements":[{"$type":"Keyword","value":"axis"},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"axes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Keyword","value":"curve"},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"curves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"options","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Label","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Axis","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Curve","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[],"cardinality":"?"},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Entries","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"},{"$type":"Assignment","feature":"entries","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}}],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"*"}]}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"DetailedEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"axis","operator":"=","terminal":{"$type":"CrossReference","type":{"$ref":"#/rules@2"},"terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},"deprecatedSyntax":false,"isMulti":false}},{"$type":"Keyword","value":":","cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"NumberEntry","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Option","definition":{"$type":"Alternatives","elements":[{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"showLegend"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"ticks"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"max"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"min"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Keyword","value":"graticule"}},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]}}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"GRATICULE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"circle"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"polygon"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@15"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@16"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[{"$type":"Interface","name":"Entry","attributes":[{"$type":"TypeAttribute","name":"axis","isOptional":true,"type":{"$type":"ReferenceType","referenceType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@2"}},"isMulti":false}},{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}],"superTypes":[]}],"types":[]}')),"RadarGrammarGrammar"),J7t=G(()=>f_A??(f_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"RailroadAbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_RULENAME","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Za-z][A-Za-z0-9-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_NUMVAL","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/%[xXdDbB][0-9A-Fa-f]+(?:-[0-9A-Fa-f]+|\\\\.[0-9A-Fa-f]+)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]*\\\\*[0-9]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ABNF_EXACT_REPEAT","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ABNF_COMMENT","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadAbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-abnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfAlternation","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfConcatenation","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfElement","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"repeat","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"?"},{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfStringLiteral","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfNumVal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfRuleName","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"AbnfOptionalGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadAbnf","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfAlternation","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfConcatenation","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfElement","attributes":[{"$type":"TypeAttribute","name":"repeat","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"AbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"AbnfStringLiteral","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfNumVal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfRuleName","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"AbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"AbnfOptionalGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadAbnfGrammarGrammar"),O7t=G(()=>m_A??(m_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"RailroadEbnfGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"EBNF_SPECIAL_SEQUENCE","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\\\?(?=[^?;]*[^?\\\\s;][^?;]*\\\\?)[^?;]*\\\\?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"EBNF_ISO_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\(\\\\*[\\\\s\\\\S]*?\\\\*\\\\)/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadEbnf","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-ebnf-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Keyword","value":"="},{"$type":"Keyword","value":"::="}]},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"|"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":",","cardinality":"?"},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerm","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"base","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"postfixes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]},"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPrimary","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfTerminal","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfNonTerminal","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfSpecial","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfGroup","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptional","returnType":{"$ref":"#/interfaces@11"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfRepetition","returnType":{"$ref":"#/interfaces@12"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"{"},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Keyword","value":"}"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfPostfix","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOptionalPostfix","returnType":{"$ref":"#/interfaces@13"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfZeroOrMorePostfix","returnType":{"$ref":"#/interfaces@14"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfOneOrMorePostfix","returnType":{"$ref":"#/interfaces@15"},"definition":{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EbnfExceptionPostfix","returnType":{"$ref":"#/interfaces@16"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"-"},{"$type":"Assignment","feature":"except","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadEbnf","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfTerm","attributes":[{"$type":"TypeAttribute","name":"base","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false},{"$type":"TypeAttribute","name":"postfixes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"EbnfPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfPostfix","attributes":[],"superTypes":[]},{"$type":"Interface","name":"EbnfTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfNonTerminal","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfSpecial","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfGroup","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptional","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfRepetition","superTypes":[{"$ref":"#/interfaces@5"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"EbnfOptionalPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfZeroOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfOneOrMorePostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"operator","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"EbnfExceptionPostfix","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"except","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadEbnfGrammarGrammar"),P7t=G(()=>D_A??(D_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"RailroadGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"RR_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"RR_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"RR_BLOCK_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\/\\\\*[\\\\s\\\\S]*?\\\\*\\\\//","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"Railroad","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"="},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadExpression","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSequenceExpr","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"sequence"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadChoiceExpr","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"choice"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}}],"cardinality":"*"},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOptionalExpr","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"optional"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadOneOrMoreExpr","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"oneOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadZeroOrMoreExpr","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"zeroOrMore"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadTerminalExpr","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"terminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadNonTerminalExpr","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"nonterminal"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"RailroadSpecialExpr","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"special"},{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"Railroad","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"RailroadExpression","attributes":[],"superTypes":[]},{"$type":"Interface","name":"RailroadSequenceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadChoiceExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOptionalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadOneOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadZeroOrMoreExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"RailroadTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadNonTerminalExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"RailroadSpecialExpr","superTypes":[{"$ref":"#/interfaces@2"}],"attributes":[{"$type":"TypeAttribute","name":"text","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadGrammarGrammar"),_7t=G(()=>y_A??(y_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"RailroadPegGrammar","rules":[{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[A-Z_a-z][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"PEG_STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t \\\\r\\\\n]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"PEG_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/#[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false},{"$type":"ParserRule","entry":true,"name":"RailroadPeg","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"railroad-peg-beta"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"*"},{"$type":"Assignment","feature":"rules","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegRule","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Keyword","value":"<-"},{"$type":"Assignment","feature":"definition","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":";"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegOrderedChoice","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"alternatives","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSequence","returnType":{"$ref":"#/interfaces@3"},"definition":{"$type":"Assignment","feature":"elements","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"+"},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrefix","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"&"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"!"}}],"cardinality":"?"},{"$type":"Assignment","feature":"suffix","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegSuffix","returnType":{"$ref":"#/interfaces@5"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"primary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"?"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"*"}},{"$type":"Assignment","feature":"operator","operator":"=","terminal":{"$type":"Keyword","value":"+"}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegPrimary","returnType":{"$ref":"#/interfaces@6"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegLiteral","returnType":{"$ref":"#/interfaces@7"},"definition":{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegIdentifier","returnType":{"$ref":"#/interfaces@8"},"definition":{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegGroup","returnType":{"$ref":"#/interfaces@9"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"element","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PegAny","returnType":{"$ref":"#/interfaces@10"},"definition":{"$type":"Assignment","feature":"dot","operator":"=","terminal":{"$type":"Keyword","value":"."}},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"RailroadPeg","attributes":[{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"rules","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@1"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegRule","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"definition","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegOrderedChoice","attributes":[{"$type":"TypeAttribute","name":"alternatives","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@3"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSequence","attributes":[{"$type":"TypeAttribute","name":"elements","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@4"}}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegPrefix","attributes":[{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"suffix","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@5"}},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"PegSuffix","attributes":[{"$type":"TypeAttribute","name":"primary","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@6"}},"isOptional":false},{"$type":"TypeAttribute","name":"operator","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"PegPrimary","attributes":[],"superTypes":[]},{"$type":"Interface","name":"PegLiteral","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegIdentifier","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]},{"$type":"Interface","name":"PegGroup","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"element","type":{"$type":"SimpleType","typeRef":{"$ref":"#/interfaces@2"}},"isOptional":false}]},{"$type":"Interface","name":"PegAny","superTypes":[{"$ref":"#/interfaces@6"}],"attributes":[{"$type":"TypeAttribute","name":"dot","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}]}],"imports":[],"types":[]}')),"RailroadPegGrammarGrammar"),W7t=G(()=>w_A??(w_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"TreemapGrammar","rules":[{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"Treemap","returnType":{"$ref":"#/interfaces@4"},"definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]},{"$type":"Assignment","feature":"TreemapRows","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"TREEMAP_KEYWORD","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap-beta"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"treemap"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"CLASS_DEF","definition":{"$type":"RegexToken","regex":"/classDef\\\\s+([a-zA-Z_][a-zA-Z0-9_]+)(?:\\\\s+([^;\\\\r\\\\n]*))?(?:;)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STYLE_SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":::"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"SEPARATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":":"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"COMMA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":","},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"TreemapRow","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"item","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"ClassDef","dataType":"string","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Item","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Section","returnType":{"$ref":"#/interfaces@1"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Leaf","returnType":{"$ref":"#/interfaces@2"},"definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"value","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},{"$type":"Assignment","feature":"classSelector","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"ID2","definition":{"$type":"RegexToken","regex":"/[a-zA-Z_][a-zA-Z0-9_]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER2","definition":{"$type":"RegexToken","regex":"/[0-9_\\\\.\\\\,]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"MyNumber","dataType":"number","definition":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"STRING2","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"fragment":false,"hidden":false}],"interfaces":[{"$type":"Interface","name":"Item","attributes":[{"$type":"TypeAttribute","name":"name","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"classSelector","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]},{"$type":"Interface","name":"Section","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[]},{"$type":"Interface","name":"Leaf","superTypes":[{"$ref":"#/interfaces@0"}],"attributes":[{"$type":"TypeAttribute","name":"value","type":{"$type":"SimpleType","primitiveType":"number"},"isOptional":false}]},{"$type":"Interface","name":"ClassDefStatement","attributes":[{"$type":"TypeAttribute","name":"className","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false},{"$type":"TypeAttribute","name":"styleText","type":{"$type":"SimpleType","primitiveType":"string"},"isOptional":false}],"superTypes":[]},{"$type":"Interface","name":"Treemap","attributes":[{"$type":"TypeAttribute","name":"TreemapRows","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@15"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * Treemap grammar for Langium\\n * Converted from mindmap grammar\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treemap keyword, allowing for empty lines and comments before the\\n * treemap declaration.\\n */"}')),"TreemapGrammarGrammar"),q7t=G(()=>b_A??(b_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"TreeViewGrammar","rules":[{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","entry":true,"name":"TreeView","returnType":{"$ref":"#/interfaces@0"},"definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"treeView-beta"},{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[],"cardinality":"?"},{"$type":"Assignment","feature":"nodes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]},"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@0"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"CLASS_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+:::[ \\\\t]*[A-Za-z_][\\\\w-]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ICON_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+icon\\\\([\\\\w-]*(?::[\\\\w-]+)?\\\\)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"DESC_ANNOTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+##[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INDENTATION","definition":{"$type":"RegexToken","regex":"/[ \\\\t]{1,}/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"QUOTED_NAME","definition":{"$type":"RegexToken","regex":"/\\"[^\\"]*\\"|\'[^\']*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"ML_COMMENT","definition":{"$type":"RegexToken","regex":"/\\\\%\\\\%[^\\\\n]*/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"NL","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","name":"BARE_NAME","definition":{"$type":"RegexToken","regex":"/(?!:::|icon\\\\(|##)[^ \\\\t\\\\n\\\\r\\"\'](?:(?![ \\\\t]+:::[ \\\\t]*[A-Za-z_]|[ \\\\t]+icon\\\\(|[ \\\\t]+##)[^\\\\n\\\\r])*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"ParserRule","name":"TreeNode","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"indent","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}}]},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"classAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"iconAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"descAnnotation","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]}}],"cardinality":"*"}]},"entry":false,"fragment":false,"parameters":[]}],"interfaces":[{"$type":"Interface","name":"TreeView","attributes":[{"$type":"TypeAttribute","name":"nodes","type":{"$type":"ArrayType","elementType":{"$type":"SimpleType","typeRef":{"$ref":"#/rules@14"}}},"isOptional":false},{"$type":"TypeAttribute","name":"title","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accTitle","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}},{"$type":"TypeAttribute","name":"accDescr","isOptional":true,"type":{"$type":"SimpleType","primitiveType":"string"}}],"superTypes":[]}],"imports":[],"types":[],"$comment":"/**\\n * TreeView grammar for Langium\\n *\\n * Supports both quoted labels (\\"my file\\") and bare labels (index.js).\\n * Annotations (:::class, icon(), ## description) are parsed directly into\\n * AST fields by the grammar. Value conversion for stripping quotes, extracting\\n * class names, icon names, and description text happens in valueConverter.ts.\\n *\\n * The ML_COMMENT and NL hidden terminals handle whitespace, comments, and newlines\\n * before the treeView keyword, allowing for empty lines and comments before the\\n * treeView declaration.\\n */"}')),"TreeViewGrammarGrammar"),z7t=G(()=>v_A??(v_A=Oo('{"$type":"Grammar","isDeclared":true,"name":"WardleyGrammar","imports":[],"rules":[{"$type":"ParserRule","entry":true,"name":"Wardley","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"*"},{"$type":"RuleCall","rule":{"$ref":"#/rules@25"},"arguments":[]},{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@42"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@1"},"arguments":[]}],"cardinality":"*"}]},"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"Statement","definition":{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"size","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@2"},"arguments":[]}},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@3"},"arguments":[]}},{"$type":"Assignment","feature":"anchors","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@5"},"arguments":[]}},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@6"},"arguments":[]}},{"$type":"Assignment","feature":"links","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@9"},"arguments":[]}},{"$type":"Assignment","feature":"evolves","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@10"},"arguments":[]}},{"$type":"Assignment","feature":"pipelines","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@11"},"arguments":[]}},{"$type":"Assignment","feature":"notes","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@13"},"arguments":[]}},{"$type":"Assignment","feature":"annotations","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@14"},"arguments":[]}},{"$type":"Assignment","feature":"annotation","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@15"},"arguments":[]}},{"$type":"Assignment","feature":"accelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@17"},"arguments":[]}},{"$type":"Assignment","feature":"deaccelerators","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@18"},"arguments":[]}}]},"entry":false,"parameters":[]},{"$type":"ParserRule","name":"Size","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@26"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"width","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"height","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolution","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@27"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]},{"$type":"Assignment","feature":"stages","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@4"},"arguments":[]}}],"cardinality":"+"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"EvolutionStage","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"@"},{"$type":"Assignment","feature":"boundary","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}}],"cardinality":"?"},{"$type":"Group","elements":[{"$type":"Keyword","value":"/"},{"$type":"Assignment","feature":"secondName","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}}],"cardinality":"?"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Anchor","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@28"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Component","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"decorator","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@8"},"arguments":[]},"cardinality":"?"},{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"inertia","operator":"?=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@31"},"arguments":[]}},{"$type":"Keyword","value":")"}]}],"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Label","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@30"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"negX","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetX","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"negY","operator":"?=","terminal":{"$type":"Keyword","value":"-"},"cardinality":"?"},{"$type":"Assignment","feature":"offsetY","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":"]"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Decorator","definition":{"$type":"Group","elements":[{"$type":"Keyword","value":"("},{"$type":"Assignment","feature":"strategy","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@24"},"arguments":[]}},{"$type":"Keyword","value":")"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Link","definition":{"$type":"Group","elements":[{"$type":"Assignment","feature":"from","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"fromPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"arrow","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@22"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@20"},"arguments":[]}]},"cardinality":"?"},{"$type":"Assignment","feature":"to","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"toPort","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@21"},"arguments":[]},"cardinality":"?"},{"$type":"Assignment","feature":"linkLabel","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@23"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Evolve","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@32"},"arguments":[]},{"$type":"Assignment","feature":"component","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Assignment","feature":"target","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Pipeline","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@33"},"arguments":[]},{"$type":"Assignment","feature":"parent","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"{"},{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"Assignment","feature":"components","operator":"+=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@12"},"arguments":[]},"cardinality":"+"},{"$type":"Keyword","value":"}"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"PipelineComponent","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@29"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"label","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@7"},"arguments":[]},"cardinality":"?"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Note","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@34"},"arguments":[]},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"visibility","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"evolution","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotations","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@35"},"arguments":[]},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Annotation","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@36"},"arguments":[]},{"$type":"Assignment","feature":"number","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@16"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"Assignment","feature":"text","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]}},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"CoordinateValue","dataType":"number","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@48"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Accelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@37"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","name":"Deaccelerator","definition":{"$type":"Group","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@38"},"arguments":[]},{"$type":"Assignment","feature":"name","operator":"=","terminal":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@50"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@51"},"arguments":[]},{"$type":"RuleCall","rule":{"$ref":"#/rules@39"},"arguments":[]}]}},{"$type":"Keyword","value":"["},{"$type":"Assignment","feature":"x","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":","},{"$type":"Assignment","feature":"y","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@19"},"arguments":[]}},{"$type":"Keyword","value":"]"},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"TerminalRule","name":"WARDLEY_NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ARROW","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"->"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_PORT","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<>"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+>"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"+<"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_ARROW","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"-->"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"-.->"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":">"},"parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'<>/","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'</","parenthesized":false}],"parenthesized":false},{"$type":"RegexToken","regex":"/\\\\+\'[^\']*\'>/","parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"LINK_LABEL","definition":{"$type":"RegexToken","regex":"/;[^\\\\n\\\\r]+/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRATEGY","definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"build"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"buy"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"outsource"},"parenthesized":false}],"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"market"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_WARDLEY","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"wardley-beta"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_SIZE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"size"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLUTION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolution"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANCHOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"anchor"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_COMPONENT","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"component"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_LABEL","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"label"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_INERTIA","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"inertia"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_EVOLVE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"evolve"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_PIPELINE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"pipeline"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_NOTE","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"note"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATIONS","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotations"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ANNOTATION","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"annotation"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_ACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"accelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"KW_DEACCELERATOR","definition":{"$type":"CharacterRange","left":{"$type":"Keyword","value":"deaccelerator"},"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NAME_WITH_SPACES","definition":{"$type":"RegexToken","regex":"/(?!title\\\\s|accTitle|accDescr)[A-Za-z](?:[A-Za-z0-9_()&]|-(?!>))*(?:[ \\\\t]+[A-Za-z(](?:[A-Za-z0-9_()&]|-(?!>))*)*/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WS","definition":{"$type":"RegexToken","regex":"/[ \\\\t]+/","parenthesized":false},"fragment":false},{"$type":"ParserRule","name":"EOL","dataType":"string","definition":{"$type":"Alternatives","elements":[{"$type":"RuleCall","rule":{"$ref":"#/rules@52"},"arguments":[],"cardinality":"+"},{"$type":"EndOfFile"}]},"entry":false,"fragment":false,"parameters":[]},{"$type":"ParserRule","fragment":true,"name":"TitleAndAccessibilities","definition":{"$type":"Group","elements":[{"$type":"Alternatives","elements":[{"$type":"Assignment","feature":"accDescr","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@44"},"arguments":[]}},{"$type":"Assignment","feature":"accTitle","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@45"},"arguments":[]}},{"$type":"Assignment","feature":"title","operator":"=","terminal":{"$type":"RuleCall","rule":{"$ref":"#/rules@46"},"arguments":[]}}]},{"$type":"RuleCall","rule":{"$ref":"#/rules@41"},"arguments":[]}],"cardinality":"+"},"entry":false,"parameters":[]},{"$type":"TerminalRule","name":"BOOLEAN","type":{"$type":"ReturnType","name":"boolean"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"CharacterRange","left":{"$type":"Keyword","value":"true"},"parenthesized":false},{"$type":"CharacterRange","left":{"$type":"Keyword","value":"false"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_DESCR","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accDescr(?:[\\\\t ]*:([^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)|\\\\s*{([^}]*)})/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ACC_TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*accTitle[\\\\t ]*:(?:[^\\\\n\\\\r]*?(?=%%)|[^\\\\n\\\\r]*)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"TITLE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*title(?:[\\\\t ][^\\\\n\\\\r]*?(?=%%)|[\\\\t ][^\\\\n\\\\r]*|)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"FLOAT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/[0-9]+\\\\.[0-9]+(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"INT","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"RegexToken","regex":"/0|[1-9][0-9]*(?!\\\\.)/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NUMBER","type":{"$type":"ReturnType","name":"number"},"definition":{"$type":"TerminalAlternatives","elements":[{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@47"},"parenthesized":false},{"$type":"TerminalRuleCall","rule":{"$ref":"#/rules@48"},"parenthesized":false}],"parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"STRING","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\"|\'([^\'\\\\\\\\]|\\\\\\\\.)*\'/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"ID","type":{"$type":"ReturnType","name":"string"},"definition":{"$type":"RegexToken","regex":"/[\\\\w]([-\\\\w]*\\\\w)?/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","name":"NEWLINE","definition":{"$type":"RegexToken","regex":"/\\\\r?\\\\n/","parenthesized":false},"fragment":false,"hidden":false},{"$type":"TerminalRule","hidden":true,"name":"WHITESPACE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]+/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"YAML","definition":{"$type":"RegexToken","regex":"/---[\\\\t ]*\\\\r?\\\\n(?:[\\\\S\\\\s]*?\\\\r?\\\\n)?---(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"DIRECTIVE","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%{[\\\\S\\\\s]*?}%%(?:\\\\r?\\\\n|(?!\\\\S))/","parenthesized":false},"fragment":false},{"$type":"TerminalRule","hidden":true,"name":"SINGLE_LINE_COMMENT","definition":{"$type":"RegexToken","regex":"/[\\\\t ]*%%[^\\\\n\\\\r]*/","parenthesized":false},"fragment":false}],"interfaces":[],"types":[]}')),"WardleyGrammarGrammar"),Z7t={languageId:"architecture",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},V7t={languageId:"cynefin",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},j7t={languageId:"eventmodeling",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},X7t={languageId:"gitGraph",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$7t={languageId:"info",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},A8t={languageId:"packet",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},e8t={languageId:"pie",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},t8t={languageId:"radar",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},r8t={languageId:"railroadAbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},i8t={languageId:"railroadEbnf",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},u8t={languageId:"railroad",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},a8t={languageId:"railroadPeg",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},n8t={languageId:"treemap",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},o8t={languageId:"treeView",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},s8t={languageId:"wardley",fileExtensions:[".mmd",".mermaid"],caseInsensitive:!1,mode:"production"},$i={AstReflection:G(()=>new mte,"AstReflection")},KJ={Grammar:G(()=>N7t(),"Grammar"),LanguageMetaData:G(()=>Z7t,"LanguageMetaData"),parser:{}},JJ={Grammar:G(()=>G7t(),"Grammar"),LanguageMetaData:G(()=>V7t,"LanguageMetaData"),parser:{}},OJ={Grammar:G(()=>U7t(),"Grammar"),LanguageMetaData:G(()=>j7t,"LanguageMetaData"),parser:{}},PJ={Grammar:G(()=>M7t(),"Grammar"),LanguageMetaData:G(()=>X7t,"LanguageMetaData"),parser:{}},_J={Grammar:G(()=>T7t(),"Grammar"),LanguageMetaData:G(()=>$7t,"LanguageMetaData"),parser:{}},WJ={Grammar:G(()=>Y7t(),"Grammar"),LanguageMetaData:G(()=>A8t,"LanguageMetaData"),parser:{}},qJ={Grammar:G(()=>H7t(),"Grammar"),LanguageMetaData:G(()=>e8t,"LanguageMetaData"),parser:{}},zJ={Grammar:G(()=>K7t(),"Grammar"),LanguageMetaData:G(()=>t8t,"LanguageMetaData"),parser:{}},ZJ={Grammar:G(()=>J7t(),"Grammar"),LanguageMetaData:G(()=>r8t,"LanguageMetaData"),parser:{}},VJ={Grammar:G(()=>O7t(),"Grammar"),LanguageMetaData:G(()=>i8t,"LanguageMetaData"),parser:{}},jJ={Grammar:G(()=>P7t(),"Grammar"),LanguageMetaData:G(()=>u8t,"LanguageMetaData"),parser:{}},XJ={Grammar:G(()=>_7t(),"Grammar"),LanguageMetaData:G(()=>a8t,"LanguageMetaData"),parser:{}},$J={Grammar:G(()=>W7t(),"Grammar"),LanguageMetaData:G(()=>n8t,"LanguageMetaData"),parser:{}},AO={Grammar:G(()=>q7t(),"Grammar"),LanguageMetaData:G(()=>o8t,"LanguageMetaData"),parser:{}},eO={Grammar:G(()=>z7t(),"Grammar"),LanguageMetaData:G(()=>s8t,"LanguageMetaData"),parser:{}},l8t=/accDescr(?:[\t ]*:([^\n\r]*)|\s*{([^}]*)})/,g8t=/accTitle[\t ]*:([^\n\r]*)/,c8t=/title([\t ][^\n\r]*|)/,C8t={ACC_DESCR:l8t,ACC_TITLE:g8t,TITLE:c8t},hn=class extends jlA{static{G(this,"AbstractMermaidValueConverter")}runConverter(A,e,t){let r=this.runCommonConverter(A,e,t);if(r===void 0)r=this.runCustomConverter(A,e,t);if(r===void 0)return super.runConverter(A,e,t);return r}runCommonConverter(A,e,t){let r=C8t[A.name];if(r===void 0)return;let i=r.exec(e);if(i===null)return;if(i[1]!==void 0)return i[1].trim().replace(/[\t ]{2,}/gm," ");if(i[2]!==void 0)return i[2].replace(/^\s*/gm,"").replace(/\s+$/gm,"").replace(/[\t ]{2,}/gm," ").replace(/[\n\r]{2,}/gm,`
`);return}},wl=class extends hn{static{G(this,"CommonValueConverter")}runCustomConverter(A,e,t){return}},lu=class extends LJ{static{G(this,"AbstractMermaidTokenBuilder")}constructor(A){super();this.keywords=new Set(A)}buildKeywordTokens(A,e,t){let r=super.buildKeywordTokens(A,e,t);return r.forEach((i)=>{if(this.keywords.has(i.name)&&i.PATTERN!==void 0)i.PATTERN=new RegExp(i.PATTERN.toString()+"(?:(?=%%)|(?!\\S))")}),r}},Dte=class extends lu{static{G(this,"CommonTokenBuilder")}};/*! Bundled license information:
lodash-es/lodash.js:
(**
* @license
* Lodash (Custom Build) <https://lodash.com/>
* Build: `lodash modularize exports="es" -o ./`
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
* Released under MIT license <https://lodash.com/license>
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
*)
*/});function Gx(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),zJ,HgA);return e.ServiceRegistry.register(t),{shared:e,Radar:t}}var B8t,HgA;var KgA=_(()=>{Au();B8t=class extends lu{static{G(this,"RadarTokenBuilder")}constructor(){super(["radar-beta"])}},HgA={parser:{TokenBuilder:G(()=>new B8t,"TokenBuilder"),ValueConverter:G(()=>new wl,"ValueConverter")}};G(Gx,"createRadarServices")});function em(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),jJ,JgA);return e.ServiceRegistry.register(t),{shared:e,Railroad:t}}var E8t,yte,d8t,JgA;var OgA=_(()=>{Au();E8t=class extends lu{static{G(this,"RailroadTokenBuilder")}constructor(){super(["railroad-beta"])}},yte=G((A)=>{let e=A.slice(1,-1),t="";for(let r=0;r<e.length;r++){let i=e[r];if(i==="\\"&&r+1<e.length){r++;let u=e[r];switch(u){case"n":t+=`
`;break;case"r":t+="\r";break;case"t":t+="\t";break;default:t+=u}continue}t+=i}return t},"decodeEscapedString"),d8t=class extends hn{static{G(this,"RailroadValueConverter")}runConverter(A,e,t){let r=super.runConverter(A,e,t);if(A.name==="TITLE"&&typeof r==="string"){let i=r.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return yte(i)}return r}runCustomConverter(A,e,t){if(A.name==="RR_STRING")return yte(e);return}},JgA={parser:{TokenBuilder:G(()=>new E8t,"TokenBuilder"),ValueConverter:G(()=>new d8t,"ValueConverter")}};G(em,"createRailroadServices")});function tm(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),VJ,PgA);return e.ServiceRegistry.register(t),{shared:e,RailroadEbnf:t}}var I8t,wte,h8t,PgA;var _gA=_(()=>{Au();I8t=class extends lu{static{G(this,"RailroadEbnfTokenBuilder")}constructor(){super(["railroad-ebnf-beta"])}},wte=G((A)=>{let e=A.slice(1,-1),t="";for(let r=0;r<e.length;r++){let i=e[r];if(i==="\\"&&r+1<e.length){r++;let u=e[r];switch(u){case"n":t+=`
`;break;case"r":t+="\r";break;case"t":t+="\t";break;default:t+=u}continue}t+=i}return t},"decodeEscapedString"),h8t=class extends hn{static{G(this,"RailroadEbnfValueConverter")}runConverter(A,e,t){let r=super.runConverter(A,e,t);if(A.name==="TITLE"&&typeof r==="string"){let i=r.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return wte(i)}return r}runCustomConverter(A,e,t){if(A.name==="EBNF_STRING")return wte(e);if(A.name==="EBNF_SPECIAL_SEQUENCE")return e.slice(1,-1).trim();return}},PgA={parser:{TokenBuilder:G(()=>new I8t,"TokenBuilder"),ValueConverter:G(()=>new h8t,"ValueConverter")}};G(tm,"createRailroadEbnfServices")});function rm(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),ZJ,WgA);return e.ServiceRegistry.register(t),{shared:e,RailroadAbnf:t}}var Q8t,p8t,WgA;var qgA=_(()=>{Au();Q8t=class extends lu{static{G(this,"RailroadAbnfTokenBuilder")}constructor(){super(["railroad-abnf-beta"])}},p8t=class extends hn{static{G(this,"RailroadAbnfValueConverter")}runConverter(A,e,t){let r=super.runConverter(A,e,t);if(A.name==="TITLE"&&typeof r==="string"){let i=r.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return i.slice(1,-1)}return r}runCustomConverter(A,e,t){if(A.name==="ABNF_STRING")return e.slice(1,-1);return}},WgA={parser:{TokenBuilder:G(()=>new Q8t,"TokenBuilder"),ValueConverter:G(()=>new p8t,"ValueConverter")}};G(rm,"createRailroadAbnfServices")});function im(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),XJ,zgA);return e.ServiceRegistry.register(t),{shared:e,RailroadPeg:t}}var f8t,bte,m8t,zgA;var ZgA=_(()=>{Au();f8t=class extends lu{static{G(this,"RailroadPegTokenBuilder")}constructor(){super(["railroad-peg-beta"])}},bte=G((A)=>{let e=A.slice(1,-1),t="";for(let r=0;r<e.length;r++){let i=e[r];if(i==="\\"&&r+1<e.length){r++;let u=e[r];switch(u){case"n":t+=`
`;break;case"r":t+="\r";break;case"t":t+="\t";break;default:t+=u}continue}t+=i}return t},"decodeEscapedString"),m8t=class extends hn{static{G(this,"RailroadPegValueConverter")}runConverter(A,e,t){let r=super.runConverter(A,e,t);if(A.name==="TITLE"&&typeof r==="string"){let i=r.trim();if(i.startsWith('"')&&i.endsWith('"')||i.startsWith("'")&&i.endsWith("'"))return bte(i)}return r}runCustomConverter(A,e,t){if(A.name==="PEG_STRING")return bte(e);return}},zgA={parser:{TokenBuilder:G(()=>new f8t,"TokenBuilder"),ValueConverter:G(()=>new m8t,"ValueConverter")}};G(im,"createRailroadPegServices")});function vte(A){let e=A.validation.TreemapValidator,t=A.validation.ValidationRegistry;if(t){let r={Treemap:e.checkSingleRoot.bind(e)};t.register(r,e)}}function Ux(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),$J,VgA);return e.ServiceRegistry.register(t),vte(t),{shared:e,Treemap:t}}var D8t,y8t,w8t,b8t,VgA;var jgA=_(()=>{Au();D8t=class extends lu{static{G(this,"TreemapTokenBuilder")}constructor(){super(["treemap"])}},y8t=/classDef\s+([A-Z_a-z]\w+)(?:\s+([^\n\r;]*))?;?/,w8t=class extends hn{static{G(this,"TreemapValueConverter")}runCustomConverter(A,e,t){if(A.name==="NUMBER2")return parseFloat(e.replace(/,/g,""));else if(A.name==="SEPARATOR")return e.substring(1,e.length-1);else if(A.name==="STRING2")return e.substring(1,e.length-1);else if(A.name==="INDENTATION")return e.length;else if(A.name==="ClassDef"){if(typeof e!=="string")return e;let r=y8t.exec(e);if(r)return{$type:"ClassDefStatement",className:r[1],styleText:r[2]||void 0}}return}};G(vte,"registerValidationChecks");b8t=class{static{G(this,"TreemapValidator")}checkSingleRoot(A,e){let t;for(let r of A.TreemapRows){if(!r.item)continue;if(t===void 0&&r.indent===void 0)t=0;else if(r.indent===void 0)e("error","Multiple root nodes are not allowed in a treemap.",{node:r,property:"item"});else if(t!==void 0&&t>=parseInt(r.indent,10))e("error","Multiple root nodes are not allowed in a treemap.",{node:r,property:"item"})}}},VgA={parser:{TokenBuilder:G(()=>new D8t,"TokenBuilder"),ValueConverter:G(()=>new w8t,"ValueConverter")},validation:{TreemapValidator:G(()=>new b8t,"TreemapValidator")}};G(Ux,"createTreemapServices")});function Mx(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),eO,XgA);return e.ServiceRegistry.register(t),{shared:e,Wardley:t}}var v8t,XgA;var $gA=_(()=>{Au();v8t=class extends hn{static{G(this,"WardleyValueConverter")}runCustomConverter(A,e,t){switch(A.name.toUpperCase()){case"LINK_LABEL":return e.substring(1).trim();default:return}}},XgA={parser:{ValueConverter:G(()=>new v8t,"ValueConverter")}};G(Mx,"createWardleyServices")});function Tx(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),JJ,AcA);return e.ServiceRegistry.register(t),{shared:e,Cynefin:t}}var k8t,AcA;var ecA=_(()=>{Au();k8t=class extends lu{static{G(this,"CynefinTokenBuilder")}constructor(){super(["cynefin-beta"])}},AcA={parser:{TokenBuilder:G(()=>new k8t,"TokenBuilder"),ValueConverter:G(()=>new wl,"ValueConverter")}};G(Tx,"createCynefinServices")});function Yx(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),PJ,tcA);return e.ServiceRegistry.register(t),{shared:e,GitGraph:t}}var F8t,tcA;var rcA=_(()=>{Au();F8t=class extends lu{static{G(this,"GitGraphTokenBuilder")}constructor(){super(["gitGraph"])}},tcA={parser:{TokenBuilder:G(()=>new F8t,"TokenBuilder"),ValueConverter:G(()=>new wl,"ValueConverter")}};G(Yx,"createGitGraphServices")});function Hx(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),_J,icA);return e.ServiceRegistry.register(t),{shared:e,Info:t}}var x8t,icA;var ucA=_(()=>{Au();x8t=class extends lu{static{G(this,"InfoTokenBuilder")}constructor(){super(["info","showInfo"])}},icA={parser:{TokenBuilder:G(()=>new x8t,"TokenBuilder"),ValueConverter:G(()=>new wl,"ValueConverter")}};G(Hx,"createInfoServices")});function Kx(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),WJ,acA);return e.ServiceRegistry.register(t),{shared:e,Packet:t}}var S8t,acA;var ncA=_(()=>{Au();S8t=class extends lu{static{G(this,"PacketTokenBuilder")}constructor(){super(["packet"])}},acA={parser:{TokenBuilder:G(()=>new S8t,"TokenBuilder"),ValueConverter:G(()=>new wl,"ValueConverter")}};G(Kx,"createPacketServices")});function Jx(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),qJ,ocA);return e.ServiceRegistry.register(t),{shared:e,Pie:t}}var L8t,R8t,ocA;var scA=_(()=>{Au();L8t=class extends lu{static{G(this,"PieTokenBuilder")}constructor(){super(["pie","showData"])}},R8t=class extends hn{static{G(this,"PieValueConverter")}runCustomConverter(A,e,t){if(A.name!=="PIE_SECTION_LABEL")return;return e.replace(/"/g,"").trim()}},ocA={parser:{TokenBuilder:G(()=>new L8t,"TokenBuilder"),ValueConverter:G(()=>new R8t,"ValueConverter")}};G(Jx,"createPieServices")});function Ox(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),AO,lcA);return e.ServiceRegistry.register(t),{shared:e,TreeView:t}}var N8t,G8t,lcA;var gcA=_(()=>{Au();N8t=class extends hn{static{G(this,"TreeViewValueConverter")}runCustomConverter(A,e,t){if(A.name==="INDENTATION")return e?.length||0;if(A.name==="QUOTED_NAME")return e.substring(1,e.length-1);if(A.name==="BARE_NAME")return e.replace(/[\t ]+$/,"");if(A.name==="CLASS_ANNOTATION")return e.trim().substring(3).trim();if(A.name==="ICON_ANNOTATION"){let r=e.trim();return r.substring(5,r.length-1)}if(A.name==="DESC_ANNOTATION")return e.trim().substring(2).trim();return}},G8t=class extends lu{static{G(this,"TreeViewTokenBuilder")}constructor(){super(["treeView-beta"])}},lcA={parser:{TokenBuilder:G(()=>new G8t,"TokenBuilder"),ValueConverter:G(()=>new N8t,"ValueConverter")}};G(Ox,"createTreeViewServices")});function Px(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),KJ,ccA);return e.ServiceRegistry.register(t),{shared:e,Architecture:t}}var U8t,M8t,ccA;var CcA=_(()=>{Au();U8t=class extends lu{static{G(this,"ArchitectureTokenBuilder")}constructor(){super(["architecture"])}},M8t=class extends hn{static{G(this,"ArchitectureValueConverter")}runCustomConverter(A,e,t){if(A.name==="ARCH_ICON")return e.replace(/[()]/g,"").trim();else if(A.name==="ARCH_TEXT_ICON")return e.replace(/["()]/g,"");else if(A.name==="ARCH_TITLE"){let r=e.replace(/^\[|]$/g,"").trim();if(r.startsWith('"')&&r.endsWith('"')||r.startsWith("'")&&r.endsWith("'"))r=r.slice(1,-1),r=r.replace(/\\"/g,'"').replace(/\\'/g,"'");return r.trim()}return}},ccA={parser:{TokenBuilder:G(()=>new U8t,"TokenBuilder"),ValueConverter:G(()=>new M8t,"ValueConverter")}};G(Px,"createArchitectureServices")});function Lte(A){let e=A.validation.EventModelingValidator,t=A.validation.ValidationRegistry;if(t){let r={EmTimeFrame:e.checkSourceFrameTypes.bind(e),EmResetFrame:e.checkSourceFrameTypes.bind(e)};t.register(r,e)}}function _x(A=Ji){let e=wr(Si(A),$i),t=wr(xi({shared:e}),OJ,EcA);return e.ServiceRegistry.register(t),Lte(t),{shared:e,EventModel:t}}var T8t,kte,Fte,BcA,xte,Ste,Y8t,EcA;var dcA=_(()=>{Au();T8t=class extends lu{static{G(this,"EventModelingTokenBuilder")}constructor(){super(["eventmodeling"])}},kte=new Set(["cmd","command"]),Fte=new Set(["evt","event"]),BcA=new Set(["rmo","readmodel"]),xte=new Set(["pcr","processor"]),Ste=new Set(["ui"]);G(Lte,"registerValidationChecks");Y8t=class{static{G(this,"EventModelingValidator")}checkSourceFrameTypes(A,e){if(A.sourceFrames.length===0)return;if(kte.has(A.modelEntityType))this.validateSources(A,new Set([...Ste,...xte]),"command","ui or processor",e);else if(Fte.has(A.modelEntityType))this.validateSources(A,kte,"event","command",e);else if(BcA.has(A.modelEntityType))this.validateSources(A,Fte,"read model","event",e);else if(xte.has(A.modelEntityType))this.validateSources(A,BcA,"processor","read model",e);else if(Ste.has(A.modelEntityType))this.validateSources(A,BcA,"ui","read model",e)}validateSources(A,e,t,r,i){for(let u of A.sourceFrames){let a=u.ref;if(a!==void 0&&!e.has(a.modelEntityType))i("error",`A ${t} can only receive input from a ${r}, not from '${a.modelEntityType}'.`,{node:A,property:"sourceFrames"})}}},EcA={parser:{TokenBuilder:G(()=>new T8t,"TokenBuilder"),ValueConverter:G(()=>new wl,"ValueConverter")},validation:{EventModelingValidator:G(()=>new Y8t,"EventModelingValidator")}};G(_x,"createEventModelingServices")});var Rte=_(()=>{ucA();Au()});var Nte=_(()=>{ncA();Au()});var Gte=_(()=>{scA();Au()});var Ute=_(()=>{gcA();Au()});var Mte=_(()=>{CcA();Au()});var Tte=_(()=>{rcA();Au()});var Yte=_(()=>{dcA();Au()});var Hte=_(()=>{KgA();Au()});var Kte=_(()=>{OgA();Au()});var Jte=_(()=>{_gA();Au()});var Ote=_(()=>{qgA();Au()});var Pte=_(()=>{ZgA();Au()});var _te=_(()=>{jgA();Au()});var Wte=_(()=>{$gA();Au()});var qte=_(()=>{ecA();Au()});async function Ga(A,e){let t=H8t[A];if(!t)throw Error(`Unknown diagram type: ${A}`);if(!d0[A])await t();let i=d0[A].parse(e);if(i.lexerErrors.length>0||i.parserErrors.length>0)throw new ih(i);return i.value}var d0,H8t,ih;var I0=_(()=>{KgA();OgA();_gA();qgA();ZgA();jgA();$gA();ecA();rcA();ucA();ncA();scA();gcA();CcA();dcA();Au();d0={},H8t={info:G(async()=>{await Promise.resolve().then(() => Rte());let e=Hx().Info.parser.LangiumParser;d0.info=e},"info"),packet:G(async()=>{await Promise.resolve().then(() => Nte());let e=Kx().Packet.parser.LangiumParser;d0.packet=e},"packet"),pie:G(async()=>{await Promise.resolve().then(() => Gte());let e=Jx().Pie.parser.LangiumParser;d0.pie=e},"pie"),treeView:G(async()=>{await Promise.resolve().then(() => Ute());let e=Ox().TreeView.parser.LangiumParser;d0.treeView=e},"treeView"),architecture:G(async()=>{await Promise.resolve().then(() => Mte());let e=Px().Architecture.parser.LangiumParser;d0.architecture=e},"architecture"),gitGraph:G(async()=>{await Promise.resolve().then(() => Tte());let e=Yx().GitGraph.parser.LangiumParser;d0.gitGraph=e},"gitGraph"),eventmodeling:G(async()=>{await Promise.resolve().then(() => Yte());let e=_x().EventModel.parser.LangiumParser;d0.eventmodeling=e},"eventmodeling"),radar:G(async()=>{await Promise.resolve().then(() => Hte());let e=Gx().Radar.parser.LangiumParser;d0.radar=e},"radar"),railroad:G(async()=>{await Promise.resolve().then(() => Kte());let e=em().Railroad.parser.LangiumParser;d0.railroad=e},"railroad"),railroadEbnf:G(async()=>{await Promise.resolve().then(() => Jte());let e=tm().RailroadEbnf.parser.LangiumParser;d0.railroadEbnf=e},"railroadEbnf"),railroadAbnf:G(async()=>{await Promise.resolve().then(() => Ote());let e=rm().RailroadAbnf.parser.LangiumParser;d0.railroadAbnf=e},"railroadAbnf"),railroadPeg:G(async()=>{await Promise.resolve().then(() => Pte());let e=im().RailroadPeg.parser.LangiumParser;d0.railroadPeg=e},"railroadPeg"),treemap:G(async()=>{await Promise.resolve().then(() => _te());let e=Ux().Treemap.parser.LangiumParser;d0.treemap=e},"treemap"),wardley:G(async()=>{await Promise.resolve().then(() => Wte());let e=Mx().Wardley.parser.LangiumParser;d0.wardley=e},"wardley"),cynefin:G(async()=>{await Promise.resolve().then(() => qte());let e=Tx().Cynefin.parser.LangiumParser;d0.cynefin=e},"cynefin")};G(Ga,"parse");ih=class extends Error{constructor(A){let e=A.lexerErrors.map((r)=>{let i=r.line!==void 0&&!isNaN(r.line)?r.line:"?",u=r.column!==void 0&&!isNaN(r.column)?r.column:"?";return`Lexer error on line ${i}, column ${u}: ${r.message}`}).join(`
`),t=A.parserErrors.map((r)=>{let i=r.token.startLine!==void 0&&!isNaN(r.token.startLine)?r.token.startLine:"?",u=r.token.startColumn!==void 0&&!isNaN(r.token.startColumn)?r.token.startColumn:"?";return`Parse error on line ${i}, column ${u}: ${r.message}`}).join(`
`);super(`Parsing failed: ${e} ${t}`);this.result=A}static{G(this,"MermaidParseError")}}});function uO(){return $AA({length:7})}function Zte(A,e){let t=Object.create(null);return A.reduce((r,i)=>{let u=e(i);if(!t[u])t[u]=!0,r.push(i);return r},[])}function IcA(A,e,t){let r=A.indexOf(e);if(r===-1)A.push(t);else A.splice(r,1,t)}function QcA(A){let e=A.reduce((i,u)=>{if(i.seq>u.seq)return i;return u},A[0]),t="";A.forEach(function(i){if(i===e)t+="\t*";else t+="\t|"});let r=[t,e.id,e.seq];for(let i in Qt.records.branches)if(Qt.records.branches.get(i)===e.id)r.push(i);if(sA.debug(r.join(" ")),e.parents&&e.parents.length==2&&e.parents[0]&&e.parents[1]){let i=Qt.records.commits.get(e.parents[0]);if(IcA(A,e,i),e.parents[1])A.push(Qt.records.commits.get(e.parents[1]))}else if(e.parents.length==0)return;else if(e.parents[0]){let i=Qt.records.commits.get(e.parents[0]);IcA(A,e,i)}A=Zte(A,(i)=>i.id),QcA(A)}var ku,K8t,nm,Qt,J8t,O8t,P8t,_8t,W8t,q8t,z8t,Vte,Z8t,V8t,j8t,X8t,$8t,jte,ASt,eSt,tSt,Xte,rSt,iSt,uSt,aSt,nSt,oSt,sSt,lSt,$4=10,A1=40,OE=4,uh=2,um=8,aO,hcA=12,pcA,gSt,am,bl,vl,rO=30,Wx,iO,ah=0,Ci="LR",cSt,$te,Are,CSt,BSt,ESt,dSt,ISt,hSt,QSt,pSt,fSt,mSt,DSt,ySt,zte,wSt,qx,bSt,vSt,kSt,FSt,xSt,SSt,ere=8,tre,LSt,RSt,NSt,GSt,USt,MSt,TSt,YSt,HSt,rre;var ire=_(()=>{wY();ms();ai();rr();ir();Nt();I0();Pr();ku={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},K8t=ur.gitGraph,nm=y(()=>si({...K8t,...ot().gitGraph}),"getConfig"),Qt=new dw(()=>{let A=nm(),{mainBranchName:e,mainBranchOrder:t}=A;return{mainBranchName:e,commits:new Map,head:null,branchConfig:new Map([[e,{name:e,order:t}]]),branches:new Map([[e,null]]),currBranch:e,direction:"LR",seq:0,options:{}}});y(uO,"getID");y(Zte,"uniqBy");J8t=y(function(A){Qt.records.direction=A},"setDirection"),O8t=y(function(A){sA.debug("options str",A),A=A?.trim(),A=A||"{}";try{Qt.records.options=JSON.parse(A)}catch(e){sA.error("error while parsing gitGraph options",e.message)}},"setOptions"),P8t=y(function(){return Qt.records.options},"getOptions"),_8t=y(function(A){let{msg:e,id:t,type:r,tags:i}=A;sA.info("commit",e,t,r,i),sA.debug("Entering commit:",e,t,r,i);let u=nm();t=_e.sanitizeText(t,u),e=_e.sanitizeText(e,u),i=i?.map((n)=>_e.sanitizeText(n,u));let a={id:t?t:Qt.records.seq+"-"+uO(),message:e,seq:Qt.records.seq++,type:r??ku.NORMAL,tags:i??[],parents:Qt.records.head==null?[]:[Qt.records.head.id],branch:Qt.records.currBranch};if(Qt.records.head=a,sA.info("main branch",u.mainBranchName),Qt.records.commits.has(a.id))sA.warn(`Commit ID ${a.id} already exists`);Qt.records.commits.set(a.id,a),Qt.records.branches.set(Qt.records.currBranch,a.id),sA.debug("in pushCommit "+a.id)},"commit"),W8t=y(function(A){let{name:e,order:t}=A;if(e=_e.sanitizeText(e,nm()),Qt.records.branches.has(e))throw Error(`Trying to create an existing branch. (Help: Either use a new name if you want create a new branch or try using "checkout ${e}")`);Qt.records.branches.set(e,Qt.records.head!=null?Qt.records.head.id:null),Qt.records.branchConfig.set(e,{name:e,order:t}),Vte(e),sA.debug("in createBranch")},"branch"),q8t=y((A)=>{let{branch:e,id:t,type:r,tags:i}=A,u=nm();if(e=_e.sanitizeText(e,u),t)t=_e.sanitizeText(t,u);let a=Qt.records.branches.get(Qt.records.currBranch),n=Qt.records.branches.get(e),o=a?Qt.records.commits.get(a):void 0,s=n?Qt.records.commits.get(n):void 0;if(o&&s&&o.branch===e)throw Error(`Cannot merge branch '${e}' into itself.`);if(Qt.records.currBranch===e){let C=Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw C.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},C}if(o===void 0||!o){let C=Error(`Incorrect usage of "merge". Current branch (${Qt.records.currBranch})has no commits`);throw C.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["commit"]},C}if(!Qt.records.branches.has(e)){let C=Error('Incorrect usage of "merge". Branch to be merged ('+e+") does not exist");throw C.hash={text:`merge ${e}`,token:`merge ${e}`,expected:[`branch ${e}`]},C}if(s===void 0||!s){let C=Error('Incorrect usage of "merge". Branch to be merged ('+e+") has no commits");throw C.hash={text:`merge ${e}`,token:`merge ${e}`,expected:['"commit"']},C}if(o===s){let C=Error('Incorrect usage of "merge". Both branches have same head');throw C.hash={text:`merge ${e}`,token:`merge ${e}`,expected:["branch abc"]},C}if(t&&Qt.records.commits.has(t)){let C=Error('Incorrect usage of "merge". Commit with id:'+t+" already exists, use different custom id");throw C.hash={text:`merge ${e} ${t} ${r} ${i?.join(" ")}`,token:`merge ${e} ${t} ${r} ${i?.join(" ")}`,expected:[`merge ${e} ${t}_UNIQUE ${r} ${i?.join(" ")}`]},C}let l=n?n:"",g={id:t||`${Qt.records.seq}-${uO()}`,message:`merged branch ${e} into ${Qt.records.currBranch}`,seq:Qt.records.seq++,parents:Qt.records.head==null?[]:[Qt.records.head.id,l],branch:Qt.records.currBranch,type:ku.MERGE,customType:r,customId:t?!0:!1,tags:i??[]};Qt.records.head=g,Qt.records.commits.set(g.id,g),Qt.records.branches.set(Qt.records.currBranch,g.id),sA.debug(Qt.records.branches),sA.debug("in mergeBranch")},"merge"),z8t=y(function(A){let{id:e,targetId:t,tags:r,parent:i}=A;sA.debug("Entering cherryPick:",e,t,r);let u=nm();if(e=_e.sanitizeText(e,u),t=_e.sanitizeText(t,u),r=r?.map((o)=>_e.sanitizeText(o,u)),i=_e.sanitizeText(i,u),!e||!Qt.records.commits.has(e)){let o=Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw o.hash={text:`cherryPick ${e} ${t}`,token:`cherryPick ${e} ${t}`,expected:["cherry-pick abc"]},o}let a=Qt.records.commits.get(e);if(a===void 0||!a)throw Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');if(i&&!(Array.isArray(a.parents)&&a.parents.includes(i)))throw Error("Invalid operation: The specified parent commit is not an immediate parent of the cherry-picked commit.");let n=a.branch;if(a.type===ku.MERGE&&!i)throw Error("Incorrect usage of cherry-pick: If the source commit is a merge commit, an immediate parent commit must be specified.");if(!t||!Qt.records.commits.has(t)){if(n===Qt.records.currBranch){let g=Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw g.hash={text:`cherryPick ${e} ${t}`,token:`cherryPick ${e} ${t}`,expected:["cherry-pick abc"]},g}let o=Qt.records.branches.get(Qt.records.currBranch);if(o===void 0||!o){let g=Error(`Incorrect usage of "cherry-pick". Current branch (${Qt.records.currBranch})has no commits`);throw g.hash={text:`cherryPick ${e} ${t}`,token:`cherryPick ${e} ${t}`,expected:["cherry-pick abc"]},g}let s=Qt.records.commits.get(o);if(s===void 0||!s){let g=Error(`Incorrect usage of "cherry-pick". Current branch (${Qt.records.currBranch})has no commits`);throw g.hash={text:`cherryPick ${e} ${t}`,token:`cherryPick ${e} ${t}`,expected:["cherry-pick abc"]},g}let l={id:Qt.records.seq+"-"+uO(),message:`cherry-picked ${a?.message} into ${Qt.records.currBranch}`,seq:Qt.records.seq++,parents:Qt.records.head==null?[]:[Qt.records.head.id,a.id],branch:Qt.records.currBranch,type:ku.CHERRY_PICK,tags:r?r.filter(Boolean):[`cherry-pick:${a.id}${a.type===ku.MERGE?`|parent:${i}`:""}`]};Qt.records.head=l,Qt.records.commits.set(l.id,l),Qt.records.branches.set(Qt.records.currBranch,l.id),sA.debug(Qt.records.branches),sA.debug("in cherryPick")}},"cherryPick"),Vte=y(function(A){if(A=_e.sanitizeText(A,nm()),!Qt.records.branches.has(A)){let e=Error(`Trying to checkout branch which is not yet created. (Help try using "branch ${A}")`);throw e.hash={text:`checkout ${A}`,token:`checkout ${A}`,expected:[`branch ${A}`]},e}else{Qt.records.currBranch=A;let e=Qt.records.branches.get(Qt.records.currBranch);if(e===void 0||!e)Qt.records.head=null;else Qt.records.head=Qt.records.commits.get(e)??null}},"checkout");y(IcA,"upsert");y(QcA,"prettyPrintCommitHistory");Z8t=y(function(){sA.debug(Qt.records.commits);let A=jte()[0];QcA([A])},"prettyPrint"),V8t=y(function(){Qt.reset(),cr()},"clear"),j8t=y(function(){return[...Qt.records.branchConfig.values()].map((e,t)=>{if(e.order!==null&&e.order!==void 0)return e;return{...e,order:parseFloat(`0.${t}`)}}).sort((e,t)=>(e.order??0)-(t.order??0)).map(({name:e})=>({name:e}))},"getBranchesAsObjArray"),X8t=y(function(){return Qt.records.branches},"getBranches"),$8t=y(function(){return Qt.records.commits},"getCommits"),jte=y(function(){let A=[...Qt.records.commits.values()];return A.forEach(function(e){sA.debug(e.id)}),A.sort((e,t)=>e.seq-t.seq),A},"getCommitsArray"),ASt=y(function(){return Qt.records.currBranch},"getCurrentBranch"),eSt=y(function(){return Qt.records.direction},"getDirection"),tSt=y(function(){return Qt.records.head},"getHead"),Xte={commitType:ku,getConfig:nm,setDirection:J8t,setOptions:O8t,getOptions:P8t,commit:_8t,branch:W8t,merge:q8t,cherryPick:z8t,checkout:Vte,prettyPrint:Z8t,clear:V8t,getBranchesAsObjArray:j8t,getBranches:X8t,getCommits:$8t,getCommitsArray:jte,getCurrentBranch:ASt,getDirection:eSt,getHead:tSt,setAccTitle:Dr,getAccTitle:kr,getAccDescription:xr,setAccDescription:Fr,setDiagramTitle:Tr,getDiagramTitle:Sr},rSt=y((A,e)=>{if(hu(A,e),A.dir)e.setDirection(A.dir);for(let t of A.statements)iSt(t,e)},"populate"),iSt=y((A,e)=>{let r={Commit:y((i)=>e.commit(uSt(i)),"Commit"),Branch:y((i)=>e.branch(aSt(i)),"Branch"),Merge:y((i)=>e.merge(nSt(i)),"Merge"),Checkout:y((i)=>e.checkout(oSt(i)),"Checkout"),CherryPicking:y((i)=>e.cherryPick(sSt(i)),"CherryPicking")}[A.$type];if(r)r(A);else sA.error(`Unknown statement type: ${A.$type}`)},"parseStatement"),uSt=y((A)=>({id:A.id,msg:A.message??"",type:A.type!==void 0?ku[A.type]:ku.NORMAL,tags:A.tags??void 0}),"parseCommit"),aSt=y((A)=>({name:A.name,order:A.order??0}),"parseBranch"),nSt=y((A)=>({branch:A.branch,id:A.id??"",type:A.type!==void 0?ku[A.type]:void 0,tags:A.tags??void 0}),"parseMerge"),oSt=y((A)=>A.branch,"parseCheckout"),sSt=y((A)=>({id:A.id,targetId:"",tags:A.tags?.length===0?void 0:A.tags,parent:A.parent}),"parseCherryPicking"),lSt={parse:y(async(A)=>{let e=await Ga("gitGraph",A);sA.debug(e),rSt(e,Xte)},"parse")},aO=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),pcA=new Set(["redux-color","redux-dark-color"]),gSt=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),am=y((A,e,t=!1)=>{if(t&&A>0)return(A-1)%(e-1)+1;return A%e},"calcColorIndex"),bl=new Map,vl=new Map,Wx=new Map,iO=[],cSt=y(()=>{bl.clear(),vl.clear(),Wx.clear(),ah=0,iO=[],Ci="LR"},"clear"),$te=y((A)=>{let e=document.createElementNS("http://www.w3.org/2000/svg","text");return(typeof A==="string"?A.split(/\\n|\n|<br\s*\/?>/gi):A).forEach((r)=>{let i=document.createElementNS("http://www.w3.org/2000/svg","tspan");i.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),i.setAttribute("dy","1em"),i.setAttribute("x","0"),i.setAttribute("class","row"),i.textContent=r.trim(),e.appendChild(i)}),e},"drawText"),Are=y((A)=>{let e,t,r;if(Ci==="BT")t=y((i,u)=>i<=u,"comparisonFunc"),r=1/0;else t=y((i,u)=>i>=u,"comparisonFunc"),r=0;return A.forEach((i)=>{let u=Ci==="TB"||Ci=="BT"?vl.get(i)?.y:vl.get(i)?.x;if(u!==void 0&&t(u,r))e=i,r=u}),e},"findClosestParent"),CSt=y((A)=>{let e="",t=1/0;return A.forEach((r)=>{let i=vl.get(r).y;if(i<=t)e=r,t=i}),e||void 0},"findClosestParentBT"),BSt=y((A,e,t)=>{let r=t,i=t,u=[];A.forEach((a)=>{let n=e.get(a);if(!n)throw Error(`Commit not found for key ${a}`);if(n.parents.length)r=dSt(n),i=Math.max(r,i);else u.push(n);ISt(n,r)}),r=i,u.forEach((a)=>{hSt(a,r,t)}),A.forEach((a)=>{let n=e.get(a);if(n?.parents.length){let o=CSt(n.parents);if(r=vl.get(o).y-A1,r<=i)i=r;let s=bl.get(n.branch).pos,l=r-$4;vl.set(n.id,{x:s,y:l})}})},"setParallelBTPos"),ESt=y((A)=>{let e=Are(A.parents.filter((r)=>r!==null));if(!e)throw Error(`Closest parent not found for commit ${A.id}`);let t=vl.get(e)?.y;if(t===void 0)throw Error(`Closest parent position not found for commit ${A.id}`);return t},"findClosestParentPos"),dSt=y((A)=>ESt(A)+A1,"calculateCommitPosition"),ISt=y((A,e)=>{let t=bl.get(A.branch);if(!t)throw Error(`Branch not found for commit ${A.id}`);let r=t.pos,i=e+$4;return vl.set(A.id,{x:r,y:i}),{x:r,y:i}},"setCommitPosition"),hSt=y((A,e,t)=>{let r=bl.get(A.branch);if(!r)throw Error(`Branch not found for commit ${A.id}`);let i=e+t,u=r.pos;vl.set(A.id,{x:u,y:i})},"setRootPosition"),QSt=y((A,e,t,r,i,u)=>{let{theme:a}=OA(),n=aO.has(a??""),o=pcA.has(a??""),s=gSt.has(a??"");if(u===ku.HIGHLIGHT)A.append("rect").attr("x",t.x-10+(n?3:0)).attr("y",t.y-10+(n?3:0)).attr("width",n?14:20).attr("height",n?14:20).attr("class",`commit ${e.id} commit-highlight${am(i,um,o)} ${r}-outer`),A.append("rect").attr("x",t.x-6+(n?2:0)).attr("y",t.y-6+(n?2:0)).attr("width",n?8:12).attr("height",n?8:12).attr("class",`commit ${e.id} commit${am(i,um,o)} ${r}-inner`);else if(u===ku.CHERRY_PICK)A.append("circle").attr("cx",t.x).attr("cy",t.y).attr("r",n?7:10).attr("class",`commit ${e.id} ${r}`),A.append("circle").attr("cx",t.x-3).attr("cy",t.y+2).attr("r",n?2.5:2.75).attr("fill",s?"#000000":"#fff").attr("class",`commit ${e.id} ${r}`),A.append("circle").attr("cx",t.x+3).attr("cy",t.y+2).attr("r",n?2.5:2.75).attr("fill",s?"#000000":"#fff").attr("class",`commit ${e.id} ${r}`),A.append("line").attr("x1",t.x+3).attr("y1",t.y+1).attr("x2",t.x).attr("y2",t.y-5).attr("stroke",s?"#000000":"#fff").attr("class",`commit ${e.id} ${r}`),A.append("line").attr("x1",t.x-3).attr("y1",t.y+1).attr("x2",t.x).attr("y2",t.y-5).attr("stroke",s?"#000000":"#fff").attr("class",`commit ${e.id} ${r}`);else{let l=A.append("circle");if(l.attr("cx",t.x),l.attr("cy",t.y),l.attr("r",n?7:10),l.attr("class",`commit ${e.id} commit${am(i,um,o)}`),u===ku.MERGE){let g=A.append("circle");g.attr("cx",t.x),g.attr("cy",t.y),g.attr("r",n?5:6),g.attr("class",`commit ${r} ${e.id} commit${am(i,um,o)}`)}if(u===ku.REVERSE){let g=A.append("path"),C=n?4:5;g.attr("d",`M ${t.x-C},${t.y-C}L${t.x+C},${t.y+C}M${t.x-C},${t.y+C}L${t.x+C},${t.y-C}`).attr("class",`commit ${r} ${e.id} commit${am(i,um,o)}`)}}},"drawCommitBullet"),pSt=y((A,e,t,r,i)=>{if(e.type!==ku.CHERRY_PICK&&(e.customId&&e.type===ku.MERGE||e.type!==ku.MERGE)&&i.showCommitLabel){let u=A.append("g"),a=u.insert("rect").attr("class","commit-label-bkg"),n=u.append("text").attr("x",r).attr("y",t.y+25).attr("class","commit-label").text(e.id),o=n.node()?.getBBox();if(o){if(a.attr("x",t.posWithOffset-o.width/2-uh).attr("y",t.y+13.5).attr("width",o.width+2*uh).attr("height",o.height+2*uh),Ci==="TB"||Ci==="BT")a.attr("x",t.x-(o.width+4*OE+5)).attr("y",t.y-12),n.attr("x",t.x-(o.width+4*OE)).attr("y",t.y+o.height-12);else n.attr("x",t.posWithOffset-o.width/2);if(i.rotateCommitLabel)if(Ci==="TB"||Ci==="BT")n.attr("transform","rotate(-45, "+t.x+", "+t.y+")"),a.attr("transform","rotate(-45, "+t.x+", "+t.y+")");else{let s=-7.5-(o.width+10)/25*9.5,l=10+o.width/25*8.5;u.attr("transform","translate("+s+", "+l+") rotate(-45, "+r+", "+t.y+")")}}}},"drawCommitLabel"),fSt=y((A,e,t,r)=>{if(e.tags.length>0){let i=0,u=0,a=0,n=[];for(let o of e.tags.reverse()){let s=A.insert("polygon"),l=A.append("circle"),g=A.append("text").attr("y",t.y-16-i).attr("class","tag-label").text(o),C=g.node()?.getBBox();if(!C)throw Error("Tag bbox not found");u=Math.max(u,C.width),a=Math.max(a,C.height),g.attr("x",t.posWithOffset-C.width/2),n.push({tag:g,hole:l,rect:s,yOffset:i}),i+=20}for(let{tag:o,hole:s,rect:l,yOffset:g}of n){let C=a/2,B=t.y-19.2-g;if(l.attr("class","tag-label-bkg").attr("points",`
${r-u/2-OE/2},${B+uh}
${r-u/2-OE/2},${B-uh}
${t.posWithOffset-u/2-OE},${B-C-uh}
${t.posWithOffset+u/2+OE},${B-C-uh}
${t.posWithOffset+u/2+OE},${B+C+uh}
${t.posWithOffset-u/2-OE},${B+C+uh}`),s.attr("cy",B).attr("cx",r-u/2+OE/2).attr("r",1.5).attr("class","tag-hole"),Ci==="TB"||Ci==="BT"){let E=r+g;l.attr("class","tag-label-bkg").attr("points",`
${t.x},${E+2}
${t.x},${E-2}
${t.x+$4},${E-C-2}
${t.x+$4+u+4},${E-C-2}
${t.x+$4+u+4},${E+C+2}
${t.x+$4},${E+C+2}`).attr("transform","translate(12,12) rotate(45, "+t.x+","+r+")"),s.attr("cx",t.x+OE/2).attr("cy",E).attr("transform","translate(12,12) rotate(45, "+t.x+","+r+")"),o.attr("x",t.x+5).attr("y",E+3).attr("transform","translate(14,14) rotate(45, "+t.x+","+r+")")}}}},"drawCommitTags"),mSt=y((A)=>{switch(A.customType??A.type){case ku.NORMAL:return"commit-normal";case ku.REVERSE:return"commit-reverse";case ku.HIGHLIGHT:return"commit-highlight";case ku.MERGE:return"commit-merge";case ku.CHERRY_PICK:return"commit-cherry-pick";default:return"commit-normal"}},"getCommitClassType"),DSt=y((A,e,t,r)=>{let i={x:0,y:0};if(A.parents.length>0){let u=Are(A.parents);if(u){let a=r.get(u)??i;if(e==="TB")return a.y+A1;else if(e==="BT")return(r.get(A.id)??i).y-A1;else return a.x+A1}}else if(e==="TB")return rO;else if(e==="BT")return(r.get(A.id)??i).y-A1;else return 0;return 0},"calculatePosition"),ySt=y((A,e,t)=>{let r=Ci==="BT"&&t?e:e+$4,i=bl.get(A.branch)?.pos,u=Ci==="TB"||Ci==="BT"?bl.get(A.branch)?.pos:r;if(u===void 0||i===void 0)throw Error(`Position were undefined for commit ${A.id}`);let a=aO.has(OA().theme??""),n=Ci==="TB"||Ci==="BT"?r:i+(a?hcA/2+1:-2);return{x:u,y:n,posWithOffset:r}},"getCommitPosition"),zte=y((A,e,t,r)=>{let i=A.append("g").attr("class","commit-bullets"),u=A.append("g").attr("class","commit-labels"),a=Ci==="TB"||Ci==="BT"?rO:0,n=[...e.keys()],o=r.parallelCommits??!1,s=y((g,C)=>{let B=e.get(g)?.seq,E=e.get(C)?.seq;return B!==void 0&&E!==void 0?B-E:0},"sortKeys"),l=n.sort(s);if(Ci==="BT"){if(o)BSt(l,e,a);l=l.reverse()}l.forEach((g)=>{let C=e.get(g);if(!C)throw Error(`Commit not found for key ${g}`);if(o)a=DSt(C,Ci,a,vl);let B=ySt(C,a,o);if(t){let E=mSt(C),d=C.customType??C.type,I=bl.get(C.branch)?.index??0;QSt(i,C,B,E,I,d),pSt(u,C,B,a,r),fSt(u,C,B,a)}if(Ci==="TB"||Ci==="BT")vl.set(C.id,{x:B.x,y:B.posWithOffset});else vl.set(C.id,{x:B.posWithOffset,y:B.y});if(a=Ci==="BT"&&o?a+A1:a+A1+$4,a>ah)ah=a})},"drawCommits"),wSt=y((A,e,t,r,i)=>{let a=(Ci==="TB"||Ci==="BT"?t.x<r.x:t.y<r.y)?e.branch:A.branch,n=y((s)=>s.branch===a,"isOnBranchToGetCurve"),o=y((s)=>s.seq>A.seq&&s.seq<e.seq,"isBetweenCommits");return[...i.values()].some((s)=>o(s)&&n(s))},"shouldRerouteArrow"),qx=y((A,e,t=0)=>{let r=A+Math.abs(A-e)/2;if(t>5)return r;if(iO.every((a)=>Math.abs(a-r)>=10))return iO.push(r),r;let u=Math.abs(A-e);return qx(A,e-u/5,t+1)},"findLane"),bSt=y((A,e,t,r)=>{let{theme:i}=OA(),u=pcA.has(i??""),a=vl.get(e.id),n=vl.get(t.id);if(a===void 0||n===void 0)throw Error(`Commit positions not found for commits ${e.id} and ${t.id}`);let o=wSt(e,t,a,n,r),s="",l="",g=0,C=0,B=bl.get(t.branch)?.index;if(t.type===ku.MERGE&&e.id!==t.parents[0])B=bl.get(e.branch)?.index;let E;if(o){s="A 10 10, 0, 0, 0,",l="A 10 10, 0, 0, 1,",g=10,C=10;let d=a.y<n.y?qx(a.y,n.y):qx(n.y,a.y),I=a.x<n.x?qx(a.x,n.x):qx(n.x,a.x);if(Ci==="TB")if(a.x<n.x)E=`M ${a.x} ${a.y} L ${I-g} ${a.y} ${l} ${I} ${a.y+C} L ${I} ${n.y-g} ${s} ${I+C} ${n.y} L ${n.x} ${n.y}`;else B=bl.get(e.branch)?.index,E=`M ${a.x} ${a.y} L ${I+g} ${a.y} ${s} ${I} ${a.y+C} L ${I} ${n.y-g} ${l} ${I-C} ${n.y} L ${n.x} ${n.y}`;else if(Ci==="BT")if(a.x<n.x)E=`M ${a.x} ${a.y} L ${I-g} ${a.y} ${s} ${I} ${a.y-C} L ${I} ${n.y+g} ${l} ${I+C} ${n.y} L ${n.x} ${n.y}`;else B=bl.get(e.branch)?.index,E=`M ${a.x} ${a.y} L ${I+g} ${a.y} ${l} ${I} ${a.y-C} L ${I} ${n.y+g} ${s} ${I-C} ${n.y} L ${n.x} ${n.y}`;else if(a.y<n.y)E=`M ${a.x} ${a.y} L ${a.x} ${d-g} ${s} ${a.x+C} ${d} L ${n.x-g} ${d} ${l} ${n.x} ${d+C} L ${n.x} ${n.y}`;else B=bl.get(e.branch)?.index,E=`M ${a.x} ${a.y} L ${a.x} ${d+g} ${l} ${a.x+C} ${d} L ${n.x-g} ${d} ${s} ${n.x} ${d-C} L ${n.x} ${n.y}`}else if(s="A 20 20, 0, 0, 0,",l="A 20 20, 0, 0, 1,",g=20,C=20,Ci==="TB"){if(a.x<n.x)if(t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${a.x} ${n.y-g} ${s} ${a.x+C} ${n.y} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${n.x-g} ${a.y} ${l} ${n.x} ${a.y+C} L ${n.x} ${n.y}`;if(a.x>n.x)if(s="A 20 20, 0, 0, 0,",l="A 20 20, 0, 0, 1,",g=20,C=20,t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${a.x} ${n.y-g} ${l} ${a.x-C} ${n.y} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${n.x+g} ${a.y} ${s} ${n.x} ${a.y+C} L ${n.x} ${n.y}`;if(a.x===n.x)E=`M ${a.x} ${a.y} L ${n.x} ${n.y}`}else if(Ci==="BT"){if(a.x<n.x)if(t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${a.x} ${n.y+g} ${l} ${a.x+C} ${n.y} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${n.x-g} ${a.y} ${s} ${n.x} ${a.y-C} L ${n.x} ${n.y}`;if(a.x>n.x)if(s="A 20 20, 0, 0, 0,",l="A 20 20, 0, 0, 1,",g=20,C=20,t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${a.x} ${n.y+g} ${s} ${a.x-C} ${n.y} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${n.x+g} ${a.y} ${l} ${n.x} ${a.y-C} L ${n.x} ${n.y}`;if(a.x===n.x)E=`M ${a.x} ${a.y} L ${n.x} ${n.y}`}else{if(a.y<n.y)if(t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${n.x-g} ${a.y} ${l} ${n.x} ${a.y+C} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${a.x} ${n.y-g} ${s} ${a.x+C} ${n.y} L ${n.x} ${n.y}`;if(a.y>n.y)if(t.type===ku.MERGE&&e.id!==t.parents[0])E=`M ${a.x} ${a.y} L ${n.x-g} ${a.y} ${s} ${n.x} ${a.y-C} L ${n.x} ${n.y}`;else E=`M ${a.x} ${a.y} L ${a.x} ${n.y+g} ${l} ${a.x+C} ${n.y} L ${n.x} ${n.y}`;if(a.y===n.y)E=`M ${a.x} ${a.y} L ${n.x} ${n.y}`}if(E===void 0)throw Error("Line definition not found");A.append("path").attr("d",E).attr("class","arrow arrow"+am(B,um,u))},"drawArrow"),vSt=y((A,e)=>{let t=A.append("g").attr("class","commit-arrows");[...e.keys()].forEach((r)=>{let i=e.get(r);if(i.parents&&i.parents.length>0)i.parents.forEach((u)=>{bSt(t,e.get(u),i,e)})})},"drawArrows"),kSt=y((A,e,t,r)=>{let{look:i,theme:u,themeVariables:a}=OA(),{dropShadow:n,THEME_COLOR_LIMIT:o}=a,s=aO.has(u??""),l=pcA.has(u??""),g=A.append("g");e.forEach((C,B)=>{let E=am(B,s?o:um,l),d=bl.get(C.name)?.pos;if(d===void 0)throw Error(`Position not found for branch ${C.name}`);let I=Ci==="TB"||Ci==="BT"?d:s?d+hcA/2+1:d-2,h=g.append("line");if(h.attr("x1",0),h.attr("y1",I),h.attr("x2",ah),h.attr("y2",I),h.attr("class","branch branch"+E),Ci==="TB")h.attr("y1",rO),h.attr("x1",d),h.attr("y2",ah),h.attr("x2",d);else if(Ci==="BT")h.attr("y1",ah),h.attr("x1",d),h.attr("y2",rO),h.attr("x2",d);iO.push(I);let Q=C.name,p=$te(Q),m=g.insert("rect"),D=g.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+E);D.node().appendChild(p);let w=p.getBBox(),b=s?0:4,k=s?16:0,v=s?hcA:0;if(i==="neo")m.attr("data-look","neo");if(m.attr("class","branchLabelBkg label"+E).attr("style",i==="neo"?`filter:${s?`url(#${r}-drop-shadow)`:n}`:"").attr("rx",b).attr("ry",b).attr("x",-w.width-4-(t.rotateCommitLabel===!0?30:0)).attr("y",-w.height/2+10).attr("width",w.width+18+k).attr("height",w.height+4+v),D.attr("transform","translate("+(-w.width-14-(t.rotateCommitLabel===!0?30:0)+k/2)+", "+(I-w.height/2-2)+")"),Ci==="TB"){if(m.attr("x",d-w.width/2-10).attr("y",0),D.attr("transform","translate("+(d-w.width/2-5)+", 0)"),s)m.attr("transform",`translate(${-k/2-3}, ${-v-10})`),D.attr("transform","translate("+(d-w.width/2-5)+", "+(-v*2+7)+")")}else if(Ci==="BT"){if(m.attr("x",d-w.width/2-10).attr("y",ah),D.attr("transform","translate("+(d-w.width/2-5)+", "+ah+")"),s)m.attr("transform",`translate(${-k/2-3}, ${v+10})`),D.attr("transform","translate("+(d-w.width/2-5)+", "+(ah+v*2+4)+")")}else m.attr("transform","translate(-19, "+(I-12-v/2)+")")})},"drawBranches"),FSt=y(function(A,e,t,r,i){return bl.set(A,{pos:e,index:t}),e+=50+(i?40:0)+(Ci==="TB"||Ci==="BT"?r.width/2:0),e},"setBranchPosition"),xSt=y(function(A,e,t,r){cSt(),sA.debug("in gitgraph renderer",A+`
`,"id:",e,t);let i=r.db;if(!i.getConfig){sA.error("getConfig method is not available on db");return}let u=i.getConfig(),a=u.rotateCommitLabel??!1;Wx=i.getCommits();let n=i.getBranchesAsObjArray();Ci=i.getDirection();let o=Qe(`[id="${e}"]`),{look:s,theme:l,themeVariables:g}=OA(),{useGradient:C,gradientStart:B,gradientStop:E,filterColor:d}=g;if(C){let h=o.append("defs").append("linearGradient").attr("id",e+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");h.append("stop").attr("offset","0%").attr("stop-color",B).attr("stop-opacity",1),h.append("stop").attr("offset","100%").attr("stop-color",E).attr("stop-opacity",1)}if(s==="neo"&&aO.has(l??""))o.append("defs").append("filter").attr("id",e+"-drop-shadow").attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",d);let I=0;if(n.forEach((h,Q)=>{let p=$te(h.name),m=o.append("g"),f=m.insert("g").attr("class","branchLabel"),D=f.insert("g").attr("class","label branch-label");D.node()?.appendChild(p);let w=p.getBBox();I=FSt(h.name,I,Q,w,a),D.remove(),f.remove(),m.remove()}),zte(o,Wx,!1,u),u.showBranches)kSt(o,n,u,e);vSt(o,Wx),zte(o,Wx,!0,u),Jt.insertTitle(o,"gitTitleText",u.titleTopMargin??0,i.getDiagramTitle()),Ib(void 0,o,u.diagramPadding,u.useMaxWidth)},"draw"),SSt={draw:xSt},tre=new Set(["redux","redux-dark","redux-color","redux-dark-color"]),LSt=new Set(["redux-color","redux-dark-color"]),RSt=new Set(["neo","neo-dark"]),NSt=new Set(["dark","redux-dark","redux-dark-color","neo-dark"]),GSt=new Set(["redux","redux-dark","redux-color","redux-dark-color","neo","neo-dark"]),USt=y((A)=>{let{svgId:e}=A,t="";if(A.useGradient&&e)for(let r=0;r<A.THEME_COLOR_LIMIT;r++)t+=`
.label${r} { fill: ${A.mainBkg}; stroke: url(${e}-gradient); stroke-width: ${A.strokeWidth};}
`;return t},"genGitGraphGradient"),MSt=y((A)=>{let e=ot(),{theme:t,themeVariables:r}=e,{borderColorArray:i}=r,u=tre.has(t);if(RSt.has(t)){let a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++)if(n===0)a+=`
.branch-label${n} { fill: ${A.nodeBorder};}
.commit${n} { stroke: ${A.nodeBorder}; }
.commit-highlight${n} { stroke: ${A.nodeBorder}; fill: ${A.nodeBorder}; }
.arrow${n} { stroke: ${A.nodeBorder}; }
.commit-bullets { fill: ${A.nodeBorder}; }
.commit-cherry-pick${n} { stroke: ${A.nodeBorder}; }
${USt(A)}`;else{let o=n%ere;a+=`
.branch-label${n} { fill: ${A["gitBranchLabel"+o]}; }
.commit${n} { stroke: ${A["git"+o]}; fill: ${A["git"+o]}; }
.commit-highlight${n} { stroke: ${A["gitInv"+o]}; fill: ${A["gitInv"+o]}; }
.arrow${n} { stroke: ${A["git"+o]}; }
`}return a}else if(!LSt.has(t)){let a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++)a+=`
.branch-label${n} { fill: ${A.nodeBorder}; ${u?`font-weight:${A.noteFontWeight}`:""} }
.commit${n} { stroke: ${A.nodeBorder}; }
.commit-highlight${n} { stroke: ${A.nodeBorder}; fill: ${A.nodeBorder}; }
.label${n} { fill: ${A.mainBkg}; stroke: ${A.nodeBorder}; stroke-width: ${A.strokeWidth}; ${u?`font-weight:${A.noteFontWeight}`:""}}
.arrow${n} { stroke: ${A.nodeBorder}; }
.commit-bullets { fill: ${A.nodeBorder}; }
.commit-cherry-pick${n} { stroke: ${A.nodeBorder}; }
`;return a}else{let a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++)if(n===0)a+=`
.branch-label${n} { fill: ${A.nodeBorder}; ${u?`font-weight:${A.noteFontWeight}`:""} }
.commit${n} { stroke: ${A.nodeBorder}; }
.commit-highlight${n} { stroke: ${A.nodeBorder}; fill: ${A.mainBkg}; }
.label${n} { fill: ${A.mainBkg}; stroke: ${A.nodeBorder}; stroke-width: ${A.strokeWidth}; ${u?`font-weight:${A.noteFontWeight}`:""} }
.arrow${n} { stroke: ${A.nodeBorder}; }
.commit-bullets { fill: ${A.nodeBorder}; }
`;else{let o=n%i.length;a+=`
.branch-label${n} { fill: ${A.nodeBorder}; ${u?`font-weight:${A.noteFontWeight}`:""} }
.commit${n} { stroke: ${i[o]}; fill: ${i[o]}; }
.commit-highlight${n} { stroke: ${i[o]}; fill: ${i[o]}; }
.label${n} { fill: ${NSt.has(t)?A.mainBkg:i[o]}; stroke: ${i[o]}; stroke-width: ${A.strokeWidth}; }
.arrow${n} { stroke: ${i[o]}; }
`}return a}},"genColor"),TSt=y((A)=>`${Array.from({length:A.THEME_COLOR_LIMIT},(e,t)=>t).map((e)=>{let t=e%ere;return`
.branch-label${e} { fill: ${A["gitBranchLabel"+t]}; }
.commit${e} { stroke: ${A["git"+t]}; fill: ${A["git"+t]}; }
.commit-highlight${e} { stroke: ${A["gitInv"+t]}; fill: ${A["gitInv"+t]}; }
.label${e} { fill: ${A["git"+t]}; }
.arrow${e} { stroke: ${A["git"+t]}; }
`}).join(`
`)}`,"normalTheme"),YSt=y((A)=>{let e=ot(),{theme:t}=e,r=GSt.has(t);return`
.commit-id,
.commit-msg,
.branch-label {
fill: lightgrey;
color: lightgrey;
font-family: 'trebuchet ms', verdana, arial, sans-serif;
font-family: var(--mermaid-font-family);
}
${r?MSt(A):TSt(A)}
.branch {
stroke-width: ${A.strokeWidth};
stroke: ${A.commitLineColor??A.lineColor};
stroke-dasharray: ${r?"4 2":"2"};
}
.commit-label { font-size: ${A.commitLabelFontSize}; fill: ${r?A.nodeBorder:A.commitLabelColor}; ${r?`font-weight:${A.noteFontWeight};`:""}}
.commit-label-bkg { font-size: ${A.commitLabelFontSize}; fill: ${r?"transparent":A.commitLabelBackground}; opacity: ${r?"":0.5}; }
.tag-label { font-size: ${A.tagLabelFontSize}; fill: ${A.tagLabelColor};}
.tag-label-bkg { fill: ${r?A.mainBkg:A.tagLabelBackground}; stroke: ${r?A.nodeBorder:A.tagLabelBorder}; ${r?`filter:${A.dropShadow}`:""} }
.tag-hole { fill: ${A.textColor}; }
.commit-merge {
stroke: ${r?A.mainBkg:A.primaryColor};
fill: ${r?A.mainBkg:A.primaryColor};
}
.commit-reverse {
stroke: ${r?A.mainBkg:A.primaryColor};
fill: ${r?A.mainBkg:A.primaryColor};
stroke-width: ${r?A.strokeWidth:3};
}
.commit-highlight-outer {
}
.commit-highlight-inner {
stroke: ${r?A.mainBkg:A.primaryColor};
fill: ${r?A.mainBkg:A.primaryColor};
}
.arrow {
/* Intentional: neo themes keep the bold 8px arrow (like classic themes); only redux-geometry themes use the thinner options.strokeWidth. */
stroke-width: ${tre.has(t)?A.strokeWidth:8};
stroke-linecap: round;
fill: none
}
.gitTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${A.textColor};
}
`},"getStyles"),HSt=YSt,rre={parser:lSt,db:Xte,renderer:SSt,styles:HSt}});var ure=wu(function(fcA,mcA){(function(A,e){typeof fcA=="object"&&typeof mcA<"u"?mcA.exports=e():typeof define=="function"&&define.amd?define(e):(A=typeof globalThis<"u"?globalThis:A||self).dayjs_plugin_isoWeek=e()})(fcA,function(){var A="day";return function(e,t,r){var i=function(n){return n.add(4-n.isoWeekday(),A)},u=t.prototype;u.isoWeekYear=function(){return i(this).year()},u.isoWeek=function(n){if(!this.$utils().u(n))return this.add(7*(n-this.isoWeek()),A);var o,s,l,g,C=i(this),B=(o=this.isoWeekYear(),s=this.$u,l=(s?r.utc:r)().year(o).startOf("year"),g=4-l.isoWeekday(),l.isoWeekday()>4&&(g+=7),l.add(g,A));return C.diff(B,"week")+1},u.isoWeekday=function(n){return this.$utils().u(n)?this.day()||7:this.day(this.day()%7?n:n-7)};var a=u.startOf;u.startOf=function(n,o){var s=this.$utils(),l=!!s.u(o)||o;return s.p(n)==="isoweek"?l?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):a.bind(this)(n,o)}}})});var are=wu(function(DcA,ycA){(function(A,e){typeof DcA=="object"&&typeof ycA<"u"?ycA.exports=e():typeof define=="function"&&define.amd?define(e):(A=typeof globalThis<"u"?globalThis:A||self).dayjs_plugin_customParseFormat=e()})(DcA,function(){var A={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},e=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,t=/\d/,r=/\d\d/,i=/\d\d?/,u=/\d*[^-_:/,()\s\d]+/,a={},n=function(E){return(E=+E)+(E>68?1900:2000)},o=function(E){return function(d){this[E]=+d}},s=[/[+-]\d\d:?(\d\d)?|Z/,function(E){(this.zone||(this.zone={})).offset=function(d){if(!d)return 0;if(d==="Z")return 0;var I=d.match(/([+-]|\d\d)/g),h=60*I[1]+(+I[2]||0);return h===0?0:I[0]==="+"?-h:h}(E)}],l=function(E){var d=a[E];return d&&(d.indexOf?d:d.s.concat(d.f))},g=function(E,d){var I,h=a.meridiem;if(h){for(var Q=1;Q<=24;Q+=1)if(E.indexOf(h(Q,0,d))>-1){I=Q>12;break}}else I=E===(d?"pm":"PM");return I},C={A:[u,function(E){this.afternoon=g(E,!1)}],a:[u,function(E){this.afternoon=g(E,!0)}],Q:[t,function(E){this.month=3*(E-1)+1}],S:[t,function(E){this.milliseconds=100*+E}],SS:[r,function(E){this.milliseconds=10*+E}],SSS:[/\d{3}/,function(E){this.milliseconds=+E}],s:[i,o("seconds")],ss:[i,o("seconds")],m:[i,o("minutes")],mm:[i,o("minutes")],H:[i,o("hours")],h:[i,o("hours")],HH:[i,o("hours")],hh:[i,o("hours")],D:[i,o("day")],DD:[r,o("day")],Do:[u,function(E){var d=a.ordinal,I=E.match(/\d+/);if(this.day=I[0],d)for(var h=1;h<=31;h+=1)d(h).replace(/\[|\]/g,"")===E&&(this.day=h)}],w:[i,o("week")],ww:[r,o("week")],M:[i,o("month")],MM:[r,o("month")],MMM:[u,function(E){var d=l("months"),I=(l("monthsShort")||d.map(function(h){return h.slice(0,3)})).indexOf(E)+1;if(I<1)throw Error();this.month=I%12||I}],MMMM:[u,function(E){var d=l("months").indexOf(E)+1;if(d<1)throw Error();this.month=d%12||d}],Y:[/[+-]?\d+/,o("year")],YY:[r,function(E){this.year=n(E)}],YYYY:[/\d{4}/,o("year")],Z:s,ZZ:s};function B(E){var d,I;d=E,I=a&&a.formats;for(var h=(E=d.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(b,k,v){var S=v&&v.toUpperCase();return k||I[v]||A[v]||I[S].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(x,F,T){return F||T.slice(1)})})).match(e),Q=h.length,p=0;p<Q;p+=1){var m=h[p],f=C[m],D=f&&f[0],w=f&&f[1];h[p]=w?{regex:D,parser:w}:m.replace(/^\[|\]$/g,"")}return function(b){for(var k={},v=0,S=0;v<Q;v+=1){var x=h[v];if(typeof x=="string")S+=x.length;else{var{regex:F,parser:T}=x,R=b.slice(S),L=F.exec(R)[0];T.call(k,L),b=b.replace(L,"")}}return function(M){var U=M.afternoon;if(U!==void 0){var Y=M.hours;U?Y<12&&(M.hours+=12):Y===12&&(M.hours=0),delete M.afternoon}}(k),k}}return function(E,d,I){I.p.customParseFormat=!0,E&&E.parseTwoDigitYear&&(n=E.parseTwoDigitYear);var h=d.prototype,Q=h.parse;h.parse=function(p){var{date:m,utc:f,args:D}=p;this.$u=f;var w=D[1];if(typeof w=="string"){var b=D[2]===!0,k=D[3]===!0,v=b||k,S=D[2];k&&(S=D[2]),a=this.$locale(),!b&&S&&(a=I.Ls[S]),this.$d=function(R,L,M,U){try{if(["x","X"].indexOf(L)>-1)return new Date((L==="X"?1000:1)*R);var Y=B(L)(R),{year:H,month:J,day:K,hours:O,minutes:P,seconds:z,milliseconds:AA,zone:W,week:CA}=Y,tA=new Date,lA=K||(H||J?1:tA.getDate()),gA=H||tA.getFullYear(),aA=0;H&&!J||(aA=J>0?J-1:tA.getMonth());var NA,DA=O||0,KA=P||0,TA=z||0,qA=AA||0;return W?new Date(Date.UTC(gA,aA,lA,DA,KA,TA,qA+60*W.offset*1000)):M?new Date(Date.UTC(gA,aA,lA,DA,KA,TA,qA)):(NA=new Date(gA,aA,lA,DA,KA,TA,qA),CA&&(NA=U(NA).week(CA).toDate()),NA)}catch(IA){return new Date("")}}(m,w,f,I),this.init(),S&&S!==!0&&(this.$L=this.locale(S).$L),v&&m!=this.format(w)&&(this.$d=new Date("")),a={}}else if(w instanceof Array)for(var x=w.length,F=1;F<=x;F+=1){D[1]=w[F-1];var T=I.apply(this,D);if(T.isValid()){this.$d=T.$d,this.$L=T.$L,this.init();break}F===x&&(this.$d=new Date(""))}else Q.call(this,p)}}})});var nre=wu(function(wcA,bcA){(function(A,e){typeof wcA=="object"&&typeof bcA<"u"?bcA.exports=e():typeof define=="function"&&define.amd?define(e):(A=typeof globalThis<"u"?globalThis:A||self).dayjs_plugin_advancedFormat=e()})(wcA,function(){return function(A,e){var t=e.prototype,r=t.format;t.format=function(i){var u=this,a=this.$locale();if(!this.isValid())return r.bind(this)(i);var n=this.$utils(),o=(i||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(s){switch(s){case"Q":return Math.ceil((u.$M+1)/3);case"Do":return a.ordinal(u.$D);case"gggg":return u.weekYear();case"GGGG":return u.isoWeekYear();case"wo":return a.ordinal(u.week(),"W");case"w":case"ww":return n.s(u.week(),s==="w"?1:2,"0");case"W":case"WW":return n.s(u.isoWeek(),s==="W"?1:2,"0");case"k":case"kk":return n.s(String(u.$H===0?24:u.$H),s==="k"?1:2,"0");case"X":return Math.floor(u.$d.getTime()/1000);case"x":return u.$d.getTime();case"z":return"["+u.offsetName()+"]";case"zzz":return"["+u.offsetName("long")+"]";default:return s}});return r.bind(this)(o)}}})});var ore=wu(function(vcA,kcA){(function(A,e){typeof vcA=="object"&&typeof kcA<"u"?kcA.exports=e():typeof define=="function"&&define.amd?define(e):(A=typeof globalThis<"u"?globalThis:A||self).dayjs_plugin_duration=e()})(vcA,function(){var A,e,t=1000,r=60000,i=3600000,u=86400000,a=31536000000,n=2628000000,o=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/,s=/\[([^\]]+)]|YYYY|YY|Y|M{1,2}|D{1,2}|H{1,2}|m{1,2}|s{1,2}|SSS/g,l={years:a,months:n,days:u,hours:i,minutes:r,seconds:t,milliseconds:1,weeks:604800000},g=function(m){return m instanceof Q},C=function(m,f,D){return new Q(m,D,f.$l)},B=function(m){return e.p(m)+"s"},E=function(m){return m<0},d=function(m){return E(m)?Math.ceil(m):Math.floor(m)},I=function(m){return Math.abs(m)},h=function(m,f){return m?E(m)?{negative:!0,format:""+I(m)+f}:{negative:!1,format:""+m+f}:{negative:!1,format:""}},Q=function(){function m(D,w,b){var k=this;if(this.$d={},this.$l=b,D===void 0&&(this.$ms=0,this.parseFromMilliseconds()),w)return C(D*l[B(w)],this);if(typeof D=="number")return this.$ms=D,this.parseFromMilliseconds(),this;if(typeof D=="object")return Object.keys(D).forEach(function(x){k.$d[B(x)]=D[x]}),this.calMilliseconds(),this;if(typeof D=="string"){var v=D.match(o);if(v){var S=v.slice(2).map(function(x){return x!=null?Number(x):0});return this.$d.years=S[0],this.$d.months=S[1],this.$d.weeks=S[2],this.$d.days=S[3],this.$d.hours=S[4],this.$d.minutes=S[5],this.$d.seconds=S[6],this.calMilliseconds(),this}}return this}var f=m.prototype;return f.calMilliseconds=function(){var D=this;this.$ms=Object.keys(this.$d).reduce(function(w,b){return w+(D.$d[b]||0)*l[b]},0)},f.parseFromMilliseconds=function(){var D=this.$ms;this.$d.years=d(D/a),D%=a,this.$d.months=d(D/n),D%=n,this.$d.days=d(D/u),D%=u,this.$d.hours=d(D/i),D%=i,this.$d.minutes=d(D/r),D%=r,this.$d.seconds=d(D/t),D%=t,this.$d.milliseconds=D},f.toISOString=function(){var D=h(this.$d.years,"Y"),w=h(this.$d.months,"M"),b=+this.$d.days||0;this.$d.weeks&&(b+=7*this.$d.weeks);var k=h(b,"D"),v=h(this.$d.hours,"H"),S=h(this.$d.minutes,"M"),x=this.$d.seconds||0;this.$d.milliseconds&&(x+=this.$d.milliseconds/1000,x=Math.round(1000*x)/1000);var F=h(x,"S"),T=D.negative||w.negative||k.negative||v.negative||S.negative||F.negative,R=v.format||S.format||F.format?"T":"",L=(T?"-":"")+"P"+D.format+w.format+k.format+R+v.format+S.format+F.format;return L==="P"||L==="-P"?"P0D":L},f.toJSON=function(){return this.toISOString()},f.format=function(D){var w=D||"YYYY-MM-DDTHH:mm:ss",b={Y:this.$d.years,YY:e.s(this.$d.years,2,"0"),YYYY:e.s(this.$d.years,4,"0"),M:this.$d.months,MM:e.s(this.$d.months,2,"0"),D:this.$d.days,DD:e.s(this.$d.days,2,"0"),H:this.$d.hours,HH:e.s(this.$d.hours,2,"0"),m:this.$d.minutes,mm:e.s(this.$d.minutes,2,"0"),s:this.$d.seconds,ss:e.s(this.$d.seconds,2,"0"),SSS:e.s(this.$d.milliseconds,3,"0")};return w.replace(s,function(k,v){return v||String(b[k])})},f.as=function(D){return this.$ms/l[B(D)]},f.get=function(D){var w=this.$ms,b=B(D);return b==="milliseconds"?w%=1000:w=b==="weeks"?d(w/l[b]):this.$d[b],w||0},f.add=function(D,w,b){var k;return k=w?D*l[B(w)]:g(D)?D.$ms:C(D,this).$ms,C(this.$ms+k*(b?-1:1),this)},f.subtract=function(D,w){return this.add(D,w,!0)},f.locale=function(D){var w=this.clone();return w.$l=D,w},f.clone=function(){return C(this.$ms,this)},f.humanize=function(D){return A().add(this.$ms,"ms").locale(this.$l).fromNow(!D)},f.valueOf=function(){return this.asMilliseconds()},f.milliseconds=function(){return this.get("milliseconds")},f.asMilliseconds=function(){return this.as("milliseconds")},f.seconds=function(){return this.get("seconds")},f.asSeconds=function(){return this.as("seconds")},f.minutes=function(){return this.get("minutes")},f.asMinutes=function(){return this.as("minutes")},f.hours=function(){return this.get("hours")},f.asHours=function(){return this.as("hours")},f.days=function(){return this.get("days")},f.asDays=function(){return this.as("days")},f.weeks=function(){return this.get("weeks")},f.asWeeks=function(){return this.as("weeks")},f.months=function(){return this.get("months")},f.asMonths=function(){return this.as("months")},f.years=function(){return this.get("years")},f.asYears=function(){return this.as("years")},m}(),p=function(m,f,D){return m.add(f.years()*D,"y").add(f.months()*D,"M").add(f.days()*D,"d").add(f.hours()*D,"h").add(f.minutes()*D,"m").add(f.seconds()*D,"s").add(f.milliseconds()*D,"ms")};return function(m,f,D){A=D,e=D().$utils(),D.duration=function(k,v){var S=D.locale();return C(k,{$l:S},v)},D.isDuration=g;var w=f.prototype.add,b=f.prototype.subtract;f.prototype.add=function(k,v){return g(k)?p(this,k,1):w.bind(this)(k,v)},f.prototype.subtract=function(k,v){return g(k)?p(this,k,-1):b.bind(this)(k,v)}}})});function OcA(A,e,t){let r=!0;while(r)r=!1,t.forEach(function(i){let u="^\\s*"+i+"\\s*$",a=new RegExp(u);if(A[0].match(a))e[i]=!0,A.shift(1),r=!0})}var cre,Qg,Cre,Bre,Ere,o6,wre,xcA,KSt,sre,PE="",NcA="",GcA=void 0,UcA="",l6,g6,McA,TcA,sO,c6="",YcA="",dre,HcA,n6="",zx=!1,KcA=!1,JcA="sunday",lO="saturday",ScA=0,JSt,OSt,PSt,_St,WSt,qSt,zSt,ZSt,VSt,jSt,XSt,$St,ALt,eLt,tLt,rLt,Ire,iLt,uLt,aLt,nLt,oLt,sLt,lLt,gLt,hre,cLt,CLt,BLt,Qre,ELt,LcA,pre,fre,nO=0,s6,dLt,ILt,RcA,oO,Co,mre,hLt,om,QLt,lre,pLt,Dre,fLt,yre,mLt,DLt,yLt,wLt,gre,bLt,nh,FcA=1e4,vLt,kLt,FLt,xLt,bre;var vre=_(()=>{ai();rr();ir();Nt();Pr();cre=yu(JD(),1),Qg=yu(zL(),1),Cre=yu(ure(),1),Bre=yu(are(),1),Ere=yu(nre(),1),o6=yu(zL(),1),wre=yu(ore(),1),xcA=function(){var A=y(function(F,T,R,L){for(R=R||{},L=F.length;L--;R[F[L]]=T);return R},"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],t=[1,26],r=[1,27],i=[1,28],u=[1,29],a=[1,30],n=[1,31],o=[1,32],s=[1,33],l=[1,34],g=[1,9],C=[1,10],B=[1,11],E=[1,12],d=[1,13],I=[1,14],h=[1,15],Q=[1,16],p=[1,19],m=[1,20],f=[1,21],D=[1,22],w=[1,23],b=[1,25],k=[1,35],v={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:y(function(T,R,L,M,U,Y,H){var J=Y.length-1;switch(U){case 1:return Y[J-1];case 2:this.$=[];break;case 3:Y[J-1].push(Y[J]),this.$=Y[J-1];break;case 4:case 5:this.$=Y[J];break;case 6:case 7:this.$=[];break;case 8:M.setWeekday("monday");break;case 9:M.setWeekday("tuesday");break;case 10:M.setWeekday("wednesday");break;case 11:M.setWeekday("thursday");break;case 12:M.setWeekday("friday");break;case 13:M.setWeekday("saturday");break;case 14:M.setWeekday("sunday");break;case 15:M.setWeekend("friday");break;case 16:M.setWeekend("saturday");break;case 17:M.setDateFormat(Y[J].substr(11)),this.$=Y[J].substr(11);break;case 18:M.enableInclusiveEndDates(),this.$=Y[J].substr(18);break;case 19:M.TopAxis(),this.$=Y[J].substr(8);break;case 20:M.setAxisFormat(Y[J].substr(11)),this.$=Y[J].substr(11);break;case 21:M.setTickInterval(Y[J].substr(13)),this.$=Y[J].substr(13);break;case 22:M.setExcludes(Y[J].substr(9)),this.$=Y[J].substr(9);break;case 23:M.setIncludes(Y[J].substr(9)),this.$=Y[J].substr(9);break;case 24:M.setTodayMarker(Y[J].substr(12)),this.$=Y[J].substr(12);break;case 27:M.setDiagramTitle(Y[J].substr(6)),this.$=Y[J].substr(6);break;case 28:this.$=Y[J].trim(),M.setAccTitle(this.$);break;case 29:case 30:this.$=Y[J].trim(),M.setAccDescription(this.$);break;case 31:M.addSection(Y[J].substr(8)),this.$=Y[J].substr(8);break;case 33:M.addTask(Y[J-1],Y[J]),this.$="task";break;case 34:this.$=Y[J-1],M.setClickEvent(Y[J-1],Y[J],null);break;case 35:this.$=Y[J-2],M.setClickEvent(Y[J-2],Y[J-1],Y[J]);break;case 36:this.$=Y[J-2],M.setClickEvent(Y[J-2],Y[J-1],null),M.setLink(Y[J-2],Y[J]);break;case 37:this.$=Y[J-3],M.setClickEvent(Y[J-3],Y[J-2],Y[J-1]),M.setLink(Y[J-3],Y[J]);break;case 38:this.$=Y[J-2],M.setClickEvent(Y[J-2],Y[J],null),M.setLink(Y[J-2],Y[J-1]);break;case 39:this.$=Y[J-3],M.setClickEvent(Y[J-3],Y[J-1],Y[J]),M.setLink(Y[J-3],Y[J-2]);break;case 40:this.$=Y[J-1],M.setLink(Y[J-1],Y[J]);break;case 41:case 47:this.$=Y[J-1]+" "+Y[J];break;case 42:case 43:case 45:this.$=Y[J-2]+" "+Y[J-1]+" "+Y[J];break;case 44:case 46:this.$=Y[J-3]+" "+Y[J-2]+" "+Y[J-1]+" "+Y[J];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},A(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:t,13:r,14:i,15:u,16:a,17:n,18:o,19:18,20:s,21:l,22:g,23:C,24:B,25:E,26:d,27:I,28:h,29:Q,30:p,31:m,33:f,35:D,36:w,37:24,38:b,40:k},A(e,[2,7],{1:[2,1]}),A(e,[2,3]),{9:36,11:17,12:t,13:r,14:i,15:u,16:a,17:n,18:o,19:18,20:s,21:l,22:g,23:C,24:B,25:E,26:d,27:I,28:h,29:Q,30:p,31:m,33:f,35:D,36:w,37:24,38:b,40:k},A(e,[2,5]),A(e,[2,6]),A(e,[2,17]),A(e,[2,18]),A(e,[2,19]),A(e,[2,20]),A(e,[2,21]),A(e,[2,22]),A(e,[2,23]),A(e,[2,24]),A(e,[2,25]),A(e,[2,26]),A(e,[2,27]),{32:[1,37]},{34:[1,38]},A(e,[2,30]),A(e,[2,31]),A(e,[2,32]),{39:[1,39]},A(e,[2,8]),A(e,[2,9]),A(e,[2,10]),A(e,[2,11]),A(e,[2,12]),A(e,[2,13]),A(e,[2,14]),A(e,[2,15]),A(e,[2,16]),{41:[1,40],43:[1,41]},A(e,[2,4]),A(e,[2,28]),A(e,[2,29]),A(e,[2,33]),A(e,[2,34],{42:[1,42],43:[1,43]}),A(e,[2,40],{41:[1,44]}),A(e,[2,35],{43:[1,45]}),A(e,[2,36]),A(e,[2,38],{42:[1,46]}),A(e,[2,37]),A(e,[2,39])],defaultActions:{},parseError:y(function(T,R){if(R.recoverable)this.trace(T);else{var L=Error(T);throw L.hash=R,L}},"parseError"),parse:y(function(T){var R=this,L=[0],M=[],U=[null],Y=[],H=this.table,J="",K=0,O=0,P=0,z=2,AA=1,W=Y.slice.call(arguments,1),CA=Object.create(this.lexer),tA={yy:{}};for(var lA in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,lA))tA.yy[lA]=this.yy[lA];if(CA.setInput(T,tA.yy),tA.yy.lexer=CA,tA.yy.parser=this,typeof CA.yylloc>"u")CA.yylloc={};var gA=CA.yylloc;Y.push(gA);var aA=CA.options&&CA.options.ranges;if(typeof tA.yy.parseError==="function")this.parseError=tA.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function NA(FA){L.length=L.length-2*FA,U.length=U.length-FA,Y.length=Y.length-FA}y(NA,"popStack");function DA(){var FA=M.pop()||CA.lex()||AA;if(typeof FA!=="number"){if(FA instanceof Array)M=FA,FA=M.pop();FA=R.symbols_[FA]||FA}return FA}y(DA,"lex");var KA,TA,qA,IA,bA,SA,EA={},nA,eA,BA,yA;while(!0){if(qA=L[L.length-1],this.defaultActions[qA])IA=this.defaultActions[qA];else{if(KA===null||typeof KA>"u")KA=DA();IA=H[qA]&&H[qA][KA]}if(typeof IA>"u"||!IA.length||!IA[0]){var vA="";yA=[];for(nA in H[qA])if(this.terminals_[nA]&&nA>z)yA.push("'"+this.terminals_[nA]+"'");if(CA.showPosition)vA="Parse error on line "+(K+1)+`:
`+CA.showPosition()+`
Expecting `+yA.join(", ")+", got '"+(this.terminals_[KA]||KA)+"'";else vA="Parse error on line "+(K+1)+": Unexpected "+(KA==AA?"end of input":"'"+(this.terminals_[KA]||KA)+"'");this.parseError(vA,{text:CA.match,token:this.terminals_[KA]||KA,line:CA.yylineno,loc:gA,expected:yA})}if(IA[0]instanceof Array&&IA.length>1)throw Error("Parse Error: multiple actions possible at state: "+qA+", token: "+KA);switch(IA[0]){case 1:if(L.push(KA),U.push(CA.yytext),Y.push(CA.yylloc),L.push(IA[1]),KA=null,!TA){if(O=CA.yyleng,J=CA.yytext,K=CA.yylineno,gA=CA.yylloc,P>0)P--}else KA=TA,TA=null;break;case 2:if(eA=this.productions_[IA[1]][1],EA.$=U[U.length-eA],EA._$={first_line:Y[Y.length-(eA||1)].first_line,last_line:Y[Y.length-1].last_line,first_column:Y[Y.length-(eA||1)].first_column,last_column:Y[Y.length-1].last_column},aA)EA._$.range=[Y[Y.length-(eA||1)].range[0],Y[Y.length-1].range[1]];if(SA=this.performAction.apply(EA,[J,O,K,tA.yy,IA[1],U,Y].concat(W)),typeof SA<"u")return SA;if(eA)L=L.slice(0,-1*eA*2),U=U.slice(0,-1*eA),Y=Y.slice(0,-1*eA);L.push(this.productions_[IA[1]][0]),U.push(EA.$),Y.push(EA._$),BA=H[L[L.length-2]][L[L.length-1]],L.push(BA);break;case 3:return!0}}return!0},"parse")},S=function(){var F={EOF:1,parseError:y(function(R,L){if(this.yy.parser)this.yy.parser.parseError(R,L);else throw Error(R)},"parseError"),setInput:y(function(T,R){if(this.yy=R||this.yy||{},this._input=T,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var T=this._input[0];this.yytext+=T,this.yyleng++,this.offset++,this.match+=T,this.matched+=T;var R=T.match(/(?:\r\n?|\n).*/g);if(R)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),T},"input"),unput:y(function(T){var R=T.length,L=T.split(/(?:\r\n?|\n)/g);this._input=T+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-R),this.offset-=R;var M=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),L.length-1)this.yylineno-=L.length-1;var U=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:L?(L.length===M.length?this.yylloc.first_column:0)+M[M.length-L.length].length-L[0].length:this.yylloc.first_column-R},this.options.ranges)this.yylloc.range=[U[0],U[0]+this.yyleng-R];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(T){this.unput(this.match.slice(T))},"less"),pastInput:y(function(){var T=this.matched.substr(0,this.matched.length-this.match.length);return(T.length>20?"...":"")+T.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var T=this.match;if(T.length<20)T+=this._input.substr(0,20-T.length);return(T.substr(0,20)+(T.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var T=this.pastInput(),R=Array(T.length+1).join("-");return T+this.upcomingInput()+`
`+R+"^"},"showPosition"),test_match:y(function(T,R){var L,M,U;if(this.options.backtrack_lexer){if(U={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)U.yylloc.range=this.yylloc.range.slice(0)}if(M=T[0].match(/(?:\r\n?|\n).*/g),M)this.yylineno+=M.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:M?M[M.length-1].length-M[M.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+T[0].length},this.yytext+=T[0],this.match+=T[0],this.matches=T,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(T[0].length),this.matched+=T[0],L=this.performAction.call(this,this.yy,this,R,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(L)return L;else if(this._backtrack){for(var Y in U)this[Y]=U[Y];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var T,R,L,M;if(!this._more)this.yytext="",this.match="";var U=this._currentRules();for(var Y=0;Y<U.length;Y++)if(L=this._input.match(this.rules[U[Y]]),L&&(!R||L[0].length>R[0].length)){if(R=L,M=Y,this.options.backtrack_lexer)if(T=this.test_match(L,U[Y]),T!==!1)return T;else if(this._backtrack){R=!1;continue}else return!1;else if(!this.options.flex)break}if(R){if(T=this.test_match(R,U[M]),T!==!1)return T;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var R=this.next();if(R)return R;else return this.lex()},"lex"),begin:y(function(R){this.conditionStack.push(R)},"begin"),popState:y(function(){var R=this.conditionStack.length-1;if(R>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(R){if(R=this.conditionStack.length-1-Math.abs(R||0),R>=0)return this.conditionStack[R];else return"INITIAL"},"topState"),pushState:y(function(R){this.begin(R)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(R,L,M,U){var Y=U;switch(M){case 0:return this.begin("open_directive"),"open_directive";break;case 1:return this.begin("acc_title"),31;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),33;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:break;case 9:break;case 10:break;case 11:return 10;case 12:break;case 13:break;case 14:this.begin("href");break;case 15:this.popState();break;case 16:return 43;case 17:this.begin("callbackname");break;case 18:this.popState();break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 21:this.popState();break;case 22:return 42;case 23:this.begin("click");break;case 24:this.popState();break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return F}();v.lexer=S;function x(){this.yy={}}return y(x,"Parser"),x.prototype=v,v.Parser=x,new x}();xcA.parser=xcA;KSt=xcA;Qg.default.extend(Cre.default);Qg.default.extend(Bre.default);Qg.default.extend(Ere.default);sre={friday:5,saturday:6},l6=[],g6=[],McA=new Map,TcA=[],sO=[],dre=["active","done","crit","milestone","vert"],HcA=[],JSt=y(function(){TcA=[],sO=[],c6="",HcA=[],nO=0,RcA=void 0,oO=void 0,Co=[],PE="",NcA="",YcA="",GcA=void 0,UcA="",l6=[],g6=[],zx=!1,KcA=!1,ScA=0,McA=new Map,n6="",cr(),JcA="sunday",lO="saturday"},"clear"),OSt=y(function(A){n6=A},"setDiagramId"),PSt=y(function(A){NcA=A},"setAxisFormat"),_St=y(function(){return NcA},"getAxisFormat"),WSt=y(function(A){GcA=A},"setTickInterval"),qSt=y(function(){return GcA},"getTickInterval"),zSt=y(function(A){UcA=A},"setTodayMarker"),ZSt=y(function(){return UcA},"getTodayMarker"),VSt=y(function(A){PE=A},"setDateFormat"),jSt=y(function(){zx=!0},"enableInclusiveEndDates"),XSt=y(function(){return zx},"endDatesAreInclusive"),$St=y(function(){KcA=!0},"enableTopAxis"),ALt=y(function(){return KcA},"topAxisEnabled"),eLt=y(function(A){YcA=A},"setDisplayMode"),tLt=y(function(){return YcA},"getDisplayMode"),rLt=y(function(){return PE},"getDateFormat"),Ire=y((A,e)=>{let t=e.toLowerCase().split(/[\s,]+/).filter((r)=>r!=="");return[...new Set([...A,...t])]},"mergeTokens"),iLt=y(function(A){l6=Ire(l6,A)},"setIncludes"),uLt=y(function(){return l6},"getIncludes"),aLt=y(function(A){g6=Ire(g6,A)},"setExcludes"),nLt=y(function(){return g6},"getExcludes"),oLt=y(function(){return McA},"getLinks"),sLt=y(function(A){c6=A,TcA.push(A)},"addSection"),lLt=y(function(){return TcA},"getSections"),gLt=y(function(){let A=lre(),e=10,t=0;while(!A&&t<e)A=lre(),t++;return sO=Co,sO},"getTasks"),hre=y(function(A,e,t,r){let i=A.format(e.trim()),u=A.format("YYYY-MM-DD");if(r.includes(i)||r.includes(u))return!1;if(t.includes("weekends")&&(A.isoWeekday()===sre[lO]||A.isoWeekday()===sre[lO]+1))return!0;if(t.includes(A.format("dddd").toLowerCase()))return!0;return t.includes(i)||t.includes(u)},"isInvalidDate"),cLt=y(function(A){JcA=A},"setWeekday"),CLt=y(function(){return JcA},"getWeekday"),BLt=y(function(A){lO=A},"setWeekend"),Qre=y(function(A,e,t,r){if(!t.length||A.manualEndTime)return;let i;if(A.startTime instanceof Date)i=Qg.default(A.startTime);else i=Qg.default(A.startTime,e,!0);i=i.add(1,"d");let u;if(A.endTime instanceof Date)u=Qg.default(A.endTime);else u=Qg.default(A.endTime,e,!0);let[a,n]=ELt(i,u,e,t,r);A.endTime=a.toDate(),A.renderEndTime=n},"checkTaskDates"),ELt=y(function(A,e,t,r,i){let u=!1,a=null,n=e.add(1e4,"d");while(A<=e){if(!u)a=e.toDate();if(u=hre(A,t,r,i),u){if(e=e.add(1,"d"),e>n)throw Error("Failed to find a valid date that was not excluded by `excludes` after 10,000 iterations.")}A=A.add(1,"d")}return[e,a]},"fixTaskDates"),LcA=y(function(A,e,t){if(t=t.trim(),y((n)=>{let o=n.trim();return o==="x"||o==="X"},"isTimestampFormat")(e)&&/^\d+$/.test(t))return new Date(Number(t));let u=/^after\s+(?<ids>[\d\w- ]+)/.exec(t);if(u!==null){let n=null;for(let s of u.groups.ids.split(" ")){let l=om(s);if(l!==void 0&&(!n||l.endTime>n.endTime))n=l}if(n)return n.endTime;let o=new Date;return o.setHours(0,0,0,0),o}let a=Qg.default(t,e.trim(),!0);if(a.isValid())return a.toDate();else{sA.debug("Invalid date:"+t),sA.debug("With date format:"+e.trim());let n=new Date(t);if(n===void 0||isNaN(n.getTime())||n.getFullYear()<-1e4||n.getFullYear()>1e4)throw Error("Invalid date:"+t);return n}},"getStartDate"),pre=y(function(A){let e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(A.trim());if(e!==null)return[Number.parseFloat(e[1]),e[2]];return[NaN,"ms"]},"parseDuration"),fre=y(function(A,e,t,r=!1){t=t.trim();let u=/^until\s+(?<ids>[\d\w- ]+)/.exec(t);if(u!==null){let l=null;for(let C of u.groups.ids.split(" ")){let B=om(C);if(B!==void 0&&(!l||B.startTime<l.startTime))l=B}if(l)return l.startTime;let g=new Date;return g.setHours(0,0,0,0),g}let a=Qg.default(t,e.trim(),!0);if(a.isValid()){if(r)a=a.add(1,"d");return a.toDate()}let n=Qg.default(A),[o,s]=pre(t);if(!Number.isNaN(o)){let l=n.add(o,s);if(l.isValid())n=l}return n.toDate()},"getEndDate"),s6=y(function(A){if(A===void 0)return nO=nO+1,"task"+nO;return A},"parseId"),dLt=y(function(A,e){let t;if(e.substr(0,1)===":")t=e.substr(1,e.length);else t=e;let r=t.split(","),i={};OcA(r,i,dre);for(let a=0;a<r.length;a++)r[a]=r[a].trim();let u="";switch(r.length){case 1:i.id=s6(),i.startTime=A.endTime,u=r[0];break;case 2:i.id=s6(),i.startTime=LcA(void 0,PE,r[0]),u=r[1];break;case 3:i.id=s6(r[0]),i.startTime=LcA(void 0,PE,r[1]),u=r[2];break;default:}if(u)i.endTime=fre(i.startTime,PE,u,zx),i.manualEndTime=Qg.default(u,"YYYY-MM-DD",!0).isValid(),Qre(i,PE,g6,l6);return i},"compileData"),ILt=y(function(A,e){let t;if(e.substr(0,1)===":")t=e.substr(1,e.length);else t=e;let r=t.split(","),i={};OcA(r,i,dre);for(let u=0;u<r.length;u++)r[u]=r[u].trim();switch(r.length){case 1:i.id=s6(),i.startTime={type:"prevTaskEnd",id:A},i.endTime={data:r[0]};break;case 2:i.id=s6(),i.startTime={type:"getStartDate",startData:r[0]},i.endTime={data:r[1]};break;case 3:i.id=s6(r[0]),i.startTime={type:"getStartDate",startData:r[1]},i.endTime={data:r[2]};break;default:}return i},"parseData"),Co=[],mre={},hLt=y(function(A,e){let t={section:c6,type:c6,processed:!1,manualEndTime:!1,renderEndTime:null,raw:{data:e},task:A,classes:[]},r=ILt(oO,e);if(t.raw.startTime=r.startTime,t.raw.endTime=r.endTime,t.id=r.id,t.prevTaskId=oO,t.active=r.active,t.done=r.done,t.crit=r.crit,t.milestone=r.milestone,t.vert=r.vert,t.vert)t.order=-1;else t.order=ScA,ScA++;let i=Co.push(t);oO=t.id,mre[t.id]=i-1},"addTask"),om=y(function(A){let e=mre[A];return Co[e]},"findTaskById"),QLt=y(function(A,e){let t={section:c6,type:c6,description:A,task:A,classes:[]},r=dLt(RcA,e);t.startTime=r.startTime,t.endTime=r.endTime,t.id=r.id,t.active=r.active,t.done=r.done,t.crit=r.crit,t.milestone=r.milestone,t.vert=r.vert,RcA=t,sO.push(t)},"addTaskOrg"),lre=y(function(){let A=y(function(t){let r=Co[t],i="";switch(Co[t].raw.startTime.type){case"prevTaskEnd":{let u=om(r.prevTaskId);r.startTime=u.endTime;break}case"getStartDate":if(i=LcA(void 0,PE,Co[t].raw.startTime.startData),i)Co[t].startTime=i;break}if(Co[t].startTime){if(Co[t].endTime=fre(Co[t].startTime,PE,Co[t].raw.endTime.data,zx),Co[t].endTime)Co[t].processed=!0,Co[t].manualEndTime=Qg.default(Co[t].raw.endTime.data,"YYYY-MM-DD",!0).isValid(),Qre(Co[t],PE,g6,l6)}return Co[t].processed},"compileTask"),e=!0;for(let[t,r]of Co.entries())A(t),e=e&&r.processed;return e},"compileTasks"),pLt=y(function(A,e){let t=e;if(OA().securityLevel!=="loose")t=cre.sanitizeUrl(e);A.split(",").forEach(function(r){if(om(r)!==void 0)yre(r,()=>{window.open(t,"_self")}),McA.set(r,t)}),Dre(A,"clickable")},"setLink"),Dre=y(function(A,e){A.split(",").forEach(function(t){let r=om(t);if(r!==void 0)r.classes.push(e)})},"setClass"),fLt=y(function(A,e,t){if(OA().securityLevel!=="loose")return;if(e===void 0)return;let r=[];if(typeof t==="string"){r=t.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let u=0;u<r.length;u++){let a=r[u].trim();if(a.startsWith('"')&&a.endsWith('"'))a=a.substr(1,a.length-2);r[u]=a}}if(r.length===0)r.push(A);if(om(A)!==void 0)yre(A,()=>{Jt.runFunc(e,...r)})},"setClickFun"),yre=y(function(A,e){HcA.push(function(){let t=n6?`${n6}-${A}`:A,r=document.querySelector(`[id="${t}"]`);if(r!==null)r.addEventListener("click",function(){e()})},function(){let t=n6?`${n6}-${A}`:A,r=document.querySelector(`[id="${t}-text"]`);if(r!==null)r.addEventListener("click",function(){e()})})},"pushFun"),mLt=y(function(A,e,t){A.split(",").forEach(function(r){fLt(r,e,t)}),Dre(A,"clickable")},"setClickEvent"),DLt=y(function(A){HcA.forEach(function(e){e(A)})},"bindFunctions"),yLt={getConfig:y(()=>OA().gantt,"getConfig"),clear:JSt,setDateFormat:VSt,getDateFormat:rLt,enableInclusiveEndDates:jSt,endDatesAreInclusive:XSt,enableTopAxis:$St,topAxisEnabled:ALt,setAxisFormat:PSt,getAxisFormat:_St,setTickInterval:WSt,getTickInterval:qSt,setTodayMarker:zSt,getTodayMarker:ZSt,setAccTitle:Dr,getAccTitle:kr,setDiagramTitle:Tr,getDiagramTitle:Sr,setDiagramId:OSt,setDisplayMode:eLt,getDisplayMode:tLt,setAccDescription:Fr,getAccDescription:xr,addSection:sLt,getSections:lLt,getTasks:gLt,addTask:hLt,findTaskById:om,addTaskOrg:QLt,setIncludes:iLt,getIncludes:uLt,setExcludes:aLt,getExcludes:nLt,setClickEvent:mLt,setLink:pLt,getLinks:oLt,bindFunctions:DLt,parseDuration:pre,isInvalidDate:hre,setWeekday:cLt,getWeekday:CLt,setWeekend:BLt};y(OcA,"getTaskTags");o6.default.extend(wre.default);wLt=y(function(){sA.debug("Something is calling, setConf, remove the call")},"setConf"),gre={monday:EQ,tuesday:GN,wednesday:UN,thursday:jB,friday:MN,saturday:TN,sunday:rC},bLt=y((A,e)=>{let t=[...A].map(()=>-1/0),r=[...A].sort((u,a)=>u.startTime-a.startTime||u.order-a.order),i=0;for(let u of r)for(let a=0;a<t.length;a++)if(u.startTime>=t[a]){if(t[a]=u.endTime,u.order=a+e,a>i)i=a;break}return i},"getMaxIntersections"),vLt=y(function(A,e,t,r){let i=OA().gantt;r.db.setDiagramId(e);let u=OA().securityLevel,a;if(u==="sandbox")a=Qe("#i"+e);let n=u==="sandbox"?Qe(a.nodes()[0].contentDocument.body):Qe("body"),o=u==="sandbox"?a.nodes()[0].contentDocument:document,s=o.getElementById(e);if(nh=s.parentElement.offsetWidth,nh===void 0)nh=1200;if(i.useWidth!==void 0)nh=i.useWidth;let l=r.db.getTasks(),g=l.filter((v)=>!v.vert),C=[];for(let v of g)C.push(v.type);C=k(C);let B={},E=2*i.topPadding;if(r.db.getDisplayMode()==="compact"||i.displayMode==="compact"){let v={};for(let x of g)if(v[x.section]===void 0)v[x.section]=[x];else v[x.section].push(x);let S=0;for(let x of Object.keys(v)){let F=bLt(v[x],S)+1;S+=F,E+=F*(i.barHeight+i.barGap),B[x]=F}}else{E+=g.length*(i.barHeight+i.barGap);for(let v of C)B[v]=g.filter((S)=>S.type===v).length}s.setAttribute("viewBox","0 0 "+nh+" "+E);let d=n.select(`[id="${e}"]`),I=KN().domain([WR(l,function(v){return v.startTime}),_R(l,function(v){return v.endTime})]).rangeRound([0,nh-i.leftPadding-i.rightPadding]);function h(v,S){let x=v.startTime,F=S.startTime,T=0;if(x>F)T=1;else if(x<F)T=-1;return T}y(h,"taskCompare"),l.sort(h),Q(l,nh,E),Xr(d,E,nh,i.useMaxWidth),d.append("text").text(r.db.getDiagramTitle()).attr("x",nh/2).attr("y",i.titleTopMargin).attr("class","titleText");function Q(v,S,x){let F=i.barHeight,T=F+i.barGap,{topPadding:R,leftPadding:L}=i,M=tC().domain([0,C.length]).range(["#00B9FA","#F95002"]).interpolate(QX);m(T,R,L,S,x,v,r.db.getExcludes(),r.db.getIncludes()),D(L,R,S,x),p(v,T,R,L,F,M,S,x),w(T,R,L,F,M),b(L,R,S,x)}y(Q,"makeGantt");function p(v,S,x,F,T,R,L){v.sort((O,P)=>O.vert===P.vert?0:O.vert?1:-1);let M=v.filter((O)=>!O.vert),Y=[...new Set(M.map((O)=>O.order))].map((O)=>M.find((P)=>P.order===O));d.append("g").selectAll("rect").data(Y).enter().append("rect").attr("x",0).attr("y",function(O,P){return P=O.order,P*S+x-2}).attr("width",function(){return L-i.rightPadding/2}).attr("height",S).attr("class",function(O){for(let[P,z]of C.entries())if(O.type===z)return"section section"+P%i.numberSectionStyles;return"section section0"}).enter();let H=d.append("g").selectAll("rect").data(v).enter(),J=r.db.getLinks();if(H.append("rect").attr("id",function(O){return e+"-"+O.id}).attr("rx",3).attr("ry",3).attr("x",function(O){if(O.milestone)return I(O.startTime)+F+0.5*(I(O.endTime)-I(O.startTime))-0.5*T;return I(O.startTime)+F}).attr("y",function(O,P){if(P=O.order,O.vert)return i.gridLineStartPadding;return P*S+x}).attr("width",function(O){if(O.milestone)return T;if(O.vert)return 0.08*T;return I(O.renderEndTime||O.endTime)-I(O.startTime)}).attr("height",function(O){if(O.vert)return M.length*(i.barHeight+i.barGap)+i.barHeight*2;return T}).attr("transform-origin",function(O,P){return P=O.order,(I(O.startTime)+F+0.5*(I(O.endTime)-I(O.startTime))).toString()+"px "+(P*S+x+0.5*T).toString()+"px"}).attr("class",function(O){let z="";if(O.classes.length>0)z=O.classes.join(" ");let AA=0;for(let[CA,tA]of C.entries())if(O.type===tA)AA=CA%i.numberSectionStyles;let W="";if(O.active)if(O.crit)W+=" activeCrit";else W=" active";else if(O.done)if(O.crit)W=" doneCrit";else W=" done";else if(O.crit)W+=" crit";if(W.length===0)W=" task";if(O.milestone)W=" milestone "+W;if(O.vert)W=" vert "+W;return W+=AA,W+=" "+z,"task"+W}),H.append("text").attr("id",function(O){return e+"-"+O.id+"-text"}).text(function(O){return O.task}).attr("font-size",i.fontSize).attr("x",function(O){let P=I(O.startTime),z=I(O.renderEndTime||O.endTime);if(O.milestone)P+=0.5*(I(O.endTime)-I(O.startTime))-0.5*T,z=P+T;if(O.vert)return I(O.startTime)+F;let AA=this.getBBox().width;if(AA>z-P)if(z+AA+1.5*i.leftPadding>L)return P+F-5;else return z+F+5;else return(z-P)/2+P+F}).attr("y",function(O,P){if(O.vert)return i.gridLineStartPadding+M.length*(i.barHeight+i.barGap)+60;return P=O.order,P*S+i.barHeight/2+(i.fontSize/2-2)+x}).attr("text-height",T).attr("class",function(O){let P=I(O.startTime),z=I(O.endTime);if(O.milestone)z=P+T;let AA=this.getBBox().width,W="";if(O.classes.length>0)W=O.classes.join(" ");let CA=0;for(let[lA,gA]of C.entries())if(O.type===gA)CA=lA%i.numberSectionStyles;let tA="";if(O.active)if(O.crit)tA="activeCritText"+CA;else tA="activeText"+CA;if(O.done)if(O.crit)tA=tA+" doneCritText"+CA;else tA=tA+" doneText"+CA;else if(O.crit)tA=tA+" critText"+CA;if(O.milestone)tA+=" milestoneText";if(O.vert)tA+=" vertText";if(AA>z-P)if(z+AA+1.5*i.leftPadding>L)return W+" taskTextOutsideLeft taskTextOutside"+CA+" "+tA;else return W+" taskTextOutsideRight taskTextOutside"+CA+" "+tA+" width-"+AA;else return W+" taskText taskText"+CA+" "+tA+" width-"+AA}),OA().securityLevel==="sandbox"){let O;O=Qe("#i"+e);let P=O.nodes()[0].contentDocument;H.filter(function(z){return J.has(z.id)}).each(function(z){var AA=P.querySelector("#"+CSS.escape(e+"-"+z.id)),W=P.querySelector("#"+CSS.escape(e+"-"+z.id+"-text"));let CA=AA.parentNode;var tA=P.createElement("a");tA.setAttribute("xlink:href",J.get(z.id)),tA.setAttribute("target","_top"),CA.appendChild(tA),tA.appendChild(AA),tA.appendChild(W)})}}y(p,"drawRects");function m(v,S,x,F,T,R,L,M){if(L.length===0&&M.length===0)return;let U,Y;for(let{startTime:z,endTime:AA}of R){if(U===void 0||z<U)U=z;if(Y===void 0||AA>Y)Y=AA}if(!U||!Y)return;if(o6.default(Y).diff(o6.default(U),"year")>5){sA.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");return}let H=r.db.getDateFormat(),J=[],K=null,O=o6.default(U);while(O.valueOf()<=Y){if(r.db.isInvalidDate(O,H,L,M))if(!K)K={start:O,end:O};else K.end=O;else if(K)J.push(K),K=null;O=O.add(1,"d")}d.append("g").selectAll("rect").data(J).enter().append("rect").attr("id",(z)=>e+"-exclude-"+z.start.format("YYYY-MM-DD")).attr("x",(z)=>I(z.start.startOf("day"))+x).attr("y",i.gridLineStartPadding).attr("width",(z)=>I(z.end.endOf("day"))-I(z.start.startOf("day"))).attr("height",T-S-i.gridLineStartPadding).attr("transform-origin",function(z,AA){return(I(z.start)+x+0.5*(I(z.end)-I(z.start))).toString()+"px "+(AA*v+0.5*T).toString()+"px"}).attr("class","exclude-range")}y(m,"drawExcludeDays");function f(v,S,x,F){if(x<=0||v>S)return 1/0;let T=S-v,R=o6.default.duration({[F??"day"]:x}).asMilliseconds();if(R<=0)return 1/0;return Math.ceil(T/R)}y(f,"getEstimatedTickCount");function D(v,S,x,F){let T=r.db.getDateFormat(),R=r.db.getAxisFormat(),L;if(R)L=R;else if(T==="D")L="%d";else L=i.axisFormat??"%Y-%m-%d";let M=aj(I).tickSize(-F+S+i.gridLineStartPadding).tickFormat(ef(L)),Y=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(r.db.getTickInterval()||i.tickInterval);if(Y!==null){let H=parseInt(Y[1],10);if(isNaN(H)||H<=0)sA.warn(`Invalid tick interval value: "${Y[1]}". Skipping custom tick interval.`);else{let J=Y[2],K=r.db.getWeekday()||i.weekday,O=I.domain(),P=O[0],z=O[1],AA=f(P,z,H,J);if(AA>FcA)sA.warn(`The tick interval "${H}${J}" would generate ${AA} ticks, which exceeds the maximum allowed (${FcA}). This may indicate an invalid date or time range. Skipping custom tick interval.`);else switch(J){case"millisecond":M.ticks(ZB.every(H));break;case"second":M.ticks(Xl.every(H));break;case"minute":M.ticks(uI.every(H));break;case"hour":M.ticks(aI.every(H));break;case"day":M.ticks(_g.every(H));break;case"week":M.ticks(gre[K].every(H));break;case"month":M.ticks(nI.every(H));break}}}if(d.append("g").attr("class","grid").attr("transform","translate("+v+", "+(F-50)+")").call(M).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),r.db.topAxisEnabled()||i.topAxis){let H=uj(I).tickSize(-F+S+i.gridLineStartPadding).tickFormat(ef(L));if(Y!==null){let J=parseInt(Y[1],10);if(isNaN(J)||J<=0)sA.warn(`Invalid tick interval value: "${Y[1]}". Skipping custom tick interval.`);else{let K=Y[2],O=r.db.getWeekday()||i.weekday,P=I.domain(),z=P[0],AA=P[1];if(f(z,AA,J,K)<=FcA)switch(K){case"millisecond":H.ticks(ZB.every(J));break;case"second":H.ticks(Xl.every(J));break;case"minute":H.ticks(uI.every(J));break;case"hour":H.ticks(aI.every(J));break;case"day":H.ticks(_g.every(J));break;case"week":H.ticks(gre[O].every(J));break;case"month":H.ticks(nI.every(J));break}}}d.append("g").attr("class","grid").attr("transform","translate("+v+", "+S+")").call(H).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}y(D,"makeGrid");function w(v,S){let x=0,F=Object.keys(B).map((T)=>[T,B[T]]);d.append("g").selectAll("text").data(F).enter().append(function(T){let R=T[0].split(_e.lineBreakRegex),L=-(R.length-1)/2,M=o.createElementNS("http://www.w3.org/2000/svg","text");M.setAttribute("dy",L+"em");for(let[U,Y]of R.entries()){let H=o.createElementNS("http://www.w3.org/2000/svg","tspan");if(H.setAttribute("alignment-baseline","central"),H.setAttribute("x","10"),U>0)H.setAttribute("dy","1em");H.textContent=Y,M.appendChild(H)}return M}).attr("x",10).attr("y",function(T,R){if(R>0)for(let L=0;L<R;L++)return x+=F[R-1][1],T[1]*v/2+x*v+S;else return T[1]*v/2+S}).attr("font-size",i.sectionFontSize).attr("class",function(T){for(let[R,L]of C.entries())if(T[0]===L)return"sectionTitle sectionTitle"+R%i.numberSectionStyles;return"sectionTitle"})}y(w,"vertLabels");function b(v,S,x,F){let T=r.db.getTodayMarker();if(T==="off")return;let R=d.append("g").attr("class","today"),L=new Date,M=R.append("line");if(M.attr("x1",I(L)+v).attr("x2",I(L)+v).attr("y1",i.titleTopMargin).attr("y2",F-i.titleTopMargin).attr("class","today"),T!=="")M.attr("style",T.replace(/,/g,";"))}y(b,"drawToday");function k(v){let S={},x=[];for(let F=0,T=v.length;F<T;++F)if(!Object.prototype.hasOwnProperty.call(S,v[F]))S[v[F]]=!0,x.push(v[F]);return x}y(k,"checkUnique")},"draw"),kLt={setConf:wLt,draw:vLt},FLt=y((A)=>`
.mermaid-main-font {
font-family: ${A.fontFamily};
}
.exclude-range {
fill: ${A.excludeBkgColor};
}
.section {
stroke: none;
opacity: 0.2;
}
.section0 {
fill: ${A.sectionBkgColor};
}
.section2 {
fill: ${A.sectionBkgColor2};
}
.section1,
.section3 {
fill: ${A.altSectionBkgColor};
opacity: 0.2;
}
.sectionTitle0 {
fill: ${A.titleColor};
}
.sectionTitle1 {
fill: ${A.titleColor};
}
.sectionTitle2 {
fill: ${A.titleColor};
}
.sectionTitle3 {
fill: ${A.titleColor};
}
.sectionTitle {
text-anchor: start;
font-family: ${A.fontFamily};
}
/* Grid and axis */
.grid .tick {
stroke: ${A.gridColor};
opacity: 0.8;
shape-rendering: crispEdges;
}
.grid .tick text {
font-family: ${A.fontFamily};
fill: ${A.textColor};
}
.grid path {
stroke-width: 0;
}
/* Today line */
.today {
fill: none;
stroke: ${A.todayLineColor};
stroke-width: 2px;
}
/* Task styling */
/* Default task */
.task {
stroke-width: 2;
}
.taskText {
text-anchor: middle;
font-family: ${A.fontFamily};
}
.taskTextOutsideRight {
fill: ${A.taskTextDarkColor};
text-anchor: start;
font-family: ${A.fontFamily};
}
.taskTextOutsideLeft {
fill: ${A.taskTextDarkColor};
text-anchor: end;
}
/* Special case clickable */
.task.clickable {
cursor: pointer;
}
.taskText.clickable {
cursor: pointer;
fill: ${A.taskTextClickableColor} !important;
font-weight: bold;
}
.taskTextOutsideLeft.clickable {
cursor: pointer;
fill: ${A.taskTextClickableColor} !important;
font-weight: bold;
}
.taskTextOutsideRight.clickable {
cursor: pointer;
fill: ${A.taskTextClickableColor} !important;
font-weight: bold;
}
/* Specific task settings for the sections*/
.taskText0,
.taskText1,
.taskText2,
.taskText3 {
fill: ${A.taskTextColor};
}
.task0,
.task1,
.task2,
.task3 {
fill: ${A.taskBkgColor};
stroke: ${A.taskBorderColor};
}
.taskTextOutside0,
.taskTextOutside2
{
fill: ${A.taskTextOutsideColor};
}
.taskTextOutside1,
.taskTextOutside3 {
fill: ${A.taskTextOutsideColor};
}
/* Active task */
.active0,
.active1,
.active2,
.active3 {
fill: ${A.activeTaskBkgColor};
stroke: ${A.activeTaskBorderColor};
}
.activeText0,
.activeText1,
.activeText2,
.activeText3 {
fill: ${A.taskTextDarkColor} !important;
}
/* Completed task */
.done0,
.done1,
.done2,
.done3 {
stroke: ${A.doneTaskBorderColor};
fill: ${A.doneTaskBkgColor};
stroke-width: 2;
}
.doneText0,
.doneText1,
.doneText2,
.doneText3 {
fill: ${A.taskTextDarkColor} !important;
}
/* Done task text displayed outside the bar sits against the diagram background,
not against the done-task bar, so it must use the outside/contrast color. */
.doneText0.taskTextOutsideLeft,
.doneText0.taskTextOutsideRight,
.doneText1.taskTextOutsideLeft,
.doneText1.taskTextOutsideRight,
.doneText2.taskTextOutsideLeft,
.doneText2.taskTextOutsideRight,
.doneText3.taskTextOutsideLeft,
.doneText3.taskTextOutsideRight {
fill: ${A.taskTextOutsideColor} !important;
}
/* Tasks on the critical line */
.crit0,
.crit1,
.crit2,
.crit3 {
stroke: ${A.critBorderColor};
fill: ${A.critBkgColor};
stroke-width: 2;
}
.activeCrit0,
.activeCrit1,
.activeCrit2,
.activeCrit3 {
stroke: ${A.critBorderColor};
fill: ${A.activeTaskBkgColor};
stroke-width: 2;
}
.doneCrit0,
.doneCrit1,
.doneCrit2,
.doneCrit3 {
stroke: ${A.critBorderColor};
fill: ${A.doneTaskBkgColor};
stroke-width: 2;
cursor: pointer;
shape-rendering: crispEdges;
}
.milestone {
transform: rotate(45deg) scale(0.8,0.8);
}
.milestoneText {
font-style: italic;
}
.doneCritText0,
.doneCritText1,
.doneCritText2,
.doneCritText3 {
fill: ${A.taskTextDarkColor} !important;
}
/* Done-crit task text outside the bar — same reasoning as doneText above. */
.doneCritText0.taskTextOutsideLeft,
.doneCritText0.taskTextOutsideRight,
.doneCritText1.taskTextOutsideLeft,
.doneCritText1.taskTextOutsideRight,
.doneCritText2.taskTextOutsideLeft,
.doneCritText2.taskTextOutsideRight,
.doneCritText3.taskTextOutsideLeft,
.doneCritText3.taskTextOutsideRight {
fill: ${A.taskTextOutsideColor} !important;
}
.vert {
stroke: ${A.vertLineColor};
}
.vertText {
font-size: 15px;
text-anchor: middle;
fill: ${A.vertLineColor} !important;
}
.activeCritText0,
.activeCritText1,
.activeCritText2,
.activeCritText3 {
fill: ${A.taskTextDarkColor} !important;
}
.titleText {
text-anchor: middle;
font-size: 18px;
fill: ${A.titleColor||A.textColor};
font-family: ${A.fontFamily};
}
`,"getStyles"),xLt=FLt,bre={parser:KSt,db:yLt,renderer:kLt,styles:xLt}});var SLt,LLt,RLt,NLt,GLt,ULt,kre;var Fre=_(()=>{cn();rr();ir();Nt();I0();SLt={parse:y(async(A)=>{let e=await Ga("info",A);sA.debug(e)},"parse")},LLt={version:"11.16.1"},RLt=y(()=>LLt.version,"getVersion"),NLt={getVersion:RLt},GLt=y((A,e,t)=>{sA.debug(`rendering info diagram
`+A);let r=zi(e);Xr(r,100,400,!0),r.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size",32).style("text-anchor","middle").text(`v${t}`)},"draw"),ULt={draw:GLt},kre={parser:SLt,db:NLt,renderer:ULt}});var xre,PcA,gO,_cA,MLt,TLt,YLt,HLt,KLt,JLt,OLt,Sre,PLt,_Lt,WLt,qLt,zLt,ZLt,VLt,Lre;var Rre=_(()=>{ms();cn();ai();rr();ir();Nt();I0();Pr();xre=ur.pie,PcA={sections:new Map,showData:!1,config:xre},gO=PcA.sections,_cA=PcA.showData,MLt=structuredClone(xre),TLt=y(()=>structuredClone(MLt),"getConfig"),YLt=y(()=>{gO=new Map,_cA=PcA.showData,cr()},"clear"),HLt=y(({label:A,value:e})=>{if(e<0)throw Error(`"${A}" has invalid value: ${e}. Negative values are not allowed in pie charts. All slice values must be >= 0.`);if(!gO.has(A))gO.set(A,e),sA.debug(`added new section: ${A}, with value: ${e}`)},"addSection"),KLt=y(()=>gO,"getSections"),JLt=y((A)=>{_cA=A},"setShowData"),OLt=y(()=>_cA,"getShowData"),Sre={getConfig:TLt,clear:YLt,setDiagramTitle:Tr,getDiagramTitle:Sr,setAccTitle:Dr,getAccTitle:kr,setAccDescription:Fr,getAccDescription:xr,addSection:HLt,getSections:KLt,setShowData:JLt,getShowData:OLt},PLt=y((A,e)=>{hu(A,e),e.setShowData(A.showData),A.sections.map(e.addSection)},"populateDb"),_Lt={parse:y(async(A)=>{let e=await Ga("pie",A);sA.debug(e),PLt(e,Sre)},"parse")},WLt=y((A)=>`
.pieCircle{
stroke: ${A.pieStrokeColor};
stroke-width : ${A.pieStrokeWidth};
opacity : ${A.pieOpacity};
}
.pieCircle.highlighted{
scale: 1.05;
opacity: 1;
}
.pieCircle.highlightedOnHover:hover{
transition-duration: 250ms;
scale: 1.05;
opacity: 1;
}
.pieOuterCircle{
stroke: ${A.pieOuterStrokeColor};
stroke-width: ${A.pieOuterStrokeWidth};
fill: none;
}
.pieTitleText {
text-anchor: middle;
font-size: ${A.pieTitleTextSize};
fill: ${A.pieTitleTextColor};
font-family: ${A.fontFamily};
}
.slice {
font-family: ${A.fontFamily};
fill: ${A.pieSectionTextColor};
font-size:${A.pieSectionTextSize};
// fill: white;
}
.legend text {
fill: ${A.pieLegendTextColor};
font-family: ${A.fontFamily};
font-size: ${A.pieLegendTextSize};
}
`,"getStyles"),qLt=WLt,zLt=y((A)=>{let e=[...A.values()].reduce((i,u)=>i+u,0),t=[...A.entries()].map(([i,u])=>({label:i,value:u})).filter((i)=>i.value/e*100>=1);return WN().value((i)=>i.value).sort(null)(t)},"createPieArcs"),ZLt=y((A,e,t,r)=>{sA.debug(`rendering pie chart
`+A);let i=r.db,u=OA(),a=si(i.getConfig(),u.pie),n=40,o=18,s=4,l=450,g=l,C=zi(e),B=C.append("g");B.attr("transform","translate("+g/2+","+l/2+")");let{themeVariables:E}=u,[d]=rl(E.pieOuterStrokeWidth);d??=2;let{legendPosition:I,textPosition:h}=a,Q=a.donutHole>0&&a.donutHole<=0.9?a.donutHole:0,p=Math.min(g,l)/2-n,m=aC().innerRadius(Q*p).outerRadius(p),f=aC().innerRadius(p*h).outerRadius(p*h),D=B.append("g");D.append("circle").attr("cx",0).attr("cy",0).attr("r",p+d/2).attr("class","pieOuterCircle");let w=i.getSections(),b=zLt(w),k=[E.pie1,E.pie2,E.pie3,E.pie4,E.pie5,E.pie6,E.pie7,E.pie8,E.pie9,E.pie10,E.pie11,E.pie12],v=0;w.forEach((W)=>{v+=W});let S=b.filter((W)=>(W.data.value/v*100).toFixed(0)!=="0"),x=jl(k).domain([...w.keys()]);D.selectAll("mySlices").data(S).enter().append("path").attr("d",m).attr("fill",(W)=>x(W.data.label)).attr("class",(W)=>{let CA="pieCircle";if(a.highlightSlice==="hover")CA+=" highlightedOnHover";else if(a.highlightSlice===W.data.label)CA+=" highlighted";return CA}),D.selectAll("mySlices").data(S).enter().append("text").text((W)=>(W.data.value/v*100).toFixed(0)+"%").attr("transform",(W)=>"translate("+f.centroid(W)+")").style("text-anchor","middle").attr("class","slice");let F=B.append("text").text(i.getDiagramTitle()).attr("x",0).attr("y",-(l-50)/2).attr("class","pieTitleText"),T=[...w.entries()].map(([W,CA])=>({label:W,value:CA})),R=B.selectAll(".legend").data(T).enter().append("g").attr("class","legend");R.append("rect").attr("width",o).attr("height",o).style("fill",(W)=>x(W.label)).style("stroke",(W)=>x(W.label)),R.append("text").attr("x",o+s).attr("y",o-s).text((W)=>{if(i.getShowData())return`${W.label} [${W.value}]`;return W.label});let L=Math.max(...R.selectAll("text").nodes().map((W)=>W?.getBoundingClientRect().width??0)),M=l,U=g+n,Y=o+s,H=T.length*Y;switch(I){case"center":R.attr("transform",(W,CA)=>{let tA=Y*T.length/2,lA=-L/2-(o+s),gA=CA*Y-tA;return"translate("+lA+","+gA+")"});break;case"top":M+=H,R.attr("transform",(W,CA)=>{let tA=p,lA=-L/2-(o+s),gA=CA*Y-tA;return`translate(${lA}, ${gA})`}),D.attr("transform",()=>`translate(0, ${H+Y})`);break;case"bottom":M+=H,R.attr("transform",(W,CA)=>{let tA=-p-Y,lA=-L/2-(o+s),gA=CA*Y-tA;return"translate("+lA+","+gA+")"});break;case"left":U+=o+s+L,R.attr("transform",(W,CA)=>{let tA=Y*T.length/2,lA=-p-(o+s),gA=CA*Y-tA;return"translate("+lA+","+gA+")"}),D.attr("transform",()=>`translate(${L+o+s}, 0)`);break;case"right":default:U+=o+s+L,R.attr("transform",(W,CA)=>{let tA=Y*T.length/2,lA=12*o,gA=CA*Y-tA;return"translate("+lA+","+gA+")"});break}let J=F.node()?.getBoundingClientRect().width??0,K=g/2-J/2,O=g/2+J/2,P=Math.min(0,K),AA=Math.max(U,O)-P;C.attr("viewBox",`${P} 0 ${AA} ${M}`),Xr(C,M,AA,a.useMaxWidth)},"draw"),VLt={draw:ZLt},Lre={parser:_Lt,db:Sre,renderer:VLt,styles:qLt}});function qcA(A){return!/^#?([\dA-Fa-f]{6}|[\dA-Fa-f]{3})$/.test(A)}function Nre(A){return!/^\d+$/.test(A)}function Gre(A){return!/^\d+px$/.test(A)}function _E(A){return gr(A.trim(),OA())}function Ure(A){h0.setData({quadrant1Text:_E(A.text)})}function Mre(A){h0.setData({quadrant2Text:_E(A.text)})}function Tre(A){h0.setData({quadrant3Text:_E(A.text)})}function Yre(A){h0.setData({quadrant4Text:_E(A.text)})}function Hre(A){h0.setData({xAxisLeftText:_E(A.text)})}function Kre(A){h0.setData({xAxisRightText:_E(A.text)})}function Jre(A){h0.setData({yAxisTopText:_E(A.text)})}function Ore(A){h0.setData({yAxisBottomText:_E(A.text)})}function CO(A){let e={};for(let t of A){let[r,i]=t.trim().split(/\s*:\s*/);if(r==="radius"){if(Nre(i))throw new cO(r,i,"number");e.radius=parseInt(i)}else if(r==="color"){if(qcA(i))throw new cO(r,i,"hex code");e.color=i}else if(r==="stroke-color"){if(qcA(i))throw new cO(r,i,"hex code");e.strokeColor=i}else if(r==="stroke-width"){if(Gre(i))throw new cO(r,i,"number of pixels (eg. 10px)");e.strokeWidth=i}else throw Error(`style named ${r} is not supported.`)}return e}function Pre(A,e,t,r,i){let u=CO(i);h0.addPoints([{x:t,y:r,text:_E(A.text),className:e,...u}])}function _re(A,e){h0.addClass(A,CO(e))}function Wre(A){h0.setConfig({chartWidth:A})}function qre(A){h0.setConfig({chartHeight:A})}function zre(){let A=OA(),{themeVariables:e,quadrantChart:t}=A;if(t)h0.setConfig(t);return h0.setThemeConfig({quadrant1Fill:e.quadrant1Fill,quadrant2Fill:e.quadrant2Fill,quadrant3Fill:e.quadrant3Fill,quadrant4Fill:e.quadrant4Fill,quadrant1TextFill:e.quadrant1TextFill,quadrant2TextFill:e.quadrant2TextFill,quadrant3TextFill:e.quadrant3TextFill,quadrant4TextFill:e.quadrant4TextFill,quadrantPointFill:e.quadrantPointFill,quadrantPointTextFill:e.quadrantPointTextFill,quadrantXAxisTextFill:e.quadrantXAxisTextFill,quadrantYAxisTextFill:e.quadrantYAxisTextFill,quadrantExternalBorderStrokeFill:e.quadrantExternalBorderStrokeFill,quadrantInternalBorderStrokeFill:e.quadrantInternalBorderStrokeFill,quadrantTitleFill:e.quadrantTitleFill}),h0.setData({titleText:Sr()}),h0.build()}var WcA,jLt,Ls,XLt,cO,h0,$Lt,ARt,eRt,tRt,Zre;var Vre=_(()=>{rr();ir();Nt();Pr();Pr();WcA=function(){var A=y(function(j,mA,rA,JA){for(rA=rA||{},JA=j.length;JA--;rA[j[JA]]=mA);return rA},"o"),e=[1,3],t=[1,4],r=[1,5],i=[1,6],u=[1,7],a=[1,4,5,10,12,13,14,15,18,25,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],n=[1,4,5,10,12,13,14,15,18,25,28,35,37,39,41,42,48,50,51,52,53,54,55,56,57,60,61,63,64,65,66,67],o=[55,56,57],s=[2,36],l=[1,37],g=[1,36],C=[1,38],B=[1,35],E=[1,43],d=[1,41],I=[1,45],h=[1,14],Q=[1,23],p=[1,18],m=[1,19],f=[1,20],D=[1,21],w=[1,22],b=[1,24],k=[1,25],v=[1,26],S=[1,27],x=[1,28],F=[1,29],T=[1,32],R=[1,33],L=[1,34],M=[1,39],U=[1,40],Y=[1,42],H=[1,44],J=[1,63],K=[1,62],O=[4,5,8,10,12,13,14,15,18,44,47,49,55,56,57,63,64,65,66,67],P=[1,66],z=[1,67],AA=[1,68],W=[1,69],CA=[1,70],tA=[1,71],lA=[1,72],gA=[1,73],aA=[1,74],NA=[1,75],DA=[1,76],KA=[1,77],TA=[4,5,6,7,8,9,10,11,12,13,14,15,18],qA=[1,91],IA=[1,92],bA=[1,93],SA=[1,100],EA=[1,94],nA=[1,97],eA=[1,95],BA=[1,96],yA=[1,98],vA=[1,99],FA=[1,103],HA=[10,55,56,57],dA=[4,5,6,8,10,11,13,17,18,19,20,55,56,57],q={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,idStringToken:3,ALPHA:4,NUM:5,NODE_STRING:6,DOWN:7,MINUS:8,DEFAULT:9,COMMA:10,COLON:11,AMP:12,BRKT:13,MULT:14,UNICODE_TEXT:15,styleComponent:16,UNIT:17,SPACE:18,STYLE:19,PCT:20,idString:21,style:22,stylesOpt:23,classDefStatement:24,CLASSDEF:25,start:26,eol:27,QUADRANT:28,document:29,line:30,statement:31,axisDetails:32,quadrantDetails:33,points:34,title:35,title_value:36,acc_title:37,acc_title_value:38,acc_descr:39,acc_descr_value:40,acc_descr_multiline_value:41,section:42,text:43,point_start:44,point_x:45,point_y:46,class_name:47,"X-AXIS":48,"AXIS-TEXT-DELIMITER":49,"Y-AXIS":50,QUADRANT_1:51,QUADRANT_2:52,QUADRANT_3:53,QUADRANT_4:54,NEWLINE:55,SEMI:56,EOF:57,alphaNumToken:58,textNoTagsToken:59,STR:60,MD_STR:61,alphaNum:62,PUNCTUATION:63,PLUS:64,EQUALS:65,DOT:66,UNDERSCORE:67,$accept:0,$end:1},terminals_:{2:"error",4:"ALPHA",5:"NUM",6:"NODE_STRING",7:"DOWN",8:"MINUS",9:"DEFAULT",10:"COMMA",11:"COLON",12:"AMP",13:"BRKT",14:"MULT",15:"UNICODE_TEXT",17:"UNIT",18:"SPACE",19:"STYLE",20:"PCT",25:"CLASSDEF",28:"QUADRANT",35:"title",36:"title_value",37:"acc_title",38:"acc_title_value",39:"acc_descr",40:"acc_descr_value",41:"acc_descr_multiline_value",42:"section",44:"point_start",45:"point_x",46:"point_y",47:"class_name",48:"X-AXIS",49:"AXIS-TEXT-DELIMITER",50:"Y-AXIS",51:"QUADRANT_1",52:"QUADRANT_2",53:"QUADRANT_3",54:"QUADRANT_4",55:"NEWLINE",56:"SEMI",57:"EOF",60:"STR",61:"MD_STR",63:"PUNCTUATION",64:"PLUS",65:"EQUALS",66:"DOT",67:"UNDERSCORE"},productions_:[0,[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[16,1],[21,1],[21,2],[22,1],[22,2],[23,1],[23,3],[24,5],[26,2],[26,2],[26,2],[29,0],[29,2],[30,2],[31,0],[31,1],[31,2],[31,1],[31,1],[31,1],[31,2],[31,2],[31,2],[31,1],[31,1],[34,4],[34,5],[34,5],[34,6],[32,4],[32,3],[32,2],[32,4],[32,3],[32,2],[33,2],[33,2],[33,2],[33,2],[27,1],[27,1],[27,1],[43,1],[43,2],[43,1],[43,1],[62,1],[62,2],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[59,1]],performAction:y(function(mA,rA,JA,_A,ZA,WA,te){var zA=WA.length-1;switch(ZA){case 23:this.$=WA[zA];break;case 24:this.$=WA[zA-1]+""+WA[zA];break;case 26:this.$=WA[zA-1]+WA[zA];break;case 27:this.$=[WA[zA].trim()];break;case 28:WA[zA-2].push(WA[zA].trim()),this.$=WA[zA-2];break;case 29:this.$=WA[zA-4],_A.addClass(WA[zA-2],WA[zA]);break;case 37:this.$=[];break;case 42:this.$=WA[zA].trim(),_A.setDiagramTitle(this.$);break;case 43:this.$=WA[zA].trim(),_A.setAccTitle(this.$);break;case 44:case 45:this.$=WA[zA].trim(),_A.setAccDescription(this.$);break;case 46:_A.addSection(WA[zA].substr(8)),this.$=WA[zA].substr(8);break;case 47:_A.addPoint(WA[zA-3],"",WA[zA-1],WA[zA],[]);break;case 48:_A.addPoint(WA[zA-4],WA[zA-3],WA[zA-1],WA[zA],[]);break;case 49:_A.addPoint(WA[zA-4],"",WA[zA-2],WA[zA-1],WA[zA]);break;case 50:_A.addPoint(WA[zA-5],WA[zA-4],WA[zA-2],WA[zA-1],WA[zA]);break;case 51:_A.setXAxisLeftText(WA[zA-2]),_A.setXAxisRightText(WA[zA]);break;case 52:WA[zA-1].text+=" ⟶ ",_A.setXAxisLeftText(WA[zA-1]);break;case 53:_A.setXAxisLeftText(WA[zA]);break;case 54:_A.setYAxisBottomText(WA[zA-2]),_A.setYAxisTopText(WA[zA]);break;case 55:WA[zA-1].text+=" ⟶ ",_A.setYAxisBottomText(WA[zA-1]);break;case 56:_A.setYAxisBottomText(WA[zA]);break;case 57:_A.setQuadrant1Text(WA[zA]);break;case 58:_A.setQuadrant2Text(WA[zA]);break;case 59:_A.setQuadrant3Text(WA[zA]);break;case 60:_A.setQuadrant4Text(WA[zA]);break;case 64:this.$={text:WA[zA],type:"text"};break;case 65:this.$={text:WA[zA-1].text+""+WA[zA],type:WA[zA-1].type};break;case 66:this.$={text:WA[zA],type:"text"};break;case 67:this.$={text:WA[zA],type:"markdown"};break;case 68:this.$=WA[zA];break;case 69:this.$=WA[zA-1]+""+WA[zA];break}},"anonymous"),table:[{18:e,26:1,27:2,28:t,55:r,56:i,57:u},{1:[3]},{18:e,26:8,27:2,28:t,55:r,56:i,57:u},{18:e,26:9,27:2,28:t,55:r,56:i,57:u},A(a,[2,33],{29:10}),A(n,[2,61]),A(n,[2,62]),A(n,[2,63]),{1:[2,30]},{1:[2,31]},A(o,s,{30:11,31:12,24:13,32:15,33:16,34:17,43:30,58:31,1:[2,32],4:l,5:g,10:C,12:B,13:E,14:d,15:I,18:h,25:Q,35:p,37:m,39:f,41:D,42:w,48:b,50:k,51:v,52:S,53:x,54:F,60:T,61:R,63:L,64:M,65:U,66:Y,67:H}),A(a,[2,34]),{27:46,55:r,56:i,57:u},A(o,[2,37]),A(o,s,{24:13,32:15,33:16,34:17,43:30,58:31,31:47,4:l,5:g,10:C,12:B,13:E,14:d,15:I,18:h,25:Q,35:p,37:m,39:f,41:D,42:w,48:b,50:k,51:v,52:S,53:x,54:F,60:T,61:R,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,39]),A(o,[2,40]),A(o,[2,41]),{36:[1,48]},{38:[1,49]},{40:[1,50]},A(o,[2,45]),A(o,[2,46]),{18:[1,51]},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:52,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:53,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:54,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:55,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:56,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,10:C,12:B,13:E,14:d,15:I,43:57,58:31,60:T,61:R,63:L,64:M,65:U,66:Y,67:H},{4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,44:[1,58],47:[1,59],58:61,59:60,63:L,64:M,65:U,66:Y,67:H},A(O,[2,64]),A(O,[2,66]),A(O,[2,67]),A(O,[2,70]),A(O,[2,71]),A(O,[2,72]),A(O,[2,73]),A(O,[2,74]),A(O,[2,75]),A(O,[2,76]),A(O,[2,77]),A(O,[2,78]),A(O,[2,79]),A(O,[2,80]),A(O,[2,81]),A(a,[2,35]),A(o,[2,38]),A(o,[2,42]),A(o,[2,43]),A(o,[2,44]),{3:65,4:P,5:z,6:AA,7:W,8:CA,9:tA,10:lA,11:gA,12:aA,13:NA,14:DA,15:KA,21:64},A(o,[2,53],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,49:[1,78],63:L,64:M,65:U,66:Y,67:H}),A(o,[2,56],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,49:[1,79],63:L,64:M,65:U,66:Y,67:H}),A(o,[2,57],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,58],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,59],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,60],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),{45:[1,80]},{44:[1,81]},A(O,[2,65]),A(O,[2,82]),A(O,[2,83]),A(O,[2,84]),{3:83,4:P,5:z,6:AA,7:W,8:CA,9:tA,10:lA,11:gA,12:aA,13:NA,14:DA,15:KA,18:[1,82]},A(TA,[2,23]),A(TA,[2,1]),A(TA,[2,2]),A(TA,[2,3]),A(TA,[2,4]),A(TA,[2,5]),A(TA,[2,6]),A(TA,[2,7]),A(TA,[2,8]),A(TA,[2,9]),A(TA,[2,10]),A(TA,[2,11]),A(TA,[2,12]),A(o,[2,52],{58:31,43:84,4:l,5:g,10:C,12:B,13:E,14:d,15:I,60:T,61:R,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,55],{58:31,43:85,4:l,5:g,10:C,12:B,13:E,14:d,15:I,60:T,61:R,63:L,64:M,65:U,66:Y,67:H}),{46:[1,86]},{45:[1,87]},{4:qA,5:IA,6:bA,8:SA,11:EA,13:nA,16:90,17:eA,18:BA,19:yA,20:vA,22:89,23:88},A(TA,[2,24]),A(o,[2,51],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,54],{59:60,58:61,4:l,5:g,8:J,10:C,12:B,13:E,14:d,15:I,18:K,63:L,64:M,65:U,66:Y,67:H}),A(o,[2,47],{22:89,16:90,23:101,4:qA,5:IA,6:bA,8:SA,11:EA,13:nA,17:eA,18:BA,19:yA,20:vA}),{46:[1,102]},A(o,[2,29],{10:FA}),A(HA,[2,27],{16:104,4:qA,5:IA,6:bA,8:SA,11:EA,13:nA,17:eA,18:BA,19:yA,20:vA}),A(dA,[2,25]),A(dA,[2,13]),A(dA,[2,14]),A(dA,[2,15]),A(dA,[2,16]),A(dA,[2,17]),A(dA,[2,18]),A(dA,[2,19]),A(dA,[2,20]),A(dA,[2,21]),A(dA,[2,22]),A(o,[2,49],{10:FA}),A(o,[2,48],{22:89,16:90,23:105,4:qA,5:IA,6:bA,8:SA,11:EA,13:nA,17:eA,18:BA,19:yA,20:vA}),{4:qA,5:IA,6:bA,8:SA,11:EA,13:nA,16:90,17:eA,18:BA,19:yA,20:vA,22:106},A(dA,[2,26]),A(o,[2,50],{10:FA}),A(HA,[2,28],{16:104,4:qA,5:IA,6:bA,8:SA,11:EA,13:nA,17:eA,18:BA,19:yA,20:vA})],defaultActions:{8:[2,30],9:[2,31]},parseError:y(function(mA,rA){if(rA.recoverable)this.trace(mA);else{var JA=Error(mA);throw JA.hash=rA,JA}},"parseError"),parse:y(function(mA){var rA=this,JA=[0],_A=[],ZA=[null],WA=[],te=this.table,zA="",Ae=0,$A=0,oe=0,kA=2,Pe=1,MA=WA.slice.call(arguments,1),ke=Object.create(this.lexer),We={yy:{}};for(var ue in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,ue))We.yy[ue]=this.yy[ue];if(ke.setInput(mA,We.yy),We.yy.lexer=ke,We.yy.parser=this,typeof ke.yylloc>"u")ke.yylloc={};var Me=ke.yylloc;WA.push(Me);var je=ke.options&&ke.options.ranges;if(typeof We.yy.parseError==="function")this.parseError=We.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function Ge(dt){JA.length=JA.length-2*dt,ZA.length=ZA.length-dt,WA.length=WA.length-dt}y(Ge,"popStack");function wA(){var dt=_A.pop()||ke.lex()||Pe;if(typeof dt!=="number"){if(dt instanceof Array)_A=dt,dt=_A.pop();dt=rA.symbols_[dt]||dt}return dt}y(wA,"lex");var Re,He,de,RA,ce,me,Le={},Lt,Je,kt,Cr;while(!0){if(de=JA[JA.length-1],this.defaultActions[de])RA=this.defaultActions[de];else{if(Re===null||typeof Re>"u")Re=wA();RA=te[de]&&te[de][Re]}if(typeof RA>"u"||!RA.length||!RA[0]){var Pt="";Cr=[];for(Lt in te[de])if(this.terminals_[Lt]&&Lt>kA)Cr.push("'"+this.terminals_[Lt]+"'");if(ke.showPosition)Pt="Parse error on line "+(Ae+1)+`:
`+ke.showPosition()+`
Expecting `+Cr.join(", ")+", got '"+(this.terminals_[Re]||Re)+"'";else Pt="Parse error on line "+(Ae+1)+": Unexpected "+(Re==Pe?"end of input":"'"+(this.terminals_[Re]||Re)+"'");this.parseError(Pt,{text:ke.match,token:this.terminals_[Re]||Re,line:ke.yylineno,loc:Me,expected:Cr})}if(RA[0]instanceof Array&&RA.length>1)throw Error("Parse Error: multiple actions possible at state: "+de+", token: "+Re);switch(RA[0]){case 1:if(JA.push(Re),ZA.push(ke.yytext),WA.push(ke.yylloc),JA.push(RA[1]),Re=null,!He){if($A=ke.yyleng,zA=ke.yytext,Ae=ke.yylineno,Me=ke.yylloc,oe>0)oe--}else Re=He,He=null;break;case 2:if(Je=this.productions_[RA[1]][1],Le.$=ZA[ZA.length-Je],Le._$={first_line:WA[WA.length-(Je||1)].first_line,last_line:WA[WA.length-1].last_line,first_column:WA[WA.length-(Je||1)].first_column,last_column:WA[WA.length-1].last_column},je)Le._$.range=[WA[WA.length-(Je||1)].range[0],WA[WA.length-1].range[1]];if(me=this.performAction.apply(Le,[zA,$A,Ae,We.yy,RA[1],ZA,WA].concat(MA)),typeof me<"u")return me;if(Je)JA=JA.slice(0,-1*Je*2),ZA=ZA.slice(0,-1*Je),WA=WA.slice(0,-1*Je);JA.push(this.productions_[RA[1]][0]),ZA.push(Le.$),WA.push(Le._$),kt=te[JA[JA.length-2]][JA[JA.length-1]],JA.push(kt);break;case 3:return!0}}return!0},"parse")},Z=function(){var j={EOF:1,parseError:y(function(rA,JA){if(this.yy.parser)this.yy.parser.parseError(rA,JA);else throw Error(rA)},"parseError"),setInput:y(function(mA,rA){if(this.yy=rA||this.yy||{},this._input=mA,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var mA=this._input[0];this.yytext+=mA,this.yyleng++,this.offset++,this.match+=mA,this.matched+=mA;var rA=mA.match(/(?:\r\n?|\n).*/g);if(rA)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),mA},"input"),unput:y(function(mA){var rA=mA.length,JA=mA.split(/(?:\r\n?|\n)/g);this._input=mA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-rA),this.offset-=rA;var _A=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),JA.length-1)this.yylineno-=JA.length-1;var ZA=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:JA?(JA.length===_A.length?this.yylloc.first_column:0)+_A[_A.length-JA.length].length-JA[0].length:this.yylloc.first_column-rA},this.options.ranges)this.yylloc.range=[ZA[0],ZA[0]+this.yyleng-rA];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(mA){this.unput(this.match.slice(mA))},"less"),pastInput:y(function(){var mA=this.matched.substr(0,this.matched.length-this.match.length);return(mA.length>20?"...":"")+mA.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var mA=this.match;if(mA.length<20)mA+=this._input.substr(0,20-mA.length);return(mA.substr(0,20)+(mA.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var mA=this.pastInput(),rA=Array(mA.length+1).join("-");return mA+this.upcomingInput()+`
`+rA+"^"},"showPosition"),test_match:y(function(mA,rA){var JA,_A,ZA;if(this.options.backtrack_lexer){if(ZA={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)ZA.yylloc.range=this.yylloc.range.slice(0)}if(_A=mA[0].match(/(?:\r\n?|\n).*/g),_A)this.yylineno+=_A.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:_A?_A[_A.length-1].length-_A[_A.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+mA[0].length},this.yytext+=mA[0],this.match+=mA[0],this.matches=mA,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(mA[0].length),this.matched+=mA[0],JA=this.performAction.call(this,this.yy,this,rA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(JA)return JA;else if(this._backtrack){for(var WA in ZA)this[WA]=ZA[WA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var mA,rA,JA,_A;if(!this._more)this.yytext="",this.match="";var ZA=this._currentRules();for(var WA=0;WA<ZA.length;WA++)if(JA=this._input.match(this.rules[ZA[WA]]),JA&&(!rA||JA[0].length>rA[0].length)){if(rA=JA,_A=WA,this.options.backtrack_lexer)if(mA=this.test_match(JA,ZA[WA]),mA!==!1)return mA;else if(this._backtrack){rA=!1;continue}else return!1;else if(!this.options.flex)break}if(rA){if(mA=this.test_match(rA,ZA[_A]),mA!==!1)return mA;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var rA=this.next();if(rA)return rA;else return this.lex()},"lex"),begin:y(function(rA){this.conditionStack.push(rA)},"begin"),popState:y(function(){var rA=this.conditionStack.length-1;if(rA>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(rA){if(rA=this.conditionStack.length-1-Math.abs(rA||0),rA>=0)return this.conditionStack[rA];else return"INITIAL"},"topState"),pushState:y(function(rA){this.begin(rA)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(rA,JA,_A,ZA){var WA=ZA;switch(_A){case 0:break;case 1:break;case 2:return 55;case 3:break;case 4:return this.begin("title"),35;break;case 5:return this.popState(),"title_value";break;case 6:return this.begin("acc_title"),37;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),39;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 48;case 14:return 50;case 15:return 49;case 16:return 51;case 17:return 52;case 18:return 53;case 19:return 54;case 20:return 25;case 21:this.begin("md_string");break;case 22:return"MD_STR";case 23:this.popState();break;case 24:this.begin("string");break;case 25:this.popState();break;case 26:return"STR";case 27:this.begin("class_name");break;case 28:return this.popState(),47;break;case 29:return this.begin("point_start"),44;break;case 30:return this.begin("point_x"),45;break;case 31:this.popState();break;case 32:this.popState(),this.begin("point_y");break;case 33:return this.popState(),46;break;case 34:return 28;case 35:return 4;case 36:return 15;case 37:return 11;case 38:return 64;case 39:return 10;case 40:return 65;case 41:return 65;case 42:return 14;case 43:return 13;case 44:return 67;case 45:return 66;case 46:return 12;case 47:return 8;case 48:return 5;case 49:return 18;case 50:return 56;case 51:return 63;case 52:return 57}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?: *x-axis *)/i,/^(?: *y-axis *)/i,/^(?: *--+> *)/i,/^(?: *quadrant-1 *)/i,/^(?: *quadrant-2 *)/i,/^(?: *quadrant-3 *)/i,/^(?: *quadrant-4 *)/i,/^(?:classDef\b)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?::::)/i,/^(?:^\w+)/i,/^(?:\s*:\s*\[\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?:\s*\] *)/i,/^(?:\s*,\s*)/i,/^(?:(1)|(0(.\d+)?))/i,/^(?: *quadrantChart *)/i,/^(?:[A-Za-z]+)/i,/^(?:[^\x00-\x7F]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s)/i,/^(?:;)/i,/^(?:[!"#$%&'*+,-.`?\\_/])/i,/^(?:$)/i],conditions:{class_name:{rules:[28],inclusive:!1},point_y:{rules:[33],inclusive:!1},point_x:{rules:[32],inclusive:!1},point_start:{rules:[30,31],inclusive:!1},acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},title:{rules:[5],inclusive:!1},md_string:{rules:[22,23],inclusive:!1},string:{rules:[25,26],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,6,8,10,13,14,15,16,17,18,19,20,21,24,27,29,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}};return j}();q.lexer=Z;function fA(){this.yy={}}return y(fA,"Parser"),fA.prototype=q,q.Parser=fA,new fA}();WcA.parser=WcA;jLt=WcA,Ls=L0(),XLt=class{constructor(){this.classes=new Map,this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData()}static{y(this,"QuadrantBuilder")}getDefaultData(){return{titleText:"",quadrant1Text:"",quadrant2Text:"",quadrant3Text:"",quadrant4Text:"",xAxisLeftText:"",xAxisRightText:"",yAxisBottomText:"",yAxisTopText:"",points:[]}}getDefaultConfig(){return{showXAxis:!0,showYAxis:!0,showTitle:!0,chartHeight:ur.quadrantChart?.chartWidth||500,chartWidth:ur.quadrantChart?.chartHeight||500,titlePadding:ur.quadrantChart?.titlePadding||10,titleFontSize:ur.quadrantChart?.titleFontSize||20,quadrantPadding:ur.quadrantChart?.quadrantPadding||5,xAxisLabelPadding:ur.quadrantChart?.xAxisLabelPadding||5,yAxisLabelPadding:ur.quadrantChart?.yAxisLabelPadding||5,xAxisLabelFontSize:ur.quadrantChart?.xAxisLabelFontSize||16,yAxisLabelFontSize:ur.quadrantChart?.yAxisLabelFontSize||16,quadrantLabelFontSize:ur.quadrantChart?.quadrantLabelFontSize||16,quadrantTextTopPadding:ur.quadrantChart?.quadrantTextTopPadding||5,pointTextPadding:ur.quadrantChart?.pointTextPadding||5,pointLabelFontSize:ur.quadrantChart?.pointLabelFontSize||12,pointRadius:ur.quadrantChart?.pointRadius||5,xAxisPosition:ur.quadrantChart?.xAxisPosition||"top",yAxisPosition:ur.quadrantChart?.yAxisPosition||"left",quadrantInternalBorderStrokeWidth:ur.quadrantChart?.quadrantInternalBorderStrokeWidth||1,quadrantExternalBorderStrokeWidth:ur.quadrantChart?.quadrantExternalBorderStrokeWidth||2}}getDefaultThemeConfig(){return{quadrant1Fill:Ls.quadrant1Fill,quadrant2Fill:Ls.quadrant2Fill,quadrant3Fill:Ls.quadrant3Fill,quadrant4Fill:Ls.quadrant4Fill,quadrant1TextFill:Ls.quadrant1TextFill,quadrant2TextFill:Ls.quadrant2TextFill,quadrant3TextFill:Ls.quadrant3TextFill,quadrant4TextFill:Ls.quadrant4TextFill,quadrantPointFill:Ls.quadrantPointFill,quadrantPointTextFill:Ls.quadrantPointTextFill,quadrantXAxisTextFill:Ls.quadrantXAxisTextFill,quadrantYAxisTextFill:Ls.quadrantYAxisTextFill,quadrantTitleFill:Ls.quadrantTitleFill,quadrantInternalBorderStrokeFill:Ls.quadrantInternalBorderStrokeFill,quadrantExternalBorderStrokeFill:Ls.quadrantExternalBorderStrokeFill}}clear(){this.config=this.getDefaultConfig(),this.themeConfig=this.getDefaultThemeConfig(),this.data=this.getDefaultData(),this.classes=new Map,sA.info("clear called")}setData(A){this.data={...this.data,...A}}addPoints(A){this.data.points=[...A,...this.data.points]}addClass(A,e){this.classes.set(A,e)}setConfig(A){sA.trace("setConfig called with: ",A),this.config={...this.config,...A}}setThemeConfig(A){sA.trace("setThemeConfig called with: ",A),this.themeConfig={...this.themeConfig,...A}}calculateSpace(A,e,t,r){let i=this.config.xAxisLabelPadding*2+this.config.xAxisLabelFontSize,u={top:A==="top"&&e?i:0,bottom:A==="bottom"&&e?i:0},a=this.config.yAxisLabelPadding*2+this.config.yAxisLabelFontSize,n={left:this.config.yAxisPosition==="left"&&t?a:0,right:this.config.yAxisPosition==="right"&&t?a:0},o=this.config.titleFontSize+this.config.titlePadding*2,s={top:r?o:0},l=this.config.quadrantPadding+n.left,g=this.config.quadrantPadding+u.top+s.top,C=this.config.chartWidth-this.config.quadrantPadding*2-n.left-n.right,B=this.config.chartHeight-this.config.quadrantPadding*2-u.top-u.bottom-s.top,E=C/2,d=B/2;return{xAxisSpace:u,yAxisSpace:n,titleSpace:s,quadrantSpace:{quadrantLeft:l,quadrantTop:g,quadrantWidth:C,quadrantHalfWidth:E,quadrantHeight:B,quadrantHalfHeight:d}}}getAxisLabels(A,e,t,r){let{quadrantSpace:i,titleSpace:u}=r,{quadrantHalfHeight:a,quadrantHeight:n,quadrantLeft:o,quadrantHalfWidth:s,quadrantTop:l,quadrantWidth:g}=i,C=Boolean(this.data.xAxisRightText),B=Boolean(this.data.yAxisTopText),E=[];if(this.data.xAxisLeftText&&e)E.push({text:this.data.xAxisLeftText,fill:this.themeConfig.quadrantXAxisTextFill,x:o+(C?s/2:0),y:A==="top"?this.config.xAxisLabelPadding+u.top:this.config.xAxisLabelPadding+l+n+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:C?"center":"left",horizontalPos:"top",rotation:0});if(this.data.xAxisRightText&&e)E.push({text:this.data.xAxisRightText,fill:this.themeConfig.quadrantXAxisTextFill,x:o+s+(C?s/2:0),y:A==="top"?this.config.xAxisLabelPadding+u.top:this.config.xAxisLabelPadding+l+n+this.config.quadrantPadding,fontSize:this.config.xAxisLabelFontSize,verticalPos:C?"center":"left",horizontalPos:"top",rotation:0});if(this.data.yAxisBottomText&&t)E.push({text:this.data.yAxisBottomText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+o+g+this.config.quadrantPadding,y:l+n-(B?a/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:B?"center":"left",horizontalPos:"top",rotation:-90});if(this.data.yAxisTopText&&t)E.push({text:this.data.yAxisTopText,fill:this.themeConfig.quadrantYAxisTextFill,x:this.config.yAxisPosition==="left"?this.config.yAxisLabelPadding:this.config.yAxisLabelPadding+o+g+this.config.quadrantPadding,y:l+a-(B?a/2:0),fontSize:this.config.yAxisLabelFontSize,verticalPos:B?"center":"left",horizontalPos:"top",rotation:-90});return E}getQuadrants(A){let{quadrantSpace:e}=A,{quadrantHalfHeight:t,quadrantLeft:r,quadrantHalfWidth:i,quadrantTop:u}=e,a=[{text:{text:this.data.quadrant1Text,fill:this.themeConfig.quadrant1TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:r+i,y:u,width:i,height:t,fill:this.themeConfig.quadrant1Fill},{text:{text:this.data.quadrant2Text,fill:this.themeConfig.quadrant2TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:r,y:u,width:i,height:t,fill:this.themeConfig.quadrant2Fill},{text:{text:this.data.quadrant3Text,fill:this.themeConfig.quadrant3TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:r,y:u+t,width:i,height:t,fill:this.themeConfig.quadrant3Fill},{text:{text:this.data.quadrant4Text,fill:this.themeConfig.quadrant4TextFill,x:0,y:0,fontSize:this.config.quadrantLabelFontSize,verticalPos:"center",horizontalPos:"middle",rotation:0},x:r+i,y:u+t,width:i,height:t,fill:this.themeConfig.quadrant4Fill}];for(let n of a)if(n.text.x=n.x+n.width/2,this.data.points.length===0)n.text.y=n.y+n.height/2,n.text.horizontalPos="middle";else n.text.y=n.y+this.config.quadrantTextTopPadding,n.text.horizontalPos="top";return a}getQuadrantPoints(A){let{quadrantSpace:e}=A,{quadrantHeight:t,quadrantLeft:r,quadrantTop:i,quadrantWidth:u}=e,a=tC().domain([0,1]).range([r,u+r]),n=tC().domain([0,1]).range([t+i,i]);return this.data.points.map((s)=>{let l=this.classes.get(s.className);if(l)s={...l,...s};return{x:a(s.x),y:n(s.y),fill:s.color??this.themeConfig.quadrantPointFill,radius:s.radius??this.config.pointRadius,text:{text:s.text,fill:this.themeConfig.quadrantPointTextFill,x:a(s.x),y:n(s.y)+this.config.pointTextPadding,verticalPos:"center",horizontalPos:"top",fontSize:this.config.pointLabelFontSize,rotation:0},strokeColor:s.strokeColor??this.themeConfig.quadrantPointFill,strokeWidth:s.strokeWidth??"0px"}})}getBorders(A){let e=this.config.quadrantExternalBorderStrokeWidth/2,{quadrantSpace:t}=A,{quadrantHalfHeight:r,quadrantHeight:i,quadrantLeft:u,quadrantHalfWidth:a,quadrantTop:n,quadrantWidth:o}=t;return[{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:u-e,y1:n,x2:u+o+e,y2:n},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:u+o,y1:n+e,x2:u+o,y2:n+i-e},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:u-e,y1:n+i,x2:u+o+e,y2:n+i},{strokeFill:this.themeConfig.quadrantExternalBorderStrokeFill,strokeWidth:this.config.quadrantExternalBorderStrokeWidth,x1:u,y1:n+e,x2:u,y2:n+i-e},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:u+a,y1:n+e,x2:u+a,y2:n+i-e},{strokeFill:this.themeConfig.quadrantInternalBorderStrokeFill,strokeWidth:this.config.quadrantInternalBorderStrokeWidth,x1:u+e,y1:n+r,x2:u+o-e,y2:n+r}]}getTitle(A){if(A)return{text:this.data.titleText,fill:this.themeConfig.quadrantTitleFill,fontSize:this.config.titleFontSize,horizontalPos:"top",verticalPos:"center",rotation:0,y:this.config.titlePadding,x:this.config.chartWidth/2};return}build(){let A=this.config.showXAxis&&!!(this.data.xAxisLeftText||this.data.xAxisRightText),e=this.config.showYAxis&&!!(this.data.yAxisTopText||this.data.yAxisBottomText),t=this.config.showTitle&&!!this.data.titleText,r=this.data.points.length>0?"bottom":this.config.xAxisPosition,i=this.calculateSpace(r,A,e,t);return{points:this.getQuadrantPoints(i),quadrants:this.getQuadrants(i),axisLabels:this.getAxisLabels(r,A,e,i),borderLines:this.getBorders(i),title:this.getTitle(t)}}},cO=class extends Error{static{y(this,"InvalidStyleError")}constructor(A,e,t){super(`value for ${A} ${e} is invalid, please use a valid ${t}`);this.name="InvalidStyleError"}};y(qcA,"validateHexCode");y(Nre,"validateNumber");y(Gre,"validateSizeInPixels");y(_E,"textSanitizer");h0=new XLt;y(Ure,"setQuadrant1Text");y(Mre,"setQuadrant2Text");y(Tre,"setQuadrant3Text");y(Yre,"setQuadrant4Text");y(Hre,"setXAxisLeftText");y(Kre,"setXAxisRightText");y(Jre,"setYAxisTopText");y(Ore,"setYAxisBottomText");y(CO,"parseStyles");y(Pre,"addPoint");y(_re,"addClass");y(Wre,"setWidth");y(qre,"setHeight");y(zre,"getQuadrantData");$Lt=y(function(){h0.clear(),cr()},"clear"),ARt={setWidth:Wre,setHeight:qre,setQuadrant1Text:Ure,setQuadrant2Text:Mre,setQuadrant3Text:Tre,setQuadrant4Text:Yre,setXAxisLeftText:Hre,setXAxisRightText:Kre,setYAxisTopText:Jre,setYAxisBottomText:Ore,parseStyles:CO,addPoint:Pre,addClass:_re,getQuadrantData:zre,clear:$Lt,setAccTitle:Dr,getAccTitle:kr,setDiagramTitle:Tr,getDiagramTitle:Sr,getAccDescription:xr,setAccDescription:Fr},eRt=y((A,e,t,r)=>{function i(b){return b==="top"?"hanging":"middle"}y(i,"getDominantBaseLine");function u(b){return b==="left"?"start":"middle"}y(u,"getTextAnchor");function a(b){return`translate(${b.x}, ${b.y}) rotate(${b.rotation||0})`}y(a,"getTransformation");let n=OA();sA.debug(`Rendering quadrant chart
`+A);let o=n.securityLevel,s;if(o==="sandbox")s=Qe("#i"+e);let g=(o==="sandbox"?Qe(s.nodes()[0].contentDocument.body):Qe("body")).select(`[id="${e}"]`),C=g.append("g").attr("class","main"),B=n.quadrantChart?.chartWidth??500,E=n.quadrantChart?.chartHeight??500;Xr(g,E,B,n.quadrantChart?.useMaxWidth??!0),g.attr("viewBox","0 0 "+B+" "+E),r.db.setHeight(E),r.db.setWidth(B);let d=r.db.getQuadrantData(),I=C.append("g").attr("class","quadrants"),h=C.append("g").attr("class","border"),Q=C.append("g").attr("class","data-points"),p=C.append("g").attr("class","labels"),m=C.append("g").attr("class","title");if(d.title)m.append("text").attr("x",0).attr("y",0).attr("fill",d.title.fill).attr("font-size",d.title.fontSize).attr("dominant-baseline",i(d.title.horizontalPos)).attr("text-anchor",u(d.title.verticalPos)).attr("transform",a(d.title)).text(d.title.text);if(d.borderLines)h.selectAll("line").data(d.borderLines).enter().append("line").attr("x1",(b)=>b.x1).attr("y1",(b)=>b.y1).attr("x2",(b)=>b.x2).attr("y2",(b)=>b.y2).style("stroke",(b)=>b.strokeFill).style("stroke-width",(b)=>b.strokeWidth);let f=I.selectAll("g.quadrant").data(d.quadrants).enter().append("g").attr("class","quadrant");f.append("rect").attr("x",(b)=>b.x).attr("y",(b)=>b.y).attr("width",(b)=>b.width).attr("height",(b)=>b.height).attr("fill",(b)=>b.fill),f.append("text").attr("x",0).attr("y",0).attr("fill",(b)=>b.text.fill).attr("font-size",(b)=>b.text.fontSize).attr("dominant-baseline",(b)=>i(b.text.horizontalPos)).attr("text-anchor",(b)=>u(b.text.verticalPos)).attr("transform",(b)=>a(b.text)).text((b)=>b.text.text),p.selectAll("g.label").data(d.axisLabels).enter().append("g").attr("class","label").append("text").attr("x",0).attr("y",0).text((b)=>b.text).attr("fill",(b)=>b.fill).attr("font-size",(b)=>b.fontSize).attr("dominant-baseline",(b)=>i(b.horizontalPos)).attr("text-anchor",(b)=>u(b.verticalPos)).attr("transform",(b)=>a(b));let w=Q.selectAll("g.data-point").data(d.points).enter().append("g").attr("class","data-point");w.append("circle").attr("cx",(b)=>b.x).attr("cy",(b)=>b.y).attr("r",(b)=>b.radius).attr("fill",(b)=>b.fill).attr("stroke",(b)=>b.strokeColor).attr("stroke-width",(b)=>b.strokeWidth),w.append("text").attr("x",0).attr("y",0).text((b)=>b.text.text).attr("fill",(b)=>b.text.fill).attr("font-size",(b)=>b.text.fontSize).attr("dominant-baseline",(b)=>i(b.text.horizontalPos)).attr("text-anchor",(b)=>u(b.text.verticalPos)).attr("transform",(b)=>a(b.text))},"draw"),tRt={draw:eRt},Zre={parser:jLt,db:ARt,renderer:tRt,styles:y(()=>"","styles")}});function ZcA(A){return A.type==="bar"}function BO(A){return A.type==="band"}function C6(A){return A.type==="linear"}function VcA(A,e,t,r){let i=new $re(r);if(BO(A))return new iRt(e,t,A.categories,A.title,i);return new uRt(e,t,[A.min,A.max],A.title,i)}function eie(A,e,t,r){let i=new $re(r);return new aRt(i,A,e,t)}function tie(A,e,t){return new sRt(A,e,t)}function $cA(){let A=L0(),e=ot();return si(A.xyChart,e.themeVariables.xyChart)}function ACA(){let A=ot();return si(ur.xyChart,A.xyChart)}function eCA(){return{yAxis:{type:"linear",title:"",min:1/0,max:-1/0},xAxis:{type:"band",title:"",categories:[]},title:"",plots:[]}}function Xx(A){let e=ot();return gr(A.trim(),e)}function iie(A){rie=A}function uie(A){if(A==="horizontal")Vx.chartOrientation="horizontal";else Vx.chartOrientation="vertical"}function aie(A){Oi.xAxis.title=Xx(A.text)}function tCA(A,e){Oi.xAxis={type:"linear",title:Oi.xAxis.title,min:A,max:e},EO=!0}function nie(A){Oi.xAxis={type:"band",title:Oi.xAxis.title,categories:A.map((e)=>Xx(e.text))},EO=!0}function oie(A){Oi.yAxis.title=Xx(A.text)}function sie(A,e){Oi.yAxis={type:"linear",title:Oi.yAxis.title,min:A,max:e},XcA=!0}function lie(A){let e=Math.min(...A),t=Math.max(...A),r=C6(Oi.yAxis)?Oi.yAxis.min:1/0,i=C6(Oi.yAxis)?Oi.yAxis.max:-1/0;Oi.yAxis={type:"linear",title:Oi.yAxis.title,min:Math.min(r,e),max:Math.max(i,t)}}function rCA(A){let e=[];if(A.length===0)return e;if(!EO){let t=C6(Oi.xAxis)?Oi.xAxis.min:1/0,r=C6(Oi.xAxis)?Oi.xAxis.max:-1/0;tCA(Math.min(t,1),Math.max(r,A.length))}if(BO(Oi.xAxis)&&A.length>Oi.xAxis.categories.length)A=A.slice(0,Oi.xAxis.categories.length);if(!XcA)lie(A);if(BO(Oi.xAxis))e=Oi.xAxis.categories.map((t,r)=>[t,A[r]]);if(C6(Oi.xAxis)){let t=Oi.xAxis.min,r=Oi.xAxis.max;if(A.length===1)e=[[`${t}`,A[0]]];else{let i=(r-t)/(A.length-1);e=A.map((u,a)=>[`${t+a*i}`,u])}}return e}function iCA(A){return jcA[A===0?0:A%jcA.length]}function gie(A,e){let t=e.map((a)=>a.value),r=e.map((a)=>a.label?Xx(a.label):""),i=rCA(t),u=r.some((a)=>a!=="");Oi.plots.push({type:"line",strokeFill:iCA(Zx),strokeWidth:2,data:i,...u?{pointLabels:r}:{}}),Zx++}function cie(A,e){let t=e.map((i)=>i.value),r=rCA(t);Oi.plots.push({type:"bar",fill:iCA(Zx),data:r}),Zx++}function Cie(){if(Oi.plots.length===0)throw Error("No Plot to render, please provide a plot with some data");return Oi.title=Sr(),gRt.build(Vx,Oi,jx,rie)}function Bie(){return jx}function Eie(){return Vx}function die(){return Oi}var zcA,rRt,$re,jre=0.7,Xre=0.2,Aie,iRt,uRt,aRt,nRt,oRt,sRt,lRt,gRt,Zx=0,rie,Vx,jx,Oi,jcA,EO=!1,XcA=!1,cRt,CRt,BRt,ERt,Iie;var hie=_(()=>{cn();uo();Ln();ai();rr();ir();Nt();Pr();Pr();Pr();zcA=function(){var A=y(function(L,M,U,Y){for(U=U||{},Y=L.length;Y--;U[L[Y]]=M);return U},"o"),e=[1,10,12,14,16,18,19,21,23],t=[2,6],r=[1,3],i=[1,5],u=[1,6],a=[1,7],n=[1,5,10,12,14,16,18,19,21,23,36,37,38],o=[1,25],s=[1,26],l=[1,28],g=[1,29],C=[1,30],B=[1,31],E=[1,32],d=[1,33],I=[1,34],h=[1,35],Q=[1,36],p=[1,37],m=[1,43],f=[1,42],D=[1,47],w=[1,50],b=[1,10,12,14,16,18,19,21,23,36,37,38],k=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38],v=[1,10,12,14,16,18,19,21,23,24,26,28,29,36,37,38,42,43,44,45,46,47,48,49,50,51],S=[1,65],x=[26,28],F={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,eol:4,XYCHART:5,chartConfig:6,document:7,CHART_ORIENTATION:8,statement:9,title:10,text:11,X_AXIS:12,parseXAxis:13,Y_AXIS:14,parseYAxis:15,LINE:16,plotData:17,BAR:18,acc_title:19,acc_title_value:20,acc_descr:21,acc_descr_value:22,acc_descr_multiline_value:23,SQUARE_BRACES_START:24,dataPoints:25,SQUARE_BRACES_END:26,dataPoint:27,COMMA:28,NUMBER_WITH_DECIMAL:29,STR:30,xAxisData:31,bandData:32,ARROW_DELIMITER:33,commaSeparatedTexts:34,yAxisData:35,NEWLINE:36,SEMI:37,EOF:38,alphaNum:39,MD_STR:40,alphaNumToken:41,AMP:42,NUM:43,ALPHA:44,PLUS:45,EQUALS:46,MULT:47,DOT:48,BRKT:49,MINUS:50,UNDERSCORE:51,$accept:0,$end:1},terminals_:{2:"error",5:"XYCHART",8:"CHART_ORIENTATION",10:"title",12:"X_AXIS",14:"Y_AXIS",16:"LINE",18:"BAR",19:"acc_title",20:"acc_title_value",21:"acc_descr",22:"acc_descr_value",23:"acc_descr_multiline_value",24:"SQUARE_BRACES_START",26:"SQUARE_BRACES_END",28:"COMMA",29:"NUMBER_WITH_DECIMAL",30:"STR",33:"ARROW_DELIMITER",36:"NEWLINE",37:"SEMI",38:"EOF",40:"MD_STR",42:"AMP",43:"NUM",44:"ALPHA",45:"PLUS",46:"EQUALS",47:"MULT",48:"DOT",49:"BRKT",50:"MINUS",51:"UNDERSCORE"},productions_:[0,[3,2],[3,3],[3,2],[3,1],[6,1],[7,0],[7,2],[9,2],[9,2],[9,2],[9,2],[9,2],[9,3],[9,2],[9,3],[9,2],[9,2],[9,1],[17,3],[25,3],[25,1],[27,2],[27,1],[13,1],[13,2],[13,1],[31,1],[31,3],[32,3],[34,3],[34,1],[15,1],[15,2],[15,1],[35,3],[4,1],[4,1],[4,1],[11,1],[11,1],[11,1],[39,1],[39,2],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1],[41,1]],performAction:y(function(M,U,Y,H,J,K,O){var P=K.length-1;switch(J){case 5:H.setOrientation(K[P]);break;case 9:H.setDiagramTitle(K[P].text.trim());break;case 12:H.setLineData({text:"",type:"text"},K[P]);break;case 13:H.setLineData(K[P-1],K[P]);break;case 14:H.setBarData({text:"",type:"text"},K[P]);break;case 15:H.setBarData(K[P-1],K[P]);break;case 16:this.$=K[P].trim(),H.setAccTitle(this.$);break;case 17:case 18:this.$=K[P].trim(),H.setAccDescription(this.$);break;case 19:this.$=K[P-1];break;case 20:case 30:this.$=[K[P-2],...K[P]];break;case 21:case 31:this.$=[K[P]];break;case 22:this.$={value:Number(K[P-1]),label:K[P]};break;case 23:this.$={value:Number(K[P]),label:""};break;case 24:H.setXAxisTitle(K[P]);break;case 25:H.setXAxisTitle(K[P-1]);break;case 26:H.setXAxisTitle({type:"text",text:""});break;case 27:H.setXAxisBand(K[P]);break;case 28:H.setXAxisRangeData(Number(K[P-2]),Number(K[P]));break;case 29:this.$=K[P-1];break;case 32:H.setYAxisTitle(K[P]);break;case 33:H.setYAxisTitle(K[P-1]);break;case 34:H.setYAxisTitle({type:"text",text:""});break;case 35:H.setYAxisRangeData(Number(K[P-2]),Number(K[P]));break;case 39:this.$={text:K[P],type:"text"};break;case 40:this.$={text:K[P],type:"text"};break;case 41:this.$={text:K[P],type:"markdown"};break;case 42:this.$=K[P];break;case 43:this.$=K[P-1]+""+K[P];break}},"anonymous"),table:[A(e,t,{3:1,4:2,7:4,5:r,36:i,37:u,38:a}),{1:[3]},A(e,t,{4:2,7:4,3:8,5:r,36:i,37:u,38:a}),A(e,t,{4:2,7:4,6:9,3:10,5:r,8:[1,11],36:i,37:u,38:a}),{1:[2,4],9:12,10:[1,13],12:[1,14],14:[1,15],16:[1,16],18:[1,17],19:[1,18],21:[1,19],23:[1,20]},A(n,[2,36]),A(n,[2,37]),A(n,[2,38]),{1:[2,1]},A(e,t,{4:2,7:4,3:21,5:r,36:i,37:u,38:a}),{1:[2,3]},A(n,[2,5]),A(e,[2,7],{4:22,36:i,37:u,38:a}),{11:23,30:o,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},{11:39,13:38,24:m,29:f,30:o,31:40,32:41,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},{11:45,15:44,29:D,30:o,35:46,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},{11:49,17:48,24:w,30:o,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},{11:52,17:51,24:w,30:o,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},{20:[1,53]},{22:[1,54]},A(b,[2,18]),{1:[2,2]},A(b,[2,8]),A(b,[2,9]),A(k,[2,39],{41:55,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p}),A(k,[2,40]),A(k,[2,41]),A(v,[2,42]),A(v,[2,44]),A(v,[2,45]),A(v,[2,46]),A(v,[2,47]),A(v,[2,48]),A(v,[2,49]),A(v,[2,50]),A(v,[2,51]),A(v,[2,52]),A(v,[2,53]),A(b,[2,10]),A(b,[2,24],{32:41,31:56,24:m,29:f}),A(b,[2,26]),A(b,[2,27]),{33:[1,57]},{11:59,30:o,34:58,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},A(b,[2,11]),A(b,[2,32],{35:60,29:D}),A(b,[2,34]),{33:[1,61]},A(b,[2,12]),{17:62,24:w},{25:63,27:64,29:S},A(b,[2,14]),{17:66,24:w},A(b,[2,16]),A(b,[2,17]),A(v,[2,43]),A(b,[2,25]),{29:[1,67]},{26:[1,68]},{26:[2,31],28:[1,69]},A(b,[2,33]),{29:[1,70]},A(b,[2,13]),{26:[1,71]},{26:[2,21],28:[1,72]},A(x,[2,23],{30:[1,73]}),A(b,[2,15]),A(b,[2,28]),A(b,[2,29]),{11:59,30:o,34:74,39:24,40:s,41:27,42:l,43:g,44:C,45:B,46:E,47:d,48:I,49:h,50:Q,51:p},A(b,[2,35]),A(b,[2,19]),{25:75,27:64,29:S},A(x,[2,22]),{26:[2,30]},{26:[2,20]}],defaultActions:{8:[2,1],10:[2,3],21:[2,2],74:[2,30],75:[2,20]},parseError:y(function(M,U){if(U.recoverable)this.trace(M);else{var Y=Error(M);throw Y.hash=U,Y}},"parseError"),parse:y(function(M){var U=this,Y=[0],H=[],J=[null],K=[],O=this.table,P="",z=0,AA=0,W=0,CA=2,tA=1,lA=K.slice.call(arguments,1),gA=Object.create(this.lexer),aA={yy:{}};for(var NA in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,NA))aA.yy[NA]=this.yy[NA];if(gA.setInput(M,aA.yy),aA.yy.lexer=gA,aA.yy.parser=this,typeof gA.yylloc>"u")gA.yylloc={};var DA=gA.yylloc;K.push(DA);var KA=gA.options&&gA.options.ranges;if(typeof aA.yy.parseError==="function")this.parseError=aA.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function TA(q){Y.length=Y.length-2*q,J.length=J.length-q,K.length=K.length-q}y(TA,"popStack");function qA(){var q=H.pop()||gA.lex()||tA;if(typeof q!=="number"){if(q instanceof Array)H=q,q=H.pop();q=U.symbols_[q]||q}return q}y(qA,"lex");var IA,bA,SA,EA,nA,eA,BA={},yA,vA,FA,HA;while(!0){if(SA=Y[Y.length-1],this.defaultActions[SA])EA=this.defaultActions[SA];else{if(IA===null||typeof IA>"u")IA=qA();EA=O[SA]&&O[SA][IA]}if(typeof EA>"u"||!EA.length||!EA[0]){var dA="";HA=[];for(yA in O[SA])if(this.terminals_[yA]&&yA>CA)HA.push("'"+this.terminals_[yA]+"'");if(gA.showPosition)dA="Parse error on line "+(z+1)+`:
`+gA.showPosition()+`
Expecting `+HA.join(", ")+", got '"+(this.terminals_[IA]||IA)+"'";else dA="Parse error on line "+(z+1)+": Unexpected "+(IA==tA?"end of input":"'"+(this.terminals_[IA]||IA)+"'");this.parseError(dA,{text:gA.match,token:this.terminals_[IA]||IA,line:gA.yylineno,loc:DA,expected:HA})}if(EA[0]instanceof Array&&EA.length>1)throw Error("Parse Error: multiple actions possible at state: "+SA+", token: "+IA);switch(EA[0]){case 1:if(Y.push(IA),J.push(gA.yytext),K.push(gA.yylloc),Y.push(EA[1]),IA=null,!bA){if(AA=gA.yyleng,P=gA.yytext,z=gA.yylineno,DA=gA.yylloc,W>0)W--}else IA=bA,bA=null;break;case 2:if(vA=this.productions_[EA[1]][1],BA.$=J[J.length-vA],BA._$={first_line:K[K.length-(vA||1)].first_line,last_line:K[K.length-1].last_line,first_column:K[K.length-(vA||1)].first_column,last_column:K[K.length-1].last_column},KA)BA._$.range=[K[K.length-(vA||1)].range[0],K[K.length-1].range[1]];if(eA=this.performAction.apply(BA,[P,AA,z,aA.yy,EA[1],J,K].concat(lA)),typeof eA<"u")return eA;if(vA)Y=Y.slice(0,-1*vA*2),J=J.slice(0,-1*vA),K=K.slice(0,-1*vA);Y.push(this.productions_[EA[1]][0]),J.push(BA.$),K.push(BA._$),FA=O[Y[Y.length-2]][Y[Y.length-1]],Y.push(FA);break;case 3:return!0}}return!0},"parse")},T=function(){var L={EOF:1,parseError:y(function(U,Y){if(this.yy.parser)this.yy.parser.parseError(U,Y);else throw Error(U)},"parseError"),setInput:y(function(M,U){if(this.yy=U||this.yy||{},this._input=M,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var M=this._input[0];this.yytext+=M,this.yyleng++,this.offset++,this.match+=M,this.matched+=M;var U=M.match(/(?:\r\n?|\n).*/g);if(U)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),M},"input"),unput:y(function(M){var U=M.length,Y=M.split(/(?:\r\n?|\n)/g);this._input=M+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-U),this.offset-=U;var H=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Y.length-1)this.yylineno-=Y.length-1;var J=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Y?(Y.length===H.length?this.yylloc.first_column:0)+H[H.length-Y.length].length-Y[0].length:this.yylloc.first_column-U},this.options.ranges)this.yylloc.range=[J[0],J[0]+this.yyleng-U];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(M){this.unput(this.match.slice(M))},"less"),pastInput:y(function(){var M=this.matched.substr(0,this.matched.length-this.match.length);return(M.length>20?"...":"")+M.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var M=this.match;if(M.length<20)M+=this._input.substr(0,20-M.length);return(M.substr(0,20)+(M.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var M=this.pastInput(),U=Array(M.length+1).join("-");return M+this.upcomingInput()+`
`+U+"^"},"showPosition"),test_match:y(function(M,U){var Y,H,J;if(this.options.backtrack_lexer){if(J={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)J.yylloc.range=this.yylloc.range.slice(0)}if(H=M[0].match(/(?:\r\n?|\n).*/g),H)this.yylineno+=H.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:H?H[H.length-1].length-H[H.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+M[0].length},this.yytext+=M[0],this.match+=M[0],this.matches=M,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(M[0].length),this.matched+=M[0],Y=this.performAction.call(this,this.yy,this,U,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(Y)return Y;else if(this._backtrack){for(var K in J)this[K]=J[K];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var M,U,Y,H;if(!this._more)this.yytext="",this.match="";var J=this._currentRules();for(var K=0;K<J.length;K++)if(Y=this._input.match(this.rules[J[K]]),Y&&(!U||Y[0].length>U[0].length)){if(U=Y,H=K,this.options.backtrack_lexer)if(M=this.test_match(Y,J[K]),M!==!1)return M;else if(this._backtrack){U=!1;continue}else return!1;else if(!this.options.flex)break}if(U){if(M=this.test_match(U,J[H]),M!==!1)return M;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var U=this.next();if(U)return U;else return this.lex()},"lex"),begin:y(function(U){this.conditionStack.push(U)},"begin"),popState:y(function(){var U=this.conditionStack.length-1;if(U>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(U){if(U=this.conditionStack.length-1-Math.abs(U||0),U>=0)return this.conditionStack[U];else return"INITIAL"},"topState"),pushState:y(function(U){this.begin(U)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(U,Y,H,J){var K=J;switch(H){case 0:break;case 1:break;case 2:return this.popState(),36;break;case 3:return this.popState(),36;break;case 4:return 36;case 5:break;case 6:return 10;case 7:return this.pushState("acc_title"),19;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.pushState("acc_descr"),21;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.pushState("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 5;case 15:return 5;case 16:return 8;case 17:return this.pushState("axis_data"),"X_AXIS";break;case 18:return this.pushState("axis_data"),"Y_AXIS";break;case 19:return this.pushState("axis_band_data"),24;break;case 20:return 33;case 21:return this.pushState("data"),16;break;case 22:return this.pushState("data"),18;break;case 23:return this.pushState("data_inner"),24;break;case 24:return 29;case 25:return this.popState(),26;break;case 26:this.popState();break;case 27:this.pushState("string");break;case 28:this.popState();break;case 29:return"STR";case 30:return 24;case 31:return 26;case 32:return 44;case 33:return"COLON";case 34:return 45;case 35:return 28;case 36:return 46;case 37:return 47;case 38:return 49;case 39:return 51;case 40:return 48;case 41:return 42;case 42:return 50;case 43:return 43;case 44:break;case 45:return 37;case 46:return 38}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:(\r?\n))/i,/^(?:(\r?\n))/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:title\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:\})/i,/^(?:[^\}]*)/i,/^(?:xychart-beta\b)/i,/^(?:xychart\b)/i,/^(?:(?:vertical|horizontal))/i,/^(?:x-axis\b)/i,/^(?:y-axis\b)/i,/^(?:\[)/i,/^(?:-->)/i,/^(?:line\b)/i,/^(?:bar\b)/i,/^(?:\[)/i,/^(?:[+-]?(?:\d+(?:\.\d+)?|\.\d+))/i,/^(?:\])/i,/^(?:(?:`\) \{ this\.pushState\(md_string\); \}\n<md_string>\(\?:\(\?!`"\)\.\)\+ \{ return MD_STR; \}\n<md_string>\(\?:`))/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:[A-Za-z]+)/i,/^(?::)/i,/^(?:\+)/i,/^(?:,)/i,/^(?:=)/i,/^(?:\*)/i,/^(?:#)/i,/^(?:[\_])/i,/^(?:\.)/i,/^(?:&)/i,/^(?:-)/i,/^(?:[0-9]+)/i,/^(?:\s+)/i,/^(?:;)/i,/^(?:$)/i],conditions:{data_inner:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,24,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},data:{rules:[0,1,3,4,5,6,7,9,11,14,15,16,17,18,21,22,23,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_band_data:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,25,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},axis_data:{rules:[0,1,2,4,5,6,7,9,11,14,15,16,17,18,19,20,21,22,24,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},title:{rules:[],inclusive:!1},md_string:{rules:[],inclusive:!1},string:{rules:[28,29],inclusive:!1},INITIAL:{rules:[0,1,4,5,6,7,9,11,14,15,16,17,18,21,22,26,27,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46],inclusive:!0}}};return L}();F.lexer=T;function R(){this.yy={}}return y(R,"Parser"),R.prototype=F,F.Parser=R,new R}();zcA.parser=zcA;rRt=zcA;y(ZcA,"isBarPlot");y(BO,"isBandAxisData");y(C6,"isLinearAxisData");$re=class{constructor(A){this.parentGroup=A}static{y(this,"TextDimensionCalculatorWithFont")}getMaxDimension(A,e){if(!this.parentGroup)return{width:A.reduce((i,u)=>Math.max(u.length,i),0)*e,height:e};let t={width:0,height:0},r=this.parentGroup.append("g").attr("visibility","hidden").attr("font-size",e);for(let i of A){let u=yeA(r,1,i),a=u?u.width:i.length*e,n=u?u.height:e;t.width=Math.max(t.width,a),t.height=Math.max(t.height,n)}return r.remove(),t}},Aie=class{constructor(A,e,t,r){this.axisConfig=A,this.title=e,this.textDimensionCalculator=t,this.axisThemeConfig=r,this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left",this.showTitle=!1,this.showLabel=!1,this.showTick=!1,this.showAxisLine=!1,this.outerPadding=0,this.titleTextHeight=0,this.labelTextHeight=0,this.normalizedLabelRotationInRad=0,this.range=[0,10],this.boundingRect={x:0,y:0,width:0,height:0},this.axisPosition="left",this.normalizedLabelRotationInRad=this.axisConfig.labelRotation>=-90&&this.axisConfig.labelRotation<=90?this.axisConfig.labelRotation*Math.PI/180:0}static{y(this,"BaseAxis")}setRange(A){if(this.range=A,this.axisPosition==="left"||this.axisPosition==="right")this.boundingRect.height=A[1]-A[0];else this.boundingRect.width=A[1]-A[0];this.recalculateScale()}getRange(){return[this.range[0]+this.outerPadding,this.range[1]-this.outerPadding]}setAxisPosition(A){this.axisPosition=A,this.setRange(this.range)}getTickDistance(){let A=this.getRange();return Math.abs(A[0]-A[1])/this.getTickValues().length}getAxisOuterPadding(){return this.outerPadding}getLabelDimension(){return this.textDimensionCalculator.getMaxDimension(this.getTickValues().map((A)=>A.toString()),this.axisConfig.labelFontSize)}recalculateOuterPaddingToDrawBar(){if(jre*this.getTickDistance()>this.outerPadding*2)this.outerPadding=Math.floor(jre*this.getTickDistance()/2);this.recalculateScale()}calculateSpaceIfDrawnHorizontally(A){let e=A.height;if(this.axisConfig.showAxisLine&&e>this.axisConfig.axisLineWidth)e-=this.axisConfig.axisLineWidth,this.showAxisLine=!0;if(this.axisConfig.showLabel){let t=this.getLabelDimension(),r=Xre*A.width;this.outerPadding=Math.min(t.width/2,r);let i=t.height;if(this.axisPosition==="bottom"&&this.normalizedLabelRotationInRad!==0)i=Math.max(i,Math.abs(Math.sin(this.normalizedLabelRotationInRad)*t.width)+Math.abs(Math.cos(this.normalizedLabelRotationInRad)*t.height));if(i+=this.axisConfig.labelPadding*2,this.labelTextHeight=t.height,i<=e)e-=i,this.showLabel=!0}if(this.axisConfig.showTick&&e>=this.axisConfig.tickLength)this.showTick=!0,e-=this.axisConfig.tickLength;if(this.axisConfig.showTitle&&this.title){let t=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),r=t.height+this.axisConfig.titlePadding*2;if(this.titleTextHeight=t.height,r<=e)e-=r,this.showTitle=!0}this.boundingRect.width=A.width,this.boundingRect.height=A.height-e}calculateSpaceIfDrawnVertical(A){let e=A.width;if(this.axisConfig.showAxisLine&&e>this.axisConfig.axisLineWidth)e-=this.axisConfig.axisLineWidth,this.showAxisLine=!0;if(this.axisConfig.showLabel){let t=this.getLabelDimension(),r=Xre*A.height;this.outerPadding=Math.min(t.height/2,r);let i=t.width+this.axisConfig.labelPadding*2;if(i<=e)e-=i,this.showLabel=!0}if(this.axisConfig.showTick&&e>=this.axisConfig.tickLength)this.showTick=!0,e-=this.axisConfig.tickLength;if(this.axisConfig.showTitle&&this.title){let t=this.textDimensionCalculator.getMaxDimension([this.title],this.axisConfig.titleFontSize),r=t.height+this.axisConfig.titlePadding*2;if(this.titleTextHeight=t.height,r<=e)e-=r,this.showTitle=!0}this.boundingRect.width=A.width-e,this.boundingRect.height=A.height}calculateSpace(A){if(this.axisPosition==="left"||this.axisPosition==="right")this.calculateSpaceIfDrawnVertical(A);else this.calculateSpaceIfDrawnHorizontally(A);return this.recalculateScale(),{width:this.boundingRect.width,height:this.boundingRect.height}}setBoundingBoxXY(A){this.boundingRect.x=A.x,this.boundingRect.y=A.y}calculateOffsetByRotation(A){let e=this.normalizedLabelRotationInRad;if(e===0)return 0;return Math.sin(e)*this.getLabelDimension()[A]/2}getDrawableElementsForLeftAxis(){let A=[];if(this.showAxisLine){let e=this.boundingRect.x+this.boundingRect.width-this.axisConfig.axisLineWidth/2;A.push({type:"path",groupTexts:["left-axis","axisl-line"],data:[{path:`M ${e},${this.boundingRect.y} L ${e},${this.boundingRect.y+this.boundingRect.height} `,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel)A.push({type:"text",groupTexts:["left-axis","label"],data:this.getTickValues().map((e)=>({text:e.toString(),x:this.boundingRect.x+this.boundingRect.width-(this.showLabel?this.axisConfig.labelPadding:0)-(this.showTick?this.axisConfig.tickLength:0)-(this.showAxisLine?this.axisConfig.axisLineWidth:0),y:this.getScaleValue(e),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"middle",horizontalPos:"right"}))});if(this.showTick){let e=this.boundingRect.x+this.boundingRect.width-(this.showAxisLine?this.axisConfig.axisLineWidth:0);A.push({type:"path",groupTexts:["left-axis","ticks"],data:this.getTickValues().map((t)=>({path:`M ${e},${this.getScaleValue(t)} L ${e-this.axisConfig.tickLength},${this.getScaleValue(t)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}if(this.showTitle)A.push({type:"text",groupTexts:["left-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.axisConfig.titlePadding,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:270,verticalPos:"top",horizontalPos:"center"}]});return A}getDrawableElementsForBottomAxis(){let A=[];if(this.showAxisLine){let e=this.boundingRect.y+this.axisConfig.axisLineWidth/2;A.push({type:"path",groupTexts:["bottom-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${e} L ${this.boundingRect.x+this.boundingRect.width},${e}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel)A.push({type:"text",groupTexts:["bottom-axis","label"],data:this.getTickValues().map((e)=>({text:e.toString(),x:this.getScaleValue(e)+this.calculateOffsetByRotation("height"),y:this.boundingRect.y+this.axisConfig.labelPadding+(this.showTick?this.axisConfig.tickLength:0)+(this.showAxisLine?this.axisConfig.axisLineWidth:0)+Math.abs(this.calculateOffsetByRotation("width")),fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:this.normalizedLabelRotationInRad*180/Math.PI,verticalPos:"top",horizontalPos:"center"}))});if(this.showTick){let e=this.boundingRect.y+(this.showAxisLine?this.axisConfig.axisLineWidth:0);A.push({type:"path",groupTexts:["bottom-axis","ticks"],data:this.getTickValues().map((t)=>({path:`M ${this.getScaleValue(t)},${e} L ${this.getScaleValue(t)},${e+this.axisConfig.tickLength}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}if(this.showTitle)A.push({type:"text",groupTexts:["bottom-axis","title"],data:[{text:this.title,x:this.range[0]+(this.range[1]-this.range[0])/2,y:this.boundingRect.y+this.boundingRect.height-this.axisConfig.titlePadding-this.titleTextHeight,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]});return A}getDrawableElementsForTopAxis(){let A=[];if(this.showAxisLine){let e=this.boundingRect.y+this.boundingRect.height-this.axisConfig.axisLineWidth/2;A.push({type:"path",groupTexts:["top-axis","axis-line"],data:[{path:`M ${this.boundingRect.x},${e} L ${this.boundingRect.x+this.boundingRect.width},${e}`,strokeFill:this.axisThemeConfig.axisLineColor,strokeWidth:this.axisConfig.axisLineWidth}]})}if(this.showLabel)A.push({type:"text",groupTexts:["top-axis","label"],data:this.getTickValues().map((e)=>({text:e.toString(),x:this.getScaleValue(e),y:this.boundingRect.y+(this.showTitle?this.titleTextHeight+this.axisConfig.titlePadding*2:0)+this.axisConfig.labelPadding,fill:this.axisThemeConfig.labelColor,fontSize:this.axisConfig.labelFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}))});if(this.showTick){let e=this.boundingRect.y;A.push({type:"path",groupTexts:["top-axis","ticks"],data:this.getTickValues().map((t)=>({path:`M ${this.getScaleValue(t)},${e+this.boundingRect.height-(this.showAxisLine?this.axisConfig.axisLineWidth:0)} L ${this.getScaleValue(t)},${e+this.boundingRect.height-this.axisConfig.tickLength-(this.showAxisLine?this.axisConfig.axisLineWidth:0)}`,strokeFill:this.axisThemeConfig.tickColor,strokeWidth:this.axisConfig.tickWidth}))})}if(this.showTitle)A.push({type:"text",groupTexts:["top-axis","title"],data:[{text:this.title,x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.axisConfig.titlePadding,fill:this.axisThemeConfig.titleColor,fontSize:this.axisConfig.titleFontSize,rotation:0,verticalPos:"top",horizontalPos:"center"}]});return A}getDrawableElements(){if(this.axisPosition==="left")return this.getDrawableElementsForLeftAxis();if(this.axisPosition==="right")throw Error("Drawing of right axis is not implemented");if(this.axisPosition==="bottom")return this.getDrawableElementsForBottomAxis();if(this.axisPosition==="top")return this.getDrawableElementsForTopAxis();return[]}},iRt=class extends Aie{static{y(this,"BandAxis")}constructor(A,e,t,r,i){super(A,r,i,e);this.categories=t,this.scale=kD().domain(this.categories).range(this.getRange())}setRange(A){super.setRange(A)}recalculateScale(){this.scale=kD().domain(this.categories).range(this.getRange()).paddingInner(1).paddingOuter(0).align(0.5),sA.trace("BandAxis axis final categories, range: ",this.categories,this.getRange())}getTickValues(){return this.categories}getScaleValue(A){return this.scale(A)??this.getRange()[0]}},uRt=class extends Aie{static{y(this,"LinearAxis")}constructor(A,e,t,r,i){super(A,r,i,e);this.domain=t,this.scale=tC().domain(this.domain).range(this.getRange())}getTickValues(){return this.scale.ticks()}recalculateScale(){let A=[...this.domain];if(this.axisPosition==="left")A.reverse();this.scale=tC().domain(A).range(this.getRange())}getScaleValue(A){return this.scale(A)}};y(VcA,"getAxis");aRt=class{constructor(A,e,t,r){this.textDimensionCalculator=A,this.chartConfig=e,this.chartData=t,this.chartThemeConfig=r,this.boundingRect={x:0,y:0,width:0,height:0},this.showChartTitle=!1}static{y(this,"ChartTitle")}setBoundingBoxXY(A){this.boundingRect.x=A.x,this.boundingRect.y=A.y}calculateSpace(A){let e=this.textDimensionCalculator.getMaxDimension([this.chartData.title],this.chartConfig.titleFontSize),t=Math.max(e.width,A.width),r=e.height+2*this.chartConfig.titlePadding;if(e.width<=t&&e.height<=r&&this.chartConfig.showTitle&&this.chartData.title)this.boundingRect.width=t,this.boundingRect.height=r,this.showChartTitle=!0;return{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){let A=[];if(this.showChartTitle)A.push({groupTexts:["chart-title"],type:"text",data:[{fontSize:this.chartConfig.titleFontSize,text:this.chartData.title,verticalPos:"middle",horizontalPos:"center",x:this.boundingRect.x+this.boundingRect.width/2,y:this.boundingRect.y+this.boundingRect.height/2,fill:this.chartThemeConfig.titleColor,rotation:0}]});return A}};y(eie,"getChartTitleComponent");nRt=class{constructor(A,e,t,r,i){this.plotData=A,this.xAxis=e,this.yAxis=t,this.orientation=r,this.plotIndex=i}static{y(this,"LinePlot")}getDrawableElement(){let A=this.plotData.data.map((r)=>[this.xAxis.getScaleValue(r[0]),this.yAxis.getScaleValue(r[1])]),e;if(this.orientation==="horizontal")e=nC().y((r)=>r[0]).x((r)=>r[1])(A);else e=nC().x((r)=>r[0]).y((r)=>r[1])(A);if(!e)return[];let t=[{groupTexts:["plot",`line-plot-${this.plotIndex}`],type:"path",data:[{path:e,strokeFill:this.plotData.strokeFill,strokeWidth:this.plotData.strokeWidth}]}];if(this.plotData.pointLabels&&this.plotData.pointLabels.length>0){let u=[];for(let[a,[n,o]]of A.entries()){let s=this.plotData.pointLabels[a];if(!s)continue;if(this.orientation==="horizontal")u.push({x:o+10,y:n,text:s,fill:this.plotData.strokeFill,verticalPos:"middle",horizontalPos:"left",fontSize:12,rotation:0});else u.push({x:n,y:o-10,text:s,fill:this.plotData.strokeFill,verticalPos:"middle",horizontalPos:"center",fontSize:12,rotation:0})}if(u.length>0)t.push({groupTexts:["plot",`line-plot-${this.plotIndex}`,"labels"],type:"text",data:u})}return t}},oRt=class{constructor(A,e,t,r,i,u){this.barData=A,this.boundingRect=e,this.xAxis=t,this.yAxis=r,this.orientation=i,this.plotIndex=u}static{y(this,"BarPlot")}getDrawableElement(){let A=this.barData.data.map((i)=>[this.xAxis.getScaleValue(i[0]),this.yAxis.getScaleValue(i[1])]),e=0.05,t=Math.min(this.xAxis.getAxisOuterPadding()*2,this.xAxis.getTickDistance())*0.95,r=t/2;if(this.orientation==="horizontal")return[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:A.map((i)=>({x:this.boundingRect.x,y:i[0]-r,height:t,width:i[1]-this.boundingRect.x,fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}];return[{groupTexts:["plot",`bar-plot-${this.plotIndex}`],type:"rect",data:A.map((i)=>({x:i[0]-r,y:i[1],width:t,height:this.boundingRect.y+this.boundingRect.height-i[1],fill:this.barData.fill,strokeWidth:0,strokeFill:this.barData.fill}))}]}},sRt=class{constructor(A,e,t){this.chartConfig=A,this.chartData=e,this.chartThemeConfig=t,this.boundingRect={x:0,y:0,width:0,height:0}}static{y(this,"BasePlot")}setAxes(A,e){this.xAxis=A,this.yAxis=e}setBoundingBoxXY(A){this.boundingRect.x=A.x,this.boundingRect.y=A.y}calculateSpace(A){return this.boundingRect.width=A.width,this.boundingRect.height=A.height,{width:this.boundingRect.width,height:this.boundingRect.height}}getDrawableElements(){if(!(this.xAxis&&this.yAxis))throw Error("Axes must be passed to render Plots");let A=[];for(let[e,t]of this.chartData.plots.entries())switch(t.type){case"line":{let r=new nRt(t,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,e);A.push(...r.getDrawableElement())}break;case"bar":{let r=new oRt(t,this.boundingRect,this.xAxis,this.yAxis,this.chartConfig.chartOrientation,e);A.push(...r.getDrawableElement())}break}return A}};y(tie,"getPlotComponent");lRt=class{constructor(A,e,t,r){this.chartConfig=A,this.chartData=e,this.componentStore={title:eie(A,e,t,r),plot:tie(A,e,t),xAxis:VcA(e.xAxis,A.xAxis,{titleColor:t.xAxisTitleColor,labelColor:t.xAxisLabelColor,tickColor:t.xAxisTickColor,axisLineColor:t.xAxisLineColor},r),yAxis:VcA(e.yAxis,A.yAxis,{titleColor:t.yAxisTitleColor,labelColor:t.yAxisLabelColor,tickColor:t.yAxisTickColor,axisLineColor:t.yAxisLineColor},r)}}static{y(this,"Orchestrator")}calculateVerticalSpace(){let A=this.chartConfig.width,e=this.chartConfig.height,t=0,r=0,i=Math.floor(A*this.chartConfig.plotReservedSpacePercent/100),u=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),a=this.componentStore.plot.calculateSpace({width:i,height:u});if(A-=a.width,e-=a.height,a=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:e}),r=a.height,e-=a.height,this.componentStore.xAxis.setAxisPosition("bottom"),a=this.componentStore.xAxis.calculateSpace({width:A,height:e}),e-=a.height,this.componentStore.yAxis.setAxisPosition("left"),a=this.componentStore.yAxis.calculateSpace({width:A,height:e}),t=a.width,A-=a.width,A>0)i+=A,A=0;if(e>0)u+=e,e=0;if(this.componentStore.plot.calculateSpace({width:i,height:u}),this.componentStore.plot.setBoundingBoxXY({x:t,y:r}),this.componentStore.xAxis.setRange([t,t+i]),this.componentStore.xAxis.setBoundingBoxXY({x:t,y:r+u}),this.componentStore.yAxis.setRange([r,r+u]),this.componentStore.yAxis.setBoundingBoxXY({x:0,y:r}),this.chartData.plots.some((n)=>ZcA(n)))this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateHorizontalSpace(){let A=this.chartConfig.width,e=this.chartConfig.height,t=0,r=0,i=0,u=Math.floor(A*this.chartConfig.plotReservedSpacePercent/100),a=Math.floor(e*this.chartConfig.plotReservedSpacePercent/100),n=this.componentStore.plot.calculateSpace({width:u,height:a});if(A-=n.width,e-=n.height,n=this.componentStore.title.calculateSpace({width:this.chartConfig.width,height:e}),t=n.height,e-=n.height,this.componentStore.xAxis.setAxisPosition("left"),n=this.componentStore.xAxis.calculateSpace({width:A,height:e}),A-=n.width,r=n.width,this.componentStore.yAxis.setAxisPosition("top"),n=this.componentStore.yAxis.calculateSpace({width:A,height:e}),e-=n.height,i=t+n.height,A>0)u+=A,A=0;if(e>0)a+=e,e=0;if(this.componentStore.plot.calculateSpace({width:u,height:a}),this.componentStore.plot.setBoundingBoxXY({x:r,y:i}),this.componentStore.yAxis.setRange([r,r+u]),this.componentStore.yAxis.setBoundingBoxXY({x:r,y:t}),this.componentStore.xAxis.setRange([i,i+a]),this.componentStore.xAxis.setBoundingBoxXY({x:0,y:i}),this.chartData.plots.some((o)=>ZcA(o)))this.componentStore.xAxis.recalculateOuterPaddingToDrawBar()}calculateSpace(){if(this.chartConfig.chartOrientation==="horizontal")this.calculateHorizontalSpace();else this.calculateVerticalSpace()}getDrawableElement(){this.calculateSpace();let A=[];this.componentStore.plot.setAxes(this.componentStore.xAxis,this.componentStore.yAxis);for(let e of Object.values(this.componentStore))A.push(...e.getDrawableElements());return A}},gRt=class{static{y(this,"XYChartBuilder")}static build(A,e,t,r){return new lRt(A,e,t,r).getDrawableElement()}},Vx=ACA(),jx=$cA(),Oi=eCA(),jcA=jx.plotColorPalette.split(",").map((A)=>A.trim());y($cA,"getChartDefaultThemeConfig");y(ACA,"getChartDefaultConfig");y(eCA,"getChartDefaultData");y(Xx,"textSanitizer");y(iie,"setTmpSVGG");y(uie,"setOrientation");y(aie,"setXAxisTitle");y(tCA,"setXAxisRangeData");y(nie,"setXAxisBand");y(oie,"setYAxisTitle");y(sie,"setYAxisRangeData");y(lie,"setYAxisRangeFromPlotData");y(rCA,"transformDataWithoutCategory");y(iCA,"getPlotColorFromPalette");y(gie,"setLineData");y(cie,"setBarData");y(Cie,"getDrawableElem");y(Bie,"getChartThemeConfig");y(Eie,"getChartConfig");y(die,"getXYChartData");cRt=y(function(){cr(),Zx=0,Vx=ACA(),Oi=eCA(),jx=$cA(),jcA=jx.plotColorPalette.split(",").map((A)=>A.trim()),EO=!1,XcA=!1},"clear"),CRt={getDrawableElem:Cie,clear:cRt,setAccTitle:Dr,getAccTitle:kr,setDiagramTitle:Tr,getDiagramTitle:Sr,getAccDescription:xr,setAccDescription:Fr,setOrientation:uie,setXAxisTitle:aie,setXAxisRangeData:tCA,setXAxisBand:nie,setYAxisTitle:oie,setYAxisRangeData:sie,setLineData:gie,setBarData:cie,setTmpSVGG:iie,getChartThemeConfig:Bie,getChartConfig:Eie,getXYChartData:die},BRt=y((A,e,t,r)=>{let i=r.db,u=i.getChartThemeConfig(),a=i.getChartConfig(),n=i.getXYChartData().plots[0].data.map((p)=>p[1]);function o(p){return p==="top"?"text-before-edge":"middle"}y(o,"getDominantBaseLine");function s(p){return p==="left"?"start":p==="right"?"end":"middle"}y(s,"getTextAnchor");function l(p){return`translate(${p.x}, ${p.y}) rotate(${p.rotation||0})`}y(l,"getTextTransformation"),sA.debug(`Rendering xychart chart
`+A);let g=zi(e),C=g.append("g").attr("class","main"),B=C.append("rect").attr("width",a.width).attr("height",a.height).attr("class","background");Xr(g,a.height,a.width,!0),g.attr("viewBox",`0 0 ${a.width} ${a.height}`),B.attr("fill",u.backgroundColor),i.setTmpSVGG(g.append("g").attr("class","mermaid-tmp-group"));let E=i.getDrawableElem(),d={};function I(p){let m=C,f="";for(let[D]of p.entries()){let w=C;if(D>0&&d[f])w=d[f];if(f+=p[D],m=d[f],!m)m=d[f]=w.append("g").attr("class",p[D])}return m}y(I,"getGroup");for(let p of E){if(p.data.length===0)continue;let m=I(p.groupTexts);switch(p.type){case"rect":if(m.selectAll("rect").data(p.data).enter().append("rect").attr("x",(f)=>f.x).attr("y",(f)=>f.y).attr("width",(f)=>f.width).attr("height",(f)=>f.height).attr("fill",(f)=>f.fill).attr("stroke",(f)=>f.strokeFill).attr("stroke-width",(f)=>f.strokeWidth),a.showDataLabel){let f=a.showDataLabelOutsideBar;if(a.chartOrientation==="horizontal"){let D=function(F,T){let{data:R,label:L}=F;return T*L.length*w<=R.width-b};var h=D;y(D,"fitsHorizontally");let w=0.7,b=10,k=p.data.map((F,T)=>({data:F,label:n[T].toString()})).filter((F)=>F.data.width>0&&F.data.height>0),v=k.map((F)=>{let{data:T}=F,R=T.height*0.7;while(!D(F,R)&&R>0)R-=1;return R}),S=Math.floor(Math.min(...v)),x=y((F)=>{if(f)return F.data.x+F.data.width+b;else return F.data.x+F.data.width-b},"determineLabelXPosition");m.selectAll("text").data(k).enter().append("text").attr("x",x).attr("y",(F)=>F.data.y+F.data.height/2).attr("text-anchor",f?"start":"end").attr("dominant-baseline","middle").attr("fill",u.dataLabelColor).attr("font-size",`${S}px`).text((F)=>F.label)}else{let D=function(x,F,T){let{data:R,label:L}=x,M=0.7,U=F*L.length*0.7,Y=R.x+R.width/2,H=Y-U/2,J=Y+U/2,K=H>=R.x&&J<=R.x+R.width,O=R.y+T+F<=R.y+R.height;return K&&O};var Q=D;y(D,"fitsInBar");let w=10,b=p.data.map((x,F)=>({data:x,label:n[F].toString()})).filter((x)=>x.data.width>0&&x.data.height>0),k=b.map((x)=>{let{data:F,label:T}=x,R=F.width/(T.length*0.7);while(!D(x,R,w)&&R>0)R-=1;return R}),v=Math.floor(Math.min(...k)),S=y((x)=>{if(f)return x.data.y-w;else return x.data.y+w},"determineLabelYPosition");m.selectAll("text").data(b).enter().append("text").attr("x",(x)=>x.data.x+x.data.width/2).attr("y",S).attr("text-anchor","middle").attr("dominant-baseline",f?"auto":"hanging").attr("fill",u.dataLabelColor).attr("font-size",`${v}px`).text((x)=>x.label)}}break;case"text":m.selectAll("text").data(p.data).enter().append("text").attr("x",0).attr("y",0).attr("fill",(f)=>f.fill).attr("font-size",(f)=>f.fontSize).attr("dominant-baseline",(f)=>o(f.verticalPos)).attr("text-anchor",(f)=>s(f.horizontalPos)).attr("transform",(f)=>l(f)).text((f)=>f.text);break;case"path":m.selectAll("path").data(p.data).enter().append("path").attr("d",(f)=>f.path).attr("fill",(f)=>f.fill?f.fill:"none").attr("stroke",(f)=>f.strokeFill).attr("stroke-width",(f)=>f.strokeWidth);break}}},"draw"),ERt={draw:BRt},Iie={parser:rRt,db:CRt,renderer:ERt}});var uCA,dRt,IRt,hRt,QRt,pRt,Qie,fRt,pie;var fie=_(()=>{gg();hl();El();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt();uCA=function(){var A=y(function(dA,q,Z,fA){for(Z=Z||{},fA=dA.length;fA--;Z[dA[fA]]=q);return Z},"o"),e=[1,3],t=[1,4],r=[1,5],i=[1,6],u=[5,6,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],a=[1,22],n=[2,7],o=[1,26],s=[1,27],l=[1,28],g=[1,29],C=[1,33],B=[1,34],E=[1,35],d=[1,36],I=[1,37],h=[1,38],Q=[1,24],p=[1,31],m=[1,32],f=[1,30],D=[1,39],w=[1,40],b=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,77,89,90],k=[1,61],v=[89,90],S=[5,8,9,11,13,21,22,23,24,27,29,41,42,43,44,45,46,54,61,63,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],x=[27,29],F=[1,70],T=[1,71],R=[1,72],L=[1,73],M=[1,74],U=[1,75],Y=[1,76],H=[1,83],J=[1,80],K=[1,84],O=[1,85],P=[1,86],z=[1,87],AA=[1,88],W=[1,89],CA=[1,90],tA=[1,91],lA=[1,92],gA=[5,8,9,11,13,21,22,23,24,27,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],aA=[63,64],NA=[1,101],DA=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,76,77,89,90],KA=[5,8,9,11,13,21,22,23,24,41,42,43,44,45,46,54,72,74,75,76,77,80,81,82,83,84,85,86,87,88,89,90],TA=[1,110],qA=[1,106],IA=[1,107],bA=[1,108],SA=[1,109],EA=[1,111],nA=[1,116],eA=[1,117],BA=[1,114],yA=[1,115],vA={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,acc_title:9,acc_title_value:10,acc_descr:11,acc_descr_value:12,acc_descr_multiline_value:13,requirementDef:14,elementDef:15,relationshipDef:16,direction:17,styleStatement:18,classDefStatement:19,classStatement:20,direction_tb:21,direction_bt:22,direction_rl:23,direction_lr:24,requirementType:25,requirementName:26,STRUCT_START:27,requirementBody:28,STYLE_SEPARATOR:29,idList:30,ID:31,COLONSEP:32,id:33,TEXT:34,text:35,RISK:36,riskLevel:37,VERIFYMTHD:38,verifyType:39,STRUCT_STOP:40,REQUIREMENT:41,FUNCTIONAL_REQUIREMENT:42,INTERFACE_REQUIREMENT:43,PERFORMANCE_REQUIREMENT:44,PHYSICAL_REQUIREMENT:45,DESIGN_CONSTRAINT:46,LOW_RISK:47,MED_RISK:48,HIGH_RISK:49,VERIFY_ANALYSIS:50,VERIFY_DEMONSTRATION:51,VERIFY_INSPECTION:52,VERIFY_TEST:53,ELEMENT:54,elementName:55,elementBody:56,TYPE:57,type:58,DOCREF:59,ref:60,END_ARROW_L:61,relationship:62,LINE:63,END_ARROW_R:64,CONTAINS:65,COPIES:66,DERIVES:67,SATISFIES:68,VERIFIES:69,REFINES:70,TRACES:71,CLASSDEF:72,stylesOpt:73,CLASS:74,ALPHA:75,COMMA:76,STYLE:77,style:78,styleComponent:79,NUM:80,COLON:81,UNIT:82,SPACE:83,BRKT:84,PCT:85,MINUS:86,LABEL:87,SEMICOLON:88,unqString:89,qString:90,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",9:"acc_title",10:"acc_title_value",11:"acc_descr",12:"acc_descr_value",13:"acc_descr_multiline_value",21:"direction_tb",22:"direction_bt",23:"direction_rl",24:"direction_lr",27:"STRUCT_START",29:"STYLE_SEPARATOR",31:"ID",32:"COLONSEP",34:"TEXT",36:"RISK",38:"VERIFYMTHD",40:"STRUCT_STOP",41:"REQUIREMENT",42:"FUNCTIONAL_REQUIREMENT",43:"INTERFACE_REQUIREMENT",44:"PERFORMANCE_REQUIREMENT",45:"PHYSICAL_REQUIREMENT",46:"DESIGN_CONSTRAINT",47:"LOW_RISK",48:"MED_RISK",49:"HIGH_RISK",50:"VERIFY_ANALYSIS",51:"VERIFY_DEMONSTRATION",52:"VERIFY_INSPECTION",53:"VERIFY_TEST",54:"ELEMENT",57:"TYPE",59:"DOCREF",61:"END_ARROW_L",63:"LINE",64:"END_ARROW_R",65:"CONTAINS",66:"COPIES",67:"DERIVES",68:"SATISFIES",69:"VERIFIES",70:"REFINES",71:"TRACES",72:"CLASSDEF",74:"CLASS",75:"ALPHA",76:"COMMA",77:"STYLE",80:"NUM",81:"COLON",82:"UNIT",83:"SPACE",84:"BRKT",85:"PCT",86:"MINUS",87:"LABEL",88:"SEMICOLON",89:"unqString",90:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,2],[4,2],[4,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[7,2],[17,1],[17,1],[17,1],[17,1],[14,5],[14,7],[28,5],[28,5],[28,5],[28,5],[28,2],[28,1],[25,1],[25,1],[25,1],[25,1],[25,1],[25,1],[37,1],[37,1],[37,1],[39,1],[39,1],[39,1],[39,1],[15,5],[15,7],[56,5],[56,5],[56,2],[56,1],[16,5],[16,5],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[62,1],[19,3],[20,3],[20,3],[30,1],[30,3],[30,1],[30,3],[18,3],[73,1],[73,3],[78,1],[78,2],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[79,1],[26,1],[26,1],[33,1],[33,1],[35,1],[35,1],[55,1],[55,1],[58,1],[58,1],[60,1],[60,1]],performAction:y(function(q,Z,fA,j,mA,rA,JA){var _A=rA.length-1;switch(mA){case 4:this.$=rA[_A].trim(),j.setAccTitle(this.$);break;case 5:case 6:this.$=rA[_A].trim(),j.setAccDescription(this.$);break;case 7:this.$=[];break;case 17:j.setDirection("TB");break;case 18:j.setDirection("BT");break;case 19:j.setDirection("RL");break;case 20:j.setDirection("LR");break;case 21:j.addRequirement(rA[_A-3],rA[_A-4]);break;case 22:j.addRequirement(rA[_A-5],rA[_A-6]),j.setClass([rA[_A-5]],rA[_A-3]);break;case 23:j.setNewReqId(rA[_A-2]);break;case 24:j.setNewReqText(rA[_A-2]);break;case 25:j.setNewReqRisk(rA[_A-2]);break;case 26:j.setNewReqVerifyMethod(rA[_A-2]);break;case 29:this.$=j.RequirementType.REQUIREMENT;break;case 30:this.$=j.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 31:this.$=j.RequirementType.INTERFACE_REQUIREMENT;break;case 32:this.$=j.RequirementType.PERFORMANCE_REQUIREMENT;break;case 33:this.$=j.RequirementType.PHYSICAL_REQUIREMENT;break;case 34:this.$=j.RequirementType.DESIGN_CONSTRAINT;break;case 35:this.$=j.RiskLevel.LOW_RISK;break;case 36:this.$=j.RiskLevel.MED_RISK;break;case 37:this.$=j.RiskLevel.HIGH_RISK;break;case 38:this.$=j.VerifyType.VERIFY_ANALYSIS;break;case 39:this.$=j.VerifyType.VERIFY_DEMONSTRATION;break;case 40:this.$=j.VerifyType.VERIFY_INSPECTION;break;case 41:this.$=j.VerifyType.VERIFY_TEST;break;case 42:j.addElement(rA[_A-3]);break;case 43:j.addElement(rA[_A-5]),j.setClass([rA[_A-5]],rA[_A-3]);break;case 44:j.setNewElementType(rA[_A-2]);break;case 45:j.setNewElementDocRef(rA[_A-2]);break;case 48:j.addRelationship(rA[_A-2],rA[_A],rA[_A-4]);break;case 49:j.addRelationship(rA[_A-2],rA[_A-4],rA[_A]);break;case 50:this.$=j.Relationships.CONTAINS;break;case 51:this.$=j.Relationships.COPIES;break;case 52:this.$=j.Relationships.DERIVES;break;case 53:this.$=j.Relationships.SATISFIES;break;case 54:this.$=j.Relationships.VERIFIES;break;case 55:this.$=j.Relationships.REFINES;break;case 56:this.$=j.Relationships.TRACES;break;case 57:this.$=rA[_A-2],j.defineClass(rA[_A-1],rA[_A]);break;case 58:j.setClass(rA[_A-1],rA[_A]);break;case 59:j.setClass([rA[_A-2]],rA[_A]);break;case 60:case 62:this.$=[rA[_A]];break;case 61:case 63:this.$=rA[_A-2].concat([rA[_A]]);break;case 64:this.$=rA[_A-2],j.setCssStyle(rA[_A-1],rA[_A]);break;case 65:this.$=[rA[_A]];break;case 66:rA[_A-2].push(rA[_A]),this.$=rA[_A-2];break;case 68:this.$=rA[_A-1]+rA[_A];break}},"anonymous"),table:[{3:1,4:2,6:e,9:t,11:r,13:i},{1:[3]},{3:8,4:2,5:[1,7],6:e,9:t,11:r,13:i},{5:[1,9]},{10:[1,10]},{12:[1,11]},A(u,[2,6]),{3:12,4:2,6:e,9:t,11:r,13:i},{1:[2,2]},{4:17,5:a,7:13,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},A(u,[2,4]),A(u,[2,5]),{1:[2,1]},{8:[1,41]},{4:17,5:a,7:42,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:43,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:44,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:45,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:46,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:47,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:48,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:49,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{4:17,5:a,7:50,8:n,9:t,11:r,13:i,14:14,15:15,16:16,17:18,18:19,19:20,20:21,21:o,22:s,23:l,24:g,25:23,33:25,41:C,42:B,43:E,44:d,45:I,46:h,54:Q,72:p,74:m,77:f,89:D,90:w},{26:51,89:[1,52],90:[1,53]},{55:54,89:[1,55],90:[1,56]},{29:[1,59],61:[1,57],63:[1,58]},A(b,[2,17]),A(b,[2,18]),A(b,[2,19]),A(b,[2,20]),{30:60,33:62,75:k,89:D,90:w},{30:63,33:62,75:k,89:D,90:w},{30:64,33:62,75:k,89:D,90:w},A(v,[2,29]),A(v,[2,30]),A(v,[2,31]),A(v,[2,32]),A(v,[2,33]),A(v,[2,34]),A(S,[2,81]),A(S,[2,82]),{1:[2,3]},{8:[2,8]},{8:[2,9]},{8:[2,10]},{8:[2,11]},{8:[2,12]},{8:[2,13]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{27:[1,65],29:[1,66]},A(x,[2,79]),A(x,[2,80]),{27:[1,67],29:[1,68]},A(x,[2,85]),A(x,[2,86]),{62:69,65:F,66:T,67:R,68:L,69:M,70:U,71:Y},{62:77,65:F,66:T,67:R,68:L,69:M,70:U,71:Y},{30:78,33:62,75:k,89:D,90:w},{73:79,75:H,76:J,78:81,79:82,80:K,81:O,82:P,83:z,84:AA,85:W,86:CA,87:tA,88:lA},A(gA,[2,60]),A(gA,[2,62]),{73:93,75:H,76:J,78:81,79:82,80:K,81:O,82:P,83:z,84:AA,85:W,86:CA,87:tA,88:lA},{30:94,33:62,75:k,76:J,89:D,90:w},{5:[1,95]},{30:96,33:62,75:k,89:D,90:w},{5:[1,97]},{30:98,33:62,75:k,89:D,90:w},{63:[1,99]},A(aA,[2,50]),A(aA,[2,51]),A(aA,[2,52]),A(aA,[2,53]),A(aA,[2,54]),A(aA,[2,55]),A(aA,[2,56]),{64:[1,100]},A(b,[2,59],{76:J}),A(b,[2,64],{76:NA}),{33:103,75:[1,102],89:D,90:w},A(DA,[2,65],{79:104,75:H,80:K,81:O,82:P,83:z,84:AA,85:W,86:CA,87:tA,88:lA}),A(KA,[2,67]),A(KA,[2,69]),A(KA,[2,70]),A(KA,[2,71]),A(KA,[2,72]),A(KA,[2,73]),A(KA,[2,74]),A(KA,[2,75]),A(KA,[2,76]),A(KA,[2,77]),A(KA,[2,78]),A(b,[2,57],{76:NA}),A(b,[2,58],{76:J}),{5:TA,28:105,31:qA,34:IA,36:bA,38:SA,40:EA},{27:[1,112],76:J},{5:nA,40:eA,56:113,57:BA,59:yA},{27:[1,118],76:J},{33:119,89:D,90:w},{33:120,89:D,90:w},{75:H,78:121,79:82,80:K,81:O,82:P,83:z,84:AA,85:W,86:CA,87:tA,88:lA},A(gA,[2,61]),A(gA,[2,63]),A(KA,[2,68]),A(b,[2,21]),{32:[1,122]},{32:[1,123]},{32:[1,124]},{32:[1,125]},{5:TA,28:126,31:qA,34:IA,36:bA,38:SA,40:EA},A(b,[2,28]),{5:[1,127]},A(b,[2,42]),{32:[1,128]},{32:[1,129]},{5:nA,40:eA,56:130,57:BA,59:yA},A(b,[2,47]),{5:[1,131]},A(b,[2,48]),A(b,[2,49]),A(DA,[2,66],{79:104,75:H,80:K,81:O,82:P,83:z,84:AA,85:W,86:CA,87:tA,88:lA}),{33:132,89:D,90:w},{35:133,89:[1,134],90:[1,135]},{37:136,47:[1,137],48:[1,138],49:[1,139]},{39:140,50:[1,141],51:[1,142],52:[1,143],53:[1,144]},A(b,[2,27]),{5:TA,28:145,31:qA,34:IA,36:bA,38:SA,40:EA},{58:146,89:[1,147],90:[1,148]},{60:149,89:[1,150],90:[1,151]},A(b,[2,46]),{5:nA,40:eA,56:152,57:BA,59:yA},{5:[1,153]},{5:[1,154]},{5:[2,83]},{5:[2,84]},{5:[1,155]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[1,156]},{5:[2,38]},{5:[2,39]},{5:[2,40]},{5:[2,41]},A(b,[2,22]),{5:[1,157]},{5:[2,87]},{5:[2,88]},{5:[1,158]},{5:[2,89]},{5:[2,90]},A(b,[2,43]),{5:TA,28:159,31:qA,34:IA,36:bA,38:SA,40:EA},{5:TA,28:160,31:qA,34:IA,36:bA,38:SA,40:EA},{5:TA,28:161,31:qA,34:IA,36:bA,38:SA,40:EA},{5:TA,28:162,31:qA,34:IA,36:bA,38:SA,40:EA},{5:nA,40:eA,56:163,57:BA,59:yA},{5:nA,40:eA,56:164,57:BA,59:yA},A(b,[2,23]),A(b,[2,24]),A(b,[2,25]),A(b,[2,26]),A(b,[2,44]),A(b,[2,45])],defaultActions:{8:[2,2],12:[2,1],41:[2,3],42:[2,8],43:[2,9],44:[2,10],45:[2,11],46:[2,12],47:[2,13],48:[2,14],49:[2,15],50:[2,16],134:[2,83],135:[2,84],137:[2,35],138:[2,36],139:[2,37],141:[2,38],142:[2,39],143:[2,40],144:[2,41],147:[2,87],148:[2,88],150:[2,89],151:[2,90]},parseError:y(function(q,Z){if(Z.recoverable)this.trace(q);else{var fA=Error(q);throw fA.hash=Z,fA}},"parseError"),parse:y(function(q){var Z=this,fA=[0],j=[],mA=[null],rA=[],JA=this.table,_A="",ZA=0,WA=0,te=0,zA=2,Ae=1,$A=rA.slice.call(arguments,1),oe=Object.create(this.lexer),kA={yy:{}};for(var Pe in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Pe))kA.yy[Pe]=this.yy[Pe];if(oe.setInput(q,kA.yy),kA.yy.lexer=oe,kA.yy.parser=this,typeof oe.yylloc>"u")oe.yylloc={};var MA=oe.yylloc;rA.push(MA);var ke=oe.options&&oe.options.ranges;if(typeof kA.yy.parseError==="function")this.parseError=kA.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function We(Je){fA.length=fA.length-2*Je,mA.length=mA.length-Je,rA.length=rA.length-Je}y(We,"popStack");function ue(){var Je=j.pop()||oe.lex()||Ae;if(typeof Je!=="number"){if(Je instanceof Array)j=Je,Je=j.pop();Je=Z.symbols_[Je]||Je}return Je}y(ue,"lex");var Me,je,Ge,wA,Re,He,de={},RA,ce,me,Le;while(!0){if(Ge=fA[fA.length-1],this.defaultActions[Ge])wA=this.defaultActions[Ge];else{if(Me===null||typeof Me>"u")Me=ue();wA=JA[Ge]&&JA[Ge][Me]}if(typeof wA>"u"||!wA.length||!wA[0]){var Lt="";Le=[];for(RA in JA[Ge])if(this.terminals_[RA]&&RA>zA)Le.push("'"+this.terminals_[RA]+"'");if(oe.showPosition)Lt="Parse error on line "+(ZA+1)+`:
`+oe.showPosition()+`
Expecting `+Le.join(", ")+", got '"+(this.terminals_[Me]||Me)+"'";else Lt="Parse error on line "+(ZA+1)+": Unexpected "+(Me==Ae?"end of input":"'"+(this.terminals_[Me]||Me)+"'");this.parseError(Lt,{text:oe.match,token:this.terminals_[Me]||Me,line:oe.yylineno,loc:MA,expected:Le})}if(wA[0]instanceof Array&&wA.length>1)throw Error("Parse Error: multiple actions possible at state: "+Ge+", token: "+Me);switch(wA[0]){case 1:if(fA.push(Me),mA.push(oe.yytext),rA.push(oe.yylloc),fA.push(wA[1]),Me=null,!je){if(WA=oe.yyleng,_A=oe.yytext,ZA=oe.yylineno,MA=oe.yylloc,te>0)te--}else Me=je,je=null;break;case 2:if(ce=this.productions_[wA[1]][1],de.$=mA[mA.length-ce],de._$={first_line:rA[rA.length-(ce||1)].first_line,last_line:rA[rA.length-1].last_line,first_column:rA[rA.length-(ce||1)].first_column,last_column:rA[rA.length-1].last_column},ke)de._$.range=[rA[rA.length-(ce||1)].range[0],rA[rA.length-1].range[1]];if(He=this.performAction.apply(de,[_A,WA,ZA,kA.yy,wA[1],mA,rA].concat($A)),typeof He<"u")return He;if(ce)fA=fA.slice(0,-1*ce*2),mA=mA.slice(0,-1*ce),rA=rA.slice(0,-1*ce);fA.push(this.productions_[wA[1]][0]),mA.push(de.$),rA.push(de._$),me=JA[fA[fA.length-2]][fA[fA.length-1]],fA.push(me);break;case 3:return!0}}return!0},"parse")},FA=function(){var dA={EOF:1,parseError:y(function(Z,fA){if(this.yy.parser)this.yy.parser.parseError(Z,fA);else throw Error(Z)},"parseError"),setInput:y(function(q,Z){if(this.yy=Z||this.yy||{},this._input=q,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var q=this._input[0];this.yytext+=q,this.yyleng++,this.offset++,this.match+=q,this.matched+=q;var Z=q.match(/(?:\r\n?|\n).*/g);if(Z)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),q},"input"),unput:y(function(q){var Z=q.length,fA=q.split(/(?:\r\n?|\n)/g);this._input=q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Z),this.offset-=Z;var j=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),fA.length-1)this.yylineno-=fA.length-1;var mA=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:fA?(fA.length===j.length?this.yylloc.first_column:0)+j[j.length-fA.length].length-fA[0].length:this.yylloc.first_column-Z},this.options.ranges)this.yylloc.range=[mA[0],mA[0]+this.yyleng-Z];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(q){this.unput(this.match.slice(q))},"less"),pastInput:y(function(){var q=this.matched.substr(0,this.matched.length-this.match.length);return(q.length>20?"...":"")+q.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var q=this.match;if(q.length<20)q+=this._input.substr(0,20-q.length);return(q.substr(0,20)+(q.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var q=this.pastInput(),Z=Array(q.length+1).join("-");return q+this.upcomingInput()+`
`+Z+"^"},"showPosition"),test_match:y(function(q,Z){var fA,j,mA;if(this.options.backtrack_lexer){if(mA={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)mA.yylloc.range=this.yylloc.range.slice(0)}if(j=q[0].match(/(?:\r\n?|\n).*/g),j)this.yylineno+=j.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:j?j[j.length-1].length-j[j.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+q[0].length},this.yytext+=q[0],this.match+=q[0],this.matches=q,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(q[0].length),this.matched+=q[0],fA=this.performAction.call(this,this.yy,this,Z,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(fA)return fA;else if(this._backtrack){for(var rA in mA)this[rA]=mA[rA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var q,Z,fA,j;if(!this._more)this.yytext="",this.match="";var mA=this._currentRules();for(var rA=0;rA<mA.length;rA++)if(fA=this._input.match(this.rules[mA[rA]]),fA&&(!Z||fA[0].length>Z[0].length)){if(Z=fA,j=rA,this.options.backtrack_lexer)if(q=this.test_match(fA,mA[rA]),q!==!1)return q;else if(this._backtrack){Z=!1;continue}else return!1;else if(!this.options.flex)break}if(Z){if(q=this.test_match(Z,mA[j]),q!==!1)return q;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var Z=this.next();if(Z)return Z;else return this.lex()},"lex"),begin:y(function(Z){this.conditionStack.push(Z)},"begin"),popState:y(function(){var Z=this.conditionStack.length-1;if(Z>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(Z){if(Z=this.conditionStack.length-1-Math.abs(Z||0),Z>=0)return this.conditionStack[Z];else return"INITIAL"},"topState"),pushState:y(function(Z){this.begin(Z)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(Z,fA,j,mA){var rA=mA;switch(j){case 0:return"title";case 1:return this.begin("acc_title"),9;break;case 2:return this.popState(),"acc_title_value";break;case 3:return this.begin("acc_descr"),11;break;case 4:return this.popState(),"acc_descr_value";break;case 5:this.begin("acc_descr_multiline");break;case 6:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:return 21;case 9:return 22;case 10:return 23;case 11:return 24;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:return 8;case 17:return 6;case 18:return 27;case 19:return 40;case 20:return 29;case 21:return 32;case 22:return 31;case 23:return 34;case 24:return 36;case 25:return 38;case 26:return 41;case 27:return 42;case 28:return 43;case 29:return 44;case 30:return 45;case 31:return 46;case 32:return 47;case 33:return 48;case 34:return 49;case 35:return 50;case 36:return 51;case 37:return 52;case 38:return 53;case 39:return 54;case 40:return 65;case 41:return 66;case 42:return 67;case 43:return 68;case 44:return 69;case 45:return 70;case 46:return 71;case 47:return 57;case 48:return 59;case 49:return this.begin("style"),77;break;case 50:return 75;case 51:return 81;case 52:return 88;case 53:return"PERCENT";case 54:return 86;case 55:return 84;case 56:break;case 57:this.begin("string");break;case 58:this.popState();break;case 59:return this.begin("style"),72;break;case 60:return this.begin("style"),74;break;case 61:return 61;case 62:return 64;case 63:return 63;case 64:this.begin("string");break;case 65:this.popState();break;case 66:return"qString";case 67:return fA.yytext=fA.yytext.trim(),89;break;case 68:return 75;case 69:return 80;case 70:return 76}},"anonymous"),rules:[/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::{3})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:style\b)/i,/^(?:\w+)/i,/^(?::)/i,/^(?:;)/i,/^(?:%)/i,/^(?:-)/i,/^(?:#)/i,/^(?: )/i,/^(?:["])/i,/^(?:\n)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^:,\r\n\{\<\>\-\=]*)/i,/^(?:\w+)/i,/^(?:[0-9]+)/i,/^(?:,)/i],conditions:{acc_descr_multiline:{rules:[6,7,68,69,70],inclusive:!1},acc_descr:{rules:[4,68,69,70],inclusive:!1},acc_title:{rules:[2,68,69,70],inclusive:!1},style:{rules:[50,51,52,53,54,55,56,57,58,68,69,70],inclusive:!1},unqString:{rules:[68,69,70],inclusive:!1},token:{rules:[68,69,70],inclusive:!1},string:{rules:[65,66,68,69,70],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,59,60,61,62,63,64,67,68,69,70],inclusive:!0}}};return dA}();vA.lexer=FA;function HA(){this.yy={}}return y(HA,"Parser"),HA.prototype=vA,vA.Parser=HA,new HA}();uCA.parser=uCA;dRt=uCA,IRt=class{constructor(){this.relations=[],this.latestRequirement=this.getInitialRequirement(),this.requirements=new Map,this.latestElement=this.getInitialElement(),this.elements=new Map,this.classes=new Map,this.direction="TB",this.RequirementType={REQUIREMENT:"Requirement",FUNCTIONAL_REQUIREMENT:"Functional Requirement",INTERFACE_REQUIREMENT:"Interface Requirement",PERFORMANCE_REQUIREMENT:"Performance Requirement",PHYSICAL_REQUIREMENT:"Physical Requirement",DESIGN_CONSTRAINT:"Design Constraint"},this.RiskLevel={LOW_RISK:"Low",MED_RISK:"Medium",HIGH_RISK:"High"},this.VerifyType={VERIFY_ANALYSIS:"Analysis",VERIFY_DEMONSTRATION:"Demonstration",VERIFY_INSPECTION:"Inspection",VERIFY_TEST:"Test"},this.Relationships={CONTAINS:"contains",COPIES:"copies",DERIVES:"derives",SATISFIES:"satisfies",VERIFIES:"verifies",REFINES:"refines",TRACES:"traces"},this.setAccTitle=Dr,this.getAccTitle=kr,this.setAccDescription=Fr,this.getAccDescription=xr,this.setDiagramTitle=Tr,this.getDiagramTitle=Sr,this.getConfig=y(()=>OA().requirement,"getConfig"),this.clear(),this.setDirection=this.setDirection.bind(this),this.addRequirement=this.addRequirement.bind(this),this.setNewReqId=this.setNewReqId.bind(this),this.setNewReqRisk=this.setNewReqRisk.bind(this),this.setNewReqText=this.setNewReqText.bind(this),this.setNewReqVerifyMethod=this.setNewReqVerifyMethod.bind(this),this.addElement=this.addElement.bind(this),this.setNewElementType=this.setNewElementType.bind(this),this.setNewElementDocRef=this.setNewElementDocRef.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setCssStyle=this.setCssStyle.bind(this),this.setClass=this.setClass.bind(this),this.defineClass=this.defineClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{y(this,"RequirementDB")}getDirection(){return this.direction}setDirection(A){this.direction=A}resetLatestRequirement(){this.latestRequirement=this.getInitialRequirement()}resetLatestElement(){this.latestElement=this.getInitialElement()}getInitialRequirement(){return{requirementId:"",text:"",risk:"",verifyMethod:"",name:"",type:"",cssStyles:[],classes:["default"]}}getInitialElement(){return{name:"",type:"",docRef:"",cssStyles:[],classes:["default"]}}addRequirement(A,e){if(!this.requirements.has(A))this.requirements.set(A,{name:A,type:e,requirementId:this.latestRequirement.requirementId,text:this.latestRequirement.text,risk:this.latestRequirement.risk,verifyMethod:this.latestRequirement.verifyMethod,cssStyles:[],classes:["default"]});return this.resetLatestRequirement(),this.requirements.get(A)}getRequirements(){return this.requirements}setNewReqId(A){if(this.latestRequirement!==void 0)this.latestRequirement.requirementId=A}setNewReqText(A){if(this.latestRequirement!==void 0)this.latestRequirement.text=A}setNewReqRisk(A){if(this.latestRequirement!==void 0)this.latestRequirement.risk=A}setNewReqVerifyMethod(A){if(this.latestRequirement!==void 0)this.latestRequirement.verifyMethod=A}addElement(A){if(!this.elements.has(A))this.elements.set(A,{name:A,type:this.latestElement.type,docRef:this.latestElement.docRef,cssStyles:[],classes:["default"]}),sA.info("Added new element: ",A);return this.resetLatestElement(),this.elements.get(A)}getElements(){return this.elements}setNewElementType(A){if(this.latestElement!==void 0)this.latestElement.type=A}setNewElementDocRef(A){if(this.latestElement!==void 0)this.latestElement.docRef=A}addRelationship(A,e,t){this.relations.push({type:A,src:e,dst:t})}getRelationships(){return this.relations}clear(){this.relations=[],this.resetLatestRequirement(),this.requirements=new Map,this.resetLatestElement(),this.elements=new Map,this.classes=new Map,cr()}setCssStyle(A,e){for(let t of A){let r=this.requirements.get(t)??this.elements.get(t);if(!e||!r)return;for(let i of e)if(i.includes(","))r.cssStyles.push(...i.split(","));else r.cssStyles.push(i)}}setClass(A,e){for(let t of A){let r=this.requirements.get(t)??this.elements.get(t);if(r)for(let i of e){r.classes.push(i);let u=this.classes.get(i)?.styles;if(u)r.cssStyles.push(...u)}}}defineClass(A,e){for(let t of A){let r=this.classes.get(t);if(r===void 0)r={id:t,styles:[],textStyles:[]},this.classes.set(t,r);if(e)e.forEach(function(i){if(/color/.exec(i)){let u=i.replace("fill","bgFill");r.textStyles.push(u)}r.styles.push(i)});this.requirements.forEach((i)=>{if(i.classes.includes(t))i.cssStyles.push(...e.flatMap((u)=>u.split(",")))}),this.elements.forEach((i)=>{if(i.classes.includes(t))i.cssStyles.push(...e.flatMap((u)=>u.split(",")))})}}getClasses(){return this.classes}getData(){let A=OA(),e=[],t=[];for(let r of this.requirements.values()){let i=r;i.id=r.name,i.cssStyles=r.cssStyles,i.cssClasses=r.classes.join(" "),i.shape="requirementBox",i.look=A.look,i.colorIndex=e.length,e.push(i)}for(let r of this.elements.values()){let i=r;i.shape="requirementBox",i.look=A.look,i.id=r.name,i.cssStyles=r.cssStyles,i.cssClasses=r.classes.join(" "),i.colorIndex=e.length,e.push(i)}for(let r of this.relations){let i=0,u=r.type===this.Relationships.CONTAINS,a={id:`${r.src}-${r.dst}-${i}`,start:this.requirements.get(r.src)?.name??this.elements.get(r.src)?.name,end:this.requirements.get(r.dst)?.name??this.elements.get(r.dst)?.name,label:`&lt;&lt;${r.type}&gt;&gt;`,classes:"relationshipLine",style:["fill:none",u?"":"stroke-dasharray: 10,7"],labelpos:"c",thickness:"normal",type:"normal",pattern:u?"normal":"dashed",arrowTypeStart:u?"requirement_contains":"",arrowTypeEnd:u?"":"requirement_arrow",look:A.look,labelType:"markdown"};t.push(a),i++}return{nodes:e,edges:t,other:{},config:A,direction:this.getDirection()}}},hRt=y((A)=>{let e=ot(),{themeVariables:t,look:r}=e,{bkgColorArray:i,borderColorArray:u}=t;if(!u?.length)return"";let a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++)a+=`
[data-look="${r}"][data-color-id="color-${n}"].node path {
stroke: ${u[n]};
fill: ${i?.length?i[n]:""};
}
[data-look="${r}"][data-color-id="color-${n}"].node rect {
stroke: ${u[n]};
fill: ${i?.length?i[n]:""};
}
`;return a},"genColor"),QRt=y((A)=>{let e=ot(),{look:t,themeVariables:r}=e,{requirementEdgeLabelBackground:i}=r;return`
${hRt(A)}
marker {
fill: ${A.relationColor};
stroke: ${A.relationColor};
}
marker.cross {
stroke: ${A.lineColor};
}
svg {
font-family: ${A.fontFamily};
font-size: ${A.fontSize};
}
.reqBox {
fill: ${A.requirementBackground};
fill-opacity: 1.0;
stroke: ${A.requirementBorderColor};
stroke-width: ${A.requirementBorderSize};
}
.reqTitle, .reqLabel{
fill: ${A.requirementTextColor};
}
.reqLabelBox {
fill: ${A.relationLabelBackground};
fill-opacity: 1.0;
}
.req-title-line {
stroke: ${A.requirementBorderColor};
stroke-width: ${A.requirementBorderSize};
}
.relationshipLine {
stroke: ${A.relationColor};
stroke-width: ${t==="neo"?A.strokeWidth:"1px"};
}
.relationshipLabel {
fill: ${A.relationLabelColor};
}
.edgeLabel {
background-color: ${A.edgeLabelBackground};
}
.edgeLabel .label rect {
fill: ${A.edgeLabelBackground};
}
.edgeLabel .label text {
fill: ${A.relationLabelColor};
}
.divider {
stroke: ${A.nodeBorder};
stroke-width: 1;
}
.label {
font-family: ${A.fontFamily};
color: ${A.nodeTextColor||A.textColor};
}
.label text,span {
fill: ${A.nodeTextColor||A.textColor};
color: ${A.nodeTextColor||A.textColor};
}
.labelBkg {
background-color: ${i??A.edgeLabelBackground};
}
`},"getStyles"),pRt=QRt,Qie={};Vh(Qie,{draw:()=>fRt});fRt=y(async function(A,e,t,r){sA.info("REF0:"),sA.info("Drawing requirement diagram (unified)",e);let{securityLevel:i,state:u,layout:a,look:n}=OA(),o=r.db.getData(),s=gc(e,i);o.type=r.type,o.layoutAlgorithm=yE(a),o.nodeSpacing=u?.nodeSpacing??50,o.rankSpacing=u?.rankSpacing??50,o.markers=n==="neo"?["requirement_contains_neo","requirement_arrow_neo"]:["requirement_contains","requirement_arrow"],o.diagramId=e,await ac(o,s);let l=8;Jt.insertTitle(s,"requirementDiagramTitleText",u?.titleTopMargin??25,r.db.getDiagramTitle()),Il(s,l,"requirementDiagram",u?.useMaxWidth??!0)},"draw"),pie={parser:dRt,get db(){return new IRt},renderer:Qie,styles:pRt}});async function kie(A,e){ze.bumpVerticalPos(10);let{startx:t,stopx:r,message:i}=e,u=_e.splitBreaks(i).length,a=da(i),n=a?await lD(i,OA()):Jt.calculateTextDimensions(i,gm(ne));if(!a){let g=n.height/u;e.height+=g,ze.bumpVerticalPos(g)}let o,s=n.height-10,l=n.width;if(t===r){if(o=ze.getVerticalPos()+s,!ne.rightAngles)s+=ne.boxMargin,o=ze.getVerticalPos()+s;s+=30;let g=_e.getMax(l/2,ne.width/2);ze.insert(t-g,ze.getVerticalPos()-10+s,r+g,ze.getVerticalPos()+30+s)}else s+=ne.boxMargin,o=ze.getVerticalPos()+s,ze.insert(t,o-10,r,o);return ze.bumpVerticalPos(s),e.height+=s,e.stopy=e.starty+e.height,ze.insert(e.fromBounds,e.starty,e.toBounds,e.stopy),o}function GC(A,e,t,r,i){ze.bumpVerticalPos(t);let u=r;if(e.id&&e.message&&A[e.id]){let a=A[e.id].width,n=gm(ne);e.message=Jt.wrapLabel(`[${e.message}]`,a-2*ne.wrapPadding,n),e.width=a,e.wrap=!0;let o=Jt.calculateTextDimensions(e.message,n),s=_e.getMax(o.height,ne.labelBoxHeight);u=r+s,sA.debug(`${s} - ${e.message}`)}i(e),ze.bumpVerticalPos(u)}function Sie(A,e,t,r,i,u,a){function n(l,g){if(l.x<i.get(A.from).x)ze.insert(e.stopx-g,e.starty,e.startx,e.stopy+l.height/2+ne.noteMargin),e.stopx=e.stopx+g;else ze.insert(e.startx,e.starty,e.stopx+g,e.stopy+l.height/2+ne.noteMargin),e.stopx=e.stopx-g}y(n,"receiverAdjustment");function o(l,g){if(l.x<i.get(A.to).x)ze.insert(e.startx-g,e.starty,e.stopx,e.stopy+l.height/2+ne.noteMargin),e.startx=e.startx+g;else ze.insert(e.stopx,e.starty,e.startx+g,e.stopy+l.height/2+ne.noteMargin),e.startx=e.startx-g}y(o,"senderAdjustment");let s=[dO.ACTOR,dO.CONTROL,dO.ENTITY,dO.DATABASE];if(u.get(A.to)==r){let l=i.get(A.to),g=s.includes(l.type)?sm/2+3:l.width/2+3;n(l,g),l.starty=t-l.height/2,ze.bumpVerticalPos(l.height/2)}else if(a.get(A.from)==r){let l=i.get(A.from);if(ne.mirrorActors){let g=s.includes(l.type)?sm/2:l.width/2;o(l,g)}l.stopy=t-l.height/2,ze.bumpVerticalPos(l.height/2)}else if(a.get(A.to)==r){let l=i.get(A.to);if(ne.mirrorActors){let g=s.includes(l.type)?sm/2+3:l.width/2+3;n(l,g)}l.stopy=t-l.height/2,ze.bumpVerticalPos(l.height/2)}}async function Lie(A,e,t){let r={};for(let i of e)if(A.get(i.to)&&A.get(i.from)){let u=A.get(i.to);if(i.placement===t.db.PLACEMENT.LEFTOF&&!u.prevActor)continue;if(i.placement===t.db.PLACEMENT.RIGHTOF&&!u.nextActor)continue;let a=i.placement!==void 0,n=!a,o=a?B6(ne):gm(ne),s=i.wrap?Jt.wrapLabel(i.message,ne.width-2*ne.wrapPadding,o):i.message,g=(da(s)?await lD(i.message,OA()):Jt.calculateTextDimensions(s,o)).width+2*ne.wrapPadding;if(n&&i.from===u.nextActor)r[i.to]=_e.getMax(r[i.to]||0,g);else if(n&&i.from===u.prevActor)r[i.from]=_e.getMax(r[i.from]||0,g);else if(n&&i.from===i.to)r[i.from]=_e.getMax(r[i.from]||0,g/2),r[i.to]=_e.getMax(r[i.to]||0,g/2);else if(i.placement===t.db.PLACEMENT.RIGHTOF)r[i.from]=_e.getMax(r[i.from]||0,g);else if(i.placement===t.db.PLACEMENT.LEFTOF)r[u.prevActor]=_e.getMax(r[u.prevActor]||0,g);else if(i.placement===t.db.PLACEMENT.OVER){if(u.prevActor)r[u.prevActor]=_e.getMax(r[u.prevActor]||0,g/2);if(u.nextActor)r[i.from]=_e.getMax(r[i.from]||0,g/2)}}return sA.debug("maxMessageWidthPerActor:",r),r}async function Rie(A,e,t){let r=0;for(let u of A.keys()){let a=A.get(u);if(a.wrap)a.description=Jt.wrapLabel(a.description,ne.width-2*ne.wrapPadding,oCA(ne));let n=da(a.description)?await lD(a.description,OA()):Jt.calculateTextDimensions(a.description,oCA(ne));a.width=a.wrap?ne.width:_e.getMax(ne.width,n.width+2*ne.wrapPadding),a.height=a.wrap?_e.getMax(n.height,ne.height):ne.height,r=_e.getMax(r,a.height)}for(let u in e){let a=A.get(u);if(!a)continue;let n=A.get(a.nextActor);if(!n){let g=e[u]+ne.actorMargin-a.width/2;a.margin=_e.getMax(g,ne.actorMargin);continue}let s=e[u]+ne.actorMargin-a.width/2-n.width/2;a.margin=_e.getMax(s,ne.actorMargin)}let i=0;return t.forEach((u)=>{let a=gm(ne),n=u.actorKeys.reduce((g,C)=>g+=A.get(C).width+(A.get(C).margin||0),0),o=ne.boxMargin*8;if(n+=o,n-=2*ne.boxTextMargin,u.wrap)u.name=Jt.wrapLabel(u.name,n-2*ne.wrapPadding,a);let s=Jt.calculateTextDimensions(u.name,a);i=_e.getMax(s.height,i);let l=_e.getMax(n,s.width+2*ne.wrapPadding);if(u.margin=ne.boxTextMargin,n<l){let g=(l-n)/2;u.margin+=g}}),t.forEach((u)=>u.textMaxHeight=i),_e.getMax(r,ne.height)}var lCA,nCA,mRt,DRt,yRt,wRt,dO,bRt,vRt,kRt,sm=36,e1="actor-top",t1="actor-bottom",hO="actor-box",lm="actor-man",oh,$x,FRt,QO,IO,E6,yie,Ei=-1,wie,xRt,SRt,LRt,RRt,NRt,GRt,URt,MRt,TRt,YRt,HRt,KRt,JRt,bie,ORt,PRt,_Rt,WRt,qRt,zRt,ZRt,VRt,vie,jRt,sh,XRt,$Rt,ANt,eNt,tNt,zu,ne,ze,rNt,mie,gm,B6,oCA,iNt,uNt,sCA,Fie,xie,pO,Die,aNt,nNt,oNt,sNt=4,lNt=6,aCA,gNt,Nie,cNt,CNt,BNt,ENt,Gie;var Uie=_(()=>{wY();of();lg();ai();rr();ir();Nt();Pr();lCA=yu(JD(),1),nCA=function(){var A=y(function(WA,te,zA,Ae){for(zA=zA||{},Ae=WA.length;Ae--;zA[WA[Ae]]=te);return zA},"o"),e=[1,2],t=[1,3],r=[1,4],i=[2,4],u=[1,9],a=[1,11],n=[1,12],o=[1,14],s=[1,15],l=[1,17],g=[1,18],C=[1,19],B=[1,25],E=[1,26],d=[1,27],I=[1,28],h=[1,29],Q=[1,30],p=[1,31],m=[1,32],f=[1,33],D=[1,34],w=[1,35],b=[1,36],k=[1,37],v=[1,38],S=[1,39],x=[1,40],F=[1,42],T=[1,43],R=[1,44],L=[1,45],M=[1,46],U=[1,47],Y=[1,4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,48,49,50,51,53,54,56,61,62,63,64,73],H=[1,74],J=[1,80],K=[1,81],O=[1,82],P=[1,83],z=[1,84],AA=[1,85],W=[1,86],CA=[1,87],tA=[1,88],lA=[1,89],gA=[1,90],aA=[1,91],NA=[1,92],DA=[1,93],KA=[1,94],TA=[1,95],qA=[1,96],IA=[1,97],bA=[1,98],SA=[1,99],EA=[1,100],nA=[1,101],eA=[1,102],BA=[1,103],yA=[1,104],vA=[1,105],FA=[2,78],HA=[4,5,17,51,53,54],dA=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,51,53,54,56,61,62,63,64,73],q=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,50,51,53,54,56,61,62,63,64,73],Z=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,49,51,53,54,56,61,62,63,64,73],fA=[4,5,10,14,15,17,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,48,51,53,54,56,61,62,63,64,73],j=[5,52],mA=[70,71,72,73],rA=[1,151],JA={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,SD:6,document:7,line:8,statement:9,INVALID:10,box_section:11,box_line:12,participant_statement:13,create:14,box:15,restOfLine:16,end:17,signal:18,autonumber:19,NUM:20,off:21,activate:22,actor:23,deactivate:24,note_statement:25,links_statement:26,link_statement:27,properties_statement:28,details_statement:29,title:30,legacy_title:31,acc_title:32,acc_title_value:33,acc_descr:34,acc_descr_value:35,acc_descr_multiline_value:36,loop:37,rect:38,opt:39,alt:40,else_sections:41,par:42,par_sections:43,par_over:44,critical:45,option_sections:46,break:47,option:48,and:49,else:50,participant:51,AS:52,participant_actor:53,destroy:54,actor_with_config:55,note:56,placement:57,text2:58,over:59,actor_pair:60,links:61,link:62,properties:63,details:64,spaceList:65,",":66,left_of:67,right_of:68,signaltype:69,"+":70,"-":71,"()":72,ACTOR:73,config_object:74,CONFIG_START:75,CONFIG_CONTENT:76,CONFIG_END:77,SOLID_OPEN_ARROW:78,DOTTED_OPEN_ARROW:79,SOLID_ARROW:80,SOLID_ARROW_TOP:81,SOLID_ARROW_BOTTOM:82,STICK_ARROW_TOP:83,STICK_ARROW_BOTTOM:84,SOLID_ARROW_TOP_DOTTED:85,SOLID_ARROW_BOTTOM_DOTTED:86,STICK_ARROW_TOP_DOTTED:87,STICK_ARROW_BOTTOM_DOTTED:88,SOLID_ARROW_TOP_REVERSE:89,SOLID_ARROW_BOTTOM_REVERSE:90,STICK_ARROW_TOP_REVERSE:91,STICK_ARROW_BOTTOM_REVERSE:92,SOLID_ARROW_TOP_REVERSE_DOTTED:93,SOLID_ARROW_BOTTOM_REVERSE_DOTTED:94,STICK_ARROW_TOP_REVERSE_DOTTED:95,STICK_ARROW_BOTTOM_REVERSE_DOTTED:96,BIDIRECTIONAL_SOLID_ARROW:97,DOTTED_ARROW:98,BIDIRECTIONAL_DOTTED_ARROW:99,SOLID_CROSS:100,DOTTED_CROSS:101,SOLID_POINT:102,DOTTED_POINT:103,TXT:104,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",6:"SD",10:"INVALID",14:"create",15:"box",16:"restOfLine",17:"end",19:"autonumber",20:"NUM",21:"off",22:"activate",24:"deactivate",30:"title",31:"legacy_title",32:"acc_title",33:"acc_title_value",34:"acc_descr",35:"acc_descr_value",36:"acc_descr_multiline_value",37:"loop",38:"rect",39:"opt",40:"alt",42:"par",44:"par_over",45:"critical",47:"break",48:"option",49:"and",50:"else",51:"participant",52:"AS",53:"participant_actor",54:"destroy",56:"note",59:"over",61:"links",62:"link",63:"properties",64:"details",66:",",67:"left_of",68:"right_of",70:"+",71:"-",72:"()",73:"ACTOR",75:"CONFIG_START",76:"CONFIG_CONTENT",77:"CONFIG_END",78:"SOLID_OPEN_ARROW",79:"DOTTED_OPEN_ARROW",80:"SOLID_ARROW",81:"SOLID_ARROW_TOP",82:"SOLID_ARROW_BOTTOM",83:"STICK_ARROW_TOP",84:"STICK_ARROW_BOTTOM",85:"SOLID_ARROW_TOP_DOTTED",86:"SOLID_ARROW_BOTTOM_DOTTED",87:"STICK_ARROW_TOP_DOTTED",88:"STICK_ARROW_BOTTOM_DOTTED",89:"SOLID_ARROW_TOP_REVERSE",90:"SOLID_ARROW_BOTTOM_REVERSE",91:"STICK_ARROW_TOP_REVERSE",92:"STICK_ARROW_BOTTOM_REVERSE",93:"SOLID_ARROW_TOP_REVERSE_DOTTED",94:"SOLID_ARROW_BOTTOM_REVERSE_DOTTED",95:"STICK_ARROW_TOP_REVERSE_DOTTED",96:"STICK_ARROW_BOTTOM_REVERSE_DOTTED",97:"BIDIRECTIONAL_SOLID_ARROW",98:"DOTTED_ARROW",99:"BIDIRECTIONAL_DOTTED_ARROW",100:"SOLID_CROSS",101:"DOTTED_CROSS",102:"SOLID_POINT",103:"DOTTED_POINT",104:"TXT"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[8,1],[11,0],[11,2],[12,2],[12,1],[12,1],[9,1],[9,2],[9,4],[9,2],[9,4],[9,3],[9,3],[9,2],[9,3],[9,3],[9,2],[9,2],[9,2],[9,2],[9,2],[9,1],[9,1],[9,2],[9,2],[9,1],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[9,4],[46,1],[46,4],[43,1],[43,4],[41,1],[41,4],[13,5],[13,3],[13,5],[13,3],[13,3],[13,5],[13,3],[13,5],[13,3],[25,4],[25,4],[26,3],[27,3],[28,3],[29,3],[65,2],[65,1],[60,3],[60,1],[57,1],[57,1],[18,5],[18,5],[18,5],[18,5],[18,6],[18,4],[55,2],[74,3],[23,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[69,1],[58,1]],performAction:y(function(te,zA,Ae,$A,oe,kA,Pe){var MA=kA.length-1;switch(oe){case 3:return $A.apply(kA[MA]),kA[MA];break;case 4:case 10:this.$=[];break;case 5:case 11:kA[MA-1].push(kA[MA]),this.$=kA[MA-1];break;case 6:case 7:case 12:case 13:this.$=kA[MA];break;case 8:case 9:case 14:this.$=[];break;case 16:kA[MA].type="createParticipant",this.$=kA[MA];break;case 17:kA[MA-1].unshift({type:"boxStart",boxData:$A.parseBoxData(kA[MA-2])}),kA[MA-1].push({type:"boxEnd",boxText:kA[MA-2]}),this.$=kA[MA-1];break;case 19:this.$={type:"sequenceIndex",sequenceIndex:Number(kA[MA-2]),sequenceIndexStep:Number(kA[MA-1]),sequenceVisible:!0,signalType:$A.LINETYPE.AUTONUMBER};break;case 20:this.$={type:"sequenceIndex",sequenceIndex:Number(kA[MA-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:$A.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:$A.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:$A.LINETYPE.AUTONUMBER};break;case 23:this.$={type:"activeStart",signalType:$A.LINETYPE.ACTIVE_START,actor:kA[MA-1].actor};break;case 24:this.$={type:"activeEnd",signalType:$A.LINETYPE.ACTIVE_END,actor:kA[MA-1].actor};break;case 30:$A.setDiagramTitle(kA[MA].substring(6)),this.$=kA[MA].substring(6);break;case 31:$A.setDiagramTitle(kA[MA].substring(7)),this.$=kA[MA].substring(7);break;case 32:this.$=kA[MA].trim(),$A.setAccTitle(this.$);break;case 33:case 34:this.$=kA[MA].trim(),$A.setAccDescription(this.$);break;case 35:kA[MA-1].unshift({type:"loopStart",loopText:$A.parseMessage(kA[MA-2]),signalType:$A.LINETYPE.LOOP_START}),kA[MA-1].push({type:"loopEnd",loopText:kA[MA-2],signalType:$A.LINETYPE.LOOP_END}),this.$=kA[MA-1];break;case 36:kA[MA-1].unshift({type:"rectStart",color:$A.parseMessage(kA[MA-2]),signalType:$A.LINETYPE.RECT_START}),kA[MA-1].push({type:"rectEnd",color:$A.parseMessage(kA[MA-2]),signalType:$A.LINETYPE.RECT_END}),this.$=kA[MA-1];break;case 37:kA[MA-1].unshift({type:"optStart",optText:$A.parseMessage(kA[MA-2]),signalType:$A.LINETYPE.OPT_START}),kA[MA-1].push({type:"optEnd",optText:$A.parseMessage(kA[MA-2]),signalType:$A.LINETYPE.OPT_END}),this.$=kA[MA-1];break;case 38:kA[MA-1].unshift({type:"altStart",altText:$A.parseMessage(kA[MA-2]),signalType:$A.LINETYPE.ALT_START}),kA[MA-1].push({type:"altEnd",signalType:$A.LINETYPE.ALT_END}),this.$=kA[MA-1];break;case 39:kA[MA-1].unshift({type:"parStart",parText:$A.parseMessage(kA[MA-2]),signalType:$A.LINETYPE.PAR_START}),kA[MA-1].push({type:"parEnd",signalType:$A.LINETYPE.PAR_END}),this.$=kA[MA-1];break;case 40:kA[MA-1].unshift({type:"parStart",parText:$A.parseMessage(kA[MA-2]),signalType:$A.LINETYPE.PAR_OVER_START}),kA[MA-1].push({type:"parEnd",signalType:$A.LINETYPE.PAR_END}),this.$=kA[MA-1];break;case 41:kA[MA-1].unshift({type:"criticalStart",criticalText:$A.parseMessage(kA[MA-2]),signalType:$A.LINETYPE.CRITICAL_START}),kA[MA-1].push({type:"criticalEnd",signalType:$A.LINETYPE.CRITICAL_END}),this.$=kA[MA-1];break;case 42:kA[MA-1].unshift({type:"breakStart",breakText:$A.parseMessage(kA[MA-2]),signalType:$A.LINETYPE.BREAK_START}),kA[MA-1].push({type:"breakEnd",optText:$A.parseMessage(kA[MA-2]),signalType:$A.LINETYPE.BREAK_END}),this.$=kA[MA-1];break;case 44:this.$=kA[MA-3].concat([{type:"option",optionText:$A.parseMessage(kA[MA-1]),signalType:$A.LINETYPE.CRITICAL_OPTION},kA[MA]]);break;case 46:this.$=kA[MA-3].concat([{type:"and",parText:$A.parseMessage(kA[MA-1]),signalType:$A.LINETYPE.PAR_AND},kA[MA]]);break;case 48:this.$=kA[MA-3].concat([{type:"else",altText:$A.parseMessage(kA[MA-1]),signalType:$A.LINETYPE.ALT_ELSE},kA[MA]]);break;case 49:kA[MA-3].draw="participant",kA[MA-3].type="addParticipant",kA[MA-3].description=$A.parseMessage(kA[MA-1]),this.$=kA[MA-3];break;case 50:kA[MA-1].draw="participant",kA[MA-1].type="addParticipant",this.$=kA[MA-1];break;case 51:kA[MA-3].draw="actor",kA[MA-3].type="addParticipant",kA[MA-3].description=$A.parseMessage(kA[MA-1]),this.$=kA[MA-3];break;case 52:case 57:kA[MA-1].draw="actor",kA[MA-1].type="addParticipant",this.$=kA[MA-1];break;case 53:kA[MA-1].type="destroyParticipant",this.$=kA[MA-1];break;case 54:kA[MA-3].draw="participant",kA[MA-3].type="addParticipant",kA[MA-3].description=$A.parseMessage(kA[MA-1]),this.$=kA[MA-3];break;case 55:kA[MA-1].draw="participant",kA[MA-1].type="addParticipant",this.$=kA[MA-1];break;case 56:kA[MA-3].draw="actor",kA[MA-3].type="addParticipant",kA[MA-3].description=$A.parseMessage(kA[MA-1]),this.$=kA[MA-3];break;case 58:this.$=[kA[MA-1],{type:"addNote",placement:kA[MA-2],actor:kA[MA-1].actor,text:kA[MA]}];break;case 59:kA[MA-2]=[].concat(kA[MA-1],kA[MA-1]).slice(0,2),kA[MA-2][0]=kA[MA-2][0].actor,kA[MA-2][1]=kA[MA-2][1].actor,this.$=[kA[MA-1],{type:"addNote",placement:$A.PLACEMENT.OVER,actor:kA[MA-2].slice(0,2),text:kA[MA]}];break;case 60:this.$=[kA[MA-1],{type:"addLinks",actor:kA[MA-1].actor,text:kA[MA]}];break;case 61:this.$=[kA[MA-1],{type:"addALink",actor:kA[MA-1].actor,text:kA[MA]}];break;case 62:this.$=[kA[MA-1],{type:"addProperties",actor:kA[MA-1].actor,text:kA[MA]}];break;case 63:this.$=[kA[MA-1],{type:"addDetails",actor:kA[MA-1].actor,text:kA[MA]}];break;case 66:this.$=[kA[MA-2],kA[MA]];break;case 67:this.$=kA[MA];break;case 68:this.$=$A.PLACEMENT.LEFTOF;break;case 69:this.$=$A.PLACEMENT.RIGHTOF;break;case 70:this.$=[kA[MA-4],kA[MA-1],{type:"addMessage",from:kA[MA-4].actor,to:kA[MA-1].actor,signalType:kA[MA-3],msg:kA[MA],activate:!0},{type:"activeStart",signalType:$A.LINETYPE.ACTIVE_START,actor:kA[MA-1].actor}];break;case 71:this.$=[kA[MA-4],kA[MA-1],{type:"addMessage",from:kA[MA-4].actor,to:kA[MA-1].actor,signalType:kA[MA-3],msg:kA[MA]},{type:"activeEnd",signalType:$A.LINETYPE.ACTIVE_END,actor:kA[MA-4].actor}];break;case 72:this.$=[kA[MA-4],kA[MA-1],{type:"addMessage",from:kA[MA-4].actor,to:kA[MA-1].actor,signalType:kA[MA-3],msg:kA[MA],activate:!0,centralConnection:$A.LINETYPE.CENTRAL_CONNECTION},{type:"centralConnection",signalType:$A.LINETYPE.CENTRAL_CONNECTION,actor:kA[MA-1].actor}];break;case 73:this.$=[kA[MA-4],kA[MA-1],{type:"addMessage",from:kA[MA-4].actor,to:kA[MA-1].actor,signalType:kA[MA-2],msg:kA[MA],activate:!1,centralConnection:$A.LINETYPE.CENTRAL_CONNECTION_REVERSE},{type:"centralConnectionReverse",signalType:$A.LINETYPE.CENTRAL_CONNECTION_REVERSE,actor:kA[MA-4].actor}];break;case 74:this.$=[kA[MA-5],kA[MA-1],{type:"addMessage",from:kA[MA-5].actor,to:kA[MA-1].actor,signalType:kA[MA-3],msg:kA[MA],activate:!0,centralConnection:$A.LINETYPE.CENTRAL_CONNECTION_DUAL},{type:"centralConnection",signalType:$A.LINETYPE.CENTRAL_CONNECTION,actor:kA[MA-1].actor},{type:"centralConnectionReverse",signalType:$A.LINETYPE.CENTRAL_CONNECTION_REVERSE,actor:kA[MA-5].actor}];break;case 75:this.$=[kA[MA-3],kA[MA-1],{type:"addMessage",from:kA[MA-3].actor,to:kA[MA-1].actor,signalType:kA[MA-2],msg:kA[MA]}];break;case 76:this.$={type:"addParticipant",actor:kA[MA-1],config:kA[MA]};break;case 77:this.$=kA[MA-1].trim();break;case 78:this.$={type:"addParticipant",actor:kA[MA]};break;case 79:this.$=$A.LINETYPE.SOLID_OPEN;break;case 80:this.$=$A.LINETYPE.DOTTED_OPEN;break;case 81:this.$=$A.LINETYPE.SOLID;break;case 82:this.$=$A.LINETYPE.SOLID_TOP;break;case 83:this.$=$A.LINETYPE.SOLID_BOTTOM;break;case 84:this.$=$A.LINETYPE.STICK_TOP;break;case 85:this.$=$A.LINETYPE.STICK_BOTTOM;break;case 86:this.$=$A.LINETYPE.SOLID_TOP_DOTTED;break;case 87:this.$=$A.LINETYPE.SOLID_BOTTOM_DOTTED;break;case 88:this.$=$A.LINETYPE.STICK_TOP_DOTTED;break;case 89:this.$=$A.LINETYPE.STICK_BOTTOM_DOTTED;break;case 90:this.$=$A.LINETYPE.SOLID_ARROW_TOP_REVERSE;break;case 91:this.$=$A.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE;break;case 92:this.$=$A.LINETYPE.STICK_ARROW_TOP_REVERSE;break;case 93:this.$=$A.LINETYPE.STICK_ARROW_BOTTOM_REVERSE;break;case 94:this.$=$A.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED;break;case 95:this.$=$A.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED;break;case 96:this.$=$A.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED;break;case 97:this.$=$A.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED;break;case 98:this.$=$A.LINETYPE.BIDIRECTIONAL_SOLID;break;case 99:this.$=$A.LINETYPE.DOTTED;break;case 100:this.$=$A.LINETYPE.BIDIRECTIONAL_DOTTED;break;case 101:this.$=$A.LINETYPE.SOLID_CROSS;break;case 102:this.$=$A.LINETYPE.DOTTED_CROSS;break;case 103:this.$=$A.LINETYPE.SOLID_POINT;break;case 104:this.$=$A.LINETYPE.DOTTED_POINT;break;case 105:this.$=$A.parseMessage(kA[MA].trim().substring(1));break}},"anonymous"),table:[{3:1,4:e,5:t,6:r},{1:[3]},{3:5,4:e,5:t,6:r},{3:6,4:e,5:t,6:r},A([1,4,5,10,14,15,19,22,24,30,31,32,34,36,37,38,39,40,42,44,45,47,51,53,54,56,61,62,63,64,73],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:k,51:v,53:S,54:x,56:F,61:T,62:R,63:L,64:M,73:U},A(Y,[2,5]),{9:48,13:13,14:o,15:s,18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:k,51:v,53:S,54:x,56:F,61:T,62:R,63:L,64:M,73:U},A(Y,[2,7]),A(Y,[2,8]),A(Y,[2,9]),A(Y,[2,15]),{13:49,51:v,53:S,54:x},{16:[1,50]},{5:[1,51]},{5:[1,54],20:[1,52],21:[1,53]},{23:55,73:U},{23:56,73:U},{5:[1,57]},{5:[1,58]},{5:[1,59]},{5:[1,60]},{5:[1,61]},A(Y,[2,30]),A(Y,[2,31]),{33:[1,62]},{35:[1,63]},A(Y,[2,34]),{16:[1,64]},{16:[1,65]},{16:[1,66]},{16:[1,67]},{16:[1,68]},{16:[1,69]},{16:[1,70]},{16:[1,71]},{23:72,55:73,73:H},{23:75,55:76,73:H},{23:77,73:U},{69:78,72:[1,79],78:J,79:K,80:O,81:P,82:z,83:AA,84:W,85:CA,86:tA,87:lA,88:gA,89:aA,90:NA,91:DA,92:KA,93:TA,94:qA,95:IA,96:bA,97:SA,98:EA,99:nA,100:eA,101:BA,102:yA,103:vA},{57:106,59:[1,107],67:[1,108],68:[1,109]},{23:110,73:U},{23:111,73:U},{23:112,73:U},{23:113,73:U},A([5,66,72,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104],FA),A(Y,[2,6]),A(Y,[2,16]),A(HA,[2,10],{11:114}),A(Y,[2,18]),{5:[1,116],20:[1,115]},{5:[1,117]},A(Y,[2,22]),{5:[1,118]},{5:[1,119]},A(Y,[2,25]),A(Y,[2,26]),A(Y,[2,27]),A(Y,[2,28]),A(Y,[2,29]),A(Y,[2,32]),A(Y,[2,33]),A(dA,i,{7:120}),A(dA,i,{7:121}),A(dA,i,{7:122}),A(q,i,{41:123,7:124}),A(Z,i,{43:125,7:126}),A(Z,i,{7:126,43:127}),A(fA,i,{46:128,7:129}),A(dA,i,{7:130}),{5:[1,132],52:[1,131]},{5:[1,134],52:[1,133]},A(j,FA,{74:135,75:[1,136]}),{5:[1,138],52:[1,137]},{5:[1,140],52:[1,139]},{5:[1,141]},{23:145,70:[1,142],71:[1,143],72:[1,144],73:U},{69:146,78:J,79:K,80:O,81:P,82:z,83:AA,84:W,85:CA,86:tA,87:lA,88:gA,89:aA,90:NA,91:DA,92:KA,93:TA,94:qA,95:IA,96:bA,97:SA,98:EA,99:nA,100:eA,101:BA,102:yA,103:vA},A(mA,[2,79]),A(mA,[2,80]),A(mA,[2,81]),A(mA,[2,82]),A(mA,[2,83]),A(mA,[2,84]),A(mA,[2,85]),A(mA,[2,86]),A(mA,[2,87]),A(mA,[2,88]),A(mA,[2,89]),A(mA,[2,90]),A(mA,[2,91]),A(mA,[2,92]),A(mA,[2,93]),A(mA,[2,94]),A(mA,[2,95]),A(mA,[2,96]),A(mA,[2,97]),A(mA,[2,98]),A(mA,[2,99]),A(mA,[2,100]),A(mA,[2,101]),A(mA,[2,102]),A(mA,[2,103]),A(mA,[2,104]),{23:147,73:U},{23:149,60:148,73:U},{73:[2,68]},{73:[2,69]},{58:150,104:rA},{58:152,104:rA},{58:153,104:rA},{58:154,104:rA},{4:[1,157],5:[1,159],12:156,13:158,17:[1,155],51:v,53:S,54:x},{5:[1,160]},A(Y,[2,20]),A(Y,[2,21]),A(Y,[2,23]),A(Y,[2,24]),{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[1,161],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:k,51:v,53:S,54:x,56:F,61:T,62:R,63:L,64:M,73:U},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[1,162],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:k,51:v,53:S,54:x,56:F,61:T,62:R,63:L,64:M,73:U},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[1,163],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:k,51:v,53:S,54:x,56:F,61:T,62:R,63:L,64:M,73:U},{17:[1,164]},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[2,47],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:k,50:[1,165],51:v,53:S,54:x,56:F,61:T,62:R,63:L,64:M,73:U},{17:[1,166]},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[2,45],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:k,49:[1,167],51:v,53:S,54:x,56:F,61:T,62:R,63:L,64:M,73:U},{17:[1,168]},{17:[1,169]},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[2,43],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:k,48:[1,170],51:v,53:S,54:x,56:F,61:T,62:R,63:L,64:M,73:U},{4:u,5:a,8:8,9:10,10:n,13:13,14:o,15:s,17:[1,171],18:16,19:l,22:g,23:41,24:C,25:20,26:21,27:22,28:23,29:24,30:B,31:E,32:d,34:I,36:h,37:Q,38:p,39:m,40:f,42:D,44:w,45:b,47:k,51:v,53:S,54:x,56:F,61:T,62:R,63:L,64:M,73:U},{16:[1,172]},A(Y,[2,50]),{16:[1,173]},A(Y,[2,55]),A(j,[2,76]),{76:[1,174]},{16:[1,175]},A(Y,[2,52]),{16:[1,176]},A(Y,[2,57]),A(Y,[2,53]),{23:177,73:U},{23:178,73:U},{23:179,73:U},{58:180,104:rA},{23:181,72:[1,182],73:U},{58:183,104:rA},{58:184,104:rA},{66:[1,185],104:[2,67]},{5:[2,60]},{5:[2,105]},{5:[2,61]},{5:[2,62]},{5:[2,63]},A(Y,[2,17]),A(HA,[2,11]),{13:186,51:v,53:S,54:x},A(HA,[2,13]),A(HA,[2,14]),A(Y,[2,19]),A(Y,[2,35]),A(Y,[2,36]),A(Y,[2,37]),A(Y,[2,38]),{16:[1,187]},A(Y,[2,39]),{16:[1,188]},A(Y,[2,40]),A(Y,[2,41]),{16:[1,189]},A(Y,[2,42]),{5:[1,190]},{5:[1,191]},{77:[1,192]},{5:[1,193]},{5:[1,194]},{58:195,104:rA},{58:196,104:rA},{58:197,104:rA},{5:[2,75]},{58:198,104:rA},{23:199,73:U},{5:[2,58]},{5:[2,59]},{23:200,73:U},A(HA,[2,12]),A(q,i,{7:124,41:201}),A(Z,i,{7:126,43:202}),A(fA,i,{7:129,46:203}),A(Y,[2,49]),A(Y,[2,54]),A(j,[2,77]),A(Y,[2,51]),A(Y,[2,56]),{5:[2,70]},{5:[2,71]},{5:[2,72]},{5:[2,73]},{58:204,104:rA},{104:[2,66]},{17:[2,48]},{17:[2,46]},{17:[2,44]},{5:[2,74]}],defaultActions:{5:[2,1],6:[2,2],108:[2,68],109:[2,69],150:[2,60],151:[2,105],152:[2,61],153:[2,62],154:[2,63],180:[2,75],183:[2,58],184:[2,59],195:[2,70],196:[2,71],197:[2,72],198:[2,73],200:[2,66],201:[2,48],202:[2,46],203:[2,44],204:[2,74]},parseError:y(function(te,zA){if(zA.recoverable)this.trace(te);else{var Ae=Error(te);throw Ae.hash=zA,Ae}},"parseError"),parse:y(function(te){var zA=this,Ae=[0],$A=[],oe=[null],kA=[],Pe=this.table,MA="",ke=0,We=0,ue=0,Me=2,je=1,Ge=kA.slice.call(arguments,1),wA=Object.create(this.lexer),Re={yy:{}};for(var He in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,He))Re.yy[He]=this.yy[He];if(wA.setInput(te,Re.yy),Re.yy.lexer=wA,Re.yy.parser=this,typeof wA.yylloc>"u")wA.yylloc={};var de=wA.yylloc;kA.push(de);var RA=wA.options&&wA.options.ranges;if(typeof Re.yy.parseError==="function")this.parseError=Re.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function ce(Vt){Ae.length=Ae.length-2*Vt,oe.length=oe.length-Vt,kA.length=kA.length-Vt}y(ce,"popStack");function me(){var Vt=$A.pop()||wA.lex()||je;if(typeof Vt!=="number"){if(Vt instanceof Array)$A=Vt,Vt=$A.pop();Vt=zA.symbols_[Vt]||Vt}return Vt}y(me,"lex");var Le,Lt,Je,kt,Cr,Pt,dt={},Yt,Ce,ye,Ze;while(!0){if(Je=Ae[Ae.length-1],this.defaultActions[Je])kt=this.defaultActions[Je];else{if(Le===null||typeof Le>"u")Le=me();kt=Pe[Je]&&Pe[Je][Le]}if(typeof kt>"u"||!kt.length||!kt[0]){var Xt="";Ze=[];for(Yt in Pe[Je])if(this.terminals_[Yt]&&Yt>Me)Ze.push("'"+this.terminals_[Yt]+"'");if(wA.showPosition)Xt="Parse error on line "+(ke+1)+`:
`+wA.showPosition()+`
Expecting `+Ze.join(", ")+", got '"+(this.terminals_[Le]||Le)+"'";else Xt="Parse error on line "+(ke+1)+": Unexpected "+(Le==je?"end of input":"'"+(this.terminals_[Le]||Le)+"'");this.parseError(Xt,{text:wA.match,token:this.terminals_[Le]||Le,line:wA.yylineno,loc:de,expected:Ze})}if(kt[0]instanceof Array&&kt.length>1)throw Error("Parse Error: multiple actions possible at state: "+Je+", token: "+Le);switch(kt[0]){case 1:if(Ae.push(Le),oe.push(wA.yytext),kA.push(wA.yylloc),Ae.push(kt[1]),Le=null,!Lt){if(We=wA.yyleng,MA=wA.yytext,ke=wA.yylineno,de=wA.yylloc,ue>0)ue--}else Le=Lt,Lt=null;break;case 2:if(Ce=this.productions_[kt[1]][1],dt.$=oe[oe.length-Ce],dt._$={first_line:kA[kA.length-(Ce||1)].first_line,last_line:kA[kA.length-1].last_line,first_column:kA[kA.length-(Ce||1)].first_column,last_column:kA[kA.length-1].last_column},RA)dt._$.range=[kA[kA.length-(Ce||1)].range[0],kA[kA.length-1].range[1]];if(Pt=this.performAction.apply(dt,[MA,We,ke,Re.yy,kt[1],oe,kA].concat(Ge)),typeof Pt<"u")return Pt;if(Ce)Ae=Ae.slice(0,-1*Ce*2),oe=oe.slice(0,-1*Ce),kA=kA.slice(0,-1*Ce);Ae.push(this.productions_[kt[1]][0]),oe.push(dt.$),kA.push(dt._$),ye=Pe[Ae[Ae.length-2]][Ae[Ae.length-1]],Ae.push(ye);break;case 3:return!0}}return!0},"parse")},_A=function(){var WA={EOF:1,parseError:y(function(zA,Ae){if(this.yy.parser)this.yy.parser.parseError(zA,Ae);else throw Error(zA)},"parseError"),setInput:y(function(te,zA){if(this.yy=zA||this.yy||{},this._input=te,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var te=this._input[0];this.yytext+=te,this.yyleng++,this.offset++,this.match+=te,this.matched+=te;var zA=te.match(/(?:\r\n?|\n).*/g);if(zA)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),te},"input"),unput:y(function(te){var zA=te.length,Ae=te.split(/(?:\r\n?|\n)/g);this._input=te+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-zA),this.offset-=zA;var $A=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Ae.length-1)this.yylineno-=Ae.length-1;var oe=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Ae?(Ae.length===$A.length?this.yylloc.first_column:0)+$A[$A.length-Ae.length].length-Ae[0].length:this.yylloc.first_column-zA},this.options.ranges)this.yylloc.range=[oe[0],oe[0]+this.yyleng-zA];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(te){this.unput(this.match.slice(te))},"less"),pastInput:y(function(){var te=this.matched.substr(0,this.matched.length-this.match.length);return(te.length>20?"...":"")+te.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var te=this.match;if(te.length<20)te+=this._input.substr(0,20-te.length);return(te.substr(0,20)+(te.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var te=this.pastInput(),zA=Array(te.length+1).join("-");return te+this.upcomingInput()+`
`+zA+"^"},"showPosition"),test_match:y(function(te,zA){var Ae,$A,oe;if(this.options.backtrack_lexer){if(oe={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)oe.yylloc.range=this.yylloc.range.slice(0)}if($A=te[0].match(/(?:\r\n?|\n).*/g),$A)this.yylineno+=$A.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:$A?$A[$A.length-1].length-$A[$A.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+te[0].length},this.yytext+=te[0],this.match+=te[0],this.matches=te,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(te[0].length),this.matched+=te[0],Ae=this.performAction.call(this,this.yy,this,zA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(Ae)return Ae;else if(this._backtrack){for(var kA in oe)this[kA]=oe[kA];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var te,zA,Ae,$A;if(!this._more)this.yytext="",this.match="";var oe=this._currentRules();for(var kA=0;kA<oe.length;kA++)if(Ae=this._input.match(this.rules[oe[kA]]),Ae&&(!zA||Ae[0].length>zA[0].length)){if(zA=Ae,$A=kA,this.options.backtrack_lexer)if(te=this.test_match(Ae,oe[kA]),te!==!1)return te;else if(this._backtrack){zA=!1;continue}else return!1;else if(!this.options.flex)break}if(zA){if(te=this.test_match(zA,oe[$A]),te!==!1)return te;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var zA=this.next();if(zA)return zA;else return this.lex()},"lex"),begin:y(function(zA){this.conditionStack.push(zA)},"begin"),popState:y(function(){var zA=this.conditionStack.length-1;if(zA>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(zA){if(zA=this.conditionStack.length-1-Math.abs(zA||0),zA>=0)return this.conditionStack[zA];else return"INITIAL"},"topState"),pushState:y(function(zA){this.begin(zA)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(zA,Ae,$A,oe){var kA=oe;switch($A){case 0:return 5;case 1:break;case 2:break;case 3:break;case 4:break;case 5:break;case 6:return 20;case 7:return this.begin("CONFIG"),75;break;case 8:return 76;case 9:return this.popState(),this.begin("ALIAS"),77;break;case 10:return this.popState(),this.popState(),77;break;case 11:return Ae.yytext=Ae.yytext.trim(),73;break;case 12:return Ae.yytext=Ae.yytext.trim(),this.begin("ALIAS"),73;break;case 13:return Ae.yytext=Ae.yytext.trim(),this.popState(),73;break;case 14:return this.popState(),10;break;case 15:return Ae.yytext=Ae.yytext.trim(),this.popState(),10;break;case 16:return this.begin("LINE"),15;break;case 17:return this.begin("ID"),51;break;case 18:return this.begin("ID"),53;break;case 19:return 14;case 20:return this.begin("ID"),54;break;case 21:return this.popState(),this.popState(),this.begin("LINE"),52;break;case 22:return this.popState(),this.popState(),5;break;case 23:return this.begin("LINE"),37;break;case 24:return this.begin("LINE"),38;break;case 25:return this.begin("LINE"),39;break;case 26:return this.begin("LINE"),40;break;case 27:return this.begin("LINE"),50;break;case 28:return this.begin("LINE"),42;break;case 29:return this.begin("LINE"),44;break;case 30:return this.begin("LINE"),49;break;case 31:return this.begin("LINE"),45;break;case 32:return this.begin("LINE"),48;break;case 33:return this.begin("LINE"),47;break;case 34:return this.popState(),16;break;case 35:return 17;case 36:return 67;case 37:return 68;case 38:return 61;case 39:return 62;case 40:return 63;case 41:return 64;case 42:return 59;case 43:return 56;case 44:return this.begin("ID"),22;break;case 45:return this.begin("ID"),24;break;case 46:return 30;case 47:return 31;case 48:return this.begin("acc_title"),32;break;case 49:return this.popState(),"acc_title_value";break;case 50:return this.begin("acc_descr"),34;break;case 51:return this.popState(),"acc_descr_value";break;case 52:this.begin("acc_descr_multiline");break;case 53:this.popState();break;case 54:return"acc_descr_multiline_value";case 55:return 6;case 56:return 19;case 57:return 21;case 58:return 66;case 59:return 5;case 60:return Ae.yytext=Ae.yytext.trim(),73;break;case 61:return 80;case 62:return 97;case 63:return 98;case 64:return 99;case 65:return 78;case 66:return 79;case 67:return 100;case 68:return 101;case 69:return 102;case 70:return 103;case 71:return 85;case 72:return 86;case 73:return 87;case 74:return 88;case 75:return 93;case 76:return 94;case 77:return 95;case 78:return 96;case 79:return 81;case 80:return 82;case 81:return 83;case 82:return 84;case 83:return 89;case 84:return 90;case 85:return 91;case 86:return 92;case 87:return 104;case 88:return 104;case 89:return 70;case 90:return 71;case 91:return 72;case 92:return 5;case 93:return 10}},"anonymous"),rules:[/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:([0-9]+(\.[0-9]{1,2})?|\.[0-9]{1,2})(?=[ \n]+))/i,/^(?:@\{)/i,/^(?:[^\}]+)/i,/^(?:\}(?=\s+as\s))/i,/^(?:\})/i,/^(?:[^\<->\->:\n,;@\s]+(?=@\{))/i,/^(?:[^<>:\n,;@\s]+(?=\s+as\s))/i,/^(?:[^<>:\n,;@]+(?=\s*[\n;#]|$))/i,/^(?:[^<>:\n,;@]*<[^\n]*)/i,/^(?:[^\n]+)/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:create\b)/i,/^(?:destroy\b)/i,/^(?:as\b)/i,/^(?:(?:))/i,/^(?:loop\b)/i,/^(?:rect\b)/i,/^(?:opt\b)/i,/^(?:alt\b)/i,/^(?:else\b)/i,/^(?:par\b)/i,/^(?:par_over\b)/i,/^(?:and\b)/i,/^(?:critical\b)/i,/^(?:option\b)/i,/^(?:break\b)/i,/^(?:(?:[:]?(?:no)?wrap)?[^#\n;]*)/i,/^(?:end\b)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:links\b)/i,/^(?:link\b)/i,/^(?:properties\b)/i,/^(?:details\b)/i,/^(?:over\b)/i,/^(?:note\b)/i,/^(?:activate\b)/i,/^(?:deactivate\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:title:\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:sequenceDiagram\b)/i,/^(?:autonumber\b)/i,/^(?:off\b)/i,/^(?:,)/i,/^(?:;)/i,/^(?:[^\/\\\+\()\+<\->\->:\n,;]+((?!(-x|--x|-\)|--\)|-\|\\|-\\|-\/|-\/\/|-\|\/|\/\|-|\\\|-|\/\/-|\\\\-|\/\|-|--\|\\|--|\(\)))[\-]*[^\+<\->\->:\n,;]+)*)/i,/^(?:->>)/i,/^(?:<<->>)/i,/^(?:-->>)/i,/^(?:<<-->>)/i,/^(?:->)/i,/^(?:-->)/i,/^(?:-[x])/i,/^(?:--[x])/i,/^(?:-[\)])/i,/^(?:--[\)])/i,/^(?:--\|\\)/i,/^(?:--\|\/)/i,/^(?:--\\\\)/i,/^(?:--\/\/)/i,/^(?:\/\|--)/i,/^(?:\\\|--)/i,/^(?:\/\/--)/i,/^(?:\\\\--)/i,/^(?:-\|\\)/i,/^(?:-\|\/)/i,/^(?:-\\\\)/i,/^(?:-\/\/)/i,/^(?:\/\|-)/i,/^(?:\\\|-)/i,/^(?:\/\/-)/i,/^(?:\\\\-)/i,/^(?::(?:(?:no)?wrap)?[^#\n;]*)/i,/^(?::)/i,/^(?:\+)/i,/^(?:-)/i,/^(?:\(\))/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[53,54],inclusive:!1},acc_descr:{rules:[51],inclusive:!1},acc_title:{rules:[49],inclusive:!1},ID:{rules:[2,3,7,11,12,13,14,15],inclusive:!1},ALIAS:{rules:[2,3,21,22],inclusive:!1},LINE:{rules:[2,3,34],inclusive:!1},CONFIG:{rules:[8,9,10],inclusive:!1},CONFIG_DATA:{rules:[],inclusive:!1},INITIAL:{rules:[0,1,3,4,5,6,16,17,18,19,20,23,24,25,26,27,28,29,30,31,32,33,35,36,37,38,39,40,41,42,43,44,45,46,47,48,50,52,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93],inclusive:!0}}};return WA}();JA.lexer=_A;function ZA(){this.yy={}}return y(ZA,"Parser"),ZA.prototype=JA,JA.Parser=ZA,new ZA}();nCA.parser=nCA;mRt=nCA,DRt={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32,BIDIRECTIONAL_SOLID:33,BIDIRECTIONAL_DOTTED:34,SOLID_TOP:41,SOLID_BOTTOM:42,STICK_TOP:43,STICK_BOTTOM:44,SOLID_ARROW_TOP_REVERSE:45,SOLID_ARROW_BOTTOM_REVERSE:46,STICK_ARROW_TOP_REVERSE:47,STICK_ARROW_BOTTOM_REVERSE:48,SOLID_TOP_DOTTED:51,SOLID_BOTTOM_DOTTED:52,STICK_TOP_DOTTED:53,STICK_BOTTOM_DOTTED:54,SOLID_ARROW_TOP_REVERSE_DOTTED:55,SOLID_ARROW_BOTTOM_REVERSE_DOTTED:56,STICK_ARROW_TOP_REVERSE_DOTTED:57,STICK_ARROW_BOTTOM_REVERSE_DOTTED:58,CENTRAL_CONNECTION:59,CENTRAL_CONNECTION_REVERSE:60,CENTRAL_CONNECTION_DUAL:61},yRt={FILLED:0,OPEN:1},wRt={LEFTOF:0,RIGHTOF:1,OVER:2},dO={ACTOR:"actor",BOUNDARY:"boundary",COLLECTIONS:"collections",CONTROL:"control",DATABASE:"database",ENTITY:"entity",PARTICIPANT:"participant",QUEUE:"queue"},bRt=class{constructor(){this.state=new dw(()=>({prevActor:void 0,actors:new Map,createdActors:new Map,destroyedActors:new Map,boxes:[],messages:[],notes:[],sequenceNumbersEnabled:!1,wrapEnabled:void 0,currentBox:void 0,lastCreated:void 0,lastDestroyed:void 0})),this.setAccTitle=Dr,this.setAccDescription=Fr,this.setDiagramTitle=Tr,this.getAccTitle=kr,this.getAccDescription=xr,this.getDiagramTitle=Sr,this.apply=this.apply.bind(this),this.parseBoxData=this.parseBoxData.bind(this),this.parseMessage=this.parseMessage.bind(this),this.clear(),this.setWrap(OA().wrap),this.LINETYPE=DRt,this.ARROWTYPE=yRt,this.PLACEMENT=wRt}static{y(this,"SequenceDB")}addBox(A){this.state.records.boxes.push({name:A.text,wrap:A.wrap??this.autoWrap(),fill:A.color,actorKeys:[]}),this.state.records.currentBox=this.state.records.boxes.slice(-1)[0]}addActor(A,e,t,r,i){let u=this.state.records.currentBox,a;if(i!==void 0){let o;if(!i.includes(`
`))o=`{
`+i+`
}`;else o=i+`
`;a=mQ(o,{schema:fQ})}if(r=a?.type??r,a?.alias&&(!t||t.text===e))t={text:a.alias,wrap:t?.wrap,type:r};let n=this.state.records.actors.get(A);if(n){if(this.state.records.currentBox&&n.box&&this.state.records.currentBox!==n.box)throw Error(`A same participant should only be defined in one Box: ${n.name} can't be in '${n.box.name}' and in '${this.state.records.currentBox.name}' at the same time.`);if(u=n.box?n.box:this.state.records.currentBox,n.box=u,n&&e===n.name&&t==null)return}if(t?.text==null)t={text:e,type:r};if(r==null||t.text==null)t={text:e,type:r};if(this.state.records.actors.set(A,{box:u,name:e,description:t.text,wrap:t.wrap??this.autoWrap(),prevActor:this.state.records.prevActor,links:{},properties:{},actorCnt:null,rectData:null,type:r??"participant"}),this.state.records.prevActor){let o=this.state.records.actors.get(this.state.records.prevActor);if(o)o.nextActor=A}if(this.state.records.currentBox)this.state.records.currentBox.actorKeys.push(A);this.state.records.prevActor=A}activationCount(A){let e,t=0;if(!A)return 0;for(e=0;e<this.state.records.messages.length;e++){if(this.state.records.messages[e].type===this.LINETYPE.ACTIVE_START&&this.state.records.messages[e].from===A)t++;if(this.state.records.messages[e].type===this.LINETYPE.ACTIVE_END&&this.state.records.messages[e].from===A)t--}return t}addMessage(A,e,t,r){this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:A,to:e,message:t.text,wrap:t.wrap??this.autoWrap(),answer:r})}addSignal(A,e,t,r,i=!1,u){if(r===this.LINETYPE.ACTIVE_END){if(this.activationCount(A??"")<1){let n=Error("Trying to inactivate an inactive participant ("+A+")");throw n.hash={text:"->>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},n}}return this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:A,to:e,message:t?.text??"",wrap:t?.wrap??this.autoWrap(),type:r,activate:i,centralConnection:u??0}),!0}hasAtLeastOneBox(){return this.state.records.boxes.length>0}hasAtLeastOneBoxWithTitle(){return this.state.records.boxes.some((A)=>A.name)}getMessages(){return this.state.records.messages}getBoxes(){return this.state.records.boxes}getActors(){return this.state.records.actors}getCreatedActors(){return this.state.records.createdActors}getDestroyedActors(){return this.state.records.destroyedActors}getActor(A){return this.state.records.actors.get(A)}getActorKeys(){return[...this.state.records.actors.keys()]}enableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!0}disableSequenceNumbers(){this.state.records.sequenceNumbersEnabled=!1}showSequenceNumbers(){return this.state.records.sequenceNumbersEnabled}setWrap(A){this.state.records.wrapEnabled=A}extractWrap(A){if(A===void 0)return{};A=A.trim();let e=/^:?wrap:/.exec(A)!==null?!0:/^:?nowrap:/.exec(A)!==null?!1:void 0;return{cleanedText:(e===void 0?A:A.replace(/^:?(?:no)?wrap:/,"")).trim(),wrap:e}}autoWrap(){if(this.state.records.wrapEnabled!==void 0)return this.state.records.wrapEnabled;return OA().sequence?.wrap??!1}clear(){this.state.reset(),cr()}parseMessage(A){let e=A.trim(),{wrap:t,cleanedText:r}=this.extractWrap(e),i={text:r,wrap:t};return sA.debug(`parseMessage: ${JSON.stringify(i)}`),i}parseBoxData(A){let e=/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/.exec(A),t=e?.[1]?e[1].trim():"transparent",r=e?.[2]?e[2].trim():void 0;if(window?.CSS){if(!window.CSS.supports("color",t))t="transparent",r=A.trim()}else{let a=new Option().style;if(a.color=t,a.color!==t)t="transparent",r=A.trim()}let{wrap:i,cleanedText:u}=this.extractWrap(r);return{text:u?gr(u,OA()):void 0,color:t,wrap:i}}addNote(A,e,t){let r={actor:A,placement:e,message:t.text,wrap:t.wrap??this.autoWrap()},i=[].concat(A,A);this.state.records.notes.push(r),this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:i[0],to:i[1],message:t.text,wrap:t.wrap??this.autoWrap(),type:this.LINETYPE.NOTE,placement:e})}addLinks(A,e){let t=this.getActor(A);try{let r=gr(e.text,OA());r=r.replace(/&equals;/g,"="),r=r.replace(/&amp;/g,"&");let i=JSON.parse(r);this.insertLinks(t,i)}catch(r){sA.error("error while parsing actor link text",r)}}addALink(A,e){let t=this.getActor(A);try{let r={},i=gr(e.text,OA()),u=i.indexOf("@");i=i.replace(/&equals;/g,"="),i=i.replace(/&amp;/g,"&");let a=i.slice(0,u-1).trim(),n=i.slice(u+1).trim();r[a]=n,this.insertLinks(t,r)}catch(r){sA.error("error while parsing actor link text",r)}}insertLinks(A,e){if(A.links==null)A.links=e;else for(let t in e)A.links[t]=e[t]}addProperties(A,e){let t=this.getActor(A);try{let r=gr(e.text,OA()),i=JSON.parse(r);this.insertProperties(t,i)}catch(r){sA.error("error while parsing actor properties text",r)}}insertProperties(A,e){if(A.properties==null)A.properties=e;else for(let t in e)A.properties[t]=e[t]}boxEnd(){this.state.records.currentBox=void 0}addDetails(A,e){let t=this.getActor(A),r=document.getElementById(e.text);try{let i=r.innerHTML,u=JSON.parse(i);if(u.properties)this.insertProperties(t,u.properties);if(u.links)this.insertLinks(t,u.links)}catch(i){sA.error("error while parsing actor details text",i)}}getActorProperty(A,e){if(A?.properties!==void 0)return A.properties[e];return}apply(A){if(Array.isArray(A))A.forEach((e)=>{this.apply(e)});else switch(A.type){case"sequenceIndex":this.state.records.messages.push({id:this.state.records.messages.length.toString(),from:void 0,to:void 0,message:{start:A.sequenceIndex,step:A.sequenceIndexStep,visible:A.sequenceVisible},wrap:!1,type:A.signalType});break;case"addParticipant":this.addActor(A.actor,A.actor,A.description,A.draw,A.config);break;case"createParticipant":if(this.state.records.actors.has(A.actor))throw Error("It is not possible to have actors with the same id, even if one is destroyed before the next is created. Use 'AS' aliases to simulate the behavior");this.state.records.lastCreated=A.actor,this.addActor(A.actor,A.actor,A.description,A.draw,A.config),this.state.records.createdActors.set(A.actor,this.state.records.messages.length);break;case"destroyParticipant":this.state.records.lastDestroyed=A.actor,this.state.records.destroyedActors.set(A.actor,this.state.records.messages.length);break;case"activeStart":this.addSignal(A.actor,void 0,void 0,A.signalType);break;case"centralConnection":this.addSignal(A.actor,void 0,void 0,A.signalType);break;case"centralConnectionReverse":this.addSignal(A.actor,void 0,void 0,A.signalType);break;case"activeEnd":this.addSignal(A.actor,void 0,void 0,A.signalType);break;case"addNote":this.addNote(A.actor,A.placement,A.text);break;case"addLinks":this.addLinks(A.actor,A.text);break;case"addALink":this.addALink(A.actor,A.text);break;case"addProperties":this.addProperties(A.actor,A.text);break;case"addDetails":this.addDetails(A.actor,A.text);break;case"addMessage":if(this.state.records.lastCreated)if(A.to!==this.state.records.lastCreated)throw Error("The created participant "+this.state.records.lastCreated.name+" does not have an associated creating message after its declaration. Please check the sequence diagram.");else this.state.records.lastCreated=void 0;else if(this.state.records.lastDestroyed)if(A.to!==this.state.records.lastDestroyed&&A.from!==this.state.records.lastDestroyed)throw Error("The destroyed participant "+this.state.records.lastDestroyed.name+" does not have an associated destroying message after its declaration. Please check the sequence diagram.");else this.state.records.lastDestroyed=void 0;this.addSignal(A.from,A.to,A.msg,A.signalType,A.activate,A.centralConnection);break;case"boxStart":this.addBox(A.boxData);break;case"boxEnd":this.boxEnd();break;case"loopStart":this.addSignal(void 0,void 0,A.loopText,A.signalType);break;case"loopEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"rectStart":this.addSignal(void 0,void 0,A.color,A.signalType);break;case"rectEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"optStart":this.addSignal(void 0,void 0,A.optText,A.signalType);break;case"optEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"altStart":this.addSignal(void 0,void 0,A.altText,A.signalType);break;case"else":this.addSignal(void 0,void 0,A.altText,A.signalType);break;case"altEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"setAccTitle":Dr(A.text);break;case"parStart":this.addSignal(void 0,void 0,A.parText,A.signalType);break;case"and":this.addSignal(void 0,void 0,A.parText,A.signalType);break;case"parEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"criticalStart":this.addSignal(void 0,void 0,A.criticalText,A.signalType);break;case"option":this.addSignal(void 0,void 0,A.optionText,A.signalType);break;case"criticalEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break;case"breakStart":this.addSignal(void 0,void 0,A.breakText,A.signalType);break;case"breakEnd":this.addSignal(void 0,void 0,void 0,A.signalType);break}}getConfig(){return OA().sequence}},vRt=y((A)=>{let e=A.dropShadow??"none",{look:t}=OA();return`.actor {
stroke: ${A.actorBorder};
fill: ${A.actorBkg};
stroke-width: ${A.strokeWidth??1};
}
rect.actor.outer-path[data-look="neo"] {
filter: ${e};
}
rect.note[data-look="neo"] {
stroke:${A.noteBorderColor};
fill:${A.noteBkgColor};
filter: ${e};
}
text.actor > tspan {
fill: ${A.actorTextColor};
stroke: none;
}
.actor-line {
stroke: ${A.actorLineColor};
}
.innerArc {
stroke-width: 1.5;
stroke-dasharray: none;
}
.messageLine0 {
stroke-width: 1.5;
stroke-dasharray: none;
stroke: ${A.signalColor};
}
.messageLine1 {
stroke-width: 1.5;
stroke-dasharray: 2, 2;
stroke: ${A.signalColor};
}
[id$="-arrowhead"] path {
fill: ${A.signalColor};
stroke: ${A.signalColor};
}
.sequenceNumber {
fill: ${A.sequenceNumberColor};
}
[id$="-sequencenumber"] {
fill: ${A.signalColor};
}
[id$="-crosshead"] path {
fill: ${A.signalColor};
stroke: ${A.signalColor};
}
.messageText {
fill: ${A.signalTextColor};
stroke: none;
}
.labelBox {
stroke: ${A.labelBoxBorderColor};
fill: ${A.labelBoxBkgColor};
filter: ${t==="neo"?e:"none"};
}
.labelText, .labelText > tspan {
fill: ${A.labelTextColor};
stroke: none;
}
.loopText, .loopText > tspan {
fill: ${A.loopTextColor};
stroke: none;
}
.sectionTitle, .sectionTitle > tspan {
fill: ${A.loopTextColor};
stroke: none;
}
.loopLine {
stroke-width: 2px;
stroke-dasharray: 2, 2;
stroke: ${A.labelBoxBorderColor};
fill: ${A.labelBoxBorderColor};
}
.note {
//stroke: #decc93;
stroke: ${A.noteBorderColor};
fill: ${A.noteBkgColor};
}
.noteText, .noteText > tspan {
fill: ${A.noteTextColor};
stroke: none;
${A.noteFontWeight?`font-weight: ${A.noteFontWeight};`:""}
}
.activation0 {
fill: ${A.activationBkgColor};
stroke: ${A.activationBorderColor};
}
.activation1 {
fill: ${A.activationBkgColor};
stroke: ${A.activationBorderColor};
}
.activation2 {
fill: ${A.activationBkgColor};
stroke: ${A.activationBorderColor};
}
.actorPopupMenu {
position: absolute;
}
.actorPopupMenuPanel {
position: absolute;
fill: ${A.actorBkg};
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));
}
.actor-man circle, line {
fill: ${A.actorBkg};
stroke-width: 2px;
}
g rect.rect {
filter: ${e};
stroke: ${A.nodeBorder};
}
`},"getStyles"),kRt=vRt,oh=new Set(["redux-color","redux-dark-color"]),$x=y(function(A,e){let t=jf(A,e);if(ot().look==="neo")t.attr("data-look","neo");return t},"drawRect"),FRt=y(function(A,e,t,r,i){if(e.links===void 0||e.links===null||Object.keys(e.links).length===0)return{height:0,width:0};let{links:u,actorCnt:a,rectData:n}=e;var o="none";if(i)o="block !important";let s=A.append("g");s.attr("id","actor"+a+"_popup"),s.attr("class","actorPopupMenu"),s.attr("display",o);var l="";if(n.class!==void 0)l=" "+n.class;let g=n.width>t?n.width:t,C=s.append("rect");if(C.attr("class","actorPopupMenuPanel"+l),C.attr("x",n.x),C.attr("y",n.height),C.attr("fill",n.fill),C.attr("stroke",n.stroke),C.attr("width",g),C.attr("height",n.height),C.attr("rx",n.rx),C.attr("ry",n.ry),u!=null){var B=20;for(let I in u){var E=s.append("a"),d=lCA.sanitizeUrl(u[I]);E.attr("xlink:href",d),E.attr("target","_blank"),XRt(r)(I,E,n.x+10,n.height+B,g,20,{class:"actor"},r),B+=30}}return C.attr("height",B),{height:n.height+B,width:g}},"drawPopup"),QO=y(function(A){return"var pu = document.getElementById('"+A+"'); if (pu != null) { pu.style.display = pu.style.display == 'block' ? 'none' : 'block'; }"},"popupMenuToggle"),IO=y(async function(A,e,t=null){let r=A.append("foreignObject"),i=await gD(e.text,ot()),a=r.append("xhtml:div").attr("style","width: fit-content;").attr("xmlns","http://www.w3.org/1999/xhtml").html(i).node().getBoundingClientRect();if(r.attr("height",Math.round(a.height)).attr("width",Math.round(a.width)),e.class==="noteText"){let n=A.node().firstChild;n.setAttribute("height",a.height+2*e.textMargin);let o=n.getBBox();r.attr("x",Math.round(o.x+o.width/2-a.width/2)).attr("y",Math.round(o.y+o.height/2-a.height/2))}else if(t){let{startx:n,stopx:o,starty:s}=t;if(n>o){let l=n;n=o,o=l}if(r.attr("x",Math.round(n+Math.abs(n-o)/2-a.width/2)),e.class==="loopText")r.attr("y",Math.round(s));else r.attr("y",Math.round(s-a.height))}return[r]},"drawKatex"),E6=y(function(A,e){let t=0,r=0,i=e.text.split(_e.lineBreakRegex),[u,a]=rl(e.fontSize),n=[],o=0,s=y(()=>e.y,"yfunc");if(e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0)switch(e.valign){case"top":case"start":s=y(()=>Math.round(e.y+e.textMargin),"yfunc");break;case"middle":case"center":s=y(()=>Math.round(e.y+(t+r+e.textMargin)/2),"yfunc");break;case"bottom":case"end":s=y(()=>Math.round(e.y+(t+r+2*e.textMargin)-e.textMargin),"yfunc");break}if(e.anchor!==void 0&&e.textMargin!==void 0&&e.width!==void 0)switch(e.anchor){case"left":case"start":e.x=Math.round(e.x+e.textMargin),e.anchor="start",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"middle":case"center":e.x=Math.round(e.x+e.width/2),e.anchor="middle",e.dominantBaseline="middle",e.alignmentBaseline="middle";break;case"right":case"end":e.x=Math.round(e.x+e.width-e.textMargin),e.anchor="end",e.dominantBaseline="middle",e.alignmentBaseline="middle";break}for(let[l,g]of i.entries()){if(e.textMargin!==void 0&&e.textMargin===0&&u!==void 0)o=l*u;let C=A.append("text");if(C.attr("x",e.x),C.attr("y",s()),e.anchor!==void 0)C.attr("text-anchor",e.anchor).attr("dominant-baseline",e.dominantBaseline).attr("alignment-baseline",e.alignmentBaseline);if(e.fontFamily!==void 0)C.style("font-family",e.fontFamily);if(a!==void 0)C.style("font-size",a);if(e.fontWeight!==void 0)C.style("font-weight",e.fontWeight);if(e.fill!==void 0)C.attr("fill",e.fill);if(e.class!==void 0)C.attr("class",e.class);if(e.dy!==void 0)C.attr("dy",e.dy);else if(o!==0)C.attr("dy",o);let B=g||ZAA;if(e.tspan){let E=C.append("tspan");if(E.attr("x",e.x),e.fill!==void 0)E.attr("fill",e.fill);E.text(B)}else C.text(B);if(e.valign!==void 0&&e.textMargin!==void 0&&e.textMargin>0)r+=(C._groups||C)[0][0].getBBox().height,t=r;n.push(C)}return n},"drawText"),yie=y(function(A,e){function t(i,u,a,n,o){return i+","+u+" "+(i+a)+","+u+" "+(i+a)+","+(u+n-o)+" "+(i+a-o*1.2)+","+(u+n)+" "+i+","+(u+n)}y(t,"genPoints");let r=A.append("polygon");return r.attr("points",t(e.x,e.y,e.width,e.height,7)),r.attr("class","labelBox"),e.y=e.y+e.height/2,E6(A,e),r},"drawLabel"),wie=y((A,e,t,r)=>{if(!A.select)return;t.forEach((i)=>{let u=e.get(i),a=A.select("#actor"+u.actorCnt);if(!r.mirrorActors&&u.stopy)a.attr("y2",u.stopy+u.height/2);else if(r.mirrorActors)a.attr("y2",u.stopy)})},"fixLifeLineHeights"),xRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+e.height,{look:o,theme:s,themeVariables:l}=t,{bkgColorArray:g,borderColorArray:C}=l,B=A.append("g").lower();var E=B;if(!r){if(Ei++,Object.keys(e.links||{}).length&&!t.forceMenus)E.attr("onclick",QO(`actor${Ei}_popup`)).attr("cursor","pointer");if(E.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),E=B.append("g"),e.actorCnt=Ei,e.links!=null)E.attr("id","root-"+Ei);if(o==="neo")E.attr("data-look","neo")}let d=K0();var I="actor";if(e.properties?.class)I=e.properties.class;else d.fill="#eaeaea";if(r)I+=` ${t1}`;else I+=` ${e1}`;if(d.x=e.x,d.y=u,d.width=e.width,d.height=e.height,d.class=I,d.rx=3,d.ry=3,d.name=e.name,o==="neo")d.rx=6,d.ry=6;let h=$x(E,d),Q=i.get(e.name)??0;if(oh.has(s))h.style("stroke",C[Q%C.length]),h.style("fill",g[Q%C.length]);if(o==="neo")h.attr("filter","url(#drop-shadow)");if(e.rectData=d,e.properties?.icon){let m=e.properties.icon.trim();if(m.charAt(0)==="@")BY(E,d.x+d.width-20,d.y+10,m.substr(1));else CY(E,d.x+d.width-20,d.y+10,m)}if(!r)E.attr("data-et","participant"),E.attr("data-type","participant"),E.attr("data-id",e.name);sh(t,da(e.description))(e.description,E,d.x,d.y,d.width,d.height,{class:`actor ${hO}`},t);let p=e.height;if(h.node){let m=h.node().getBBox();e.height=m.height,p=m.height}return p},"drawActorTypeParticipant"),SRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+e.height,{look:o,theme:s,themeVariables:l}=t,{bkgColorArray:g,borderColorArray:C}=l,B=A.append("g").lower();var E=B;if(!r){if(Ei++,Object.keys(e.links||{}).length&&!t.forceMenus)E.attr("onclick",QO(`actor${Ei}_popup`)).attr("cursor","pointer");if(E.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),E=B.append("g"),e.actorCnt=Ei,e.links!=null)E.attr("id","root-"+Ei);if(o==="neo")E.attr("data-look","neo")}let d=K0();var I="actor";if(e.properties?.class)I=e.properties.class;else d.fill="#eaeaea";if(r)I+=` ${t1}`;else I+=` ${e1}`;d.x=e.x,d.y=u,d.width=e.width,d.height=e.height,d.class=I,d.name=e.name;let h=6,Q={...d,x:d.x+(r?-h:-h),y:d.y+(r?+h:+h),class:"actor"},p=$x(E,d),m=$x(E,Q);if(e.rectData=d,o==="neo")E.attr("filter","url(#drop-shadow)");let f=i.get(e.name)??0;if(oh.has(s))p.style("stroke",C[f%C.length]),p.style("fill",g[f%C.length]),m.style("stroke",C[f%C.length]),m.style("fill",g[f%C.length]);if(e.properties?.icon){let w=e.properties.icon.trim();if(w.charAt(0)==="@")BY(E,d.x+d.width-20,d.y+10,w.substr(1));else CY(E,d.x+d.width-20,d.y+10,w)}sh(t,da(e.description))(e.description,E,d.x-h,d.y+h,d.width,d.height,{class:`actor ${hO}`},t);let D=e.height;if(p.node){let w=p.node().getBBox();e.height=w.height,D=w.height}if(!r)E.attr("data-et","participant"),E.attr("data-type","collections"),E.attr("data-id",e.name);return D},"drawActorTypeCollections"),LRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+e.height,{look:o,theme:s,themeVariables:l}=t,{bkgColorArray:g,borderColorArray:C}=l,B=A.append("g").lower(),E=B;if(!r){if(Ei++,Object.keys(e.links||{}).length&&!t.forceMenus)E.attr("onclick",QO(`actor${Ei}_popup`)).attr("cursor","pointer");if(E.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),E=B.append("g"),e.actorCnt=Ei,e.links!=null)E.attr("id","root-"+Ei);if(o==="neo")E.attr("data-look","neo")}let d=K0(),I="actor";if(e.properties?.class)I=e.properties.class;else d.fill="#eaeaea";if(r)I+=` ${t1}`;else I+=` ${e1}`;E.attr("class",I),d.x=e.x,d.y=u,d.width=e.width,d.height=e.height,d.name=e.name;let h=d.height/2,Q=h/(2.5+d.height/50),p=E.append("g"),m=E.append("g"),f=`M ${d.x},${d.y+h}
a ${Q},${h} 0 0 0 0,${d.height}
h ${d.width-2*Q}
a ${Q},${h} 0 0 0 0,-${d.height}
Z
`;if(p.append("path").attr("d",f),m.append("path").attr("d",`M ${d.x},${d.y+h}
a ${Q},${h} 0 0 0 0,${d.height}`),p.attr("transform",`translate(${Q}, ${-(d.height/2)})`),m.attr("transform",`translate(${d.width-Q}, ${-d.height/2})`),e.rectData=d,o==="neo")p.attr("filter","url(#drop-shadow)");let D=i.get(e.name)??0;if(oh.has(s))p.style("stroke",C[D%C.length]),p.style("fill",g[D%C.length]),m.style("stroke",C[D%C.length]),m.style("fill",g[D%C.length]);if(e.properties?.icon){let k=e.properties.icon.trim(),v=d.x+d.width-20,S=d.y+10;if(k.charAt(0)==="@")BY(E,v,S,k.substr(1));else CY(E,v,S,k)}sh(t,da(e.description))(e.description,E,d.x,d.y,d.width,d.height,{class:`actor ${hO}`},t);let w=e.height,b=p.select("path:last-child");if(b.node()){let k=b.node().getBBox();e.height=k.height,w=k.height}if(!r)E.attr("data-et","participant"),E.attr("data-type","queue"),E.attr("data-id",e.name);return w},"drawActorTypeQueue"),RRt=y(function(A,e,t,r,i,u){let a=r?e.stopy:e.starty,n=e.x+e.width/2,o=a+75,{look:s,theme:l,themeVariables:g}=t,{bkgColorArray:C,borderColorArray:B,actorBorder:E,actorBkg:d}=g,I=A.append("g").lower();if(!r)Ei++,I.append("line").attr("id","actor"+Ei).attr("x1",n).attr("y1",o).attr("x2",n).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),e.actorCnt=Ei;let h=A.append("g"),Q=lm;if(r)Q+=` ${t1}`;else Q+=` ${e1}`;h.attr("class",Q),h.attr("name",e.name);let p=K0();p.x=e.x,p.y=a,p.fill="#eaeaea",p.width=e.width,p.height=e.height,p.class="actor";let m=e.x+e.width/2,f=a+32,D=22;h.append("defs").append("marker").attr("id",i+"-filled-head-control").attr("refX",11).attr("refY",5.8).attr("markerWidth",20).attr("markerHeight",28).attr("orient","172.5").attr("stroke-width",1.2).append("path").attr("d","M 14.4 5.6 L 7.2 10.4 L 8.8 5.6 L 7.2 0.8 Z"),h.append("circle").attr("cx",m).attr("cy",f).attr("r",D).attr("filter",`${s==="neo"?"url(#drop-shadow)":""}`),h.append("line").attr("marker-end","url(#"+i+"-filled-head-control)").attr("transform",`translate(${m}, ${f-D})`);let w=u.get(e.name)??0;if(oh.has(l))h.style("stroke",B[w%B.length]),h.style("fill",C[w%B.length]);else h.style("stroke",E),h.style("fill",d);let b=h.node().getBBox();if(e.height=b.height+2*(t?.sequence?.labelBoxHeight??0),sh(t,da(e.description))(e.description,h,p.x,p.y+D+(!r?12:5),p.width,p.height,{class:`actor ${lm}`},t),!r)h.attr("data-et","participant"),h.attr("data-type","control"),h.attr("data-id",e.name);return e.height},"drawActorTypeControl"),NRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+75,{look:o,theme:s,themeVariables:l}=t,{bkgColorArray:g,borderColorArray:C}=l,B=A.append("g").lower(),E=A.append("g"),d="actor";if(r)d+=` ${t1}`;else d+=` ${e1}`;E.attr("class",d),E.attr("name",e.name);let I=K0();I.x=e.x,I.y=u,I.fill="#eaeaea",I.width=e.width,I.height=e.height,I.class="actor";let h=e.x+e.width/2,Q=u+(!r?25:10),p=22;if(E.append("circle").attr("cx",h).attr("cy",Q).attr("r",p).attr("width",e.width).attr("height",e.height),E.append("line").attr("x1",h-p).attr("x2",h+p).attr("y1",Q+p).attr("y2",Q+p).attr("stroke-width",2),o==="neo")E.attr("filter","url(#drop-shadow)");let m=i.get(e.name)??0;if(oh.has(s))E.style("stroke",C[m%C.length]),E.style("fill",g[m%C.length]);let f=E.node().getBBox();if(e.height=f.height+(t?.sequence?.labelBoxHeight??0),!r)Ei++,B.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),e.actorCnt=Ei;if(sh(t,da(e.description))(e.description,E,I.x,I.y+(!r?30:15),I.width,I.height,{class:`actor ${lm}`},t),!r)E.attr("transform",`translate(0, ${p/2-5})`),E.attr("data-et","participant"),E.attr("data-type","entity"),E.attr("data-id",e.name);else E.attr("transform",`translate(0, ${p})`);return e.height},"drawActorTypeEntity"),GRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+e.height+2*t.boxTextMargin,{theme:o,themeVariables:s,look:l}=t,{bkgColorArray:g,borderColorArray:C,actorBorder:B}=s,E=A.append("g").lower(),d=E;if(!r){if(Ei++,Object.keys(e.links||{}).length&&!t.forceMenus)d.attr("onclick",QO(`actor${Ei}_popup`)).attr("cursor","pointer");if(d.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),d=E.append("g"),e.actorCnt=Ei,e.links!=null)d.attr("id","root-"+Ei);if(l==="neo")d.attr("data-look","neo")}let I=K0(),h="actor";if(e.properties?.class)h=e.properties.class;else I.fill="#eaeaea";if(r)h+=` ${t1}`;else h+=` ${e1}`;I.x=e.x,I.y=u,I.width=e.width,I.height=e.height,I.class=h,I.name=e.name,I.x=e.x,I.y=u;let Q=I.width/3,p=I.width/3,m=Q/2,f=m/(2.5+Q/50),D=d.append("g");D.attr("class",h);let w=`
M ${I.x},${I.y+f}
a ${m},${f} 0 0 0 ${Q},0
a ${m},${f} 0 0 0 -${Q},0
l 0,${p-2*f}
a ${m},${f} 0 0 0 ${Q},0
l 0,-${p-2*f}
`;if(D.append("path").attr("d",w),l==="neo")D.attr("filter","url(#drop-shadow)");let b=i.get(e.name)??0;if(oh.has(o))D.style("stroke",C[b%C.length]),D.style("fill",g[b%C.length]);else D.style("stroke",B);D.attr("transform",`translate(${Q}, ${f})`),e.rectData=I,sh(t,da(e.description))(e.description,d,I.x,I.y+35,I.width,I.height,{class:`actor ${hO}`},t);let k=D.select("path:last-child");if(k.node()){let v=k.node().getBBox();e.height=v.height+(t.sequence.labelBoxHeight??0)}if(!r)d.attr("data-et","participant"),d.attr("data-type","database"),d.attr("data-id",e.name);return e.height},"drawActorTypeDatabase"),URt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+80,o=22,s=A.append("g").lower(),{look:l,theme:g,themeVariables:C}=t,{bkgColorArray:B,borderColorArray:E,actorBorder:d}=C;if(!r)Ei++,s.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),e.actorCnt=Ei;let I=A.append("g"),h=lm;if(r)h+=` ${t1}`;else h+=` ${e1}`;I.attr("class",h),I.attr("name",e.name);let Q=K0();if(Q.x=e.x,Q.y=u,Q.fill="#eaeaea",Q.width=e.width,Q.height=e.height,Q.class="actor",I.append("line").attr("id","actor-man-torso"+Ei).attr("x1",e.x+e.width/2-55).attr("y1",u+12).attr("x2",e.x+e.width/2-15).attr("y2",u+12),I.append("line").attr("id","actor-man-arms"+Ei).attr("x1",e.x+e.width/2-55).attr("y1",u+2).attr("x2",e.x+e.width/2-55).attr("y2",u+22),I.append("circle").attr("cx",e.x+e.width/2).attr("cy",u+12).attr("r",22),l==="neo")I.attr("filter","url(#drop-shadow)");let p=i.get(e.name)??0;if(oh.has(g))I.style("stroke",E[p%E.length]),I.style("fill",B[p%E.length]);else I.style("stroke",d);let m=I.node().getBBox();if(e.height=m.height+(t.sequence.labelBoxHeight??0),sh(t,da(e.description))(e.description,I,Q.x,Q.y+15,Q.width,Q.height,{class:`actor ${lm}`},t),I.attr("transform","translate(0,21)"),!r)I.attr("data-et","participant"),I.attr("data-type","boundary"),I.attr("data-id",e.name);return e.height},"drawActorTypeBoundary"),MRt=y(function(A,e,t,r,i){let u=r?e.stopy:e.starty,a=e.x+e.width/2,n=u+80,{look:o,theme:s,themeVariables:l}=t,{bkgColorArray:g,borderColorArray:C,actorBorder:B}=l,E=A.append("g").lower();if(!r)Ei++,E.append("line").attr("id","actor"+Ei).attr("x1",a).attr("y1",n).attr("x2",a).attr("y2",2000).attr("class","actor-line 200").attr("stroke-width","0.5px").attr("stroke","#999").attr("name",e.name).attr("data-et","life-line").attr("data-id",e.name),e.actorCnt=Ei;let d=A.append("g"),I=lm;if(r)I+=` ${t1}`;else I+=` ${e1}`;if(d.attr("class",I),d.attr("name",e.name),!r)d.attr("data-et","participant").attr("data-type","actor").attr("data-id",e.name);let h=o==="neo"?0.5:1,Q=o==="neo"?u+(1-h)*30:u;d.append("line").attr("id","actor-man-torso"+Ei).attr("x1",a).attr("y1",Q+25*h).attr("x2",a).attr("y2",Q+45*h),d.append("line").attr("id","actor-man-arms"+Ei).attr("x1",a-sm/2*h).attr("y1",Q+33*h).attr("x2",a+sm/2*h).attr("y2",Q+33*h),d.append("line").attr("x1",a-sm/2*h).attr("y1",Q+60*h).attr("x2",a).attr("y2",Q+45*h),d.append("line").attr("x1",a).attr("y1",Q+45*h).attr("x2",a+(sm/2-2)*h).attr("y2",Q+60*h);let p=d.append("circle");p.attr("cx",e.x+e.width/2),p.attr("cy",Q+10*h),p.attr("r",15*h),p.attr("width",e.width*h),p.attr("height",e.height*h);let m=d.node().getBBox();e.height=m.height;let f=K0();f.x=e.x,f.y=Q,f.fill="#eaeaea",f.width=e.width,f.height=e.height/h,f.class="actor",f.rx=3,f.ry=3;let D=i.get(e.name)??0;if(oh.has(s))d.style("stroke",C[D%C.length]),d.style("fill",g[D%C.length]);else d.style("stroke",B);return sh(t,da(e.description))(e.description,d,f.x,Q+35*h-(o==="neo"?10:0),f.width,f.height,{class:`actor ${lm}`},t),e.height},"drawActorTypeActor"),TRt=y(async function(A,e,t,r,i,u,a){let n=a??new Map([...u.db.getActors().values()].map((o,s)=>[o.name,s]));switch(e.type){case"actor":return await MRt(A,e,t,r,n);case"participant":return await xRt(A,e,t,r,n);case"boundary":return await URt(A,e,t,r,n);case"control":return await RRt(A,e,t,r,i,n);case"entity":return await NRt(A,e,t,r,n);case"database":return await GRt(A,e,t,r,n);case"collections":return await SRt(A,e,t,r,n);case"queue":return await LRt(A,e,t,r,n)}},"drawActor"),YRt=y(function(A,e,t){let i=A.append("g");if(bie(i,e),e.name)sh(t)(e.name,i,e.x,e.y+t.boxTextMargin+(e.textMaxHeight||0)/2,e.width,0,{class:"text"},t);i.lower()},"drawBox"),HRt=y(function(A){return A.append("g")},"anchorElement"),KRt=y(function(A,e,t,r,i,u,a){let{theme:n,themeVariables:o}=r,{bkgColorArray:s,borderColorArray:l,mainBkg:g}=o,C=K0(),{anchored:B,actor:E}=e;C.x=e.startx,C.y=e.starty,C.class="activation"+i%3,C.width=e.stopx-e.startx,C.height=t-e.starty;let d=$x(B,C),h=(a??new Map([...u.db.getActors().values()].map((Q,p)=>[Q.name,p]))).get(E)??0;if(oh.has(n))d.style("stroke",l[h%l.length]),d.style("fill",s[h%l.length]??g)},"drawActivation"),JRt=y(async function(A,e,t,r,i){let{boxMargin:u,boxTextMargin:a,labelBoxHeight:n,labelBoxWidth:o,messageFontFamily:s,messageFontSize:l,messageFontWeight:g}=r,C=A.append("g").attr("data-et","control-structure").attr("data-id","i"+i.id),B=y(function(I,h,Q,p){return C.append("line").attr("x1",I).attr("y1",h).attr("x2",Q).attr("y2",p).attr("class","loopLine")},"drawLoopLine");if(B(e.startx,e.starty,e.stopx,e.starty),B(e.stopx,e.starty,e.stopx,e.stopy),B(e.startx,e.stopy,e.stopx,e.stopy),B(e.startx,e.starty,e.startx,e.stopy),e.sections!==void 0)e.sections.forEach(function(I){B(e.startx,I.y,e.stopx,I.y).style("stroke-dasharray","3, 3")});let E=EY();E.text=t,E.x=e.startx,E.y=e.starty,E.fontFamily=s,E.fontSize=l,E.fontWeight=g,E.anchor="middle",E.valign="middle",E.tspan=!1,E.width=Math.max(o??0,50),E.height=n+(r.look==="neo"?15:0)||20,E.textMargin=a,E.class="labelText",yie(C,E),E=vie(),E.text=e.title,E.x=e.startx+o/2+(e.stopx-e.startx)/2,E.y=e.starty+u+a,E.anchor="middle",E.valign="middle",E.textMargin=a,E.class="loopText",E.fontFamily=s,E.fontSize=l,E.fontWeight=g,E.wrap=!0;let d=da(E.text)?await IO(C,E,e):E6(C,E);if(e.sectionTitles!==void 0){for(let[I,h]of Object.entries(e.sectionTitles))if(h.message){if(E.text=h.message,E.x=e.startx+(e.stopx-e.startx)/2,E.y=e.sections[I].y+u+a,E.class="sectionTitle",E.anchor="middle",E.valign="middle",E.tspan=!1,E.fontFamily=s,E.fontSize=l,E.fontWeight=g,E.wrap=e.wrap,da(E.text))e.starty=e.sections[I].y,await IO(C,E,e);else E6(C,E);let Q=Math.round(d.map((p)=>(p._groups||p)[0][0].getBBox().height).reduce((p,m)=>p+m));e.sections[I].height+=Q-(u+a)}}return e.height=Math.round(e.stopy-e.starty),C},"drawLoop"),bie=y(function(A,e){cY(A,e)},"drawBackgroundRect"),ORt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-database").attr("fill-rule","evenodd").attr("clip-rule","evenodd").append("path").attr("transform","scale(.5)").attr("d","M12.258.001l.256.004.255.005.253.008.251.01.249.012.247.015.246.016.242.019.241.02.239.023.236.024.233.027.231.028.229.031.225.032.223.034.22.036.217.038.214.04.211.041.208.043.205.045.201.046.198.048.194.05.191.051.187.053.183.054.18.056.175.057.172.059.168.06.163.061.16.063.155.064.15.066.074.033.073.033.071.034.07.034.069.035.068.035.067.035.066.035.064.036.064.036.062.036.06.036.06.037.058.037.058.037.055.038.055.038.053.038.052.038.051.039.05.039.048.039.047.039.045.04.044.04.043.04.041.04.04.041.039.041.037.041.036.041.034.041.033.042.032.042.03.042.029.042.027.042.026.043.024.043.023.043.021.043.02.043.018.044.017.043.015.044.013.044.012.044.011.045.009.044.007.045.006.045.004.045.002.045.001.045v17l-.001.045-.002.045-.004.045-.006.045-.007.045-.009.044-.011.045-.012.044-.013.044-.015.044-.017.043-.018.044-.02.043-.021.043-.023.043-.024.043-.026.043-.027.042-.029.042-.03.042-.032.042-.033.042-.034.041-.036.041-.037.041-.039.041-.04.041-.041.04-.043.04-.044.04-.045.04-.047.039-.048.039-.05.039-.051.039-.052.038-.053.038-.055.038-.055.038-.058.037-.058.037-.06.037-.06.036-.062.036-.064.036-.064.036-.066.035-.067.035-.068.035-.069.035-.07.034-.071.034-.073.033-.074.033-.15.066-.155.064-.16.063-.163.061-.168.06-.172.059-.175.057-.18.056-.183.054-.187.053-.191.051-.194.05-.198.048-.201.046-.205.045-.208.043-.211.041-.214.04-.217.038-.22.036-.223.034-.225.032-.229.031-.231.028-.233.027-.236.024-.239.023-.241.02-.242.019-.246.016-.247.015-.249.012-.251.01-.253.008-.255.005-.256.004-.258.001-.258-.001-.256-.004-.255-.005-.253-.008-.251-.01-.249-.012-.247-.015-.245-.016-.243-.019-.241-.02-.238-.023-.236-.024-.234-.027-.231-.028-.228-.031-.226-.032-.223-.034-.22-.036-.217-.038-.214-.04-.211-.041-.208-.043-.204-.045-.201-.046-.198-.048-.195-.05-.19-.051-.187-.053-.184-.054-.179-.056-.176-.057-.172-.059-.167-.06-.164-.061-.159-.063-.155-.064-.151-.066-.074-.033-.072-.033-.072-.034-.07-.034-.069-.035-.068-.035-.067-.035-.066-.035-.064-.036-.063-.036-.062-.036-.061-.036-.06-.037-.058-.037-.057-.037-.056-.038-.055-.038-.053-.038-.052-.038-.051-.039-.049-.039-.049-.039-.046-.039-.046-.04-.044-.04-.043-.04-.041-.04-.04-.041-.039-.041-.037-.041-.036-.041-.034-.041-.033-.042-.032-.042-.03-.042-.029-.042-.027-.042-.026-.043-.024-.043-.023-.043-.021-.043-.02-.043-.018-.044-.017-.043-.015-.044-.013-.044-.012-.044-.011-.045-.009-.044-.007-.045-.006-.045-.004-.045-.002-.045-.001-.045v-17l.001-.045.002-.045.004-.045.006-.045.007-.045.009-.044.011-.045.012-.044.013-.044.015-.044.017-.043.018-.044.02-.043.021-.043.023-.043.024-.043.026-.043.027-.042.029-.042.03-.042.032-.042.033-.042.034-.041.036-.041.037-.041.039-.041.04-.041.041-.04.043-.04.044-.04.046-.04.046-.039.049-.039.049-.039.051-.039.052-.038.053-.038.055-.038.056-.038.057-.037.058-.037.06-.037.061-.036.062-.036.063-.036.064-.036.066-.035.067-.035.068-.035.069-.035.07-.034.072-.034.072-.033.074-.033.151-.066.155-.064.159-.063.164-.061.167-.06.172-.059.176-.057.179-.056.184-.054.187-.053.19-.051.195-.05.198-.048.201-.046.204-.045.208-.043.211-.041.214-.04.217-.038.22-.036.223-.034.226-.032.228-.031.231-.028.234-.027.236-.024.238-.023.241-.02.243-.019.245-.016.247-.015.249-.012.251-.01.253-.008.255-.005.256-.004.258-.001.258.001zm-9.258 20.499v.01l.001.021.003.021.004.022.005.021.006.022.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.023.018.024.019.024.021.024.022.025.023.024.024.025.052.049.056.05.061.051.066.051.07.051.075.051.079.052.084.052.088.052.092.052.097.052.102.051.105.052.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.048.144.049.147.047.152.047.155.047.16.045.163.045.167.043.171.043.176.041.178.041.183.039.187.039.19.037.194.035.197.035.202.033.204.031.209.03.212.029.216.027.219.025.222.024.226.021.23.02.233.018.236.016.24.015.243.012.246.01.249.008.253.005.256.004.259.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.021.224-.024.22-.026.216-.027.212-.028.21-.031.205-.031.202-.034.198-.034.194-.036.191-.037.187-.039.183-.04.179-.04.175-.042.172-.043.168-.044.163-.045.16-.046.155-.046.152-.047.148-.048.143-.049.139-.049.136-.05.131-.05.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.053.083-.051.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.05.023-.024.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.023.01-.022.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.127l-.077.055-.08.053-.083.054-.085.053-.087.052-.09.052-.093.051-.095.05-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.045-.118.044-.12.043-.122.042-.124.042-.126.041-.128.04-.13.04-.132.038-.134.038-.135.037-.138.037-.139.035-.142.035-.143.034-.144.033-.147.032-.148.031-.15.03-.151.03-.153.029-.154.027-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.01-.179.008-.179.008-.181.006-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.006-.179-.008-.179-.008-.178-.01-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.027-.153-.029-.151-.03-.15-.03-.148-.031-.146-.032-.145-.033-.143-.034-.141-.035-.14-.035-.137-.037-.136-.037-.134-.038-.132-.038-.13-.04-.128-.04-.126-.041-.124-.042-.122-.042-.12-.044-.117-.043-.116-.045-.113-.045-.112-.046-.109-.047-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.05-.093-.052-.09-.051-.087-.052-.085-.053-.083-.054-.08-.054-.077-.054v4.127zm0-5.654v.011l.001.021.003.021.004.021.005.022.006.022.007.022.009.022.01.022.011.023.012.023.013.023.015.024.016.023.017.024.018.024.019.024.021.024.022.024.023.025.024.024.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.052.11.051.114.051.119.052.123.05.127.051.131.05.135.049.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.044.171.042.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.022.23.02.233.018.236.016.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.012.241-.015.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.048.139-.05.136-.049.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.051.051-.049.023-.025.023-.024.021-.025.02-.024.019-.024.018-.024.017-.024.015-.023.014-.023.013-.024.012-.022.01-.023.01-.023.008-.022.006-.022.006-.022.004-.021.004-.022.001-.021.001-.021v-4.139l-.077.054-.08.054-.083.054-.085.052-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.049-.105.048-.106.047-.109.047-.111.046-.114.045-.115.044-.118.044-.12.044-.122.042-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.035-.143.033-.144.033-.147.033-.148.031-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.025-.161.024-.162.023-.163.022-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.011-.178.009-.179.009-.179.007-.181.007-.182.005-.182.004-.184.003-.184.002h-.37l-.184-.002-.184-.003-.182-.004-.182-.005-.181-.007-.179-.007-.179-.009-.178-.009-.176-.011-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.022-.162-.023-.161-.024-.159-.025-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.031-.146-.033-.145-.033-.143-.033-.141-.035-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.04-.126-.041-.124-.042-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.047-.105-.048-.102-.049-.1-.049-.097-.05-.095-.051-.093-.051-.09-.051-.087-.053-.085-.052-.083-.054-.08-.054-.077-.054v4.139zm0-5.666v.011l.001.02.003.022.004.021.005.022.006.021.007.022.009.023.01.022.011.023.012.023.013.023.015.023.016.024.017.024.018.023.019.024.021.025.022.024.023.024.024.025.052.05.056.05.061.05.066.051.07.051.075.052.079.051.084.052.088.052.092.052.097.052.102.052.105.051.11.052.114.051.119.051.123.051.127.05.131.05.135.05.139.049.144.048.147.048.152.047.155.046.16.045.163.045.167.043.171.043.176.042.178.04.183.04.187.038.19.037.194.036.197.034.202.033.204.032.209.03.212.028.216.027.219.025.222.024.226.021.23.02.233.018.236.017.24.014.243.012.246.01.249.008.253.006.256.003.259.001.26-.001.257-.003.254-.006.25-.008.247-.01.244-.013.241-.014.237-.016.233-.018.231-.02.226-.022.224-.024.22-.025.216-.027.212-.029.21-.03.205-.032.202-.033.198-.035.194-.036.191-.037.187-.039.183-.039.179-.041.175-.042.172-.043.168-.044.163-.045.16-.045.155-.047.152-.047.148-.048.143-.049.139-.049.136-.049.131-.051.126-.05.123-.051.118-.052.114-.051.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.052.07-.051.065-.051.06-.051.056-.05.051-.049.023-.025.023-.025.021-.024.02-.024.019-.024.018-.024.017-.024.015-.023.014-.024.013-.023.012-.023.01-.022.01-.023.008-.022.006-.022.006-.022.004-.022.004-.021.001-.021.001-.021v-4.153l-.077.054-.08.054-.083.053-.085.053-.087.053-.09.051-.093.051-.095.051-.097.05-.1.049-.102.048-.105.048-.106.048-.109.046-.111.046-.114.046-.115.044-.118.044-.12.043-.122.043-.124.042-.126.041-.128.04-.13.039-.132.039-.134.038-.135.037-.138.036-.139.036-.142.034-.143.034-.144.033-.147.032-.148.032-.15.03-.151.03-.153.028-.154.028-.156.027-.158.026-.159.024-.161.024-.162.023-.163.023-.165.021-.166.02-.167.019-.169.018-.169.017-.171.016-.173.015-.173.014-.175.013-.175.012-.177.01-.178.01-.179.009-.179.007-.181.006-.182.006-.182.004-.184.003-.184.001-.185.001-.185-.001-.184-.001-.184-.003-.182-.004-.182-.006-.181-.006-.179-.007-.179-.009-.178-.01-.176-.01-.176-.012-.175-.013-.173-.014-.172-.015-.171-.016-.17-.017-.169-.018-.167-.019-.166-.02-.165-.021-.163-.023-.162-.023-.161-.024-.159-.024-.157-.026-.156-.027-.155-.028-.153-.028-.151-.03-.15-.03-.148-.032-.146-.032-.145-.033-.143-.034-.141-.034-.14-.036-.137-.036-.136-.037-.134-.038-.132-.039-.13-.039-.128-.041-.126-.041-.124-.041-.122-.043-.12-.043-.117-.044-.116-.044-.113-.046-.112-.046-.109-.046-.106-.048-.105-.048-.102-.048-.1-.05-.097-.049-.095-.051-.093-.051-.09-.052-.087-.052-.085-.053-.083-.053-.08-.054-.077-.054v4.153zm8.74-8.179l-.257.004-.254.005-.25.008-.247.011-.244.012-.241.014-.237.016-.233.018-.231.021-.226.022-.224.023-.22.026-.216.027-.212.028-.21.031-.205.032-.202.033-.198.034-.194.036-.191.038-.187.038-.183.04-.179.041-.175.042-.172.043-.168.043-.163.045-.16.046-.155.046-.152.048-.148.048-.143.048-.139.049-.136.05-.131.05-.126.051-.123.051-.118.051-.114.052-.11.052-.106.052-.101.052-.096.052-.092.052-.088.052-.083.052-.079.052-.074.051-.07.052-.065.051-.06.05-.056.05-.051.05-.023.025-.023.024-.021.024-.02.025-.019.024-.018.024-.017.023-.015.024-.014.023-.013.023-.012.023-.01.023-.01.022-.008.022-.006.023-.006.021-.004.022-.004.021-.001.021-.001.021.001.021.001.021.004.021.004.022.006.021.006.023.008.022.01.022.01.023.012.023.013.023.014.023.015.024.017.023.018.024.019.024.02.025.021.024.023.024.023.025.051.05.056.05.06.05.065.051.07.052.074.051.079.052.083.052.088.052.092.052.096.052.101.052.106.052.11.052.114.052.118.051.123.051.126.051.131.05.136.05.139.049.143.048.148.048.152.048.155.046.16.046.163.045.168.043.172.043.175.042.179.041.183.04.187.038.191.038.194.036.198.034.202.033.205.032.21.031.212.028.216.027.22.026.224.023.226.022.231.021.233.018.237.016.241.014.244.012.247.011.25.008.254.005.257.004.26.001.26-.001.257-.004.254-.005.25-.008.247-.011.244-.012.241-.014.237-.016.233-.018.231-.021.226-.022.224-.023.22-.026.216-.027.212-.028.21-.031.205-.032.202-.033.198-.034.194-.036.191-.038.187-.038.183-.04.179-.041.175-.042.172-.043.168-.043.163-.045.16-.046.155-.046.152-.048.148-.048.143-.048.139-.049.136-.05.131-.05.126-.051.123-.051.118-.051.114-.052.11-.052.106-.052.101-.052.096-.052.092-.052.088-.052.083-.052.079-.052.074-.051.07-.052.065-.051.06-.05.056-.05.051-.05.023-.025.023-.024.021-.024.02-.025.019-.024.018-.024.017-.023.015-.024.014-.023.013-.023.012-.023.01-.023.01-.022.008-.022.006-.023.006-.021.004-.022.004-.021.001-.021.001-.021-.001-.021-.001-.021-.004-.021-.004-.022-.006-.021-.006-.023-.008-.022-.01-.022-.01-.023-.012-.023-.013-.023-.014-.023-.015-.024-.017-.023-.018-.024-.019-.024-.02-.025-.021-.024-.023-.024-.023-.025-.051-.05-.056-.05-.06-.05-.065-.051-.07-.052-.074-.051-.079-.052-.083-.052-.088-.052-.092-.052-.096-.052-.101-.052-.106-.052-.11-.052-.114-.052-.118-.051-.123-.051-.126-.051-.131-.05-.136-.05-.139-.049-.143-.048-.148-.048-.152-.048-.155-.046-.16-.046-.163-.045-.168-.043-.172-.043-.175-.042-.179-.041-.183-.04-.187-.038-.191-.038-.194-.036-.198-.034-.202-.033-.205-.032-.21-.031-.212-.028-.216-.027-.22-.026-.224-.023-.226-.022-.231-.021-.233-.018-.237-.016-.241-.014-.244-.012-.247-.011-.25-.008-.254-.005-.257-.004-.26-.001-.26.001z")},"insertDatabaseIcon"),PRt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-computer").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M2 2v13h20v-13h-20zm18 11h-16v-9h16v9zm-10.228 6l.466-1h3.524l.467 1h-4.457zm14.228 3h-24l2-6h2.104l-1.33 4h18.45l-1.297-4h2.073l2 6zm-5-10h-14v-7h14v7z")},"insertComputerIcon"),_Rt=y(function(A,e){A.append("defs").append("symbol").attr("id",e+"-clock").attr("width","24").attr("height","24").append("path").attr("transform","scale(.5)").attr("d","M12 2c5.514 0 10 4.486 10 10s-4.486 10-10 10-10-4.486-10-10 4.486-10 10-10zm0-2c-6.627 0-12 5.373-12 12s5.373 12 12 12 12-5.373 12-12-5.373-12-12-12zm5.848 12.459c.202.038.202.333.001.372-1.907.361-6.045 1.111-6.547 1.111-.719 0-1.301-.582-1.301-1.301 0-.512.77-5.447 1.125-7.445.034-.192.312-.181.343.014l.985 6.238 5.394 1.011z")},"insertClockIcon"),WRt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",7.9).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M -1 0 L 10 5 L 0 10 z")},"insertArrowHead"),qRt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-filled-head").attr("refX",15.5).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"insertArrowFilledHead"),zRt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-sequencenumber").attr("refX",15).attr("refY",15).attr("markerWidth",60).attr("markerHeight",40).attr("orient","auto").append("circle").attr("cx",15).attr("cy",15).attr("r",6)},"insertSequenceNumber"),ZRt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",4.5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},"insertArrowCrossHead"),VRt=y(function(A,e){let{theme:t}=e;A.append("defs").append("filter").attr("id","drop-shadow").attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity","0.06").attr("flood-color",`${t==="redux"||t==="redux-color"?"#000000":"#FFFFFF"}`)},"insertDropShadow"),vie=y(function(){return{x:0,y:0,fill:void 0,anchor:void 0,style:"#666",width:void 0,height:void 0,textMargin:0,rx:0,ry:0,tspan:!0,valign:void 0}},"getTextObj"),jRt=y(function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),sh=function(){function A(u,a,n,o,s,l,g){let C=a.append("text").attr("x",n+s/2).attr("y",o+l/2+5).style("text-anchor","middle").text(u);i(C,g)}y(A,"byText");function e(u,a,n,o,s,l,g,C){let{actorFontSize:B,actorFontFamily:E,actorFontWeight:d}=C,[I,h]=rl(B),Q=u.split(_e.lineBreakRegex);for(let p=0;p<Q.length;p++){let m=p*I-I*(Q.length-1)/2,f=a.append("text").attr("x",n+s/2).attr("y",o).style("text-anchor","middle").style("font-size",h).style("font-weight",d).style("font-family",E);f.append("tspan").attr("x",n+s/2).attr("dy",m).text(Q[p]),f.attr("y",o+l/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),i(f,g)}}y(e,"byTspan");function t(u,a,n,o,s,l,g,C){let B=a.append("switch"),d=B.append("foreignObject").attr("x",n).attr("y",o).attr("width",s).attr("height",l).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");d.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(u),e(u,B,n,o,s,l,g,C),i(d,g)}y(t,"byFo");async function r(u,a,n,o,s,l,g,C){let B=await lD(u,ot()),E=a.append("switch"),I=E.append("foreignObject").attr("x",n+s/2-B.width/2).attr("y",o+l/2-B.height/2).attr("width",B.width).attr("height",B.height).append("xhtml:div").style("height","100%").style("width","100%");I.append("div").style("text-align","center").style("vertical-align","middle").html(await gD(u,ot())),e(u,E,n,o,s,l,g,C),i(I,g)}y(r,"byKatex");function i(u,a){for(let n in a)if(a.hasOwnProperty(n))u.attr(n,a[n])}return y(i,"_setTextAttrs"),function(u,a=!1){if(a)return r;return u.textPlacement==="fo"?t:u.textPlacement==="old"?A:e}}(),XRt=function(){function A(i,u,a,n,o,s,l){let g=u.append("text").attr("x",a).attr("y",n).style("text-anchor","start").text(i);r(g,l)}y(A,"byText");function e(i,u,a,n,o,s,l,g){let{actorFontSize:C,actorFontFamily:B,actorFontWeight:E}=g,d=i.split(_e.lineBreakRegex);for(let I=0;I<d.length;I++){let h=I*C-C*(d.length-1)/2,Q=u.append("text").attr("x",a).attr("y",n).style("text-anchor","start").style("font-size",C).style("font-weight",E).style("font-family",B);Q.append("tspan").attr("x",a).attr("dy",h).text(d[I]),Q.attr("y",n+s/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),r(Q,l)}}y(e,"byTspan");function t(i,u,a,n,o,s,l,g){let C=u.append("switch"),E=C.append("foreignObject").attr("x",a).attr("y",n).attr("width",o).attr("height",s).append("xhtml:div").style("display","table").style("height","100%").style("width","100%");E.append("div").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,C,a,n,o,s,l,g),r(E,l)}y(t,"byFo");function r(i,u){for(let a in u)if(u.hasOwnProperty(a))i.attr(a,u[a])}return y(r,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?t:i.textPlacement==="old"?A:e}}(),$Rt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-solidTopArrowHead").attr("refX",7.9).attr("refY",7.25).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 8 L 0 8 z")},"insertSolidTopArrowHead"),ANt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-solidBottomArrowHead").attr("refX",7.9).attr("refY",0.75).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 0 L 0 8 z")},"insertSolidBottomArrowHead"),eNt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-stickTopArrowHead").attr("refX",7.5).attr("refY",7).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 7 7").attr("stroke","black").attr("stroke-width",1.5).attr("fill","none")},"insertStickTopArrowHead"),tNt=y(function(A,e){A.append("defs").append("marker").attr("id",e+"-stickBottomArrowHead").attr("refX",7.5).attr("refY",0).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto-start-reverse").append("path").attr("d","M 0 7 L 7 0").attr("stroke","black").attr("stroke-width",1.5).attr("fill","none")},"insertStickBottomArrowHead"),zu={drawRect:$x,drawText:E6,drawLabel:yie,drawActor:TRt,drawBox:YRt,drawPopup:FRt,anchorElement:HRt,drawActivation:KRt,drawLoop:JRt,drawBackgroundRect:bie,insertArrowHead:WRt,insertArrowFilledHead:qRt,insertSequenceNumber:zRt,insertArrowCrossHead:ZRt,insertDatabaseIcon:ORt,insertComputerIcon:PRt,insertClockIcon:_Rt,getTextObj:vie,getNoteRect:jRt,fixLifeLineHeights:wie,sanitizeUrl:lCA.sanitizeUrl,insertDropShadow:VRt,insertSolidTopArrowHead:$Rt,insertSolidBottomArrowHead:ANt,insertStickTopArrowHead:eNt,insertStickBottomArrowHead:tNt},ne={},ze={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],activations:[],models:{getHeight:y(function(){return Math.max.apply(null,this.actors.length===0?[0]:this.actors.map((A)=>A.height||0))+(this.loops.length===0?0:this.loops.map((A)=>A.height||0).reduce((A,e)=>A+e))+(this.messages.length===0?0:this.messages.map((A)=>A.height||0).reduce((A,e)=>A+e))+(this.notes.length===0?0:this.notes.map((A)=>A.height||0).reduce((A,e)=>A+e))},"getHeight"),clear:y(function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},"clear"),addBox:y(function(A){this.boxes.push(A)},"addBox"),addActor:y(function(A){this.actors.push(A)},"addActor"),addLoop:y(function(A){this.loops.push(A)},"addLoop"),addMessage:y(function(A){this.messages.push(A)},"addMessage"),addNote:y(function(A){this.notes.push(A)},"addNote"),lastActor:y(function(){return this.actors[this.actors.length-1]},"lastActor"),lastLoop:y(function(){return this.loops[this.loops.length-1]},"lastLoop"),lastMessage:y(function(){return this.messages[this.messages.length-1]},"lastMessage"),lastNote:y(function(){return this.notes[this.notes.length-1]},"lastNote"),actors:[],boxes:[],loops:[],messages:[],notes:[]},init:y(function(){this.sequenceItems=[],this.activations=[],this.models.clear(),this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0,xie(OA())},"init"),updateVal:y(function(A,e,t,r){if(A[e]===void 0)A[e]=t;else A[e]=r(t,A[e])},"updateVal"),updateBounds:y(function(A,e,t,r){let i=this,u=0;function a(n){return y(function(s){u++;let l=i.sequenceItems.length-u+1;if(i.updateVal(s,"starty",e-l*ne.boxMargin,Math.min),i.updateVal(s,"stopy",r+l*ne.boxMargin,Math.max),i.updateVal(ze.data,"startx",A-l*ne.boxMargin,Math.min),i.updateVal(ze.data,"stopx",t+l*ne.boxMargin,Math.max),n!=="activation")i.updateVal(s,"startx",A-l*ne.boxMargin,Math.min),i.updateVal(s,"stopx",t+l*ne.boxMargin,Math.max),i.updateVal(ze.data,"starty",e-l*ne.boxMargin,Math.min),i.updateVal(ze.data,"stopy",r+l*ne.boxMargin,Math.max)},"updateItemBounds")}y(a,"updateFn"),this.sequenceItems.forEach(a()),this.activations.forEach(a("activation"))},"updateBounds"),insert:y(function(A,e,t,r){let i=_e.getMin(A,t),u=_e.getMax(A,t),a=_e.getMin(e,r),n=_e.getMax(e,r);this.updateVal(ze.data,"startx",i,Math.min),this.updateVal(ze.data,"starty",a,Math.min),this.updateVal(ze.data,"stopx",u,Math.max),this.updateVal(ze.data,"stopy",n,Math.max),this.updateBounds(i,a,u,n)},"insert"),newActivation:y(function(A,e,t){let r=t.get(A.from),i=pO(A.from).length||0,u=r.x+r.width/2+(i-1)*ne.activationWidth/2;this.activations.push({startx:u,starty:this.verticalPos+2,stopx:u+ne.activationWidth,stopy:void 0,actor:A.from,anchored:zu.anchorElement(e)})},"newActivation"),endActivation:y(function(A){let e=this.activations.map(function(t){return t.actor}).lastIndexOf(A.from);return this.activations.splice(e,1)[0]},"endActivation"),createLoop:y(function(A={message:void 0,wrap:!1,width:void 0},e){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:A.message,wrap:A.wrap,width:A.width,height:0,fill:e}},"createLoop"),newLoop:y(function(A={message:void 0,wrap:!1,width:void 0},e){this.sequenceItems.push(this.createLoop(A,e))},"newLoop"),endLoop:y(function(){return this.sequenceItems.pop()},"endLoop"),isLoopOverlap:y(function(){return this.sequenceItems.length?this.sequenceItems[this.sequenceItems.length-1].overlap:!1},"isLoopOverlap"),addSectionToLoop:y(function(A){let e=this.sequenceItems.pop();e.sections=e.sections||[],e.sectionTitles=e.sectionTitles||[],e.sections.push({y:ze.getVerticalPos(),height:0}),e.sectionTitles.push(A),this.sequenceItems.push(e)},"addSectionToLoop"),saveVerticalPos:y(function(){if(this.isLoopOverlap())this.savedVerticalPos=this.verticalPos},"saveVerticalPos"),resetVerticalPos:y(function(){if(this.isLoopOverlap())this.verticalPos=this.savedVerticalPos},"resetVerticalPos"),bumpVerticalPos:y(function(A){this.verticalPos=this.verticalPos+A,this.data.stopy=_e.getMax(this.data.stopy,this.verticalPos)},"bumpVerticalPos"),getVerticalPos:y(function(){return this.verticalPos},"getVerticalPos"),getBounds:y(function(){return{bounds:this.data,models:this.models}},"getBounds")},rNt=y(async function(A,e,t){ze.bumpVerticalPos(ne.boxMargin),e.height=ne.boxMargin,e.starty=ze.getVerticalPos();let r=K0();r.x=e.startx,r.y=e.starty,r.width=e.width||ne.width,r.class="note";let i=A.append("g");i.attr("data-et","note"),i.attr("data-id","i"+t);let u=zu.drawRect(i,r),a=EY();a.x=e.startx,a.y=e.starty,a.width=r.width,a.dy="1em",a.text=e.message,a.class="noteText",a.fontFamily=ne.noteFontFamily,a.fontSize=ne.noteFontSize,a.fontWeight=ne.noteFontWeight,a.anchor=ne.noteAlign,a.textMargin=ne.noteMargin,a.valign="center";let n=da(a.text)?await IO(i,a):E6(i,a),o=Math.round(n.map((s)=>(s._groups||s)[0][0].getBBox().height).reduce((s,l)=>s+l));u.attr("height",o+2*ne.noteMargin),e.height+=o+2*ne.noteMargin,ze.bumpVerticalPos(o+2*ne.noteMargin),e.stopy=e.starty+o+2*ne.noteMargin,e.stopx=e.startx+r.width,ze.insert(e.startx,e.starty,e.stopx,e.stopy),ze.models.addNote(e)},"drawNote"),mie=y(function(A,e,t,r,i,u,a){let n=r.db.getActors(),o=n.get(e.from),s=n.get(e.to),l=t.sequenceVisible,g=o.x+o.width/2,C=s.x+s.width/2,B=g<=C,E=Nie(e,r),d=A.append("g"),I=16.5,h=y((D,w)=>{let b=D?I:-I;return w?-b:b},"getCircleOffset"),Q=y((D)=>{d.append("circle").attr("cx",D).attr("cy",a).attr("r",5).attr("width",10).attr("height",10)},"drawCircle"),{CENTRAL_CONNECTION:p,CENTRAL_CONNECTION_REVERSE:m,CENTRAL_CONNECTION_DUAL:f}=r.db.LINETYPE;if(l)switch(e.centralConnection){case p:if(E)C+=h(B,!0);break;case m:if(!E)g+=h(B,!1);break;case f:if(E)C+=h(B,!0);else g+=h(B,!1);break}switch(e.centralConnection){case p:Q(C);break;case m:Q(g);break;case f:Q(g),Q(C);break}},"drawCentralConnection"),gm=y((A)=>({fontFamily:A.messageFontFamily,fontSize:A.messageFontSize,fontWeight:A.messageFontWeight}),"messageFont"),B6=y((A)=>({fontFamily:A.noteFontFamily,fontSize:A.noteFontSize,fontWeight:A.noteFontWeight}),"noteFont"),oCA=y((A)=>({fontFamily:A.actorFontFamily,fontSize:A.actorFontSize,fontWeight:A.actorFontWeight}),"actorFont");y(kie,"boundMessage");iNt=y(async function(A,e,t,r,i,u){let{startx:a,stopx:n,starty:o,message:s,type:l,sequenceIndex:g,sequenceVisible:C}=e,B=Jt.calculateTextDimensions(s,gm(ne)),E=EY();if(E.x=Math.min(a,n),E.y=o+10,E.width=Math.abs(n-a),E.class="messageText",E.dy="1em",E.text=s,E.fontFamily=ne.messageFontFamily,E.fontSize=ne.messageFontSize,E.fontWeight=ne.messageFontWeight,E.anchor=ne.messageAlign,E.valign="center",E.textMargin=ne.wrapPadding,E.tspan=!1,da(E.text))await IO(A,E,{startx:a,stopx:n,starty:t});else E6(A,E);let d=B.width,I;if(a===n){let Q=C||ne.showSequenceNumbers,p=Nie(i,r),m=cNt(i,r),f=a+(Q&&(p||m)?10:0);if(ne.rightAngles)I=A.append("path").attr("d",`M ${f},${t} H ${a+_e.getMax(ne.width/2,d/2)} V ${t+25} H ${a}`);else I=A.append("path").attr("d","M "+f+","+t+" C "+(f+60)+","+(t-10)+" "+(a+60)+","+(t+30)+" "+a+","+(t+20));if(aCA(i,r))mie(A,i,e,r,a,n,t)}else if(I=A.append("line"),I.attr("x1",a),I.attr("y1",t),I.attr("x2",n),I.attr("y2",t),aCA(i,r))mie(A,i,e,r,a,n,t);if(l===r.db.LINETYPE.DOTTED||l===r.db.LINETYPE.DOTTED_CROSS||l===r.db.LINETYPE.DOTTED_POINT||l===r.db.LINETYPE.DOTTED_OPEN||l===r.db.LINETYPE.BIDIRECTIONAL_DOTTED||l===r.db.LINETYPE.SOLID_TOP_DOTTED||l===r.db.LINETYPE.SOLID_BOTTOM_DOTTED||l===r.db.LINETYPE.STICK_TOP_DOTTED||l===r.db.LINETYPE.STICK_BOTTOM_DOTTED||l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED)I.style("stroke-dasharray","3, 3"),I.attr("class","messageLine1");else I.attr("class","messageLine0");I.attr("data-et","message"),I.attr("data-id","i"+e.id),I.attr("data-from",e.from),I.attr("data-to",e.to);let h="";if(ne.arrowMarkerAbsolute)h=Jp(!0);if(I.attr("stroke-width",2),I.attr("stroke","none"),I.style("fill","none"),l===r.db.LINETYPE.SOLID_TOP||l===r.db.LINETYPE.SOLID_TOP_DOTTED)I.attr("marker-end","url("+h+"#"+u+"-solidTopArrowHead)");if(l===r.db.LINETYPE.SOLID_BOTTOM||l===r.db.LINETYPE.SOLID_BOTTOM_DOTTED)I.attr("marker-end","url("+h+"#"+u+"-solidBottomArrowHead)");if(l===r.db.LINETYPE.STICK_TOP||l===r.db.LINETYPE.STICK_TOP_DOTTED)I.attr("marker-end","url("+h+"#"+u+"-stickTopArrowHead)");if(l===r.db.LINETYPE.STICK_BOTTOM||l===r.db.LINETYPE.STICK_BOTTOM_DOTTED)I.attr("marker-end","url("+h+"#"+u+"-stickBottomArrowHead)");if(l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED)I.attr("marker-start","url("+h+"#"+u+"-solidBottomArrowHead)");if(l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED)I.attr("marker-start","url("+h+"#"+u+"-solidTopArrowHead)");if(l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED)I.attr("marker-start","url("+h+"#"+u+"-stickBottomArrowHead)");if(l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED)I.attr("marker-start","url("+h+"#"+u+"-stickTopArrowHead)");if(l===r.db.LINETYPE.SOLID||l===r.db.LINETYPE.DOTTED)I.attr("marker-end","url("+h+"#"+u+"-arrowhead)");if(l===r.db.LINETYPE.BIDIRECTIONAL_SOLID||l===r.db.LINETYPE.BIDIRECTIONAL_DOTTED)I.attr("marker-start","url("+h+"#"+u+"-arrowhead)"),I.attr("marker-end","url("+h+"#"+u+"-arrowhead)");if(l===r.db.LINETYPE.SOLID_POINT||l===r.db.LINETYPE.DOTTED_POINT)I.attr("marker-end","url("+h+"#"+u+"-filled-head)");if(l===r.db.LINETYPE.SOLID_CROSS||l===r.db.LINETYPE.DOTTED_CROSS)I.attr("marker-end","url("+h+"#"+u+"-crosshead)");if(C||ne.showSequenceNumbers){let Q=l===r.db.LINETYPE.BIDIRECTIONAL_SOLID||l===r.db.LINETYPE.BIDIRECTIONAL_DOTTED,p=l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE||l===r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE||l===r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,m=6,f=aCA(i,r),D=a,w=n;if(Q){if(a<n)D=a+12;else D=a-6+(f?-5:0),D+=i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_DUAL||i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_REVERSE?-7.5:0;I.attr("x1",D)}else if(p){if(n>a)w=n-12;else w=n-6,D+=i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_DUAL||i?.centralConnection===r.db.LINETYPE.CENTRAL_CONNECTION_REVERSE?-7.5:0;w+=f?15:0,I.attr("x2",w),I.attr("x1",D)}else I.attr("x1",a+6);let b=0,k=a===n,v=a<=n;if(k)b=e.fromBounds+1;else if(p)b=v?e.toBounds-1:e.fromBounds+1;else b=v?e.fromBounds+1:e.toBounds-1;let S="12px",x=g.toString().length;if(x>5)S="7px";else if(x>3)S="9px";A.append("line").attr("x1",b).attr("y1",t).attr("x2",b).attr("y2",t).attr("stroke-width",0).attr("marker-start","url("+h+"#"+u+"-sequencenumber)"),A.append("text").attr("x",b).attr("y",t+4).attr("font-family","sans-serif").attr("font-size",S).attr("text-anchor","middle").attr("class","sequenceNumber").text(g)}},"drawMessage"),uNt=y(function(A,e,t,r,i,u,a){let n=0,o=0,s=void 0,l=0;for(let g of r){let C=e.get(g),B=C.box;if(s&&s!=B){if(!a)ze.models.addBox(s);o+=ne.boxMargin+s.margin}if(B&&B!=s){if(!a)B.x=n+o,B.y=i;o+=B.margin}if(C.width=_e.getMax(C.width||ne.width,ne.width),C.height=_e.getMax(C.height||ne.height,ne.height),C.margin=C.margin||ne.actorMargin,l=_e.getMax(l,C.height),t.get(C.name))o+=C.width/2;if(C.x=n+o,C.starty=ze.getVerticalPos(),ze.insert(C.x,i,C.x+C.width,C.height),n+=C.width+o,C.box)C.box.width=n+B.margin-C.box.x;o=C.margin,s=C.box,ze.models.addActor(C)}if(s&&!a)ze.models.addBox(s);ze.bumpVerticalPos(l)},"addActorRenderingData"),sCA=y(async function(A,e,t,r,i,u,a){if(!r)for(let n of t){let o=e.get(n);await zu.drawActor(A,o,ne,!1,i,u,a)}else{let n=0;ze.bumpVerticalPos(ne.boxMargin*2);for(let o of t){let s=e.get(o);if(!s.stopy)s.stopy=ze.getVerticalPos();let l=await zu.drawActor(A,s,ne,!0,i,u,a);n=_e.getMax(n,l)}ze.bumpVerticalPos(n+ne.boxMargin)}},"drawActors"),Fie=y(function(A,e,t,r){let i=0,u=0;for(let a of t){let n=e.get(a),o=nNt(n),s=zu.drawPopup(A,n,o,ne,ne.forceMenus,r);if(s.height>i)i=s.height;if(s.width+n.x>u)u=s.width+n.x}return{maxHeight:i,maxWidth:u}},"drawActorsPopup"),xie=y(function(A){if(Ea(ne,A),A.fontFamily)ne.actorFontFamily=ne.noteFontFamily=ne.messageFontFamily=A.fontFamily;if(A.fontSize)ne.actorFontSize=ne.noteFontSize=ne.messageFontSize=A.fontSize;if(A.fontWeight)ne.actorFontWeight=ne.noteFontWeight=ne.messageFontWeight=A.fontWeight},"setConf"),pO=y(function(A){return ze.activations.filter(function(e){return e.actor===A})},"actorActivations"),Die=y(function(A,e){let t=e.get(A),r=pO(A),i=r.reduce(function(a,n){return _e.getMin(a,n.startx)},t.x+t.width/2-1),u=r.reduce(function(a,n){return _e.getMax(a,n.stopx)},t.x+t.width/2+1);return[i,u]},"activationBounds");y(GC,"adjustLoopHeightForWrap");y(Sie,"adjustCreatedDestroyedData");aNt=y(async function(A,e,t,r){let{securityLevel:i,sequence:u,look:a,themeVariables:n}=OA();ne=u;let o;if(i==="sandbox")o=Qe("#i"+e);let s=i==="sandbox"?Qe(o.nodes()[0].contentDocument.body):Qe("body"),l=i==="sandbox"?o.nodes()[0].contentDocument:document;ze.init(),sA.debug(r.db);let g=i==="sandbox"?s.select(`[id="${e}"]`):Qe(`[id="${e}"]`),C=r.db.getActors(),B=r.db.getCreatedActors(),E=r.db.getDestroyedActors(),d=r.db.getBoxes(),I=r.db.getActorKeys(),h=r.db.getMessages(),Q=r.db.getDiagramTitle(),p=r.db.hasAtLeastOneBox(),m=r.db.hasAtLeastOneBoxWithTitle(),f=await Lie(C,h,r);if(ne.height=await Rie(C,f,d),zu.insertComputerIcon(g,e),zu.insertDatabaseIcon(g,e),zu.insertClockIcon(g,e),p){if(ze.bumpVerticalPos(ne.boxMargin),m)ze.bumpVerticalPos(d[0].textMaxHeight)}if(ne.hideUnusedParticipants===!0){let K=new Set;h.forEach((O)=>{K.add(O.from),K.add(O.to)}),I=I.filter((O)=>K.has(O))}let D=new Map(I.map((K,O)=>[C.get(K)?.name??K,O]));uNt(g,C,B,I,0,h,!1);let w=await BNt(h,C,f,r);if(zu.insertArrowHead(g,e),zu.insertArrowCrossHead(g,e),zu.insertArrowFilledHead(g,e),zu.insertSequenceNumber(g,e),zu.insertSolidTopArrowHead(g,e),zu.insertSolidBottomArrowHead(g,e),zu.insertStickTopArrowHead(g,e),zu.insertStickBottomArrowHead(g,e),a==="neo")zu.insertDropShadow(g,ne);function b(K,O){let P=ze.endActivation(K);if(P.starty+18>O)P.starty=O-6,O+=12;zu.drawActivation(g,P,O,ne,pO(K.from).length,r,D),ze.insert(P.startx,O-10,P.stopx,O)}y(b,"activeEnd");let k=1,v=1,S=[],x=[],F=0;for(let K of h){let O,P,z;switch(K.type){case r.db.LINETYPE.NOTE:ze.resetVerticalPos(),P=K.noteModel,await rNt(g,P,K.id);break;case r.db.LINETYPE.ACTIVE_START:ze.newActivation(K,g,C);break;case r.db.LINETYPE.CENTRAL_CONNECTION:ze.newActivation(K,g,C);break;case r.db.LINETYPE.CENTRAL_CONNECTION_REVERSE:ze.newActivation(K,g,C);break;case r.db.LINETYPE.ACTIVE_END:b(K,ze.getVerticalPos());break;case r.db.LINETYPE.LOOP_START:GC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(AA)=>ze.newLoop(AA));break;case r.db.LINETYPE.LOOP_END:O=ze.endLoop(),await zu.drawLoop(g,O,"loop",ne,K),ze.bumpVerticalPos(O.stopy-ze.getVerticalPos()),ze.models.addLoop(O);break;case r.db.LINETYPE.RECT_START:GC(w,K,ne.boxMargin,ne.boxMargin,(AA)=>{let W=AA.message;if(!W)W=n?.rectBkgColor||n?.actorBkg||"rgba(128, 128, 128, 0.5)";ze.newLoop(void 0,W)});break;case r.db.LINETYPE.RECT_END:O=ze.endLoop(),x.push(O),ze.models.addLoop(O),ze.bumpVerticalPos(O.stopy-ze.getVerticalPos());break;case r.db.LINETYPE.OPT_START:GC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(AA)=>ze.newLoop(AA));break;case r.db.LINETYPE.OPT_END:O=ze.endLoop(),await zu.drawLoop(g,O,"opt",ne,K),ze.bumpVerticalPos(O.stopy-ze.getVerticalPos()),ze.models.addLoop(O);break;case r.db.LINETYPE.ALT_START:GC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(AA)=>ze.newLoop(AA));break;case r.db.LINETYPE.ALT_ELSE:GC(w,K,ne.boxMargin+ne.boxTextMargin,ne.boxMargin,(AA)=>ze.addSectionToLoop(AA));break;case r.db.LINETYPE.ALT_END:O=ze.endLoop(),await zu.drawLoop(g,O,"alt",ne,K),ze.bumpVerticalPos(O.stopy-ze.getVerticalPos()),ze.models.addLoop(O);break;case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:GC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(AA)=>ze.newLoop(AA)),ze.saveVerticalPos();break;case r.db.LINETYPE.PAR_AND:GC(w,K,ne.boxMargin+ne.boxTextMargin,ne.boxMargin,(AA)=>ze.addSectionToLoop(AA));break;case r.db.LINETYPE.PAR_END:O=ze.endLoop(),await zu.drawLoop(g,O,"par",ne,K),ze.bumpVerticalPos(O.stopy-ze.getVerticalPos()),ze.models.addLoop(O);break;case r.db.LINETYPE.AUTONUMBER:if(k=K.message.start||k,v=K.message.step||v,K.message.visible)r.db.enableSequenceNumbers();else r.db.disableSequenceNumbers();break;case r.db.LINETYPE.CRITICAL_START:GC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(AA)=>ze.newLoop(AA));break;case r.db.LINETYPE.CRITICAL_OPTION:GC(w,K,ne.boxMargin+ne.boxTextMargin,ne.boxMargin,(AA)=>ze.addSectionToLoop(AA));break;case r.db.LINETYPE.CRITICAL_END:O=ze.endLoop(),await zu.drawLoop(g,O,"critical",ne,K),ze.bumpVerticalPos(O.stopy-ze.getVerticalPos()),ze.models.addLoop(O);break;case r.db.LINETYPE.BREAK_START:GC(w,K,ne.boxMargin,ne.boxMargin+ne.boxTextMargin,(AA)=>ze.newLoop(AA));break;case r.db.LINETYPE.BREAK_END:O=ze.endLoop(),await zu.drawLoop(g,O,"break",ne,K),ze.bumpVerticalPos(O.stopy-ze.getVerticalPos()),ze.models.addLoop(O);break;default:try{z=K.msgModel,z.starty=ze.getVerticalPos(),z.sequenceIndex=k,z.sequenceVisible=r.db.showSequenceNumbers(),z.id=K.id,z.from=K.from,z.to=K.to;let AA=await kie(g,z);Sie(K,z,AA,F,C,B,E),S.push({messageModel:z,lineStartY:AA,msg:K}),ze.models.addMessage(z)}catch(AA){sA.error("error while drawing message",AA)}}if([r.db.LINETYPE.SOLID_OPEN,r.db.LINETYPE.DOTTED_OPEN,r.db.LINETYPE.SOLID,r.db.LINETYPE.SOLID_TOP,r.db.LINETYPE.SOLID_BOTTOM,r.db.LINETYPE.STICK_TOP,r.db.LINETYPE.STICK_BOTTOM,r.db.LINETYPE.SOLID_TOP_DOTTED,r.db.LINETYPE.SOLID_BOTTOM_DOTTED,r.db.LINETYPE.STICK_TOP_DOTTED,r.db.LINETYPE.STICK_BOTTOM_DOTTED,r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE,r.db.LINETYPE.STICK_ARROW_TOP_REVERSE,r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,r.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,r.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,r.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,r.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,r.db.LINETYPE.DOTTED,r.db.LINETYPE.SOLID_CROSS,r.db.LINETYPE.DOTTED_CROSS,r.db.LINETYPE.SOLID_POINT,r.db.LINETYPE.DOTTED_POINT,r.db.LINETYPE.BIDIRECTIONAL_SOLID,r.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(K.type))k=Math.round((k+v)*100)/100;F++}sA.debug("createdActors",B),sA.debug("destroyedActors",E),await sCA(g,C,I,!1,e,r,D);for(let K of S)await iNt(g,K.messageModel,K.lineStartY,r,K.msg,e);if(ne.mirrorActors)await sCA(g,C,I,!0,e,r,D);x.forEach((K)=>zu.drawBackgroundRect(g,K)),wie(g,C,I,ne);for(let K of ze.models.boxes){K.height=ze.getVerticalPos()-K.y,ze.insert(K.x,K.y,K.x+K.width,K.height);let O=ne.boxMargin*2;K.startx=K.x-O,K.starty=K.y-O*0.25,K.stopx=K.startx+K.width+2*O,K.stopy=K.starty+K.height+O*0.75,K.stroke="rgb(0,0,0, 0.5)",zu.drawBox(g,K,ne)}if(p)ze.bumpVerticalPos(ne.boxMargin);let T=Fie(g,C,I,l),{bounds:R}=ze.getBounds();if(R.startx===void 0)R.startx=0;if(R.starty===void 0)R.starty=0;if(R.stopx===void 0)R.stopx=0;if(R.stopy===void 0)R.stopy=0;let L=R.stopy-R.starty;if(L<T.maxHeight)L=T.maxHeight;let M=L+2*ne.diagramMarginY;if(ne.mirrorActors)M=M-ne.boxMargin+ne.bottomMarginAdj;let U=R.stopx-R.startx;if(U<T.maxWidth)U=T.maxWidth;let Y=U+2*ne.diagramMarginX;if(Q)g.append("text").text(Q).attr("x",(R.stopx-R.startx)/2-2*ne.diagramMarginX).attr("y",-25);Xr(g,M,Y,ne.useMaxWidth);let H=Q?40:0,J=C.size&&a==="neo"?30:0;g.attr("viewBox",R.startx-ne.diagramMarginX+" -"+(ne.diagramMarginY+H)+" "+Y+" "+(M+H+J)),sA.debug("models:",ze.models)},"draw");y(Lie,"getMaxMessageWidthPerActor");nNt=y(function(A){let e=0,t=oCA(ne);for(let r in A.links){let u=Jt.calculateTextDimensions(r,t).width+2*ne.wrapPadding+2*ne.boxMargin;if(e<u)e=u}return e},"getRequiredPopupWidth");y(Rie,"calculateActorMargins");oNt=y(async function(A,e,t){let r=e.get(A.from),i=e.get(A.to),u=r.x,a=i.x,n=A.wrap&&A.message,o=da(A.message)?await lD(A.message,OA()):Jt.calculateTextDimensions(n?Jt.wrapLabel(A.message,ne.width,B6(ne)):A.message,B6(ne)),s={width:n?ne.width:_e.getMax(ne.width,o.width+2*ne.noteMargin),height:0,startx:r.x,stopx:0,starty:0,stopy:0,message:A.message};if(A.placement===t.db.PLACEMENT.RIGHTOF)s.width=n?_e.getMax(ne.width,o.width):_e.getMax(r.width/2+i.width/2,o.width+2*ne.noteMargin),s.startx=u+(r.width+ne.actorMargin)/2;else if(A.placement===t.db.PLACEMENT.LEFTOF)s.width=n?_e.getMax(ne.width,o.width+2*ne.noteMargin):_e.getMax(r.width/2+i.width/2,o.width+2*ne.noteMargin),s.startx=u-s.width+(r.width-ne.actorMargin)/2;else if(A.to===A.from)o=Jt.calculateTextDimensions(n?Jt.wrapLabel(A.message,_e.getMax(ne.width,r.width),B6(ne)):A.message,B6(ne)),s.width=n?_e.getMax(ne.width,r.width):_e.getMax(r.width,ne.width,o.width+2*ne.noteMargin),s.startx=u+(r.width-s.width)/2;else s.width=Math.abs(u+r.width/2-(a+i.width/2))+ne.actorMargin,s.startx=u<a?u+r.width/2-ne.actorMargin/2:a+i.width/2-ne.actorMargin/2;if(n)s.message=Jt.wrapLabel(A.message,s.width-2*ne.wrapPadding,B6(ne));return sA.debug(`NM:[${s.startx},${s.stopx},${s.starty},${s.stopy}:${s.width},${s.height}=${A.message}]`),s},"buildNoteModel"),aCA=y(function(A,e){let{CENTRAL_CONNECTION:t,CENTRAL_CONNECTION_REVERSE:r,CENTRAL_CONNECTION_DUAL:i}=e.db.LINETYPE;return[t,r,i].includes(A.centralConnection)},"hasCentralConnection"),gNt=y(function(A,e,t){let{CENTRAL_CONNECTION_REVERSE:r,CENTRAL_CONNECTION_DUAL:i,BIDIRECTIONAL_SOLID:u,BIDIRECTIONAL_DOTTED:a}=e.db.LINETYPE,n=0;if(A.centralConnection===r||A.centralConnection===i)n+=sNt;if((A.centralConnection===r||A.centralConnection===i)&&(A.type===u||A.type===a))n+=t?0:-lNt;return n},"calculateCentralConnectionOffset"),Nie=y(function(A,e){let{SOLID_ARROW_TOP_REVERSE:t,SOLID_ARROW_TOP_REVERSE_DOTTED:r,SOLID_ARROW_BOTTOM_REVERSE:i,SOLID_ARROW_BOTTOM_REVERSE_DOTTED:u,STICK_ARROW_TOP_REVERSE:a,STICK_ARROW_TOP_REVERSE_DOTTED:n,STICK_ARROW_BOTTOM_REVERSE:o,STICK_ARROW_BOTTOM_REVERSE_DOTTED:s}=e.db.LINETYPE;return[t,r,i,u,a,n,o,s].includes(A.type)},"isReverseArrowType"),cNt=y(function(A,e){let{BIDIRECTIONAL_SOLID:t,BIDIRECTIONAL_DOTTED:r}=e.db.LINETYPE;return[t,r].includes(A.type)},"isBidirectionalArrowType"),CNt=y(function(A,e,t){let{look:r}=OA();if(![t.db.LINETYPE.SOLID_OPEN,t.db.LINETYPE.DOTTED_OPEN,t.db.LINETYPE.SOLID,t.db.LINETYPE.SOLID_TOP,t.db.LINETYPE.SOLID_BOTTOM,t.db.LINETYPE.STICK_TOP,t.db.LINETYPE.STICK_BOTTOM,t.db.LINETYPE.SOLID_TOP_DOTTED,t.db.LINETYPE.SOLID_BOTTOM_DOTTED,t.db.LINETYPE.STICK_TOP_DOTTED,t.db.LINETYPE.STICK_BOTTOM_DOTTED,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE,t.db.LINETYPE.STICK_ARROW_TOP_REVERSE,t.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,t.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,t.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,t.db.LINETYPE.DOTTED,t.db.LINETYPE.SOLID_CROSS,t.db.LINETYPE.DOTTED_CROSS,t.db.LINETYPE.SOLID_POINT,t.db.LINETYPE.DOTTED_POINT,t.db.LINETYPE.BIDIRECTIONAL_SOLID,t.db.LINETYPE.BIDIRECTIONAL_DOTTED].includes(A.type))return{};let[i,u]=Die(A.from,e),[a,n]=Die(A.to,e),o=i<=a,s=o?u:i,l=o?a:n;if(r==="neo"){if(A.type!==t.db.LINETYPE.SOLID_OPEN)l+=o?-3:3;if(A.type===t.db.LINETYPE.BIDIRECTIONAL_SOLID||A.type===t.db.LINETYPE.BIDIRECTIONAL_DOTTED)s+=o?3:-3}s+=gNt(A,t,o);let g=Math.abs(a-n)>2,C=y((I)=>o?-I:I,"adjustValue");if(A.from===A.to)l=s;else{if(A.activate&&!g)l+=C(ne.activationWidth/2-1);if(![t.db.LINETYPE.SOLID_OPEN,t.db.LINETYPE.DOTTED_OPEN,t.db.LINETYPE.STICK_TOP,t.db.LINETYPE.STICK_BOTTOM,t.db.LINETYPE.STICK_TOP_DOTTED,t.db.LINETYPE.STICK_BOTTOM_DOTTED,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,t.db.LINETYPE.STICK_ARROW_TOP_REVERSE,t.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE,t.db.LINETYPE.STICK_ARROW_TOP_REVERSE_DOTTED,t.db.LINETYPE.STICK_ARROW_BOTTOM_REVERSE_DOTTED,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE].includes(A.type))l+=C(3);if([t.db.LINETYPE.BIDIRECTIONAL_SOLID,t.db.LINETYPE.BIDIRECTIONAL_DOTTED,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE_DOTTED,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE_DOTTED,t.db.LINETYPE.SOLID_ARROW_TOP_REVERSE,t.db.LINETYPE.SOLID_ARROW_BOTTOM_REVERSE].includes(A.type))s-=C(3)}let B=[i,u,a,n],E=Math.abs(s-l);if(A.wrap&&A.message)A.message=Jt.wrapLabel(A.message,_e.getMax(E+2*ne.wrapPadding,ne.width),gm(ne));let d=Jt.calculateTextDimensions(A.message,gm(ne));return{width:_e.getMax(A.wrap?0:d.width+2*ne.wrapPadding,E+2*ne.wrapPadding,ne.width),height:0,startx:s,stopx:l,starty:0,stopy:0,message:A.message,type:A.type,wrap:A.wrap,fromBounds:Math.min.apply(null,B),toBounds:Math.max.apply(null,B)}},"buildMessageModel"),BNt=y(async function(A,e,t,r){let i={},u=[],a,n,o;for(let s of A){switch(s.type){case r.db.LINETYPE.LOOP_START:case r.db.LINETYPE.ALT_START:case r.db.LINETYPE.OPT_START:case r.db.LINETYPE.PAR_START:case r.db.LINETYPE.PAR_OVER_START:case r.db.LINETYPE.CRITICAL_START:case r.db.LINETYPE.BREAK_START:u.push({id:s.id,msg:s.message,from:Number.MAX_SAFE_INTEGER,to:Number.MIN_SAFE_INTEGER,width:0});break;case r.db.LINETYPE.ALT_ELSE:case r.db.LINETYPE.PAR_AND:case r.db.LINETYPE.CRITICAL_OPTION:if(s.message)a=u.pop(),i[a.id]=a,i[s.id]=a,u.push(a);break;case r.db.LINETYPE.LOOP_END:case r.db.LINETYPE.ALT_END:case r.db.LINETYPE.OPT_END:case r.db.LINETYPE.PAR_END:case r.db.LINETYPE.CRITICAL_END:case r.db.LINETYPE.BREAK_END:a=u.pop(),i[a.id]=a;break;case r.db.LINETYPE.ACTIVE_START:{let g=e.get(s.from?s.from:s.to.actor),C=pO(s.from?s.from:s.to.actor).length,B=g.x+g.width/2+(C-1)*ne.activationWidth/2,E={startx:B,stopx:B+ne.activationWidth,actor:s.from,enabled:!0};ze.activations.push(E)}break;case r.db.LINETYPE.ACTIVE_END:{let g=ze.activations.map((C)=>C.actor).lastIndexOf(s.from);ze.activations.splice(g,1).splice(0,1)}break}if(s.placement!==void 0)n=await oNt(s,e,r),s.noteModel=n,u.forEach((g)=>{a=g,a.from=_e.getMin(a.from,n.startx),a.to=_e.getMax(a.to,n.startx+n.width),a.width=_e.getMax(a.width,Math.abs(a.from-a.to))-ne.labelBoxWidth});else if(o=CNt(s,e,r),s.msgModel=o,o.startx&&o.stopx&&u.length>0)u.forEach((g)=>{if(a=g,o.startx===o.stopx){let C=e.get(s.from),B=e.get(s.to);a.from=_e.getMin(C.x-o.width/2,C.x-C.width/2,a.from),a.to=_e.getMax(B.x+o.width/2,B.x+C.width/2,a.to),a.width=_e.getMax(a.width,Math.abs(a.to-a.from))-ne.labelBoxWidth}else a.from=_e.getMin(o.startx,a.from),a.to=_e.getMax(o.stopx,a.to),a.width=_e.getMax(a.width,o.width)-ne.labelBoxWidth})}return ze.activations=[],sA.debug("Loop type widths:",i),i},"calculateLoopBounds"),ENt={bounds:ze,drawActors:sCA,drawActorsPopup:Fie,setConf:xie,draw:aNt},Gie={parser:mRt,get db(){return new bRt},renderer:ENt,styles:kRt,init:y((A)=>{if(!A.sequence)A.sequence={};if(A.wrap)A.sequence.wrap=A.wrap,db({sequence:{wrap:A.wrap}})},"init")}});var gCA,mO,Mie,Tie,fO="classId-",Yie=0,cm,DO,dNt,yO,INt,hNt,QNt,wO;var cCA=_(()=>{kE();gg();hl();El();lg();ai();rr();ir();Nt();Pr();$2();gCA=function(){var A=y(function(FA,HA,dA,q){for(dA=dA||{},q=FA.length;q--;dA[FA[q]]=HA);return dA},"o"),e=[1,18],t=[1,19],r=[1,20],i=[1,41],u=[1,26],a=[1,42],n=[1,24],o=[1,25],s=[1,32],l=[1,33],g=[1,34],C=[1,45],B=[1,35],E=[1,36],d=[1,37],I=[1,38],h=[1,27],Q=[1,28],p=[1,29],m=[1,30],f=[1,31],D=[1,44],w=[1,46],b=[1,43],k=[1,47],v=[1,9],S=[1,8,9],x=[1,58],F=[1,59],T=[1,60],R=[1,61],L=[1,62],M=[1,63],U=[1,64],Y=[1,8,9,41],H=[1,77],J=[1,8,9,12,13,22,39,41,44,46,68,69,70,71,72,73,74,79,81],K=[1,8,9,12,13,18,20,22,39,41,44,46,47,60,68,69,70,71,72,73,74,79,81,86,100,102,103],O=[13,60,86,100,102,103],P=[13,60,73,74,86,100,102,103],z=[13,60,68,69,70,71,72,86,100,102,103],AA=[1,103],W=[1,121],CA=[1,117],tA=[1,113],lA=[1,119],gA=[1,114],aA=[1,115],NA=[1,116],DA=[1,118],KA=[1,120],TA=[22,50,60,61,82,86,87,88,89,90],qA=[1,128],IA=[12,39],bA=[1,8,9,39,41,44,46],SA=[1,8,9,22],EA=[1,153],nA=[1,8,9,61],eA=[1,8,9,22,50,60,61,82,86,87,88,89,90],BA={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,classLiteralName:17,DOT:18,className:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,ANNOTATION_START:46,ANNOTATION_END:47,CLASS:48,emptyBody:49,SPACE:50,MEMBER:51,SEPARATOR:52,relation:53,NOTE_FOR:54,noteText:55,NOTE:56,CLASSDEF:57,classList:58,stylesOpt:59,ALPHA:60,COMMA:61,direction_tb:62,direction_bt:63,direction_rl:64,direction_lr:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,STYLE:82,CSSCLASS:83,style:84,styleComponent:85,NUM:86,COLON:87,UNIT:88,BRKT:89,PCT:90,commentToken:91,textToken:92,graphCodeTokens:93,textNoTagsToken:94,TAGSTART:95,TAGEND:96,"==":97,"--":98,DEFAULT:99,MINUS:100,keywords:101,UNICODE_TEXT:102,BQUOTE_STR:103,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",18:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"ANNOTATION_START",47:"ANNOTATION_END",48:"CLASS",50:"SPACE",51:"MEMBER",52:"SEPARATOR",54:"NOTE_FOR",56:"NOTE",57:"CLASSDEF",60:"ALPHA",61:"COMMA",62:"direction_tb",63:"direction_bt",64:"direction_rl",65:"direction_lr",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"STYLE",83:"CSSCLASS",86:"NUM",87:"COLON",88:"UNIT",89:"BRKT",90:"PCT",93:"graphCodeTokens",95:"TAGSTART",96:"TAGEND",97:"==",98:"--",99:"DEFAULT",100:"MINUS",101:"keywords",102:"UNICODE_TEXT",103:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,1],[15,3],[15,2],[19,1],[19,3],[19,1],[19,2],[19,2],[19,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[38,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,3],[24,6],[24,4],[24,7],[24,6],[43,2],[43,3],[49,0],[49,2],[49,2],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[58,1],[58,3],[32,1],[32,1],[32,1],[32,1],[53,3],[53,2],[53,2],[53,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[59,1],[59,3],[84,1],[84,2],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[91,1],[91,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[94,1],[94,1],[94,1],[94,1],[16,1],[16,1],[16,1],[16,1],[17,1],[55,1]],performAction:y(function(HA,dA,q,Z,fA,j,mA){var rA=j.length-1;switch(fA){case 8:this.$=j[rA-1];break;case 9:case 10:case 13:case 15:this.$=j[rA];break;case 11:case 14:this.$=j[rA-2]+"."+j[rA];break;case 12:case 16:this.$=j[rA-1]+j[rA];break;case 17:case 18:this.$=j[rA-1]+"~"+j[rA]+"~";break;case 19:Z.addRelation(j[rA]);break;case 20:j[rA-1].title=Z.cleanupLabel(j[rA]),Z.addRelation(j[rA-1]);break;case 31:this.$=j[rA].trim(),Z.setAccTitle(this.$);break;case 32:case 33:this.$=j[rA].trim(),Z.setAccDescription(this.$);break;case 34:Z.addClassesToNamespace(j[rA-3],j[rA-1][0],j[rA-1][1]),Z.popNamespace();break;case 35:Z.addClassesToNamespace(j[rA-4],j[rA-1][0],j[rA-1][1]),Z.popNamespace();break;case 36:this.$=Z.addNamespace(j[rA]);break;case 37:this.$=Z.addNamespace(j[rA-1],j[rA]);break;case 38:this.$=[[j[rA]],[]];break;case 39:this.$=[[j[rA-1]],[]];break;case 40:j[rA][0].unshift(j[rA-2]),this.$=j[rA];break;case 41:this.$=[[],[j[rA]]];break;case 42:this.$=[[],[j[rA-1]]];break;case 43:j[rA][1].unshift(j[rA-2]),this.$=j[rA];break;case 44:case 45:this.$=[[],[]];break;case 46:this.$=j[rA];break;case 48:Z.setCssClass(j[rA-2],j[rA]);break;case 49:Z.addMembers(j[rA-3],j[rA-1]);break;case 51:Z.setCssClass(j[rA-5],j[rA-3]),Z.addMembers(j[rA-5],j[rA-1]);break;case 52:Z.addAnnotation(j[rA-3],j[rA-1]);break;case 53:Z.addAnnotation(j[rA-6],j[rA-4]),Z.addMembers(j[rA-6],j[rA-1]);break;case 54:Z.addAnnotation(j[rA-5],j[rA-3]);break;case 55:this.$=j[rA],Z.addClass(j[rA]);break;case 56:this.$=j[rA-1],Z.addClass(j[rA-1]),Z.setClassLabel(j[rA-1],j[rA]);break;case 60:Z.addAnnotation(j[rA],j[rA-2]);break;case 61:case 74:this.$=[j[rA]];break;case 62:j[rA].push(j[rA-1]),this.$=j[rA];break;case 63:break;case 64:Z.addMember(j[rA-1],Z.cleanupLabel(j[rA]));break;case 65:break;case 66:break;case 67:this.$={id1:j[rA-2],id2:j[rA],relation:j[rA-1],relationTitle1:"none",relationTitle2:"none"};break;case 68:this.$={id1:j[rA-3],id2:j[rA],relation:j[rA-1],relationTitle1:j[rA-2],relationTitle2:"none"};break;case 69:this.$={id1:j[rA-3],id2:j[rA],relation:j[rA-2],relationTitle1:"none",relationTitle2:j[rA-1]};break;case 70:this.$={id1:j[rA-4],id2:j[rA],relation:j[rA-2],relationTitle1:j[rA-3],relationTitle2:j[rA-1]};break;case 71:this.$=Z.addNote(j[rA],j[rA-1]);break;case 72:this.$=Z.addNote(j[rA]);break;case 73:this.$=j[rA-2],Z.defineClass(j[rA-1],j[rA]);break;case 75:this.$=j[rA-2].concat([j[rA]]);break;case 76:Z.setDirection("TB");break;case 77:Z.setDirection("BT");break;case 78:Z.setDirection("RL");break;case 79:Z.setDirection("LR");break;case 80:this.$={type1:j[rA-2],type2:j[rA],lineType:j[rA-1]};break;case 81:this.$={type1:"none",type2:j[rA],lineType:j[rA-1]};break;case 82:this.$={type1:j[rA-1],type2:"none",lineType:j[rA]};break;case 83:this.$={type1:"none",type2:"none",lineType:j[rA]};break;case 84:this.$=Z.relationType.AGGREGATION;break;case 85:this.$=Z.relationType.EXTENSION;break;case 86:this.$=Z.relationType.COMPOSITION;break;case 87:this.$=Z.relationType.DEPENDENCY;break;case 88:this.$=Z.relationType.LOLLIPOP;break;case 89:this.$=Z.lineType.LINE;break;case 90:this.$=Z.lineType.DOTTED_LINE;break;case 91:case 97:this.$=j[rA-2],Z.setClickEvent(j[rA-1],j[rA]);break;case 92:case 98:this.$=j[rA-3],Z.setClickEvent(j[rA-2],j[rA-1]),Z.setTooltip(j[rA-2],j[rA]);break;case 93:this.$=j[rA-2],Z.setLink(j[rA-1],j[rA]);break;case 94:this.$=j[rA-3],Z.setLink(j[rA-2],j[rA-1],j[rA]);break;case 95:this.$=j[rA-3],Z.setLink(j[rA-2],j[rA-1]),Z.setTooltip(j[rA-2],j[rA]);break;case 96:this.$=j[rA-4],Z.setLink(j[rA-3],j[rA-2],j[rA]),Z.setTooltip(j[rA-3],j[rA-1]);break;case 99:this.$=j[rA-3],Z.setClickEvent(j[rA-2],j[rA-1],j[rA]);break;case 100:this.$=j[rA-4],Z.setClickEvent(j[rA-3],j[rA-2],j[rA-1]),Z.setTooltip(j[rA-3],j[rA]);break;case 101:this.$=j[rA-3],Z.setLink(j[rA-2],j[rA]);break;case 102:this.$=j[rA-4],Z.setLink(j[rA-3],j[rA-1],j[rA]);break;case 103:this.$=j[rA-4],Z.setLink(j[rA-3],j[rA-1]),Z.setTooltip(j[rA-3],j[rA]);break;case 104:this.$=j[rA-5],Z.setLink(j[rA-4],j[rA-2],j[rA]),Z.setTooltip(j[rA-4],j[rA-1]);break;case 105:this.$=j[rA-2],Z.setCssStyle(j[rA-1],j[rA]);break;case 106:Z.setCssClass(j[rA-1],j[rA]);break;case 107:this.$=[j[rA]];break;case 108:j[rA-2].push(j[rA]),this.$=j[rA-2];break;case 110:this.$=j[rA-1]+j[rA];break}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:t,37:r,38:22,42:i,43:23,46:u,48:a,51:n,52:o,54:s,56:l,57:g,60:C,62:B,63:E,64:d,65:I,75:h,76:Q,78:p,82:m,83:f,86:D,100:w,102:b,103:k},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},A(v,[2,5],{8:[1,48]}),{8:[1,49]},A(S,[2,19],{22:[1,50]}),A(S,[2,21]),A(S,[2,22]),A(S,[2,23]),A(S,[2,24]),A(S,[2,25]),A(S,[2,26]),A(S,[2,27]),A(S,[2,28]),A(S,[2,29]),A(S,[2,30]),{34:[1,51]},{36:[1,52]},A(S,[2,33]),A(S,[2,63],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:x,69:F,70:T,71:R,72:L,73:M,74:U}),{39:[1,65]},A(Y,[2,47],{39:[1,67],44:[1,66],46:[1,68]}),A(S,[2,65]),A(S,[2,66]),{16:69,60:C,86:D,100:w,102:b},{16:39,17:40,19:70,60:C,86:D,100:w,102:b,103:k},{16:39,17:40,19:71,60:C,86:D,100:w,102:b,103:k},{16:39,17:40,19:72,60:C,86:D,100:w,102:b,103:k},{60:[1,73]},{13:[1,74]},{16:39,17:40,19:75,60:C,86:D,100:w,102:b,103:k},{13:H,55:76},{58:78,60:[1,79]},A(S,[2,76]),A(S,[2,77]),A(S,[2,78]),A(S,[2,79]),A(J,[2,13],{16:39,17:40,19:81,18:[1,80],20:[1,82],60:C,86:D,100:w,102:b,103:k}),A(J,[2,15],{20:[1,83]}),{15:84,16:85,17:86,60:C,86:D,100:w,102:b,103:k},{16:39,17:40,19:87,60:C,86:D,100:w,102:b,103:k},A(K,[2,133]),A(K,[2,134]),A(K,[2,135]),A(K,[2,136]),A([1,8,9,12,13,20,22,39,41,44,46,68,69,70,71,72,73,74,79,81],[2,137]),A(v,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,19:21,38:22,43:23,16:39,17:40,5:88,33:e,35:t,37:r,42:i,46:u,48:a,51:n,52:o,54:s,56:l,57:g,60:C,62:B,63:E,64:d,65:I,75:h,76:Q,78:p,82:m,83:f,86:D,100:w,102:b,103:k}),{5:89,10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:e,35:t,37:r,38:22,42:i,43:23,46:u,48:a,51:n,52:o,54:s,56:l,57:g,60:C,62:B,63:E,64:d,65:I,75:h,76:Q,78:p,82:m,83:f,86:D,100:w,102:b,103:k},A(S,[2,20]),A(S,[2,31]),A(S,[2,32]),{13:[1,91],16:39,17:40,19:90,60:C,86:D,100:w,102:b,103:k},{53:92,66:56,67:57,68:x,69:F,70:T,71:R,72:L,73:M,74:U},A(S,[2,64]),{67:93,73:M,74:U},A(O,[2,83],{66:94,68:x,69:F,70:T,71:R,72:L}),A(P,[2,84]),A(P,[2,85]),A(P,[2,86]),A(P,[2,87]),A(P,[2,88]),A(z,[2,89]),A(z,[2,90]),{8:[1,96],23:99,24:97,30:98,38:22,40:95,42:i,43:23,48:a,54:s,56:l},{16:100,60:C,86:D,100:w,102:b},{41:[1,102],45:101,51:AA},{16:104,60:C,86:D,100:w,102:b},{47:[1,105]},{13:[1,106]},{13:[1,107]},{79:[1,108],81:[1,109]},{22:W,50:CA,59:110,60:tA,82:lA,84:111,85:112,86:gA,87:aA,88:NA,89:DA,90:KA},{60:[1,122]},{13:H,55:123},A(Y,[2,72]),A(Y,[2,138]),{22:W,50:CA,59:124,60:tA,61:[1,125],82:lA,84:111,85:112,86:gA,87:aA,88:NA,89:DA,90:KA},A(TA,[2,74]),{16:39,17:40,19:126,60:C,86:D,100:w,102:b,103:k},A(J,[2,16]),A(J,[2,17]),A(J,[2,18]),{11:127,12:qA,39:[2,36]},A(IA,[2,9],{16:85,17:86,15:130,18:[1,129],60:C,86:D,100:w,102:b,103:k}),A(IA,[2,10]),A(bA,[2,55],{11:131,12:qA}),A(v,[2,7]),{9:[1,132]},A(SA,[2,67]),{16:39,17:40,19:133,60:C,86:D,100:w,102:b,103:k},{13:[1,135],16:39,17:40,19:134,60:C,86:D,100:w,102:b,103:k},A(O,[2,82],{66:136,68:x,69:F,70:T,71:R,72:L}),A(O,[2,81]),{41:[1,137]},{23:99,24:97,30:98,38:22,40:138,42:i,43:23,48:a,54:s,56:l},{8:[1,139],41:[2,38]},{8:[1,140],41:[2,41]},{8:[1,141],41:[2,44]},A(Y,[2,48],{39:[1,142]}),{41:[1,143]},A(Y,[2,50]),{41:[2,61],45:144,51:AA},{47:[1,145]},{16:39,17:40,19:146,60:C,86:D,100:w,102:b,103:k},A(S,[2,91],{13:[1,147]}),A(S,[2,93],{13:[1,149],77:[1,148]}),A(S,[2,97],{13:[1,150],80:[1,151]}),{13:[1,152]},A(S,[2,105],{61:EA}),A(nA,[2,107],{85:154,22:W,50:CA,60:tA,82:lA,86:gA,87:aA,88:NA,89:DA,90:KA}),A(eA,[2,109]),A(eA,[2,111]),A(eA,[2,112]),A(eA,[2,113]),A(eA,[2,114]),A(eA,[2,115]),A(eA,[2,116]),A(eA,[2,117]),A(eA,[2,118]),A(eA,[2,119]),A(S,[2,106]),A(Y,[2,71]),A(S,[2,73],{61:EA}),{60:[1,155]},A(J,[2,14]),{39:[2,37]},{13:[1,156]},{15:157,16:85,17:86,60:C,86:D,100:w,102:b,103:k},A(IA,[2,12]),A(bA,[2,56]),{1:[2,4]},A(SA,[2,69]),A(SA,[2,68]),{16:39,17:40,19:158,60:C,86:D,100:w,102:b,103:k},A(O,[2,80]),A(Y,[2,34]),{41:[1,159]},{23:99,24:97,30:98,38:22,40:160,41:[2,39],42:i,43:23,48:a,54:s,56:l},{23:99,24:97,30:98,38:22,40:161,41:[2,42],42:i,43:23,48:a,54:s,56:l},{23:99,24:97,30:98,38:22,40:162,41:[2,45],42:i,43:23,48:a,54:s,56:l},{45:163,51:AA},A(Y,[2,49]),{41:[2,62]},A(Y,[2,52],{39:[1,164]}),A(S,[2,60]),A(S,[2,92]),A(S,[2,94]),A(S,[2,95],{77:[1,165]}),A(S,[2,98]),A(S,[2,99],{13:[1,166]}),A(S,[2,101],{13:[1,168],77:[1,167]}),{22:W,50:CA,60:tA,82:lA,84:169,85:112,86:gA,87:aA,88:NA,89:DA,90:KA},A(eA,[2,110]),A(TA,[2,75]),{14:[1,170]},A(IA,[2,11]),A(SA,[2,70]),A(Y,[2,35]),{41:[2,40]},{41:[2,43]},{41:[2,46]},{41:[1,171]},{41:[1,173],45:172,51:AA},A(S,[2,96]),A(S,[2,100]),A(S,[2,102]),A(S,[2,103],{77:[1,174]}),A(nA,[2,108],{85:154,22:W,50:CA,60:tA,82:lA,86:gA,87:aA,88:NA,89:DA,90:KA}),A(bA,[2,8]),A(Y,[2,51]),{41:[1,175]},A(Y,[2,54]),A(S,[2,104]),A(Y,[2,53])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],127:[2,37],132:[2,4],144:[2,62],160:[2,40],161:[2,43],162:[2,46]},parseError:y(function(HA,dA){if(dA.recoverable)this.trace(HA);else{var q=Error(HA);throw q.hash=dA,q}},"parseError"),parse:y(function(HA){var dA=this,q=[0],Z=[],fA=[null],j=[],mA=this.table,rA="",JA=0,_A=0,ZA=0,WA=2,te=1,zA=j.slice.call(arguments,1),Ae=Object.create(this.lexer),$A={yy:{}};for(var oe in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,oe))$A.yy[oe]=this.yy[oe];if(Ae.setInput(HA,$A.yy),$A.yy.lexer=Ae,$A.yy.parser=this,typeof Ae.yylloc>"u")Ae.yylloc={};var kA=Ae.yylloc;j.push(kA);var Pe=Ae.options&&Ae.options.ranges;if(typeof $A.yy.parseError==="function")this.parseError=$A.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function MA(Le){q.length=q.length-2*Le,fA.length=fA.length-Le,j.length=j.length-Le}y(MA,"popStack");function ke(){var Le=Z.pop()||Ae.lex()||te;if(typeof Le!=="number"){if(Le instanceof Array)Z=Le,Le=Z.pop();Le=dA.symbols_[Le]||Le}return Le}y(ke,"lex");var We,ue,Me,je,Ge,wA,Re={},He,de,RA,ce;while(!0){if(Me=q[q.length-1],this.defaultActions[Me])je=this.defaultActions[Me];else{if(We===null||typeof We>"u")We=ke();je=mA[Me]&&mA[Me][We]}if(typeof je>"u"||!je.length||!je[0]){var me="";ce=[];for(He in mA[Me])if(this.terminals_[He]&&He>WA)ce.push("'"+this.terminals_[He]+"'");if(Ae.showPosition)me="Parse error on line "+(JA+1)+`:
`+Ae.showPosition()+`
Expecting `+ce.join(", ")+", got '"+(this.terminals_[We]||We)+"'";else me="Parse error on line "+(JA+1)+": Unexpected "+(We==te?"end of input":"'"+(this.terminals_[We]||We)+"'");this.parseError(me,{text:Ae.match,token:this.terminals_[We]||We,line:Ae.yylineno,loc:kA,expected:ce})}if(je[0]instanceof Array&&je.length>1)throw Error("Parse Error: multiple actions possible at state: "+Me+", token: "+We);switch(je[0]){case 1:if(q.push(We),fA.push(Ae.yytext),j.push(Ae.yylloc),q.push(je[1]),We=null,!ue){if(_A=Ae.yyleng,rA=Ae.yytext,JA=Ae.yylineno,kA=Ae.yylloc,ZA>0)ZA--}else We=ue,ue=null;break;case 2:if(de=this.productions_[je[1]][1],Re.$=fA[fA.length-de],Re._$={first_line:j[j.length-(de||1)].first_line,last_line:j[j.length-1].last_line,first_column:j[j.length-(de||1)].first_column,last_column:j[j.length-1].last_column},Pe)Re._$.range=[j[j.length-(de||1)].range[0],j[j.length-1].range[1]];if(wA=this.performAction.apply(Re,[rA,_A,JA,$A.yy,je[1],fA,j].concat(zA)),typeof wA<"u")return wA;if(de)q=q.slice(0,-1*de*2),fA=fA.slice(0,-1*de),j=j.slice(0,-1*de);q.push(this.productions_[je[1]][0]),fA.push(Re.$),j.push(Re._$),RA=mA[q[q.length-2]][q[q.length-1]],q.push(RA);break;case 3:return!0}}return!0},"parse")},yA=function(){var FA={EOF:1,parseError:y(function(dA,q){if(this.yy.parser)this.yy.parser.parseError(dA,q);else throw Error(dA)},"parseError"),setInput:y(function(HA,dA){if(this.yy=dA||this.yy||{},this._input=HA,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var HA=this._input[0];this.yytext+=HA,this.yyleng++,this.offset++,this.match+=HA,this.matched+=HA;var dA=HA.match(/(?:\r\n?|\n).*/g);if(dA)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),HA},"input"),unput:y(function(HA){var dA=HA.length,q=HA.split(/(?:\r\n?|\n)/g);this._input=HA+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-dA),this.offset-=dA;var Z=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),q.length-1)this.yylineno-=q.length-1;var fA=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:q?(q.length===Z.length?this.yylloc.first_column:0)+Z[Z.length-q.length].length-q[0].length:this.yylloc.first_column-dA},this.options.ranges)this.yylloc.range=[fA[0],fA[0]+this.yyleng-dA];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(HA){this.unput(this.match.slice(HA))},"less"),pastInput:y(function(){var HA=this.matched.substr(0,this.matched.length-this.match.length);return(HA.length>20?"...":"")+HA.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var HA=this.match;if(HA.length<20)HA+=this._input.substr(0,20-HA.length);return(HA.substr(0,20)+(HA.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var HA=this.pastInput(),dA=Array(HA.length+1).join("-");return HA+this.upcomingInput()+`
`+dA+"^"},"showPosition"),test_match:y(function(HA,dA){var q,Z,fA;if(this.options.backtrack_lexer){if(fA={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)fA.yylloc.range=this.yylloc.range.slice(0)}if(Z=HA[0].match(/(?:\r\n?|\n).*/g),Z)this.yylineno+=Z.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Z?Z[Z.length-1].length-Z[Z.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+HA[0].length},this.yytext+=HA[0],this.match+=HA[0],this.matches=HA,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(HA[0].length),this.matched+=HA[0],q=this.performAction.call(this,this.yy,this,dA,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(q)return q;else if(this._backtrack){for(var j in fA)this[j]=fA[j];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var HA,dA,q,Z;if(!this._more)this.yytext="",this.match="";var fA=this._currentRules();for(var j=0;j<fA.length;j++)if(q=this._input.match(this.rules[fA[j]]),q&&(!dA||q[0].length>dA[0].length)){if(dA=q,Z=j,this.options.backtrack_lexer)if(HA=this.test_match(q,fA[j]),HA!==!1)return HA;else if(this._backtrack){dA=!1;continue}else return!1;else if(!this.options.flex)break}if(dA){if(HA=this.test_match(dA,fA[Z]),HA!==!1)return HA;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var dA=this.next();if(dA)return dA;else return this.lex()},"lex"),begin:y(function(dA){this.conditionStack.push(dA)},"begin"),popState:y(function(){var dA=this.conditionStack.length-1;if(dA>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(dA){if(dA=this.conditionStack.length-1-Math.abs(dA||0),dA>=0)return this.conditionStack[dA];else return"INITIAL"},"topState"),pushState:y(function(dA){this.begin(dA)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:y(function(dA,q,Z,fA){var j=fA;switch(Z){case 0:return 62;case 1:return 63;case 2:return 64;case 3:return 65;case 4:break;case 5:break;case 6:return this.begin("acc_title"),33;break;case 7:return this.popState(),"acc_title_value";break;case 8:return this.begin("acc_descr"),35;break;case 9:return this.popState(),"acc_descr_value";break;case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 8;case 14:break;case 15:return 7;case 16:return 7;case 17:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 19:this.popState();break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 79;case 22:this.popState();break;case 23:return 80;case 24:this.popState();break;case 25:return"STR";case 26:this.begin("string");break;case 27:return 82;case 28:return 57;case 29:return this.begin("namespace"),42;break;case 30:return this.popState(),8;break;case 31:break;case 32:return this.begin("namespace-body"),39;break;case 33:this.popState(),this.less(0);break;case 34:return this.popState(),41;break;case 35:return"EOF_IN_STRUCT";case 36:return 8;case 37:break;case 38:return"EDGE_STATE";case 39:return this.begin("class"),48;break;case 40:return this.popState(),8;break;case 41:break;case 42:return this.popState(),this.popState(),41;break;case 43:return this.begin("class-body"),39;break;case 44:return this.popState(),41;break;case 45:return"EOF_IN_STRUCT";case 46:return"EDGE_STATE";case 47:return"OPEN_IN_STRUCT";case 48:break;case 49:return"MEMBER";case 50:return 83;case 51:return 75;case 52:return 76;case 53:return 78;case 54:return 54;case 55:return 56;case 56:return 46;case 57:return 47;case 58:return 81;case 59:this.popState();break;case 60:return"GENERICTYPE";case 61:this.begin("generic");break;case 62:this.popState();break;case 63:return"BQUOTE_STR";case 64:this.begin("bqstring");break;case 65:return 77;case 66:return 77;case 67:return 77;case 68:return 77;case 69:return 69;case 70:return 69;case 71:return 71;case 72:return 71;case 73:return 70;case 74:return 68;case 75:return 72;case 76:return 73;case 77:return 74;case 78:return 22;case 79:return 44;case 80:return 100;case 81:return 18;case 82:return"PLUS";case 83:return 87;case 84:return 61;case 85:return 89;case 86:return 89;case 87:return 90;case 88:return"EQUALS";case 89:return"EQUALS";case 90:return 60;case 91:return 12;case 92:return 14;case 93:return"PUNCTUATION";case 94:return 86;case 95:return 102;case 96:return 50;case 97:return 50;case 98:return 9}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:classDef\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,29,34,35,36,37,38,39,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},namespace:{rules:[26,29,30,31,32,33,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},"class-body":{rules:[26,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},class:{rules:[26,40,41,42,43,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_descr:{rules:[9,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_title:{rules:[7,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},callback_args:{rules:[22,23,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},callback_name:{rules:[19,20,21,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},href:{rules:[26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},struct:{rules:[26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},generic:{rules:[26,50,51,52,53,54,55,56,57,58,59,60,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},bqstring:{rules:[26,50,51,52,53,54,55,56,57,58,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},string:{rules:[24,25,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,39,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98],inclusive:!0}}};return FA}();BA.lexer=yA;function vA(){this.yy={}}return y(vA,"Parser"),vA.prototype=BA,BA.Parser=vA,new vA}();gCA.parser=gCA;mO=gCA,Mie=["#","+","~","-",""],Tie=class{static{y(this,"ClassMember")}constructor(A,e){this.memberType=e,this.visibility="",this.classifier="",this.text="";let t=gr(A,OA());this.parseMember(t)}getDisplayDetails(){let A=this.visibility+OB(this.id);if(this.memberType==="method"){if(A+=`(${OB(this.parameters.trim())})`,this.returnType)A+=" : "+OB(this.returnType)}A=A.trim();let e=this.parseClassifier();return{displayText:A,cssStyle:e}}parseMember(A){let e="";if(this.memberType==="method"){let i=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(A);if(i){let u=i[1]?i[1].trim():"";if(Mie.includes(u))this.visibility=u;if(this.id=i[2],this.parameters=i[3]?i[3].trim():"",e=i[4]?i[4].trim():"",this.returnType=i[5]?i[5].trim():"",e===""){let a=this.returnType.substring(this.returnType.length-1);if(/[$*]/.exec(a))e=a,this.returnType=this.returnType.substring(0,this.returnType.length-1)}}}else{let r=A.length,i=A.substring(0,1),u=A.substring(r-1);if(Mie.includes(i))this.visibility=i;if(/[$*]/.exec(u))e=u;this.id=A.substring(this.visibility===""?0:1,e===""?r:r-1)}this.classifier=e,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();let t=`${this.visibility?"\\"+this.visibility:""}${OB(this.id)}${this.memberType==="method"?`(${OB(this.parameters)})${this.returnType?" : "+OB(this.returnType):""}`:""}`;if(this.text=t.replaceAll("<","&lt;").replaceAll(">","&gt;"),this.text.startsWith("\\&lt;"))this.text=this.text.replace("\\&lt;","~")}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}},cm=y((A)=>_e.sanitizeText(A,OA()),"sanitizeText"),DO=class A{constructor(){this.relations=[],this.classes=new Map,this.styleClasses=new Map,this.notes=new Map,this.interfaces=[],this.namespaces=new Map,this.namespaceCounter=0,this.namespaceStack=[],this.diagramId="",this.functions=[],this.lineType={LINE:0,DOTTED_LINE:1},this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},this.setupToolTips=y((e)=>{let t=Ew();Qe(e).select("svg").selectAll("g").filter(function(){return Qe(this).attr("title")!==null}).on("mouseover",(u)=>{let a=Qe(u.currentTarget),n=a.attr("title");if(!n)return;let o=u.currentTarget.getBoundingClientRect();t.transition().duration(200).style("opacity",".9"),t.html(js.sanitize(n)).style("left",`${window.scrollX+o.left+o.width/2}px`).style("top",`${window.scrollY+o.bottom+4}px`),a.classed("hover",!0)}).on("mouseout",(u)=>{t.transition().duration(500).style("opacity",0),Qe(u.currentTarget).classed("hover",!1)})},"setupToolTips"),this.direction="TB",this.setAccTitle=Dr,this.getAccTitle=kr,this.setAccDescription=Fr,this.getAccDescription=xr,this.setDiagramTitle=Tr,this.getDiagramTitle=Sr,this.getConfig=y(()=>OA().class,"getConfig"),this.functions.push(this.setupToolTips.bind(this)),this.clear(),this.addRelation=this.addRelation.bind(this),this.addClassesToNamespace=this.addClassesToNamespace.bind(this),this.addNamespace=this.addNamespace.bind(this),this.popNamespace=this.popNamespace.bind(this),this.setCssClass=this.setCssClass.bind(this),this.addMembers=this.addMembers.bind(this),this.addClass=this.addClass.bind(this),this.setClassLabel=this.setClassLabel.bind(this),this.addAnnotation=this.addAnnotation.bind(this),this.addMember=this.addMember.bind(this),this.cleanupLabel=this.cleanupLabel.bind(this),this.addNote=this.addNote.bind(this),this.defineClass=this.defineClass.bind(this),this.setDirection=this.setDirection.bind(this),this.setLink=this.setLink.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.clear=this.clear.bind(this),this.setTooltip=this.setTooltip.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setCssStyle=this.setCssStyle.bind(this)}static{y(this,"ClassDB")}splitClassNameAndType(e){let t=_e.sanitizeText(e,OA()),r="",i=t;if(t.indexOf("~")>0){let u=t.split("~");i=cm(u[0]),r=cm(u[1])}return{className:i,type:r}}setClassLabel(e,t){let r=_e.sanitizeText(e,OA());if(t)t=cm(t);let{className:i}=this.splitClassNameAndType(r);this.classes.get(i).label=t,this.classes.get(i).text=`${t}${this.classes.get(i).type?`<${this.classes.get(i).type}>`:""}`}addClass(e){let t=_e.sanitizeText(e,OA()),{className:r,type:i}=this.splitClassNameAndType(t);if(this.classes.has(r))return;let u=_e.sanitizeText(r,OA());this.classes.set(u,{id:u,type:i,label:u,text:`${u}${i?`&lt;${i}&gt;`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:fO+u+"-"+Yie}),Yie++}addInterface(e,t){let r={id:`interface${this.interfaces.length}`,label:e,classId:t};this.interfaces.push(r)}setDiagramId(e){this.diagramId=e}lookUpDomId(e){let t=_e.sanitizeText(e,OA());if(this.classes.has(t)){let r=this.classes.get(t).domId;return this.diagramId?`${this.diagramId}-${r}`:r}throw Error("Class not found: "+t)}clear(){this.relations=[],this.classes=new Map,this.notes=new Map,this.interfaces=[],this.functions=[],this.functions.push(this.setupToolTips.bind(this)),this.namespaces=new Map,this.namespaceCounter=0,this.namespaceStack=[],this.diagramId="",this.direction="TB",cr()}getClass(e){return this.classes.get(e)}getClasses(){return this.classes}getRelations(){return this.relations}getNote(e){let t=typeof e==="number"?`note${e}`:e;return this.notes.get(t)}getNotes(){return this.notes}addRelation(e){sA.debug("Adding relation: "+JSON.stringify(e));let t=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];if(e.relation.type1===this.relationType.LOLLIPOP&&!t.includes(e.relation.type2))this.addClass(e.id2),this.addInterface(e.id1,e.id2),e.id1=`interface${this.interfaces.length-1}`;else if(e.relation.type2===this.relationType.LOLLIPOP&&!t.includes(e.relation.type1))this.addClass(e.id1),this.addInterface(e.id2,e.id1),e.id2=`interface${this.interfaces.length-1}`;else this.addClass(e.id1),this.addClass(e.id2);e.id1=this.splitClassNameAndType(e.id1).className,e.id2=this.splitClassNameAndType(e.id2).className,e.relationTitle1=_e.sanitizeText(e.relationTitle1.trim(),OA()),e.relationTitle2=_e.sanitizeText(e.relationTitle2.trim(),OA()),this.relations.push(e)}addAnnotation(e,t){let r=this.splitClassNameAndType(e).className;this.classes.get(r).annotations.push(t)}addMember(e,t){this.addClass(e);let r=this.splitClassNameAndType(e).className,i=this.classes.get(r);if(typeof t==="string"){let u=t.trim();if(u.startsWith("<<")&&u.endsWith(">>"))i.annotations.push(cm(u.substring(2,u.length-2)));else if(u.indexOf(")")>0)i.methods.push(new Tie(u,"method"));else if(u)i.members.push(new Tie(u,"attribute"))}}addMembers(e,t){if(Array.isArray(t))t.reverse(),t.forEach((r)=>this.addMember(e,r))}addNote(e,t){let r=this.notes.size,i={id:`note${r}`,class:t,text:e,index:r};return this.notes.set(i.id,i),i.id}cleanupLabel(e){if(e.startsWith(":"))e=e.substring(1);return cm(e.trim())}setCssClass(e,t){e.split(",").forEach((r)=>{let i=r;if(/\d/.exec(r[0]))i=fO+i;i=this.splitClassNameAndType(i).className;let u=this.classes.get(i);if(u)u.cssClasses+=" "+t})}defineClass(e,t){for(let r of e){let i=this.styleClasses.get(r);if(i===void 0)i={id:r,styles:[],textStyles:[]},this.styleClasses.set(r,i);if(t)t.forEach((u)=>{if(/color/.exec(u)){let a=u.replace("fill","bgFill");i.textStyles.push(a)}i.styles.push(u)});this.classes.forEach((u)=>{if(u.cssClasses.includes(r))u.styles.push(...t.flatMap((a)=>a.split(",")))})}}setTooltip(e,t){e.split(",").forEach((r)=>{if(t!==void 0){let i=this.splitClassNameAndType(r).className,u=this.classes.get(i);if(u)u.tooltip=cm(t)}})}getTooltip(e,t){if(t&&this.namespaces.has(t))return this.namespaces.get(t).classes.get(e).tooltip;return this.classes.get(e).tooltip}setLink(e,t,r){let i=OA();e.split(",").forEach((u)=>{let a=u;if(/\d/.exec(u[0]))a=fO+a;a=this.splitClassNameAndType(a).className;let n=this.classes.get(a);if(n)if(n.link=Jt.formatUrl(t,i),i.securityLevel==="sandbox")n.linkTarget="_top";else if(typeof r==="string")n.linkTarget=cm(r);else n.linkTarget="_blank"}),this.setCssClass(e,"clickable")}setClickEvent(e,t,r){e.split(",").forEach((i)=>{this.setClickFunc(i,t,r);let u=this.splitClassNameAndType(i).className,a=this.classes.get(u);if(a)a.haveCallback=!0}),this.setCssClass(e,"clickable")}setClickFunc(e,t,r){let i=_e.sanitizeText(e,OA());if(OA().securityLevel!=="loose")return;if(t===void 0)return;let a=this.splitClassNameAndType(i).className;if(this.classes.has(a)){let n=[];if(typeof r==="string"){n=r.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let o=0;o<n.length;o++){let s=n[o].trim();if(s.startsWith('"')&&s.endsWith('"'))s=s.substr(1,s.length-2);n[o]=s}}if(n.length===0)n.push(a);this.functions.push(()=>{let o=this.lookUpDomId(a),s=document.querySelector(`[id="${o}"]`);if(s!==null)s.addEventListener("click",()=>{Jt.runFunc(t,...n)},!1)})}}bindFunctions(e){this.functions.forEach((t)=>{t(e)})}escapeHtml(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}getDirection(){return this.direction}setDirection(e){this.direction=e}static resolveQualifiedId(e,t){let r=t.at(-1);return r?`${r}.${e}`:e}static getAncestorIds(e){let t=e.split("."),r=Array(t.length);r[0]=t[0];for(let i=1;i<t.length;i++)r[i]=`${r[i-1]}.${t[i]}`;return r}createNamespaceNode(e,t,r,i=!1){return{id:e,label:t,classes:new Map,notes:new Map,children:new Map,domId:fO+e+"-"+this.namespaceCounter++,parent:r,explicit:i}}linkParentChild(e,t){let r=this.namespaces.get(e),i=this.namespaces.get(t);if(!r||!i)return;if(!r.children.has(t))r.children.set(t,i);i.parent??=e}addNamespace(e,t){let r=A.resolveQualifiedId(e,this.namespaceStack);if(this.namespaceStack.push(r),this.namespaces.has(r)){let a=this.namespaces.get(r);if(a.explicit=!0,t)a.label=t;return r}let i=r.split("."),u=A.getAncestorIds(r);for(let a=0;a<u.length;a++){let n=u[a],o=a>0?u[a-1]:void 0,s=a===u.length-1,l=s&&t?t:i[a];if(!this.namespaces.has(n))this.namespaces.set(n,this.createNamespaceNode(n,l,o,s));else if(s)this.namespaces.get(n).explicit=!0;if(o)this.linkParentChild(o,n)}return r}popNamespace(){this.namespaceStack.pop()}getNamespace(e){return this.namespaces.get(e)}getNamespaces(){return this.namespaces}addClassesToNamespace(e,t,r){if(!this.namespaces.has(e))return;for(let i of t){let{className:u}=this.splitClassNameAndType(i),a=this.getClass(u);a.parent=e,this.namespaces.get(e).classes.set(u,a)}for(let i of r){let u=this.getNote(i);u.parent=e,this.namespaces.get(e).notes.set(i,u)}}setCssStyle(e,t){let r=this.classes.get(e);if(!t||!r)return;for(let i of t)if(i.includes(","))r.styles.push(...i.split(","));else r.styles.push(i)}getArrowMarker(e){let t;switch(e){case 0:t="aggregation";break;case 1:t="extension";break;case 2:t="composition";break;case 3:t="dependency";break;case 4:t="lollipop";break;default:t="none"}return t}resolveExplicitAncestor(e){let t=e;while(t){let r=this.namespaces.get(t);if(!r)return;if(r.explicit)return t;t=r.parent}return}getData(){let e=[],t=[],r=OA(),i=r.class?.hierarchicalNamespaces??!0;for(let a of this.namespaces.values()){if(!i&&!a.explicit)continue;let n={id:a.id,label:i?a.label:a.id,isGroup:!0,padding:r.class.padding??16,shape:"rect",cssStyles:[],look:r.look,parentId:i?a.parent:void 0};e.push(n)}for(let a of this.classes.values()){let n=i?a.parent:this.resolveExplicitAncestor(a.parent),o={...a,type:void 0,isGroup:!1,parentId:n,look:r.look};e.push(o)}for(let a of this.notes.values()){let n=i?a.parent:this.resolveExplicitAncestor(a.parent),o={id:a.id,label:a.text,isGroup:!1,shape:"note",padding:r.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${r.themeVariables.noteBkgColor}`,`stroke: ${r.themeVariables.noteBorderColor}`],look:r.look,parentId:n,labelType:"markdown"};e.push(o);let s=this.classes.get(a.class)?.id;if(s){let l={id:`edgeNote${a.index}`,start:a.id,end:s,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:r.look};t.push(l)}}for(let a of this.interfaces){let n={id:a.id,label:a.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:r.look};e.push(n)}let u=0;for(let a of this.relations){u++;let n={id:AE(a.id1,a.id2,{prefix:"id",counter:u}),start:a.id1,end:a.id2,type:"normal",label:a.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(a.relation.type1),arrowTypeEnd:this.getArrowMarker(a.relation.type2),startLabelRight:a.relationTitle1==="none"?"":a.relationTitle1,endLabelLeft:a.relationTitle2==="none"?"":a.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:a.style||"",pattern:a.relation.lineType==1?"dashed":"solid",look:r.look,labelType:"markdown"};t.push(n)}return{nodes:e,edges:t,other:{},config:r,direction:this.getDirection()}}},dNt=y((A)=>`g.classGroup text {
fill: ${A.nodeBorder||A.classText};
stroke: none;
font-family: ${A.fontFamily};
font-size: 10px;
.title {
font-weight: bolder;
}
}
.cluster-label text {
fill: ${A.titleColor};
}
.cluster-label span {
color: ${A.titleColor};
}
.cluster-label span p {
background-color: transparent;
}
.cluster rect {
fill: ${A.clusterBkg};
stroke: ${A.clusterBorder};
stroke-width: 1px;
}
.cluster text {
fill: ${A.titleColor};
}
.cluster span {
color: ${A.titleColor};
}
.nodeLabel, .edgeLabel {
color: ${A.classText};
}
.noteLabel .nodeLabel, .noteLabel .edgeLabel {
color: ${A.noteTextColor};
}
.edgeLabel .label rect {
fill: ${A.mainBkg};
}
.label text {
fill: ${A.classText};
}
.labelBkg {
background: ${A.mainBkg};
}
.edgeLabel .label span {
background: ${A.mainBkg};
}
.classTitle {
font-weight: bolder;
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${A.mainBkg};
stroke: ${A.nodeBorder};
stroke-width: ${A.strokeWidth};
}
.divider {
stroke: ${A.nodeBorder};
stroke-width: 1;
}
g.clickable {
cursor: pointer;
}
g.classGroup rect {
fill: ${A.mainBkg};
stroke: ${A.nodeBorder};
}
g.classGroup line {
stroke: ${A.nodeBorder};
stroke-width: 1;
}
.classLabel .box {
stroke: none;
stroke-width: 0;
fill: ${A.mainBkg};
opacity: 0.5;
}
.classLabel .label {
fill: ${A.nodeBorder};
font-size: 10px;
}
.relation {
stroke: ${A.lineColor};
stroke-width: ${A.strokeWidth};
fill: none;
}
.dashed-line{
stroke-dasharray: 3;
}
.dotted-line{
stroke-dasharray: 1 2;
}
[id$="-compositionStart"], .composition {
fill: ${A.lineColor} !important;
stroke: ${A.lineColor} !important;
stroke-width: 1;
}
[id$="-compositionEnd"], .composition {
fill: ${A.lineColor} !important;
stroke: ${A.lineColor} !important;
stroke-width: 1;
}
[id$="-dependencyStart"], .dependency {
fill: ${A.lineColor} !important;
stroke: ${A.lineColor} !important;
stroke-width: 1;
}
[id$="-dependencyEnd"], .dependency {
fill: ${A.lineColor} !important;
stroke: ${A.lineColor} !important;
stroke-width: 1;
}
[id$="-extensionStart"], .extension {
fill: transparent !important;
stroke: ${A.lineColor} !important;
stroke-width: 1;
}
[id$="-extensionEnd"], .extension {
fill: transparent !important;
stroke: ${A.lineColor} !important;
stroke-width: 1;
}
[id$="-aggregationStart"], .aggregation {
fill: transparent !important;
stroke: ${A.lineColor} !important;
stroke-width: 1;
}
[id$="-aggregationEnd"], .aggregation {
fill: transparent !important;
stroke: ${A.lineColor} !important;
stroke-width: 1;
}
[id$="-lollipopStart"], .lollipop {
fill: ${A.mainBkg} !important;
stroke: ${A.lineColor} !important;
stroke-width: 1;
}
[id$="-lollipopEnd"], .lollipop {
fill: ${A.mainBkg} !important;
stroke: ${A.lineColor} !important;
stroke-width: 1;
}
.edgeTerminals {
font-size: 11px;
line-height: initial;
}
.classTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${A.textColor};
}
.edgeLabel[data-look="neo"] {
background-color: ${A.edgeLabelBackground};
p {
background-color: ${A.edgeLabelBackground};
}
rect {
opacity: 0.5;
background-color: ${A.edgeLabelBackground};
fill: ${A.edgeLabelBackground};
}
text-align: center;
}
${vE()}
`,"getStyles"),yO=dNt,INt=y((A,e="TB")=>{if(!A.doc)return e;let t=e;for(let r of A.doc)if(r.stmt==="dir")t=r.value;return t},"getDir"),hNt=y(function(A,e){return e.db.getClasses()},"getClasses"),QNt=y(async function(A,e,t,r){sA.info("REF0:"),sA.info("Drawing class diagram (v3)",e);let{securityLevel:i,state:u,layout:a}=OA();r.db.setDiagramId(e);let n=r.db.getData(),o=gc(e,i);n.type=r.type,n.layoutAlgorithm=yE(a),n.nodeSpacing=u?.nodeSpacing||50,n.rankSpacing=u?.rankSpacing||50,n.markers=["aggregation","extension","composition","dependency","lollipop"],n.diagramId=e,await ac(n,o);let s=8;Jt.insertTitle(o,"classDiagramTitleText",u?.titleTopMargin??25,r.db.getDiagramTitle()),Il(o,s,"classDiagram",u?.useMaxWidth??!0)},"draw"),wO={getClasses:hNt,draw:QNt,getDir:INt}});var Hie;var Kie=_(()=>{cCA();kE();gg();hl();El();lg();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt();Hie={parser:mO,get db(){return new DO},renderer:wO,styles:yO,init:y((A)=>{if(!A.class)A.class={};A.class.arrowMarkerAbsolute=A.arrowMarkerAbsolute},"init")}});var Jie;var Oie=_(()=>{cCA();kE();gg();hl();El();lg();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt();Jie={parser:mO,get db(){return new DO},renderer:wO,styles:yO,init:y((A)=>{if(!A.class)A.class={};A.class.arrowMarkerAbsolute=A.arrowMarkerAbsolute},"init")}});function kO(A="",e=0,t="",r=ICA){let i=t!==null&&t.length>0?`${r}${t}`:"";return`${TNt}-${A}${i}-${e}`}function A7(A,e,t){if(!e.id||e.id==="</join></fork>"||e.id==="</choice>")return;if(e.cssClasses){if(!Array.isArray(e.cssCompiledStyles))e.cssCompiledStyles=[];e.cssClasses.split(" ").forEach((i)=>{let u=t.get(i);if(u)e.cssCompiledStyles=[...e.cssCompiledStyles??[],...u.styles]})}let r=A.find((i)=>i.id===e.id);if(r)Object.assign(r,e);else A.push(e)}function sue(A){return A?.classes?.join(" ")??""}function lue(A){return A?.styles??[]}var ECA,FO,pNt="TB",jie="TB",Pie="dir",I6="state",d6="root",dCA="relation",fNt="classDef",mNt="style",DNt="applyClass",t7="default",Xie="divider",$ie="fill:none",Aue="fill: #333",eue="c",tue="markdown",rue="normal",CCA="rect",BCA="rectWithTitle",yNt="stateStart",wNt="stateEnd",_ie="divider",Wie="roundedWithTitle",bNt="note",vNt="noteGroup",r7="statediagram",kNt="state",FNt,iue="transition",xNt="note",SNt="note-edge",LNt,RNt,NNt="cluster",GNt,UNt="cluster-alt",MNt,uue="parent",aue="note",TNt="state",ICA="----",YNt,qie,nue,HNt,KNt,oue,vO,r1=0,JNt,zie,e7,ONt,Rs,Zie,Vie,bO,lh,PNt,xO;var hCA=_(()=>{gg();hl();El();lg();ai();rr();ir();Nt();Pr();$2();ECA=function(){var A=y(function(Y,H,J,K){for(J=J||{},K=Y.length;K--;J[Y[K]]=H);return J},"o"),e=[1,2],t=[1,3],r=[1,4],i=[2,4],u=[1,9],a=[1,11],n=[1,16],o=[1,17],s=[1,18],l=[1,19],g=[1,33],C=[1,20],B=[1,21],E=[1,22],d=[1,23],I=[1,24],h=[1,26],Q=[1,27],p=[1,28],m=[1,29],f=[1,30],D=[1,31],w=[1,32],b=[1,35],k=[1,36],v=[1,37],S=[1,38],x=[1,34],F=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],T=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],R=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],L={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:y(function(H,J,K,O,P,z,AA){var W=z.length-1;switch(P){case 3:return O.setRootDoc(z[W]),z[W];break;case 4:this.$=[];break;case 5:if(z[W]!="nl")z[W-1].push(z[W]),this.$=z[W-1];break;case 6:case 7:this.$=z[W];break;case 8:this.$="nl";break;case 12:this.$=z[W];break;case 13:let gA=z[W-1];gA.description=O.trimColon(z[W]),this.$=gA;break;case 14:this.$={stmt:"relation",state1:z[W-2],state2:z[W]};break;case 15:let aA=O.trimColon(z[W]);this.$={stmt:"relation",state1:z[W-3],state2:z[W-1],description:aA};break;case 19:this.$={stmt:"state",id:z[W-3],type:"default",description:"",doc:z[W-1]};break;case 20:var CA=z[W],tA=z[W-2].trim();if(z[W].match(":")){var lA=z[W].split(":");CA=lA[0],tA=[tA,lA[1]]}this.$={stmt:"state",id:CA,type:"default",description:tA};break;case 21:this.$={stmt:"state",id:z[W-3],type:"default",description:z[W-5],doc:z[W-1]};break;case 22:this.$={stmt:"state",id:z[W],type:"fork"};break;case 23:this.$={stmt:"state",id:z[W],type:"join"};break;case 24:this.$={stmt:"state",id:z[W],type:"choice"};break;case 25:this.$={stmt:"state",id:O.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:z[W-1].trim(),note:{position:z[W-2].trim(),text:z[W].trim()}};break;case 29:this.$=z[W].trim(),O.setAccTitle(this.$);break;case 30:case 31:this.$=z[W].trim(),O.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:z[W-3],url:z[W-2],tooltip:z[W-1]};break;case 33:this.$={stmt:"click",id:z[W-3],url:z[W-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:z[W-1].trim(),classes:z[W].trim()};break;case 36:this.$={stmt:"style",id:z[W-1].trim(),styleClass:z[W].trim()};break;case 37:this.$={stmt:"applyClass",id:z[W-1].trim(),styleClass:z[W].trim()};break;case 38:O.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:O.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:O.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:O.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:z[W].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:z[W-2].trim(),classes:[z[W].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:z[W-2].trim(),classes:[z[W].trim()],type:"default",description:""};break}},"anonymous"),table:[{3:1,4:e,5:t,6:r},{1:[3]},{3:5,4:e,5:t,6:r},{3:6,4:e,5:t,6:r},A([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],i,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:u,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:n,17:o,19:s,22:l,24:g,25:C,26:B,27:E,28:d,29:I,32:25,33:h,35:Q,37:p,38:m,41:f,45:D,48:w,51:b,52:k,53:v,54:S,57:x},A(F,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:n,17:o,19:s,22:l,24:g,25:C,26:B,27:E,28:d,29:I,32:25,33:h,35:Q,37:p,38:m,41:f,45:D,48:w,51:b,52:k,53:v,54:S,57:x},A(F,[2,7]),A(F,[2,8]),A(F,[2,9]),A(F,[2,10]),A(F,[2,11]),A(F,[2,12],{14:[1,40],15:[1,41]}),A(F,[2,16]),{18:[1,42]},A(F,[2,18],{20:[1,43]}),{23:[1,44]},A(F,[2,22]),A(F,[2,23]),A(F,[2,24]),A(F,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},A(F,[2,28]),{34:[1,49]},{36:[1,50]},A(F,[2,31]),{13:51,24:g,57:x},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},A(T,[2,44],{58:[1,56]}),A(T,[2,45],{58:[1,57]}),A(F,[2,38]),A(F,[2,39]),A(F,[2,40]),A(F,[2,41]),A(F,[2,6]),A(F,[2,13]),{13:58,24:g,57:x},A(F,[2,17]),A(R,i,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},A(F,[2,29]),A(F,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},A(F,[2,14],{14:[1,71]}),{4:u,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:n,17:o,19:s,21:[1,72],22:l,24:g,25:C,26:B,27:E,28:d,29:I,32:25,33:h,35:Q,37:p,38:m,41:f,45:D,48:w,51:b,52:k,53:v,54:S,57:x},A(F,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},A(F,[2,34]),A(F,[2,35]),A(F,[2,36]),A(F,[2,37]),A(T,[2,46]),A(T,[2,47]),A(F,[2,15]),A(F,[2,19]),A(R,i,{7:78}),A(F,[2,26]),A(F,[2,27]),{5:[1,79]},{5:[1,80]},{4:u,5:a,8:8,9:10,10:12,11:13,12:14,13:15,16:n,17:o,19:s,21:[1,81],22:l,24:g,25:C,26:B,27:E,28:d,29:I,32:25,33:h,35:Q,37:p,38:m,41:f,45:D,48:w,51:b,52:k,53:v,54:S,57:x},A(F,[2,32]),A(F,[2,33]),A(F,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:y(function(H,J){if(J.recoverable)this.trace(H);else{var K=Error(H);throw K.hash=J,K}},"parseError"),parse:y(function(H){var J=this,K=[0],O=[],P=[null],z=[],AA=this.table,W="",CA=0,tA=0,lA=0,gA=2,aA=1,NA=z.slice.call(arguments,1),DA=Object.create(this.lexer),KA={yy:{}};for(var TA in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,TA))KA.yy[TA]=this.yy[TA];if(DA.setInput(H,KA.yy),KA.yy.lexer=DA,KA.yy.parser=this,typeof DA.yylloc>"u")DA.yylloc={};var qA=DA.yylloc;z.push(qA);var IA=DA.options&&DA.options.ranges;if(typeof KA.yy.parseError==="function")this.parseError=KA.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function bA(j){K.length=K.length-2*j,P.length=P.length-j,z.length=z.length-j}y(bA,"popStack");function SA(){var j=O.pop()||DA.lex()||aA;if(typeof j!=="number"){if(j instanceof Array)O=j,j=O.pop();j=J.symbols_[j]||j}return j}y(SA,"lex");var EA,nA,eA,BA,yA,vA,FA={},HA,dA,q,Z;while(!0){if(eA=K[K.length-1],this.defaultActions[eA])BA=this.defaultActions[eA];else{if(EA===null||typeof EA>"u")EA=SA();BA=AA[eA]&&AA[eA][EA]}if(typeof BA>"u"||!BA.length||!BA[0]){var fA="";Z=[];for(HA in AA[eA])if(this.terminals_[HA]&&HA>gA)Z.push("'"+this.terminals_[HA]+"'");if(DA.showPosition)fA="Parse error on line "+(CA+1)+`:
`+DA.showPosition()+`
Expecting `+Z.join(", ")+", got '"+(this.terminals_[EA]||EA)+"'";else fA="Parse error on line "+(CA+1)+": Unexpected "+(EA==aA?"end of input":"'"+(this.terminals_[EA]||EA)+"'");this.parseError(fA,{text:DA.match,token:this.terminals_[EA]||EA,line:DA.yylineno,loc:qA,expected:Z})}if(BA[0]instanceof Array&&BA.length>1)throw Error("Parse Error: multiple actions possible at state: "+eA+", token: "+EA);switch(BA[0]){case 1:if(K.push(EA),P.push(DA.yytext),z.push(DA.yylloc),K.push(BA[1]),EA=null,!nA){if(tA=DA.yyleng,W=DA.yytext,CA=DA.yylineno,qA=DA.yylloc,lA>0)lA--}else EA=nA,nA=null;break;case 2:if(dA=this.productions_[BA[1]][1],FA.$=P[P.length-dA],FA._$={first_line:z[z.length-(dA||1)].first_line,last_line:z[z.length-1].last_line,first_column:z[z.length-(dA||1)].first_column,last_column:z[z.length-1].last_column},IA)FA._$.range=[z[z.length-(dA||1)].range[0],z[z.length-1].range[1]];if(vA=this.performAction.apply(FA,[W,tA,CA,KA.yy,BA[1],P,z].concat(NA)),typeof vA<"u")return vA;if(dA)K=K.slice(0,-1*dA*2),P=P.slice(0,-1*dA),z=z.slice(0,-1*dA);K.push(this.productions_[BA[1]][0]),P.push(FA.$),z.push(FA._$),q=AA[K[K.length-2]][K[K.length-1]],K.push(q);break;case 3:return!0}}return!0},"parse")},M=function(){var Y={EOF:1,parseError:y(function(J,K){if(this.yy.parser)this.yy.parser.parseError(J,K);else throw Error(J)},"parseError"),setInput:y(function(H,J){if(this.yy=J||this.yy||{},this._input=H,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var H=this._input[0];this.yytext+=H,this.yyleng++,this.offset++,this.match+=H,this.matched+=H;var J=H.match(/(?:\r\n?|\n).*/g);if(J)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),H},"input"),unput:y(function(H){var J=H.length,K=H.split(/(?:\r\n?|\n)/g);this._input=H+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-J),this.offset-=J;var O=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),K.length-1)this.yylineno-=K.length-1;var P=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:K?(K.length===O.length?this.yylloc.first_column:0)+O[O.length-K.length].length-K[0].length:this.yylloc.first_column-J},this.options.ranges)this.yylloc.range=[P[0],P[0]+this.yyleng-J];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(H){this.unput(this.match.slice(H))},"less"),pastInput:y(function(){var H=this.matched.substr(0,this.matched.length-this.match.length);return(H.length>20?"...":"")+H.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var H=this.match;if(H.length<20)H+=this._input.substr(0,20-H.length);return(H.substr(0,20)+(H.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var H=this.pastInput(),J=Array(H.length+1).join("-");return H+this.upcomingInput()+`
`+J+"^"},"showPosition"),test_match:y(function(H,J){var K,O,P;if(this.options.backtrack_lexer){if(P={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)P.yylloc.range=this.yylloc.range.slice(0)}if(O=H[0].match(/(?:\r\n?|\n).*/g),O)this.yylineno+=O.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:O?O[O.length-1].length-O[O.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+H[0].length},this.yytext+=H[0],this.match+=H[0],this.matches=H,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(H[0].length),this.matched+=H[0],K=this.performAction.call(this,this.yy,this,J,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(K)return K;else if(this._backtrack){for(var z in P)this[z]=P[z];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var H,J,K,O;if(!this._more)this.yytext="",this.match="";var P=this._currentRules();for(var z=0;z<P.length;z++)if(K=this._input.match(this.rules[P[z]]),K&&(!J||K[0].length>J[0].length)){if(J=K,O=z,this.options.backtrack_lexer)if(H=this.test_match(K,P[z]),H!==!1)return H;else if(this._backtrack){J=!1;continue}else return!1;else if(!this.options.flex)break}if(J){if(H=this.test_match(J,P[O]),H!==!1)return H;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var J=this.next();if(J)return J;else return this.lex()},"lex"),begin:y(function(J){this.conditionStack.push(J)},"begin"),popState:y(function(){var J=this.conditionStack.length-1;if(J>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(J){if(J=this.conditionStack.length-1-Math.abs(J||0),J>=0)return this.conditionStack[J];else return"INITIAL"},"topState"),pushState:y(function(J){this.begin(J)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(J,K,O,P){function z(){let W=K.yytext.indexOf("%%");if(W===0)return!1;if(W>0){let CA=K.yytext.slice(0,W),tA=K.yytext.slice(W);if(tA)J.lexer.unput(tA);K.yytext=CA}return!0}y(z,"processId");var AA=P;switch(O){case 0:return 38;case 1:return 40;case 2:return 39;case 3:return 44;case 4:return 51;case 5:return 52;case 6:return 53;case 7:return 54;case 8:return 5;case 9:break;case 10:break;case 11:break;case 12:break;case 13:return this.pushState("SCALE"),17;break;case 14:return 18;case 15:this.popState();break;case 16:return this.begin("acc_title"),33;break;case 17:return this.popState(),"acc_title_value";break;case 18:return this.begin("acc_descr"),35;break;case 19:return this.popState(),"acc_descr_value";break;case 20:this.begin("acc_descr_multiline");break;case 21:this.popState();break;case 22:return"acc_descr_multiline_value";case 23:return this.pushState("CLASSDEF"),41;break;case 24:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 25:return this.popState(),this.pushState("CLASSDEFID"),42;break;case 26:return this.popState(),43;break;case 27:return this.pushState("CLASS"),48;break;case 28:return this.popState(),this.pushState("CLASS_STYLE"),49;break;case 29:return this.popState(),50;break;case 30:return this.pushState("STYLE"),45;break;case 31:return this.popState(),this.pushState("STYLEDEF_STYLES"),46;break;case 32:return this.popState(),47;break;case 33:return this.pushState("SCALE"),17;break;case 34:return 18;case 35:this.popState();break;case 36:this.pushState("STATE");break;case 37:return this.popState(),K.yytext=K.yytext.slice(0,-8).trim(),25;break;case 38:return this.popState(),K.yytext=K.yytext.slice(0,-8).trim(),26;break;case 39:return this.popState(),K.yytext=K.yytext.slice(0,-10).trim(),27;break;case 40:return this.popState(),K.yytext=K.yytext.slice(0,-8).trim(),25;break;case 41:return this.popState(),K.yytext=K.yytext.slice(0,-8).trim(),26;break;case 42:return this.popState(),K.yytext=K.yytext.slice(0,-10).trim(),27;break;case 43:return 51;case 44:return 52;case 45:return 53;case 46:return 54;case 47:this.pushState("STATE_STRING");break;case 48:return this.pushState("STATE_ID"),"AS";break;case 49:if(!z())return;return this.popState(),"ID";break;case 50:this.popState();break;case 51:return"STATE_DESCR";case 52:throw Error('Error: State name must be a single word. Found: "'+K.yytext.trim()+'"');case 53:return 19;case 54:this.popState();break;case 55:return this.popState(),this.pushState("struct"),20;break;case 56:return this.popState(),21;break;case 57:break;case 58:return this.begin("NOTE"),29;break;case 59:return this.popState(),this.pushState("NOTE_ID"),59;break;case 60:return this.popState(),this.pushState("NOTE_ID"),60;break;case 61:this.popState(),this.pushState("FLOATING_NOTE");break;case 62:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";break;case 63:break;case 64:return"NOTE_TEXT";case 65:if(!z())return;return this.popState(),"ID";break;case 66:if(!z())return;return this.popState(),this.pushState("NOTE_TEXT"),24;break;case 67:return this.popState(),K.yytext=K.yytext.substr(2).trim(),31;break;case 68:return this.popState(),K.yytext=K.yytext.slice(0,-8).trim(),31;break;case 69:return 6;case 70:return 6;case 71:return 16;case 72:return 57;case 73:if(!z())return;return 24;case 74:return K.yytext=K.yytext.trim(),14;break;case 75:return 15;case 76:return 28;case 77:return 58;case 78:return 5;case 79:return"INVALID"}},"anonymous"),rules:[/^(?:click\b)/i,/^(?:href\b)/i,/^(?:"[^"]*")/i,/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<<fork>>)/i,/^(?:.*<<join>>)/i,/^(?:.*<<choice>>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\w+\s+\w+.*?\{)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?\n\s*end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:(?:[^:\n;]|:[^:\n;])+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[10,11,12],inclusive:!1},struct:{rules:[10,11,12,23,27,30,36,43,44,45,46,56,57,58,72,73,74,75,76,77],inclusive:!1},FLOATING_NOTE_ID:{rules:[65],inclusive:!1},FLOATING_NOTE:{rules:[62,63,64],inclusive:!1},NOTE_TEXT:{rules:[67,68],inclusive:!1},NOTE_ID:{rules:[66],inclusive:!1},NOTE:{rules:[59,60,61],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[32],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[31],inclusive:!1},CLASS_STYLE:{rules:[29],inclusive:!1},CLASS:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[26],inclusive:!1},CLASSDEF:{rules:[24,25],inclusive:!1},acc_descr_multiline:{rules:[21,22],inclusive:!1},acc_descr:{rules:[19],inclusive:!1},acc_title:{rules:[17],inclusive:!1},SCALE:{rules:[14,15,34,35],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[49],inclusive:!1},STATE_STRING:{rules:[50,51],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[10,11,12,37,38,39,40,41,42,47,48,52,53,54,55],inclusive:!1},ID:{rules:[10,11,12],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18,20,23,27,30,33,36,55,58,69,70,71,72,73,74,75,77,78,79],inclusive:!0}}};return Y}();L.lexer=M;function U(){this.yy={}}return y(U,"Parser"),U.prototype=L,L.Parser=U,new U}();ECA.parser=ECA;FO=ECA,FNt=`${r7}-${kNt}`,LNt=`${iue} ${SNt}`,RNt=`${r7}-${xNt}`,GNt=`${r7}-${NNt}`,MNt=`${r7}-${UNt}`,YNt=`${ICA}${aue}`,qie=`${ICA}${uue}`,nue=y((A,e=jie)=>{if(!A.doc)return e;let t=e;for(let r of A.doc)if(r.stmt==="dir")t=r.value;return t},"getDir"),HNt=y(function(A,e){return e.db.getClasses()},"getClasses"),KNt=y(async function(A,e,t,r){sA.info("REF0:"),sA.info("Drawing state diagram (v2)",e);let{securityLevel:i,state:u,layout:a}=OA();r.db.extract(r.db.getRootDocV2());let n=r.db.getData(),o=gc(e,i);if(n.type=r.type,n.layoutAlgorithm=a,n.nodeSpacing=u?.nodeSpacing||50,n.rankSpacing=u?.rankSpacing||50,OA().look==="neo")n.markers=["barbNeo"];else n.markers=["barb"];n.diagramId=e,await ac(n,o);let l=8;try{(typeof r.db.getLinks==="function"?r.db.getLinks():new Map).forEach((C,B)=>{let E=typeof B==="string"?B:typeof B?.id==="string"?B.id:"",d=n.nodes.find((f)=>f.id===E);if(!E){sA.warn("⚠️ Invalid or missing stateId from key:",JSON.stringify(B));return}let I=o.node()?.querySelectorAll("g.node, g.rough-node"),h;if(I?.forEach((f)=>{let D=f.textContent?.trim();if(f.id===d?.domId||D===E)h=f}),!h){sA.warn("⚠️ Could not find node matching text:",E);return}let Q=h.parentNode;if(!Q){sA.warn("⚠️ Node has no parent, cannot wrap:",E);return}let p=document.createElementNS("http://www.w3.org/2000/svg","a"),m=C.url.replace(/^"+|"+$/g,"");if(p.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",m),p.setAttribute("target","_blank"),C.tooltip){let f=C.tooltip.replace(/^"+|"+$/g,"");p.setAttribute("title",f),h.setAttribute("title",f)}Q.replaceChild(p,h),p.appendChild(h),sA.info("\uD83D\uDD17 Wrapped node in <a> tag for:",E,C.url)})}catch(g){sA.error("❌ Error injecting clickable links:",g)}Jt.insertTitle(o,"statediagramTitleText",u?.titleTopMargin??25,r.db.getDiagramTitle()),Il(o,l,r7,u?.useMaxWidth??!0)},"draw"),oue={getClasses:HNt,draw:KNt,getDir:nue},vO=new Map;y(kO,"stateDomId");JNt=y((A,e,t,r,i,u,a,n)=>{sA.trace("items",e),e.forEach((o)=>{switch(o.stmt){case I6:e7(A,o,t,r,i,u,a,n);break;case t7:e7(A,o,t,r,i,u,a,n);break;case dCA:{e7(A,o.state1,t,r,i,u,a,n),e7(A,o.state2,t,r,i,u,a,n);let s=a==="neo",l={id:"edge"+r1,start:o.state1.id,end:o.state2.id,arrowhead:"normal",arrowTypeEnd:s?"arrow_barb_neo":"arrow_barb",style:$ie,labelStyle:"",label:_e.sanitizeText(o.description??"",OA()),arrowheadStyle:Aue,labelpos:eue,labelType:tue,thickness:rue,classes:iue,look:a};i.push(l),r1++}break}})},"setupDoc"),zie=y((A,e=jie)=>{let t=e;if(A.doc){for(let r of A.doc)if(r.stmt==="dir")t=r.value}return t},"getDir");y(A7,"insertOrUpdateNode");y(sue,"getClassesFromDbInfo");y(lue,"getStylesFromDbInfo");e7=y((A,e,t,r,i,u,a,n)=>{let o=e.id,s=t.get(o),l=sue(s),g=lue(s),C=OA();if(sA.info("dataFetcher parsedItem",e,s,g),o!=="root"){let B=CCA;if(e.start===!0)B=yNt;else if(e.start===!1)B=wNt;if(e.type!==t7)B=e.type;if(!vO.get(o))vO.set(o,{id:o,shape:B,description:_e.sanitizeText(o,C),cssClasses:`${l} ${FNt}`,cssStyles:g});let E=vO.get(o);if(e.description){if(Array.isArray(E.description))E.shape=BCA,E.description.push(e.description);else if(E.description?.length&&E.description.length>0)if(E.shape=BCA,E.description===o)E.description=[e.description];else E.description=[E.description,e.description];else E.shape=CCA,E.description=e.description;E.description=_e.sanitizeTextOrArray(E.description,C)}if(E.description?.length===1&&E.shape===BCA)if(E.type==="group")E.shape=Wie;else E.shape=CCA;if(!E.type&&e.doc)sA.info("Setting cluster for XCX",o,zie(e)),E.type="group",E.isGroup=!0,E.dir=zie(e),E.explicitDir=e.doc.some((I)=>I.stmt==="dir"),E.shape=e.type===Xie?_ie:Wie,E.cssClasses=`${E.cssClasses} ${GNt} ${u?MNt:""}`;let d={labelStyle:"",shape:E.shape,label:E.description,cssClasses:E.cssClasses,cssCompiledStyles:[],cssStyles:E.cssStyles,id:o,dir:E.dir,domId:kO(o,r1),type:E.type,isGroup:E.type==="group",padding:8,rx:10,ry:10,look:a,labelType:"markdown"};if(d.shape===_ie)d.label="";if(A&&A.id!=="root")sA.trace("Setting node ",o," to be child of its parent ",A.id),d.parentId=A.id;if(d.centerLabel=!0,e.note){let I={labelStyle:"",shape:bNt,label:e.note.text,labelType:"markdown",cssClasses:RNt,cssStyles:[],cssCompiledStyles:[],id:o+YNt+"-"+r1,domId:kO(o,r1,aue),type:E.type,isGroup:E.type==="group",padding:C.flowchart?.padding,look:a,position:e.note.position},h=o+qie,Q={labelStyle:"",shape:vNt,label:e.note.text,cssClasses:E.cssClasses,cssStyles:[],id:o+qie,domId:kO(o,r1,uue),type:"group",isGroup:!0,padding:16,look:a,position:e.note.position};r1++,Q.id=h,I.parentId=h,A7(r,Q,n),A7(r,I,n),A7(r,d,n);let p=o,m=I.id;if(e.note.position==="left of")p=I.id,m=o;i.push({id:p+"-"+m,start:p,end:m,arrowhead:"none",arrowTypeEnd:"",style:$ie,labelStyle:"",classes:LNt,arrowheadStyle:Aue,labelpos:eue,labelType:tue,thickness:rue,look:a})}else A7(r,d,n)}if(e.doc)sA.trace("Adding nodes children "),JNt(e,e.doc,t,r,i,!u,a,n)},"dataFetcher"),ONt=y(()=>{vO.clear(),r1=0},"reset"),Rs={START_NODE:"[*]",START_TYPE:"start",END_NODE:"[*]",END_TYPE:"end",COLOR_KEYWORD:"color",FILL_KEYWORD:"fill",BG_FILL:"bgFill",STYLECLASS_SEP:","},Zie=y(()=>new Map,"newClassesList"),Vie=y(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),bO=y((A)=>JSON.parse(JSON.stringify(A)),"clone"),lh=class{constructor(A){this.version=A,this.nodes=[],this.edges=[],this.rootDoc=[],this.classes=Zie(),this.documents={root:Vie()},this.currentDocument=this.documents.root,this.startEndCount=0,this.dividerCnt=0,this.links=new Map,this.funs=[],this.getAccTitle=kr,this.setAccTitle=Dr,this.getAccDescription=xr,this.setAccDescription=Fr,this.setDiagramTitle=Tr,this.getDiagramTitle=Sr,this.clear(),this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this),this.bindFunctions=this.bindFunctions.bind(this)}static{y(this,"StateDB")}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(A){this.clear(!0);for(let r of Array.isArray(A)?A:A.doc)switch(r.stmt){case I6:this.addState(r.id.trim(),r.type,r.doc,r.description,r.note);break;case dCA:this.addRelation(r.state1,r.state2,r.description);break;case fNt:this.addStyleClass(r.id.trim(),r.classes);break;case mNt:this.handleStyleDef(r);break;case DNt:this.setCssClass(r.id.trim(),r.styleClass);break;case"click":this.addLink(r.id,r.url,r.tooltip);break}let e=this.getStates(),t=OA();ONt(),e7(void 0,this.getRootDocV2(),e,this.nodes,this.edges,!0,t.look,this.classes);for(let r of this.nodes){if(!Array.isArray(r.label))continue;if(r.description=r.label.slice(1),r.isGroup&&r.description.length>0)throw Error(`Group nodes can only have label. Remove the additional description for node [${r.id}]`);r.label=r.label[0]}}handleStyleDef(A){let e=A.id.trim().split(","),t=A.styleClass.split(",");for(let r of e){let i=this.getState(r);if(!i){let u=r.trim();this.addState(u),i=this.getState(u)}if(i)i.styles=t.map((u)=>u.replace(/;/g,"")?.trim())}}setRootDoc(A){if(sA.info("Setting root doc",A),this.rootDoc=A,this.version===1)this.extract(A);else this.extract(this.getRootDocV2())}docTranslator(A,e,t){if(e.stmt===dCA){this.docTranslator(A,e.state1,!0),this.docTranslator(A,e.state2,!1);return}if(e.stmt===I6)if(e.id===Rs.START_NODE)e.id=A.id+(t?"_start":"_end"),e.start=t;else e.id=e.id.trim();if(e.stmt!==d6&&e.stmt!==I6||!e.doc)return;let r=[],i=[];for(let u of e.doc)if(u.type===Xie){let a=bO(u);a.doc=bO(i),r.push(a),i=[]}else i.push(u);if(r.length>0&&i.length>0){let u={stmt:I6,id:XAA(),type:"divider",doc:bO(i)};r.push(bO(u)),e.doc=r}e.doc.forEach((u)=>this.docTranslator(e,u,!0))}getRootDocV2(){return this.docTranslator({id:d6,stmt:d6},{id:d6,stmt:d6,doc:this.rootDoc},!0),{id:d6,doc:this.rootDoc}}addState(A,e=t7,t=void 0,r=void 0,i=void 0,u=void 0,a=void 0,n=void 0){let o=A?.trim();if(!this.currentDocument.states.has(o))sA.info("Adding state ",o,r),this.currentDocument.states.set(o,{stmt:I6,id:o,descriptions:[],type:e,doc:t,note:i,classes:[],styles:[],textStyles:[]});else{let s=this.currentDocument.states.get(o);if(!s)throw Error(`State not found: ${o}`);if(!s.doc)s.doc=t;if(!s.type)s.type=e}if(r)sA.info("Setting state description",o,r),(Array.isArray(r)?r:[r]).forEach((l)=>this.addDescription(o,l.trim()));if(i){let s=this.currentDocument.states.get(o);if(!s)throw Error(`State not found: ${o}`);s.note=i,s.note.text=_e.sanitizeText(s.note.text,OA())}if(u)sA.info("Setting state classes",o,u),(Array.isArray(u)?u:[u]).forEach((l)=>this.setCssClass(o,l.trim()));if(a)sA.info("Setting state styles",o,a),(Array.isArray(a)?a:[a]).forEach((l)=>this.setStyle(o,l.trim()));if(n)sA.info("Setting state styles",o,a),(Array.isArray(n)?n:[n]).forEach((l)=>this.setTextStyle(o,l.trim()))}clear(A){if(this.nodes=[],this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.documents={root:Vie()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=Zie(),!A)this.links=new Map,cr()}getState(A){return this.currentDocument.states.get(A)}getStates(){return this.currentDocument.states}logDocuments(){sA.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(A,e,t){this.links.set(A,{url:e,tooltip:t}),sA.warn("Adding link",A,e,t)}getLinks(){return this.links}startIdIfNeeded(A=""){if(A===Rs.START_NODE)return this.startEndCount++,`${Rs.START_TYPE}${this.startEndCount}`;return A}startTypeIfNeeded(A="",e=t7){return A===Rs.START_NODE?Rs.START_TYPE:e}endIdIfNeeded(A=""){if(A===Rs.END_NODE)return this.startEndCount++,`${Rs.END_TYPE}${this.startEndCount}`;return A}endTypeIfNeeded(A="",e=t7){return A===Rs.END_NODE?Rs.END_TYPE:e}addRelationObjs(A,e,t=""){let r=this.startIdIfNeeded(A.id.trim()),i=this.startTypeIfNeeded(A.id.trim(),A.type),u=this.startIdIfNeeded(e.id.trim()),a=this.startTypeIfNeeded(e.id.trim(),e.type);this.addState(r,i,A.doc,A.description,A.note,A.classes,A.styles,A.textStyles),this.addState(u,a,e.doc,e.description,e.note,e.classes,e.styles,e.textStyles),this.currentDocument.relations.push({id1:r,id2:u,relationTitle:_e.sanitizeText(t,OA())})}addRelation(A,e,t){if(typeof A==="object"&&typeof e==="object")this.addRelationObjs(A,e,t);else if(typeof A==="string"&&typeof e==="string"){let r=this.startIdIfNeeded(A.trim()),i=this.startTypeIfNeeded(A),u=this.endIdIfNeeded(e.trim()),a=this.endTypeIfNeeded(e);this.addState(r,i),this.addState(u,a),this.currentDocument.relations.push({id1:r,id2:u,relationTitle:t?_e.sanitizeText(t,OA()):void 0})}}addDescription(A,e){let t=this.currentDocument.states.get(A),r=e.startsWith(":")?e.replace(":","").trim():e;t?.descriptions?.push(_e.sanitizeText(r,OA()))}cleanupLabel(A){return A.startsWith(":")?A.slice(2).trim():A.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(A,e=""){if(!this.classes.has(A))this.classes.set(A,{id:A,styles:[],textStyles:[]});let t=this.classes.get(A);if(e&&t)e.split(Rs.STYLECLASS_SEP).forEach((r)=>{let i=r.replace(/([^;]*);/,"$1").trim();if(RegExp(Rs.COLOR_KEYWORD).exec(r)){let a=i.replace(Rs.FILL_KEYWORD,Rs.BG_FILL).replace(Rs.COLOR_KEYWORD,Rs.FILL_KEYWORD);t.textStyles.push(a)}t.styles.push(i)})}getClasses(){return this.classes}setupToolTips(A){let e=Ew();Qe(A).select("svg").selectAll("g.node, g.rough-node").on("mouseover",(i)=>{let u=Qe(i.currentTarget),a=u.attr("title");if(a===null)return;let n=i.currentTarget?.getBoundingClientRect();e.transition().duration(200).style("opacity",".9"),e.style("left",window.scrollX+n.left+(n.right-n.left)/2+"px").style("top",window.scrollY+n.bottom+"px"),e.html(js.sanitize(a)),u.classed("hover",!0)}).on("mouseout",(i)=>{e.transition().duration(500).style("opacity",0),Qe(i.currentTarget).classed("hover",!1)})}setCssClass(A,e){A.split(",").forEach((t)=>{let r=this.getState(t);if(!r){let i=t.trim();this.addState(i),r=this.getState(i)}r?.classes?.push(e)})}setStyle(A,e){this.getState(A)?.styles?.push(e)}setTextStyle(A,e){this.getState(A)?.textStyles?.push(e)}bindFunctions(A){this.funs.forEach((e)=>{e(A)})}getDirectionStatement(){return this.rootDoc.find((A)=>A.stmt===Pie)}getDirection(){return this.getDirectionStatement()?.value??pNt}setDirection(A){let e=this.getDirectionStatement();if(e)e.value=A;else this.rootDoc.unshift({stmt:Pie,value:A})}trimColon(A){return A.startsWith(":")?A.slice(1).trim():A.trim()}getData(){let A=OA();return{nodes:this.nodes,edges:this.edges,other:{},config:A,direction:nue(this.getRootDocV2())}}getConfig(){return OA().state}},PNt=y((A)=>`
defs [id$="-barbEnd"] {
fill: ${A.transitionColor};
stroke: ${A.transitionColor};
}
g.stateGroup text {
fill: ${A.nodeBorder};
stroke: none;
font-size: 10px;
}
g.stateGroup text {
fill: ${A.textColor};
stroke: none;
font-size: 10px;
}
g.stateGroup .state-title {
font-weight: bolder;
fill: ${A.stateLabelColor};
}
g.stateGroup rect {
fill: ${A.mainBkg};
stroke: ${A.nodeBorder};
}
g.stateGroup line {
stroke: ${A.lineColor};
stroke-width: ${A.strokeWidth||1};
}
.transition {
stroke: ${A.transitionColor};
stroke-width: ${A.strokeWidth||1};
fill: none;
}
.stateGroup .composit {
fill: ${A.background};
border-bottom: 1px
}
.stateGroup .alt-composit {
fill: #e0e0e0;
border-bottom: 1px
}
.state-note {
stroke: ${A.noteBorderColor};
fill: ${A.noteBkgColor};
text {
fill: ${A.noteTextColor};
stroke: none;
font-size: 10px;
}
}
.stateLabel .box {
stroke: none;
stroke-width: 0;
fill: ${A.mainBkg};
opacity: 0.5;
}
.edgeLabel .label rect {
fill: ${A.labelBackgroundColor};
opacity: 0.5;
}
.edgeLabel {
background-color: ${A.edgeLabelBackground};
p {
background-color: ${A.edgeLabelBackground};
}
rect {
opacity: 0.5;
background-color: ${A.edgeLabelBackground};
fill: ${A.edgeLabelBackground};
}
text-align: center;
}
.edgeLabel .label text {
fill: ${A.transitionLabelColor||A.tertiaryTextColor};
}
.label div .edgeLabel {
color: ${A.transitionLabelColor||A.tertiaryTextColor};
}
.stateLabel text {
fill: ${A.stateLabelColor};
font-size: 10px;
font-weight: bold;
}
.node circle.state-start {
fill: ${A.specialStateColor};
stroke: ${A.specialStateColor};
}
.node .fork-join {
fill: ${A.specialStateColor};
stroke: ${A.specialStateColor};
}
.node circle.state-end {
fill: ${A.innerEndBackground};
stroke: ${A.background};
stroke-width: 1.5
}
.end-state-inner {
fill: ${A.compositeBackground||A.background};
// stroke: ${A.background};
stroke-width: 1.5
}
.node rect {
fill: ${A.stateBkg||A.mainBkg};
stroke: ${A.stateBorder||A.nodeBorder};
stroke-width: ${A.strokeWidth||1}px;
}
.node polygon {
fill: ${A.mainBkg};
stroke: ${A.stateBorder||A.nodeBorder};;
stroke-width: ${A.strokeWidth||1}px;
}
[id$="-barbEnd"] {
fill: ${A.lineColor};
}
.statediagram-cluster rect {
fill: ${A.compositeTitleBackground};
stroke: ${A.stateBorder||A.nodeBorder};
stroke-width: ${A.strokeWidth||1}px;
}
.cluster-label, .nodeLabel {
color: ${A.stateLabelColor};
// line-height: 1;
}
.statediagram-cluster rect.outer {
rx: 5px;
ry: 5px;
}
.statediagram-state .divider {
stroke: ${A.stateBorder||A.nodeBorder};
}
.statediagram-state .title-state {
rx: 5px;
ry: 5px;
}
.statediagram-cluster.statediagram-cluster .inner {
fill: ${A.compositeBackground||A.background};
}
.statediagram-cluster.statediagram-cluster-alt .inner {
fill: ${A.altBackground?A.altBackground:"#efefef"};
}
.statediagram-cluster .inner {
rx:0;
ry:0;
}
.statediagram-state rect.basic {
rx: 5px;
ry: 5px;
}
.statediagram-state rect.divider {
stroke-dasharray: 10,10;
fill: ${A.altBackground?A.altBackground:"#efefef"};
}
.note-edge {
stroke-dasharray: 5;
}
.statediagram-note rect {
fill: ${A.noteBkgColor};
stroke: ${A.noteBorderColor};
stroke-width: 1px;
rx: 0;
ry: 0;
}
.statediagram-note rect {
fill: ${A.noteBkgColor};
stroke: ${A.noteBorderColor};
stroke-width: 1px;
rx: 0;
ry: 0;
}
.statediagram-note text {
fill: ${A.noteTextColor};
}
.statediagram-note .nodeLabel {
color: ${A.noteTextColor};
}
.statediagram .edgeLabel {
color: red; // ${A.noteTextColor};
}
[id$="-dependencyStart"], [id$="-dependencyEnd"] {
fill: ${A.lineColor};
stroke: ${A.lineColor};
stroke-width: ${A.strokeWidth||1};
}
.statediagramTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${A.textColor};
}
[data-look="neo"].statediagram-cluster rect {
fill: ${A.mainBkg};
stroke: ${A.useGradient?"url("+A.svgId+"-gradient)":A.stateBorder||A.nodeBorder};
stroke-width: ${A.strokeWidth??1};
}
[data-look="neo"].statediagram-cluster rect.outer {
rx: ${A.radius}px;
ry: ${A.radius}px;
filter: ${A.dropShadow?A.dropShadow.replace("url(#drop-shadow)",`url(${A.svgId}-drop-shadow)`):"none"}
}
`,"getStyles"),xO=PNt});var _Nt,WNt,qNt,zNt,ZNt,VNt,jNt,XNt,$Nt,gue,cue=0,AGt,pg,QCA,eGt,tGt,rGt,iGt,Cue,uGt,Bue;var Eue=_(()=>{hCA();gg();hl();El();lg();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt();Pr();prA();ng();Pr();_Nt=y((A)=>A.append("circle").attr("class","start-state").attr("r",OA().state.sizeUnit).attr("cx",OA().state.padding+OA().state.sizeUnit).attr("cy",OA().state.padding+OA().state.sizeUnit),"drawStartState"),WNt=y((A)=>A.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",OA().state.textHeight).attr("class","divider").attr("x2",OA().state.textHeight*2).attr("y1",0).attr("y2",0),"drawDivider"),qNt=y((A,e)=>{let t=A.append("text").attr("x",2*OA().state.padding).attr("y",OA().state.textHeight+2*OA().state.padding).attr("font-size",OA().state.fontSize).attr("class","state-title").text(e.id),r=t.node().getBBox();return A.insert("rect",":first-child").attr("x",OA().state.padding).attr("y",OA().state.padding).attr("width",r.width+2*OA().state.padding).attr("height",r.height+2*OA().state.padding).attr("rx",OA().state.radius),t},"drawSimpleState"),zNt=y((A,e)=>{let t=y(function(C,B,E){let d=C.append("tspan").attr("x",2*OA().state.padding).text(B);if(!E)d.attr("dy",OA().state.textHeight)},"addTspan"),i=A.append("text").attr("x",2*OA().state.padding).attr("y",OA().state.textHeight+1.3*OA().state.padding).attr("font-size",OA().state.fontSize).attr("class","state-title").text(e.descriptions[0]).node().getBBox(),u=i.height,a=A.append("text").attr("x",OA().state.padding).attr("y",u+OA().state.padding*0.4+OA().state.dividerMargin+OA().state.textHeight).attr("class","state-description"),n=!0,o=!0;e.descriptions.forEach(function(C){if(!n)t(a,C,o),o=!1;n=!1});let s=A.append("line").attr("x1",OA().state.padding).attr("y1",OA().state.padding+u+OA().state.dividerMargin/2).attr("y2",OA().state.padding+u+OA().state.dividerMargin/2).attr("class","descr-divider"),l=a.node().getBBox(),g=Math.max(l.width,i.width);return s.attr("x2",g+3*OA().state.padding),A.insert("rect",":first-child").attr("x",OA().state.padding).attr("y",OA().state.padding).attr("width",g+2*OA().state.padding).attr("height",l.height+u+2*OA().state.padding).attr("rx",OA().state.radius),A},"drawDescrState"),ZNt=y((A,e,t)=>{let r=OA().state.padding,i=2*OA().state.padding,u=A.node().getBBox(),{width:a,x:n}=u,o=A.append("text").attr("x",0).attr("y",OA().state.titleShift).attr("font-size",OA().state.fontSize).attr("class","state-title").text(e.id),l=o.node().getBBox().width+i,g=Math.max(l,a);if(g===a)g=g+i;let C,B=A.node().getBBox();if(e.doc);if(C=n-r,l>a)C=(a-g)/2+r;if(Math.abs(n-B.x)<r&&l>a)C=n-(l-a)/2;let E=1-OA().state.textHeight;if(A.insert("rect",":first-child").attr("x",C).attr("y",E).attr("class",t?"alt-composit":"composit").attr("width",g).attr("height",B.height+OA().state.textHeight+OA().state.titleShift+1).attr("rx","0"),o.attr("x",C+r),l<=a)o.attr("x",n+(g-i)/2-l/2+r);return A.insert("rect",":first-child").attr("x",C).attr("y",OA().state.titleShift-OA().state.textHeight-OA().state.padding).attr("width",g).attr("height",OA().state.textHeight*3).attr("rx",OA().state.radius),A.insert("rect",":first-child").attr("x",C).attr("y",OA().state.titleShift-OA().state.textHeight-OA().state.padding).attr("width",g).attr("height",B.height+3+2*OA().state.textHeight).attr("rx",OA().state.radius),A},"addTitleAndBox"),VNt=y((A)=>(A.append("circle").attr("class","end-state-outer").attr("r",OA().state.sizeUnit+OA().state.miniPadding).attr("cx",OA().state.padding+OA().state.sizeUnit+OA().state.miniPadding).attr("cy",OA().state.padding+OA().state.sizeUnit+OA().state.miniPadding),A.append("circle").attr("class","end-state-inner").attr("r",OA().state.sizeUnit).attr("cx",OA().state.padding+OA().state.sizeUnit+2).attr("cy",OA().state.padding+OA().state.sizeUnit+2)),"drawEndState"),jNt=y((A,e)=>{let t=OA().state.forkWidth,r=OA().state.forkHeight;if(e.parentId){let i=t;t=r,r=i}return A.append("rect").style("stroke","black").style("fill","black").attr("width",t).attr("height",r).attr("x",OA().state.padding).attr("y",OA().state.padding)},"drawForkJoinState"),XNt=y((A,e,t,r)=>{let i=0,u=r.append("text");u.style("text-anchor","start"),u.attr("class","noteText");let a=A.replace(/\r\n/g,"<br/>");a=a.replace(/\n/g,"<br/>");let n=a.split(_e.lineBreakRegex),o=1.25*OA().state.noteMargin;for(let s of n){let l=s.trim();if(l.length>0){let g=u.append("tspan");if(g.text(l),o===0){let C=g.node().getBBox();o+=C.height}i+=o,g.attr("x",e+OA().state.noteMargin),g.attr("y",t+i+1.25*OA().state.noteMargin)}}return{textWidth:u.node().getBBox().width,textHeight:i}},"_drawLongText"),$Nt=y((A,e)=>{e.attr("class","state-note");let t=e.append("rect").attr("x",0).attr("y",OA().state.padding),r=e.append("g"),{textWidth:i,textHeight:u}=XNt(A,0,0,r);return t.attr("height",u+2*OA().state.noteMargin),t.attr("width",i+OA().state.noteMargin*2),t},"drawNote"),gue=y(function(A,e){let t=e.id,r={id:t,label:e.id,width:0,height:0},i=A.append("g").attr("id",t).attr("class","stateGroup");if(e.type==="start")_Nt(i);if(e.type==="end")VNt(i);if(e.type==="fork"||e.type==="join")jNt(i,e);if(e.type==="note")$Nt(e.note.text,i);if(e.type==="divider")WNt(i);if(e.type==="default"&&e.descriptions.length===0)qNt(i,e);if(e.type==="default"&&e.descriptions.length>0)zNt(i,e);let u=i.node().getBBox();return r.width=u.width+2*OA().state.padding,r.height=u.height+2*OA().state.padding,r},"drawState"),AGt=y(function(A,e,t){let r=y(function(o){switch(o){case lh.relationType.AGGREGATION:return"aggregation";case lh.relationType.EXTENSION:return"extension";case lh.relationType.COMPOSITION:return"composition";case lh.relationType.DEPENDENCY:return"dependency"}},"getRelationType");e.points=e.points.filter((o)=>!Number.isNaN(o.y));let i=e.points,u=nC().x(function(o){return o.x}).y(function(o){return o.y}).curve(oC),a=A.append("path").attr("d",u(i)).attr("id","edge"+cue).attr("class","transition"),n="";if(OA().state.arrowMarkerAbsolute)n=Jp(!0);if(a.attr("marker-end","url("+n+"#"+r(lh.relationType.DEPENDENCY)+"End)"),t.title!==void 0){let o=A.append("g").attr("class","stateLabel"),{x:s,y:l}=Jt.calcLabelPosition(e.points),g=_e.getRows(t.title),C=0,B=[],E=0,d=0;for(let Q=0;Q<=g.length;Q++){let p=o.append("text").attr("text-anchor","middle").text(g[Q]).attr("x",s).attr("y",l+C),m=p.node().getBBox();if(E=Math.max(E,m.width),d=Math.min(d,m.x),sA.info(m.x,s,l+C),C===0)C=p.node().getBBox().height,sA.info("Title height",C,l);B.push(p)}let I=C*g.length;if(g.length>1){let Q=(g.length-1)*C*0.5;B.forEach((p,m)=>p.attr("y",l+m*C-Q)),I=C*g.length}let h=o.node().getBBox();o.insert("rect",":first-child").attr("class","box").attr("x",s-E/2-OA().state.padding/2).attr("y",l-I/2-OA().state.padding/2-3.5).attr("width",E+OA().state.padding).attr("height",I+OA().state.padding),sA.info(h)}cue++},"drawEdge"),QCA={},eGt=y(function(){},"setConf"),tGt=y(function(A){A.append("defs").append("marker").attr("id","dependencyEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"insertMarkers"),rGt=y(function(A,e,t,r){pg=OA().state;let i=OA().securityLevel,u;if(i==="sandbox")u=Qe("#i"+e);let a=i==="sandbox"?Qe(u.nodes()[0].contentDocument.body):Qe("body"),n=i==="sandbox"?u.nodes()[0].contentDocument:document;sA.debug("Rendering diagram "+A);let o=a.select(`[id='${e}']`);tGt(o);let s=r.db.getRootDoc(),l=o.append("g").attr("id",e+"-root");Cue(s,l,void 0,!1,a,n,r);let g=pg.padding,C=o.node().getBBox(),B=C.width+g*2,E=C.height+g*2,d=B*1.75;Xr(o,E,d,pg.useMaxWidth),o.attr("viewBox",`${C.x-pg.padding} ${C.y-pg.padding} `+B+" "+E)},"draw"),iGt=y((A)=>A?A.length*pg.fontSizeFactor:1,"getLabelWidth"),Cue=y((A,e,t,r,i,u,a)=>{let n=new ji({compound:!0,multigraph:!0}),o,s=!0;for(o=0;o<A.length;o++)if(A[o].stmt==="relation"){s=!1;break}if(t)n.setGraph({rankdir:"LR",multigraph:!0,compound:!0,ranker:"tight-tree",ranksep:s?1:pg.edgeLengthFactor,nodeSep:s?1:50,isMultiGraph:!0});else n.setGraph({rankdir:"TB",multigraph:!0,compound:!0,ranksep:s?1:pg.edgeLengthFactor,nodeSep:s?1:50,ranker:"tight-tree",isMultiGraph:!0});n.setDefaultEdgeLabel(function(){return{}});let l=a.db.getStates(),g=a.db.getRelations(),C=Object.keys(l),B=!0;for(let Q of C){let p=l[Q];if(t)p.parentId=t;let m;if(p.doc){let f=e.append("g").attr("id",p.id).attr("class","stateGroup");if(m=Cue(p.doc,f,p.id,!r,i,u,a),B){f=ZNt(f,p,r);let D=f.node().getBBox();m.width=D.width,m.height=D.height+pg.padding/2,QCA[p.id]={y:pg.compositTitleSize}}else{let D=f.node().getBBox();m.width=D.width,m.height=D.height}}else m=gue(e,p,n);if(p.note){let f={descriptions:[],id:p.id+"-note",note:p.note,type:"note"},D=gue(e,f,n);if(p.note.position==="left of")n.setNode(m.id+"-note",D),n.setNode(m.id,m);else n.setNode(m.id,m),n.setNode(m.id+"-note",D);n.setParent(m.id,m.id+"-group"),n.setParent(m.id+"-note",m.id+"-group")}else n.setNode(m.id,m)}sA.debug("Count=",n.nodeCount(),n);let E=0;g.forEach(function(Q){E++,sA.debug("Setting edge",Q),n.setEdge(Q.id1,Q.id2,{relation:Q,width:iGt(Q.title),height:pg.labelHeight*_e.getRows(Q.title).length,labelpos:"c"},"id"+E)}),gk(n),sA.debug("Graph after layout",n.nodes());let d=e.node();n.nodes().forEach(function(Q){if(Q!==void 0&&n.node(Q)!==void 0)sA.warn("Node "+Q+": "+JSON.stringify(n.node(Q))),i.select("#"+d.id+" #"+Q).attr("transform","translate("+(n.node(Q).x-n.node(Q).width/2)+","+(n.node(Q).y+(QCA[Q]?QCA[Q].y:0)-n.node(Q).height/2)+" )"),i.select("#"+d.id+" #"+Q).attr("data-x-shift",n.node(Q).x-n.node(Q).width/2),u.querySelectorAll("#"+d.id+" #"+Q+" .divider").forEach((m)=>{let f=m.parentElement,D=0,w=0;if(f){if(f.parentElement)D=f.parentElement.getBBox().width;if(w=parseInt(f.getAttribute("data-x-shift"),10),Number.isNaN(w))w=0}m.setAttribute("x1",0-w+8),m.setAttribute("x2",D-w-8)});else sA.debug("No Node "+Q+": "+JSON.stringify(n.node(Q)))});let I=d.getBBox();n.edges().forEach(function(Q){if(Q!==void 0&&n.edge(Q)!==void 0)sA.debug("Edge "+Q.v+" -> "+Q.w+": "+JSON.stringify(n.edge(Q))),AGt(e,n.edge(Q),n.edge(Q).relation)}),I=d.getBBox();let h={id:t?t:"root",label:t?t:"root",width:0,height:0};return h.width=I.width+2*pg.padding,h.height=I.height+2*pg.padding,sA.debug("Doc rendered",h,n),h},"renderDoc"),uGt={setConf:eGt,draw:rGt},Bue={parser:FO,get db(){return new lh(1)},renderer:uGt,styles:xO,init:y((A)=>{if(!A.state)A.state={};A.state.arrowMarkerAbsolute=A.arrowMarkerAbsolute},"init")}});var due;var Iue=_(()=>{hCA();gg();hl();El();lg();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt();due={parser:FO,get db(){return new lh(2)},renderer:oue,styles:xO,init:y((A)=>{if(!A.state)A.state={};A.state.arrowMarkerAbsolute=A.arrowMarkerAbsolute},"init")}});function wue(A){let e=OA().journey,t=e.maxLabelWidth;SO=0;let r=60;Object.keys(gh).forEach((i)=>{let u=gh[i].color,a={cx:20,cy:r,r:7,fill:u,stroke:"#000",pos:gh[i].position};a7.drawCircle(A,a);let n=A.append("text").attr("visibility","hidden").text(i),o=n.node().getBoundingClientRect().width;n.remove();let s=[];if(o<=t)s=[i];else{let l=i.split(" "),g="";if(n=A.append("text").attr("visibility","hidden"),l.forEach((C)=>{let B=g?`${g} ${C}`:C;if(n.text(B),n.node().getBoundingClientRect().width>t){if(g)s.push(g);if(g=C,n.text(C),n.node().getBoundingClientRect().width>t){let d="";for(let I of C)if(d+=I,n.text(d+"-"),n.node().getBoundingClientRect().width>t)s.push(d.slice(0,-1)+"-"),d=I;g=d}}else g=B}),g)s.push(g);n.remove()}s.forEach((l,g)=>{let C={x:40,y:r+7+g*20,fill:"#666",text:l,textMargin:e.boxTextMargin??5},E=a7.drawText(A,C).node().getBoundingClientRect().width;if(E>SO&&E>e.leftMargin-E)SO=E}),r+=Math.max(20,s.length*20)})}var fCA,aGt,h6="",DCA,i7,u7,nGt,oGt,sGt,lGt,gGt,cGt,CGt,hue,BGt,Que,EGt,dGt,yCA,IGt,mue,Due,hGt,QGt,mCA=-1,pGt,fGt,yue,mGt,a7,DGt,gh,SO=0,UC,i1=0,yGt,Qc,pCA,pue,wGt,fue,bue;var vue=_(()=>{kE();lg();rr();ir();Nt();Pr();Pr();fCA=function(){var A=y(function(g,C,B,E){for(B=B||{},E=g.length;E--;B[g[E]]=C);return B},"o"),e=[6,8,10,11,12,14,16,17,18],t=[1,9],r=[1,10],i=[1,11],u=[1,12],a=[1,13],n=[1,14],o={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,journey:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,title:11,acc_title:12,acc_title_value:13,acc_descr:14,acc_descr_value:15,acc_descr_multiline_value:16,section:17,taskName:18,taskData:19,$accept:0,$end:1},terminals_:{2:"error",4:"journey",6:"EOF",8:"SPACE",10:"NEWLINE",11:"title",12:"acc_title",13:"acc_title_value",14:"acc_descr",15:"acc_descr_value",16:"acc_descr_multiline_value",17:"section",18:"taskName",19:"taskData"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,2]],performAction:y(function(C,B,E,d,I,h,Q){var p=h.length-1;switch(I){case 1:return h[p-1];case 2:this.$=[];break;case 3:h[p-1].push(h[p]),this.$=h[p-1];break;case 4:case 5:this.$=h[p];break;case 6:case 7:this.$=[];break;case 8:d.setDiagramTitle(h[p].substr(6)),this.$=h[p].substr(6);break;case 9:this.$=h[p].trim(),d.setAccTitle(this.$);break;case 10:case 11:this.$=h[p].trim(),d.setAccDescription(this.$);break;case 12:d.addSection(h[p].substr(8)),this.$=h[p].substr(8);break;case 13:d.addTask(h[p-1],h[p]),this.$="task";break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},A(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:t,12:r,14:i,16:u,17:a,18:n},A(e,[2,7],{1:[2,1]}),A(e,[2,3]),{9:15,11:t,12:r,14:i,16:u,17:a,18:n},A(e,[2,5]),A(e,[2,6]),A(e,[2,8]),{13:[1,16]},{15:[1,17]},A(e,[2,11]),A(e,[2,12]),{19:[1,18]},A(e,[2,4]),A(e,[2,9]),A(e,[2,10]),A(e,[2,13])],defaultActions:{},parseError:y(function(C,B){if(B.recoverable)this.trace(C);else{var E=Error(C);throw E.hash=B,E}},"parseError"),parse:y(function(C){var B=this,E=[0],d=[],I=[null],h=[],Q=this.table,p="",m=0,f=0,D=0,w=2,b=1,k=h.slice.call(arguments,1),v=Object.create(this.lexer),S={yy:{}};for(var x in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,x))S.yy[x]=this.yy[x];if(v.setInput(C,S.yy),S.yy.lexer=v,S.yy.parser=this,typeof v.yylloc>"u")v.yylloc={};var F=v.yylloc;h.push(F);var T=v.options&&v.options.ranges;if(typeof S.yy.parseError==="function")this.parseError=S.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function R(tA){E.length=E.length-2*tA,I.length=I.length-tA,h.length=h.length-tA}y(R,"popStack");function L(){var tA=d.pop()||v.lex()||b;if(typeof tA!=="number"){if(tA instanceof Array)d=tA,tA=d.pop();tA=B.symbols_[tA]||tA}return tA}y(L,"lex");var M,U,Y,H,J,K,O={},P,z,AA,W;while(!0){if(Y=E[E.length-1],this.defaultActions[Y])H=this.defaultActions[Y];else{if(M===null||typeof M>"u")M=L();H=Q[Y]&&Q[Y][M]}if(typeof H>"u"||!H.length||!H[0]){var CA="";W=[];for(P in Q[Y])if(this.terminals_[P]&&P>w)W.push("'"+this.terminals_[P]+"'");if(v.showPosition)CA="Parse error on line "+(m+1)+`:
`+v.showPosition()+`
Expecting `+W.join(", ")+", got '"+(this.terminals_[M]||M)+"'";else CA="Parse error on line "+(m+1)+": Unexpected "+(M==b?"end of input":"'"+(this.terminals_[M]||M)+"'");this.parseError(CA,{text:v.match,token:this.terminals_[M]||M,line:v.yylineno,loc:F,expected:W})}if(H[0]instanceof Array&&H.length>1)throw Error("Parse Error: multiple actions possible at state: "+Y+", token: "+M);switch(H[0]){case 1:if(E.push(M),I.push(v.yytext),h.push(v.yylloc),E.push(H[1]),M=null,!U){if(f=v.yyleng,p=v.yytext,m=v.yylineno,F=v.yylloc,D>0)D--}else M=U,U=null;break;case 2:if(z=this.productions_[H[1]][1],O.$=I[I.length-z],O._$={first_line:h[h.length-(z||1)].first_line,last_line:h[h.length-1].last_line,first_column:h[h.length-(z||1)].first_column,last_column:h[h.length-1].last_column},T)O._$.range=[h[h.length-(z||1)].range[0],h[h.length-1].range[1]];if(K=this.performAction.apply(O,[p,f,m,S.yy,H[1],I,h].concat(k)),typeof K<"u")return K;if(z)E=E.slice(0,-1*z*2),I=I.slice(0,-1*z),h=h.slice(0,-1*z);E.push(this.productions_[H[1]][0]),I.push(O.$),h.push(O._$),AA=Q[E[E.length-2]][E[E.length-1]],E.push(AA);break;case 3:return!0}}return!0},"parse")},s=function(){var g={EOF:1,parseError:y(function(B,E){if(this.yy.parser)this.yy.parser.parseError(B,E);else throw Error(B)},"parseError"),setInput:y(function(C,B){if(this.yy=B||this.yy||{},this._input=C,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var C=this._input[0];this.yytext+=C,this.yyleng++,this.offset++,this.match+=C,this.matched+=C;var B=C.match(/(?:\r\n?|\n).*/g);if(B)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),C},"input"),unput:y(function(C){var B=C.length,E=C.split(/(?:\r\n?|\n)/g);this._input=C+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-B),this.offset-=B;var d=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),E.length-1)this.yylineno-=E.length-1;var I=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:E?(E.length===d.length?this.yylloc.first_column:0)+d[d.length-E.length].length-E[0].length:this.yylloc.first_column-B},this.options.ranges)this.yylloc.range=[I[0],I[0]+this.yyleng-B];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(C){this.unput(this.match.slice(C))},"less"),pastInput:y(function(){var C=this.matched.substr(0,this.matched.length-this.match.length);return(C.length>20?"...":"")+C.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var C=this.match;if(C.length<20)C+=this._input.substr(0,20-C.length);return(C.substr(0,20)+(C.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var C=this.pastInput(),B=Array(C.length+1).join("-");return C+this.upcomingInput()+`
`+B+"^"},"showPosition"),test_match:y(function(C,B){var E,d,I;if(this.options.backtrack_lexer){if(I={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)I.yylloc.range=this.yylloc.range.slice(0)}if(d=C[0].match(/(?:\r\n?|\n).*/g),d)this.yylineno+=d.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+C[0].length},this.yytext+=C[0],this.match+=C[0],this.matches=C,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(C[0].length),this.matched+=C[0],E=this.performAction.call(this,this.yy,this,B,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(E)return E;else if(this._backtrack){for(var h in I)this[h]=I[h];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var C,B,E,d;if(!this._more)this.yytext="",this.match="";var I=this._currentRules();for(var h=0;h<I.length;h++)if(E=this._input.match(this.rules[I[h]]),E&&(!B||E[0].length>B[0].length)){if(B=E,d=h,this.options.backtrack_lexer)if(C=this.test_match(E,I[h]),C!==!1)return C;else if(this._backtrack){B=!1;continue}else return!1;else if(!this.options.flex)break}if(B){if(C=this.test_match(B,I[d]),C!==!1)return C;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var B=this.next();if(B)return B;else return this.lex()},"lex"),begin:y(function(B){this.conditionStack.push(B)},"begin"),popState:y(function(){var B=this.conditionStack.length-1;if(B>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(B){if(B=this.conditionStack.length-1-Math.abs(B||0),B>=0)return this.conditionStack[B];else return"INITIAL"},"topState"),pushState:y(function(B){this.begin(B)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(B,E,d,I){var h=I;switch(d){case 0:break;case 1:break;case 2:return 10;case 3:break;case 4:break;case 5:return 4;case 6:return 11;case 7:return this.begin("acc_title"),12;break;case 8:return this.popState(),"acc_title_value";break;case 9:return this.begin("acc_descr"),14;break;case 10:return this.popState(),"acc_descr_value";break;case 11:this.begin("acc_descr_multiline");break;case 12:this.popState();break;case 13:return"acc_descr_multiline_value";case 14:return 17;case 15:return 18;case 16:return 19;case 17:return":";case 18:return 6;case 19:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,9,11,14,15,16,17,18,19],inclusive:!0}}};return g}();o.lexer=s;function l(){this.yy={}}return y(l,"Parser"),l.prototype=o,o.Parser=l,new l}();fCA.parser=fCA;aGt=fCA,DCA=[],i7=[],u7=[],nGt=y(function(){DCA.length=0,i7.length=0,h6="",u7.length=0,cr()},"clear"),oGt=y(function(A){h6=A,DCA.push(A)},"addSection"),sGt=y(function(){return DCA},"getSections"),lGt=y(function(){let A=hue(),e=100,t=0;while(!A&&t<e)A=hue(),t++;return i7.push(...u7),i7},"getTasks"),gGt=y(function(){let A=[];return i7.forEach((t)=>{if(t.people)A.push(...t.people)}),[...new Set(A)].sort()},"updateActors"),cGt=y(function(A,e){let t=e.substr(1).split(":"),r=0,i=[];if(t.length===1)r=Number(t[0]),i=[];else r=Number(t[0]),i=t[1].split(",");let u=i.map((n)=>n.trim()),a={section:h6,type:h6,people:u,task:A,score:r};u7.push(a)},"addTask"),CGt=y(function(A){let e={section:h6,type:h6,description:A,task:A,classes:[]};i7.push(e)},"addTaskOrg"),hue=y(function(){let A=y(function(t){return u7[t].processed},"compileTask"),e=!0;for(let[t,r]of u7.entries())A(t),e=e&&r.processed;return e},"compileTasks"),BGt=y(function(){return gGt()},"getActors"),Que={getConfig:y(()=>OA().journey,"getConfig"),clear:nGt,setDiagramTitle:Tr,getDiagramTitle:Sr,setAccTitle:Dr,getAccTitle:kr,setAccDescription:Fr,getAccDescription:xr,addSection:oGt,getSections:sGt,getTasks:lGt,addTask:cGt,addTaskOrg:CGt,getActors:BGt},EGt=y((A)=>`.label {
font-family: ${A.fontFamily};
color: ${A.textColor};
}
.mouth {
stroke: #666;
}
line {
stroke: ${A.textColor}
}
.legend {
fill: ${A.textColor};
font-family: ${A.fontFamily};
}
.label text {
fill: #333;
}
.label {
color: ${A.textColor}
}
.face {
${A.faceColor?`fill: ${A.faceColor}`:"fill: #FFF8DC"};
stroke: #999;
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${A.mainBkg};
stroke: ${A.nodeBorder};
stroke-width: 1px;
}
.node .label {
text-align: center;
}
.node.clickable {
cursor: pointer;
}
.arrowheadPath {
fill: ${A.arrowheadColor};
}
.edgePath .path {
stroke: ${A.lineColor};
stroke-width: 1.5px;
}
.flowchart-link {
stroke: ${A.lineColor};
fill: none;
}
.edgeLabel {
background-color: ${A.edgeLabelBackground};
rect {
opacity: 0.5;
}
text-align: center;
}
.cluster rect {
}
.cluster text {
fill: ${A.titleColor};
}
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: ${A.fontFamily};
font-size: 12px;
background: ${A.tertiaryColor};
border: 1px solid ${A.border2};
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
.task-type-0, .section-type-0 {
${A.fillType0?`fill: ${A.fillType0}`:""};
}
.task-type-1, .section-type-1 {
${A.fillType0?`fill: ${A.fillType1}`:""};
}
.task-type-2, .section-type-2 {
${A.fillType0?`fill: ${A.fillType2}`:""};
}
.task-type-3, .section-type-3 {
${A.fillType0?`fill: ${A.fillType3}`:""};
}
.task-type-4, .section-type-4 {
${A.fillType0?`fill: ${A.fillType4}`:""};
}
.task-type-5, .section-type-5 {
${A.fillType0?`fill: ${A.fillType5}`:""};
}
.task-type-6, .section-type-6 {
${A.fillType0?`fill: ${A.fillType6}`:""};
}
.task-type-7, .section-type-7 {
${A.fillType0?`fill: ${A.fillType7}`:""};
}
.actor-0 {
${A.actor0?`fill: ${A.actor0}`:""};
}
.actor-1 {
${A.actor1?`fill: ${A.actor1}`:""};
}
.actor-2 {
${A.actor2?`fill: ${A.actor2}`:""};
}
.actor-3 {
${A.actor3?`fill: ${A.actor3}`:""};
}
.actor-4 {
${A.actor4?`fill: ${A.actor4}`:""};
}
.actor-5 {
${A.actor5?`fill: ${A.actor5}`:""};
}
${vE()}
`,"getStyles"),dGt=EGt,yCA=y(function(A,e){return jf(A,e)},"drawRect"),IGt=y(function(A,e){let r=A.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=A.append("g");i.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function u(o){let s=aC().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);o.append("path").attr("class","mouth").attr("d",s).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}y(u,"smile");function a(o){let s=aC().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);o.append("path").attr("class","mouth").attr("d",s).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}y(a,"sad");function n(o){o.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}if(y(n,"ambivalent"),e.score>3)u(i);else if(e.score<3)a(i);else n(i);return r},"drawFace"),mue=y(function(A,e){let t=A.append("circle");if(t.attr("cx",e.cx),t.attr("cy",e.cy),t.attr("class","actor-"+e.pos),t.attr("fill",e.fill),t.attr("stroke",e.stroke),t.attr("r",e.r),t.class!==void 0)t.attr("class",t.class);if(e.title!==void 0)t.append("title").text(e.title);return t},"drawCircle"),Due=y(function(A,e){return EOA(A,e)},"drawText"),hGt=y(function(A,e){function t(i,u,a,n,o){return i+","+u+" "+(i+a)+","+u+" "+(i+a)+","+(u+n-o)+" "+(i+a-o*1.2)+","+(u+n)+" "+i+","+(u+n)}y(t,"genPoints");let r=A.append("polygon");r.attr("points",t(e.x,e.y,50,20,7)),r.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+0.5*e.labelMargin,Due(A,e)},"drawLabel"),QGt=y(function(A,e,t){let r=A.append("g"),i=K0();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=t.width*e.taskCount+t.diagramMarginX*(e.taskCount-1),i.height=t.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,yCA(r,i),yue(t)(e.text,r,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},t,e.colour)},"drawSection"),pGt=y(function(A,e,t,r){let i=e.x+t.width/2,u=A.append("g");mCA++;let a=450;u.append("line").attr("id",r+"-task"+mCA).attr("x1",i).attr("y1",e.y).attr("x2",i).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),IGt(u,{cx:i,cy:300+(5-e.score)*30,score:e.score});let n=K0();n.x=e.x,n.y=e.y,n.fill=e.fill,n.width=t.width,n.height=t.height,n.class="task task-type-"+e.num,n.rx=3,n.ry=3,yCA(u,n);let o=e.x+14;e.people.forEach((s)=>{let l=e.actors[s].color,g={cx:o,cy:e.y,r:7,fill:l,stroke:"#000",title:s,pos:e.actors[s].position};mue(u,g),o+=10}),yue(t)(e.task,u,n.x,n.y,n.width,n.height,{class:"task"},t,e.colour)},"drawTask"),fGt=y(function(A,e){cY(A,e)},"drawBackgroundRect"),yue=function(){function A(i,u,a,n,o,s,l,g){let C=u.append("text").attr("x",a+o/2).attr("y",n+s/2+5).style("font-color",g).style("text-anchor","middle").text(i);r(C,l)}y(A,"byText");function e(i,u,a,n,o,s,l,g,C){let{taskFontSize:B,taskFontFamily:E}=g,d=i.split(/<br\s*\/?>/gi);for(let I=0;I<d.length;I++){let h=I*B-B*(d.length-1)/2,Q=u.append("text").attr("x",a+o/2).attr("y",n).attr("fill",C).style("text-anchor","middle").style("font-size",B).style("font-family",E);Q.append("tspan").attr("x",a+o/2).attr("dy",h).text(d[I]),Q.attr("y",n+s/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),r(Q,l)}}y(e,"byTspan");function t(i,u,a,n,o,s,l,g){let C=u.append("switch"),E=C.append("foreignObject").attr("x",a).attr("y",n).attr("width",o).attr("height",s).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");E.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,C,a,n,o,s,l,g),r(E,l)}y(t,"byFo");function r(i,u){for(let a in u)if(a in u)i.attr(a,u[a])}return y(r,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?t:i.textPlacement==="old"?A:e}}(),mGt=y(function(A,e){mCA=-1,A.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")},"initGraphics"),a7={drawRect:yCA,drawCircle:mue,drawSection:QGt,drawText:Due,drawLabel:hGt,drawTask:pGt,drawBackgroundRect:fGt,initGraphics:mGt},DGt=y(function(A){Object.keys(A).forEach(function(t){UC[t]=A[t]})},"setConf"),gh={};y(wue,"drawActorLegend");UC=OA().journey,yGt=y(function(A,e,t,r){let i=OA(),u=i.journey.titleColor,a=i.journey.titleFontSize,n=i.journey.titleFontFamily,o=i.securityLevel,s;if(o==="sandbox")s=Qe("#i"+e);let l=o==="sandbox"?Qe(s.nodes()[0].contentDocument.body):Qe("body");Qc.init();let g=l.select("#"+e);a7.initGraphics(g,e);let C=r.db.getTasks(),B=r.db.getDiagramTitle(),E=r.db.getActors();for(let m in gh)delete gh[m];let d=0;E.forEach((m)=>{gh[m]={color:UC.actorColours[d%UC.actorColours.length],position:d},d++}),wue(g),i1=UC.leftMargin+SO,Qc.insert(0,0,i1,Object.keys(gh).length*50),wGt(g,C,0,e);let I=Qc.getBounds();if(B)g.append("text").text(B).attr("x",i1).attr("font-size",a).attr("font-weight","bold").attr("y",25).attr("fill",u).attr("font-family",n);let h=I.stopy-I.starty+2*UC.diagramMarginY,Q=i1+I.stopx+2*UC.diagramMarginX;Xr(g,h,Q,UC.useMaxWidth),g.append("line").attr("x1",i1).attr("y1",UC.height*4).attr("x2",Q-i1-4).attr("y2",UC.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#"+e+"-arrowhead)");let p=B?70:0;g.attr("viewBox",`${I.startx} -25 ${Q} ${h+p}`),g.attr("preserveAspectRatio","xMinYMin meet"),g.attr("height",h+p+25)},"draw"),Qc={data:{startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},verticalPos:0,sequenceItems:[],init:y(function(){this.sequenceItems=[],this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0},this.verticalPos=0},"init"),updateVal:y(function(A,e,t,r){if(A[e]===void 0)A[e]=t;else A[e]=r(t,A[e])},"updateVal"),updateBounds:y(function(A,e,t,r){let i=OA().journey,u=this,a=0;function n(o){return y(function(l){a++;let g=u.sequenceItems.length-a+1;if(u.updateVal(l,"starty",e-g*i.boxMargin,Math.min),u.updateVal(l,"stopy",r+g*i.boxMargin,Math.max),u.updateVal(Qc.data,"startx",A-g*i.boxMargin,Math.min),u.updateVal(Qc.data,"stopx",t+g*i.boxMargin,Math.max),o!=="activation")u.updateVal(l,"startx",A-g*i.boxMargin,Math.min),u.updateVal(l,"stopx",t+g*i.boxMargin,Math.max),u.updateVal(Qc.data,"starty",e-g*i.boxMargin,Math.min),u.updateVal(Qc.data,"stopy",r+g*i.boxMargin,Math.max)},"updateItemBounds")}y(n,"updateFn"),this.sequenceItems.forEach(n())},"updateBounds"),insert:y(function(A,e,t,r){let i=Math.min(A,t),u=Math.max(A,t),a=Math.min(e,r),n=Math.max(e,r);this.updateVal(Qc.data,"startx",i,Math.min),this.updateVal(Qc.data,"starty",a,Math.min),this.updateVal(Qc.data,"stopx",u,Math.max),this.updateVal(Qc.data,"stopy",n,Math.max),this.updateBounds(i,a,u,n)},"insert"),bumpVerticalPos:y(function(A){this.verticalPos=this.verticalPos+A,this.data.stopy=this.verticalPos},"bumpVerticalPos"),getVerticalPos:y(function(){return this.verticalPos},"getVerticalPos"),getBounds:y(function(){return this.data},"getBounds")},pCA=UC.sectionFills,pue=UC.sectionColours,wGt=y(function(A,e,t,r){let i=OA().journey,u="",a=i.height*2+i.diagramMarginY,n=t+a,o=0,s="#CCC",l="black",g=0;for(let[C,B]of e.entries()){if(u!==B.section){s=pCA[o%pCA.length],g=o%pCA.length,l=pue[o%pue.length];let d=0,I=B.section;for(let Q=C;Q<e.length;Q++)if(e[Q].section==I)d=d+1;else break;let h={x:C*i.taskMargin+C*i.width+i1,y:50,text:B.section,fill:s,num:g,colour:l,taskCount:d};a7.drawSection(A,h,i),u=B.section,o++}let E=B.people.reduce((d,I)=>{if(gh[I])d[I]=gh[I];return d},{});B.x=C*i.taskMargin+C*i.width+i1,B.y=n,B.width=i.diagramMarginX,B.height=i.diagramMarginY,B.colour=l,B.fill=s,B.num=g,B.actors=E,a7.drawTask(A,B,i,r),Qc.insert(B.x,B.y,B.x+B.width+i.taskMargin,450)}},"drawTasks"),fue={setConf:DGt,draw:yGt},bue={parser:aGt,db:Que,renderer:fue,styles:dGt,init:y((A)=>{fue.setConf(A.journey),Que.clear()},"init")}});function xCA(A,e){A.each(function(){var t=Qe(this),r=t.text().split(/(\s+|<br>)/).reverse(),i,u=[],a=1.1,n=t.attr("y"),o=parseFloat(t.attr("dy")),s=t.text(null).append("tspan").attr("x",0).attr("y",n).attr("dy",o+"em");for(let l=0;l<r.length;l++)if(i=r[r.length-1-l],u.push(i),s.text(u.join(" ").trim()),s.node().getComputedTextLength()>e||i==="<br>"){if(u.pop(),s.text(u.join(" ").trim()),i==="<br>")u=[""];else u=[i];s=t.append("tspan").attr("x",0).attr("y",n).attr("dy",a+"em").text(i)}})}var wCA,bGt,Rue,Q6="",Nue=0,vCA="LR",kCA,LO,p6,Gue,Uue,Mue,Tue,Yue,Hue,Kue,Jue,Oue,Pue,kue,vGt,_ue=0,RO,kGt,FGt,Wue,xGt,SGt,bCA=-1,LGt,RGt,NGt,FCA,que,GGt,UGt,MGt,TGt,kl,YGt,Fue,HGt,KGt,NO=200,ch=5,JGt,SCA,OGt,zue=10,PGt=0,xue=20,Zue=20,Sue=30,Vue=50,_Gt,Lue,WGt,qGt,zGt,ZGt,VGt,jGt,XGt,jue;var Xue=_(()=>{cn();ai();rr();ir();Nt();Pr();Pr();vn();wCA=function(){var A=y(function(C,B,E,d){for(E=E||{},d=C.length;d--;E[C[d]]=B);return E},"o"),e=[6,11,13,14,15,17,19,20,23,24],t=[1,12],r=[1,13],i=[1,14],u=[1,15],a=[1,16],n=[1,19],o=[1,20],s={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,timeline_header:4,document:5,EOF:6,timeline:7,timeline_lr:8,timeline_td:9,line:10,SPACE:11,statement:12,NEWLINE:13,title:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,period_statement:21,event_statement:22,period:23,event:24,$accept:0,$end:1},terminals_:{2:"error",6:"EOF",7:"timeline",8:"timeline_lr",9:"timeline_td",11:"SPACE",13:"NEWLINE",14:"title",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",23:"period",24:"event"},productions_:[0,[3,3],[4,1],[4,1],[4,1],[5,0],[5,2],[10,2],[10,1],[10,1],[10,1],[12,1],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[21,1],[22,1]],performAction:y(function(B,E,d,I,h,Q,p){var m=Q.length-1;switch(h){case 1:return Q[m-1];case 3:I.setDirection("LR");break;case 4:I.setDirection("TD");break;case 5:this.$=[];break;case 6:Q[m-1].push(Q[m]),this.$=Q[m-1];break;case 7:case 8:this.$=Q[m];break;case 9:case 10:this.$=[];break;case 11:I.getCommonDb().setDiagramTitle(Q[m].substr(6)),this.$=Q[m].substr(6);break;case 12:this.$=Q[m].trim(),I.getCommonDb().setAccTitle(this.$);break;case 13:case 14:this.$=Q[m].trim(),I.getCommonDb().setAccDescription(this.$);break;case 15:I.addSection(Q[m].substr(8)),this.$=Q[m].substr(8);break;case 18:I.addTask(Q[m],0,""),this.$=Q[m];break;case 19:I.addEvent(Q[m].substr(2)),this.$=Q[m];break}},"anonymous"),table:[{3:1,4:2,7:[1,3],8:[1,4],9:[1,5]},{1:[3]},A(e,[2,5],{5:6}),A(e,[2,2]),A(e,[2,3]),A(e,[2,4]),{6:[1,7],10:8,11:[1,9],12:10,13:[1,11],14:t,15:r,17:i,19:u,20:a,21:17,22:18,23:n,24:o},A(e,[2,10],{1:[2,1]}),A(e,[2,6]),{12:21,14:t,15:r,17:i,19:u,20:a,21:17,22:18,23:n,24:o},A(e,[2,8]),A(e,[2,9]),A(e,[2,11]),{16:[1,22]},{18:[1,23]},A(e,[2,14]),A(e,[2,15]),A(e,[2,16]),A(e,[2,17]),A(e,[2,18]),A(e,[2,19]),A(e,[2,7]),A(e,[2,12]),A(e,[2,13])],defaultActions:{},parseError:y(function(B,E){if(E.recoverable)this.trace(B);else{var d=Error(B);throw d.hash=E,d}},"parseError"),parse:y(function(B){var E=this,d=[0],I=[],h=[null],Q=[],p=this.table,m="",f=0,D=0,w=0,b=2,k=1,v=Q.slice.call(arguments,1),S=Object.create(this.lexer),x={yy:{}};for(var F in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,F))x.yy[F]=this.yy[F];if(S.setInput(B,x.yy),x.yy.lexer=S,x.yy.parser=this,typeof S.yylloc>"u")S.yylloc={};var T=S.yylloc;Q.push(T);var R=S.options&&S.options.ranges;if(typeof x.yy.parseError==="function")this.parseError=x.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function L(lA){d.length=d.length-2*lA,h.length=h.length-lA,Q.length=Q.length-lA}y(L,"popStack");function M(){var lA=I.pop()||S.lex()||k;if(typeof lA!=="number"){if(lA instanceof Array)I=lA,lA=I.pop();lA=E.symbols_[lA]||lA}return lA}y(M,"lex");var U,Y,H,J,K,O,P={},z,AA,W,CA;while(!0){if(H=d[d.length-1],this.defaultActions[H])J=this.defaultActions[H];else{if(U===null||typeof U>"u")U=M();J=p[H]&&p[H][U]}if(typeof J>"u"||!J.length||!J[0]){var tA="";CA=[];for(z in p[H])if(this.terminals_[z]&&z>b)CA.push("'"+this.terminals_[z]+"'");if(S.showPosition)tA="Parse error on line "+(f+1)+`:
`+S.showPosition()+`
Expecting `+CA.join(", ")+", got '"+(this.terminals_[U]||U)+"'";else tA="Parse error on line "+(f+1)+": Unexpected "+(U==k?"end of input":"'"+(this.terminals_[U]||U)+"'");this.parseError(tA,{text:S.match,token:this.terminals_[U]||U,line:S.yylineno,loc:T,expected:CA})}if(J[0]instanceof Array&&J.length>1)throw Error("Parse Error: multiple actions possible at state: "+H+", token: "+U);switch(J[0]){case 1:if(d.push(U),h.push(S.yytext),Q.push(S.yylloc),d.push(J[1]),U=null,!Y){if(D=S.yyleng,m=S.yytext,f=S.yylineno,T=S.yylloc,w>0)w--}else U=Y,Y=null;break;case 2:if(AA=this.productions_[J[1]][1],P.$=h[h.length-AA],P._$={first_line:Q[Q.length-(AA||1)].first_line,last_line:Q[Q.length-1].last_line,first_column:Q[Q.length-(AA||1)].first_column,last_column:Q[Q.length-1].last_column},R)P._$.range=[Q[Q.length-(AA||1)].range[0],Q[Q.length-1].range[1]];if(O=this.performAction.apply(P,[m,D,f,x.yy,J[1],h,Q].concat(v)),typeof O<"u")return O;if(AA)d=d.slice(0,-1*AA*2),h=h.slice(0,-1*AA),Q=Q.slice(0,-1*AA);d.push(this.productions_[J[1]][0]),h.push(P.$),Q.push(P._$),W=p[d[d.length-2]][d[d.length-1]],d.push(W);break;case 3:return!0}}return!0},"parse")},l=function(){var C={EOF:1,parseError:y(function(E,d){if(this.yy.parser)this.yy.parser.parseError(E,d);else throw Error(E)},"parseError"),setInput:y(function(B,E){if(this.yy=E||this.yy||{},this._input=B,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var B=this._input[0];this.yytext+=B,this.yyleng++,this.offset++,this.match+=B,this.matched+=B;var E=B.match(/(?:\r\n?|\n).*/g);if(E)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),B},"input"),unput:y(function(B){var E=B.length,d=B.split(/(?:\r\n?|\n)/g);this._input=B+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-E),this.offset-=E;var I=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),d.length-1)this.yylineno-=d.length-1;var h=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:d?(d.length===I.length?this.yylloc.first_column:0)+I[I.length-d.length].length-d[0].length:this.yylloc.first_column-E},this.options.ranges)this.yylloc.range=[h[0],h[0]+this.yyleng-E];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(B){this.unput(this.match.slice(B))},"less"),pastInput:y(function(){var B=this.matched.substr(0,this.matched.length-this.match.length);return(B.length>20?"...":"")+B.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var B=this.match;if(B.length<20)B+=this._input.substr(0,20-B.length);return(B.substr(0,20)+(B.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var B=this.pastInput(),E=Array(B.length+1).join("-");return B+this.upcomingInput()+`
`+E+"^"},"showPosition"),test_match:y(function(B,E){var d,I,h;if(this.options.backtrack_lexer){if(h={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)h.yylloc.range=this.yylloc.range.slice(0)}if(I=B[0].match(/(?:\r\n?|\n).*/g),I)this.yylineno+=I.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:I?I[I.length-1].length-I[I.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+B[0].length},this.yytext+=B[0],this.match+=B[0],this.matches=B,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(B[0].length),this.matched+=B[0],d=this.performAction.call(this,this.yy,this,E,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(d)return d;else if(this._backtrack){for(var Q in h)this[Q]=h[Q];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var B,E,d,I;if(!this._more)this.yytext="",this.match="";var h=this._currentRules();for(var Q=0;Q<h.length;Q++)if(d=this._input.match(this.rules[h[Q]]),d&&(!E||d[0].length>E[0].length)){if(E=d,I=Q,this.options.backtrack_lexer)if(B=this.test_match(d,h[Q]),B!==!1)return B;else if(this._backtrack){E=!1;continue}else return!1;else if(!this.options.flex)break}if(E){if(B=this.test_match(E,h[I]),B!==!1)return B;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var E=this.next();if(E)return E;else return this.lex()},"lex"),begin:y(function(E){this.conditionStack.push(E)},"begin"),popState:y(function(){var E=this.conditionStack.length-1;if(E>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(E){if(E=this.conditionStack.length-1-Math.abs(E||0),E>=0)return this.conditionStack[E];else return"INITIAL"},"topState"),pushState:y(function(E){this.begin(E)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(E,d,I,h){var Q=h;switch(I){case 0:break;case 1:break;case 2:return 13;case 3:break;case 4:break;case 5:return 8;case 6:return 9;case 7:return 7;case 8:return 14;case 9:return this.begin("acc_title"),15;break;case 10:return this.popState(),"acc_title_value";break;case 11:return this.begin("acc_descr"),17;break;case 12:return this.popState(),"acc_descr_value";break;case 13:this.begin("acc_descr_multiline");break;case 14:this.popState();break;case 15:return"acc_descr_multiline_value";case 16:return 20;case 17:return 24;case 18:return 23;case 19:return 6;case 20:return"INVALID"}},"anonymous"),rules:[/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:timeline[ \t]+LR\b)/i,/^(?:timeline[ \t]+TD\b)/i,/^(?:timeline\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^:\n]+)/i,/^(?::\s(?:[^:\n]|:(?!\s))+)/i,/^(?:[^#:\n]+)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[14,15],inclusive:!1},acc_descr:{rules:[12],inclusive:!1},acc_title:{rules:[10],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,13,16,17,18,19,20],inclusive:!0}}};return C}();s.lexer=l;function g(){this.yy={}}return y(g,"Parser"),g.prototype=s,s.Parser=g,new g}();wCA.parser=wCA;bGt=wCA,Rue={};Vh(Rue,{addEvent:()=>Oue,addSection:()=>Yue,addTask:()=>Jue,addTaskOrg:()=>Pue,clear:()=>Uue,default:()=>vGt,getCommonDb:()=>Gue,getDirection:()=>Tue,getSections:()=>Hue,getTasks:()=>Kue,setDirection:()=>Mue});kCA=[],LO=[],p6=[],Gue=y(()=>YR,"getCommonDb"),Uue=y(function(){kCA.length=0,LO.length=0,Q6="",p6.length=0,vCA="LR",cr()},"clear"),Mue=y(function(A){vCA=A},"setDirection"),Tue=y(function(){return vCA},"getDirection"),Yue=y(function(A){Q6=A,kCA.push(A)},"addSection"),Hue=y(function(){return kCA},"getSections"),Kue=y(function(){let A=kue(),e=100,t=0;while(!A&&t<e)A=kue(),t++;return LO.push(...p6),LO},"getTasks"),Jue=y(function(A,e,t){let r={id:Nue++,section:Q6,type:Q6,task:A,score:e?e:0,events:t?[t]:[]};p6.push(r)},"addTask"),Oue=y(function(A){p6.find((t)=>t.id===Nue-1).events.push(A)},"addEvent"),Pue=y(function(A){let e={section:Q6,type:Q6,description:A,task:A,classes:[]};LO.push(e)},"addTaskOrg"),kue=y(function(){let A=y(function(t){return p6[t].processed},"compileTask"),e=!0;for(let[t,r]of p6.entries())A(t),e=e&&r.processed;return e},"compileTasks"),vGt={clear:Uue,getCommonDb:Gue,getDirection:Tue,setDirection:Mue,addSection:Yue,getSections:Hue,getTasks:Kue,addTask:Jue,addTaskOrg:Pue,addEvent:Oue},RO=y(function(A,e){let t=A.append("rect");if(t.attr("x",e.x),t.attr("y",e.y),t.attr("fill",e.fill),t.attr("stroke",e.stroke),t.attr("width",e.width),t.attr("height",e.height),t.attr("rx",e.rx),t.attr("ry",e.ry),e.class!==void 0)t.attr("class",e.class);return t},"drawRect"),kGt=y(function(A,e){let r=A.append("circle").attr("cx",e.cx).attr("cy",e.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),i=A.append("g");i.append("circle").attr("cx",e.cx-5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),i.append("circle").attr("cx",e.cx+5).attr("cy",e.cy-5).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function u(o){let s=aC().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);o.append("path").attr("class","mouth").attr("d",s).attr("transform","translate("+e.cx+","+(e.cy+2)+")")}y(u,"smile");function a(o){let s=aC().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);o.append("path").attr("class","mouth").attr("d",s).attr("transform","translate("+e.cx+","+(e.cy+7)+")")}y(a,"sad");function n(o){o.append("line").attr("class","mouth").attr("stroke",2).attr("x1",e.cx-5).attr("y1",e.cy+7).attr("x2",e.cx+5).attr("y2",e.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}if(y(n,"ambivalent"),e.score>3)u(i);else if(e.score<3)a(i);else n(i);return r},"drawFace"),FGt=y(function(A,e){let t=A.append("circle");if(t.attr("cx",e.cx),t.attr("cy",e.cy),t.attr("class","actor-"+e.pos),t.attr("fill",e.fill),t.attr("stroke",e.stroke),t.attr("r",e.r),t.class!==void 0)t.attr("class",t.class);if(e.title!==void 0)t.append("title").text(e.title);return t},"drawCircle"),Wue=y(function(A,e){let t=e.text.replace(/<br\s*\/?>/gi," "),r=A.append("text");if(r.attr("x",e.x),r.attr("y",e.y),r.attr("class","legend"),r.style("text-anchor",e.anchor),e.class!==void 0)r.attr("class",e.class);let i=r.append("tspan");return i.attr("x",e.x+e.textMargin*2),i.text(t),r},"drawText"),xGt=y(function(A,e){function t(i,u,a,n,o){return i+","+u+" "+(i+a)+","+u+" "+(i+a)+","+(u+n-o)+" "+(i+a-o*1.2)+","+(u+n)+" "+i+","+(u+n)}y(t,"genPoints");let r=A.append("polygon");r.attr("points",t(e.x,e.y,50,20,7)),r.attr("class","labelBox"),e.y=e.y+e.labelMargin,e.x=e.x+0.5*e.labelMargin,Wue(A,e)},"drawLabel"),SGt=y(function(A,e,t){let r=A.append("g"),i=FCA();i.x=e.x,i.y=e.y,i.fill=e.fill,i.width=t.width,i.height=t.height,i.class="journey-section section-type-"+e.num,i.rx=3,i.ry=3,RO(r,i),que(t)(e.text,r,i.x,i.y,i.width,i.height,{class:"journey-section section-type-"+e.num},t,e.colour)},"drawSection"),LGt=y(function(A,e,t,r){let i=e.x+t.width/2,u=A.append("g");bCA++;let a=450;u.append("line").attr("id",r+"-task"+bCA).attr("x1",i).attr("y1",e.y).attr("x2",i).attr("y2",a).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),kGt(u,{cx:i,cy:300+(5-e.score)*30,score:e.score});let n=FCA();n.x=e.x,n.y=e.y,n.fill=e.fill,n.width=t.width,n.height=t.height,n.class="task task-type-"+e.num,n.rx=3,n.ry=3,RO(u,n),que(t)(e.task,u,n.x,n.y,n.width,n.height,{class:"task"},t,e.colour)},"drawTask"),RGt=y(function(A,e){RO(A,{x:e.startx,y:e.starty,width:e.stopx-e.startx,height:e.stopy-e.starty,fill:e.fill,class:"rect"}).lower()},"drawBackgroundRect"),NGt=y(function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},"getTextObj"),FCA=y(function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},"getNoteRect"),que=function(){function A(i,u,a,n,o,s,l,g){let C=u.append("text").attr("x",a+o/2).attr("y",n+s/2+5).style("font-color",g).style("text-anchor","middle").text(i);r(C,l)}y(A,"byText");function e(i,u,a,n,o,s,l,g,C){let{taskFontSize:B,taskFontFamily:E}=g,d=i.split(/<br\s*\/?>/gi);for(let I=0;I<d.length;I++){let h=I*B-B*(d.length-1)/2,Q=u.append("text").attr("x",a+o/2).attr("y",n).attr("fill",C).style("text-anchor","middle").style("font-size",B).style("font-family",E);Q.append("tspan").attr("x",a+o/2).attr("dy",h).text(d[I]),Q.attr("y",n+s/2).attr("dominant-baseline","central").attr("alignment-baseline","central"),r(Q,l)}}y(e,"byTspan");function t(i,u,a,n,o,s,l,g){let C=u.append("switch"),E=C.append("foreignObject").attr("x",a).attr("y",n).attr("width",o).attr("height",s).attr("position","fixed").append("xhtml:div").style("display","table").style("height","100%").style("width","100%");E.append("div").attr("class","label").style("display","table-cell").style("text-align","center").style("vertical-align","middle").text(i),e(i,C,a,n,o,s,l,g),r(E,l)}y(t,"byFo");function r(i,u){for(let a in u)if(a in u)i.attr(a,u[a])}return y(r,"_setTextAttrs"),function(i){return i.textPlacement==="fo"?t:i.textPlacement==="old"?A:e}}(),GGt=y(function(A,e){_ue=0,bCA=-1,A.append("defs").append("marker").attr("id",e+"-arrowhead").attr("refX",5).attr("refY",2).attr("markerWidth",6).attr("markerHeight",4).attr("orient","auto").append("path").attr("d","M 0,0 V 4 L6,2 Z")},"initGraphics");y(xCA,"wrap");UGt=y(function(A,e,t,r,i,u=!1){let{theme:a,look:n}=r,o=a?.includes("redux"),s=r?.themeVariables?.THEME_COLOR_LIMIT??12,l=t%s-1,g=A.append("g");e.section=l,g.attr("class",(e.class?e.class+" ":"")+"timeline-node "+("section-"+l));let C=g.append("g"),B=g.append("g"),d=B.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(xCA,e.width).node().getBBox(),I=r.fontSize?.replace?r.fontSize.replace("px",""):r.fontSize;if(e.height=d.height+I*1.1*0.5+e.padding,e.height=Math.max(e.height,e.maxHeight),e.width=e.width+2*e.padding,B.attr("transform","translate("+e.width/2+", "+e.padding/2+")"),o)B.attr("transform",`translate(${e.width/2}, ${u?e.padding/2+3:e.padding})`);if(TGt(C,e,l,i,r),n==="neo"){if(g.attr("data-look","neo"),o){let h=a.includes("dark"),Q=A.node()?.ownerSVGElement??A.node(),p=Qe(Q),m=p.attr("id")??"",f=m?`${m}-drop-shadow`:"drop-shadow";if(p.select(`#${f}`).empty()){let D=p.select("defs");(D.empty()?p.append("defs"):D).append("filter").attr("id",f).attr("height","130%").attr("width","130%").append("feDropShadow").attr("dx","4").attr("dy","4").attr("stdDeviation",0).attr("flood-opacity",h?"0.2":"0.06").attr("flood-color",h?"#FFFFFF":"#000000")}}}return e},"drawNode"),MGt=y(function(A,e,t){let r=A.append("g"),u=r.append("text").text(e.descr).attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle").call(xCA,e.width).node().getBBox(),a=t.fontSize?.replace?t.fontSize.replace("px",""):t.fontSize;return r.remove(),u.height+a*1.1*0.5+e.padding},"getVirtualNodeHeight"),TGt=y(function(A,e,t,r,i){let{theme:u}=i,a=u?.includes("redux")?0:5,n=5,o=a>0?`M0 ${e.height-5} v${-e.height+10} q0,-${a},${a},-${a} h${e.width-10} q${a},0,${a},${a} v${e.height-5} H0 Z`:`M0 ${e.height-5} v${-(e.height-5)} h${e.width} v${e.height} H0 Z`;if(A.append("path").attr("id",r+"-node-"+_ue++).attr("class","node-bkg node-"+e.type).attr("d",o),!u?.includes("redux"))A.append("line").attr("class","node-line-"+t).attr("x1",0).attr("y1",e.height).attr("x2",e.width).attr("y2",e.height)},"defaultBkg"),kl={drawRect:RO,drawCircle:FGt,drawSection:SGt,drawText:Wue,drawLabel:xGt,drawTask:LGt,drawBackgroundRect:RGt,getTextObj:NGt,getNoteRect:FCA,initGraphics:GGt,drawNode:UGt,getVirtualNodeHeight:MGt},YGt=y(function(A,e,t,r){let i=OA(),{look:u,theme:a,themeVariables:n}=i,{useGradient:o,gradientStart:s,gradientStop:l}=n,g=i.timeline?.leftMargin??50;sA.debug("timeline",r.db);let C=i.securityLevel,B;if(C==="sandbox")B=Qe("#i"+e);let d=(C==="sandbox"?Qe(B.nodes()[0].contentDocument.body):Qe("body")).select("#"+e);d.append("g");let I=r.db.getTasks(),h=r.db.getCommonDb().getDiagramTitle();sA.debug("task",I),kl.initGraphics(d,e);let Q=r.db.getSections();sA.debug("sections",Q);let p=0,m=0,f=0,D=0,w=50+g,b=50;D=50;let k=0,v=!0;Q.forEach(function(R){let L={number:k,descr:R,section:k,width:150,padding:20,maxHeight:p},M=kl.getVirtualNodeHeight(d,L,i);sA.debug("sectionHeight before draw",M),p=Math.max(p,M+20)});let S=0,x=0;sA.debug("tasks.length",I.length);for(let[R,L]of I.entries()){let M={number:R,descr:L,section:L.section,width:150,padding:20,maxHeight:m},U=kl.getVirtualNodeHeight(d,M,i);sA.debug("taskHeight before draw",U),m=Math.max(m,U+20),S=Math.max(S,L.events.length);let Y=0;for(let H of L.events){let J={descr:H,section:L.section,number:L.section,width:150,padding:20,maxHeight:50};Y+=kl.getVirtualNodeHeight(d,J,i)}if(L.events.length>0)Y+=(L.events.length-1)*10;x=Math.max(x,Y)}if(sA.debug("maxSectionHeight before draw",p),sA.debug("maxTaskHeight before draw",m),Q&&Q.length>0)Q.forEach((R)=>{let L=I.filter((H)=>H.section===R),M={number:k,descr:R,section:k,width:200*Math.max(L.length,1)-50,padding:20,maxHeight:p};sA.debug("sectionNode",M);let U=d.append("g"),Y=kl.drawNode(U,M,k,i,e);if(sA.debug("sectionNode output",Y),U.attr("transform",`translate(${w}, ${D})`),b+=p+50,L.length>0)Fue(d,L,k,w,b,m,i,S,x,p,!1,e);w+=200*Math.max(L.length,1),b=D,k++});else v=!1,Fue(d,I,k,w,b,m,i,S,x,p,!0,e);let F=d.node().getBBox();if(sA.debug("bounds",F),h)d.append("text").text(h).attr("x",u==="neo"?F.x*2+g:F.width/2-g).attr("font-size","4ex").attr("font-weight","bold").attr("y",20);if(f=v?p+m+150:m+100,d.append("g").attr("class","lineWrapper").append("line").attr("x1",g).attr("y1",f).attr("x2",F.width+3*g).attr("y2",f).attr("stroke-width",4).attr("stroke","black").attr("marker-end",`url(#${e}-arrowhead)`),u==="neo"&&o&&a!=="neutral"){let R=d.select("defs"),M=(R.empty()?d.append("defs"):R).append("linearGradient").attr("id",d.attr("id")+"-gradient").attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");M.append("stop").attr("offset","0%").attr("stop-color",s).attr("stop-opacity",1),M.append("stop").attr("offset","100%").attr("stop-color",l).attr("stop-opacity",1)}PB(void 0,d,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),Fue=y(function(A,e,t,r,i,u,a,n,o,s,l,g){for(let C of e){let B={descr:C.task,section:t,number:t,width:150,padding:20,maxHeight:u};sA.debug("taskNode",B);let E=A.append("g").attr("class","taskWrapper"),I=kl.drawNode(E,B,t,a,g).height;if(sA.debug("taskHeight after draw",I),E.attr("transform",`translate(${r}, ${i})`),u=Math.max(u,I),C.events){let h=A.append("g").attr("class","lineWrapper"),Q=u;i+=100,Q=Q+HGt(A,C.events,t,r,i,a,g),i-=100,h.append("line").attr("x1",r+95).attr("y1",i+u).attr("x2",r+95).attr("y2",i+u+100+o+100).attr("stroke-width",2).attr("stroke","black").attr("marker-end",`url(#${g}-arrowhead)`).attr("stroke-dasharray","5,5")}if(r=r+200,l&&!a.timeline?.disableMulticolor)t++}i=i-10},"drawTasks"),HGt=y(function(A,e,t,r,i,u,a){let n=0,o=i;i=i+100;for(let s of e){let l={descr:s,section:t,number:t,width:150,padding:20,maxHeight:50};sA.debug("eventNode",l);let g=A.append("g").attr("class","eventWrapper"),B=kl.drawNode(g,l,t,u,a,!0).height;n=n+B,g.attr("transform",`translate(${r}, ${i})`),i=i+10+B}return i=o,n},"drawEvents"),KGt={setConf:y(()=>{},"setConf"),draw:YGt},JGt=NO+ch*2,SCA=NO+100,OGt=SCA+ch*2,_Gt=y(function(A,e,t,r){let i=OA(),u=i.timeline?.leftMargin??50;sA.debug("timeline",r.db);let a=zi(e);a.append("g");let n=r.db.getTasks(),o=r.db.getCommonDb().getDiagramTitle();sA.debug("task",n),kl.initGraphics(a);let s=r.db.getSections();sA.debug("sections",s);let l=0,g=0,C=50+u,B=50,E=B,d=C,I=JGt+Zue,h=OGt+Vue,Q=d+I,p=0,m=s&&s.length>0,f=m?Q:C+I,D=Math.max(50,I+h-ch*2);s.forEach(function(R){let L={number:p,descr:R,section:p,width:D,padding:ch,maxHeight:l},M=kl.getVirtualNodeHeight(a,L,i);sA.debug("sectionHeight before draw",M),l=Math.max(l,M)});let w=0;sA.debug("tasks.length",n.length);for(let[R,L]of n.entries()){let M={number:R,descr:L,section:L.section,width:NO,padding:ch,maxHeight:g},U=kl.getVirtualNodeHeight(a,M,i);sA.debug("taskHeight before draw",U),g=Math.max(g,U);let Y=0;for(let H of L.events){let J={descr:H,section:L.section,number:L.section,width:SCA,padding:ch,maxHeight:50};Y+=kl.getVirtualNodeHeight(a,J,i)}if(L.events.length>0)Y+=(L.events.length-1)*zue;w=Math.max(w,Y)+PGt}sA.debug("maxSectionHeight before draw",l),sA.debug("maxTaskHeight before draw",g);let k=Math.max(g,w)+Sue;if(m)s.forEach((R)=>{let L=n.filter((P)=>P.section===R),M={number:p,descr:R,section:p,width:D,padding:ch,maxHeight:l};sA.debug("sectionNode",M);let U=a.append("g"),Y=kl.drawNode(U,M,p,i);sA.debug("sectionNode output",Y);let H=f-I;U.attr("transform",`translate(${H}, ${B})`);let J=B+Y.height+xue;if(L.length>0)Lue(a,L,p,f,J,g,i,k,!1);let K=L.length,O=Y.height+xue+k*Math.max(K,1)-(K>0?Sue*2:0);B+=O,p++});else Lue(a,n,p,f,B,g,i,k,!0);let v=a.node()?.getBBox();if(!v)throw Error("bbox not found");if(sA.debug("bounds",v),o){if(a.append("text").text(o).attr("x",v.width/2-u).attr("font-size","4ex").attr("font-weight","bold").attr("y",20),v=a.node()?.getBBox(),!v)throw Error("bbox not found");sA.debug("bounds after title",v)}let[S]=rl(i.fontSize),x=(S??16)*2,F=(S??16)*0.5+20,T=a.append("g").attr("class","lineWrapper");T.append("line").attr("x1",f).attr("y1",E-x).attr("x2",f).attr("y2",v.y+v.height+F).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)"),T.lower(),PB(void 0,a,i.timeline?.padding??50,i.timeline?.useMaxWidth??!1)},"draw"),Lue=y(function(A,e,t,r,i,u,a,n,o){for(let s of e){let l={descr:s.task,section:t,number:t,width:NO,padding:ch,maxHeight:u};sA.debug("taskNode",l);let g=A.append("g").attr("class","taskWrapper"),C=kl.drawNode(g,l,t,a),B=C.height;sA.debug("taskHeight after draw",B);let E=r-Zue-C.width;if(g.attr("transform",`translate(${E}, ${i})`),u=Math.max(u,B),s.events&&s.events.length>0){let d=i,I=r+Vue;WGt(A,s.events,t,r,I,d,a)}if(i=i+n,o&&!a.timeline?.disableMulticolor)t++}},"drawTasks"),WGt=y(function(A,e,t,r,i,u,a){let n=u;for(let o of e){let s={descr:o,section:t,number:t,width:SCA,padding:ch,maxHeight:0};sA.debug("eventNode",s);let l=A.append("g").attr("class","eventWrapper"),C=kl.drawNode(l,s,t,a).height;l.attr("transform",`translate(${i}, ${n})`);let B=A.append("g").attr("class","lineWrapper"),E=n+C/2;B.append("line").attr("x1",r).attr("y1",E).attr("x2",i).attr("y2",E).attr("stroke-width",2).attr("stroke","black").attr("marker-end","url(#arrowhead)").attr("stroke-dasharray","5,5"),n=n+C+zue}return n-u},"drawEvents"),qGt={setConf:y(()=>{},"setConf"),draw:_Gt},zGt=y((A)=>{let{theme:e}=ot(),t=e?.includes("dark"),r=e?.includes("color"),i=A.svgId?.replace(/^#/,"")??"",u=i?`url(#${i}-drop-shadow)`:A.dropShadow??"none",a="";for(let n=0;n<A.THEME_COLOR_LIMIT;n++){let o=`${17-3*n}`,s=r?A.borderColorArray[n]:A.mainBkg,l=r?A.borderColorArray[n]:A.nodeBorder;a+=`
.section-${n-1} rect,
.section-${n-1} path,
.section-${n-1} circle {
fill: ${t&&r?A.mainBkg:s};
stroke: ${l};
stroke-width: ${A.strokeWidth};
filter: ${u};
}
.section-${n-1} text {
fill: ${A.nodeBorder};
font-weight: ${A.fontWeight}
}
.node-icon-${n-1} {
font-size: 40px;
color: ${A["cScaleLabel"+n]};
}
.section-edge-${n-1} {
stroke: ${A["cScale"+n]};
}
.edge-depth-${n-1} {
stroke-width: ${o};
}
.section-${n-1} line {
stroke: ${A["cScaleInv"+n]};
stroke-width: 3;
}
.lineWrapper line {
stroke: ${A.nodeBorder};
stroke-width:${A.strokeWidth}
}
.disabled,
.disabled circle,
.disabled text {
fill: ${A.tertiaryColor??"lightgray"};
}
.disabled text {
fill: ${A.clusterBorder??"#efefef"};
}
`}return a},"genReduxSections"),ZGt=y((A)=>{let e="";for(let t=0;t<A.THEME_COLOR_LIMIT;t++)if(A["lineColor"+t]=A["lineColor"+t]||A["cScaleInv"+t],uu(A["lineColor"+t]))A["lineColor"+t]=Ie(A["lineColor"+t],20);else A["lineColor"+t]=he(A["lineColor"+t],20);for(let t=0;t<A.THEME_COLOR_LIMIT;t++){let r=""+(17-3*t);e+=`
.section-${t-1} rect, .section-${t-1} path, .section-${t-1} circle, .section-${t-1} path {
fill: ${A["cScale"+t]};
}
.section-${t-1} text {
fill: ${A["cScaleLabel"+t]};
}
.node-icon-${t-1} {
font-size: 40px;
color: ${A["cScaleLabel"+t]};
}
.section-edge-${t-1}{
stroke: ${A["cScale"+t]};
}
.edge-depth-${t-1}{
stroke-width: ${r};
}
.section-${t-1} line {
stroke: ${A["cScaleInv"+t]} ;
stroke-width: 3;
}
.lineWrapper line{
stroke: ${A["cScaleLabel"+t]} ;
}
.disabled, .disabled circle, .disabled text {
fill: ${A.tertiaryColor??"lightgray"};
}
.disabled text {
fill: ${A.clusterBorder??"#efefef"};
}
`}return e},"genSections"),VGt=y((A)=>{let{theme:e}=ot(),t=e?.includes("redux"),r=e==="neutral",i=A.svgId?.replace(/^#/,"")??"",u="";if(A.useGradient&&i&&A.THEME_COLOR_LIMIT&&!r)for(let a=0;a<A.THEME_COLOR_LIMIT;a++)u+=`
.section-${a-1}[data-look="neo"] rect,
.section-${a-1}[data-look="neo"] path,
.section-${a-1}[data-look="neo"] circle {
fill: ${A.mainBkg};
stroke: url(#${i}-gradient);
stroke-width: 2;
}
.section-${a-1}[data-look="neo"] line {
stroke: url(#${i}-gradient);
stroke-width: 2;
}`;return`
.edge {
stroke-width: 3;
}
${t?zGt(A):ZGt(A)}
${u}
.section-root rect, .section-root path, .section-root circle {
fill: ${A.git0};
}
.section-root text {
fill: ${A.gitBranchLabel0};
}
.icon-container {
height:100%;
display: flex;
justify-content: center;
align-items: center;
}
.edge {
fill: none;
}
.eventWrapper {
filter: brightness(120%);
}
`},"getStyles"),jGt=VGt,XGt={setConf:y(()=>{},"setConf"),draw:y((A,e,t,r)=>{if((r?.db?.getDirection?.()??"LR")==="TD")return qGt.draw(A,e,t,r);return KGt.draw(A,e,t,r)},"draw")},jue={db:Rue,renderer:XGt,parser:bGt,styles:jGt}});function LCA(){return crypto.getRandomValues($Gt)}var $Gt;var $ue=_(()=>{$Gt=new Uint8Array(16)});function Aae(A,e=0){return(Q0[A[e+0]]+Q0[A[e+1]]+Q0[A[e+2]]+Q0[A[e+3]]+"-"+Q0[A[e+4]]+Q0[A[e+5]]+"-"+Q0[A[e+6]]+Q0[A[e+7]]+"-"+Q0[A[e+8]]+Q0[A[e+9]]+"-"+Q0[A[e+10]]+Q0[A[e+11]]+Q0[A[e+12]]+Q0[A[e+13]]+Q0[A[e+14]]+Q0[A[e+15]]).toLowerCase()}var Q0;var eae=_(()=>{Q0=[];for(let A=0;A<256;++A)Q0.push((A+256).toString(16).slice(1))});function AUt(A,e,t){if(!e&&!A&&crypto.randomUUID)return crypto.randomUUID();return eUt(A,e,t)}function eUt(A,e,t){A=A||{};let r=A.random??A.rng?.()??LCA();if(r.length<16)throw Error("Random bytes length must be >= 16");if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,e){if(t=t||0,t<0||t+16>e.length)throw RangeError(`UUID byte range ${t}:${t+15} is out of buffer bounds`);for(let i=0;i<16;++i)e[t+i]=r[i];return e}return Aae(r)}var RCA;var tae=_(()=>{$ue();eae();RCA=AUt});var rae=_(()=>{tae()});var NCA,tUt,rUt=12,Ch,iUt,uUt,aUt,nUt,oUt,sUt,lUt,iae;var uae=_(()=>{gg();hl();El();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt();rae();vn();NCA=function(){var A=y(function(m,f,D,w){for(D=D||{},w=m.length;w--;D[m[w]]=f);return D},"o"),e=[1,4],t=[1,13],r=[1,12],i=[1,15],u=[1,16],a=[1,20],n=[1,19],o=[6,7,8],s=[1,26],l=[1,24],g=[1,25],C=[6,7,11],B=[1,6,13,15,16,19,22],E=[1,33],d=[1,34],I=[1,6,7,11,13,15,16,19,22],h={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,MINDMAP:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,ICON:15,CLASS:16,nodeWithId:17,nodeWithoutId:18,NODE_DSTART:19,NODE_DESCR:20,NODE_DEND:21,NODE_ID:22,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"MINDMAP",11:"EOF",13:"SPACELIST",15:"ICON",16:"CLASS",19:"NODE_DSTART",20:"NODE_DESCR",21:"NODE_DEND",22:"NODE_ID"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,2],[12,2],[12,1],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[18,3],[17,1],[17,4]],performAction:y(function(f,D,w,b,k,v,S){var x=v.length-1;switch(k){case 6:case 7:return b;case 8:b.getLogger().trace("Stop NL ");break;case 9:b.getLogger().trace("Stop EOF ");break;case 11:b.getLogger().trace("Stop NL2 ");break;case 12:b.getLogger().trace("Stop EOF2 ");break;case 15:b.getLogger().info("Node: ",v[x].id),b.addNode(v[x-1].length,v[x].id,v[x].descr,v[x].type);break;case 16:b.getLogger().trace("Icon: ",v[x]),b.decorateNode({icon:v[x]});break;case 17:case 21:b.decorateNode({class:v[x]});break;case 18:b.getLogger().trace("SPACELIST");break;case 19:b.getLogger().trace("Node: ",v[x].id),b.addNode(0,v[x].id,v[x].descr,v[x].type);break;case 20:b.decorateNode({icon:v[x]});break;case 25:b.getLogger().trace("node found ..",v[x-2]),this.$={id:v[x-1],descr:v[x-1],type:b.getType(v[x-2],v[x])};break;case 26:this.$={id:v[x],descr:v[x],type:b.nodeType.DEFAULT};break;case 27:b.getLogger().trace("node found ..",v[x-3]),this.$={id:v[x-3],descr:v[x-1],type:b.getType(v[x-2],v[x])};break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:t,7:[1,10],9:9,12:11,13:r,14:14,15:i,16:u,17:17,18:18,19:a,22:n},A(o,[2,3]),{1:[2,2]},A(o,[2,4]),A(o,[2,5]),{1:[2,6],6:t,12:21,13:r,14:14,15:i,16:u,17:17,18:18,19:a,22:n},{6:t,9:22,12:11,13:r,14:14,15:i,16:u,17:17,18:18,19:a,22:n},{6:s,7:l,10:23,11:g},A(C,[2,22],{17:17,18:18,14:27,15:[1,28],16:[1,29],19:a,22:n}),A(C,[2,18]),A(C,[2,19]),A(C,[2,20]),A(C,[2,21]),A(C,[2,23]),A(C,[2,24]),A(C,[2,26],{19:[1,30]}),{20:[1,31]},{6:s,7:l,10:32,11:g},{1:[2,7],6:t,12:21,13:r,14:14,15:i,16:u,17:17,18:18,19:a,22:n},A(B,[2,14],{7:E,11:d}),A(I,[2,8]),A(I,[2,9]),A(I,[2,10]),A(C,[2,15]),A(C,[2,16]),A(C,[2,17]),{20:[1,35]},{21:[1,36]},A(B,[2,13],{7:E,11:d}),A(I,[2,11]),A(I,[2,12]),{21:[1,37]},A(C,[2,25]),A(C,[2,27])],defaultActions:{2:[2,1],6:[2,2]},parseError:y(function(f,D){if(D.recoverable)this.trace(f);else{var w=Error(f);throw w.hash=D,w}},"parseError"),parse:y(function(f){var D=this,w=[0],b=[],k=[null],v=[],S=this.table,x="",F=0,T=0,R=0,L=2,M=1,U=v.slice.call(arguments,1),Y=Object.create(this.lexer),H={yy:{}};for(var J in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,J))H.yy[J]=this.yy[J];if(Y.setInput(f,H.yy),H.yy.lexer=Y,H.yy.parser=this,typeof Y.yylloc>"u")Y.yylloc={};var K=Y.yylloc;v.push(K);var O=Y.options&&Y.options.ranges;if(typeof H.yy.parseError==="function")this.parseError=H.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function P(IA){w.length=w.length-2*IA,k.length=k.length-IA,v.length=v.length-IA}y(P,"popStack");function z(){var IA=b.pop()||Y.lex()||M;if(typeof IA!=="number"){if(IA instanceof Array)b=IA,IA=b.pop();IA=D.symbols_[IA]||IA}return IA}y(z,"lex");var AA,W,CA,tA,lA,gA,aA={},NA,DA,KA,TA;while(!0){if(CA=w[w.length-1],this.defaultActions[CA])tA=this.defaultActions[CA];else{if(AA===null||typeof AA>"u")AA=z();tA=S[CA]&&S[CA][AA]}if(typeof tA>"u"||!tA.length||!tA[0]){var qA="";TA=[];for(NA in S[CA])if(this.terminals_[NA]&&NA>L)TA.push("'"+this.terminals_[NA]+"'");if(Y.showPosition)qA="Parse error on line "+(F+1)+`:
`+Y.showPosition()+`
Expecting `+TA.join(", ")+", got '"+(this.terminals_[AA]||AA)+"'";else qA="Parse error on line "+(F+1)+": Unexpected "+(AA==M?"end of input":"'"+(this.terminals_[AA]||AA)+"'");this.parseError(qA,{text:Y.match,token:this.terminals_[AA]||AA,line:Y.yylineno,loc:K,expected:TA})}if(tA[0]instanceof Array&&tA.length>1)throw Error("Parse Error: multiple actions possible at state: "+CA+", token: "+AA);switch(tA[0]){case 1:if(w.push(AA),k.push(Y.yytext),v.push(Y.yylloc),w.push(tA[1]),AA=null,!W){if(T=Y.yyleng,x=Y.yytext,F=Y.yylineno,K=Y.yylloc,R>0)R--}else AA=W,W=null;break;case 2:if(DA=this.productions_[tA[1]][1],aA.$=k[k.length-DA],aA._$={first_line:v[v.length-(DA||1)].first_line,last_line:v[v.length-1].last_line,first_column:v[v.length-(DA||1)].first_column,last_column:v[v.length-1].last_column},O)aA._$.range=[v[v.length-(DA||1)].range[0],v[v.length-1].range[1]];if(gA=this.performAction.apply(aA,[x,T,F,H.yy,tA[1],k,v].concat(U)),typeof gA<"u")return gA;if(DA)w=w.slice(0,-1*DA*2),k=k.slice(0,-1*DA),v=v.slice(0,-1*DA);w.push(this.productions_[tA[1]][0]),k.push(aA.$),v.push(aA._$),KA=S[w[w.length-2]][w[w.length-1]],w.push(KA);break;case 3:return!0}}return!0},"parse")},Q=function(){var m={EOF:1,parseError:y(function(D,w){if(this.yy.parser)this.yy.parser.parseError(D,w);else throw Error(D)},"parseError"),setInput:y(function(f,D){if(this.yy=D||this.yy||{},this._input=f,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var f=this._input[0];this.yytext+=f,this.yyleng++,this.offset++,this.match+=f,this.matched+=f;var D=f.match(/(?:\r\n?|\n).*/g);if(D)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),f},"input"),unput:y(function(f){var D=f.length,w=f.split(/(?:\r\n?|\n)/g);this._input=f+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-D),this.offset-=D;var b=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),w.length-1)this.yylineno-=w.length-1;var k=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:w?(w.length===b.length?this.yylloc.first_column:0)+b[b.length-w.length].length-w[0].length:this.yylloc.first_column-D},this.options.ranges)this.yylloc.range=[k[0],k[0]+this.yyleng-D];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(f){this.unput(this.match.slice(f))},"less"),pastInput:y(function(){var f=this.matched.substr(0,this.matched.length-this.match.length);return(f.length>20?"...":"")+f.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var f=this.match;if(f.length<20)f+=this._input.substr(0,20-f.length);return(f.substr(0,20)+(f.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var f=this.pastInput(),D=Array(f.length+1).join("-");return f+this.upcomingInput()+`
`+D+"^"},"showPosition"),test_match:y(function(f,D){var w,b,k;if(this.options.backtrack_lexer){if(k={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)k.yylloc.range=this.yylloc.range.slice(0)}if(b=f[0].match(/(?:\r\n?|\n).*/g),b)this.yylineno+=b.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:b?b[b.length-1].length-b[b.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+f[0].length},this.yytext+=f[0],this.match+=f[0],this.matches=f,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(f[0].length),this.matched+=f[0],w=this.performAction.call(this,this.yy,this,D,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(w)return w;else if(this._backtrack){for(var v in k)this[v]=k[v];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var f,D,w,b;if(!this._more)this.yytext="",this.match="";var k=this._currentRules();for(var v=0;v<k.length;v++)if(w=this._input.match(this.rules[k[v]]),w&&(!D||w[0].length>D[0].length)){if(D=w,b=v,this.options.backtrack_lexer)if(f=this.test_match(w,k[v]),f!==!1)return f;else if(this._backtrack){D=!1;continue}else return!1;else if(!this.options.flex)break}if(D){if(f=this.test_match(D,k[b]),f!==!1)return f;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var D=this.next();if(D)return D;else return this.lex()},"lex"),begin:y(function(D){this.conditionStack.push(D)},"begin"),popState:y(function(){var D=this.conditionStack.length-1;if(D>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(D){if(D=this.conditionStack.length-1-Math.abs(D||0),D>=0)return this.conditionStack[D];else return"INITIAL"},"topState"),pushState:y(function(D){this.begin(D)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(D,w,b,k){var v=k;switch(b){case 0:return D.getLogger().trace("Found comment",w.yytext),6;break;case 1:return 8;case 2:this.begin("CLASS");break;case 3:return this.popState(),16;break;case 4:this.popState();break;case 5:D.getLogger().trace("Begin icon"),this.begin("ICON");break;case 6:return D.getLogger().trace("SPACELINE"),6;break;case 7:return 7;case 8:return 15;case 9:D.getLogger().trace("end icon"),this.popState();break;case 10:return D.getLogger().trace("Exploding node"),this.begin("NODE"),19;break;case 11:return D.getLogger().trace("Cloud"),this.begin("NODE"),19;break;case 12:return D.getLogger().trace("Explosion Bang"),this.begin("NODE"),19;break;case 13:return D.getLogger().trace("Cloud Bang"),this.begin("NODE"),19;break;case 14:return this.begin("NODE"),19;break;case 15:return this.begin("NODE"),19;break;case 16:return this.begin("NODE"),19;break;case 17:return this.begin("NODE"),19;break;case 18:return 13;case 19:return 22;case 20:return 11;case 21:this.begin("NSTR2");break;case 22:return"NODE_DESCR";case 23:this.popState();break;case 24:D.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 25:return D.getLogger().trace("description:",w.yytext),"NODE_DESCR";break;case 26:this.popState();break;case 27:return this.popState(),D.getLogger().trace("node end ))"),"NODE_DEND";break;case 28:return this.popState(),D.getLogger().trace("node end )"),"NODE_DEND";break;case 29:return this.popState(),D.getLogger().trace("node end ...",w.yytext),"NODE_DEND";break;case 30:return this.popState(),D.getLogger().trace("node end (("),"NODE_DEND";break;case 31:return this.popState(),D.getLogger().trace("node end (-"),"NODE_DEND";break;case 32:return this.popState(),D.getLogger().trace("node end (-"),"NODE_DEND";break;case 33:return this.popState(),D.getLogger().trace("node end (("),"NODE_DEND";break;case 34:return this.popState(),D.getLogger().trace("node end (("),"NODE_DEND";break;case 35:return D.getLogger().trace("Long description:",w.yytext),20;break;case 36:return D.getLogger().trace("Long description:",w.yytext),20;break}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:mindmap\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{CLASS:{rules:[3,4],inclusive:!1},ICON:{rules:[8,9],inclusive:!1},NSTR2:{rules:[22,23],inclusive:!1},NSTR:{rules:[25,26],inclusive:!1},NODE:{rules:[21,24,27,28,29,30,31,32,33,34,35,36],inclusive:!1},INITIAL:{rules:[0,1,2,5,6,7,10,11,12,13,14,15,16,17,18,19,20],inclusive:!0}}};return m}();h.lexer=Q;function p(){this.yy={}}return y(p,"Parser"),p.prototype=h,h.Parser=p,new p}();NCA.parser=NCA;tUt=NCA,Ch={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},iUt=class{constructor(){this.nodes=[],this.count=0,this.elements={},this.getLogger=this.getLogger.bind(this),this.nodeType=Ch,this.clear(),this.getType=this.getType.bind(this),this.getElementById=this.getElementById.bind(this),this.getParent=this.getParent.bind(this),this.getMindmap=this.getMindmap.bind(this),this.addNode=this.addNode.bind(this),this.decorateNode=this.decorateNode.bind(this)}static{y(this,"MindmapDB")}clear(){this.nodes=[],this.count=0,this.elements={},this.baseLevel=void 0}getParent(A){for(let e=this.nodes.length-1;e>=0;e--)if(this.nodes[e].level<A)return this.nodes[e];return null}getMindmap(){return this.nodes.length>0?this.nodes[0]:null}addNode(A,e,t,r){sA.info("addNode",A,e,t,r);let i=!1;if(this.nodes.length===0)this.baseLevel=A,A=0,i=!0;else if(this.baseLevel!==void 0)A=A-this.baseLevel,i=!1;let u=OA(),a=u.mindmap?.padding??ur.mindmap.padding;switch(r){case this.nodeType.ROUNDED_RECT:case this.nodeType.RECT:case this.nodeType.HEXAGON:a*=2;break}let n={id:this.count++,nodeId:gr(e,u),level:A,descr:gr(t,u),type:r,children:[],width:u.mindmap?.maxNodeWidth??ur.mindmap.maxNodeWidth,padding:a,isRoot:i},o=this.getParent(A);if(o)o.children.push(n),this.nodes.push(n);else if(i)this.nodes.push(n);else throw Error(`There can be only one root. No parent could be found for ("${n.descr}")`)}getType(A,e){switch(sA.debug("In get type",A,e),A){case"[":return this.nodeType.RECT;case"(":return e===")"?this.nodeType.ROUNDED_RECT:this.nodeType.CLOUD;case"((":return this.nodeType.CIRCLE;case")":return this.nodeType.CLOUD;case"))":return this.nodeType.BANG;case"{{":return this.nodeType.HEXAGON;default:return this.nodeType.DEFAULT}}setElementForId(A,e){this.elements[A]=e}getElementById(A){return this.elements[A]}decorateNode(A){if(!A)return;let e=OA(),t=this.nodes[this.nodes.length-1];if(A.icon)t.icon=gr(A.icon,e);if(A.class)t.class=gr(A.class,e)}type2Str(A){switch(A){case this.nodeType.DEFAULT:return"no-border";case this.nodeType.RECT:return"rect";case this.nodeType.ROUNDED_RECT:return"rounded-rect";case this.nodeType.CIRCLE:return"circle";case this.nodeType.CLOUD:return"cloud";case this.nodeType.BANG:return"bang";case this.nodeType.HEXAGON:return"hexgon";default:return"no-border"}}assignSections(A,e){if(A.level===0)A.section=void 0;else A.section=e;if(A.children)for(let[t,r]of A.children.entries()){let i=A.level===0?t%(rUt-1):e;this.assignSections(r,i)}}flattenNodes(A,e){let t=OA(),r=["mindmap-node"];if(A.isRoot===!0)r.push("section-root","section--1");else if(A.section!==void 0)r.push(`section-${A.section}`);if(A.class)r.push(A.class);let i=r.join(" "),u=y((n)=>{let s=(t.theme?.toLowerCase()??"").includes("redux");switch(n){case Ch.CIRCLE:return"mindmapCircle";case Ch.RECT:return"rect";case Ch.ROUNDED_RECT:return"rounded";case Ch.CLOUD:return"cloud";case Ch.BANG:return"bang";case Ch.HEXAGON:return"hexagon";case Ch.DEFAULT:return s?"rounded":"defaultMindmapNode";case Ch.NO_BORDER:default:return"rect"}},"getShapeFromType"),a={id:A.id.toString(),domId:"node_"+A.id.toString(),label:A.descr,labelType:"markdown",isGroup:!1,shape:u(A.type),width:A.width,height:A.height??0,padding:A.padding,cssClasses:i,cssStyles:[],look:t.look,icon:A.icon,x:A.x,y:A.y,level:A.level,nodeId:A.nodeId,type:A.type,section:A.section};if(e.push(a),A.children)for(let n of A.children)this.flattenNodes(n,e)}generateEdges(A,e){if(!A.children)return;let t=OA();for(let r of A.children){let i="edge";if(r.section!==void 0)i+=` section-edge-${r.section}`;let u=A.level+1;i+=` edge-depth-${u}`;let a={id:`edge_${A.id}_${r.id}`,start:A.id.toString(),end:r.id.toString(),type:"normal",curve:"basis",thickness:"normal",look:t.look,classes:i,depth:A.level,section:r.section};e.push(a),this.generateEdges(r,e)}}getData(){let A=this.getMindmap(),e=OA(),r=UR().layout!==void 0,i=e;if(!r)i.layout="cose-bilkent";if(!A)return{nodes:[],edges:[],config:i};sA.debug("getData: mindmapRoot",A,e),this.assignSections(A);let u=[],a=[];this.flattenNodes(A,u),this.generateEdges(A,a),sA.debug(`getData: processed ${u.length} nodes and ${a.length} edges`);let n=new Map;for(let o of u)n.set(o.id,{shape:o.shape,width:o.width,height:o.height,padding:o.padding});return{nodes:u,edges:a,config:i,rootNode:A,markers:["point"],direction:"TB",nodeSpacing:50,rankSpacing:50,shapes:Object.fromEntries(n),type:"mindmap",diagramId:"mindmap-"+RCA()}}getLogger(){return sA}},uUt=y(async(A,e,t,r)=>{sA.debug(`Rendering mindmap diagram
`+A);let i=r.db,u=i.getData(),a=gc(e,u.config.securityLevel);if(u.type=r.type,u.layoutAlgorithm=yE(u.config.layout,{fallback:"cose-bilkent"}),u.diagramId=e,!i.getMindmap())return;u.nodes.forEach((C)=>{if(C.shape==="rounded")C.radius=15,C.taper=15,C.stroke="none",C.width=0,C.padding=15;else if(C.shape==="circle")C.padding=10;else if(C.shape==="rect")C.width=0,C.padding=10;else if(C.shape==="hexagon")C.width=0,C.height=0}),await ac(u,a);let{themeVariables:o}=ot(),{useGradient:s,gradientStart:l,gradientStop:g}=o;if(s&&l&&g){let C=a.attr("id"),B=a.append("defs").append("linearGradient").attr("id",`${C}-gradient`).attr("gradientUnits","objectBoundingBox").attr("x1","0%").attr("y1","0%").attr("x2","100%").attr("y2","0%");B.append("stop").attr("offset","0%").attr("stop-color",l).attr("stop-opacity",1),B.append("stop").attr("offset","100%").attr("stop-color",g).attr("stop-opacity",1)}Il(a,u.config.mindmap?.padding??ur.mindmap.padding,"mindmapDiagram",u.config.mindmap?.useMaxWidth??ur.mindmap.useMaxWidth)},"draw"),aUt={draw:uUt},nUt=y((A)=>{let{theme:e,look:t}=A,r="";for(let i=0;i<A.THEME_COLOR_LIMIT;i++)if(A["lineColor"+i]=A["lineColor"+i]||A["cScaleInv"+i],uu(A["lineColor"+i]))A["lineColor"+i]=Ie(A["lineColor"+i],20);else A["lineColor"+i]=he(A["lineColor"+i],20);for(let i=0;i<A.THEME_COLOR_LIMIT;i++){let u=""+(t==="neo"?Math.max(10-(i-1)*2,2):17-3*i);r+=`
.section-${i-1} rect, .section-${i-1} path, .section-${i-1} circle, .section-${i-1} polygon, .section-${i-1} path {
fill: ${A["cScale"+i]};
}
.section-${i-1} text {
fill: ${A["cScaleLabel"+i]};
}
.section-${i-1} span {
color: ${A["cScaleLabel"+i]};
}
.node-icon-${i-1} {
font-size: 40px;
color: ${A["cScaleLabel"+i]};
}
.section-edge-${i-1}{
stroke: ${A["cScale"+i]};
}
.edge-depth-${i-1}{
stroke-width: ${u};
}
.section-${i-1} line {
stroke: ${A["cScaleInv"+i]} ;
stroke-width: 3;
}
.disabled, .disabled circle, .disabled text {
fill: lightgray;
}
.disabled text {
fill: #efefef;
}
[data-look="neo"].mindmap-node.section-${i-1} rect, [data-look="neo"].mindmap-node.section-${i-1} path, [data-look="neo"].mindmap-node.section-${i-1} circle, [data-look="neo"].mindmap-node.section-${i-1} polygon {
fill: ${e==="redux"||e==="redux-dark"||e==="neutral"?A.mainBkg:A["cScale"+i]};
stroke: ${e==="redux"||e==="redux-dark"?A.nodeBorder:A["cScale"+i]};
stroke-width: ${A.strokeWidth??2}px;
}
[data-look="neo"].section-edge-${i-1}{
stroke: ${e?.includes("redux")||e==="neo-dark"?A.nodeBorder:A["cScale"+i]};
}
[data-look="neo"].mindmap-node.section-${i-1} text {
fill: ${e==="redux"||e==="redux-dark"?A.nodeBorder:A["cScaleLabel"+(e==="neutral"?1:i)]};
}
`}return r},"genSections"),oUt=y((A,e,t)=>{let r="";for(let i=0;i<A;i++)r+=`
[data-look="neo"].mindmap-node.section-${i-1} rect, [data-look="neo"].mindmap-node.section-${i-1} path, [data-look="neo"].mindmap-node.section-${i-1} circle, [data-look="neo"].mindmap-node.section-${i-1} polygon {
stroke: url(${e}-gradient);
fill: ${t};
}
.section-${i-1} line {
stroke-width: 0;
}`;return r},"genGradient"),sUt=y((A)=>{let{theme:e}=A,t=A.svgId,r=A.dropShadow?A.dropShadow.replace("url(#drop-shadow)",`url(${t}-drop-shadow)`):"none";return`
.edge {
stroke-width: 3;
}
${nUt(A)}
.section-root rect, .section-root path, .section-root circle, .section-root polygon {
fill: ${A.git0};
}
.section-root text {
fill: ${A.gitBranchLabel0};
}
.section-root span {
color: ${e?.includes("redux")?A.nodeBorder:A.gitBranchLabel0};
}
.icon-container {
height:100%;
display: flex;
justify-content: center;
align-items: center;
}
.edge {
fill: none;
}
.mindmap-node-label {
dy: 1em;
alignment-baseline: middle;
text-anchor: middle;
dominant-baseline: middle;
text-align: center;
}
[data-look="neo"].mindmap-node {
filter: ${r};
}
[data-look="neo"].mindmap-node.section-root rect, [data-look="neo"].mindmap-node.section-root path, [data-look="neo"].mindmap-node.section-root circle, [data-look="neo"].mindmap-node.section-root polygon {
fill: ${e?.includes("redux")?A.mainBkg:A.git0};
}
[data-look="neo"].mindmap-node.section-root .text-inner-tspan {
fill: ${e?.includes("redux")?A.nodeBorder:A["cScaleLabel"+(e==="neutral"?1:0)]};
}
${A.useGradient&&t&&A.mainBkg?oUt(A.THEME_COLOR_LIMIT,t,A.mainBkg):""}
`},"getStyles"),lUt=sUt,iae={get db(){return new iUt},renderer:aUt,parser:tUt,styles:lUt}});var GCA,gUt,pc,MCA,UCA=0,TCA,cUt,CUt,aae,BUt,EUt,Bo,dUt,IUt,hUt,QUt,pUt,fUt,mUt,DUt,yUt,wUt,bUt,vUt,kUt,nae;var oae=_(()=>{cn();kE();of();n0();r0();u0();uo();Ln();ai();rr();ir();Nt();vn();GCA=function(){var A=y(function(w,b,k,v){for(k=k||{},v=w.length;v--;k[w[v]]=b);return k},"o"),e=[1,4],t=[1,13],r=[1,12],i=[1,15],u=[1,16],a=[1,20],n=[1,19],o=[6,7,8],s=[1,26],l=[1,24],g=[1,25],C=[6,7,11],B=[1,31],E=[6,7,11,24],d=[1,6,13,16,17,20,23],I=[1,35],h=[1,36],Q=[1,6,7,11,13,16,17,20,23],p=[1,38],m={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mindMap:4,spaceLines:5,SPACELINE:6,NL:7,KANBAN:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,node:14,shapeData:15,ICON:16,CLASS:17,nodeWithId:18,nodeWithoutId:19,NODE_DSTART:20,NODE_DESCR:21,NODE_DEND:22,NODE_ID:23,SHAPE_DATA:24,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"KANBAN",11:"EOF",13:"SPACELIST",16:"ICON",17:"CLASS",20:"NODE_DSTART",21:"NODE_DESCR",22:"NODE_DEND",23:"NODE_ID",24:"SHAPE_DATA"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,3],[12,2],[12,2],[12,2],[12,1],[12,2],[12,1],[12,1],[12,1],[12,1],[14,1],[14,1],[19,3],[18,1],[18,4],[15,2],[15,1]],performAction:y(function(b,k,v,S,x,F,T){var R=F.length-1;switch(x){case 6:case 7:return S;case 8:S.getLogger().trace("Stop NL ");break;case 9:S.getLogger().trace("Stop EOF ");break;case 11:S.getLogger().trace("Stop NL2 ");break;case 12:S.getLogger().trace("Stop EOF2 ");break;case 15:S.getLogger().info("Node: ",F[R-1].id),S.addNode(F[R-2].length,F[R-1].id,F[R-1].descr,F[R-1].type,F[R]);break;case 16:S.getLogger().info("Node: ",F[R].id),S.addNode(F[R-1].length,F[R].id,F[R].descr,F[R].type);break;case 17:S.getLogger().trace("Icon: ",F[R]),S.decorateNode({icon:F[R]});break;case 18:case 23:S.decorateNode({class:F[R]});break;case 19:S.getLogger().trace("SPACELIST");break;case 20:S.getLogger().trace("Node: ",F[R-1].id),S.addNode(0,F[R-1].id,F[R-1].descr,F[R-1].type,F[R]);break;case 21:S.getLogger().trace("Node: ",F[R].id),S.addNode(0,F[R].id,F[R].descr,F[R].type);break;case 22:S.decorateNode({icon:F[R]});break;case 27:S.getLogger().trace("node found ..",F[R-2]),this.$={id:F[R-1],descr:F[R-1],type:S.getType(F[R-2],F[R])};break;case 28:this.$={id:F[R],descr:F[R],type:0};break;case 29:S.getLogger().trace("node found ..",F[R-3]),this.$={id:F[R-3],descr:F[R-1],type:S.getType(F[R-2],F[R])};break;case 30:this.$=F[R-1]+F[R];break;case 31:this.$=F[R];break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:t,7:[1,10],9:9,12:11,13:r,14:14,16:i,17:u,18:17,19:18,20:a,23:n},A(o,[2,3]),{1:[2,2]},A(o,[2,4]),A(o,[2,5]),{1:[2,6],6:t,12:21,13:r,14:14,16:i,17:u,18:17,19:18,20:a,23:n},{6:t,9:22,12:11,13:r,14:14,16:i,17:u,18:17,19:18,20:a,23:n},{6:s,7:l,10:23,11:g},A(C,[2,24],{18:17,19:18,14:27,16:[1,28],17:[1,29],20:a,23:n}),A(C,[2,19]),A(C,[2,21],{15:30,24:B}),A(C,[2,22]),A(C,[2,23]),A(E,[2,25]),A(E,[2,26]),A(E,[2,28],{20:[1,32]}),{21:[1,33]},{6:s,7:l,10:34,11:g},{1:[2,7],6:t,12:21,13:r,14:14,16:i,17:u,18:17,19:18,20:a,23:n},A(d,[2,14],{7:I,11:h}),A(Q,[2,8]),A(Q,[2,9]),A(Q,[2,10]),A(C,[2,16],{15:37,24:B}),A(C,[2,17]),A(C,[2,18]),A(C,[2,20],{24:p}),A(E,[2,31]),{21:[1,39]},{22:[1,40]},A(d,[2,13],{7:I,11:h}),A(Q,[2,11]),A(Q,[2,12]),A(C,[2,15],{24:p}),A(E,[2,30]),{22:[1,41]},A(E,[2,27]),A(E,[2,29])],defaultActions:{2:[2,1],6:[2,2]},parseError:y(function(b,k){if(k.recoverable)this.trace(b);else{var v=Error(b);throw v.hash=k,v}},"parseError"),parse:y(function(b){var k=this,v=[0],S=[],x=[null],F=[],T=this.table,R="",L=0,M=0,U=0,Y=2,H=1,J=F.slice.call(arguments,1),K=Object.create(this.lexer),O={yy:{}};for(var P in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,P))O.yy[P]=this.yy[P];if(K.setInput(b,O.yy),O.yy.lexer=K,O.yy.parser=this,typeof K.yylloc>"u")K.yylloc={};var z=K.yylloc;F.push(z);var AA=K.options&&K.options.ranges;if(typeof O.yy.parseError==="function")this.parseError=O.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function W(EA){v.length=v.length-2*EA,x.length=x.length-EA,F.length=F.length-EA}y(W,"popStack");function CA(){var EA=S.pop()||K.lex()||H;if(typeof EA!=="number"){if(EA instanceof Array)S=EA,EA=S.pop();EA=k.symbols_[EA]||EA}return EA}y(CA,"lex");var tA,lA,gA,aA,NA,DA,KA={},TA,qA,IA,bA;while(!0){if(gA=v[v.length-1],this.defaultActions[gA])aA=this.defaultActions[gA];else{if(tA===null||typeof tA>"u")tA=CA();aA=T[gA]&&T[gA][tA]}if(typeof aA>"u"||!aA.length||!aA[0]){var SA="";bA=[];for(TA in T[gA])if(this.terminals_[TA]&&TA>Y)bA.push("'"+this.terminals_[TA]+"'");if(K.showPosition)SA="Parse error on line "+(L+1)+`:
`+K.showPosition()+`
Expecting `+bA.join(", ")+", got '"+(this.terminals_[tA]||tA)+"'";else SA="Parse error on line "+(L+1)+": Unexpected "+(tA==H?"end of input":"'"+(this.terminals_[tA]||tA)+"'");this.parseError(SA,{text:K.match,token:this.terminals_[tA]||tA,line:K.yylineno,loc:z,expected:bA})}if(aA[0]instanceof Array&&aA.length>1)throw Error("Parse Error: multiple actions possible at state: "+gA+", token: "+tA);switch(aA[0]){case 1:if(v.push(tA),x.push(K.yytext),F.push(K.yylloc),v.push(aA[1]),tA=null,!lA){if(M=K.yyleng,R=K.yytext,L=K.yylineno,z=K.yylloc,U>0)U--}else tA=lA,lA=null;break;case 2:if(qA=this.productions_[aA[1]][1],KA.$=x[x.length-qA],KA._$={first_line:F[F.length-(qA||1)].first_line,last_line:F[F.length-1].last_line,first_column:F[F.length-(qA||1)].first_column,last_column:F[F.length-1].last_column},AA)KA._$.range=[F[F.length-(qA||1)].range[0],F[F.length-1].range[1]];if(DA=this.performAction.apply(KA,[R,M,L,O.yy,aA[1],x,F].concat(J)),typeof DA<"u")return DA;if(qA)v=v.slice(0,-1*qA*2),x=x.slice(0,-1*qA),F=F.slice(0,-1*qA);v.push(this.productions_[aA[1]][0]),x.push(KA.$),F.push(KA._$),IA=T[v[v.length-2]][v[v.length-1]],v.push(IA);break;case 3:return!0}}return!0},"parse")},f=function(){var w={EOF:1,parseError:y(function(k,v){if(this.yy.parser)this.yy.parser.parseError(k,v);else throw Error(k)},"parseError"),setInput:y(function(b,k){if(this.yy=k||this.yy||{},this._input=b,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var b=this._input[0];this.yytext+=b,this.yyleng++,this.offset++,this.match+=b,this.matched+=b;var k=b.match(/(?:\r\n?|\n).*/g);if(k)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),b},"input"),unput:y(function(b){var k=b.length,v=b.split(/(?:\r\n?|\n)/g);this._input=b+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-k),this.offset-=k;var S=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),v.length-1)this.yylineno-=v.length-1;var x=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:v?(v.length===S.length?this.yylloc.first_column:0)+S[S.length-v.length].length-v[0].length:this.yylloc.first_column-k},this.options.ranges)this.yylloc.range=[x[0],x[0]+this.yyleng-k];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(b){this.unput(this.match.slice(b))},"less"),pastInput:y(function(){var b=this.matched.substr(0,this.matched.length-this.match.length);return(b.length>20?"...":"")+b.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var b=this.match;if(b.length<20)b+=this._input.substr(0,20-b.length);return(b.substr(0,20)+(b.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var b=this.pastInput(),k=Array(b.length+1).join("-");return b+this.upcomingInput()+`
`+k+"^"},"showPosition"),test_match:y(function(b,k){var v,S,x;if(this.options.backtrack_lexer){if(x={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)x.yylloc.range=this.yylloc.range.slice(0)}if(S=b[0].match(/(?:\r\n?|\n).*/g),S)this.yylineno+=S.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:S?S[S.length-1].length-S[S.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+b[0].length},this.yytext+=b[0],this.match+=b[0],this.matches=b,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(b[0].length),this.matched+=b[0],v=this.performAction.call(this,this.yy,this,k,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(v)return v;else if(this._backtrack){for(var F in x)this[F]=x[F];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var b,k,v,S;if(!this._more)this.yytext="",this.match="";var x=this._currentRules();for(var F=0;F<x.length;F++)if(v=this._input.match(this.rules[x[F]]),v&&(!k||v[0].length>k[0].length)){if(k=v,S=F,this.options.backtrack_lexer)if(b=this.test_match(v,x[F]),b!==!1)return b;else if(this._backtrack){k=!1;continue}else return!1;else if(!this.options.flex)break}if(k){if(b=this.test_match(k,x[S]),b!==!1)return b;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var k=this.next();if(k)return k;else return this.lex()},"lex"),begin:y(function(k){this.conditionStack.push(k)},"begin"),popState:y(function(){var k=this.conditionStack.length-1;if(k>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(k){if(k=this.conditionStack.length-1-Math.abs(k||0),k>=0)return this.conditionStack[k];else return"INITIAL"},"topState"),pushState:y(function(k){this.begin(k)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(k,v,S,x){var F=x;switch(S){case 0:return this.pushState("shapeData"),v.yytext="",24;break;case 1:return this.pushState("shapeDataStr"),24;break;case 2:return this.popState(),24;break;case 3:let T=/\n\s*/g;return v.yytext=v.yytext.replace(T,"<br/>"),24;break;case 4:return 24;case 5:this.popState();break;case 6:return k.getLogger().trace("Found comment",v.yytext),6;break;case 7:return 8;case 8:this.begin("CLASS");break;case 9:return this.popState(),17;break;case 10:this.popState();break;case 11:k.getLogger().trace("Begin icon"),this.begin("ICON");break;case 12:return k.getLogger().trace("SPACELINE"),6;break;case 13:return 7;case 14:return 16;case 15:k.getLogger().trace("end icon"),this.popState();break;case 16:return k.getLogger().trace("Exploding node"),this.begin("NODE"),20;break;case 17:return k.getLogger().trace("Cloud"),this.begin("NODE"),20;break;case 18:return k.getLogger().trace("Explosion Bang"),this.begin("NODE"),20;break;case 19:return k.getLogger().trace("Cloud Bang"),this.begin("NODE"),20;break;case 20:return this.begin("NODE"),20;break;case 21:return this.begin("NODE"),20;break;case 22:return this.begin("NODE"),20;break;case 23:return this.begin("NODE"),20;break;case 24:return 13;case 25:return 23;case 26:return 11;case 27:this.begin("NSTR2");break;case 28:return"NODE_DESCR";case 29:this.popState();break;case 30:k.getLogger().trace("Starting NSTR"),this.begin("NSTR");break;case 31:return k.getLogger().trace("description:",v.yytext),"NODE_DESCR";break;case 32:this.popState();break;case 33:return this.popState(),k.getLogger().trace("node end ))"),"NODE_DEND";break;case 34:return this.popState(),k.getLogger().trace("node end )"),"NODE_DEND";break;case 35:return this.popState(),k.getLogger().trace("node end ...",v.yytext),"NODE_DEND";break;case 36:return this.popState(),k.getLogger().trace("node end (("),"NODE_DEND";break;case 37:return this.popState(),k.getLogger().trace("node end (-"),"NODE_DEND";break;case 38:return this.popState(),k.getLogger().trace("node end (-"),"NODE_DEND";break;case 39:return this.popState(),k.getLogger().trace("node end (("),"NODE_DEND";break;case 40:return this.popState(),k.getLogger().trace("node end (("),"NODE_DEND";break;case 41:return k.getLogger().trace("Long description:",v.yytext),21;break;case 42:return k.getLogger().trace("Long description:",v.yytext),21;break}},"anonymous"),rules:[/^(?:@\{)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^\"]+)/i,/^(?:[^}^"]+)/i,/^(?:\})/i,/^(?:\s*%%.*)/i,/^(?:kanban\b)/i,/^(?::::)/i,/^(?:.+)/i,/^(?:\n)/i,/^(?:::icon\()/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[^\)]+)/i,/^(?:\))/i,/^(?:-\))/i,/^(?:\(-)/i,/^(?:\)\))/i,/^(?:\))/i,/^(?:\(\()/i,/^(?:\{\{)/i,/^(?:\()/i,/^(?:\[)/i,/^(?:[\s]+)/i,/^(?:[^\(\[\n\)\{\}@]+)/i,/^(?:$)/i,/^(?:["][`])/i,/^(?:[^`"]+)/i,/^(?:[`]["])/i,/^(?:["])/i,/^(?:[^"]+)/i,/^(?:["])/i,/^(?:[\)]\))/i,/^(?:[\)])/i,/^(?:[\]])/i,/^(?:\}\})/i,/^(?:\(-)/i,/^(?:-\))/i,/^(?:\(\()/i,/^(?:\()/i,/^(?:[^\)\]\(\}]+)/i,/^(?:.+(?!\(\())/i],conditions:{shapeDataEndBracket:{rules:[],inclusive:!1},shapeDataStr:{rules:[2,3],inclusive:!1},shapeData:{rules:[1,4,5],inclusive:!1},CLASS:{rules:[9,10],inclusive:!1},ICON:{rules:[14,15],inclusive:!1},NSTR2:{rules:[28,29],inclusive:!1},NSTR:{rules:[31,32],inclusive:!1},NODE:{rules:[27,30,33,34,35,36,37,38,39,40,41,42],inclusive:!1},INITIAL:{rules:[0,6,7,8,11,12,13,16,17,18,19,20,21,22,23,24,25,26],inclusive:!0}}};return w}();m.lexer=f;function D(){this.yy={}}return y(D,"Parser"),D.prototype=m,m.Parser=D,new D}();GCA.parser=GCA;gUt=GCA,pc=[],MCA=[],TCA={},cUt=y(()=>{pc=[],MCA=[],UCA=0,TCA={}},"clear"),CUt=y((A)=>{if(pc.length===0)return null;let e=pc[0].level,t=null;for(let r=pc.length-1;r>=0;r--){if(pc[r].level===e&&!t)t=pc[r];if(pc[r].level<e)throw Error('Items without section detected, found section ("'+pc[r].label+'")')}if(A===t?.level)return null;return t},"getSection"),aae=y(function(){return MCA},"getSections"),BUt=y(function(){let A=[],e=[],t=aae(),r=OA();for(let i of t){let u={id:i.id,label:gr(i.label??"",r),labelType:"markdown",isGroup:!0,ticket:i.ticket,shape:"kanbanSection",level:i.level,look:r.look};e.push(u);let a=pc.filter((n)=>n.parentId===i.id);for(let n of a){let o={id:n.id,parentId:i.id,label:gr(n.label??"",r),labelType:"markdown",isGroup:!1,ticket:n?.ticket,priority:n?.priority,assigned:n?.assigned,icon:n?.icon,shape:"kanbanItem",level:n.level,rx:5,ry:5,cssStyles:["text-align: left"]};e.push(o)}}return{nodes:e,edges:A,other:{},config:OA()}},"getData"),EUt=y((A,e,t,r,i)=>{let u=OA(),a=u.mindmap?.padding??ur.mindmap.padding;switch(r){case Bo.ROUNDED_RECT:case Bo.RECT:case Bo.HEXAGON:a*=2}let n={id:gr(e,u)||"kbn"+UCA++,level:A,label:gr(t,u),width:u.mindmap?.maxNodeWidth??ur.mindmap.maxNodeWidth,padding:a,isGroup:!1};if(i!==void 0){let s;if(!i.includes(`
`))s=`{
`+i+`
}`;else s=i+`
`;let l=mQ(s,{schema:fQ});if(l.shape&&(l.shape!==l.shape.toLowerCase()||l.shape.includes("_")))throw Error(`No such shape: ${l.shape}. Shape names should be lowercase.`);if(l?.shape&&l.shape==="kanbanItem")n.shape=l?.shape;if(l?.label)n.label=l?.label;if(l?.icon)n.icon=l?.icon.toString();if(l?.assigned)n.assigned=l?.assigned.toString();if(l?.ticket)n.ticket=l?.ticket.toString();if(l?.priority)n.priority=l?.priority}let o=CUt(A);if(o)n.parentId=o.id||"kbn"+UCA++;else MCA.push(n);pc.push(n)},"addNode"),Bo={DEFAULT:0,NO_BORDER:0,ROUNDED_RECT:1,RECT:2,CIRCLE:3,CLOUD:4,BANG:5,HEXAGON:6},dUt=y((A,e)=>{switch(sA.debug("In get type",A,e),A){case"[":return Bo.RECT;case"(":return e===")"?Bo.ROUNDED_RECT:Bo.CLOUD;case"((":return Bo.CIRCLE;case")":return Bo.CLOUD;case"))":return Bo.BANG;case"{{":return Bo.HEXAGON;default:return Bo.DEFAULT}},"getType"),IUt=y((A,e)=>{TCA[A]=e},"setElementForId"),hUt=y((A)=>{if(!A)return;let e=OA(),t=pc[pc.length-1];if(A.icon)t.icon=gr(A.icon,e);if(A.class)t.cssClasses=gr(A.class,e)},"decorateNode"),QUt=y((A)=>{switch(A){case Bo.DEFAULT:return"no-border";case Bo.RECT:return"rect";case Bo.ROUNDED_RECT:return"rounded-rect";case Bo.CIRCLE:return"circle";case Bo.CLOUD:return"cloud";case Bo.BANG:return"bang";case Bo.HEXAGON:return"hexgon";default:return"no-border"}},"type2Str"),pUt=y(()=>sA,"getLogger"),fUt=y((A)=>TCA[A],"getElementById"),mUt={clear:cUt,addNode:EUt,getSections:aae,getData:BUt,nodeType:Bo,getType:dUt,setElementForId:IUt,decorateNode:hUt,type2Str:QUt,getLogger:pUt,getElementById:fUt},DUt=mUt,yUt=y(async(A,e,t,r)=>{sA.debug(`Rendering kanban diagram
`+A);let u=r.db.getData(),a=OA();a.htmlLabels=!1;let n=zi(e);for(let I of u.nodes)I.domId=`${e}-${I.id}`;let o=n.append("g");o.attr("class","sections");let s=n.append("g");s.attr("class","items");let l=u.nodes.filter((I)=>I.isGroup),g=0,C=10,B=[],E=25;for(let I of l){let h=a?.kanban?.sectionWidth||200;g=g+1,I.x=h*g+(g-1)*C/2,I.width=h,I.y=0,I.height=h*3,I.rx=5,I.ry=5,I.cssClasses=I.cssClasses+" section-"+g;let Q=await kQ(o,I);E=Math.max(E,Q?.labelBBox?.height),B.push(Q)}let d=0;for(let I of l){let h=B[d];d=d+1;let Q=a?.kanban?.sectionWidth||200,p=-Q*3/2+E,m=p,f=u.nodes.filter((b)=>b.parentId===I.id);for(let b of f){if(b.isGroup)throw Error("Groups within groups are not allowed in Kanban diagrams");b.x=I.x,b.width=Q-1.5*C;let v=(await BI(s,b,{config:a})).node().getBBox();b.y=m+v.height/2,await If(b),m=b.y+v.height/2+C/2}let D=h.cluster.select("rect"),w=Math.max(m-p+3*C,50)+(E-25);D.attr("height",w)}PB(void 0,n,a.mindmap?.padding??ur.kanban.padding,a.mindmap?.useMaxWidth??ur.kanban.useMaxWidth)},"draw"),wUt={draw:yUt},bUt=y((A)=>{let e="";for(let r=0;r<A.THEME_COLOR_LIMIT;r++)if(A["lineColor"+r]=A["lineColor"+r]||A["cScaleInv"+r],uu(A["lineColor"+r]))A["lineColor"+r]=Ie(A["lineColor"+r],20);else A["lineColor"+r]=he(A["lineColor"+r],20);let t=y((r,i)=>A.darkMode?he(r,i):Ie(r,i),"adjuster");for(let r=0;r<A.THEME_COLOR_LIMIT;r++){let i=""+(17-3*r);e+=`
.section-${r-1} rect, .section-${r-1} path, .section-${r-1} circle, .section-${r-1} polygon, .section-${r-1} path {
fill: ${t(A["cScale"+r],10)};
stroke: ${t(A["cScale"+r],10)};
}
.section-${r-1} text {
fill: ${A["cScaleLabel"+r]};
}
.node-icon-${r-1} {
font-size: 40px;
color: ${A["cScaleLabel"+r]};
}
.section-edge-${r-1}{
stroke: ${A["cScale"+r]};
}
.edge-depth-${r-1}{
stroke-width: ${i};
}
.section-${r-1} line {
stroke: ${A["cScaleInv"+r]} ;
stroke-width: 3;
}
.disabled, .disabled circle, .disabled text {
fill: lightgray;
}
.disabled text {
fill: #efefef;
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${A.background};
stroke: ${A.nodeBorder};
stroke-width: 1px;
}
.kanban-ticket-link {
fill: ${A.background};
stroke: ${A.nodeBorder};
text-decoration: underline;
}
`}return e},"genSections"),vUt=y((A)=>`
.edge {
stroke-width: 3;
}
${bUt(A)}
.section-root rect, .section-root path, .section-root circle, .section-root polygon {
fill: ${A.git0};
}
.section-root text {
fill: ${A.gitBranchLabel0};
}
.icon-container {
height:100%;
display: flex;
justify-content: center;
align-items: center;
}
.edge {
fill: none;
}
.cluster-label, .label {
color: ${A.textColor};
fill: ${A.textColor};
}
.kanban-label {
dy: 1em;
alignment-baseline: middle;
text-anchor: middle;
dominant-baseline: middle;
text-align: center;
}
${vE()}
`,"getStyles"),kUt=vUt,nae={db:DUt,renderer:wUt,parser:gUt,styles:kUt}});function n7(A,e){let t;if(e===void 0){for(let r of A)if(r!=null&&(t<r||t===void 0&&r>=r))t=r}else{let r=-1;for(let i of A)if((i=e(i,++r,A))!=null&&(t<i||t===void 0&&i>=i))t=i}return t}function f6(A,e){let t;if(e===void 0){for(let r of A)if(r!=null&&(t>r||t===void 0&&r>=r))t=r}else{let r=-1;for(let i of A)if((i=e(i,++r,A))!=null&&(t>i||t===void 0&&i>=i))t=i}return t}function m6(A,e){let t=0;if(e===void 0){for(let r of A)if(r=+r)t+=r}else{let r=-1;for(let i of A)if(i=+e(i,++r,A))t+=i}return t}var YCA=()=>{};function FUt(A){return A.target.depth}function HCA(A){return A.depth}function KCA(A,e){return e-1-A.height}function o7(A,e){return A.sourceLinks.length?A.depth:e-1}function JCA(A){return A.targetLinks.length?A.depth:A.sourceLinks.length?f6(A.sourceLinks,FUt)-1:0}var OCA=_(()=>{YCA()});function D6(A){return function(){return A}}function sae(A,e){return GO(A.source,e.source)||A.index-e.index}function lae(A,e){return GO(A.target,e.target)||A.index-e.index}function GO(A,e){return A.y0-e.y0}function PCA(A){return A.value}function xUt(A){return A.index}function SUt(A){return A.nodes}function LUt(A){return A.links}function gae(A,e){let t=A.get(e);if(!t)throw Error("missing: "+e);return t}function cae({nodes:A}){for(let e of A){let t=e.y0,r=t;for(let i of e.sourceLinks)i.y0=t+i.width/2,t+=i.width;for(let i of e.targetLinks)i.y1=r+i.width/2,r+=i.width}}function UO(){let A=0,e=0,t=1,r=1,i=24,u=8,a,n=xUt,o=o7,s,l,g=SUt,C=LUt,B=6;function E(){let R={nodes:g.apply(null,arguments),links:C.apply(null,arguments)};return d(R),I(R),h(R),Q(R),f(R),cae(R),R}E.update=function(R){return cae(R),R},E.nodeId=function(R){return arguments.length?(n=typeof R==="function"?R:D6(R),E):n},E.nodeAlign=function(R){return arguments.length?(o=typeof R==="function"?R:D6(R),E):o},E.nodeSort=function(R){return arguments.length?(s=R,E):s},E.nodeWidth=function(R){return arguments.length?(i=+R,E):i},E.nodePadding=function(R){return arguments.length?(u=a=+R,E):u},E.nodes=function(R){return arguments.length?(g=typeof R==="function"?R:D6(R),E):g},E.links=function(R){return arguments.length?(C=typeof R==="function"?R:D6(R),E):C},E.linkSort=function(R){return arguments.length?(l=R,E):l},E.size=function(R){return arguments.length?(A=e=0,t=+R[0],r=+R[1],E):[t-A,r-e]},E.extent=function(R){return arguments.length?(A=+R[0][0],t=+R[1][0],e=+R[0][1],r=+R[1][1],E):[[A,e],[t,r]]},E.iterations=function(R){return arguments.length?(B=+R,E):B};function d({nodes:R,links:L}){for(let[U,Y]of R.entries())Y.index=U,Y.sourceLinks=[],Y.targetLinks=[];let M=new Map(R.map((U,Y)=>[n(U,Y,R),U]));for(let[U,Y]of L.entries()){Y.index=U;let{source:H,target:J}=Y;if(typeof H!=="object")H=Y.source=gae(M,H);if(typeof J!=="object")J=Y.target=gae(M,J);H.sourceLinks.push(Y),J.targetLinks.push(Y)}if(l!=null)for(let{sourceLinks:U,targetLinks:Y}of R)U.sort(l),Y.sort(l)}function I({nodes:R}){for(let L of R)L.value=L.fixedValue===void 0?Math.max(m6(L.sourceLinks,PCA),m6(L.targetLinks,PCA)):L.fixedValue}function h({nodes:R}){let L=R.length,M=new Set(R),U=new Set,Y=0;while(M.size){for(let H of M){H.depth=Y;for(let{target:J}of H.sourceLinks)U.add(J)}if(++Y>L)throw Error("circular link");M=U,U=new Set}}function Q({nodes:R}){let L=R.length,M=new Set(R),U=new Set,Y=0;while(M.size){for(let H of M){H.height=Y;for(let{source:J}of H.targetLinks)U.add(J)}if(++Y>L)throw Error("circular link");M=U,U=new Set}}function p({nodes:R}){let L=n7(R,(Y)=>Y.depth)+1,M=(t-A-i)/(L-1),U=Array(L);for(let Y of R){let H=Math.max(0,Math.min(L-1,Math.floor(o.call(null,Y,L))));if(Y.layer=H,Y.x0=A+H*M,Y.x1=Y.x0+i,U[H])U[H].push(Y);else U[H]=[Y]}if(s)for(let Y of U)Y.sort(s);return U}function m(R){let L=f6(R,(M)=>(r-e-(M.length-1)*a)/m6(M,PCA));for(let M of R){let U=e;for(let Y of M){Y.y0=U,Y.y1=U+Y.value*L,U=Y.y1+a;for(let H of Y.sourceLinks)H.width=H.value*L}U=(r-U+a)/(M.length+1);for(let Y=0;Y<M.length;++Y){let H=M[Y];H.y0+=U*(Y+1),H.y1+=U*(Y+1)}x(M)}}function f(R){let L=p(R);a=Math.min(u,(r-e)/(n7(L,(M)=>M.length)-1)),m(L);for(let M=0;M<B;++M){let U=Math.pow(0.99,M),Y=Math.max(1-U,(M+1)/B);w(L,U,Y),D(L,U,Y)}}function D(R,L,M){for(let U=1,Y=R.length;U<Y;++U){let H=R[U];for(let J of H){let K=0,O=0;for(let{source:z,value:AA}of J.targetLinks){let W=AA*(J.layer-z.layer);K+=F(z,J)*W,O+=W}if(!(O>0))continue;let P=(K/O-J.y0)*L;J.y0+=P,J.y1+=P,S(J)}if(s===void 0)H.sort(GO);b(H,M)}}function w(R,L,M){for(let U=R.length,Y=U-2;Y>=0;--Y){let H=R[Y];for(let J of H){let K=0,O=0;for(let{target:z,value:AA}of J.sourceLinks){let W=AA*(z.layer-J.layer);K+=T(J,z)*W,O+=W}if(!(O>0))continue;let P=(K/O-J.y0)*L;J.y0+=P,J.y1+=P,S(J)}if(s===void 0)H.sort(GO);b(H,M)}}function b(R,L){let M=R.length>>1,U=R[M];v(R,U.y0-a,M-1,L),k(R,U.y1+a,M+1,L),v(R,r,R.length-1,L),k(R,e,0,L)}function k(R,L,M,U){for(;M<R.length;++M){let Y=R[M],H=(L-Y.y0)*U;if(H>0.000001)Y.y0+=H,Y.y1+=H;L=Y.y1+a}}function v(R,L,M,U){for(;M>=0;--M){let Y=R[M],H=(Y.y1-L)*U;if(H>0.000001)Y.y0-=H,Y.y1-=H;L=Y.y0-a}}function S({sourceLinks:R,targetLinks:L}){if(l===void 0){for(let{source:{sourceLinks:M}}of L)M.sort(lae);for(let{target:{targetLinks:M}}of R)M.sort(sae)}}function x(R){if(l===void 0)for(let{sourceLinks:L,targetLinks:M}of R)L.sort(lae),M.sort(sae)}function F(R,L){let M=R.y0-(R.sourceLinks.length-1)*a/2;for(let{target:U,width:Y}of R.sourceLinks){if(U===L)break;M+=Y+a}for(let{source:U,width:Y}of L.targetLinks){if(U===R)break;M-=Y}return M}function T(R,L){let M=L.y0-(L.targetLinks.length-1)*a/2;for(let{source:U,width:Y}of L.targetLinks){if(U===R)break;M+=Y+a}for(let{target:U,width:Y}of R.sourceLinks){if(U===L)break;M-=Y}return M}return E}var Cae=_(()=>{YCA();OCA()});function qCA(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function Bae(){return new qCA}var _CA,WCA,Cm=0.000001,RUt,zCA;var Eae=_(()=>{_CA=Math.PI,WCA=2*_CA,RUt=WCA-Cm;qCA.prototype=Bae.prototype={constructor:qCA,moveTo:function(A,e){this._+="M"+(this._x0=this._x1=+A)+","+(this._y0=this._y1=+e)},closePath:function(){if(this._x1!==null)this._x1=this._x0,this._y1=this._y0,this._+="Z"},lineTo:function(A,e){this._+="L"+(this._x1=+A)+","+(this._y1=+e)},quadraticCurveTo:function(A,e,t,r){this._+="Q"+ +A+","+ +e+","+(this._x1=+t)+","+(this._y1=+r)},bezierCurveTo:function(A,e,t,r,i,u){this._+="C"+ +A+","+ +e+","+ +t+","+ +r+","+(this._x1=+i)+","+(this._y1=+u)},arcTo:function(A,e,t,r,i){A=+A,e=+e,t=+t,r=+r,i=+i;var u=this._x1,a=this._y1,n=t-A,o=r-e,s=u-A,l=a-e,g=s*s+l*l;if(i<0)throw Error("negative radius: "+i);if(this._x1===null)this._+="M"+(this._x1=A)+","+(this._y1=e);else if(!(g>Cm));else if(!(Math.abs(l*n-o*s)>Cm)||!i)this._+="L"+(this._x1=A)+","+(this._y1=e);else{var C=t-u,B=r-a,E=n*n+o*o,d=C*C+B*B,I=Math.sqrt(E),h=Math.sqrt(g),Q=i*Math.tan((_CA-Math.acos((E+g-d)/(2*I*h)))/2),p=Q/h,m=Q/I;if(Math.abs(p-1)>Cm)this._+="L"+(A+p*s)+","+(e+p*l);this._+="A"+i+","+i+",0,0,"+ +(l*C>s*B)+","+(this._x1=A+m*n)+","+(this._y1=e+m*o)}},arc:function(A,e,t,r,i,u){A=+A,e=+e,t=+t,u=!!u;var a=t*Math.cos(r),n=t*Math.sin(r),o=A+a,s=e+n,l=1^u,g=u?r-i:i-r;if(t<0)throw Error("negative radius: "+t);if(this._x1===null)this._+="M"+o+","+s;else if(Math.abs(this._x1-o)>Cm||Math.abs(this._y1-s)>Cm)this._+="L"+o+","+s;if(!t)return;if(g<0)g=g%WCA+WCA;if(g>RUt)this._+="A"+t+","+t+",0,1,"+l+","+(A-a)+","+(e-n)+"A"+t+","+t+",0,1,"+l+","+(this._x1=o)+","+(this._y1=s);else if(g>Cm)this._+="A"+t+","+t+",0,"+ +(g>=_CA)+","+l+","+(this._x1=A+t*Math.cos(i))+","+(this._y1=e+t*Math.sin(i))},rect:function(A,e,t,r){this._+="M"+(this._x0=this._x1=+A)+","+(this._y0=this._y1=+e)+"h"+ +t+"v"+ +r+"h"+-t+"Z"},toString:function(){return this._}};zCA=Bae});var dae=_(()=>{Eae()});var Iae;var hae=_(()=>{Iae=Array.prototype.slice});function MO(A){return function(){return A}}function Qae(A){return A[0]}function pae(A){return A[1]}function NUt(A){return A.source}function GUt(A){return A.target}function UUt(A){var e=NUt,t=GUt,r=Qae,i=pae,u=null;function a(){var n,o=Iae.call(arguments),s=e.apply(this,o),l=t.apply(this,o);if(!u)u=n=zCA();if(A(u,+r.apply(this,(o[0]=s,o)),+i.apply(this,o),+r.apply(this,(o[0]=l,o)),+i.apply(this,o)),n)return u=null,n+""||null}return a.source=function(n){return arguments.length?(e=n,a):e},a.target=function(n){return arguments.length?(t=n,a):t},a.x=function(n){return arguments.length?(r=typeof n==="function"?n:MO(+n),a):r},a.y=function(n){return arguments.length?(i=typeof n==="function"?n:MO(+n),a):i},a.context=function(n){return arguments.length?(u=n==null?null:n,a):u},a}function MUt(A,e,t,r,i){A.moveTo(e,t),A.bezierCurveTo(e=(e+r)/2,t,e,i,r,i)}function ZCA(){return UUt(MUt)}var fae=_(()=>{dae();hae()});var mae=_(()=>{fae()});function TUt(A){return[A.source.x1,A.y0]}function YUt(A){return[A.target.x0,A.y1]}function TO(){return ZCA().source(TUt).target(YUt)}var Dae=_(()=>{mae()});var yae=_(()=>{Cae();OCA();Dae()});var VCA,YO,KO,JO,HO,HUt,KUt,JUt,OUt,PUt,_Ut,WUt,qUt,zUt,wae,ZUt,VUt,jUt,XUt,$Ut,AMt,eMt,tMt,bae;var vae=_(()=>{rr();ir();Nt();Pr();yae();VCA=function(){var A=y(function(n,o,s,l){for(s=s||{},l=n.length;l--;s[n[l]]=o);return s},"o"),e=[1,9],t=[1,10],r=[1,5,10,12],i={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SANKEY:4,NEWLINE:5,csv:6,opt_eof:7,record:8,csv_tail:9,EOF:10,"field[source]":11,COMMA:12,"field[target]":13,"field[value]":14,field:15,escaped:16,non_escaped:17,DQUOTE:18,ESCAPED_TEXT:19,NON_ESCAPED_TEXT:20,$accept:0,$end:1},terminals_:{2:"error",4:"SANKEY",5:"NEWLINE",10:"EOF",11:"field[source]",12:"COMMA",13:"field[target]",14:"field[value]",18:"DQUOTE",19:"ESCAPED_TEXT",20:"NON_ESCAPED_TEXT"},productions_:[0,[3,4],[6,2],[9,2],[9,0],[7,1],[7,0],[8,5],[15,1],[15,1],[16,3],[17,1]],performAction:y(function(o,s,l,g,C,B,E){var d=B.length-1;switch(C){case 7:let I=g.findOrCreateNode(B[d-4].trim().replaceAll('""','"')),h=g.findOrCreateNode(B[d-2].trim().replaceAll('""','"')),Q=parseFloat(B[d].trim());g.addLink(I,h,Q);break;case 8:case 9:case 11:this.$=B[d];break;case 10:this.$=B[d-1];break}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},{5:[1,3]},{6:4,8:5,15:6,16:7,17:8,18:e,20:t},{1:[2,6],7:11,10:[1,12]},A(t,[2,4],{9:13,5:[1,14]}),{12:[1,15]},A(r,[2,8]),A(r,[2,9]),{19:[1,16]},A(r,[2,11]),{1:[2,1]},{1:[2,5]},A(t,[2,2]),{6:17,8:5,15:6,16:7,17:8,18:e,20:t},{15:18,16:7,17:8,18:e,20:t},{18:[1,19]},A(t,[2,3]),{12:[1,20]},A(r,[2,10]),{15:21,16:7,17:8,18:e,20:t},A([1,5,10],[2,7])],defaultActions:{11:[2,1],12:[2,5]},parseError:y(function(o,s){if(s.recoverable)this.trace(o);else{var l=Error(o);throw l.hash=s,l}},"parseError"),parse:y(function(o){var s=this,l=[0],g=[],C=[null],B=[],E=this.table,d="",I=0,h=0,Q=0,p=2,m=1,f=B.slice.call(arguments,1),D=Object.create(this.lexer),w={yy:{}};for(var b in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,b))w.yy[b]=this.yy[b];if(D.setInput(o,w.yy),w.yy.lexer=D,w.yy.parser=this,typeof D.yylloc>"u")D.yylloc={};var k=D.yylloc;B.push(k);var v=D.options&&D.options.ranges;if(typeof w.yy.parseError==="function")this.parseError=w.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function S(z){l.length=l.length-2*z,C.length=C.length-z,B.length=B.length-z}y(S,"popStack");function x(){var z=g.pop()||D.lex()||m;if(typeof z!=="number"){if(z instanceof Array)g=z,z=g.pop();z=s.symbols_[z]||z}return z}y(x,"lex");var F,T,R,L,M,U,Y={},H,J,K,O;while(!0){if(R=l[l.length-1],this.defaultActions[R])L=this.defaultActions[R];else{if(F===null||typeof F>"u")F=x();L=E[R]&&E[R][F]}if(typeof L>"u"||!L.length||!L[0]){var P="";O=[];for(H in E[R])if(this.terminals_[H]&&H>p)O.push("'"+this.terminals_[H]+"'");if(D.showPosition)P="Parse error on line "+(I+1)+`:
`+D.showPosition()+`
Expecting `+O.join(", ")+", got '"+(this.terminals_[F]||F)+"'";else P="Parse error on line "+(I+1)+": Unexpected "+(F==m?"end of input":"'"+(this.terminals_[F]||F)+"'");this.parseError(P,{text:D.match,token:this.terminals_[F]||F,line:D.yylineno,loc:k,expected:O})}if(L[0]instanceof Array&&L.length>1)throw Error("Parse Error: multiple actions possible at state: "+R+", token: "+F);switch(L[0]){case 1:if(l.push(F),C.push(D.yytext),B.push(D.yylloc),l.push(L[1]),F=null,!T){if(h=D.yyleng,d=D.yytext,I=D.yylineno,k=D.yylloc,Q>0)Q--}else F=T,T=null;break;case 2:if(J=this.productions_[L[1]][1],Y.$=C[C.length-J],Y._$={first_line:B[B.length-(J||1)].first_line,last_line:B[B.length-1].last_line,first_column:B[B.length-(J||1)].first_column,last_column:B[B.length-1].last_column},v)Y._$.range=[B[B.length-(J||1)].range[0],B[B.length-1].range[1]];if(U=this.performAction.apply(Y,[d,h,I,w.yy,L[1],C,B].concat(f)),typeof U<"u")return U;if(J)l=l.slice(0,-1*J*2),C=C.slice(0,-1*J),B=B.slice(0,-1*J);l.push(this.productions_[L[1]][0]),C.push(Y.$),B.push(Y._$),K=E[l[l.length-2]][l[l.length-1]],l.push(K);break;case 3:return!0}}return!0},"parse")},u=function(){var n={EOF:1,parseError:y(function(s,l){if(this.yy.parser)this.yy.parser.parseError(s,l);else throw Error(s)},"parseError"),setInput:y(function(o,s){if(this.yy=s||this.yy||{},this._input=o,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var s=o.match(/(?:\r\n?|\n).*/g);if(s)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),o},"input"),unput:y(function(o){var s=o.length,l=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-s),this.offset-=s;var g=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),l.length-1)this.yylineno-=l.length-1;var C=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:l?(l.length===g.length?this.yylloc.first_column:0)+g[g.length-l.length].length-l[0].length:this.yylloc.first_column-s},this.options.ranges)this.yylloc.range=[C[0],C[0]+this.yyleng-s];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(o){this.unput(this.match.slice(o))},"less"),pastInput:y(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var o=this.match;if(o.length<20)o+=this._input.substr(0,20-o.length);return(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var o=this.pastInput(),s=Array(o.length+1).join("-");return o+this.upcomingInput()+`
`+s+"^"},"showPosition"),test_match:y(function(o,s){var l,g,C;if(this.options.backtrack_lexer){if(C={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)C.yylloc.range=this.yylloc.range.slice(0)}if(g=o[0].match(/(?:\r\n?|\n).*/g),g)this.yylineno+=g.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:g?g[g.length-1].length-g[g.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],l=this.performAction.call(this,this.yy,this,s,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(l)return l;else if(this._backtrack){for(var B in C)this[B]=C[B];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var o,s,l,g;if(!this._more)this.yytext="",this.match="";var C=this._currentRules();for(var B=0;B<C.length;B++)if(l=this._input.match(this.rules[C[B]]),l&&(!s||l[0].length>s[0].length)){if(s=l,g=B,this.options.backtrack_lexer)if(o=this.test_match(l,C[B]),o!==!1)return o;else if(this._backtrack){s=!1;continue}else return!1;else if(!this.options.flex)break}if(s){if(o=this.test_match(s,C[g]),o!==!1)return o;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var s=this.next();if(s)return s;else return this.lex()},"lex"),begin:y(function(s){this.conditionStack.push(s)},"begin"),popState:y(function(){var s=this.conditionStack.length-1;if(s>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(s){if(s=this.conditionStack.length-1-Math.abs(s||0),s>=0)return this.conditionStack[s];else return"INITIAL"},"topState"),pushState:y(function(s){this.begin(s)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(s,l,g,C){var B=C;switch(g){case 0:return this.pushState("csv"),4;break;case 1:return this.pushState("csv"),4;break;case 2:return 10;case 3:return 5;case 4:return 12;case 5:return this.pushState("escaped_text"),18;break;case 6:return 20;case 7:return this.popState("escaped_text"),18;break;case 8:return 19}},"anonymous"),rules:[/^(?:sankey-beta\b)/i,/^(?:sankey\b)/i,/^(?:$)/i,/^(?:((\u000D\u000A)|(\u000A)))/i,/^(?:(\u002C))/i,/^(?:(\u0022))/i,/^(?:([\u0020-\u0021\u0023-\u002B\u002D-\u007E])*)/i,/^(?:(\u0022)(?!(\u0022)))/i,/^(?:(([\u0020-\u0021\u0023-\u002B\u002D-\u007E])|(\u002C)|(\u000D)|(\u000A)|(\u0022)(\u0022))*)/i],conditions:{csv:{rules:[2,3,4,5,6,7,8],inclusive:!1},escaped_text:{rules:[7,8],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8],inclusive:!0}}};return n}();i.lexer=u;function a(){this.yy={}}return y(a,"Parser"),a.prototype=i,i.Parser=a,new a}();VCA.parser=VCA;YO=VCA,KO=[],JO=[],HO=new Map,HUt=y(()=>{KO=[],JO=[],HO=new Map,cr()},"clear"),KUt=class{constructor(A,e,t=0){this.source=A,this.target=e,this.value=t}static{y(this,"SankeyLink")}},JUt=y((A,e,t)=>{KO.push(new KUt(A,e,t))},"addLink"),OUt=class{constructor(A){this.ID=A}static{y(this,"SankeyNode")}},PUt=y((A)=>{A=_e.sanitizeText(A,OA());let e=HO.get(A);if(e===void 0)e=new OUt(A),HO.set(A,e),JO.push(e);return e},"findOrCreateNode"),_Ut=y(()=>JO,"getNodes"),WUt=y(()=>KO,"getLinks"),qUt=y(()=>({nodes:JO.map((A)=>({id:A.ID})),links:KO.map((A)=>({source:A.source.ID,target:A.target.ID,value:A.value}))}),"getGraph"),zUt={nodesMap:HO,getConfig:y(()=>OA().sankey,"getConfig"),getNodes:_Ut,getLinks:WUt,getGraph:qUt,addLink:JUt,findOrCreateNode:PUt,getAccTitle:kr,setAccTitle:Dr,getAccDescription:xr,setAccDescription:Fr,getDiagramTitle:Sr,setDiagramTitle:Tr,clear:HUt},wae=class A{static{y(this,"Uid")}static{this.count=0}static next(e){return new A(e+ ++A.count)}constructor(e){this.id=e,this.href=`#${e}`}toString(){return"url("+this.href+")"}},ZUt={left:HCA,right:KCA,center:JCA,justify:o7},VUt=y((A)=>{let e=0,t=0;for(let r of A){let i=r.value??0;if(i>e)e=i,t=r.layer??0}return t},"findCentralNodeLayer"),jUt=y(function(A,e,t,r){let{securityLevel:i,sankey:u}=OA(),a=HR.sankey,n;if(i==="sandbox")n=Qe("#i"+e);let o=i==="sandbox"?Qe(n.nodes()[0].contentDocument.body):Qe("body"),s=i==="sandbox"?o.select(`[id="${e}"]`):Qe(`[id="${e}"]`),l=u?.width??a.width,g=u?.height??a.width,C=u?.useMaxWidth??a.useMaxWidth,B=u?.nodeAlignment??a.nodeAlignment,E=u?.prefix??a.prefix,d=u?.suffix??a.suffix,I=u?.showValues??a.showValues,h=u?.nodeWidth??a.nodeWidth??10,Q=u?.nodePadding??a.nodePadding??12,p=u?.labelStyle??a.labelStyle??"legacy",m=u?.nodeColors??{},f=r.db.getGraph(),D=ZUt[B];UO().nodeId((U)=>U.id).nodeWidth(h).nodePadding(Q+(I?15:0)).nodeAlign(D).extent([[0,0],[l,g]])(f);let b=VUt(f.nodes),k=jl(V$),v=y((U)=>m[U]??k(U),"getNodeColor");s.append("g").attr("class","nodes").selectAll(".node").data(f.nodes).join("g").attr("class","node").attr("id",(U)=>(U.uid=wae.next("node-")).id).attr("transform",function(U){return"translate("+U.x0+","+U.y0+")"}).attr("x",(U)=>U.x0).attr("y",(U)=>U.y0).append("rect").attr("height",(U)=>U.y1-U.y0).attr("width",(U)=>U.x1-U.x0).attr("fill",(U)=>v(U.id));let S=y(({id:U,value:Y})=>{if(!I)return U;return`${U}
${E}${Math.round(Y*100)/100}${d}`},"getText"),x=y((U)=>{if(p==="outlined"){if((U.layer??0)<b)return{x:U.x0-6,anchor:"end"};return{x:U.x1+6,anchor:"start"}}if(U.x0<l/2)return{x:U.x1+6,anchor:"start"};return{x:U.x0-6,anchor:"end"}},"getLabelPosition"),F=s.append("g").attr("class","node-labels").attr("font-size",14),T=y((U)=>F.selectAll(U?`.${U}`:"text").data(f.nodes).join("text").attr("class",U??null).attr("x",(Y)=>x(Y).x).attr("y",(Y)=>(Y.y1+Y.y0)/2).attr("dy",`${I?"0":"0.35"}em`).attr("text-anchor",(Y)=>x(Y).anchor).text(S),"appendLabel");if(p==="outlined")T("sankey-label-bg"),T("sankey-label-fg");else T();let R=s.append("g").attr("class","links").attr("fill","none").attr("stroke-opacity",0.5).selectAll(".link").data(f.links).join("g").attr("class","link").style("mix-blend-mode","multiply"),L=u?.linkColor??"gradient";if(L==="gradient"){let U=R.append("linearGradient").attr("id",(Y)=>(Y.uid=wae.next("linearGradient-")).id).attr("gradientUnits","userSpaceOnUse").attr("x1",(Y)=>Y.source.x1).attr("x2",(Y)=>Y.target.x0);U.append("stop").attr("offset","0%").attr("stop-color",(Y)=>v(Y.source.id)),U.append("stop").attr("offset","100%").attr("stop-color",(Y)=>v(Y.target.id))}let M;switch(L){case"gradient":M=y((U)=>U.uid,"coloring");break;case"source":M=y((U)=>v(U.source.id),"coloring");break;case"target":M=y((U)=>v(U.target.id),"coloring");break;default:M=L}R.append("path").attr("d",TO()).attr("stroke",M).attr("stroke-width",(U)=>Math.max(1,U.width)),PB(void 0,s,0,C)},"draw"),XUt={draw:jUt},$Ut=y((A)=>A.replaceAll(/^[^\S\n\r]+|[^\S\n\r]+$/g,"").replaceAll(/([\n\r])+/g,`
`).trim(),"prepareTextForParsing"),AMt=y((A)=>`.label {
font-family: ${A.fontFamily};
}
.node-labels {
font-family: ${A.fontFamily};
}
/* Outlined label style - background stroke for better readability */
.sankey-label-bg {
stroke: ${A.mainBkg||A.background||"#fff"};
stroke-width: 4px;
stroke-linejoin: round;
paint-order: stroke;
}
/* Foreground label text */
.sankey-label-fg {
fill: ${A.textColor};
}
/* Node styling */
.node rect {
shape-rendering: crispEdges;
}
/* Link styling */
.link {
fill: none;
stroke-opacity: 0.5;
mix-blend-mode: multiply;
}
`,"getStyles"),eMt=AMt,tMt=YO.parse.bind(YO);YO.parse=(A)=>tMt($Ut(A));bae={styles:eMt,parser:YO,db:zUt,renderer:XUt}});var rMt,kae,iMt=1e4,uMt,aMt,Fae,nMt,oMt,sMt,lMt,gMt,xae;var Sae=_(()=>{ms();cn();ai();rr();ir();Nt();I0();rMt=ur.packet,kae=class{constructor(){this.packet=[],this.setAccTitle=Dr,this.getAccTitle=kr,this.setDiagramTitle=Tr,this.getDiagramTitle=Sr,this.getAccDescription=xr,this.setAccDescription=Fr}static{y(this,"PacketDB")}getConfig(){let A=si({...rMt,...ot().packet});if(A.showBits)A.paddingY+=10;return A}getPacket(){return this.packet}pushWord(A){if(A.length>0)this.packet.push(A)}clear(){cr(),this.packet=[]}},uMt=y((A,e)=>{hu(A,e);let t=-1,r=[],i=1,{bitsPerRow:u}=e.getConfig();for(let{start:a,end:n,bits:o,label:s}of A.blocks){if(a!==void 0&&n!==void 0&&n<a)throw Error(`Packet block ${a} - ${n} is invalid. End must be greater than start.`);if(a??=t+1,a!==t+1)throw Error(`Packet block ${a} - ${n??a} is not contiguous. It should start from ${t+1}.`);if(o===0)throw Error(`Packet block ${a} is invalid. Cannot have a zero bit field.`);n??=a+(o??1)-1,o??=n-a+1,t=n,sA.debug(`Packet block ${a} - ${t} with label ${s}`);while(r.length<=u+1&&e.getPacket().length<iMt){let[l,g]=aMt({start:a,end:n,bits:o,label:s},i,u);if(r.push(l),l.end+1===i*u)e.pushWord(r),r=[],i++;if(!g)break;({start:a,end:n,bits:o,label:s}=g)}}e.pushWord(r)},"populate"),aMt=y((A,e,t)=>{if(A.start===void 0)throw Error("start should have been set during first phase");if(A.end===void 0)throw Error("end should have been set during first phase");if(A.start>A.end)throw Error(`Block start ${A.start} is greater than block end ${A.end}.`);if(A.end+1<=e*t)return[A,void 0];let r=e*t-1,i=e*t;return[{start:A.start,end:r,label:A.label,bits:r-A.start},{start:i,end:A.end,label:A.label,bits:A.end-i}]},"getNextFittingBlock"),Fae={parser:{yy:void 0},parse:y(async(A)=>{let e=await Ga("packet",A),t=Fae.parser?.yy;if(!(t instanceof kae))throw Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");sA.debug(e),uMt(e,t)},"parse")},nMt=y((A,e,t,r)=>{let i=r.db,u=i.getConfig(),{rowHeight:a,paddingY:n,bitWidth:o,bitsPerRow:s}=u,l=i.getPacket(),g=i.getDiagramTitle(),C=a+n,B=C*(l.length+1)-(g?0:a),E=o*s+2,d=zi(e);d.attr("viewBox",`0 0 ${E} ${B}`),Xr(d,B,E,u.useMaxWidth);for(let[I,h]of l.entries())oMt(d,h,I,u);d.append("text").text(g).attr("x",E/2).attr("y",B-C/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),oMt=y((A,e,t,{rowHeight:r,paddingX:i,paddingY:u,bitWidth:a,bitsPerRow:n,showBits:o})=>{let s=A.append("g"),l=t*(r+u)+u;for(let g of e){let C=g.start%n*a+1,B=(g.end-g.start+1)*a-i;if(s.append("rect").attr("x",C).attr("y",l).attr("width",B).attr("height",r).attr("class","packetBlock"),s.append("text").attr("x",C+B/2).attr("y",l+r/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(g.label),!o)continue;let E=g.end===g.start,d=l-2;if(s.append("text").attr("x",C+(E?B/2:0)).attr("y",d).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",E?"middle":"start").text(g.start),!E)s.append("text").attr("x",C+B).attr("y",d).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(g.end)}},"drawWord"),sMt={draw:nMt},lMt={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},gMt=y(({packet:A}={})=>{let e=si(lMt,A);return`
.packetByte {
font-size: ${e.byteFontSize};
}
.packetByte.start {
fill: ${e.startByteColor};
}
.packetByte.end {
fill: ${e.endByteColor};
}
.packetLabel {
fill: ${e.labelColor};
font-size: ${e.labelFontSize};
}
.packetTitle {
fill: ${e.titleColor};
font-size: ${e.titleFontSize};
}
.packetBlock {
stroke: ${e.blockStrokeColor};
stroke-width: ${e.blockStrokeWidth};
fill: ${e.blockFillColor};
}
`},"styles"),xae={parser:Fae,get db(){return new kae},renderer:sMt,styles:gMt}});function Nae(A,e,t,r,i,u,a){let n=e.length,o=Math.min(a.width,a.height)/2;t.forEach((s,l)=>{if(s.entries.length!==n)return;let g=s.entries.map((C,B)=>{let E=2*Math.PI*B/n-Math.PI/2,d=Gae(C,r,i,o),I=d*Math.cos(E),h=d*Math.sin(E);return{x:I,y:h}});if(u==="circle")A.append("path").attr("d",Uae(g,a.curveTension)).attr("class",`radarCurve-${l}`);else if(u==="polygon")A.append("polygon").attr("points",g.map((C)=>`${C.x},${C.y}`).join(" ")).attr("class",`radarCurve-${l}`)})}function Gae(A,e,t,r){let i=Math.min(Math.max(A,e),t);return r*(i-e)/(t-e)}function Uae(A,e){let t=A.length,r=`M${A[0].x},${A[0].y}`;for(let i=0;i<t;i++){let u=A[(i-1+t)%t],a=A[i],n=A[(i+1)%t],o=A[(i+2)%t],s={x:a.x+(n.x-u.x)*e,y:a.y+(n.y-u.y)*e},l={x:n.x-(o.x-a.x)*e,y:n.y-(o.y-a.y)*e};r+=` C${s.x},${s.y} ${l.x},${l.y} ${n.x},${n.y}`}return`${r} Z`}function Mae(A,e,t,r){if(!t)return;let i=(r.width/2+r.marginRight)*3/4,u=-(r.height/2+r.marginTop)*3/4,a=20;e.forEach((n,o)=>{let s=A.append("g").attr("transform",`translate(${i}, ${u+o*a})`);s.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${o}`),s.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(n.label)})}var y6,OO=32,Lae,WE,cMt,CMt,Rae,BMt,EMt,dMt,IMt,hMt,QMt,pMt,s7,fMt,mMt,DMt,yMt,wMt,bMt,vMt,kMt,FMt,xMt,Tae;var Yae=_(()=>{ms();cn();ai();rr();ir();Nt();I0();y6={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},Lae={axes:[],curves:[],options:y6},WE=structuredClone(Lae),cMt=ur.radar,CMt=y(()=>si({...cMt,...ot().radar}),"getConfig"),Rae=y(()=>WE.axes,"getAxes"),BMt=y(()=>WE.curves,"getCurves"),EMt=y(()=>WE.options,"getOptions"),dMt=y((A)=>{WE.axes=A.map((e)=>({name:e.name,label:e.label??e.name}))},"setAxes"),IMt=y((A)=>{WE.curves=A.map((e)=>({name:e.name,label:e.label??e.name,entries:hMt(e.entries)}))},"setCurves"),hMt=y((A)=>{if(A[0].axis==null)return A.map((t)=>t.value);let e=Rae();if(e.length===0)throw Error("Axes must be populated before curves for reference entries");return e.map((t)=>{let r=A.find((i)=>i.axis?.$refText===t.name);if(r===void 0)throw Error("Missing entry for axis "+t.label);return r.value})},"computeCurveEntries"),QMt=y((A)=>{let e=A.reduce((t,r)=>(t[r.name]=r,t),{});if(WE.options={showLegend:e.showLegend?.value??y6.showLegend,ticks:e.ticks?.value??y6.ticks,max:e.max?.value??y6.max,min:e.min?.value??y6.min,graticule:e.graticule?.value??y6.graticule},WE.options.ticks>OO)sA.warn(`Radar diagram ticks (${WE.options.ticks}) exceeds maximum allowed (${OO}). Using ${OO} instead.`),WE.options.ticks=OO},"setOptions"),pMt=y(()=>{cr(),WE=structuredClone(Lae)},"clear"),s7={getAxes:Rae,getCurves:BMt,getOptions:EMt,setAxes:dMt,setCurves:IMt,setOptions:QMt,getConfig:CMt,clear:pMt,setAccTitle:Dr,getAccTitle:kr,setDiagramTitle:Tr,getDiagramTitle:Sr,getAccDescription:xr,setAccDescription:Fr},fMt=y((A)=>{hu(A,s7);let{axes:e,curves:t,options:r}=A;s7.setAxes(e),s7.setCurves(t),s7.setOptions(r)},"populate"),mMt={parse:y(async(A)=>{let e=await Ga("radar",A);sA.debug(e),fMt(e)},"parse")},DMt=y((A,e,t,r)=>{let i=r.db,u=i.getAxes(),a=i.getCurves(),n=i.getOptions(),o=i.getConfig(),s=i.getDiagramTitle(),l=zi(e),g=yMt(l,o),C=n.max??Math.max(...a.map((d)=>Math.max(...d.entries))),B=n.min,E=Math.min(o.width,o.height)/2;wMt(g,u,E,n.ticks,n.graticule),bMt(g,u,E,o),Nae(g,u,a,B,C,n.graticule,o),Mae(g,a,n.showLegend,o),g.append("text").attr("class","radarTitle").text(s).attr("x",0).attr("y",-o.height/2-o.marginTop)},"draw"),yMt=y((A,e)=>{let t=e.width+e.marginLeft+e.marginRight,r=e.height+e.marginTop+e.marginBottom,i={x:e.marginLeft+e.width/2,y:e.marginTop+e.height/2};return Xr(A,r,t,e.useMaxWidth??!0),A.attr("viewBox",`0 0 ${t} ${r}`).attr("overflow","visible"),A.append("g").attr("transform",`translate(${i.x}, ${i.y})`)},"drawFrame"),wMt=y((A,e,t,r,i)=>{if(i==="circle")for(let u=0;u<r;u++){let a=t*(u+1)/r;A.append("circle").attr("r",a).attr("class","radarGraticule")}else if(i==="polygon"){let u=e.length;for(let a=0;a<r;a++){let n=t*(a+1)/r,o=e.map((s,l)=>{let g=2*l*Math.PI/u-Math.PI/2,C=n*Math.cos(g),B=n*Math.sin(g);return`${C},${B}`}).join(" ");A.append("polygon").attr("points",o).attr("class","radarGraticule")}}},"drawGraticule"),bMt=y((A,e,t,r)=>{let i=e.length;for(let u=0;u<i;u++){let a=e[u].label,n=2*u*Math.PI/i-Math.PI/2,o=Math.cos(n),s=Math.sin(n);A.append("line").attr("x1",0).attr("y1",0).attr("x2",t*r.axisScaleFactor*o).attr("y2",t*r.axisScaleFactor*s).attr("class","radarAxisLine");let l=o>0.01?"start":o<-0.01?"end":"middle",g=s>0.01?"hanging":s<-0.01?"auto":"central",C=4;A.append("text").text(a).attr("x",t*r.axisLabelFactor*o+C*o).attr("y",t*r.axisLabelFactor*s+C*s).attr("text-anchor",l).attr("dominant-baseline",g).attr("class","radarAxisLabel")}},"drawAxes");y(Nae,"drawCurves");y(Gae,"relativeRadius");y(Uae,"closedRoundCurve");y(Mae,"drawLegend");vMt={draw:DMt},kMt=y((A,e)=>{let t="";for(let r=0;r<A.THEME_COLOR_LIMIT;r++){let i=A[`cScale${r}`];t+=`
.radarCurve-${r} {
color: ${i};
fill: ${i};
fill-opacity: ${e.curveOpacity};
stroke: ${i};
stroke-width: ${e.curveStrokeWidth};
}
.radarLegendBox-${r} {
fill: ${i};
fill-opacity: ${e.curveOpacity};
stroke: ${i};
}
`}return t},"genIndexStyles"),FMt=y((A)=>{let e=L0(),t=ot(),r=si(e,t.themeVariables),i=si(r.radar,A);return{themeVariables:r,radarOptions:i}},"buildRadarStyleOptions"),xMt=y(({radar:A}={})=>{let{themeVariables:e,radarOptions:t}=FMt(A);return`
.radarTitle {
font-size: ${e.fontSize};
color: ${e.titleColor};
dominant-baseline: hanging;
text-anchor: middle;
}
.radarAxisLine {
stroke: ${t.axisColor};
stroke-width: ${t.axisStrokeWidth};
}
.radarAxisLabel {
font-size: ${t.axisLabelFontSize}px;
color: ${t.axisColor};
}
.radarGraticule {
fill: ${t.graticuleColor};
fill-opacity: ${t.graticuleOpacity};
stroke: ${t.graticuleColor};
stroke-width: ${t.graticuleStrokeWidth};
}
.radarLegendText {
text-anchor: start;
font-size: ${t.legendFontSize}px;
dominant-baseline: hanging;
}
${kMt(e,t)}
`},"styles"),Tae={parser:mMt,db:s7,renderer:vMt,styles:xMt}});function jae(A){switch(sA.debug("typeStr2Type",A),A){case"[]":return"square";case"()":return sA.debug("we have a round"),"round";case"(())":return"circle";case">]":return"rect_left_inv_arrow";case"{}":return"diamond";case"{{}}":return"hexagon";case"([])":return"stadium";case"[[]]":return"subroutine";case"[()]":return"cylinder";case"((()))":return"doublecircle";case"[//]":return"lean_right";case"[\\\\]":return"lean_left";case"[/\\]":return"trapezoid";case"[\\/]":return"inv_trapezoid";case"<[]>":return"block_arrow";default:return"na"}}function Xae(A){switch(sA.debug("typeStr2Type",A),A){case"==":return"thick";default:return"normal"}}function $ae(A){switch(A.trim().slice(-1)){case"x":return"arrow_cross";case"o":return"arrow_circle";case">":return"arrow_point";default:return""}}function Ane(A){switch(A.trim().charAt(0)){case"x":return"arrow_cross";case"o":return"arrow_circle";case"<":return"arrow_point";default:return"arrow_open"}}function ene(A){return A.includes("==")?"thick":"normal"}function tne(A){if(A.includes(".-"))return"dotted";return"solid"}function ABA(A,e){if(A===0||!Number.isInteger(A))throw Error("Columns must be an integer !== 0.");if(e<0||!Number.isInteger(e))throw Error("Position must be a non-negative integer."+e);if(A<0)return{px:e,py:0};if(A===1)return{px:0,py:e};let t=e%A,r=Math.floor(e/A);return{px:t,py:r}}function WO(A,e,t=0,r=0,i=8){if(sA.debug("setBlockSizes abc95 (start)",A.id,A?.size?.x,"block width =",A?.size,"siblingWidth",t),!A?.size?.width)A.size={width:t,height:r,x:0,y:0};let u=0,a=0;if(A.children?.length>0){for(let E of A.children)WO(E,e,0,0,i);let n=cTt(A);u=n.width,a=n.height,sA.debug("setBlockSizes abc95 maxWidth of",A.id,":s children is ",u,a);for(let E of A.children)if(E.size)sA.debug(`abc95 Setting size of children of ${A.id} id=${E.id} ${u} ${a} ${JSON.stringify(E.size)}`),E.size.width=u*(E.widthInColumns??1)+i*((E.widthInColumns??1)-1),E.size.height=a,E.size.x=0,E.size.y=0,sA.debug(`abc95 updating size of ${A.id} children child:${E.id} maxWidth:${u} maxHeight:${a}`);for(let E of A.children)WO(E,e,u,a,i);let o=A.columns??-1,s=0;for(let E of A.children)s+=E.widthInColumns??1;let l=A.children.length;if(o>0&&o<s)l=o;let g=Math.ceil(s/l),C=l*(u+i)+i,B=g*(a+i)+i;if(C<t){sA.debug(`Detected to small sibling: abc95 ${A.id} siblingWidth ${t} siblingHeight ${r} width ${C}`),C=t,B=r;let E=(t-l*i-i)/l,d=(r-g*i-i)/g;sA.debug("Size indata abc88",A.id,"childWidth",E,"maxWidth",u),sA.debug("Size indata abc88",A.id,"childHeight",d,"maxHeight",a),sA.debug("Size indata abc88 xSize",l,"padding",i);for(let I of A.children)if(I.size)I.size.width=E,I.size.height=d,I.size.x=0,I.size.y=0}if(sA.debug(`abc95 (finale calc) ${A.id} xSize ${l} ySize ${g} columns ${o}${A.children.length} width=${Math.max(C,A.size?.width||0)}`),C<(A?.size?.width||0)){C=A?.size?.width||0;let E=o>0?Math.min(A.children.length,o):A.children.length;if(E>0){let d=(C-E*i-i)/E;sA.debug("abc95 (growing to fit) width",A.id,C,A.size?.width,d);for(let I of A.children)if(I.size)I.size.width=d}}A.size={width:C,height:B,x:0,y:0}}sA.debug("setBlockSizes abc94 (done)",A.id,A?.size?.x,A?.size?.width,A?.size?.y,A?.size?.height)}function aBA(A,e,t=8){sA.debug(`abc85 layout blocks (=>layoutBlocks) ${A.id} x: ${A?.size?.x} y: ${A?.size?.y} width: ${A?.size?.width}`);let r=A.columns??-1;if(sA.debug("layoutBlocks columns abc95",A.id,"=>",r,A),A.children&&A.children.length>0){let i=A?.children[0]?.size?.width??0,u=A.children.length*i+(A.children.length-1)*t;sA.debug("widthOfChildren 88",u,"posX");let a=new Map;{let g=0;for(let C of A.children){if(!C.size)continue;let{py:B}=ABA(r,g),E=a.get(B)??0;if(C.size.height>E)a.set(B,C.size.height);let d=C?.widthInColumns??1;if(r>0)d=Math.min(d,r-g%r);g+=d}}let n=new Map;{let g=0,C=[...a.keys()].sort((B,E)=>B-E);for(let B of C)n.set(B,g),g+=(a.get(B)??0)+t}let o=0;sA.debug("abc91 block?.size?.x",A.id,A?.size?.x);let s=A?.size?.x?A?.size?.x+(-A?.size?.width/2||0):-t,l=0;for(let g of A.children){let C=A;if(!g.size)continue;let{width:B,height:E}=g.size,{px:d,py:I}=ABA(r,o);if(I!=l)l=I,s=A?.size?.x?A?.size?.x+(-A?.size?.width/2||0):-t,sA.debug("New row in layout for block",A.id," and child ",g.id,l);if(sA.debug(`abc89 layout blocks (child) id: ${g.id} Pos: ${o} (px, py) ${d},${I} (${C?.size?.x},${C?.size?.y}) parent: ${C.id} width: ${B}${t}`),C.size){let Q=B/2;g.size.x=s+t+Q,sA.debug(`abc91 layout blocks (calc) px, pyid:${g.id} startingPos=X${s} new startingPosX${g.size.x} ${Q} padding=${t} width=${B} halfWidth=${Q} => x:${g.size.x} y:${g.size.y} ${g.widthInColumns} (width * (child?.w || 1)) / 2 ${B*(g?.widthInColumns??1)/2}`),s=g.size.x+Q;let p=n.get(I)??0,m=a.get(I)??E;g.size.y=C.size.y-C.size.height/2+p+m/2+t,sA.debug(`abc88 layout blocks (calc) px, pyid:${g.id}startingPosX${s}${t}${Q}=>x:${g.size.x}y:${g.size.y}${g.widthInColumns}(width * (child?.w || 1)) / 2${B*(g?.widthInColumns??1)/2}`)}if(g.children)aBA(g,e,t);let h=g?.widthInColumns??1;if(r>0)h=Math.min(h,r-o%r);o+=h,sA.debug("abc88 columnsPos",g,o)}}sA.debug(`layout blocks (<==layoutBlocks) ${A.id} x: ${A?.size?.x} y: ${A?.size?.y} width: ${A?.size?.width}`)}function nBA(A,{minX:e,minY:t,maxX:r,maxY:i}={minX:0,minY:0,maxX:0,maxY:0}){if(A.size&&A.id!=="root"){let{x:u,y:a,width:n,height:o}=A.size;if(u-n/2<e)e=u-n/2;if(a-o/2<t)t=a-o/2;if(u+n/2>r)r=u+n/2;if(a+o/2>i)i=a+o/2}if(A.children)for(let u of A.children)({minX:e,minY:t,maxX:r,maxY:i}=nBA(u,{minX:e,minY:t,maxX:r,maxY:i}));return{minX:e,minY:t,maxX:r,maxY:i}}function rne(A){let e=A.getBlock("root");if(!e)return;let t=OA()?.block?.padding??8;WO(e,A,0,0,t),aBA(e,A,t),sA.debug("getBlocks",JSON.stringify(e,null,2));let{minX:r,minY:i,maxX:u,maxY:a}=nBA(e),n=a-i,o=u-r;return{x:r,y:i,width:o,height:n}}function l7(A,e){if(Fi(OA())&&A)A.style.width=e.length*9+"px",A.style.height="12px"}function ine(A,e){return A.intersect(e)}function une(A,e,t,r){var{x:i,y:u}=A,a=i-r.x,n=u-r.y,o=Math.sqrt(e*e*n*n+t*t*a*a),s=Math.abs(e*t*a/o);if(r.x<i)s=-s;var l=Math.abs(e*t*n/o);if(r.y<u)l=-l;return{x:i+s,y:u+l}}function nne(A,e,t){return ane(A,e,e,t)}function one(A,e,t,r){var i,u,a,n,o,s,l,g,C,B,E,d,I,h,Q;if(i=e.y-A.y,a=A.x-e.x,o=e.x*A.y-A.x*e.y,C=i*t.x+a*t.y+o,B=i*r.x+a*r.y+o,C!==0&&B!==0&&tBA(C,B))return;if(u=r.y-t.y,n=t.x-r.x,s=r.x*t.y-t.x*r.y,l=u*A.x+n*A.y+s,g=u*e.x+n*e.y+s,l!==0&&g!==0&&tBA(l,g))return;if(E=i*n-u*a,E===0)return;return d=Math.abs(E/2),I=a*s-n*o,h=I<0?(I-d)/E:(I+d)/E,I=u*o-i*s,Q=I<0?(I-d)/E:(I+d)/E,{x:h,y:Q}}function tBA(A,e){return A*e>0}function sne(A,e,t){var{x:r,y:i}=A,u=[],{POSITIVE_INFINITY:a,POSITIVE_INFINITY:n}=Number;if(typeof e.forEach==="function")e.forEach(function(E){a=Math.min(a,E.x),n=Math.min(n,E.y)});else a=Math.min(a,e.x),n=Math.min(n,e.y);var o=r-A.width/2-a,s=i-A.height/2-n;for(var l=0;l<e.length;l++){var g=e[l],C=e[l<e.length-1?l+1:0],B=wTt(A,t,{x:o+g.x,y:s+g.y},{x:o+C.x,y:s+C.y});if(B)u.push(B)}if(!u.length)return A;if(u.length>1)u.sort(function(E,d){var I=E.x-t.x,h=E.y-t.y,Q=Math.sqrt(I*I+h*h),p=d.x-t.x,m=d.y-t.y,f=Math.sqrt(p*p+m*m);return Q<f?-1:Q===f?0:1});return u[0]}function YC(A,e,t,r){return A.insert("polygon",":first-child").attr("points",r.map(function(i){return i.x+","+i.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-e/2+","+t/2+")")}function qO(A,e,t,r){let i=[],u=y((n)=>{i.push(n,0)},"addBorder"),a=y((n)=>{i.push(0,n)},"skipBorder");if(e.includes("t"))sA.debug("add top border"),u(t);else a(t);if(e.includes("r"))sA.debug("add right border"),u(r);else a(r);if(e.includes("b"))sA.debug("add bottom border"),u(t);else a(t);if(e.includes("l"))sA.debug("add left border"),u(r);else a(r);A.attr("stroke-dasharray",i.join(" "))}function oBA(A,e,t=!1){let r=A,i="default";if((r?.classes?.length||0)>0)i=(r?.classes??[]).join(" ");i=i+" flowchart-label";let u=0,a="",n;switch(r.type){case"round":u=5,a="rect";break;case"composite":u=0,a="composite",n=0;break;case"square":a="rect";break;case"diamond":a="question";break;case"hexagon":a="hexagon";break;case"block_arrow":a="block_arrow";break;case"odd":a="rect_left_inv_arrow";break;case"lean_right":a="lean_right";break;case"lean_left":a="lean_left";break;case"trapezoid":a="trapezoid";break;case"inv_trapezoid":a="inv_trapezoid";break;case"rect_left_inv_arrow":a="rect_left_inv_arrow";break;case"circle":a="circle";break;case"ellipse":a="ellipse";break;case"stadium":a="stadium";break;case"subroutine":a="subroutine";break;case"cylinder":a="cylinder";break;case"group":a="rect";break;case"doublecircle":a="doublecircle";break;default:a="rect"}let o=OG(r?.styles??[]),s=r.label,l=r.size??{width:0,height:0,x:0,y:0},g=e.getDiagramId();return{labelStyle:o.labelStyle,shape:a,labelText:s,rx:u,ry:u,class:i,style:o.style,id:r.id,domId:g?`${g}-${r.id}`:r.id,directions:r.directions,width:l.width,height:l.height,x:l.x,y:l.y,positioned:t,intersect:void 0,type:r.type,padding:n??ot()?.block?.padding??0,widthInColumns:r.widthInColumns??1}}async function gne(A,e,t){let r=oBA(e,t,!1);if(r.type==="group")return;let i=ot(),u=await lne(A,r,{config:i}),a=u.node().getBBox(),n=t.getBlock(r.id);n.size={width:a.width,height:a.height,x:0,y:0,node:u},t.setBlock(n),u.remove()}async function cne(A,e,t){let r=oBA(e,t,!0);if(t.getBlock(r.id).type!=="space"){let u=ot();await lne(A,r,{config:u}),e.intersect=r?.intersect,XTt(r)}}async function zO(A,e,t,r){for(let i of e)if(await r(A,i,t),i.children)await zO(A,i.children,t,r)}async function Cne(A,e,t){await zO(A,e,t,gne)}async function Bne(A,e,t){await zO(A,e,t,cne)}async function Ene(A,e,t,r,i){let u=new ji({multigraph:!0,compound:!0});u.setGraph({rankdir:"TB",nodesep:10,ranksep:10,marginx:8,marginy:8});for(let a of t)if(a.size)u.setNode(a.id,{width:a.size.width,height:a.size.height,intersect:a.intersect});for(let a of e)if(a.start&&a.end){let n=r.getBlock(a.start),o=r.getBlock(a.end);if(n?.size&&o?.size){let s=n.size,l=o.size,g=[{x:s.x,y:s.y},{x:s.x+(l.x-s.x)/2,y:s.y+(l.y-s.y)/2},{x:l.x,y:l.y}],C=i?`${i}-${a.id}`:a.id,B=a.thickness==="thick"?"edge-thickness-thick":"edge-thickness-normal",E=a.pattern==="dotted"?"edge-pattern-dotted":"edge-pattern-solid",d=`${B} ${E} flowchart-link LS-a1 LE-b1`;if(pTt(A,{v:a.start,w:a.end,name:C},{...a,id:C,arrowTypeEnd:a.arrowTypeEnd,arrowTypeStart:a.arrowTypeStart,points:g,classes:d},void 0,"block",u,i),a.label)await dTt(A,{...a,label:a.label,labelStyle:"stroke: #333; stroke-width: 1.5px;fill:none;",arrowTypeEnd:a.arrowTypeEnd,arrowTypeStart:a.arrowTypeStart,points:g,classes:d}),ITt({...a,x:g[1].x,y:g[1].y},{originalPath:g})}}}var XCA,SMt,TC,rBA,$CA,Hae="color",Kae="fill",LMt="bgFill",Zae=",",_O,iBA="",RMt,NMt,GMt,UMt,Vae,uBA,g7,MMt,Jae=0,TMt,YMt,HMt,KMt,JMt,OMt,PMt,_Mt,WMt,qMt,zMt,ZMt,VMt,jMt,jCA,XMt,$Mt,ATt,eTt,tTt,rTt,iTt,uTt,aTt,nTt,oTt,sTt,lTt,gTt,cTt,CTt,MC,BTt,ETt,Oae,eBA,O0,dTt,ITt,hTt,QTt,Pae,pTt,fTt,mTt,DTt,ane,yTt,wTt,bTt,vTt,kTt,pa,Po,Xa,FTt,xTt,_ae,fg,Wae,STt,LTt,RTt,NTt,GTt,UTt,MTt,TTt,YTt,HTt,KTt,JTt,OTt,PTt,_Tt,WTt,qTt,zTt,ZTt,qae,VTt,jTt,zae,PO,lne,XTt,$Tt,AYt,eYt,dne;var Ine=_(()=>{kE();Cs();u0();uo();Ln();ai();rr();ir();Nt();HG();vn();Pr();ng();Pr();Pr();Pr();XCA=function(){var A=y(function(p,m,f,D){for(f=f||{},D=p.length;D--;f[p[D]]=m);return f},"o"),e=[1,15],t=[1,7],r=[1,13],i=[1,14],u=[1,19],a=[1,16],n=[1,17],o=[1,18],s=[8,30],l=[8,10,21,28,29,30,31,39,43,46],g=[1,23],C=[1,24],B=[8,10,15,16,21,28,29,30,31,39,43,46],E=[8,10,15,16,21,27,28,29,30,31,39,43,46],d=[1,49],I={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,spaceLines:3,SPACELINE:4,NL:5,separator:6,SPACE:7,EOF:8,start:9,BLOCK_DIAGRAM_KEY:10,document:11,stop:12,statement:13,link:14,LINK:15,START_LINK:16,LINK_LABEL:17,STR:18,nodeStatement:19,columnsStatement:20,SPACE_BLOCK:21,blockStatement:22,classDefStatement:23,cssClassStatement:24,styleStatement:25,node:26,SIZE:27,COLUMNS:28,"id-block":29,end:30,NODE_ID:31,nodeShapeNLabel:32,dirList:33,DIR:34,NODE_DSTART:35,NODE_DEND:36,BLOCK_ARROW_START:37,BLOCK_ARROW_END:38,classDef:39,CLASSDEF_ID:40,CLASSDEF_STYLEOPTS:41,DEFAULT:42,class:43,CLASSENTITY_IDS:44,STYLECLASS:45,style:46,STYLE_ENTITY_IDS:47,STYLE_DEFINITION_DATA:48,$accept:0,$end:1},terminals_:{2:"error",4:"SPACELINE",5:"NL",7:"SPACE",8:"EOF",10:"BLOCK_DIAGRAM_KEY",15:"LINK",16:"START_LINK",17:"LINK_LABEL",18:"STR",21:"SPACE_BLOCK",27:"SIZE",28:"COLUMNS",29:"id-block",30:"end",31:"NODE_ID",34:"DIR",35:"NODE_DSTART",36:"NODE_DEND",37:"BLOCK_ARROW_START",38:"BLOCK_ARROW_END",39:"classDef",40:"CLASSDEF_ID",41:"CLASSDEF_STYLEOPTS",42:"DEFAULT",43:"class",44:"CLASSENTITY_IDS",45:"STYLECLASS",46:"style",47:"STYLE_ENTITY_IDS",48:"STYLE_DEFINITION_DATA"},productions_:[0,[3,1],[3,2],[3,2],[6,1],[6,1],[6,1],[9,3],[12,1],[12,1],[12,2],[12,2],[11,1],[11,2],[14,1],[14,4],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[13,1],[19,3],[19,2],[19,1],[20,1],[22,4],[22,3],[26,1],[26,2],[33,1],[33,2],[32,3],[32,4],[23,3],[23,3],[24,3],[25,3]],performAction:y(function(m,f,D,w,b,k,v){var S=k.length-1;switch(b){case 4:w.getLogger().debug("Rule: separator (NL) ");break;case 5:w.getLogger().debug("Rule: separator (Space) ");break;case 6:w.getLogger().debug("Rule: separator (EOF) ");break;case 7:w.getLogger().debug("Rule: hierarchy: ",k[S-1]),w.setHierarchy(k[S-1]);break;case 8:w.getLogger().debug("Stop NL ");break;case 9:w.getLogger().debug("Stop EOF ");break;case 10:w.getLogger().debug("Stop NL2 ");break;case 11:w.getLogger().debug("Stop EOF2 ");break;case 12:w.getLogger().debug("Rule: statement: ",k[S]),typeof k[S].length==="number"?this.$=k[S]:this.$=[k[S]];break;case 13:w.getLogger().debug("Rule: statement #2: ",k[S-1]),this.$=[k[S-1]].concat(k[S]);break;case 14:w.getLogger().debug("Rule: link: ",k[S],m),this.$={edgeTypeStr:k[S],label:""};break;case 15:w.getLogger().debug("Rule: LABEL link: ",k[S-3],k[S-1],k[S]),this.$={edgeTypeStr:k[S],label:k[S-1]};break;case 18:let x=parseInt(k[S]),F=w.generateId();this.$={id:F,type:"space",label:"",width:x,children:[]};break;case 23:w.getLogger().debug("Rule: (nodeStatement link node) ",k[S-2],k[S-1],k[S]," typestr: ",k[S-1].edgeTypeStr);let T=w.edgeStrToEdgeData(k[S-1].edgeTypeStr),R=w.edgeStrToEdgeStartData(k[S-1].edgeTypeStr),L=w.edgeStrToThickness(k[S-1].edgeTypeStr),M=w.edgeStrToPattern(k[S-1].edgeTypeStr);this.$=[{id:k[S-2].id,label:k[S-2].label,type:k[S-2].type,directions:k[S-2].directions},{id:k[S-2].id+"-"+k[S].id,start:k[S-2].id,end:k[S].id,label:k[S-1].label,type:"edge",thickness:L,pattern:M,directions:k[S].directions,arrowTypeEnd:T,arrowTypeStart:R},{id:k[S].id,label:k[S].label,type:w.typeStr2Type(k[S].typeStr),directions:k[S].directions}];break;case 24:w.getLogger().debug("Rule: nodeStatement (abc88 node size) ",k[S-1],k[S]),this.$={id:k[S-1].id,label:k[S-1].label,type:w.typeStr2Type(k[S-1].typeStr),directions:k[S-1].directions,widthInColumns:parseInt(k[S],10)};break;case 25:w.getLogger().debug("Rule: nodeStatement (node) ",k[S]),this.$={id:k[S].id,label:k[S].label,type:w.typeStr2Type(k[S].typeStr),directions:k[S].directions,widthInColumns:1};break;case 26:w.getLogger().debug("APA123",this?this:"na"),w.getLogger().debug("COLUMNS: ",k[S]),this.$={type:"column-setting",columns:k[S]==="auto"?-1:parseInt(k[S])};break;case 27:w.getLogger().debug("Rule: id-block statement : ",k[S-2],k[S-1]);let U=w.generateId();this.$={...k[S-2],type:"composite",children:k[S-1]};break;case 28:w.getLogger().debug("Rule: blockStatement : ",k[S-2],k[S-1],k[S]);let Y=w.generateId();this.$={id:Y,type:"composite",label:"",children:k[S-1]};break;case 29:w.getLogger().debug("Rule: node (NODE_ID separator): ",k[S]),this.$={id:k[S]};break;case 30:w.getLogger().debug("Rule: node (NODE_ID nodeShapeNLabel separator): ",k[S-1],k[S]),this.$={id:k[S-1],label:k[S].label,typeStr:k[S].typeStr,directions:k[S].directions};break;case 31:w.getLogger().debug("Rule: dirList: ",k[S]),this.$=[k[S]];break;case 32:w.getLogger().debug("Rule: dirList: ",k[S-1],k[S]),this.$=[k[S-1]].concat(k[S]);break;case 33:w.getLogger().debug("Rule: nodeShapeNLabel: ",k[S-2],k[S-1],k[S]),this.$={typeStr:k[S-2]+k[S],label:k[S-1]};break;case 34:w.getLogger().debug("Rule: BLOCK_ARROW nodeShapeNLabel: ",k[S-3],k[S-2]," #3:",k[S-1],k[S]),this.$={typeStr:k[S-3]+k[S],label:k[S-2],directions:k[S-1]};break;case 35:case 36:this.$={type:"classDef",id:k[S-1].trim(),css:k[S].trim()};break;case 37:this.$={type:"applyClass",id:k[S-1].trim(),styleClass:k[S].trim()};break;case 38:this.$={type:"applyStyles",id:k[S-1].trim(),stylesStr:k[S].trim()};break}},"anonymous"),table:[{9:1,10:[1,2]},{1:[3]},{10:e,11:3,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:r,29:i,31:u,39:a,43:n,46:o},{8:[1,20]},A(s,[2,12],{13:4,19:5,20:6,22:8,23:9,24:10,25:11,26:12,11:21,10:e,21:t,28:r,29:i,31:u,39:a,43:n,46:o}),A(l,[2,16],{14:22,15:g,16:C}),A(l,[2,17]),A(l,[2,18]),A(l,[2,19]),A(l,[2,20]),A(l,[2,21]),A(l,[2,22]),A(B,[2,25],{27:[1,25]}),A(l,[2,26]),{19:26,26:12,31:u},{10:e,11:27,13:4,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:r,29:i,31:u,39:a,43:n,46:o},{40:[1,28],42:[1,29]},{44:[1,30]},{47:[1,31]},A(E,[2,29],{32:32,35:[1,33],37:[1,34]}),{1:[2,7]},A(s,[2,13]),{26:35,31:u},{31:[2,14]},{17:[1,36]},A(B,[2,24]),{10:e,11:37,13:4,14:22,15:g,16:C,19:5,20:6,21:t,22:8,23:9,24:10,25:11,26:12,28:r,29:i,31:u,39:a,43:n,46:o},{30:[1,38]},{41:[1,39]},{41:[1,40]},{45:[1,41]},{48:[1,42]},A(E,[2,30]),{18:[1,43]},{18:[1,44]},A(B,[2,23]),{18:[1,45]},{30:[1,46]},A(l,[2,28]),A(l,[2,35]),A(l,[2,36]),A(l,[2,37]),A(l,[2,38]),{36:[1,47]},{33:48,34:d},{15:[1,50]},A(l,[2,27]),A(E,[2,33]),{38:[1,51]},{33:52,34:d,38:[2,31]},{31:[2,15]},A(E,[2,34]),{38:[2,32]}],defaultActions:{20:[2,7],23:[2,14],50:[2,15],52:[2,32]},parseError:y(function(m,f){if(f.recoverable)this.trace(m);else{var D=Error(m);throw D.hash=f,D}},"parseError"),parse:y(function(m){var f=this,D=[0],w=[],b=[null],k=[],v=this.table,S="",x=0,F=0,T=0,R=2,L=1,M=k.slice.call(arguments,1),U=Object.create(this.lexer),Y={yy:{}};for(var H in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,H))Y.yy[H]=this.yy[H];if(U.setInput(m,Y.yy),Y.yy.lexer=U,Y.yy.parser=this,typeof U.yylloc>"u")U.yylloc={};var J=U.yylloc;k.push(J);var K=U.options&&U.options.ranges;if(typeof Y.yy.parseError==="function")this.parseError=Y.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function O(qA){D.length=D.length-2*qA,b.length=b.length-qA,k.length=k.length-qA}y(O,"popStack");function P(){var qA=w.pop()||U.lex()||L;if(typeof qA!=="number"){if(qA instanceof Array)w=qA,qA=w.pop();qA=f.symbols_[qA]||qA}return qA}y(P,"lex");var z,AA,W,CA,tA,lA,gA={},aA,NA,DA,KA;while(!0){if(W=D[D.length-1],this.defaultActions[W])CA=this.defaultActions[W];else{if(z===null||typeof z>"u")z=P();CA=v[W]&&v[W][z]}if(typeof CA>"u"||!CA.length||!CA[0]){var TA="";KA=[];for(aA in v[W])if(this.terminals_[aA]&&aA>R)KA.push("'"+this.terminals_[aA]+"'");if(U.showPosition)TA="Parse error on line "+(x+1)+`:
`+U.showPosition()+`
Expecting `+KA.join(", ")+", got '"+(this.terminals_[z]||z)+"'";else TA="Parse error on line "+(x+1)+": Unexpected "+(z==L?"end of input":"'"+(this.terminals_[z]||z)+"'");this.parseError(TA,{text:U.match,token:this.terminals_[z]||z,line:U.yylineno,loc:J,expected:KA})}if(CA[0]instanceof Array&&CA.length>1)throw Error("Parse Error: multiple actions possible at state: "+W+", token: "+z);switch(CA[0]){case 1:if(D.push(z),b.push(U.yytext),k.push(U.yylloc),D.push(CA[1]),z=null,!AA){if(F=U.yyleng,S=U.yytext,x=U.yylineno,J=U.yylloc,T>0)T--}else z=AA,AA=null;break;case 2:if(NA=this.productions_[CA[1]][1],gA.$=b[b.length-NA],gA._$={first_line:k[k.length-(NA||1)].first_line,last_line:k[k.length-1].last_line,first_column:k[k.length-(NA||1)].first_column,last_column:k[k.length-1].last_column},K)gA._$.range=[k[k.length-(NA||1)].range[0],k[k.length-1].range[1]];if(lA=this.performAction.apply(gA,[S,F,x,Y.yy,CA[1],b,k].concat(M)),typeof lA<"u")return lA;if(NA)D=D.slice(0,-1*NA*2),b=b.slice(0,-1*NA),k=k.slice(0,-1*NA);D.push(this.productions_[CA[1]][0]),b.push(gA.$),k.push(gA._$),DA=v[D[D.length-2]][D[D.length-1]],D.push(DA);break;case 3:return!0}}return!0},"parse")},h=function(){var p={EOF:1,parseError:y(function(f,D){if(this.yy.parser)this.yy.parser.parseError(f,D);else throw Error(f)},"parseError"),setInput:y(function(m,f){if(this.yy=f||this.yy||{},this._input=m,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var m=this._input[0];this.yytext+=m,this.yyleng++,this.offset++,this.match+=m,this.matched+=m;var f=m.match(/(?:\r\n?|\n).*/g);if(f)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),m},"input"),unput:y(function(m){var f=m.length,D=m.split(/(?:\r\n?|\n)/g);this._input=m+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-f),this.offset-=f;var w=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),D.length-1)this.yylineno-=D.length-1;var b=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:D?(D.length===w.length?this.yylloc.first_column:0)+w[w.length-D.length].length-D[0].length:this.yylloc.first_column-f},this.options.ranges)this.yylloc.range=[b[0],b[0]+this.yyleng-f];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(m){this.unput(this.match.slice(m))},"less"),pastInput:y(function(){var m=this.matched.substr(0,this.matched.length-this.match.length);return(m.length>20?"...":"")+m.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var m=this.match;if(m.length<20)m+=this._input.substr(0,20-m.length);return(m.substr(0,20)+(m.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var m=this.pastInput(),f=Array(m.length+1).join("-");return m+this.upcomingInput()+`
`+f+"^"},"showPosition"),test_match:y(function(m,f){var D,w,b;if(this.options.backtrack_lexer){if(b={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)b.yylloc.range=this.yylloc.range.slice(0)}if(w=m[0].match(/(?:\r\n?|\n).*/g),w)this.yylineno+=w.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:w?w[w.length-1].length-w[w.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+m[0].length},this.yytext+=m[0],this.match+=m[0],this.matches=m,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(m[0].length),this.matched+=m[0],D=this.performAction.call(this,this.yy,this,f,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(D)return D;else if(this._backtrack){for(var k in b)this[k]=b[k];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var m,f,D,w;if(!this._more)this.yytext="",this.match="";var b=this._currentRules();for(var k=0;k<b.length;k++)if(D=this._input.match(this.rules[b[k]]),D&&(!f||D[0].length>f[0].length)){if(f=D,w=k,this.options.backtrack_lexer)if(m=this.test_match(D,b[k]),m!==!1)return m;else if(this._backtrack){f=!1;continue}else return!1;else if(!this.options.flex)break}if(f){if(m=this.test_match(f,b[w]),m!==!1)return m;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var f=this.next();if(f)return f;else return this.lex()},"lex"),begin:y(function(f){this.conditionStack.push(f)},"begin"),popState:y(function(){var f=this.conditionStack.length-1;if(f>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(f){if(f=this.conditionStack.length-1-Math.abs(f||0),f>=0)return this.conditionStack[f];else return"INITIAL"},"topState"),pushState:y(function(f){this.begin(f)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:y(function(f,D,w,b){var k=b;switch(w){case 0:return f.getLogger().debug("Found block-beta"),10;break;case 1:return f.getLogger().debug("Found id-block"),29;break;case 2:return f.getLogger().debug("Found block"),10;break;case 3:f.getLogger().debug(".",D.yytext);break;case 4:f.getLogger().debug("_",D.yytext);break;case 5:return 5;case 6:return D.yytext=-1,28;break;case 7:return D.yytext=D.yytext.replace(/columns\s+/,""),f.getLogger().debug("COLUMNS (LEX)",D.yytext),28;break;case 8:this.pushState("md_string");break;case 9:return"MD_STR";case 10:this.popState();break;case 11:this.pushState("string");break;case 12:f.getLogger().debug("LEX: POPPING STR:",D.yytext),this.popState();break;case 13:return f.getLogger().debug("LEX: STR end:",D.yytext),"STR";break;case 14:return D.yytext=D.yytext.replace(/space\:/,""),f.getLogger().debug("SPACE NUM (LEX)",D.yytext),21;break;case 15:return D.yytext="1",f.getLogger().debug("COLUMNS (LEX)",D.yytext),21;break;case 16:return 42;case 17:return"LINKSTYLE";case 18:return"INTERPOLATE";case 19:return this.pushState("CLASSDEF"),39;break;case 20:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";break;case 21:return this.popState(),this.pushState("CLASSDEFID"),40;break;case 22:return this.popState(),41;break;case 23:return this.pushState("CLASS"),43;break;case 24:return this.popState(),this.pushState("CLASS_STYLE"),44;break;case 25:return this.popState(),45;break;case 26:return this.pushState("STYLE_STMNT"),46;break;case 27:return this.popState(),this.pushState("STYLE_DEFINITION"),47;break;case 28:return this.popState(),48;break;case 29:return this.pushState("acc_title"),"acc_title";break;case 30:return this.popState(),"acc_title_value";break;case 31:return this.pushState("acc_descr"),"acc_descr";break;case 32:return this.popState(),"acc_descr_value";break;case 33:this.pushState("acc_descr_multiline");break;case 34:this.popState();break;case 35:return"acc_descr_multiline_value";case 36:return 30;case 37:return this.popState(),f.getLogger().debug("Lex: (("),"NODE_DEND";break;case 38:return this.popState(),f.getLogger().debug("Lex: (("),"NODE_DEND";break;case 39:return this.popState(),f.getLogger().debug("Lex: ))"),"NODE_DEND";break;case 40:return this.popState(),f.getLogger().debug("Lex: (("),"NODE_DEND";break;case 41:return this.popState(),f.getLogger().debug("Lex: (("),"NODE_DEND";break;case 42:return this.popState(),f.getLogger().debug("Lex: (-"),"NODE_DEND";break;case 43:return this.popState(),f.getLogger().debug("Lex: -)"),"NODE_DEND";break;case 44:return this.popState(),f.getLogger().debug("Lex: (("),"NODE_DEND";break;case 45:return this.popState(),f.getLogger().debug("Lex: ]]"),"NODE_DEND";break;case 46:return this.popState(),f.getLogger().debug("Lex: ("),"NODE_DEND";break;case 47:return this.popState(),f.getLogger().debug("Lex: ])"),"NODE_DEND";break;case 48:return this.popState(),f.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 49:return this.popState(),f.getLogger().debug("Lex: /]"),"NODE_DEND";break;case 50:return this.popState(),f.getLogger().debug("Lex: )]"),"NODE_DEND";break;case 51:return this.popState(),f.getLogger().debug("Lex: )"),"NODE_DEND";break;case 52:return this.popState(),f.getLogger().debug("Lex: ]>"),"NODE_DEND";break;case 53:return this.popState(),f.getLogger().debug("Lex: ]"),"NODE_DEND";break;case 54:return f.getLogger().debug("Lexa: -)"),this.pushState("NODE"),35;break;case 55:return f.getLogger().debug("Lexa: (-"),this.pushState("NODE"),35;break;case 56:return f.getLogger().debug("Lexa: ))"),this.pushState("NODE"),35;break;case 57:return f.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 58:return f.getLogger().debug("Lex: ((("),this.pushState("NODE"),35;break;case 59:return f.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 60:return f.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 61:return f.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 62:return f.getLogger().debug("Lexc: >"),this.pushState("NODE"),35;break;case 63:return f.getLogger().debug("Lexa: (["),this.pushState("NODE"),35;break;case 64:return f.getLogger().debug("Lexa: )"),this.pushState("NODE"),35;break;case 65:return this.pushState("NODE"),35;break;case 66:return this.pushState("NODE"),35;break;case 67:return this.pushState("NODE"),35;break;case 68:return this.pushState("NODE"),35;break;case 69:return this.pushState("NODE"),35;break;case 70:return this.pushState("NODE"),35;break;case 71:return this.pushState("NODE"),35;break;case 72:return f.getLogger().debug("Lexa: ["),this.pushState("NODE"),35;break;case 73:return this.pushState("BLOCK_ARROW"),f.getLogger().debug("LEX ARR START"),37;break;case 74:return f.getLogger().debug("Lex: NODE_ID",D.yytext),31;break;case 75:return f.getLogger().debug("Lex: EOF",D.yytext),8;break;case 76:this.pushState("md_string");break;case 77:this.pushState("md_string");break;case 78:return"NODE_DESCR";case 79:this.popState();break;case 80:f.getLogger().debug("Lex: Starting string"),this.pushState("string");break;case 81:f.getLogger().debug("LEX ARR: Starting string"),this.pushState("string");break;case 82:return f.getLogger().debug("LEX: NODE_DESCR:",D.yytext),"NODE_DESCR";break;case 83:f.getLogger().debug("LEX POPPING"),this.popState();break;case 84:f.getLogger().debug("Lex: =>BAE"),this.pushState("ARROW_DIR");break;case 85:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (right): dir:",D.yytext),"DIR";break;case 86:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (left):",D.yytext),"DIR";break;case 87:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (x):",D.yytext),"DIR";break;case 88:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (y):",D.yytext),"DIR";break;case 89:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (up):",D.yytext),"DIR";break;case 90:return D.yytext=D.yytext.replace(/^,\s*/,""),f.getLogger().debug("Lex (down):",D.yytext),"DIR";break;case 91:return D.yytext="]>",f.getLogger().debug("Lex (ARROW_DIR end):",D.yytext),this.popState(),this.popState(),"BLOCK_ARROW_END";break;case 92:return f.getLogger().debug("Lex: LINK","#"+D.yytext+"#"),15;break;case 93:return f.getLogger().debug("Lex: LINK",D.yytext),15;break;case 94:return f.getLogger().debug("Lex: LINK",D.yytext),15;break;case 95:return f.getLogger().debug("Lex: LINK",D.yytext),15;break;case 96:return f.getLogger().debug("Lex: START_LINK",D.yytext),this.pushState("LLABEL"),16;break;case 97:return f.getLogger().debug("Lex: START_LINK",D.yytext),this.pushState("LLABEL"),16;break;case 98:return f.getLogger().debug("Lex: START_LINK",D.yytext),this.pushState("LLABEL"),16;break;case 99:this.pushState("md_string");break;case 100:return f.getLogger().debug("Lex: Starting string"),this.pushState("string"),"LINK_LABEL";break;case 101:return this.popState(),f.getLogger().debug("Lex: LINK","#"+D.yytext+"#"),15;break;case 102:return this.popState(),f.getLogger().debug("Lex: LINK",D.yytext),15;break;case 103:return this.popState(),f.getLogger().debug("Lex: LINK",D.yytext),15;break;case 104:return f.getLogger().debug("Lex: COLON",D.yytext),D.yytext=D.yytext.slice(1),27;break}},"anonymous"),rules:[/^(?:block-beta\b)/,/^(?:block:)/,/^(?:block\b)/,/^(?:[\s]+)/,/^(?:[\n]+)/,/^(?:((\u000D\u000A)|(\u000A)))/,/^(?:columns\s+auto\b)/,/^(?:columns\s+[\d]+)/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:space[:]\d+)/,/^(?:space\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\s+)/,/^(?:DEFAULT\s+)/,/^(?:\w+\s+)/,/^(?:[^\n]*)/,/^(?:class\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:style\s+)/,/^(?:(\w+)+((,\s*\w+)*))/,/^(?:[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:end\b\s*)/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:[\)]\))/,/^(?:\}\})/,/^(?:\})/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\()/,/^(?:\]\])/,/^(?:\()/,/^(?:\]\))/,/^(?:\\\])/,/^(?:\/\])/,/^(?:\)\])/,/^(?:[\)])/,/^(?:\]>)/,/^(?:[\]])/,/^(?:-\))/,/^(?:\(-)/,/^(?:\)\))/,/^(?:\))/,/^(?:\(\(\()/,/^(?:\(\()/,/^(?:\{\{)/,/^(?:\{)/,/^(?:>)/,/^(?:\(\[)/,/^(?:\()/,/^(?:\[\[)/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\)\))/,/^(?:\[\\)/,/^(?:\[\/)/,/^(?:\[\\)/,/^(?:\[)/,/^(?:<\[)/,/^(?:[^\(\[\n\-\)\{\}\s\<\>:=]+)/,/^(?:$)/,/^(?:["][`])/,/^(?:["][`])/,/^(?:[^`"]+)/,/^(?:[`]["])/,/^(?:["])/,/^(?:["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:\]>\s*\()/,/^(?:,?\s*right\s*)/,/^(?:,?\s*left\s*)/,/^(?:,?\s*x\s*)/,/^(?:,?\s*y\s*)/,/^(?:,?\s*up\s*)/,/^(?:,?\s*down\s*)/,/^(?:\)\s*)/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*~~[\~]+\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:["][`])/,/^(?:["])/,/^(?:\s*[xo<]?--+[-xo>]\s*)/,/^(?:\s*[xo<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?::\d+)/],conditions:{STYLE_DEFINITION:{rules:[28],inclusive:!1},STYLE_STMNT:{rules:[27],inclusive:!1},CLASSDEFID:{rules:[22],inclusive:!1},CLASSDEF:{rules:[20,21],inclusive:!1},CLASS_STYLE:{rules:[25],inclusive:!1},CLASS:{rules:[24],inclusive:!1},LLABEL:{rules:[99,100,101,102,103],inclusive:!1},ARROW_DIR:{rules:[85,86,87,88,89,90,91],inclusive:!1},BLOCK_ARROW:{rules:[76,81,84],inclusive:!1},NODE:{rules:[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,77,80],inclusive:!1},md_string:{rules:[9,10,78,79],inclusive:!1},space:{rules:[],inclusive:!1},string:{rules:[12,13,82,83],inclusive:!1},acc_descr_multiline:{rules:[34,35],inclusive:!1},acc_descr:{rules:[32],inclusive:!1},acc_title:{rules:[30],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,11,14,15,16,17,18,19,23,26,29,31,33,36,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,92,93,94,95,96,97,98,104],inclusive:!0}}};return p}();I.lexer=h;function Q(){this.yy={}}return y(Q,"Parser"),Q.prototype=I,I.Parser=Q,new Q}();XCA.parser=XCA;SMt=XCA,TC=new Map,rBA=[],$CA=new Map,_O=new Map,RMt=y((A)=>_e.sanitizeText(A,OA()),"sanitizeText"),NMt=y(function(A,e=""){let t=_O.get(A);if(!t)t={id:A,styles:[],textStyles:[]},_O.set(A,t);if(e!==void 0&&e!==null)e.split(Zae).forEach((r)=>{let i=r.replace(/([^;]*);/,"$1").trim();if(RegExp(Hae).exec(r)){let a=i.replace(Kae,LMt).replace(Hae,Kae);t.textStyles.push(a)}t.styles.push(i)})},"addStyleClass"),GMt=y(function(A,e=""){let t=TC.get(A);if(e!==void 0&&e!==null)t.styles=e.split(Zae)},"addStyle2Node"),UMt=y(function(A,e){A.split(",").forEach(function(t){let r=TC.get(t);if(r===void 0){let i=t.trim();r={id:i,type:"na",children:[]},TC.set(i,r)}if(!r.classes)r.classes=[];r.classes.push(e)})},"setCssClass"),Vae=y((A,e)=>{let t=A.flat(),r=[],u=t.find((a)=>a?.type==="column-setting")?.columns??-1;for(let a of t){if(typeof u==="number"&&u>0&&a.type!=="column-setting"&&typeof a.widthInColumns==="number"&&a.widthInColumns>u)sA.warn(`Block ${a.id} width ${a.widthInColumns} exceeds configured column width ${u}`);if(a.label)a.label=RMt(a.label);if(a.type==="classDef"){NMt(a.id,a.css);continue}if(a.type==="applyClass"){UMt(a.id,a?.styleClass??"");continue}if(a.type==="applyStyles"){if(a?.stylesStr)GMt(a.id,a?.stylesStr);continue}if(a.type==="column-setting")e.columns=a.columns??-1;else if(a.type==="edge"){let n=($CA.get(a.id)??0)+1;$CA.set(a.id,n),a.id=n+"-"+a.id,rBA.push(a)}else{if(!a.label)if(a.type==="composite")a.label="";else a.label=a.id;let n=TC.get(a.id);if(n===void 0)TC.set(a.id,a);else{if(a.type!=="na")n.type=a.type;if(a.label!==a.id)n.label=a.label}if(a.children)Vae(a.children,a);if(a.type==="space"){let o=a.width??1;for(let s=0;s<o;s++){let l=KAA(a);l.id=l.id+"-"+s,TC.set(l.id,l),r.push(l)}}else if(n===void 0)r.push(a)}}e.children=r},"populateBlockDatabase"),uBA=[],g7={id:"root",type:"composite",children:[],columns:-1},MMt=y(()=>{sA.debug("Clear called"),cr(),g7={id:"root",type:"composite",children:[],columns:-1},TC=new Map([["root",g7]]),uBA=[],_O=new Map,rBA=[],$CA=new Map,iBA=""},"clear");y(jae,"typeStr2Type");y(Xae,"edgeTypeStr2Type");y($ae,"edgeStrToEdgeData");y(Ane,"edgeStrToEdgeStartData");y(ene,"edgeStrToThickness");y(tne,"edgeStrToPattern");TMt=y(()=>(Jae++,"id-"+Math.random().toString(36).substr(2,12)+"-"+Jae),"generateId"),YMt=y((A)=>{g7.children=A,Vae(A,g7),uBA=g7.children},"setHierarchy"),HMt=y((A)=>{let e=TC.get(A);if(!e)return-1;if(e.columns)return e.columns;if(!e.children)return-1;return e.children.length},"getColumns"),KMt=y(()=>[...TC.values()],"getBlocksFlat"),JMt=y(()=>uBA||[],"getBlocks"),OMt=y(()=>rBA,"getEdges"),PMt=y((A)=>TC.get(A),"getBlock"),_Mt=y((A)=>{TC.set(A.id,A)},"setBlock"),WMt=y((A)=>{iBA=A},"setDiagramId"),qMt=y(()=>iBA,"getDiagramId"),zMt=y(()=>sA,"getLogger"),ZMt=y(function(){return _O},"getClasses"),VMt={getConfig:y(()=>ot().block,"getConfig"),typeStr2Type:jae,edgeTypeStr2Type:Xae,edgeStrToEdgeData:$ae,edgeStrToEdgeStartData:Ane,edgeStrToThickness:ene,edgeStrToPattern:tne,getLogger:zMt,getBlocksFlat:KMt,getBlocks:JMt,getEdges:OMt,setHierarchy:YMt,getBlock:PMt,setBlock:_Mt,getColumns:HMt,getClasses:ZMt,clear:MMt,generateId:TMt,setDiagramId:WMt,getDiagramId:qMt},jMt=VMt,jCA=y((A,e)=>{let t=Lp,r=t(A,"r"),i=t(A,"g"),u=t(A,"b");return ln(r,i,u,e)},"fade"),XMt=y((A)=>`.label {
font-family: ${A.fontFamily};
color: ${A.nodeTextColor||A.textColor};
}
.cluster-label text {
fill: ${A.titleColor};
}
.cluster-label span,p {
color: ${A.titleColor};
}
.label text,span,p {
fill: ${A.nodeTextColor||A.textColor};
color: ${A.nodeTextColor||A.textColor};
}
.node rect,
.node circle,
.node ellipse,
.node polygon,
.node path {
fill: ${A.mainBkg};
stroke: ${A.nodeBorder};
stroke-width: 1px;
}
.flowchart-label text {
text-anchor: middle;
}
// .flowchart-label .text-outer-tspan {
// text-anchor: middle;
// }
// .flowchart-label .text-inner-tspan {
// text-anchor: start;
// }
.node .label {
text-align: center;
}
.node.clickable {
cursor: pointer;
}
.arrowheadPath {
fill: ${A.arrowheadColor};
}
.edgePath .path {
stroke: ${A.lineColor};
stroke-width: 2.0px;
}
.flowchart-link {
stroke: ${A.lineColor};
fill: none;
}
.edgeLabel {
background-color: ${A.edgeLabelBackground};
/*
* This is for backward compatibility with existing code that didn't
* add a \`<p>\` around edge labels.
*
* TODO: We should probably remove this in a future release.
*/
p {
margin: 0;
padding: 0;
display: inline;
}
rect {
opacity: 0.5;
background-color: ${A.edgeLabelBackground};
fill: ${A.edgeLabelBackground};
}
text-align: center;
}
/* For html labels only */
.labelBkg {
background-color: ${A.edgeLabelBackground};
}
.node .cluster {
// fill: ${jCA(A.mainBkg,0.5)};
fill: ${jCA(A.clusterBkg,0.5)};
stroke: ${jCA(A.clusterBorder,0.2)};
box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
stroke-width: 1px;
}
.cluster text {
fill: ${A.titleColor};
}
.cluster span,p {
color: ${A.titleColor};
}
/* .cluster div {
color: ${A.titleColor};
} */
div.mermaidTooltip {
position: absolute;
text-align: center;
max-width: 200px;
padding: 2px;
font-family: ${A.fontFamily};
font-size: 12px;
background: ${A.tertiaryColor};
border: 1px solid ${A.border2};
border-radius: 2px;
pointer-events: none;
z-index: 100;
}
.flowchartTitleText {
text-anchor: middle;
font-size: 18px;
fill: ${A.textColor};
}
${vE()}
`,"getStyles"),$Mt=XMt,ATt=y((A,e,t,r)=>{e.forEach((i)=>{lTt[i](A,t,r)})},"insertMarkers"),eTt=y((A,e,t)=>{sA.trace("Making markers for ",t),A.append("defs").append("marker").attr("id",t+"_"+e+"-extensionStart").attr("class","marker extension "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-extensionEnd").attr("class","marker extension "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},"extension"),tTt=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionStart").attr("class","marker composition "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-compositionEnd").attr("class","marker composition "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"composition"),rTt=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationStart").attr("class","marker aggregation "+e).attr("refX",18).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-aggregationEnd").attr("class","marker aggregation "+e).attr("refX",1).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},"aggregation"),iTt=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyStart").attr("class","marker dependency "+e).attr("refX",6).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),A.append("defs").append("marker").attr("id",t+"_"+e+"-dependencyEnd").attr("class","marker dependency "+e).attr("refX",13).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},"dependency"),uTt=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopStart").attr("class","marker lollipop "+e).attr("refX",13).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6),A.append("defs").append("marker").attr("id",t+"_"+e+"-lollipopEnd").attr("class","marker lollipop "+e).attr("refX",1).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","transparent").attr("cx",7).attr("cy",7).attr("r",6)},"lollipop"),aTt=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-pointEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",6).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-pointStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",4.5).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"point"),nTt=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-circleEnd").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-circleStart").attr("class","marker "+e).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},"circle"),oTt=y((A,e,t)=>{A.append("marker").attr("id",t+"_"+e+"-crossEnd").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),A.append("marker").attr("id",t+"_"+e+"-crossStart").attr("class","marker cross "+e).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},"cross"),sTt=y((A,e,t)=>{A.append("defs").append("marker").attr("id",t+"_"+e+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")},"barb"),lTt={extension:eTt,composition:tTt,aggregation:rTt,dependency:iTt,lollipop:uTt,point:aTt,circle:nTt,cross:oTt,barb:sTt},gTt=ATt;y(ABA,"calculateBlockPosition");cTt=y((A)=>{let e=0,t=0;for(let r of A.children){let{width:i,height:u,x:a,y:n}=r.size??{width:0,height:0,x:0,y:0};if(sA.debug("getMaxChildSize abc95 child:",r.id,"width:",i,"height:",u,"x:",a,"y:",n,r.type),r.type==="space")continue;let o=i/(r.widthInColumns??1);if(o>e)e=o;if(u>t)t=u}return{width:e,height:t}},"getMaxChildSize");y(WO,"setBlockSizes");y(aBA,"layoutBlocks");y(nBA,"findBounds");y(rne,"layout");CTt=y(async(A,e,t,r=!1,i=!1)=>{let u=e||"";if(typeof u==="object")u=u[0];let a=OA(),n=Fi(a);return await Rn(A,u,{style:t,isTitle:r,useHtmlLabels:n,markdown:!1,isNode:i,width:Number.POSITIVE_INFINITY},a)},"createLabel"),MC=CTt,BTt=y((A,e,t,r,i)=>{if(e.arrowTypeStart)Oae(A,"start",e.arrowTypeStart,t,r,i);if(e.arrowTypeEnd)Oae(A,"end",e.arrowTypeEnd,t,r,i)},"addEdgeMarkers"),ETt={arrow_cross:"cross",arrow_point:"point",arrow_barb:"barb",arrow_circle:"circle",aggregation:"aggregation",extension:"extension",composition:"composition",dependency:"dependency",lollipop:"lollipop"},Oae=y((A,e,t,r,i,u)=>{let a=ETt[t];if(!a){sA.warn(`Unknown arrow type: ${t}`);return}let n=e==="start"?"Start":"End";A.attr(`marker-${e}`,`url(${r}#${i}_${u}-${a}${n})`)},"addEdgeMarker"),eBA={},O0={},dTt=y(async(A,e)=>{let t=OA(),r=Fi(t),i=A.insert("g").attr("class","edgeLabel"),u=i.insert("g").attr("class","label"),a=e.labelType==="markdown",n=await Rn(A,e.label,{style:e.labelStyle,useHtmlLabels:r,addSvgBackground:a,isNode:!1,markdown:a,width:a?void 0:Number.POSITIVE_INFINITY},t);u.node().appendChild(n);let o=n.getBBox(),s=o;if(r){let g=n.children[0],C=Qe(n);o=g.getBoundingClientRect(),s=o,C.attr("width",o.width),C.attr("height",o.height)}else{let g=Qe(n).select("text").node();if(g&&typeof g.getBBox==="function")s=g.getBBox()}u.attr("transform",qg(s,r)),eBA[e.id]=i,e.width=o.width,e.height=o.height;let l;if(e.startLabelLeft){let g=A.insert("g").attr("class","edgeTerminals"),C=g.insert("g").attr("class","inner"),B=await MC(C,e.startLabelLeft,e.labelStyle);l=B;let E=B.getBBox();if(r){let d=B.children[0],I=Qe(B);E=d.getBoundingClientRect(),I.attr("width",E.width),I.attr("height",E.height)}if(C.attr("transform",qg(E,r)),!O0[e.id])O0[e.id]={};O0[e.id].startLeft=g,l7(l,e.startLabelLeft)}if(e.startLabelRight){let g=A.insert("g").attr("class","edgeTerminals"),C=g.insert("g").attr("class","inner"),B=await MC(C,e.startLabelRight,e.labelStyle);l=B;let E=B.getBBox();if(r){let d=B.children[0],I=Qe(B);E=d.getBoundingClientRect(),I.attr("width",E.width),I.attr("height",E.height)}if(C.attr("transform",qg(E,r)),!O0[e.id])O0[e.id]={};O0[e.id].startRight=g,l7(l,e.startLabelRight)}if(e.endLabelLeft){let g=A.insert("g").attr("class","edgeTerminals"),C=g.insert("g").attr("class","inner"),B=await MC(g,e.endLabelLeft,e.labelStyle);l=B;let E=B.getBBox();if(r){let d=B.children[0],I=Qe(B);E=d.getBoundingClientRect(),I.attr("width",E.width),I.attr("height",E.height)}if(C.attr("transform",qg(E,r)),!O0[e.id])O0[e.id]={};O0[e.id].endLeft=g,l7(l,e.endLabelLeft)}if(e.endLabelRight){let g=A.insert("g").attr("class","edgeTerminals"),C=g.insert("g").attr("class","inner"),B=await MC(g,e.endLabelRight,e.labelStyle);l=B;let E=B.getBBox();if(r){let d=B.children[0],I=Qe(B);E=d.getBoundingClientRect(),I.attr("width",E.width),I.attr("height",E.height)}if(C.attr("transform",qg(E,r)),!O0[e.id])O0[e.id]={};O0[e.id].endRight=g,l7(l,e.endLabelRight)}return n},"insertEdgeLabel");y(l7,"setTerminalWidth");ITt=y((A,e)=>{sA.debug("Moving label abc88 ",A.id,A.label,eBA[A.id],e);let t=e.updatedPath?e.updatedPath:e.originalPath,r=OA(),{subGraphTitleTotalMargin:i}=lC(r);if(A.label){let u=eBA[A.id],{x:a,y:n}=A;if(t){let o=Jt.calcLabelPosition(t);if(sA.debug("Moving label "+A.label+" from (",a,",",n,") to (",o.x,",",o.y,") abc88"),e.updatedPath)a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n+i/2})`)}if(A.startLabelLeft){let u=O0[A.id].startLeft,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.startLabelRight){let u=O0[A.id].startRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeStart?10:0,"start_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelLeft){let u=O0[A.id].endLeft,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_left",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}if(A.endLabelRight){let u=O0[A.id].endRight,{x:a,y:n}=A;if(t){let o=Jt.calcTerminalLabelPosition(A.arrowTypeEnd?10:0,"end_right",t);a=o.x,n=o.y}u.attr("transform",`translate(${a}, ${n})`)}},"positionEdgeLabel"),hTt=y((A,e)=>{let{x:t,y:r}=A,i=Math.abs(e.x-t),u=Math.abs(e.y-r),a=A.width/2,n=A.height/2;if(i>=a||u>=n)return!0;return!1},"outsideNode"),QTt=y((A,e,t)=>{sA.debug(`intersection calc abc89:
outsidePoint: ${JSON.stringify(e)}
insidePoint : ${JSON.stringify(t)}
node : x:${A.x} y:${A.y} w:${A.width} h:${A.height}`);let{x:r,y:i}=A,u=Math.abs(r-t.x),a=A.width/2,n=t.x<e.x?a-u:a+u,o=A.height/2,s=Math.abs(e.y-t.y),l=Math.abs(e.x-t.x);if(Math.abs(i-e.y)*a>Math.abs(r-e.x)*o){let g=t.y<e.y?e.y-o-i:i-o-e.y;n=l*g/s;let C={x:t.x<e.x?t.x+n:t.x-l+n,y:t.y<e.y?t.y+s-g:t.y-s+g};if(n===0)C.x=e.x,C.y=e.y;if(l===0)C.x=e.x;if(s===0)C.y=e.y;return sA.debug(`abc89 topp/bott calc, Q ${s}, q ${g}, R ${l}, r ${n}`,C),C}else{if(t.x<e.x)n=e.x-a-r;else n=r-a-e.x;let g=s*n/l,C=t.x<e.x?t.x+l-n:t.x-l+n,B=t.y<e.y?t.y+g:t.y-g;if(sA.debug(`sides calc abc89, Q ${s}, q ${g}, R ${l}, r ${n}`,{_x:C,_y:B}),n===0)C=e.x,B=e.y;if(l===0)C=e.x;if(s===0)B=e.y;return{x:C,y:B}}},"intersection"),Pae=y((A,e)=>{sA.debug("abc88 cutPathAtIntersect",A,e);let t=[],r=A[0],i=!1;return A.forEach((u)=>{if(!hTt(e,u)&&!i){let a=QTt(e,r,u),n=!1;if(t.forEach((o)=>{n=n||o.x===a.x&&o.y===a.y}),!t.some((o)=>o.x===a.x&&o.y===a.y))t.push(a);i=!0}else if(r=u,!i)t.push(u)}),t},"cutPathAtIntersect"),pTt=y(function(A,e,t,r,i,u,a){let n=t.points;sA.debug("abc88 InsertEdge: edge=",t,"e=",e);let o=!1,s=u.node(e.v);var l=u.node(e.w);if(l?.intersect&&s?.intersect)n=n.slice(1,t.points.length-1),n.unshift(s.intersect(n[0])),n.push(l.intersect(n[n.length-1]));if(t.toCluster)sA.debug("to cluster abc88",r[t.toCluster]),n=Pae(t.points,r[t.toCluster].node),o=!0;if(t.fromCluster)sA.debug("from cluster abc88",r[t.fromCluster]),n=Pae(n.reverse(),r[t.fromCluster].node).reverse(),o=!0;let g=n.filter((m)=>!Number.isNaN(m.y)),C=oC;if(t.curve&&(i==="graph"||i==="flowchart"))C=t.curve;let{x:B,y:E}=IU(t),d=nC().x(B).y(E).curve(C),I;switch(t.thickness){case"normal":I="edge-thickness-normal";break;case"thick":I="edge-thickness-thick";break;case"invisible":I="edge-thickness-thick";break;default:I=""}switch(t.pattern){case"solid":I+=" edge-pattern-solid";break;case"dotted":I+=" edge-pattern-dotted";break;case"dashed":I+=" edge-pattern-dashed";break}let h=A.append("path").attr("d",d(g)).attr("id",t.id).attr("class"," "+I+(t.classes?" "+t.classes:"")).attr("style",t.style),Q="";if(OA().flowchart.arrowMarkerAbsolute||OA().state.arrowMarkerAbsolute)Q=Jp(!0);BTt(h,t,Q,a,i);let p={};if(o)p.updatedPath=n;return p.originalPath=t.points,p},"insertEdge"),fTt=y((A)=>{let e=new Set;for(let t of A)switch(t){case"x":e.add("right"),e.add("left");break;case"y":e.add("up"),e.add("down");break;default:e.add(t);break}return e},"expandAndDeduplicateDirections"),mTt=y((A,e,t,r)=>{let i=fTt(A),u=2,a=e.height+2*t.padding,n=a/2,o=r??e.width+2*n+t.padding,s=t.padding/2;if(i.has("right")&&i.has("left")&&i.has("up")&&i.has("down"))return[{x:0,y:0},{x:n,y:0},{x:o/2,y:2*s},{x:o-n,y:0},{x:o,y:0},{x:o,y:-a/3},{x:o+2*s,y:-a/2},{x:o,y:-2*a/3},{x:o,y:-a},{x:o-n,y:-a},{x:o/2,y:-a-2*s},{x:n,y:-a},{x:0,y:-a},{x:0,y:-2*a/3},{x:-2*s,y:-a/2},{x:0,y:-a/3}];if(i.has("right")&&i.has("left")&&i.has("up"))return[{x:n,y:0},{x:o-n,y:0},{x:o,y:-a/2},{x:o-n,y:-a},{x:n,y:-a},{x:0,y:-a/2}];if(i.has("right")&&i.has("left")&&i.has("down"))return[{x:0,y:0},{x:n,y:-a},{x:o-n,y:-a},{x:o,y:0}];if(i.has("right")&&i.has("up")&&i.has("down"))return[{x:0,y:0},{x:o,y:-n},{x:o,y:-a+n},{x:0,y:-a}];if(i.has("left")&&i.has("up")&&i.has("down"))return[{x:o,y:0},{x:0,y:-n},{x:0,y:-a+n},{x:o,y:-a}];if(i.has("right")&&i.has("left"))return[{x:n,y:0},{x:n,y:-s},{x:o-n,y:-s},{x:o-n,y:0},{x:o,y:-a/2},{x:o-n,y:-a},{x:o-n,y:-a+s},{x:n,y:-a+s},{x:n,y:-a},{x:0,y:-a/2}];if(i.has("up")&&i.has("down"))return[{x:o/2,y:0},{x:0,y:-s},{x:n,y:-s},{x:n,y:-a+s},{x:0,y:-a+s},{x:o/2,y:-a},{x:o,y:-a+s},{x:o-n,y:-a+s},{x:o-n,y:-s},{x:o,y:-s}];if(i.has("right")&&i.has("up"))return[{x:0,y:0},{x:o,y:-n},{x:0,y:-a}];if(i.has("right")&&i.has("down"))return[{x:0,y:0},{x:o,y:0},{x:0,y:-a}];if(i.has("left")&&i.has("up"))return[{x:o,y:0},{x:0,y:-n},{x:o,y:-a}];if(i.has("left")&&i.has("down"))return[{x:o,y:0},{x:0,y:0},{x:o,y:-a}];if(i.has("right"))return[{x:n,y:-s},{x:n,y:-s},{x:o-n,y:-s},{x:o-n,y:0},{x:o,y:-a/2},{x:o-n,y:-a},{x:o-n,y:-a+s},{x:n,y:-a+s},{x:n,y:-a+s}];if(i.has("left"))return[{x:n,y:0},{x:n,y:-s},{x:o-n,y:-s},{x:o-n,y:-a+s},{x:n,y:-a+s},{x:n,y:-a},{x:0,y:-a/2}];if(i.has("up"))return[{x:n,y:-s},{x:n,y:-a+s},{x:0,y:-a+s},{x:o/2,y:-a},{x:o,y:-a+s},{x:o-n,y:-a+s},{x:o-n,y:-s}];if(i.has("down"))return[{x:o/2,y:0},{x:0,y:-s},{x:n,y:-s},{x:n,y:-a+s},{x:o-n,y:-a+s},{x:o-n,y:-s},{x:o,y:-s}];return[{x:0,y:0}]},"getArrowPoints");y(ine,"intersectNode");DTt=ine;y(une,"intersectEllipse");ane=une;y(nne,"intersectCircle");yTt=nne;y(one,"intersectLine");y(tBA,"sameSign");wTt=one,bTt=sne;y(sne,"intersectPolygon");vTt=y((A,e)=>{var{x:t,y:r}=A,i=e.x-t,u=e.y-r,a=A.width/2,n=A.height/2,o,s;if(Math.abs(u)*a>Math.abs(i)*n){if(u<0)n=-n;o=u===0?0:n*i/u,s=n}else{if(i<0)a=-a;o=a,s=i===0?0:a*u/i}return{x:t+o,y:r+s}},"intersectRect"),kTt=vTt,pa={node:DTt,circle:yTt,ellipse:ane,polygon:bTt,rect:kTt},Po=y(async(A,e,t,r)=>{let i=OA(),u,a=e.useHtmlLabels||Fi(i);if(!t)u="node default";else u=t;let n=A.insert("g").attr("class",u).attr("id",e.domId||e.id),o=n.insert("g").attr("class","label").attr("style",e.labelStyle),s;if(e.labelText===void 0)s="";else s=typeof e.labelText==="string"?e.labelText:e.labelText[0];let l;if(e.labelType==="markdown")l=Rn(o,gr(eg(s),i),{useHtmlLabels:a,width:e.width||i.flowchart.wrappingWidth,classes:"markdown-node-label"},i);else l=await MC(o,gr(eg(s),i),e.labelStyle,!1,r);let g=l.getBBox(),C=e.padding/2;if(Fi(i)){let B=l.children[0],E=Qe(l);await fv(B,s),g=B.getBoundingClientRect(),E.attr("width",g.width),E.attr("height",g.height)}if(a)o.attr("transform","translate("+-g.width/2+", "+-g.height/2+")");else o.attr("transform","translate(0, "+-g.height/2+")");if(e.centerLabel)o.attr("transform","translate("+-g.width/2+", "+-g.height/2+")");return o.insert("rect",":first-child"),{shapeSvg:n,bbox:g,halfPadding:C,label:o}},"labelHelper"),Xa=y((A,e)=>{let t=e.node().getBBox();A.width=t.width,A.height=t.height},"updateNodeBounds");y(YC,"insertPolygonShape");FTt=y(async(A,e)=>{if(!(e.useHtmlLabels||Fi(OA())))e.centerLabel=!0;let{shapeSvg:r,bbox:i,halfPadding:u}=await Po(A,e,"node "+e.classes,!0);sA.info("Classes = ",e.classes);let a=r.insert("rect",":first-child");return a.attr("rx",e.rx).attr("ry",e.ry).attr("x",-i.width/2-u).attr("y",-i.height/2-u).attr("width",i.width+e.padding).attr("height",i.height+e.padding),Xa(e,a),e.intersect=function(n){return pa.rect(e,n)},r},"note"),xTt=FTt,_ae=y((A)=>{if(A)return" "+A;return""},"formatClass"),fg=y((A,e)=>`${e?e:"node default"}${_ae(A.classes)} ${_ae(A.class)}`,"getClassesFromNode"),Wae=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,fg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=i+u,n=[{x:a/2,y:0},{x:a,y:-a/2},{x:a/2,y:-a},{x:0,y:-a/2}];sA.info("Question main (Circle)");let o=YC(t,a,a,n);return o.attr("style",e.style),Xa(e,o),e.intersect=function(s){return sA.warn("Intersect called"),pa.polygon(e,n,s)},t},"question"),STt=y((A,e)=>{let t=A.insert("g").attr("class","node default").attr("id",e.domId||e.id),r=28,i=[{x:0,y:14},{x:14,y:0},{x:0,y:-14},{x:-14,y:0}];return t.insert("polygon",":first-child").attr("points",i.map(function(a){return a.x+","+a.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),e.width=28,e.height=28,e.intersect=function(a){return pa.circle(e,14,a)},t},"choice"),LTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,fg(e,void 0),!0),i=4,u=e.positioned?e.height:r.height+e.padding,a=u/4,n=e.positioned?e.width:r.width+2*a+e.padding,o=[{x:a,y:0},{x:n-a,y:0},{x:n,y:-u/2},{x:n-a,y:-u},{x:a,y:-u},{x:0,y:-u/2}],s=YC(t,n,u,o);return s.attr("style",e.style),Xa(e,s),e.intersect=function(l){return pa.polygon(e,o,l)},t},"hexagon"),RTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,void 0,!0),i=2,u=r.height+2*e.padding,a=u/2,n=r.width+2*a+e.padding,s=e.positioned&&(e.widthInColumns??1)>1&&e.width>n?e.width:n,l=mTt(e.directions,r,e,s),g=YC(t,s,u,l);return g.attr("style",e.style),Xa(e,g),e.intersect=function(C){return pa.polygon(e,l,C)},t},"block_arrow"),NTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,fg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:-u/2,y:0},{x:i,y:0},{x:i,y:-u},{x:-u/2,y:-u},{x:0,y:-u/2}];return YC(t,i,u,a).attr("style",e.style),e.width=i+u,e.height=u,e.intersect=function(o){return pa.polygon(e,a,o)},t},"rect_left_inv_arrow"),GTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,fg(e),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:-2*u/6,y:0},{x:i-u/6,y:0},{x:i+2*u/6,y:-u},{x:u/6,y:-u}],n=YC(t,i,u,a);return n.attr("style",e.style),Xa(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"lean_right"),UTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,fg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:2*u/6,y:0},{x:i+u/6,y:0},{x:i-2*u/6,y:-u},{x:-u/6,y:-u}],n=YC(t,i,u,a);return n.attr("style",e.style),Xa(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"lean_left"),MTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,fg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:-2*u/6,y:0},{x:i+2*u/6,y:0},{x:i-u/6,y:-u},{x:u/6,y:-u}],n=YC(t,i,u,a);return n.attr("style",e.style),Xa(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"trapezoid"),TTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,fg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:u/6,y:0},{x:i-u/6,y:0},{x:i+2*u/6,y:-u},{x:-2*u/6,y:-u}],n=YC(t,i,u,a);return n.attr("style",e.style),Xa(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"inv_trapezoid"),YTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,fg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:0,y:0},{x:i+u/2,y:0},{x:i,y:-u/2},{x:i+u/2,y:-u},{x:0,y:-u}],n=YC(t,i,u,a);return n.attr("style",e.style),Xa(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"rect_right_inv_arrow"),HTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,fg(e,void 0),!0),i=r.width+e.padding,u=i/2,a=u/(2.5+i/50),n=r.height+a+e.padding,o="M 0,"+a+" a "+u+","+a+" 0,0,0 "+i+" 0 a "+u+","+a+" 0,0,0 "+-i+" 0 l 0,"+n+" a "+u+","+a+" 0,0,0 "+i+" 0 l 0,"+-n,s=t.attr("label-offset-y",a).insert("path",":first-child").attr("style",e.style).attr("d",o).attr("transform","translate("+-i/2+","+-(n/2+a)+")");return Xa(e,s),e.intersect=function(l){let g=pa.rect(e,l),C=g.x-e.x;if(u!=0&&(Math.abs(C)<e.width/2||Math.abs(C)==e.width/2&&Math.abs(g.y-e.y)>e.height/2-a)){let B=a*a*(1-C*C/(u*u));if(B!=0)B=Math.sqrt(B);if(B=a-B,l.y-e.y>0)B=-B;g.y+=B}return g},t},"cylinder"),KTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r,halfPadding:i}=await Po(A,e,"node "+e.classes+" "+e.class,!0),u=t.insert("rect",":first-child"),a=e.positioned?e.width:r.width+e.padding,n=e.positioned?e.height:r.height+e.padding,o=e.positioned?-a/2:-r.width/2-i,s=e.positioned?-n/2:-r.height/2-i;if(u.attr("class","basic label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",o).attr("y",s).attr("width",a).attr("height",n),e.props){let l=new Set(Object.keys(e.props));if(e.props.borders)qO(u,e.props.borders,a,n),l.delete("borders");l.forEach((g)=>{sA.warn(`Unknown node property ${g}`)})}return Xa(e,u),e.intersect=function(l){return pa.rect(e,l)},t},"rect"),JTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r,halfPadding:i}=await Po(A,e,"node "+e.classes,!0),u=t.insert("rect",":first-child"),a=e.positioned?e.width:r.width+e.padding,n=e.positioned?e.height:r.height+e.padding,o=e.positioned?-a/2:-r.width/2-i,s=e.positioned?-n/2:-r.height/2-i;if(u.attr("class","basic cluster composite label-container").attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("x",o).attr("y",s).attr("width",a).attr("height",n),e.props){let l=new Set(Object.keys(e.props));if(e.props.borders)qO(u,e.props.borders,a,n),l.delete("borders");l.forEach((g)=>{sA.warn(`Unknown node property ${g}`)})}return Xa(e,u),e.intersect=function(l){return pa.rect(e,l)},t},"composite"),OTt=y(async(A,e)=>{let{shapeSvg:t}=await Po(A,e,"label",!0);sA.trace("Classes = ",e.class);let r=t.insert("rect",":first-child"),i=0,u=0;if(r.attr("width",i).attr("height",u),t.attr("class","label edgeLabel"),e.props){let a=new Set(Object.keys(e.props));if(e.props.borders)qO(r,e.props.borders,i,u),a.delete("borders");a.forEach((n)=>{sA.warn(`Unknown node property ${n}`)})}return Xa(e,r),e.intersect=function(a){return pa.rect(e,a)},t},"labelRect");y(qO,"applyNodePropertyBorders");PTt=y(async(A,e)=>{let t;if(!e.classes)t="node default";else t="node "+e.classes;let r=A.insert("g").attr("class",t).attr("id",e.domId||e.id),i=r.insert("rect",":first-child"),u=r.insert("line"),a=r.insert("g").attr("class","label"),n=e.labelText.flat?e.labelText.flat():e.labelText,o="";if(typeof n==="object")o=n[0];else o=n;sA.info("Label text abc79",o,n,typeof n==="object");let s=await MC(a,o,e.labelStyle,!0,!0),l={width:0,height:0};if(Fi(OA())){let d=s.children[0],I=Qe(s);l=d.getBoundingClientRect(),I.attr("width",l.width),I.attr("height",l.height)}sA.info("Text 2",n);let g=n.slice(1,n.length),C=s.getBBox(),B=await MC(a,g.join?g.join("<br/>"):g,e.labelStyle,!0,!0);if(Fi(OA())){let d=B.children[0],I=Qe(B);l=d.getBoundingClientRect(),I.attr("width",l.width),I.attr("height",l.height)}let E=e.padding/2;return Qe(B).attr("transform","translate( "+(l.width>C.width?0:(C.width-l.width)/2)+", "+(C.height+E+5)+")"),Qe(s).attr("transform","translate( "+(l.width<C.width?0:-(C.width-l.width)/2)+", 0)"),l=a.node().getBBox(),a.attr("transform","translate("+-l.width/2+", "+(-l.height/2-E+3)+")"),i.attr("class","outer title-state").attr("x",-l.width/2-E).attr("y",-l.height/2-E).attr("width",l.width+e.padding).attr("height",l.height+e.padding),u.attr("class","divider").attr("x1",-l.width/2-E).attr("x2",l.width/2+E).attr("y1",-l.height/2-E+C.height+E).attr("y2",-l.height/2-E+C.height+E),Xa(e,i),e.intersect=function(d){return pa.rect(e,d)},r},"rectWithTitle"),_Tt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,fg(e,void 0),!0),i=r.height+e.padding,u=r.width+i/4+e.padding,a=t.insert("rect",":first-child").attr("style",e.style).attr("rx",i/2).attr("ry",i/2).attr("x",-u/2).attr("y",-i/2).attr("width",u).attr("height",i);return Xa(e,a),e.intersect=function(n){return pa.rect(e,n)},t},"stadium"),WTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r,halfPadding:i}=await Po(A,e,fg(e,void 0),!0),u=t.insert("circle",":first-child");return u.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",r.width/2+i).attr("width",r.width+e.padding).attr("height",r.height+e.padding),sA.info("Circle main"),Xa(e,u),e.intersect=function(a){return sA.info("Circle intersect",e,r.width/2+i,a),pa.circle(e,r.width/2+i,a)},t},"circle"),qTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r,halfPadding:i}=await Po(A,e,fg(e,void 0),!0),u=5,a=t.insert("g",":first-child"),n=a.insert("circle"),o=a.insert("circle");return a.attr("class",e.class),n.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",r.width/2+i+5).attr("width",r.width+e.padding+10).attr("height",r.height+e.padding+10),o.attr("style",e.style).attr("rx",e.rx).attr("ry",e.ry).attr("r",r.width/2+i).attr("width",r.width+e.padding).attr("height",r.height+e.padding),sA.info("DoubleCircle main"),Xa(e,n),e.intersect=function(s){return sA.info("DoubleCircle intersect",e,r.width/2+i+5,s),pa.circle(e,r.width/2+i+5,s)},t},"doublecircle"),zTt=y(async(A,e)=>{let{shapeSvg:t,bbox:r}=await Po(A,e,fg(e,void 0),!0),i=r.width+e.padding,u=r.height+e.padding,a=[{x:0,y:0},{x:i,y:0},{x:i,y:-u},{x:0,y:-u},{x:0,y:0},{x:-8,y:0},{x:i+8,y:0},{x:i+8,y:-u},{x:-8,y:-u},{x:-8,y:0}],n=YC(t,i,u,a);return n.attr("style",e.style),Xa(e,n),e.intersect=function(o){return pa.polygon(e,a,o)},t},"subroutine"),ZTt=y((A,e)=>{let t=A.insert("g").attr("class","node default").attr("id",e.domId||e.id),r=t.insert("circle",":first-child");return r.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),Xa(e,r),e.intersect=function(i){return pa.circle(e,7,i)},t},"start"),qae=y((A,e,t)=>{let r=A.insert("g").attr("class","node default").attr("id",e.domId||e.id),i=70,u=10;if(t==="LR")i=10,u=70;let a=r.append("rect").attr("x",-1*i/2).attr("y",-1*u/2).attr("width",i).attr("height",u).attr("class","fork-join");return Xa(e,a),e.height=e.height+e.padding/2,e.width=e.width+e.padding/2,e.intersect=function(n){return pa.rect(e,n)},r},"forkJoin"),VTt=y((A,e)=>{let t=A.insert("g").attr("class","node default").attr("id",e.domId||e.id),r=t.insert("circle",":first-child"),i=t.insert("circle",":first-child");return i.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),r.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),Xa(e,i),e.intersect=function(u){return pa.circle(e,7,u)},t},"end"),jTt=y(async(A,e)=>{let t=e.padding/2,r=4,i=8,u;if(!e.classes)u="node default";else u="node "+e.classes;let a=A.insert("g").attr("class",u).attr("id",e.domId||e.id),n=a.insert("rect",":first-child"),o=a.insert("line"),s=a.insert("line"),l=0,g=4,C=a.insert("g").attr("class","label"),B=0,E=e.classData.annotations?.[0],d=e.classData.annotations[0]?"«"+e.classData.annotations[0]+"»":"",I=await MC(C,d,e.labelStyle,!0,!0),h=I.getBBox();if(Fi(OA())){let b=I.children[0],k=Qe(I);h=b.getBoundingClientRect(),k.attr("width",h.width),k.attr("height",h.height)}if(e.classData.annotations[0])g+=h.height+4,l+=h.width;let Q=e.classData.label;if(e.classData.type!==void 0&&e.classData.type!=="")if(Fi(OA()))Q+="&lt;"+e.classData.type+"&gt;";else Q+="<"+e.classData.type+">";let p=await MC(C,Q,e.labelStyle,!0,!0);Qe(p).attr("class","classTitle");let m=p.getBBox();if(Fi(OA())){let b=p.children[0],k=Qe(p);m=b.getBoundingClientRect(),k.attr("width",m.width),k.attr("height",m.height)}if(g+=m.height+4,m.width>l)l=m.width;let f=[];e.classData.members.forEach(async(b)=>{let k=b.getDisplayDetails(),v=k.displayText;if(Fi(OA()))v=v.replace(/</g,"&lt;").replace(/>/g,"&gt;");let S=await MC(C,v,k.cssStyle?k.cssStyle:e.labelStyle,!0,!0),x=S.getBBox();if(Fi(OA())){let F=S.children[0],T=Qe(S);x=F.getBoundingClientRect(),T.attr("width",x.width),T.attr("height",x.height)}if(x.width>l)l=x.width;g+=x.height+4,f.push(S)}),g+=8;let D=[];if(e.classData.methods.forEach(async(b)=>{let k=b.getDisplayDetails(),v=k.displayText;if(Fi(OA()))v=v.replace(/</g,"&lt;").replace(/>/g,"&gt;");let S=await MC(C,v,k.cssStyle?k.cssStyle:e.labelStyle,!0,!0),x=S.getBBox();if(Fi(OA())){let F=S.children[0],T=Qe(S);x=F.getBoundingClientRect(),T.attr("width",x.width),T.attr("height",x.height)}if(x.width>l)l=x.width;g+=x.height+4,D.push(S)}),g+=8,E){let b=(l-h.width)/2;Qe(I).attr("transform","translate( "+(-1*l/2+b)+", "+-1*g/2+")"),B=h.height+4}let w=(l-m.width)/2;return Qe(p).attr("transform","translate( "+(-1*l/2+w)+", "+(-1*g/2+B)+")"),B+=m.height+4,o.attr("class","divider").attr("x1",-l/2-t).attr("x2",l/2+t).attr("y1",-g/2-t+8+B).attr("y2",-g/2-t+8+B),B+=8,f.forEach((b)=>{Qe(b).attr("transform","translate( "+-l/2+", "+(-1*g/2+B+4)+")");let k=b?.getBBox();B+=(k?.height??0)+4}),B+=8,s.attr("class","divider").attr("x1",-l/2-t).attr("x2",l/2+t).attr("y1",-g/2-t+8+B).attr("y2",-g/2-t+8+B),B+=8,D.forEach((b)=>{Qe(b).attr("transform","translate( "+-l/2+", "+(-1*g/2+B)+")");let k=b?.getBBox();B+=(k?.height??0)+4}),n.attr("style",e.style).attr("class","outer title-state").attr("x",-l/2-t).attr("y",-(g/2)-t).attr("width",l+e.padding).attr("height",g+e.padding),Xa(e,n),e.intersect=function(b){return pa.rect(e,b)},a},"class_box"),zae={rhombus:Wae,composite:JTt,question:Wae,rect:KTt,labelRect:OTt,rectWithTitle:PTt,choice:STt,circle:WTt,doublecircle:qTt,stadium:_Tt,hexagon:LTt,block_arrow:RTt,rect_left_inv_arrow:NTt,lean_right:GTt,lean_left:UTt,trapezoid:MTt,inv_trapezoid:TTt,rect_right_inv_arrow:YTt,cylinder:HTt,start:ZTt,end:VTt,note:xTt,subroutine:zTt,fork:qae,join:qae,class_box:jTt},PO={},lne=y(async(A,e,t)=>{let r,i;if(e.link){let u;if(OA().securityLevel==="sandbox")u="_top";else if(e.linkTarget)u=e.linkTarget||"_blank";r=A.insert("svg:a").attr("xlink:href",e.link).attr("target",u),i=await zae[e.shape](r,e,t)}else i=await zae[e.shape](A,e,t),r=i;if(e.tooltip)i.attr("title",e.tooltip);if(e.class)i.attr("class","node default "+e.class);if(PO[e.id]=r,e.haveCallback)PO[e.id].attr("class",PO[e.id].attr("class")+" clickable");return r},"insertNode"),XTt=y((A)=>{let e=PO[A.id];sA.trace("Transforming node",A.diff,A,"translate("+(A.x-A.width/2-5)+", "+A.width/2+")");let t=8,r=A.diff||0;if(A.clusterNode)e.attr("transform","translate("+(A.x+r-A.width/2)+", "+(A.y-A.height/2-t)+")");else e.attr("transform","translate("+A.x+", "+A.y+")");return r},"positionNode");y(oBA,"getNodeFromBlock");y(gne,"calculateBlockSize");y(cne,"insertBlockPositioned");y(zO,"performOperations");y(Cne,"calculateBlockSizes");y(Bne,"insertBlocks");y(Ene,"insertEdges");$Tt=y(function(A,e){return e.db.getClasses()},"getClasses"),AYt=y(async function(A,e,t,r){let{securityLevel:i,block:u}=ot(),a=r.db;a.setDiagramId(e);let n;if(i==="sandbox")n=Qe("#i"+e);let o=i==="sandbox"?Qe(n.nodes()[0].contentDocument.body):Qe("body"),s=i==="sandbox"?o.select(`[id="${e}"]`):Qe(`[id="${e}"]`);gTt(s,["point","circle","cross"],r.type,e);let g=a.getBlocks(),C=a.getBlocksFlat(),B=a.getEdges(),E=s.insert("g").attr("class","block");await Cne(E,g,a);let d=rne(a);if(await Bne(E,g,a),await Ene(E,B,C,a,e),d){let I=d,h=Math.max(1,Math.round(0.125*(I.width/I.height))),Q=I.height+h+10,p=I.width+10,{useMaxWidth:m}=u;Xr(s,Q,p,!!m),sA.debug("Here Bounds",d,I),s.attr("viewBox",`${I.x-5} ${I.y-5} ${I.width+10} ${I.height+10}`)}},"draw"),eYt={draw:AYt,getClasses:$Tt},dne={parser:SMt,db:jMt,renderer:eYt,styles:$Mt}});function yne(A){return A.some((e)=>mne.test(e))}function wne(A){for(let e of A){let t=Dne.exec(e);if(t?.index&&t.index>0)return t.index}return 4}function bne(A,e){return A.replace(/\bline\s+(\d+)\b/gi,(t,r)=>{let i=parseInt(r,10),u=e.get(i);return u?`line ${u}`:t})}function vne(A){let e=A.split(`
`),t=new Map,r=-1;for(let[o,s]of e.entries())if(s.trim()==="treeView-beta"){r=o;break}if(r===-1)return{text:A,lineMap:t};let i=[];for(let o=r+1;o<e.length;o++){let s=e[o];if(s.trim()===""||pne.test(s)||Qne.test(s))continue;if(hne.test(s))continue;i.push(s.replace(/\t/g," "))}if(!yne(i))return{text:A,lineMap:t};let u=wne(i),a=[],n=0;for(let o=0;o<=r;o++)a.push(e[o]),n++,t.set(n,o+1);for(let o=r+1;o<e.length;o++){let s=e[o],l=s.trim(),g=o+1;if(l===""){a.push(s),n++,t.set(n,g);continue}if(pne.test(s)){a.push(s),n++,t.set(n,g);continue}if(Qne.test(s)){a.push(s),n++,t.set(n,g);continue}if(hne.test(s))continue;let C=s.replace(/\t/g," "),B=Dne.exec(C);if(B?.index!==void 0){let E=B.index,d=Math.round(E/u)+1,I=E+1;while(I<C.length&&tYt.test(C[I]))I++;while(I<C.length&&C[I]===" ")I++;let h=C.slice(I).trimEnd();if(!h)throw Error(`Line ${g}: Empty node — expected a filename or directory name after the box-drawing prefix`);let Q=rYt.repeat(d);a.push(Q+h),n++,t.set(n,g)}else if(/^[\s─━│┃└┗├┣]+$/.test(C))continue;else if(mne.test(C))a.push(s),n++,t.set(n,g);else if(/^\s+/.test(C))throw Error(`Line ${g}: Unexpected indentation without box-drawing characters. In box-drawing format, use ├── or └── prefixes for indented nodes.`);else a.push(s),n++,t.set(n,g)}return{text:a.join(`
`),lineMap:t}}function kne(A,e){let t=e?.filenameIcons?.[A];if(t)return t;let r=A.lastIndexOf(".");if(r>0){let i=A.substring(r).toLowerCase(),u=e?.extensionIcons;return u?.[i]??u?.[i.slice(1)]}return}function lBA(A,e){if(A.includes(":"))return A;if(A in c7.icons||!e)return`${c7.prefix}:${A}`;return`${e}:${A}`}function cBA(A,e){if(A.icon==="none")return;if(A.icon)return lBA(A.icon,e.defaultIconPack);if(!e.showIcons)return;if(A.nodeType==="file"){let t=kne(A.name,e);if(t==="none")return;if(t)return lBA(t,e.defaultIconPack)}return`${c7.prefix}:${A.nodeType==="directory"?"folder":"file"}`}var mne,Dne,tYt,hne,Qne,pne,rYt=" ",qE,iYt,uYt,aYt,nYt,oYt,sYt,lYt,sBA,gYt,cYt,c7,gBA=14,CYt=4,BYt=16,Fne,EYt,dYt,fne,IYt,hYt,QYt,pYt,fYt,mYt,DYt,xne;var Sne=_(()=>{wY();ms();cn();Ln();ai();rr();ir();Nt();I0();mne=/[─━│┃└┗├┣]/,Dne=/[└┗├┣]/,tYt=/[─━]/,hne=/^[\s│┃]+$/,Qne=/^\s*(title[\t ]|accTitle[\t ]*:|accDescr[\t ]*[:{])/,pne=/^\s*%%/;y(yne,"isBoxDrawingFormat");y(wne,"inferSegmentWidth");y(bne,"remapErrorLines");y(vne,"preprocessBoxDrawing");qE=new dw(()=>({cnt:1,stack:[{id:0,level:-1,name:"/",nodeType:"directory",children:[]}]})),iYt=y(()=>{qE.reset(),cr()},"clear"),uYt=y(()=>qE.records.stack[0],"getRoot"),aYt=y(()=>qE.records.cnt,"getCount"),nYt=ur.treeView,oYt=y(()=>si(nYt,ot().treeView),"getConfig"),sYt=y((A,e,t,r,i,u)=>{while(A<=qE.records.stack[qE.records.stack.length-1].level)qE.records.stack.pop();let a={id:qE.records.cnt++,level:A,name:e,nodeType:t,icon:i,cssClass:r,description:u,children:[]};qE.records.stack[qE.records.stack.length-1].children.push(a),qE.records.stack.push(a)},"addNode"),lYt={clear:iYt,addNode:sYt,getRoot:uYt,getCount:aYt,getConfig:oYt,getAccTitle:kr,getAccDescription:xr,getDiagramTitle:Sr,setAccDescription:Fr,setAccTitle:Dr,setDiagramTitle:Tr},sBA=lYt,gYt=y((A)=>{hu(A,sBA);for(let e of A.nodes){let t=typeof e.indent==="number"?e.indent:0,r=e.name,i=r.endsWith("/");if(i)r=r.slice(0,-1);let u=i?"directory":"file",a=e.classAnnotation||void 0,n=e.iconAnnotation,o=n!==void 0?n||"none":void 0,s=e.descAnnotation||void 0,l=s?gr(s,ot()):void 0;sBA.addNode(t,r,u,a,o,l)}},"populate"),cYt={parse:y(async(A)=>{let{text:e,lineMap:t}=vne(A);try{let r=await Ga("treeView",e);sA.debug(r),gYt(r)}catch(r){if(t.size>0&&r instanceof Error)r.message=bne(r.message,t);throw r}},"parse")},c7={prefix:"mermaid-treeview",height:24,width:24,icons:{folder:{body:'<path fill="currentColor" d="M10.59 4.59A2 2 0 0 0 9.17 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.17z"/>'},file:{body:'<path fill="currentColor" fill-rule="evenodd" d="M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8.83a2 2 0 0 0-.59-1.42l-4.82-4.82A2 2 0 0 0 13.17 2H6Zm7.5 1.9l4.6 4.6h-3.6a1 1 0 0 1-1-1V3.9Z" clip-rule="evenodd"/>'}}};y(kne,"detectIcon");y(lBA,"qualifyIcon");y(cBA,"getNodeIcon");jD([{name:c7.prefix,icons:c7}]);Fne=y((A,e)=>`tv-icon-${A}-${e.replace(/[^\w-]/g,"-")}`,"iconSymbolId"),EYt=y(async(A,e,t,r)=>{let i=new Set,u=y((o)=>{let s=cBA(o,t);if(s)i.add(s);o.children.forEach(u)},"collect");if(u(e),i.size===0)return;let a=await Promise.all([...i].map(async(o)=>({icon:o,svg:await tg(o,{height:gBA,width:gBA})}))),n=A.append("defs");for(let{icon:o,svg:s}of a)n.append("g").attr("id",Fne(r,o)).html(s)},"injectIconDefs"),dYt=y((A,e,t,r,i,u)=>{let a=r.append("g"),n="treeView-node-label";if(t.nodeType==="directory")n+=" treeView-node-dir";if(t.cssClass)n+=` ${t.cssClass}`;let o=gBA+CYt,s=cBA(t,i),l=s!==void 0;if(s)a.append("use").attr("xlink:href",`#${Fne(u,s)}`).attr("x",A+i.paddingX).attr("y",e+i.paddingY).attr("class","treeView-node-icon");let g=a.append("text").text(t.name).attr("dominant-baseline","middle").attr("class",n),{height:C,width:B}=g.node().getBBox(),E=C+i.paddingY*2,d=A+i.paddingX+(l?o:0);g.attr("x",d),g.attr("y",e+E/2);let I=d+B,h=B+i.paddingX*2+(l?o:0);if(t.BBox={x:A,y:e,width:h,height:E},t.cssClass?.split(/\s+/).includes("highlight"))a.insert("rect",":first-child").attr("x",A).attr("y",e+1).attr("width",0).attr("height",E-2).attr("rx",3).attr("class","treeView-highlight-bg");return{node:t,nodeGroup:a,labelRightEdge:I,centerY:e+E/2}},"positionLabel"),fne=y((A,e,t,r,i,u)=>A.append("line").attr("x1",e).attr("y1",t).attr("x2",r).attr("y2",i).attr("stroke-width",u).attr("class","treeView-node-line"),"positionLine"),IYt=y((A,e,t,r)=>{let i=0,u=0,a=[],n=y((l,g,C,B)=>{let E=B*(C.rowIndent+C.paddingX),d=dYt(E,i,g,l,C,r);a.push(d);let{height:I,width:h}=g.BBox;fne(l,E-C.rowIndent,i+I/2,E,i+I/2,C.lineThickness),u=Math.max(u,E+h),i+=I},"drawNode"),o=y((l,g=0)=>{n(A,l,t,g),l.children.forEach((d)=>{o(d,g+1)});let{x:C,y:B,height:E}=l.BBox;if(l.children.length){let{y:d,height:I}=l.children[l.children.length-1].BBox;fne(A,C+t.paddingX,B+E,C+t.paddingX,d+I/2+t.lineThickness/2,t.lineThickness)}},"processNode");o(e);let s=a.filter((l)=>l.node.description);if(s.length>0){let g=Math.max(...a.map((C)=>C.labelRightEdge))+BYt;for(let C of s){let E=C.nodeGroup.append("text").text(C.node.description).attr("dominant-baseline","middle").attr("class","treeView-node-description").attr("x",g).attr("y",C.centerY).node().getBBox();u=Math.max(u,g+E.width+t.paddingX)}}for(let l of a)if(l.node.cssClass?.split(/\s+/).includes("highlight")){let g=l.nodeGroup.select(".treeView-highlight-bg");if(!g.empty()){let C=u-l.node.BBox.x+8;g.attr("width",C),u=Math.max(u,l.node.BBox.x+C+2)}}return{totalHeight:i,totalWidth:u}},"drawTree"),hYt=y(async(A,e,t,r)=>{sA.debug(`Rendering treeView diagram
`+A);let i=r.db,u=i.getRoot(),a=i.getConfig(),n=zi(e);await EYt(n,u,a,e);let o=n.append("g");o.attr("class","tree-view");let{totalHeight:s,totalWidth:l}=IYt(o,u,a,e);n.attr("viewBox",`-${a.lineThickness/2} 0 ${l} ${s}`),Xr(n,s,l,a.useMaxWidth)},"draw"),QYt={draw:hYt},pYt=QYt,fYt={labelFontSize:"16px",labelColor:"black",lineColor:"black",iconColor:"#546e7a",descriptionColor:"#6a9955",highlightBg:"rgba(255, 193, 7, 0.15)",highlightStroke:"#ffc107"},mYt=y(({treeView:A})=>{let{labelFontSize:e,labelColor:t,lineColor:r,iconColor:i,descriptionColor:u,highlightBg:a,highlightStroke:n}=si(fYt,A);return`
.treeView-node-label {
font-size: ${e};
fill: ${t};
white-space: pre;
}
.treeView-node-dir {
font-weight: bold;
}
.treeView-node-line {
stroke: ${r};
}
.treeView-node-icon {
color: ${i};
}
.treeView-node-description {
font-size: ${e};
fill: ${u};
font-style: italic;
white-space: pre;
}
.treeView-highlight-bg {
fill: ${a};
stroke: ${n};
stroke-width: 1;
}
`},"styles"),DYt=mYt,xne={db:sBA,renderer:pYt,parser:cYt,styles:DYt}});var BBA=wu(function(C7,CBA){(function(e,t){if(typeof C7==="object"&&typeof CBA==="object")CBA.exports=t();else if(typeof define==="function"&&define.amd)define([],t);else if(typeof C7==="object")C7.layoutBase=t();else e.layoutBase=t()})(C7,function(){return function(A){var e={};function t(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return A[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}return t.m=A,t.c=e,t.i=function(r){return r},t.d=function(r,i,u){if(!t.o(r,i))Object.defineProperty(r,i,{configurable:!1,enumerable:!0,get:u})},t.n=function(r){var i=r&&r.__esModule?function(){return r.default}:function(){return r};return t.d(i,"a",i),i},t.o=function(r,i){return Object.prototype.hasOwnProperty.call(r,i)},t.p="",t(t.s=28)}([function(A,e,t){function r(){}r.QUALITY=1,r.DEFAULT_CREATE_BENDS_AS_NEEDED=!1,r.DEFAULT_INCREMENTAL=!1,r.DEFAULT_ANIMATION_ON_LAYOUT=!0,r.DEFAULT_ANIMATION_DURING_LAYOUT=!1,r.DEFAULT_ANIMATION_PERIOD=50,r.DEFAULT_UNIFORM_LEAF_NODE_SIZES=!1,r.DEFAULT_GRAPH_MARGIN=15,r.NODE_DIMENSIONS_INCLUDE_LABELS=!1,r.SIMPLE_NODE_SIZE=40,r.SIMPLE_NODE_HALF_SIZE=r.SIMPLE_NODE_SIZE/2,r.EMPTY_COMPOUND_NODE_SIZE=40,r.MIN_EDGE_LENGTH=1,r.WORLD_BOUNDARY=1e6,r.INITIAL_WORLD_BOUNDARY=r.WORLD_BOUNDARY/1000,r.WORLD_CENTER_X=1200,r.WORLD_CENTER_Y=900,A.exports=r},function(A,e,t){var r=t(2),i=t(8),u=t(9);function a(o,s,l){r.call(this,l),this.isOverlapingSourceAndTarget=!1,this.vGraphObject=l,this.bendpoints=[],this.source=o,this.target=s}a.prototype=Object.create(r.prototype);for(var n in r)a[n]=r[n];a.prototype.getSource=function(){return this.source},a.prototype.getTarget=function(){return this.target},a.prototype.isInterGraph=function(){return this.isInterGraph},a.prototype.getLength=function(){return this.length},a.prototype.isOverlapingSourceAndTarget=function(){return this.isOverlapingSourceAndTarget},a.prototype.getBendpoints=function(){return this.bendpoints},a.prototype.getLca=function(){return this.lca},a.prototype.getSourceInLca=function(){return this.sourceInLca},a.prototype.getTargetInLca=function(){return this.targetInLca},a.prototype.getOtherEnd=function(o){if(this.source===o)return this.target;else if(this.target===o)return this.source;else throw"Node is not incident with this edge"},a.prototype.getOtherEndInGraph=function(o,s){var l=this.getOtherEnd(o),g=s.getGraphManager().getRoot();while(!0){if(l.getOwner()==s)return l;if(l.getOwner()==g)break;l=l.getOwner().getParent()}return null},a.prototype.updateLength=function(){var o=[,,,,];if(this.isOverlapingSourceAndTarget=i.getIntersection(this.target.getRect(),this.source.getRect(),o),!this.isOverlapingSourceAndTarget){if(this.lengthX=o[0]-o[2],this.lengthY=o[1]-o[3],Math.abs(this.lengthX)<1)this.lengthX=u.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=u.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)}},a.prototype.updateLengthSimple=function(){if(this.lengthX=this.target.getCenterX()-this.source.getCenterX(),this.lengthY=this.target.getCenterY()-this.source.getCenterY(),Math.abs(this.lengthX)<1)this.lengthX=u.sign(this.lengthX);if(Math.abs(this.lengthY)<1)this.lengthY=u.sign(this.lengthY);this.length=Math.sqrt(this.lengthX*this.lengthX+this.lengthY*this.lengthY)},A.exports=a},function(A,e,t){function r(i){this.vGraphObject=i}A.exports=r},function(A,e,t){var r=t(2),i=t(10),u=t(13),a=t(0),n=t(16),o=t(5);function s(g,C,B,E){if(B==null&&E==null)E=C;if(r.call(this,E),g.graphManager!=null)g=g.graphManager;if(this.estimatedSize=i.MIN_VALUE,this.inclusionTreeDepth=i.MAX_VALUE,this.vGraphObject=E,this.edges=[],this.graphManager=g,B!=null&&C!=null)this.rect=new u(C.x,C.y,B.width,B.height);else this.rect=new u}s.prototype=Object.create(r.prototype);for(var l in r)s[l]=r[l];s.prototype.getEdges=function(){return this.edges},s.prototype.getChild=function(){return this.child},s.prototype.getOwner=function(){return this.owner},s.prototype.getWidth=function(){return this.rect.width},s.prototype.setWidth=function(g){this.rect.width=g},s.prototype.getHeight=function(){return this.rect.height},s.prototype.setHeight=function(g){this.rect.height=g},s.prototype.getCenterX=function(){return this.rect.x+this.rect.width/2},s.prototype.getCenterY=function(){return this.rect.y+this.rect.height/2},s.prototype.getCenter=function(){return new o(this.rect.x+this.rect.width/2,this.rect.y+this.rect.height/2)},s.prototype.getLocation=function(){return new o(this.rect.x,this.rect.y)},s.prototype.getRect=function(){return this.rect},s.prototype.getDiagonal=function(){return Math.sqrt(this.rect.width*this.rect.width+this.rect.height*this.rect.height)},s.prototype.getHalfTheDiagonal=function(){return Math.sqrt(this.rect.height*this.rect.height+this.rect.width*this.rect.width)/2},s.prototype.setRect=function(g,C){this.rect.x=g.x,this.rect.y=g.y,this.rect.width=C.width,this.rect.height=C.height},s.prototype.setCenter=function(g,C){this.rect.x=g-this.rect.width/2,this.rect.y=C-this.rect.height/2},s.prototype.setLocation=function(g,C){this.rect.x=g,this.rect.y=C},s.prototype.moveBy=function(g,C){this.rect.x+=g,this.rect.y+=C},s.prototype.getEdgeListToNode=function(g){var C=[],B,E=this;return E.edges.forEach(function(d){if(d.target==g){if(d.source!=E)throw"Incorrect edge source!";C.push(d)}}),C},s.prototype.getEdgesBetween=function(g){var C=[],B,E=this;return E.edges.forEach(function(d){if(!(d.source==E||d.target==E))throw"Incorrect edge source and/or target";if(d.target==g||d.source==g)C.push(d)}),C},s.prototype.getNeighborsList=function(){var g=new Set,C=this;return C.edges.forEach(function(B){if(B.source==C)g.add(B.target);else{if(B.target!=C)throw"Incorrect incidency!";g.add(B.source)}}),g},s.prototype.withChildren=function(){var g=new Set,C,B;if(g.add(this),this.child!=null){var E=this.child.getNodes();for(var d=0;d<E.length;d++)C=E[d],B=C.withChildren(),B.forEach(function(I){g.add(I)})}return g},s.prototype.getNoOfChildren=function(){var g=0,C;if(this.child==null)g=1;else{var B=this.child.getNodes();for(var E=0;E<B.length;E++)C=B[E],g+=C.getNoOfChildren()}if(g==0)g=1;return g},s.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},s.prototype.calcEstimatedSize=function(){if(this.child==null)return this.estimatedSize=(this.rect.width+this.rect.height)/2;else return this.estimatedSize=this.child.calcEstimatedSize(),this.rect.width=this.estimatedSize,this.rect.height=this.estimatedSize,this.estimatedSize},s.prototype.scatter=function(){var g,C,B=-a.INITIAL_WORLD_BOUNDARY,E=a.INITIAL_WORLD_BOUNDARY;g=a.WORLD_CENTER_X+n.nextDouble()*(E-B)+B;var d=-a.INITIAL_WORLD_BOUNDARY,I=a.INITIAL_WORLD_BOUNDARY;C=a.WORLD_CENTER_Y+n.nextDouble()*(I-d)+d,this.rect.x=g,this.rect.y=C},s.prototype.updateBounds=function(){if(this.getChild()==null)throw"assert failed";if(this.getChild().getNodes().length!=0){var g=this.getChild();if(g.updateBounds(!0),this.rect.x=g.getLeft(),this.rect.y=g.getTop(),this.setWidth(g.getRight()-g.getLeft()),this.setHeight(g.getBottom()-g.getTop()),a.NODE_DIMENSIONS_INCLUDE_LABELS){var C=g.getRight()-g.getLeft(),B=g.getBottom()-g.getTop();if(this.labelWidth){if(this.labelPosHorizontal=="left")this.rect.x-=this.labelWidth,this.setWidth(C+this.labelWidth);else if(this.labelPosHorizontal=="center"&&this.labelWidth>C)this.rect.x-=(this.labelWidth-C)/2,this.setWidth(this.labelWidth);else if(this.labelPosHorizontal=="right")this.setWidth(C+this.labelWidth)}if(this.labelHeight){if(this.labelPosVertical=="top")this.rect.y-=this.labelHeight,this.setHeight(B+this.labelHeight);else if(this.labelPosVertical=="center"&&this.labelHeight>B)this.rect.y-=(this.labelHeight-B)/2,this.setHeight(this.labelHeight);else if(this.labelPosVertical=="bottom")this.setHeight(B+this.labelHeight)}}}},s.prototype.getInclusionTreeDepth=function(){if(this.inclusionTreeDepth==i.MAX_VALUE)throw"assert failed";return this.inclusionTreeDepth},s.prototype.transform=function(g){var C=this.rect.x;if(C>a.WORLD_BOUNDARY)C=a.WORLD_BOUNDARY;else if(C<-a.WORLD_BOUNDARY)C=-a.WORLD_BOUNDARY;var B=this.rect.y;if(B>a.WORLD_BOUNDARY)B=a.WORLD_BOUNDARY;else if(B<-a.WORLD_BOUNDARY)B=-a.WORLD_BOUNDARY;var E=new o(C,B),d=g.inverseTransformPoint(E);this.setLocation(d.x,d.y)},s.prototype.getLeft=function(){return this.rect.x},s.prototype.getRight=function(){return this.rect.x+this.rect.width},s.prototype.getTop=function(){return this.rect.y},s.prototype.getBottom=function(){return this.rect.y+this.rect.height},s.prototype.getParent=function(){if(this.owner==null)return null;return this.owner.getParent()},A.exports=s},function(A,e,t){var r=t(0);function i(){}for(var u in r)i[u]=r[u];i.MAX_ITERATIONS=2500,i.DEFAULT_EDGE_LENGTH=50,i.DEFAULT_SPRING_STRENGTH=0.45,i.DEFAULT_REPULSION_STRENGTH=4500,i.DEFAULT_GRAVITY_STRENGTH=0.4,i.DEFAULT_COMPOUND_GRAVITY_STRENGTH=1,i.DEFAULT_GRAVITY_RANGE_FACTOR=3.8,i.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=1.5,i.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION=!0,i.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION=!0,i.DEFAULT_COOLING_FACTOR_INCREMENTAL=0.3,i.COOLING_ADAPTATION_FACTOR=0.33,i.ADAPTATION_LOWER_NODE_LIMIT=1000,i.ADAPTATION_UPPER_NODE_LIMIT=5000,i.MAX_NODE_DISPLACEMENT_INCREMENTAL=100,i.MAX_NODE_DISPLACEMENT=i.MAX_NODE_DISPLACEMENT_INCREMENTAL*3,i.MIN_REPULSION_DIST=i.DEFAULT_EDGE_LENGTH/10,i.CONVERGENCE_CHECK_PERIOD=100,i.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=0.1,i.MIN_EDGE_LENGTH=1,i.GRID_CALCULATION_CHECK_PERIOD=10,A.exports=i},function(A,e,t){function r(i,u){if(i==null&&u==null)this.x=0,this.y=0;else this.x=i,this.y=u}r.prototype.getX=function(){return this.x},r.prototype.getY=function(){return this.y},r.prototype.setX=function(i){this.x=i},r.prototype.setY=function(i){this.y=i},r.prototype.getDifference=function(i){return new DimensionD(this.x-i.x,this.y-i.y)},r.prototype.getCopy=function(){return new r(this.x,this.y)},r.prototype.translate=function(i){return this.x+=i.width,this.y+=i.height,this},A.exports=r},function(A,e,t){var r=t(2),i=t(10),u=t(0),a=t(7),n=t(3),o=t(1),s=t(13),l=t(12),g=t(11);function C(E,d,I){if(r.call(this,I),this.estimatedSize=i.MIN_VALUE,this.margin=u.DEFAULT_GRAPH_MARGIN,this.edges=[],this.nodes=[],this.isConnected=!1,this.parent=E,d!=null&&d instanceof a)this.graphManager=d;else if(d!=null&&d instanceof Layout)this.graphManager=d.graphManager}C.prototype=Object.create(r.prototype);for(var B in r)C[B]=r[B];C.prototype.getNodes=function(){return this.nodes},C.prototype.getEdges=function(){return this.edges},C.prototype.getGraphManager=function(){return this.graphManager},C.prototype.getParent=function(){return this.parent},C.prototype.getLeft=function(){return this.left},C.prototype.getRight=function(){return this.right},C.prototype.getTop=function(){return this.top},C.prototype.getBottom=function(){return this.bottom},C.prototype.isConnected=function(){return this.isConnected},C.prototype.add=function(E,d,I){if(d==null&&I==null){var h=E;if(this.graphManager==null)throw"Graph has no graph mgr!";if(this.getNodes().indexOf(h)>-1)throw"Node already in graph!";return h.owner=this,this.getNodes().push(h),h}else{var Q=E;if(!(this.getNodes().indexOf(d)>-1&&this.getNodes().indexOf(I)>-1))throw"Source or target not in graph!";if(!(d.owner==I.owner&&d.owner==this))throw"Both owners must be this graph!";if(d.owner!=I.owner)return null;if(Q.source=d,Q.target=I,Q.isInterGraph=!1,this.getEdges().push(Q),d.edges.push(Q),I!=d)I.edges.push(Q);return Q}},C.prototype.remove=function(E){var d=E;if(E instanceof n){if(d==null)throw"Node is null!";if(!(d.owner!=null&&d.owner==this))throw"Owner graph is invalid!";if(this.graphManager==null)throw"Owner graph manager is invalid!";var I=d.edges.slice(),h,Q=I.length;for(var p=0;p<Q;p++)if(h=I[p],h.isInterGraph)this.graphManager.remove(h);else h.source.owner.remove(h);var m=this.nodes.indexOf(d);if(m==-1)throw"Node not in owner node list!";this.nodes.splice(m,1)}else if(E instanceof o){var h=E;if(h==null)throw"Edge is null!";if(!(h.source!=null&&h.target!=null))throw"Source and/or target is null!";if(!(h.source.owner!=null&&h.target.owner!=null&&h.source.owner==this&&h.target.owner==this))throw"Source and/or target owner is invalid!";var f=h.source.edges.indexOf(h),D=h.target.edges.indexOf(h);if(!(f>-1&&D>-1))throw"Source and/or target doesn't know this edge!";if(h.source.edges.splice(f,1),h.target!=h.source)h.target.edges.splice(D,1);var m=h.source.owner.getEdges().indexOf(h);if(m==-1)throw"Not in owner's edge list!";h.source.owner.getEdges().splice(m,1)}},C.prototype.updateLeftTop=function(){var{MAX_VALUE:E,MAX_VALUE:d}=i,I,h,Q,p=this.getNodes(),m=p.length;for(var f=0;f<m;f++){var D=p[f];if(I=D.getTop(),h=D.getLeft(),E>I)E=I;if(d>h)d=h}if(E==i.MAX_VALUE)return null;if(p[0].getParent().paddingLeft!=null)Q=p[0].getParent().paddingLeft;else Q=this.margin;return this.left=d-Q,this.top=E-Q,new l(this.left,this.top)},C.prototype.updateBounds=function(E){var d=i.MAX_VALUE,I=-i.MAX_VALUE,h=i.MAX_VALUE,Q=-i.MAX_VALUE,p,m,f,D,w,b=this.nodes,k=b.length;for(var v=0;v<k;v++){var S=b[v];if(E&&S.child!=null)S.updateBounds();if(p=S.getLeft(),m=S.getRight(),f=S.getTop(),D=S.getBottom(),d>p)d=p;if(I<m)I=m;if(h>f)h=f;if(Q<D)Q=D}var x=new s(d,h,I-d,Q-h);if(d==i.MAX_VALUE)this.left=this.parent.getLeft(),this.right=this.parent.getRight(),this.top=this.parent.getTop(),this.bottom=this.parent.getBottom();if(b[0].getParent().paddingLeft!=null)w=b[0].getParent().paddingLeft;else w=this.margin;this.left=x.x-w,this.right=x.x+x.width+w,this.top=x.y-w,this.bottom=x.y+x.height+w},C.calculateBounds=function(E){var d=i.MAX_VALUE,I=-i.MAX_VALUE,h=i.MAX_VALUE,Q=-i.MAX_VALUE,p,m,f,D,w=E.length;for(var b=0;b<w;b++){var k=E[b];if(p=k.getLeft(),m=k.getRight(),f=k.getTop(),D=k.getBottom(),d>p)d=p;if(I<m)I=m;if(h>f)h=f;if(Q<D)Q=D}var v=new s(d,h,I-d,Q-h);return v},C.prototype.getInclusionTreeDepth=function(){if(this==this.graphManager.getRoot())return 1;else return this.parent.getInclusionTreeDepth()},C.prototype.getEstimatedSize=function(){if(this.estimatedSize==i.MIN_VALUE)throw"assert failed";return this.estimatedSize},C.prototype.calcEstimatedSize=function(){var E=0,d=this.nodes,I=d.length;for(var h=0;h<I;h++){var Q=d[h];E+=Q.calcEstimatedSize()}if(E==0)this.estimatedSize=u.EMPTY_COMPOUND_NODE_SIZE;else this.estimatedSize=E/Math.sqrt(this.nodes.length);return this.estimatedSize},C.prototype.updateConnected=function(){var E=this;if(this.nodes.length==0){this.isConnected=!0;return}var d=new g,I=new Set,h=this.nodes[0],Q,p,m=h.withChildren();m.forEach(function(v){d.push(v),I.add(v)});while(d.length!==0){h=d.shift(),Q=h.getEdges();var f=Q.length;for(var D=0;D<f;D++){var w=Q[D];if(p=w.getOtherEndInGraph(h,this),p!=null&&!I.has(p)){var b=p.withChildren();b.forEach(function(v){d.push(v),I.add(v)})}}}if(this.isConnected=!1,I.size>=this.nodes.length){var k=0;if(I.forEach(function(v){if(v.owner==E)k++}),k==this.nodes.length)this.isConnected=!0}},A.exports=C},function(A,e,t){var r,i=t(1);function u(a){r=t(6),this.layout=a,this.graphs=[],this.edges=[]}u.prototype.addRoot=function(){var a=this.layout.newGraph(),n=this.layout.newNode(null),o=this.add(a,n);return this.setRootGraph(o),this.rootGraph},u.prototype.add=function(a,n,o,s,l){if(o==null&&s==null&&l==null){if(a==null)throw"Graph is null!";if(n==null)throw"Parent node is null!";if(this.graphs.indexOf(a)>-1)throw"Graph already in this graph mgr!";if(this.graphs.push(a),a.parent!=null)throw"Already has a parent!";if(n.child!=null)throw"Already has a child!";return a.parent=n,n.child=a,a}else{l=o,s=n,o=a;var g=s.getOwner(),C=l.getOwner();if(!(g!=null&&g.getGraphManager()==this))throw"Source not in this graph mgr!";if(!(C!=null&&C.getGraphManager()==this))throw"Target not in this graph mgr!";if(g==C)return o.isInterGraph=!1,g.add(o,s,l);else{if(o.isInterGraph=!0,o.source=s,o.target=l,this.edges.indexOf(o)>-1)throw"Edge already in inter-graph edge list!";if(this.edges.push(o),!(o.source!=null&&o.target!=null))throw"Edge source and/or target is null!";if(!(o.source.edges.indexOf(o)==-1&&o.target.edges.indexOf(o)==-1))throw"Edge already in source and/or target incidency list!";return o.source.edges.push(o),o.target.edges.push(o),o}}},u.prototype.remove=function(a){if(a instanceof r){var n=a;if(n.getGraphManager()!=this)throw"Graph not in this graph mgr";if(!(n==this.rootGraph||n.parent!=null&&n.parent.graphManager==this))throw"Invalid parent node!";var o=[];o=o.concat(n.getEdges());var s,l=o.length;for(var g=0;g<l;g++)s=o[g],n.remove(s);var C=[];C=C.concat(n.getNodes());var B;l=C.length;for(var g=0;g<l;g++)B=C[g],n.remove(B);if(n==this.rootGraph)this.setRootGraph(null);var E=this.graphs.indexOf(n);this.graphs.splice(E,1),n.parent=null}else if(a instanceof i){if(s=a,s==null)throw"Edge is null!";if(!s.isInterGraph)throw"Not an inter-graph edge!";if(!(s.source!=null&&s.target!=null))throw"Source and/or target is null!";if(!(s.source.edges.indexOf(s)!=-1&&s.target.edges.indexOf(s)!=-1))throw"Source and/or target doesn't know this edge!";var E=s.source.edges.indexOf(s);if(s.source.edges.splice(E,1),E=s.target.edges.indexOf(s),s.target.edges.splice(E,1),!(s.source.owner!=null&&s.source.owner.getGraphManager()!=null))throw"Edge owner graph or owner graph manager is null!";if(s.source.owner.getGraphManager().edges.indexOf(s)==-1)throw"Not in owner graph manager's edge list!";var E=s.source.owner.getGraphManager().edges.indexOf(s);s.source.owner.getGraphManager().edges.splice(E,1)}},u.prototype.updateBounds=function(){this.rootGraph.updateBounds(!0)},u.prototype.getGraphs=function(){return this.graphs},u.prototype.getAllNodes=function(){if(this.allNodes==null){var a=[],n=this.getGraphs(),o=n.length;for(var s=0;s<o;s++)a=a.concat(n[s].getNodes());this.allNodes=a}return this.allNodes},u.prototype.resetAllNodes=function(){this.allNodes=null},u.prototype.resetAllEdges=function(){this.allEdges=null},u.prototype.resetAllNodesToApplyGravitation=function(){this.allNodesToApplyGravitation=null},u.prototype.getAllEdges=function(){if(this.allEdges==null){var a=[],n=this.getGraphs(),o=n.length;for(var s=0;s<n.length;s++)a=a.concat(n[s].getEdges());a=a.concat(this.edges),this.allEdges=a}return this.allEdges},u.prototype.getAllNodesToApplyGravitation=function(){return this.allNodesToApplyGravitation},u.prototype.setAllNodesToApplyGravitation=function(a){if(this.allNodesToApplyGravitation!=null)throw"assert failed";this.allNodesToApplyGravitation=a},u.prototype.getRoot=function(){return this.rootGraph},u.prototype.setRootGraph=function(a){if(a.getGraphManager()!=this)throw"Root not in this graph mgr!";if(this.rootGraph=a,a.parent==null)a.parent=this.layout.newNode("Root node")},u.prototype.getLayout=function(){return this.layout},u.prototype.isOneAncestorOfOther=function(a,n){if(!(a!=null&&n!=null))throw"assert failed";if(a==n)return!0;var o=a.getOwner(),s;do{if(s=o.getParent(),s==null)break;if(s==n)return!0;if(o=s.getOwner(),o==null)break}while(!0);o=n.getOwner();do{if(s=o.getParent(),s==null)break;if(s==a)return!0;if(o=s.getOwner(),o==null)break}while(!0);return!1},u.prototype.calcLowestCommonAncestors=function(){var a,n,o,s,l,g=this.getAllEdges(),C=g.length;for(var B=0;B<C;B++){if(a=g[B],n=a.source,o=a.target,a.lca=null,a.sourceInLca=n,a.targetInLca=o,n==o){a.lca=n.getOwner();continue}s=n.getOwner();while(a.lca==null){a.targetInLca=o,l=o.getOwner();while(a.lca==null){if(l==s){a.lca=l;break}if(l==this.rootGraph)break;if(a.lca!=null)throw"assert failed";a.targetInLca=l.getParent(),l=a.targetInLca.getOwner()}if(s==this.rootGraph)break;if(a.lca==null)a.sourceInLca=s.getParent(),s=a.sourceInLca.getOwner()}if(a.lca==null)throw"assert failed"}},u.prototype.calcLowestCommonAncestor=function(a,n){if(a==n)return a.getOwner();var o=a.getOwner();do{if(o==null)break;var s=n.getOwner();do{if(s==null)break;if(s==o)return s;s=s.getParent().getOwner()}while(!0);o=o.getParent().getOwner()}while(!0);return o},u.prototype.calcInclusionTreeDepths=function(a,n){if(a==null&&n==null)a=this.rootGraph,n=1;var o,s=a.getNodes(),l=s.length;for(var g=0;g<l;g++)if(o=s[g],o.inclusionTreeDepth=n,o.child!=null)this.calcInclusionTreeDepths(o.child,n+1)},u.prototype.includesInvalidEdge=function(){var a,n=[],o=this.edges.length;for(var s=0;s<o;s++)if(a=this.edges[s],this.isOneAncestorOfOther(a.source,a.target))n.push(a);for(var s=0;s<n.length;s++)this.remove(n[s]);return!1},A.exports=u},function(A,e,t){var r=t(12);function i(){}i.calcSeparationAmount=function(u,a,n,o){if(!u.intersects(a))throw"assert failed";var s=[,,];if(this.decideDirectionsForOverlappingNodes(u,a,s),n[0]=Math.min(u.getRight(),a.getRight())-Math.max(u.x,a.x),n[1]=Math.min(u.getBottom(),a.getBottom())-Math.max(u.y,a.y),u.getX()<=a.getX()&&u.getRight()>=a.getRight())n[0]+=Math.min(a.getX()-u.getX(),u.getRight()-a.getRight());else if(a.getX()<=u.getX()&&a.getRight()>=u.getRight())n[0]+=Math.min(u.getX()-a.getX(),a.getRight()-u.getRight());if(u.getY()<=a.getY()&&u.getBottom()>=a.getBottom())n[1]+=Math.min(a.getY()-u.getY(),u.getBottom()-a.getBottom());else if(a.getY()<=u.getY()&&a.getBottom()>=u.getBottom())n[1]+=Math.min(u.getY()-a.getY(),a.getBottom()-u.getBottom());var l=Math.abs((a.getCenterY()-u.getCenterY())/(a.getCenterX()-u.getCenterX()));if(a.getCenterY()===u.getCenterY()&&a.getCenterX()===u.getCenterX())l=1;var g=l*n[0],C=n[1]/l;if(n[0]<C)C=n[0];else g=n[1];n[0]=-1*s[0]*(C/2+o),n[1]=-1*s[1]*(g/2+o)},i.decideDirectionsForOverlappingNodes=function(u,a,n){if(u.getCenterX()<a.getCenterX())n[0]=-1;else n[0]=1;if(u.getCenterY()<a.getCenterY())n[1]=-1;else n[1]=1},i.getIntersection2=function(u,a,n){var o=u.getCenterX(),s=u.getCenterY(),l=a.getCenterX(),g=a.getCenterY();if(u.intersects(a))return n[0]=o,n[1]=s,n[2]=l,n[3]=g,!0;var C=u.getX(),B=u.getY(),E=u.getRight(),d=u.getX(),I=u.getBottom(),h=u.getRight(),Q=u.getWidthHalf(),p=u.getHeightHalf(),m=a.getX(),f=a.getY(),D=a.getRight(),w=a.getX(),b=a.getBottom(),k=a.getRight(),v=a.getWidthHalf(),S=a.getHeightHalf(),x=!1,F=!1;if(o===l){if(s>g)return n[0]=o,n[1]=B,n[2]=l,n[3]=b,!1;else if(s<g)return n[0]=o,n[1]=I,n[2]=l,n[3]=f,!1}else if(s===g){if(o>l)return n[0]=C,n[1]=s,n[2]=D,n[3]=g,!1;else if(o<l)return n[0]=E,n[1]=s,n[2]=m,n[3]=g,!1}else{var T=u.height/u.width,R=a.height/a.width,L=(g-s)/(l-o),M=void 0,U=void 0,Y=void 0,H=void 0,J=void 0,K=void 0;if(-T===L)if(o>l)n[0]=d,n[1]=I,x=!0;else n[0]=E,n[1]=B,x=!0;else if(T===L)if(o>l)n[0]=C,n[1]=B,x=!0;else n[0]=h,n[1]=I,x=!0;if(-R===L)if(l>o)n[2]=w,n[3]=b,F=!0;else n[2]=D,n[3]=f,F=!0;else if(R===L)if(l>o)n[2]=m,n[3]=f,F=!0;else n[2]=k,n[3]=b,F=!0;if(x&&F)return!1;if(o>l)if(s>g)M=this.getCardinalDirection(T,L,4),U=this.getCardinalDirection(R,L,2);else M=this.getCardinalDirection(-T,L,3),U=this.getCardinalDirection(-R,L,1);else if(s>g)M=this.getCardinalDirection(-T,L,1),U=this.getCardinalDirection(-R,L,3);else M=this.getCardinalDirection(T,L,2),U=this.getCardinalDirection(R,L,4);if(!x)switch(M){case 1:H=B,Y=o+-p/L,n[0]=Y,n[1]=H;break;case 2:Y=h,H=s+Q*L,n[0]=Y,n[1]=H;break;case 3:H=I,Y=o+p/L,n[0]=Y,n[1]=H;break;case 4:Y=d,H=s+-Q*L,n[0]=Y,n[1]=H;break}if(!F)switch(U){case 1:K=f,J=l+-S/L,n[2]=J,n[3]=K;break;case 2:J=k,K=g+v*L,n[2]=J,n[3]=K;break;case 3:K=b,J=l+S/L,n[2]=J,n[3]=K;break;case 4:J=w,K=g+-v*L,n[2]=J,n[3]=K;break}}return!1},i.getCardinalDirection=function(u,a,n){if(u>a)return n;else return 1+n%4},i.getIntersection=function(u,a,n,o){if(o==null)return this.getIntersection2(u,a,n);var{x:s,y:l}=u,{x:g,y:C}=a,{x:B,y:E}=n,{x:d,y:I}=o,h=void 0,Q=void 0,p=void 0,m=void 0,f=void 0,D=void 0,w=void 0,b=void 0,k=void 0;if(p=C-l,f=s-g,w=g*l-s*C,m=I-E,D=B-d,b=d*E-B*I,k=p*D-m*f,k===0)return null;return h=(f*b-D*w)/k,Q=(m*w-p*b)/k,new r(h,Q)},i.angleOfVector=function(u,a,n,o){var s=void 0;if(u!==n){if(s=Math.atan((o-a)/(n-u)),n<u)s+=Math.PI;else if(o<a)s+=this.TWO_PI}else if(o<a)s=this.ONE_AND_HALF_PI;else s=this.HALF_PI;return s},i.doIntersect=function(u,a,n,o){var{x:s,y:l}=u,{x:g,y:C}=a,{x:B,y:E}=n,{x:d,y:I}=o,h=(g-s)*(I-E)-(d-B)*(C-l);if(h===0)return!1;else{var Q=((I-E)*(d-s)+(B-d)*(I-l))/h,p=((l-C)*(d-s)+(g-s)*(I-l))/h;return 0<Q&&Q<1&&0<p&&p<1}},i.findCircleLineIntersections=function(u,a,n,o,s,l,g){var C=(n-u)*(n-u)+(o-a)*(o-a),B=2*((u-s)*(n-u)+(a-l)*(o-a)),E=(u-s)*(u-s)+(a-l)*(a-l)-g*g,d=B*B-4*C*E;if(d>=0){var I=(-B+Math.sqrt(B*B-4*C*E))/(2*C),h=(-B-Math.sqrt(B*B-4*C*E))/(2*C),Q=null;if(I>=0&&I<=1)return[I];if(h>=0&&h<=1)return[h];return Q}else return null},i.HALF_PI=0.5*Math.PI,i.ONE_AND_HALF_PI=1.5*Math.PI,i.TWO_PI=2*Math.PI,i.THREE_PI=3*Math.PI,A.exports=i},function(A,e,t){function r(){}r.sign=function(i){if(i>0)return 1;else if(i<0)return-1;else return 0},r.floor=function(i){return i<0?Math.ceil(i):Math.floor(i)},r.ceil=function(i){return i<0?Math.floor(i):Math.ceil(i)},A.exports=r},function(A,e,t){function r(){}r.MAX_VALUE=2147483647,r.MIN_VALUE=-2147483648,A.exports=r},function(A,e,t){var r=function(){function s(l,g){for(var C=0;C<g.length;C++){var B=g[C];if(B.enumerable=B.enumerable||!1,B.configurable=!0,"value"in B)B.writable=!0;Object.defineProperty(l,B.key,B)}}return function(l,g,C){if(g)s(l.prototype,g);if(C)s(l,C);return l}}();function i(s,l){if(!(s instanceof l))throw TypeError("Cannot call a class as a function")}var u=function(l){return{value:l,next:null,prev:null}},a=function(l,g,C,B){if(l!==null)l.next=g;else B.head=g;if(C!==null)C.prev=g;else B.tail=g;return g.prev=l,g.next=C,B.length++,g},n=function(l,g){var{prev:C,next:B}=l;if(C!==null)C.next=B;else g.head=B;if(B!==null)B.prev=C;else g.tail=C;return l.prev=l.next=null,g.length--,l},o=function(){function s(l){var g=this;if(i(this,s),this.length=0,this.head=null,this.tail=null,l!=null)l.forEach(function(C){return g.push(C)})}return r(s,[{key:"size",value:function(){return this.length}},{key:"insertBefore",value:function(g,C){return a(C.prev,u(g),C,this)}},{key:"insertAfter",value:function(g,C){return a(C,u(g),C.next,this)}},{key:"insertNodeBefore",value:function(g,C){return a(C.prev,g,C,this)}},{key:"insertNodeAfter",value:function(g,C){return a(C,g,C.next,this)}},{key:"push",value:function(g){return a(this.tail,u(g),null,this)}},{key:"unshift",value:function(g){return a(null,u(g),this.head,this)}},{key:"remove",value:function(g){return n(g,this)}},{key:"pop",value:function(){return n(this.tail,this).value}},{key:"popNode",value:function(){return n(this.tail,this)}},{key:"shift",value:function(){return n(this.head,this).value}},{key:"shiftNode",value:function(){return n(this.head,this)}},{key:"get_object_at",value:function(g){if(g<=this.length()){var C=1,B=this.head;while(C<g)B=B.next,C++;return B.value}}},{key:"set_object_at",value:function(g,C){if(g<=this.length()){var B=1,E=this.head;while(B<g)E=E.next,B++;E.value=C}}}]),s}();A.exports=o},function(A,e,t){function r(i,u,a){if(this.x=null,this.y=null,i==null&&u==null&&a==null)this.x=0,this.y=0;else if(typeof i=="number"&&typeof u=="number"&&a==null)this.x=i,this.y=u;else if(i.constructor.name=="Point"&&u==null&&a==null)a=i,this.x=a.x,this.y=a.y}r.prototype.getX=function(){return this.x},r.prototype.getY=function(){return this.y},r.prototype.getLocation=function(){return new r(this.x,this.y)},r.prototype.setLocation=function(i,u,a){if(i.constructor.name=="Point"&&u==null&&a==null)a=i,this.setLocation(a.x,a.y);else if(typeof i=="number"&&typeof u=="number"&&a==null)if(parseInt(i)==i&&parseInt(u)==u)this.move(i,u);else this.x=Math.floor(i+0.5),this.y=Math.floor(u+0.5)},r.prototype.move=function(i,u){this.x=i,this.y=u},r.prototype.translate=function(i,u){this.x+=i,this.y+=u},r.prototype.equals=function(i){if(i.constructor.name=="Point"){var u=i;return this.x==u.x&&this.y==u.y}return this==i},r.prototype.toString=function(){return new r().constructor.name+"[x="+this.x+",y="+this.y+"]"},A.exports=r},function(A,e,t){function r(i,u,a,n){if(this.x=0,this.y=0,this.width=0,this.height=0,i!=null&&u!=null&&a!=null&&n!=null)this.x=i,this.y=u,this.width=a,this.height=n}r.prototype.getX=function(){return this.x},r.prototype.setX=function(i){this.x=i},r.prototype.getY=function(){return this.y},r.prototype.setY=function(i){this.y=i},r.prototype.getWidth=function(){return this.width},r.prototype.setWidth=function(i){this.width=i},r.prototype.getHeight=function(){return this.height},r.prototype.setHeight=function(i){this.height=i},r.prototype.getRight=function(){return this.x+this.width},r.prototype.getBottom=function(){return this.y+this.height},r.prototype.intersects=function(i){if(this.getRight()<i.x)return!1;if(this.getBottom()<i.y)return!1;if(i.getRight()<this.x)return!1;if(i.getBottom()<this.y)return!1;return!0},r.prototype.getCenterX=function(){return this.x+this.width/2},r.prototype.getMinX=function(){return this.getX()},r.prototype.getMaxX=function(){return this.getX()+this.width},r.prototype.getCenterY=function(){return this.y+this.height/2},r.prototype.getMinY=function(){return this.getY()},r.prototype.getMaxY=function(){return this.getY()+this.height},r.prototype.getWidthHalf=function(){return this.width/2},r.prototype.getHeightHalf=function(){return this.height/2},A.exports=r},function(A,e,t){var r=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(u){return typeof u}:function(u){return u&&typeof Symbol==="function"&&u.constructor===Symbol&&u!==Symbol.prototype?"symbol":typeof u};function i(){}i.lastID=0,i.createID=function(u){if(i.isPrimitive(u))return u;if(u.uniqueID!=null)return u.uniqueID;return u.uniqueID=i.getString(),i.lastID++,u.uniqueID},i.getString=function(u){if(u==null)u=i.lastID;return"Object#"+u},i.isPrimitive=function(u){var a=typeof u>"u"?"undefined":r(u);return u==null||a!="object"&&a!="function"},A.exports=i},function(A,e,t){function r(B){if(Array.isArray(B)){for(var E=0,d=Array(B.length);E<B.length;E++)d[E]=B[E];return d}else return Array.from(B)}var i=t(0),u=t(7),a=t(3),n=t(1),o=t(6),s=t(5),l=t(17),g=t(29);function C(B){if(g.call(this),this.layoutQuality=i.QUALITY,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.incremental=i.DEFAULT_INCREMENTAL,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES,this.edgeToDummyNodes=new Map,this.graphManager=new u(this),this.isLayoutFinished=!1,this.isSubLayout=!1,this.isRemoteUse=!1,B!=null)this.isRemoteUse=B}C.RANDOM_SEED=1,C.prototype=Object.create(g.prototype),C.prototype.getGraphManager=function(){return this.graphManager},C.prototype.getAllNodes=function(){return this.graphManager.getAllNodes()},C.prototype.getAllEdges=function(){return this.graphManager.getAllEdges()},C.prototype.getAllNodesToApplyGravitation=function(){return this.graphManager.getAllNodesToApplyGravitation()},C.prototype.newGraphManager=function(){var B=new u(this);return this.graphManager=B,B},C.prototype.newGraph=function(B){return new o(null,this.graphManager,B)},C.prototype.newNode=function(B){return new a(this.graphManager,B)},C.prototype.newEdge=function(B){return new n(null,null,B)},C.prototype.checkLayoutSuccess=function(){return this.graphManager.getRoot()==null||this.graphManager.getRoot().getNodes().length==0||this.graphManager.includesInvalidEdge()},C.prototype.runLayout=function(){if(this.isLayoutFinished=!1,this.tilingPreLayout)this.tilingPreLayout();this.initParameters();var B;if(this.checkLayoutSuccess())B=!1;else B=this.layout();if(i.ANIMATE==="during")return!1;if(B){if(!this.isSubLayout)this.doPostLayout()}if(this.tilingPostLayout)this.tilingPostLayout();return this.isLayoutFinished=!0,B},C.prototype.doPostLayout=function(){if(!this.incremental)this.transform();this.update()},C.prototype.update2=function(){if(this.createBendsAsNeeded)this.createBendpointsFromDummyNodes(),this.graphManager.resetAllEdges();if(!this.isRemoteUse){var B,E=this.graphManager.getAllEdges();for(var d=0;d<E.length;d++)B=E[d];var I,h=this.graphManager.getRoot().getNodes();for(var d=0;d<h.length;d++)I=h[d];this.update(this.graphManager.getRoot())}},C.prototype.update=function(B){if(B==null)this.update2();else if(B instanceof a){var E=B;if(E.getChild()!=null){var d=E.getChild().getNodes();for(var I=0;I<d.length;I++)update(d[I])}if(E.vGraphObject!=null){var h=E.vGraphObject;h.update(E)}}else if(B instanceof n){var Q=B;if(Q.vGraphObject!=null){var p=Q.vGraphObject;p.update(Q)}}else if(B instanceof o){var m=B;if(m.vGraphObject!=null){var f=m.vGraphObject;f.update(m)}}},C.prototype.initParameters=function(){if(!this.isSubLayout)this.layoutQuality=i.QUALITY,this.animationDuringLayout=i.DEFAULT_ANIMATION_DURING_LAYOUT,this.animationPeriod=i.DEFAULT_ANIMATION_PERIOD,this.animationOnLayout=i.DEFAULT_ANIMATION_ON_LAYOUT,this.incremental=i.DEFAULT_INCREMENTAL,this.createBendsAsNeeded=i.DEFAULT_CREATE_BENDS_AS_NEEDED,this.uniformLeafNodeSizes=i.DEFAULT_UNIFORM_LEAF_NODE_SIZES;if(this.animationDuringLayout)this.animationOnLayout=!1},C.prototype.transform=function(B){if(B==null)this.transform(new s(0,0));else{var E=new l,d=this.graphManager.getRoot().updateLeftTop();if(d!=null){E.setWorldOrgX(B.x),E.setWorldOrgY(B.y),E.setDeviceOrgX(d.x),E.setDeviceOrgY(d.y);var I=this.getAllNodes(),h;for(var Q=0;Q<I.length;Q++)h=I[Q],h.transform(E)}}},C.prototype.positionNodesRandomly=function(B){if(B==null)this.positionNodesRandomly(this.getGraphManager().getRoot()),this.getGraphManager().getRoot().updateBounds(!0);else{var E,d,I=B.getNodes();for(var h=0;h<I.length;h++)if(E=I[h],d=E.getChild(),d==null)E.scatter();else if(d.getNodes().length==0)E.scatter();else this.positionNodesRandomly(d),E.updateBounds()}},C.prototype.getFlatForest=function(){var B=[],E=!0,d=this.graphManager.getRoot().getNodes(),I=!0;for(var h=0;h<d.length;h++)if(d[h].getChild()!=null)I=!1;if(!I)return B;var Q=new Set,p=[],m=new Map,f=[];f=f.concat(d);while(f.length>0&&E){p.push(f[0]);while(p.length>0&&E){var D=p[0];p.splice(0,1),Q.add(D);var w=D.getEdges();for(var h=0;h<w.length;h++){var b=w[h].getOtherEnd(D);if(m.get(D)!=b)if(!Q.has(b))p.push(b),m.set(b,D);else{E=!1;break}}}if(!E)B=[];else{var k=[].concat(r(Q));B.push(k);for(var h=0;h<k.length;h++){var v=k[h],S=f.indexOf(v);if(S>-1)f.splice(S,1)}Q=new Set,m=new Map}}return B},C.prototype.createDummyNodesForBendpoints=function(B){var E=[],d=B.source,I=this.graphManager.calcLowestCommonAncestor(B.source,B.target);for(var h=0;h<B.bendpoints.length;h++){var Q=this.newNode(null);Q.setRect(new Point(0,0),new Dimension(1,1)),I.add(Q);var p=this.newEdge(null);this.graphManager.add(p,d,Q),E.add(Q),d=Q}var p=this.newEdge(null);if(this.graphManager.add(p,d,B.target),this.edgeToDummyNodes.set(B,E),B.isInterGraph())this.graphManager.remove(B);else I.remove(B);return E},C.prototype.createBendpointsFromDummyNodes=function(){var B=[];B=B.concat(this.graphManager.getAllEdges()),B=[].concat(r(this.edgeToDummyNodes.keys())).concat(B);for(var E=0;E<B.length;E++){var d=B[E];if(d.bendpoints.length>0){var I=this.edgeToDummyNodes.get(d);for(var h=0;h<I.length;h++){var Q=I[h],p=new s(Q.getCenterX(),Q.getCenterY()),m=d.bendpoints.get(h);m.x=p.x,m.y=p.y,Q.getOwner().remove(Q)}this.graphManager.add(d,d.source,d.target)}}},C.transform=function(B,E,d,I){if(d!=null&&I!=null){var h=E;if(B<=50){var Q=E/d;h-=(E-Q)/50*(50-B)}else{var p=E*I;h+=(p-E)/50*(B-50)}return h}else{var m,f;if(B<=50)m=9*E/500,f=E/10;else m=9*E/50,f=-8*E;return m*B+f}},C.findCenterOfTree=function(B){var E=[];E=E.concat(B);var d=[],I=new Map,h=!1,Q=null;if(E.length==1||E.length==2)h=!0,Q=E[0];for(var p=0;p<E.length;p++){var m=E[p],f=m.getNeighborsList().size;if(I.set(m,m.getNeighborsList().size),f==1)d.push(m)}var D=[];D=D.concat(d);while(!h){var w=[];w=w.concat(D),D=[];for(var p=0;p<E.length;p++){var m=E[p],b=E.indexOf(m);if(b>=0)E.splice(b,1);var k=m.getNeighborsList();k.forEach(function(x){if(d.indexOf(x)<0){var F=I.get(x),T=F-1;if(T==1)D.push(x);I.set(x,T)}})}if(d=d.concat(D),E.length==1||E.length==2)h=!0,Q=E[0]}return Q},C.prototype.setGraphManager=function(B){this.graphManager=B},A.exports=C},function(A,e,t){function r(){}r.seed=1,r.x=0,r.nextDouble=function(){return r.x=Math.sin(r.seed++)*1e4,r.x-Math.floor(r.x)},A.exports=r},function(A,e,t){var r=t(5);function i(u,a){this.lworldOrgX=0,this.lworldOrgY=0,this.ldeviceOrgX=0,this.ldeviceOrgY=0,this.lworldExtX=1,this.lworldExtY=1,this.ldeviceExtX=1,this.ldeviceExtY=1}i.prototype.getWorldOrgX=function(){return this.lworldOrgX},i.prototype.setWorldOrgX=function(u){this.lworldOrgX=u},i.prototype.getWorldOrgY=function(){return this.lworldOrgY},i.prototype.setWorldOrgY=function(u){this.lworldOrgY=u},i.prototype.getWorldExtX=function(){return this.lworldExtX},i.prototype.setWorldExtX=function(u){this.lworldExtX=u},i.prototype.getWorldExtY=function(){return this.lworldExtY},i.prototype.setWorldExtY=function(u){this.lworldExtY=u},i.prototype.getDeviceOrgX=function(){return this.ldeviceOrgX},i.prototype.setDeviceOrgX=function(u){this.ldeviceOrgX=u},i.prototype.getDeviceOrgY=function(){return this.ldeviceOrgY},i.prototype.setDeviceOrgY=function(u){this.ldeviceOrgY=u},i.prototype.getDeviceExtX=function(){return this.ldeviceExtX},i.prototype.setDeviceExtX=function(u){this.ldeviceExtX=u},i.prototype.getDeviceExtY=function(){return this.ldeviceExtY},i.prototype.setDeviceExtY=function(u){this.ldeviceExtY=u},i.prototype.transformX=function(u){var a=0,n=this.lworldExtX;if(n!=0)a=this.ldeviceOrgX+(u-this.lworldOrgX)*this.ldeviceExtX/n;return a},i.prototype.transformY=function(u){var a=0,n=this.lworldExtY;if(n!=0)a=this.ldeviceOrgY+(u-this.lworldOrgY)*this.ldeviceExtY/n;return a},i.prototype.inverseTransformX=function(u){var a=0,n=this.ldeviceExtX;if(n!=0)a=this.lworldOrgX+(u-this.ldeviceOrgX)*this.lworldExtX/n;return a},i.prototype.inverseTransformY=function(u){var a=0,n=this.ldeviceExtY;if(n!=0)a=this.lworldOrgY+(u-this.ldeviceOrgY)*this.lworldExtY/n;return a},i.prototype.inverseTransformPoint=function(u){var a=new r(this.inverseTransformX(u.x),this.inverseTransformY(u.y));return a},A.exports=i},function(A,e,t){function r(g){if(Array.isArray(g)){for(var C=0,B=Array(g.length);C<g.length;C++)B[C]=g[C];return B}else return Array.from(g)}var i=t(15),u=t(4),a=t(0),n=t(8),o=t(9);function s(){i.call(this),this.useSmartIdealEdgeLengthCalculation=u.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=u.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=u.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=u.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=u.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.displacementThresholdPerNode=3*u.DEFAULT_EDGE_LENGTH/100,this.coolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.initialCoolingFactor=u.DEFAULT_COOLING_FACTOR_INCREMENTAL,this.totalDisplacement=0,this.oldTotalDisplacement=0,this.maxIterations=u.MAX_ITERATIONS}s.prototype=Object.create(i.prototype);for(var l in i)s[l]=i[l];s.prototype.initParameters=function(){i.prototype.initParameters.call(this,arguments),this.totalIterations=0,this.notAnimatedIterations=0,this.useFRGridVariant=u.DEFAULT_USE_SMART_REPULSION_RANGE_CALCULATION,this.grid=[]},s.prototype.calcIdealEdgeLengths=function(){var g,C,B,E,d,I,h,Q=this.getGraphManager().getAllEdges();for(var p=0;p<Q.length;p++)if(g=Q[p],C=g.idealLength,g.isInterGraph){if(E=g.getSource(),d=g.getTarget(),I=g.getSourceInLca().getEstimatedSize(),h=g.getTargetInLca().getEstimatedSize(),this.useSmartIdealEdgeLengthCalculation)g.idealLength+=I+h-2*a.SIMPLE_NODE_SIZE;B=g.getLca().getInclusionTreeDepth(),g.idealLength+=C*u.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR*(E.getInclusionTreeDepth()+d.getInclusionTreeDepth()-2*B)}},s.prototype.initSpringEmbedder=function(){var g=this.getAllNodes().length;if(this.incremental){if(g>u.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(this.coolingFactor*u.COOLING_ADAPTATION_FACTOR,this.coolingFactor-(g-u.ADAPTATION_LOWER_NODE_LIMIT)/(u.ADAPTATION_UPPER_NODE_LIMIT-u.ADAPTATION_LOWER_NODE_LIMIT)*this.coolingFactor*(1-u.COOLING_ADAPTATION_FACTOR));this.maxNodeDisplacement=u.MAX_NODE_DISPLACEMENT_INCREMENTAL}else{if(g>u.ADAPTATION_LOWER_NODE_LIMIT)this.coolingFactor=Math.max(u.COOLING_ADAPTATION_FACTOR,1-(g-u.ADAPTATION_LOWER_NODE_LIMIT)/(u.ADAPTATION_UPPER_NODE_LIMIT-u.ADAPTATION_LOWER_NODE_LIMIT)*(1-u.COOLING_ADAPTATION_FACTOR));else this.coolingFactor=1;this.initialCoolingFactor=this.coolingFactor,this.maxNodeDisplacement=u.MAX_NODE_DISPLACEMENT}this.maxIterations=Math.max(this.getAllNodes().length*5,this.maxIterations),this.displacementThresholdPerNode=3*u.DEFAULT_EDGE_LENGTH/100,this.totalDisplacementThreshold=this.displacementThresholdPerNode*this.getAllNodes().length,this.repulsionRange=this.calcRepulsionRange()},s.prototype.calcSpringForces=function(){var g=this.getAllEdges(),C;for(var B=0;B<g.length;B++)C=g[B],this.calcSpringForce(C,C.idealLength)},s.prototype.calcRepulsionForces=function(){var g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,B,E,d,I,h=this.getAllNodes(),Q;if(this.useFRGridVariant){if(this.totalIterations%u.GRID_CALCULATION_CHECK_PERIOD==1&&g)this.updateGrid();Q=new Set;for(B=0;B<h.length;B++)d=h[B],this.calculateRepulsionForceOfANode(d,Q,g,C),Q.add(d)}else for(B=0;B<h.length;B++){d=h[B];for(E=B+1;E<h.length;E++){if(I=h[E],d.getOwner()!=I.getOwner())continue;this.calcRepulsionForce(d,I)}}},s.prototype.calcGravitationalForces=function(){var g,C=this.getAllNodesToApplyGravitation();for(var B=0;B<C.length;B++)g=C[B],this.calcGravitationalForce(g)},s.prototype.moveNodes=function(){var g=this.getAllNodes(),C;for(var B=0;B<g.length;B++)C=g[B],C.move()},s.prototype.calcSpringForce=function(g,C){var B=g.getSource(),E=g.getTarget(),d,I,h,Q;if(this.uniformLeafNodeSizes&&B.getChild()==null&&E.getChild()==null)g.updateLengthSimple();else if(g.updateLength(),g.isOverlapingSourceAndTarget)return;if(d=g.getLength(),d==0)return;I=g.edgeElasticity*(d-C),h=I*(g.lengthX/d),Q=I*(g.lengthY/d),B.springForceX+=h,B.springForceY+=Q,E.springForceX-=h,E.springForceY-=Q},s.prototype.calcRepulsionForce=function(g,C){var B=g.getRect(),E=C.getRect(),d=[,,],I=[,,,,],h,Q,p,m,f,D,w;if(B.intersects(E)){n.calcSeparationAmount(B,E,d,u.DEFAULT_EDGE_LENGTH/2),D=2*d[0],w=2*d[1];var b=g.noOfChildren*C.noOfChildren/(g.noOfChildren+C.noOfChildren);g.repulsionForceX-=b*D,g.repulsionForceY-=b*w,C.repulsionForceX+=b*D,C.repulsionForceY+=b*w}else{if(this.uniformLeafNodeSizes&&g.getChild()==null&&C.getChild()==null)h=E.getCenterX()-B.getCenterX(),Q=E.getCenterY()-B.getCenterY();else n.getIntersection(B,E,I),h=I[2]-I[0],Q=I[3]-I[1];if(Math.abs(h)<u.MIN_REPULSION_DIST)h=o.sign(h)*u.MIN_REPULSION_DIST;if(Math.abs(Q)<u.MIN_REPULSION_DIST)Q=o.sign(Q)*u.MIN_REPULSION_DIST;p=h*h+Q*Q,m=Math.sqrt(p),f=(g.nodeRepulsion/2+C.nodeRepulsion/2)*g.noOfChildren*C.noOfChildren/p,D=f*h/m,w=f*Q/m,g.repulsionForceX-=D,g.repulsionForceY-=w,C.repulsionForceX+=D,C.repulsionForceY+=w}},s.prototype.calcGravitationalForce=function(g){var C,B,E,d,I,h,Q,p;if(C=g.getOwner(),B=(C.getRight()+C.getLeft())/2,E=(C.getTop()+C.getBottom())/2,d=g.getCenterX()-B,I=g.getCenterY()-E,h=Math.abs(d)+g.getWidth()/2,Q=Math.abs(I)+g.getHeight()/2,g.getOwner()==this.graphManager.getRoot()){if(p=C.getEstimatedSize()*this.gravityRangeFactor,h>p||Q>p)g.gravitationForceX=-this.gravityConstant*d,g.gravitationForceY=-this.gravityConstant*I}else if(p=C.getEstimatedSize()*this.compoundGravityRangeFactor,h>p||Q>p)g.gravitationForceX=-this.gravityConstant*d*this.compoundGravityConstant,g.gravitationForceY=-this.gravityConstant*I*this.compoundGravityConstant},s.prototype.isConverged=function(){var g,C=!1;if(this.totalIterations>this.maxIterations/3)C=Math.abs(this.totalDisplacement-this.oldTotalDisplacement)<2;return g=this.totalDisplacement<this.totalDisplacementThreshold,this.oldTotalDisplacement=this.totalDisplacement,g||C},s.prototype.animate=function(){if(this.animationDuringLayout&&!this.isSubLayout)if(this.notAnimatedIterations==this.animationPeriod)this.update(),this.notAnimatedIterations=0;else this.notAnimatedIterations++},s.prototype.calcNoOfChildrenForAllNodes=function(){var g,C=this.graphManager.getAllNodes();for(var B=0;B<C.length;B++)g=C[B],g.noOfChildren=g.getNoOfChildren()},s.prototype.calcGrid=function(g){var C=0,B=0;C=parseInt(Math.ceil((g.getRight()-g.getLeft())/this.repulsionRange)),B=parseInt(Math.ceil((g.getBottom()-g.getTop())/this.repulsionRange));var E=Array(C);for(var d=0;d<C;d++)E[d]=Array(B);for(var d=0;d<C;d++)for(var I=0;I<B;I++)E[d][I]=[];return E},s.prototype.addNodeToGrid=function(g,C,B){var E=0,d=0,I=0,h=0;E=parseInt(Math.floor((g.getRect().x-C)/this.repulsionRange)),d=parseInt(Math.floor((g.getRect().width+g.getRect().x-C)/this.repulsionRange)),I=parseInt(Math.floor((g.getRect().y-B)/this.repulsionRange)),h=parseInt(Math.floor((g.getRect().height+g.getRect().y-B)/this.repulsionRange));for(var Q=E;Q<=d;Q++)for(var p=I;p<=h;p++)this.grid[Q][p].push(g),g.setGridCoordinates(E,d,I,h)},s.prototype.updateGrid=function(){var g,C,B=this.getAllNodes();this.grid=this.calcGrid(this.graphManager.getRoot());for(g=0;g<B.length;g++)C=B[g],this.addNodeToGrid(C,this.graphManager.getRoot().getLeft(),this.graphManager.getRoot().getTop())},s.prototype.calculateRepulsionForceOfANode=function(g,C,B,E){if(this.totalIterations%u.GRID_CALCULATION_CHECK_PERIOD==1&&B||E){var d=new Set;g.surrounding=[];var I,h=this.grid;for(var Q=g.startX-1;Q<g.finishX+2;Q++)for(var p=g.startY-1;p<g.finishY+2;p++)if(!(Q<0||p<0||Q>=h.length||p>=h[0].length))for(var m=0;m<h[Q][p].length;m++){if(I=h[Q][p][m],g.getOwner()!=I.getOwner()||g==I)continue;if(!C.has(I)&&!d.has(I)){var f=Math.abs(g.getCenterX()-I.getCenterX())-(g.getWidth()/2+I.getWidth()/2),D=Math.abs(g.getCenterY()-I.getCenterY())-(g.getHeight()/2+I.getHeight()/2);if(f<=this.repulsionRange&&D<=this.repulsionRange)d.add(I)}}g.surrounding=[].concat(r(d))}for(Q=0;Q<g.surrounding.length;Q++)this.calcRepulsionForce(g,g.surrounding[Q])},s.prototype.calcRepulsionRange=function(){return 0},A.exports=s},function(A,e,t){var r=t(1),i=t(4);function u(n,o,s){r.call(this,n,o,s),this.idealLength=i.DEFAULT_EDGE_LENGTH,this.edgeElasticity=i.DEFAULT_SPRING_STRENGTH}u.prototype=Object.create(r.prototype);for(var a in r)u[a]=r[a];A.exports=u},function(A,e,t){var r=t(3),i=t(4);function u(n,o,s,l){r.call(this,n,o,s,l),this.nodeRepulsion=i.DEFAULT_REPULSION_STRENGTH,this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0,this.startX=0,this.finishX=0,this.startY=0,this.finishY=0,this.surrounding=[]}u.prototype=Object.create(r.prototype);for(var a in r)u[a]=r[a];u.prototype.setGridCoordinates=function(n,o,s,l){this.startX=n,this.finishX=o,this.startY=s,this.finishY=l},A.exports=u},function(A,e,t){function r(i,u){if(this.width=0,this.height=0,i!==null&&u!==null)this.height=u,this.width=i}r.prototype.getWidth=function(){return this.width},r.prototype.setWidth=function(i){this.width=i},r.prototype.getHeight=function(){return this.height},r.prototype.setHeight=function(i){this.height=i},A.exports=r},function(A,e,t){var r=t(14);function i(){this.map={},this.keys=[]}i.prototype.put=function(u,a){var n=r.createID(u);if(!this.contains(n))this.map[n]=a,this.keys.push(u)},i.prototype.contains=function(u){var a=r.createID(u);return this.map[u]!=null},i.prototype.get=function(u){var a=r.createID(u);return this.map[a]},i.prototype.keySet=function(){return this.keys},A.exports=i},function(A,e,t){var r=t(14);function i(){this.set={}}i.prototype.add=function(u){var a=r.createID(u);if(!this.contains(a))this.set[a]=u},i.prototype.remove=function(u){delete this.set[r.createID(u)]},i.prototype.clear=function(){this.set={}},i.prototype.contains=function(u){return this.set[r.createID(u)]==u},i.prototype.isEmpty=function(){return this.size()===0},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAllTo=function(u){var a=Object.keys(this.set),n=a.length;for(var o=0;o<n;o++)u.push(this.set[a[o]])},i.prototype.size=function(){return Object.keys(this.set).length},i.prototype.addAll=function(u){var a=u.length;for(var n=0;n<a;n++){var o=u[n];this.add(o)}},A.exports=i},function(A,e,t){function r(){}r.multMat=function(i,u){var a=[];for(var n=0;n<i.length;n++){a[n]=[];for(var o=0;o<u[0].length;o++){a[n][o]=0;for(var s=0;s<i[0].length;s++)a[n][o]+=i[n][s]*u[s][o]}}return a},r.transpose=function(i){var u=[];for(var a=0;a<i[0].length;a++){u[a]=[];for(var n=0;n<i.length;n++)u[a][n]=i[n][a]}return u},r.multCons=function(i,u){var a=[];for(var n=0;n<i.length;n++)a[n]=i[n]*u;return a},r.minusOp=function(i,u){var a=[];for(var n=0;n<i.length;n++)a[n]=i[n]-u[n];return a},r.dotProduct=function(i,u){var a=0;for(var n=0;n<i.length;n++)a+=i[n]*u[n];return a},r.mag=function(i){return Math.sqrt(this.dotProduct(i,i))},r.normalize=function(i){var u=[],a=this.mag(i);for(var n=0;n<i.length;n++)u[n]=i[n]/a;return u},r.multGamma=function(i){var u=[],a=0;for(var n=0;n<i.length;n++)a+=i[n];a*=-1/i.length;for(var o=0;o<i.length;o++)u[o]=a+i[o];return u},r.multL=function(i,u,a){var n=[],o=[],s=[];for(var l=0;l<u[0].length;l++){var g=0;for(var C=0;C<u.length;C++)g+=-0.5*u[C][l]*i[C];o[l]=g}for(var B=0;B<a.length;B++){var E=0;for(var d=0;d<a.length;d++)E+=a[B][d]*o[d];s[B]=E}for(var I=0;I<u.length;I++){var h=0;for(var Q=0;Q<u[0].length;Q++)h+=u[I][Q]*s[Q];n[I]=h}return n},A.exports=r},function(A,e,t){var r=function(){function n(o,s){for(var l=0;l<s.length;l++){var g=s[l];if(g.enumerable=g.enumerable||!1,g.configurable=!0,"value"in g)g.writable=!0;Object.defineProperty(o,g.key,g)}}return function(o,s,l){if(s)n(o.prototype,s);if(l)n(o,l);return o}}();function i(n,o){if(!(n instanceof o))throw TypeError("Cannot call a class as a function")}var u=t(11),a=function(){function n(o,s){if(i(this,n),s!==null||s!==void 0)this.compareFunction=this._defaultCompareFunction;var l=void 0;if(o instanceof u)l=o.size();else l=o.length;this._quicksort(o,0,l-1)}return r(n,[{key:"_quicksort",value:function(s,l,g){if(l<g){var C=this._partition(s,l,g);this._quicksort(s,l,C),this._quicksort(s,C+1,g)}}},{key:"_partition",value:function(s,l,g){var C=this._get(s,l),B=l,E=g;while(!0){while(this.compareFunction(C,this._get(s,E)))E--;while(this.compareFunction(this._get(s,B),C))B++;if(B<E)this._swap(s,B,E),B++,E--;else return E}}},{key:"_get",value:function(s,l){if(s instanceof u)return s.get_object_at(l);else return s[l]}},{key:"_set",value:function(s,l,g){if(s instanceof u)s.set_object_at(l,g);else s[l]=g}},{key:"_swap",value:function(s,l,g){var C=this._get(s,l);this._set(s,l,this._get(s,g)),this._set(s,g,C)}},{key:"_defaultCompareFunction",value:function(s,l){return l>s}}]),n}();A.exports=a},function(A,e,t){function r(){}r.svd=function(i){this.U=null,this.V=null,this.s=null,this.m=0,this.n=0,this.m=i.length,this.n=i[0].length;var u=Math.min(this.m,this.n);this.s=function(je){var Ge=[];while(je-- >0)Ge.push(0);return Ge}(Math.min(this.m+1,this.n)),this.U=function(je){var Ge=function wA(Re){if(Re.length==0)return 0;else{var He=[];for(var de=0;de<Re[0];de++)He.push(wA(Re.slice(1)));return He}};return Ge(je)}([this.m,u]),this.V=function(je){var Ge=function wA(Re){if(Re.length==0)return 0;else{var He=[];for(var de=0;de<Re[0];de++)He.push(wA(Re.slice(1)));return He}};return Ge(je)}([this.n,this.n]);var a=function(je){var Ge=[];while(je-- >0)Ge.push(0);return Ge}(this.n),n=function(je){var Ge=[];while(je-- >0)Ge.push(0);return Ge}(this.m),o=!0,s=!0,l=Math.min(this.m-1,this.n),g=Math.max(0,Math.min(this.n-2,this.m));for(var C=0;C<Math.max(l,g);C++){if(C<l){this.s[C]=0;for(var B=C;B<this.m;B++)this.s[C]=r.hypot(this.s[C],i[B][C]);if(this.s[C]!==0){if(i[C][C]<0)this.s[C]=-this.s[C];for(var E=C;E<this.m;E++)i[E][C]/=this.s[C];i[C][C]+=1}this.s[C]=-this.s[C]}for(var d=C+1;d<this.n;d++){if(function(je,Ge){return je&&Ge}(C<l,this.s[C]!==0)){var I=0;for(var h=C;h<this.m;h++)I+=i[h][C]*i[h][d];I=-I/i[C][C];for(var Q=C;Q<this.m;Q++)i[Q][d]+=I*i[Q][C]}a[d]=i[C][d]}if(function(je,Ge){return je&&Ge}(o,C<l))for(var p=C;p<this.m;p++)this.U[p][C]=i[p][C];if(C<g){a[C]=0;for(var m=C+1;m<this.n;m++)a[C]=r.hypot(a[C],a[m]);if(a[C]!==0){if(a[C+1]<0)a[C]=-a[C];for(var f=C+1;f<this.n;f++)a[f]/=a[C];a[C+1]+=1}if(a[C]=-a[C],function(je,Ge){return je&&Ge}(C+1<this.m,a[C]!==0)){for(var D=C+1;D<this.m;D++)n[D]=0;for(var w=C+1;w<this.n;w++)for(var b=C+1;b<this.m;b++)n[b]+=a[w]*i[b][w];for(var k=C+1;k<this.n;k++){var v=-a[k]/a[C+1];for(var S=C+1;S<this.m;S++)i[S][k]+=v*n[S]}}if(s)for(var x=C+1;x<this.n;x++)this.V[x][C]=a[x]}}var F=Math.min(this.n,this.m+1);if(l<this.n)this.s[l]=i[l][l];if(this.m<F)this.s[F-1]=0;if(g+1<F)a[g]=i[g][F-1];if(a[F-1]=0,o){for(var T=l;T<u;T++){for(var R=0;R<this.m;R++)this.U[R][T]=0;this.U[T][T]=1}for(var L=l-1;L>=0;L--)if(this.s[L]!==0){for(var M=L+1;M<u;M++){var U=0;for(var Y=L;Y<this.m;Y++)U+=this.U[Y][L]*this.U[Y][M];U=-U/this.U[L][L];for(var H=L;H<this.m;H++)this.U[H][M]+=U*this.U[H][L]}for(var J=L;J<this.m;J++)this.U[J][L]=-this.U[J][L];this.U[L][L]=1+this.U[L][L];for(var K=0;K<L-1;K++)this.U[K][L]=0}else{for(var O=0;O<this.m;O++)this.U[O][L]=0;this.U[L][L]=1}}if(s)for(var P=this.n-1;P>=0;P--){if(function(je,Ge){return je&&Ge}(P<g,a[P]!==0))for(var z=P+1;z<u;z++){var AA=0;for(var W=P+1;W<this.n;W++)AA+=this.V[W][P]*this.V[W][z];AA=-AA/this.V[P+1][P];for(var CA=P+1;CA<this.n;CA++)this.V[CA][z]+=AA*this.V[CA][P]}for(var tA=0;tA<this.n;tA++)this.V[tA][P]=0;this.V[P][P]=1}var lA=F-1,gA=0,aA=Math.pow(2,-52),NA=Math.pow(2,-966);while(F>0){var DA=void 0,KA=void 0;for(DA=F-2;DA>=-1;DA--){if(DA===-1)break;if(Math.abs(a[DA])<=NA+aA*(Math.abs(this.s[DA])+Math.abs(this.s[DA+1]))){a[DA]=0;break}}if(DA===F-2)KA=4;else{var TA=void 0;for(TA=F-1;TA>=DA;TA--){if(TA===DA)break;var qA=(TA!==F?Math.abs(a[TA]):0)+(TA!==DA+1?Math.abs(a[TA-1]):0);if(Math.abs(this.s[TA])<=NA+aA*qA){this.s[TA]=0;break}}if(TA===DA)KA=3;else if(TA===F-1)KA=1;else KA=2,DA=TA}switch(DA++,KA){case 1:{var IA=a[F-2];a[F-2]=0;for(var bA=F-2;bA>=DA;bA--){var SA=r.hypot(this.s[bA],IA),EA=this.s[bA]/SA,nA=IA/SA;if(this.s[bA]=SA,bA!==DA)IA=-nA*a[bA-1],a[bA-1]=EA*a[bA-1];if(s)for(var eA=0;eA<this.n;eA++)SA=EA*this.V[eA][bA]+nA*this.V[eA][F-1],this.V[eA][F-1]=-nA*this.V[eA][bA]+EA*this.V[eA][F-1],this.V[eA][bA]=SA}}break;case 2:{var BA=a[DA-1];a[DA-1]=0;for(var yA=DA;yA<F;yA++){var vA=r.hypot(this.s[yA],BA),FA=this.s[yA]/vA,HA=BA/vA;if(this.s[yA]=vA,BA=-HA*a[yA],a[yA]=FA*a[yA],o)for(var dA=0;dA<this.m;dA++)vA=FA*this.U[dA][yA]+HA*this.U[dA][DA-1],this.U[dA][DA-1]=-HA*this.U[dA][yA]+FA*this.U[dA][DA-1],this.U[dA][yA]=vA}}break;case 3:{var q=Math.max(Math.max(Math.max(Math.max(Math.abs(this.s[F-1]),Math.abs(this.s[F-2])),Math.abs(a[F-2])),Math.abs(this.s[DA])),Math.abs(a[DA])),Z=this.s[F-1]/q,fA=this.s[F-2]/q,j=a[F-2]/q,mA=this.s[DA]/q,rA=a[DA]/q,JA=((fA+Z)*(fA-Z)+j*j)/2,_A=Z*j*(Z*j),ZA=0;if(function(je,Ge){return je||Ge}(JA!==0,_A!==0)){if(ZA=Math.sqrt(JA*JA+_A),JA<0)ZA=-ZA;ZA=_A/(JA+ZA)}var WA=(mA+Z)*(mA-Z)+ZA,te=mA*rA;for(var zA=DA;zA<F-1;zA++){var Ae=r.hypot(WA,te),$A=WA/Ae,oe=te/Ae;if(zA!==DA)a[zA-1]=Ae;if(WA=$A*this.s[zA]+oe*a[zA],a[zA]=$A*a[zA]-oe*this.s[zA],te=oe*this.s[zA+1],this.s[zA+1]=$A*this.s[zA+1],s)for(var kA=0;kA<this.n;kA++)Ae=$A*this.V[kA][zA]+oe*this.V[kA][zA+1],this.V[kA][zA+1]=-oe*this.V[kA][zA]+$A*this.V[kA][zA+1],this.V[kA][zA]=Ae;if(Ae=r.hypot(WA,te),$A=WA/Ae,oe=te/Ae,this.s[zA]=Ae,WA=$A*a[zA]+oe*this.s[zA+1],this.s[zA+1]=-oe*a[zA]+$A*this.s[zA+1],te=oe*a[zA+1],a[zA+1]=$A*a[zA+1],o&&zA<this.m-1)for(var Pe=0;Pe<this.m;Pe++)Ae=$A*this.U[Pe][zA]+oe*this.U[Pe][zA+1],this.U[Pe][zA+1]=-oe*this.U[Pe][zA]+$A*this.U[Pe][zA+1],this.U[Pe][zA]=Ae}a[F-2]=WA,gA=gA+1}break;case 4:{if(this.s[DA]<=0){if(this.s[DA]=this.s[DA]<0?-this.s[DA]:0,s)for(var MA=0;MA<=lA;MA++)this.V[MA][DA]=-this.V[MA][DA]}while(DA<lA){if(this.s[DA]>=this.s[DA+1])break;var ke=this.s[DA];if(this.s[DA]=this.s[DA+1],this.s[DA+1]=ke,s&&DA<this.n-1)for(var We=0;We<this.n;We++)ke=this.V[We][DA+1],this.V[We][DA+1]=this.V[We][DA],this.V[We][DA]=ke;if(o&&DA<this.m-1)for(var ue=0;ue<this.m;ue++)ke=this.U[ue][DA+1],this.U[ue][DA+1]=this.U[ue][DA],this.U[ue][DA]=ke;DA++}gA=0,F--}break}}var Me={U:this.U,V:this.V,S:this.s};return Me},r.hypot=function(i,u){var a=void 0;if(Math.abs(i)>Math.abs(u))a=u/i,a=Math.abs(i)*Math.sqrt(1+a*a);else if(u!=0)a=i/u,a=Math.abs(u)*Math.sqrt(1+a*a);else a=0;return a},A.exports=r},function(A,e,t){var r=function(){function a(n,o){for(var s=0;s<o.length;s++){var l=o[s];if(l.enumerable=l.enumerable||!1,l.configurable=!0,"value"in l)l.writable=!0;Object.defineProperty(n,l.key,l)}}return function(n,o,s){if(o)a(n.prototype,o);if(s)a(n,s);return n}}();function i(a,n){if(!(a instanceof n))throw TypeError("Cannot call a class as a function")}var u=function(){function a(n,o){var s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:-1,g=arguments.length>4&&arguments[4]!==void 0?arguments[4]:-1;i(this,a),this.sequence1=n,this.sequence2=o,this.match_score=s,this.mismatch_penalty=l,this.gap_penalty=g,this.iMax=n.length+1,this.jMax=o.length+1,this.grid=Array(this.iMax);for(var C=0;C<this.iMax;C++){this.grid[C]=Array(this.jMax);for(var B=0;B<this.jMax;B++)this.grid[C][B]=0}this.tracebackGrid=Array(this.iMax);for(var E=0;E<this.iMax;E++){this.tracebackGrid[E]=Array(this.jMax);for(var d=0;d<this.jMax;d++)this.tracebackGrid[E][d]=[null,null,null]}this.alignments=[],this.score=-1,this.computeGrids()}return r(a,[{key:"getScore",value:function(){return this.score}},{key:"getAlignments",value:function(){return this.alignments}},{key:"computeGrids",value:function(){for(var o=1;o<this.jMax;o++)this.grid[0][o]=this.grid[0][o-1]+this.gap_penalty,this.tracebackGrid[0][o]=[!1,!1,!0];for(var s=1;s<this.iMax;s++)this.grid[s][0]=this.grid[s-1][0]+this.gap_penalty,this.tracebackGrid[s][0]=[!1,!0,!1];for(var l=1;l<this.iMax;l++)for(var g=1;g<this.jMax;g++){var C=void 0;if(this.sequence1[l-1]===this.sequence2[g-1])C=this.grid[l-1][g-1]+this.match_score;else C=this.grid[l-1][g-1]+this.mismatch_penalty;var B=this.grid[l-1][g]+this.gap_penalty,E=this.grid[l][g-1]+this.gap_penalty,d=[C,B,E],I=this.arrayAllMaxIndexes(d);this.grid[l][g]=d[I[0]],this.tracebackGrid[l][g]=[I.includes(0),I.includes(1),I.includes(2)]}this.score=this.grid[this.iMax-1][this.jMax-1]}},{key:"alignmentTraceback",value:function(){var o=[];o.push({pos:[this.sequence1.length,this.sequence2.length],seq1:"",seq2:""});while(o[0]){var s=o[0],l=this.tracebackGrid[s.pos[0]][s.pos[1]];if(l[0])o.push({pos:[s.pos[0]-1,s.pos[1]-1],seq1:this.sequence1[s.pos[0]-1]+s.seq1,seq2:this.sequence2[s.pos[1]-1]+s.seq2});if(l[1])o.push({pos:[s.pos[0]-1,s.pos[1]],seq1:this.sequence1[s.pos[0]-1]+s.seq1,seq2:"-"+s.seq2});if(l[2])o.push({pos:[s.pos[0],s.pos[1]-1],seq1:"-"+s.seq1,seq2:this.sequence2[s.pos[1]-1]+s.seq2});if(s.pos[0]===0&&s.pos[1]===0)this.alignments.push({sequence1:s.seq1,sequence2:s.seq2});o.shift()}return this.alignments}},{key:"getAllIndexes",value:function(o,s){var l=[],g=-1;while((g=o.indexOf(s,g+1))!==-1)l.push(g);return l}},{key:"arrayAllMaxIndexes",value:function(o){return this.getAllIndexes(o,Math.max.apply(null,o))}}]),a}();A.exports=u},function(A,e,t){var r=function(){return};r.FDLayout=t(18),r.FDLayoutConstants=t(4),r.FDLayoutEdge=t(19),r.FDLayoutNode=t(20),r.DimensionD=t(21),r.HashMap=t(22),r.HashSet=t(23),r.IGeometry=t(8),r.IMath=t(9),r.Integer=t(10),r.Point=t(12),r.PointD=t(5),r.RandomSeed=t(16),r.RectangleD=t(13),r.Transform=t(17),r.UniqueIDGeneretor=t(14),r.Quicksort=t(25),r.LinkedList=t(11),r.LGraphObject=t(2),r.LGraph=t(6),r.LEdge=t(1),r.LGraphManager=t(7),r.LNode=t(3),r.Layout=t(15),r.LayoutConstants=t(0),r.NeedlemanWunsch=t(27),r.Matrix=t(24),r.SVD=t(26),A.exports=r},function(A,e,t){function r(){this.listeners=[]}var i=r.prototype;i.addListener=function(u,a){this.listeners.push({event:u,callback:a})},i.removeListener=function(u,a){for(var n=this.listeners.length;n>=0;n--){var o=this.listeners[n];if(o.event===u&&o.callback===a)this.listeners.splice(n,1)}},i.emit=function(u,a){for(var n=0;n<this.listeners.length;n++){var o=this.listeners[n];if(u===o.event)o.callback(a)}},A.exports=r}])})});var dBA=wu(function(B7,EBA){(function(e,t){if(typeof B7==="object"&&typeof EBA==="object")EBA.exports=t(BBA());else if(typeof define==="function"&&define.amd)define(["layout-base"],t);else if(typeof B7==="object")B7.coseBase=t(BBA());else e.coseBase=t(e.layoutBase)})(B7,function(A){return(()=>{var e={45:(u,a,n)=>{var o={};o.layoutBase=n(551),o.CoSEConstants=n(806),o.CoSEEdge=n(767),o.CoSEGraph=n(880),o.CoSEGraphManager=n(578),o.CoSELayout=n(765),o.CoSENode=n(991),o.ConstraintHandler=n(902),u.exports=o},806:(u,a,n)=>{var o=n(551).FDLayoutConstants;function s(){}for(var l in o)s[l]=o[l];s.DEFAULT_USE_MULTI_LEVEL_SCALING=!1,s.DEFAULT_RADIAL_SEPARATION=o.DEFAULT_EDGE_LENGTH,s.DEFAULT_COMPONENT_SEPERATION=60,s.TILE=!0,s.TILING_PADDING_VERTICAL=10,s.TILING_PADDING_HORIZONTAL=10,s.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,s.ENFORCE_CONSTRAINTS=!0,s.APPLY_LAYOUT=!0,s.RELAX_MOVEMENT_ON_CONSTRAINTS=!0,s.TREE_REDUCTION_ON_INCREMENTAL=!0,s.PURE_INCREMENTAL=s.DEFAULT_INCREMENTAL,u.exports=s},767:(u,a,n)=>{var o=n(551).FDLayoutEdge;function s(g,C,B){o.call(this,g,C,B)}s.prototype=Object.create(o.prototype);for(var l in o)s[l]=o[l];u.exports=s},880:(u,a,n)=>{var o=n(551).LGraph;function s(g,C,B){o.call(this,g,C,B)}s.prototype=Object.create(o.prototype);for(var l in o)s[l]=o[l];u.exports=s},578:(u,a,n)=>{var o=n(551).LGraphManager;function s(g){o.call(this,g)}s.prototype=Object.create(o.prototype);for(var l in o)s[l]=o[l];u.exports=s},765:(u,a,n)=>{var o=n(551).FDLayout,s=n(578),l=n(880),g=n(991),C=n(767),B=n(806),E=n(902),d=n(551).FDLayoutConstants,I=n(551).LayoutConstants,h=n(551).Point,Q=n(551).PointD,p=n(551).DimensionD,m=n(551).Layout,f=n(551).Integer,D=n(551).IGeometry,w=n(551).LGraph,b=n(551).Transform,k=n(551).LinkedList;function v(){o.call(this),this.toBeTiled={},this.constraints={}}v.prototype=Object.create(o.prototype);for(var S in o)v[S]=o[S];v.prototype.newGraphManager=function(){var x=new s(this);return this.graphManager=x,x},v.prototype.newGraph=function(x){return new l(null,this.graphManager,x)},v.prototype.newNode=function(x){return new g(this.graphManager,x)},v.prototype.newEdge=function(x){return new C(null,null,x)},v.prototype.initParameters=function(){if(o.prototype.initParameters.call(this,arguments),!this.isSubLayout){if(B.DEFAULT_EDGE_LENGTH<10)this.idealEdgeLength=10;else this.idealEdgeLength=B.DEFAULT_EDGE_LENGTH;this.useSmartIdealEdgeLengthCalculation=B.DEFAULT_USE_SMART_IDEAL_EDGE_LENGTH_CALCULATION,this.gravityConstant=d.DEFAULT_GRAVITY_STRENGTH,this.compoundGravityConstant=d.DEFAULT_COMPOUND_GRAVITY_STRENGTH,this.gravityRangeFactor=d.DEFAULT_GRAVITY_RANGE_FACTOR,this.compoundGravityRangeFactor=d.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR,this.prunedNodesAll=[],this.growTreeIterations=0,this.afterGrowthIterations=0,this.isTreeGrowing=!1,this.isGrowthFinished=!1}},v.prototype.initSpringEmbedder=function(){o.prototype.initSpringEmbedder.call(this),this.coolingCycle=0,this.maxCoolingCycle=this.maxIterations/d.CONVERGENCE_CHECK_PERIOD,this.finalTemperature=0.04,this.coolingAdjuster=1},v.prototype.layout=function(){var x=I.DEFAULT_CREATE_BENDS_AS_NEEDED;if(x)this.createBendpoints(),this.graphManager.resetAllEdges();return this.level=0,this.classicLayout()},v.prototype.classicLayout=function(){if(this.nodesWithGravity=this.calculateNodesToApplyGravitationTo(),this.graphManager.setAllNodesToApplyGravitation(this.nodesWithGravity),this.calcNoOfChildrenForAllNodes(),this.graphManager.calcLowestCommonAncestors(),this.graphManager.calcInclusionTreeDepths(),this.graphManager.getRoot().calcEstimatedSize(),this.calcIdealEdgeLengths(),!this.incremental){var x=this.getFlatForest();if(x.length>0)this.positionNodesRadially(x);else{this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var F=new Set(this.getAllNodes()),T=this.nodesWithGravity.filter(function(R){return F.has(R)});this.graphManager.setAllNodesToApplyGravitation(T),this.positionNodesRandomly()}}else if(B.TREE_REDUCTION_ON_INCREMENTAL){this.reduceTrees(),this.graphManager.resetAllNodesToApplyGravitation();var F=new Set(this.getAllNodes()),T=this.nodesWithGravity.filter(function(M){return F.has(M)});this.graphManager.setAllNodesToApplyGravitation(T)}if(Object.keys(this.constraints).length>0)E.handleConstraints(this),this.initConstraintVariables();if(this.initSpringEmbedder(),B.APPLY_LAYOUT)this.runSpringEmbedder();return!0},v.prototype.tick=function(){if(this.totalIterations++,this.totalIterations===this.maxIterations&&!this.isTreeGrowing&&!this.isGrowthFinished)if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.totalIterations%d.CONVERGENCE_CHECK_PERIOD==0&&!this.isTreeGrowing&&!this.isGrowthFinished){if(this.isConverged())if(this.prunedNodesAll.length>0)this.isTreeGrowing=!0;else return!0;if(this.coolingCycle++,this.layoutQuality==0)this.coolingAdjuster=this.coolingCycle;else if(this.layoutQuality==1)this.coolingAdjuster=this.coolingCycle/3;this.coolingFactor=Math.max(this.initialCoolingFactor-Math.pow(this.coolingCycle,Math.log(100*(this.initialCoolingFactor-this.finalTemperature))/Math.log(this.maxCoolingCycle))/100*this.coolingAdjuster,this.finalTemperature),this.animationPeriod=Math.ceil(this.initialAnimationPeriod*Math.sqrt(this.coolingFactor))}if(this.isTreeGrowing){if(this.growTreeIterations%10==0)if(this.prunedNodesAll.length>0){this.graphManager.updateBounds(),this.updateGrid(),this.growTree(this.prunedNodesAll),this.graphManager.resetAllNodesToApplyGravitation();var x=new Set(this.getAllNodes()),F=this.nodesWithGravity.filter(function(L){return x.has(L)});if(this.graphManager.setAllNodesToApplyGravitation(F),this.graphManager.updateBounds(),this.updateGrid(),B.PURE_INCREMENTAL)this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL/2;else this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL}else this.isTreeGrowing=!1,this.isGrowthFinished=!0;this.growTreeIterations++}if(this.isGrowthFinished){if(this.isConverged())return!0;if(this.afterGrowthIterations%10==0)this.graphManager.updateBounds(),this.updateGrid();if(B.PURE_INCREMENTAL)this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL/2*((100-this.afterGrowthIterations)/100);else this.coolingFactor=d.DEFAULT_COOLING_FACTOR_INCREMENTAL*((100-this.afterGrowthIterations)/100);this.afterGrowthIterations++}var T=!this.isTreeGrowing&&!this.isGrowthFinished,R=this.growTreeIterations%10==1&&this.isTreeGrowing||this.afterGrowthIterations%10==1&&this.isGrowthFinished;return this.totalDisplacement=0,this.graphManager.updateBounds(),this.calcSpringForces(),this.calcRepulsionForces(T,R),this.calcGravitationalForces(),this.moveNodes(),this.animate(),!1},v.prototype.getPositionsData=function(){var x=this.graphManager.getAllNodes(),F={};for(var T=0;T<x.length;T++){var R=x[T].rect,L=x[T].id;F[L]={id:L,x:R.getCenterX(),y:R.getCenterY(),w:R.width,h:R.height}}return F},v.prototype.runSpringEmbedder=function(){this.initialAnimationPeriod=25,this.animationPeriod=this.initialAnimationPeriod;var x=!1;if(d.ANIMATE==="during")this.emit("layoutstarted");else{while(!x)x=this.tick();this.graphManager.updateBounds()}},v.prototype.moveNodes=function(){var x=this.getAllNodes(),F;for(var T=0;T<x.length;T++)F=x[T],F.calculateDisplacement();if(Object.keys(this.constraints).length>0)this.updateDisplacements();for(var T=0;T<x.length;T++)F=x[T],F.move()},v.prototype.initConstraintVariables=function(){var x=this;this.idToNodeMap=new Map,this.fixedNodeSet=new Set;var F=this.graphManager.getAllNodes();for(var T=0;T<F.length;T++){var R=F[T];this.idToNodeMap.set(R.id,R)}var L=function W(CA){var tA=CA.getChild().getNodes(),lA,gA=0;for(var aA=0;aA<tA.length;aA++)if(lA=tA[aA],lA.getChild()==null){if(x.fixedNodeSet.has(lA.id))gA+=100}else gA+=W(lA);return gA};if(this.constraints.fixedNodeConstraint){this.constraints.fixedNodeConstraint.forEach(function(tA){x.fixedNodeSet.add(tA.nodeId)});var F=this.graphManager.getAllNodes(),R;for(var T=0;T<F.length;T++)if(R=F[T],R.getChild()!=null){var M=L(R);if(M>0)R.fixedNodeWeight=M}}if(this.constraints.relativePlacementConstraint){var U=new Map,Y=new Map;if(this.dummyToNodeForVerticalAlignment=new Map,this.dummyToNodeForHorizontalAlignment=new Map,this.fixedNodesOnHorizontal=new Set,this.fixedNodesOnVertical=new Set,this.fixedNodeSet.forEach(function(W){x.fixedNodesOnHorizontal.add(W),x.fixedNodesOnVertical.add(W)}),this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical){var H=this.constraints.alignmentConstraint.vertical;for(var T=0;T<H.length;T++)this.dummyToNodeForVerticalAlignment.set("dummy"+T,[]),H[T].forEach(function(CA){if(U.set(CA,"dummy"+T),x.dummyToNodeForVerticalAlignment.get("dummy"+T).push(CA),x.fixedNodeSet.has(CA))x.fixedNodesOnHorizontal.add("dummy"+T)})}if(this.constraints.alignmentConstraint.horizontal){var J=this.constraints.alignmentConstraint.horizontal;for(var T=0;T<J.length;T++)this.dummyToNodeForHorizontalAlignment.set("dummy"+T,[]),J[T].forEach(function(CA){if(Y.set(CA,"dummy"+T),x.dummyToNodeForHorizontalAlignment.get("dummy"+T).push(CA),x.fixedNodeSet.has(CA))x.fixedNodesOnVertical.add("dummy"+T)})}}if(B.RELAX_MOVEMENT_ON_CONSTRAINTS)this.shuffle=function(W){var CA,tA,lA;for(lA=W.length-1;lA>=2*W.length/3;lA--)CA=Math.floor(Math.random()*(lA+1)),tA=W[lA],W[lA]=W[CA],W[CA]=tA;return W},this.nodesInRelativeHorizontal=[],this.nodesInRelativeVertical=[],this.nodeToRelativeConstraintMapHorizontal=new Map,this.nodeToRelativeConstraintMapVertical=new Map,this.nodeToTempPositionMapHorizontal=new Map,this.nodeToTempPositionMapVertical=new Map,this.constraints.relativePlacementConstraint.forEach(function(W){if(W.left){var CA=U.has(W.left)?U.get(W.left):W.left,tA=U.has(W.right)?U.get(W.right):W.right;if(!x.nodesInRelativeHorizontal.includes(CA))if(x.nodesInRelativeHorizontal.push(CA),x.nodeToRelativeConstraintMapHorizontal.set(CA,[]),x.dummyToNodeForVerticalAlignment.has(CA))x.nodeToTempPositionMapHorizontal.set(CA,x.idToNodeMap.get(x.dummyToNodeForVerticalAlignment.get(CA)[0]).getCenterX());else x.nodeToTempPositionMapHorizontal.set(CA,x.idToNodeMap.get(CA).getCenterX());if(!x.nodesInRelativeHorizontal.includes(tA))if(x.nodesInRelativeHorizontal.push(tA),x.nodeToRelativeConstraintMapHorizontal.set(tA,[]),x.dummyToNodeForVerticalAlignment.has(tA))x.nodeToTempPositionMapHorizontal.set(tA,x.idToNodeMap.get(x.dummyToNodeForVerticalAlignment.get(tA)[0]).getCenterX());else x.nodeToTempPositionMapHorizontal.set(tA,x.idToNodeMap.get(tA).getCenterX());x.nodeToRelativeConstraintMapHorizontal.get(CA).push({right:tA,gap:W.gap}),x.nodeToRelativeConstraintMapHorizontal.get(tA).push({left:CA,gap:W.gap})}else{var lA=Y.has(W.top)?Y.get(W.top):W.top,gA=Y.has(W.bottom)?Y.get(W.bottom):W.bottom;if(!x.nodesInRelativeVertical.includes(lA))if(x.nodesInRelativeVertical.push(lA),x.nodeToRelativeConstraintMapVertical.set(lA,[]),x.dummyToNodeForHorizontalAlignment.has(lA))x.nodeToTempPositionMapVertical.set(lA,x.idToNodeMap.get(x.dummyToNodeForHorizontalAlignment.get(lA)[0]).getCenterY());else x.nodeToTempPositionMapVertical.set(lA,x.idToNodeMap.get(lA).getCenterY());if(!x.nodesInRelativeVertical.includes(gA))if(x.nodesInRelativeVertical.push(gA),x.nodeToRelativeConstraintMapVertical.set(gA,[]),x.dummyToNodeForHorizontalAlignment.has(gA))x.nodeToTempPositionMapVertical.set(gA,x.idToNodeMap.get(x.dummyToNodeForHorizontalAlignment.get(gA)[0]).getCenterY());else x.nodeToTempPositionMapVertical.set(gA,x.idToNodeMap.get(gA).getCenterY());x.nodeToRelativeConstraintMapVertical.get(lA).push({bottom:gA,gap:W.gap}),x.nodeToRelativeConstraintMapVertical.get(gA).push({top:lA,gap:W.gap})}});else{var K=new Map,O=new Map;this.constraints.relativePlacementConstraint.forEach(function(W){if(W.left){var CA=U.has(W.left)?U.get(W.left):W.left,tA=U.has(W.right)?U.get(W.right):W.right;if(K.has(CA))K.get(CA).push(tA);else K.set(CA,[tA]);if(K.has(tA))K.get(tA).push(CA);else K.set(tA,[CA])}else{var lA=Y.has(W.top)?Y.get(W.top):W.top,gA=Y.has(W.bottom)?Y.get(W.bottom):W.bottom;if(O.has(lA))O.get(lA).push(gA);else O.set(lA,[gA]);if(O.has(gA))O.get(gA).push(lA);else O.set(gA,[lA])}});var P=function(CA,tA){var lA=[],gA=[],aA=new k,NA=new Set,DA=0;return CA.forEach(function(KA,TA){if(!NA.has(TA)){lA[DA]=[],gA[DA]=!1;var qA=TA;aA.push(qA),NA.add(qA),lA[DA].push(qA);while(aA.length!=0){if(qA=aA.shift(),tA.has(qA))gA[DA]=!0;var IA=CA.get(qA);IA.forEach(function(bA){if(!NA.has(bA))aA.push(bA),NA.add(bA),lA[DA].push(bA)})}DA++}}),{components:lA,isFixed:gA}},z=P(K,x.fixedNodesOnHorizontal);this.componentsOnHorizontal=z.components,this.fixedComponentsOnHorizontal=z.isFixed;var AA=P(O,x.fixedNodesOnVertical);this.componentsOnVertical=AA.components,this.fixedComponentsOnVertical=AA.isFixed}}},v.prototype.updateDisplacements=function(){var x=this;if(this.constraints.fixedNodeConstraint)this.constraints.fixedNodeConstraint.forEach(function(AA){var W=x.idToNodeMap.get(AA.nodeId);W.displacementX=0,W.displacementY=0});if(this.constraints.alignmentConstraint){if(this.constraints.alignmentConstraint.vertical){var F=this.constraints.alignmentConstraint.vertical;for(var T=0;T<F.length;T++){var R=0;for(var L=0;L<F[T].length;L++){if(this.fixedNodeSet.has(F[T][L])){R=0;break}R+=this.idToNodeMap.get(F[T][L]).displacementX}var M=R/F[T].length;for(var L=0;L<F[T].length;L++)this.idToNodeMap.get(F[T][L]).displacementX=M}}if(this.constraints.alignmentConstraint.horizontal){var U=this.constraints.alignmentConstraint.horizontal;for(var T=0;T<U.length;T++){var Y=0;for(var L=0;L<U[T].length;L++){if(this.fixedNodeSet.has(U[T][L])){Y=0;break}Y+=this.idToNodeMap.get(U[T][L]).displacementY}var H=Y/U[T].length;for(var L=0;L<U[T].length;L++)this.idToNodeMap.get(U[T][L]).displacementY=H}}}if(this.constraints.relativePlacementConstraint)if(B.RELAX_MOVEMENT_ON_CONSTRAINTS){if(this.totalIterations%10==0)this.shuffle(this.nodesInRelativeHorizontal),this.shuffle(this.nodesInRelativeVertical);this.nodesInRelativeHorizontal.forEach(function(AA){if(!x.fixedNodesOnHorizontal.has(AA)){var W=0;if(x.dummyToNodeForVerticalAlignment.has(AA))W=x.idToNodeMap.get(x.dummyToNodeForVerticalAlignment.get(AA)[0]).displacementX;else W=x.idToNodeMap.get(AA).displacementX;if(x.nodeToRelativeConstraintMapHorizontal.get(AA).forEach(function(CA){if(CA.right){var tA=x.nodeToTempPositionMapHorizontal.get(CA.right)-x.nodeToTempPositionMapHorizontal.get(AA)-W;if(tA<CA.gap)W-=CA.gap-tA}else{var tA=x.nodeToTempPositionMapHorizontal.get(AA)-x.nodeToTempPositionMapHorizontal.get(CA.left)+W;if(tA<CA.gap)W+=CA.gap-tA}}),x.nodeToTempPositionMapHorizontal.set(AA,x.nodeToTempPositionMapHorizontal.get(AA)+W),x.dummyToNodeForVerticalAlignment.has(AA))x.dummyToNodeForVerticalAlignment.get(AA).forEach(function(CA){x.idToNodeMap.get(CA).displacementX=W});else x.idToNodeMap.get(AA).displacementX=W}}),this.nodesInRelativeVertical.forEach(function(AA){if(!x.fixedNodesOnHorizontal.has(AA)){var W=0;if(x.dummyToNodeForHorizontalAlignment.has(AA))W=x.idToNodeMap.get(x.dummyToNodeForHorizontalAlignment.get(AA)[0]).displacementY;else W=x.idToNodeMap.get(AA).displacementY;if(x.nodeToRelativeConstraintMapVertical.get(AA).forEach(function(CA){if(CA.bottom){var tA=x.nodeToTempPositionMapVertical.get(CA.bottom)-x.nodeToTempPositionMapVertical.get(AA)-W;if(tA<CA.gap)W-=CA.gap-tA}else{var tA=x.nodeToTempPositionMapVertical.get(AA)-x.nodeToTempPositionMapVertical.get(CA.top)+W;if(tA<CA.gap)W+=CA.gap-tA}}),x.nodeToTempPositionMapVertical.set(AA,x.nodeToTempPositionMapVertical.get(AA)+W),x.dummyToNodeForHorizontalAlignment.has(AA))x.dummyToNodeForHorizontalAlignment.get(AA).forEach(function(CA){x.idToNodeMap.get(CA).displacementY=W});else x.idToNodeMap.get(AA).displacementY=W}})}else{for(var T=0;T<this.componentsOnHorizontal.length;T++){var J=this.componentsOnHorizontal[T];if(this.fixedComponentsOnHorizontal[T])for(var L=0;L<J.length;L++)if(this.dummyToNodeForVerticalAlignment.has(J[L]))this.dummyToNodeForVerticalAlignment.get(J[L]).forEach(function(CA){x.idToNodeMap.get(CA).displacementX=0});else this.idToNodeMap.get(J[L]).displacementX=0;else{var K=0,O=0;for(var L=0;L<J.length;L++)if(this.dummyToNodeForVerticalAlignment.has(J[L])){var P=this.dummyToNodeForVerticalAlignment.get(J[L]);K+=P.length*this.idToNodeMap.get(P[0]).displacementX,O+=P.length}else K+=this.idToNodeMap.get(J[L]).displacementX,O++;var z=K/O;for(var L=0;L<J.length;L++)if(this.dummyToNodeForVerticalAlignment.has(J[L]))this.dummyToNodeForVerticalAlignment.get(J[L]).forEach(function(CA){x.idToNodeMap.get(CA).displacementX=z});else this.idToNodeMap.get(J[L]).displacementX=z}}for(var T=0;T<this.componentsOnVertical.length;T++){var J=this.componentsOnVertical[T];if(this.fixedComponentsOnVertical[T])for(var L=0;L<J.length;L++)if(this.dummyToNodeForHorizontalAlignment.has(J[L]))this.dummyToNodeForHorizontalAlignment.get(J[L]).forEach(function(tA){x.idToNodeMap.get(tA).displacementY=0});else this.idToNodeMap.get(J[L]).displacementY=0;else{var K=0,O=0;for(var L=0;L<J.length;L++)if(this.dummyToNodeForHorizontalAlignment.has(J[L])){var P=this.dummyToNodeForHorizontalAlignment.get(J[L]);K+=P.length*this.idToNodeMap.get(P[0]).displacementY,O+=P.length}else K+=this.idToNodeMap.get(J[L]).displacementY,O++;var z=K/O;for(var L=0;L<J.length;L++)if(this.dummyToNodeForHorizontalAlignment.has(J[L]))this.dummyToNodeForHorizontalAlignment.get(J[L]).forEach(function(aA){x.idToNodeMap.get(aA).displacementY=z});else this.idToNodeMap.get(J[L]).displacementY=z}}}},v.prototype.calculateNodesToApplyGravitationTo=function(){var x=[],F,T=this.graphManager.getGraphs(),R=T.length,L;for(L=0;L<R;L++)if(F=T[L],F.updateConnected(),!F.isConnected)x=x.concat(F.getNodes());return x},v.prototype.createBendpoints=function(){var x=[];x=x.concat(this.graphManager.getAllEdges());var F=new Set,T;for(T=0;T<x.length;T++){var R=x[T];if(!F.has(R)){var L=R.getSource(),M=R.getTarget();if(L==M)R.getBendpoints().push(new Q),R.getBendpoints().push(new Q),this.createDummyNodesForBendpoints(R),F.add(R);else{var U=[];if(U=U.concat(L.getEdgeListToNode(M)),U=U.concat(M.getEdgeListToNode(L)),!F.has(U[0])){if(U.length>1){var Y;for(Y=0;Y<U.length;Y++){var H=U[Y];H.getBendpoints().push(new Q),this.createDummyNodesForBendpoints(H)}}U.forEach(function(J){F.add(J)})}}}if(F.size==x.length)break}},v.prototype.positionNodesRadially=function(x){var F=new h(0,0),T=Math.ceil(Math.sqrt(x.length)),R=0,L=0,M=0,U=new Q(0,0);for(var Y=0;Y<x.length;Y++){if(Y%T==0){if(M=0,L=R,Y!=0)L+=B.DEFAULT_COMPONENT_SEPERATION;R=0}var H=x[Y],J=m.findCenterOfTree(H);if(F.x=M,F.y=L,U=v.radialLayout(H,J,F),U.y>R)R=Math.floor(U.y);M=Math.floor(U.x+B.DEFAULT_COMPONENT_SEPERATION)}this.transform(new Q(I.WORLD_CENTER_X-U.x/2,I.WORLD_CENTER_Y-U.y/2))},v.radialLayout=function(x,F,T){var R=Math.max(this.maxDiagonalInTree(x),B.DEFAULT_RADIAL_SEPARATION);v.branchRadialLayout(F,null,0,359,0,R);var L=w.calculateBounds(x),M=new b;M.setDeviceOrgX(L.getMinX()),M.setDeviceOrgY(L.getMinY()),M.setWorldOrgX(T.x),M.setWorldOrgY(T.y);for(var U=0;U<x.length;U++){var Y=x[U];Y.transform(M)}var H=new Q(L.getMaxX(),L.getMaxY());return M.inverseTransformPoint(H)},v.branchRadialLayout=function(x,F,T,R,L,M){var U=(R-T+1)/2;if(U<0)U+=180;var Y=(U+T)%360,H=Y*D.TWO_PI/360,J=Math.cos(H),K=L*Math.cos(H),O=L*Math.sin(H);x.setCenter(K,O);var P=[];P=P.concat(x.getEdges());var z=P.length;if(F!=null)z--;var AA=0,W=P.length,CA,tA=x.getEdgesBetween(F);while(tA.length>1){var lA=tA[0];tA.splice(0,1);var gA=P.indexOf(lA);if(gA>=0)P.splice(gA,1);W--,z--}if(F!=null)CA=(P.indexOf(tA[0])+1)%W;else CA=0;var aA=Math.abs(R-T)/z;for(var NA=CA;AA!=z;NA=++NA%W){var DA=P[NA].getOtherEnd(x);if(DA==F)continue;var KA=(T+AA*aA)%360,TA=(KA+aA)%360;v.branchRadialLayout(DA,x,KA,TA,L+M,M),AA++}},v.maxDiagonalInTree=function(x){var F=f.MIN_VALUE;for(var T=0;T<x.length;T++){var R=x[T],L=R.getDiagonal();if(L>F)F=L}return F},v.prototype.calcRepulsionRange=function(){return 2*(this.level+1)*this.idealEdgeLength},v.prototype.groupZeroDegreeMembers=function(){var x=this,F={};this.memberGroups={},this.idToDummyNode={};var T=[],R=this.graphManager.getAllNodes();for(var L=0;L<R.length;L++){var M=R[L],U=M.getParent();if(this.getNodeDegreeWithChildren(M)===0&&(U.id==null||!this.getToBeTiled(U)))T.push(M)}for(var L=0;L<T.length;L++){var M=T[L],Y=M.getParent().id;if(typeof F[Y]>"u")F[Y]=[];F[Y]=F[Y].concat(M)}Object.keys(F).forEach(function(H){if(F[H].length>1){var J="DummyCompound_"+H;x.memberGroups[J]=F[H];var K=F[H][0].getParent(),O=new g(x.graphManager);O.id=J,O.paddingLeft=K.paddingLeft||0,O.paddingRight=K.paddingRight||0,O.paddingBottom=K.paddingBottom||0,O.paddingTop=K.paddingTop||0,x.idToDummyNode[J]=O;var P=x.getGraphManager().add(x.newGraph(),O),z=K.getChild();z.add(O);for(var AA=0;AA<F[H].length;AA++){var W=F[H][AA];z.remove(W),P.add(W)}}})},v.prototype.clearCompounds=function(){var x={},F={};this.performDFSOnCompounds();for(var T=0;T<this.compoundOrder.length;T++)F[this.compoundOrder[T].id]=this.compoundOrder[T],x[this.compoundOrder[T].id]=[].concat(this.compoundOrder[T].getChild().getNodes()),this.graphManager.remove(this.compoundOrder[T].getChild()),this.compoundOrder[T].child=null;this.graphManager.resetAllNodes(),this.tileCompoundMembers(x,F)},v.prototype.clearZeroDegreeMembers=function(){var x=this,F=this.tiledZeroDegreePack=[];Object.keys(this.memberGroups).forEach(function(T){var R=x.idToDummyNode[T];if(F[T]=x.tileNodes(x.memberGroups[T],R.paddingLeft+R.paddingRight),R.rect.width=F[T].width,R.rect.height=F[T].height,R.setCenter(F[T].centerX,F[T].centerY),R.labelMarginLeft=0,R.labelMarginTop=0,B.NODE_DIMENSIONS_INCLUDE_LABELS){var L=R.rect.width,M=R.rect.height;if(R.labelWidth){if(R.labelPosHorizontal=="left")R.rect.x-=R.labelWidth,R.setWidth(L+R.labelWidth),R.labelMarginLeft=R.labelWidth;else if(R.labelPosHorizontal=="center"&&R.labelWidth>L)R.rect.x-=(R.labelWidth-L)/2,R.setWidth(R.labelWidth),R.labelMarginLeft=(R.labelWidth-L)/2;else if(R.labelPosHorizontal=="right")R.setWidth(L+R.labelWidth)}if(R.labelHeight){if(R.labelPosVertical=="top")R.rect.y-=R.labelHeight,R.setHeight(M+R.labelHeight),R.labelMarginTop=R.labelHeight;else if(R.labelPosVertical=="center"&&R.labelHeight>M)R.rect.y-=(R.labelHeight-M)/2,R.setHeight(R.labelHeight),R.labelMarginTop=(R.labelHeight-M)/2;else if(R.labelPosVertical=="bottom")R.setHeight(M+R.labelHeight)}}})},v.prototype.repopulateCompounds=function(){for(var x=this.compoundOrder.length-1;x>=0;x--){var F=this.compoundOrder[x],{id:T,paddingLeft:R,paddingTop:L,labelMarginLeft:M,labelMarginTop:U}=F;this.adjustLocations(this.tiledMemberPack[T],F.rect.x,F.rect.y,R,L,M,U)}},v.prototype.repopulateZeroDegreeMembers=function(){var x=this,F=this.tiledZeroDegreePack;Object.keys(F).forEach(function(T){var R=x.idToDummyNode[T],{paddingLeft:L,paddingTop:M,labelMarginLeft:U,labelMarginTop:Y}=R;x.adjustLocations(F[T],R.rect.x,R.rect.y,L,M,U,Y)})},v.prototype.getToBeTiled=function(x){var F=x.id;if(this.toBeTiled[F]!=null)return this.toBeTiled[F];var T=x.getChild();if(T==null)return this.toBeTiled[F]=!1,!1;var R=T.getNodes();for(var L=0;L<R.length;L++){var M=R[L];if(this.getNodeDegree(M)>0)return this.toBeTiled[F]=!1,!1;if(M.getChild()==null){this.toBeTiled[M.id]=!1;continue}if(!this.getToBeTiled(M))return this.toBeTiled[F]=!1,!1}return this.toBeTiled[F]=!0,!0},v.prototype.getNodeDegree=function(x){var F=x.id,T=x.getEdges(),R=0;for(var L=0;L<T.length;L++){var M=T[L];if(M.getSource().id!==M.getTarget().id)R=R+1}return R},v.prototype.getNodeDegreeWithChildren=function(x){var F=this.getNodeDegree(x);if(x.getChild()==null)return F;var T=x.getChild().getNodes();for(var R=0;R<T.length;R++){var L=T[R];F+=this.getNodeDegreeWithChildren(L)}return F},v.prototype.performDFSOnCompounds=function(){this.compoundOrder=[],this.fillCompexOrderByDFS(this.graphManager.getRoot().getNodes())},v.prototype.fillCompexOrderByDFS=function(x){for(var F=0;F<x.length;F++){var T=x[F];if(T.getChild()!=null)this.fillCompexOrderByDFS(T.getChild().getNodes());if(this.getToBeTiled(T))this.compoundOrder.push(T)}},v.prototype.adjustLocations=function(x,F,T,R,L,M,U){F+=R+M,T+=L+U;var Y=F;for(var H=0;H<x.rows.length;H++){var J=x.rows[H];F=Y;var K=0;for(var O=0;O<J.length;O++){var P=J[O];if(P.rect.x=F,P.rect.y=T,F+=P.rect.width+x.horizontalPadding,P.rect.height>K)K=P.rect.height}T+=K+x.verticalPadding}},v.prototype.tileCompoundMembers=function(x,F){var T=this;this.tiledMemberPack=[],Object.keys(x).forEach(function(R){var L=F[R];if(T.tiledMemberPack[R]=T.tileNodes(x[R],L.paddingLeft+L.paddingRight),L.rect.width=T.tiledMemberPack[R].width,L.rect.height=T.tiledMemberPack[R].height,L.setCenter(T.tiledMemberPack[R].centerX,T.tiledMemberPack[R].centerY),L.labelMarginLeft=0,L.labelMarginTop=0,B.NODE_DIMENSIONS_INCLUDE_LABELS){var M=L.rect.width,U=L.rect.height;if(L.labelWidth){if(L.labelPosHorizontal=="left")L.rect.x-=L.labelWidth,L.setWidth(M+L.labelWidth),L.labelMarginLeft=L.labelWidth;else if(L.labelPosHorizontal=="center"&&L.labelWidth>M)L.rect.x-=(L.labelWidth-M)/2,L.setWidth(L.labelWidth),L.labelMarginLeft=(L.labelWidth-M)/2;else if(L.labelPosHorizontal=="right")L.setWidth(M+L.labelWidth)}if(L.labelHeight){if(L.labelPosVertical=="top")L.rect.y-=L.labelHeight,L.setHeight(U+L.labelHeight),L.labelMarginTop=L.labelHeight;else if(L.labelPosVertical=="center"&&L.labelHeight>U)L.rect.y-=(L.labelHeight-U)/2,L.setHeight(L.labelHeight),L.labelMarginTop=(L.labelHeight-U)/2;else if(L.labelPosVertical=="bottom")L.setHeight(U+L.labelHeight)}}})},v.prototype.tileNodes=function(x,F){var T=this.tileNodesByFavoringDim(x,F,!0),R=this.tileNodesByFavoringDim(x,F,!1),L=this.getOrgRatio(T),M=this.getOrgRatio(R),U;if(M<L)U=R;else U=T;return U},v.prototype.getOrgRatio=function(x){var{width:F,height:T}=x,R=F/T;if(R<1)R=1/R;return R},v.prototype.calcIdealRowWidth=function(x,F){var{TILING_PADDING_VERTICAL:T,TILING_PADDING_HORIZONTAL:R}=B,L=x.length,M=0,U=0,Y=0;x.forEach(function(AA){if(M+=AA.getWidth(),U+=AA.getHeight(),AA.getWidth()>Y)Y=AA.getWidth()});var H=M/L,J=U/L,K=Math.pow(T-R,2)+4*(H+R)*(J+T)*L,O=(R-T+Math.sqrt(K))/(2*(H+R)),P;if(F){if(P=Math.ceil(O),P==O)P++}else P=Math.floor(O);var z=P*(H+R)-R;if(Y>z)z=Y;return z+=R*2,z},v.prototype.tileNodesByFavoringDim=function(x,F,T){var{TILING_PADDING_VERTICAL:R,TILING_PADDING_HORIZONTAL:L,TILING_COMPARE_BY:M}=B,U={rows:[],rowWidth:[],rowHeight:[],width:0,height:F,verticalPadding:R,horizontalPadding:L,centerX:0,centerY:0};if(M)U.idealRowWidth=this.calcIdealRowWidth(x,T);var Y=function(W){return W.rect.width*W.rect.height},H=function(W,CA){return Y(CA)-Y(W)};x.sort(function(AA,W){var CA=H;if(U.idealRowWidth)return CA=M,CA(AA.id,W.id);return CA(AA,W)});var J=0,K=0;for(var O=0;O<x.length;O++){var P=x[O];J+=P.getCenterX(),K+=P.getCenterY()}U.centerX=J/x.length,U.centerY=K/x.length;for(var O=0;O<x.length;O++){var P=x[O];if(U.rows.length==0)this.insertNodeToRow(U,P,0,F);else if(this.canAddHorizontal(U,P.rect.width,P.rect.height)){var z=U.rows.length-1;if(!U.idealRowWidth)z=this.getShortestRowIndex(U);this.insertNodeToRow(U,P,z,F)}else this.insertNodeToRow(U,P,U.rows.length,F);this.shiftToLastRow(U)}return U},v.prototype.insertNodeToRow=function(x,F,T,R){var L=R;if(T==x.rows.length){var M=[];x.rows.push(M),x.rowWidth.push(L),x.rowHeight.push(0)}var U=x.rowWidth[T]+F.rect.width;if(x.rows[T].length>0)U+=x.horizontalPadding;if(x.rowWidth[T]=U,x.width<U)x.width=U;var Y=F.rect.height;if(T>0)Y+=x.verticalPadding;var H=0;if(Y>x.rowHeight[T])H=x.rowHeight[T],x.rowHeight[T]=Y,H=x.rowHeight[T]-H;x.height+=H,x.rows[T].push(F)},v.prototype.getShortestRowIndex=function(x){var F=-1,T=Number.MAX_VALUE;for(var R=0;R<x.rows.length;R++)if(x.rowWidth[R]<T)F=R,T=x.rowWidth[R];return F},v.prototype.getLongestRowIndex=function(x){var F=-1,T=Number.MIN_VALUE;for(var R=0;R<x.rows.length;R++)if(x.rowWidth[R]>T)F=R,T=x.rowWidth[R];return F},v.prototype.canAddHorizontal=function(x,F,T){if(x.idealRowWidth){var R=x.rows.length-1,L=x.rowWidth[R];return L+F+x.horizontalPadding<=x.idealRowWidth}var M=this.getShortestRowIndex(x);if(M<0)return!0;var U=x.rowWidth[M];if(U+x.horizontalPadding+F<=x.width)return!0;var Y=0;if(x.rowHeight[M]<T){if(M>0)Y=T+x.verticalPadding-x.rowHeight[M]}var H;if(x.width-U>=F+x.horizontalPadding)H=(x.height+Y)/(U+F+x.horizontalPadding);else H=(x.height+Y)/x.width;Y=T+x.verticalPadding;var J;if(x.width<F)J=(x.height+Y)/F;else J=(x.height+Y)/x.width;if(J<1)J=1/J;if(H<1)H=1/H;return H<J},v.prototype.shiftToLastRow=function(x){var F=this.getLongestRowIndex(x),T=x.rowWidth.length-1,R=x.rows[F],L=R[R.length-1],M=L.width+x.horizontalPadding;if(x.width-x.rowWidth[T]>M&&F!=T){R.splice(-1,1),x.rows[T].push(L),x.rowWidth[F]=x.rowWidth[F]-M,x.rowWidth[T]=x.rowWidth[T]+M,x.width=x.rowWidth[instance.getLongestRowIndex(x)];var U=Number.MIN_VALUE;for(var Y=0;Y<R.length;Y++)if(R[Y].height>U)U=R[Y].height;if(F>0)U+=x.verticalPadding;var H=x.rowHeight[F]+x.rowHeight[T];if(x.rowHeight[F]=U,x.rowHeight[T]<L.height+x.verticalPadding)x.rowHeight[T]=L.height+x.verticalPadding;var J=x.rowHeight[F]+x.rowHeight[T];x.height+=J-H,this.shiftToLastRow(x)}},v.prototype.tilingPreLayout=function(){if(B.TILE)this.groupZeroDegreeMembers(),this.clearCompounds(),this.clearZeroDegreeMembers()},v.prototype.tilingPostLayout=function(){if(B.TILE)this.repopulateZeroDegreeMembers(),this.repopulateCompounds()},v.prototype.reduceTrees=function(){var x=[],F=!0,T;while(F){var R=this.graphManager.getAllNodes(),L=[];F=!1;for(var M=0;M<R.length;M++)if(T=R[M],T.getEdges().length==1&&!T.getEdges()[0].isInterGraph&&T.getChild()==null){if(B.PURE_INCREMENTAL){var U=T.getEdges()[0].getOtherEnd(T),Y=new p(T.getCenterX()-U.getCenterX(),T.getCenterY()-U.getCenterY());L.push([T,T.getEdges()[0],T.getOwner(),Y])}else L.push([T,T.getEdges()[0],T.getOwner()]);F=!0}if(F==!0){var H=[];for(var J=0;J<L.length;J++)if(L[J][0].getEdges().length==1)H.push(L[J]),L[J][0].getOwner().remove(L[J][0]);x.push(H),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()}}this.prunedNodesAll=x},v.prototype.growTree=function(x){var F=x.length,T=x[F-1],R;for(var L=0;L<T.length;L++)R=T[L],this.findPlaceforPrunedNode(R),R[2].add(R[0]),R[2].add(R[1],R[1].source,R[1].target);x.splice(x.length-1,1),this.graphManager.resetAllNodes(),this.graphManager.resetAllEdges()},v.prototype.findPlaceforPrunedNode=function(x){var F,T,R=x[0];if(R==x[1].source)T=x[1].target;else T=x[1].source;if(B.PURE_INCREMENTAL)R.setCenter(T.getCenterX()+x[3].getWidth(),T.getCenterY()+x[3].getHeight());else{var L=T.startX,M=T.finishX,U=T.startY,Y=T.finishY,H=0,J=0,K=0,O=0,P=[H,K,J,O];if(U>0)for(var z=L;z<=M;z++)P[0]+=this.grid[z][U-1].length+this.grid[z][U].length-1;if(M<this.grid.length-1)for(var z=U;z<=Y;z++)P[1]+=this.grid[M+1][z].length+this.grid[M][z].length-1;if(Y<this.grid[0].length-1)for(var z=L;z<=M;z++)P[2]+=this.grid[z][Y+1].length+this.grid[z][Y].length-1;if(L>0)for(var z=U;z<=Y;z++)P[3]+=this.grid[L-1][z].length+this.grid[L][z].length-1;var AA=f.MAX_VALUE,W,CA;for(var tA=0;tA<P.length;tA++)if(P[tA]<AA)AA=P[tA],W=1,CA=tA;else if(P[tA]==AA)W++;if(W==3&&AA==0){if(P[0]==0&&P[1]==0&&P[2]==0)F=1;else if(P[0]==0&&P[1]==0&&P[3]==0)F=0;else if(P[0]==0&&P[2]==0&&P[3]==0)F=3;else if(P[1]==0&&P[2]==0&&P[3]==0)F=2}else if(W==2&&AA==0){var lA=Math.floor(Math.random()*2);if(P[0]==0&&P[1]==0)if(lA==0)F=0;else F=1;else if(P[0]==0&&P[2]==0)if(lA==0)F=0;else F=2;else if(P[0]==0&&P[3]==0)if(lA==0)F=0;else F=3;else if(P[1]==0&&P[2]==0)if(lA==0)F=1;else F=2;else if(P[1]==0&&P[3]==0)if(lA==0)F=1;else F=3;else if(lA==0)F=2;else F=3}else if(W==4&&AA==0){var lA=Math.floor(Math.random()*4);F=lA}else F=CA;if(F==0)R.setCenter(T.getCenterX(),T.getCenterY()-T.getHeight()/2-d.DEFAULT_EDGE_LENGTH-R.getHeight()/2);else if(F==1)R.setCenter(T.getCenterX()+T.getWidth()/2+d.DEFAULT_EDGE_LENGTH+R.getWidth()/2,T.getCenterY());else if(F==2)R.setCenter(T.getCenterX(),T.getCenterY()+T.getHeight()/2+d.DEFAULT_EDGE_LENGTH+R.getHeight()/2);else R.setCenter(T.getCenterX()-T.getWidth()/2-d.DEFAULT_EDGE_LENGTH-R.getWidth()/2,T.getCenterY())}},u.exports=v},991:(u,a,n)=>{var o=n(551).FDLayoutNode,s=n(551).IMath;function l(C,B,E,d){o.call(this,C,B,E,d)}l.prototype=Object.create(o.prototype);for(var g in o)l[g]=o[g];l.prototype.calculateDisplacement=function(){var C=this.graphManager.getLayout();if(this.getChild()!=null&&this.fixedNodeWeight)this.displacementX+=C.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.fixedNodeWeight,this.displacementY+=C.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.fixedNodeWeight;else this.displacementX+=C.coolingFactor*(this.springForceX+this.repulsionForceX+this.gravitationForceX)/this.noOfChildren,this.displacementY+=C.coolingFactor*(this.springForceY+this.repulsionForceY+this.gravitationForceY)/this.noOfChildren;if(Math.abs(this.displacementX)>C.coolingFactor*C.maxNodeDisplacement)this.displacementX=C.coolingFactor*C.maxNodeDisplacement*s.sign(this.displacementX);if(Math.abs(this.displacementY)>C.coolingFactor*C.maxNodeDisplacement)this.displacementY=C.coolingFactor*C.maxNodeDisplacement*s.sign(this.displacementY);if(this.child&&this.child.getNodes().length>0)this.propogateDisplacementToChildren(this.displacementX,this.displacementY)},l.prototype.propogateDisplacementToChildren=function(C,B){var E=this.getChild().getNodes(),d;for(var I=0;I<E.length;I++)if(d=E[I],d.getChild()==null)d.displacementX+=C,d.displacementY+=B;else d.propogateDisplacementToChildren(C,B)},l.prototype.move=function(){var C=this.graphManager.getLayout();if(this.child==null||this.child.getNodes().length==0)this.moveBy(this.displacementX,this.displacementY),C.totalDisplacement+=Math.abs(this.displacementX)+Math.abs(this.displacementY);this.springForceX=0,this.springForceY=0,this.repulsionForceX=0,this.repulsionForceY=0,this.gravitationForceX=0,this.gravitationForceY=0,this.displacementX=0,this.displacementY=0},l.prototype.setPred1=function(C){this.pred1=C},l.prototype.getPred1=function(){return pred1},l.prototype.getPred2=function(){return pred2},l.prototype.setNext=function(C){this.next=C},l.prototype.getNext=function(){return next},l.prototype.setProcessed=function(C){this.processed=C},l.prototype.isProcessed=function(){return processed},u.exports=l},902:(u,a,n)=>{function o(E){if(Array.isArray(E)){for(var d=0,I=Array(E.length);d<E.length;d++)I[d]=E[d];return I}else return Array.from(E)}var s=n(806),l=n(551).LinkedList,g=n(551).Matrix,C=n(551).SVD;function B(){}B.handleConstraints=function(E){var d={};d.fixedNodeConstraint=E.constraints.fixedNodeConstraint,d.alignmentConstraint=E.constraints.alignmentConstraint,d.relativePlacementConstraint=E.constraints.relativePlacementConstraint;var I=new Map,h=new Map,Q=[],p=[],m=E.getAllNodes(),f=0;for(var D=0;D<m.length;D++){var w=m[D];if(w.getChild()==null)h.set(w.id,f++),Q.push(w.getCenterX()),p.push(w.getCenterY()),I.set(w.id,w)}if(d.relativePlacementConstraint)d.relativePlacementConstraint.forEach(function(q){if(!q.gap&&q.gap!=0)if(q.left)q.gap=s.DEFAULT_EDGE_LENGTH+I.get(q.left).getWidth()/2+I.get(q.right).getWidth()/2;else q.gap=s.DEFAULT_EDGE_LENGTH+I.get(q.top).getHeight()/2+I.get(q.bottom).getHeight()/2});var b=function(Z,fA){return{x:Z.x-fA.x,y:Z.y-fA.y}},k=function(Z){var fA=0,j=0;return Z.forEach(function(mA){fA+=Q[h.get(mA)],j+=p[h.get(mA)]}),{x:fA/Z.size,y:j/Z.size}},v=function(Z,fA,j,mA,rA){function JA(oe,kA){var Pe=new Set(oe),MA=!0,ke=!1,We=void 0;try{for(var ue=kA[Symbol.iterator](),Me;!(MA=(Me=ue.next()).done);MA=!0){var je=Me.value;Pe.add(je)}}catch(Ge){ke=!0,We=Ge}finally{try{if(!MA&&ue.return)ue.return()}finally{if(ke)throw We}}return Pe}var _A=new Map;Z.forEach(function(oe,kA){_A.set(kA,0)}),Z.forEach(function(oe,kA){oe.forEach(function(Pe){_A.set(Pe.id,_A.get(Pe.id)+1)})});var ZA=new Map,WA=new Map,te=new l;if(_A.forEach(function(oe,kA){if(oe==0){if(te.push(kA),!j)if(fA=="horizontal")ZA.set(kA,h.has(kA)?Q[h.get(kA)]:mA.get(kA));else ZA.set(kA,h.has(kA)?p[h.get(kA)]:mA.get(kA))}else ZA.set(kA,Number.NEGATIVE_INFINITY);if(j)WA.set(kA,new Set([kA]))}),j)rA.forEach(function(oe){var kA=[];if(oe.forEach(function(ke){if(j.has(ke))kA.push(ke)}),kA.length>0){var Pe=0;kA.forEach(function(ke){if(fA=="horizontal")ZA.set(ke,h.has(ke)?Q[h.get(ke)]:mA.get(ke)),Pe+=ZA.get(ke);else ZA.set(ke,h.has(ke)?p[h.get(ke)]:mA.get(ke)),Pe+=ZA.get(ke)}),Pe=Pe/kA.length,oe.forEach(function(ke){if(!j.has(ke))ZA.set(ke,Pe)})}else{var MA=0;oe.forEach(function(ke){if(fA=="horizontal")MA+=h.has(ke)?Q[h.get(ke)]:mA.get(ke);else MA+=h.has(ke)?p[h.get(ke)]:mA.get(ke)}),MA=MA/oe.length,oe.forEach(function(ke){ZA.set(ke,MA)})}});var zA=function(){var kA=te.shift(),Pe=Z.get(kA);Pe.forEach(function(MA){if(ZA.get(MA.id)<ZA.get(kA)+MA.gap)if(j&&j.has(MA.id)){var ke=void 0;if(fA=="horizontal")ke=h.has(MA.id)?Q[h.get(MA.id)]:mA.get(MA.id);else ke=h.has(MA.id)?p[h.get(MA.id)]:mA.get(MA.id);if(ZA.set(MA.id,ke),ke<ZA.get(kA)+MA.gap){var We=ZA.get(kA)+MA.gap-ke;WA.get(kA).forEach(function(ue){ZA.set(ue,ZA.get(ue)-We)})}}else ZA.set(MA.id,ZA.get(kA)+MA.gap);if(_A.set(MA.id,_A.get(MA.id)-1),_A.get(MA.id)==0)te.push(MA.id);if(j)WA.set(MA.id,JA(WA.get(kA),WA.get(MA.id)))})};while(te.length!=0)zA();if(j){var Ae=new Set;Z.forEach(function(oe,kA){if(oe.length==0)Ae.add(kA)});var $A=[];WA.forEach(function(oe,kA){if(Ae.has(kA)){var Pe=!1,MA=!0,ke=!1,We=void 0;try{for(var ue=oe[Symbol.iterator](),Me;!(MA=(Me=ue.next()).done);MA=!0){var je=Me.value;if(j.has(je))Pe=!0}}catch(Re){ke=!0,We=Re}finally{try{if(!MA&&ue.return)ue.return()}finally{if(ke)throw We}}if(!Pe){var Ge=!1,wA=void 0;if($A.forEach(function(Re,He){if(Re.has([].concat(o(oe))[0]))Ge=!0,wA=He}),!Ge)$A.push(new Set(oe));else oe.forEach(function(Re){$A[wA].add(Re)})}}}),$A.forEach(function(oe,kA){var{POSITIVE_INFINITY:Pe,POSITIVE_INFINITY:MA,NEGATIVE_INFINITY:ke,NEGATIVE_INFINITY:We}=Number,ue=!0,Me=!1,je=void 0;try{for(var Ge=oe[Symbol.iterator](),wA;!(ue=(wA=Ge.next()).done);ue=!0){var Re=wA.value,He=void 0;if(fA=="horizontal")He=h.has(Re)?Q[h.get(Re)]:mA.get(Re);else He=h.has(Re)?p[h.get(Re)]:mA.get(Re);var de=ZA.get(Re);if(He<Pe)Pe=He;if(He>ke)ke=He;if(de<MA)MA=de;if(de>We)We=de}}catch(Cr){Me=!0,je=Cr}finally{try{if(!ue&&Ge.return)Ge.return()}finally{if(Me)throw je}}var RA=(Pe+ke)/2-(MA+We)/2,ce=!0,me=!1,Le=void 0;try{for(var Lt=oe[Symbol.iterator](),Je;!(ce=(Je=Lt.next()).done);ce=!0){var kt=Je.value;ZA.set(kt,ZA.get(kt)+RA)}}catch(Cr){me=!0,Le=Cr}finally{try{if(!ce&&Lt.return)Lt.return()}finally{if(me)throw Le}}})}return ZA},S=function(Z){var fA=0,j=0,mA=0,rA=0;if(Z.forEach(function(WA){if(WA.left)Q[h.get(WA.left)]-Q[h.get(WA.right)]>=0?fA++:j++;else p[h.get(WA.top)]-p[h.get(WA.bottom)]>=0?mA++:rA++}),fA>j&&mA>rA)for(var JA=0;JA<h.size;JA++)Q[JA]=-1*Q[JA],p[JA]=-1*p[JA];else if(fA>j)for(var _A=0;_A<h.size;_A++)Q[_A]=-1*Q[_A];else if(mA>rA)for(var ZA=0;ZA<h.size;ZA++)p[ZA]=-1*p[ZA]},x=function(Z){var fA=[],j=new l,mA=new Set,rA=0;return Z.forEach(function(JA,_A){if(!mA.has(_A)){fA[rA]=[];var ZA=_A;j.push(ZA),mA.add(ZA),fA[rA].push(ZA);while(j.length!=0){ZA=j.shift();var WA=Z.get(ZA);WA.forEach(function(te){if(!mA.has(te.id))j.push(te.id),mA.add(te.id),fA[rA].push(te.id)})}rA++}}),fA},F=function(Z){var fA=new Map;return Z.forEach(function(j,mA){fA.set(mA,[])}),Z.forEach(function(j,mA){j.forEach(function(rA){fA.get(mA).push(rA),fA.get(rA.id).push({id:mA,gap:rA.gap,direction:rA.direction})})}),fA},T=function(Z){var fA=new Map;return Z.forEach(function(j,mA){fA.set(mA,[])}),Z.forEach(function(j,mA){j.forEach(function(rA){fA.get(rA.id).push({id:mA,gap:rA.gap,direction:rA.direction})})}),fA},R=[],L=[],M=!1,U=!1,Y=new Set,H=new Map,J=new Map,K=[];if(d.fixedNodeConstraint)d.fixedNodeConstraint.forEach(function(q){Y.add(q.nodeId)});if(d.relativePlacementConstraint)d.relativePlacementConstraint.forEach(function(q){if(q.left){if(H.has(q.left))H.get(q.left).push({id:q.right,gap:q.gap,direction:"horizontal"});else H.set(q.left,[{id:q.right,gap:q.gap,direction:"horizontal"}]);if(!H.has(q.right))H.set(q.right,[])}else{if(H.has(q.top))H.get(q.top).push({id:q.bottom,gap:q.gap,direction:"vertical"});else H.set(q.top,[{id:q.bottom,gap:q.gap,direction:"vertical"}]);if(!H.has(q.bottom))H.set(q.bottom,[])}}),J=F(H),K=x(J);if(s.TRANSFORM_ON_CONSTRAINT_HANDLING){if(d.fixedNodeConstraint&&d.fixedNodeConstraint.length>1)d.fixedNodeConstraint.forEach(function(q,Z){R[Z]=[q.position.x,q.position.y],L[Z]=[Q[h.get(q.nodeId)],p[h.get(q.nodeId)]]}),M=!0;else if(d.alignmentConstraint)(function(){var q=0;if(d.alignmentConstraint.vertical){var Z=d.alignmentConstraint.vertical,fA=function(ZA){var WA=new Set;Z[ZA].forEach(function(Ae){WA.add(Ae)});var te=new Set([].concat(o(WA)).filter(function(Ae){return Y.has(Ae)})),zA=void 0;if(te.size>0)zA=Q[h.get(te.values().next().value)];else zA=k(WA).x;Z[ZA].forEach(function(Ae){R[q]=[zA,p[h.get(Ae)]],L[q]=[Q[h.get(Ae)],p[h.get(Ae)]],q++})};for(var j=0;j<Z.length;j++)fA(j);M=!0}if(d.alignmentConstraint.horizontal){var mA=d.alignmentConstraint.horizontal,rA=function(ZA){var WA=new Set;mA[ZA].forEach(function(Ae){WA.add(Ae)});var te=new Set([].concat(o(WA)).filter(function(Ae){return Y.has(Ae)})),zA=void 0;if(te.size>0)zA=Q[h.get(te.values().next().value)];else zA=k(WA).y;mA[ZA].forEach(function(Ae){R[q]=[Q[h.get(Ae)],zA],L[q]=[Q[h.get(Ae)],p[h.get(Ae)]],q++})};for(var JA=0;JA<mA.length;JA++)rA(JA);M=!0}if(d.relativePlacementConstraint)U=!0})();else if(d.relativePlacementConstraint){var O=0,P=0;for(var z=0;z<K.length;z++)if(K[z].length>O)O=K[z].length,P=z;if(O<J.size/2)S(d.relativePlacementConstraint),M=!1,U=!1;else{var AA=new Map,W=new Map,CA=[];K[P].forEach(function(q){H.get(q).forEach(function(Z){if(Z.direction=="horizontal"){if(AA.has(q))AA.get(q).push(Z);else AA.set(q,[Z]);if(!AA.has(Z.id))AA.set(Z.id,[]);CA.push({left:q,right:Z.id})}else{if(W.has(q))W.get(q).push(Z);else W.set(q,[Z]);if(!W.has(Z.id))W.set(Z.id,[]);CA.push({top:q,bottom:Z.id})}})}),S(CA),U=!1;var tA=v(AA,"horizontal"),lA=v(W,"vertical");K[P].forEach(function(q,Z){if(L[Z]=[Q[h.get(q)],p[h.get(q)]],R[Z]=[],tA.has(q))R[Z][0]=tA.get(q);else R[Z][0]=Q[h.get(q)];if(lA.has(q))R[Z][1]=lA.get(q);else R[Z][1]=p[h.get(q)]}),M=!0}}if(M){var gA=void 0,aA=g.transpose(R),NA=g.transpose(L);for(var DA=0;DA<aA.length;DA++)aA[DA]=g.multGamma(aA[DA]),NA[DA]=g.multGamma(NA[DA]);var KA=g.multMat(aA,g.transpose(NA)),TA=C.svd(KA);gA=g.multMat(TA.V,g.transpose(TA.U));for(var qA=0;qA<h.size;qA++){var IA=[Q[qA],p[qA]],bA=[gA[0][0],gA[1][0]],SA=[gA[0][1],gA[1][1]];Q[qA]=g.dotProduct(IA,bA),p[qA]=g.dotProduct(IA,SA)}if(U)S(d.relativePlacementConstraint)}}if(s.ENFORCE_CONSTRAINTS){if(d.fixedNodeConstraint&&d.fixedNodeConstraint.length>0){var EA={x:0,y:0};d.fixedNodeConstraint.forEach(function(q,Z){var fA={x:Q[h.get(q.nodeId)],y:p[h.get(q.nodeId)]},j=q.position,mA=b(j,fA);EA.x+=mA.x,EA.y+=mA.y}),EA.x/=d.fixedNodeConstraint.length,EA.y/=d.fixedNodeConstraint.length,Q.forEach(function(q,Z){Q[Z]+=EA.x}),p.forEach(function(q,Z){p[Z]+=EA.y}),d.fixedNodeConstraint.forEach(function(q){Q[h.get(q.nodeId)]=q.position.x,p[h.get(q.nodeId)]=q.position.y})}if(d.alignmentConstraint){if(d.alignmentConstraint.vertical){var nA=d.alignmentConstraint.vertical,eA=function(Z){var fA=new Set;nA[Z].forEach(function(rA){fA.add(rA)});var j=new Set([].concat(o(fA)).filter(function(rA){return Y.has(rA)})),mA=void 0;if(j.size>0)mA=Q[h.get(j.values().next().value)];else mA=k(fA).x;fA.forEach(function(rA){if(!Y.has(rA))Q[h.get(rA)]=mA})};for(var BA=0;BA<nA.length;BA++)eA(BA)}if(d.alignmentConstraint.horizontal){var yA=d.alignmentConstraint.horizontal,vA=function(Z){var fA=new Set;yA[Z].forEach(function(rA){fA.add(rA)});var j=new Set([].concat(o(fA)).filter(function(rA){return Y.has(rA)})),mA=void 0;if(j.size>0)mA=p[h.get(j.values().next().value)];else mA=k(fA).y;fA.forEach(function(rA){if(!Y.has(rA))p[h.get(rA)]=mA})};for(var FA=0;FA<yA.length;FA++)vA(FA)}}if(d.relativePlacementConstraint)(function(){var q=new Map,Z=new Map,fA=new Map,j=new Map,mA=new Map,rA=new Map,JA=new Set,_A=new Set;if(Y.forEach(function(sr){JA.add(sr),_A.add(sr)}),d.alignmentConstraint){if(d.alignmentConstraint.vertical){var ZA=d.alignmentConstraint.vertical,WA=function(et){fA.set("dummy"+et,[]),ZA[et].forEach(function(Ye){if(q.set(Ye,"dummy"+et),fA.get("dummy"+et).push(Ye),Y.has(Ye))JA.add("dummy"+et)}),mA.set("dummy"+et,Q[h.get(ZA[et][0])])};for(var te=0;te<ZA.length;te++)WA(te)}if(d.alignmentConstraint.horizontal){var zA=d.alignmentConstraint.horizontal,Ae=function(et){j.set("dummy"+et,[]),zA[et].forEach(function(Ye){if(Z.set(Ye,"dummy"+et),j.get("dummy"+et).push(Ye),Y.has(Ye))_A.add("dummy"+et)}),rA.set("dummy"+et,p[h.get(zA[et][0])])};for(var $A=0;$A<zA.length;$A++)Ae($A)}}var oe=new Map,kA=new Map,Pe=function(et){H.get(et).forEach(function(Ye){var Ct=void 0,lt=void 0;if(Ye.direction=="horizontal"){if(Ct=q.get(et)?q.get(et):et,q.get(Ye.id))lt={id:q.get(Ye.id),gap:Ye.gap,direction:Ye.direction};else lt=Ye;if(oe.has(Ct))oe.get(Ct).push(lt);else oe.set(Ct,[lt]);if(!oe.has(lt.id))oe.set(lt.id,[])}else{if(Ct=Z.get(et)?Z.get(et):et,Z.get(Ye.id))lt={id:Z.get(Ye.id),gap:Ye.gap,direction:Ye.direction};else lt=Ye;if(kA.has(Ct))kA.get(Ct).push(lt);else kA.set(Ct,[lt]);if(!kA.has(lt.id))kA.set(lt.id,[])}})},MA=!0,ke=!1,We=void 0;try{for(var ue=H.keys()[Symbol.iterator](),Me;!(MA=(Me=ue.next()).done);MA=!0){var je=Me.value;Pe(je)}}catch(sr){ke=!0,We=sr}finally{try{if(!MA&&ue.return)ue.return()}finally{if(ke)throw We}}var Ge=F(oe),wA=F(kA),Re=x(Ge),He=x(wA),de=T(oe),RA=T(kA),ce=[],me=[];Re.forEach(function(sr,et){ce[et]=[],sr.forEach(function(Ye){if(de.get(Ye).length==0)ce[et].push(Ye)})}),He.forEach(function(sr,et){me[et]=[],sr.forEach(function(Ye){if(RA.get(Ye).length==0)me[et].push(Ye)})});var Le=v(oe,"horizontal",JA,mA,ce),Lt=v(kA,"vertical",_A,rA,me),Je=function(et){if(fA.get(et))fA.get(et).forEach(function(Ye){Q[h.get(Ye)]=Le.get(et)});else Q[h.get(et)]=Le.get(et)},kt=!0,Cr=!1,Pt=void 0;try{for(var dt=Le.keys()[Symbol.iterator](),Yt;!(kt=(Yt=dt.next()).done);kt=!0){var Ce=Yt.value;Je(Ce)}}catch(sr){Cr=!0,Pt=sr}finally{try{if(!kt&&dt.return)dt.return()}finally{if(Cr)throw Pt}}var ye=function(et){if(j.get(et))j.get(et).forEach(function(Ye){p[h.get(Ye)]=Lt.get(et)});else p[h.get(et)]=Lt.get(et)},Ze=!0,Xt=!1,Vt=void 0;try{for(var or=Lt.keys()[Symbol.iterator](),Qi;!(Ze=(Qi=or.next()).done);Ze=!0){var Ce=Qi.value;ye(Ce)}}catch(sr){Xt=!0,Vt=sr}finally{try{if(!Ze&&or.return)or.return()}finally{if(Xt)throw Vt}}})()}for(var HA=0;HA<m.length;HA++){var dA=m[HA];if(dA.getChild()==null)dA.setCenter(Q[h.get(dA.id)],p[h.get(dA.id)])}},u.exports=B},551:(u)=>{u.exports=A}},t={};function r(u){var a=t[u];if(a!==void 0)return a.exports;var n=t[u]={exports:{}};return e[u](n,n.exports,r),n.exports}var i=r(45);return i})()})});var Lne=wu(function(E7,IBA){(function(e,t){if(typeof E7==="object"&&typeof IBA==="object")IBA.exports=t(dBA());else if(typeof define==="function"&&define.amd)define(["cose-base"],t);else if(typeof E7==="object")E7.cytoscapeFcose=t(dBA());else e.cytoscapeFcose=t(e.coseBase)})(E7,function(A){return(()=>{var e={658:(u)=>{u.exports=Object.assign!=null?Object.assign.bind(Object):function(a){for(var n=arguments.length,o=Array(n>1?n-1:0),s=1;s<n;s++)o[s-1]=arguments[s];return o.forEach(function(l){Object.keys(l).forEach(function(g){return a[g]=l[g]})}),a}},548:(u,a,n)=>{var o=function(){function g(C,B){var E=[],d=!0,I=!1,h=void 0;try{for(var Q=C[Symbol.iterator](),p;!(d=(p=Q.next()).done);d=!0)if(E.push(p.value),B&&E.length===B)break}catch(m){I=!0,h=m}finally{try{if(!d&&Q.return)Q.return()}finally{if(I)throw h}}return E}return function(C,B){if(Array.isArray(C))return C;else if(Symbol.iterator in Object(C))return g(C,B);else throw TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=n(140).layoutBase.LinkedList,l={};l.getTopMostNodes=function(g){var C={};for(var B=0;B<g.length;B++)C[g[B].id()]=!0;var E=g.filter(function(d,I){if(typeof d==="number")d=I;var h=d.parent()[0];while(h!=null){if(C[h.id()])return!1;h=h.parent()[0]}return!0});return E},l.connectComponents=function(g,C,B,E){var d=new s,I=new Set,h=[],Q=void 0,p=void 0,m=void 0,f=!1,D=1,w=[],b=[],k=function(){var S=g.collection();b.push(S);var x=B[0],F=g.collection();F.merge(x).merge(x.descendants().intersection(C)),h.push(x),F.forEach(function(L){d.push(L),I.add(L),S.merge(L)});var T=function(){x=d.shift();var M=g.collection();x.neighborhood().nodes().forEach(function(J){if(C.intersection(x.edgesWith(J)).length>0)M.merge(J)});for(var U=0;U<M.length;U++){var Y=M[U];if(Q=B.intersection(Y.union(Y.ancestors())),Q!=null&&!I.has(Q[0])){var H=Q.union(Q.descendants());H.forEach(function(J){if(d.push(J),I.add(J),S.merge(J),B.has(J))h.push(J)})}}};while(d.length!=0)T();if(S.forEach(function(L){C.intersection(L.connectedEdges()).forEach(function(M){if(S.has(M.source())&&S.has(M.target()))S.merge(M)})}),h.length==B.length)f=!0;if(!f||f&&D>1){p=h[0],m=p.connectedEdges().length,h.forEach(function(L){if(L.connectedEdges().length<m)m=L.connectedEdges().length,p=L}),w.push(p.id());var R=g.collection();R.merge(h[0]),h.forEach(function(L){R.merge(L)}),h=[],B=B.difference(R),D++}};do k();while(!f);if(E){if(w.length>0)E.set("dummy"+(E.size+1),w)}return b},l.relocateComponent=function(g,C,B){if(!B.fixedNodeConstraint){var{POSITIVE_INFINITY:E,NEGATIVE_INFINITY:d,POSITIVE_INFINITY:I,NEGATIVE_INFINITY:h}=Number;if(B.quality=="draft"){var Q=!0,p=!1,m=void 0;try{for(var f=C.nodeIndexes[Symbol.iterator](),D;!(Q=(D=f.next()).done);Q=!0){var w=D.value,b=o(w,2),k=b[0],v=b[1],S=B.cy.getElementById(k);if(S){var x=S.boundingBox(),F=C.xCoords[v]-x.w/2,T=C.xCoords[v]+x.w/2,R=C.yCoords[v]-x.h/2,L=C.yCoords[v]+x.h/2;if(F<E)E=F;if(T>d)d=T;if(R<I)I=R;if(L>h)h=L}}}catch(J){p=!0,m=J}finally{try{if(!Q&&f.return)f.return()}finally{if(p)throw m}}var M=g.x-(d+E)/2,U=g.y-(h+I)/2;C.xCoords=C.xCoords.map(function(J){return J+M}),C.yCoords=C.yCoords.map(function(J){return J+U})}else{Object.keys(C).forEach(function(J){var K=C[J],O=K.getRect().x,P=K.getRect().x+K.getRect().width,z=K.getRect().y,AA=K.getRect().y+K.getRect().height;if(O<E)E=O;if(P>d)d=P;if(z<I)I=z;if(AA>h)h=AA});var Y=g.x-(d+E)/2,H=g.y-(h+I)/2;Object.keys(C).forEach(function(J){var K=C[J];K.setCenter(K.getCenterX()+Y,K.getCenterY()+H)})}}},l.calcBoundingBox=function(g,C,B,E){var{MAX_SAFE_INTEGER:d,MIN_SAFE_INTEGER:I,MAX_SAFE_INTEGER:h,MIN_SAFE_INTEGER:Q}=Number,p=void 0,m=void 0,f=void 0,D=void 0,w=g.descendants().not(":parent"),b=w.length;for(var k=0;k<b;k++){var v=w[k];if(p=C[E.get(v.id())]-v.width()/2,m=C[E.get(v.id())]+v.width()/2,f=B[E.get(v.id())]-v.height()/2,D=B[E.get(v.id())]+v.height()/2,d>p)d=p;if(I<m)I=m;if(h>f)h=f;if(Q<D)Q=D}var S={};return S.topLeftX=d,S.topLeftY=h,S.width=I-d,S.height=Q-h,S},l.calcParentsWithoutChildren=function(g,C){var B=g.collection();return C.nodes(":parent").forEach(function(E){var d=!1;if(E.children().forEach(function(I){if(I.css("display")!="none")d=!0}),!d)B.merge(E)}),B},u.exports=l},816:(u,a,n)=>{var o=n(548),s=n(140).CoSELayout,l=n(140).CoSENode,g=n(140).layoutBase.PointD,C=n(140).layoutBase.DimensionD,B=n(140).layoutBase.LayoutConstants,E=n(140).layoutBase.FDLayoutConstants,d=n(140).CoSEConstants,I=function(Q,p){var{cy:m,eles:f}=Q,D=f.nodes(),w=f.edges(),b=void 0,k=void 0,v=void 0,S={};if(Q.randomize)b=p.nodeIndexes,k=p.xCoords,v=p.yCoords;var x=function(J){return typeof J==="function"},F=function(J,K){if(x(J))return J(K);else return J},T=o.calcParentsWithoutChildren(m,f),R=function H(J,K,O,P){var z=K.length;for(var AA=0;AA<z;AA++){var W=K[AA],CA=null;if(W.intersection(T).length==0)CA=W.children();var tA=void 0,lA=W.layoutDimensions({nodeDimensionsIncludeLabels:P.nodeDimensionsIncludeLabels});if(W.outerWidth()!=null&&W.outerHeight()!=null)if(P.randomize)if(!W.isParent())tA=J.add(new l(O.graphManager,new g(k[b.get(W.id())]-lA.w/2,v[b.get(W.id())]-lA.h/2),new C(parseFloat(lA.w),parseFloat(lA.h))));else{var gA=o.calcBoundingBox(W,k,v,b);if(W.intersection(T).length==0)tA=J.add(new l(O.graphManager,new g(gA.topLeftX,gA.topLeftY),new C(gA.width,gA.height)));else tA=J.add(new l(O.graphManager,new g(gA.topLeftX,gA.topLeftY),new C(parseFloat(lA.w),parseFloat(lA.h))))}else tA=J.add(new l(O.graphManager,new g(W.position("x")-lA.w/2,W.position("y")-lA.h/2),new C(parseFloat(lA.w),parseFloat(lA.h))));else tA=J.add(new l(this.graphManager));if(tA.id=W.data("id"),tA.nodeRepulsion=F(P.nodeRepulsion,W),tA.paddingLeft=parseInt(W.css("padding")),tA.paddingTop=parseInt(W.css("padding")),tA.paddingRight=parseInt(W.css("padding")),tA.paddingBottom=parseInt(W.css("padding")),P.nodeDimensionsIncludeLabels)tA.labelWidth=W.boundingBox({includeLabels:!0,includeNodes:!1,includeOverlays:!1}).w,tA.labelHeight=W.boundingBox({includeLabels:!0,includeNodes:!1,includeOverlays:!1}).h,tA.labelPosVertical=W.css("text-valign"),tA.labelPosHorizontal=W.css("text-halign");if(S[W.data("id")]=tA,isNaN(tA.rect.x))tA.rect.x=0;if(isNaN(tA.rect.y))tA.rect.y=0;if(CA!=null&&CA.length>0){var aA=void 0;aA=O.getGraphManager().add(O.newGraph(),tA),H(aA,CA,O,P)}}},L=function(J,K,O){var P=0,z=0;for(var AA=0;AA<O.length;AA++){var W=O[AA],CA=S[W.data("source")],tA=S[W.data("target")];if(CA&&tA&&CA!==tA&&CA.getEdgesBetween(tA).length==0){var lA=K.add(J.newEdge(),CA,tA);lA.id=W.id(),lA.idealLength=F(Q.idealEdgeLength,W),lA.edgeElasticity=F(Q.edgeElasticity,W),P+=lA.idealLength,z++}}if(Q.idealEdgeLength!=null){if(z>0)d.DEFAULT_EDGE_LENGTH=E.DEFAULT_EDGE_LENGTH=P/z;else if(!x(Q.idealEdgeLength))d.DEFAULT_EDGE_LENGTH=E.DEFAULT_EDGE_LENGTH=Q.idealEdgeLength;else d.DEFAULT_EDGE_LENGTH=E.DEFAULT_EDGE_LENGTH=50;d.MIN_REPULSION_DIST=E.MIN_REPULSION_DIST=E.DEFAULT_EDGE_LENGTH/10,d.DEFAULT_RADIAL_SEPARATION=E.DEFAULT_EDGE_LENGTH}},M=function(J,K){if(K.fixedNodeConstraint)J.constraints.fixedNodeConstraint=K.fixedNodeConstraint;if(K.alignmentConstraint)J.constraints.alignmentConstraint=K.alignmentConstraint;if(K.relativePlacementConstraint)J.constraints.relativePlacementConstraint=K.relativePlacementConstraint};if(Q.nestingFactor!=null)d.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=E.PER_LEVEL_IDEAL_EDGE_LENGTH_FACTOR=Q.nestingFactor;if(Q.gravity!=null)d.DEFAULT_GRAVITY_STRENGTH=E.DEFAULT_GRAVITY_STRENGTH=Q.gravity;if(Q.numIter!=null)d.MAX_ITERATIONS=E.MAX_ITERATIONS=Q.numIter;if(Q.gravityRange!=null)d.DEFAULT_GRAVITY_RANGE_FACTOR=E.DEFAULT_GRAVITY_RANGE_FACTOR=Q.gravityRange;if(Q.gravityCompound!=null)d.DEFAULT_COMPOUND_GRAVITY_STRENGTH=E.DEFAULT_COMPOUND_GRAVITY_STRENGTH=Q.gravityCompound;if(Q.gravityRangeCompound!=null)d.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=E.DEFAULT_COMPOUND_GRAVITY_RANGE_FACTOR=Q.gravityRangeCompound;if(Q.initialEnergyOnIncremental!=null)d.DEFAULT_COOLING_FACTOR_INCREMENTAL=E.DEFAULT_COOLING_FACTOR_INCREMENTAL=Q.initialEnergyOnIncremental;if(Q.tilingCompareBy!=null)d.TILING_COMPARE_BY=Q.tilingCompareBy;if(Q.quality=="proof")B.QUALITY=2;else B.QUALITY=0;if(d.NODE_DIMENSIONS_INCLUDE_LABELS=E.NODE_DIMENSIONS_INCLUDE_LABELS=B.NODE_DIMENSIONS_INCLUDE_LABELS=Q.nodeDimensionsIncludeLabels,d.DEFAULT_INCREMENTAL=E.DEFAULT_INCREMENTAL=B.DEFAULT_INCREMENTAL=!Q.randomize,d.ANIMATE=E.ANIMATE=B.ANIMATE=Q.animate,d.TILE=Q.tile,d.TILING_PADDING_VERTICAL=typeof Q.tilingPaddingVertical==="function"?Q.tilingPaddingVertical.call():Q.tilingPaddingVertical,d.TILING_PADDING_HORIZONTAL=typeof Q.tilingPaddingHorizontal==="function"?Q.tilingPaddingHorizontal.call():Q.tilingPaddingHorizontal,d.DEFAULT_INCREMENTAL=E.DEFAULT_INCREMENTAL=B.DEFAULT_INCREMENTAL=!0,d.PURE_INCREMENTAL=!Q.randomize,B.DEFAULT_UNIFORM_LEAF_NODE_SIZES=Q.uniformNodeDimensions,Q.step=="transformed")d.TRANSFORM_ON_CONSTRAINT_HANDLING=!0,d.ENFORCE_CONSTRAINTS=!1,d.APPLY_LAYOUT=!1;if(Q.step=="enforced")d.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,d.ENFORCE_CONSTRAINTS=!0,d.APPLY_LAYOUT=!1;if(Q.step=="cose")d.TRANSFORM_ON_CONSTRAINT_HANDLING=!1,d.ENFORCE_CONSTRAINTS=!1,d.APPLY_LAYOUT=!0;if(Q.step=="all"){if(Q.randomize)d.TRANSFORM_ON_CONSTRAINT_HANDLING=!0;else d.TRANSFORM_ON_CONSTRAINT_HANDLING=!1;d.ENFORCE_CONSTRAINTS=!0,d.APPLY_LAYOUT=!0}if(Q.fixedNodeConstraint||Q.alignmentConstraint||Q.relativePlacementConstraint)d.TREE_REDUCTION_ON_INCREMENTAL=!1;else d.TREE_REDUCTION_ON_INCREMENTAL=!0;var U=new s,Y=U.newGraphManager();return R(Y.addRoot(),o.getTopMostNodes(D),U,Q),L(U,Y,w),M(U,Q),U.runLayout(),S};u.exports={coseLayout:I}},212:(u,a,n)=>{var o=function(){function Q(p,m){for(var f=0;f<m.length;f++){var D=m[f];if(D.enumerable=D.enumerable||!1,D.configurable=!0,"value"in D)D.writable=!0;Object.defineProperty(p,D.key,D)}}return function(p,m,f){if(m)Q(p.prototype,m);if(f)Q(p,f);return p}}();function s(Q,p){if(!(Q instanceof p))throw TypeError("Cannot call a class as a function")}var l=n(658),g=n(548),C=n(657),B=C.spectralLayout,E=n(816),d=E.coseLayout,I=Object.freeze({quality:"default",randomize:!0,animate:!0,animationDuration:1000,animationEasing:void 0,fit:!0,padding:30,nodeDimensionsIncludeLabels:!1,uniformNodeDimensions:!1,packComponents:!0,step:"all",samplingType:!0,sampleSize:25,nodeSeparation:75,piTol:0.0000001,nodeRepulsion:function(p){return 4500},idealEdgeLength:function(p){return 50},edgeElasticity:function(p){return 0.45},nestingFactor:0.1,gravity:0.25,numIter:2500,tile:!0,tilingCompareBy:void 0,tilingPaddingVertical:10,tilingPaddingHorizontal:10,gravityRangeCompound:1.5,gravityCompound:1,gravityRange:3.8,initialEnergyOnIncremental:0.3,fixedNodeConstraint:void 0,alignmentConstraint:void 0,relativePlacementConstraint:void 0,ready:function(){},stop:function(){}}),h=function(){function Q(p){s(this,Q),this.options=l({},I,p)}return o(Q,[{key:"run",value:function(){var m=this,f=this.options,{cy:D,eles:w}=f,b=[],k=void 0,v=void 0,S=[],x=void 0,F=[];if(f.fixedNodeConstraint&&(!Array.isArray(f.fixedNodeConstraint)||f.fixedNodeConstraint.length==0))f.fixedNodeConstraint=void 0;if(f.alignmentConstraint){if(f.alignmentConstraint.vertical&&(!Array.isArray(f.alignmentConstraint.vertical)||f.alignmentConstraint.vertical.length==0))f.alignmentConstraint.vertical=void 0;if(f.alignmentConstraint.horizontal&&(!Array.isArray(f.alignmentConstraint.horizontal)||f.alignmentConstraint.horizontal.length==0))f.alignmentConstraint.horizontal=void 0}if(f.relativePlacementConstraint&&(!Array.isArray(f.relativePlacementConstraint)||f.relativePlacementConstraint.length==0))f.relativePlacementConstraint=void 0;var T=f.fixedNodeConstraint||f.alignmentConstraint||f.relativePlacementConstraint;if(T)f.tile=!1,f.packComponents=!1;var R=void 0,L=!1;if(D.layoutUtilities&&f.packComponents){if(R=D.layoutUtilities("get"),!R)R=D.layoutUtilities();L=!0}if(w.nodes().length>0)if(!L){var M=f.eles.boundingBox();if(F.push({x:M.x1+M.w/2,y:M.y1+M.h/2}),f.randomize){var U=B(f);b.push(U)}if(f.quality=="default"||f.quality=="proof")S.push(d(f,b[0])),g.relocateComponent(F[0],S[0],f);else g.relocateComponent(F[0],b[0],f)}else{var Y=g.getTopMostNodes(f.eles.nodes());if(x=g.connectComponents(D,f.eles,Y),x.forEach(function(qA){var IA=qA.boundingBox();F.push({x:IA.x1+IA.w/2,y:IA.y1+IA.h/2})}),f.randomize)x.forEach(function(qA){f.eles=qA,b.push(B(f))});if(f.quality=="default"||f.quality=="proof"){var H=D.collection();if(f.tile){var J=new Map,K=[],O=[],P=0,z={nodeIndexes:J,xCoords:K,yCoords:O},AA=[];if(x.forEach(function(qA,IA){if(qA.edges().length==0)qA.nodes().forEach(function(bA,SA){if(H.merge(qA.nodes()[SA]),!bA.isParent())z.nodeIndexes.set(qA.nodes()[SA].id(),P++),z.xCoords.push(qA.nodes()[0].position().x),z.yCoords.push(qA.nodes()[0].position().y)}),AA.push(IA)}),H.length>1){var W=H.boundingBox();F.push({x:W.x1+W.w/2,y:W.y1+W.h/2}),x.push(H),b.push(z);for(var CA=AA.length-1;CA>=0;CA--)x.splice(AA[CA],1),b.splice(AA[CA],1),F.splice(AA[CA],1)}}x.forEach(function(qA,IA){f.eles=qA,S.push(d(f,b[IA])),g.relocateComponent(F[IA],S[IA],f)})}else x.forEach(function(qA,IA){g.relocateComponent(F[IA],b[IA],f)});var tA=new Set;if(x.length>1){var lA=[],gA=w.filter(function(qA){return qA.css("display")=="none"});x.forEach(function(qA,IA){var bA=void 0;if(f.quality=="draft")bA=b[IA].nodeIndexes;if(qA.nodes().not(gA).length>0){var SA={};SA.edges=[],SA.nodes=[];var EA=void 0;if(qA.nodes().not(gA).forEach(function(nA){if(f.quality=="draft")if(!nA.isParent())EA=bA.get(nA.id()),SA.nodes.push({x:b[IA].xCoords[EA]-nA.boundingbox().w/2,y:b[IA].yCoords[EA]-nA.boundingbox().h/2,width:nA.boundingbox().w,height:nA.boundingbox().h});else{var eA=g.calcBoundingBox(nA,b[IA].xCoords,b[IA].yCoords,bA);SA.nodes.push({x:eA.topLeftX,y:eA.topLeftY,width:eA.width,height:eA.height})}else if(S[IA][nA.id()])SA.nodes.push({x:S[IA][nA.id()].getLeft(),y:S[IA][nA.id()].getTop(),width:S[IA][nA.id()].getWidth(),height:S[IA][nA.id()].getHeight()})}),qA.edges().forEach(function(nA){var eA=nA.source(),BA=nA.target();if(eA.css("display")!="none"&&BA.css("display")!="none"){if(f.quality=="draft"){var yA=bA.get(eA.id()),vA=bA.get(BA.id()),FA=[],HA=[];if(eA.isParent()){var dA=g.calcBoundingBox(eA,b[IA].xCoords,b[IA].yCoords,bA);FA.push(dA.topLeftX+dA.width/2),FA.push(dA.topLeftY+dA.height/2)}else FA.push(b[IA].xCoords[yA]),FA.push(b[IA].yCoords[yA]);if(BA.isParent()){var q=g.calcBoundingBox(BA,b[IA].xCoords,b[IA].yCoords,bA);HA.push(q.topLeftX+q.width/2),HA.push(q.topLeftY+q.height/2)}else HA.push(b[IA].xCoords[vA]),HA.push(b[IA].yCoords[vA]);SA.edges.push({startX:FA[0],startY:FA[1],endX:HA[0],endY:HA[1]})}else if(S[IA][eA.id()]&&S[IA][BA.id()])SA.edges.push({startX:S[IA][eA.id()].getCenterX(),startY:S[IA][eA.id()].getCenterY(),endX:S[IA][BA.id()].getCenterX(),endY:S[IA][BA.id()].getCenterY()})}}),SA.nodes.length>0)lA.push(SA),tA.add(IA)}});var aA=R.packComponents(lA,f.randomize).shifts;if(f.quality=="draft")b.forEach(function(qA,IA){var bA=qA.xCoords.map(function(EA){return EA+aA[IA].dx}),SA=qA.yCoords.map(function(EA){return EA+aA[IA].dy});qA.xCoords=bA,qA.yCoords=SA});else{var NA=0;tA.forEach(function(qA){Object.keys(S[qA]).forEach(function(IA){var bA=S[qA][IA];bA.setCenter(bA.getCenterX()+aA[NA].dx,bA.getCenterY()+aA[NA].dy)}),NA++})}}}var DA=function(IA,bA){if(f.quality=="default"||f.quality=="proof"){if(typeof IA==="number")IA=bA;var SA=void 0,EA=void 0,nA=IA.data("id");if(S.forEach(function(BA){if(nA in BA)SA={x:BA[nA].getRect().getCenterX(),y:BA[nA].getRect().getCenterY()},EA=BA[nA]}),f.nodeDimensionsIncludeLabels){if(EA.labelWidth){if(EA.labelPosHorizontal=="left")SA.x+=EA.labelWidth/2;else if(EA.labelPosHorizontal=="right")SA.x-=EA.labelWidth/2}if(EA.labelHeight){if(EA.labelPosVertical=="top")SA.y+=EA.labelHeight/2;else if(EA.labelPosVertical=="bottom")SA.y-=EA.labelHeight/2}}if(SA==null)SA={x:IA.position("x"),y:IA.position("y")};return{x:SA.x,y:SA.y}}else{var eA=void 0;if(b.forEach(function(BA){var yA=BA.nodeIndexes.get(IA.id());if(yA!=null)eA={x:BA.xCoords[yA],y:BA.yCoords[yA]}}),eA==null)eA={x:IA.position("x"),y:IA.position("y")};return{x:eA.x,y:eA.y}}};if(f.quality=="default"||f.quality=="proof"||f.randomize){var KA=g.calcParentsWithoutChildren(D,w),TA=w.filter(function(qA){return qA.css("display")=="none"});if(f.eles=w.not(TA),w.nodes().not(":parent").not(TA).layoutPositions(m,f,DA),KA.length>0)KA.forEach(function(qA){qA.position(DA(qA))})}else console.log("If randomize option is set to false, then quality option must be 'default' or 'proof'.")}}]),Q}();u.exports=h},657:(u,a,n)=>{var o=n(548),s=n(140).layoutBase.Matrix,l=n(140).layoutBase.SVD,g=function(B){var{cy:E,eles:d}=B,I=d.nodes(),h=d.nodes(":parent"),Q=new Map,p=new Map,m=new Map,f=[],D=[],w=[],b=[],k=[],v=[],S=[],x=[],F=void 0,T=void 0,R=1e8,L=0.000000001,{piTol:M,samplingType:U,nodeSeparation:Y}=B,H=void 0,J=function(){var fA=0,j=0,mA=!1;while(j<H){fA=Math.floor(Math.random()*T),mA=!1;for(var rA=0;rA<j;rA++)if(b[rA]==fA){mA=!0;break}if(!mA)b[j]=fA,j++;else continue}},K=function(fA,j,mA){var rA=[],JA=0,_A=0,ZA=0,WA=void 0,te=[],zA=0,Ae=1;for(var $A=0;$A<T;$A++)te[$A]=R;rA[_A]=fA,te[fA]=0;while(_A>=JA){ZA=rA[JA++];var oe=f[ZA];for(var kA=0;kA<oe.length;kA++)if(WA=p.get(oe[kA]),te[WA]==R)te[WA]=te[ZA]+1,rA[++_A]=WA;v[ZA][j]=te[ZA]*Y}if(mA){for(var Pe=0;Pe<T;Pe++)if(v[Pe][j]<k[Pe])k[Pe]=v[Pe][j];for(var MA=0;MA<T;MA++)if(k[MA]>zA)zA=k[MA],Ae=MA}return Ae},O=function(fA){var j=void 0;if(!fA){J();for(var mA=0;mA<H;mA++)K(b[mA],mA,fA,!1)}else{j=Math.floor(Math.random()*T),F=j;for(var rA=0;rA<T;rA++)k[rA]=R;for(var JA=0;JA<H;JA++)b[JA]=j,j=K(j,JA,fA)}for(var _A=0;_A<T;_A++)for(var ZA=0;ZA<H;ZA++)v[_A][ZA]*=v[_A][ZA];for(var WA=0;WA<H;WA++)S[WA]=[];for(var te=0;te<H;te++)for(var zA=0;zA<H;zA++)S[te][zA]=v[b[zA]][te]},P=function(){var fA=l.svd(S),{S:j,U:mA,V:rA}=fA,JA=j[0]*j[0]*j[0],_A=[];for(var ZA=0;ZA<H;ZA++){_A[ZA]=[];for(var WA=0;WA<H;WA++)if(_A[ZA][WA]=0,ZA==WA)_A[ZA][WA]=j[ZA]/(j[ZA]*j[ZA]+JA/(j[ZA]*j[ZA]))}x=s.multMat(s.multMat(rA,_A),s.transpose(mA))},z=function(){var fA=void 0,j=void 0,mA=[],rA=[],JA=[],_A=[];for(var ZA=0;ZA<T;ZA++)mA[ZA]=Math.random(),rA[ZA]=Math.random();mA=s.normalize(mA),rA=s.normalize(rA);var WA=0,te=L,zA=L,Ae=void 0;while(!0){WA++;for(var $A=0;$A<T;$A++)JA[$A]=mA[$A];if(mA=s.multGamma(s.multL(s.multGamma(JA),v,x)),fA=s.dotProduct(JA,mA),mA=s.normalize(mA),te=s.dotProduct(JA,mA),Ae=Math.abs(te/zA),Ae<=1+M&&Ae>=1)break;zA=te}for(var oe=0;oe<T;oe++)JA[oe]=mA[oe];WA=0,zA=L;while(!0){WA++;for(var kA=0;kA<T;kA++)_A[kA]=rA[kA];if(_A=s.minusOp(_A,s.multCons(JA,s.dotProduct(JA,_A))),rA=s.multGamma(s.multL(s.multGamma(_A),v,x)),j=s.dotProduct(_A,rA),rA=s.normalize(rA),te=s.dotProduct(_A,rA),Ae=Math.abs(te/zA),Ae<=1+M&&Ae>=1)break;zA=te}for(var Pe=0;Pe<T;Pe++)_A[Pe]=rA[Pe];D=s.multCons(JA,Math.sqrt(Math.abs(fA))),w=s.multCons(_A,Math.sqrt(Math.abs(j)))};o.connectComponents(E,d,o.getTopMostNodes(I),Q),h.forEach(function(Z){o.connectComponents(E,d,o.getTopMostNodes(Z.descendants().intersection(d)),Q)});var AA=0;for(var W=0;W<I.length;W++)if(!I[W].isParent())p.set(I[W].id(),AA++);var CA=!0,tA=!1,lA=void 0;try{for(var gA=Q.keys()[Symbol.iterator](),aA;!(CA=(aA=gA.next()).done);CA=!0){var NA=aA.value;p.set(NA,AA++)}}catch(Z){tA=!0,lA=Z}finally{try{if(!CA&&gA.return)gA.return()}finally{if(tA)throw lA}}for(var DA=0;DA<p.size;DA++)f[DA]=[];h.forEach(function(Z){var fA=Z.children().intersection(d);while(fA.nodes(":childless").length==0)fA=fA.nodes()[0].children().intersection(d);var j=0,mA=fA.nodes(":childless")[0].connectedEdges().length;fA.nodes(":childless").forEach(function(rA,JA){if(rA.connectedEdges().length<mA)mA=rA.connectedEdges().length,j=JA}),m.set(Z.id(),fA.nodes(":childless")[j].id())}),I.forEach(function(Z){var fA=void 0;if(Z.isParent())fA=p.get(m.get(Z.id()));else fA=p.get(Z.id());Z.neighborhood().nodes().forEach(function(j){if(d.intersection(Z.edgesWith(j)).length>0)if(j.isParent())f[fA].push(m.get(j.id()));else f[fA].push(j.id())})});var KA=function(fA){var j=p.get(fA),mA=void 0;Q.get(fA).forEach(function(rA){if(E.getElementById(rA).isParent())mA=m.get(rA);else mA=rA;f[j].push(mA),f[p.get(mA)].push(fA)})},TA=!0,qA=!1,IA=void 0;try{for(var bA=Q.keys()[Symbol.iterator](),SA;!(TA=(SA=bA.next()).done);TA=!0){var EA=SA.value;KA(EA)}}catch(Z){qA=!0,IA=Z}finally{try{if(!TA&&bA.return)bA.return()}finally{if(qA)throw IA}}T=p.size;var nA=void 0;if(T>2){H=T<B.sampleSize?T:B.sampleSize;for(var eA=0;eA<T;eA++)v[eA]=[];for(var BA=0;BA<H;BA++)x[BA]=[];if(B.quality=="draft"||B.step=="all")O(U),P(),z(),nA={nodeIndexes:p,xCoords:D,yCoords:w};else p.forEach(function(Z,fA){D.push(E.getElementById(fA).position("x")),w.push(E.getElementById(fA).position("y"))}),nA={nodeIndexes:p,xCoords:D,yCoords:w};return nA}else{var yA=p.keys(),vA=E.getElementById(yA.next().value),FA=vA.position(),HA=vA.outerWidth();if(D.push(FA.x),w.push(FA.y),T==2){var dA=E.getElementById(yA.next().value),q=dA.outerWidth();D.push(FA.x+HA/2+q/2+B.idealEdgeLength),w.push(FA.y)}return nA={nodeIndexes:p,xCoords:D,yCoords:w},nA}};u.exports={spectralLayout:g}},579:(u,a,n)=>{var o=n(212),s=function(g){if(!g)return;g("layout","fcose",o)};if(typeof cytoscape<"u")s(cytoscape);u.exports=s},140:(u)=>{u.exports=A}},t={};function r(u){var a=t[u];if(a!==void 0)return a.exports;var n=t[u]={exports:{}};return e[u](n,n.exports,r),n.exports}var i=r(579);return i})()})});function QBA(A,e){if(A===0)return e();let t=Math.random,r=A>>>0;Math.random=function(){r=r+1831565813>>>0;let i=r;return i=Math.imul(i^i>>>15,i|1),i^=i+Math.imul(i^i>>>7,i|61),((i^i>>>14)>>>0)/4294967296};try{return e()}finally{Math.random=t}}function Kne(A,e,t){A.forEach((r)=>{e.add({group:"nodes",data:{type:"service",id:r.id,icon:r.icon,label:r.title,parent:r.in,width:t.getConfigField("iconSize"),height:t.getConfigField("iconSize")},classes:"node-service"})})}function Jne(A,e,t){A.forEach((r)=>{e.add({group:"nodes",data:{type:"junction",id:r.id,parent:r.in,width:t.getConfigField("iconSize"),height:t.getConfigField("iconSize")},classes:"node-junction"})})}function One(A,e){e.nodes().map((t)=>{let r=b6(t);if(r.type==="group")return;r.x=t.position().x,r.y=t.position().y,A.getElementById(r.id).attr("transform","translate("+(r.x||0)+","+(r.y||0)+")")})}function Pne(A,e){A.forEach((t)=>{e.add({group:"nodes",data:{type:"group",id:t.id,icon:t.icon,label:t.title,parent:t.in},classes:"node-group"})})}function _ne(A,e){A.forEach((t)=>{let{lhsId:r,rhsId:i,lhsInto:u,lhsGroup:a,rhsInto:n,lhsDir:o,rhsDir:s,rhsGroup:l,title:g}=t,C=pBA(t.lhsDir,t.rhsDir)?"segments":"straight",B={id:`${r}-${i}`,label:g,source:r,sourceDir:o,sourceArrow:u,sourceGroup:a,sourceEndpoint:o==="L"?"0 50%":o==="R"?"100% 50%":o==="T"?"50% 0":"50% 100%",target:i,targetDir:s,targetArrow:n,targetGroup:l,targetEndpoint:s==="L"?"0 50%":s==="R"?"100% 50%":s==="T"?"50% 0":"50% 100%"};e.add({group:"edges",data:B,classes:C})})}function Wne(A,e,t,r=[]){let i=y((C,B)=>{let E=new Map;for(let[d,I]of C.entries()){let h=`${d}`,Q=0,p=[...I.entries()];if(p.length===1){E.set(h,p[0][1]);continue}for(let m=0;m<p.length-1;m++)for(let f=m+1;f<p.length;f++){let[D,w]=p[m],[b,k]=p[f];if(t.get(Une(D,b))===B)E.set(h,[...E.get(h)??[],...w,...k]);else if(D==="default"||b==="default")E.set(h,[...E.get(h)??[],...w,...k]);else{let S=`${h}-${Q++}`;E.set(S,w);let x=`${h}-${Q++}`;E.set(x,k)}}}return E},"flattenAlignments"),u=e.map((C)=>{let B=new Map,E=new Map;return C.forEach(([d,I],h)=>{let Q=A.getNode(h)?.in??"default",p=B.get(I)??new Map;if(!B.has(I))B.set(I,p);let m=E.get(d)??new Map;if(!E.has(d))E.set(d,m);for(let f of[p,m]){let D=f.get(Q)??[];if(!f.has(Q))f.set(Q,D);D.push(h)}}),{horiz:[...i(B,"horizontal").values()].filter((d)=>d.length>1),vert:[...i(E,"vertical").values()].filter((d)=>d.length>1)}}),[a,n]=u.reduce(([C,B],{horiz:E,vert:d})=>[[...C,...E],[...B,...d]],[[],[]]),o=new Set;r.forEach((C)=>C.members.forEach((B)=>o.add(B)));let s=y((C)=>C.filter((B)=>!B.some((E)=>o.has(E))),"dropOverlapping"),l=s(a),g=s(n);return r.forEach((C)=>{if(C.members.length<2)return;if(C.direction==="row")l.push([...C.members]);else g.push([...C.members])}),{horizontal:l,vertical:g}}function qne(A,e,t=[]){let r=[],i=e.getConfigField("iconSize"),u=e.getConfigField("idealEdgeLengthMultiplier"),a=u*i,n=new Set;t.forEach((l)=>{for(let g=0;g<l.members.length-1;g++){let C=l.members[g],B=l.members[g+1];if(n.add(`${C}|${B}`),n.add(`${B}|${C}`),l.direction==="row")r.push({left:C,right:B,gap:a});else r.push({top:C,bottom:B,gap:a})}});let o=y((l)=>`${l[0]},${l[1]}`,"posToStr"),s=y((l)=>l.split(",").map((g)=>parseInt(g)),"strToPos");return A.forEach((l)=>{let g=new Map([...l.entries()].map(([d,I])=>[o(I),d])),C=[o([0,0])],B={},E={L:[-1,0],R:[1,0],T:[0,1],B:[0,-1]};while(C.length>0){let d=C.shift();if(d){B[d]=1;let I=g.get(d);if(I){let h=s(d);Object.entries(E).forEach(([Q,p])=>{let m=o([h[0]+p[0],h[1]+p[1]]),f=g.get(m);if(f&&!B[m]){if(C.push(m),n.has(`${I}|${f}`))return;r.push({[Rne[Q]]:f,[Rne[yYt(Q)]]:I,gap:u*i})}})}}}}),r}function zne(A,e,t,r,i,{spatialMaps:u,groupAlignments:a}){return new Promise((n)=>{let o=Qe("body").append("div").attr("id","cy").attr("style","display:none"),s=uc({container:document.getElementById("cy"),style:[{selector:"edge",style:{"curve-style":"straight","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"edge[label]",style:{label:"data(label)"}},{selector:"edge.segments",style:{"curve-style":"segments","segment-weights":"0","segment-distances":[0.5],"edge-distances":"endpoints","source-endpoint":"data(sourceEndpoint)","target-endpoint":"data(targetEndpoint)"}},{selector:"node",style:{"compound-sizing-wrt-labels":"include"}},{selector:"node[label]",style:{"text-valign":"bottom","text-halign":"center","font-size":`${i.getConfigField("fontSize")}px`}},{selector:".node-service",style:{label:"data(label)",width:"data(width)",height:"data(height)"}},{selector:".node-junction",style:{width:"data(width)",height:"data(height)"}},{selector:".node-group",style:{padding:`${i.getConfigField("padding")}px`}}],layout:{name:"grid",boundingBox:{x1:0,x2:100,y1:0,y2:100}}});o.remove(),Pne(t,s),Kne(A,s,i),Jne(e,s,i),_ne(r,s);let l=i.getLayoutHints(),g=Wne(i,u,a,l),C=qne(u,i,l),B=i.getConfigField("iconSize"),E=i.getConfigField("idealEdgeLengthMultiplier")*B,d=0.5*B,I=i.getConfigField("edgeElasticity"),h=i.getConfigField("seed"),Q=s.layout({name:"fcose",quality:"proof",randomize:i.getConfigField("randomize"),nodeSeparation:i.getConfigField("nodeSeparation"),numIter:i.getConfigField("numIter"),styleEnabled:!1,animate:!1,nodeDimensionsIncludeLabels:!1,idealEdgeLength(p){let[m,f]=p.connectedNodes(),{parent:D}=b6(m),{parent:w}=b6(f);return D===w?E:d},edgeElasticity(p){let[m,f]=p.connectedNodes(),{parent:D}=b6(m),{parent:w}=b6(f);return D===w?I:0.001},alignmentConstraint:g,relativePlacementConstraint:C});Q.one("layoutstop",()=>{function p(m,f,D,w){let b,k,{x:v,y:S}=m,{x,y:F}=f;k=(w-S+(v-D)*(S-F)/(v-x))/Math.sqrt(1+Math.pow((S-F)/(v-x),2)),b=Math.sqrt(Math.pow(w-S,2)+Math.pow(D-v,2)-Math.pow(k,2));let T=Math.sqrt(Math.pow(x-v,2)+Math.pow(F-S,2));b=b/T;let R=(x-v)*(w-S)-(F-S)*(D-v);switch(!0){case R>=0:R=1;break;case R<0:R=-1;break}let L=(x-v)*(D-v)+(F-S)*(w-S);switch(!0){case L>=0:L=1;break;case L<0:L=-1;break}return k=Math.abs(k)*R,b=b*L,{distances:k,weights:b}}y(p,"getSegmentWeights"),s.startBatch();for(let m of Object.values(s.edges()))if(m.data?.()){let{x:f,y:D}=m.source().position(),{x:w,y:b}=m.target().position();if(f!==w&&D!==b){let k=m.sourceEndpoint(),v=m.targetEndpoint(),{sourceDir:S}=Mne(m),[x,F]=u1(S)?[k.x,v.y]:[v.x,k.y],{weights:T,distances:R}=p(k,v,x,F);m.style("segment-distances",R),m.style("segment-weights",T)}}s.endBatch(),QBA(h,()=>Q.run())});try{QBA(h,()=>Q.run())}catch(p){if(p instanceof RangeError&&p.message.includes("Invalid array length"))throw Error("Architecture layout failed: a declared `align row|column` directive likely contradicts the edge directions, or two declared alignments overlap on a shared node. Check that the order of members in each `align` chain is consistent with the edges between them, and that no node appears in two `align` directives along the same axis.");throw p}s.ready((p)=>{sA.info("Ready",p),n(s)})})}var Hne,Rne,Nne,ZO,yYt,Gne,Ns,u1,pBA,wYt,bYt,hBA,vYt,kYt,FYt,xYt,SYt,Une,Mne,b6,LYt,Tne,RYt,Yne,NYt,GYt,w6,d7,UYt,MYt,TYt,YYt,HYt,KYt,Zne;var Vne=_(()=>{ms();cn();uo();Ln();ai();rr();ir();Nt();I0();qaA();Pr();Hne=yu(Lne(),1),Rne={L:"left",R:"right",T:"top",B:"bottom"},Nne={L:y((A)=>`${A},${A/2} 0,${A} 0,0`,"L"),R:y((A)=>`0,${A/2} ${A},0 ${A},${A}`,"R"),T:y((A)=>`0,0 ${A},0 ${A/2},${A}`,"T"),B:y((A)=>`${A/2},0 ${A},${A} 0,${A}`,"B")},ZO={L:y((A,e)=>A-e+2,"L"),R:y((A,e)=>A-2,"R"),T:y((A,e)=>A-e+2,"T"),B:y((A,e)=>A-2,"B")},yYt=y(function(A){if(Ns(A))return A==="L"?"R":"L";else return A==="T"?"B":"T"},"getOppositeArchitectureDirection"),Gne=y(function(A){let e=A;return e==="L"||e==="R"||e==="T"||e==="B"},"isArchitectureDirection"),Ns=y(function(A){let e=A;return e==="L"||e==="R"},"isArchitectureDirectionX"),u1=y(function(A){let e=A;return e==="T"||e==="B"},"isArchitectureDirectionY"),pBA=y(function(A,e){let t=Ns(A)&&u1(e),r=u1(A)&&Ns(e);return t||r},"isArchitectureDirectionXY"),wYt=y(function(A){let e=A[0],t=A[1],r=Ns(e)&&u1(t),i=u1(e)&&Ns(t);return r||i},"isArchitecturePairXY"),bYt=y(function(A){return A!=="LL"&&A!=="RR"&&A!=="TT"&&A!=="BB"},"isValidArchitectureDirectionPair"),hBA=y(function(A,e){let t=`${A}${e}`;return bYt(t)?t:void 0},"getArchitectureDirectionPair"),vYt=y(function([A,e],t){let r=t[0],i=t[1];if(Ns(r))if(u1(i))return[A+(r==="L"?-1:1),e+(i==="T"?1:-1)];else return[A+(r==="L"?-1:1),e];else if(Ns(i))return[A+(i==="L"?1:-1),e+(r==="T"?1:-1)];else return[A,e+(r==="T"?1:-1)]},"shiftPositionByArchitectureDirectionPair"),kYt=y(function(A){if(A==="LT"||A==="TL")return[1,1];else if(A==="BL"||A==="LB")return[1,-1];else if(A==="BR"||A==="RB")return[-1,-1];else return[-1,1]},"getArchitectureDirectionXYFactors"),FYt=y(function(A,e){if(pBA(A,e))return"bend";else if(Ns(A))return"horizontal";return"vertical"},"getArchitectureDirectionAlignment"),xYt=y(function(A){return A.type==="service"},"isArchitectureService"),SYt=y(function(A){return A.type==="junction"},"isArchitectureJunction"),Une=y((A,e)=>{let[t,r]=[A,e].sort();return`${JSON.stringify(t)}-${JSON.stringify(r)}`},"architectureGroupAlignmentKey"),Mne=y((A)=>A.data(),"edgeData"),b6=y((A)=>A.data(),"nodeData"),LYt=ur.architecture,Tne=class{constructor(){this.nodes=new Map,this.groups=new Map,this.edges=[],this.layoutHints=[],this.registeredIds=new Map,this.elements=new Map,this.diagramId="",this.setAccTitle=Dr,this.getAccTitle=kr,this.setDiagramTitle=Tr,this.getDiagramTitle=Sr,this.getAccDescription=xr,this.setAccDescription=Fr,this.clear()}static{y(this,"ArchitectureDB")}setDiagramId(A){this.diagramId=A}getDiagramId(){return this.diagramId}clear(){this.nodes=new Map,this.groups=new Map,this.edges=[],this.layoutHints=[],this.registeredIds=new Map,this.dataStructures=void 0,this.elements=new Map,this.diagramId="",cr()}addService({id:A,icon:e,in:t,title:r,iconText:i}){if(this.registeredIds.has(A))throw Error(`The service id [${A}] is already in use by another ${this.registeredIds.get(A)}`);if(t!==void 0){if(A===t)throw Error(`The service [${A}] cannot be placed within itself`);if(!this.registeredIds.has(t))throw Error(`The service [${A}]'s parent does not exist. Please make sure the parent is created before this service`);if(this.registeredIds.get(t)==="node")throw Error(`The service [${A}]'s parent is not a group`)}this.registeredIds.set(A,"node"),this.nodes.set(A,{id:A,type:"service",icon:e,iconText:i,title:r,edges:[],in:t})}getServices(){return[...this.nodes.values()].filter(xYt)}addJunction({id:A,in:e}){if(this.registeredIds.has(A))throw Error(`The junction id [${A}] is already in use by another ${this.registeredIds.get(A)}`);if(e!==void 0){if(A===e)throw Error(`The junction [${A}] cannot be placed within itself`);if(!this.registeredIds.has(e))throw Error(`The junction [${A}]'s parent does not exist. Please make sure the parent is created before this junction`);if(this.registeredIds.get(e)==="node")throw Error(`The junction [${A}]'s parent is not a group`)}this.registeredIds.set(A,"node"),this.nodes.set(A,{id:A,type:"junction",edges:[],in:e})}getJunctions(){return[...this.nodes.values()].filter(SYt)}getNodes(){return[...this.nodes.values()]}getNode(A){return this.nodes.get(A)??null}addGroup({id:A,icon:e,in:t,title:r}){if(this.registeredIds.has(A))throw Error(`The group id [${A}] is already in use by another ${this.registeredIds.get(A)}`);if(t!==void 0){if(A===t)throw Error(`The group [${A}] cannot be placed within itself`);if(!this.registeredIds.has(t))throw Error(`The group [${A}]'s parent does not exist. Please make sure the parent is created before this group`);if(this.registeredIds.get(t)==="node")throw Error(`The group [${A}]'s parent is not a group`)}this.registeredIds.set(A,"group"),this.groups.set(A,{id:A,icon:e,title:r,in:t})}getGroups(){return[...this.groups.values()]}addEdge({lhsId:A,rhsId:e,lhsDir:t,rhsDir:r,lhsInto:i,rhsInto:u,lhsGroup:a,rhsGroup:n,title:o}){if(!Gne(t))throw Error(`Invalid direction given for left hand side of edge ${A}--${e}. Expected (L,R,T,B) got ${String(t)}`);if(!Gne(r))throw Error(`Invalid direction given for right hand side of edge ${A}--${e}. Expected (L,R,T,B) got ${String(r)}`);if(!this.nodes.has(A)&&!this.groups.has(A))throw Error(`The left-hand id [${A}] does not yet exist. Please create the service/group before declaring an edge to it.`);if(!this.nodes.has(e)&&!this.groups.has(e))throw Error(`The right-hand id [${e}] does not yet exist. Please create the service/group before declaring an edge to it.`);let s=this.nodes.get(A).in,l=this.nodes.get(e).in;if(a&&s&&l&&s==l)throw Error(`The left-hand id [${A}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);if(n&&s&&l&&s==l)throw Error(`The right-hand id [${e}] is modified to traverse the group boundary, but the edge does not pass through two groups.`);let g={lhsId:A,lhsDir:t,lhsInto:i,lhsGroup:a,rhsId:e,rhsDir:r,rhsInto:u,rhsGroup:n,title:o};this.edges.push(g);let C=this.nodes.get(A),B=this.nodes.get(e);if(C&&B)C.edges.push(this.edges[this.edges.length-1]),B.edges.push(this.edges[this.edges.length-1])}getEdges(){return this.edges}addLayoutHint(A){if(A.members.length<2)throw Error(`An align directive requires at least two members; got ${A.members.length}`);let e=new Set;A.members.forEach((t)=>{if(this.registeredIds.get(t)!=="node")throw Error(`align ${A.direction} references [${t}], which is not a service or junction`);if(e.has(t))throw Error(`align ${A.direction} lists [${t}] more than once`);e.add(t)}),this.layoutHints.push(A)}getLayoutHints(){return this.layoutHints}getDataStructures(){if(this.dataStructures===void 0){let A=new Map,e=new Map;for(let[a,n]of this.nodes.entries()){let o=new Map;for(let s of n.edges){let l=this.getNode(s.lhsId)?.in,g=this.getNode(s.rhsId)?.in;if(l&&g&&l!==g){let C=FYt(s.lhsDir,s.rhsDir);if(C!=="bend")A.set(Une(l,g),C)}if(s.lhsId===a){let C=hBA(s.lhsDir,s.rhsDir);if(C)o.set(C,s.rhsId)}else{let C=hBA(s.rhsDir,s.lhsDir);if(C)o.set(C,s.lhsId)}}e.set(a,o)}let t=new Set,r=new Set(e.keys()),i=y((a)=>{let n=new Map([[a,[0,0]]]),o=[a];while(o.length>0){let s=o.shift();if(s){t.add(s),r.delete(s);let l=e.get(s);if(!l)throw Error(`BFS error: adjacency list for id ${s} not found. Please report this as a bug.`);let g=n.get(s);if(!g)throw Error(`BFS error: position for id ${s} not found in spatial map. Please report this as a bug.`);let[C,B]=g;l.forEach((E,d)=>{if(!t.has(E))n.set(E,vYt([C,B],d)),o.push(E)})}}return n},"BFS"),u=[];while(r.size>0){let a=r.values().next().value;u.push(i(a))}this.dataStructures={adjList:e,spatialMaps:u,groupAlignments:A}}return this.dataStructures}setElementForId(A,e){this.elements.set(A,e)}getElementById(A){return this.elements.get(A)}getConfig(){return si({...LYt,...ot().architecture})}getConfigField(A){return this.getConfig()[A]}},RYt=y((A,e)=>{hu(A,e),A.groups.map((t)=>e.addGroup(t)),A.services.map((t)=>e.addService({...t,type:"service"})),A.junctions.map((t)=>e.addJunction({...t,type:"junction"})),A.edges.map((t)=>e.addEdge(t)),A.alignments?.map((t)=>e.addLayoutHint({direction:t.direction,members:[...t.members]}))},"populateDb"),Yne={parser:{yy:void 0},parse:y(async(A)=>{let e=await Ga("architecture",A);sA.debug(e);let t=Yne.parser?.yy;if(!(t instanceof Tne))throw Error("parser.parser?.yy was not a ArchitectureDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");RYt(e,t)},"parse")},NYt=y((A)=>`
.edge {
stroke-width: ${A.archEdgeWidth};
stroke: ${A.archEdgeColor};
fill: none;
}
.arrow {
fill: ${A.archEdgeArrowColor};
}
.node-bkg {
fill: none;
stroke: ${A.archGroupBorderColor};
stroke-width: ${A.archGroupBorderWidth};
stroke-dasharray: 8;
}
.node-icon-text {
display: flex;
align-items: center;
}
.node-icon-text > div {
color: #fff;
margin: 1px;
height: fit-content;
text-align: center;
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
}
`,"getStyles"),GYt=NYt;y(QBA,"withSeededRandom");w6=y((A)=>`<g><rect width="80" height="80" style="fill: #087ebf; stroke-width: 0px;"/>${A}</g>`,"wrapIcon"),d7={prefix:"mermaid-architecture",height:80,width:80,icons:{database:{body:w6('<path id="b" data-name="4" d="m20,57.86c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path id="c" data-name="3" d="m20,45.95c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path id="d" data-name="2" d="m20,34.05c0,3.94,8.95,7.14,20,7.14s20-3.2,20-7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse id="e" data-name="1" cx="40" cy="22.14" rx="20" ry="7.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="20" y1="57.86" x2="20" y2="22.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="60" y1="57.86" x2="60" y2="22.14" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},server:{body:w6('<rect x="17.5" y="17.5" width="45" height="45" rx="2" ry="2" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="32.5" x2="62.5" y2="32.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="47.5" x2="62.5" y2="47.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><g><path d="m56.25,25c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,25c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><path d="m56.25,40c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,40c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><path d="m56.25,55c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: #fff; stroke-width: 0px;"/><path d="m56.25,55c0,.27-.45.5-1,.5h-10.5c-.55,0-1-.23-1-.5s.45-.5,1-.5h10.5c.55,0,1,.23,1,.5Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="25" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="40" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g><g><circle cx="32.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="27.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/><circle cx="22.5" cy="55" r=".75" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10;"/></g>')},disk:{body:w6('<rect x="20" y="15" width="40" height="50" rx="1" ry="1" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="24" cy="19.17" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="56" cy="19.17" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="24" cy="60.83" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="56" cy="60.83" rx=".8" ry=".83" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="40" cy="33.75" rx="14" ry="14.58" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><ellipse cx="40" cy="33.75" rx="4" ry="4.17" style="fill: #fff; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m37.51,42.52l-4.83,13.22c-.26.71-1.1,1.02-1.76.64l-4.18-2.42c-.66-.38-.81-1.26-.33-1.84l9.01-10.8c.88-1.05,2.56-.08,2.09,1.2Z" style="fill: #fff; stroke-width: 0px;"/>')},internet:{body:w6('<circle cx="40" cy="40" r="22.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="40" y1="17.5" x2="40" y2="62.5" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="17.5" y1="40" x2="62.5" y2="40" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m39.99,17.51c-15.28,11.1-15.28,33.88,0,44.98" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><path d="m40.01,17.51c15.28,11.1,15.28,33.88,0,44.98" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="19.75" y1="30.1" x2="60.25" y2="30.1" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/><line x1="19.75" y1="49.9" x2="60.25" y2="49.9" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},cloud:{body:w6('<path d="m65,47.5c0,2.76-2.24,5-5,5H20c-2.76,0-5-2.24-5-5,0-1.87,1.03-3.51,2.56-4.36-.04-.21-.06-.42-.06-.64,0-2.6,2.48-4.74,5.65-4.97,1.65-4.51,6.34-7.76,11.85-7.76.86,0,1.69.08,2.5.23,2.09-1.57,4.69-2.5,7.5-2.5,6.1,0,11.19,4.38,12.28,10.17,2.14.56,3.72,2.51,3.72,4.83,0,.03,0,.07-.01.1,2.29.46,4.01,2.48,4.01,4.9Z" style="fill: none; stroke: #fff; stroke-miterlimit: 10; stroke-width: 2px;"/>')},unknown:seA,blank:{body:w6("")}}},UYt=y(async function(A,e,t,r){let i=t.getConfigField("padding"),u=t.getConfigField("iconSize"),a=u/2,n=u/6,o=n/2;await Promise.all(e.edges().map(async(s)=>{let{source:l,sourceDir:g,sourceArrow:C,sourceGroup:B,target:E,targetDir:d,targetArrow:I,targetGroup:h,label:Q}=Mne(s),{x:p,y:m}=s[0].sourceEndpoint(),{x:f,y:D}=s[0].midpoint(),{x:w,y:b}=s[0].targetEndpoint(),k=i+4;if(B)if(Ns(g))p+=g==="L"?-k:k;else m+=g==="T"?-k:k+18;if(h)if(Ns(d))w+=d==="L"?-k:k;else b+=d==="T"?-k:k+18;if(!B&&t.getNode(l)?.type==="junction")if(Ns(g))p+=g==="L"?a:-a;else m+=g==="T"?a:-a;if(!h&&t.getNode(E)?.type==="junction")if(Ns(d))w+=d==="L"?a:-a;else b+=d==="T"?a:-a;if(s[0]._private.rscratch){let v=A.insert("g");if(v.insert("path").attr("d",`M ${p},${m} L ${f},${D} L${w},${b} `).attr("class","edge").attr("id",`${r}-${AE(l,E,{prefix:"L"})}`),C){let S=Ns(g)?ZO[g](p,n):p-o,x=u1(g)?ZO[g](m,n):m-o;v.insert("polygon").attr("points",Nne[g](n)).attr("transform",`translate(${S},${x})`).attr("class","arrow")}if(I){let S=Ns(d)?ZO[d](w,n):w-o,x=u1(d)?ZO[d](b,n):b-o;v.insert("polygon").attr("points",Nne[d](n)).attr("transform",`translate(${S},${x})`).attr("class","arrow")}if(Q){let S=!pBA(g,d)?Ns(g)?"X":"Y":"XY",x=0;if(S==="X")x=Math.abs(p-w);else if(S==="Y")x=Math.abs(m-b)/1.5;else x=Math.abs(p-w)/2;let F=v.append("g");if(await Rn(F,Q,{useHtmlLabels:!1,width:x,classes:"architecture-service-label"},OA()),F.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),S==="X")F.attr("transform","translate("+f+", "+D+")");else if(S==="Y")F.attr("transform","translate("+f+", "+D+") rotate(-90)");else if(S==="XY"){let T=hBA(g,d);if(T&&wYt(T)){let R=F.node().getBoundingClientRect(),[L,M]=kYt(T);F.attr("dominant-baseline","auto").attr("transform",`rotate(${-1*L*M*45})`);let U=F.node().getBoundingClientRect();F.attr("transform",`
translate(${f}, ${D-R.height/2})
translate(${L*U.width/2}, ${M*U.height/2})
rotate(${-1*L*M*45}, 0, ${R.height/2})
`)}}}}}))},"drawEdges"),MYt=y(async function(A,e,t,r){let u=t.getConfigField("padding")*0.75,a=t.getConfigField("fontSize"),o=t.getConfigField("iconSize")/2;await Promise.all(e.nodes().map(async(s)=>{let l=b6(s);if(l.type==="group"){let{h:g,w:C,x1:B,y1:E}=s.boundingBox(),d=A.append("rect");d.attr("id",`${r}-group-${l.id}`).attr("x",B+o).attr("y",E+o).attr("width",C).attr("height",g).attr("class","node-bkg");let I=A.append("g"),h=B,Q=E;if(l.icon){let p=I.append("g");p.html(`<g>${await tg(l.icon,{height:u,width:u,fallbackPrefix:d7.prefix})}</g>`),p.attr("transform","translate("+(h+o+1)+", "+(Q+o+1)+")"),h+=u,Q+=a/2-1-2}if(l.label){let p=I.append("g");await Rn(p,l.label,{useHtmlLabels:!1,width:C,classes:"architecture-service-label"},OA()),p.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","start").attr("text-anchor","start"),p.attr("transform","translate("+(h+o+4)+", "+(Q+o+2)+")")}t.setElementForId(l.id,d)}}))},"drawGroups"),TYt=y(async function(A,e,t,r){let i=OA();for(let u of t){let a=e.append("g"),n=A.getConfigField("iconSize");if(u.title){let g=a.append("g");await Rn(g,u.title,{useHtmlLabels:!1,width:n*1.5,classes:"architecture-service-label"},i),g.attr("dy","1em").attr("alignment-baseline","middle").attr("dominant-baseline","middle").attr("text-anchor","middle"),g.attr("transform","translate("+n/2+", "+n+")")}let o=a.append("g");if(u.icon)o.html(`<g>${await tg(u.icon,{height:n,width:n,fallbackPrefix:d7.prefix})}</g>`);else if(u.iconText){o.html(`<g>${await tg("blank",{height:n,width:n,fallbackPrefix:d7.prefix})}</g>`);let B=o.append("g").append("foreignObject").attr("width",n).attr("height",n).append("div").attr("class","node-icon-text").attr("style",`height: ${n}px;`).append("div").html(gr(u.iconText,i)),E=parseInt(window.getComputedStyle(B.node(),null).getPropertyValue("font-size").replace(/\D/g,""))??16;B.attr("style",`-webkit-line-clamp: ${Math.floor((n-2)/E)};`)}else o.append("path").attr("class","node-bkg").attr("id",`${r}-node-${u.id}`).attr("d",`M0,${n} V5 Q0,0 5,0 H${n-5} Q${n},0 ${n},5 V${n} Z`);a.attr("id",`${r}-service-${u.id}`).attr("class","architecture-service");let{width:s,height:l}=a.node().getBBox();u.width=s,u.height=l,A.setElementForId(u.id,a)}return 0},"drawServices"),YYt=y(function(A,e,t,r){t.forEach((i)=>{let u=e.append("g"),a=A.getConfigField("iconSize");u.append("g").append("rect").attr("id",`${r}-node-${i.id}`).attr("fill-opacity","0").attr("width",a).attr("height",a),u.attr("class","architecture-junction");let{width:o,height:s}=u._groups[0][0].getBBox();u.width=o,u.height=s,A.setElementForId(i.id,u)})},"drawJunctions");jD([{name:d7.prefix,icons:d7}]);uc.use(Hne.default);y(Kne,"addServices");y(Jne,"addJunctions");y(One,"positionNodes");y(Pne,"addGroups");y(_ne,"addEdges");y(Wne,"getAlignments");y(qne,"getRelativeConstraints");y(zne,"layoutArchitecture");HYt=y(async(A,e,t,r)=>{let i=r.db;i.setDiagramId(e);let u=i.getServices(),a=i.getJunctions(),n=i.getGroups(),o=i.getEdges(),s=i.getDataStructures(),l=zi(e),g=l.append("g");g.attr("class","architecture-edges");let C=l.append("g");C.attr("class","architecture-services");let B=l.append("g");B.attr("class","architecture-groups"),await TYt(i,C,u,e),YYt(i,C,a,e);let E=await zne(u,a,n,o,i,s);await UYt(g,E,i,e),await MYt(B,E,i,e),One(i,E),PB(void 0,l,i.getConfigField("padding"),i.getConfigField("useMaxWidth"))},"draw"),KYt={draw:HYt},Zne={parser:Yne,get db(){return new Tne},renderer:KYt,styles:GYt}});function Aoe(){yBA={}}function eoe(){let A=qYt,{ast:e}=yBA,t=wBA();if(!e)throw Error("No data for EventModel");return e.frames.forEach((r,i)=>{let u=ooe(r,e.dataEntities,t);A=jO(A,{$kind:jne,index:i,frame:r,textProps:u});let a=void 0;if(Boe(r))sA.debug("source frame",r.sourceFrames),a=e.frames.filter((n)=>r.sourceFrames.some((o)=>o.$refText===n.name)),a.forEach((n)=>{A=jO(A,{$kind:fBA,index:i,frame:r,sourceFrame:n})});else A=jO(A,{$kind:fBA,index:i,frame:r})}),A={...A,sortedSwimlanesArray:bBA(A.swimlanes)},A}function toe(A){yBA.ast=A}function wBA(){return eu}function roe(A){let e=A.split(".");if(e.length===2)return e[0];return}function ioe(A){let e=A.split(".");if(e.length===2)return e[1];return A}function uoe(A,e){if(!e||e.length===0)return;return Object.values(A).find((t)=>t.namespace===e)}function VO(A,e,t){return Math.max(e,...Object.keys(A).filter((r)=>{let i=Number.parseInt(r);return i>e&&i<t}).map((r)=>Number.parseInt(r)))+1}function aoe(A,e){let t=roe(A.entityIdentifier),r=uoe(e,t);switch(A.modelEntityType){case"ui":case"pcr":case"processor":if(r)return{index:r.index,label:r.namespace||eu.labelUiAutomation};else if(t)return{index:VO(e,0,100),label:eu.labelUiAutomationPrefix+t};return{index:0,label:eu.labelUiAutomation};case"rmo":case"readmodel":case"cmd":case"command":if(r)return{index:r.index,label:r.namespace||eu.labelCommandReadModel};else if(t)return{index:VO(e,100,200),label:eu.labelCommandReadModelPrefix+t};return{index:100,label:eu.labelCommandReadModel};case"evt":case"event":default:if(r)return{index:r.index,label:r.namespace||eu.labelEvents};else if(t)return{index:VO(e,200,300),label:eu.labelEventsPrefix+t};return{index:200,label:eu.labelEvents}}}function noe(A){let{themeVariables:e}=ot();switch(A.modelEntityType){case"ui":return{fill:e.emUiFill??"white",stroke:e.emUiStroke??"#dbdada"};case"pcr":case"processor":return{fill:e.emProcessorFill??"#edb3f6",stroke:e.emProcessorStroke??"#b88cbf"};case"rmo":case"readmodel":return{fill:e.emReadModelFill??"#d3f1a2",stroke:e.emReadModelStroke??"#a3b732"};case"cmd":case"command":return{fill:e.emCommandFill??"#bcd6fe",stroke:e.emCommandStroke??"#679ac3"};case"evt":case"event":return{fill:e.emEventFill??"#ffb778",stroke:e.emEventStroke??"#c19a0f"};default:return{fill:"red",stroke:"black"}}}function ooe(A,e,t){let r=ot(),i=gr(ioe(A.entityIdentifier)??"",r),u,a={fontSize:16,fontWeight:700,fontFamily:'"trebuchet ms", verdana, arial, sans-serif',joinWith:"<br/>"},o=`<b>${gf(i,t.textMaxWidth,a)}</b>`;if(A.dataInlineValue)u=A.dataInlineValue,u=u.substring(u.indexOf("{")+1),u=u.substring(0,u.lastIndexOf("}")-1),u=gr(u,r),u=gf(u,t.textMaxWidth,a),u=u.replaceAll(" ","&nbsp;");if(A.dataReference){let E=e.find((d)=>d.name===A.dataReference?.$refText);if(E)u=E.dataBlockValue,u=u.substring(u.indexOf(`{
`)+2),u=u.substring(0,u.lastIndexOf("}")-1),u=gr(u,r),u=gf(u,t.textMaxWidth,a),u=u.replaceAll(" ","&nbsp;"),u+="<br/>"}let s=u!==void 0;if(s)o+=`<br/><br/><code style="text-align: left; display: block;max-width:${t.textMaxWidth}px">${u}</code>`;let l={fontSize:a.fontSize,fontWeight:a.fontWeight,fontFamily:a.fontFamily},g=pv(o,l),C=s?g.width/3:g.width,B={content:o,width:C,height:g.height};return sA.debug(`[${A.name}] ${A.entityIdentifier} text`,B),B}function soe(A,e){let t=e,r=noe(t.frame),i={width:t.textProps.width+2*eu.boxTextPadding,height:t.textProps.height+2*eu.boxTextPadding};return[{$kind:Xne,frame:t.frame,index:t.index,visual:r,dimension:i,textProps:t.textProps}]}function loe(A,e,t){if(e===void 0)return eu.contentStartX;if(e.index===A.index&&A.r)return A.r+eu.boxPadding;if(t===void 0)return eu.contentStartX;return t.r-eu.boxOverlap+eu.boxPadding}function goe(A,e){let t=[...A.map((r)=>r.r),e];return Math.max(...t)}function bBA(A){return Object.values(A).sort((e,t)=>e.index-t.index)}function coe(A,e){let t=e,r=aoe(t.frame,A.swimlanes),i;if(r.index in A.swimlanes)i=A.swimlanes[r.index];else i={index:r.index,label:r.label,r:0,y:r.index*eu.swimlaneMinHeight+eu.swimlaneGap,height:eu.swimlaneMinHeight,maxHeight:eu.swimlaneMinHeight};let u=A.boxes.length>0?A.boxes[A.boxes.length-1]:void 0,a=A.previousSwimlaneNumber!==void 0?A.swimlanes[A.previousSwimlaneNumber]:void 0,n={width:Math.max(eu.boxMinWidth,Math.min(eu.boxMaxWidth,t.dimension.width))+2*eu.boxPadding,height:Math.max(eu.boxMinHeight,Math.min(eu.boxMaxHeight,t.dimension.height))+2*eu.boxPadding},o=loe(i,a,u),s=o+n.width+eu.boxPadding,l=goe(Object.values(A.swimlanes),s);i.r=o+n.width,i.maxHeight=Math.max(i.maxHeight,n.height),i.height=Math.max(eu.swimlaneMinHeight,i.maxHeight)+2*eu.swimlanePadding;let g={x:o,y:eu.swimlanePadding+i.y,r:s,dimension:n,leftSibling:!1,swimlane:i,visual:t.visual,text:t.textProps.content,frame:t.frame,index:t.index},C={...A,boxes:[...A.boxes,g],swimlanes:{...A.swimlanes,[`${i.index}`]:i},previousSwimlaneNumber:r.index,previousFrame:t.frame,maxR:l},B=bBA(C.swimlanes);if(B.length>0)B[0].y=0;for(let E=1;E<B.length;E++){let d=B[E],I=B[E-1];d.y=I.y+I.height+eu.swimlaneGap}return C}function Coe(A,e){if(A===0&&e.sourceFrames.length===0)return!0;return!1}function Boe(A){return A.sourceFrames!==void 0&&A.sourceFrames!==null&&A.sourceFrames.length>0}function mBA(A,e){if(e===void 0||e===null)return;return A.find((t)=>t.frame.name===e.name)}function Eoe(A,e,t){if(t<0)return;for(let r=t;r>=0;r--){let i=A[r];if(i.swimlane.index!==e)return i}return}function doe(A,e){let t=e;if(Nx(t.frame)||Coe(t.index,t.frame))return[];let r=mBA(A.boxes,t.frame);if(r===void 0)throw Error(`Target box not found for frame ${t.frame.name}`);let i;if(t.sourceFrame)i=mBA(A.boxes,t.sourceFrame);else i=Eoe(A.boxes,r.swimlane.index,t.index-1);if(i===void 0)return[];return[{$kind:$ne,frame:t.frame,index:t.index,sourceBox:i,targetBox:r}]}function Ioe(A,e){let t=e,r={visual:{fill:"none",stroke:"#000"},source:{x:t.sourceBox.x,y:t.sourceBox.y},target:{x:t.targetBox.x,y:t.targetBox.y},sourceBox:t.sourceBox,targetBox:t.targetBox};return{...A,relations:[...A.relations,r]}}function hoe(A,e){let t=zYt[e.$kind];if(t===void 0||t===null)return[];let r=t(A,e);return sA.debug("decided events",r),r}function Qoe(A,e){let t=e.reduce((r,i)=>{let u=ZYt[i.$kind];if(u===void 0||u===null)return r;return u(r,i)},A);return sA.debug("evolve events",{state:A,newState:t,events:e}),t}function jO(A,e){let t=hoe(A,e);return Qoe(A,t)}function poe(A,e){return(t)=>{let r=t.swimlane.y+e.swimlanePadding,i=A.append("g").attr("class","em-box");i.append("rect").attr("x",t.x).attr("y",r).attr("rx","3").attr("width",t.dimension.width).attr("height",t.dimension.height).attr("stroke",t.visual.stroke).attr("fill",t.visual.fill),i.append("foreignObject").attr("x",t.x+e.boxPadding).attr("y",r+10).attr("width",t.dimension.width-2*e.boxPadding).attr("height",t.dimension.height-2*e.boxPadding).append("xhtml:div").style("display","table").style("height","100%").style("width","100%").append("span").style("display","table-cell").style("text-align","center").style("vertical-align","middle").html(t.text)}}function foe(A,e){return A>e}function moe(A,e,t,r){return(i)=>{let u=i.sourceBox.swimlane.y+e.swimlanePadding,a=i.targetBox.swimlane.y+e.swimlanePadding,n=foe(u,a),o=i.sourceBox.x+i.sourceBox.dimension.width*2/3,s=i.targetBox.x+i.targetBox.dimension.width/3,l,g;if(sA.debug(`rendering relation up=${n} for `,{sourceBox:i.sourceBox,targetBox:i.targetBox}),n)l=u,g=a+i.targetBox.dimension.height;else l=u+i.sourceBox.dimension.height,g=a;let C=r.emRelationStroke??i.visual.stroke;A.append("path").attr("class","em-relation").attr("fill",i.visual.fill).attr("stroke",C).attr("stroke-width","1").attr("marker-end",`url(#${t})`).attr("d",`M${o} ${l} L${s} ${g}`)}}function Doe(A,e,t,r){return(i)=>{let u=A.append("g").attr("class","em-swimlane"),a=r.emSwimlaneBackgroundOdd??"rgb(250,250,250)",n=r.emSwimlaneBackgroundStroke??"rgb(240,240,240)";u.append("rect").attr("x",0).attr("y",i.y).attr("rx","3").attr("width",e+t.swimlanePadding).attr("height",i.height).attr("fill",a).attr("stroke",n),u.append("text").attr("font-weight",t.swimlaneTextFontWeight).attr("x",30).attr("y",i.y+30).text(i.label)}}var jne="position frame",Xne="frame positioned",fBA="position relation",$ne="relation positioned",JYt,OYt,PYt,_Yt,WYt,yBA,eu,qYt,zYt,ZYt,DBA,VYt,jYt,XYt,$Yt,AHt,eHt,tHt,yoe;var woe=_(()=>{ms();ai();rr();ir();Nt();I0();I0();Pr();JYt=y(function(A){sA.debug("options str",A)},"setOptions"),OYt=y(function(){return{}},"getOptions"),PYt=y(function(){Aoe(),cr()},"clear");y(Aoe,"reset");_Yt=ur.eventmodeling,WYt=y(()=>si({..._Yt,...ot().eventmodeling}),"getConfig"),yBA={};y(eoe,"getState");y(toe,"setAst");eu={swimlaneMinHeight:70,swimlanePadding:15,swimlaneGap:10,boxPadding:10,boxOverlap:90,boxDefaultY:0,boxMinWidth:80,boxMaxWidth:450,boxMinHeight:80,boxMaxHeight:750,contentStartX:250,textMaxWidth:430,boxTextFontWeight:"bold",boxTextPadding:10,swimlaneTextFontWeight:"bold",labelUiAutomation:"UI/Automation",labelUiAutomationPrefix:"UI/A: ",labelCommandReadModel:"Command/Read Model",labelCommandReadModelPrefix:"C/RM: ",labelEvents:"Events",labelEventsPrefix:"Stream: "};y(wBA,"getDiagramProps");qYt={boxes:[],swimlanes:{},relations:[],maxR:0,sortedSwimlanesArray:[]};y(roe,"extractNamespace");y(ioe,"extractName");y(uoe,"findSwimlaneByNamespace");y(VO,"findNextAvailableIndex");y(aoe,"calculateSwimlaneProps");y(noe,"calculateEntityVisualProps");y(ooe,"calculateTextProps");y(soe,"decidePositionFrame");y(loe,"calculateX");y(goe,"calculateMaxRight");y(bBA,"sortedSwimlanesArray");y(coe,"evolveFramePositioned");y(Coe,"isFirstFrame");y(Boe,"hasSourceFrame");y(mBA,"findBoxByFrame");y(Eoe,"findBoxByLineIndex");y(doe,"decidePositionRelation");y(Ioe,"evolveRelationPositioned");zYt={[jne]:soe,[fBA]:doe},ZYt={[Xne]:coe,[$ne]:Ioe};y(hoe,"decide");y(Qoe,"evolve");y(jO,"dispatch");DBA={getConfig:WYt,setOptions:JYt,getOptions:OYt,clear:PYt,setAccTitle:Dr,getAccTitle:kr,getAccDescription:xr,setAccDescription:Fr,setDiagramTitle:Tr,getDiagramTitle:Sr,setAst:toe,getDiagramProps:wBA,getState:eoe},VYt={parse:y(async(A)=>{let e=await Ga("eventmodeling",A);sA.debug(e),DBA.setAst(e),hu(e,DBA)},"parse")},jYt=OA(),XYt=jYt?.eventmodeling;y(poe,"renderD3Box");y(foe,"dirUpwards");y(moe,"renderD3Relation");y(Doe,"renderD3Swimlane");$Yt=y(function(A,e,t,r){if(sA.debug("in eventmodeling renderer",A+`
`,"id:",e,t),!XYt)throw Error("EventModeling config not found");let i=r.db,{themeVariables:u,eventmodeling:a}=OA(),n=Qe(`[id="${e}"]`),o=i.getDiagramProps(),s=i.getState(),l=`em-arrowhead-${e}`,g=u.emArrowhead??"#000000";s.sortedSwimlanesArray.forEach(Doe(n,s.maxR,o,u)),s.boxes.forEach(poe(n,o)),s.relations.forEach(moe(n,o,l,u)),n.append("defs").append("marker").attr("id",l).attr("markerWidth","10").attr("markerHeight","7").attr("refX","10").attr("refY","3.5").attr("orient","auto").append("polygon").attr("points","0 0, 10 3.5, 0 7").attr("fill",g),Ib(void 0,n,a?.padding??30,a?.useMaxWidth)},"draw"),AHt={draw:$Yt},eHt=y((A)=>"","getStyles"),tHt=eHt,yoe={parser:VYt,db:DBA,renderer:AHt,styles:tHt}});var kBA,rHt,iHt,uHt=14,v6=250,aHt=30,nHt=60,oHt=5,Soe,boe,voe,koe,sHt,Foe,lHt,gHt,cHt,vBA,CHt,BHt,Loe,XO,xoe,k6,EHt,dHt,IHt,Roe;var Noe=_(()=>{cn();ai();rr();ir();Nt();Kt();kBA=function(){var A=y(function(h,Q,p,m){for(p=p||{},m=h.length;m--;p[h[m]]=Q);return p},"o"),e=[1,4],t=[1,14],r=[1,12],i=[1,13],u=[6,7,8],a=[1,20],n=[1,18],o=[1,19],s=[6,7,11],l=[1,6,13,14],g=[1,23],C=[1,24],B=[1,6,7,11,13,14],E={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ishikawa:4,spaceLines:5,SPACELINE:6,NL:7,ISHIKAWA:8,document:9,stop:10,EOF:11,statement:12,SPACELIST:13,TEXT:14,$accept:0,$end:1},terminals_:{2:"error",6:"SPACELINE",7:"NL",8:"ISHIKAWA",11:"EOF",13:"SPACELIST",14:"TEXT"},productions_:[0,[3,1],[3,2],[5,1],[5,2],[5,2],[4,2],[4,3],[10,1],[10,1],[10,1],[10,2],[10,2],[9,3],[9,2],[12,2],[12,1],[12,1],[12,1]],performAction:y(function(Q,p,m,f,D,w,b){var k=w.length-1;switch(D){case 6:case 7:return f;case 15:f.addNode(w[k-1].length,w[k].trim());break;case 16:f.addNode(0,w[k].trim());break}},"anonymous"),table:[{3:1,4:2,5:3,6:[1,5],8:e},{1:[3]},{1:[2,1]},{4:6,6:[1,7],7:[1,8],8:e},{6:t,7:[1,10],9:9,12:11,13:r,14:i},A(u,[2,3]),{1:[2,2]},A(u,[2,4]),A(u,[2,5]),{1:[2,6],6:t,12:15,13:r,14:i},{6:t,9:16,12:11,13:r,14:i},{6:a,7:n,10:17,11:o},A(s,[2,18],{14:[1,21]}),A(s,[2,16]),A(s,[2,17]),{6:a,7:n,10:22,11:o},{1:[2,7],6:t,12:15,13:r,14:i},A(l,[2,14],{7:g,11:C}),A(B,[2,8]),A(B,[2,9]),A(B,[2,10]),A(s,[2,15]),A(l,[2,13],{7:g,11:C}),A(B,[2,11]),A(B,[2,12])],defaultActions:{2:[2,1],6:[2,2]},parseError:y(function(Q,p){if(p.recoverable)this.trace(Q);else{var m=Error(Q);throw m.hash=p,m}},"parseError"),parse:y(function(Q){var p=this,m=[0],f=[],D=[null],w=[],b=this.table,k="",v=0,S=0,x=0,F=2,T=1,R=w.slice.call(arguments,1),L=Object.create(this.lexer),M={yy:{}};for(var U in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,U))M.yy[U]=this.yy[U];if(L.setInput(Q,M.yy),M.yy.lexer=L,M.yy.parser=this,typeof L.yylloc>"u")L.yylloc={};var Y=L.yylloc;w.push(Y);var H=L.options&&L.options.ranges;if(typeof M.yy.parseError==="function")this.parseError=M.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function J(KA){m.length=m.length-2*KA,D.length=D.length-KA,w.length=w.length-KA}y(J,"popStack");function K(){var KA=f.pop()||L.lex()||T;if(typeof KA!=="number"){if(KA instanceof Array)f=KA,KA=f.pop();KA=p.symbols_[KA]||KA}return KA}y(K,"lex");var O,P,z,AA,W,CA,tA={},lA,gA,aA,NA;while(!0){if(z=m[m.length-1],this.defaultActions[z])AA=this.defaultActions[z];else{if(O===null||typeof O>"u")O=K();AA=b[z]&&b[z][O]}if(typeof AA>"u"||!AA.length||!AA[0]){var DA="";NA=[];for(lA in b[z])if(this.terminals_[lA]&&lA>F)NA.push("'"+this.terminals_[lA]+"'");if(L.showPosition)DA="Parse error on line "+(v+1)+`:
`+L.showPosition()+`
Expecting `+NA.join(", ")+", got '"+(this.terminals_[O]||O)+"'";else DA="Parse error on line "+(v+1)+": Unexpected "+(O==T?"end of input":"'"+(this.terminals_[O]||O)+"'");this.parseError(DA,{text:L.match,token:this.terminals_[O]||O,line:L.yylineno,loc:Y,expected:NA})}if(AA[0]instanceof Array&&AA.length>1)throw Error("Parse Error: multiple actions possible at state: "+z+", token: "+O);switch(AA[0]){case 1:if(m.push(O),D.push(L.yytext),w.push(L.yylloc),m.push(AA[1]),O=null,!P){if(S=L.yyleng,k=L.yytext,v=L.yylineno,Y=L.yylloc,x>0)x--}else O=P,P=null;break;case 2:if(gA=this.productions_[AA[1]][1],tA.$=D[D.length-gA],tA._$={first_line:w[w.length-(gA||1)].first_line,last_line:w[w.length-1].last_line,first_column:w[w.length-(gA||1)].first_column,last_column:w[w.length-1].last_column},H)tA._$.range=[w[w.length-(gA||1)].range[0],w[w.length-1].range[1]];if(CA=this.performAction.apply(tA,[k,S,v,M.yy,AA[1],D,w].concat(R)),typeof CA<"u")return CA;if(gA)m=m.slice(0,-1*gA*2),D=D.slice(0,-1*gA),w=w.slice(0,-1*gA);m.push(this.productions_[AA[1]][0]),D.push(tA.$),w.push(tA._$),aA=b[m[m.length-2]][m[m.length-1]],m.push(aA);break;case 3:return!0}}return!0},"parse")},d=function(){var h={EOF:1,parseError:y(function(p,m){if(this.yy.parser)this.yy.parser.parseError(p,m);else throw Error(p)},"parseError"),setInput:y(function(Q,p){if(this.yy=p||this.yy||{},this._input=Q,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var Q=this._input[0];this.yytext+=Q,this.yyleng++,this.offset++,this.match+=Q,this.matched+=Q;var p=Q.match(/(?:\r\n?|\n).*/g);if(p)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),Q},"input"),unput:y(function(Q){var p=Q.length,m=Q.split(/(?:\r\n?|\n)/g);this._input=Q+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-p),this.offset-=p;var f=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),m.length-1)this.yylineno-=m.length-1;var D=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:m?(m.length===f.length?this.yylloc.first_column:0)+f[f.length-m.length].length-m[0].length:this.yylloc.first_column-p},this.options.ranges)this.yylloc.range=[D[0],D[0]+this.yyleng-p];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(Q){this.unput(this.match.slice(Q))},"less"),pastInput:y(function(){var Q=this.matched.substr(0,this.matched.length-this.match.length);return(Q.length>20?"...":"")+Q.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var Q=this.match;if(Q.length<20)Q+=this._input.substr(0,20-Q.length);return(Q.substr(0,20)+(Q.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var Q=this.pastInput(),p=Array(Q.length+1).join("-");return Q+this.upcomingInput()+`
`+p+"^"},"showPosition"),test_match:y(function(Q,p){var m,f,D;if(this.options.backtrack_lexer){if(D={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)D.yylloc.range=this.yylloc.range.slice(0)}if(f=Q[0].match(/(?:\r\n?|\n).*/g),f)this.yylineno+=f.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:f?f[f.length-1].length-f[f.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Q[0].length},this.yytext+=Q[0],this.match+=Q[0],this.matches=Q,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(Q[0].length),this.matched+=Q[0],m=this.performAction.call(this,this.yy,this,p,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(m)return m;else if(this._backtrack){for(var w in D)this[w]=D[w];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var Q,p,m,f;if(!this._more)this.yytext="",this.match="";var D=this._currentRules();for(var w=0;w<D.length;w++)if(m=this._input.match(this.rules[D[w]]),m&&(!p||m[0].length>p[0].length)){if(p=m,f=w,this.options.backtrack_lexer)if(Q=this.test_match(m,D[w]),Q!==!1)return Q;else if(this._backtrack){p=!1;continue}else return!1;else if(!this.options.flex)break}if(p){if(Q=this.test_match(p,D[f]),Q!==!1)return Q;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var p=this.next();if(p)return p;else return this.lex()},"lex"),begin:y(function(p){this.conditionStack.push(p)},"begin"),popState:y(function(){var p=this.conditionStack.length-1;if(p>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(p){if(p=this.conditionStack.length-1-Math.abs(p||0),p>=0)return this.conditionStack[p];else return"INITIAL"},"topState"),pushState:y(function(p){this.begin(p)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(p,m,f,D){var w=D;switch(f){case 0:return 6;case 1:return 8;case 2:return 8;case 3:return 6;case 4:return 7;case 5:return 13;case 6:return 14;case 7:return 11}},"anonymous"),rules:[/^(?:\s*%%.*)/i,/^(?:ishikawa-beta\b)/i,/^(?:ishikawa\b)/i,/^(?:[\s]+[\n])/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:[^\n]+)/i,/^(?:$)/i],conditions:{INITIAL:{rules:[0,1,2,3,4,5,6,7],inclusive:!0}}};return h}();E.lexer=d;function I(){this.yy={}}return y(I,"Parser"),I.prototype=E,E.Parser=I,new I}();kBA.parser=kBA;rHt=kBA,iHt=class{constructor(){this.stack=[],this.clear=this.clear.bind(this),this.addNode=this.addNode.bind(this),this.getRoot=this.getRoot.bind(this)}static{y(this,"IshikawaDB")}clear(){this.root=void 0,this.stack=[],this.baseLevel=void 0,cr()}getRoot(){return this.root}addNode(A,e){let t=_e.sanitizeText(e,OA());if(!this.root){this.root={text:t,children:[]},this.stack=[{level:0,node:this.root}],Tr(t);return}this.baseLevel??=A;let r=A-this.baseLevel+1;if(r<=0)r=1;while(this.stack.length>1&&this.stack[this.stack.length-1].level>=r)this.stack.pop();let i=this.stack[this.stack.length-1].node,u={text:t,children:[]};i.children.push(u),this.stack.push({level:r,node:u})}getAccTitle(){return kr()}setAccTitle(A){Dr(A)}getAccDescription(){return xr()}setAccDescription(A){Fr(A)}getDiagramTitle(){return Sr()}setDiagramTitle(A){Tr(A)}},Soe=82*Math.PI/180,boe=Math.cos(Soe),voe=Math.sin(Soe),koe=y((A,e,t)=>{let r=A.node().getBBox(),i=r.width+e*2,u=r.height+e*2;Xr(A,u,i,t),A.attr("viewBox",`${r.x-e} ${r.y-e} ${i} ${u}`)},"applyPaddedViewBox"),sHt=y((A,e,t,r)=>{let u=r.db.getRoot();if(!u)return;let a=OA(),{look:n,handDrawnSeed:o,themeVariables:s}=a,l=rl(a.fontSize)[0]??uHt,g=n==="handDrawn",C=u.children??[],B=a.ishikawa?.diagramPadding??20,E=a.ishikawa?.useMaxWidth??!1,d=zi(e),I=d.append("g").attr("class","ishikawa"),h=g?Ne.svg(d.node()):void 0,Q=h?{roughSvg:h,seed:o??0,lineColor:s?.lineColor??"#333",fillColor:s?.mainBkg??"#fff"}:void 0,p=`ishikawa-arrow-${e}`;if(!g)I.append("defs").append("marker").attr("id",p).attr("viewBox","0 0 10 10").attr("refX",0).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 Z").attr("class","ishikawa-arrow");let m=0,f=v6,D=g?void 0:k6(I,m,f,m,f,"ishikawa-spine");if(lHt(I,m,f,u.text,l,Q),!C.length){if(g)k6(I,m,f,m,f,"ishikawa-spine",Q);koe(d,B,E);return}m-=20;let w=C.filter((L,M)=>M%2===0),b=C.filter((L,M)=>M%2===1),k=Foe(w),v=Foe(b),S=k.total+v.total,x=v6,F=v6;if(S>0){let L=v6*2,M=v6*0.3;x=Math.max(M,L*(k.total/S)),F=Math.max(M,L*(v.total/S))}let T=l*2;if(x=Math.max(x,k.max*T),F=Math.max(F,v.max*T),f=Math.max(x,v6),D)D.attr("y1",f).attr("y2",f);I.select(".ishikawa-head-group").attr("transform",`translate(0,${f})`);let R=Math.ceil(C.length/2);for(let L=0;L<R;L++){let M=I.append("g").attr("class","ishikawa-pair");for(let[U,Y,H]of[[C[L*2],-1,x],[C[L*2+1],1,F]])if(U)CHt(M,U,m,f,Y,H,l,Q);m=M.selectAll("text").nodes().reduce((U,Y)=>Math.min(U,Y.getBBox().x),1/0)}if(g)k6(I,m,f,0,f,"ishikawa-spine",Q);else{D.attr("x1",m);let L=`url(#${p})`;I.selectAll("line.ishikawa-branch, line.ishikawa-sub-branch").attr("marker-start",L)}koe(d,B,E)},"draw"),Foe=y((A)=>{let e=y((t)=>t.children.reduce((r,i)=>r+1+e(i),0),"countDescendants");return A.reduce((t,r)=>{let i=e(r);return t.total+=i,t.max=Math.max(t.max,i),t},{total:0,max:0})},"sideStats"),lHt=y((A,e,t,r,i,u)=>{let a=Math.max(6,Math.floor(110/(i*0.6))),n=A.append("g").attr("class","ishikawa-head-group").attr("transform",`translate(${e},${t})`),o=XO(n,Loe(r,a),0,0,"ishikawa-head-label","start",i),s=o.node().getBBox(),l=Math.max(60,s.width+6),g=Math.max(40,s.height*2+40),C=`M 0 ${-g/2} L 0 ${g/2} Q ${l*2.4} 0 0 ${-g/2} Z`;if(u){let B=u.roughSvg.path(C,{roughness:1.5,seed:u.seed,fill:u.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:u.lineColor,strokeWidth:2});n.insert(()=>B,":first-child").attr("class","ishikawa-head")}else n.insert("path",":first-child").attr("class","ishikawa-head").attr("d",C);o.attr("transform",`translate(${(l-s.width)/2-s.x+3},${-s.y-s.height/2})`)},"drawHead"),gHt=y((A,e)=>{let t=[],r=[],i=y((u,a,n)=>{let o=e===-1?[...u].reverse():u;for(let s of o){let l=t.length,g=s.children??[];if(t.push({depth:n,text:Loe(s.text,15),parentIndex:a,childCount:g.length}),n%2===0){if(r.push(l),g.length)i(g,l,n+1)}else{if(g.length)i(g,l,n+1);r.push(l)}}},"walk");return i(A,-1,2),{entries:t,yOrder:r}},"flattenTree"),cHt=y((A,e,t,r,i,u,a)=>{let n=A.append("g").attr("class","ishikawa-label-group"),s=XO(n,e,t,r+11*i,"ishikawa-label cause","middle",u).node().getBBox();if(a){let l=a.roughSvg.rectangle(s.x-20,s.y-2,s.width+40,s.height+4,{roughness:1.5,seed:a.seed,fill:a.fillColor,fillStyle:"hachure",fillWeight:2.5,hachureGap:5,stroke:a.lineColor,strokeWidth:2});n.insert(()=>l,":first-child").attr("class","ishikawa-label-box")}else n.insert("rect",":first-child").attr("class","ishikawa-label-box").attr("x",s.x-20).attr("y",s.y-2).attr("width",s.width+40).attr("height",s.height+4)},"drawCauseLabel"),vBA=y((A,e,t,r,i,u)=>{let a=Math.sqrt(r*r+i*i);if(a===0)return;let n=r/a,o=i/a,s=6,l=-o*s,g=n*s,C=e,B=t,E=`M ${C} ${B} L ${C-n*s*2+l} ${B-o*s*2+g} L ${C-n*s*2-l} ${B-o*s*2-g} Z`,d=u.roughSvg.path(E,{roughness:1,seed:u.seed,fill:u.lineColor,fillStyle:"solid",stroke:u.lineColor,strokeWidth:1});A.append(()=>d)},"drawArrowMarker"),CHt=y((A,e,t,r,i,u,a,n)=>{let o=e.children??[],s=u*(o.length?1:0.2),l=-boe*s,g=voe*s*i,C=t+l,B=r+g;if(k6(A,t,r,C,B,"ishikawa-branch",n),n)vBA(A,t,r,t-C,r-B,n);if(cHt(A,e.text,C,B,i,a,n),!o.length)return;let{entries:E,yOrder:d}=gHt(o,i),I=E.length,h=Array(I);for(let[D,w]of d.entries())h[w]=r+g*((D+1)/(I+1));let Q=new Map;Q.set(-1,{x0:t,y0:r,x1:C,y1:B,childCount:o.length,childrenDrawn:0});let p=-boe,m=voe*i,f=i<0?"ishikawa-label up":"ishikawa-label down";for(let[D,w]of E.entries()){let b=h[D],k=Q.get(w.parentIndex),v=A.append("g").attr("class","ishikawa-sub-group"),S=0,x=0,F=0;if(w.depth%2===0){let T=k.y1-k.y0;if(S=xoe(k.x0,k.x1,T?(b-k.y0)/T:0.5),x=b,F=S-(w.childCount>0?nHt+w.childCount*oHt:aHt),k6(v,S,b,F,b,"ishikawa-sub-branch",n),n)vBA(v,S,b,1,0,n);XO(v,w.text,F,b,"ishikawa-label align","end",a)}else{let T=k.childrenDrawn++;if(S=xoe(k.x0,k.x1,(k.childCount-T)/(k.childCount+1)),x=k.y0,F=S+p*((b-x)/m),k6(v,S,x,F,b,"ishikawa-sub-branch",n),n)vBA(v,S,x,S-F,x-b,n);XO(v,w.text,F,b,f,"end",a)}if(w.childCount>0)Q.set(D,{x0:S,y0:x,x1:F,y1:b,childCount:w.childCount,childrenDrawn:0})}},"drawBranch"),BHt=y((A)=>A.split(/<br\s*\/?>|\n/),"splitLines"),Loe=y((A,e)=>{if(A.length<=e)return A;let t=[];for(let r of A.split(/\s+/)){let i=t.length-1;if(i>=0&&t[i].length+1+r.length<=e)t[i]+=" "+r;else t.push(r)}return t.join(`
`)},"wrapText"),XO=y((A,e,t,r,i,u,a)=>{let n=BHt(e),o=a*1.05,s=A.append("text").attr("class",i).attr("text-anchor",u).attr("x",t).attr("y",r-(n.length-1)*o/2);for(let[l,g]of n.entries())s.append("tspan").attr("x",t).attr("dy",l===0?0:o).text(g);return s},"drawMultilineText"),xoe=y((A,e,t)=>A+(e-A)*t,"lerp"),k6=y((A,e,t,r,i,u,a)=>{if(a){let n=a.roughSvg.line(e,t,r,i,{roughness:1.5,seed:a.seed,stroke:a.lineColor,strokeWidth:2});A.append(()=>n).attr("class",u);return}return A.append("line").attr("class",u).attr("x1",e).attr("y1",t).attr("x2",r).attr("y2",i)},"drawLine"),EHt={draw:sHt},dHt=y((A)=>`
.ishikawa .ishikawa-spine,
.ishikawa .ishikawa-branch,
.ishikawa .ishikawa-sub-branch {
stroke: ${A.lineColor};
stroke-width: 2;
fill: none;
}
.ishikawa .ishikawa-sub-branch {
stroke-width: 1;
}
.ishikawa .ishikawa-arrow {
fill: ${A.lineColor};
}
.ishikawa .ishikawa-head {
fill: ${A.mainBkg};
stroke: ${A.lineColor};
stroke-width: 2;
}
.ishikawa .ishikawa-label-box {
fill: ${A.mainBkg};
stroke: ${A.lineColor};
stroke-width: 2;
}
.ishikawa text {
font-family: ${A.fontFamily};
font-size: ${A.fontSize};
fill: ${A.textColor};
}
.ishikawa .ishikawa-head-label {
font-weight: 600;
text-anchor: middle;
dominant-baseline: middle;
font-size: 14px;
}
.ishikawa .ishikawa-label {
text-anchor: end;
}
.ishikawa .ishikawa-label.cause {
text-anchor: middle;
dominant-baseline: middle;
}
.ishikawa .ishikawa-label.align {
text-anchor: end;
dominant-baseline: middle;
}
.ishikawa .ishikawa-label.up {
dominant-baseline: baseline;
}
.ishikawa .ishikawa-label.down {
dominant-baseline: hanging;
}
`,"getStyles"),IHt=dHt,Roe={parser:rHt,get db(){return new iHt},renderer:EHt,styles:IHt}});function $O(A,e){let t=QHt(A),r=t.filter((n)=>hHt(n,A)),i=0,u=0,a=[];if(r.length>1){let n=Toe(r);for(let s=0;s<r.length;++s){let l=r[s];l.angle=Math.atan2(l.x-n.x,l.y-n.y)}r.sort((s,l)=>l.angle-s.angle);let o=r[r.length-1];for(let s=0;s<r.length;++s){let l=r[s];u+=(o.x+l.x)*(l.y-o.y);let g={x:(l.x+o.x)/2,y:(l.y+o.y)/2},C=null;for(let B=0;B<l.parentIndex.length;++B)if(o.parentIndex.includes(l.parentIndex[B])){let E=A[l.parentIndex[B]],d=Math.atan2(l.x-E.x,l.y-E.y),I=Math.atan2(o.x-E.x,o.y-E.y),h=I-d;if(h<0)h+=2*Math.PI;let Q=I-h/2,p=Fl(g,{x:E.x+E.radius*Math.sin(Q),y:E.y+E.radius*Math.cos(Q)});if(p>E.radius*2)p=E.radius*2;if(C==null||C.width>p)C={circle:E,width:p,p1:l,p2:o,large:p>E.radius,sweep:!0}}if(C!=null)a.push(C),i+=SBA(C.circle.radius,C.width),o=l}}else{let n=A[0];for(let s=1;s<A.length;++s)if(A[s].radius<n.radius)n=A[s];let o=!1;for(let s=0;s<A.length;++s)if(Fl(A[s],n)>Math.abs(n.radius-A[s].radius)){o=!0;break}if(o)i=u=0;else i=n.radius*n.radius*Math.PI,a.push({circle:n,p1:{x:n.x,y:n.y+n.radius},p2:{x:n.x-0.0000000001,y:n.y+n.radius},width:n.radius*2,large:!0,sweep:!0})}if(u/=2,e)e.area=i+u,e.arcArea=i,e.polygonArea=u,e.arcs=a,e.innerPoints=r,e.intersectionPoints=t;return i+u}function hHt(A,e){return e.every((t)=>Fl(A,t)<t.radius+0.0000000001)}function QHt(A){let e=[];for(let t=0;t<A.length;++t)for(let r=t+1;r<A.length;++r){let i=Moe(A[t],A[r]);for(let u of i)u.parentIndex=[t,r],e.push(u)}return e}function SBA(A,e){return A*A*Math.acos(1-e/A)-(A-e)*Math.sqrt(e*(2*A-e))}function Fl(A,e){return Math.sqrt((A.x-e.x)*(A.x-e.x)+(A.y-e.y)*(A.y-e.y))}function MBA(A,e,t){if(t>=A+e)return 0;if(t<=Math.abs(A-e))return Math.PI*Math.min(A,e)*Math.min(A,e);let r=A-(t*t-e*e+A*A)/(2*t),i=e-(t*t-A*A+e*e)/(2*t);return SBA(A,r)+SBA(e,i)}function Moe(A,e){let t=Fl(A,e),r=A.radius,i=e.radius;if(t>=r+i||t<=Math.abs(r-i))return[];let u=(r*r-i*i+t*t)/(2*t),a=Math.sqrt(r*r-u*u),n=A.x+u*(e.x-A.x)/t,o=A.y+u*(e.y-A.y)/t,s=-(e.y-A.y)*(a/t),l=-(e.x-A.x)*(a/t);return[{x:n+s,y:o-l},{x:n-s,y:o+l}]}function Toe(A){let e={x:0,y:0};for(let t of A)e.x+=t.x,e.y+=t.y;return e.x/=A.length,e.y/=A.length,e}function pHt(A,e,t,r){r=r||{};let i=r.maxIterations||100,u=r.tolerance||0.0000000001,a=A(e),n=A(t),o=t-e;if(a*n>0)throw"Initial bisect points must have opposite signs";if(a===0)return e;if(n===0)return t;for(let s=0;s<i;++s){o/=2;let l=e+o,g=A(l);if(g*a>=0)e=l;if(Math.abs(o)<u||g===0)return l}return e+o}function LBA(A){let e=Array(A);for(let t=0;t<A;++t)e[t]=0;return e}function Goe(A,e){return LBA(A).map(()=>LBA(e))}function F6(A,e){let t=0;for(let r=0;r<A.length;++r)t+=A[r]*e[r];return t}function RBA(A){return Math.sqrt(F6(A,A))}function NBA(A,e,t){for(let r=0;r<e.length;++r)A[r]=e[r]*t}function Bh(A,e,t,r,i){for(let u=0;u<A.length;++u)A[u]=e*t[u]+r*i[u]}function Yoe(A,e,t){t=t||{};let r=t.maxIterations||e.length*200,i=t.nonZeroDelta||1.05,u=t.zeroDelta||0.001,a=t.minErrorDelta||0.000001,n=t.minErrorDelta||0.00001,o=t.rho!==void 0?t.rho:1,s=t.chi!==void 0?t.chi:2,l=t.psi!==void 0?t.psi:-0.5,g=t.sigma!==void 0?t.sigma:0.5,C,B=e.length,E=Array(B+1);E[0]=e,E[0].fx=A(e),E[0].id=0;for(let f=0;f<B;++f){let D=e.slice();D[f]=D[f]?D[f]*i:u,E[f+1]=D,E[f+1].fx=A(D),E[f+1].id=f+1}function d(f){for(let D=0;D<f.length;D++)E[B][D]=f[D];E[B].fx=f.fx}let I=(f,D)=>f.fx-D.fx,h=e.slice(),Q=e.slice(),p=e.slice(),m=e.slice();for(let f=0;f<r;++f){if(E.sort(I),t.history){let w=E.map((b)=>{let k=b.slice();return k.fx=b.fx,k.id=b.id,k});w.sort((b,k)=>b.id-k.id),t.history.push({x:E[0].slice(),fx:E[0].fx,simplex:w})}C=0;for(let w=0;w<B;++w)C=Math.max(C,Math.abs(E[0][w]-E[1][w]));if(Math.abs(E[0].fx-E[B].fx)<a&&C<n)break;for(let w=0;w<B;++w){h[w]=0;for(let b=0;b<B;++b)h[w]+=E[b][w];h[w]/=B}let D=E[B];if(Bh(Q,1+o,h,-o,D),Q.fx=A(Q),Q.fx<E[0].fx)if(Bh(m,1+s,h,-s,D),m.fx=A(m),m.fx<Q.fx)d(m);else d(Q);else if(Q.fx>=E[B-1].fx){let w=!1;if(Q.fx>D.fx)if(Bh(p,1+l,h,-l,D),p.fx=A(p),p.fx<D.fx)d(p);else w=!0;else if(Bh(p,1-l*o,h,l*o,D),p.fx=A(p),p.fx<Q.fx)d(p);else w=!0;if(w){if(g>=1)break;for(let b=1;b<E.length;++b)Bh(E[b],1-g,E[0],g,E[b]),E[b].fx=A(E[b])}}else d(Q)}return E.sort(I),{fx:E[0].fx,x:E[0]}}function fHt(A,e,t,r,i,u,a){let n=t.fx,o=F6(t.fxprime,e),s=n,l=n,g=o,C=0;i=i||1,u=u||0.000001,a=a||0.1;function B(E,d,I){for(let h=0;h<16;++h)if(i=(E+d)/2,Bh(r.x,1,t.x,i,e),s=r.fx=A(r.x,r.fxprime),g=F6(r.fxprime,e),s>n+u*i*o||s>=I)d=i;else{if(Math.abs(g)<=-a*o)return i;if(g*(d-E)>=0)d=E;E=i,I=s}return 0}for(let E=0;E<10;++E){if(Bh(r.x,1,t.x,i,e),s=r.fx=A(r.x,r.fxprime),g=F6(r.fxprime,e),s>n+u*i*o||E&&s>=l)return B(C,i,l);if(Math.abs(g)<=-a*o)return i;if(g>=0)return B(i,C,s);l=s,C=i,i*=2}return i}function mHt(A,e,t){let r={x:e.slice(),fx:0,fxprime:e.slice()},i={x:e.slice(),fx:0,fxprime:e.slice()},u=e.slice(),a,n,o=1,s;t=t||{},s=t.maxIterations||e.length*20,r.fx=A(r.x,r.fxprime),a=r.fxprime.slice(),NBA(a,r.fxprime,-1);for(let l=0;l<s;++l){if(o=fHt(A,a,r,i,o),t.history)t.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:o});if(!o)NBA(a,r.fxprime,-1);else{Bh(u,1,i.fxprime,-1,r.fxprime);let g=F6(r.fxprime,r.fxprime),C=Math.max(0,F6(u,i.fxprime)/g);Bh(a,C,a,-1,i.fxprime),n=r,r=i,i=n}if(RBA(r.fxprime)<=0.00001)break}if(t.history)t.history.push({x:r.x.slice(),fx:r.fx,fxprime:r.fxprime.slice(),alpha:o});return r}function Hoe(A,e={}){e.maxIterations=e.maxIterations||500;let t=e.initialLayout||bHt,r=e.lossFunction||x6,i=DHt(A,e),u=t(i,e),a=Object.keys(u),n=[];for(let l of a)n.push(u[l].x),n.push(u[l].y);let s=Yoe((l)=>{let g={};for(let C=0;C<a.length;++C){let B=a[C];g[B]={x:l[2*C],y:l[2*C+1],radius:u[B].radius}}return r(g,i)},n,e).x;for(let l=0;l<a.length;++l){let g=a[l];u[g].x=s[2*l],u[g].y=s[2*l+1]}return u}function GBA(A,e,t){if(Math.min(A,e)*Math.min(A,e)*Math.PI<=t+Koe)return Math.abs(A-e);return pHt((r)=>MBA(A,e,r)-t,0,A+e)}function DHt(A,e={}){let t=e.distinct,r=A.map((n)=>Object.assign({},n));function i(n){return n.join(";")}if(t){let n=new Map;for(let o of r)for(let s=0;s<o.sets.length;s++){let l=String(o.sets[s]);n.set(l,o.size+(n.get(l)||0));for(let g=s+1;g<o.sets.length;g++){let C=String(o.sets[g]),B=`${l};${C}`,E=`${C};${l}`;n.set(B,o.size+(n.get(B)||0)),n.set(E,o.size+(n.get(E)||0))}}for(let o of r)if(o.sets.length<3)o.size=n.get(i(o.sets))}let u=[],a=new Set;for(let n of r)if(n.sets.length===1)u.push(n.sets[0]);else if(n.sets.length===2){let o=n.sets[0],s=n.sets[1];a.add(i(n.sets)),a.add(i([s,o]))}u.sort((n,o)=>n===o?0:n<o?-1:1);for(let n=0;n<u.length;++n){let o=u[n];for(let s=n+1;s<u.length;++s){let l=u[s];if(!a.has(i([o,l])))r.push({sets:[o,l],size:0})}}return r}function yHt(A,e,t){let r=Goe(e.length,e.length),i=Goe(e.length,e.length);return A.filter((u)=>u.sets.length===2).forEach((u)=>{let a=t[u.sets[0]],n=t[u.sets[1]],o=Math.sqrt(e[a].size/Math.PI),s=Math.sqrt(e[n].size/Math.PI),l=GBA(o,s,u.size);r[a][n]=r[n][a]=l;let g=0;if(u.size+0.0000000001>=Math.min(e[a].size,e[n].size))g=1;else if(u.size<=0.0000000001)g=-1;i[a][n]=i[n][a]=g}),{distances:r,constraints:i}}function wHt(A,e,t,r){for(let u=0;u<e.length;++u)e[u]=0;let i=0;for(let u=0;u<t.length;++u){let a=A[2*u],n=A[2*u+1];for(let o=u+1;o<t.length;++o){let s=A[2*o],l=A[2*o+1],g=t[u][o],C=r[u][o],B=(s-a)*(s-a)+(l-n)*(l-n),E=Math.sqrt(B),d=B-g*g;if(C>0&&E<=g||C<0&&E>=g)continue;i+=2*d*d,e[2*u]+=4*d*(a-s),e[2*u+1]+=4*d*(n-l),e[2*o]+=4*d*(s-a),e[2*o+1]+=4*d*(l-n)}}return i}function bHt(A,e={}){let t=kHt(A,e),r=e.lossFunction||x6;if(A.length>=8){let i=vHt(A,e),u=r(i,A),a=r(t,A);if(u+0.00000001<a)t=i}return t}function vHt(A,e={}){let t=e.restarts||10,r=[],i={};for(let C of A)if(C.sets.length===1)i[C.sets[0]]=r.length,r.push(C);let{distances:u,constraints:a}=yHt(A,r,i),n=RBA(u.map(RBA))/u.length;u=u.map((C)=>C.map((B)=>B/n));let o=(C,B)=>wHt(C,B,u,a),s=null;for(let C=0;C<t;++C){let B=LBA(u.length*2).map(Math.random),E=mHt(o,B,e);if(!s||E.fx<s.fx)s=E}let l=s.x,g={};for(let C=0;C<r.length;++C){let B=r[C];g[B.sets[0]]={x:l[2*C]*n,y:l[2*C+1]*n,radius:Math.sqrt(B.size/Math.PI)}}if(e.history)for(let C of e.history)NBA(C.x,n);return g}function kHt(A,e){let t=e&&e.lossFunction?e.lossFunction:x6,r={},i={};for(let g of A)if(g.sets.length===1){let C=g.sets[0];r[C]={x:10000000000,y:10000000000,rowid:r.length,size:g.size,radius:Math.sqrt(g.size/Math.PI)},i[C]=[]}A=A.filter((g)=>g.sets.length===2);for(let g of A){let C=g.weight!=null?g.weight:1,B=g.sets[0],E=g.sets[1];if(g.size+Koe>=Math.min(r[B].size,r[E].size))C=0;i[B].push({set:E,size:g.size,weight:C}),i[E].push({set:B,size:g.size,weight:C})}let u=[];Object.keys(i).forEach((g)=>{let C=0;for(let B=0;B<i[g].length;++B)C+=i[g][B].size*i[g][B].weight;u.push({set:g,size:C})});function a(g,C){return C.size-g.size}u.sort(a);let n={};function o(g){return g.set in n}function s(g,C){r[C].x=g.x,r[C].y=g.y,n[C]=!0}s({x:0,y:0},u[0].set);for(let g=1;g<u.length;++g){let C=u[g].set,B=i[C].filter(o),E=r[C];if(B.sort(a),B.length===0)throw"ERROR: missing pairwise overlap information";let d=[];for(var l=0;l<B.length;++l){let Q=r[B[l].set],p=GBA(E.radius,Q.radius,B[l].size);d.push({x:Q.x+p,y:Q.y}),d.push({x:Q.x-p,y:Q.y}),d.push({y:Q.y+p,x:Q.x}),d.push({y:Q.y-p,x:Q.x});for(let m=l+1;m<B.length;++m){let f=r[B[m].set],D=GBA(E.radius,f.radius,B[m].size),w=Moe({x:Q.x,y:Q.y,radius:p},{x:f.x,y:f.y,radius:D});d.push(...w)}}let I=100000000000000000000000000000000000000000000000000,h=d[0];for(let Q of d){r[C].x=Q.x,r[C].y=Q.y;let p=t(r,A);if(p<I)I=p,h=Q}s(h,C)}return r}function x6(A,e){let t=0;for(let r of e){if(r.sets.length===1)continue;let i;if(r.sets.length===2){let a=A[r.sets[0]],n=A[r.sets[1]];i=MBA(a.radius,n.radius,Fl(a,n))}else i=$O(r.sets.map((a)=>A[a]));let u=r.weight!=null?r.weight:1;t+=u*(i-r.size)*(i-r.size)}return t}function Joe(A,e){let t=0;for(let r of e){if(r.sets.length===1)continue;let i;if(r.sets.length===2){let n=A[r.sets[0]],o=A[r.sets[1]];i=MBA(n.radius,o.radius,Fl(n,o))}else i=$O(r.sets.map((n)=>A[n]));let u=r.weight!=null?r.weight:1,a=Math.log((i+1)/(r.size+1));t+=u*a*a}return t}function FHt(A,e,t){if(t==null)A.sort((i,u)=>u.radius-i.radius);else A.sort(t);if(A.length>0){let i=A[0].x,u=A[0].y;for(let a of A)a.x-=i,a.y-=u}if(A.length===2){if(Fl(A[0],A[1])<Math.abs(A[1].radius-A[0].radius))A[1].x=A[0].x+A[0].radius-A[1].radius-0.0000000001,A[1].y=A[0].y}if(A.length>1){let i=Math.atan2(A[1].x,A[1].y)-e,u=Math.cos(i),a=Math.sin(i);for(let n of A){let{x:o,y:s}=n;n.x=u*o-a*s,n.y=a*o+u*s}}if(A.length>2){let i=Math.atan2(A[2].x,A[2].y)-e;while(i<0)i+=2*Math.PI;while(i>2*Math.PI)i-=2*Math.PI;if(i>Math.PI){let u=A[1].y/(0.0000000001+A[1].x);for(let a of A){var r=(a.x+u*a.y)/(1+u*u);a.x=2*r-a.x,a.y=2*r*u-a.y}}}}function xHt(A){A.forEach((i)=>{i.parent=i});function e(i){if(i.parent!==i)i.parent=e(i.parent);return i.parent}function t(i,u){let a=e(i),n=e(u);a.parent=n}for(let i=0;i<A.length;++i)for(let u=i+1;u<A.length;++u){let a=A[i].radius+A[u].radius;if(Fl(A[i],A[u])+0.0000000001<a)t(A[u],A[i])}let r=new Map;for(let i=0;i<A.length;++i){let u=e(A[i]).parent.setid;if(!r.has(u))r.set(u,[]);r.get(u).push(A[i])}return A.forEach((i)=>{delete i.parent}),Array.from(r.values())}function UBA(A){let e=(t)=>{let r=A.reduce((u,a)=>Math.max(u,a[t]+a.radius),Number.NEGATIVE_INFINITY),i=A.reduce((u,a)=>Math.min(u,a[t]-a.radius),Number.POSITIVE_INFINITY);return{max:r,min:i}};return{xRange:e("x"),yRange:e("y")}}function Ooe(A,e,t){if(e==null)e=Math.PI/2;let r=Woe(A).map((s)=>Object.assign({},s)),i=xHt(r);for(let s of i){FHt(s,e,t);let l=UBA(s);s.size=(l.xRange.max-l.xRange.min)*(l.yRange.max-l.yRange.min),s.bounds=l}i.sort((s,l)=>l.size-s.size),r=i[0];let u=r.bounds,a=(u.xRange.max-u.xRange.min)/50;function n(s,l,g){if(!s)return;let C=s.bounds,B,E;if(l)B=u.xRange.max-C.xRange.min+a;else{B=u.xRange.max-C.xRange.max;let d=(C.xRange.max-C.xRange.min)/2-(u.xRange.max-u.xRange.min)/2;if(d<0)B+=d}if(g)E=u.yRange.max-C.yRange.min+a;else{E=u.yRange.max-C.yRange.max;let d=(C.yRange.max-C.yRange.min)/2-(u.yRange.max-u.yRange.min)/2;if(d<0)E+=d}for(let d of s)d.x+=B,d.y+=E,r.push(d)}let o=1;while(o<i.length)n(i[o],!0,!1),n(i[o+1],!1,!0),n(i[o+2],!0,!0),o+=3,u=UBA(r);return _oe(r)}function Poe(A,e,t,r,i){let u=Woe(A);e-=2*r,t-=2*r;let{xRange:a,yRange:n}=UBA(u);if(a.max===a.min||n.max===n.min)return console.log("not scaling solution: zero size detected"),A;let o,s;if(i){let B=Math.sqrt(i/Math.PI)*2;o=e/B,s=t/B}else o=e/(a.max-a.min),s=t/(n.max-n.min);let l=Math.min(s,o),g=(e-(a.max-a.min)*l)/2,C=(t-(n.max-n.min)*l)/2;return _oe(u.map((B)=>({radius:l*B.radius,x:r+g+(B.x-a.min)*l,y:r+C+(B.y-n.min)*l,setid:B.setid})))}function _oe(A){let e={};for(let t of A)e[t.setid]=t;return e}function Woe(A){return Object.keys(A).map((t)=>Object.assign(A[t],{setid:t}))}function qoe(A={}){let e=!1,t=600,r=350,i=15,u=1000,a=Math.PI/2,n=!0,o=null,s=!0,l=!0,g=null,C=null,B=!1,E=null,d=A&&A.symmetricalTextCentre?A.symmetricalTextCentre:!1,I={},h=A&&A.colourScheme?A.colourScheme:A&&A.colorScheme?A.colorScheme:["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],Q=0,p=function(w){if(w in I)return I[w];var b=I[w]=h[Q];if(Q+=1,Q>=h.length)Q=0;return b},m=Hoe,f=x6;function D(w){let b=w.datum(),k=new Set;b.forEach((W)=>{if(W.size==0&&W.sets.length==1)k.add(W.sets[0])}),b=b.filter((W)=>!W.sets.some((CA)=>k.has(CA)));let v={},S={};if(b.length>0){let W=m(b,{lossFunction:f,distinct:B});if(n)W=Ooe(W,a,C);v=Poe(W,t,r,i,o),S=Zoe(v,b,d)}let x={};b.forEach((W)=>{if(W.label)x[W.sets]=W.label});function F(W){if(W.sets in x)return x[W.sets];if(W.sets.length==1)return""+W.sets[0]}w.selectAll("svg").data([v]).enter().append("svg");let T=w.select("svg");if(e)T.attr("viewBox",`0 0 ${t} ${r}`);else T.attr("width",t).attr("height",r);let R={},L=!1;T.selectAll(".venn-area path").each(function(W){let CA=this.getAttribute("d");if(W.sets.length==1&&CA&&!B)L=!0,R[W.sets[0]]=RHt(CA)});function M(W){return(CA)=>{let tA=W.sets.map((lA)=>{let gA=R[lA],aA=v[lA];if(!gA)gA={x:t/2,y:r/2,radius:1};if(!aA)aA={x:t/2,y:r/2,radius:1};return{x:gA.x*(1-CA)+aA.x*CA,y:gA.y*(1-CA)+aA.y*CA,radius:gA.radius*(1-CA)+aA.radius*CA}});return Uoe(tA,E)}}let U=T.selectAll(".venn-area").data(b,(W)=>W.sets),Y=U.enter().append("g").attr("class",(W)=>`venn-area venn-${W.sets.length==1?"circle":"intersection"}${W.colour||W.color?" venn-coloured":""}`).attr("data-venn-sets",(W)=>W.sets.join("_")),H=Y.append("path"),J=Y.append("text").attr("class","label").text((W)=>F(W)).attr("text-anchor","middle").attr("dy",".35em").attr("x",t/2).attr("y",r/2);if(l)H.style("fill-opacity","0").filter((W)=>W.sets.length==1).style("fill",(W)=>W.colour?W.colour:W.color?W.color:p(W.sets)).style("fill-opacity",".25"),J.style("fill",(W)=>{if(W.colour||W.color)return"#FFF";if(A.textFill)return A.textFill;return W.sets.length==1?p(W.sets):"#444"});function K(W){if(typeof W.transition==="function")return W.transition("venn").duration(u);return W}let O=w;if(L&&typeof O.transition==="function")O=K(w),O.selectAll("path").attrTween("d",M);else O.selectAll("path").attr("d",(W)=>Uoe(W.sets.map((CA)=>v[CA])),E);let P=O.selectAll("text").filter((W)=>(W.sets in S)).text((W)=>F(W)).attr("x",(W)=>Math.floor(S[W.sets].x)).attr("y",(W)=>Math.floor(S[W.sets].y));if(s)if(L)if("on"in P)P.on("end",FBA(v,F));else P.each("end",FBA(v,F));else P.each(FBA(v,F));let z=K(U.exit()).remove();if(typeof U.transition==="function")z.selectAll("path").attrTween("d",M);let AA=z.selectAll("text").attr("x",t/2).attr("y",r/2);if(g!==null)J.style("font-size","0px"),P.style("font-size",g),AA.style("font-size","0px");return{circles:v,textCentres:S,nodes:U,enter:Y,update:O,exit:z}}return D.wrap=function(w){if(!arguments.length)return s;return s=w,D},D.useViewBox=function(){return e=!0,D},D.width=function(w){if(!arguments.length)return t;return t=w,D},D.height=function(w){if(!arguments.length)return r;return r=w,D},D.padding=function(w){if(!arguments.length)return i;return i=w,D},D.distinct=function(w){if(!arguments.length)return B;return B=w,D},D.colours=function(w){if(!arguments.length)return p;return p=w,D},D.colors=function(w){if(!arguments.length)return p;return p=w,D},D.fontSize=function(w){if(!arguments.length)return g;return g=w,D},D.round=function(w){if(!arguments.length)return E;return E=w,D},D.duration=function(w){if(!arguments.length)return u;return u=w,D},D.layoutFunction=function(w){if(!arguments.length)return m;return m=w,D},D.normalize=function(w){if(!arguments.length)return n;return n=w,D},D.scaleToFit=function(w){if(!arguments.length)return o;return o=w,D},D.styled=function(w){if(!arguments.length)return l;return l=w,D},D.orientation=function(w){if(!arguments.length)return a;return a=w,D},D.orientationOrder=function(w){if(!arguments.length)return C;return C=w,D},D.lossFunction=function(w){if(!arguments.length)return f;return f=w==="default"?x6:w==="logRatio"?Joe:w,D},D}function FBA(A,e){return function(t){let r=this,i=A[t.sets[0]].radius||50,u=e(t)||"",a=u.split(/\s+/).reverse(),n=3,o=(u.length+a.length)/3,s=a.pop(),l=[s],g=0,C=1.1;r.textContent=null;let B=[];function E(p){let m=r.ownerDocument.createElementNS(r.namespaceURI,"tspan");return m.textContent=p,B.push(m),r.append(m),m}let d=E(s);while(!0){if(s=a.pop(),!s)break;l.push(s);let p=l.join(" ");if(d.textContent=p,p.length>o&&d.getComputedTextLength()>i)l.pop(),d.textContent=l.join(" "),l=[s],d=E(s),g++}let I=0.35-g*C/2,h=r.getAttribute("x"),Q=r.getAttribute("y");B.forEach((p,m)=>{p.setAttribute("x",h),p.setAttribute("y",Q),p.setAttribute("dy",`${I+m*C}em`)})}}function xBA(A,e,t){let r=e[0].radius-Fl(e[0],A);for(let i=1;i<e.length;++i){let u=e[i].radius-Fl(e[i],A);if(u<=r)r=u}for(let i=0;i<t.length;++i){let u=Fl(t[i],A)-t[i].radius;if(u<=r)r=u}return r}function zoe(A,e,t){let r=[];for(let l of A)r.push({x:l.x,y:l.y}),r.push({x:l.x+l.radius/2,y:l.y}),r.push({x:l.x-l.radius/2,y:l.y}),r.push({x:l.x,y:l.y+l.radius/2}),r.push({x:l.x,y:l.y-l.radius/2});let i=r[0],u=xBA(r[0],A,e);for(let l=1;l<r.length;++l){let g=xBA(r[l],A,e);if(g>=u)i=r[l],u=g}let a=Yoe((l)=>-1*xBA({x:l[0],y:l[1]},A,e),[i.x,i.y],{maxIterations:500,minErrorDelta:0.0000000001}).x,n={x:t?0:a[0],y:a[1]},o=!0;for(let l of A)if(Fl(n,l)>l.radius){o=!1;break}for(let l of e)if(Fl(n,l)<l.radius){o=!1;break}if(o)return n;if(A.length==1)return{x:A[0].x,y:A[0].y};let s={};if($O(A,s),s.arcs.length===0)return{x:0,y:-1000,disjoint:!0};if(s.arcs.length==1)return{x:s.arcs[0].circle.x,y:s.arcs[0].circle.y};if(e.length)return zoe(A,[]);return Toe(s.arcs.map((l)=>l.p1))}function SHt(A){let e={},t=Object.keys(A);for(let r of t)e[r]=[];for(let r=0;r<t.length;r++){let i=t[r],u=A[i];for(let a=r+1;a<t.length;++a){let n=t[a],o=A[n],s=Fl(u,o);if(s+o.radius<=u.radius+0.0000000001)e[n].push(i);else if(s+u.radius<=o.radius+0.0000000001)e[i].push(n)}}return e}function Zoe(A,e,t){let r={},i=SHt(A);for(let u=0;u<e.length;++u){let a=e[u].sets,n={},o={};for(let C=0;C<a.length;++C){n[a[C]]=!0;let B=i[a[C]];for(let E=0;E<B.length;++E)o[B[E]]=!0}let s=[],l=[];for(let C in A)if(C in n)s.push(A[C]);else if(!(C in o))l.push(A[C]);let g=zoe(s,l,t);if(r[a]=g,g.disjoint&&e[u].size>0)console.log("WARNING: area "+a+" not represented on screen")}return r}function LHt(A,e,t){let r=[];return r.push(`
M`,A,e),r.push(`
m`,-t,0),r.push(`
a`,t,t,0,1,0,t*2,0),r.push(`
a`,t,t,0,1,0,-t*2,0),r.join(" ")}function RHt(A){let e=A.split(" ");return{x:Number.parseFloat(e[1]),y:Number.parseFloat(e[2]),radius:-Number.parseFloat(e[4])}}function Voe(A){if(A.length===0)return[];let e={};return $O(A,e),e.arcs}function joe(A,e){if(A.length===0)return"M 0 0";let t=Math.pow(10,e||0),r=e!=null?(u)=>Math.round(u*t)/t:(u)=>u;if(A.length==1){let u=A[0].circle;return LHt(r(u.x),r(u.y),r(u.radius))}let i=[`
M`,r(A[0].p2.x),r(A[0].p2.y)];for(let u of A){let a=r(u.circle.radius);i.push(`
A`,a,a,0,u.large?1:0,u.sweep?1:0,r(u.p1.x),r(u.p1.y))}return i.join(" ")}function Uoe(A,e){return joe(Voe(A),e)}function Xoe(A,e={}){let{lossFunction:t,layoutFunction:r=Hoe,normalize:i=!0,orientation:u=Math.PI/2,orientationOrder:a,width:n=600,height:o=350,padding:s=15,scaleToFit:l=!1,symmetricalTextCentre:g=!1,distinct:C,round:B=2}=e,E=r(A,{lossFunction:t==="default"||!t?x6:t==="logRatio"?Joe:t,distinct:C});if(i)E=Ooe(E,u,a);let d=Poe(E,n,o,s,l),I=Zoe(d,A,g),h=new Map(Object.keys(d).map((m)=>[m,{set:m,x:d[m].x,y:d[m].y,radius:d[m].radius}])),Q=A.map((m)=>{let f=m.sets.map((b)=>h.get(b)),D=Voe(f),w=joe(D,B);return{circles:f,arcs:D,path:w,area:m,has:new Set(m.sets)}});function p(m){let f="";for(let D of Q)if(D.has.size>m.length&&m.every((w)=>D.has.has(w)))f+=" "+D.path;return f}return Q.map(({circles:m,arcs:f,path:D,area:w})=>({data:w,text:I[w.sets],circles:m,arcs:f,path:D,distinctPath:D+p(w.sets)}))}var Koe=0.0000000001;var $oe=()=>{};function A0e(){return si(qHt,ot().venn)}function e0e(A){let e=new Map;for(let t of A){let r=t.targets.join("|"),i=e.get(r);if(i)Object.assign(i,t.styles);else e.set(r,{...t.styles})}return e}function a1(A){return A.join("|")}function t0e(A,e,t,r,i,u){let a=A?.useDebugLayout??!1,o=t.select("svg").append("g").attr("class","venn-text-nodes"),s=new Map;for(let l of r){let g=a1(l.sets),C=s.get(g);if(C)C.push(l);else s.set(g,[l])}for(let[l,g]of s.entries()){let C=e.get(l);if(!C?.text)continue;let B=C.text.x,E=C.text.y,d=Math.min(...C.circles.map((T)=>T.radius)),I=Math.min(...C.circles.map((T)=>T.radius-Math.hypot(B-T.x,E-T.y))),h=Number.isFinite(I)?Math.max(0,I):0;if(h===0&&Number.isFinite(d))h=d*0.6;let Q=o.append("g").attr("class","venn-text-area").attr("font-size",`${40*i}px`);if(a)Q.append("circle").attr("class","venn-text-debug-circle").attr("cx",B).attr("cy",E).attr("r",h).attr("fill","none").attr("stroke","purple").attr("stroke-width",1.5*i).attr("stroke-dasharray",`${6*i} ${4*i}`);let p=Math.max(80*i,h*2*0.95),m=Math.max(60*i,h*2*0.95),w=(C.data.label&&C.data.label.length>0?Math.min(32*i,h*0.25):0)+(g.length<=2?30*i:0),b=B-p/2,k=E-m/2+w,v=Math.max(1,Math.ceil(Math.sqrt(g.length))),S=Math.max(1,Math.ceil(g.length/v)),x=p/v,F=m/S;for(let[T,R]of g.entries()){let L=T%v,M=Math.floor(T/v),U=b+x*(L+0.5),Y=k+F*(M+0.5);if(a)Q.append("rect").attr("class","venn-text-debug-cell").attr("x",b+x*L).attr("y",k+F*M).attr("width",x).attr("height",F).attr("fill","none").attr("stroke","teal").attr("stroke-width",1*i).attr("stroke-dasharray",`${4*i} ${3*i}`);let H=x*0.9,J=F*0.9,K=Q.append("foreignObject").attr("class","venn-text-node-fo").attr("width",H).attr("height",J).attr("x",U-H/2).attr("y",Y-J/2).attr("overflow","visible"),O=u.get(R.id)?.color,P=K.append("xhtml:span").attr("class","venn-text-node").style("display","flex").style("width","100%").style("height","100%").style("white-space","normal").style("align-items","center").style("justify-content","center").style("text-align","center").style("overflow-wrap","normal").style("word-break","normal").text(R.label??R.id);if(O)P.style("color",O)}}}function r0e(A){let e=new Set(A.map((i)=>[...i.sets].sort().join("|"))),t=new Map(A.filter((i)=>i.sets.length===1&&i.size!==void 0).map((i)=>[i.sets[0],i.size])),r=[];for(let i of A){if(i.sets.length<3)continue;let u=[...i.sets].sort();for(let a=0;a<u.length-1;a++)for(let n=a+1;n<u.length;n++){let o=[u[a],u[n]],s=o.join("|");if(!e.has(s)){e.add(s);let l=t.get(o[0]),g=t.get(o[1]),C=l!==void 0&&g!==void 0?Math.min(l,g)/4:2.5;r.push({sets:o,size:C,label:""})}}}return r.length>0?[...A,...r]:A}var TBA,GHt,YBA,HBA,KBA,JBA,OBA,PBA=!1,UHt,MHt,I7,THt,YHt,HHt,KHt,AP,JHt,OHt,PHt,_Ht,WHt,qHt,zHt,ZHt,VHt,jHt,XHt,$Ht,i0e;var u0e=_(()=>{cn();ai();rr();ir();Nt();Pr();vn();$oe();Kt();TBA=function(){var A=y(function(Q,p,m,f){for(m=m||{},f=Q.length;f--;m[Q[f]]=p);return m},"o"),e=[5,8],t=[7,8,11,12,17,19,22,24],r=[1,17],i=[1,18],u=[7,8,11,12,14,15,16,17,19,20,21,22,24,27],a=[1,31],n=[1,39],o=[7,8,11,12,17,19,22,24,27],s=[1,57],l=[1,56],g=[1,58],C=[1,59],B=[1,60],E=[7,8,11,12,16,17,19,20,22,24,27,31,32,33],d={trace:y(function(){},"trace"),yy:{},symbols_:{error:2,start:3,optNewlines:4,VENN:5,document:6,EOF:7,NEWLINE:8,line:9,statement:10,TITLE:11,SET:12,identifier:13,BRACKET_LABEL:14,COLON:15,NUMERIC:16,UNION:17,identifierList:18,TEXT:19,IDENTIFIER:20,STRING:21,INDENT_TEXT:22,indentedTextTail:23,STYLE:24,stylesOpt:25,styleField:26,COMMA:27,styleValue:28,valueTokens:29,valueToken:30,HEXCOLOR:31,RGBCOLOR:32,RGBACOLOR:33,$accept:0,$end:1},terminals_:{2:"error",5:"VENN",7:"EOF",8:"NEWLINE",11:"TITLE",12:"SET",14:"BRACKET_LABEL",15:"COLON",16:"NUMERIC",17:"UNION",19:"TEXT",20:"IDENTIFIER",21:"STRING",22:"INDENT_TEXT",24:"STYLE",27:"COMMA",31:"HEXCOLOR",32:"RGBCOLOR",33:"RGBACOLOR"},productions_:[0,[3,4],[4,0],[4,2],[6,0],[6,2],[9,1],[9,1],[10,1],[10,2],[10,3],[10,4],[10,5],[10,2],[10,3],[10,4],[10,5],[10,3],[10,3],[10,3],[10,4],[10,4],[10,2],[10,3],[23,1],[23,1],[23,1],[23,2],[23,2],[25,1],[25,3],[26,3],[28,1],[28,1],[29,1],[29,2],[30,1],[30,1],[30,1],[30,1],[30,1],[18,1],[18,3],[13,1],[13,1]],performAction:y(function(p,m,f,D,w,b,k){var v=b.length-1;switch(w){case 1:return b[v-1];case 2:case 3:case 4:this.$=[];break;case 5:b[v-1].push(b[v]),this.$=b[v-1];break;case 6:this.$=[];break;case 7:case 22:case 32:case 36:case 37:case 38:case 39:case 40:this.$=b[v];break;case 8:D.setDiagramTitle(b[v].substr(6)),this.$=b[v].substr(6);break;case 9:if(D.addSubsetData([b[v]],void 0,void 0),D.setIndentMode)D.setIndentMode(!0);break;case 10:if(D.addSubsetData([b[v-1]],b[v],void 0),D.setIndentMode)D.setIndentMode(!0);break;case 11:if(D.addSubsetData([b[v-2]],void 0,parseFloat(b[v])),D.setIndentMode)D.setIndentMode(!0);break;case 12:if(D.addSubsetData([b[v-3]],b[v-2],parseFloat(b[v])),D.setIndentMode)D.setIndentMode(!0);break;case 13:if(b[v].length<2)throw Error("union requires multiple identifiers");if(D.validateUnionIdentifiers)D.validateUnionIdentifiers(b[v]);if(D.addSubsetData(b[v],void 0,void 0),D.setIndentMode)D.setIndentMode(!0);break;case 14:if(b[v-1].length<2)throw Error("union requires multiple identifiers");if(D.validateUnionIdentifiers)D.validateUnionIdentifiers(b[v-1]);if(D.addSubsetData(b[v-1],b[v],void 0),D.setIndentMode)D.setIndentMode(!0);break;case 15:if(b[v-2].length<2)throw Error("union requires multiple identifiers");if(D.validateUnionIdentifiers)D.validateUnionIdentifiers(b[v-2]);if(D.addSubsetData(b[v-2],void 0,parseFloat(b[v])),D.setIndentMode)D.setIndentMode(!0);break;case 16:if(b[v-3].length<2)throw Error("union requires multiple identifiers");if(D.validateUnionIdentifiers)D.validateUnionIdentifiers(b[v-3]);if(D.addSubsetData(b[v-3],b[v-2],parseFloat(b[v])),D.setIndentMode)D.setIndentMode(!0);break;case 17:case 18:case 19:D.addTextData(b[v-1],b[v],void 0);break;case 20:case 21:D.addTextData(b[v-2],b[v-1],b[v]);break;case 23:D.addStyleData(b[v-1],b[v]);break;case 24:case 25:case 26:var S=D.getCurrentSets();if(!S)throw Error("text requires set");D.addTextData(S,b[v],void 0);break;case 27:case 28:var S=D.getCurrentSets();if(!S)throw Error("text requires set");D.addTextData(S,b[v-1],b[v]);break;case 29:case 41:this.$=[b[v]];break;case 30:case 42:this.$=[...b[v-2],b[v]];break;case 31:this.$=[b[v-2],b[v]];break;case 33:this.$=b[v].join(" ");break;case 34:this.$=[b[v]];break;case 35:b[v-1].push(b[v]),this.$=b[v-1];break;case 43:case 44:this.$=b[v];break}},"anonymous"),table:[A(e,[2,2],{3:1,4:2}),{1:[3]},{5:[1,3],8:[1,4]},A(t,[2,4],{6:5}),A(e,[2,3]),{7:[1,6],8:[1,8],9:7,10:9,11:[1,10],12:[1,11],17:[1,12],19:[1,13],22:[1,14],24:[1,15]},{1:[2,1]},A(t,[2,5]),A(t,[2,6]),A(t,[2,7]),A(t,[2,8]),{13:16,20:r,21:i},{13:20,18:19,20:r,21:i},{13:20,18:21,20:r,21:i},{16:[1,25],20:[1,23],21:[1,24],23:22},{13:20,18:26,20:r,21:i},A(t,[2,9],{14:[1,27],15:[1,28]}),A(u,[2,43]),A(u,[2,44]),A(t,[2,13],{14:[1,29],15:[1,30],27:a}),A(u,[2,41]),{16:[1,34],20:[1,32],21:[1,33],27:a},A(t,[2,22]),A(t,[2,24],{14:[1,35]}),A(t,[2,25],{14:[1,36]}),A(t,[2,26]),{20:n,25:37,26:38,27:a},A(t,[2,10],{15:[1,40]}),{16:[1,41]},A(t,[2,14],{15:[1,42]}),{16:[1,43]},{13:44,20:r,21:i},A(t,[2,17],{14:[1,45]}),A(t,[2,18],{14:[1,46]}),A(t,[2,19]),A(t,[2,27]),A(t,[2,28]),A(t,[2,23],{27:[1,47]}),A(o,[2,29]),{15:[1,48]},{16:[1,49]},A(t,[2,11]),{16:[1,50]},A(t,[2,15]),A(u,[2,42]),A(t,[2,20]),A(t,[2,21]),{20:n,26:51},{16:s,20:l,21:[1,53],28:52,29:54,30:55,31:g,32:C,33:B},A(t,[2,12]),A(t,[2,16]),A(o,[2,30]),A(o,[2,31]),A(o,[2,32]),A(o,[2,33],{30:61,16:s,20:l,31:g,32:C,33:B}),A(E,[2,34]),A(E,[2,36]),A(E,[2,37]),A(E,[2,38]),A(E,[2,39]),A(E,[2,40]),A(E,[2,35])],defaultActions:{6:[2,1]},parseError:y(function(p,m){if(m.recoverable)this.trace(p);else{var f=Error(p);throw f.hash=m,f}},"parseError"),parse:y(function(p){var m=this,f=[0],D=[],w=[null],b=[],k=this.table,v="",S=0,x=0,F=0,T=2,R=1,L=b.slice.call(arguments,1),M=Object.create(this.lexer),U={yy:{}};for(var Y in this.yy)if(Object.prototype.hasOwnProperty.call(this.yy,Y))U.yy[Y]=this.yy[Y];if(M.setInput(p,U.yy),U.yy.lexer=M,U.yy.parser=this,typeof M.yylloc>"u")M.yylloc={};var H=M.yylloc;b.push(H);var J=M.options&&M.options.ranges;if(typeof U.yy.parseError==="function")this.parseError=U.yy.parseError;else this.parseError=Object.getPrototypeOf(this).parseError;function K(TA){f.length=f.length-2*TA,w.length=w.length-TA,b.length=b.length-TA}y(K,"popStack");function O(){var TA=D.pop()||M.lex()||R;if(typeof TA!=="number"){if(TA instanceof Array)D=TA,TA=D.pop();TA=m.symbols_[TA]||TA}return TA}y(O,"lex");var P,z,AA,W,CA,tA,lA={},gA,aA,NA,DA;while(!0){if(AA=f[f.length-1],this.defaultActions[AA])W=this.defaultActions[AA];else{if(P===null||typeof P>"u")P=O();W=k[AA]&&k[AA][P]}if(typeof W>"u"||!W.length||!W[0]){var KA="";DA=[];for(gA in k[AA])if(this.terminals_[gA]&&gA>T)DA.push("'"+this.terminals_[gA]+"'");if(M.showPosition)KA="Parse error on line "+(S+1)+`:
`+M.showPosition()+`
Expecting `+DA.join(", ")+", got '"+(this.terminals_[P]||P)+"'";else KA="Parse error on line "+(S+1)+": Unexpected "+(P==R?"end of input":"'"+(this.terminals_[P]||P)+"'");this.parseError(KA,{text:M.match,token:this.terminals_[P]||P,line:M.yylineno,loc:H,expected:DA})}if(W[0]instanceof Array&&W.length>1)throw Error("Parse Error: multiple actions possible at state: "+AA+", token: "+P);switch(W[0]){case 1:if(f.push(P),w.push(M.yytext),b.push(M.yylloc),f.push(W[1]),P=null,!z){if(x=M.yyleng,v=M.yytext,S=M.yylineno,H=M.yylloc,F>0)F--}else P=z,z=null;break;case 2:if(aA=this.productions_[W[1]][1],lA.$=w[w.length-aA],lA._$={first_line:b[b.length-(aA||1)].first_line,last_line:b[b.length-1].last_line,first_column:b[b.length-(aA||1)].first_column,last_column:b[b.length-1].last_column},J)lA._$.range=[b[b.length-(aA||1)].range[0],b[b.length-1].range[1]];if(tA=this.performAction.apply(lA,[v,x,S,U.yy,W[1],w,b].concat(L)),typeof tA<"u")return tA;if(aA)f=f.slice(0,-1*aA*2),w=w.slice(0,-1*aA),b=b.slice(0,-1*aA);f.push(this.productions_[W[1]][0]),w.push(lA.$),b.push(lA._$),NA=k[f[f.length-2]][f[f.length-1]],f.push(NA);break;case 3:return!0}}return!0},"parse")},I=function(){var Q={EOF:1,parseError:y(function(m,f){if(this.yy.parser)this.yy.parser.parseError(m,f);else throw Error(m)},"parseError"),setInput:y(function(p,m){if(this.yy=m||this.yy||{},this._input=p,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges)this.yylloc.range=[0,0];return this.offset=0,this},"setInput"),input:y(function(){var p=this._input[0];this.yytext+=p,this.yyleng++,this.offset++,this.match+=p,this.matched+=p;var m=p.match(/(?:\r\n?|\n).*/g);if(m)this.yylineno++,this.yylloc.last_line++;else this.yylloc.last_column++;if(this.options.ranges)this.yylloc.range[1]++;return this._input=this._input.slice(1),p},"input"),unput:y(function(p){var m=p.length,f=p.split(/(?:\r\n?|\n)/g);this._input=p+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-m),this.offset-=m;var D=this.match.split(/(?:\r\n?|\n)/g);if(this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1)this.yylineno-=f.length-1;var w=this.yylloc.range;if(this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===D.length?this.yylloc.first_column:0)+D[D.length-f.length].length-f[0].length:this.yylloc.first_column-m},this.options.ranges)this.yylloc.range=[w[0],w[0]+this.yyleng-m];return this.yyleng=this.yytext.length,this},"unput"),more:y(function(){return this._more=!0,this},"more"),reject:y(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},"reject"),less:y(function(p){this.unput(this.match.slice(p))},"less"),pastInput:y(function(){var p=this.matched.substr(0,this.matched.length-this.match.length);return(p.length>20?"...":"")+p.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:y(function(){var p=this.match;if(p.length<20)p+=this._input.substr(0,20-p.length);return(p.substr(0,20)+(p.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:y(function(){var p=this.pastInput(),m=Array(p.length+1).join("-");return p+this.upcomingInput()+`
`+m+"^"},"showPosition"),test_match:y(function(p,m){var f,D,w;if(this.options.backtrack_lexer){if(w={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges)w.yylloc.range=this.yylloc.range.slice(0)}if(D=p[0].match(/(?:\r\n?|\n).*/g),D)this.yylineno+=D.length;if(this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:D?D[D.length-1].length-D[D.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+p[0].length},this.yytext+=p[0],this.match+=p[0],this.matches=p,this.yyleng=this.yytext.length,this.options.ranges)this.yylloc.range=[this.offset,this.offset+=this.yyleng];if(this._more=!1,this._backtrack=!1,this._input=this._input.slice(p[0].length),this.matched+=p[0],f=this.performAction.call(this,this.yy,this,m,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input)this.done=!1;if(f)return f;else if(this._backtrack){for(var b in w)this[b]=w[b];return!1}return!1},"test_match"),next:y(function(){if(this.done)return this.EOF;if(!this._input)this.done=!0;var p,m,f,D;if(!this._more)this.yytext="",this.match="";var w=this._currentRules();for(var b=0;b<w.length;b++)if(f=this._input.match(this.rules[w[b]]),f&&(!m||f[0].length>m[0].length)){if(m=f,D=b,this.options.backtrack_lexer)if(p=this.test_match(f,w[b]),p!==!1)return p;else if(this._backtrack){m=!1;continue}else return!1;else if(!this.options.flex)break}if(m){if(p=this.test_match(m,w[D]),p!==!1)return p;return!1}if(this._input==="")return this.EOF;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:y(function(){var m=this.next();if(m)return m;else return this.lex()},"lex"),begin:y(function(m){this.conditionStack.push(m)},"begin"),popState:y(function(){var m=this.conditionStack.length-1;if(m>0)return this.conditionStack.pop();else return this.conditionStack[0]},"popState"),_currentRules:y(function(){if(this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1])return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;else return this.conditions.INITIAL.rules},"_currentRules"),topState:y(function(m){if(m=this.conditionStack.length-1-Math.abs(m||0),m>=0)return this.conditionStack[m];else return"INITIAL"},"topState"),pushState:y(function(m){this.begin(m)},"pushState"),stateStackSize:y(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:y(function(m,f,D,w){var b=w;switch(D){case 0:break;case 1:break;case 2:break;case 3:if(m.getIndentMode&&m.getIndentMode())return m.consumeIndentText=!0,this.begin("INITIAL"),22;break;case 4:break;case 5:if(m.setIndentMode)m.setIndentMode(!1);this.begin("INITIAL"),this.unput(f.yytext);break;case 6:return this.begin("bol"),8;break;case 7:break;case 8:break;case 9:return 7;case 10:return 11;case 11:return 5;case 12:return 12;case 13:return 17;case 14:if(m.consumeIndentText)m.consumeIndentText=!1;else return 19;break;case 15:return 24;case 16:return f.yytext=f.yytext.slice(2,-2),14;break;case 17:return f.yytext=f.yytext.slice(1,-1).trim(),14;break;case 18:return 16;case 19:return 31;case 20:return 33;case 21:return 32;case 22:return 20;case 23:return 21;case 24:return 27;case 25:return 15}},"anonymous"),rules:[/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[ \t]+(?=[\n\r]))/i,/^(?:[ \t]+(?=text\b))/i,/^(?:[ \t]+)/i,/^(?:[^ \t\n\r])/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[ \t]+)/i,/^(?:$)/i,/^(?:title\s[^#\n;]+)/i,/^(?:venn-beta\b)/i,/^(?:set\b)/i,/^(?:union\b)/i,/^(?:text\b)/i,/^(?:style\b)/i,/^(?:\["[^\"]*"\])/i,/^(?:\[[^\]\"]+\])/i,/^(?:[+-]?(\d+(\.\d+)?|\.\d+))/i,/^(?:#[0-9a-fA-F]{3,8})/i,/^(?:rgba\(\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*\))/i,/^(?:rgb\(\s*[0-9.]+\s*[,]\s*[0-9.]+\s*[,]\s*[0-9.]+\s*\))/i,/^(?:[A-Za-z_][A-Za-z0-9\-_]*)/i,/^(?:"[^\"]*")/i,/^(?:,)/i,/^(?::)/i],conditions:{bol:{rules:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],inclusive:!0},INITIAL:{rules:[0,1,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],inclusive:!0}}};return Q}();d.lexer=I;function h(){this.yy={}}return y(h,"Parser"),h.prototype=d,d.Parser=h,new h}();TBA.parser=TBA;GHt=TBA,YBA=[],HBA=[],KBA=[],JBA=new Set,UHt=y((A,e,t)=>{let r=AP(A).sort(),i=t??10/Math.pow(A.length,2);if(OBA=r,r.length===1)JBA.add(r[0]);YBA.push({sets:r,size:i,label:e?I7(e):void 0})},"addSubsetData"),MHt=y(()=>YBA,"getSubsetData"),I7=y((A)=>{let e=A.trim();if(e.length>=2&&e.startsWith('"')&&e.endsWith('"'))return e.slice(1,-1);return e},"normalizeText"),THt=y((A)=>A?I7(A):A,"normalizeStyleValue"),YHt=y((A,e,t)=>{let r=I7(e);HBA.push({sets:AP(A).sort(),id:r,label:t?I7(t):void 0})},"addTextData"),HHt=y((A,e)=>{let t=AP(A).sort(),r={};for(let[i,u]of e)r[i]=THt(u)??u;KBA.push({targets:t,styles:r})},"addStyleData"),KHt=y(()=>KBA,"getStyleData"),AP=y((A)=>A.map((e)=>I7(e)),"normalizeIdentifierList"),JHt=y((A)=>{let t=AP(A).filter((r)=>!JBA.has(r));if(t.length>0)throw Error(`unknown set identifier: ${t.join(", ")}`)},"validateUnionIdentifiers"),OHt=y(()=>HBA,"getTextData"),PHt=y(()=>OBA,"getCurrentSets"),_Ht=y(()=>PBA,"getIndentMode"),WHt=y((A)=>{PBA=A},"setIndentMode"),qHt=ur.venn;y(A0e,"getConfig");zHt=y(()=>{cr(),YBA.length=0,HBA.length=0,KBA.length=0,JBA.clear(),OBA=void 0,PBA=!1},"customClear"),ZHt={getConfig:A0e,clear:zHt,setAccTitle:Dr,getAccTitle:kr,setDiagramTitle:Tr,getDiagramTitle:Sr,getAccDescription:xr,setAccDescription:Fr,addSubsetData:UHt,getSubsetData:MHt,addTextData:YHt,addStyleData:HHt,validateUnionIdentifiers:JHt,getTextData:OHt,getStyleData:KHt,getCurrentSets:PHt,getIndentMode:_Ht,setIndentMode:WHt},VHt=y((A)=>`
.venn-title {
font-size: 32px;
fill: ${A.vennTitleTextColor};
font-family: ${A.fontFamily};
}
.venn-circle text {
font-size: 48px;
font-family: ${A.fontFamily};
}
.venn-intersection text {
font-size: 48px;
fill: ${A.vennSetTextColor};
font-family: ${A.fontFamily};
}
.venn-text-node {
font-family: ${A.fontFamily};
color: ${A.vennSetTextColor};
}
`,"getStyles"),jHt=VHt;y(e0e,"buildStyleByKey");XHt=y((A,e,t,r)=>{let i=r.db,u=i.getConfig?.(),{themeVariables:a,look:n,handDrawnSeed:o}=ot(),s=n==="handDrawn",l=[a.venn1,a.venn2,a.venn3,a.venn4,a.venn5,a.venn6,a.venn7,a.venn8].filter(Boolean),g=i.getDiagramTitle?.(),C=i.getSubsetData(),B=i.getTextData(),E=e0e(i.getStyleData()),d=r0e(C),I=u?.width??800,h=u?.height??450,Q=1600,p=I/1600,m=g?48*p:0,f=a.primaryTextColor??a.textColor,D=zi(e);if(D.attr("viewBox",`0 0 ${I} ${h}`),g)D.append("text").text(g).attr("class","venn-title").attr("font-size",`${32*p}px`).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("x","50%").attr("y",32*p).style("fill",a.vennTitleTextColor||a.titleColor);let w=Qe(document.createElement("div")),b=qoe().width(I).height(h-m);w.datum(d).call(b);let k=s?Ne.svg(w.select("svg").node()):void 0,v=Xoe(d,{width:I,height:h-m,padding:u?.padding??15}),S=new Map;for(let R of v){let L=a1([...R.data.sets].sort());S.set(L,R)}if(B.length>0)t0e(u,S,w,B,p,E);let x=uu(a.background||"#f4f4f4");if(w.selectAll(".venn-circle").each(function(R,L){let M=Qe(this),Y=a1([...R.sets].sort()),H=E.get(Y),J=H?.fill||l[L%l.length]||a.primaryColor;M.classed(`venn-set-${L%8}`,!0);let K=H?.["fill-opacity"]??0.1,O=H?.stroke||J,P=H?.["stroke-width"]||`${5*p}`;if(s&&k){let AA=S.get(Y);if(AA&&AA.circles.length>0){let W=AA.circles[0],CA=k.circle(W.x,W.y,W.radius*2,{roughness:0.7,seed:o,fill:AR(J,0.7),fillStyle:"hachure",fillWeight:2,hachureGap:8,hachureAngle:-41+L*60,stroke:O,strokeWidth:parseFloat(String(P))});M.select("path").remove(),M.node()?.insertBefore(CA,M.select("text").node())}}else M.select("path").style("fill",J).style("fill-opacity",K).style("stroke",O).style("stroke-width",P).style("stroke-opacity",0.95);let z=H?.color||(x?Ie(J,30):he(J,30));M.select("text").style("font-size",`${48*p}px`).style("fill",z)}),s&&k)w.selectAll(".venn-intersection").each(function(R){let L=Qe(this),U=a1([...R.sets].sort()),Y=E.get(U),H=Y?.fill;if(H){let J=L.select("path"),K=J.attr("d");if(K){let O=k.path(K,{roughness:0.7,seed:o,fill:AR(H,0.3),fillStyle:"cross-hatch",fillWeight:2,hachureGap:6,hachureAngle:60,stroke:"none"}),P=J.node();P?.parentNode?.insertBefore(O,P),J.remove()}}else L.select("path").style("fill-opacity",0);L.select("text").style("font-size",`${48*p}px`).style("fill",Y?.color??a.vennSetTextColor??f)});else w.selectAll(".venn-intersection text").style("font-size",`${48*p}px`).style("fill",(R)=>{let M=a1([...R.sets].sort());return E.get(M)?.color??a.vennSetTextColor??f}),w.selectAll(".venn-intersection path").style("fill-opacity",(R)=>{let M=a1([...R.sets].sort());return E.get(M)?.fill?1:0}).style("fill",(R)=>{let M=a1([...R.sets].sort());return E.get(M)?.fill??"transparent"});let F=D.append("g").attr("transform",`translate(0, ${m})`),T=w.select("svg").node();if(T&&"childNodes"in T)for(let R of[...T.childNodes])F.node()?.appendChild(R);Xr(D,h,I,u?.useMaxWidth??!0)},"draw");y(a1,"stableSetsKey");y(t0e,"renderTextNodes");y(r0e,"ensurePairwiseSubsets");$Ht={draw:XHt},i0e={parser:GHt,db:ZHt,renderer:$Ht,styles:jHt}});function n0e(A){if(!A.length)return[];let e=[],t=[];return A.forEach((r)=>{let i={name:r.name,children:r.type==="Leaf"?void 0:[]};if(i.classSelector=r?.classSelector,r?.cssCompiledStyles)i.cssCompiledStyles=r.cssCompiledStyles;if(r.type==="Leaf"&&r.value!==void 0)i.value=r.value;while(t.length>0&&t[t.length-1].level>=r.level)t.pop();if(t.length===0)e.push(i);else{let u=t[t.length-1].node;if(u.children)u.children.push(i);else u.children=[i]}if(r.type!=="Leaf")t.push({node:i,level:r.level})}),e}var a0e,AKt,eKt,o0e,tKt=10,S6=10,h7=25,rKt,iKt,uKt,aKt,nKt,oKt,s0e;var l0e=_(()=>{ms();cn();hl();r0();ai();rr();ir();Nt();I0();Pr();a0e=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=Dr,this.getAccTitle=kr,this.setDiagramTitle=Tr,this.getDiagramTitle=Sr,this.getAccDescription=xr,this.setAccDescription=Fr}static{y(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){let A=ur,e=ot();return si({...A.treemap,...e.treemap??{}})}addNode(A,e){if(this.nodes.push(A),this.levels.set(A,e),e===0)this.outerNodes.push(A),this.root??=A}getRoot(){return{name:"",children:this.outerNodes}}addClass(A,e){let t=this.classes.get(A)??{id:A,styles:[],textStyles:[]},r=e.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");if(r)r.forEach((i)=>{if(Bv(i))if(t?.textStyles)t.textStyles.push(i);else t.textStyles=[i];if(t?.styles)t.styles.push(i);else t.styles=[i]});this.classes.set(A,t)}getClasses(){return this.classes}getStylesForClass(A){return this.classes.get(A)?.styles??[]}clear(){cr(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};y(n0e,"buildHierarchy");AKt=y((A,e)=>{hu(A,e);let t=[];for(let u of A.TreemapRows??[])if(u.$type==="ClassDefStatement")e.addClass(u.className??"",u.styleText??"");for(let u of A.TreemapRows??[]){let a=u.item;if(!a)continue;let n=u.indent?parseInt(u.indent):0,o=eKt(a),s=a.classSelector?e.getStylesForClass(a.classSelector):[],l=s.length>0?s:void 0,g={level:n,name:o,type:a.$type,value:a.value,classSelector:a.classSelector,cssCompiledStyles:l};t.push(g)}let r=n0e(t),i=y((u,a)=>{for(let n of u)if(e.addNode(n,a),n.children&&n.children.length>0)i(n.children,a+1)},"addNodesRecursively");i(r,0)},"populate"),eKt=y((A)=>A.name?String(A.name):"","getItemName"),o0e={parser:{yy:void 0},parse:y(async(A)=>{try{let t=await Ga("treemap",A);sA.debug("Treemap AST:",t);let r=o0e.parser?.yy;if(!(r instanceof a0e))throw Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");AKt(t,r)}catch(e){throw sA.error("Error parsing treemap:",e),e}},"parse")},rKt=y((A,e,t,r)=>{let i=r.db,u=i.getConfig(),a=u.padding??tKt,n=i.getDiagramTitle(),o=i.getRoot(),{themeVariables:s}=ot();if(!o)return;let l=n?30:0,g=zi(e),C=u.nodeWidth?u.nodeWidth*S6:960,B=u.nodeHeight?u.nodeHeight*S6:500,E=C,d=B+l;g.attr("viewBox",`0 0 ${E} ${d}`),Xr(g,d,E,u.useMaxWidth);let I;try{let K=u.valueFormat||",";if(K==="$0,0")I=y((O)=>"$"+zB(",")(O),"valueFormat");else if(K.startsWith("$")&&K.includes(",")){let O=/\.\d+/.exec(K),P=O?O[0]:"";I=y((z)=>"$"+zB(","+P)(z),"valueFormat")}else if(K.startsWith("$")){let O=K.substring(1);I=y((P)=>"$"+zB(O||"")(P),"valueFormat")}else I=zB(K)}catch(K){sA.error("Error creating format function:",K),I=zB(",")}let h=jl().range(["transparent",s.cScale0,s.cScale1,s.cScale2,s.cScale3,s.cScale4,s.cScale5,s.cScale6,s.cScale7,s.cScale8,s.cScale9,s.cScale10,s.cScale11]),Q=jl().range(["transparent",s.cScalePeer0,s.cScalePeer1,s.cScalePeer2,s.cScalePeer3,s.cScalePeer4,s.cScalePeer5,s.cScalePeer6,s.cScalePeer7,s.cScalePeer8,s.cScalePeer9,s.cScalePeer10,s.cScalePeer11]),p=jl().range([s.cScaleLabel0,s.cScaleLabel1,s.cScaleLabel2,s.cScaleLabel3,s.cScaleLabel4,s.cScaleLabel5,s.cScaleLabel6,s.cScaleLabel7,s.cScaleLabel8,s.cScaleLabel9,s.cScaleLabel10,s.cScaleLabel11]);if(n)g.append("text").attr("x",E/2).attr("y",l/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(n);let m=g.append("g").attr("transform",`translate(0, ${l})`).attr("class","treemapContainer"),f=bD(o).sum((K)=>K.value??0).sort((K,O)=>(O.value??0)-(K.value??0)),w=FN().size([C,B]).paddingTop((K)=>K.children&&K.children.length>0?h7+S6:0).paddingInner(a).paddingLeft((K)=>K.children&&K.children.length>0?S6:0).paddingRight((K)=>K.children&&K.children.length>0?S6:0).paddingBottom((K)=>K.children&&K.children.length>0?S6:0).round(!0)(f),b=w.descendants().filter((K)=>K.children&&K.children.length>0),k=m.selectAll(".treemapSection").data(b).enter().append("g").attr("class","treemapSection").attr("transform",(K)=>`translate(${K.x0},${K.y0})`);if(k.append("rect").attr("width",(K)=>K.x1-K.x0).attr("height",h7).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",0.6).attr("stroke-width",0.6).attr("style",(K)=>{if(K.depth===0)return"display: none;";return""}),k.append("clipPath").attr("id",(K,O)=>`clip-section-${e}-${O}`).append("rect").attr("width",(K)=>Math.max(0,K.x1-K.x0-12)).attr("height",h7),k.append("rect").attr("width",(K)=>K.x1-K.x0).attr("height",(K)=>K.y1-K.y0).attr("class",(K,O)=>`treemapSection section${O}`).attr("fill",(K)=>h(K.data.name)).attr("fill-opacity",0.6).attr("stroke",(K)=>Q(K.data.name)).attr("stroke-width",2).attr("stroke-opacity",0.4).attr("style",(K)=>{if(K.depth===0)return"display: none;";let O=wt({cssCompiledStyles:K.data.cssCompiledStyles});return O.nodeStyles+";"+O.borderStyles.join(";")}),k.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",h7/2).attr("dominant-baseline","middle").text((K)=>K.depth===0?"":K.data.name).attr("font-weight","bold").attr("clip-path",(K,O)=>`url(#clip-section-${e}-${O})`).attr("style",(K)=>{if(K.depth===0)return"display: none;";let O="dominant-baseline: middle; font-size: 12px; fill:"+p(K.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",P=wt({cssCompiledStyles:K.data.cssCompiledStyles});return O+P.labelStyles.replace("color:","fill:")}).each(function(K){if(K.depth===0)return;let O=Qe(this),P=K.data.name;O.text(P);let z=K.x1-K.x0,AA=6,W;if(u.showValues!==!1&&K.value){let aA=z-10,NA=30,DA=10;W=aA-30-10-AA}else W=z-AA-6;let tA=Math.max(15,W),lA=O.node();if(lA.getComputedTextLength()>tA){let NA=P;while(NA.length>0){if(NA=P.substring(0,NA.length-1),NA.length===0){if(O.text("..."),lA.getComputedTextLength()>tA)O.text("");break}if(O.text(NA+"..."),lA.getComputedTextLength()<=tA)break}}}),u.showValues!==!1)k.append("text").attr("class","treemapSectionValue").attr("x",(K)=>K.x1-K.x0-10).attr("y",h7/2).attr("text-anchor","end").attr("dominant-baseline","middle").text((K)=>K.value?I(K.value):"").attr("font-style","italic").attr("style",(K)=>{if(K.depth===0)return"display: none;";let O="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+p(K.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",P=wt({cssCompiledStyles:K.data.cssCompiledStyles});return O+P.labelStyles.replace("color:","fill:")});let v=w.leaves(),S=v.length>20,x=S?16:38,F=S?14:28,T=S?4:8,R=S?4:6,L=S?2:4,M=S?8:10,U=S?1:2,Y=m.selectAll(".treemapLeafGroup").data(v).enter().append("g").attr("class",(K,O)=>`treemapNode treemapLeafGroup leaf${O}${K.data.classSelector?` ${K.data.classSelector}`:""}x`).attr("transform",(K)=>`translate(${K.x0},${K.y0})`);if(Y.append("rect").attr("width",(K)=>K.x1-K.x0).attr("height",(K)=>K.y1-K.y0).attr("class","treemapLeaf").attr("fill",(K)=>K.parent?h(K.parent.data.name):h(K.data.name)).attr("style",(K)=>wt({cssCompiledStyles:K.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",0.3).attr("stroke",(K)=>K.parent?h(K.parent.data.name):h(K.data.name)).attr("stroke-width",3),Y.append("clipPath").attr("id",(K,O)=>`clip-${e}-${O}`).append("rect").attr("width",(K)=>Math.max(0,K.x1-K.x0-4)).attr("height",(K)=>Math.max(0,K.y1-K.y0-4)),Y.append("text").attr("class","treemapLabel").attr("x",(K)=>(K.x1-K.x0)/2).attr("y",(K)=>(K.y1-K.y0)/2).attr("style",(K)=>{let O=`text-anchor: middle; dominant-baseline: middle; font-size: ${x}px;fill:`+p(K.data.name)+";",P=wt({cssCompiledStyles:K.data.cssCompiledStyles});return O+P.labelStyles.replace("color:","fill:")}).attr("clip-path",(K,O)=>`url(#clip-${e}-${O})`).text((K)=>K.data.name).each(function(K){let O=Qe(this),P=K.x1-K.x0,z=K.y1-K.y0,AA=O.node(),W=P-2*L,CA=z-2*L;if(W<M||CA<M){O.style("display","none");return}let tA=parseInt(O.style("font-size"),10),lA=0.6;while(AA.getComputedTextLength()>W&&tA>T)tA--,O.style("font-size",`${tA}px`);let gA=Math.max(R,Math.min(F,Math.round(tA*lA))),aA=tA+U+gA;while(aA>CA&&tA>T){if(tA--,gA=Math.max(R,Math.min(F,Math.round(tA*lA))),gA<R&&tA===T)break;if(O.style("font-size",`${tA}px`),aA=tA+U+gA,gA<=R&&aA>CA);}if(O.style("font-size",`${tA}px`),S){if(tA<T||CA<T)O.style("display","none")}else if(AA.getComputedTextLength()>W||tA<T||CA<tA)O.style("display","none")}),u.showValues!==!1)Y.append("text").attr("class","treemapValue").attr("x",(O)=>(O.x1-O.x0)/2).attr("y",function(O){return(O.y1-O.y0)/2}).attr("style",(O)=>{let P=`text-anchor: middle; dominant-baseline: hanging; font-size: ${F}px;fill:`+p(O.data.name)+";",z=wt({cssCompiledStyles:O.data.cssCompiledStyles});return P+z.labelStyles.replace("color:","fill:")}).attr("clip-path",(O,P)=>`url(#clip-${e}-${P})`).text((O)=>O.value?I(O.value):"").each(function(O){let P=Qe(this),z=this.parentNode;if(!z){P.style("display","none");return}let AA=Qe(z).select(".treemapLabel");if(AA.empty()||AA.style("display")==="none"){P.style("display","none");return}let W=parseFloat(AA.style("font-size")),tA=Math.max(R,Math.min(F,Math.round(W*0.6)));P.style("font-size",`${tA}px`);let gA=(O.y1-O.y0)/2+W/2+U;P.attr("y",gA);let aA=O.x1-O.x0,KA=O.y1-O.y0-4,TA=aA-2*L;if(P.node().getComputedTextLength()>TA||gA+tA>KA||tA<R)P.style("display","none");else P.style("display",null)});let J=u.diagramPadding??8;Il(g,J,"flowchart",u?.useMaxWidth||!1)},"draw"),iKt=y(function(A,e){return e.db.getClasses()},"getClasses"),uKt={draw:rKt,getClasses:iKt},aKt={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelFontSize:"12px",valueFontSize:"10px",titleFontSize:"14px"},nKt=y(({treemap:A}={})=>{let e=L0(),t=ot(),r=si(e,t.themeVariables),i=si(aKt,A),u=i.titleColor??r.titleColor,a=i.labelColor??r.textColor,n=i.valueColor??r.textColor;return`
.treemapNode.section {
stroke: ${i.sectionStrokeColor};
stroke-width: ${i.sectionStrokeWidth};
fill: ${i.sectionFillColor};
}
.treemapNode.leaf {
stroke: ${i.leafStrokeColor};
stroke-width: ${i.leafStrokeWidth};
fill: ${i.leafFillColor};
}
.treemapLabel {
fill: ${a};
font-size: ${i.labelFontSize};
}
.treemapValue {
fill: ${n};
font-size: ${i.valueFontSize};
}
.treemapTitle {
fill: ${u};
font-size: ${i.titleFontSize};
}
`},"getStyles"),oKt=nKt,s0e={parser:o0e,get db(){return new a0e},renderer:uKt,styles:oKt}});function C0e(){return OA()["wardley-beta"]}function B0e(A,e,t,r,i,u,a,n,o){P0.addNode({id:A,label:e,x:t,y:r,className:i,labelOffsetX:u,labelOffsetY:a,inertia:n,sourceStrategy:o})}function E0e(A,e,t=!1,r,i){P0.addLink({source:A,target:e,dashed:t,label:r,flow:i})}function d0e(A,e,t){P0.addTrend({nodeId:A,targetX:e,targetY:t})}function I0e(A,e,t){P0.addAnnotation({number:A,coordinates:e,text:t})}function h0e(A,e,t){P0.addNote({text:A,x:e,y:t})}function Q0e(A,e,t){P0.addAccelerator({name:A,x:e,y:t})}function p0e(A,e,t){P0.addDeaccelerator({name:A,x:e,y:t})}function f0e(A,e){P0.setAnnotationsBox(A,e)}function m0e(A,e){P0.setSize(A,e)}function D0e(A){P0.startPipeline(A)}function y0e(A,e){P0.addPipelineComponent(A,e)}function w0e(A){P0.setAxes(A)}function b0e(A){return P0.getNode(A)}function v0e(A){return P0.resolveNodeId(A)}function k0e(){return P0.build()}function F0e(){P0.clear(),cr()}var eP,Bm,g0e,sKt,lKt,c0e,gKt,P0,cKt,CKt,BKt,EKt,dKt,IKt,hKt,x0e;var S0e=_(()=>{ms();cn();ai();rr();ir();Nt();I0();eP=y((A,e)=>{let t=A<=1?A*100:A;if(t<0||t>100)throw Error(`${e} must be between 0-1 (decimal) or 0-100 (percentage). Received: ${A}`);return t},"toPercent"),Bm=y((A,e,t)=>({x:eP(e,`${t} evolution`),y:eP(A,`${t} visibility`)}),"toCoordinates"),g0e=y((A)=>{if(!A)return;if(A==="+<>")return"bidirectional";if(A==="+<")return"backward";if(A==="+>")return"forward";return},"getFlowFromPort"),sKt=y((A)=>{if(!A?.startsWith("+"))return{};let t=/^\+'([^']*)'/.exec(A)?.[1];if(A.includes("<>"))return{flow:"bidirectional",label:t};if(A.includes("<"))return{flow:"backward",label:t};if(A.includes(">"))return{flow:"forward",label:t};return{label:t}},"extractFlowFromArrow"),lKt=y((A,e)=>{if(hu(A,e),A.size)e.setSize(A.size.width,A.size.height);if(A.evolution){let t=A.evolution.stages.map((i)=>{if(i.secondName)return`${i.name.trim()} / ${i.secondName.trim()}`;return i.name.trim()}),r=A.evolution.stages.filter((i)=>i.boundary!==void 0).map((i)=>i.boundary);e.updateAxes({stages:t,stageBoundaries:r})}if(A.anchors.forEach((t)=>{let r=Bm(t.visibility,t.evolution,`Anchor "${t.name}"`);e.addNode(t.name,t.name,r.x,r.y,"anchor")}),A.components.forEach((t)=>{let r=Bm(t.visibility,t.evolution,`Component "${t.name}"`),i=t.label?(t.label.negX?-1:1)*t.label.offsetX:void 0,u=t.label?(t.label.negY?-1:1)*t.label.offsetY:void 0,a=t.decorator?.strategy;e.addNode(t.name,t.name,r.x,r.y,"component",i,u,t.inertia,a)}),A.notes.forEach((t)=>{let r=Bm(t.visibility,t.evolution,`Note "${t.text}"`);e.addNote(t.text,r.x,r.y)}),A.pipelines.forEach((t)=>{let r=e.getNode(t.parent);if(!r||typeof r.y!=="number")throw Error(`Pipeline "${t.parent}" must reference an existing component with coordinates.`);let i=r.y;e.startPipeline(t.parent),t.components.forEach((u)=>{let a=`${t.parent}_${u.name}`,n=u.label?(u.label.negX?-1:1)*u.label.offsetX:void 0,o=u.label?(u.label.negY?-1:1)*u.label.offsetY:void 0,s=eP(u.evolution,`Pipeline component "${u.name}" evolution`);e.addNode(a,u.name,s,i,"pipeline-component",n,o),e.addPipelineComponent(t.parent,a)})}),A.links.forEach((t)=>{let r=!!t.arrow&&(t.arrow.includes("-.->")||t.arrow.includes(".-.")),i=g0e(t.fromPort)??g0e(t.toPort),{flow:u,label:a}=sKt(t.arrow);if(!i&&u)i=u;let n=t.linkLabel,o=a??n;e.addLink(e.resolveNodeId(t.from),e.resolveNodeId(t.to),r,o,i)}),A.evolves.forEach((t)=>{let r=e.getNode(t.component);if(r?.y!==void 0){let i=eP(t.target,`Evolve target for "${t.component}"`);e.addTrend(t.component,i,r.y)}}),A.annotations.length>0){let t=A.annotations[0],r=Bm(t.x,t.y,"Annotations box");e.setAnnotationsBox(r.x,r.y)}A.annotation.forEach((t)=>{let r=Bm(t.x,t.y,`Annotation ${t.number}`);e.addAnnotation(t.number,[{x:r.x,y:r.y}],t.text)}),A.accelerators.forEach((t)=>{let r=Bm(t.x,t.y,`Accelerator "${t.name}"`);e.addAccelerator(t.name,r.x,r.y)}),A.deaccelerators.forEach((t)=>{let r=Bm(t.x,t.y,`Deaccelerator "${t.name}"`);e.addDeaccelerator(t.name,r.x,r.y)})},"populateDb"),c0e={parser:{yy:void 0},parse:y(async(A)=>{let e=await Ga("wardley",A);sA.debug(e);let t=c0e.parser?.yy;if(!t||typeof t.addNode!=="function")throw Error("parser.parser?.yy was not a WardleyDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");lKt(e,t)},"parse")},gKt=class{constructor(){this.nodes=new Map,this.links=[],this.trends=new Map,this.pipelines=new Map,this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.axes={}}static{y(this,"WardleyBuilder")}addNode(A){let e=this.nodes.get(A.id)??{id:A.id,label:A.label},t={...e,...A,className:A.className??e.className,labelOffsetX:A.labelOffsetX??e.labelOffsetX,labelOffsetY:A.labelOffsetY??e.labelOffsetY};this.nodes.set(A.id,t)}addLink(A){this.links.push(A)}addTrend(A){this.trends.set(A.nodeId,A)}startPipeline(A){this.pipelines.set(A,{nodeId:A,componentIds:[]});let e=this.nodes.get(A);if(e)e.isPipelineParent=!0}addPipelineComponent(A,e){let t=this.pipelines.get(A);if(t)t.componentIds.push(e);let r=this.nodes.get(e);if(r)r.inPipeline=!0}addAnnotation(A){this.annotations.push(A)}addNote(A){this.notes.push(A)}addAccelerator(A){this.accelerators.push(A)}addDeaccelerator(A){this.deaccelerators.push(A)}setAnnotationsBox(A,e){this.annotationsBox={x:A,y:e}}setAxes(A){this.axes={...this.axes,...A}}setSize(A,e){this.size={width:A,height:e}}getNode(A){return this.nodes.get(A)}resolveNodeId(A){if(this.nodes.has(A))return A;for(let[e,t]of this.nodes)if(t.label===A)return e;return A}build(){let A=[];for(let e of this.nodes.values()){if(typeof e.x!=="number"||typeof e.y!=="number")throw Error(`Node "${e.label}" is missing coordinates`);A.push(e)}return{nodes:A,links:[...this.links],trends:[...this.trends.values()],pipelines:[...this.pipelines.values()],annotations:[...this.annotations],notes:[...this.notes],accelerators:[...this.accelerators],deaccelerators:[...this.deaccelerators],annotationsBox:this.annotationsBox,axes:{...this.axes},size:this.size}}clear(){this.nodes.clear(),this.links=[],this.trends.clear(),this.pipelines.clear(),this.annotations=[],this.notes=[],this.accelerators=[],this.deaccelerators=[],this.annotationsBox=void 0,this.axes={},this.size=void 0}},P0=new gKt;y(C0e,"getConfig");y(B0e,"addNode");y(E0e,"addLink");y(d0e,"addTrend");y(I0e,"addAnnotation");y(h0e,"addNote");y(Q0e,"addAccelerator");y(p0e,"addDeaccelerator");y(f0e,"setAnnotationsBox");y(m0e,"setSize");y(D0e,"startPipeline");y(y0e,"addPipelineComponent");y(w0e,"updateAxes");y(b0e,"getNode");y(v0e,"resolveNodeId");y(k0e,"getWardleyData");y(F0e,"clear");cKt={getConfig:C0e,addNode:B0e,addLink:E0e,addTrend:d0e,addAnnotation:I0e,addNote:h0e,addAccelerator:Q0e,addDeaccelerator:p0e,setAnnotationsBox:f0e,setSize:m0e,startPipeline:D0e,addPipelineComponent:y0e,updateAxes:w0e,getNode:b0e,resolveNodeId:v0e,getWardleyData:k0e,clear:F0e,setAccTitle:Dr,getAccTitle:kr,setDiagramTitle:Tr,getDiagramTitle:Sr,getAccDescription:xr,setAccDescription:Fr},CKt=["Genesis","Custom Built","Product","Commodity"],BKt=y(()=>{let{themeVariables:A}=OA();return{backgroundColor:A.wardley?.backgroundColor??A.background??"#fff",axisColor:A.wardley?.axisColor??"#000",axisTextColor:A.wardley?.axisTextColor??A.primaryTextColor??"#222",gridColor:A.wardley?.gridColor??"rgba(100, 100, 100, 0.2)",componentFill:A.wardley?.componentFill??"#fff",componentStroke:A.wardley?.componentStroke??"#000",componentLabelColor:A.wardley?.componentLabelColor??A.primaryTextColor??"#222",linkStroke:A.wardley?.linkStroke??"#000",evolutionStroke:A.wardley?.evolutionStroke??"#dc3545",annotationStroke:A.wardley?.annotationStroke??"#000",annotationTextColor:A.wardley?.annotationTextColor??A.primaryTextColor??"#222",annotationFill:A.wardley?.annotationFill??A.background??"#fff"}},"getTheme"),EKt=y(()=>{let A=OA()["wardley-beta"];return{width:A?.width??900,height:A?.height??600,padding:A?.padding??48,nodeRadius:A?.nodeRadius??6,nodeLabelOffset:A?.nodeLabelOffset??8,axisFontSize:A?.axisFontSize??12,labelFontSize:A?.labelFontSize??10,showGrid:A?.showGrid??!1,useMaxWidth:A?.useMaxWidth??!0}},"getConfigValues"),dKt=y((A,e,t,r)=>{sA.debug(`Rendering Wardley map
`+A);let i=EKt(),u=BKt(),a=i.nodeRadius*1.6,n=r.db,o=n.getWardleyData(),s=n.getDiagramTitle(),l=o.size?.width??i.width,g=o.size?.height??i.height,C=zi(e);C.selectAll("*").remove(),Xr(C,g,l,i.useMaxWidth),C.attr("viewBox",`0 0 ${l} ${g}`);let B=C.append("g").attr("class","wardley-map"),E=C.append("defs");E.append("marker").attr("id",`arrow-${e}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",u.evolutionStroke).attr("stroke","none"),E.append("marker").attr("id",`link-arrow-end-${e}`).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("fill",u.linkStroke).attr("stroke","none"),E.append("marker").attr("id",`link-arrow-start-${e}`).attr("viewBox","0 0 10 10").attr("refX",1).attr("refY",5).attr("markerWidth",5).attr("markerHeight",5).attr("orient","auto").append("path").attr("d","M 10 0 L 0 5 L 10 10 z").attr("fill",u.linkStroke).attr("stroke","none"),B.append("rect").attr("class","wardley-background").attr("width",l).attr("height",g).attr("fill",u.backgroundColor);let d=l-i.padding*2,I=g-i.padding*2;if(s)B.append("text").attr("class","wardley-title").attr("x",l/2).attr("y",i.padding/2).attr("fill",u.axisTextColor).attr("font-size",i.axisFontSize*1.05).attr("font-weight","bold").attr("text-anchor","middle").attr("dominant-baseline","middle").text(s);let h=y((U)=>i.padding+U/100*d,"projectX"),Q=y((U)=>g-i.padding-U/100*I,"projectY"),p=B.append("g").attr("class","wardley-axes");p.append("line").attr("x1",i.padding).attr("x2",l-i.padding).attr("y1",g-i.padding).attr("y2",g-i.padding).attr("stroke",u.axisColor).attr("stroke-width",1),p.append("line").attr("x1",i.padding).attr("x2",i.padding).attr("y1",i.padding).attr("y2",g-i.padding).attr("stroke",u.axisColor).attr("stroke-width",1);let m=o.axes.xLabel??"Evolution",f=o.axes.yLabel??"Visibility";p.append("text").attr("class","wardley-axis-label wardley-axis-label-x").attr("x",i.padding+d/2).attr("y",g-i.padding/4).attr("fill",u.axisTextColor).attr("font-size",i.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").text(m),p.append("text").attr("class","wardley-axis-label wardley-axis-label-y").attr("x",i.padding/3).attr("y",i.padding+I/2).attr("fill",u.axisTextColor).attr("font-size",i.axisFontSize).attr("font-weight","bold").attr("text-anchor","middle").attr("transform",`rotate(-90 ${i.padding/3} ${i.padding+I/2})`).text(f);let D=o.axes.stages&&o.axes.stages.length>0?o.axes.stages:CKt;if(D.length>0){let U=B.append("g").attr("class","wardley-stages"),Y=o.axes.stageBoundaries,H=[];if(Y&&Y.length===D.length){let J=0;Y.forEach((K)=>{H.push({start:J,end:K}),J=K})}else{let J=1/D.length;D.forEach((K,O)=>{H.push({start:O*J,end:(O+1)*J})})}D.forEach((J,K)=>{let O=H[K],P=i.padding+O.start*d,z=i.padding+O.end*d,AA=(P+z)/2;if(K>0)U.append("line").attr("x1",P).attr("x2",P).attr("y1",i.padding).attr("y2",g-i.padding).attr("stroke","#000").attr("stroke-width",1).attr("stroke-dasharray","5 5").attr("opacity",0.8);U.append("text").attr("class","wardley-stage-label").attr("x",AA).attr("y",g-i.padding/1.5).attr("fill",u.axisTextColor).attr("font-size",i.axisFontSize-2).attr("text-anchor","middle").text(J)})}if(i.showGrid){let U=B.append("g").attr("class","wardley-grid");for(let Y=1;Y<4;Y++){let H=Y/4,J=i.padding+d*H;U.append("line").attr("x1",J).attr("x2",J).attr("y1",i.padding).attr("y2",g-i.padding).attr("stroke",u.gridColor).attr("stroke-dasharray","2 6"),U.append("line").attr("x1",i.padding).attr("x2",l-i.padding).attr("y1",g-i.padding-I*H).attr("y2",g-i.padding-I*H).attr("stroke",u.gridColor).attr("stroke-dasharray","2 6")}}let w=new Map;if(o.nodes.forEach((U)=>{w.set(U.id,{x:h(U.x),y:Q(U.y),node:U})}),o.pipelines.length>0){let U=B.append("g").attr("class","wardley-pipelines"),Y=B.append("g").attr("class","wardley-pipeline-links");o.pipelines.forEach((H)=>{if(H.componentIds.length===0)return;let J=H.componentIds.map((z)=>({id:z,pos:w.get(z),node:o.nodes.find((AA)=>AA.id===z)})).filter((z)=>z.pos&&z.node).sort((z,AA)=>z.node.x-AA.node.x);for(let z=0;z<J.length-1;z++){let AA=J[z],W=J[z+1];Y.append("line").attr("class","wardley-pipeline-evolution-link").attr("x1",AA.pos.x).attr("y1",AA.pos.y).attr("x2",W.pos.x).attr("y2",W.pos.y).attr("stroke",u.linkStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4")}let K=1/0,O=-1/0,P=0;if(H.componentIds.forEach((z)=>{let AA=w.get(z);if(AA)K=Math.min(K,AA.x),O=Math.max(O,AA.x),P=AA.y}),K!==1/0&&O!==-1/0){let AA=i.nodeRadius*4,W=P-AA/2,CA=w.get(H.nodeId);if(CA){let tA=(K+O)/2;CA.x=tA,CA.y=W-a/6}U.append("rect").attr("class","wardley-pipeline-box").attr("x",K-15).attr("y",W).attr("width",O-K+30).attr("height",AA).attr("fill","none").attr("stroke",u.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}})}let b=B.append("g").attr("class","wardley-links"),k=new Map;o.pipelines.forEach((U)=>{k.set(U.nodeId,new Set(U.componentIds))});let v=o.links.filter((U)=>{if(!w.has(U.source)||!w.has(U.target))return!1;if(k.get(U.target)?.has(U.source))return!1;return!0});b.selectAll("line").data(v).enter().append("line").attr("class",(U)=>`wardley-link${U.dashed?" wardley-link--dashed":""}`).attr("x1",(U)=>{let Y=w.get(U.source),H=w.get(U.target),K=o.nodes.find((AA)=>AA.id===U.source).isPipelineParent?a/Math.sqrt(2):i.nodeRadius,O=H.x-Y.x,P=H.y-Y.y,z=Math.sqrt(O*O+P*P);return Y.x+O/z*K}).attr("y1",(U)=>{let Y=w.get(U.source),H=w.get(U.target),K=o.nodes.find((AA)=>AA.id===U.source).isPipelineParent?a/Math.sqrt(2):i.nodeRadius,O=H.x-Y.x,P=H.y-Y.y,z=Math.sqrt(O*O+P*P);return Y.y+P/z*K}).attr("x2",(U)=>{let Y=w.get(U.source),H=w.get(U.target),K=o.nodes.find((AA)=>AA.id===U.target).isPipelineParent?a/Math.sqrt(2):i.nodeRadius,O=Y.x-H.x,P=Y.y-H.y,z=Math.sqrt(O*O+P*P);return H.x+O/z*K}).attr("y2",(U)=>{let Y=w.get(U.source),H=w.get(U.target),K=o.nodes.find((AA)=>AA.id===U.target).isPipelineParent?a/Math.sqrt(2):i.nodeRadius,O=Y.x-H.x,P=Y.y-H.y,z=Math.sqrt(O*O+P*P);return H.y+P/z*K}).attr("stroke",u.linkStroke).attr("stroke-width",1).attr("stroke-dasharray",(U)=>U.dashed?"6 6":null).attr("marker-end",(U)=>{if(U.flow==="forward"||U.flow==="bidirectional")return`url(#link-arrow-end-${e})`;return null}).attr("marker-start",(U)=>{if(U.flow==="backward"||U.flow==="bidirectional")return`url(#link-arrow-start-${e})`;return null}),b.selectAll("text").data(v.filter((U)=>U.label)).enter().append("text").attr("class","wardley-link-label").attr("x",(U)=>{let Y=w.get(U.source),H=w.get(U.target),J=(Y.x+H.x)/2,K=H.y-Y.y,O=H.x-Y.x,P=Math.sqrt(O*O+K*K),z=8,AA=K/P;return J+AA*8}).attr("y",(U)=>{let Y=w.get(U.source),H=w.get(U.target),J=(Y.y+H.y)/2,K=H.x-Y.x,O=H.y-Y.y,P=Math.sqrt(K*K+O*O),z=8,AA=-K/P;return J+AA*8}).attr("fill",u.axisTextColor).attr("font-size",i.labelFontSize).attr("text-anchor","middle").attr("dominant-baseline","middle").attr("transform",(U)=>{let Y=w.get(U.source),H=w.get(U.target),J=(Y.x+H.x)/2,K=(Y.y+H.y)/2,O=H.x-Y.x,P=H.y-Y.y,z=Math.sqrt(O*O+P*P),AA=8,W=P/z,CA=-O/z,tA=J+W*8,lA=K+CA*8,gA=Math.atan2(P,O)*180/Math.PI;if(gA>90||gA<-90)gA+=180;return`rotate(${gA} ${tA} ${lA})`}).text((U)=>U.label);let S=B.append("g").attr("class","wardley-trends"),x=o.trends.map((U)=>{let Y=w.get(U.nodeId);if(!Y)return null;let H=h(U.targetX),J=Q(U.targetY),K=H-Y.x,O=J-Y.y,P=Math.sqrt(K*K+O*O),z=i.nodeRadius+2,AA=P>z?H-K/P*z:H,W=P>z?J-O/P*z:J;return{origin:Y,targetX:H,targetY:J,adjustedX2:AA,adjustedY2:W}}).filter((U)=>U!==null);S.selectAll("line").data(x).enter().append("line").attr("class","wardley-trend").attr("x1",(U)=>U.origin.x).attr("y1",(U)=>U.origin.y).attr("x2",(U)=>U.adjustedX2).attr("y2",(U)=>U.adjustedY2).attr("stroke",u.evolutionStroke).attr("stroke-width",1).attr("stroke-dasharray","4 4").attr("marker-end",`url(#arrow-${e})`);let T=B.append("g").attr("class","wardley-nodes").selectAll("g").data(o.nodes).enter().append("g").attr("class",(U)=>["wardley-node",U.className?`wardley-node--${U.className}`:""].filter(Boolean).join(" "));T.filter((U)=>U.sourceStrategy==="outsource").append("circle").attr("class","wardley-outsource-overlay").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y).attr("r",i.nodeRadius*2).attr("fill","#666").attr("stroke",u.componentStroke).attr("stroke-width",1),T.filter((U)=>U.sourceStrategy==="buy").append("circle").attr("class","wardley-buy-overlay").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y).attr("r",i.nodeRadius*2).attr("fill","#ccc").attr("stroke",u.componentStroke).attr("stroke-width",1),T.filter((U)=>U.sourceStrategy==="build").append("circle").attr("class","wardley-build-overlay").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y).attr("r",i.nodeRadius*2).attr("fill","#eee").attr("stroke","#000").attr("stroke-width",1);let R=T.filter((U)=>U.sourceStrategy==="market");R.append("circle").attr("class","wardley-market-overlay").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y).attr("r",i.nodeRadius*2).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",1),T.filter((U)=>!U.isPipelineParent&&U.sourceStrategy!=="market"&&U.className!=="anchor").append("circle").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y).attr("r",i.nodeRadius).attr("fill",u.componentFill).attr("stroke",u.componentStroke).attr("stroke-width",1);let L=i.nodeRadius*0.7,M=i.nodeRadius*1.2;if(R.append("line").attr("class","wardley-market-line").attr("x1",(U)=>w.get(U.id).x).attr("y1",(U)=>w.get(U.id).y-M).attr("x2",(U)=>w.get(U.id).x-M*Math.cos(Math.PI/6)).attr("y2",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("stroke",u.componentStroke).attr("stroke-width",1),R.append("line").attr("class","wardley-market-line").attr("x1",(U)=>w.get(U.id).x-M*Math.cos(Math.PI/6)).attr("y1",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("x2",(U)=>w.get(U.id).x+M*Math.cos(Math.PI/6)).attr("y2",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("stroke",u.componentStroke).attr("stroke-width",1),R.append("line").attr("class","wardley-market-line").attr("x1",(U)=>w.get(U.id).x+M*Math.cos(Math.PI/6)).attr("y1",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("x2",(U)=>w.get(U.id).x).attr("y2",(U)=>w.get(U.id).y-M).attr("stroke",u.componentStroke).attr("stroke-width",1),R.append("circle").attr("class","wardley-market-dot").attr("cx",(U)=>w.get(U.id).x).attr("cy",(U)=>w.get(U.id).y-M).attr("r",L).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",2),R.append("circle").attr("class","wardley-market-dot").attr("cx",(U)=>w.get(U.id).x-M*Math.cos(Math.PI/6)).attr("cy",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("r",L).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",2),R.append("circle").attr("class","wardley-market-dot").attr("cx",(U)=>w.get(U.id).x+M*Math.cos(Math.PI/6)).attr("cy",(U)=>w.get(U.id).y+M*Math.sin(Math.PI/6)).attr("r",L).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",2),T.filter((U)=>U.isPipelineParent===!0).append("rect").attr("x",(U)=>w.get(U.id).x-a/2).attr("y",(U)=>w.get(U.id).y-a/2).attr("width",a).attr("height",a).attr("fill",u.componentFill).attr("stroke",u.componentStroke).attr("stroke-width",1),T.filter((U)=>U.inertia===!0).append("line").attr("class","wardley-inertia").attr("x1",(U)=>{let Y=w.get(U.id),H=U.isPipelineParent?a/2+15:i.nodeRadius+15;if(U.sourceStrategy)H+=i.nodeRadius+10;return Y.x+H}).attr("y1",(U)=>{let Y=w.get(U.id),H=U.isPipelineParent?a:i.nodeRadius*2;return Y.y-H/2}).attr("x2",(U)=>{let Y=w.get(U.id),H=U.isPipelineParent?a/2+15:i.nodeRadius+15;if(U.sourceStrategy)H+=i.nodeRadius+10;return Y.x+H}).attr("y2",(U)=>{let Y=w.get(U.id),H=U.isPipelineParent?a:i.nodeRadius*2;return Y.y+H/2}).attr("stroke",u.componentStroke).attr("stroke-width",6),T.append("text").attr("x",(U)=>{let Y=w.get(U.id);if(U.className==="anchor")return U.labelOffsetX!==void 0?Y.x+U.labelOffsetX:Y.x;let H=i.nodeLabelOffset;if(U.sourceStrategy&&U.labelOffsetX===void 0)H+=10;let J=U.labelOffsetX??H;return Y.x+J}).attr("y",(U)=>{let Y=w.get(U.id);if(U.className==="anchor")return U.labelOffsetY!==void 0?Y.y+U.labelOffsetY:Y.y-3;let H=-i.nodeLabelOffset;if(U.sourceStrategy&&U.labelOffsetY===void 0)H-=10;let J=U.labelOffsetY??H;return Y.y+J}).attr("class","wardley-node-label").attr("fill",(U)=>{if(U.className==="evolved")return u.evolutionStroke;if(U.className==="anchor")return"#000";return u.componentLabelColor}).attr("font-size",i.labelFontSize).attr("font-weight",(U)=>U.className==="anchor"?"bold":"normal").attr("text-anchor",(U)=>U.className==="anchor"?"middle":"start").attr("dominant-baseline",(U)=>U.className==="anchor"?"middle":"auto").text((U)=>U.label),o.annotations.length>0){let U=B.append("g").attr("class","wardley-annotations");if(o.annotations.forEach((Y)=>{let H=Y.coordinates.map((J)=>({x:h(J.x),y:Q(J.y)}));if(H.length>1)for(let J=0;J<H.length-1;J++)U.append("line").attr("class","wardley-annotation-line").attr("x1",H[J].x).attr("y1",H[J].y).attr("x2",H[J+1].x).attr("y2",H[J+1].y).attr("stroke",u.axisColor).attr("stroke-width",1.5).attr("stroke-dasharray","4 4");H.forEach((J)=>{let K=U.append("g").attr("class","wardley-annotation");K.append("circle").attr("cx",J.x).attr("cy",J.y).attr("r",10).attr("fill","white").attr("stroke",u.axisColor).attr("stroke-width",1.5),K.append("text").attr("x",J.x).attr("y",J.y).attr("text-anchor","middle").attr("dominant-baseline","central").attr("font-size",10).attr("fill",u.axisTextColor).attr("font-weight","bold").text(Y.number)})}),o.annotationsBox){let Y=h(o.annotationsBox.x),H=Q(o.annotationsBox.y),J=10,K=16,O=11,P=U.append("g").attr("class","wardley-annotations-box"),z=[...o.annotations].filter((W)=>W.text).sort((W,CA)=>W.number-CA.number),AA=[];if(z.forEach((W,CA)=>{let tA=P.append("text").attr("x",Y+J).attr("y",H+J+(CA+1)*K).attr("font-size",O).attr("fill",u.axisTextColor).attr("text-anchor","start").attr("dominant-baseline","middle").text(`${W.number}. ${W.text}`);AA.push(tA)}),AA.length>0){let W=0,CA=0;AA.forEach((KA)=>{let TA=KA.node(),qA=TA.getComputedTextLength();W=Math.max(W,qA);let IA=TA.getBBox();CA=Math.max(CA,IA.height)});let tA=W+J*2+105,lA=z.length*K+J*2+CA/2,gA=i.padding,aA=l-i.padding-tA,NA=i.padding,DA=g-i.padding-lA;Y=Math.max(gA,Math.min(Y,aA)),H=Math.max(NA,Math.min(H,DA)),AA.forEach((KA,TA)=>{KA.attr("x",Y+J).attr("y",H+J+(TA+1)*K)}),P.insert("rect","text").attr("x",Y).attr("y",H).attr("width",tA).attr("height",lA).attr("fill","white").attr("stroke",u.axisColor).attr("stroke-width",1.5).attr("rx",4).attr("ry",4)}}}if(o.notes.length>0){let U=B.append("g").attr("class","wardley-notes");o.notes.forEach((Y)=>{let H=h(Y.x),J=Q(Y.y);U.append("text").attr("x",H).attr("y",J).attr("text-anchor","start").attr("font-size",11).attr("fill",u.axisTextColor).attr("font-weight","bold").text(Y.text)})}if(o.accelerators.length>0){let U=B.append("g").attr("class","wardley-accelerators");o.accelerators.forEach((Y)=>{let H=h(Y.x),J=Q(Y.y),K=60,O=30,P=20,z=`
M ${H} ${J-15}
L ${H+60-20} ${J-15}
L ${H+60-20} ${J-15-8}
L ${H+60} ${J}
L ${H+60-20} ${J+15+8}
L ${H+60-20} ${J+15}
L ${H} ${J+15}
Z
`;U.append("path").attr("d",z).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",1),U.append("text").attr("x",H+30).attr("y",J+15+15).attr("text-anchor","middle").attr("font-size",10).attr("fill",u.axisTextColor).attr("font-weight","bold").text(Y.name)})}if(o.deaccelerators.length>0){let U=B.append("g").attr("class","wardley-deaccelerators");o.deaccelerators.forEach((Y)=>{let H=h(Y.x),J=Q(Y.y),K=60,O=30,P=20,z=`
M ${H+60} ${J-15}
L ${H+20} ${J-15}
L ${H+20} ${J-15-8}
L ${H} ${J}
L ${H+20} ${J+15+8}
L ${H+20} ${J+15}
L ${H+60} ${J+15}
Z
`;U.append("path").attr("d",z).attr("fill","white").attr("stroke",u.componentStroke).attr("stroke-width",1),U.append("text").attr("x",H+30).attr("y",J+15+15).attr("text-anchor","middle").attr("font-size",10).attr("fill",u.axisTextColor).attr("font-weight","bold").text(Y.name)})}},"draw"),IKt={draw:dKt},hKt=y(({wardley:A}={})=>{let e=L0(),t=ot(),r=si(e,t.themeVariables),i=si(r.wardley,A);return`
.wardley-background {
fill: ${i.backgroundColor};
}
.wardley-axes line, .wardley-axes path {
stroke: ${i.axisColor};
}
.wardley-axis-label {
fill: ${i.axisTextColor};
}
.wardley-stage-label {
fill: ${i.axisTextColor};
}
.wardley-grid line {
stroke: ${i.gridColor};
}
.wardley-node circle {
fill: ${i.componentFill};
stroke: ${i.componentStroke};
}
.wardley-node-label {
fill: ${i.componentLabelColor};
}
.wardley-link {
stroke: ${i.linkStroke};
}
.wardley-link--dashed {
stroke-dasharray: 4 4;
}
.wardley-link-label {
fill: ${i.axisTextColor};
}
.wardley-trend line {
stroke: ${i.evolutionStroke};
}
.wardley-annotation-line {
stroke: ${i.annotationStroke};
}
.wardley-annotation circle {
fill: ${i.annotationFill};
stroke: ${i.annotationStroke};
}
.wardley-annotation text {
fill: ${i.annotationTextColor};
}
.wardley-annotations-box rect {
fill: ${i.annotationFill};
stroke: ${i.annotationStroke};
}
.wardley-annotations-box text {
fill: ${i.annotationTextColor};
}
.wardley-pipeline-box {
stroke: ${i.componentStroke};
}
.wardley-notes text {
fill: ${i.axisTextColor};
}
`},"styles"),x0e={parser:c0e,db:cKt,renderer:IKt,styles:hKt}});function Q7(A){let e=A+1831565813|0;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}function N0e(A){let e=0;for(let t=0;t<A.length;t++){let r=A.charCodeAt(t);e=(e<<5)-e+r,e|=0}return e}function G0e(A,e){if(typeof A==="number"&&Number.isFinite(A)&&A!==0)return A;return N0e(e)}function U0e(A,e,t,r){let i=A/2,u=r??A*0.015,a=7,n=e/7,o=[];for(let l=0;l<=7;l++){let g=Q7(t+l*17)*u*2-u;o.push({x:i+g,y:l*n})}let s=`M${o[0].x},${o[0].y}`;for(let l=0;l<o.length-1;l++){let g=o[l],C=o[l+1],B=(g.y+C.y)/2,E=l%2===0?1:-1,d=u*1.5*E*Q7(t+l*31+7),I=g.x+d,h=B,Q=C.x-d;s+=` C${I},${h} ${Q},${B} ${C.x},${C.y}`}return s}function M0e(A,e,t,r){let i=e/2,u=r??e*0.015,a=7,n=A/7,o=[];for(let l=0;l<=7;l++){let g=Q7(t+l*23)*u*2-u;o.push({x:l*n,y:i+g})}let s=`M${o[0].x},${o[0].y}`;for(let l=0;l<o.length-1;l++){let g=o[l],C=o[l+1],B=(g.x+C.x)/2,E=l%2===0?1:-1,d=u*1.5*E*Q7(t+l*37+11),I=B,h=g.y+d,Q=B,p=C.y-d;s+=` C${I},${h} ${Q},${p} ${C.x},${C.y}`}return s}function T0e(A,e){let t=A/2,r=e*0.5,i=e,u=A*0.03;return[`M${t},${r}`,`C${t+u},${r+(i-r)*0.2}`,`${t-u*1.5},${r+(i-r)*0.55}`,`${t+u*0.5},${r+(i-r)*0.75}`,`C${t-u},${r+(i-r)*0.85}`,`${t+u*0.3},${r+(i-r)*0.95}`,`${t},${i}`].join(" ")}function Y0e(A,e,t,r){return[`M${A-t},${e}`,`A${t},${r} 0 1,1 ${A+t},${e}`,`A${t},${r} 0 1,1 ${A-t},${e}`,"Z"].join(" ")}var R0e,p7,QKt,pKt,fKt,mKt,DKt,yKt,tP,wKt,bKt,L0e,vKt,kKt,_BA=3,FKt,xKt,SKt,LKt,RKt,H0e;var K0e=_(()=>{ms();cn();ai();rr();ir();Nt();I0();R0e=y(()=>({domains:new Map,transitions:[]}),"createDefaultData"),p7=R0e(),QKt=y(()=>p7.domains,"getDomains"),pKt=y(()=>p7.transitions,"getTransitions"),fKt=y((A)=>{if(!A)return;for(let e of A){let t=e.domain,r=(e.items??[]).map((i)=>({label:i.label}));p7.domains.set(t,{name:t,items:r})}},"setDomains"),mKt=y((A)=>{if(!A)return;p7.transitions=A.filter((e)=>{if(e.from===e.to)return sA.warn(`Cynefin: self-loop transition on domain "${e.from}" is not meaningful and will be skipped.`),!1;return!0}).map((e)=>({from:e.from,to:e.to,label:e.label||void 0}))},"setTransitions"),DKt=y(()=>si({...ur.cynefin,...ot().cynefin}),"getConfig"),yKt=y(()=>{cr(),p7=R0e()},"clear"),tP={getDomains:QKt,getTransitions:pKt,setDomains:fKt,setTransitions:mKt,getConfig:DKt,clear:yKt,setAccTitle:Dr,getAccTitle:kr,setDiagramTitle:Tr,getDiagramTitle:Sr,getAccDescription:xr,setAccDescription:Fr},wKt=y((A)=>{hu(A,tP),tP.setDomains(A.domains),tP.setTransitions(A.transitions)},"populate"),bKt={parse:y(async(A)=>{let e=await Ga("cynefin",A);sA.debug(e),wKt(e)},"parse")};y(Q7,"seededRandom");y(N0e,"hashString");y(G0e,"resolveSeed");y(U0e,"generateFoldPath");y(M0e,"generateHorizontalBoundary");y(T0e,"generateCliffPath");y(Y0e,"generateConfusionPath");L0e={complex:{model:"Probe → Sense → Respond",practice:"Emergent Practices"},complicated:{model:"Sense → Analyse → Respond",practice:"Good Practices"},clear:{model:"Sense → Categorise → Respond",practice:"Best Practices"},chaotic:{model:"Act → Sense → Respond",practice:"Novel Practices"},confusion:{model:"",practice:"Disorder"}},vKt=y((A,e)=>{let t=A/2,r=e/2;return{complex:{cx:t/2,cy:r/2,x:0,y:0,w:t,h:r},complicated:{cx:t+t/2,cy:r/2,x:t,y:0,w:t,h:r},chaotic:{cx:t/2,cy:r+r/2,x:0,y:r,w:t,h:r},clear:{cx:t+t/2,cy:r+r/2,x:t,y:r,w:t,h:r},confusion:{cx:t,cy:r,x:t*0.7,y:r*0.7,w:t*0.6,h:r*0.6}}},"getDomainLayouts"),kKt=y(()=>{let A=L0(),e=ot();return si(A,e.themeVariables).cynefin},"getCynefinDomainColors"),FKt=y((A,e,t,r)=>{let i=r.db,u=i.getDomains(),a=i.getTransitions(),n=i.getDiagramTitle(),o=i.getAccTitle(),s=i.getAccDescription(),l=i.getConfig(),g=kKt();sA.debug("Rendering Cynefin diagram");let{width:C,height:B,padding:E,showDomainDescriptions:d,boundaryAmplitude:I}=l,h=C+E*2,Q=B+E*2,p={complex:g.complexBg,complicated:g.complicatedBg,clear:g.clearBg,chaotic:g.chaoticBg,confusion:g.confusionBg},m=zi(e);if(Xr(m,Q,h,l.useMaxWidth??!0),m.attr("viewBox",`0 0 ${h} ${Q}`),o)m.append("title").text(o);if(s)m.append("desc").text(s);let f=m.append("g").attr("transform",`translate(${E}, ${E})`),D=vKt(C,B),w=G0e(l.seed,e),b=f.append("g").attr("class","cynefin-backgrounds"),k=["complex","complicated","chaotic","clear"];for(let U of k){let Y=D[U];b.append("rect").attr("class","cynefinDomain").attr("x",Y.x).attr("y",Y.y).attr("width",Y.w).attr("height",Y.h).attr("fill",p[U]).attr("fill-opacity",0.4).attr("stroke","none")}let v=f.append("g").attr("class","cynefin-boundaries");v.append("path").attr("class","cynefinBoundary").attr("d",U0e(C,B,w,I)).attr("fill","none"),v.append("path").attr("class","cynefinBoundary").attr("d",M0e(C,B,w+100,I)).attr("fill","none"),v.append("path").attr("class","cynefinCliff").attr("d",T0e(C,B)).attr("fill","none");let S=C*0.15,x=B*0.15;f.append("path").attr("class","cynefinConfusion").attr("d",Y0e(C/2,B/2,S,x)).attr("fill",p.confusion).attr("fill-opacity",0.5);let F=f.append("g").attr("class","cynefin-labels");for(let U of k){let Y=D[U];F.append("text").attr("class","cynefinDomainLabel").attr("x",Y.cx).attr("y",d?Y.cy-30:Y.cy).attr("text-anchor","middle").attr("dominant-baseline","middle").text(U.charAt(0).toUpperCase()+U.slice(1))}if(F.append("text").attr("class","cynefinDomainLabel").attr("x",C/2).attr("y",d?B/2-10:B/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text("Confusion"),d){let U=f.append("g").attr("class","cynefin-subtitles");for(let Y of k){let H=D[Y],J=L0e[Y];U.append("text").attr("class","cynefinSubtitle").attr("x",H.cx).attr("y",H.cy-10).attr("text-anchor","middle").attr("dominant-baseline","middle").text(J.model),U.append("text").attr("class","cynefinSubtitle").attr("x",H.cx).attr("y",H.cy+5).attr("text-anchor","middle").attr("dominant-baseline","middle").text(J.practice)}U.append("text").attr("class","cynefinSubtitle").attr("x",C/2).attr("y",B/2+8).attr("text-anchor","middle").attr("dominant-baseline","middle").text(L0e.confusion.practice)}let T=f.append("g").attr("class","cynefin-items"),R=26,L=10,M=["complex","complicated","chaotic","clear","confusion"];for(let U of M){let Y=u.get(U);if(!Y||Y.items.length===0)continue;let H=D[U],J=U==="confusion",K=Y.items,O=0;if(J&&Y.items.length>_BA)O=Y.items.length-_BA,K=Y.items.slice(0,_BA);let P;if(J){let z=d?22:14;P=H.cy+z}else P=H.cy+(d?25:15);if([...K].forEach((z,AA)=>{let W=P+AA*(R+4),CA=T.append("g"),tA=CA.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",R/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(z.label),lA=z.label.length*7,gA=tA.node();if(gA&&typeof gA.getBBox==="function"){let DA=gA.getBBox();if(DA.width>0)lA=DA.width}let aA=lA+L*2,NA=H.cx-aA/2;CA.attr("transform",`translate(${NA}, ${W})`),CA.insert("rect","text").attr("class","cynefinItem").attr("x",0).attr("y",0).attr("width",aA).attr("height",R).attr("rx",4).attr("ry",4).attr("fill",p[U]).attr("fill-opacity",0.95),tA.attr("x",aA/2).attr("y",R/2)}),O>0){let z=P+K.length*(R+4),AA=`+${O} more`,W=T.append("g"),CA=W.append("text").attr("class","cynefinItemText").attr("x",0).attr("y",R/2).attr("text-anchor","middle").attr("dominant-baseline","central").text(AA),tA=AA.length*7,lA=CA.node();if(lA&&typeof lA.getBBox==="function"){let NA=lA.getBBox();if(NA.width>0)tA=NA.width}let gA=tA+L*2,aA=H.cx-gA/2;W.attr("transform",`translate(${aA}, ${z})`),W.insert("rect","text").attr("class","cynefinItemOverflow").attr("x",0).attr("y",0).attr("width",gA).attr("height",R).attr("rx",4).attr("ry",4).attr("fill",p[U]).attr("fill-opacity",0.6),CA.attr("x",gA/2).attr("y",R/2)}}if(a.length>0){let U=m.select("defs").empty()?m.append("defs"):m.select("defs"),Y=`cynefin-arrow-${e}`;U.append("marker").attr("id",Y).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerWidth",6).attr("markerHeight",6).attr("orient","auto-start-reverse").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","cynefinArrowHead");let H=f.append("g").attr("class","cynefin-arrows");a.forEach((J)=>{let K=D[J.from],O=D[J.to];if(!K||!O)return;if(J.from===J.to){sA.warn(`Cynefin renderer: skipping self-loop on domain "${J.from}"`);return}let{cx:P,cy:z}=K,{cx:AA,cy:W}=O,CA=(P+AA)/2,tA=(z+W)/2,lA=AA-P,gA=W-z,aA=Math.sqrt(lA*lA+gA*gA),NA=aA*0.15,DA=-gA/aA,KA=lA/aA,TA=CA+DA*NA,qA=tA+KA*NA;if(H.append("path").attr("class","cynefinArrowLine").attr("d",`M${P},${z} Q${TA},${qA} ${AA},${W}`).attr("fill","none").attr("marker-end",`url(#${Y})`),J.label)H.append("text").attr("class","cynefinArrowLabel").attr("x",TA).attr("y",qA-6).attr("text-anchor","middle").attr("dominant-baseline","auto").text(J.label)})}if(n)f.append("text").attr("class","cynefinTitle").attr("x",C/2).attr("y",-E/2).attr("text-anchor","middle").attr("dominant-baseline","middle").text(n)},"draw"),xKt={draw:FKt},SKt=y(()=>{let A=L0(),e=ot();return si(A,e.themeVariables).cynefin},"getCynefinTheme"),LKt=y(()=>{let A=SKt();return`
.cynefinDomain {
stroke: none;
}
.cynefinDomainLabel {
font-size: ${A.domainFontSize}px;
font-weight: bold;
fill: ${A.labelColor};
}
.cynefinSubtitle {
font-size: ${A.itemFontSize-1}px;
fill: ${A.textColor};
font-style: italic;
}
.cynefinItem {
fill-opacity: 0.95;
stroke: ${A.boundaryColor};
stroke-width: 1;
}
.cynefinItemText {
font-size: ${A.itemFontSize}px;
fill: ${A.textColor};
}
.cynefinItemOverflow {
fill-opacity: 0.6;
stroke: ${A.boundaryColor};
stroke-width: 1;
stroke-dasharray: 3 2;
}
.cynefinBoundary {
stroke: ${A.boundaryColor};
stroke-width: ${A.boundaryWidth};
stroke-dasharray: 6 3;
}
.cynefinCliff {
stroke: ${A.cliffColor};
stroke-width: ${A.cliffWidth};
}
.cynefinConfusion {
stroke: ${A.boundaryColor};
stroke-width: 1.5;
stroke-dasharray: 4 2;
}
.cynefinArrowLine {
stroke: ${A.arrowColor};
stroke-width: ${A.arrowWidth};
fill: none;
}
.cynefinArrowHead {
fill: ${A.arrowColor};
stroke: none;
}
.cynefinArrowLabel {
font-size: ${A.itemFontSize-1}px;
fill: ${A.textColor};
}
.cynefinTitle {
font-size: ${A.domainFontSize+2}px;
font-weight: bold;
fill: ${A.labelColor};
}
`},"styles"),RKt=LKt,H0e={parser:bKt,db:tP,renderer:xKt,styles:RKt}});var WBA="",qBA="",zBA="",ZBA,rP,n1,L6,NKt,O0e,P0e,GKt,UKt,MKt,TKt,YKt,HKt,KKt,JKt,OKt,pu,p0,PKt,_Kt,WKt,_0e,qKt,zKt,Fu,W0e,Em,ZKt,VKt,VBA,o1,fc,jKt,J0e,XKt,s1;var f7=_(()=>{cn();rr();ir();Nt();ZBA=[],rP=new Map,n1=y((A)=>gr(A,OA()),"sanitizeText"),L6=y((A)=>{switch(A.type){case"terminal":return{...A,value:n1(A.value)};case"nonterminal":return{...A,name:n1(A.name)};case"sequence":return{...A,elements:A.elements.map(L6)};case"choice":return{...A,alternatives:A.alternatives.map(L6)};case"optional":return{...A,element:L6(A.element)};case"repetition":return{...A,element:L6(A.element),separator:A.separator?L6(A.separator):void 0};case"special":return{...A,text:n1(A.text)}}},"sanitizeAstNode"),NKt=y(()=>{WBA="",qBA="",zBA="",ZBA.length=0,rP.clear(),cr(),sA.debug("[Railroad] Database cleared")},"clear"),O0e=y((A)=>{WBA=n1(A),sA.debug("[Railroad] Title set:",A)},"setTitle"),P0e=y(()=>WBA,"getTitle"),GKt=y((A)=>{let e={...A,name:n1(A.name),definition:L6(A.definition),comment:A.comment?n1(A.comment):void 0};if(sA.debug("[Railroad] Adding rule:",e.name),rP.has(e.name))sA.warn(`[Railroad] Rule '${e.name}' is already defined. Overwriting.`);ZBA.push(e),rP.set(e.name,e)},"addRule"),UKt=y(()=>ZBA,"getRules"),MKt=y((A)=>rP.get(A),"getRule"),TKt=y((A)=>{qBA=n1(A).replace(/^\s+/g,""),sA.debug("[Railroad] Accessibility title set:",A)},"setAccTitle"),YKt=y(()=>qBA,"getAccTitle"),HKt=y((A)=>{zBA=n1(A).replace(/\n\s+/g,`
`),sA.debug("[Railroad] Accessibility description set:",A)},"setAccDescription"),KKt=y(()=>zBA,"getAccDescription"),JKt=O0e,OKt=P0e,pu={clear:NKt,setTitle:O0e,getTitle:P0e,addRule:GKt,getRules:UKt,getRule:MKt,setAccTitle:TKt,getAccTitle:YKt,setAccDescription:HKt,getAccDescription:KKt,setDiagramTitle:JKt,getDiagramTitle:OKt},p0={compactMode:!1,padding:10,verticalSeparation:8,horizontalSeparation:10,arcRadius:10,fontSize:14,fontFamily:"monospace",terminalFill:"#FFFFC0",terminalStroke:"#000000",terminalTextColor:"#000000",nonTerminalFill:"#FFFFFF",nonTerminalStroke:"#000000",nonTerminalTextColor:"#000000",lineColor:"#000000",strokeWidth:2,markerFill:"#000000",commentFill:"#E8E8E8",commentStroke:"#888888",commentTextColor:"#666666",specialFill:"#F0E0FF",specialStroke:"#8800CC",ruleNameColor:"#000066",showMarkers:!0,markerRadius:5},PKt=/^#(?:[\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$|^(?:rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch)\([\d\s%+,./-]+\)$|^[a-z]+$/i,_Kt=/^[\w "',.-]+$/,WKt=new Set(["compactMode","padding","verticalSeparation","horizontalSeparation","arcRadius","fontSize","fontFamily","terminalFill","terminalStroke","terminalTextColor","nonTerminalFill","nonTerminalStroke","nonTerminalTextColor","lineColor","strokeWidth","markerFill","commentFill","commentStroke","commentTextColor","specialFill","specialStroke","ruleNameColor","showMarkers","markerRadius"]),_0e=y((A)=>{if(!A)return!1;return Object.keys(A).every((e)=>e==="railroad"||WKt.has(e))},"isRailroadStyleOptions"),qKt=y((A)=>{if(!A)return{};if("railroad"in A&&A.railroad)return A.railroad;return _0e(A)?A:{}},"extractRailroadOverrides"),zKt=y((A)=>{if(!A||_0e(A))return{};let{railroad:e,svgId:t,theme:r,look:i,...u}=A;return u},"extractThemeOverrides"),Fu=y((A,e)=>{if(typeof A!=="string")return e;let t=A.trim();return PKt.test(t)?t:e},"sanitizeColorValue"),W0e=y((A,e)=>{if(typeof A!=="string")return e;let t=A.trim();return _Kt.test(t)?t:e},"sanitizeFontFamilyValue"),Em=y((A,e)=>{let t=typeof A==="number"?A:typeof A==="string"?Number.parseFloat(A):Number.NaN;return Number.isFinite(t)&&t>=0?t:e},"sanitizeNumberValue"),ZKt=y((A)=>{let e=typeof A==="number"?A:typeof A==="string"?Number.parseFloat(A):Number.NaN;return Number.isFinite(e)&&e>0?e:void 0},"parseThemeFontSize"),VKt=y((A)=>{let e=W0e(A.fontFamily,p0.fontFamily),t=ZKt(A.fontSize)??p0.fontSize;return{...p0,fontFamily:e,fontSize:t,terminalFill:Fu(A.secondBkg??A.secondaryColor,p0.terminalFill),terminalStroke:Fu(A.secondaryBorderColor??A.lineColor,p0.terminalStroke),terminalTextColor:Fu(A.secondaryTextColor??A.textColor,p0.terminalTextColor),nonTerminalFill:Fu(A.mainBkg??A.background,p0.nonTerminalFill),nonTerminalStroke:Fu(A.primaryBorderColor??A.lineColor,p0.nonTerminalStroke),nonTerminalTextColor:Fu(A.primaryTextColor??A.textColor,p0.nonTerminalTextColor),lineColor:Fu(A.lineColor,p0.lineColor),markerFill:Fu(A.lineColor,p0.markerFill),commentFill:Fu(A.labelBackground??A.tertiaryColor,p0.commentFill),commentStroke:Fu(A.tertiaryBorderColor??A.lineColor,p0.commentStroke),commentTextColor:Fu(A.tertiaryTextColor??A.textColor,p0.commentTextColor),specialFill:Fu(A.tertiaryColor??A.secondaryColor,p0.specialFill),specialStroke:Fu(A.tertiaryBorderColor??A.secondaryBorderColor,p0.specialStroke),ruleNameColor:Fu(A.titleColor??A.textColor,p0.ruleNameColor)}},"buildThemeDefaults"),VBA=y((A)=>{let e=ot(),t={...L0(),...e.themeVariables??{},...zKt(A)},r=VKt(t),i={...e.railroad??{},...qKt(A)};return{compactMode:i.compactMode??r.compactMode,padding:Em(i.padding,r.padding),verticalSeparation:Em(i.verticalSeparation,r.verticalSeparation),horizontalSeparation:Em(i.horizontalSeparation,r.horizontalSeparation),arcRadius:Em(i.arcRadius,r.arcRadius),fontSize:Em(i.fontSize,r.fontSize),fontFamily:W0e(i.fontFamily,r.fontFamily),terminalFill:Fu(i.terminalFill,r.terminalFill),terminalStroke:Fu(i.terminalStroke,r.terminalStroke),terminalTextColor:Fu(i.terminalTextColor,r.terminalTextColor),nonTerminalFill:Fu(i.nonTerminalFill,r.nonTerminalFill),nonTerminalStroke:Fu(i.nonTerminalStroke,r.nonTerminalStroke),nonTerminalTextColor:Fu(i.nonTerminalTextColor,r.nonTerminalTextColor),lineColor:Fu(i.lineColor,r.lineColor),strokeWidth:Em(i.strokeWidth,r.strokeWidth),markerFill:Fu(i.markerFill,r.markerFill),commentFill:Fu(i.commentFill,r.commentFill),commentStroke:Fu(i.commentStroke,r.commentStroke),commentTextColor:Fu(i.commentTextColor,r.commentTextColor),specialFill:Fu(i.specialFill,r.specialFill),specialStroke:Fu(i.specialStroke,r.specialStroke),ruleNameColor:Fu(i.ruleNameColor,r.ruleNameColor),showMarkers:i.showMarkers??r.showMarkers,markerRadius:Em(i.markerRadius,r.markerRadius)}},"buildRailroadStyleOptions"),o1=y((A)=>{let{fontFamily:e,fontSize:t,terminalFill:r,terminalStroke:i,terminalTextColor:u,nonTerminalFill:a,nonTerminalStroke:n,nonTerminalTextColor:o,lineColor:s,strokeWidth:l,markerFill:g,commentFill:C,commentStroke:B,commentTextColor:E,specialFill:d,specialStroke:I,ruleNameColor:h}=VBA(A);return`
.railroad-diagram {
font-family: ${e};
font-size: ${t}px;
}
.railroad-terminal rect {
fill: ${r};
stroke: ${i};
stroke-width: ${l}px;
}
.railroad-terminal text {
fill: ${u};
font-family: ${e};
font-size: ${t}px;
text-anchor: middle;
dominant-baseline: middle;
}
.railroad-nonterminal rect {
fill: ${a};
stroke: ${n};
stroke-width: ${l}px;
}
.railroad-nonterminal text {
fill: ${o};
font-family: ${e};
font-size: ${t}px;
text-anchor: middle;
dominant-baseline: middle;
}
.railroad-line {
stroke: ${s};
stroke-width: ${l}px;
fill: none;
}
.railroad-start circle,
.railroad-end circle {
fill: ${g};
}
.railroad-comment ellipse {
fill: ${C};
stroke: ${B};
stroke-width: ${l}px;
}
.railroad-comment text {
fill: ${E};
font-style: italic;
font-family: ${e};
font-size: ${t}px;
text-anchor: middle;
dominant-baseline: middle;
}
.railroad-special rect {
fill: ${d};
stroke: ${I};
stroke-width: ${l}px;
stroke-dasharray: 5,3;
}
.railroad-special text {
fill: ${o};
font-family: ${e};
font-size: ${t}px;
text-anchor: middle;
dominant-baseline: middle;
}
.railroad-rule-name {
font-weight: bold;
fill: ${h};
font-family: ${e};
font-size: ${t}px;
}
.railroad-group {
/* Grouping container, no specific styles */
}
`},"getStyles"),fc=class{constructor(){this.d=""}static{y(this,"PathBuilder")}moveTo(A,e){return this.d+=`M ${A} ${e} `,this}lineTo(A,e){return this.d+=`L ${A} ${e} `,this}horizontalTo(A){return this.d+=`H ${A} `,this}verticalTo(A){return this.d+=`V ${A} `,this}arcTo(A,e,t,r,i,u,a){return this.d+=`A ${A} ${e} ${t} ${r?1:0} ${i?1:0} ${u} ${a} `,this}build(){return this.d.trim()}},jKt=class{constructor(A,e=VBA()){this.textCache=new Map,this.svg=A,this.config=e}static{y(this,"RailroadRenderer")}measureText(A){if(this.textCache.has(A))return this.textCache.get(A);let e=this.svg.append("text").attr("font-family",this.config.fontFamily).attr("font-size",this.config.fontSize).text(A),t=e.node().getBBox(),r={width:t.width,height:t.height};return e.remove(),this.textCache.set(A,r),r}renderTerminal(A,e){let t=this.measureText(e),r=t.width+this.config.padding*2,i=t.height+this.config.padding*2,u=A.append("g").attr("class","railroad-terminal");return u.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",i).attr("rx",10).attr("ry",10),u.append("text").attr("x",r/2).attr("y",i/2).text(e),{element:u.node(),dimensions:{width:r,height:i,up:i/2,down:i/2}}}renderNonTerminal(A,e){let t=this.measureText(e),r=t.width+this.config.padding*2,i=t.height+this.config.padding*2,u=A.append("g").attr("class","railroad-nonterminal");return u.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",i),u.append("text").attr("x",r/2).attr("y",i/2).text(e),{element:u.node(),dimensions:{width:r,height:i,up:i/2,down:i/2}}}renderSequence(A,e){let t=e.map((o)=>this.renderExpression(A,o)),r=0,i=0,u=0;for(let o of t)r+=o.dimensions.width,i=Math.max(i,o.dimensions.up),u=Math.max(u,o.dimensions.down);r+=(t.length-1)*this.config.horizontalSeparation;let a=A.append("g").attr("class","railroad-sequence"),n=0;for(let o=0;o<t.length;o++){let s=t[o],l=i-s.dimensions.up;if(a.node().appendChild(s.element).setAttribute("transform",`translate(${n}, ${l})`),o<t.length-1){let C=n+s.dimensions.width,B=C+this.config.horizontalSeparation,E=i;a.append("path").attr("class","railroad-line").attr("d",new fc().moveTo(C,E).lineTo(B,E).build())}n+=s.dimensions.width+this.config.horizontalSeparation}return{element:a.node(),dimensions:{width:r,height:i+u,up:i,down:u}}}renderChoice(A,e){let t=e.map((g)=>this.renderExpression(A,g)),r=0,i=0;for(let g of t)r=Math.max(r,g.dimensions.width),i+=g.dimensions.height;i+=(t.length-1)*this.config.verticalSeparation;let u=this.config.arcRadius,a=u*4,n=r+a,o=A.append("g").attr("class","railroad-choice"),s=0,l=i/2;for(let g of t){let C=s,B=C+g.dimensions.up,E=u*2+(r-g.dimensions.width)/2;o.node().appendChild(g.element).setAttribute("transform",`translate(${E}, ${C})`);let I=new fc,h=B>l;if(B===l)I.moveTo(0,l).lineTo(E,B);else I.moveTo(0,l).arcTo(u,u,0,!1,h,u,l+(h?u:-u)).lineTo(u,B-(h?u:-u)).arcTo(u,u,0,!1,!h,u*2,B).lineTo(E,B);o.append("path").attr("class","railroad-line").attr("d",I.build());let Q=new fc,p=E+g.dimensions.width,m=n-u*2;if(B===l)Q.moveTo(p,B).lineTo(n,l);else Q.moveTo(p,B).lineTo(m,B).arcTo(u,u,0,!1,!h,n-u,B+(h?-u:u)).lineTo(n-u,l+(h?u:-u)).arcTo(u,u,0,!1,h,n,l);o.append("path").attr("class","railroad-line").attr("d",Q.build()),s+=g.dimensions.height+this.config.verticalSeparation}return{element:o.node(),dimensions:{width:n,height:i,up:l,down:i-l}}}renderOptional(A,e){let t=this.renderExpression(A,e),r=this.config.arcRadius,i=r*2,u=t.dimensions.width+r*4,a=t.dimensions.height+i,n=A.append("g").attr("class","railroad-optional"),o=r*2,s=i;n.node().appendChild(t.element).setAttribute("transform",`translate(${o}, ${s})`);let g=s+t.dimensions.up,C=new fc().moveTo(0,g).lineTo(r*2,g);n.append("path").attr("class","railroad-line").attr("d",C.build());let B=new fc().moveTo(o+t.dimensions.width,g).lineTo(u,g);n.append("path").attr("class","railroad-line").attr("d",B.build());let E=new fc().moveTo(0,g).arcTo(r,r,0,!1,!1,r,g-r).lineTo(r,r).arcTo(r,r,0,!1,!0,r*2,0).lineTo(u-r*2,0).arcTo(r,r,0,!1,!0,u-r,r).lineTo(u-r,g-r).arcTo(r,r,0,!1,!1,u,g);return n.append("path").attr("class","railroad-line").attr("d",E.build()),{element:n.node(),dimensions:{width:u,height:a,up:g,down:a-g}}}renderRepetition(A,e,t){let r=this.renderExpression(A,e),i=this.config.arcRadius,u=i*2,a=r.dimensions.width+i*4,n=t===0,o=r.dimensions.height+u+(n?u:0),s=A.append("g").attr("class","railroad-repetition"),l=i*2,g=n?u:0;s.node().appendChild(r.element).setAttribute("transform",`translate(${l}, ${g})`);let B=g+r.dimensions.up;s.append("path").attr("class","railroad-line").attr("d",new fc().moveTo(0,B).lineTo(i*2,B).build()),s.append("path").attr("class","railroad-line").attr("d",new fc().moveTo(l+r.dimensions.width,B).lineTo(a,B).build());let E=g+r.dimensions.height+i,d=new fc().moveTo(l+r.dimensions.width,B).arcTo(i,i,0,!1,!0,l+r.dimensions.width+i,B+i).lineTo(l+r.dimensions.width+i,E).arcTo(i,i,0,!1,!0,l+r.dimensions.width,E+i).lineTo(i*2,E+i).arcTo(i,i,0,!1,!0,i,E).lineTo(i,B+i).arcTo(i,i,0,!1,!0,i*2,B);if(s.append("path").attr("class","railroad-line").attr("d",d.build()),n){let I=new fc().moveTo(0,B).arcTo(i,i,0,!1,!1,i,B-i).lineTo(i,i).arcTo(i,i,0,!1,!0,i*2,0).lineTo(a-i*2,0).arcTo(i,i,0,!1,!0,a-i,i).lineTo(a-i,B-i).arcTo(i,i,0,!1,!1,a,B);s.append("path").attr("class","railroad-line").attr("d",I.build())}return{element:s.node(),dimensions:{width:a,height:o,up:B,down:o-B}}}renderSpecial(A,e){let t=this.measureText("? "+e+" ?"),r=t.width+this.config.padding*2,i=t.height+this.config.padding*2,u=A.append("g").attr("class","railroad-special");return u.append("rect").attr("x",0).attr("y",0).attr("width",r).attr("height",i),u.append("text").attr("x",r/2).attr("y",i/2).text("? "+e+" ?"),{element:u.node(),dimensions:{width:r,height:i,up:i/2,down:i/2}}}renderExpression(A,e){switch(e.type){case"terminal":return this.renderTerminal(A,e.value);case"nonterminal":return this.renderNonTerminal(A,e.name);case"sequence":return this.renderSequence(A,e.elements);case"choice":return this.renderChoice(A,e.alternatives);case"optional":return this.renderOptional(A,e.element);case"repetition":return this.renderRepetition(A,e.element,e.min);case"special":return this.renderSpecial(A,e.text);default:throw Error(`Unknown node type: ${e.type}`)}}renderRule(A,e){let t=this.svg.append("g").attr("class","railroad-rule").attr("transform",`translate(0, ${e})`),r=A.name+" =",i=this.measureText(r).width+20,u=i+20,a=t.append("g"),n=this.renderExpression(a,A.definition),o=Math.max(20,n.dimensions.up),s=o-n.dimensions.up;return a.attr("transform",`translate(${u}, ${s})`),t.append("g").attr("class","railroad-rule-name-group").append("text").attr("class","railroad-rule-name").attr("x",0).attr("y",o).text(r),t.append("g").attr("class","railroad-start").append("circle").attr("cx",i).attr("cy",o).attr("r",this.config.markerRadius),t.append("g").attr("class","railroad-end").append("circle").attr("cx",u+n.dimensions.width+10).attr("cy",o).attr("r",this.config.markerRadius),t.append("path").attr("class","railroad-line").attr("d",new fc().moveTo(i+this.config.markerRadius,o).lineTo(u,o).build()),t.append("path").attr("class","railroad-line").attr("d",new fc().moveTo(u+n.dimensions.width,o).lineTo(u+n.dimensions.width+10-this.config.markerRadius,o).build()),{height:Math.max(40,s+n.dimensions.height+this.config.padding*2),width:u+n.dimensions.width+10+this.config.markerRadius}}renderDiagram(A){let e=this.config.padding,t=0;for(let r of A){let i=this.renderRule(r,e);e+=i.height+this.config.verticalSeparation,t=Math.max(t,i.width)}return{width:t+this.config.padding*2,height:e+this.config.padding}}},J0e=y((A,e,t)=>{Xr(A,e.height,e.width,t),A.attr("viewBox",`0 0 ${e.width} ${e.height}`)},"configureRailroadSvgSize"),XKt=y((A,e,t)=>{sA.debug(`[Railroad] Rendering diagram
`+A);try{let r=zi(e);r.attr("class","railroad-diagram");let u=ot().railroad?.useMaxWidth??!0,a=pu.getRules();if(sA.debug(`[Railroad] Rendering ${a.length} rules`),a.length===0){sA.warn("[Railroad] No rules to render"),J0e(r,{height:100,width:200},u);return}let o=new jKt(r,VBA()).renderDiagram(a);J0e(r,o,u),sA.debug("[Railroad] Render complete")}catch(r){throw sA.error("[Railroad] Render error:",r),r}},"draw"),s1={draw:XKt}});var $Kt,R6,AJt,eJt,tJt,q0e;var z0e=_(()=>{f7();ms();cn();rr();ir();Nt();I0();$Kt=em().Railroad.parser.LangiumParser,R6=y((A)=>{switch(A.$type){case"RailroadTerminalExpr":return{type:"terminal",value:A.value};case"RailroadNonTerminalExpr":return{type:"nonterminal",name:A.name};case"RailroadSpecialExpr":return{type:"special",text:A.text};case"RailroadSequenceExpr":{let e=A.elements.map(R6);return e.length===1?e[0]:{type:"sequence",elements:e}}case"RailroadChoiceExpr":{let e=A.alternatives.map(R6);return e.length===1?e[0]:{type:"choice",alternatives:e}}case"RailroadOptionalExpr":return{type:"optional",element:R6(A.element)};case"RailroadOneOrMoreExpr":return{type:"repetition",element:R6(A.element),min:1,max:1/0};case"RailroadZeroOrMoreExpr":return{type:"repetition",element:R6(A.element),min:0,max:1/0};default:throw Error(`Unsupported railroad expression: ${A.$type}`)}},"transformExpression"),AJt=y((A)=>({name:A.name,definition:R6(A.definition)}),"transformRule"),eJt=y((A)=>{if(hu(A,pu),A.title)pu.setTitle(A.title);A.rules.map((e)=>pu.addRule(AJt(e)))},"populateDb"),tJt={parse:y((A)=>{pu.clear(),sA.debug("[Railroad Parser] Starting Langium parse");let e=$Kt.parse(A);if(e.lexerErrors.length>0||e.parserErrors.length>0)throw new ih(e);let t=e.value;sA.debug("[Railroad Parser] Parsed rules:",t.rules.length),eJt(t),sA.debug("[Railroad Parser] Parse complete")},"parse"),parser:{yy:pu}},q0e={parser:tJt,db:pu,renderer:s1,styles:o1}});var rJt,iP,iJt,Z0e,uJt,aJt,nJt,oJt,sJt,V0e;var j0e=_(()=>{f7();ms();cn();rr();ir();Nt();I0();rJt=tm().RailroadEbnf.parser.LangiumParser,iP=y((A)=>{let e=A.alternatives.map(iJt);if(e.length===1)return e[0];return{type:"choice",alternatives:e}},"transformChoice"),iJt=y((A)=>{let e=A.elements.map(aJt);if(e.length===1)return e[0];return{type:"sequence",elements:e}},"transformSequence"),Z0e=y((A)=>{switch(A.$type){case"EbnfTerminal":return{type:"terminal",value:A.value};case"EbnfNonTerminal":return{type:"nonterminal",name:A.name};case"EbnfSpecial":return{type:"special",text:A.text};case"EbnfGroup":return iP(A.element);case"EbnfOptional":return{type:"optional",element:iP(A.element)};case"EbnfRepetition":return{type:"repetition",element:iP(A.element),min:0,max:1/0};default:throw Error(`Unsupported EBNF primary node: ${A.$type}`)}},"transformPrimary"),uJt=y((A,e)=>{switch(e.$type){case"EbnfOptionalPostfix":return{type:"optional",element:A};case"EbnfZeroOrMorePostfix":return{type:"repetition",element:A,min:0,max:1/0};case"EbnfOneOrMorePostfix":return{type:"repetition",element:A,min:1,max:1/0};case"EbnfExceptionPostfix":return{type:"sequence",elements:[A,{type:"terminal",value:"-"},Z0e(e.except)]};default:throw Error(`Unsupported EBNF postfix node: ${e.$type}`)}},"transformPostfix"),aJt=y((A)=>A.postfixes.reduce((e,t)=>uJt(e,t),Z0e(A.base)),"transformTerm"),nJt=y((A)=>({name:A.name,definition:iP(A.definition)}),"transformRule"),oJt=y((A)=>{if(hu(A,pu),A.title)pu.setTitle(A.title);A.rules.map((e)=>pu.addRule(nJt(e)))},"populateDb"),sJt={parse:y((A)=>{pu.clear(),sA.debug("[EBNF Parser] Starting Langium parse");let e=rJt.parse(A);if(e.lexerErrors.length>0||e.parserErrors.length>0)throw new ih(e);let t=e.value;sA.debug("[EBNF Parser] Parsed rules:",t.rules.length),oJt(t),sA.debug("[EBNF Parser] Parse complete")},"parse"),parser:{yy:pu}},V0e={parser:sJt,db:pu,renderer:s1,styles:o1}});var lJt,jBA,gJt,cJt,CJt,BJt,EJt,dJt,IJt,X0e;var $0e=_(()=>{f7();ms();cn();rr();ir();Nt();I0();lJt=rm().RailroadAbnf.parser.LangiumParser,jBA=y((A)=>{let e=A.alternatives.map(gJt);if(e.length===1)return e[0];return{type:"choice",alternatives:e}},"transformAlternation"),gJt=y((A)=>{let e=A.elements.map(CJt);if(e.length===1)return e[0];return{type:"sequence",elements:e}},"transformConcatenation"),cJt=y((A)=>{if(A.includes("*")){let[t,r]=A.split("*"),i=t?parseInt(t,10):0,u=r?parseInt(r,10):1/0;return{min:i,max:u}}let e=parseInt(A,10);return{min:e,max:e}},"parseRepeat"),CJt=y((A)=>{let e=BJt(A.primary);if(!A.repeat)return e;let{min:t,max:r}=cJt(A.repeat);if(t===0&&r===1)return{type:"optional",element:e};return{type:"repetition",element:e,min:t,max:r}},"transformElement"),BJt=y((A)=>{switch(A.$type){case"AbnfStringLiteral":return{type:"terminal",value:A.value};case"AbnfNumVal":return{type:"terminal",value:A.value};case"AbnfRuleName":return{type:"nonterminal",name:A.name};case"AbnfGroup":return jBA(A.element);case"AbnfOptionalGroup":return{type:"optional",element:jBA(A.element)};default:throw Error(`Unsupported ABNF primary node: ${A.$type}`)}},"transformPrimary"),EJt=y((A)=>({name:A.name,definition:jBA(A.definition)}),"transformRule"),dJt=y((A)=>{if(hu(A,pu),A.title)pu.setTitle(A.title);A.rules.map((e)=>pu.addRule(EJt(e)))},"populateDb"),IJt={parse:y((A)=>{pu.clear(),sA.debug("[ABNF Parser] Starting Langium parse");let e=lJt.parse(A);if(e.lexerErrors.length>0||e.parserErrors.length>0)throw new ih(e);let t=e.value;sA.debug("[ABNF Parser] Parsed rules:",t.rules.length),dJt(t),sA.debug("[ABNF Parser] Parse complete")},"parse"),parser:{yy:pu}},X0e={parser:IJt,db:pu,renderer:s1,styles:o1}});var hJt,ese,QJt,pJt,Ase,fJt,mJt,DJt,yJt,wJt,tse;var rse=_(()=>{f7();ms();cn();rr();ir();Nt();I0();hJt=im().RailroadPeg.parser.LangiumParser,ese=y((A)=>{let e=A.alternatives.map(QJt);if(e.length===1)return e[0];return{type:"choice",alternatives:e}},"transformOrderedChoice"),QJt=y((A)=>{let e=A.elements.map(pJt);if(e.length===1)return e[0];return{type:"sequence",elements:e}},"transformSequence"),pJt=y((A)=>{let e=fJt(A.suffix);if(!A.operator)return e;return{type:"special",text:A.operator==="&"?`&${Ase(e)}`:`!${Ase(e)}`}},"transformPrefix"),Ase=y((A)=>{switch(A.type){case"terminal":return`"${A.value}"`;case"nonterminal":return A.name;case"special":return A.text;default:return"(...)"}},"nodeToLabel"),fJt=y((A)=>{let e=mJt(A.primary);if(!A.operator)return e;switch(A.operator){case"?":return{type:"optional",element:e};case"*":return{type:"repetition",element:e,min:0,max:1/0};case"+":return{type:"repetition",element:e,min:1,max:1/0};default:throw Error(`Unsupported PEG suffix operator: ${A.operator}`)}},"transformSuffix"),mJt=y((A)=>{switch(A.$type){case"PegLiteral":return{type:"terminal",value:A.value};case"PegIdentifier":return{type:"nonterminal",name:A.name};case"PegGroup":return ese(A.element);case"PegAny":return{type:"special",text:A.dot};default:throw Error(`Unsupported PEG primary node: ${A.$type}`)}},"transformPrimary"),DJt=y((A)=>({name:A.name,definition:ese(A.definition)}),"transformRule"),yJt=y((A)=>{if(hu(A,pu),A.title)pu.setTitle(A.title);A.rules.map((e)=>pu.addRule(DJt(e)))},"populateDb"),wJt={parse:y((A)=>{pu.clear(),sA.debug("[PEG Parser] Starting Langium parse");let e=hJt.parse(A);if(e.lexerErrors.length>0||e.parserErrors.length>0)throw new ih(e);let t=e.value;sA.debug("[PEG Parser] Parsed rules:",t.rules.length),yJt(t),sA.debug("[PEG Parser] Parse complete")},"parse"),parser:{yy:pu}},tse={parser:wJt,db:pu,renderer:s1,styles:o1}});function qse(A,e){if(A.attr("role",l_t),e!=="")A.attr("aria-roledescription",e)}function zse(A,e,t,r){if(A.insert===void 0)return;if(t){let i=`chart-desc-${r}`;A.attr("aria-describedby",i),A.insert("desc",":first-child").attr("id",i).text(t)}if(e){let i=`chart-title-${r}`;A.attr("aria-labelledby",i),A.insert("title",":first-child").attr("id",i).text(e)}}function Zse(A){let e=A.match(WV);if(!e)return{text:A,metadata:{}};let t=e[1],r=t?e[2].split(`
`).map((a)=>a.startsWith(t)?a.slice(t.length):a).join(`
`):e[2],i=mQ(r,{schema:fQ})??{};i=typeof i==="object"&&!Array.isArray(i)?i:{};let u={};if(i.displayMode)u.displayMode=i.displayMode.toString();if(i.title)u.title=i.title.toString();if(i.config)u.config=i.config;return{text:A.slice(e[0].length),metadata:u}}function eEA(A){let e=C_t(A),t=B_t(e),r=E_t(t.text),i=si(t.config,r.directive);return A=c_t(r.text),{code:A,title:t.title,config:i}}function Vse(A){let e=new TextEncoder().encode(A),t=Array.from(e,(r)=>String.fromCodePoint(r)).join("");return btoa(t)}function tEA(A){let e=eEA(A);return Bb(),cyA(e.config??{}),e}async function jse(A,e){aP();try{let{code:t,config:r}=tEA(A);return{diagramType:(await $se(t)).type,config:r}}catch(t){if(e?.suppressErrors)return!1;throw t}}function AEA(A,e){return A.append("iframe").attr("id",e).attr("style","width: 100%; height: 100%;").attr("sandbox","")}function Xse(A={}){let e=Ea({},A);if(e?.fontFamily&&!e.themeVariables?.fontFamily){if(!e.themeVariables)e.themeVariables={};e.themeVariables.fontFamily=e.fontFamily}if(syA(e),e?.theme&&e.theme in HB)e.themeVariables=HB[e.theme].getThemeVariables(e.themeVariables);else if(e)e.themeVariables=HB.default.getThemeVariables(e.themeVariables);let t=typeof e==="object"?oyA(e):PV();_5(t.logLevel),aP()}function Ale(A,e,t,r){qse(e,A),zse(e,t,r,e.attr("id"))}var ose="c4",bJt,vJt,kJt,FJt,sse="flowchart",xJt,SJt,LJt,RJt,lse="flowchart-v2",NJt,GJt,UJt,MJt,gse="swimlane",TJt,YJt,HJt,KJt,cse="er",JJt,OJt,PJt,_Jt,Cse="gitGraph",WJt,qJt,zJt,ZJt,Bse="gantt",VJt,jJt,XJt,$Jt,Ese="info",AOt,eOt,tOt,dse="pie",rOt,iOt,uOt,Ise="quadrantChart",aOt,nOt,oOt,sOt,hse="xychart",lOt,gOt,cOt,COt,Qse="requirement",BOt,EOt,dOt,IOt,pse="sequence",hOt,QOt,pOt,fOt,fse="class",mOt,DOt,yOt,wOt,mse="classDiagram",bOt,vOt,kOt,FOt,Dse="state",xOt,SOt,LOt,ROt,yse="stateDiagram",NOt,GOt,UOt,MOt,wse="journey",TOt,YOt,HOt,KOt,JOt,bse,OOt,POt,_Ot,vse="flowchart-elk",WOt,qOt,zOt,ZOt,kse="timeline",VOt,jOt,XOt,$Ot,Fse="mindmap",APt,ePt,tPt,rPt,xse="kanban",iPt,uPt,aPt,nPt,Sse="sankey",oPt,sPt,lPt,gPt,Lse="packet",cPt,CPt,BPt,Rse="radar",EPt,dPt,IPt,Nse="block",hPt,QPt,pPt,fPt,Gse="treeView",mPt,DPt,yPt,wPt,Use="architecture",bPt,vPt,kPt,FPt,Mse="eventmodeling",xPt,SPt,LPt,RPt,Tse="ishikawa",NPt,GPt,UPt,Yse="venn",MPt,TPt,YPt,HPt,Hse="treemap",KPt,JPt,OPt,Kse="wardley",PPt,_Pt,WPt,qPt,Jse="cynefin",zPt,ZPt,VPt,Ose="railroad",jPt,XPt,$Pt,Pse="railroadEbnf",A_t,e_t,t_t,_se="railroadAbnf",r_t,i_t,u_t,Wse="railroadPeg",a_t,n_t,o_t,ise=!1,aP,s_t,l_t="graphics-document document",$BA,use,g_t,c_t,C_t,B_t,E_t,d_t=50000,I_t="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",h_t="sandbox",Q_t="loose",p_t="http://www.w3.org/2000/svg",f_t="http://www.w3.org/1999/xlink",m_t="http://www.w3.org/1999/xhtml",D_t="100%",y_t="100%",w_t="border:0;margin:0;",b_t="margin:0",v_t="allow-top-navigation-by-user-activation allow-popups",k_t='The "iframe" tag is not supported by your browser.',F_t,x_t,ase,S_t,L_t,R_t,N_t,G_t,nse,U_t,M_t,$se,dm,T_t,ele,Y_t,tle,H_t,K_t,rle,J_t,uP,XBA=!1,ile,O_t,ule,P_t,Eh,Im;var rEA=_(()=>{cn();of();El();ul();n0();r0();Cs();u0();uo();Ln();ai();rr();ir();Nt();peA();Pr();BOA();$2();HG();bJt=y((A)=>/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/.test(A),"detector"),vJt=y(async()=>{await Promise.resolve().then(() => kOA());return{id:ose,diagram:vOA}},"loader"),kJt={id:ose,detector:bJt,loader:vJt},FJt=kJt,xJt=y((A,e)=>{if(e?.flowchart?.defaultRenderer==="dagre-wrapper"||e?.flowchart?.defaultRenderer==="elk")return!1;return/^\s*graph/.test(A)},"detector"),SJt=y(async()=>{await Promise.resolve().then(() => DY());return{id:sse,diagram:Xf}},"loader"),LJt={id:sse,detector:xJt,loader:SJt},RJt=LJt,NJt=y((A,e)=>{if(e?.flowchart?.defaultRenderer==="dagre-d3")return!1;if(e?.flowchart?.defaultRenderer==="elk")e.layout="elk";if(/^\s*graph/.test(A)&&e?.flowchart?.defaultRenderer==="dagre-wrapper")return!0;return/^\s*flowchart/.test(A)},"detector"),GJt=y(async()=>{await Promise.resolve().then(() => DY());return{id:lse,diagram:Xf}},"loader"),UJt={id:lse,detector:NJt,loader:GJt},MJt=UJt,TJt=y((A)=>/^\s*swimlane-beta\b/.test(A),"detector"),YJt=y(async()=>{await Promise.resolve().then(() => LOA());return{id:gse,diagram:SOA}},"loader"),HJt={id:gse,detector:TJt,loader:YJt},KJt=HJt,JJt=y((A)=>/^\s*erDiagram/.test(A),"detector"),OJt=y(async()=>{await Promise.resolve().then(() => UOA());return{id:cse,diagram:GOA}},"loader"),PJt={id:cse,detector:JJt,loader:OJt},_Jt=PJt,WJt=y((A)=>/^\s*gitGraph/.test(A),"detector"),qJt=y(async()=>{await Promise.resolve().then(() => ire());return{id:Cse,diagram:rre}},"loader"),zJt={id:Cse,detector:WJt,loader:qJt},ZJt=zJt,VJt=y((A)=>/^\s*gantt/.test(A),"detector"),jJt=y(async()=>{await Promise.resolve().then(() => vre());return{id:Bse,diagram:bre}},"loader"),XJt={id:Bse,detector:VJt,loader:jJt},$Jt=XJt,AOt=y((A)=>/^\s*info/.test(A),"detector"),eOt=y(async()=>{await Promise.resolve().then(() => Fre());return{id:Ese,diagram:kre}},"loader"),tOt={id:Ese,detector:AOt,loader:eOt},rOt=y((A)=>/^\s*pie/.test(A),"detector"),iOt=y(async()=>{await Promise.resolve().then(() => Rre());return{id:dse,diagram:Lre}},"loader"),uOt={id:dse,detector:rOt,loader:iOt},aOt=y((A)=>/^\s*quadrantChart/.test(A),"detector"),nOt=y(async()=>{await Promise.resolve().then(() => Vre());return{id:Ise,diagram:Zre}},"loader"),oOt={id:Ise,detector:aOt,loader:nOt},sOt=oOt,lOt=y((A)=>/^\s*xychart(-beta)?/.test(A),"detector"),gOt=y(async()=>{await Promise.resolve().then(() => hie());return{id:hse,diagram:Iie}},"loader"),cOt={id:hse,detector:lOt,loader:gOt},COt=cOt,BOt=y((A)=>/^\s*requirement(Diagram)?/.test(A),"detector"),EOt=y(async()=>{await Promise.resolve().then(() => fie());return{id:Qse,diagram:pie}},"loader"),dOt={id:Qse,detector:BOt,loader:EOt},IOt=dOt,hOt=y((A)=>/^\s*sequenceDiagram/.test(A),"detector"),QOt=y(async()=>{await Promise.resolve().then(() => Uie());return{id:pse,diagram:Gie}},"loader"),pOt={id:pse,detector:hOt,loader:QOt},fOt=pOt,mOt=y((A,e)=>{if(e?.class?.defaultRenderer==="dagre-wrapper")return!1;return/^\s*classDiagram/.test(A)},"detector"),DOt=y(async()=>{await Promise.resolve().then(() => Kie());return{id:fse,diagram:Hie}},"loader"),yOt={id:fse,detector:mOt,loader:DOt},wOt=yOt,bOt=y((A,e)=>{if(/^\s*classDiagram/.test(A)&&e?.class?.defaultRenderer==="dagre-wrapper")return!0;return/^\s*classDiagram-v2/.test(A)},"detector"),vOt=y(async()=>{await Promise.resolve().then(() => Oie());return{id:mse,diagram:Jie}},"loader"),kOt={id:mse,detector:bOt,loader:vOt},FOt=kOt,xOt=y((A,e)=>{if(e?.state?.defaultRenderer==="dagre-wrapper")return!1;return/^\s*stateDiagram/.test(A)},"detector"),SOt=y(async()=>{await Promise.resolve().then(() => Eue());return{id:Dse,diagram:Bue}},"loader"),LOt={id:Dse,detector:xOt,loader:SOt},ROt=LOt,NOt=y((A,e)=>{if(/^\s*stateDiagram-v2/.test(A))return!0;if(/^\s*stateDiagram/.test(A)&&e?.state?.defaultRenderer==="dagre-wrapper")return!0;return!1},"detector"),GOt=y(async()=>{await Promise.resolve().then(() => Iue());return{id:yse,diagram:due}},"loader"),UOt={id:yse,detector:NOt,loader:GOt},MOt=UOt,TOt=y((A)=>/^\s*journey/.test(A),"detector"),YOt=y(async()=>{await Promise.resolve().then(() => vue());return{id:wse,diagram:bue}},"loader"),HOt={id:wse,detector:TOt,loader:YOt},KOt=HOt,JOt=y((A,e,t)=>{sA.debug(`rendering svg for syntax error
`);let r=zi(e),i=r.append("g");r.attr("viewBox","0 0 2412 512"),Xr(r,100,512,!0),i.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),i.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),i.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),i.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),i.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),i.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),i.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in text"),i.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text(`mermaid version ${t}`)},"draw"),bse={draw:JOt},OOt=bse,POt={db:{},renderer:bse,parser:{parse:y(()=>{return},"parse")}},_Ot=POt,WOt=y((A,e={})=>{if(/^\s*flowchart-elk/.test(A)||/^\s*(flowchart|graph)/.test(A)&&e?.flowchart?.defaultRenderer==="elk")return e.layout="elk",!0;return!1},"detector"),qOt=y(async()=>{await Promise.resolve().then(() => DY());return{id:vse,diagram:Xf}},"loader"),zOt={id:vse,detector:WOt,loader:qOt},ZOt=zOt,VOt=y((A)=>/^\s*timeline/.test(A),"detector"),jOt=y(async()=>{await Promise.resolve().then(() => Xue());return{id:kse,diagram:jue}},"loader"),XOt={id:kse,detector:VOt,loader:jOt},$Ot=XOt,APt=y((A)=>/^\s*mindmap/.test(A),"detector"),ePt=y(async()=>{await Promise.resolve().then(() => uae());return{id:Fse,diagram:iae}},"loader"),tPt={id:Fse,detector:APt,loader:ePt},rPt=tPt,iPt=y((A)=>/^\s*kanban/.test(A),"detector"),uPt=y(async()=>{await Promise.resolve().then(() => oae());return{id:xse,diagram:nae}},"loader"),aPt={id:xse,detector:iPt,loader:uPt},nPt=aPt,oPt=y((A)=>/^\s*sankey(-beta)?/.test(A),"detector"),sPt=y(async()=>{await Promise.resolve().then(() => vae());return{id:Sse,diagram:bae}},"loader"),lPt={id:Sse,detector:oPt,loader:sPt},gPt=lPt,cPt=y((A)=>/^\s*packet(-beta)?/.test(A),"detector"),CPt=y(async()=>{await Promise.resolve().then(() => Sae());return{id:Lse,diagram:xae}},"loader"),BPt={id:Lse,detector:cPt,loader:CPt},EPt=y((A)=>/^\s*radar-beta/.test(A),"detector"),dPt=y(async()=>{await Promise.resolve().then(() => Yae());return{id:Rse,diagram:Tae}},"loader"),IPt={id:Rse,detector:EPt,loader:dPt},hPt=y((A)=>/^\s*block(-beta)?/.test(A),"detector"),QPt=y(async()=>{await Promise.resolve().then(() => Ine());return{id:Nse,diagram:dne}},"loader"),pPt={id:Nse,detector:hPt,loader:QPt},fPt=pPt,mPt=y((A)=>/^\s*treeView-beta/.test(A),"detector"),DPt=y(async()=>{await Promise.resolve().then(() => Sne());return{id:Gse,diagram:xne}},"loader"),yPt={id:Gse,detector:mPt,loader:DPt},wPt=yPt,bPt=y((A)=>/^\s*architecture/.test(A),"detector"),vPt=y(async()=>{await Promise.resolve().then(() => Vne());return{id:Use,diagram:Zne}},"loader"),kPt={id:Use,detector:bPt,loader:vPt},FPt=kPt,xPt=y((A)=>/^\s*eventmodeling/.test(A),"detector"),SPt=y(async()=>{await Promise.resolve().then(() => woe());return{id:Mse,diagram:yoe}},"loader"),LPt={id:Mse,detector:xPt,loader:SPt},RPt=LPt,NPt=y((A)=>/^\s*ishikawa(-beta)?\b/i.test(A),"detector"),GPt=y(async()=>{await Promise.resolve().then(() => Noe());return{id:Tse,diagram:Roe}},"loader"),UPt={id:Tse,detector:NPt,loader:GPt},MPt=y((A)=>/^\s*venn-beta/.test(A),"detector"),TPt=y(async()=>{await Promise.resolve().then(() => u0e());return{id:Yse,diagram:i0e}},"loader"),YPt={id:Yse,detector:MPt,loader:TPt},HPt=YPt,KPt=y((A)=>/^\s*treemap/.test(A),"detector"),JPt=y(async()=>{await Promise.resolve().then(() => l0e());return{id:Hse,diagram:s0e}},"loader"),OPt={id:Hse,detector:KPt,loader:JPt},PPt=y((A)=>/^\s*wardley-beta/i.test(A),"detector"),_Pt=y(async()=>{await Promise.resolve().then(() => S0e());return{id:Kse,diagram:x0e}},"loader"),WPt={id:Kse,detector:PPt,loader:_Pt},qPt=WPt,zPt=y((A)=>/^\s*cynefin-beta(?:[\s:]|$)/.test(A),"detector"),ZPt=y(async()=>{await Promise.resolve().then(() => K0e());return{id:Jse,diagram:H0e}},"loader"),VPt={id:Jse,detector:zPt,loader:ZPt},jPt=y((A)=>/^\s*railroad-beta/i.test(A),"detector"),XPt=y(async()=>{await Promise.resolve().then(() => z0e());return{id:Ose,diagram:q0e}},"loader"),$Pt={id:Ose,detector:jPt,loader:XPt},A_t=y((A)=>/^\s*railroad-ebnf-beta/i.test(A),"detector"),e_t=y(async()=>{await Promise.resolve().then(() => j0e());return{id:Pse,diagram:V0e}},"loader"),t_t={id:Pse,detector:A_t,loader:e_t},r_t=y((A)=>/^\s*railroad-abnf-beta/i.test(A),"detector"),i_t=y(async()=>{await Promise.resolve().then(() => $0e());return{id:_se,diagram:X0e}},"loader"),u_t={id:_se,detector:r_t,loader:i_t},a_t=y((A)=>/^\s*railroad-peg-beta/i.test(A),"detector"),n_t=y(async()=>{await Promise.resolve().then(() => rse());return{id:Wse,diagram:tse}},"loader"),o_t={id:Wse,detector:a_t,loader:n_t},aP=y(()=>{if(ise)return;ise=!0,hb("error",_Ot,(A)=>A.toLowerCase().trim()==="error"),hb("---",{db:{clear:y(()=>{},"clear")},styles:{},renderer:{draw:y(()=>{},"draw")},parser:{parse:y(()=>{throw Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with un-indented `---` blocks")},"parse")},init:y(()=>null,"init")},(A)=>A.toLowerCase().trimStart().startsWith("---")),MR(ZOt,rPt,FPt),MR(FJt,nPt,FOt,wOt,_Jt,$Jt,tOt,uOt,IOt,fOt,KJt,MJt,RJt,$Ot,ZJt,MOt,ROt,KOt,sOt,gPt,BPt,COt,fPt,RPt,wPt,IPt,UPt,OPt,$Pt,t_t,u_t,o_t,HPt,qPt,VPt)},"addDiagrams"),s_t=y(async()=>{sA.debug("Loading registered diagrams");let e=(await Promise.allSettled(Object.entries(uQ).map(async([t,{detector:r,loader:i}])=>{if(!i)return;try{JR(t)}catch{try{let{diagram:u,id:a}=await i();hb(a,u,r)}catch(u){throw sA.error(`Failed to load external diagram with key ${t}. Removing from detectors.`),delete uQ[t],u}}}))).filter((t)=>t.status==="rejected");if(e.length>0){sA.error(`Failed to load ${e.length} external diagrams`);for(let t of e)sA.error(t);throw Error(`Failed to load ${e.length} external diagrams`)}},"loadRegisteredDiagrams");y(qse,"setA11yDiagramInfo");y(zse,"addSVGa11yTitleDescription");$BA=class A{constructor(e,t,r,i,u){this.type=e,this.text=t,this.db=r,this.parser=i,this.renderer=u}static{y(this,"Diagram")}static async fromText(e,t={}){let r=ot(),i=Eb(e,r);e=KvA(e)+`
`;try{JR(i)}catch{let s=EyA(i);if(!s)throw new qV(`Diagram ${i} not found.`);let{id:l,diagram:g}=await s();hb(l,g)}let{db:u,parser:a,renderer:n,init:o}=JR(i);if(a.parser)a.parser.yy=u;if(u.clear?.(),o?.(r),t.title)u.setDiagramTitle?.(t.title);return await a.parse(e),new A(i,e,u,a,n)}async render(e,t){await this.renderer.draw(this.text,e,t,this)}getParser(){return this.parser}getType(){return this.type}},use=[],g_t=y(()=>{use.forEach((A)=>{A()}),use=[]},"attachFunctions"),c_t=y((A)=>A.replace(/^\s*%%(?!{)[^\n]+\n?/gm,"").trimStart(),"cleanupComments");y(Zse,"extractFrontMatter");C_t=y((A)=>A.replace(/\r\n?/g,`
`).replace(/<(\w+)([^>]*)>/g,(e,t,r)=>"<"+t+r.replace(/="([^"]*)"/g,"='$1'")+">"),"cleanupText"),B_t=y((A)=>{let{text:e,metadata:t}=Zse(A),{displayMode:r,title:i,config:u={}}=t;if(r){if(!u.gantt)u.gantt={};u.gantt.displayMode=r}return{title:i,config:u,text:e}},"processFrontmatter"),E_t=y((A)=>{let e=Jt.detectInit(A)??{},t=Jt.detectDirective(A,"wrap");if(Array.isArray(t))e.wrap=t.some(({type:r})=>r==="wrap");else if(t?.type==="wrap")e.wrap=!0;return{text:GvA(A),directive:e}},"processDirectives");y(eEA,"preprocessDiagram");y(Vse,"toBase64");F_t=["foreignobject"],x_t=["dominant-baseline"];y(tEA,"processAndSetConfigs");y(jse,"parse");ase=y((A,e,t=[])=>{let r=OV(`{ ${t.join(" !important; ")} !important; }`);return`.${A} ${e} ${r}`},"cssImportantStyles"),S_t=y((A,e=new Map)=>{let t=new CSSStyleSheet;if(A.fontFamily!==void 0)t.insertRule(`:root { --mermaid-font-family: ${A.fontFamily}}`,t.cssRules.length);if(A.altFontFamily!==void 0)t.insertRule(`:root { --mermaid-alt-font-family: ${A.altFontFamily}}`,t.cssRules.length);if(e instanceof Map){let n=Fi(A)?["> *","span"]:["rect","polygon","ellipse","circle","path"];e.forEach((o)=>{if(!YG(o.styles))n.forEach((s)=>{t.insertRule(ase(o.id,s,o.styles),t.cssRules.length)});if(!YG(o.textStyles))t.insertRule(ase(o.id,"tspan",(o?.textStyles||[]).map((s)=>s.replace("color","fill"))),t.cssRules.length)})}let r="";if(A.themeCSS!==void 0)if(typeof t.replaceSync==="function"){let i=new CSSStyleSheet;i.replaceSync(A.themeCSS),r=TR(i)+`
`}else r+=`${A.themeCSS}
`;return r+TR(t)},"createCssStyles"),L_t=y((A,e)=>gY(nOA(`${A}{${e}}`),cOA([y(function(r,i,u,a){if(r.type==="rule"&&Array.isArray(r.props)){if(r.parent&&r.parent.type===$k)return;r.props=r.props.map((n)=>{if(n===A&&Array.isArray(r.children)&&r.children.every((s)=>{if(s.type!=="decl")return!1;return new Set(["font-family","font-size","fill"]).has(s.props)}))return n;if(!((n.startsWith(`${A} `)||n.startsWith(`${A}>`))&&!n.startsWith(`${A} ||`)))return`${A} ${n}`;return n})}else if(r.type.startsWith("@")){if(![PJA,WJA,rY,zJA,"@container","@starting-style",$k].includes(r.type))sA.warn(`Removing unsupported at-rule ${r.type} from CSS`),r.type=sw}},"addNamespace"),lOA])),"compileCSS"),R_t=y((A,e,t,r)=>{let i=S_t(A,t),u=QyA(e,i,{...A.themeVariables,theme:A.theme,look:A.look},r);return L_t(r,u)},"createUserStyles"),N_t=y((A="",e,t)=>{let r=A;if(!t&&!e)r=r.replace(/marker-end="url\([\d+./:=?A-Za-z-]*?#/g,'marker-end="url(#');return r=eg(r),r=r.replace(/<br>/g,"<br/>"),r},"cleanUpSvgCode"),G_t=y((A="",e)=>{let t=e?.viewBox?.baseVal?.height?e.viewBox.baseVal.height+"px":y_t,r=Vse(`<body style="${b_t}">${A}</body>`);return`<iframe style="width:${D_t};height:${t};${w_t}" src="data:text/html;charset=UTF-8;base64,${r}" sandbox="${v_t}">
${k_t}
</iframe>`},"putIntoIFrame"),nse=y((A,e,t,r,i)=>{let u=A.append("div");if(u.attr("id",t),r)u.attr("style",r);let a=u.append("svg").attr("id",e).attr("width","100%").attr("xmlns",p_t);if(i)a.attr("xmlns:xlink",i);return a.append("g"),A},"appendDivSvgG");y(AEA,"sandboxedIframe");U_t=y((A,e,t,r)=>{A.getElementById(e)?.remove(),A.getElementById(t)?.remove(),A.getElementById(r)?.remove()},"removeExistingElements"),M_t=y(async function(A,e,t){aP();let r=tEA(e);e=r.code;let i=ot();if(sA.debug(i),e.length>(i?.maxTextSize??d_t))e=I_t;let u=`#${A}`,a="i"+A,n="#"+a,o="d"+A,s="#"+o,l=y(()=>{let F=Qe(C?n:s).node();if(F&&"remove"in F)F.remove()},"removeTempElements"),g=Qe(document.body),C=i.securityLevel===h_t,B=i.securityLevel===Q_t,E=i.fontFamily;if(t!==void 0){if(t)t.innerHTML="";if(C){let x=AEA(Qe(t),a);g=Qe(x.nodes()[0].contentDocument.body),g.node().style.margin="0"}else g=Qe(t);nse(g,A,o,`font-family: ${E}`,f_t)}else{if(U_t(document,A,o,a),C){let x=AEA(Qe(document.body),a);g=Qe(x.nodes()[0].contentDocument.body),g.node().style.margin="0"}else g=Qe("body");nse(g,A,o)}let d,I;try{d=await $BA.fromText(e,{title:r.title})}catch(x){if(i.suppressErrorRendering)throw l(),x;d=await $BA.fromText("error"),I=x}let h=g.select(s).node(),Q=d.type,p=h.firstChild,m=p.firstChild,f=d.renderer.getClasses?.(e,d),D=R_t(i,Q,f,u),w=document.createElement("style");w.innerHTML=D,p.insertBefore(w,m);try{await d.renderer.draw(e,A,"11.16.1",d)}catch(x){if(i.suppressErrorRendering)l();else OOt.draw(e,A,"11.16.1");throw x}let b=g.select(`${s} svg`),k=d.db.getAccTitle?.(),v=d.db.getAccDescription?.();Ale(Q,b,k,v),g.select(`[id="${A}"]`).selectAll("foreignobject > *").attr("xmlns",m_t);let S=g.select(s).node().innerHTML;if(sA.debug("config.arrowMarkerAbsolute",i.arrowMarkerAbsolute),S=N_t(S,C,Og(i.arrowMarkerAbsolute)),C){let x=g.select(s+" svg").node();S=G_t(S,x)}else if(!B)S=js.sanitize(S,{ADD_TAGS:F_t,ADD_ATTR:x_t,HTML_INTEGRATION_POINTS:{foreignobject:!0}});if(g_t(),I)throw I;return l(),{diagramType:Q,svg:S,bindFunctions:d.db.bindFunctions}},"render");y(Xse,"initialize");$se=y((A,e={})=>{let{code:t}=eEA(A);return $BA.fromText(t,e)},"getDiagramFromText");y(Ale,"addA11yInfo");dm=Object.freeze({render:M_t,parse:jse,getDiagramFromText:$se,initialize:Xse,getConfig:ot,setConfig:_V,getSiteConfig:PV,updateSiteConfig:lyA,reset:y(()=>{Bb()},"reset"),globalReset:y(()=>{Bb(Hp)},"globalReset"),defaultConfig:Hp});_5(ot().logLevel);Bb(ot());T_t=y((A,e,t)=>{if(sA.warn(A),PG(A)){if(t)t(A.str,A.hash);e.push({...A,message:A.str,error:A})}else{if(t)t(A);if(A instanceof Error)e.push({str:A.message,message:A.message,hash:A.name,error:A})}},"handleError"),ele=y(async function(A={querySelector:".mermaid"}){try{await Y_t(A)}catch(e){if(PG(e))sA.error(e.str);if(Eh.parseError)Eh.parseError(e);if(!A.suppressErrors)throw sA.error("Use the suppressErrors option to suppress these errors"),e}},"run"),Y_t=y(async function({postRenderCallback:A,querySelector:e,nodes:t}={querySelector:".mermaid"}){let r=dm.getConfig();sA.debug(`${!A?"No ":""}Callback function found`);let i;if(t)i=t;else if(e)i=document.querySelectorAll(e);else throw Error("Nodes and querySelector are both undefined");if(sA.debug(`Found ${i.length} diagrams`),r?.startOnLoad!==void 0)sA.debug("Start On Load: "+r?.startOnLoad),dm.updateSiteConfig({startOnLoad:r?.startOnLoad});let u=new Jt.InitIDGenerator(r.deterministicIds,r.deterministicIDSeed),a,n=[];for(let o of Array.from(i)){if(sA.info("Rendering diagram: "+o.id),o.getAttribute("data-processed"))continue;o.setAttribute("data-processed","true");let s=`mermaid-${u.next()}`;a=o.innerHTML,a=$G(Jt.entityDecode(a)).trim().replace(/<br\s*\/?>/gi,"<br/>");let l=Jt.detectInit(a);if(l)sA.debug("Detected early reinit: ",l);try{let{svg:g,bindFunctions:C}=await ule(s,a,o);if(o.innerHTML=g,A)await A(s);if(C)C(o)}catch(g){T_t(g,n,Eh.parseError)}}if(n.length>0)throw n[0]},"runThrowsErrors"),tle=y(function(A){dm.initialize(A)},"initialize"),H_t=y(async function(A,e,t){if(sA.warn("mermaid.init is deprecated. Please use run instead."),A)tle(A);let r={postRenderCallback:t,querySelector:".mermaid"};if(typeof e==="string")r.querySelector=e;else if(e)if(e instanceof HTMLElement)r.nodes=[e];else r.nodes=e;await ele(r)},"init"),K_t=y(async(A,{lazyLoad:e=!0}={})=>{if(aP(),MR(...A),e===!1)await s_t()},"registerExternalDiagrams"),rle=y(function(){if(Eh.startOnLoad){let{startOnLoad:A}=dm.getConfig();if(A)Eh.run().catch((e)=>sA.error("Mermaid failed to initialize",e))}},"contentLoaded");if(typeof document<"u")window.addEventListener("load",rle,!1);J_t=y(function(A){Eh.parseError=A},"setParseErrorHandler"),uP=[],ile=y(async()=>{if(XBA)return;XBA=!0;while(uP.length>0){let A=uP.shift();if(A)try{await A()}catch(e){sA.error("Error executing queue",e)}}XBA=!1},"executeQueue"),O_t=y(async(A,e)=>new Promise((t,r)=>{let i=y(()=>new Promise((u,a)=>{dm.parse(A,e).then((n)=>{u(n),t(n)},(n)=>{sA.error("Error parsing",n),Eh.parseError?.(n),a(n),r(n)})}),"performCall");uP.push(i),ile().catch(r)}),"parse"),ule=y((A,e,t)=>new Promise((r,i)=>{let u=y(()=>new Promise((a,n)=>{dm.render(A,e,t).then((o)=>{a(o),r(o)},(o)=>{sA.error("Error parsing",o),Eh.parseError?.(o),n(o),i(o)})}),"performCall");uP.push(u),ile().catch(i)}),"render"),P_t=y(()=>Object.keys(uQ).map((A)=>({id:A})),"getRegisteredDiagramsMetadata"),Eh={startOnLoad:!0,mermaidAPI:dm,parse:O_t,render:ule,init:H_t,run:ele,registerExternalDiagrams:K_t,registerLayoutLoaders:$aA,initialize:tle,parseError:void 0,contentLoaded:rle,setParseErrorHandler:J_t,detectType:Eb,registerIconPacks:jD,getRegisteredDiagramsMetadata:P_t},Im=Eh;/*! Check if previously processed *//*!
* Wait for document loaded before starting the execution
*/});var l1=20,ale,m7;var hm=_(()=>{ale={rect:"rectangle",circle:"ellipse"},m7={startOnLoad:!1,flowchart:{curve:"linear"},themeVariables:{fontSize:"20px"},maxEdges:500,maxTextSize:50000}});class mg{constructor({converter:A}){this.convert=(e,t)=>this.converter(e,{...t,fontSize:t.fontSize||l1}),this.converter=A}}var Qm=_(()=>{hm()});var dh,_o,Di;var D7=_(()=>{(function(A){A.ROUND="round",A.STADIUM="stadium",A.DOUBLECIRCLE="doublecircle",A.CIRCLE="circle",A.DIAMOND="diamond",A.CYLINDER="cylinder"})(dh||(dh={}));(function(A){A.COLOR="color"})(_o||(_o={}));(function(A){A.FILL="fill",A.STROKE="stroke",A.STROKE_WIDTH="stroke-width",A.STROKE_DASHARRAY="stroke-dasharray"})(Di||(Di={}))});var sle=wu(function(nle){Object.defineProperty(nle,"__esModule",{value:!0});nle.removeMarkdown=void 0;var __t=function(A,e){if(e===void 0)e={listUnicodeChar:""};e=e||{},e.listUnicodeChar=e.hasOwnProperty("listUnicodeChar")?e.listUnicodeChar:!1,e.stripListLeaders=e.hasOwnProperty("stripListLeaders")?e.stripListLeaders:!0,e.gfm=e.hasOwnProperty("gfm")?e.gfm:!0,e.useImgAltText=e.hasOwnProperty("useImgAltText")?e.useImgAltText:!0,e.preserveLinks=e.hasOwnProperty("preserveLinks")?e.preserveLinks:!1;var t=A||"";t=t.replace(/^(-\s*?|\*\s*?|_\s*?){3,}\s*$/gm,"");try{if(e.stripListLeaders)if(e.listUnicodeChar)t=t.replace(/^([\s\t]*)([\*\-\+]|\d+\.)\s+/gm,e.listUnicodeChar+" $1");else t=t.replace(/^([\s\t]*)([\*\-\+]|\d+\.)\s+/gm,"$1");if(e.gfm)t=t.replace(/\n={2,}/g,`
`).replace(/~{3}.*\n/g,"").replace(/~~/g,"").replace(/`{3}.*\n/g,"");if(e.preserveLinks)t=t.replace(/\[(.*?)\][\[\(](.*?)[\]\)]/g,"$1 ($2)");t=t.replace(/<[^>]*>/g,"").replace(/^[=\-]{2,}\s*$/g,"").replace(/\[\^.+?\](\: .*?$)?/g,"").replace(/\s{0,2}\[.*?\]: .*?$/g,"").replace(/\!\[(.*?)\][\[\(].*?[\]\)]/g,e.useImgAltText?"$1":"").replace(/\[(.*?)\][\[\(].*?[\]\)]/g,"$1").replace(/^\s{0,3}>\s?/g,"").replace(/(^|\n)\s{0,3}>\s?/g,`
`).replace(/^\s{1,2}\[(.*?)\]: (\S+)( ".*?")?\s*$/g,"").replace(/^(\n)?\s{0,}#{1,6}\s+| {0,}(\n)?\s{0,}#{0,} {0,}(\n)?\s{0,}$/gm,"$1$2$3").replace(/([\*_]{1,3})(\S.*?\S{0,1})\1/g,"$2").replace(/([\*_]{1,3})(\S.*?\S{0,1})\1/g,"$2").replace(/(`{3,})(.*?)\1/gm,"$2").replace(/`(.+?)`/g,"$1").replace(/\n{2,}/g,`
`)}catch(r){return console.error(r),A}return t};nle.removeMarkdown=__t});var lle,W_t,gle=(A)=>W_t[A],nP=(A)=>{let e=A.text;if(A.labelType==="markdown")e=lle.removeMarkdown(A.text);return q_t(e)},q_t=(A)=>{let e=/\s?(fa|fab):[a-zA-Z0-9-]+/g;return A.replace(e,"")},pm=(A)=>{let e={};return Object.keys(A).forEach((t)=>{switch(t){case Di.FILL:{e.backgroundColor=A[t],e.fillStyle="solid";break}case Di.STROKE:{e.strokeColor=A[t];break}case Di.STROKE_WIDTH:{e.strokeWidth=Number(A[t]?.split("px")[0]);break}case Di.STROKE_DASHARRAY:{e.strokeStyle="dashed";break}}}),e},y7=(A)=>{let e={};return Object.keys(A).forEach((t)=>{switch(t){case _o.COLOR:{e.strokeColor=A[t];break}}}),e};var iEA=_(()=>{D7();lle=yu(sle(),1),W_t={arrow_circle:{endArrowhead:"circle"},arrow_cross:{endArrowhead:"bar"},arrow_open:{endArrowhead:null,startArrowhead:null},double_arrow_circle:{endArrowhead:"circle",startArrowhead:"circle"},double_arrow_cross:{endArrowhead:"bar",startArrowhead:"bar"},double_arrow_point:{endArrowhead:"arrow",startArrowhead:"arrow"}}});var z_t=(A,e)=>[A,e],Z_t=32,cle=0.62,V_t=12,j_t=12,Cle=(A,e)=>Math.max(20,Math.ceil(A.length*e*cle)),X_t=(A,e,t,r)=>{let i=r||l1;if(A!==dh.CYLINDER||!e||e.includes(`
`))return i;let u=Math.max(20,t-V_t);if(Cle(e,i)<=u)return i;return Math.max(j_t,Math.floor(u/(e.length*cle)))},$_t=(A)=>{let e={};A.subGraphs.map((r)=>{r.nodeIds.forEach((i)=>{e[r.id]={id:r.id,parent:null,isLeaf:!1},e[i]={id:i,parent:r.id,isLeaf:A.vertices[i]!==void 0}})});let t={};return[...Object.keys(A.vertices),...A.subGraphs.map((r)=>r.id)].forEach((r)=>{if(!e[r])return;let i=e[r],u=[];if(!i.isLeaf)u.push(`subgraph_group_${i.id}`);while(!0)if(i.parent)u.push(`subgraph_group_${i.parent}`),i=e[i.parent];else break;t[r]=u}),{getGroupIds:(r)=>t[r]||[],getParentId:(r)=>e[r]?e[r].parent:null}},Ble;var Ele=_(()=>{Qm();iEA();D7();hm();Ble=new mg({converter:(A,e)=>{let t=[],r=e.fontSize,{getGroupIds:i,getParentId:u}=$_t(A);return A.subGraphs.reverse().forEach((a)=>{let n=i(a.id),o=nP(a),g=Cle(o,r||16)+Z_t*2,C=Math.max(a.width,g),B=a.x-(C-a.width)/2,E=pm(a.containerStyle),d=y7(a.labelStyle),I={id:a.id,type:"rectangle",groupIds:n,x:B,y:a.y,width:C,height:a.height,label:{groupIds:n,text:o,fontSize:r,verticalAlign:"top",...d},...E};t.push(I)}),Object.values(A.vertices).forEach((a)=>{if(!a)return;let n=i(a.id),o=nP(a),s=X_t(a.type,o,a.width,r),l=pm(a.containerStyle),g=y7(a.labelStyle),C={id:a.id,type:"rectangle",groupIds:n,x:a.x,y:a.y,width:a.width,height:a.height,strokeWidth:2,label:{groupIds:n,text:o,fontSize:s,...g},link:a.link||null,...l};switch(a.type){case dh.STADIUM:{C={...C,roundness:{type:3}};break}case dh.ROUND:{C={...C,roundness:{type:3}};break}case dh.DOUBLECIRCLE:{n.push(`doublecircle_${a.id}}`);let E={type:"ellipse",groupIds:n,x:a.x+5,y:a.y+5,width:a.width-10,height:a.height-10,strokeWidth:2,roundness:{type:3},label:{groupIds:n,text:o,fontSize:s,...g}};C={...C,groupIds:n,type:"ellipse"},t.push(E);break}case dh.CIRCLE:{C.type="ellipse";break}case dh.DIAMOND:{C.type="diamond";break}}t.push(C)}),A.edges.forEach((a)=>{let n=[],o=u(a.start),s=u(a.end);if(o&&o===s)n=i(o);let{startX:l,startY:g,reflectionPoints:C}=a,B=C.map((p)=>z_t(p.x-C[0].x,p.y-C[0].y)),E=gle(a.type||"arrow_point"),d=t.find((p)=>p.id===a.start),I=t.find((p)=>p.id===a.end);if(!d||!I)return;let Q={id:`${a.start}_${a.end}`,type:"arrow",groupIds:n,x:l,y:g,strokeWidth:a.stroke==="thick"?4:2,strokeStyle:a.stroke==="dotted"?"dashed":void 0,points:B,...a.text?{label:{text:nP(a),fontSize:r,groupIds:n}}:{},roundness:{type:2},...E,start:{id:d.id||""},end:{id:I.id||""}};t.push(Q)}),{elements:t}}})});var dle="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var fa=(A=21)=>{let e="",t=crypto.getRandomValues(new Uint8Array(A|=0));while(A--)e+=dle[t[A]&63];return e};var zE=()=>{};var Ile;var hle=_(()=>{Qm();zE();Ile=new mg({converter:(A)=>{let e=fa(),{width:t,height:r}=A,i={type:"image",x:0,y:0,width:t,height:r,status:"saved",fileId:e};return{files:{[e]:{id:e,mimeType:A.mimeType,dataURL:A.dataURL}},elements:[i]}}})});var w7=(A,e)=>[A,e],uEA=(A)=>A.replace(/\\n/g,`
`),ZE=(A)=>{let e={type:"line",x:A.startX,y:A.startY,points:[w7(0,0),w7(A.endX-A.startX,A.endY-A.startY)],width:A.endX-A.startX,height:A.endY-A.startY,strokeStyle:A.strokeStyle||"solid",strokeColor:A.strokeColor||"#000",strokeWidth:A.strokeWidth||1};if(A.groupId)Object.assign(e,{groupIds:[A.groupId]});if(A.id)Object.assign(e,{id:A.id});return e},VE=(A)=>{let e={type:"text",x:A.x,y:A.y,width:A.width,height:A.height,text:uEA(A.text)||"",fontSize:A.fontSize,verticalAlign:"top",strokeColor:A.color};if(A.groupId)Object.assign(e,{groupIds:[A.groupId]});if(A.id)Object.assign(e,{id:A.id});return e},Ih=(A)=>{let e={text:uEA(A?.label?.text||""),fontSize:A?.label?.fontSize,textAlign:A.label?.textAlign,verticalAlign:A.label?.verticalAlign||"middle",strokeColor:A.label?.color||"#000",...A.groupId?{groupIds:[A.groupId]}:{}},t={};if(A.type==="rectangle"&&A.subtype==="activation")t={backgroundColor:"#e9ecef",fillStyle:"solid"};let r={id:A.id,type:A.type,x:A.x,y:A.y,width:A.width,height:A.height,label:e,strokeStyle:A?.strokeStyle,strokeWidth:A?.strokeWidth,strokeColor:A?.strokeColor,backgroundColor:A?.bgColor,fillStyle:"solid",...t};if(A.groupId)Object.assign(r,{groupIds:[A.groupId]});return r},N6=(A)=>{let e={type:"arrow",x:A.startX,y:A.startY,points:A.points?.map(([t,r])=>w7(t,r))||[w7(0,0),w7(A.endX-A.startX,A.endY-A.startY)],width:A.endX-A.startX,height:A.endY-A.startY,strokeStyle:A?.strokeStyle||"solid",endArrowhead:A?.endArrowhead||null,startArrowhead:A?.startArrowhead||null,label:{text:uEA(A?.label?.text||""),fontSize:16,textAlign:A?.label?.textAlign,verticalAlign:A?.label?.verticalAlign},roundness:{type:2},start:A.start,end:A.end};if(A.groupId)Object.assign(e,{groupIds:[A.groupId]});return e};var oP=10,aEA=16,AWt=24,eWt=4,tWt=(A)=>{if(!A)return!0;let e=A.trim().toLowerCase();return e==="transparent"||e==="none"||e==="rgba(0,0,0,0)"||e==="rgba(0, 0, 0, 0)"},rWt=(A,e)=>Math.max(20,Math.round(A.length*e*0.6)),Qle=(A,e,t=!0)=>{let r=A,i=r.groupIds??[];if(!i.includes(e))r.groupIds=[...i,e];if(!t||!r.label)return;let u=r.label.groupIds??[];if(!u.includes(e))r.label.groupIds=[...u,e]},ple;var fle=_(()=>{zE();Qm();ple=new mg({converter:(A)=>{let e=[],t=[];if(Object.values(A.nodes).forEach((r)=>{if(!r||!r.length)return;r.forEach((i)=>{let u;switch(i.type){case"line":u=ZE(i);break;case"rectangle":case"ellipse":u=Ih(i);break;case"text":u=VE(i);break;default:throw`unknown type ${i.type}`}if(i.type==="rectangle"&&i?.subtype==="activation")t.push(u);else e.push(u)})}),Object.values(A.lines).forEach((r)=>{if(!r)return;e.push(ZE(r))}),Object.values(A.arrows).forEach((r)=>{if(!r)return;if(e.push(N6(r)),r.sequenceNumber)e.push(Ih(r.sequenceNumber))}),e.push(...t),A.loops){let{lines:r,texts:i,nodes:u}=A.loops;r.forEach((a)=>{e.push(ZE(a))}),i.forEach((a)=>{e.push(VE(a))}),u.forEach((a)=>{e.push(Ih(a))})}if(A.groups)A.groups.forEach((r)=>{let{actorKeys:i,name:u}=r,a=1/0,n=1/0,o=0,s=0;if(!i.length)return;let l=e.filter((Q)=>{if(Q.id){let p=Q.id.indexOf("-"),m=Q.id.substring(0,p);return i.includes(m)}return!1});if(!l.length)return;if(l.forEach((Q)=>{if(Q.x===void 0||Q.y===void 0||Q.width===void 0||Q.height===void 0)return;a=Math.min(a,Q.x),n=Math.min(n,Q.y),o=Math.max(o,Q.x+Q.width),s=Math.max(s,Q.y+Q.height)}),!Number.isFinite(a)||!Number.isFinite(n)||!Number.isFinite(o)||!Number.isFinite(s))return;let g=a-oP,C=n-oP,B=o-a+oP*2,E=s-n+oP*2,d=fa(),I=fa(),h=Ih({type:"rectangle",x:g,y:C,width:B,height:E,bgColor:tWt(r.fill)?void 0:r.fill,strokeColor:"#1f1f1f",strokeWidth:1,id:d,groupId:I});if(e.unshift(h),e.forEach((Q)=>{if(Q.id===d)return;if(Q.x===void 0||Q.y===void 0||Q.width===void 0||Q.height===void 0)return;if(Q.x>=a&&Q.x+Q.width<=o&&Q.y>=n&&Q.y+Q.height<=s)Qle(Q,I)}),u){let Q=VE({type:"text",id:fa(),text:u,x:g+eWt,y:C-AWt,width:rWt(u,aEA),height:aEA+8,fontSize:aEA,color:"#1f1f1f",groupId:I});Qle(Q,I,!1),e.push(Q)}});return{elements:e}}})});var mle;var Dle=_(()=>{zE();Qm();mle=new mg({converter:(A)=>{let e=[];return A.nodes.forEach((t)=>{if(!t||!t.length)return;t.forEach((r)=>{let i;switch(r.type){case"line":i=ZE(r);break;case"rectangle":case"ellipse":i=Ih(r);break;case"text":i=VE(r);break;default:throw`unknown type ${r.type}`}e.push(i)})}),Object.values(A.lines).forEach((t)=>{if(!t)return;e.push(ZE(t))}),Object.values(A.arrows).forEach((t)=>{if(!t)return;let r=N6(t);e.push(r)}),Object.values(A.text).forEach((t)=>{let r=VE(t);e.push(r)}),Object.values(A.namespaces).forEach((t)=>{let r=Object.keys(t.classes),i=[...r],u=[...A.lines,...A.arrows,...A.text];r.forEach((n)=>{let o=u.filter((s)=>s.metadata&&s.metadata.classId===n).map((s)=>s.id);if(o.length)i.push(...o)});let a={type:"frame",id:fa(),name:t.id,children:i};e.push(a)}),{elements:e}}})});var yle;var wle=_(()=>{Qm();yle=new mg({converter:(A)=>{let e=[];return A.nodes.forEach((t)=>{if(!t||!t.length)return;t.forEach((r)=>{let i;switch(r.type){case"line":i=ZE(r);break;case"rectangle":case"ellipse":i=Ih(r);break;case"text":i=VE(r);break;default:throw`unknown type ${r.type}`}e.push(i)})}),A.lines.forEach((t)=>{e.push(ZE(t))}),A.arrows.forEach((t)=>{e.push(N6(t))}),A.text.forEach((t)=>{e.push(VE(t))}),{elements:e}}})});var sP=(A,e)=>[A,e],b7=16,ble=14,iWt=1,nEA="#000000",vle=5,uWt,aWt,nWt=1.25,kle,oEA=(A)=>A.shape==="stateEnd"?[`state_end_group_${A.id}`]:void 0,Fle=(A)=>{if(A.shape==="rectWithTitle"&&A.description.length)return[A.text,...A.description].join(`
`);return A.text},fm,oWt=()=>{if(fm!==void 0)return fm;if(typeof document>"u")return fm=null,fm;try{fm=document.createElement("canvas").getContext("2d")}catch{fm=null}return fm},G6=(A,e)=>{let t=oWt();if(!t)return A.length*e*0.6;return t.font=`${e}px Excalifont, sans-serif`,t.measureText(A).width},sWt=(A,e,t)=>{if(G6(A,e)<=t)return[A];let r=[],i="";for(let u of A){let a=`${i}${u}`;if(i&&G6(a,e)>t){r.push(i),i=u;continue}i=a}if(i)r.push(i);return r},lWt=(A,e,t)=>{if(!A.trim())return A;if(G6(A,e)<=t)return A;let r=A.split(/\s+/).filter(Boolean),i=[],u="";for(let a of r){let n=sWt(a,e,t);for(let[o,s]of n.entries()){let g=u?`${u}${u?o===0?" ":"":""}${s}`:s;if(G6(g,e)<=t){u=g;continue}if(u)i.push(u);u=s}if(n.length>1)continue}return i.push(u),i.join(`
`)},gWt=(A,e,t)=>{let i=A.map((n)=>lWt(n,e,t)).join(`
`).split(`
`),u=Math.max(...i.map((n)=>G6(n,e))),a=i.length*e*nWt;return{width:u,height:a}},cWt=(A,e,t,r)=>{let i=A.split(`
`);for(let u=b7;u>=ble;u-=iWt){let{height:a}=gWt(i,u,e);if(a<=t)return u}return r},CWt=(A)=>{let e=Fle(A);if(!e||kle.has(A.shape))return b7;let t=Math.max(1,A.width-uWt),r=Math.max(1,A.height-aWt),i=e.split(`
`);if(i.length>1){if(Math.max(...i.map((a)=>G6(a,b7)))<=t)return b7}return cWt(e,t,r,i.length===1?b7:ble)},BWt=(A)=>{if(kle.has(A.shape))return;let e=Fle(A);if(!e)return;return{text:e,fontSize:CWt(A),verticalAlign:A.shape==="rectWithTitle"||A.shape==="roundedWithTitle"?"top":"middle",...y7(A.labelStyle)}},EWt=(A)=>{let e=pm(A.containerStyle),t=BWt(A),r=A.shape==="choice"?"diamond":A.shape==="stateStart"||A.shape==="stateEnd"?"ellipse":"rectangle",i=A.shape==="rect"||A.shape==="rectWithTitle"||A.shape==="roundedWithTitle",u=A.shape==="stateStart"||A.shape==="fork"||A.shape==="join",a=e.backgroundColor||e.strokeColor||nEA,n=e.strokeColor||e.backgroundColor||nEA;return{id:A.id,type:r,...oEA(A)?{groupIds:oEA(A)}:{},x:A.x,y:A.y,width:A.width,height:A.height,...t?{label:t}:{},...e,...i?{roundness:{type:3}}:{},...u?{backgroundColor:a,strokeColor:n,fillStyle:"solid"}:{}}},dWt=(A)=>{if(!A.dividerLine)return null;let e=pm(A.containerStyle);return{id:`${A.id}__divider`,type:"line",x:A.dividerLine.startX,y:A.dividerLine.startY,width:A.dividerLine.endX-A.dividerLine.startX,height:A.dividerLine.endY-A.dividerLine.startY,points:[sP(0,0),sP(A.dividerLine.endX-A.dividerLine.startX,A.dividerLine.endY-A.dividerLine.startY)],strokeColor:e.strokeColor||"#000",strokeWidth:e.strokeWidth||1}},IWt=(A)=>{let e=pm(A.containerStyle),t=Math.max(2,Math.min(A.width,A.height)*0.32),r=A.endInnerColor||e.strokeColor||e.backgroundColor||nEA;return{id:`${A.id}__inner`,type:"ellipse",groupIds:oEA(A),x:A.x+t,y:A.y+t,width:Math.max(1,A.width-t*2),height:Math.max(1,A.height-t*2),backgroundColor:r,strokeColor:r,fillStyle:"solid",strokeWidth:1}},hWt=(A)=>{let e=A.reflectionPoints.map((t,r,i)=>{let u=i[0];if(r===0)return sP(0,0);return sP(t.x-u.x,t.y-u.y)});return{id:A.id,type:"arrow",x:A.startX,y:A.startY,width:A.endX-A.startX,height:A.endY-A.startY,points:e,strokeColor:A.strokeColor||"#000",strokeWidth:A.strokeWidth||2,strokeStyle:A.strokeStyle||"solid",endArrowhead:A.isNoteEdge?null:"triangle",roundness:{type:2},start:{id:A.start},end:{id:A.end},...A.text?{label:{text:A.text,fontSize:16}}:{}}},xle;var Sle=_(()=>{Qm();iEA();uWt=vle*2,aWt=vle*2,kle=new Set(["choice","fork","join","stateStart","stateEnd","divider"]),xle=new mg({converter:(A)=>{let e=[];return A.nodes.forEach((t)=>{if(!t.isRenderable)return;let r=EWt(t);e.push(r);let i=dWt(t);if(i)e.push(i);if(t.shape==="stateEnd")e.push(IWt(t))}),A.edges.forEach((t)=>{e.push(hWt(t))}),{elements:e}}})});var Eo=(A)=>{A=QWt(A);let e=A.replace(/#(\d+);/g,"&#$1;").replace(/#([a-z]+);/g,"&$1;"),t=document.createElement("textarea");return t.innerHTML=e,t.value},HC=(A)=>{let t=A.getAttribute("transform")?.match(/translate\(([ \d.-]+),\s*([\d.-]+)\)/),r=0,i=0;if(t)r=Number(t[1]),i=Number(t[2]);return{transformX:r,transformY:i}},Lle=(A)=>{let e=A;return e=e.replace(/style.*:\S*#.*;/g,(t)=>t.substring(0,t.length-1)),e=e.replace(/classDef.*:\S*#.*;/g,(t)=>t.substring(0,t.length-1)),e=e.replace(/#\w+;/g,(t)=>{let r=t.substring(1,t.length-1);if(/^\+?\d+$/.test(r))return`fl°°${r}¶ß`;return`fl°${r}¶ß`}),e},QWt=function(A){return A.replace(/fl°°/g,"#").replace(/fl°/g,"&").replace(/¶ß/g,";")},v7=(A,e=0.5)=>{let t=[];return A.forEach((r)=>{let i=t[t.length-1];if(!i){t.push(r);return}if(Math.hypot(r[0]-i[0],r[1]-i[1])<=e)return;t.push(r)}),t},k7=(A)=>{let e=A.getAttribute("d");if(!e)return null;let t=Array.from(e.matchAll(/-?\d*\.?\d+(?:e[-+]?\d+)?/gi),(r)=>Number(r[0]));if(t.length<4)return null;return{startX:t[0],startY:t[1],endX:t[t.length-2],endY:t[t.length-1]}},lP=(A)=>{let e=A.getAttribute("data-points");if(!e){let t=k7(A);return t?[{x:t.startX,y:t.startY},{x:t.endX,y:t.endY}]:[]}try{let t=atob(e),r=JSON.parse(t);return Array.isArray(r)?r.filter((i)=>i&&typeof i.x==="number"&&typeof i.y==="number"&&Number.isFinite(i.x)&&Number.isFinite(i.y)):[]}catch{return[]}},gP=(A,e={x:0,y:0},t="LM")=>{if(A.tagName.toLowerCase()!=="path")throw Error(`Invalid input: Expected an HTMLElement of tag "path", got ${A.tagName}`);let r=A.getAttribute("d");if(!r)throw Error('Path element does not contain a "d" attribute');let i=r.split(new RegExp(`(?=[${t}])`)),u=i[0].substring(1).split(",").map((o)=>parseFloat(o)),a=i[i.length-1].substring(1).split(",").map((o)=>parseFloat(o)),n=i.map((o)=>{let s=o[0],l=o.substring(1).split(",").map((g)=>parseFloat(g));if(s==="C")return{x:l[4],y:l[5],command:s};return{x:l[0],y:l[1],command:s}}).filter((o,s,l)=>{if(s===0||s===l.length-1)return!0;if(o.x===l[s-1].x&&o.y===l[s-1].y)return!1;if(s===l.length-2&&o.command==="C")return!1;if(s===l.length-2&&(l[s-1].x===o.x||l[s-1].y===o.y)){let g=l[l.length-1];return Math.hypot(g.x-o.x,g.y-o.y)>20}return o.x!==l[s-1].x||o.y!==l[s-1].y}).map((o)=>({x:o.x+e.x,y:o.y+e.y}));return{startX:u[0]+e.x,startY:u[1]+e.y,endX:a[0]+e.x,endY:a[1]+e.y,reflectionPoints:n}};var pWt=(A)=>({...A,elements:A.elements.map((e)=>{if(!("points"in e)||!Array.isArray(e.points))return e;let t=e.points;if(t.length<2)return e;let r=v7(t);if(r.length===t.length)return e;return{...e,points:r}})}),Rle=(A,e={})=>{let t=(()=>{switch(A.type){case"graphImage":return Ile.convert(A,e);case"flowchart":return Ble.convert(A,e);case"sequence":return ple.convert(A,e);case"class":return mle.convert(A,e);case"erd":return yle.convert(A,e);case"state":return xle.convert(A,e);default:throw Error(`graphToExcalidraw: unknown graph type "${A.type}, only flowcharts are supported!"`)}})();return pWt(t)};var Nle=_(()=>{Ele();hle();fle();Dle();wle();Sle()});var zr=(A)=>A.replace(/\s*!important\s*$/i,"").trim(),fWt=(A,e)=>{let t=e;while(t<A.length&&/\s/.test(A[t]))t+=1;let r=t;while(t<A.length&&/[a-z-]/i.test(A[t]))t+=1;if(t===r)return!1;while(t<A.length&&/\s/.test(A[t]))t+=1;return A[t]===":"},_0=(A)=>{let e=[],t=0;while(t<A.length){while(t<A.length&&/[\s;,]/.test(A[t]))t+=1;if(t>=A.length)break;let r=t;while(t<A.length&&A[t]!==":"){if(A[t]===";"||A[t]===",")break;t+=1}if(t>=A.length||A[t]!==":")break;let i=A.substring(r,t).trim().toLowerCase();t+=1;let u=t,a=0,n=null;while(t<A.length){let s=A[t];if(n){if(s===n&&A[t-1]!=="\\")n=null;t+=1;continue}if(s==='"'||s==="'"){n=s,t+=1;continue}if(s==="("){a+=1,t+=1;continue}if(s===")"){a=Math.max(0,a-1),t+=1;continue}if(a===0){if(s===";"||s===",")break;if(/\s/.test(s)&&fWt(A,t))break}t+=1}let o=zr(A.substring(u,t));if(i&&o)e.push({property:i,value:o});if(t<A.length&&(A[t]===";"||A[t]===","))t+=1}return e},W0=(A)=>{let e=zr(A);if(!e)return!1;if(typeof CSS<"u"&&typeof CSS.supports==="function")return CSS.supports("color",e);if(typeof document<"u"){let t=document.createElement("div");return t.style.color="",t.style.color=e,t.style.color!==""}return!1},Gle=(A,e)=>{let t=A.getAttribute("style");if(!t)return"";return _0(t).find((r)=>r.property===e)?.value||""},sEA=(...A)=>{for(let e of A){let t=zr(e||"");if(W0(t))return t}return},U6=(A,e)=>{let t=A.querySelector("text, foreignObject, div, span, p")||A,r=sEA(t.getAttribute?.("fill"),Gle(t,"fill"),t.style?.fill);if(r)return r;let i=sEA(t.getAttribute?.("color"),Gle(t,"color"),t.style?.color);if(i)return i;let u=sEA(e);if(u)return u;return};var gEA=(A,e,t)=>{switch(e){case Di.FILL:case Di.STROKE:if(W0(t))A[e]=t;break;case Di.STROKE_WIDTH:case Di.STROKE_DASHARRAY:A[e]=t;break}},cP=(A,e,t)=>{if(e===_o.COLOR&&W0(t))A[_o.COLOR]=t},CP=(A,e,t)=>{if(!A)return;_0(A).forEach(({property:r,value:i})=>{gEA(e,r,i),cP(t,r,i)})},Mle=(A,e)=>{if(!A)return;_0(A).forEach(({property:t,value:r})=>{if(t==="fill"&&W0(r)){e[_o.COLOR]=r;return}cP(e,t,r)})},Tle=(A,e)=>{if(!A)return;[[Di.FILL,A.getAttribute("fill")],[Di.STROKE,A.getAttribute("stroke")],[Di.STROKE_WIDTH,A.getAttribute("stroke-width")],[Di.STROKE_DASHARRAY,A.getAttribute("stroke-dasharray")]].forEach(([r,i])=>{let u=zr(i||"");if(u)gEA(e,r,u)})},Yle=(A,e)=>{if(!A)return;let t=A.getAttribute("fill")||A.getAttribute("color"),r=zr(t||"");if(W0(r))e[_o.COLOR]=r},lEA=(A,e,t,r)=>{if(!(e instanceof Map))return;let i=e.get(A);if(!i)return;i.styles?.forEach((u)=>{_0(u).forEach(({property:a,value:n})=>{gEA(t,a,n),cP(r,a,n)})}),i.textStyles?.forEach((u)=>{_0(u).forEach(({property:a,value:n})=>{cP(r,a,n)})})},mWt=(A,e,t)=>{let r=A.nodes.map((C)=>{if(C.startsWith("flowchart-"))return C.split("-")[1];return C}),i=e.querySelector(`[id='${A.id}']`);if(!i)throw Error("SubGraph element not found");let u=cEA(i,e),a=i.getBBox(),n={width:a.width,height:a.height},o={},s={},l=i.querySelector(":scope > rect, :scope > path, :scope > polygon, :scope > ellipse")||i.querySelector(".cluster > rect, .cluster > path, .cluster > polygon, .cluster > ellipse")||i.querySelector("rect, path, polygon, ellipse");CP(i.getAttribute("style"),o,s),CP(l?.getAttribute("style"),o,s),Tle(l,o);let g=i.querySelector(".cluster-label text, .cluster-label tspan")||i.querySelector("text");return Mle(g?.getAttribute("style"),s),Yle(g,s),lEA(A.id,t,o,s),A.classes?.forEach((C)=>{lEA(C,t,o,s)}),{id:A.id,nodeIds:r,text:Eo(A.title),labelType:"text",...u,...n,containerStyle:o,labelStyle:s}},Ule=(A,e,t)=>{let r=e.querySelector(`[id*="${A.domId}"]`);if(!r)return;let i;if(r.parentElement?.tagName.toLowerCase()==="a")i=r.parentElement.getAttribute("xlink:href");let u=cEA(i?r.parentElement:r,e),a=r.getBBox(),n={width:a.width,height:a.height},o={},s={};if(A.classes&&t instanceof Map)(Array.isArray(A.classes)?A.classes:[A.classes]).forEach((C)=>{lEA(C,t,o,s)});A.styles?.forEach((C)=>{CP(C,o,s)});let l=r.querySelector(".label-container");return CP(l?.getAttribute("style"),o,s),Tle(l,o),Array.from(r.querySelectorAll(".label, .nodeLabel, .label text, .label tspan, .label span, .label div")).forEach((C)=>{Mle(C.getAttribute("style"),s),Yle(C,s)}),{id:A.id,labelType:A.labelType,text:Eo(A.text||""),type:A.type,link:i||void 0,...u,...n,containerStyle:o,labelStyle:s}},DWt=(A,e,t)=>{let r=t.querySelector(`[id*="${A.id}"]`);if(!r)throw Error("Edge element not found");let i=cEA(r,t),u=gP(r,i);return A.length=void 0,{...A,...u,text:Eo(A.text)}},cEA=(A,e)=>{if(!A)throw Error("Element not found");let t=A.parentElement?.parentElement,r=A.childNodes[0],i={x:0,y:0};if(r){let{transformX:o,transformY:s}=HC(r),l=r.getBBox();i={x:Number(r.getAttribute("x"))||o+l.x||0,y:Number(r.getAttribute("y"))||s+l.y||0}}let{transformX:u,transformY:a}=HC(A),n={x:u+i.x,y:a+i.y};while(t&&t.id!==e.id){if(t.classList.value==="root"&&t.hasAttribute("transform")){let{transformX:o,transformY:s}=HC(t);n.x+=o,n.y+=s}t=t.parentElement}return n},Hle=(A,e)=>{let t=A.getVertices(),r=A.getEdges(),i=A.getSubGraphs(),u=A.getClasses(),a={},n=u instanceof Map?u:{};if(t instanceof Map)t.forEach((g,C)=>{a[C]=Ule(g,e,n)});else if(typeof t==="object"&&t!==null)Object.entries(t).forEach(([g,C])=>{a[g]=Ule(C,e,n)});let o=new Map,s=(Array.isArray(r)?r:[]).map((g)=>{if(!e.querySelector(`[id*="${g.id}"]`))return null;let C=`${g.start}-${g.end}`,B=o.get(C)||0;return o.set(C,B+1),DWt(g,B,e)}).filter((g)=>g!==null&&g.reflectionPoints.length>1);return{type:"flowchart",subGraphs:(Array.isArray(i)?i:[]).map((g)=>mWt(g,e,n)),vertices:a,edges:s}};var Kle=_(()=>{D7()});var Jle=(A,e)=>{let t={};if(e?.label)t.label={text:Eo(e.label),fontSize:16};let r=A.tagName;if(r==="line")t.startX=Number(A.getAttribute("x1")),t.startY=Number(A.getAttribute("y1")),t.endX=Number(A.getAttribute("x2")),t.endY=Number(A.getAttribute("y2"));else if(r==="path"){let a=A.getAttribute("d");if(!a)throw Error('Path element does not contain a "d" attribute');let n=a.split(/(?=[LC])/),o=n[0].substring(1).split(",").map((g)=>parseFloat(g)),s=[];n.forEach((g)=>{let C=g.substring(1).trim().split(" ").map((B)=>{let[E,d]=B.split(",");return[parseFloat(E)-o[0],parseFloat(d)-o[1]]});s.push(...C)});let l=s[s.length-1];t.startX=o[0],t.startY=o[1],t.endX=l[0],t.endY=l[1],t.points=s}if(e?.label)t.startY=t.startY-10,t.endY=t.endY-10;let i=A.getAttribute("stroke"),u=(i&&i!=="none"?i:"")||getComputedStyle(A).stroke||"";return t.strokeColor=u?zr(u):null,t.strokeWidth=Number(A.getAttribute("stroke-width")),t.type="arrow",t.strokeStyle=e?.strokeStyle||"solid",t.startArrowhead=e?.startArrowhead||null,t.endArrowhead=e?.endArrowhead||null,t},F7=(A,e,t,r,i)=>{let u={};return u.type="arrow",u.startX=A,u.startY=e,u.endX=t,u.endY=r,Object.assign(u,{...i}),u},M6=(A,e,t,r)=>({type:"text",x:A,y:e,text:t,width:r?.width||20,height:r?.height||20,fontSize:r?.fontSize||l1,id:r?.id,color:r?.color,groupId:r?.groupId,metadata:r?.metadata}),CEA=(A,e,t)=>{let r={},i=Number(A.getAttribute("x")),u=Number(A.getAttribute("y"));if(r.type="text",r.text=Eo(e),t?.id)r.id=t.id;if(t?.groupId)r.groupId=t.groupId;let a=A.getBBox();r.width=a.width,r.height=a.height,r.x=i-a.width/2,r.y=u;let n=parseInt(getComputedStyle(A).fontSize);return r.fontSize=n,r.color=U6(A),r},KC=(A,e,t={})=>{let r={};r.type=e;let{label:i,subtype:u,id:a,groupId:n}=t;if(r.id=a,n)r.groupId=n;if(i)r.label={text:Eo(i.text),fontSize:16,textAlign:i?.textAlign,verticalAlign:i?.verticalAlign};let o=A.getBBox();switch(r.x=o.x,r.y=o.y,r.width=o.width,r.height=o.height,r.subtype=u,u){case"highlight":let s=A.getAttribute("fill");if(s)r.bgColor=zr(s);break;case"note":r.strokeStyle="dashed";break}return r},mm=(A,e,t,r,i,u)=>{let a={};if(a.startX=e,a.startY=t,a.endX=r,u?.groupId)a.groupId=u.groupId;if(u?.id)a.id=u.id;a.endY=i;let n=A.getAttribute("stroke");return a.strokeColor=n?zr(n):null,a.strokeWidth=Number(A.getAttribute("stroke-width")),a.type="line",a};var BP=_(()=>{hm()});var Ole,jE,yWt=(A)=>{let e;switch(A){case jE.SOLID:case jE.SOLID_CROSS:case jE.SOLID_OPEN:case jE.SOLID_POINT:e="solid";break;case jE.DOTTED:case jE.DOTTED_CROSS:case jE.DOTTED_OPEN:case jE.DOTTED_POINT:e="dotted";break;default:e="solid";break}return e},wWt=(A,e)=>{if(!!A.nextElementSibling?.classList.contains("sequenceNumber")){let r=A.nextElementSibling?.textContent;if(!r)throw Error("sequence number not present");let i=30,u=i/2,a=10,n={type:"rectangle",x:e.startX-a,y:e.startY-u,label:{text:r,fontSize:14},bgColor:"#e9ecef",height:i,subtype:"sequence"};Object.assign(e,{sequenceNumber:n})}},Ple=(A,e,t)=>{if(!A)throw"root node not found";let r=fa(),i=Array.from(A.children),u=[];return i.forEach((a,n)=>{let o=`${t?.id}-${n}`,s;switch(a.tagName){case"line":let l=Number(a.getAttribute("x1")),g=Number(a.getAttribute("y1")),C=Number(a.getAttribute("x2")),B=Number(a.getAttribute("y2"));s=mm(a,l,g,C,B,{groupId:r,id:o});break;case"text":s=CEA(a,e,{groupId:r,id:o});break;case"circle":s=KC(a,"ellipse",{label:a.textContent?{text:a.textContent}:void 0,groupId:r,id:o});default:s=KC(a,ale[a.tagName],{label:a.textContent?{text:a.textContent}:void 0,groupId:r,id:o})}u.push(s)}),u},_le=(A,e)=>{let t=e.getAttribute("fill"),r=e.getAttribute("stroke"),i=e.getAttribute("stroke-width"),u=e.getAttribute("stroke-dasharray");if(t&&t!=="none")A.bgColor=zr(t);if(r&&r!=="none")A.strokeColor=zr(r);if(i)A.strokeWidth=Number(i);if(u&&u.trim())A.strokeStyle="dashed"},bWt=(A,e)=>{let t=Array.from(e.querySelectorAll(".actor-top")),r=Array.from(e.querySelectorAll(".actor-bottom")),i=[],u=[],a={},n=A instanceof Map?Array.from(A.values()):Object.values(A),o=Array.from(e.querySelectorAll(".actor-line")),s=(l,g)=>{let C=l.name,B=o.find((d)=>d.getAttribute("name")===C);if(B)return B;let E=l.type==="participant"?g.parentElement?.previousElementSibling:g.previousElementSibling;if(!E)return null;if(E.tagName==="line")return E;return E.querySelector("line")};return n.forEach((l)=>{let g=t.find((E)=>E.getAttribute("name")===l.name),C=r.find((E)=>E.getAttribute("name")===l.name);if(!g||!C)throw"root not found";let B=l.description;if(l.type==="participant"){let E=KC(g,"rectangle",{id:`${l.name}-top`,label:{text:B},subtype:"actor"});if(_le(E,g),!E)throw"Top Node element not found!";i.push([E]);let d=KC(C,"rectangle",{id:`${l.name}-bottom`,label:{text:B},subtype:"actor"});a[l.name]={topId:`${l.name}-top`,bottomId:`${l.name}-bottom`,bindType:"rectangle"},_le(d,C),i.push([d]);let I=s(l,g);if(I?.tagName!=="line")throw"Line not found";let h=Number(I.getAttribute("x1"));if(!E.height)throw"Top node element height is null";let Q=E.y+E.height,p=d.y,m=Number(I.getAttribute("x2")),f=mm(I,h,Q,m,p);u.push(f)}else if(l.type==="actor"){let E=Ple(g,B,{id:`${l.name}-top`});i.push(E);let d=Ple(C,B,{id:`${l.name}-bottom`});i.push(d);let I=s(l,g);if(I?.tagName!=="line")throw"Line not found";let h=Number(I.getAttribute("x1")),Q=Number(I.getAttribute("y1")),p=Number(I.getAttribute("x2")),m=d.find((w)=>w.type==="ellipse");if(m){let w=m.y,b=mm(I,h,Q,p,w);u.push(b)}let f=E.find((w)=>w.type==="ellipse"),D=d.find((w)=>w.type==="ellipse");if(f?.id&&D?.id)a[l.name]={topId:f.id,bottomId:D.id,bindType:"ellipse"}}}),{nodes:i,lines:u,actorMap:a}},vWt=(A,e,t)=>{let r=[],i=Array.from(e.querySelectorAll('[class*="messageLine"]')),u=Object.keys(Ole),a=A.filter((n)=>u.includes(n.type.toString()));return i.forEach((n,o)=>{let s=a[o],l=Ole[s.type],g=Jle(n,{label:s?.message,strokeStyle:yWt(s.type),endArrowhead:l==="SOLID_OPEN"||l==="DOTTED_OPEN"?null:"arrow"}),C=t[s.from],B=t[s.to];if(C?.topId&&B?.topId)g.start={type:C.bindType||"rectangle",id:C.topId},g.end={type:B.bindType||"rectangle",id:B.topId};wWt(n,g),r.push(g)}),r},kWt=(A,e)=>{let t=Array.from(e.querySelectorAll(".note")).map((u)=>u.parentElement),r=A.filter((u)=>u.type===jE.NOTE),i=[];return t.forEach((u,a)=>{if(!u)return;let n=u.firstChild,o=r[a].message,s=KC(n,"rectangle",{label:{text:o},subtype:"note"}),l=n.getAttribute("fill"),g=n.getAttribute("stroke"),C=n.getAttribute("stroke-width"),B=n.getAttribute("stroke-dasharray");if(l&&l!=="none")s.bgColor=zr(l);if(g&&g!=="none")s.strokeColor=zr(g);if(C)s.strokeWidth=Number(C);if(B&&B.trim())s.strokeStyle="dashed";i.push(s)}),i},FWt=(A)=>{let e=Array.from(A.querySelectorAll("[class*=activation]")),t=[];return e.forEach((r)=>{let i=KC(r,"rectangle",{label:{text:""},subtype:"activation"});(()=>{let a=r.getAttribute("fill"),n=r.getAttribute("stroke"),o=r.getAttribute("stroke-width"),s=r.getAttribute("stroke-dasharray");if(a&&a!=="none")i.bgColor=zr(a);if(n&&n!=="none")i.strokeColor=zr(n);if(o)i.strokeWidth=Number(o);if(s&&s.trim())i.strokeStyle="dashed"})(),t.push(i)}),t},xWt=(A,e)=>{let t=Array.from(e.querySelectorAll(".loopLine")),r=[],i=[],u=[];t.forEach((l)=>{let g=Number(l.getAttribute("x1")),C=Number(l.getAttribute("y1")),B=Number(l.getAttribute("x2")),E=Number(l.getAttribute("y2")),d=mm(l,g,C,B,E);d.strokeStyle="dotted",d.strokeColor="#adb5bd",d.strokeWidth=2,r.push(d)});let a=Array.from(e.querySelectorAll(".loopText")),n=A.filter((l)=>l.type===jE.CRITICAL_START).map((l)=>l.message);a.forEach((l)=>{let g=l.textContent||"",C=CEA(l,g),B=g.match(/\[(.*?)\]/)?.[1]||"";if(n.includes(B))C.x+=16;i.push(C)});let o=Array.from(e?.querySelectorAll(".labelBox")),s=Array.from(e?.querySelectorAll(".labelText"));return o.forEach((l,g)=>{let C=s[g]?.textContent||"",B=KC(l,"rectangle",{label:{text:C}});B.strokeColor="#adb5bd",B.bgColor="#e9ecef",B.width=void 0,u.push(B)}),{lines:r,texts:i,nodes:u}},SWt=(A)=>{let e=Array.from(A.querySelectorAll(".rect")).filter((r)=>r.parentElement?.tagName!=="g"),t=[];return e.forEach((r)=>{let i=KC(r,"rectangle",{label:{text:""},subtype:"highlight"});t.push(i)}),t},Wle=(A,e)=>{let t=A.db,r=[],u=t.getBoxes().map((I)=>({...I,fill:zr(I.fill||"")})),a=SWt(e),n=t.getActors(),{nodes:o,lines:s,actorMap:l}=bWt(n,e),g=t.getMessages(),C=vWt(g,e,l),B=kWt(g,e),E=FWt(e),d=xWt(g,e);return r.push(a),r.push(...o),r.push(B),r.push(E),{type:"sequence",lines:s,arrows:C,nodes:r,loops:d,groups:u}};var qle=_(()=>{hm();zE();BP();Ole={0:"SOLID",1:"DOTTED",3:"SOLID_CROSS",4:"DOTTED_CROSS",5:"SOLID_OPEN",6:"DOTTED_OPEN",24:"SOLID_POINT",25:"DOTTED_POINT"},jE={SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25,AUTONUMBER:26,CRITICAL_START:27,CRITICAL_OPTION:28,CRITICAL_END:29,BREAK_START:30,BREAK_END:31,PAR_OVER_START:32}});var LWt=(A)=>{let e={};if(!A)return e;return A.forEach((t)=>{_0(t).forEach(({property:r,value:i})=>{if(r&&i)e[r]=zr(i)})}),e},EP,zle,Zle=16,RWt=(A)=>{let e;switch(A){case zle.LINE:e="solid";break;case zle.DOTTED_LINE:e="dotted";break;default:e="solid"}return e},Vle=(A)=>{let e;switch(A){case EP.AGGREGATION:e="diamond_outline";break;case EP.COMPOSITION:e="diamond";break;case EP.EXTENSION:e="triangle_outline";break;case"none":e=null;break;case EP.DEPENDENCY:default:e="arrow";break}return e},BEA=(A,e)=>{let t=0,r=0,i=A;while(i&&i!==e){let{transformX:u,transformY:a}=HC(i);t+=u,r+=a,i=i.parentElement}return{tx:t,ty:r}},jle,Age=(A,e=0.5)=>{if(A.length<=2)return[...A];let t=[A[0]];for(let r=1;r<A.length-1;r++){let i=t[t.length-1],u=A[r],a=A[r+1],n=a.x-i.x,o=a.y-i.y,s=Math.hypot(n,o);if(!s)continue;let g=Math.abs(n*(u.y-i.y)-o*(u.x-i.x))/s,C=((u.x-i.x)*n+(u.y-i.y)*o)/(s*s);if(g<=e&&C>=-e&&C<=1+e)continue;t.push(u)}return t.push(A[A.length-1]),t},ege=(A)=>{let e=v7(lP(A).map((r)=>[r.x,r.y])).map(([r,i])=>({x:r,y:i})),t=k7(A);if(t&&e.length>=2)e[0]={x:t.startX,y:t.startY},e[e.length-1]={x:t.endX,y:t.endY};return Age(e)},Xle=(A,e,t)=>{let r=A.x-e.x,i=A.y-e.y,u=Math.hypot(r,i);if(!u)return A;return{x:A.x+r/u*t,y:A.y+i/u*t}},NWt=(A,e)=>{let t=v7(e.map((u)=>[u.x,u.y])).map(([u,a])=>({x:u,y:a}));if(t.length<2)throw Error("Arrow route must contain at least two points");let r=t[0],i=t[t.length-1];A.startX=r.x,A.startY=r.y,A.endX=i.x,A.endY=i.y,A.points=t.map((u)=>[u.x-r.x,u.y-r.y])},GWt=(A)=>{let e=A.points?.map(([u,a])=>({x:A.startX+u,y:A.startY+a})).filter((u)=>Number.isFinite(u.x)&&Number.isFinite(u.y));if(!e||e.length<2)return A;let t=[...e],r=!!A.startArrowhead&&jle.has(A.startArrowhead),i=!!A.endArrowhead&&jle.has(A.endArrowhead);if(!r&&!i)return A;if(r)t[0]=Xle(t[0],t[1],Zle);if(i){let u=t.length-1;t[u]=Xle(t[u],t[u-1],Zle)}return NWt(A,t),A},UWt=(A,e)=>{let t=zr(A.getAttribute("stroke")||getComputedStyle(A).stroke||""),r=parseFloat(A.getAttribute("stroke-width")||getComputedStyle(A).strokeWidth||"1");if(W0(t)&&t!=="none")e.strokeColor=t;if(Number.isFinite(r)&&r>0)e.strokeWidth=r},MWt=(A)=>{let e=[];return A.forEach((t)=>{ege(t).forEach((r)=>{let i=e[e.length-1];if(i&&i.x===r.x&&i.y===r.y)return;e.push(r)})}),Age(e)},tge=(A,e,t)=>{if(A.length<2)throw Error(`Class diagram edge ${e?.id||"<unknown>"} is missing usable path points`);let r=A[0],i=A[A.length-1],u=F7(r.x,r.y,i.x,i.y,{id:e?.getAttribute("data-id")||e?.id||void 0,...t,points:A.map((a)=>[a.x-r.x,a.y-r.y])});if(e)UWt(e,u);return GWt(u)},rge=(A,e)=>tge(MWt(A),A[0],e),TWt=(A,e)=>{let t=ege(A);return tge([t[0],t[t.length-1]],A,e)},YWt=(A,e)=>rge([A],e),HWt=(A,e)=>[`${A}-cyclic-special-1`,`${A}-cyclic-special-mid`,`${A}-cyclic-special-2`].map((r)=>e.querySelector(`path[id="${r}"][data-edge="true"]`)).filter((r)=>r!==null),KWt=(A)=>A.points?.map(([e,t])=>({x:A.startX+e,y:A.startY+t})).filter((e)=>Number.isFinite(e.x)&&Number.isFinite(e.y))||[],$le=(A,e)=>{let t=KWt(A);if(t.length<2)return null;let r=e==="start",i=r?t[0]:t[t.length-1],u=r?t[1]:t[t.length-2],a=u.x===i.x?r?-1:1:Math.sign(u.x-i.x),n=u.y===i.y?1:Math.sign(u.y-i.y);return{x:i.x+a*20,y:i.y+(n>=0?12:-28)}},JWt=(A,e)=>{let t=A;while(t&&t!==e){if(t.classList.contains("annotation-group"))return"header";if(t.classList.contains("label-group"))return"header";if(t.classList.contains("members-group"))return"members";if(t.classList.contains("methods-group"))return"methods";t=t.parentElement}return"other"},OWt=(A,e,t)=>{let r=[],i=[],u=[];return Object.values(A).forEach((a)=>{let{domId:n,id:o}=a,s=fa(),l=LWt(a.styles||a.cssStyles),g;try{g=t?t(o):void 0}catch{g=void 0}let C=(M)=>{let U=new RegExp(`^classId-${M}(?:-|$)`);return Array.from(e.querySelectorAll("[id]")).filter((H)=>U.test(H.id))[0]},B=g&&e.querySelector(`#${g}`)||e.querySelector(`#${n}`)||e.querySelector(`[data-id='${o}']`)||C(o);if(!B)throw Error(`DOM Node with id ${n} not found`);let E=B.querySelector("rect")||B,d=E.getBBox(),{tx:I,ty:h}=BEA(E,e),Q={type:"rectangle",id:o,groupId:s,x:d.x+I,y:d.y+h,width:d.width,height:d.height,metadata:{classId:o}},p=E.getAttribute("fill"),m=E.getAttribute("stroke"),f=E.getAttribute("stroke-width"),D=E.getAttribute("stroke-dasharray"),w=getComputedStyle(E),b=zr(p||l.fill||(p?w.fill:"")),k=zr(m||l.stroke||(m?w.stroke:"")),v=f||l["stroke-width"]||(f?w.strokeWidth:""),S=D||l["stroke-dasharray"]||(D?w.strokeDasharray==="none"?"":w.strokeDasharray:""),x=(M)=>{if(!M)return!1;if(!W0(M))return!1;let U=M.toLowerCase();return!(U==="none"||U==="transparent"||U==="rgba(0, 0, 0, 0)"||U==="black"||U==="#000"||U==="#000000"||U==="rgb(0, 0, 0)"||U==="rgba(0, 0, 0, 1)")};if(x(b))Q.bgColor=b;else Q.bgColor=void 0;if(x(k))Q.strokeColor=k;else Q.strokeColor=void 0;if(v)Q.strokeWidth=Number(v);else Q.strokeWidth=void 0;if(S&&S.trim().length>0)Q.strokeStyle="dashed";else Q.strokeStyle=void 0;r.push(Q),[...Array.from(B.querySelectorAll("line")),...Array.from(B.querySelectorAll("g.divider path"))].forEach((M)=>{let{tx:U,ty:Y}=BEA(M,e),H,J,K,O;if(M.tagName.toLowerCase()==="line")H=Number(M.getAttribute("x1"))+U,J=Number(M.getAttribute("y1"))+Y,K=Number(M.getAttribute("x2"))+U,O=Number(M.getAttribute("y2"))+Y;else{let z=M.getBBox();H=z.x+U,K=z.x+z.width+U;let AA=z.y+z.height/2+Y;J=AA,O=AA}if(H===K&&J===O)return;let P=mm(M,H,J,K,O,{groupId:s,id:fa()});if(Q.strokeColor)P.strokeColor=Q.strokeColor;else P.strokeColor=void 0;if(Q.strokeWidth!==void 0)P.strokeWidth=Q.strokeWidth;else P.strokeWidth=void 0;if(Q.strokeStyle)P.strokeStyle=Q.strokeStyle;else P.strokeStyle=void 0;P.metadata={classId:o},i.push(P)});let T=Array.from(B.querySelectorAll("text, foreignObject")),R=[];T.forEach((M)=>{let U=M.tagName.toLowerCase()==="foreignobject",Y=!U?Array.from(M.querySelectorAll("tspan")):[],H=Y.length?Y.map((z)=>z.textContent?.trim()).filter(Boolean).join(`
`):M.textContent?.trim()||"";if(!H)return;let J=M.getBBox(),{ty:K}=BEA(M,e),O=parseFloat(getComputedStyle(M).fontSize||"");if(U&&(!Number.isFinite(O)||!O)){let z=M.querySelector("div, span, p");if(z)O=parseFloat(getComputedStyle(z).fontSize||"")}if(!Number.isFinite(O)||O<=0)O=Math.max(12,J.height*0.6);O=O*0.9;let P=U6(M,l.color);R.push({section:JWt(M,B),text:Eo(H),x:J.x,y:J.y+K,width:Q&&Q.width?Math.max(Q.width-8,J.width):J.width,height:J.height,fontSize:O,color:P})});let L=R.filter((M)=>M.section==="header").sort((M,U)=>M.y-U.y||M.x-U.x);if(!Q.label){let M=L.length===0&&R.length===1?R:L;if(M.length>0)Q.label={text:M.map((U)=>U.text).join(`
`),fontSize:Math.max(...M.map((U)=>U.fontSize)),color:M.find((U)=>U.color)?.color,verticalAlign:"top"}}R.filter((M)=>{if(L.length>0)return M.section!=="header";return!(Q.label&&R.length===1)}).forEach((M)=>{let U=M6((Q?.x||0)+4,M.y,M.text,{width:M.width,height:M.height,fontSize:M.fontSize,color:M.color,id:fa(),groupId:s,metadata:{classId:o}});u.push(U)})}),{nodes:r,lines:i,text:u}},PWt=(A,e,t,r)=>{let i=Array.from(t.querySelectorAll('.edgePaths path[data-edge="true"]:not([id^="edgeNote"]):not([id*="-cyclic-special-"])'));if(A.length===0)return{arrows:[],text:[]};let u=[],a=[],n=0;return A.forEach((o)=>{let{id1:s,id2:l,relation:g}=o,C=e.find((v)=>v.id===s),B=e.find((v)=>v.id===l);if(!C)throw Error(`parseRelations: Cannot find node with id ${s}`);if(!B)throw Error(`parseRelations: Cannot find node with id ${l}`);let E=RWt(g.lineType),d=Vle(g.type1),I=Vle(g.type2),h;if(s===l){let v=HWt(s,t);if(!v.length)throw Error(`parseRelations: Cannot find rendered SVG edge for relation ${s} -> ${l}`);h=rge(v,{strokeStyle:E,startArrowhead:d,endArrowhead:I,label:o.title?{text:o.title}:void 0,start:{type:"rectangle",id:C.id},end:{type:"rectangle",id:B.id}})}else{let v=i[n];if(!v)throw Error(`parseRelations: Cannot find rendered SVG edge for relation ${s} -> ${l}`);n+=1,h=TWt(v,{strokeStyle:E,startArrowhead:d,endArrowhead:I,label:o.title?{text:o.title}:void 0,start:{type:"rectangle",id:C.id},end:{type:"rectangle",id:B.id}})}u.push(h);let{relationTitle1:Q,relationTitle2:p}=o,m=s===l,f=20,D=15,w=15,b,k;if(Q&&Q!=="none"){if(m){let S=$le(h,"start");if(S)b=S.x,k=S.y}else switch(r){case"TB":if(b=h.startX-f,h.endX<h.startX)b-=w;k=h.startY+D;break;case"BT":if(b=h.startX+f,h.endX>h.startX)b+=w;k=h.startY-D;break;case"LR":if(b=h.startX+f,k=h.startY+D,h.endY>h.startY)k+=w;break;case"RL":if(b=h.startX-f,k=h.startY-D,h.startY>h.endY)k-=w;break;default:b=h.startX-f,k=h.startY+D}b??=h.startX-f,k??=h.startY+D;let v=M6(b,k,Q,{fontSize:16});a.push(v)}if(p&&p!=="none"){if(m){let S=$le(h,"end");if(S)b=S.x,k=S.y}else switch(r){case"TB":if(b=h.endX+f,h.endX<h.startX)b+=w;k=h.endY-D;break;case"BT":if(b=h.endX-f,h.endX>h.startX)b-=w;k=h.endY+D;break;case"LR":if(b=h.endX-f,k=h.endY-D,h.endY>h.startY)k-=w;break;case"RL":if(b=h.endX+f,k=h.endY+D,h.startY>h.endY)k+=w;break;default:b=h.endX+f,k=h.endY-D}b??=h.endX+f,k??=h.endY+D;let v=M6(b,k,p,{fontSize:16});a.push(v)}}),{arrows:u,text:a}},_Wt=(A,e,t)=>{let r=[],i=[];return A.forEach((u,a)=>{let{id:n,text:o,class:s}=u,l=e.querySelector(`#${n}`);if(!l)throw Error(`Node with id ${n} not found!`);let{transformX:g,transformY:C}=HC(l),B=l.firstChild,E=KC(B,"rectangle",{id:n,subtype:"note",label:{text:o}});if(Object.assign(E,{x:E.x+g,y:E.y+C}),r.push(E),s){let d=t.find((D)=>D.id===s);if(!d)throw Error(`class node with id ${s} not found!`);let I=e.querySelector(`path[id="edgeNote${a+1}"][data-edge="true"]`);if(I){i.push(YWt(I,{strokeStyle:"dotted",startArrowhead:null,endArrowhead:null,start:{id:E.id,type:"rectangle"},end:{id:d.id,type:"rectangle"}}));return}let h=E.x+(E.width||0)/2,Q=E.y+(E.height||0),p=h,m=d.y,f=F7(h,Q,p,m,{strokeStyle:"dotted",startArrowhead:null,endArrowhead:null,start:{id:E.id,type:"rectangle"},end:{id:d.id,type:"rectangle"}});i.push(f)}}),{notes:r,connectors:i}},ige=(A,e)=>{let t=A.db,r=t.getDirection?.()||"TB",i=[],u=[],a=[],n=[],o=t.getNamespaces?.()||[],s=t.getClasses?.()||{},l=s instanceof Map?Object.fromEntries(s):s;if(l&&Object.keys(l).length){let h=typeof t.lookUpDomId==="function"?t.lookUpDomId.bind(t):void 0,Q=OWt(l,e,h);i.push(Q.nodes),u.push(...Q.lines),a.push(...Q.text),n.push(...Q.nodes)}let g=t.getRelations?.()||[],{arrows:C,text:B}=PWt(g,n,e,r),E=t.getNotes?.()||[],{notes:d,connectors:I}=_Wt(E,e,n);return i.push(d),C.push(...I),a.push(...B),{type:"class",nodes:i,lines:u,arrows:C,text:a,namespaces:o}};var uge=_(()=>{zE();BP();EP={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},zle={LINE:0,DOTTED_LINE:1},jle=new Set(["triangle_outline","diamond","diamond_outline"])});var age=18,WWt=(A)=>{let e={};if(!A)return e;return A.forEach((t)=>{_0(t).forEach(({property:r,value:i})=>{if(r&&i)e[r]=zr(i)})}),e},qWt=(A)=>{if(A===null||A===void 0||A==="")return;let e=typeof A==="number"?A:parseFloat(zr(A));if(!Number.isFinite(e)||e<=0)return;return e},EEA=(A,e)=>{let t=0,r=0,i=A;while(i&&i!==e){let{transformX:u,transformY:a}=HC(i);t+=u,r+=a,i=i.parentElement}return{tx:t,ty:r}},zWt=(A)=>{let e=Array.from(A.querySelectorAll("tspan")),t=e.length?e.map((r)=>r.textContent?.trim()).filter(Boolean).join(`
`):A.textContent?.trim()||"";return Eo(t)},ZWt=(A)=>{let e=A.querySelector("text, foreignObject, div, span, p")||A,t=parseFloat(getComputedStyle(e).fontSize||"");if(!Number.isFinite(t)||t<=0)t=Math.max(12,A.getBBox().height*0.75);return t},VWt=(A,e,t)=>{let r=zWt(A);if(!r)return null;let i=A.getBBox(),{tx:u,ty:a}=EEA(A,e);return{className:A.getAttribute("class")||"",text:r,x:i.x+u,y:i.y+a,width:i.width,height:i.height,fontSize:ZWt(A),color:U6(A,t)}},jWt=(A,e,t,r,i,u,a)=>{let{tx:n,ty:o}=EEA(A,e),s=0,l=0,g=0,C=0;if(A.tagName.toLowerCase()==="line")s=Number(A.getAttribute("x1"))+n,l=Number(A.getAttribute("y1"))+o,g=Number(A.getAttribute("x2"))+n,C=Number(A.getAttribute("y2"))+o;else{let E=k7(A);if(!E)return null;s=E.startX+n,l=E.startY+o,g=E.endX+n,C=E.endY+o}let B={type:"line",id:fa(),groupId:t,startX:s,startY:l,endX:g,endY:C,metadata:{entityId:r}};if(i&&W0(i)&&i!=="none")B.strokeColor=i;if(u!==void 0)B.strokeWidth=u;if(a)B.strokeStyle=a;return B},nge=(A)=>{switch(A?.toLowerCase()){case"one":return"cardinality_one";case"many":return"cardinality_many";case"only_one":return"cardinality_exactly_one";case"one_or_more":return"cardinality_one_or_many";case"zero_or_one":return"cardinality_zero_or_one";case"zero_or_more":return"cardinality_zero_or_many";default:return null}},XWt=(A)=>{switch(A){case"dotted":return"dotted";case"dashed":return"dashed";default:return"solid"}},$Wt=(A,e)=>{let t=e.querySelector(`path[id="${A.id}"][data-edge="true"]`);if(t)return[t];if(A.start!==A.end)return[];return[`${A.start}-cyclic-special-1`,`${A.start}-cyclic-special-mid`,`${A.start}-cyclic-special-2`].map((i)=>e.querySelector(`path[id="${i}"][data-edge="true"]`)).filter((i)=>i!==null)},Aqt=(A)=>{let e=[];return A.forEach((t)=>{lP(t).forEach((r)=>{let i=e[e.length-1];if(i&&i.x===r.x&&i.y===r.y)return;e.push(r)})}),e},eqt=(A,e)=>{let t=e.querySelector(`[id="${A.id}"]`);if(!t)throw Error(`ER entity ${A.id} not found in rendered SVG`);let r=A.attributes.length?fa():void 0,i=t.getBBox(),{tx:u,ty:a}=EEA(t,e),n=WWt([...A.cssStyles||[],...A.cssCompiledStyles||[]]),o=zr(n.fill||""),s=zr(n.stroke||""),l=qWt(n["stroke-width"]),g=zr(n["stroke-dasharray"]||""),C=Array.from(t.querySelectorAll("g.label")).map((p)=>VWt(p,e,n.color)).filter((p)=>p!==null),B=C.find((p)=>p.className.includes("name"))||C[0],E=C.filter((p)=>p!==B),d=B?.text||Eo(A.alias||A.label||""),I={type:"rectangle",id:A.id,groupId:r,x:i.x+u,y:i.y+a,width:i.width,height:i.height,label:{text:d,fontSize:A.attributes.length?age:B?.fontSize||16,color:B?.color,textAlign:"center",verticalAlign:A.attributes.length?"top":"middle"},metadata:{entityId:A.id,entityLabel:A.label,entityAlias:A.alias}};if(W0(o)&&o!=="none")I.bgColor=o;if(W0(s)&&s!=="none")I.strokeColor=s;if(l&&Number.isFinite(l)&&l>0)I.strokeWidth=l;if(g&&g!=="none")I.strokeStyle="dashed";let h=Array.from(t.querySelectorAll(".divider path, path.divider, line.divider")).map((p)=>jWt(p,e,r,A.id,I.strokeColor,I.strokeWidth,I.strokeStyle)).filter((p)=>p!==null),Q=E.map((p)=>M6(p.x,p.y,p.text,{id:fa(),groupId:r,width:p.width,height:p.height,fontSize:age,color:p.color,metadata:{entityId:A.id}}));return{container:I,lines:h,text:Q}},tqt=(A,e)=>{let t=$Wt(A,e);if(!t.length)throw Error(`ER relationship ${A.id} not found in rendered SVG`);let r=Aqt(t);if(r.length<2)throw Error(`ER relationship ${A.id} is missing usable path points`);let i=r[0],u=r[r.length-1],a=t[0],n=zr(a.getAttribute("stroke")||getComputedStyle(a).stroke||""),o=Number(a.getAttribute("stroke-width")||getComputedStyle(a).strokeWidth||1),s=F7(i.x,i.y,u.x,u.y,{id:A.id,label:A.label?{text:Eo(A.label),fontSize:16,textAlign:"center"}:void 0,strokeStyle:XWt(A.pattern),startArrowhead:nge(A.arrowTypeStart),endArrowhead:nge(A.arrowTypeEnd),start:{type:"rectangle",id:A.start},end:{type:"rectangle",id:A.end},points:r.map((l)=>[l.x-i.x,l.y-i.y])});if(W0(n)&&n!=="none")s.strokeColor=n;if(Number.isFinite(o)&&o>0)s.strokeWidth=o;return s},oge=(A,e)=>{let t=A.getData(),{nodes:r,edges:i}=t,u=[],a=[],n=[];r.forEach((s)=>{let l=eqt(s,e);u.push(l.container),a.push(...l.lines),n.push(...l.text)});let o=i.map((s)=>tqt(s,e));return{type:"erd",nodes:[u],lines:a,arrows:o,text:n}};var sge=_(()=>{zE();BP()});var Dm=(A)=>{let e=zr(A||"");if(!e)return!1;if(e==="none"||e==="transparent"||e==="rgba(0, 0, 0, 0)"||e==="rgba(0,0,0,0)")return!1;return W0(e)},gge=(A,e,t)=>{switch(e){case Di.FILL:case Di.STROKE:if(Dm(t))A[e]=zr(t);break;case Di.STROKE_WIDTH:case Di.STROKE_DASHARRAY:if(zr(t))A[e]=zr(t);break}},cge=(A,e,t)=>{if(e===_o.COLOR&&Dm(t))A[_o.COLOR]=zr(t)},rqt=(A,e,t)=>{if(!A)return;_0(A).forEach(({property:r,value:i})=>{gge(e,r,i),cge(t,r,i)})},iqt=(A,e)=>{if(!A)return;_0(A).forEach(({property:t,value:r})=>{if(t===Di.FILL&&Dm(r)){e[_o.COLOR]=zr(r);return}cge(e,t,r)})},uqt=(A)=>{let e=new Set;return A.filter(Boolean).forEach((t)=>{_0(t||"").forEach(({property:r})=>{e.add(r)})}),e},aqt=(A,e,t)=>{if(!A)return;[[Di.FILL,A.getAttribute("fill")],[Di.STROKE,A.getAttribute("stroke")],[Di.STROKE_WIDTH,A.getAttribute("stroke-width")],[Di.STROKE_DASHARRAY,A.getAttribute("stroke-dasharray")]].forEach(([i,u])=>{if(!t.has(i))return;if(e[i])return;let a=zr(u||"");if(!a)return;gge(e,i,a)})},nqt=(A,e,t)=>{if(!A)return;let r=[A,...Array.from(A.querySelectorAll("text, foreignObject, div, span, p"))];for(let i of r){if(e[_o.COLOR])break;if(t.has(_o.COLOR)||t.has(Di.FILL)){if(iqt(i.getAttribute("style"),e),e[_o.COLOR])break}let u=zr(i.getAttribute("fill")||i.getAttribute("color")||"");if((t.has(_o.COLOR)||t.has(Di.FILL))&&Dm(u))e[_o.COLOR]=u}},IEA=(A,e)=>{let t=0,r=0,i=A;while(i&&i!==e){let{transformX:u,transformY:a}=HC(i);t+=u,r+=a,i=i.parentElement}return{tx:t,ty:r}},oqt=(A,e)=>{let t=A.getBBox(),{tx:r,ty:i}=IEA(A,e);return{x:t.x+r,y:t.y+i,width:t.width,height:t.height}},sqt=(A,e)=>{let t=A.querySelector("line.divider");if(!t)return;let{tx:r,ty:i}=IEA(t,e);return{startX:Number(t.getAttribute("x1"))+r,startY:Number(t.getAttribute("y1"))+i,endX:Number(t.getAttribute("x2"))+r,endY:Number(t.getAttribute("y2"))+i}},lqt=(A)=>{let e=A.getBBox();return Math.abs(e.width*e.height)},lge=(A,e)=>{let t=A.getAttribute("style");if(!t)return;let r=_0(t).find((i)=>i.property===e);if(!r)return;return zr(r.value)},dEA=(A,e)=>{let t=A.map((i)=>({element:i,area:lqt(i)})).filter(({area:i})=>Number.isFinite(i)&&i>0);if(t.length===0)return null;return t.sort((i,u)=>e==="largest"?u.area-i.area:i.area-u.area)[0].element},gqt=(A,e)=>{if(!A)return;if(!e.has(Di.FILL)&&!e.has(Di.STROKE))return;let t=zr(A.getAttribute("fill")||lge(A,Di.FILL)||""),r=zr(A.getAttribute("stroke")||lge(A,Di.STROKE)||"");if(Dm(t))return t;if(Dm(r))return r;return},cqt=(A,e)=>{let t=Array.from(A.querySelectorAll("circle, ellipse, path")),r=dEA(t,"smallest");return gqt(r,e)},Cqt=(A)=>{if(A.length<2)return A;let e=A.slice(1),t=e.filter((r)=>r.trim().length>0).reduce((r,i)=>{let u=i.match(/^\s*/)?.[0].length??0;return Math.min(r,u)},Number.POSITIVE_INFINITY);if(!Number.isFinite(t)||t<=0)return A.map((r)=>r.trimEnd());return[A[0].trimEnd(),...e.map((r)=>r.replace(new RegExp(`^\\s{0,${t}}`),"").trimEnd())]},Bqt=(A)=>{let e=Array.isArray(A.label)?A.label.map((r)=>Eo(r)):Eo(A.label||"").split(`
`);return Cqt(e).join(`
`)},Eqt=(A)=>{if(!A.description)return[];return(Array.isArray(A.description)?A.description:[A.description]).map((t)=>Eo(t)).filter((t)=>t.length>0)},dqt=(A)=>{let e=new Set,t=(i)=>{if(i)e.add(i);return i},r=(i)=>{let u=i.find((a)=>!e.has(a));return t(u||null)};return(i)=>{let u=[`[id='${i.domId}']`,`[id='${i.id}']`,`[data-id='${i.id}']`];for(let a of u){let n=A.querySelector(a);if(n)return t(n)}switch(i.shape){case"divider":return r(Array.from(A.querySelectorAll("g.statediagram-cluster-alt")));case"stateStart":return r(Array.from(A.querySelectorAll("g.node.default")).filter((a)=>a.querySelector("circle.state-start")));case"stateEnd":return r(Array.from(A.querySelectorAll("g.node.default")).filter((a)=>!a.querySelector("circle.state-start")));default:return null}}},Iqt=(A,e)=>{switch(e){case"roundedWithTitle":return A.querySelector("rect.outer")||A.querySelector("rect")||A;case"divider":return A.querySelector("rect.divider")||A.querySelector("rect")||A;case"rectWithTitle":return A.querySelector("rect.outer")||A.querySelector("rect")||A;case"stateStart":return dEA(Array.from(A.querySelectorAll("circle, ellipse, path")),"largest")||A;case"stateEnd":return dEA(Array.from(A.querySelectorAll("circle, ellipse, path")),"largest")||A;case"choice":case"fork":case"join":case"note":case"rect":default:return A.querySelector("rect, path, circle, ellipse, polygon")||A}},hqt=(A,e,t)=>{let r=t(A);if(!r)throw Error(`State node element not found for "${A.id}"`);let i=Iqt(r,A.shape),u={},a={},n=[A.labelStyle,...A.cssCompiledStyles||[],...A.cssStyles||[]],o=uqt(n);n.filter(Boolean).forEach((l)=>{rqt(l,u,a)}),aqt(i,u,o),nqt(r,a,o);let s=oqt(i,e);return{id:A.id,shape:A.shape,text:Bqt(A),description:Eqt(A),x:s.x,y:s.y,width:s.width,height:s.height,parentId:A.parentId,position:A.position,containerStyle:u,labelStyle:a,dividerLine:A.shape==="rectWithTitle"?sqt(r,e):void 0,endInnerColor:A.shape==="stateEnd"?cqt(r,o):void 0,isRenderable:A.shape!=="noteGroup"}},Qqt=(A,e)=>{let t=e.querySelector(`[id='${A.id}']`);if(!t)return null;let{tx:r,ty:i}=IEA(t,e),u=gP(t,{x:r,y:i},"MCL");if(u.reflectionPoints.length<2)return null;let a={},n=(s,l)=>{switch(s){case Di.STROKE:if(Dm(l))a.strokeColor=zr(l);break;case Di.STROKE_WIDTH:{let g=parseFloat(zr(l));if(Number.isFinite(g)&&g>0)a.strokeWidth=g;break}case Di.STROKE_DASHARRAY:if(zr(l))a.strokeStyle="dashed";break}};[A.style].filter(Boolean).forEach((s)=>{_0(s||"").forEach(({property:l,value:g})=>{n(l,g)})});let o=A.arrowhead==="none"||A.classes?.includes("note-edge");return{id:A.id,start:A.start,end:A.end,text:Eo(A.label||""),...u,strokeColor:a.strokeColor,strokeWidth:a.strokeWidth,strokeStyle:o?"dashed":a.strokeStyle,isNoteEdge:o}},Cge=(A,e)=>{let{nodes:t,edges:r}=A.getData(),i=dqt(e);return{type:"state",nodes:t.map((u)=>hqt(u,e,i)),edges:r.map((u)=>Qqt(u,e)).filter((u)=>u!==null)}};var Bge=_(()=>{D7()});var Ege,dge=(A)=>{let e=Ege.then(A,A);return Ege=e.then(()=>{return},()=>{return}),e};var Ige=_(()=>{Ege=Promise.resolve()});var hge=null,pqt=0,fqt=(A)=>JSON.stringify(A),Qge=(A)=>{let e=A.querySelector("svg");if(!e)throw Error("SVG element not found");let t=e.getBoundingClientRect(),{width:r,height:i}=t;e.setAttribute("width",`${r}`),e.setAttribute("height",`${i}`);let u="image/svg+xml",a=unescape(encodeURIComponent(e.outerHTML)),o=`data:image/svg+xml;base64,${btoa(a)}`;return{type:"graphImage",mimeType:u,dataURL:o,width:r,height:i}},pge=async(A,e=m7)=>dge(async()=>{let t=e.themeVariables?.fontSize??m7.themeVariables.fontSize,r={...m7,...e,fontSize:t,themeVariables:{...m7.themeVariables,...e.themeVariables,fontSize:t}},i=fqt(r);if(i!==hge)Im.initialize(r),hge=i;let u=await Im.mermaidAPI.getDiagramFromText(Lle(A)),a=`mermaid-to-excalidraw-${pqt++}`,n=document.createElement("div");n.setAttribute("style","opacity: 0; position: fixed; z-index: -1; left: -99999px; top: -99999px;");let o=`${a}-container`;n.id=o,document.getElementById(o)?.remove(),document.body.appendChild(n);try{let{svg:s}=await Im.render(a,A,n);n.innerHTML=s;let l;try{switch(u.type){case"flowchart-v2":case"graph":{l=Hle(u.db,n);break}case"sequence":{l=Wle(u,n);break}case"class":case"classDiagram":{l=ige(u,n);break}case"er":{l=oge(u.db,n);break}case"state":case"stateDiagram":{l=Cge(u.db,n);break}default:l=Qge(n)}}catch(g){console.error("Error processing Mermaid diagram:",g),l=Qge(n)}return l}finally{n.remove()}});var fge=_(()=>{rEA();hm();Kle();qle();uge();sge();Bge();Ige()});var mge={};Dt(mge,{parseMermaidToExcalidraw:()=>dP});var dP=async(A,e)=>{let t=e||{},r=parseInt(t.themeVariables?.fontSize??"")||l1,i=await pge(A,{...t,themeVariables:{...t.themeVariables}});return Rle(i,{fontSize:r})};var IP=_(()=>{hm();Nle();fge()});var fr;var T6=_(()=>{fr={VITE_APP_BACKEND_V2_GET_URL:"https://json.excalidraw.com/api/v2/",VITE_APP_BACKEND_V2_POST_URL:"https://json.excalidraw.com/api/v2/post/",VITE_APP_LIBRARY_URL:"https://libraries.excalidraw.com",VITE_APP_LIBRARY_BACKEND:"https://us-central1-excalidraw-room-persistence.cloudfunctions.net/libraries",VITE_APP_PLUS_LP:"https://plus.excalidraw.com",VITE_APP_PLUS_APP:"https://app.excalidraw.com",VITE_APP_AI_BACKEND:"https://oss-ai.excalidraw.com",VITE_APP_WS_SERVER_URL:"https://oss-collab.excalidraw.com",VITE_APP_FIREBASE_CONFIG:'{"apiKey":"AIzaSyAd15pYlMci_xIp9ko6wkEsDzAAA0Dn0RU","authDomain":"excalidraw-room-persistence.firebaseapp.com","databaseURL":"https://excalidraw-room-persistence.firebaseio.com","projectId":"excalidraw-room-persistence","storageBucket":"excalidraw-room-persistence.appspot.com","messagingSenderId":"654800341332","appId":"1:654800341332:web:4a692de832b55bd57ce0c1"}',VITE_APP_ENABLE_TRACKING:"false",VITE_APP_PLUS_EXPORT_PUBLIC_KEY:`MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApQ0jM9Qz8TdFLzcuAZZX
/WvuKSOJxiw6AR/ZcE3eFQWM/mbFdhQgyK8eHGkKQifKzH1xUZjCxyXcxW6ZO02t
kPOPxhz+nxUrIoWCD/V4NGmUA1lxwHuO21HN1gzKrN3xHg5EGjyouR9vibT9VDGF
gq6+4Ic/kJX+AD2MM7Yre2+FsOdysrmuW2Fu3ahuC1uQE7pOe1j0k7auNP0y1q53
PrB8Ts2LUpepWC1l7zIXFm4ViDULuyWXTEpUcHSsEH8vpd1tckjypxCwkipfZsXx
iPszy0o0Dx2iArPfWMXlFAI9mvyFCyFC3+nSvfyAUb2C4uZgCwAuyFh/ydPF4DEE
PQIDAQAB`,VITE_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX:"false",VITE_APP_COLLAPSE_OVERLAY:"false",VITE_APP_ENABLE_ESLINT:"false",PKG_NAME:"@excalidraw/excalidraw",PKG_VERSION:"0.18.1",PROD:!0}});var Dge,mqt=(A,e,t)=>(e in A)?Dge(A,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):A[e]=t,hEA,yge=(A)=>(e)=>{var t=A[e];if(t)return t();throw Error("Module not found in bundle: "+e)},QEA=(A,e)=>{for(var t in e)Dge(A,t,{get:e[t],enumerable:!0})},GA=(A,e,t)=>(mqt(A,typeof e!="symbol"?e+"":e,t),t);var zt=_(()=>{Dge=Object.defineProperty,hEA=((A)=>Z2)(function(A){return Z2.apply(this,arguments)})});var fEA=wu(function(pEA){var wge;(function(A){if(typeof DO_NOT_EXPORT_CRC>"u")if(typeof pEA==="object")A(pEA);else if(typeof define==="function"&&define.amd)define(function(){var e={};return A(e),e});else A(wge={});else A(wge={})})(function(A){A.version="0.3.0";function e(){var o=0,s=Array(256);for(var l=0;l!=256;++l)o=l,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,o=o&1?-306674912^o>>>1:o>>>1,s[l]=o;return typeof Int32Array<"u"?new Int32Array(s):s}var t=e(),r=typeof Buffer<"u";function i(o){if(o.length>32768){if(r)return a(new Buffer(o))}var s=-1,l=o.length-1;for(var g=0;g<l;)s=t[(s^o.charCodeAt(g++))&255]^s>>>8,s=t[(s^o.charCodeAt(g++))&255]^s>>>8;if(g===l)s=s>>>8^t[(s^o.charCodeAt(g))&255];return s^-1}function u(o){if(o.length>1e4)return a(o);for(var s=-1,l=0,g=o.length-3;l<g;)s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255];while(l<g+3)s=s>>>8^t[(s^o[l++])&255];return s^-1}function a(o){for(var s=-1,l=0,g=o.length-7;l<g;)s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255],s=s>>>8^t[(s^o[l++])&255];while(l<g+7)s=s>>>8^t[(s^o[l++])&255];return s^-1}function n(o){for(var s=-1,l=0,g=o.length,C,B;l<g;)if(C=o.charCodeAt(l++),C<128)s=s>>>8^t[(s^C)&255];else if(C<2048)s=s>>>8^t[(s^(192|C>>6&31))&255],s=s>>>8^t[(s^(128|C&63))&255];else if(C>=55296&&C<57344)C=(C&1023)+64,B=o.charCodeAt(l++)&1023,s=s>>>8^t[(s^(240|C>>8&7))&255],s=s>>>8^t[(s^(128|C>>2&63))&255],s=s>>>8^t[(s^(128|B>>6&15|C&3))&255],s=s>>>8^t[(s^(128|B&63))&255];else s=s>>>8^t[(s^(224|C>>12&15))&255],s=s>>>8^t[(s^(128|C>>6&63))&255],s=s>>>8^t[(s^(128|C&63))&255];return s^-1}A.table=t,A.bstr=i,A.buf=u,A.str=n})});var vge=wu(function(i2i,bge){var Dqt=fEA();bge.exports=bqt;var XE=new Uint8Array(4),yqt=new Int32Array(XE.buffer),wqt=new Uint32Array(XE.buffer);function bqt(A){if(A[0]!==137)throw Error("Invalid .png file header");if(A[1]!==80)throw Error("Invalid .png file header");if(A[2]!==78)throw Error("Invalid .png file header");if(A[3]!==71)throw Error("Invalid .png file header");if(A[4]!==13)throw Error("Invalid .png file header: possibly caused by DOS-Unix line ending conversion?");if(A[5]!==10)throw Error("Invalid .png file header: possibly caused by DOS-Unix line ending conversion?");if(A[6]!==26)throw Error("Invalid .png file header");if(A[7]!==10)throw Error("Invalid .png file header: possibly caused by DOS-Unix line ending conversion?");var e=!1,t=[],r=8;while(r<A.length){XE[3]=A[r++],XE[2]=A[r++],XE[1]=A[r++],XE[0]=A[r++];var i=wqt[0]+4,u=new Uint8Array(i);u[0]=A[r++],u[1]=A[r++],u[2]=A[r++],u[3]=A[r++];var a=String.fromCharCode(u[0])+String.fromCharCode(u[1])+String.fromCharCode(u[2])+String.fromCharCode(u[3]);if(!t.length&&a!=="IHDR")throw Error("IHDR header missing");if(a==="IEND"){e=!0,t.push({name:a,data:new Uint8Array(0)});break}for(var n=4;n<i;n++)u[n]=A[r++];XE[3]=A[r++],XE[2]=A[r++],XE[1]=A[r++],XE[0]=A[r++];var o=yqt[0],s=Dqt.buf(u);if(s!==o)throw Error("CRC values for "+a+" header do not match, PNG file is likely corrupted");var l=new Uint8Array(u.buffer.slice(4));t.push({name:a,data:l})}if(!e)throw Error(".png file ended prematurely: no IEND header was found");return t}});var Fge=wu(function(u2i,kge){kge.exports=vqt;function vqt(A,e){if(A=String(A),e=String(e),!/^[\x00-\xFF]+$/.test(A)||!/^[\x00-\xFF]+$/.test(e))throw Error("Only Latin-1 characters are permitted in PNG tEXt chunks. You might want to consider base64 encoding and/or zEXt compression");if(A.length>=80)throw Error('Keyword "'+A+'" is longer than the 79-character limit imposed by the PNG specification');var t=A.length+e.length+1,r=new Uint8Array(t),i=0,u;for(var a=0;a<A.length;a++){if(!(u=A.charCodeAt(a)))throw Error("0x00 character is not permitted in tEXt keywords");r[i++]=u}r[i++]=0;for(var n=0;n<e.length;n++){if(!(u=e.charCodeAt(n)))throw Error("0x00 character is not permitted in tEXt content");r[i++]=u}return{name:"tEXt",data:r}}});var Sge=wu(function(a2i,xge){xge.exports=kqt;function kqt(A){if(A.data&&A.name)A=A.data;var e=!0,t="",r="";for(var i=0;i<A.length;i++){var u=A[i];if(e)if(u)r+=String.fromCharCode(u);else e=!1;else if(u)t+=String.fromCharCode(u);else throw Error("Invalid NULL character found. 0x00 character is not permitted in tEXt content")}return{keyword:r,text:t}}});var hP={};LZ(hP,{encode:()=>Lge,decode:()=>Rge},{encode:(n2i)=>Lge=n2i,decode:(n2i)=>Rge=n2i});var Lge,Rge;var Nge=_(()=>{Lge=Fge(),Rge=Sge()});var Uge=wu(function(o2i,Gge){Gge.exports=function(A,e,t){var r=[],i=A.length;if(i===0)return r;var u=e<0?Math.max(0,e+i):e||0;if(t!==void 0)i=t<0?t+i:t;while(i-- >u)r[i-u]=A[i];return r}});var Tge=wu(function(s2i,Mge){var Fqt=Uge(),xqt=fEA();Mge.exports=Rqt;var $E=new Uint8Array(4),Sqt=new Int32Array($E.buffer),Lqt=new Uint32Array($E.buffer);function Rqt(A){var e=8,t=e,r;for(r=0;r<A.length;r++)e+=A[r].data.length,e+=12;var i=new Uint8Array(e);i[0]=137,i[1]=80,i[2]=78,i[3]=71,i[4]=13,i[5]=10,i[6]=26,i[7]=10;for(r=0;r<A.length;r++){var u=A[r],{name:a,data:n}=u,o=n.length,s=[a.charCodeAt(0),a.charCodeAt(1),a.charCodeAt(2),a.charCodeAt(3)];Lqt[0]=o,i[t++]=$E[3],i[t++]=$E[2],i[t++]=$E[1],i[t++]=$E[0],i[t++]=s[0],i[t++]=s[1],i[t++]=s[2],i[t++]=s[3];for(var l=0;l<o;)i[t++]=n[l++];var g=s.concat(Fqt(n)),C=xqt.buf(g);Sqt[0]=C,i[t++]=$E[3],i[t++]=$E[2],i[t++]=$E[1],i[t++]=$E[0]}return i}});function J6(A){let e=A.length;while(--e>=0)A[e]=0}function DEA(A,e,t,r,i){this.static_tree=A,this.extra_bits=e,this.extra_base=t,this.elems=r,this.max_length=i,this.has_stree=A&&A.length}function yEA(A,e){this.dyn_tree=A,this.max_code=0,this.stat_desc=e}function Ad(A,e,t,r,i){this.good_length=A,this.max_lazy=e,this.nice_length=t,this.max_chain=r,this.func=i}function Tzt(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=SP,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(kzt*2),this.dyn_dtree=new Uint16Array((2*bzt+1)*2),this.bl_tree=new Uint16Array((2*vzt+1)*2),c1(this.dyn_ltree),c1(this.dyn_dtree),c1(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(Fzt+1),this.heap=new Uint16Array(2*TEA+1),c1(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*TEA+1),c1(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function aZt(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}function W7(A){this.options=RP.assign({level:cZt,method:BZt,chunkSize:16384,windowBits:15,memLevel:8,strategy:CZt},A||{});let e=this.options;if(e.raw&&e.windowBits>0)e.windowBits=-e.windowBits;else if(e.gzip&&e.windowBits>0&&e.windowBits<16)e.windowBits+=16;this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Oce,this.strm.avail_out=0;let t=N7.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(t!==FP)throw Error(bm[t]);if(e.header)N7.deflateSetHeader(this.strm,e.header);if(e.dictionary){let r;if(typeof e.dictionary==="string")r=J7.string2buf(e.dictionary);else if(Pce.call(e.dictionary)==="[object ArrayBuffer]")r=new Uint8Array(e.dictionary);else r=e.dictionary;if(t=N7.deflateSetDictionary(this.strm,r),t!==FP)throw Error(bm[t]);this._dict_set=!0}}function PEA(A,e){let t=new W7(e);if(t.push(A,!0),t.err)throw t.msg||bm[t.err];return t.result}function EZt(A,e){return e=e||{},e.raw=!0,PEA(A,e)}function dZt(A,e){return e=e||{},e.gzip=!0,PEA(A,e)}function HZt(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function rVt(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}function q7(A){this.options=RP.assign({chunkSize:65536,windowBits:15,to:""},A||{});let e=this.options;if(e.raw&&e.windowBits>=0&&e.windowBits<16){if(e.windowBits=-e.windowBits,e.windowBits===0)e.windowBits=-15}if(e.windowBits>=0&&e.windowBits<16&&!(A&&A.windowBits))e.windowBits+=32;if(e.windowBits>15&&e.windowBits<48){if((e.windowBits&15)===0)e.windowBits|=15}this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new Oce,this.strm.avail_out=0;let t=ph.inflateInit2(this.strm,e.windowBits);if(t!==O7)throw Error(bm[t]);if(this.header=new iVt,ph.inflateGetHeader(this.strm,this.header),e.dictionary){if(typeof e.dictionary==="string")e.dictionary=J7.string2buf(e.dictionary);else if(tCe.call(e.dictionary)==="[object ArrayBuffer]")e.dictionary=new Uint8Array(e.dictionary);if(e.raw){if(t=ph.inflateSetDictionary(this.strm,e.dictionary),t!==O7)throw Error(bm[t])}}}function _EA(A,e){let t=new q7(e);if(t.push(A),t.err)throw t.msg||bm[t.err];return t.result}function sVt(A,e){return e=e||{},e.raw=!0,_EA(A,e)}var Nqt=0,Dce=1,Gqt=2,Uqt=3,Mqt=258,HEA=29,P7=256,U7,K6=30,KEA=19,yce,ym=15,mEA=16,Tqt=7,JEA=256,wce=16,bce=17,vce=18,UEA,yP,Yqt,kce,Hqt=512,Qh,R7,M7,T7,OEA,kP,Fce,xce,Sce,Lce=(A)=>A<256?M7[A]:M7[256+(A>>>7)],Y7=(A,e)=>{A.pending_buf[A.pending++]=e&255,A.pending_buf[A.pending++]=e>>>8&255},xl=(A,e,t)=>{if(A.bi_valid>mEA-t)A.bi_buf|=e<<A.bi_valid&65535,Y7(A,A.bi_buf),A.bi_buf=e>>mEA-A.bi_valid,A.bi_valid+=t-mEA;else A.bi_buf|=e<<A.bi_valid&65535,A.bi_valid+=t},ed=(A,e,t)=>{xl(A,t[e*2],t[e*2+1])},Rce=(A,e)=>{let t=0;do t|=A&1,A>>>=1,t<<=1;while(--e>0);return t>>>1},Kqt=(A)=>{if(A.bi_valid===16)Y7(A,A.bi_buf),A.bi_buf=0,A.bi_valid=0;else if(A.bi_valid>=8)A.pending_buf[A.pending++]=A.bi_buf&255,A.bi_buf>>=8,A.bi_valid-=8},Jqt=(A,e)=>{let{dyn_tree:t,max_code:r}=e,i=e.stat_desc.static_tree,u=e.stat_desc.has_stree,a=e.stat_desc.extra_bits,n=e.stat_desc.extra_base,o=e.stat_desc.max_length,s,l,g,C,B,E,d=0;for(C=0;C<=ym;C++)A.bl_count[C]=0;t[A.heap[A.heap_max]*2+1]=0;for(s=A.heap_max+1;s<yce;s++){if(l=A.heap[s],C=t[t[l*2+1]*2+1]+1,C>o)C=o,d++;if(t[l*2+1]=C,l>r)continue;if(A.bl_count[C]++,B=0,l>=n)B=a[l-n];if(E=t[l*2],A.opt_len+=E*(C+B),u)A.static_len+=E*(i[l*2+1]+B)}if(d===0)return;do{C=o-1;while(A.bl_count[C]===0)C--;A.bl_count[C]--,A.bl_count[C+1]+=2,A.bl_count[o]--,d-=2}while(d>0);for(C=o;C!==0;C--){l=A.bl_count[C];while(l!==0){if(g=A.heap[--s],g>r)continue;if(t[g*2+1]!==C)A.opt_len+=(C-t[g*2+1])*t[g*2],t[g*2+1]=C;l--}}},Nce=(A,e,t)=>{let r=Array(ym+1),i=0,u,a;for(u=1;u<=ym;u++)r[u]=i=i+t[u-1]<<1;for(a=0;a<=e;a++){let n=A[a*2+1];if(n===0)continue;A[a*2]=Rce(r[n]++,n)}},Oqt=()=>{let A,e,t,r,i,u=Array(ym+1);t=0;for(r=0;r<HEA-1;r++){OEA[r]=t;for(A=0;A<1<<UEA[r];A++)T7[t++]=r}T7[t-1]=r,i=0;for(r=0;r<16;r++){kP[r]=i;for(A=0;A<1<<yP[r];A++)M7[i++]=r}i>>=7;for(;r<K6;r++){kP[r]=i<<7;for(A=0;A<1<<yP[r]-7;A++)M7[256+i++]=r}for(e=0;e<=ym;e++)u[e]=0;A=0;while(A<=143)Qh[A*2+1]=8,A++,u[8]++;while(A<=255)Qh[A*2+1]=9,A++,u[9]++;while(A<=279)Qh[A*2+1]=7,A++,u[7]++;while(A<=287)Qh[A*2+1]=8,A++,u[8]++;Nce(Qh,U7+1,u);for(A=0;A<K6;A++)R7[A*2+1]=5,R7[A*2]=Rce(A,5);Fce=new DEA(Qh,UEA,P7+1,U7,ym),xce=new DEA(R7,yP,0,K6,ym),Sce=new DEA([],Yqt,0,KEA,Tqt)},Gce=(A)=>{let e;for(e=0;e<U7;e++)A.dyn_ltree[e*2]=0;for(e=0;e<K6;e++)A.dyn_dtree[e*2]=0;for(e=0;e<KEA;e++)A.bl_tree[e*2]=0;A.dyn_ltree[JEA*2]=1,A.opt_len=A.static_len=0,A.last_lit=A.matches=0},Uce=(A)=>{if(A.bi_valid>8)Y7(A,A.bi_buf);else if(A.bi_valid>0)A.pending_buf[A.pending++]=A.bi_buf;A.bi_buf=0,A.bi_valid=0},Pqt=(A,e,t,r)=>{if(Uce(A),r)Y7(A,t),Y7(A,~t);A.pending_buf.set(A.window.subarray(e,e+t),A.pending),A.pending+=t},Yge=(A,e,t,r)=>{let i=e*2,u=t*2;return A[i]<A[u]||A[i]===A[u]&&r[e]<=r[t]},wEA=(A,e,t)=>{let r=A.heap[t],i=t<<1;while(i<=A.heap_len){if(i<A.heap_len&&Yge(e,A.heap[i+1],A.heap[i],A.depth))i++;if(Yge(e,r,A.heap[i],A.depth))break;A.heap[t]=A.heap[i],t=i,i<<=1}A.heap[t]=r},Hge=(A,e,t)=>{let r,i,u=0,a,n;if(A.last_lit!==0)do if(r=A.pending_buf[A.d_buf+u*2]<<8|A.pending_buf[A.d_buf+u*2+1],i=A.pending_buf[A.l_buf+u],u++,r===0)ed(A,i,e);else{if(a=T7[i],ed(A,a+P7+1,e),n=UEA[a],n!==0)i-=OEA[a],xl(A,i,n);if(r--,a=Lce(r),ed(A,a,t),n=yP[a],n!==0)r-=kP[a],xl(A,r,n)}while(u<A.last_lit);ed(A,JEA,e)},MEA=(A,e)=>{let t=e.dyn_tree,r=e.stat_desc.static_tree,i=e.stat_desc.has_stree,u=e.stat_desc.elems,a,n,o=-1,s;A.heap_len=0,A.heap_max=yce;for(a=0;a<u;a++)if(t[a*2]!==0)A.heap[++A.heap_len]=o=a,A.depth[a]=0;else t[a*2+1]=0;while(A.heap_len<2)if(s=A.heap[++A.heap_len]=o<2?++o:0,t[s*2]=1,A.depth[s]=0,A.opt_len--,i)A.static_len-=r[s*2+1];e.max_code=o;for(a=A.heap_len>>1;a>=1;a--)wEA(A,t,a);s=u;do a=A.heap[1],A.heap[1]=A.heap[A.heap_len--],wEA(A,t,1),n=A.heap[1],A.heap[--A.heap_max]=a,A.heap[--A.heap_max]=n,t[s*2]=t[a*2]+t[n*2],A.depth[s]=(A.depth[a]>=A.depth[n]?A.depth[a]:A.depth[n])+1,t[a*2+1]=t[n*2+1]=s,A.heap[1]=s++,wEA(A,t,1);while(A.heap_len>=2);A.heap[--A.heap_max]=A.heap[1],Jqt(A,e),Nce(t,o,A.bl_count)},Kge=(A,e,t)=>{let r,i=-1,u,a=e[1],n=0,o=7,s=4;if(a===0)o=138,s=3;e[(t+1)*2+1]=65535;for(r=0;r<=t;r++){if(u=a,a=e[(r+1)*2+1],++n<o&&u===a)continue;else if(n<s)A.bl_tree[u*2]+=n;else if(u!==0){if(u!==i)A.bl_tree[u*2]++;A.bl_tree[wce*2]++}else if(n<=10)A.bl_tree[bce*2]++;else A.bl_tree[vce*2]++;if(n=0,i=u,a===0)o=138,s=3;else if(u===a)o=6,s=3;else o=7,s=4}},Jge=(A,e,t)=>{let r,i=-1,u,a=e[1],n=0,o=7,s=4;if(a===0)o=138,s=3;for(r=0;r<=t;r++){if(u=a,a=e[(r+1)*2+1],++n<o&&u===a)continue;else if(n<s)do ed(A,u,A.bl_tree);while(--n!==0);else if(u!==0){if(u!==i)ed(A,u,A.bl_tree),n--;ed(A,wce,A.bl_tree),xl(A,n-3,2)}else if(n<=10)ed(A,bce,A.bl_tree),xl(A,n-3,3);else ed(A,vce,A.bl_tree),xl(A,n-11,7);if(n=0,i=u,a===0)o=138,s=3;else if(u===a)o=6,s=3;else o=7,s=4}},_qt=(A)=>{let e;Kge(A,A.dyn_ltree,A.l_desc.max_code),Kge(A,A.dyn_dtree,A.d_desc.max_code),MEA(A,A.bl_desc);for(e=KEA-1;e>=3;e--)if(A.bl_tree[kce[e]*2+1]!==0)break;return A.opt_len+=3*(e+1)+5+5+4,e},Wqt=(A,e,t,r)=>{let i;xl(A,e-257,5),xl(A,t-1,5),xl(A,r-4,4);for(i=0;i<r;i++)xl(A,A.bl_tree[kce[i]*2+1],3);Jge(A,A.dyn_ltree,e-1),Jge(A,A.dyn_dtree,t-1)},qqt=(A)=>{let e=4093624447,t;for(t=0;t<=31;t++,e>>>=1)if(e&1&&A.dyn_ltree[t*2]!==0)return 0;if(A.dyn_ltree[18]!==0||A.dyn_ltree[20]!==0||A.dyn_ltree[26]!==0)return 1;for(t=32;t<P7;t++)if(A.dyn_ltree[t*2]!==0)return 1;return 0},Oge=!1,zqt=(A)=>{if(!Oge)Oqt(),Oge=!0;A.l_desc=new yEA(A.dyn_ltree,Fce),A.d_desc=new yEA(A.dyn_dtree,xce),A.bl_desc=new yEA(A.bl_tree,Sce),A.bi_buf=0,A.bi_valid=0,Gce(A)},Mce=(A,e,t,r)=>{xl(A,(Nqt<<1)+(r?1:0),3),Pqt(A,e,t,!0)},Zqt=(A)=>{xl(A,Dce<<1,3),ed(A,JEA,Qh),Kqt(A)},Vqt=(A,e,t,r)=>{let i,u,a=0;if(A.level>0){if(A.strm.data_type===2)A.strm.data_type=qqt(A);if(MEA(A,A.l_desc),MEA(A,A.d_desc),a=_qt(A),i=A.opt_len+3+7>>>3,u=A.static_len+3+7>>>3,u<=i)i=u}else i=u=t+5;if(t+4<=i&&e!==-1)Mce(A,e,t,r);else if(A.strategy===4||u===i)xl(A,(Dce<<1)+(r?1:0),3),Hge(A,Qh,R7);else xl(A,(Gqt<<1)+(r?1:0),3),Wqt(A,A.l_desc.max_code+1,A.d_desc.max_code+1,a+1),Hge(A,A.dyn_ltree,A.dyn_dtree);if(Gce(A),r)Uce(A)},jqt=(A,e,t)=>{if(A.pending_buf[A.d_buf+A.last_lit*2]=e>>>8&255,A.pending_buf[A.d_buf+A.last_lit*2+1]=e&255,A.pending_buf[A.l_buf+A.last_lit]=t&255,A.last_lit++,e===0)A.dyn_ltree[t*2]++;else A.matches++,e--,A.dyn_ltree[(T7[t]+P7+1)*2]++,A.dyn_dtree[Lce(e)*2]++;return A.last_lit===A.lit_bufsize-1},Xqt,$qt,Azt,ezt,tzt,rzt,izt=(A,e,t,r)=>{let i=A&65535|0,u=A>>>16&65535|0,a=0;while(t!==0){a=t>2000?2000:t,t-=a;do i=i+e[r++]|0,u=u+i|0;while(--a);i%=65521,u%=65521}return i|u<<16|0},H7,uzt=()=>{let A,e=[];for(var t=0;t<256;t++){A=t;for(var r=0;r<8;r++)A=A&1?3988292384^A>>>1:A>>>1;e[t]=A}return e},azt,nzt=(A,e,t,r)=>{let i=azt,u=r+t;A^=-1;for(let a=r;a<u;a++)A=A>>>8^i[(A^e[a])&255];return A^-1},Wo,bm,O6,ozt,szt,lzt,E1,gzt,xm,czt,Czt,d1,Pge,td,_ge,mc,Bzt,bEA,Ezt,dzt,QP,Izt,hzt,Qzt,pzt,SP,fzt=9,mzt=15,Dzt=8,yzt=29,wzt=256,TEA,bzt=30,vzt=19,kzt,Fzt=15,yi=3,C1=258,JC,xzt=32,LP=42,YEA=69,wP=73,bP=91,vP=103,wm=113,S7=666,Io=1,_7=2,vm=3,P6=4,Szt=3,B1=(A,e)=>(A.msg=bm[e],e),Wge=(A)=>(A<<1)-(A>4?9:0),c1=(A)=>{let e=A.length;while(--e>=0)A[e]=0},Lzt=(A,e,t)=>(e<<A.hash_shift^t)&A.hash_mask,I1,g1=(A)=>{let e=A.state,t=e.pending;if(t>A.avail_out)t=A.avail_out;if(t===0)return;if(A.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+t),A.next_out),A.next_out+=t,e.pending_out+=t,A.total_out+=t,A.avail_out-=t,e.pending-=t,e.pending===0)e.pending_out=0},f0=(A,e)=>{lzt(A,A.block_start>=0?A.block_start:-1,A.strstart-A.block_start,e),A.block_start=A.strstart,g1(A.strm)},tu=(A,e)=>{A.pending_buf[A.pending++]=e},x7=(A,e)=>{A.pending_buf[A.pending++]=e>>>8&255,A.pending_buf[A.pending++]=e&255},Rzt=(A,e,t,r)=>{let i=A.avail_in;if(i>r)i=r;if(i===0)return 0;if(A.avail_in-=i,e.set(A.input.subarray(A.next_in,A.next_in+i),t),A.state.wrap===1)A.adler=H7(A.adler,e,i,t);else if(A.state.wrap===2)A.adler=Wo(A.adler,e,i,t);return A.next_in+=i,A.total_in+=i,i},Tce=(A,e)=>{let{max_chain_length:t,strstart:r}=A,i,u,{prev_length:a,nice_match:n}=A,o=A.strstart>A.w_size-JC?A.strstart-(A.w_size-JC):0,{window:s,w_mask:l,prev:g}=A,C=A.strstart+C1,B=s[r+a-1],E=s[r+a];if(A.prev_length>=A.good_match)t>>=2;if(n>A.lookahead)n=A.lookahead;do{if(i=e,s[i+a]!==E||s[i+a-1]!==B||s[i]!==s[r]||s[++i]!==s[r+1])continue;r+=2,i++;do;while(s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&s[++r]===s[++i]&&r<C);if(u=C1-(C-r),r=C-C1,u>a){if(A.match_start=e,a=u,u>=n)break;B=s[r+a-1],E=s[r+a]}}while((e=g[e&l])>o&&--t!==0);if(a<=A.lookahead)return a;return A.lookahead},km=(A)=>{let e=A.w_size,t,r,i,u,a;do{if(u=A.window_size-A.lookahead-A.strstart,A.strstart>=e+(e-JC)){A.window.set(A.window.subarray(e,e+e),0),A.match_start-=e,A.strstart-=e,A.block_start-=e,r=A.hash_size,t=r;do i=A.head[--t],A.head[t]=i>=e?i-e:0;while(--r);r=e,t=r;do i=A.prev[--t],A.prev[t]=i>=e?i-e:0;while(--r);u+=e}if(A.strm.avail_in===0)break;if(r=Rzt(A.strm,A.window,A.strstart+A.lookahead,u),A.lookahead+=r,A.lookahead+A.insert>=yi){a=A.strstart-A.insert,A.ins_h=A.window[a],A.ins_h=I1(A,A.ins_h,A.window[a+1]);while(A.insert)if(A.ins_h=I1(A,A.ins_h,A.window[a+yi-1]),A.prev[a&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=a,a++,A.insert--,A.lookahead+A.insert<yi)break}}while(A.lookahead<JC&&A.strm.avail_in!==0)},Nzt=(A,e)=>{let t=65535;if(t>A.pending_buf_size-5)t=A.pending_buf_size-5;for(;;){if(A.lookahead<=1){if(km(A),A.lookahead===0&&e===xm)return Io;if(A.lookahead===0)break}A.strstart+=A.lookahead,A.lookahead=0;let r=A.block_start+t;if(A.strstart===0||A.strstart>=r){if(A.lookahead=A.strstart-r,A.strstart=r,f0(A,!1),A.strm.avail_out===0)return Io}if(A.strstart-A.block_start>=A.w_size-JC){if(f0(A,!1),A.strm.avail_out===0)return Io}}if(A.insert=0,e===d1){if(f0(A,!0),A.strm.avail_out===0)return vm;return P6}if(A.strstart>A.block_start){if(f0(A,!1),A.strm.avail_out===0)return Io}return Io},vEA=(A,e)=>{let t,r;for(;;){if(A.lookahead<JC){if(km(A),A.lookahead<JC&&e===xm)return Io;if(A.lookahead===0)break}if(t=0,A.lookahead>=yi)A.ins_h=I1(A,A.ins_h,A.window[A.strstart+yi-1]),t=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart;if(t!==0&&A.strstart-t<=A.w_size-JC)A.match_length=Tce(A,t);if(A.match_length>=yi)if(r=E1(A,A.strstart-A.match_start,A.match_length-yi),A.lookahead-=A.match_length,A.match_length<=A.max_lazy_match&&A.lookahead>=yi){A.match_length--;do A.strstart++,A.ins_h=I1(A,A.ins_h,A.window[A.strstart+yi-1]),t=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart;while(--A.match_length!==0);A.strstart++}else A.strstart+=A.match_length,A.match_length=0,A.ins_h=A.window[A.strstart],A.ins_h=I1(A,A.ins_h,A.window[A.strstart+1]);else r=E1(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++;if(r){if(f0(A,!1),A.strm.avail_out===0)return Io}}if(A.insert=A.strstart<yi-1?A.strstart:yi-1,e===d1){if(f0(A,!0),A.strm.avail_out===0)return vm;return P6}if(A.last_lit){if(f0(A,!1),A.strm.avail_out===0)return Io}return _7},Y6=(A,e)=>{let t,r,i;for(;;){if(A.lookahead<JC){if(km(A),A.lookahead<JC&&e===xm)return Io;if(A.lookahead===0)break}if(t=0,A.lookahead>=yi)A.ins_h=I1(A,A.ins_h,A.window[A.strstart+yi-1]),t=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart;if(A.prev_length=A.match_length,A.prev_match=A.match_start,A.match_length=yi-1,t!==0&&A.prev_length<A.max_lazy_match&&A.strstart-t<=A.w_size-JC){if(A.match_length=Tce(A,t),A.match_length<=5&&(A.strategy===dzt||A.match_length===yi&&A.strstart-A.match_start>4096))A.match_length=yi-1}if(A.prev_length>=yi&&A.match_length<=A.prev_length){i=A.strstart+A.lookahead-yi,r=E1(A,A.strstart-1-A.prev_match,A.prev_length-yi),A.lookahead-=A.prev_length-1,A.prev_length-=2;do if(++A.strstart<=i)A.ins_h=I1(A,A.ins_h,A.window[A.strstart+yi-1]),t=A.prev[A.strstart&A.w_mask]=A.head[A.ins_h],A.head[A.ins_h]=A.strstart;while(--A.prev_length!==0);if(A.match_available=0,A.match_length=yi-1,A.strstart++,r){if(f0(A,!1),A.strm.avail_out===0)return Io}}else if(A.match_available){if(r=E1(A,0,A.window[A.strstart-1]),r)f0(A,!1);if(A.strstart++,A.lookahead--,A.strm.avail_out===0)return Io}else A.match_available=1,A.strstart++,A.lookahead--}if(A.match_available)r=E1(A,0,A.window[A.strstart-1]),A.match_available=0;if(A.insert=A.strstart<yi-1?A.strstart:yi-1,e===d1){if(f0(A,!0),A.strm.avail_out===0)return vm;return P6}if(A.last_lit){if(f0(A,!1),A.strm.avail_out===0)return Io}return _7},Gzt=(A,e)=>{let t,r,i,u,a=A.window;for(;;){if(A.lookahead<=C1){if(km(A),A.lookahead<=C1&&e===xm)return Io;if(A.lookahead===0)break}if(A.match_length=0,A.lookahead>=yi&&A.strstart>0){if(i=A.strstart-1,r=a[i],r===a[++i]&&r===a[++i]&&r===a[++i]){u=A.strstart+C1;do;while(r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&r===a[++i]&&i<u);if(A.match_length=C1-(u-i),A.match_length>A.lookahead)A.match_length=A.lookahead}}if(A.match_length>=yi)t=E1(A,1,A.match_length-yi),A.lookahead-=A.match_length,A.strstart+=A.match_length,A.match_length=0;else t=E1(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++;if(t){if(f0(A,!1),A.strm.avail_out===0)return Io}}if(A.insert=0,e===d1){if(f0(A,!0),A.strm.avail_out===0)return vm;return P6}if(A.last_lit){if(f0(A,!1),A.strm.avail_out===0)return Io}return _7},Uzt=(A,e)=>{let t;for(;;){if(A.lookahead===0){if(km(A),A.lookahead===0){if(e===xm)return Io;break}}if(A.match_length=0,t=E1(A,0,A.window[A.strstart]),A.lookahead--,A.strstart++,t){if(f0(A,!1),A.strm.avail_out===0)return Io}}if(A.insert=0,e===d1){if(f0(A,!0),A.strm.avail_out===0)return vm;return P6}if(A.last_lit){if(f0(A,!1),A.strm.avail_out===0)return Io}return _7},L7,Mzt=(A)=>{A.window_size=2*A.w_size,c1(A.head),A.max_lazy_match=L7[A.level].max_lazy,A.good_match=L7[A.level].good_length,A.nice_match=L7[A.level].nice_length,A.max_chain_length=L7[A.level].max_chain,A.strstart=0,A.block_start=0,A.lookahead=0,A.insert=0,A.match_length=A.prev_length=yi-1,A.match_available=0,A.ins_h=0},Yce=(A)=>{if(!A||!A.state)return B1(A,mc);A.total_in=A.total_out=0,A.data_type=pzt;let e=A.state;if(e.pending=0,e.pending_out=0,e.wrap<0)e.wrap=-e.wrap;return e.status=e.wrap?LP:wm,A.adler=e.wrap===2?0:1,e.last_flush=xm,ozt(e),td},Hce=(A)=>{let e=Yce(A);if(e===td)Mzt(A.state);return e},Yzt=(A,e)=>{if(!A||!A.state)return mc;if(A.state.wrap!==2)return mc;return A.state.gzhead=e,td},Kce=(A,e,t,r,i,u)=>{if(!A)return mc;let a=1;if(e===Ezt)e=6;if(r<0)a=0,r=-r;else if(r>15)a=2,r-=16;if(i<1||i>fzt||t!==SP||r<8||r>15||e<0||e>9||u<0||u>hzt)return B1(A,mc);if(r===8)r=9;let n=new Tzt;return A.state=n,n.strm=A,n.wrap=a,n.gzhead=null,n.w_bits=r,n.w_size=1<<n.w_bits,n.w_mask=n.w_size-1,n.hash_bits=i+7,n.hash_size=1<<n.hash_bits,n.hash_mask=n.hash_size-1,n.hash_shift=~~((n.hash_bits+yi-1)/yi),n.window=new Uint8Array(n.w_size*2),n.head=new Uint16Array(n.hash_size),n.prev=new Uint16Array(n.w_size),n.lit_bufsize=1<<i+6,n.pending_buf_size=n.lit_bufsize*4,n.pending_buf=new Uint8Array(n.pending_buf_size),n.d_buf=1*n.lit_bufsize,n.l_buf=3*n.lit_bufsize,n.level=e,n.strategy=u,n.method=t,Hce(A)},Hzt=(A,e)=>Kce(A,e,SP,mzt,Dzt,Qzt),Kzt=(A,e)=>{let t,r;if(!A||!A.state||e>Pge||e<0)return A?B1(A,mc):mc;let i=A.state;if(!A.output||!A.input&&A.avail_in!==0||i.status===S7&&e!==d1)return B1(A,A.avail_out===0?bEA:mc);i.strm=A;let u=i.last_flush;if(i.last_flush=e,i.status===LP)if(i.wrap===2)if(A.adler=0,tu(i,31),tu(i,139),tu(i,8),!i.gzhead)tu(i,0),tu(i,0),tu(i,0),tu(i,0),tu(i,0),tu(i,i.level===9?2:i.strategy>=QP||i.level<2?4:0),tu(i,Szt),i.status=wm;else{if(tu(i,(i.gzhead.text?1:0)+(i.gzhead.hcrc?2:0)+(!i.gzhead.extra?0:4)+(!i.gzhead.name?0:8)+(!i.gzhead.comment?0:16)),tu(i,i.gzhead.time&255),tu(i,i.gzhead.time>>8&255),tu(i,i.gzhead.time>>16&255),tu(i,i.gzhead.time>>24&255),tu(i,i.level===9?2:i.strategy>=QP||i.level<2?4:0),tu(i,i.gzhead.os&255),i.gzhead.extra&&i.gzhead.extra.length)tu(i,i.gzhead.extra.length&255),tu(i,i.gzhead.extra.length>>8&255);if(i.gzhead.hcrc)A.adler=Wo(A.adler,i.pending_buf,i.pending,0);i.gzindex=0,i.status=YEA}else{let a=SP+(i.w_bits-8<<4)<<8,n=-1;if(i.strategy>=QP||i.level<2)n=0;else if(i.level<6)n=1;else if(i.level===6)n=2;else n=3;if(a|=n<<6,i.strstart!==0)a|=xzt;if(a+=31-a%31,i.status=wm,x7(i,a),i.strstart!==0)x7(i,A.adler>>>16),x7(i,A.adler&65535);A.adler=1}if(i.status===YEA)if(i.gzhead.extra){t=i.pending;while(i.gzindex<(i.gzhead.extra.length&65535)){if(i.pending===i.pending_buf_size){if(i.gzhead.hcrc&&i.pending>t)A.adler=Wo(A.adler,i.pending_buf,i.pending-t,t);if(g1(A),t=i.pending,i.pending===i.pending_buf_size)break}tu(i,i.gzhead.extra[i.gzindex]&255),i.gzindex++}if(i.gzhead.hcrc&&i.pending>t)A.adler=Wo(A.adler,i.pending_buf,i.pending-t,t);if(i.gzindex===i.gzhead.extra.length)i.gzindex=0,i.status=wP}else i.status=wP;if(i.status===wP)if(i.gzhead.name){t=i.pending;do{if(i.pending===i.pending_buf_size){if(i.gzhead.hcrc&&i.pending>t)A.adler=Wo(A.adler,i.pending_buf,i.pending-t,t);if(g1(A),t=i.pending,i.pending===i.pending_buf_size){r=1;break}}if(i.gzindex<i.gzhead.name.length)r=i.gzhead.name.charCodeAt(i.gzindex++)&255;else r=0;tu(i,r)}while(r!==0);if(i.gzhead.hcrc&&i.pending>t)A.adler=Wo(A.adler,i.pending_buf,i.pending-t,t);if(r===0)i.gzindex=0,i.status=bP}else i.status=bP;if(i.status===bP)if(i.gzhead.comment){t=i.pending;do{if(i.pending===i.pending_buf_size){if(i.gzhead.hcrc&&i.pending>t)A.adler=Wo(A.adler,i.pending_buf,i.pending-t,t);if(g1(A),t=i.pending,i.pending===i.pending_buf_size){r=1;break}}if(i.gzindex<i.gzhead.comment.length)r=i.gzhead.comment.charCodeAt(i.gzindex++)&255;else r=0;tu(i,r)}while(r!==0);if(i.gzhead.hcrc&&i.pending>t)A.adler=Wo(A.adler,i.pending_buf,i.pending-t,t);if(r===0)i.status=vP}else i.status=vP;if(i.status===vP)if(i.gzhead.hcrc){if(i.pending+2>i.pending_buf_size)g1(A);if(i.pending+2<=i.pending_buf_size)tu(i,A.adler&255),tu(i,A.adler>>8&255),A.adler=0,i.status=wm}else i.status=wm;if(i.pending!==0){if(g1(A),A.avail_out===0)return i.last_flush=-1,td}else if(A.avail_in===0&&Wge(e)<=Wge(u)&&e!==d1)return B1(A,bEA);if(i.status===S7&&A.avail_in!==0)return B1(A,bEA);if(A.avail_in!==0||i.lookahead!==0||e!==xm&&i.status!==S7){let a=i.strategy===QP?Uzt(i,e):i.strategy===Izt?Gzt(i,e):L7[i.level].func(i,e);if(a===vm||a===P6)i.status=S7;if(a===Io||a===vm){if(A.avail_out===0)i.last_flush=-1;return td}if(a===_7){if(e===czt)gzt(i);else if(e!==Pge){if(szt(i,0,0,!1),e===Czt){if(c1(i.head),i.lookahead===0)i.strstart=0,i.block_start=0,i.insert=0}}if(g1(A),A.avail_out===0)return i.last_flush=-1,td}}if(e!==d1)return td;if(i.wrap<=0)return _ge;if(i.wrap===2)tu(i,A.adler&255),tu(i,A.adler>>8&255),tu(i,A.adler>>16&255),tu(i,A.adler>>24&255),tu(i,A.total_in&255),tu(i,A.total_in>>8&255),tu(i,A.total_in>>16&255),tu(i,A.total_in>>24&255);else x7(i,A.adler>>>16),x7(i,A.adler&65535);if(g1(A),i.wrap>0)i.wrap=-i.wrap;return i.pending!==0?td:_ge},Jzt=(A)=>{if(!A||!A.state)return mc;let e=A.state.status;if(e!==LP&&e!==YEA&&e!==wP&&e!==bP&&e!==vP&&e!==wm&&e!==S7)return B1(A,mc);return A.state=null,e===wm?B1(A,Bzt):td},Ozt=(A,e)=>{let t=e.length;if(!A||!A.state)return mc;let r=A.state,i=r.wrap;if(i===2||i===1&&r.status!==LP||r.lookahead)return mc;if(i===1)A.adler=H7(A.adler,e,t,0);if(r.wrap=0,t>=r.w_size){if(i===0)c1(r.head),r.strstart=0,r.block_start=0,r.insert=0;let o=new Uint8Array(r.w_size);o.set(e.subarray(t-r.w_size,t),0),e=o,t=r.w_size}let{avail_in:u,next_in:a,input:n}=A;A.avail_in=t,A.next_in=0,A.input=e,km(r);while(r.lookahead>=yi){let o=r.strstart,s=r.lookahead-(yi-1);do r.ins_h=I1(r,r.ins_h,r.window[o+yi-1]),r.prev[o&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=o,o++;while(--s);r.strstart=o,r.lookahead=yi-1,km(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=yi-1,r.match_available=0,A.next_in=a,A.input=n,A.avail_in=u,r.wrap=i,td},Pzt,_zt,Wzt,qzt,zzt,Zzt,Vzt,jzt,Xzt="pako deflate (from Nodeca project)",N7,$zt=(A,e)=>Object.prototype.hasOwnProperty.call(A,e),AZt=function(A){let e=Array.prototype.slice.call(arguments,1);while(e.length){let t=e.shift();if(!t)continue;if(typeof t!=="object")throw TypeError(t+"must be non-object");for(let r in t)if($zt(t,r))A[r]=t[r]}return A},eZt=(A)=>{let e=0;for(let r=0,i=A.length;r<i;r++)e+=A[r].length;let t=new Uint8Array(e);for(let r=0,i=0,u=A.length;r<u;r++){let a=A[r];t.set(a,i),i+=a.length}return t},RP,Jce=!0,K7,tZt=(A)=>{let e,t,r,i,u,a=A.length,n=0;for(i=0;i<a;i++){if(t=A.charCodeAt(i),(t&64512)===55296&&i+1<a){if(r=A.charCodeAt(i+1),(r&64512)===56320)t=65536+(t-55296<<10)+(r-56320),i++}n+=t<128?1:t<2048?2:t<65536?3:4}e=new Uint8Array(n);for(u=0,i=0;u<n;i++){if(t=A.charCodeAt(i),(t&64512)===55296&&i+1<a){if(r=A.charCodeAt(i+1),(r&64512)===56320)t=65536+(t-55296<<10)+(r-56320),i++}if(t<128)e[u++]=t;else if(t<2048)e[u++]=192|t>>>6,e[u++]=128|t&63;else if(t<65536)e[u++]=224|t>>>12,e[u++]=128|t>>>6&63,e[u++]=128|t&63;else e[u++]=240|t>>>18,e[u++]=128|t>>>12&63,e[u++]=128|t>>>6&63,e[u++]=128|t&63}return e},rZt=(A,e)=>{if(e<65534){if(A.subarray&&Jce)return String.fromCharCode.apply(null,A.length===e?A:A.subarray(0,e))}let t="";for(let r=0;r<e;r++)t+=String.fromCharCode(A[r]);return t},iZt=(A,e)=>{let t,r,i=e||A.length,u=Array(i*2);for(r=0,t=0;t<i;){let a=A[t++];if(a<128){u[r++]=a;continue}let n=K7[a];if(n>4){u[r++]=65533,t+=n-1;continue}a&=n===2?31:n===3?15:7;while(n>1&&t<i)a=a<<6|A[t++]&63,n--;if(n>1){u[r++]=65533;continue}if(a<65536)u[r++]=a;else a-=65536,u[r++]=55296|a>>10&1023,u[r++]=56320|a&1023}return rZt(u,r)},uZt=(A,e)=>{if(e=e||A.length,e>A.length)e=A.length;let t=e-1;while(t>=0&&(A[t]&192)===128)t--;if(t<0)return e;if(t===0)return e;return t+K7[A[t]]>e?t:e},J7,Oce,Pce,nZt,oZt,sZt,lZt,FP,gZt,cZt,CZt,BZt,IZt,hZt,QZt,pZt,fZt,mZt,pP=30,DZt=12,yZt=function(e,t){let r,i,u,a,n,o,s,l,g,C,B,E,d,I,h,Q,p,m,f,D,w,b,k,v,S=e.state;r=e.next_in,k=e.input,i=r+(e.avail_in-5),u=e.next_out,v=e.output,a=u-(t-e.avail_out),n=u+(e.avail_out-257),o=S.dmax,s=S.wsize,l=S.whave,g=S.wnext,C=S.window,B=S.hold,E=S.bits,d=S.lencode,I=S.distcode,h=(1<<S.lenbits)-1,Q=(1<<S.distbits)-1;A:do{if(E<15)B+=k[r++]<<E,E+=8,B+=k[r++]<<E,E+=8;p=d[B&h];e:for(;;){if(m=p>>>24,B>>>=m,E-=m,m=p>>>16&255,m===0)v[u++]=p&65535;else if(m&16){if(f=p&65535,m&=15,m){if(E<m)B+=k[r++]<<E,E+=8;f+=B&(1<<m)-1,B>>>=m,E-=m}if(E<15)B+=k[r++]<<E,E+=8,B+=k[r++]<<E,E+=8;p=I[B&Q];t:for(;;){if(m=p>>>24,B>>>=m,E-=m,m=p>>>16&255,m&16){if(D=p&65535,m&=15,E<m){if(B+=k[r++]<<E,E+=8,E<m)B+=k[r++]<<E,E+=8}if(D+=B&(1<<m)-1,D>o){e.msg="invalid distance too far back",S.mode=pP;break A}if(B>>>=m,E-=m,m=u-a,D>m){if(m=D-m,m>l){if(S.sane){e.msg="invalid distance too far back",S.mode=pP;break A}}if(w=0,b=C,g===0){if(w+=s-m,m<f){f-=m;do v[u++]=C[w++];while(--m);w=u-D,b=v}}else if(g<m){if(w+=s+g-m,m-=g,m<f){f-=m;do v[u++]=C[w++];while(--m);if(w=0,g<f){m=g,f-=m;do v[u++]=C[w++];while(--m);w=u-D,b=v}}}else if(w+=g-m,m<f){f-=m;do v[u++]=C[w++];while(--m);w=u-D,b=v}while(f>2)v[u++]=b[w++],v[u++]=b[w++],v[u++]=b[w++],f-=3;if(f){if(v[u++]=b[w++],f>1)v[u++]=b[w++]}}else{w=u-D;do v[u++]=v[w++],v[u++]=v[w++],v[u++]=v[w++],f-=3;while(f>2);if(f){if(v[u++]=v[w++],f>1)v[u++]=v[w++]}}}else if((m&64)===0){p=I[(p&65535)+(B&(1<<m)-1)];continue t}else{e.msg="invalid distance code",S.mode=pP;break A}break}}else if((m&64)===0){p=d[(p&65535)+(B&(1<<m)-1)];continue e}else if(m&32){S.mode=DZt;break A}else{e.msg="invalid literal/length code",S.mode=pP;break A}break}}while(r<i&&u<n);f=E>>3,r-=f,E-=f<<3,B&=(1<<E)-1,e.next_in=r,e.next_out=u,e.avail_in=r<i?5+(i-r):5-(r-i),e.avail_out=u<n?257+(n-u):257-(u-n),S.hold=B,S.bits=E;return},H6=15,qge=852,zge=592,Zge=0,kEA=1,Vge=2,wZt,bZt,vZt,kZt,FZt=(A,e,t,r,i,u,a,n)=>{let o=n.bits,s=0,l=0,g=0,C=0,B=0,E=0,d=0,I=0,h=0,Q=0,p,m,f,D,w,b=null,k=0,v,S=new Uint16Array(H6+1),x=new Uint16Array(H6+1),F=null,T=0,R,L,M;for(s=0;s<=H6;s++)S[s]=0;for(l=0;l<r;l++)S[e[t+l]]++;B=o;for(C=H6;C>=1;C--)if(S[C]!==0)break;if(B>C)B=C;if(C===0)return i[u++]=20971520,i[u++]=20971520,n.bits=1,0;for(g=1;g<C;g++)if(S[g]!==0)break;if(B<g)B=g;I=1;for(s=1;s<=H6;s++)if(I<<=1,I-=S[s],I<0)return-1;if(I>0&&(A===Zge||C!==1))return-1;x[1]=0;for(s=1;s<H6;s++)x[s+1]=x[s]+S[s];for(l=0;l<r;l++)if(e[t+l]!==0)a[x[e[t+l]]++]=l;if(A===Zge)b=F=a,v=19;else if(A===kEA)b=wZt,k-=257,F=bZt,T-=257,v=256;else b=vZt,F=kZt,v=-1;if(Q=0,l=0,s=g,w=u,E=B,d=0,f=-1,h=1<<B,D=h-1,A===kEA&&h>qge||A===Vge&&h>zge)return 1;for(;;){if(R=s-d,a[l]<v)L=0,M=a[l];else if(a[l]>v)L=F[T+a[l]],M=b[k+a[l]];else L=96,M=0;p=1<<s-d,m=1<<E,g=m;do m-=p,i[w+(Q>>d)+m]=R<<24|L<<16|M|0;while(m!==0);p=1<<s-1;while(Q&p)p>>=1;if(p!==0)Q&=p-1,Q+=p;else Q=0;if(l++,--S[s]===0){if(s===C)break;s=e[t+a[l]]}if(s>B&&(Q&D)!==f){if(d===0)d=B;w+=g,E=s-d,I=1<<E;while(E+d<C){if(I-=S[E+d],I<=0)break;E++,I<<=1}if(h+=1<<E,A===kEA&&h>qge||A===Vge&&h>zge)return 1;f=Q&D,i[f]=B<<24|E<<16|w-u|0}}if(Q!==0)i[w+Q]=s-d<<24|4194304|0;return n.bits=B,0},G7,xZt=0,_ce=1,Wce=2,jge,SZt,fP,Fm,LZt,RZt,Dc,qce,zce,NZt,Xge,Zce=1,$ge=2,Ace=3,ece=4,tce=5,rce=6,ice=7,uce=8,ace=9,nce=10,xP=11,hh=12,FEA=13,oce=14,xEA=15,sce=16,lce=17,gce=18,cce=19,mP=20,DP=21,Cce=22,Bce=23,Ece=24,dce=25,Ice=26,SEA=27,hce=28,Qce=29,ma=30,Vce=31,GZt=32,UZt=852,MZt=592,TZt=15,YZt,pce=(A)=>(A>>>24&255)+(A>>>8&65280)+((A&65280)<<8)+((A&255)<<24),jce=(A)=>{if(!A||!A.state)return Dc;let e=A.state;if(A.total_in=A.total_out=e.total=0,A.msg="",e.wrap)A.adler=e.wrap&1;return e.mode=Zce,e.last=0,e.havedict=0,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(UZt),e.distcode=e.distdyn=new Int32Array(MZt),e.sane=1,e.back=-1,Fm},Xce=(A)=>{if(!A||!A.state)return Dc;let e=A.state;return e.wsize=0,e.whave=0,e.wnext=0,jce(A)},$ce=(A,e)=>{let t;if(!A||!A.state)return Dc;let r=A.state;if(e<0)t=0,e=-e;else if(t=(e>>4)+1,e<48)e&=15;if(e&&(e<8||e>15))return Dc;if(r.window!==null&&r.wbits!==e)r.window=null;return r.wrap=t,r.wbits=e,Xce(A)},ACe=(A,e)=>{if(!A)return Dc;let t=new HZt;A.state=t,t.window=null;let r=$ce(A,e);if(r!==Fm)A.state=null;return r},KZt=(A)=>ACe(A,YZt),fce=!0,LEA,REA,JZt=(A)=>{if(fce){LEA=new Int32Array(512),REA=new Int32Array(32);let e=0;while(e<144)A.lens[e++]=8;while(e<256)A.lens[e++]=9;while(e<280)A.lens[e++]=7;while(e<288)A.lens[e++]=8;G7(_ce,A.lens,0,288,LEA,0,A.work,{bits:9}),e=0;while(e<32)A.lens[e++]=5;G7(Wce,A.lens,0,32,REA,0,A.work,{bits:5}),fce=!1}A.lencode=LEA,A.lenbits=9,A.distcode=REA,A.distbits=5},eCe=(A,e,t,r)=>{let i,u=A.state;if(u.window===null)u.wsize=1<<u.wbits,u.wnext=0,u.whave=0,u.window=new Uint8Array(u.wsize);if(r>=u.wsize)u.window.set(e.subarray(t-u.wsize,t),0),u.wnext=0,u.whave=u.wsize;else{if(i=u.wsize-u.wnext,i>r)i=r;if(u.window.set(e.subarray(t-r,t-r+i),u.wnext),r-=i,r)u.window.set(e.subarray(t-r,t),0),u.wnext=r,u.whave=u.wsize;else{if(u.wnext+=i,u.wnext===u.wsize)u.wnext=0;if(u.whave<u.wsize)u.whave+=i}}return 0},OZt=(A,e)=>{let t,r,i,u,a,n,o,s,l,g,C,B,E,d,I=0,h,Q,p,m,f,D,w,b,k=new Uint8Array(4),v,S,x=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(!A||!A.state||!A.output||!A.input&&A.avail_in!==0)return Dc;if(t=A.state,t.mode===hh)t.mode=FEA;a=A.next_out,i=A.output,o=A.avail_out,u=A.next_in,r=A.input,n=A.avail_in,s=t.hold,l=t.bits,g=n,C=o,b=Fm;A:for(;;)switch(t.mode){case Zce:if(t.wrap===0){t.mode=FEA;break}while(l<16){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.wrap&2&&s===35615){t.check=0,k[0]=s&255,k[1]=s>>>8&255,t.check=Wo(t.check,k,2,0),s=0,l=0,t.mode=$ge;break}if(t.flags=0,t.head)t.head.done=!1;if(!(t.wrap&1)||(((s&255)<<8)+(s>>8))%31){A.msg="incorrect header check",t.mode=ma;break}if((s&15)!==Xge){A.msg="unknown compression method",t.mode=ma;break}if(s>>>=4,l-=4,w=(s&15)+8,t.wbits===0)t.wbits=w;else if(w>t.wbits){A.msg="invalid window size",t.mode=ma;break}t.dmax=1<<t.wbits,A.adler=t.check=1,t.mode=s&512?nce:hh,s=0,l=0;break;case $ge:while(l<16){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.flags=s,(t.flags&255)!==Xge){A.msg="unknown compression method",t.mode=ma;break}if(t.flags&57344){A.msg="unknown header flags set",t.mode=ma;break}if(t.head)t.head.text=s>>8&1;if(t.flags&512)k[0]=s&255,k[1]=s>>>8&255,t.check=Wo(t.check,k,2,0);s=0,l=0,t.mode=Ace;case Ace:while(l<32){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.head)t.head.time=s;if(t.flags&512)k[0]=s&255,k[1]=s>>>8&255,k[2]=s>>>16&255,k[3]=s>>>24&255,t.check=Wo(t.check,k,4,0);s=0,l=0,t.mode=ece;case ece:while(l<16){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.head)t.head.xflags=s&255,t.head.os=s>>8;if(t.flags&512)k[0]=s&255,k[1]=s>>>8&255,t.check=Wo(t.check,k,2,0);s=0,l=0,t.mode=tce;case tce:if(t.flags&1024){while(l<16){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.length=s,t.head)t.head.extra_len=s;if(t.flags&512)k[0]=s&255,k[1]=s>>>8&255,t.check=Wo(t.check,k,2,0);s=0,l=0}else if(t.head)t.head.extra=null;t.mode=rce;case rce:if(t.flags&1024){if(B=t.length,B>n)B=n;if(B){if(t.head){if(w=t.head.extra_len-t.length,!t.head.extra)t.head.extra=new Uint8Array(t.head.extra_len);t.head.extra.set(r.subarray(u,u+B),w)}if(t.flags&512)t.check=Wo(t.check,r,B,u);n-=B,u+=B,t.length-=B}if(t.length)break A}t.length=0,t.mode=ice;case ice:if(t.flags&2048){if(n===0)break A;B=0;do if(w=r[u+B++],t.head&&w&&t.length<65536)t.head.name+=String.fromCharCode(w);while(w&&B<n);if(t.flags&512)t.check=Wo(t.check,r,B,u);if(n-=B,u+=B,w)break A}else if(t.head)t.head.name=null;t.length=0,t.mode=uce;case uce:if(t.flags&4096){if(n===0)break A;B=0;do if(w=r[u+B++],t.head&&w&&t.length<65536)t.head.comment+=String.fromCharCode(w);while(w&&B<n);if(t.flags&512)t.check=Wo(t.check,r,B,u);if(n-=B,u+=B,w)break A}else if(t.head)t.head.comment=null;t.mode=ace;case ace:if(t.flags&512){while(l<16){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(s!==(t.check&65535)){A.msg="header crc mismatch",t.mode=ma;break}s=0,l=0}if(t.head)t.head.hcrc=t.flags>>9&1,t.head.done=!0;A.adler=t.check=0,t.mode=hh;break;case nce:while(l<32){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}A.adler=t.check=pce(s),s=0,l=0,t.mode=xP;case xP:if(t.havedict===0)return A.next_out=a,A.avail_out=o,A.next_in=u,A.avail_in=n,t.hold=s,t.bits=l,RZt;A.adler=t.check=1,t.mode=hh;case hh:if(e===SZt||e===fP)break A;case FEA:if(t.last){s>>>=l&7,l-=l&7,t.mode=SEA;break}while(l<3){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}switch(t.last=s&1,s>>>=1,l-=1,s&3){case 0:t.mode=oce;break;case 1:if(JZt(t),t.mode=mP,e===fP){s>>>=2,l-=2;break A}break;case 2:t.mode=lce;break;case 3:A.msg="invalid block type",t.mode=ma}s>>>=2,l-=2;break;case oce:s>>>=l&7,l-=l&7;while(l<32){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if((s&65535)!==(s>>>16^65535)){A.msg="invalid stored block lengths",t.mode=ma;break}if(t.length=s&65535,s=0,l=0,t.mode=xEA,e===fP)break A;case xEA:t.mode=sce;case sce:if(B=t.length,B){if(B>n)B=n;if(B>o)B=o;if(B===0)break A;i.set(r.subarray(u,u+B),a),n-=B,u+=B,o-=B,a+=B,t.length-=B;break}t.mode=hh;break;case lce:while(l<14){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(t.nlen=(s&31)+257,s>>>=5,l-=5,t.ndist=(s&31)+1,s>>>=5,l-=5,t.ncode=(s&15)+4,s>>>=4,l-=4,t.nlen>286||t.ndist>30){A.msg="too many length or distance symbols",t.mode=ma;break}t.have=0,t.mode=gce;case gce:while(t.have<t.ncode){while(l<3){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}t.lens[x[t.have++]]=s&7,s>>>=3,l-=3}while(t.have<19)t.lens[x[t.have++]]=0;if(t.lencode=t.lendyn,t.lenbits=7,v={bits:t.lenbits},b=G7(xZt,t.lens,0,19,t.lencode,0,t.work,v),t.lenbits=v.bits,b){A.msg="invalid code lengths set",t.mode=ma;break}t.have=0,t.mode=cce;case cce:while(t.have<t.nlen+t.ndist){for(;;){if(I=t.lencode[s&(1<<t.lenbits)-1],h=I>>>24,Q=I>>>16&255,p=I&65535,h<=l)break;if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(p<16)s>>>=h,l-=h,t.lens[t.have++]=p;else{if(p===16){S=h+2;while(l<S){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(s>>>=h,l-=h,t.have===0){A.msg="invalid bit length repeat",t.mode=ma;break}w=t.lens[t.have-1],B=3+(s&3),s>>>=2,l-=2}else if(p===17){S=h+3;while(l<S){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}s>>>=h,l-=h,w=0,B=3+(s&7),s>>>=3,l-=3}else{S=h+7;while(l<S){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}s>>>=h,l-=h,w=0,B=11+(s&127),s>>>=7,l-=7}if(t.have+B>t.nlen+t.ndist){A.msg="invalid bit length repeat",t.mode=ma;break}while(B--)t.lens[t.have++]=w}}if(t.mode===ma)break;if(t.lens[256]===0){A.msg="invalid code -- missing end-of-block",t.mode=ma;break}if(t.lenbits=9,v={bits:t.lenbits},b=G7(_ce,t.lens,0,t.nlen,t.lencode,0,t.work,v),t.lenbits=v.bits,b){A.msg="invalid literal/lengths set",t.mode=ma;break}if(t.distbits=6,t.distcode=t.distdyn,v={bits:t.distbits},b=G7(Wce,t.lens,t.nlen,t.ndist,t.distcode,0,t.work,v),t.distbits=v.bits,b){A.msg="invalid distances set",t.mode=ma;break}if(t.mode=mP,e===fP)break A;case mP:t.mode=DP;case DP:if(n>=6&&o>=258){if(A.next_out=a,A.avail_out=o,A.next_in=u,A.avail_in=n,t.hold=s,t.bits=l,yZt(A,C),a=A.next_out,i=A.output,o=A.avail_out,u=A.next_in,r=A.input,n=A.avail_in,s=t.hold,l=t.bits,t.mode===hh)t.back=-1;break}t.back=0;for(;;){if(I=t.lencode[s&(1<<t.lenbits)-1],h=I>>>24,Q=I>>>16&255,p=I&65535,h<=l)break;if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(Q&&(Q&240)===0){m=h,f=Q,D=p;for(;;){if(I=t.lencode[D+((s&(1<<m+f)-1)>>m)],h=I>>>24,Q=I>>>16&255,p=I&65535,m+h<=l)break;if(n===0)break A;n--,s+=r[u++]<<l,l+=8}s>>>=m,l-=m,t.back+=m}if(s>>>=h,l-=h,t.back+=h,t.length=p,Q===0){t.mode=Ice;break}if(Q&32){t.back=-1,t.mode=hh;break}if(Q&64){A.msg="invalid literal/length code",t.mode=ma;break}t.extra=Q&15,t.mode=Cce;case Cce:if(t.extra){S=t.extra;while(l<S){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}t.length+=s&(1<<t.extra)-1,s>>>=t.extra,l-=t.extra,t.back+=t.extra}t.was=t.length,t.mode=Bce;case Bce:for(;;){if(I=t.distcode[s&(1<<t.distbits)-1],h=I>>>24,Q=I>>>16&255,p=I&65535,h<=l)break;if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if((Q&240)===0){m=h,f=Q,D=p;for(;;){if(I=t.distcode[D+((s&(1<<m+f)-1)>>m)],h=I>>>24,Q=I>>>16&255,p=I&65535,m+h<=l)break;if(n===0)break A;n--,s+=r[u++]<<l,l+=8}s>>>=m,l-=m,t.back+=m}if(s>>>=h,l-=h,t.back+=h,Q&64){A.msg="invalid distance code",t.mode=ma;break}t.offset=p,t.extra=Q&15,t.mode=Ece;case Ece:if(t.extra){S=t.extra;while(l<S){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}t.offset+=s&(1<<t.extra)-1,s>>>=t.extra,l-=t.extra,t.back+=t.extra}if(t.offset>t.dmax){A.msg="invalid distance too far back",t.mode=ma;break}t.mode=dce;case dce:if(o===0)break A;if(B=C-o,t.offset>B){if(B=t.offset-B,B>t.whave){if(t.sane){A.msg="invalid distance too far back",t.mode=ma;break}}if(B>t.wnext)B-=t.wnext,E=t.wsize-B;else E=t.wnext-B;if(B>t.length)B=t.length;d=t.window}else d=i,E=a-t.offset,B=t.length;if(B>o)B=o;o-=B,t.length-=B;do i[a++]=d[E++];while(--B);if(t.length===0)t.mode=DP;break;case Ice:if(o===0)break A;i[a++]=t.length,o--,t.mode=DP;break;case SEA:if(t.wrap){while(l<32){if(n===0)break A;n--,s|=r[u++]<<l,l+=8}if(C-=o,A.total_out+=C,t.total+=C,C)A.adler=t.check=t.flags?Wo(t.check,i,C,a-C):H7(t.check,i,C,a-C);if(C=o,(t.flags?s:pce(s))!==t.check){A.msg="incorrect data check",t.mode=ma;break}s=0,l=0}t.mode=hce;case hce:if(t.wrap&&t.flags){while(l<32){if(n===0)break A;n--,s+=r[u++]<<l,l+=8}if(s!==(t.total&4294967295)){A.msg="incorrect length check",t.mode=ma;break}s=0,l=0}t.mode=Qce;case Qce:b=LZt;break A;case ma:b=qce;break A;case Vce:return zce;case GZt:default:return Dc}if(A.next_out=a,A.avail_out=o,A.next_in=u,A.avail_in=n,t.hold=s,t.bits=l,t.wsize||C!==A.avail_out&&t.mode<ma&&(t.mode<SEA||e!==jge)){if(eCe(A,A.output,A.next_out,C-A.avail_out));}if(g-=A.avail_in,C-=A.avail_out,A.total_in+=g,A.total_out+=C,t.total+=C,t.wrap&&C)A.adler=t.check=t.flags?Wo(t.check,i,C,A.next_out-C):H7(t.check,i,C,A.next_out-C);if(A.data_type=t.bits+(t.last?64:0)+(t.mode===hh?128:0)+(t.mode===mP||t.mode===xEA?256:0),(g===0&&C===0||e===jge)&&b===Fm)b=NZt;return b},PZt=(A)=>{if(!A||!A.state)return Dc;let e=A.state;if(e.window)e.window=null;return A.state=null,Fm},_Zt=(A,e)=>{if(!A||!A.state)return Dc;let t=A.state;if((t.wrap&2)===0)return Dc;return t.head=e,e.done=!1,Fm},WZt=(A,e)=>{let t=e.length,r,i,u;if(!A||!A.state)return Dc;if(r=A.state,r.wrap!==0&&r.mode!==xP)return Dc;if(r.mode===xP){if(i=1,i=H7(i,e,t,0),i!==r.check)return qce}if(u=eCe(A,e,t,t),u)return r.mode=Vce,zce;return r.havedict=1,Fm},qZt,zZt,ZZt,VZt,jZt,XZt,$Zt,AVt,eVt,tVt="pako inflate (from Nodeca project)",ph,iVt,tCe,uVt,aVt,O7,NEA,GEA,nVt,mce,oVt,lVt,gVt,cVt,CVt,BVt,EVt,l2i,dVt,g2i,c2i,C2i,IVt,B2i,E2i,rCe,iCe;var uCe=_(()=>{/*! pako 2.0.3 https://github.com/nodeca/pako @license (MIT AND Zlib) */U7=P7+1+HEA,yce=2*U7+1,UEA=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),yP=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),Yqt=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),kce=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Qh=Array((U7+2)*2);J6(Qh);R7=Array(K6*2);J6(R7);M7=Array(Hqt);J6(M7);T7=Array(Mqt-Uqt+1);J6(T7);OEA=Array(HEA);J6(OEA);kP=Array(K6);J6(kP);Xqt=zqt,$qt=Mce,Azt=Vqt,ezt=jqt,tzt=Zqt,rzt={_tr_init:Xqt,_tr_stored_block:$qt,_tr_flush_block:Azt,_tr_tally:ezt,_tr_align:tzt},H7=izt,azt=new Uint32Array(uzt()),Wo=nzt,bm={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},O6={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8},{_tr_init:ozt,_tr_stored_block:szt,_tr_flush_block:lzt,_tr_tally:E1,_tr_align:gzt}=rzt,{Z_NO_FLUSH:xm,Z_PARTIAL_FLUSH:czt,Z_FULL_FLUSH:Czt,Z_FINISH:d1,Z_BLOCK:Pge,Z_OK:td,Z_STREAM_END:_ge,Z_STREAM_ERROR:mc,Z_DATA_ERROR:Bzt,Z_BUF_ERROR:bEA,Z_DEFAULT_COMPRESSION:Ezt,Z_FILTERED:dzt,Z_HUFFMAN_ONLY:QP,Z_RLE:Izt,Z_FIXED:hzt,Z_DEFAULT_STRATEGY:Qzt,Z_UNKNOWN:pzt,Z_DEFLATED:SP}=O6,TEA=wzt+1+yzt,kzt=2*TEA+1,JC=C1+yi+1,I1=Lzt;L7=[new Ad(0,0,0,0,Nzt),new Ad(4,4,8,4,vEA),new Ad(4,5,16,8,vEA),new Ad(4,6,32,32,vEA),new Ad(4,4,16,16,Y6),new Ad(8,16,32,32,Y6),new Ad(8,16,128,128,Y6),new Ad(8,32,128,256,Y6),new Ad(32,128,258,1024,Y6),new Ad(32,258,258,4096,Y6)];Pzt=Hzt,_zt=Kce,Wzt=Hce,qzt=Yce,zzt=Yzt,Zzt=Kzt,Vzt=Jzt,jzt=Ozt,N7={deflateInit:Pzt,deflateInit2:_zt,deflateReset:Wzt,deflateResetKeep:qzt,deflateSetHeader:zzt,deflate:Zzt,deflateEnd:Vzt,deflateSetDictionary:jzt,deflateInfo:Xzt},RP={assign:AZt,flattenChunks:eZt};try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(A){Jce=!1}K7=new Uint8Array(256);for(let A=0;A<256;A++)K7[A]=A>=252?6:A>=248?5:A>=240?4:A>=224?3:A>=192?2:1;K7[254]=K7[254]=1;J7={string2buf:tZt,buf2string:iZt,utf8border:uZt};Oce=aZt,Pce=Object.prototype.toString,{Z_NO_FLUSH:nZt,Z_SYNC_FLUSH:oZt,Z_FULL_FLUSH:sZt,Z_FINISH:lZt,Z_OK:FP,Z_STREAM_END:gZt,Z_DEFAULT_COMPRESSION:cZt,Z_DEFAULT_STRATEGY:CZt,Z_DEFLATED:BZt}=O6;W7.prototype.push=function(A,e){let t=this.strm,r=this.options.chunkSize,i,u;if(this.ended)return!1;if(e===~~e)u=e;else u=e===!0?lZt:nZt;if(typeof A==="string")t.input=J7.string2buf(A);else if(Pce.call(A)==="[object ArrayBuffer]")t.input=new Uint8Array(A);else t.input=A;t.next_in=0,t.avail_in=t.input.length;for(;;){if(t.avail_out===0)t.output=new Uint8Array(r),t.next_out=0,t.avail_out=r;if((u===oZt||u===sZt)&&t.avail_out<=6){this.onData(t.output.subarray(0,t.next_out)),t.avail_out=0;continue}if(i=N7.deflate(t,u),i===gZt){if(t.next_out>0)this.onData(t.output.subarray(0,t.next_out));return i=N7.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===FP}if(t.avail_out===0){this.onData(t.output);continue}if(u>0&&t.next_out>0){this.onData(t.output.subarray(0,t.next_out)),t.avail_out=0;continue}if(t.avail_in===0)break}return!0};W7.prototype.onData=function(A){this.chunks.push(A)};W7.prototype.onEnd=function(A){if(A===FP)this.result=RP.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};IZt=W7,hZt=PEA,QZt=EZt,pZt=dZt,fZt=O6,mZt={Deflate:IZt,deflate:hZt,deflateRaw:QZt,gzip:pZt,constants:fZt},wZt=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),bZt=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),vZt=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),kZt=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]),G7=FZt,{Z_FINISH:jge,Z_BLOCK:SZt,Z_TREES:fP,Z_OK:Fm,Z_STREAM_END:LZt,Z_NEED_DICT:RZt,Z_STREAM_ERROR:Dc,Z_DATA_ERROR:qce,Z_MEM_ERROR:zce,Z_BUF_ERROR:NZt,Z_DEFLATED:Xge}=O6,YZt=TZt;qZt=Xce,zZt=$ce,ZZt=jce,VZt=KZt,jZt=ACe,XZt=OZt,$Zt=PZt,AVt=_Zt,eVt=WZt,ph={inflateReset:qZt,inflateReset2:zZt,inflateResetKeep:ZZt,inflateInit:VZt,inflateInit2:jZt,inflate:XZt,inflateEnd:$Zt,inflateGetHeader:AVt,inflateSetDictionary:eVt,inflateInfo:tVt};iVt=rVt,tCe=Object.prototype.toString,{Z_NO_FLUSH:uVt,Z_FINISH:aVt,Z_OK:O7,Z_STREAM_END:NEA,Z_NEED_DICT:GEA,Z_STREAM_ERROR:nVt,Z_DATA_ERROR:mce,Z_MEM_ERROR:oVt}=O6;q7.prototype.push=function(A,e){let t=this.strm,r=this.options.chunkSize,i=this.options.dictionary,u,a,n;if(this.ended)return!1;if(e===~~e)a=e;else a=e===!0?aVt:uVt;if(tCe.call(A)==="[object ArrayBuffer]")t.input=new Uint8Array(A);else t.input=A;t.next_in=0,t.avail_in=t.input.length;for(;;){if(t.avail_out===0)t.output=new Uint8Array(r),t.next_out=0,t.avail_out=r;if(u=ph.inflate(t,a),u===GEA&&i){if(u=ph.inflateSetDictionary(t,i),u===O7)u=ph.inflate(t,a);else if(u===mce)u=GEA}while(t.avail_in>0&&u===NEA&&t.state.wrap>0&&A[t.next_in]!==0)ph.inflateReset(t),u=ph.inflate(t,a);switch(u){case nVt:case mce:case GEA:case oVt:return this.onEnd(u),this.ended=!0,!1}if(n=t.avail_out,t.next_out){if(t.avail_out===0||u===NEA)if(this.options.to==="string"){let o=J7.utf8border(t.output,t.next_out),s=t.next_out-o,l=J7.buf2string(t.output,o);if(t.next_out=s,t.avail_out=r-s,s)t.output.set(t.output.subarray(o,o+s),0);this.onData(l)}else this.onData(t.output.length===t.next_out?t.output:t.output.subarray(0,t.next_out))}if(u===O7&&n===0)continue;if(u===NEA)return u=ph.inflateEnd(this.strm),this.onEnd(u),this.ended=!0,!0;if(t.avail_in===0)break}return!0};q7.prototype.onData=function(A){this.chunks.push(A)};q7.prototype.onEnd=function(A){if(A===O7)if(this.options.to==="string")this.result=this.chunks.join("");else this.result=RP.flattenChunks(this.chunks);this.chunks=[],this.err=A,this.msg=this.strm.msg};lVt=q7,gVt=_EA,cVt=sVt,CVt=_EA,BVt=O6,EVt={Inflate:lVt,inflate:gVt,inflateRaw:cVt,ungzip:CVt,constants:BVt},{Deflate:l2i,deflate:dVt,deflateRaw:g2i,gzip:c2i}=mZt,{Inflate:C2i,inflate:IVt,inflateRaw:B2i,ungzip:E2i}=EVt,rCe=dVt,iCe=IVt});var ua;var h1=_(()=>{ua={white:"#ffffff",black:"#000000",gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]}});var _6=wu(function(h2i,sCe){var oCe="Expected a function",aCe=NaN,QVt="[object Symbol]",pVt=/^\s+|\s+$/g,fVt=/^[-+]0x[0-9a-f]+$/i,mVt=/^0b[01]+$/i,DVt=/^0o[0-7]+$/i,yVt=parseInt,wVt=typeof global=="object"&&global&&global.Object===Object&&global,bVt=typeof self=="object"&&self&&self.Object===Object&&self,vVt=wVt||bVt||Function("return this")(),kVt=Object.prototype,FVt=kVt.toString,{max:xVt,min:SVt}=Math,WEA=function(){return vVt.Date.now()};function LVt(A,e,t){var r,i,u,a,n,o,s=0,l=!1,g=!1,C=!0;if(typeof A!="function")throw TypeError(oCe);if(e=nCe(e)||0,NP(t))l=!!t.leading,g="maxWait"in t,u=g?xVt(nCe(t.maxWait)||0,e):u,C="trailing"in t?!!t.trailing:C;function B(D){var w=r,b=i;return r=i=void 0,s=D,a=A.apply(b,w),a}function E(D){return s=D,n=setTimeout(h,e),l?B(D):a}function d(D){var w=D-o,b=D-s,k=e-w;return g?SVt(k,u-b):k}function I(D){var w=D-o,b=D-s;return o===void 0||w>=e||w<0||g&&b>=u}function h(){var D=WEA();if(I(D))return Q(D);n=setTimeout(h,d(D))}function Q(D){if(n=void 0,C&&r)return B(D);return r=i=void 0,a}function p(){if(n!==void 0)clearTimeout(n);s=0,r=o=i=n=void 0}function m(){return n===void 0?a:Q(WEA())}function f(){var D=WEA(),w=I(D);if(r=arguments,i=this,o=D,w){if(n===void 0)return E(o);if(g)return n=setTimeout(h,e),B(o)}if(n===void 0)n=setTimeout(h,e);return a}return f.cancel=p,f.flush=m,f}function RVt(A,e,t){var r=!0,i=!0;if(typeof A!="function")throw TypeError(oCe);if(NP(t))r="leading"in t?!!t.leading:r,i="trailing"in t?!!t.trailing:i;return LVt(A,e,{leading:r,maxWait:e,trailing:i})}function NP(A){var e=typeof A;return!!A&&(e=="object"||e=="function")}function NVt(A){return!!A&&typeof A=="object"}function GVt(A){return typeof A=="symbol"||NVt(A)&&FVt.call(A)==QVt}function nCe(A){if(typeof A=="number")return A;if(GVt(A))return aCe;if(NP(A)){var e=typeof A.valueOf=="function"?A.valueOf():A;A=NP(e)?e+"":e}if(typeof A!="string")return A===0?A:+A;A=A.replace(pVt,"");var t=mVt.test(A);return t||DVt.test(A)?yVt(A.slice(2),t?2:8):fVt.test(A)?aCe:+A}sCe.exports=RVt});var gCe=wu(function(qEA,lCe){(function(A,e){if(typeof define==="function"&&define.amd)define([],e);else if(typeof qEA==="object")lCe.exports=e();else A.PromisePool=e(),A.promisePool=A.PromisePool})(qEA,function(){var A=function(){this._listeners={}};A.prototype.addEventListener=function(n,o){if(this._listeners[n]=this._listeners[n]||[],this._listeners[n].indexOf(o)<0)this._listeners[n].push(o)},A.prototype.removeEventListener=function(n,o){if(this._listeners[n]){var s=this._listeners[n].indexOf(o);if(s>=0)this._listeners[n].splice(s,1)}},A.prototype.dispatchEvent=function(n){if(this._listeners[n.type]&&this._listeners[n.type].length){var o=this._listeners[n.type].slice();for(var s=0,l=o.length;s<l;++s)o[s].call(this,n)}};var e=function(n){return typeof n.constructor==="function"&&n.constructor.name==="GeneratorFunction"},t=function(n){return{next:function(){var o=n();return o?{value:o}:{done:!0}}}},r=function(n){var o=!1;return{next:function(){if(o)return{done:!0};return o=!0,{value:n}}}},i=function(n,o){var s=typeof n;if(s==="object"){if(typeof n.next==="function")return n;if(typeof n.then==="function")return r(n)}if(s==="function")return e(n)?n():t(n);return r(o.resolve(n))},u=function(n,o,s){this.target=n,this.type=o,this.data=s},a=function(n,o,s){if(A.call(this),typeof o!=="number"||Math.floor(o)!==o||o<1)throw Error("Invalid concurrency");this._concurrency=o,this._options=s||{},this._options.promise=this._options.promise||Promise,this._iterator=i(n,this._options.promise),this._done=!1,this._size=0,this._promise=null,this._callbacks=null};return a.prototype=new A,a.prototype.constructor=a,a.prototype.concurrency=function(n){if(typeof n<"u"){if(this._concurrency=n,this.active())this._proceed()}return this._concurrency},a.prototype.size=function(){return this._size},a.prototype.active=function(){return!!this._promise},a.prototype.promise=function(){return this._promise},a.prototype.start=function(){var n=this,o=this._options.promise;return this._promise=new o(function(s,l){n._callbacks={reject:l,resolve:s},n._proceed()}),this._promise},a.prototype._fireEvent=function(n,o){this.dispatchEvent(new u(this,n,o))},a.prototype._settle=function(n){if(n)this._callbacks.reject(n);else this._callbacks.resolve();this._promise=null,this._callbacks=null},a.prototype._onPooledPromiseFulfilled=function(n,o){if(this._size--,this.active())this._fireEvent("fulfilled",{promise:n,result:o}),this._proceed()},a.prototype._onPooledPromiseRejected=function(n,o){if(this._size--,this.active())this._fireEvent("rejected",{promise:n,error:o}),this._settle(o||Error("Unknown error"))},a.prototype._trackPromise=function(n){var o=this;n.then(function(s){o._onPooledPromiseFulfilled(n,s)},function(s){o._onPooledPromiseRejected(n,s)}).catch(function(s){o._settle(Error("Promise processing failed: "+s))})},a.prototype._proceed=function(){if(!this._done){var n={done:!1};while(this._size<this._concurrency&&!(n=this._iterator.next()).done)this._size++,this._trackPromise(n.value);this._done=n===null||!!n.done}if(this._done&&this._size===0)this._settle()},a.PromisePoolEvent=u,a.PromisePool=a,a})});function zEA(A,e,t){if(A&&A.length){let[r,i]=e,u=Math.PI/180*t,a=Math.cos(u),n=Math.sin(u);for(let o of A){let[s,l]=o;o[0]=(s-r)*a-(l-i)*n+r,o[1]=(s-r)*n+(l-i)*a+i}}}function UVt(A,e,t){let r=[];A.forEach((i)=>r.push(...i)),zEA(r,e,t)}function MVt(A,e){return A[0]===e[0]&&A[1]===e[1]}function cCe(A,e,t,r=1){let i=t,u=Math.max(e,0.1),a=A[0]&&A[0][0]&&typeof A[0][0]==="number"?[A]:A,n=[0,0];if(i)for(let s of a)zEA(s,n,i);let o=TVt(a,u,r);if(i){for(let s of a)zEA(s,n,-i);UVt(o,n,-i)}return o}function TVt(A,e,t){let r=[];for(let s of A){let l=[...s];if(!MVt(l[0],l[l.length-1]))l.push([l[0][0],l[0][1]]);if(l.length>2)r.push(l)}let i=[];e=Math.max(e,0.1);let u=[];for(let s of r)for(let l=0;l<s.length-1;l++){let g=s[l],C=s[l+1];if(g[1]!==C[1]){let B=Math.min(g[1],C[1]);u.push({ymin:B,ymax:Math.max(g[1],C[1]),x:B===g[1]?g[0]:C[0],islope:(C[0]-g[0])/(C[1]-g[1])})}}if(u.sort((s,l)=>{if(s.ymin<l.ymin)return-1;if(s.ymin>l.ymin)return 1;if(s.x<l.x)return-1;if(s.x>l.x)return 1;if(s.ymax===l.ymax)return 0;return(s.ymax-l.ymax)/Math.abs(s.ymax-l.ymax)}),!u.length)return i;let a=[],n=u[0].ymin,o=0;while(a.length||u.length){if(u.length){let s=-1;for(let g=0;g<u.length;g++){if(u[g].ymin>n)break;s=g}u.splice(0,s+1).forEach((g)=>{a.push({s:n,edge:g})})}if(a=a.filter((s)=>{if(s.edge.ymax<=n)return!1;return!0}),a.sort((s,l)=>{if(s.edge.x===l.edge.x)return 0;return(s.edge.x-l.edge.x)/Math.abs(s.edge.x-l.edge.x)}),t!==1||o%e===0){if(a.length>1)for(let s=0;s<a.length;s=s+2){let l=s+1;if(l>=a.length)break;let g=a[s].edge,C=a[l].edge;i.push([[Math.round(g.x),n],[Math.round(C.x),n]])}}n+=t,a.forEach((s)=>{s.edge.x=s.edge.x+t*s.edge.islope}),o++}return i}function rd(A,e){var t;let r=e.hachureAngle+90,i=e.hachureGap;if(i<0)i=e.strokeWidth*4;i=Math.max(i,0.1);let u=1;if(e.roughness>=1){if((((t=e.randomizer)===null||t===void 0?void 0:t.next())||Math.random())>0.7)u=i}return cCe(A,i,r,u||1)}var W6=()=>{};class Sm{constructor(A){this.helper=A}fillPolygons(A,e){return this._fillPolygons(A,e)}_fillPolygons(A,e){let t=rd(A,e);return{type:"fillSketch",ops:this.renderLines(t,e)}}renderLines(A,e){let t=[];for(let r of A)t.push(...this.helper.doubleLineOps(r[0][0],r[0][1],r[1][0],r[1][1],e));return t}}var GP=_(()=>{W6()});function Q1(A){let e=A[0],t=A[1];return Math.sqrt(Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2))}var ZEA;var CCe=_(()=>{GP();W6();ZEA=class ZEA extends Sm{fillPolygons(A,e){let t=e.hachureGap;if(t<0)t=e.strokeWidth*4;t=Math.max(t,0.1);let r=Object.assign({},e,{hachureGap:t}),i=rd(A,r),u=Math.PI/180*e.hachureAngle,a=[],n=t*0.5*Math.cos(u),o=t*0.5*Math.sin(u);for(let[l,g]of i)if(Q1([l,g]))a.push([[l[0]-n,l[1]+o],[...g]],[[l[0]+n,l[1]-o],[...g]]);return{type:"fillSketch",ops:this.renderLines(a,e)}}}});var VEA;var BCe=_(()=>{GP();VEA=class VEA extends Sm{fillPolygons(A,e){let t=this._fillPolygons(A,e),r=Object.assign({},e,{hachureAngle:e.hachureAngle+90}),i=this._fillPolygons(A,r);return t.ops=t.ops.concat(i.ops),t}}});class jEA{constructor(A){this.helper=A}fillPolygons(A,e){e=Object.assign({},e,{hachureAngle:0});let t=rd(A,e);return this.dotsOnLines(t,e)}dotsOnLines(A,e){let t=[],r=e.hachureGap;if(r<0)r=e.strokeWidth*4;r=Math.max(r,0.1);let i=e.fillWeight;if(i<0)i=e.strokeWidth/2;let u=r/4;for(let a of A){let n=Q1(a),o=n/r,s=Math.ceil(o)-1,l=n-s*r,g=(a[0][0]+a[1][0])/2-r/4,C=Math.min(a[0][1],a[1][1]);for(let B=0;B<s;B++){let E=C+l+B*r,d=g-u+Math.random()*2*u,I=E-u+Math.random()*2*u,h=this.helper.ellipse(d,I,i,i,e);t.push(...h.ops)}}return{type:"fillSketch",ops:t}}}var ECe=_(()=>{W6()});class XEA{constructor(A){this.helper=A}fillPolygons(A,e){let t=rd(A,e);return{type:"fillSketch",ops:this.dashedLine(t,e)}}dashedLine(A,e){let t=e.dashOffset<0?e.hachureGap<0?e.strokeWidth*4:e.hachureGap:e.dashOffset,r=e.dashGap<0?e.hachureGap<0?e.strokeWidth*4:e.hachureGap:e.dashGap,i=[];return A.forEach((u)=>{let a=Q1(u),n=Math.floor(a/(t+r)),o=(a+r-n*(t+r))/2,s=u[0],l=u[1];if(s[0]>l[0])s=u[1],l=u[0];let g=Math.atan((l[1]-s[1])/(l[0]-s[0]));for(let C=0;C<n;C++){let B=C*(t+r),E=B+t,d=[s[0]+B*Math.cos(g)+o*Math.cos(g),s[1]+B*Math.sin(g)+o*Math.sin(g)],I=[s[0]+E*Math.cos(g)+o*Math.cos(g),s[1]+E*Math.sin(g)+o*Math.sin(g)];i.push(...this.helper.doubleLineOps(d[0],d[1],I[0],I[1],e))}}),i}}var dCe=_(()=>{W6()});class $EA{constructor(A){this.helper=A}fillPolygons(A,e){let t=e.hachureGap<0?e.strokeWidth*4:e.hachureGap,r=e.zigzagOffset<0?t:e.zigzagOffset;e=Object.assign({},e,{hachureGap:t+r});let i=rd(A,e);return{type:"fillSketch",ops:this.zigzagLines(i,r,e)}}zigzagLines(A,e,t){let r=[];return A.forEach((i)=>{let u=Q1(i),a=Math.round(u/(2*e)),n=i[0],o=i[1];if(n[0]>o[0])n=i[1],o=i[0];let s=Math.atan((o[1]-n[1])/(o[0]-n[0]));for(let l=0;l<a;l++){let g=l*2*e,C=(l+1)*2*e,B=Math.sqrt(2*Math.pow(e,2)),E=[n[0]+g*Math.cos(s),n[1]+g*Math.sin(s)],d=[n[0]+C*Math.cos(s),n[1]+C*Math.sin(s)],I=[E[0]+B*Math.cos(s+Math.PI/4),E[1]+B*Math.sin(s+Math.PI/4)];r.push(...this.helper.doubleLineOps(E[0],E[1],I[0],I[1],t),...this.helper.doubleLineOps(I[0],I[1],d[0],d[1],t))}}),r}}var ICe=_(()=>{W6()});function hCe(A,e){let t=A.fillStyle||"hachure";if(!Sl[t])switch(t){case"zigzag":if(!Sl[t])Sl[t]=new ZEA(e);break;case"cross-hatch":if(!Sl[t])Sl[t]=new VEA(e);break;case"dots":if(!Sl[t])Sl[t]=new jEA(e);break;case"dashed":if(!Sl[t])Sl[t]=new XEA(e);break;case"zigzag-line":if(!Sl[t])Sl[t]=new $EA(e);break;case"hachure":default:if(t="hachure",!Sl[t])Sl[t]=new Sm(e);break}return Sl[t]}var Sl;var QCe=_(()=>{GP();CCe();BCe();ECe();dCe();ICe();Sl={}});function pCe(){return Math.floor(Math.random()*2147483648)}class z7{constructor(A){this.seed=A}next(){if(this.seed)return(2147483647&(this.seed=Math.imul(48271,this.seed)))/2147483648;else return Math.random()}}function YVt(A){let e=[];while(A!=="")if(A.match(/^([ \t\r\n,]+)/))A=A.substr(RegExp.$1.length);else if(A.match(/^([aAcChHlLmMqQsStTvVzZ])/))e[e.length]={type:0,text:RegExp.$1},A=A.substr(RegExp.$1.length);else if(A.match(/^(([-+]?[0-9]+(\.[0-9]*)?|[-+]?\.[0-9]+)([eE][-+]?[0-9]+)?)/))e[e.length]={type:1,text:`${parseFloat(RegExp.$1)}`},A=A.substr(RegExp.$1.length);else return[];return e[e.length]={type:2,text:""},e}function AdA(A,e){return A.type===e}function q6(A){let e=[],t=YVt(A),r="BOD",i=0,u=t[i];while(!AdA(u,2)){let a=0,n=[];if(r==="BOD")if(u.text==="M"||u.text==="m")i++,a=UP[u.text],r=u.text;else return q6("M0,0"+A);else if(AdA(u,1))a=UP[r];else i++,a=UP[u.text],r=u.text;if(i+a<t.length){for(let o=i;o<i+a;o++){let s=t[o];if(AdA(s,1))n[n.length]=+s.text;else throw Error("Param not a number: "+r+","+s.text)}if(typeof UP[r]==="number"){let o={key:r,data:n};if(e.push(o),i+=a,u=t[i],r==="M")r="L";if(r==="m")r="l"}else throw Error("Bad segment: "+r)}else throw Error("Path data ended short")}return e}var UP;var fCe=_(()=>{UP={A:7,a:7,C:6,c:6,H:1,h:1,L:2,l:2,M:2,m:2,Q:4,q:4,S:4,s:4,T:2,t:2,V:1,v:1,Z:0,z:0}});function Z7(A){let e=0,t=0,r=0,i=0,u=[];for(let{key:a,data:n}of A)switch(a){case"M":u.push({key:"M",data:[...n]}),[e,t]=n,[r,i]=n;break;case"m":e+=n[0],t+=n[1],u.push({key:"M",data:[e,t]}),r=e,i=t;break;case"L":u.push({key:"L",data:[...n]}),[e,t]=n;break;case"l":e+=n[0],t+=n[1],u.push({key:"L",data:[e,t]});break;case"C":u.push({key:"C",data:[...n]}),e=n[4],t=n[5];break;case"c":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"C",data:o}),e=o[4],t=o[5];break}case"Q":u.push({key:"Q",data:[...n]}),e=n[2],t=n[3];break;case"q":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"Q",data:o}),e=o[2],t=o[3];break}case"A":u.push({key:"A",data:[...n]}),e=n[5],t=n[6];break;case"a":e+=n[5],t+=n[6],u.push({key:"A",data:[n[0],n[1],n[2],n[3],n[4],e,t]});break;case"H":u.push({key:"H",data:[...n]}),e=n[0];break;case"h":e+=n[0],u.push({key:"H",data:[e]});break;case"V":u.push({key:"V",data:[...n]}),t=n[0];break;case"v":t+=n[0],u.push({key:"V",data:[t]});break;case"S":u.push({key:"S",data:[...n]}),e=n[2],t=n[3];break;case"s":{let o=n.map((s,l)=>l%2?s+t:s+e);u.push({key:"S",data:o}),e=o[2],t=o[3];break}case"T":u.push({key:"T",data:[...n]}),e=n[0],t=n[1];break;case"t":e+=n[0],t+=n[1],u.push({key:"T",data:[e,t]});break;case"Z":case"z":u.push({key:"Z",data:[]}),e=r,t=i;break}return u}function j7(A){let e=[],t="",r=0,i=0,u=0,a=0,n=0,o=0;for(let{key:s,data:l}of A){switch(s){case"M":e.push({key:"M",data:[...l]}),[r,i]=l,[u,a]=l;break;case"C":e.push({key:"C",data:[...l]}),r=l[4],i=l[5],n=l[2],o=l[3];break;case"L":e.push({key:"L",data:[...l]}),[r,i]=l;break;case"H":r=l[0],e.push({key:"L",data:[r,i]});break;case"V":i=l[0],e.push({key:"L",data:[r,i]});break;case"S":{let g=0,C=0;if(t==="C"||t==="S")g=r+(r-n),C=i+(i-o);else g=r,C=i;e.push({key:"C",data:[g,C,...l]}),n=l[0],o=l[1],r=l[2],i=l[3];break}case"T":{let[g,C]=l,B=0,E=0;if(t==="Q"||t==="T")B=r+(r-n),E=i+(i-o);else B=r,E=i;let d=r+2*(B-r)/3,I=i+2*(E-i)/3,h=g+2*(B-g)/3,Q=C+2*(E-C)/3;e.push({key:"C",data:[d,I,h,Q,g,C]}),n=B,o=E,r=g,i=C;break}case"Q":{let[g,C,B,E]=l,d=r+2*(g-r)/3,I=i+2*(C-i)/3,h=B+2*(g-B)/3,Q=E+2*(C-E)/3;e.push({key:"C",data:[d,I,h,Q,B,E]}),n=g,o=C,r=B,i=E;break}case"A":{let g=Math.abs(l[0]),C=Math.abs(l[1]),B=l[2],E=l[3],d=l[4],I=l[5],h=l[6];if(g===0||C===0)e.push({key:"C",data:[r,i,I,h,I,h]}),r=I,i=h;else if(r!==I||i!==h)mCe(r,i,I,h,g,C,B,E,d).forEach(function(p){e.push({key:"C",data:p})}),r=I,i=h;break}case"Z":e.push({key:"Z",data:[]}),r=u,i=a;break}t=s}return e}function HVt(A){return Math.PI*A/180}function V7(A,e,t){let r=A*Math.cos(t)-e*Math.sin(t),i=A*Math.sin(t)+e*Math.cos(t);return[r,i]}function mCe(A,e,t,r,i,u,a,n,o,s){let l=HVt(a),g=[],C=0,B=0,E=0,d=0;if(s)[C,B,E,d]=s;else{[A,e]=V7(A,e,-l),[t,r]=V7(t,r,-l);let x=(A-t)/2,F=(e-r)/2,T=x*x/(i*i)+F*F/(u*u);if(T>1)T=Math.sqrt(T),i=T*i,u=T*u;let R=n===o?-1:1,L=i*i,M=u*u,U=L*M-L*F*F-M*x*x,Y=L*F*F+M*x*x,H=R*Math.sqrt(Math.abs(U/Y));if(E=H*i*F/u+(A+t)/2,d=H*-u*x/i+(e+r)/2,C=Math.asin(parseFloat(((e-d)/u).toFixed(9))),B=Math.asin(parseFloat(((r-d)/u).toFixed(9))),A<E)C=Math.PI-C;if(t<E)B=Math.PI-B;if(C<0)C=Math.PI*2+C;if(B<0)B=Math.PI*2+B;if(o&&C>B)C=C-Math.PI*2;if(!o&&B>C)B=B-Math.PI*2}let I=B-C;if(Math.abs(I)>Math.PI*120/180){let x=B,F=t,T=r;if(o&&B>C)B=C+Math.PI*120/180*1;else B=C+Math.PI*120/180*-1;t=E+i*Math.cos(B),r=d+u*Math.sin(B),g=mCe(t,r,F,T,i,u,a,0,o,[B,x,E,d])}I=B-C;let h=Math.cos(C),Q=Math.sin(C),p=Math.cos(B),m=Math.sin(B),f=Math.tan(I/4),D=1.3333333333333333*i*f,w=1.3333333333333333*u*f,b=[A,e],k=[A+D*Q,e-w*h],v=[t+D*m,r-w*p],S=[t,r];if(k[0]=2*b[0]-k[0],k[1]=2*b[1]-k[1],s)return[k,v,S].concat(g);else{g=[k,v,S].concat(g);let x=[];for(let F=0;F<g.length;F+=3){let T=V7(g[F][0],g[F][1],l),R=V7(g[F+1][0],g[F+1][1],l),L=V7(g[F+2][0],g[F+2][1],l);x.push([T[0],T[1],R[0],R[1],L[0],L[1]])}return x}}var edA=_(()=>{fCe()});function tdA(A,e,t,r,i){return{type:"path",ops:fh(A,e,t,r,i)}}function X7(A,e,t){let r=(A||[]).length;if(r>2){let i=[];for(let u=0;u<r-1;u++)i.push(...fh(A[u][0],A[u][1],A[u+1][0],A[u+1][1],t));if(e)i.push(...fh(A[r-1][0],A[r-1][1],A[0][0],A[0][1],t));return{type:"path",ops:i}}else if(r===2)return tdA(A[0][0],A[0][1],A[1][0],A[1][1],t);return{type:"path",ops:[]}}function JVt(A,e){return X7(A,!0,e)}function vCe(A,e,t,r,i){let u=[[A,e],[A+t,e],[A+t,e+r],[A,e+r]];return JVt(u,i)}function rdA(A,e){let t=yCe(A,1*(1+e.roughness*0.2),e);if(!e.disableMultiStroke){let r=yCe(A,1.5*(1+e.roughness*0.22),qVt(e));t=t.concat(r)}return{type:"path",ops:t}}function OVt(A,e,t,r,i){let u=idA(t,r,i);return YP(A,e,i,u).opset}function idA(A,e,t){let r=Math.sqrt(Math.PI*2*Math.sqrt((Math.pow(A/2,2)+Math.pow(e/2,2))/2)),i=Math.ceil(Math.max(t.curveStepCount,t.curveStepCount/Math.sqrt(200)*r)),u=Math.PI*2/i,a=Math.abs(A/2),n=Math.abs(e/2),o=1-t.curveFitting;return a+=mr(a*o,t),n+=mr(n*o,t),{increment:u,rx:a,ry:n}}function YP(A,e,t,r){let[i,u]=wCe(r.increment,A,e,r.rx,r.ry,1,r.increment*MP(0.1,MP(0.4,1,t),t),t),a=TP(i,null,t);if(!t.disableMultiStroke&&t.roughness!==0){let[n]=wCe(r.increment,A,e,r.rx,r.ry,1.5,0,t),o=TP(n,null,t);a=a.concat(o)}return{estimatedPoints:u,opset:{type:"path",ops:a}}}function udA(A,e,t,r,i,u,a,n,o){let s=A,l=e,g=Math.abs(t/2),C=Math.abs(r/2);g+=mr(g*0.01,o),C+=mr(C*0.01,o);let B=i,E=u;while(B<0)B+=Math.PI*2,E+=Math.PI*2;if(E-B>Math.PI*2)B=0,E=Math.PI*2;let d=Math.PI*2/o.curveStepCount,I=Math.min(d/2,(E-B)/2),h=bCe(I,s,l,g,C,B,E,1,o);if(!o.disableMultiStroke){let Q=bCe(I,s,l,g,C,B,E,1.5,o);h.push(...Q)}if(a)if(n)h.push(...fh(s,l,s+g*Math.cos(B),l+C*Math.sin(B),o),...fh(s,l,s+g*Math.cos(E),l+C*Math.sin(E),o));else h.push({op:"lineTo",data:[s,l]},{op:"lineTo",data:[s+g*Math.cos(B),l+C*Math.sin(B)]});return{type:"path",ops:h}}function adA(A,e){let t=j7(Z7(q6(A))),r=[],i=[0,0],u=[0,0];for(let{key:a,data:n}of t)switch(a){case"M":{u=[n[0],n[1]],i=[n[0],n[1]];break}case"L":r.push(...fh(u[0],u[1],n[0],n[1],e)),u=[n[0],n[1]];break;case"C":{let[o,s,l,g,C,B]=n;r.push(...zVt(o,s,l,g,C,B,u,e)),u=[C,B];break}case"Z":r.push(...fh(u[0],u[1],i[0],i[1],e)),u=[i[0],i[1]];break}return{type:"path",ops:r}}function HP(A,e){let t=[];for(let r of A)if(r.length){let i=e.maxRandomnessOffset||0,u=r.length;if(u>2){t.push({op:"move",data:[r[0][0]+mr(i,e),r[0][1]+mr(i,e)]});for(let a=1;a<u;a++)t.push({op:"lineTo",data:[r[a][0]+mr(i,e),r[a][1]+mr(i,e)]})}}return{type:"fillPath",ops:t}}function Lm(A,e){return hCe(e,KVt).fillPolygons(A,e)}function kCe(A,e,t,r,i,u,a){let n=A,o=e,s=Math.abs(t/2),l=Math.abs(r/2);s+=mr(s*0.01,a),l+=mr(l*0.01,a);let g=i,C=u;while(g<0)g+=Math.PI*2,C+=Math.PI*2;if(C-g>Math.PI*2)g=0,C=Math.PI*2;let B=(C-g)/a.curveStepCount,E=[];for(let d=g;d<=C;d=d+B)E.push([n+s*Math.cos(d),o+l*Math.sin(d)]);return E.push([n+s*Math.cos(C),o+l*Math.sin(C)]),E.push([n,o]),Lm([E],a)}function PVt(A,e){return mr(A,e)}function _Vt(A,e,t){return MP(A,e,t)}function WVt(A,e,t,r,i){return fh(A,e,t,r,i,!0)}function qVt(A){let e=Object.assign({},A);if(e.randomizer=void 0,A.seed)e.seed=A.seed+1;return e}function FCe(A){if(!A.randomizer)A.randomizer=new z7(A.seed||0);return A.randomizer.next()}function MP(A,e,t,r=1){return t.roughness*r*(FCe(t)*(e-A)+A)}function mr(A,e,t=1){return MP(-A,A,e,t)}function fh(A,e,t,r,i,u=!1){let a=u?i.disableMultiStrokeFill:i.disableMultiStroke,n=DCe(A,e,t,r,i,!0,!1);if(a)return n;let o=DCe(A,e,t,r,i,!0,!0);return n.concat(o)}function DCe(A,e,t,r,i,u,a){let n=Math.pow(A-t,2)+Math.pow(e-r,2),o=Math.sqrt(n),s=1;if(o<200)s=1;else if(o>500)s=0.4;else s=-0.0016668*o+1.233334;let l=i.maxRandomnessOffset||0;if(l*l*100>n)l=o/10;let g=l/2,C=0.2+FCe(i)*0.2,B=i.bowing*i.maxRandomnessOffset*(r-e)/200,E=i.bowing*i.maxRandomnessOffset*(A-t)/200;B=mr(B,i,s),E=mr(E,i,s);let d=[],I=()=>mr(g,i,s),h=()=>mr(l,i,s),Q=i.preserveVertices;if(u)if(a)d.push({op:"move",data:[A+(Q?0:I()),e+(Q?0:I())]});else d.push({op:"move",data:[A+(Q?0:mr(l,i,s)),e+(Q?0:mr(l,i,s))]});if(a)d.push({op:"bcurveTo",data:[B+A+(t-A)*C+I(),E+e+(r-e)*C+I(),B+A+2*(t-A)*C+I(),E+e+2*(r-e)*C+I(),t+(Q?0:I()),r+(Q?0:I())]});else d.push({op:"bcurveTo",data:[B+A+(t-A)*C+h(),E+e+(r-e)*C+h(),B+A+2*(t-A)*C+h(),E+e+2*(r-e)*C+h(),t+(Q?0:h()),r+(Q?0:h())]});return d}function yCe(A,e,t){let r=[];r.push([A[0][0]+mr(e,t),A[0][1]+mr(e,t)]),r.push([A[0][0]+mr(e,t),A[0][1]+mr(e,t)]);for(let i=1;i<A.length;i++)if(r.push([A[i][0]+mr(e,t),A[i][1]+mr(e,t)]),i===A.length-1)r.push([A[i][0]+mr(e,t),A[i][1]+mr(e,t)]);return TP(r,null,t)}function TP(A,e,t){let r=A.length,i=[];if(r>3){let u=[],a=1-t.curveTightness;i.push({op:"move",data:[A[1][0],A[1][1]]});for(let n=1;n+2<r;n++){let o=A[n];u[0]=[o[0],o[1]],u[1]=[o[0]+(a*A[n+1][0]-a*A[n-1][0])/6,o[1]+(a*A[n+1][1]-a*A[n-1][1])/6],u[2]=[A[n+1][0]+(a*A[n][0]-a*A[n+2][0])/6,A[n+1][1]+(a*A[n][1]-a*A[n+2][1])/6],u[3]=[A[n+1][0],A[n+1][1]],i.push({op:"bcurveTo",data:[u[1][0],u[1][1],u[2][0],u[2][1],u[3][0],u[3][1]]})}if(e&&e.length===2){let n=t.maxRandomnessOffset;i.push({op:"lineTo",data:[e[0]+mr(n,t),e[1]+mr(n,t)]})}}else if(r===3)i.push({op:"move",data:[A[1][0],A[1][1]]}),i.push({op:"bcurveTo",data:[A[1][0],A[1][1],A[2][0],A[2][1],A[2][0],A[2][1]]});else if(r===2)i.push(...fh(A[0][0],A[0][1],A[1][0],A[1][1],t));return i}function wCe(A,e,t,r,i,u,a,n){let o=n.roughness===0,s=[],l=[];if(o){A=A/4,l.push([e+r*Math.cos(-A),t+i*Math.sin(-A)]);for(let g=0;g<=Math.PI*2;g=g+A){let C=[e+r*Math.cos(g),t+i*Math.sin(g)];s.push(C),l.push(C)}l.push([e+r*Math.cos(0),t+i*Math.sin(0)]),l.push([e+r*Math.cos(A),t+i*Math.sin(A)])}else{let g=mr(0.5,n)-Math.PI/2;l.push([mr(u,n)+e+0.9*r*Math.cos(g-A),mr(u,n)+t+0.9*i*Math.sin(g-A)]);let C=Math.PI*2+g-0.01;for(let B=g;B<C;B=B+A){let E=[mr(u,n)+e+r*Math.cos(B),mr(u,n)+t+i*Math.sin(B)];s.push(E),l.push(E)}l.push([mr(u,n)+e+r*Math.cos(g+Math.PI*2+a*0.5),mr(u,n)+t+i*Math.sin(g+Math.PI*2+a*0.5)]),l.push([mr(u,n)+e+0.98*r*Math.cos(g+a),mr(u,n)+t+0.98*i*Math.sin(g+a)]),l.push([mr(u,n)+e+0.9*r*Math.cos(g+a*0.5),mr(u,n)+t+0.9*i*Math.sin(g+a*0.5)])}return[l,s]}function bCe(A,e,t,r,i,u,a,n,o){let s=u+mr(0.1,o),l=[];l.push([mr(n,o)+e+0.9*r*Math.cos(s-A),mr(n,o)+t+0.9*i*Math.sin(s-A)]);for(let g=s;g<=a;g=g+A)l.push([mr(n,o)+e+r*Math.cos(g),mr(n,o)+t+i*Math.sin(g)]);return l.push([e+r*Math.cos(a),t+i*Math.sin(a)]),l.push([e+r*Math.cos(a),t+i*Math.sin(a)]),TP(l,null,o)}function zVt(A,e,t,r,i,u,a,n){let o=[],s=[n.maxRandomnessOffset||1,(n.maxRandomnessOffset||1)+0.3],l=[0,0],g=n.disableMultiStroke?1:2,C=n.preserveVertices;for(let B=0;B<g;B++){if(B===0)o.push({op:"move",data:[a[0],a[1]]});else o.push({op:"move",data:[a[0]+(C?0:mr(s[0],n)),a[1]+(C?0:mr(s[0],n))]});l=C?[i,u]:[i+mr(s[B],n),u+mr(s[B],n)],o.push({op:"bcurveTo",data:[A+mr(s[B],n),e+mr(s[B],n),t+mr(s[B],n),r+mr(s[B],n),l[0],l[1]]})}return o}var KVt;var xCe=_(()=>{QCe();edA();KVt={randOffset:PVt,randOffsetWithRange:_Vt,ellipse:OVt,doubleLineOps:WVt}});function $7(A){return[...A]}function SCe(A,e=0){let t=A.length;if(t<3)throw Error("A curve must have at least three points.");let r=[];if(t===3)r.push($7(A[0]),$7(A[1]),$7(A[2]),$7(A[2]));else{let i=[];i.push(A[0],A[0]);for(let n=1;n<A.length;n++)if(i.push(A[n]),n===A.length-1)i.push(A[n]);let u=[],a=1-e;r.push($7(i[0]));for(let n=1;n+2<i.length;n++){let o=i[n];u[0]=[o[0],o[1]],u[1]=[o[0]+(a*i[n+1][0]-a*i[n-1][0])/6,o[1]+(a*i[n+1][1]-a*i[n-1][1])/6],u[2]=[i[n+1][0]+(a*i[n][0]-a*i[n+2][0])/6,i[n+1][1]+(a*i[n][1]-a*i[n+2][1])/6],u[3]=[i[n+1][0],i[n+1][1]],r.push(u[1],u[2],u[3])}}return r}function ZVt(A,e){return Math.sqrt(KP(A,e))}function KP(A,e){return Math.pow(A[0]-e[0],2)+Math.pow(A[1]-e[1],2)}function VVt(A,e,t){let r=KP(e,t);if(r===0)return KP(A,e);let i=((A[0]-e[0])*(t[0]-e[0])+(A[1]-e[1])*(t[1]-e[1]))/r;return i=Math.max(0,Math.min(1,i)),KP(A,Rm(e,t,i))}function Rm(A,e,t){return[A[0]+(e[0]-A[0])*t,A[1]+(e[1]-A[1])*t]}function jVt(A,e){let t=A[e+0],r=A[e+1],i=A[e+2],u=A[e+3],a=3*r[0]-2*t[0]-u[0];a*=a;let n=3*r[1]-2*t[1]-u[1];n*=n;let o=3*i[0]-2*u[0]-t[0];o*=o;let s=3*i[1]-2*u[1]-t[1];if(s*=s,a<o)a=o;if(n<s)n=s;return a+n}function ndA(A,e,t,r){let i=r||[];if(jVt(A,e)<t){let u=A[e+0];if(i.length){if(ZVt(i[i.length-1],u)>1)i.push(u)}else i.push(u);i.push(A[e+3])}else{let a=A[e+0],n=A[e+1],o=A[e+2],s=A[e+3],l=Rm(a,n,0.5),g=Rm(n,o,0.5),C=Rm(o,s,0.5),B=Rm(l,g,0.5),E=Rm(g,C,0.5),d=Rm(B,E,0.5);ndA([a,l,B,d],0,t,i),ndA([d,E,C,s],0,t,i)}return i}function odA(A,e,t,r,i){let u=i||[],a=A[e],n=A[t-1],o=0,s=1;for(let l=e+1;l<t-1;++l){let g=VVt(A[l],a,n);if(g>o)o=g,s=l}if(Math.sqrt(o)>r)odA(A,e,s+1,r,u),odA(A,s,t,r,u);else{if(!u.length)u.push(a);u.push(n)}return u}function LCe(A,e=0.15,t){let r=[],i=(A.length-1)/3;for(let u=0;u<i;u++){let a=u*3;ndA(A,a,e,r)}if(t&&t>0)return odA(r,0,r.length,t);return r}function XVt(A,e){return Math.sqrt(JP(A,e))}function JP(A,e){return Math.pow(A[0]-e[0],2)+Math.pow(A[1]-e[1],2)}function $Vt(A,e,t){let r=JP(e,t);if(r===0)return JP(A,e);let i=((A[0]-e[0])*(t[0]-e[0])+(A[1]-e[1])*(t[1]-e[1]))/r;return i=Math.max(0,Math.min(1,i)),JP(A,Nm(e,t,i))}function Nm(A,e,t){return[A[0]+(e[0]-A[0])*t,A[1]+(e[1]-A[1])*t]}function Ajt(A,e){let t=A[e+0],r=A[e+1],i=A[e+2],u=A[e+3],a=3*r[0]-2*t[0]-u[0];a*=a;let n=3*r[1]-2*t[1]-u[1];n*=n;let o=3*i[0]-2*u[0]-t[0];o*=o;let s=3*i[1]-2*u[1]-t[1];if(s*=s,a<o)a=o;if(n<s)n=s;return a+n}function sdA(A,e,t,r){let i=r||[];if(Ajt(A,e)<t){let u=A[e+0];if(i.length){if(XVt(i[i.length-1],u)>1)i.push(u)}else i.push(u);i.push(A[e+3])}else{let a=A[e+0],n=A[e+1],o=A[e+2],s=A[e+3],l=Nm(a,n,0.5),g=Nm(n,o,0.5),C=Nm(o,s,0.5),B=Nm(l,g,0.5),E=Nm(g,C,0.5),d=Nm(B,E,0.5);sdA([a,l,B,d],0,t,i),sdA([d,E,C,s],0,t,i)}return i}function RCe(A,e){return OP(A,0,A.length,e)}function OP(A,e,t,r,i){let u=i||[],a=A[e],n=A[t-1],o=0,s=1;for(let l=e+1;l<t-1;++l){let g=$Vt(A[l],a,n);if(g>o)o=g,s=l}if(Math.sqrt(o)>r)OP(A,e,s+1,r,u),OP(A,s,t,r,u);else{if(!u.length)u.push(a);u.push(n)}return u}function NCe(A,e=0.15,t){let r=[],i=(A.length-1)/3;for(let u=0;u<i;u++){let a=u*3;sdA(A,a,e,r)}if(t&&t>0)return OP(r,0,r.length,t);return r}function GCe(A,e,t){let r=q6(A),i=j7(Z7(r)),u=[],a=[],n=[0,0],o=[],s=()=>{if(o.length>=4)a.push(...NCe(o,e));o=[]},l=()=>{if(s(),a.length)u.push(a),a=[]};for(let{key:C,data:B}of i)switch(C){case"M":l(),n=[B[0],B[1]],a.push(n);break;case"L":s(),a.push([B[0],B[1]]);break;case"C":if(!o.length){let E=a.length?a[a.length-1]:n;o.push([E[0],E[1]])}o.push([B[0],B[1]]),o.push([B[2],B[3]]),o.push([B[4],B[5]]);break;case"Z":s(),a.push([n[0],n[1]]);break}if(l(),!t)return u;let g=[];for(let C of u){let B=RCe(C,t);if(B.length)g.push(B)}return g}var UCe=_(()=>{edA()});class id{constructor(A){if(this.defaultOptions={maxRandomnessOffset:2,roughness:1,bowing:1,stroke:"#000",strokeWidth:1,curveTightness:0,curveFitting:0.95,curveStepCount:9,fillStyle:"hachure",fillWeight:-1,hachureAngle:-41,hachureGap:-1,dashOffset:-1,dashGap:-1,zigzagOffset:-1,seed:0,disableMultiStroke:!1,disableMultiStrokeFill:!1,preserveVertices:!1,fillShapeRoughnessGain:0.8},this.config=A||{},this.config.options)this.defaultOptions=this._o(this.config.options)}static newSeed(){return pCe()}_o(A){return A?Object.assign({},this.defaultOptions,A):this.defaultOptions}_d(A,e,t){return{shape:A,sets:e||[],options:t||this.defaultOptions}}line(A,e,t,r,i){let u=this._o(i);return this._d("line",[tdA(A,e,t,r,u)],u)}rectangle(A,e,t,r,i){let u=this._o(i),a=[],n=vCe(A,e,t,r,u);if(u.fill){let o=[[A,e],[A+t,e],[A+t,e+r],[A,e+r]];if(u.fillStyle==="solid")a.push(HP([o],u));else a.push(Lm([o],u))}if(u.stroke!==Dg)a.push(n);return this._d("rectangle",a,u)}ellipse(A,e,t,r,i){let u=this._o(i),a=[],n=idA(t,r,u),o=YP(A,e,u,n);if(u.fill)if(u.fillStyle==="solid"){let s=YP(A,e,u,n).opset;s.type="fillPath",a.push(s)}else a.push(Lm([o.estimatedPoints],u));if(u.stroke!==Dg)a.push(o.opset);return this._d("ellipse",a,u)}circle(A,e,t,r){let i=this.ellipse(A,e,t,t,r);return i.shape="circle",i}linearPath(A,e){let t=this._o(e);return this._d("linearPath",[X7(A,!1,t)],t)}arc(A,e,t,r,i,u,a=!1,n){let o=this._o(n),s=[],l=udA(A,e,t,r,i,u,a,!0,o);if(a&&o.fill)if(o.fillStyle==="solid"){let g=Object.assign({},o);g.disableMultiStroke=!0;let C=udA(A,e,t,r,i,u,!0,!1,g);C.type="fillPath",s.push(C)}else s.push(kCe(A,e,t,r,i,u,o));if(o.stroke!==Dg)s.push(l);return this._d("arc",s,o)}curve(A,e){let t=this._o(e),r=[],i=rdA(A,t);if(t.fill&&t.fill!==Dg&&A.length>=3)if(t.fillStyle==="solid"){let u=rdA(A,Object.assign(Object.assign({},t),{disableMultiStroke:!0,roughness:t.roughness?t.roughness+t.fillShapeRoughnessGain:0}));r.push({type:"fillPath",ops:this._mergedShape(u.ops)})}else{let u=SCe(A),a=LCe(u,10,(1+t.roughness)/2);r.push(Lm([a],t))}if(t.stroke!==Dg)r.push(i);return this._d("curve",r,t)}polygon(A,e){let t=this._o(e),r=[],i=X7(A,!0,t);if(t.fill)if(t.fillStyle==="solid")r.push(HP([A],t));else r.push(Lm([A],t));if(t.stroke!==Dg)r.push(i);return this._d("polygon",r,t)}path(A,e){let t=this._o(e),r=[];if(!A)return this._d("path",r,t);A=(A||"").replace(/\n/g," ").replace(/(-\s)/g,"-").replace("/(ss)/g"," ");let i=t.fill&&t.fill!=="transparent"&&t.fill!==Dg,u=t.stroke!==Dg,a=!!(t.simplification&&t.simplification<1),n=a?4-4*(t.simplification||1):(1+t.roughness)/2,o=GCe(A,1,n),s=adA(A,t);if(i)if(t.fillStyle==="solid")if(o.length===1){let l=adA(A,Object.assign(Object.assign({},t),{disableMultiStroke:!0,roughness:t.roughness?t.roughness+t.fillShapeRoughnessGain:0}));r.push({type:"fillPath",ops:this._mergedShape(l.ops)})}else r.push(HP(o,t));else r.push(Lm(o,t));if(u)if(a)o.forEach((l)=>{r.push(X7(l,!1,t))});else r.push(s);return this._d("path",r,t)}opsToPath(A,e){let t="";for(let r of A.ops){let i=typeof e==="number"&&e>=0?r.data.map((u)=>+u.toFixed(e)):r.data;switch(r.op){case"move":t+=`M${i[0]} ${i[1]} `;break;case"bcurveTo":t+=`C${i[0]} ${i[1]}, ${i[2]} ${i[3]}, ${i[4]} ${i[5]} `;break;case"lineTo":t+=`L${i[0]} ${i[1]} `;break}}return t.trim()}toPaths(A){let e=A.sets||[],t=A.options||this.defaultOptions,r=[];for(let i of e){let u=null;switch(i.type){case"path":u={d:this.opsToPath(i),stroke:t.stroke,strokeWidth:t.strokeWidth,fill:Dg};break;case"fillPath":u={d:this.opsToPath(i),stroke:Dg,strokeWidth:0,fill:t.fill||Dg};break;case"fillSketch":u=this.fillSketch(i,t);break}if(u)r.push(u)}return r}fillSketch(A,e){let t=e.fillWeight;if(t<0)t=e.strokeWidth/2;return{d:this.opsToPath(A),stroke:e.fill||Dg,strokeWidth:t,fill:Dg}}_mergedShape(A){return A.filter((e,t)=>{if(t===0)return!0;if(e.op==="move")return!1;return!0})}}var Dg="none";var A8=_(()=>{xCe();UCe()});class ldA{constructor(A,e){this.canvas=A,this.ctx=this.canvas.getContext("2d"),this.gen=new id(e)}draw(A){let e=A.sets||[],t=A.options||this.getDefaultOptions(),r=this.ctx,i=A.options.fixedDecimalPlaceDigits;for(let u of e)switch(u.type){case"path":if(r.save(),r.strokeStyle=t.stroke==="none"?"transparent":t.stroke,r.lineWidth=t.strokeWidth,t.strokeLineDash)r.setLineDash(t.strokeLineDash);if(t.strokeLineDashOffset)r.lineDashOffset=t.strokeLineDashOffset;this._drawToContext(r,u,i),r.restore();break;case"fillPath":{r.save(),r.fillStyle=t.fill||"";let a=A.shape==="curve"||A.shape==="polygon"||A.shape==="path"?"evenodd":"nonzero";this._drawToContext(r,u,i,a),r.restore();break}case"fillSketch":this.fillSketch(r,u,t);break}}fillSketch(A,e,t){let r=t.fillWeight;if(r<0)r=t.strokeWidth/2;if(A.save(),t.fillLineDash)A.setLineDash(t.fillLineDash);if(t.fillLineDashOffset)A.lineDashOffset=t.fillLineDashOffset;A.strokeStyle=t.fill||"",A.lineWidth=r,this._drawToContext(A,e,t.fixedDecimalPlaceDigits),A.restore()}_drawToContext(A,e,t,r="nonzero"){A.beginPath();for(let i of e.ops){let u=typeof t==="number"&&t>=0?i.data.map((a)=>+a.toFixed(t)):i.data;switch(i.op){case"move":A.moveTo(u[0],u[1]);break;case"bcurveTo":A.bezierCurveTo(u[0],u[1],u[2],u[3],u[4],u[5]);break;case"lineTo":A.lineTo(u[0],u[1]);break}}if(e.type==="fillPath")A.fill(r);else A.stroke()}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}line(A,e,t,r,i){let u=this.gen.line(A,e,t,r,i);return this.draw(u),u}rectangle(A,e,t,r,i){let u=this.gen.rectangle(A,e,t,r,i);return this.draw(u),u}ellipse(A,e,t,r,i){let u=this.gen.ellipse(A,e,t,r,i);return this.draw(u),u}circle(A,e,t,r){let i=this.gen.circle(A,e,t,r);return this.draw(i),i}linearPath(A,e){let t=this.gen.linearPath(A,e);return this.draw(t),t}polygon(A,e){let t=this.gen.polygon(A,e);return this.draw(t),t}arc(A,e,t,r,i,u,a=!1,n){let o=this.gen.arc(A,e,t,r,i,u,a,n);return this.draw(o),o}curve(A,e){let t=this.gen.curve(A,e);return this.draw(t),t}path(A,e){let t=this.gen.path(A,e);return this.draw(t),t}}var MCe=_(()=>{A8()});var e8="http://www.w3.org/2000/svg";class gdA{constructor(A,e){this.svg=A,this.gen=new id(e)}draw(A){let e=A.sets||[],t=A.options||this.getDefaultOptions(),r=this.svg.ownerDocument||window.document,i=r.createElementNS(e8,"g"),u=A.options.fixedDecimalPlaceDigits;for(let a of e){let n=null;switch(a.type){case"path":{if(n=r.createElementNS(e8,"path"),n.setAttribute("d",this.opsToPath(a,u)),n.setAttribute("stroke",t.stroke),n.setAttribute("stroke-width",t.strokeWidth+""),n.setAttribute("fill","none"),t.strokeLineDash)n.setAttribute("stroke-dasharray",t.strokeLineDash.join(" ").trim());if(t.strokeLineDashOffset)n.setAttribute("stroke-dashoffset",`${t.strokeLineDashOffset}`);break}case"fillPath":{if(n=r.createElementNS(e8,"path"),n.setAttribute("d",this.opsToPath(a,u)),n.setAttribute("stroke","none"),n.setAttribute("stroke-width","0"),n.setAttribute("fill",t.fill||""),A.shape==="curve"||A.shape==="polygon")n.setAttribute("fill-rule","evenodd");break}case"fillSketch":{n=this.fillSketch(r,a,t);break}}if(n)i.appendChild(n)}return i}fillSketch(A,e,t){let r=t.fillWeight;if(r<0)r=t.strokeWidth/2;let i=A.createElementNS(e8,"path");if(i.setAttribute("d",this.opsToPath(e,t.fixedDecimalPlaceDigits)),i.setAttribute("stroke",t.fill||""),i.setAttribute("stroke-width",r+""),i.setAttribute("fill","none"),t.fillLineDash)i.setAttribute("stroke-dasharray",t.fillLineDash.join(" ").trim());if(t.fillLineDashOffset)i.setAttribute("stroke-dashoffset",`${t.fillLineDashOffset}`);return i}get generator(){return this.gen}getDefaultOptions(){return this.gen.defaultOptions}opsToPath(A,e){return this.gen.opsToPath(A,e)}line(A,e,t,r,i){let u=this.gen.line(A,e,t,r,i);return this.draw(u)}rectangle(A,e,t,r,i){let u=this.gen.rectangle(A,e,t,r,i);return this.draw(u)}ellipse(A,e,t,r,i){let u=this.gen.ellipse(A,e,t,r,i);return this.draw(u)}circle(A,e,t,r){let i=this.gen.circle(A,e,t,r);return this.draw(i)}linearPath(A,e){let t=this.gen.linearPath(A,e);return this.draw(t)}polygon(A,e){let t=this.gen.polygon(A,e);return this.draw(t)}arc(A,e,t,r,i,u,a=!1,n){let o=this.gen.arc(A,e,t,r,i,u,a,n);return this.draw(o)}curve(A,e){let t=this.gen.curve(A,e);return this.draw(t)}path(A,e){let t=this.gen.path(A,e);return this.draw(t)}}var TCe=_(()=>{A8()});var yc;var t8=_(()=>{MCe();A8();TCe();yc={canvas(A,e){return new ldA(A,e)},svg(A,e){return new gdA(A,e)},generator(A){return new id(A)},newSeed(){return id.newSeed()}}});function YCe(A,e,t,r=(i)=>i){return A*r(0.5-e*(0.5-t))}function ejt(A){return[-A[0],-A[1]]}function PC(A,e){return[A[0]+e[0],A[1]+e[1]]}function wc(A,e){return[A[0]-e[0],A[1]-e[1]]}function OC(A,e){return[A[0]*e,A[1]*e]}function tjt(A,e){return[A[0]/e,A[1]/e]}function r8(A){return[A[1],-A[0]]}function HCe(A,e){return A[0]*e[0]+A[1]*e[1]}function rjt(A,e){return A[0]===e[0]&&A[1]===e[1]}function ijt(A){return Math.hypot(A[0],A[1])}function ujt(A){return A[0]*A[0]+A[1]*A[1]}function KCe(A,e){return ujt(wc(A,e))}function PCe(A){return tjt(A,ijt(A))}function ajt(A,e){return Math.hypot(A[1]-e[1],A[0]-e[0])}function i8(A,e,t){let r=Math.sin(t),i=Math.cos(t),u=A[0]-e[0],a=A[1]-e[1],n=u*i-a*r,o=u*r+a*i;return[n+e[0],o+e[1]]}function cdA(A,e,t){return PC(A,OC(wc(e,A),t))}function JCe(A,e,t){return PC(A,OC(e,t))}function ojt(A,e={}){let{size:t=16,smoothing:r=0.5,thinning:i=0.5,simulatePressure:u=!0,easing:a=(M)=>M,start:n={},end:o={},last:s=!1}=e,{cap:l=!0,easing:g=(M)=>M*(2-M)}=n,{cap:C=!0,easing:B=(M)=>--M*M*M+1}=o;if(A.length===0||t<=0)return[];let E=A[A.length-1].runningLength,d=n.taper===!1?0:n.taper===!0?Math.max(t,E):n.taper,I=o.taper===!1?0:o.taper===!0?Math.max(t,E):o.taper,h=Math.pow(t*r,2),Q=[],p=[],m=A.slice(0,10).reduce((M,U)=>{let Y=U.pressure;if(u){let H=z6(1,U.distance/t),J=z6(1,1-H);Y=z6(1,M+(J-M)*(H*OCe))}return(M+Y)/2},A[0].pressure),f=YCe(t,i,A[A.length-1].pressure,a),D,w=A[0].vector,b=A[0].point,k=b,v=b,S=k,x=!1;for(let M=0;M<A.length;M++){let{pressure:U}=A[M],{point:Y,vector:H,distance:J,runningLength:K}=A[M];if(M<A.length-1&&E-K<3)continue;if(i){if(u){let lA=z6(1,J/t),gA=z6(1,1-lA);U=z6(1,m+(gA-m)*(lA*OCe))}f=YCe(t,i,U,a)}else f=t/2;D===void 0&&(D=f);let O=K<d?g(K/d):1,P=E-K<I?B((E-K)/I):1;f=Math.max(0.01,f*Math.min(O,P));let z=(M<A.length-1?A[M+1]:A[M]).vector,AA=M<A.length-1?HCe(H,z):1,W=HCe(H,w)<0&&!x,CA=AA!==null&&AA<0;if(W||CA){let lA=OC(r8(w),f);for(let gA=0.07692307692307693,aA=0;aA<=1;aA+=gA)v=i8(wc(Y,lA),Y,u8*aA),Q.push(v),S=i8(PC(Y,lA),Y,u8*-aA),p.push(S);b=v,k=S,CA&&(x=!0);continue}if(x=!1,M===A.length-1){let lA=OC(r8(H),f);Q.push(wc(Y,lA)),p.push(PC(Y,lA));continue}let tA=OC(r8(cdA(z,H,AA)),f);v=wc(Y,tA),(M<=1||KCe(b,v)>h)&&(Q.push(v),b=v),S=PC(Y,tA),(M<=1||KCe(k,S)>h)&&(p.push(S),k=S),m=U,w=H}let F=A[0].point.slice(0,2),T=A.length>1?A[A.length-1].point.slice(0,2):PC(A[0].point,[1,1]),R=[],L=[];if(A.length===1){if(!(d||I)||s){let M=JCe(F,PCe(r8(wc(F,T))),-(D||f)),U=[];for(let Y=0.07692307692307693,H=Y;H<=1;H+=Y)U.push(i8(M,F,u8*2*H));return U}}else{if(!(d||I&&A.length===1))if(l)for(let U=0.07692307692307693,Y=U;Y<=1;Y+=U){let H=i8(p[0],F,u8*Y);R.push(H)}else{let U=wc(Q[0],p[0]),Y=OC(U,0.5),H=OC(U,0.51);R.push(wc(F,Y),wc(F,H),PC(F,H),PC(F,Y))}let M=r8(ejt(A[A.length-1].vector));if(I||d&&A.length===1)L.push(T);else if(C){let U=JCe(T,M,f);for(let Y=0.034482758620689655,H=Y;H<1;H+=Y)L.push(i8(U,T,u8*3*H))}else L.push(PC(T,OC(M,f)),PC(T,OC(M,f*0.99)),wc(T,OC(M,f*0.99)),wc(T,OC(M,f)))}return Q.concat(L,p.reverse(),R)}function sjt(A,e={}){var t;let{streamline:r=0.5,size:i=16,last:u=!1}=e;if(A.length===0)return[];let a=0.15+(1-r)*0.85,n=Array.isArray(A[0])?A:A.map(({x:B,y:E,pressure:d=0.5})=>[B,E,d]);if(n.length===2){let B=n[1];n=n.slice(0,-1);for(let E=1;E<5;E++)n.push(cdA(n[0],B,E/4))}n.length===1&&(n=[...n,[...PC(n[0],[1,1]),...n[0].slice(2)]]);let o=[{point:[n[0][0],n[0][1]],pressure:n[0][2]>=0?n[0][2]:0.25,vector:[1,1],distance:0,runningLength:0}],s=!1,l=0,g=o[0],C=n.length-1;for(let B=1;B<n.length;B++){let E=u&&B===C?n[B].slice(0,2):cdA(g.point,n[B],a);if(rjt(g.point,E))continue;let d=ajt(E,g.point);if(l+=d,B<C&&!s){if(l<i)continue;s=!0}g={point:E,pressure:n[B][2]>=0?n[B][2]:0.5,vector:PCe(wc(g.point,E)),distance:d,runningLength:l},o.push(g)}return o[0].vector=((t=o[1])==null?void 0:t.vector)||[0,0],o}function _Ce(A,e={}){return ojt(sjt(A,e),e)}var z6,njt,OCe=0.275,u8;var WCe=_(()=>{({min:z6,PI:njt}=Math),u8=njt+0.0001});var bt={};LZ(bt,{Children:()=>di,Component:()=>hdA,Fragment:()=>ho,Profiler:()=>iBe,PureComponent:()=>uBe,StrictMode:()=>aBe,Suspense:()=>nBe,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:()=>V6,act:()=>oBe,cloneElement:()=>Kn,createContext:()=>wi,createElement:()=>Rt,createFactory:()=>sBe,createRef:()=>QdA,forwardRef:()=>mt,isValidElement:()=>Da,lazy:()=>lBe,memo:()=>gi,startTransition:()=>gBe,unstable_act:()=>cBe,useCallback:()=>st,useContext:()=>Li,useDebugValue:()=>p1,useDeferredValue:()=>qP,useEffect:()=>le,useId:()=>CBe,useImperativeHandle:()=>Gm,useInsertionEffect:()=>BBe,useLayoutEffect:()=>Ii,useMemo:()=>Ut,useReducer:()=>f1,useRef:()=>Ee,useState:()=>we,useSyncExternalStore:()=>n8,useTransition:()=>pdA,version:()=>zP},{Children:(FDi)=>di=FDi,Component:(FDi)=>hdA=FDi,Fragment:(FDi)=>ho=FDi,Profiler:(FDi)=>iBe=FDi,PureComponent:(FDi)=>uBe=FDi,StrictMode:(FDi)=>aBe=FDi,Suspense:(FDi)=>nBe=FDi,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:(FDi)=>V6=FDi,act:(FDi)=>oBe=FDi,cloneElement:(FDi)=>Kn=FDi,createContext:(FDi)=>wi=FDi,createElement:(FDi)=>Rt=FDi,createFactory:(FDi)=>sBe=FDi,createRef:(FDi)=>QdA=FDi,forwardRef:(FDi)=>mt=FDi,isValidElement:(FDi)=>Da=FDi,lazy:(FDi)=>lBe=FDi,memo:(FDi)=>gi=FDi,startTransition:(FDi)=>gBe=FDi,unstable_act:(FDi)=>cBe=FDi,useCallback:(FDi)=>st=FDi,useContext:(FDi)=>Li=FDi,useDebugValue:(FDi)=>p1=FDi,useDeferredValue:(FDi)=>qP=FDi,useEffect:(FDi)=>le=FDi,useId:(FDi)=>CBe=FDi,useImperativeHandle:(FDi)=>Gm=FDi,useInsertionEffect:(FDi)=>BBe=FDi,useLayoutEffect:(FDi)=>Ii=FDi,useMemo:(FDi)=>Ut=FDi,useReducer:(FDi)=>f1=FDi,useRef:(FDi)=>Ee=FDi,useState:(FDi)=>we=FDi,useSyncExternalStore:(FDi)=>n8=FDi,useTransition:(FDi)=>pdA=FDi,version:(FDi)=>zP=FDi});function pjt(A){if(A===null||typeof A!=="object")return null;return A=qCe&&A[qCe]||A["@@iterator"],typeof A==="function"?A:null}function Z6(A,e,t){this.props=A,this.context=e,this.refs=XCe,this.updater=t||VCe}function $Ce(){}function BdA(A,e,t){this.props=A,this.context=e,this.refs=XCe,this.updater=t||VCe}function tBe(A,e,t){var r,i={},u=null,a=null;if(e!=null)for(r in e.ref!==void 0&&(a=e.ref),e.key!==void 0&&(u=""+e.key),e)ABe.call(e,r)&&!eBe.hasOwnProperty(r)&&(i[r]=e[r]);var n=arguments.length-2;if(n===1)i.children=t;else if(1<n){for(var o=Array(n),s=0;s<n;s++)o[s]=arguments[s+2];i.children=o}if(A&&A.defaultProps)for(r in n=A.defaultProps,n)i[r]===void 0&&(i[r]=n[r]);return{$$typeof:a8,type:A,key:u,ref:a,props:i,_owner:ddA.current}}function fjt(A,e){return{$$typeof:a8,type:A.type,key:e,ref:A.ref,props:A.props,_owner:A._owner}}function IdA(A){return typeof A==="object"&&A!==null&&A.$$typeof===a8}function mjt(A){var e={"=":"=0",":":"=2"};return"$"+A.replace(/[=:]/g,function(t){return e[t]})}function CdA(A,e){return typeof A==="object"&&A!==null&&A.key!=null?mjt(""+A.key):e.toString(36)}function _P(A,e,t,r,i){var u=typeof A;if(u==="undefined"||u==="boolean")A=null;var a=!1;if(A===null)a=!0;else switch(u){case"string":case"number":a=!0;break;case"object":switch(A.$$typeof){case a8:case ljt:a=!0}}if(a)return a=A,i=i(a),A=r===""?"."+CdA(a,0):r,zCe(i)?(t="",A!=null&&(t=A.replace(ZCe,"$&/")+"/"),_P(i,e,t,"",function(s){return s})):i!=null&&(IdA(i)&&(i=fjt(i,t+(!i.key||a&&a.key===i.key?"":(""+i.key).replace(ZCe,"$&/")+"/")+A)),e.push(i)),1;if(a=0,r=r===""?".":r+":",zCe(A))for(var n=0;n<A.length;n++){u=A[n];var o=r+CdA(u,n);a+=_P(u,e,t,o,i)}else if(o=pjt(A),typeof o==="function")for(A=o.call(A),n=0;!(u=A.next()).done;)u=u.value,o=r+CdA(u,n++),a+=_P(u,e,t,o,i);else if(u==="object")throw e=String(A),Error("Objects are not valid as a React child (found: "+(e==="[object Object]"?"object with keys {"+Object.keys(A).join(", ")+"}":e)+"). If you meant to render a collection of children, use an array instead.");return a}function PP(A,e,t){if(A==null)return A;var r=[],i=0;return _P(A,r,"","",function(u){return e.call(t,u,i++)}),r}function Djt(A){if(A._status===-1){var e=A._result;e=e(),e.then(function(t){if(A._status===0||A._status===-1)A._status=1,A._result=t},function(t){if(A._status===0||A._status===-1)A._status=2,A._result=t}),A._status===-1&&(A._status=0,A._result=e)}if(A._status===1)return A._result.default;throw A._result}function rBe(){throw Error("act(...) is not supported in production builds of React.")}var a8,ljt,gjt,cjt,Cjt,Bjt,Ejt,djt,Ijt,hjt,Qjt,qCe,VCe,jCe,XCe,EdA,zCe,ABe,ddA,eBe,ZCe,Gs,WP,yjt,di,hdA,ho,iBe,uBe,aBe,nBe,V6,oBe,Kn=function(A,e,t){if(A===null||A===void 0)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+A+".");var r=jCe({},A.props),{key:i,ref:u,_owner:a}=A;if(e!=null){if(e.ref!==void 0&&(u=e.ref,a=ddA.current),e.key!==void 0&&(i=""+e.key),A.type&&A.type.defaultProps)var n=A.type.defaultProps;for(o in e)ABe.call(e,o)&&!eBe.hasOwnProperty(o)&&(r[o]=e[o]===void 0&&n!==void 0?n[o]:e[o])}var o=arguments.length-2;if(o===1)r.children=t;else if(1<o){n=Array(o);for(var s=0;s<o;s++)n[s]=arguments[s+2];r.children=n}return{$$typeof:a8,type:A.type,key:i,ref:u,props:r,_owner:a}},wi=function(A){return A={$$typeof:Ejt,_currentValue:A,_currentValue2:A,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},A.Provider={$$typeof:Bjt,_context:A},A.Consumer=A},Rt,sBe=function(A){var e=tBe.bind(null,A);return e.type=A,e},QdA=function(){return{current:null}},mt=function(A){return{$$typeof:djt,render:A}},Da,lBe=function(A){return{$$typeof:Qjt,_payload:{_status:-1,_result:A},_init:Djt}},gi=function(A,e){return{$$typeof:hjt,type:A,compare:e===void 0?null:e}},gBe=function(A){var e=WP.transition;WP.transition={};try{A()}finally{WP.transition=e}},cBe,st=function(A,e){return Gs.current.useCallback(A,e)},Li=function(A){return Gs.current.useContext(A)},p1=function(){},qP=function(A){return Gs.current.useDeferredValue(A)},le=function(A,e){return Gs.current.useEffect(A,e)},CBe=function(){return Gs.current.useId()},Gm=function(A,e,t){return Gs.current.useImperativeHandle(A,e,t)},BBe=function(A,e){return Gs.current.useInsertionEffect(A,e)},Ii=function(A,e){return Gs.current.useLayoutEffect(A,e)},Ut=function(A,e){return Gs.current.useMemo(A,e)},f1=function(A,e,t){return Gs.current.useReducer(A,e,t)},Ee=function(A){return Gs.current.useRef(A)},we=function(A){return Gs.current.useState(A)},n8=function(A,e,t){return Gs.current.useSyncExternalStore(A,e,t)},pdA=function(){return Gs.current.useTransition()},zP="18.3.1";var fe=_(()=>{a8=Symbol.for("react.element"),ljt=Symbol.for("react.portal"),gjt=Symbol.for("react.fragment"),cjt=Symbol.for("react.strict_mode"),Cjt=Symbol.for("react.profiler"),Bjt=Symbol.for("react.provider"),Ejt=Symbol.for("react.context"),djt=Symbol.for("react.forward_ref"),Ijt=Symbol.for("react.suspense"),hjt=Symbol.for("react.memo"),Qjt=Symbol.for("react.lazy"),qCe=Symbol.iterator;VCe={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},jCe=Object.assign,XCe={};Z6.prototype.isReactComponent={};Z6.prototype.setState=function(A,e){if(typeof A!=="object"&&typeof A!=="function"&&A!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,A,e,"setState")};Z6.prototype.forceUpdate=function(A){this.updater.enqueueForceUpdate(this,A,"forceUpdate")};$Ce.prototype=Z6.prototype;EdA=BdA.prototype=new $Ce;EdA.constructor=BdA;jCe(EdA,Z6.prototype);EdA.isPureReactComponent=!0;zCe=Array.isArray,ABe=Object.prototype.hasOwnProperty,ddA={current:null},eBe={key:!0,ref:!0,__self:!0,__source:!0};ZCe=/\/+/g;Gs={current:null},WP={transition:null},yjt={ReactCurrentDispatcher:Gs,ReactCurrentBatchConfig:WP,ReactCurrentOwner:ddA};di={map:PP,forEach:function(A,e,t){PP(A,function(){e.apply(this,arguments)},t)},count:function(A){var e=0;return PP(A,function(){e++}),e},toArray:function(A){return PP(A,function(e){return e})||[]},only:function(A){if(!IdA(A))throw Error("React.Children.only expected to receive a single React element child.");return A}},hdA=Z6,ho=gjt,iBe=Cjt,uBe=BdA,aBe=cjt,nBe=Ijt,V6=yjt,oBe=rBe,Rt=tBe,Da=IdA,cBe=rBe});function EBe(A){var e,t,r="";if(typeof A==="string"||typeof A==="number")r+=A;else if(typeof A==="object"){if(Array.isArray(A)){for(e=0;e<A.length;e++)if(A[e]){if(t=EBe(A[e]))r&&(r+=" "),r+=t}}else for(e in A)if(A[e])r&&(r+=" "),r+=e}return r}function Se(){var A=0,e,t,r="";while(A<arguments.length)if(e=arguments[A++]){if(t=EBe(e))r&&(r+=" "),r+=t}return r}function dBe(A,e,t){var r,i={},u=null,a=null;t!==void 0&&(u=""+t),e.key!==void 0&&(u=""+e.key),e.ref!==void 0&&(a=e.ref);for(r in e)vjt.call(e,r)&&!Fjt.hasOwnProperty(r)&&(i[r]=e[r]);if(A&&A.defaultProps)for(r in e=A.defaultProps,e)i[r]===void 0&&(i[r]=e[r]);return{$$typeof:wjt,type:A,key:u,ref:a,props:i,_owner:kjt.current}}var wjt,bjt,vjt,kjt,Fjt,At,N,cA;var Be=_(()=>{fe();wjt=Symbol.for("react.element"),bjt=Symbol.for("react.fragment"),vjt=Object.prototype.hasOwnProperty,kjt=V6.ReactCurrentOwner,Fjt={key:!0,ref:!0,__self:!0,__source:!0};At=bjt,N=dBe,cA=dBe});function xjt(A,e){return Math.sqrt(ZP(A,e))}function ZP(A,e){return Math.pow(A[0]-e[0],2)+Math.pow(A[1]-e[1],2)}function Sjt(A,e,t){let r=ZP(e,t);if(r===0)return ZP(A,e);let i=((A[0]-e[0])*(t[0]-e[0])+(A[1]-e[1])*(t[1]-e[1]))/r;return i=Math.max(0,Math.min(1,i)),ZP(A,Um(e,t,i))}function Um(A,e,t){return[A[0]+(e[0]-A[0])*t,A[1]+(e[1]-A[1])*t]}function Ljt(A,e){let t=A[e+0],r=A[e+1],i=A[e+2],u=A[e+3],a=3*r[0]-2*t[0]-u[0];a*=a;let n=3*r[1]-2*t[1]-u[1];n*=n;let o=3*i[0]-2*u[0]-t[0];o*=o;let s=3*i[1]-2*u[1]-t[1];if(s*=s,a<o)a=o;if(n<s)n=s;return a+n}function fdA(A,e,t,r){let i=r||[];if(Ljt(A,e)<t){let u=A[e+0];if(i.length){if(xjt(i[i.length-1],u)>1)i.push(u)}else i.push(u);i.push(A[e+3])}else{let a=A[e+0],n=A[e+1],o=A[e+2],s=A[e+3],l=Um(a,n,0.5),g=Um(n,o,0.5),C=Um(o,s,0.5),B=Um(l,g,0.5),E=Um(g,C,0.5),d=Um(B,E,0.5);fdA([a,l,B,d],0,t,i),fdA([d,E,C,s],0,t,i)}return i}function IBe(A,e){return VP(A,0,A.length,e)}function VP(A,e,t,r,i){let u=i||[],a=A[e],n=A[t-1],o=0,s=1;for(let l=e+1;l<t-1;++l){let g=Sjt(A[l],a,n);if(g>o)o=g,s=l}if(Math.sqrt(o)>r)VP(A,e,s+1,r,u),VP(A,s,t,r,u);else{if(!u.length)u.push(a);u.push(n)}return u}function hBe(A,e=0.15,t){let r=[],i=(A.length-1)/3;for(let u=0;u<i;u++){let a=u*3;fdA(A,a,e,r)}if(t&&t>0)return VP(r,0,r.length,t);return r}var fBe=wu(function(QBe){Object.defineProperty(QBe,"__esModule",{value:!0});QBe.sanitizeUrl=void 0;var Rjt=/^([^\w]*)(javascript|data|vbscript)/im,Njt=/&#(\w+)(^\w|;)?/g,Gjt=/&(newline|tab);/gi,Ujt=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,Mjt=/^.+(:|&colon;)/gim,Tjt=[".","/"];function Yjt(A){return Tjt.indexOf(A[0])>-1}function Hjt(A){return A.replace(Njt,function(e,t){return String.fromCharCode(t)})}function Kjt(A){var e=Hjt(A||"").replace(Gjt,"").replace(Ujt,"").trim();if(!e)return"about:blank";if(Yjt(e))return e;var t=e.match(Mjt);if(!t)return e;var r=t[0];if(Rjt.test(r))return"about:blank";return e}QBe.sanitizeUrl=Kjt});function X6(A,e,t){let r=t[0];if(e!=null&&A>=e)throw Error(A+" >= "+e);if(A.slice(-1)===r||e&&e.slice(-1)===r)throw Error("trailing zero");if(e){let a=0;while((A[a]||r)===e[a])a++;if(a>0)return e.slice(0,a)+X6(A.slice(a),e.slice(a),t)}let i=A?t.indexOf(A[0]):0,u=e!=null?t.indexOf(e[0]):t.length;if(u-i>1){let a=Math.round(0.5*(i+u));return t[a]}else if(e&&e.length>1)return e.slice(0,1);else return t[i]+X6(A.slice(1),null,t)}function yBe(A){if(A.length!==wBe(A[0]))throw Error("invalid integer part of order key: "+A)}function wBe(A){if(A>="a"&&A<="z")return A.charCodeAt(0)-97+2;else if(A>="A"&&A<="Z")return 90-A.charCodeAt(0)+2;else throw Error("invalid order key head: "+A)}function o8(A){let e=wBe(A[0]);if(e>A.length)throw Error("invalid order key: "+A);return A.slice(0,e)}function mBe(A,e){if(A==="A"+e[0].repeat(26))throw Error("invalid order key: "+A);let t=o8(A);if(A.slice(t.length).slice(-1)===e[0])throw Error("invalid order key: "+A)}function DBe(A,e){yBe(A);let[t,...r]=A.split(""),i=!0;for(let u=r.length-1;i&&u>=0;u--){let a=e.indexOf(r[u])+1;if(a===e.length)r[u]=e[0];else r[u]=e[a],i=!1}if(i){if(t==="Z")return"a"+e[0];if(t==="z")return null;let u=String.fromCharCode(t.charCodeAt(0)+1);if(u>"a")r.push(e[0]);else r.pop();return u+r.join("")}else return t+r.join("")}function Jjt(A,e){yBe(A);let[t,...r]=A.split(""),i=!0;for(let u=r.length-1;i&&u>=0;u--){let a=e.indexOf(r[u])-1;if(a===-1)r[u]=e.slice(-1);else r[u]=e[a],i=!1}if(i){if(t==="a")return"Z"+e.slice(-1);if(t==="A")return null;let u=String.fromCharCode(t.charCodeAt(0)-1);if(u<"Z")r.push(e.slice(-1));else r.pop();return u+r.join("")}else return t+r.join("")}function j6(A,e,t="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"){if(A!=null)mBe(A,t);if(e!=null)mBe(e,t);if(A!=null&&e!=null&&A>=e)throw Error(A+" >= "+e);if(A==null){if(e==null)return"a"+t[0];let o=o8(e),s=e.slice(o.length);if(o==="A"+t[0].repeat(26))return o+X6("",s,t);if(o<e)return o;let l=Jjt(o,t);if(l==null)throw Error("cannot decrement any more");return l}if(e==null){let o=o8(A),s=A.slice(o.length),l=DBe(o,t);return l==null?o+X6(s,null,t):l}let r=o8(A),i=A.slice(r.length),u=o8(e),a=e.slice(u.length);if(r===u)return r+X6(i,a,t);let n=DBe(r,t);if(n==null)throw Error("cannot increment any more");if(n<e)return n;return r+X6(i,null,t)}function jP(A,e,t,r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"){if(t===0)return[];if(t===1)return[j6(A,e,r)];if(e==null){let a=j6(A,e,r),n=[a];for(let o=0;o<t-1;o++)a=j6(a,e,r),n.push(a);return n}if(A==null){let a=j6(A,e,r),n=[a];for(let o=0;o<t-1;o++)a=j6(A,a,r),n.push(a);return n.reverse(),n}let i=Math.floor(t/2),u=j6(A,e,r);return[...jP(A,u,i,r),u,...jP(u,e,t-i-1,r)]}var bBe={};Dt(bBe,{default:()=>Pjt});var Ojt=async(A)=>{let e=await A.getFile();return e.handle=A,e},Pjt=async(A=[{}])=>{Array.isArray(A)||(A=[A]);let e=[];A.forEach((i,u)=>{e[u]={description:i.description||"",accept:{}},i.mimeTypes?i.mimeTypes.map((a)=>{e[u].accept[a]=i.extensions||[]}):e[u].accept["*/*"]=i.extensions||[]});let t=await window.showOpenFilePicker({id:A[0].id,startIn:A[0].startIn,types:e,multiple:A[0].multiple||!1,excludeAcceptAllOption:A[0].excludeAcceptAllOption||!1}),r=await Promise.all(t.map(Ojt));return A[0].multiple?r:r[0]};var vBe=()=>{};var kBe={};Dt(kBe,{default:()=>_jt});var _jt=async(A=[{}])=>(Array.isArray(A)||(A=[A]),new Promise((e,t)=>{let r=document.createElement("input");r.type="file";let i=[...A.map((n)=>n.mimeTypes||[]),...A.map((n)=>n.extensions||[])].join();r.multiple=A[0].multiple||!1,r.accept=i||"";let u=(n)=>{typeof a=="function"&&a(),e(n)},a=A[0].legacySetup&&A[0].legacySetup(u,()=>a(t),r);r.addEventListener("change",()=>{u(r.multiple?Array.from(r.files):r.files[0])}),r.click()}));var FBe=()=>{};var SBe={};Dt(SBe,{default:()=>Wjt});function XP(A){function e(t){if(Object(t)!==t)return Promise.reject(TypeError(t+" is not an object."));var r=t.done;return Promise.resolve(t.value).then(function(i){return{value:i,done:r}})}return XP=function(t){this.s=t,this.n=t.next},XP.prototype={s:null,n:null,next:function(){return e(this.n.apply(this.s,arguments))},return:function(t){var r=this.s.return;return r===void 0?Promise.resolve({value:t,done:!0}):e(r.apply(this.s,arguments))},throw:function(t){var r=this.s.return;return r===void 0?Promise.reject(t):e(r.apply(this.s,arguments))}},new XP(A)}var xBe=async(A,e,t=A.name,r)=>{let i=[],u=[];var a,n=!1,o=!1;try{for(var s,l=function(g){var C,B,E,d=2;for(typeof Symbol<"u"&&(B=Symbol.asyncIterator,E=Symbol.iterator);d--;){if(B&&(C=g[B])!=null)return C.call(g);if(E&&(C=g[E])!=null)return new XP(C.call(g));B="@@asyncIterator",E="@@iterator"}throw TypeError("Object is not async iterable")}(A.values());n=!(s=await l.next()).done;n=!1){let g=s.value,C=`${t}/${g.name}`;g.kind==="file"?u.push(g.getFile().then((B)=>(B.directoryHandle=A,B.handle=g,Object.defineProperty(B,"webkitRelativePath",{configurable:!0,enumerable:!0,get:()=>C})))):g.kind!=="directory"||!e||r&&r(g)||i.push(xBe(g,e,C,r))}}catch(g){o=!0,a=g}finally{try{n&&l.return!=null&&await l.return()}finally{if(o)throw a}}return[...(await Promise.all(i)).flat(),...await Promise.all(u)]},Wjt=async(A={})=>{A.recursive=A.recursive||!1;let e=await window.showDirectoryPicker({id:A.id,startIn:A.startIn});return xBe(e,A.recursive,void 0,A.skipDirectory)};var LBe=()=>{};var RBe={};Dt(RBe,{default:()=>qjt});var qjt=async(A=[{}])=>(Array.isArray(A)||(A=[A]),A[0].recursive=A[0].recursive||!1,new Promise((e,t)=>{let r=document.createElement("input");r.type="file",r.webkitdirectory=!0;let i=(a)=>{typeof u=="function"&&u(),e(a)},u=A[0].legacySetup&&A[0].legacySetup(i,()=>u(t),r);r.addEventListener("change",()=>{let a=Array.from(r.files);A[0].recursive?A[0].recursive&&A[0].skipDirectory&&(a=a.filter((n)=>n.webkitRelativePath.split("/").every((o)=>!A[0].skipDirectory({name:o,kind:"directory"})))):a=a.filter((n)=>n.webkitRelativePath.split("/").length===2),i(a)}),r.click()}));var NBe=()=>{};var GBe={};Dt(GBe,{default:()=>zjt});var zjt=async(A,e=[{}],t=null,r=!1,i=null)=>{Array.isArray(e)||(e=[e]),e[0].fileName=e[0].fileName||"Untitled";let u=[],a=null;if(A instanceof Blob&&A.type?a=A.type:A.headers&&A.headers.get("content-type")&&(a=A.headers.get("content-type")),e.forEach((s,l)=>{u[l]={description:s.description||"",accept:{}},s.mimeTypes?(l===0&&a&&s.mimeTypes.push(a),s.mimeTypes.map((g)=>{u[l].accept[g]=s.extensions||[]})):a&&(u[l].accept[a]=s.extensions||[])}),t)try{await t.getFile()}catch(s){if(t=null,r)throw s}let n=t||await window.showSaveFilePicker({suggestedName:e[0].fileName,id:e[0].id,startIn:e[0].startIn,types:u,excludeAcceptAllOption:e[0].excludeAcceptAllOption||!1});!t&&i&&i();let o=await n.createWritable();if("stream"in A)return await A.stream().pipeTo(o),n;return"body"in A?(await A.body.pipeTo(o),n):(await o.write(await A),await o.close(),n)};var UBe=()=>{};var MBe={};Dt(MBe,{default:()=>Zjt});var Zjt=async(A,e={})=>{Array.isArray(e)&&(e=e[0]);let t=document.createElement("a"),r=A;"body"in A&&(r=await async function(a,n){let o=a.getReader(),s=new ReadableStream({start:(C)=>async function B(){return o.read().then(({done:E,value:d})=>{if(!E)return C.enqueue(d),B();C.close()})}()}),l=new Response(s),g=await l.blob();return o.releaseLock(),new Blob([g],{type:n})}(A.body,A.headers.get("content-type"))),t.download=e.fileName||"Untitled",t.href=URL.createObjectURL(await r);let i=()=>{typeof u=="function"&&u()},u=e.legacySetup&&e.legacySetup(i,()=>u(reject),t);return t.addEventListener("click",()=>{setTimeout(()=>URL.revokeObjectURL(t.href),30000),i()}),t.click(),null};var TBe=()=>{};async function YBe(...A){return(await Vjt).default(...A)}async function HBe(...A){return(await jjt).default(...A)}var mh,Vjt,GDi,jjt;var KBe=_(()=>{mh=(()=>{if(typeof self>"u")return!1;if("top"in self&&self!==top)try{}catch(A){return!1}else if("showOpenFilePicker"in self)return"showOpenFilePicker";return!1})(),Vjt=mh?Promise.resolve().then(() => (vBe(),bBe)):Promise.resolve().then(() => (FBe(),kBe));GDi=mh?Promise.resolve().then(() => (LBe(),SBe)):Promise.resolve().then(() => (NBe(),RBe)),jjt=mh?Promise.resolve().then(() => (UBe(),GBe)):Promise.resolve().then(() => (TBe(),MBe))});function JBe(A){let e=[];for(let t=0,r=A.size();t<r;t++)e.push(A.get(t));return new Uint8Array(e)}function aXt(A,e,t,r){let i=A.hb_subset_input_create_or_fail();if(i===0)throw Error("hb_subset_input_create_or_fail (harfbuzz) returned zero, indicating failure");let u=A.malloc(t.byteLength);e.set(new Uint8Array(t),u);let a=A.hb_blob_create(u,t.byteLength,2,0,0),n=A.hb_face_create(a,0);A.hb_blob_destroy(a);let o=A.hb_subset_input_set(i,6);A.hb_set_clear(o),A.hb_set_invert(o);let s=A.hb_subset_input_unicode_set(i);for(let d of r)A.hb_set_add(s,d);let l;try{if(l=A.hb_subset_or_fail(n,i),l===0)throw A.hb_face_destroy(n),A.free(u),Error("hb_subset_or_fail (harfbuzz) returned zero, indicating failure. Maybe the input file is corrupted?")}finally{A.hb_subset_input_destroy(i)}let g=A.hb_face_reference_blob(l),C=A.hb_blob_get_data(g,0),B=A.hb_blob_get_length(g);if(B===0)throw A.hb_blob_destroy(g),A.hb_face_destroy(l),A.hb_face_destroy(n),A.free(u),Error("Failed to create subset font, maybe the input file is corrupted?");let E=new Uint8Array(e.subarray(C,C+B));return A.hb_blob_destroy(g),A.hb_face_destroy(l),A.hb_face_destroy(n),A.free(u),E}var __dirname="/workspace/gstack/lib/diagram-render/node_modules/@excalidraw/excalidraw/dist/prod",Xjt,$jt,AXt,eXt,mdA=null,tXt=()=>new Promise((A,e)=>{try{eXt({wasmBinary:$jt}).then((t)=>{try{A({compress:(r)=>JBe(t.woff2Enc(r,r.byteLength)),decompress:(r)=>JBe(t.woff2Dec(r,r.byteLength))})}catch(r){e(r)}})}catch(t){e(t)}}),rXt=()=>(mdA||(mdA=tXt()),mdA),iXt,uXt,nXt,DdA=null,oXt=()=>new Promise(async(A,e)=>{try{let t=(await WebAssembly.instantiate(uXt)).instance.exports,r=new Uint8Array(t.memory.buffer);A({subset:(i,u)=>nXt.subset(t,r,i,u)})}catch(t){e(t)}}),sXt=()=>(DdA||(DdA=oXt()),DdA),A_,OBe=async(A,e)=>{try{let t=await s8(A,e);return $P(t)}catch(t){return console.error("Skipped glyph subsetting",t),$P(A)}},s8=async(A,e)=>{let{compress:t,decompress:r}=await rXt(),{subset:i}=await sXt(),u=r(A).buffer,a=i(u,new Set(e));return t(a.buffer).buffer},$P=async(A)=>{let e;if(typeof Buffer<"u")e=Buffer.from(A).toString("base64");else{let t=String.fromCharCode(...new Uint8Array(A));e=btoa(t)}return`data:font/woff2;base64,${e}`};var ydA=_(()=>{zt();Xjt=(()=>{let A=new Uint8Array(128);for(let e=0;e<64;e++)A[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return(e)=>{let t=e.length,r=new Uint8Array((t-(e[t-1]=="=")-(e[t-2]=="="))*3/4|0);for(let i=0,u=0;i<t;){let a=A[e.charCodeAt(i++)],n=A[e.charCodeAt(i++)],o=A[e.charCodeAt(i++)],s=A[e.charCodeAt(i++)];r[u++]=a<<2|n>>4,r[u++]=n<<4|o>>2,r[u++]=o<<6|s}return r}})(),$jt=Xjt("AGFzbQEAAAABmwMrYAABf2ACf38AYAN/f38AYAF/AX9gA39/fwF/YAR/f39/AX9gAn9/AX9gBn98f39/fwF/YAN/fn8BfmAEf39/fwBgBn9/f39/fwBgBX9/f39/AGAAAGABfwBgDX9/f39/f39/f39/f38AYAh/f39/f39/fwBgAXwBfGAFf39/f38Bf2AGf39/f39/AX9gB39/f39/f38Bf2ABfwF+YAt/f39/f39/f39/fwBgCn9/f39/f39/f38AYAd/f39/f39/AGAIf39/f39/f38Bf2AOf39/f39/f39/f39/f38AYAl/f39/f39/f38AYAp/f39/f39/f39/AX9gDX9/f39/f39/f39/f38Bf2AEfX9/fwF/YAx/f39/f39/f39/f38AYAt/f39/f39/f39/fwF/YAF/AXxgD39/f39/f39/f39/f39/fwBgCX9/f39/f39/fwF/YAJ/fwF8YAF+AX9gEX9/f35/f39/f39/f39/f39/AGAGf39+f39/AX9gA35/fwF/YAJ+fwF/YAJ8fwF8YAd/f3x/f39/AX8CoQkyA2VudhJhYm9ydFN0YWNrT3ZlcmZsb3cADQNlbnYOX2xsdm1fbG9nMl9mNjQAEANlbnYGX2Fib3J0AAwDZW52HV9fZW1iaW5kX3JlZ2lzdGVyX21lbW9yeV92aWV3AAIDZW52DF9fX2N4YV90aHJvdwACA2VudhlfX19jeGFfYWxsb2NhdGVfZXhjZXB0aW9uAAMDZW52GV9fZW1iaW5kX3JlZ2lzdGVyX2ludGVnZXIACwNlbnYgX19lbWJpbmRfcmVnaXN0ZXJfY2xhc3NfZnVuY3Rpb24ADwNlbnYcX19lbWJpbmRfcmVnaXN0ZXJfc3RkX3N0cmluZwABA2VudhdfX2VtYmluZF9yZWdpc3Rlcl9mbG9hdAACA2VudgtudWxsRnVuY192aQANA2VudgpudWxsRnVuY192AA0DZW52DW51bGxGdW5jX2ppamkADQNlbnYObnVsbEZ1bmNfaWlpaWkADQNlbnYNbnVsbEZ1bmNfaWlpaQANA2Vudg9fX193YXNpX2ZkX3NlZWsAEQNlbnYLc2V0VGVtcFJldDAADQNlbnYKX2xsdm1fdHJhcAAMA2VudgVfZXhpdAANA2VudhdfZW1zY3JpcHRlbl9yZXNpemVfaGVhcAADA2VudgxudWxsRnVuY19paWkADQNlbnYWX2Vtc2NyaXB0ZW5fbWVtY3B5X2JpZwAEA2VudhlfZW1zY3JpcHRlbl9nZXRfaGVhcF9zaXplAAADZW52El9fZW12YWxfdGFrZV92YWx1ZQAGA2Vudg5fX2VtdmFsX2luY3JlZgANA2Vudg5fX2VtdmFsX2RlY3JlZgANA2VudhZfX2VtYmluZF9yZWdpc3Rlcl92b2lkAAEDZW52HV9fZW1iaW5kX3JlZ2lzdGVyX3N0ZF93c3RyaW5nAAIDZW52EG51bGxGdW5jX2lpZGlpaWkADQNlbnYaX19lbWJpbmRfcmVnaXN0ZXJfZnVuY3Rpb24ACgNlbnYXX19lbWJpbmRfcmVnaXN0ZXJfZW12YWwAAQNlbnYjX19lbWJpbmRfcmVnaXN0ZXJfY2xhc3NfY29uc3RydWN0b3IACgNlbnYXX19lbWJpbmRfcmVnaXN0ZXJfY2xhc3MADgNlbnYWX19lbWJpbmRfcmVnaXN0ZXJfYm9vbAALA2VudhBfX193YXNpX2ZkX3dyaXRlAAUDZW52EF9fX3dhc2lfZmRfY2xvc2UAAwNlbnYLbnVsbEZ1bmNfaWkADQNlbnYJX19fdW5sb2NrAA0DZW52B19fX2xvY2sADQNlbnYOX19fYXNzZXJ0X2ZhaWwACQNlbnYQbnVsbEZ1bmNfdmlpaWlpaQANA2Vudg9udWxsRnVuY192aWlpaWkADQNlbnYObnVsbEZ1bmNfdmlpaWkADQNlbnYNbnVsbEZ1bmNfdmlpaQANA2VudgxudWxsRnVuY192aWkADQNlbnYKbnVsbEZ1bmNfaQANA2VudgxfX3RhYmxlX2Jhc2UDfwAGZ2xvYmFsCEluZmluaXR5A3wAA2VudgZtZW1vcnkCAIACA2VudgV0YWJsZQFwAeAC4AIDsgiwCAEBBgEEBAYGBg0GBgsBAw0NDQMBAwEGAQYGAQMGBAMJAgQCCwMCBAYCBAIDAgMGBgECDQIGBAIDBg8JBgYNFwQGAQYGBAYLAwYDAQ0DBgsTAwEBAQYBBAMCBAMDAgYJAwYGAQMBKAEDBA8BDQsBBgQGAQYNAw0DDQMGAwwNAyQBCwQGCQYNAg0LBAQDBAkNAw0GBgMBAgIJAQ0CIyIjIgIEFyAgAg0NAQYREQkNDQkJCg0DAQEBBAYBAQMDBgYBCQMBBgYNBgYBAwMDAQ0JAgIDBQMRBAMGAxQFAQEOCQIBCQkKCSAJFxoBDQEFAg0BCQEBDQEGEQMGAwIBAwERBQkCAg0BDAkBBg0NDQETAwkCAgQDAwEGAQUGBg0EAQYGBgkFAxIBAQMCBgQFBQYDAQIBBgMJAQMDAgYCBgQDBgYEDQEFAw0pAwQGAgMDCQ0mEQ0JCQkJCQkJAQENDQUNEQENBQECAQEBCgoVFyMiFxceDw0BBBcXCyERBgMGARwJCRsCFgUNAgEDAgMDDQkEAgIJAQQFAwMNAQ0FEgMDDQ0NBgMDEQ0BBg0DAwUEDQIGDQENBgENAQQFARQBAQEEDAgFBg8BAg0NDQ0NDQwMDAkLCgYGBAQNAwECBgYGBgYBAgYGBgYGAQYBARcTBgEDAQIEAQQBBgEGAQEKEgECBAECBAEBAQYGAgMDAwYGAQYEAQEBAgQBAQICAQEGAQkEAgIBBgECBAEGAwEGBgYGAQIECQEBBgYGBgEBBgELEQEJBQECBAQBAgQBAgEBCQUEAgEGAQMBBgMBAgUBBAECAwEBAwEJAQkJAgYCBAEKBgEJBAEEBAEGAQYGAQQBBgMDAwYBAgQBEwEGAQYBBgIEAxMDAwEBBgYGBgEGBAEGAQEBAgEBBgMBAQIGAQIGAQEGDQYMAQEBBgIEDQEDAwMNDQ0EAwkLCgkNCwoEDA0SBAYFAgYoJwQBBwUGCAMECAQDCQQNBgQJEw8lAg0EAgMSEgQSBRIDDQ0NAAQJCRcBCh4KBQoGAQoFCgENFRUVFQMCFRUPBAkCCgUPFxcMFwkFCwsBHxceHh0BAQkFBBkJCgsYDAkJCQoLGAkJCQoGDQsYCQkLCwsKBg0WCw8JDw8PDw8PDw8PDQYKCQkLAhUVFQ0VFRUVFRUVCQMCAg0BAgwBAwMDAwMNAAMFBAQNDQEBAQ0BAQEBAwABAQEBAQEGAgMBAQMEAgENAQEJAQEFEQIJDQIBAgIJAQQCCQIRAw0CAxEJAQQDDRENBQMCDQ0DAwYCBgMEAg0NAwMBAw0DAwYGAwIFDQYGEgUEBAIFBAEBAQENAQEJAQEBBAECAQIJAQENAQEMAQEGAQICBAEBAQEBAhEKCwcDABcKBQsJAgENEQUEKgYTAwMCCwILARIBAQADDAwMDAwMDAwMDAwMDAwMBAwGEAJ/AUHAvxoLfwFBwL/aAgsHvwMaGl9fWlN0MTh1bmNhdWdodF9leGNlcHRpb252AMsID19fX2N4YV9kZW1hbmdsZQDwAitfX19lbWJpbmRfcmVnaXN0ZXJfbmF0aXZlX2FuZF9idWlsdGluX3R5cGVzALICDl9fX2dldFR5cGVOYW1lAMwIB19mZmx1c2gA8QIFX2ZyZWUAPwdfbWFsbG9jAHoJZHluQ2FsbF9pALUDCmR5bkNhbGxfaWkAvwgPZHluQ2FsbF9paWRpaWlpAL4IC2R5bkNhbGxfaWlpAL0IDGR5bkNhbGxfaWlpaQC8CA1keW5DYWxsX2lpaWlpALsIDGR5bkNhbGxfamlqaQCtCAlkeW5DYWxsX3YAuggKZHluQ2FsbF92aQC5CAtkeW5DYWxsX3ZpaQC4CAxkeW5DYWxsX3ZpaWkAtwgNZHluQ2FsbF92aWlpaQC2CA5keW5DYWxsX3ZpaWlpaQC0CA9keW5DYWxsX3ZpaWlpaWkAswgTZXN0YWJsaXNoU3RhY2tTcGFjZQCwBgtnbG9iYWxDdG9ycwDdCApzdGFja0FsbG9jAPYHDHN0YWNrUmVzdG9yZQDpBglzdGFja1NhdmUAsgcJrAQBACMAC+ACsgiiB7EI0QWLBocGhASxB0y1A7AIgwayAfMB8wHzAeIF5gLmAsQFwwXCBcEF5ATjBOIE4QTDAosBiwHDArMEsgSLAYsBiwGLAegG1APUA7IBsgGyAbIBhwGICIoG+gX2BYIEgQTfB78G1waHAYcBhwGHAYcBhwHuA4cIwwbuA+0DiQaGBu0D7APeBfcF7AM9tQE32gO1ATe1AbUBN7UBN9oDNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3tgLfAd8B3wE3NzeoBz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PUHhBeAF3wXaBdkF1gXTBdIFzwXOBcwF7wHIBcAFvwXeArcFtQWzBbEFrgXcAqgFpgXcAqMFoQXTAp4FmwWYBd4CkQWPBY0FjAWJBYcFhAXvAYEF/wT9BOcBygL3BPUE8gTuBOsE6ATmBOAE3wTbBNYE7wHTBNAEzgTnAckExwTGBOcBygLDBMIEvwS+BL0EugSxBLAErASpBKYEpQSjBKEEnwScBJYElQSTBIwE9QfTA9MDggZBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBrwL9BawI7AfmB4cHrwKvAt0B8gXvBfwD9wbdAd0B3QGvCPQF8AX9A64I9QXxBf4DCoLbFLAIFgAgACABNgIAIAAgARCrASABajYCBAs2AQF/IAEQTCICBEAgACACEO8CIAAoAgAgACgCBGogASgCACACEFQaIAAgACgCBCACajYCBAsLLAEBfyAAKAIAIQIgACgCCCABIAJBH3FBDGoRBgAiAARAIAAPBUEBEBILQQALHwEBfyAAKAIEIQIgACgCCCABIAJB/wBxQcgBahEBAAvGAwEDfyACQYDAAE4EQCAAIAEgAhAVGiAADwsgACEEIAAgAmohAyAAQQNxIAFBA3FGBEADQCAAQQNxBEAgAkUEQCAEDwsgACABLAAAOgAAIABBAWohACABQQFqIQEgAkEBayECDAELCyADQXxxIgJBQGohBQNAIAAgBUwEQCAAIAEoAgA2AgAgACABKAIENgIEIAAgASgCCDYCCCAAIAEoAgw2AgwgACABKAIQNgIQIAAgASgCFDYCFCAAIAEoAhg2AhggACABKAIcNgIcIAAgASgCIDYCICAAIAEoAiQ2AiQgACABKAIoNgIoIAAgASgCLDYCLCAAIAEoAjA2AjAgACABKAI0NgI0IAAgASgCODYCOCAAIAEoAjw2AjwgAEFAayEAIAFBQGshAQwBCwsDQCAAIAJIBEAgACABKAIANgIAIABBBGohACABQQRqIQEMAQsLBSADQQRrIQIDQCAAIAJIBEAgACABLAAAOgAAIAAgASwAAToAASAAIAEsAAI6AAIgACABLAADOgADIABBBGohACABQQRqIQEMAQsLCwNAIAAgA0gEQCAAIAEsAAA6AAAgAEEBaiEAIAFBAWohAQwBCwsgBAuYAgEEfyAAIAJqIQQgAUH/AXEhAyACQcMATgRAA0AgAEEDcQRAIAAgAzoAACAAQQFqIQAMAQsLIANBCHQgA3IgA0EQdHIgA0EYdHIhASAEQXxxIgVBQGohBgNAIAAgBkwEQCAAIAE2AgAgACABNgIEIAAgATYCCCAAIAE2AgwgACABNgIQIAAgATYCFCAAIAE2AhggACABNgIcIAAgATYCICAAIAE2AiQgACABNgIoIAAgATYCLCAAIAE2AjAgACABNgI0IAAgATYCOCAAIAE2AjwgAEFAayEADAELCwNAIAAgBUgEQCAAIAE2AgAgAEEEaiEADAELCwsDQCAAIARIBEAgACADOgAAIABBAWohAAwBCwsgBCACawuDAQEGfwJ/AkAgAEGAIGoiBSgCACIEQQRqIgYoAgAiByABQQ9qQXBxIgNqIgJB9x9LBH8gA0H4H0sEfyAAIAMQ3QUFIAAQ3AUgBSgCACIEQQRqIgAoAgAiAiEBIAIgA2ohAgwCCwUgByEBIAYhAAwBCwwBCyAAIAI2AgAgASAEQQhqagsLNQEBfyAAKAIAIgIgACgCBEYEf0EABSACLQAAIAFB/wFxRgR/IAAgAkEBajYCAEEBBUEACwsLDQAgAEHwAmogARC4BAsGACAAED8LIAAgACgCBCAAKAIAIgBrIAFLBH8gACABaiwAAAVBAAsLcQEEfyMCIQIjAkEgaiQCIwIjA04EQEEgEAALIAJBCGoiAyAAKAIAIAAoAgQQXyACIAEpAgA3AwAgAkEQaiIEIAIpAgA3AgAgAyAEEOoBBH8gARBMIQEgACAAKAIAIAFqNgIAQQEFQQALIQUgAiQCIAULJwAgAEGQ0Bk2AgAgACABOgAEIAAgAjoABSAAIAM6AAYgACAEOgAHC0UBAX8gACgCACgCECECIAAgASACQf8AcUHIAWoRAQAgACwABUEBRwRAIAAoAgAoAhQhAiAAIAEgAkH/AHFByAFqEQEACwuBJQEufyMCIQQjAkHgAmokAiMCIwNOBEBB4AIQAAsgBEHAAmohBiAEQbgCaiEHIARBsAJqIQggBEGoAmohCSAEQaACaiEKIARBCGohBSAEQZgCaiELIARBkAJqIQwgBEGIAmohDSAEQYACaiEOIARB+AFqIQ8gBEHwAWohECAEQegBaiERIARB4AFqIRIgBEHYAWohEyAEQdABaiEUIARByAFqIRUgBEHAAWohFiAEQbgBaiEXIARBsAFqIRggBEGoAWohGSAEQaABaiEaIARBmAFqIRsgBEGQAWohHCAEQYgBaiEdIARBgAFqIR4gBEH4AGohHyAEQfAAaiEgIARB6ABqISEgBEHgAGohIiAEQdgAaiEjIARB0ABqISQgBEHIAGohJSAEQUBrISYgBEE4aiEnIARBMGohKCAEIQMgBEEoaiEpIARBIGohKiAEQRhqISsgBEEQaiEsIARByAJqQYT9GRAuIARB0AJqIgEgBCkCyAI3AgAgBEHYAmoiLSAAIAEQOUEBcToAACAAEExBAkkEf0EABQJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIAIgIsAABBMWsORBISEhISEhISEhMTExMTExMTExMTExMTExMTEwATExMTExMTARMTExMTExMTExMTEwMTBAUGAgcTCBMTCQoLDA0ODxAREwsgABDgAgwTCyAAEKgBDBILAkACQCAAQQEQOEEYdEEYdUHMAGsiAwRAIANBJEcNAgwBCyAAQQIQOEEYdEEYdUFQakEKSQ0ADAELIAAQ2wIMEgsgABCsBQwRCwJAAkACQAJAAkACQAJAAkAgAiwAAUHOAGsOLQMHBwcHBAcHBwcHBwcHBwcHBwcABwcBBwcHBwcHBwcHAgcHBwcHBQcHBwcHBgcLIAAgAkECajYCACAGQb/3GRAuIAEgBikCADcCACAAIAEQRAwXCyAAIAJBAmo2AgAgB0G99xkQLiABIAcpAgA3AgAgACABEHsMFgsgACACQQJqNgIAIAhBvfcZEC4gASAIKQIANwIAIAAgARBEDBULIAAgAkECajYCACAJQYf9GRAuIAEgCSkCADcCACAAIAEQRAwUCyAAIAJBAmo2AgAgCkGK/RkQLiABIAopAgA3AgAgACABEEQMEwsgACACQQJqNgIAIAEgABBAIgM2AgAgAwR/IABBjP0ZIAEQhAEFQQALDBILIAAgAkECajYCACABIAAQPCIDNgIAIAMEfyAAQYz9GSABEIQBBUEACwwRC0EADBALAkACQAJAAkACQAJAIAIsAAFB4wBrDhQABQUFBQUFBQUBAgUDBQUFBQUFBAULIAAgAkECajYCACABIAAiAxBAIgI2AgAgAgR/IAUgAxA8IgM2AgAgAwR/IABB8AJqIAEgBRDxBAVBAAsFQQALDBQLIAAgAkECajYCACABIAAiAxA8IgI2AgAgAgR/An8gAEEIaiICEEkhBgJAA0AgAEHFABA1DQEgBSADEDwiBzYCACAHBEAgAiAFEEUMAQsLQQAMAQsgBSAAIAYQWCAAQfACaiABIAUQ9AQLBUEACwwTCyAAIAJBAmo2AgAgC0GW/RkQLiABIAspAgA3AgAgACABEEQMEgsgACACQQJqNgIAIAxBmP0ZEC4gASAMKQIANwIAIAAgARB7DBELIAAQqwUMEAtBAAwPCwJAAkACQAJAAkACQAJAAkACQAJAIAIsAAFB1gBrDiEICQkJCQkJCQkJCQAJAQkCCQkJCQkJAwkECQkJCQUGCQcJCyAAIAJBAmo2AgAgASAAEDwiAzYCACADBH8gBUEBOgAAIAAgASAtIAUQ2QIFQQALDBcLIAAgAkECajYCACABIAAiAxBAIgI2AgAgAgR/IAUgAxA8IgM2AgAgAwR/IABB8AJqIAEgBRD7BAVBAAsFQQALDBYLIAAgAkECajYCACANQYD4GRAuIAEgDSkCADcCACAAIAEQewwVCyAAIAJBAmo2AgAgASAAEDwiAzYCACADBH8gBUEAOgAAIAAgASAtIAUQ2QIFQQALDBQLIAAQvQEMEwsgACACQQJqNgIAIAEgACIDEDwiAjYCACACBH8gBSADEDwiAzYCACADBH8gACABQZr9GSAFENgCBUEACwVBAAsMEgsgACACQQJqNgIAIAEgACIDEDwiAjYCACACBH8gBSADEDwiAzYCACADBH8gAEHwAmogASAFEIgFBUEACwVBAAsMEQsgACACQQJqNgIAIA5Bnf0ZEC4gASAOKQIANwIAIAAgARBEDBALIAAgAkECajYCACAPQZ/9GRAuIAEgDykCADcCACAAIAEQRAwPC0EADA4LAkACQAJAAkAgAiwAAUHPAGsOIwEDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAMCAwsgACACQQJqNgIAIBBBov0ZEC4gASAQKQIANwIAIAAgARBEDBALIAAgAkECajYCACARQaT9GRAuIAEgESkCADcCACAAIAEQRAwPCyAAIAJBAmo2AgAgEkGn/RkQLiABIBIpAgA3AgAgACABEEQMDgtBAAwNCwJAAkAgAiwAAUHlAGsiAwRAIANBD0YEQAwCBQwDCwALIAAgAkECajYCACATQar9GRAuIAEgEykCADcCACAAIAEQRAwOCyAAIAJBAmo2AgAgFEGG+BkQLiABIBQpAgA3AgAgACABEEQMDQtBAAwMCyACLAABQewAayIDBEAgA0EMRgRAIAAgAkECajYCACABIAAiAxA8IgI2AgAgAgR/IAUgAxA8IgM2AgAgAwR/IABB8AJqQRAQNCIAIAEoAgAgBSgCABCKBSAABUEACwVBAAsMDQtBAAwMCyAAIAJBAmo2AgAgAEEIaiIDEEkhAgJAA0AgAEHFABA1DQEgASAAEKQBIgY2AgAgBgRAIAMgARBFDAELC0EADAwLIAUgACACEFggAEHwAmogBRCVBQwLCwJAAkACQAJAAkAgAiwAAUHTAGsOIgIEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEAQMECyAAIAJBAmo2AgAgFUGt/RkQLiABIBUpAgA3AgAgACABEEQMDgsgACACQQJqNgIAIBZBsP0ZEC4gASAWKQIANwIAIAAgARBEDA0LIAAgAkECajYCACAXQbP9GRAuIAEgFykCADcCACAAIAEQRAwMCyAAIAJBAmo2AgAgGEHx+BkQLiABIBgpAgA3AgAgACABEEQMCwtBAAwKCwJAAkACQAJAAkACQCACLAABQckAaw4lAQUFAwUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUABQUCBAULIAAgAkECajYCACAZQZb8GRAuIAEgGSkCADcCACAAIAEQRAwOCyAAIAJBAmo2AgAgGkG3/RkQLiABIBopAgA3AgAgACABEEQMDQsgACACQQJqNgIAIBtBgPgZEC4gASAbKQIANwIAIAAgARBEDAwLIAAgAkECajYCACAcQbr9GRAuIAEgHCkCADcCACAAIAEQRAwLCyAAIAJBAmo2AgAgAEHfABA1BEAgHUG9/RkQLiABIB0pAgA3AgAgACABEHsMCwsgASAAEDwiAzYCACADBH8gACABQb39GRDXAgVBAAsMCgtBAAwJCwJAAkACQAJAAkACQCACLAABQeEAaw4YAAUFBQEFAgUFBQUFBQUFBQUFBQMFBQAEBQsgABCqBQwNCyAAIAJBAmo2AgAgHkHA/RkQLiABIB4pAgA3AgAgACABEEQMDAsgACACQQJqNgIAIB9BlvwZEC4gASAfKQIANwIAIAAgARB7DAsLIAAgAkECajYCACAgQcP9GRAuIAEgICkCADcCACAAIAEQewwKCyAAIAJBAmo2AgAgASAAEDwiAzYCACADBH8gAEHwAmogARCaBQVBAAsMCQtBAAwICwJAAkACQAJAAkAgAiwAAUHSAGsOIQMEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAQQEAgQLIAAQvQEMCwsgACACQQJqNgIAICFBxf0ZEC4gASAhKQIANwIAIAAgARBEDAoLIAAgAkECajYCACAiQcj9GRAuIAEgIikCADcCACAAIAEQRAwJCyAAIAJBAmo2AgAgI0HK/RkQLiABICMpAgA3AgAgACABEEQMCAtBAAwHCwJAAkACQAJAAkACQAJAIAIsAAFBzABrDikCBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgEABgYDBgYEBQYLIAAgAkECajYCACAkQc39GRAuIAEgJCkCADcCACAAIAEQRAwMCyAAIAJBAmo2AgAgJUHR/RkQLiABICUpAgA3AgAgACABEEQMCwsgACACQQJqNgIAICZB0/0ZEC4gASAmKQIANwIAIAAgARBEDAoLIAAgAkECajYCACAAQd8AEDUEQCAnQdb9GRAuIAEgJykCADcCACAAIAEQewwKCyABIAAQPCIDNgIAIAMEfyAAIAFB1v0ZENcCBUEACwwJCyAAIAJBAmo2AgAgKEHR/RkQLiABICgpAgA3AgAgACABEHsMCAsgACACQQJqNgIAIAEgACIDEDwiAjYCACACBH8gBSADEDwiAzYCACADBH8gACABQdn9GSAFENgCBUEACwVBAAsMBwtBAAwGC0EAIAIsAAFB9QBHDQUaIAAgAkECajYCACABIAAiAhA8IgY2AgAgBgR/IAUgAhA8IgY2AgAgBgR/IAMgAhA8IgI2AgAgAgR/IABB8AJqQRQQNCIAIAEoAgAgBSgCACADKAIAEJwFIAAFQQALBUEACwVBAAsMBQsCQAJAAkACQAJAAkAgAiwAAUHNAGsOJwIFBQUFBQQFBQUFBQUFBQUFBQUFBQUABQUFBQUFBQUFAQUFBQUFAwULIAAgAkECajYCACABIAAiAxBAIgI2AgAgAgR/IAUgAxA8IgM2AgAgAwR/IABB8AJqIAEgBRCdBQVBAAsFQQALDAkLIAAgAkECajYCACApQdz9GRAuIAEgKSkCADcCACAAIAEQRAwICyAAIAJBAmo2AgAgKkHe/RkQLiABICopAgA3AgAgACABEEQMBwsgACACQQJqNgIAICtB4f0ZEC4gASArKQIANwIAIAAgARBEDAYLIAAgAkECajYCACAsQeT9GRAuIAEgLCkCADcCACAAIAEQRAwFC0EADAQLAkACQAJAAkACQAJAAkACQCACLAABQdAAaw4rBgcHBwcHBwcHBwUHBwcHBwcHBwAHBwcHBwcHBwcHBwcBBwIHAwcHBwcHBAcLIAAgAkECajYCACABIAAiAxBAIgI2AgAgAgR/IAUgAxA8IgM2AgAgAwR/IABB8AJqIAEgBRCfBQVBAAsFQQALDAoLIAAgAkECajYCACABIAAQPCIDNgIAIAMEfyAAIAEQ6wIFQQALDAkLIAAQvQEMCAsgACACQQJqNgIAIAEgABBAIgM2AgAgAwR/IABB6P0ZIAEQhAEFQQALDAcLIAAgAkECajYCACABIAAQPCIDNgIAIAMEfyAAQej9GSABEIQBBUEACwwGCyAAIAJBAmo2AgACQAJAIABBABA4QRh0QRh1QdQAayIDBEAgA0ESRgRADAIFDAMLAAsgASAAEKgBIgM2AgAgAwR/IABB8AJqIAEQogUFQQALDAcLIAEgABDbAiIDNgIAIAMEfyAAIAEQ1gIFQQALDAYLQQAMBQsgACACQQJqNgIAIABBCGoiAxBJIQICQANAIABBxQAQNQ0BIAEgABCmASIGNgIAIAYEQCADIAEQRQwBCwtBAAwFCyAFIAAgAhBYIAEgAEHwAmogBRClBTYCACAAIAEQ1gIMBAtBAAwDCwJAAkACQAJAAkACQCACLAABQeUAaw4TAAUFBQEFBQIFBQUFBQMFBQUFBAULIAAgAkECajYCACABIAAQPCIDNgIAIAMEfyAAQfH9GSABEIQBBUEACwwHCyAAIAJBAmo2AgAgASAAEEAiAzYCACADBH8gAEHx/RkgARCEAQVBAAsMBgsgACACQQJqNgIAIAEgACIDEEAiAjYCACACBH8CfyAAQQhqIgIQSSEGAkADQCAAQcUAEDUNASAFIAMQpAEiBzYCACAHBEAgAiAFEEUMAQsLQQAMAQsgBSAAIAYQWCAAQfACaiABIAUQpwULBUEACwwFCyAAIAJBAmo2AgAgAEH6/RkQNgwECyAAIAJBAmo2AgAgASAAEDwiAzYCACADBH8gAEHwAmogARCpBQVBAAsMAwtBAAwCCyAAEL0BDAELQQALCyEuIAQkAiAuCwYAQQgQCgsjAQJ/IAAoAgAiASECIAEEQCAAIAI2AgQgACgCCBogARA/CwsRACAARQRADwsgAEF4ahCzAQuhDwEHfyMCIQUjAkEgaiQCIwIjA04EQEEgEAALIAVBCGohAyAFIgFBEGoiAkEANgIAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABBABA4IgRBGHRBGHVBwQBrDjoZIx8XIxggIyMjACMaIx4cIx0hGyIAIyMjIyMjIyMjIwUDBBITERQGCQojCwwPECMjAAcIFgECDQ4VIwsgBEH/AXFB8gBGIgQhAQJAAkAgAEECQQEgBBsgASAAIAEQOEH/AXFB1gBGGyIBIAAgARA4Qf8BcUHLAEZqIgEQOEEYdEEYdUHEAGsOAwAjASMLAkAgACABQQFqEDhBGHRBGHVBzwBrDioAIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwAjIyMjIyMjAAAjCwsgAiAAEPgBIgE2AgAMIwsgACAAKAIAQQFqNgIAIABB66EaEDYMJAsgACAAKAIAQQFqNgIAIABB8AJqELUEDCMLIAAgACgCAEEBajYCACAAQfChGhA2DCILIAAgACgCAEEBajYCACAAQfWhGhA2DCELIAAgACgCAEEBajYCACAAQfqhGhA2DCALIAAgACgCAEEBajYCACAAQYaiGhA2DB8LIAAgACgCAEEBajYCACAAQZSiGhA2DB4LIAAgACgCAEEBajYCACAAQZqiGhA2DB0LIAAgACgCAEEBajYCACAAQamiGhA2DBwLIAAgACgCAEEBajYCACAAQa2iGhA2DBsLIAAgACgCAEEBajYCACAAQbqiGhA2DBoLIAAgACgCAEEBajYCACAAQb+iGhA2DBkLIAAgACgCAEEBajYCACAAQZfzGRA2DBgLIAAgACgCAEEBajYCACAAQfACahC2BAwXCyAAIAAoAgBBAWo2AgAgAEGh8xkQNgwWCyAAIAAoAgBBAWo2AgAgAEGq8xkQNgwVCyAAIAAoAgBBAWo2AgAgAEHNohoQNgwUCyAAIAAoAgBBAWo2AgAgAEHwAmoQtwQMEwsgACAAKAIAQQFqNgIAIABBvPMZEDYMEgsgACAAKAIAQQFqNgIAIABByPMZEDYMEQsgACAAKAIAQQFqNgIAIABB0/MZEDYMEAsgACAAKAIAQQFqNgIAIAMgABDCASADEFkEf0EABSAAIAMQ7AILDA8LAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAQQEQOEEYdEEYdUHPAGsOKgwNDQ0NCQ0NDQ0NDQ0NDQ0NDQYNBwABAg0DBA0NDQ0IDAsNDQUJDQoMDA0LIAAgACgCAEECajYCACAAQdfzGRA2DBsLIAAgACgCAEECajYCACAAQeHzGRA2DBoLIAAgACgCAEECajYCACAAQezzGRA2DBkLIAAgACgCAEECajYCACAAQfbzGRA2DBgLIAAgACgCAEECajYCACAAQYD0GRA2DBcLIAAgACgCAEECajYCACAAQYn0GRA2DBYLIAAgACgCAEECajYCACAAQZL0GRA2DBULIAAgACgCAEECajYCACAAQZf0GRA2DBQLIAAgACgCAEECajYCACAAQab0GRA2DBMLIAIgABD2ASIBNgIADBALIAIgABDpBSIBNgIADA8LIAAgACgCAEECajYCACADIAAQQCIBNgIAQQAgAUUNEBogAiAAIAMQ6wI2AgAMDwsgAiAAEPgBIgE2AgAMDQtBAAwOCyACIAAQ+AEiATYCAAwLCyACIAAQ6AUiATYCAAwKCyACIAAQ5wUiATYCAAwJCwJAAkAgAEEBEDhBGHRBGHVB5QBrDhEAAQEBAQEBAQEBAQEBAQABAAELIAIgABDqAiIBNgIADAkLIAIgACIBEKgBIgQ2AgAgBAR/IAAsAOgCRQ0KIABBABA4Qf8BcUHJAEcNCiADIAFBABBzIgE2AgBBACABRQ0LGiACIAAgAiADEHI2AgAMCgVBAAsMCgsgACAAKAIAQQFqNgIAIAMgABBAIgE2AgBBACABRQ0JGiACIABB8AJqIAMQ0AU2AgAMCAsgACAAKAIAQQFqNgIAIAMgABBAIgQ2AgBBACAERQ0IGiABQQA2AgAgAiAAIAMgARDpAjYCAAwHCyAAIAAoAgBBAWo2AgAgAyAAEEAiBDYCAEEAIARFDQcaIAFBATYCACACIAAgAyABEOkCNgIADAYLIAAgACgCAEEBajYCACADIAAQQCIBNgIAQQAgAUUNBhogAiAAQfACaiADENUFNgIADAULIAAgACgCAEEBajYCACADIAAQQCIBNgIAQQAgAUUNBRogAiAAQfACaiADENgFNgIADAQLIABBARA4QRh0QRh1IgRBACAEQfQARxtFDQEgAyAAIgQQwQEiBjYCACAGBH8gACwA6AIEfyAAQQAQOEH/AXFByQBGBH8gASAEQQAQcyIENgIAQQAgBEUNBxogAiAAIAMgARByNgIADAYFIAYLBSAGCwVBAAsMBAsgAiAAEPcBIgE2AgAMAQsgAiAAEOoCIgE2AgALIAENAEEADAELIABBlAFqIAIQRSACKAIACyEHIAUkAiAHCwYAQQkQLAsVACAAQQEgABsQeiIABH8gAAVBAAsLpAEBBn8jAiEDIwJBIGokAiMCIwNOBEBBIBAACyADIQJB/////wcgACgCBCAAKAIAa0EBaiIESQRAEAIFIAIgBCAAKAIIIAAoAgAiBWsiBkEBdCIHIAcgBEkbQf////8HIAZB/////wNJGyAAKAIEIAVrIABBCGoQnQIgAigCCCABLAAAOgAAIAIgAigCCEEBajYCCCAAIAIQnAIgAhCbAiADJAILC2MBBn8jAiECIwJBEGokAiMCIwNOBEBBEBAACyACIQQgAkEEaiIFIAAiAxA8IgY2AgAgBgR/IAQgAxA8IgM2AgAgAwR/IABB8AJqIAUgASAEEO0EBUEACwVBAAshByACJAIgBws/AQF/IAAoAgQiAiAAKAIIRgRAIAAgABBJQQF0EOYFIAAoAgQhAgsgASgCACEBIAAgAkEEajYCBCACIAE2AgALOAECfyAAKAIIIgJBBGoiAyAAKAIESwR/QQAFIAEgAiAAKAIAaigAABDBCDYCACAAIAM2AghBAQsLDQAgACgCACABKAIASQsrAQF/IABBARDvAiAAKAIAIQIgACAAKAIEIgBBAWo2AgQgACACaiABOgAACxAAIAAoAgQgACgCAGtBAnULQgEBfyMCIQIjAkEQaiQCIwIjA04EQEEQEAALIAIgATYCACAAQQhqIAIQ1gEhASACJAJBACABQRRqIABBDGogAUYbCxsAIAIEfyAAKAIEIAEoAgQQhQZFBSAAIAFGCwsNACAAKAIEIAAoAgBrC68BAQN/IAMgAigCACIEQQN2aiIFIAUtAACtNwAAIAMgBEEBaiIFQQN2aiIGIAYtAACtQQRBBUEGIABBgYDAAEkbIABBgYAESRsiBkF8aq0gBUEHca2GhDcAACADIARBA2oiBEEDdmoiBSAFLQAArSAAQX9qrSAEQQdxrYaENwAAIAMgBCAGQQJ0aiIAQQN2aiIDIAMtAACtIAGsIABBB3GthoQ3AAAgAiAAQQFqNgIAC3EBAX8gASABKAIAIgNBAWo2AgAgAiADaiAAQRh2OgAAIAEgASgCACIDQQFqNgIAIAIgA2ogAEEQdjoAACABIAEoAgAiA0EBajYCACACIANqIABBCHY6AAAgASABKAIAIgFBAWo2AgAgASACaiAAOgAAC0EAIAAgAWogAkEYdjoAACAAIAFBAWpqIAJBEHY6AAAgACABQQJqaiACQQh2OgAAIAAgAUEDamogAjoAACABQQRqCxgAIAAoAgBBIHFFBEAgASACIAAQ9QIaCwuRAQEDfyMCIQYjAkGAAmokAiMCIwNOBEBBgAIQAAsgBiEFIARBgMAEcUUgAiADSnEEQCAFIAFBGHRBGHUgAiADayIBQYACIAFBgAJJGxAzGiABQf8BSwRAAn8gAiADayEHA0AgACAFQYACEFAgAUGAfmoiAUH/AUsNAAsgBwtB/wFxIQELIAAgBSABEFALIAYkAgsXACAAKQAAQoCAgOj7tI2PvX9+QjCIpws5AQF/IAEgASgCACIDQQFqNgIAIAIgA2ogAEEIdjoAACABIAEoAgAiAUEBajYCACABIAJqIAA6AAALYgECfyABIABIIAAgASACakhxBEACfyAAIQQgASACaiEBIAAgAmohAANAIAJBAEoEQCACQQFrIQIgAEEBayIAIAFBAWsiASwAADoAAAwBCwsgBAshAAUgACABIAIQMhoLIAALOAECfyAAKAIIIgJBAmoiAyAAKAIESwR/QQAFIAEgAiAAKAIAai4AABDCCDsBACAAIAM2AghBAQsLFwAgACABNgIAIAAgAjYCBCAAQQA2AggLIQAgACABaiACQQh2OgAAIAAgAUEBamogAjoAACABQQJqCy4AIAAgASABQQhqIgAoAgAgAkECdGogACgCBBDhAiAAIAAoAgAgAkECdGo2AgQLDQAgACgCACAAKAIERgttAQF/IAEoAgAhAyACBEAgAUHuABA1GgsCQAJAIAEQTEUNACABKAIAIgIsAABBUGpBCk8NAANAAkAgARBMRQ0AIAIsAABBUGpBCk8NACABIAJBAWoiAjYCAAwBCwsgACADIAIQXwwBCyAAEGsLCwoAIAAoAiBBAEcLUQEDfyMCIQIjAkEQaiQCIwIjA04EQEEQEAALIAIiAyAAQQEQWiACEFkEf0EABSAAQcUAEDUEfyAAQfAC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AiMDTgRAQRAQAAsgBCICQQJqIgNBADoAACAAIAMQagR/An8CQAJAAkACQCADLAAAIgNBfWsOAwACAQMLIAJBADsBACAAIAIQVQR/IAEgAi8BADYCAEEBBUEACwwDCyACQQA6AAAgACACEGoEfyABIAItAABB/QFqNgIAQQEFQQALDAILIAJBADoAACAAIAIQagR/IAEgAi0AAEH6A2o2AgBBAQVBAAsMAQsgASADQf8BcTYCAEEBCwVBAAshBSAEJAIgBQvIBQEGfyMCIQQjAkEgaiQCIwIjA04EQEEgEAALIAQhAwJ/IAEgABBHIQcgAiABEEchBSAHCwR/An8gBQRAIAMgACkCADcCACADIAApAgg3AgggAyAAKQIQNwIQIAMgACkCGDcCGCAAIAIpAgA3AgAgACACKQIINwIIIAAgAikCEDcCECAAIAIpAhg3AhggAiADKQIANwIAIAIgAykCCDcCCCACIAMpAhA3AhAgAiADKQIYNwIYQQEMAQsgAyAAKQIANwIAIAMgACkCCDcCCCADIAApAhA3AhAgAyAAKQIYNwIYIAAgASkCADcCACAAIAEpAgg3AgggACABKQIQNwIQIAAgASkCGDcCGCABIAMpAgA3AgAgASADKQIINwIIIAEgAykCEDcCECABIAMpAhg3AhggAiABEEcEfyADIAEpAgA3AgAgAyABKQIINwIIIAMgASkCEDcCECADIAEpAhg3AhggASACKQIANwIAIAEgAikCCDcCCCABIAIpAhA3AhAgASACKQIYNwIYIAIgAykCADcCACACIAMpAgg3AgggAiADKQIQNwIQIAIgAykCGDcCGEECBUEBCwsFIAUEfyADIAEpAgA3AgAgAyABKQIINwIIIAMgASkCEDcCECADIAEpAhg3AhggASACKQIANwIAIAEgAikCCDcCCCABIAIpAhA3AhAgASACKQIYNwIYIAIgAykCADcCACACIAMpAgg3AgggAiADKQIQNwIQIAIgAykCGDcCGCABIAAQRwR/IAMgACkCADcCACADIAApAgg3AgggAyAAKQIQNwIQIAMgACkCGDcCGCAAIAEpAgA3AgAgACABKQIINwIIIAAgASkCEDcCECAAIAEpAhg3AhggASADKQIANwIAIAEgAykCCDcCCCABIAMpAhA3AhAgASADKQIYNwIYQQIFQQELBUEA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aigCAEcNACADQQFqDAELIABFIANBBEtxIABBAEcgA0EGS3FyBEAgByADa0EBIAMQMxoLIAVFBEAgBEECdCABaigCACEAC0EBCyEDIARBAWoiBCAGTQ0ACyAGQX5qIQhBACEFIAEoAgggASgCACABKAIEampBCHRBA25BpANqIQBBACEEQQAhAwNAAkACQCAFIAZGIgcNACACIAVqLAAADQAgBQRAIAIgBUF/amosAAANAQtB2AkgAGsgBUECdCABaigCACIJQQh0akGvE0sNACADIAlqIQcgBEEBaiIDQQNLBEAgAyEEIAdBCHQgA0EBdmogA24iAEH4AGogACADQQRGGyEABSADIQQLIAchAwwBCyADRSAEQQNGcSAEQQNLcgRAQQEgBEEBdiADaiIAIARuIAQgAEsbQQAgAxshAyAFQX9qIQlBACEAA0AgCSAAa0ECdCABaiADNgIAIAQgAEEBaiIARw0ACwsgBSAISQR/IAVBAmpBAnQgAWooAgAgBUECdCABaigCACAFQQFqQQJ0IAFqKAIAampBCHRBA25BpANqBSAFIAZJBH8gBUECdCABaigCAEEIdAVBAAsLIQAgBwRAQQAhAwUgBUECdCABaigCACEDC0EBIQQLIAVBAWoiBSAGTQ0ACwsLCwsLCy8BAX8gACgCBCIBIAAoAghHBEAgACABNgIICyAAKAIAIgEEQCAAKAIMGiABED8LC5kBAQR/IAFBBGoiAigCACAAKAIEIAAoAgAiA2siBWshBCACIAQ2AgAgBUEASgR/IAQgAyAFEDIaIAIhAyACKAIABSACIQMgBAshAiAAKAIAIQQgACACNgIAIAMgBDYCACAAKAIEIQIgACABKAIINgIEIAEgAjYCCCAAKAIIIQIgACABKAIMNgIIIAEgAjYCDCABIAMoAgA2AgALQAAgAEEANgIMIAAgAzYCECAAIAEEfyABEEIFQQALIgM2AgAgACACIANqIgI2AgggACACNgIEIAAgASADajYCDAsfACABBEAgACABKAIAEJ4CIAAgASgCBBCeAiABED8LCycAIAEEQCAAIAEoAgAQnwIgACABKAIEEJ8CIAFBEGoQywMgARA/CwsRACAAQQhqIgAgACgCBBCfAgsfACABBEAgACABKAIAEKECIAAgASgCBBChAiABED8LC0IBA38jAiECIwJBIGok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BEAgBCACQQEQYSAAKAIMIgIoAgAoAgwhACACIAEgAEEfcUEMahEGACEAIAQQYAsgAyQCIAALTgEDfyMCIQIjAkEQaiQCIwIjA04EQEEQEAALIAIhAyAAQRBqIgQsAAAEQEEAIQAFIAMgBEEBEGEgACgCDCABEHEhACADEGALIAIkAiAAC04BA38jAiECIwJBEGokAiMCIwNOBEBBEBAACyACIQMgAEEQaiIELAAABEBBACEABSADIARBARBhIAAoAgwgARBmIQAgAxBgCyACJAIgAAtPAQN/IwIhAiMCQRBqJAIjAiMDTgRAQRAQAAsgAiEDIABBEGoiBCwAAARAQQAhAAUgAyAEQQEQYSAAKAIMIAEQpwEhACADEGALIAIkAiAACywAIABBH0ECQQJBAhA6IABByN4ZNgIAIAAgATYCCCAAQQA2AgwgAEEAOgAQC1sBA38jAiECIwJBIGokAiMCIwNOBEBBIBAACyACQQhqIgRByo4aEC4gAkEQaiIDIAQpAgA3AgAgASADEC8gAiAAKQIINwMAIAMgAikCADcCACABIAMQLyACJAILYQEBfyMCIQIjAkEQaiQCIwIjA04EQEEQEAALIABBEBA0IQAgAiABKQIANwMAIAJBCGoiASACKQIANwIAIABBNkEBQQFBARA6IABBnN4ZNgIAIAAgASkCADcCCCACJAIgAAvVAgEGfyMCIQIjAkFAayQCIwIjA04EQEHAABAACyACQThqIQMgAkEwaiEGIAJBIGohByACIQQgAkEoaiIFIAE2AgAgBSAANgIEIAFBKBBIIAAsABgEQCAAKAIMIgQEQCAEIAEQOyABQSAQSCACIABBEGoiACkCADcDGCADIAIpAhg3AgAgASADEC8gAUEgEEgFIABBEGohAAsgBkGUjhoQLiADIAYpAgA3AgAgASADEC8gAiAAKQIANwMQIAMgAikCEDcCACABIAMQLyABQSAQSCAFEMgCBSAFEMgCIAFBIBBIIAIgACkCEDcDCCADIAIpAgg3AgAgASADEC8gB0GZjhoQLiADIAcpAgA3AgAgASADEC8gACgCDARAIAFBIBBIIAQgACkCEDcDACADIAQpAgA3AgAgASADEC8gAUEgEEggACgCDCABEDsLCyABQSkQSCACJAILOQAgAEE5QQFBAUEBEDogAEHw3Rk2AgAgACADNgII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AEHCAEEBQQFBARA6IABB3NgZNgIAIAAgATYCCCAAIAI2AgwgACADNgIQC28BBH8jAiEFIwJBEGokAiMCIwNOBEBBEBAACyABIAUiBCIGQQxqIAIQugEiBygCACICBH9BAAUgBCABIAMQhQUgASAGKAIMIAcgBCgCABCMASAEKAIAIQJBAQshASAAIAI2AgAgACABOgAEIAUkAguMAQEFfyMCIQMjAkEQaiQCIwIjA04EQEEQEAALIANBDGohBCADQQhqIQUgAyEGIABBADYCACAAQQA2AgQgAEEANgIIIAIoAgAiAiABKAIAIgFrIgcEQCAAIAcQmwEgAyABNgIEIAYgAjYCACAFIAMoAgQ2AgAgBCAGKAIANgIAIAAgBSAEEP0HCyADJAILSwEBfyMCIQIjAkEQaiQCIwIjA04EQEEQEAALIABBFBA0IQAgAiABKQIANwMAIAJBCGoiASACKQIANwIAIABBACABENUCIAIkAiAACygAIABBLEEBQQFBARA6IABBsNgZNgIAIAAgATYCCCAAIAIpAgA3AgwLTgEBfyMCIQMjAkEQaiQCIwIjA04EQEEQEAALIABBFBA0IQAgASgCACEBIAMgAhAuIANBCGoiAiADKQIANwIAIAAgASACEJYFIAMkAiAAC8ICAQV/IwIhBCMCQUBrJAIjAiMDTgRAQcAAEAALIARBOGohAiAEQTBqIQMgACwAHARAIANB84EaEC4gAiADKQIANwIAIAEgAhAvCyAEQSBqIQMgBEEoaiIFQf+BGhAuIAIgBSkCADcCACABIAIQLyAALAAdBEAgA0GDghoQLiACIAMpAgA3AgAgASACEC8LIARBGGohAyAEQRBqIQUgAUEgEEggAEEIaiIGENACRQRAIANBu/cZEC4gAiADKQIANwIAIAEgAhAvIAYgARBeIAVBt/cZEC4gAiAFKQIANwIAIAEgAhAvCyAEQQhqIQUgBCEDIAAoAhAgARA7IABBFGoiABDQAkUEQCAFQbv3GRAuIAIgBSkCADcCACABIAIQLyAAIAEQXiADQbf3GRAuIAIgAykCADcCACABIAIQLwsgBCQCC0YAIABBM0EBQQFBARA6IABBhNgZNgIAIAAgASkCADcCCCAAIAI2AhAgACADKQIANwIUIAAgBEEBcToAHCAAIAVBAXE6AB0LbAEDfyMCIQIjAkEg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BEAgB0EJaiIDBH8gBSADEDAFQQALIQYgACgCkAEiAwRAIAYgAyAAKAKIAUEJahAyGiAFIAAoApABEDEgAEEANgKQAQsgACAGNgKQASAAIAc2AogBIAAgBkECajYClAEgBkEAOgABIAAoApQBQX5qQQA6AABBACEDA0AgACgClAEgACgCiAEgA2pqQQA6AAAgA0EBaiIDQQdHDQALIAAoApQBIAQoAgBBfmpqQQA6AAAgACgClAEgBCgCAEF/ampBADoAACAAKAKMASEDCyAAKAKAASIFIABB/ABqIgcoAgAgA3EiBksEQCAAQZQBaiIDKAIAIAQoAgAgBmpqIAIgASAFIAZrIgUgBSABSxsQMhoFIABBlAFqIQMLIAMoAgAgBmohBSABIAZqIAQoAgBLBEAgBSACIAEgACgChAEgBmsiBSAFIAFLGxAyGiADKAIAIAIgBCgCACAGayICaiABIAJrEDIaBSAFIAIgARAyGgsgACgCjAFBAEghBSADKAIAIgJBfmogAiAEKAIAQX5qaiwAADoAACADKAIAIgJBf2ogAiAEKAIAQX9qaiwAADoAACAAIAAoAowBQf////8HcSABQf////8HcWoiAkGAgICAeHIgAiAFGyICNgKMAQsgACAAKQNwIAGtfDcDcCACIAcoAgBNBEAgAiAAKAKUAWoiAEEANgAAIABBADsABCAAQQA6AAYLCx8BAX4gABCGAiEBIAAQhQIiACABp2tBACABIACtVBsL+AUBHH8jAiEPIwJBEGokAiMCIwNOBEBBEBAACyAPQQRqIQsgDyEQIAEoAgAiCEEBIAAoAgh0IgwgCCAMSRsiB0GAgAggB0GAgAhJGyEGIABB4ABqIQggACgCBCIJQQJJBH8gCUEBRgR/An8gAEGsKWoiCigCACIJRSAHQf//B0txBEAgCiAIQYCAIBAwNgIAIABBsClqIAhBgIAIEDA2AgAgCigCACEJCyAJBEBBACEKIABBsClqKAIADAELIAYEfyAIIAZBAnQQMCIJIRggCCAGEDAiCgVBACEJQQAhCkEACwsFQQAhCUEACyEZIABBuClqIREgAEHUKWohEiAAQagiaiEaIABBqCNqIRsgAEGoKWohHCAAQaglaiEdIABBtClqIR4gAEG8KWohEyAFRSEfA0ACQCAAIAMgBCAFEIcCRQRAIBEoAgANASAS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AiAgACgCZCABQf8AcUHIAWoRAQAgAEEANgJkIAAoAhwhASAAKAIgIAAoAqwBIAFB/wBxQcgBahEBACAAQQA2AqwBC9cBACAAQQA2ArwBIABBgICACDYCxAEgAEGAgIAINgLIASAAQYCAgAg2AswBIABBATYC0AEgAEEBNgLUASAAQQE2AtgBIABBATYC3AEgAEEANgLgASAAQQE2AuQBIABBADYC6AEgAEEBNgLsASAAQQA2AvABIABB7CZqQQA2AgAgAEHwJmpBADYCACAAQQA2AoQCIABBADYCiAIgAEEAOgCMAiAAQQA2ApABIABBADYCjAEgAEEANgKgASAAQQA2ApwBIABCADcDcCAAQgA3A3ggAEEANgKAAQuFAwEDfyAAQRo2AhggAEHYADYCHCAAQQA2AiAgAEEANgJcIABBADYCCCAAQSA2AgwgAEEANgIAIABB3CZqIgIuAQAhAyAAQQA2AjAgAEEANgIEIABBADYCNCAAQQA2AqACIABBADYCpAIgAEEANgJkIABBQGtBADYCACAAQeQmakEANgIAIABBADYCRCAAQewmakEANgIAIABB8CZqQQA2AgAgAEEANgKEAiAAQQA2AmAgAEEANgKQASAAQQA2AowBIABBADYCoAEgAEEANgKcASAAQgA3AnQgAEIANwJ8IABBwCZqIgFCADcDACABQgA3AwggAUIANwMQIAFBADYCGCACIANBQHFBEHI7AQAgAEHgJmpBADYCACAAQQA2AjwgAEEQNgJMIABBDzYCUCAAQQs2AlQgAEEENgJYIABBADYCSCAAQQA2AqwBIABBADYCsAEgACAAQdgDajYCtAMgAEG4JGpBPzYCACAAQfQmakG4yxk2AgAgAEH4JmpB4MwZNgIAQQELLAECfyAAQUBrKAIAIgEgACgCNCICIAIgAUobIAEgACgCoAJsaiAAKAKkAmsLgQYBC38gASgCqAIiAyAASQR/An8gASgCsAIhBgNAAkBBASAGRQ0CGiACBEBBAiABKAIUIgRFDQMaIAEgASgCCEEIdiICNgIIIAEgASgCECIFLQAAQRh0IAJyNgIIIAEgASgCDEF4aiICNgIMIAEgBEF/ajYCFCABIAVBAWo2AhAFIAEoAgwhAgtBICACayIEBH8gASgCCCACdgVBAAshCyAEIAFBtAJqIAtBH3EiBUECdGot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AgAgAyAEKQIINwIIIAMgBCkCEDcCECADIAQpAhg3AhggBCEFA0ACQCAFIAIpAgA3AgAgBSACKQIINwIIIAUgAikCEDcCECAFIAIpAhg3AhggACACRgRAIAAhAgwBCyADIAJBYGoiBxBHBEAgAiEFIAchAgwCCwsLIAIgAykCADcCACACIAMpAgg3AgggAiADKQIQNwIQIAIgAykCGDcCGAsgBEEgaiIFIAFHBEAgBCECIAUhBAwBCwsLIAYkAgtrACAAIAEoAgA2AgAgACABLgEEOwEEIABBADYCCCAAQQA2AgwgAEEANgIQIAAgASgCCDYCCCAAIAEoAgw2AgwgACABKAIQNgIQIAFBADYCECABQQA2AgwgAUEANgIIIABBFGogAUEUahDjAwtKAQJ/IAAoAgQiAiAAKAIIIgFHBEADQCAAIAFBYGoiATYCCCABEPoBIAAoAggiASACRw0ACwsgACgCACIBBEAgACgCDBogARA/Cwu8AQEFfyABQQRqIQMgACgCACIGIAAoAgQiAkYEfyAAIQQgAygCACECIAMFIAMoAgAhBQNAIAVBYGogAkFgaiIEEJsIIAMgAygCAEFgaiICNgIAIAQgBkcEQCACIQUgBCECDAELCyAAIQQgACgCACEGIAMLIQUgBCACNgIAIAUgBjYCACAAKAIEIQIgACABKAIINgIEIAEgAjYCCCAAKAIIIQIgACABKAIMNgIIIAEgAjYCDCABIAUoAgA2AgALRwEBfyAAKAIIIQIDQCACQgA3AgAgAkIANwIIIAJCADcCECACQgA3AhggAhDiAyAAIAAoAghBIGoiAjYCCCABQX9qIgENAAsLsgEBAn8jAiEAIwJBEGokAiMCIwNOBEBBEBAAC0GguhlBuLoZQci6GUEAQajqGUEFQavqGUEAQavqGUEAQajoGUGt6hlB1QAQIBCaByAAQdcANgIAIABBADYCBCAAQQhqIgEgACkCADcCACABEIsHIABBAzYCACAAQQA2AgQgASAAKQIANwIAIAEQgQcgAEEGNgIAIABBADYCBCABIAApAgA3AgAgARDzBhDdBhDHBiAAJAILRwEBfyAAKAIEIQIDQCACQgA3AgAgAkIANwIIIAJCADcCECACQgA3AhggAhDiAyAAIAAoAgRBIGoiAjYCBCABQX9qIgENAAsLsgEBBn8jAiEEIwJBIGokAiMCIwNOBEBBIBAACyAEIQIgACgCCCAAKAIEIgNrQQV1IAFJBEBB////PyABIAMgACgCAGtBBXVqIgVJBEAQAgUgAiAFIAAoAgggACgCACIGayIHQQR1IgMgAyAFSRtB////PyAHQQV1Qf///x9JGyAAKAIEIAZrQQV1IABBCGoQrQIgAiABEJ4IIAAgAhCdCCACEJwICwUgACABEKAICyAEJAILQgEDfyMCIQIjAkEgaiQCIwIjA04EQEEgEAALIAIgATYCACACQQhqIgMgACABIAIQmQggAygCAEEUaiEEIAIkAiAEC0YBAn8gAEEANgIAIABBADYCBCAAQQA2AgggASgCBCABKAIAayIDQQV1IQIgAwRAIAAgAhCXCCAAIAEoAgAgASgCBBCWCAsLUQEBfyAAQQA2AgAgAEEANgIEIABBADYCCCABBEAgACABEJsBIAAoAgQhAwNAIAMgAiwAADoAACAAIAAoAgRBAWoiAzYCBCABQX9qIgENAAsLCzUBAX8gAEEANgIAIABBADYCBCAAQQA2AgggAiABayIDBEAgACADEJsBIAAgASACIAMQ2QELC1cBAn8gAQRAIAAoAgAhAyAAKAIEIQQDQCABKAIQIgAgA0kEfyABQQRqBQJ/IAMgAE8EQCABQQRqIAEoAhQgBEkNARoLIAEhAiABCwsoAgAiAQ0ACwsgAgsiAQF/IAAoAgQiAkEAIAFBAnQQMxogACABQQJ0IAJqNgIEC2EBAX9B/////wMgAUkEQBACCyABQf////8DSwRAQQgQBSIAQZbvGRBvIABBqOcZNgIAIABB0McZQc4AEAQFIAAgAUECdBBCIgI2AgQgACACNgIAIAAgAUECdCACajYCCAsLIgEBfyAAKAIIIgJBACABQQF0EDMaIAAgAUEBdCACajYCCAsiAQF/IAAoAgQiAkEAIAFBAXQQMxogACABQQF0IAJqNgIEC7ABAQV/IwIhBCMCQSBqJAIjAiMDTgRAQSAQAAsgBCECIAAoAgggACgCBCIDa0EBdSABSQRAQf////8HIAEgAyAAKAIAa0EBdWoiBUkEQBACBSACIAUgACgCCCAAKAIAIgNrIgYgBiAFSRtB/////wcgBkEBdUH/////A0kbIAAoAgQgA2tBAXUgAEEIahC8AiACIAEQqQggACACELkCIAIQuAILBSAA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AAUA0QAFAPEABgAxAQYAcQEHAPEBCADxAgkA8QQKAPEICwDxEAwA8SANAPFAGABBpg4L2oMDAgAAAAABAAADAAAAAAIAAAQAAAAAAwAABQAAAAADAAAGAAAAAAMAAAcAAAAAAwAACAAAAAADAAAJAAAAAAABAAIAAAAAAQEAAwAAAAACAQAEAAAAAAMBAAUAAAAAAwEABgAAAAADAQAHAAAAAAMBAAgAAAAAAwEACQAAAAAAAgACAAAAAAECAAMAAAAAAgIABAAAAAADAgAFAAAAAAMCAAYAAAAAAwIABwAAAAADAgAIAAAAAAMCAAkAAAAAAAMAAgAAAAABAwADAAAAAAIDAAQAAAAAAwMABQAAAAADAwAGAAAAAAMDAAcAAAAAAwMACAAAAAADAwAJAAAAAAAEAAIAAAAAAQQAAwAAAAACBAAEAAAAAAMEAAUAAAAAAwQABgAAAAADBAAHAAAAAAMEAAgAAAAAAwQACQAAAAAABQACAAAAAAEFAAMAAAAAAgUABAAAAAADBQAFAAAAAAMFAAYAAAAAAwUABwAAAAADBQAIAAAAAAMFAAkAAQAAAAYAAgABAAABBgADAAEAAAIGAAQAAQAAAwYABQABAAADBgAGAAEAAAMGAAcAAQAAAwYACAABAAADBgAJAAEAAAAIAAIAAQAAAQgAAwABAAACCAAEAAEAAAMIAAUAAQAAAwgABgABAAADCAAHAAEAAAMIAAgAAQAAAwgACQAAAQADAAAKAAABAAMAAAwAAAIAAwAADgAAAgADAAASAAADAAMAABYAAAMAAwAAHgAABAADAAAmAAAEAAMAADYAAAEAAwEACgAAAQADAQAMAAACAAMBAA4AAAIAAwEAEgAAAwADAQAWAAADAAMBAB4AAAQAAwEAJgAABAADAQA2AAABAAMCAAoAAAEAAwIADAAAAgADAgAOAAACAAMCABIAAAMAAwIAFgAAAwADAgAeAAAEAAMCACYAAAQAAwIANgAAAQADAwAKAAABAAMDAAwAAAIAAwMADgAAAgADAwASAAADAAMDABYAAAMAAwMAHgAABAADAwAmAAAEAAMDADYAAAEAAwQACgAAAQADBAAMAAACAAMEAA4AAAIAAwQAEgAAAwADBAAWAAADAAMEAB4AAAQAAwQAJgAABAADBAA2AAABAAMFAAoAAAEAAwUADAAAAgADBQAOAAACAAMFABIAAAMAAwUAFgAAAwADBQAeAAAEAAMFACYAAAQAAwUANgABAQADBgAKAAEBAAMGAAwAAQIAAwYADgABAgADBgASAAEDAAMGABYAAQMAAwYAHgABBAADBgAmAAEEAAMGADYAAQEAAwgACgABAQADCAAMAAECAAMIAA4AAQIAAwgAEgABAwADCAAWAAEDAAMIAB4AAQQAAwgAJgABBAADCAA2AAAA/wAAAAIAAAD/AQAAAwAAAP8CAAAEAAAA/wMAAAUAAAD/AwAABgAAAP8DAAAHAAAA/wMAAAgAAAD/AwAACQAAAP8AAQACAAAA/wEBAAMAAAD/AgEABAAAAP8DAQAFAAAA/wMBAAYAAAD/AwEABwAAAP8DAQAIAAAA/wMBAAkAAAD/AAIAAgAAAP8BAgADAAAA/wICAAQAAAD/AwIABQAAAP8DAgAGAAAA/wMCAAcAAAD/AwIACAAAAP8DAgAJAAAA/wADAAIAAAD/AQMAAwAAAP8CAwAEAAAA/wMDAAUAAAD/AwMABgAAAP8DAwAHAAAA/wMDAAgAAAD/AwMACQAAAP8ABAACAAAA/wEEAAMAAAD/AgQABAAAAP8DBAAFAAAA/wMEAAYAAAD/AwQABwAAAP8DBAAIAAAA/wMEAAkAAAD/AAUAAgAAAP8BBQADAAAA/wIFAAQAAAD/AwUABQAAAP8DBQAGAAAA/wMFAAcAAAD/AwUACAAAAP8DBQAJAAEA/wAGAAIAAQD/AQYAAwABAP8CBgAEAAEA/wMGAAUAAQD/AwYABgABAP8DBgAHAAEA/wMGAAgAAQD/AwYACQABAP8ACAACAAEA/wEIAAMAAQD/AggABAABAP8DCAAFAAEA/wMIAAYAAQD/AwgABwABAP8DCAAIAAEA/wMIAAkAAAH/AwAACgAAAf8DAAAMAAAC/wMAAA4AAAL/AwAAEgAAA/8DAAAWAAAD/wMAAB4AAAT/AwAAJgAABP8DAAA2AAAB/wMBAAoAAAH/AwEADAAAAv8DAQAOAAAC/wMBABIAAAP/AwEAFgAAA/8DAQAeAAAE/wMBACYAAAT/AwEANgAAAf8DAgAKAAAB/wMCAAwAAAL/AwIADgAAAv8DAgASAAAD/wMCABYAAAP/AwIAHgAABP8DAgAmAAAE/wMCADYAAAH/AwMACgAAAf8DAwAMAAAC/wMDAA4A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MgBGAQQJ/wMyAEYCBAr/AzIARgQEGP8DMgBGCAUF/wNCAEYABQX/A0IAZgAFBv8DQgCGAAUH/wNCAMYABQj/A0IARgEFCf8DQgBGAgUK/wNCAEYEBRj/A0IARggFBf8DYgBGAAUF/wNiAGYABQb/A2IAhgAFB/8DYgDGAAUI/wNiAEYBBQn/A2IARgIFCv8DYgBGBAUY/wNiAEYIBgH/A4IACgAGAf8DggAMAAYC/wOCAA4ABgL/A4IAEgAGA/8DggAWAAYD/wOCAB4ABgT/A4IAJgAGBP8DggA2AAcB/wPCAAoABwH/A8IADAAHAv8DwgAOAAcC/wPCABIABwP/A8IAFgAHA/8DwgAeAAcE/wPCACYABwT/A8IANgAIAf8DQgEKAAgB/wNCAQwACAL/A0IBDgAIAv8DQgESAAgD/wNCARYACAP/A0IBHgAIBP8DQgEmAAgE/wNCATYACQH/A0ICCgAJAf8DQgIMAAkC/wNCAg4ACQL/A0ICEgAJA/8DQgIWAAkD/wNCAh4ACQT/A0ICJgAJBP8DQgI2AAoB/wNCBAoACgH/A0IEDAAKAv8DQgQOAAoC/wNCBBIACgP/A0IEFgAKA/8DQgQeAAoE/wNCBCYACgT/A0IENgAMAf8DQggKAAwB/wNCCAwADAL/A0IIDgAMAv8DQggSAAwD/wNCCBYADAP/A0IIHgAMBP8DQggmAAwE/wNCCDYADgH/A0IYCgAOAf8DQhgMAA4C/wNCGA4ADgL/A0IYEgAOA/8DQhgWAA4D/wNCGB4ADgT/A0IYJgAOBP8DQhg2ABgB/wNCWAoAGAH/A0JYDAAYAv8DQlgOABgC/wNCWBIAGAP/A0JYFgAYA/8DQlgeABgE/wNCWCYAGAT/A0JYNgAGBf8DggBGAAYF/wOCAGYABgb/A4IAhgAGB/8DggDGAAYI/wOCAEYBBgn/A4IARgIGCv8DggBGBAYY/wOCAEYIBwX/A8IARgAHBf8DwgBmAAcG/wPCAIYABwf/A8IAxgAHCP8DwgBGAQcJ/wPCAEYCBwr/A8IARgQHGP8DwgBGCAgF/wNCAUYACAX/A0IBZgAIBv8DQgGGAAgH/wNCAcYACAj/A0IBRgEICf8DQgFGAggK/wNCAUYECBj/A0IBRggJBf8DQgJGAAkF/wNCAmYACQb/A0IChgAJB/8DQgLGAAkI/wNCAkYBCQn/A0ICRgIJCv8DQgJGBAkY/wNCAkYICgX/A0IERgAKBf8DQgRmAAoG/wNCBIYACgf/A0IExgAKCP8DQgRGAQoJ/wNCBEYCCgr/A0IERgQKGP8DQgRGCAwF/wNCCEYADAX/A0IIZgAMBv8DQgiGAAwH/wNCCMYADAj/A0IIRgEMCf8DQghGAgwK/wNCCEYEDBj/A0IIRggOBf8DQhhGAA4F/wNCGGYADgb/A0IYhgAOB/8DQhjGAA4I/wNCGEYBDgn/A0IYRgIOCv8DQhhGBA4Y/wNCGEYIGAX/A0JYRgAYBf8DQlhmABgG/wNCWIYAGAf/A0JYxgAYCP8DQlhGARgJ/wNCWEYCGAr/A0JYRgQYGP8DQlhGCAAAAAAEAAAADAAAABwAAABJAAAAfgAAAOQAAACoAQAAAgICAwICAgQCAgIDAgICBAAEAwIABAMBAAQDAgAEAwUAAZIBtAHUAfQBFgI2AlYCdgKWArYC1gL2AhYDNgNWA3YDmAO4A9gD+AMYBDgEWAR4BJgEuATYBPgEGAU4BVgFeAWYBbgF2AX4BQAAAAAAAHRpbWVkb3dubGlmZWxlZnRiYWNrY29kZWRhdGFzaG93b25seXNpdGVjaXR5b3Blbmp1c3RsaWtlZnJlZXdvcmt0ZXh0eWVhcm92ZXJib2R5bG92ZWZvcm1ib29rcGxheWxpdmVsaW5laGVscGhvbWVzaWRlbW9yZXdvcmRsb25ndGhlbXZpZXdmaW5kcGFnZWRheXNmdWxsaGVhZHRlcm1lYWNoYXJlYWZyb210cnVlbWFya2FibGV1cG9uaGlnaGRhdGVsYW5kbmV3c2V2ZW5uZXh0Y2FzZWJvdGhwb3N0dXNlZG1hZGVoYW5kaGVyZXdoYXRuYW1lTGlua2Jsb2dzaXplYmFzZWhlbGRtYWtlbWFpbnVzZXInKSAraG9sZGVuZHN3aXRoTmV3c3JlYWR3ZXJlc2lnbnRha2VoYXZlZ2FtZXNlZW5jYWxscGF0aHdlbGxwbHVzbWVudWZpbG1wYXJ0am9pbnRoaXNsaXN0Z29vZG5lZWR3YXlzd2VzdGpvYnNtaW5kYWxzb2xvZ29yaWNodXNlc2xhc3R0ZWFtYXJteWZvb2RraW5nd2lsbGVhc3R3YXJkYmVzdGZpcmVQYWdla25vd2F3YXkucG5nbW92ZXRoYW5sb2FkZ2l2ZXNlbGZub3RlbXVjaGZlZWRtYW55cm9ja2ljb25vbmNlbG9va2hpZGVkaWVkSG9tZXJ1bGVob3N0YWpheGluZm9jbHVibGF3c2xlc3NoYWxmc29tZXN1Y2h6b25lMTAwJW9uZXNjYXJlVGltZXJhY2VibHVlZm91cndlZWtmYWNlaG9wZWdhdmVoYXJkbG9zdHdoZW5wYXJra2VwdHBhc3NzaGlwcm9vbUhUTUxwbGFuVHlwZWRvbmVzYXZla2VlcGZsYWdsaW5rc29sZGZpdmV0b29rcmF0ZXRvd25qdW1wdGh1c2RhcmtjYXJkZmlsZWZlYXJzdGF5a2lsbHRoYXRmYWxsYXV0b2V2ZXIuY29tdGFsa3Nob3B2b3RlZGVlcG1vZGVyZXN0dHVybmJvcm5iYW5kZmVsbHJvc2V1cmwoc2tpbnJvbGVjb21lYWN0c2FnZXNtZWV0Z29sZC5qcGdpdGVtdmFyeWZlbHR0aGVuc2VuZGRyb3BWaWV3Y29weTEuMCI8L2E+c3RvcGVsc2VsaWVzdG91cnBhY2suZ2lmcGFzdGNzcz9ncmF5bWVhbiZndDtyaWRlc2hvdGxhdGVzYWlkcm9hZHZhciBmZWVsam9obnJpY2twb3J0ZmFzdCdVQS1kZWFkPC9iPnBvb3JiaWxsdHlwZVUuUy53b29kbXVzdDJweDtJbmZvcmFua3dpZGV3YW50d2FsbGxlYWRbMF07cGF1bHdhdmVzdXJlJCgnI3dhaXRtYXNzYXJtc2dvZXNnYWlubGFuZ3BhaWQhLS0gbG9ja3VuaXRyb290d2Fsa2Zpcm13aWZleG1sInNvbmd0ZXN0MjBweGtpbmRyb3dzdG9vbGZvbnRtYWlsc2FmZXN0YXJtYXBzY29yZXJhaW5mbG93YmFieXNwYW5zYXlzNHB4OzZweDthcnRzZm9vdHJlYWx3aWtpaGVhdHN0ZXB0cmlwb3JnL2xha2V3ZWFrdG9sZEZvcm1jYXN0ZmFuc2Jhbmt2ZXJ5cnVuc2p1bHl0YXNrMXB4O2dvYWxncmV3c2xvd2VkZ2VpZD0ic2V0czVweDsuanM/NDBweGlmIChzb29uc2VhdG5vbmV0dWJlemVyb3NlbnRyZWVkZmFjdGludG9naWZ0aGFybTE4cHhjYW1laGlsbGJvbGR6b29tdm9pZGVhc3lyaW5nZmlsbHBlYWtpbml0Y29zdDNweDtqYWNrdGFnc2JpdHNyb2xsZWRpdGtuZXduZWFyPCEtLWdyb3dKU09OZHV0eU5hbWVzYWxleW91IGxvdHNwYWluamF6emNvbGRleWVzZmlzaHd3dy5yaXNrdGFic3ByZXYxMHB4cmlzZTI1cHhCbHVlZGluZzMwMCxiYWxsZm9yZGVhcm53aWxkYm94LmZhaXJsYWNrdmVyc3BhaXJqdW5ldGVjaGlmKCFwaWNrZXZpbCQoIiN3YXJtbG9yZGRvZXNwdWxsLDAwMGlkZWFkcmF3aHVnZXNwb3RmdW5kYnVybmhyZWZjZWxsa2V5c3RpY2tob3VybG9zc2Z1ZWwxMnB4c3VpdGRlYWxSU1MiYWdlZGdyZXlHRVQiZWFzZWFpbXNnaXJsYWlkczhweDtuYXZ5Z3JpZHRpcHMjOTk5d2Fyc2xhZHljYXJzKTsgfXBocD9oZWxsdGFsbHdob216aDrlKi8NCiAxMDBoYWxsLgoKQTdweDtwdXNoY2hhdDBweDtjcmV3Ki88L2hhc2g3NXB4ZmxhdHJhcmUgJiYgdGVsbGNhbXBvbnRvbGFpZG1pc3Nza2lwdGVudGZpbmVtYWxlZ2V0c3Bsb3Q0MDAsDQoNCmNvb2xmZWV0LnBocDxicj5lcmljbW9zdGd1aWRiZWxsZGVzY2hhaXJtYXRoYXRvbS9pbWcmIzgybHVja2NlbnQwMDA7dGlueWdvbmVodG1sc2VsbGRydWdGUkVFbm9kZW5pY2s/aWQ9bG9zZW51bGx2YXN0d2luZFJTUyB3ZWFycmVseWJlZW5zYW1lZHVrZW5hc2FjYXBld2lzaGd1bGZUMjM6aGl0c3Nsb3RnYXRla2lja2JsdXJ0aGV5MTVweCcnKTspOyI+bXNpZXdpbnNiaXJkc29ydGJldGFzZWVrVDE4Om9yZHN0cmVlbWFsbDYwcHhmYXJt4oCZc2JveXNbMF0uJyk7IlBPU1RiZWFya2lkcyk7fX1tYXJ5dGVuZChVSylxdWFkemg65i1zaXotLS0tcHJvcCcpOw1saWZ0VDE5OnZpY2VhbmR5ZGVidD5SU1Nwb29sbmVja2Jsb3dUMTY6ZG9vcmV2YWxUMTc6bGV0c2ZhaWxvcmFscG9sbG5vdmFjb2xzZ2VuZSDigJRzb2Z0cm9tZXRpbGxyb3NzPGgzPnBvdXJmYWRlcGluazx0cj5taW5pKXwhKG1pbmV6aDroYmFyc2hlYXIwMCk7bWlsayAtLT5pcm9uZnJlZGRpc2t3ZW50c29pbHB1dHMvanMvaG9seVQyMjpJU0JOVDIwOmFkYW1zZWVzPGgyPmpzb24nLCAnY29udFQyMTogUlNTbG9vcGFzaWFtb29uPC9wPnNvdWxMSU5FZm9ydGNhcnRUMTQ6PGgxPjgwcHghLS08OXB4O1QwNDptaWtlOjQ2Wm5pY2VpbmNoWW9ya3JpY2V6aDrkJykpO3B1cmVtYWdlcGFyYXRvbmVib25kOjM3Wl9vZl8nXSk7MDAwLHpoOud0YW5reWFyZGJvd2xidXNoOjU2WkphdmEzMHB4Cnx9CiVDMyU6MzRaamVmZkVYUEljYXNodmlzYWdvbGZzbm93emg66XF1ZXIuY3Nzc2lja21lYXRtaW4uYmluZGRlbGxoaXJlcGljc3JlbnQ6MzZaSFRUUC0yMDFmb3Rvd29sZkVORCB4Ym94OjU0WkJPRFlkaWNrOwp9CmV4aXQ6MzVadmFyc2JlYXQnfSk7ZGlldDk5OTthbm5lfX08L1tpXS5MYW5na23CsndpcmV0b3lzYWRkc3NlYWxhbGV4OwoJfWVjaG9uaW5lLm9yZzAwNSl0b255amV3c3NhbmRsZWdzcm9vZjAwMCkgMjAwd2luZWdlYXJkb2dzYm9vdGdhcnljdXRzdHlsZXRlbXB0aW9uLnhtbGNvY2tnYW5nJCgnLjUwcHhQaC5EbWlzY2FsYW5sb2FuZGVza21pbGVyeWFudW5peGRpc2MpO30KZHVzdGNsaXApLgoKNzBweC0yMDBEVkRzN10+PHRhcGVkZW1vaSsrKXdhZ2VldXJvcGhpbG9wdHNob2xlRkFRc2FzaW4tMjZUbGFic3BldHNVUkwgYnVsa2Nvb2s7fQ0KSEVBRFswXSlhYmJyanVhbigxOThsZXNodHdpbjwvaT5zb255Z3V5c2Z1Y2twaXBlfC0KITAwMiluZG93WzFdO1tdOwpMb2cgc2FsdA0KCQliYW5ndHJpbWJhdGgpew0KMDBweAp9KTtrbzrsZmVlc2FkPg1zOi8vIFtdO3RvbGxwbHVnKCl7CnsNCiAuanMnMjAwcGR1YWxib2F0LkpQRyk7Cn1xdW90KTsKCicpOwoNCn0NMjAxNDIwMTUyMDE2MjAxNzIwMTgyMDE5MjAyMDIwMjEyMDIyMjAyMzIwMjQyMDI1MjAyNjIwMjcyMDI4MjAyOTIwMzAyMDMxMjAzMjIwMzMyMDM0MjAzNTIwMzYyMDM3MjAxMzIwMTIyMDExMjAxMDIwMDkyMDA4MjAwNzIwMDYyMDA1MjAwNDIwMDMyMDAyMjAwMTIwMDAxOTk5MTk5ODE5OTcxOTk2MTk5NTE5OTQxOTkzMTk5MjE5OTExOTkwMTk4OTE5ODgxOTg3MTk4NjE5ODUxOTg0MTk4MzE5ODIxOTgxMTk4MDE5NzkxOTc4MTk3NzE5NzYxOTc1MTk3NDE5NzMxOTcyMTk3MTE5NzAxOTY5MTk2ODE5NjcxOTY2MTk2NTE5NjQxOTYzMTk2MjE5NjExOTYwMTk1OTE5NTgxOTU3MTk1NjE5NTUxOTU0MTk1MzE5NTIxOTUxMTk1MDEwMDAxMDI0MTM5NDAwMDA5OTk5Y29tb23DoXNlc3RlZXN0YXBlcm90b2RvaGFjZWNhZGFhw7FvYmllbmTDrWFhc8OtdmlkYWNhc29vdHJvZm9yb3NvbG9vdHJhY3VhbGRpam9zaWRvZ3JhbnRpcG90ZW1hZGViZWFsZ29xdcOpZXN0b25hZGF0cmVzcG9jb2Nhc2FiYWpvdG9kYXNpbm9hZ3VhcHVlc3Vub3NhbnRlZGljZWx1aXNlbGxhbWF5b3pvbmFhbW9ycGlzb29icmFjbGljZWxsb2Rpb3Nob3JhY2FzadC30LDQvdCw0L7QvNGA0LDRgNGD0YLQsNC90LXQv9C+0L7RgtC40LfQvdC+0LTQvtGC0L7QttC10L7QvdC40YXQndCw0LXQtdCx0YvQvNGL0JLRi9GB0L7QstGL0LLQvtCd0L7QvtCx0J/QvtC70LjQvdC40KDQpNCd0LXQnNGL0YLRi9Ce0L3QuNC80LTQsNCX0LDQlNCw0J3Rg9Ce0LHRgtC10JjQt9C10LnQvdGD0LzQvNCi0YvRg9C22YHZitij2YbZhdin2YXYudmD2YTYo9mI2LHYr9mK2KfZgdmJ2YfZiNmE2YXZhNmD2KfZiNmE2YfYqNiz2KfZhNil2YbZh9mK2KPZitmC2K/Zh9mE2KvZhdio2YfZhNmI2YTZitio2YTYp9mK2KjZg9i02YrYp9mF2KPZhdmG2KrYqNmK2YTZhtit2KjZh9mF2YXYtNmI2LRmaXJzdHZpZGVvbGlnaHR3b3JsZG1lZGlhd2hpdGVjbG9zZWJsYWNrcmlnaHRzbWFsbGJvb2tzcGxhY2VtdXNpY2ZpZWxkb3JkZXJwb2ludHZhbHVlbGV2ZWx0YWJsZWJvYXJkaG91c2Vncm91cHdvcmtzeWVhcnNzdGF0ZXRvZGF5d2F0ZXJzdGFydHN0eWxlZGVhdGhwb3dlcnBob25lbmlnaHRlcnJvcmlucHV0YWJvdXR0ZXJtc3RpdGxldG9vbHNldmVudGxvY2FsdGltZXNsYXJnZXdvcmRzZ2FtZXNzaG9ydHNwYWNlZm9jdXNjbGVhcm1vZGVsYmxvY2tndWlkZXJhZGlvc2hhcmV3b21lbmFnYWlubW9uZXlpbWFnZW5hbWVzeW91bmdsaW5lc2xhdGVyY29sb3JncmVlbmZyb250JmFtcDt3YXRjaGZvcmNlcHJpY2VydWxlc2JlZ2luYWZ0ZXJ2aXNpdGlzc3VlYXJlYXNiZWxvd2luZGV4dG90YWxob3Vyc2xhYmVscHJpbnRwcmVzc2J1aWx0bGlua3NzcGVlZHN0dWR5dHJhZGVmb3VuZHNlbnNldW5kZXJzaG93bmZvcm1zcmFuZ2VhZGRlZHN0aWxsbW92ZWR0YWtlbmFib3ZlZmxhc2hmaXhlZG9mdGVub3RoZXJ2aWV3c2NoZWNrbGVnYWxyaXZlcml0ZW1zcXVpY2tzaGFwZWh1bWFuZXhpc3Rnb2luZ21vdmlldGhpcmRiYXNpY3BlYWNlc3RhZ2V3aWR0aGxvZ2luaWRlYXN3cm90ZXBhZ2VzdXNlcnNkcml2ZXN0b3JlYnJlYWtzb3V0aHZvaWNlc2l0ZXNtb250aHdoZXJlYnVpbGR3aGljaGVhcnRoZm9ydW10aHJlZXNwb3J0cGFydHlDbGlja2xvd2VybGl2ZXNjbGFzc2xheWVyZW50cnlzdG9yeXVzYWdlc291bmRjb3VydHlvdXIgYmlydGhwb3B1cHR5cGVzYXBwbHlJbWFnZWJlaW5ndXBwZXJub3Rlc2V2ZXJ5c2hvd3NtZWFuc2V4dHJhbWF0Y2h0cmFja2tub3duZWFybHliZWdhbnN1cGVycGFwZXJub3J0aGxlYXJuZ2l2ZW5uYW1lZGVuZGVkVGVybXNwYXJ0c0dyb3VwYnJhbmR1c2luZ3dvbWFuZmFsc2VyZWFkeWF1ZGlvdGFrZXN3aGlsZS5jb20vbGl2ZWRjYXNlc2RhaWx5Y2hpbGRncmVhdGp1ZGdldGhvc2V1bml0c25ldmVyYnJvYWRjb2FzdGNvdmVyYXBwbGVmaWxlc2N5Y2xlc2NlbmVwbGFuc2NsaWNrd3JpdGVxdWVlbnBpZWNlZW1haWxmcmFtZW9sZGVycGhvdG9saW1pdGNhY2hlY2l2aWxzY2FsZWVudGVydGhlbWV0aGVyZXRvdWNoYm91bmRyb3lhbGFza2Vkd2hvbGVzaW5jZXN0b2NrIG5hbWVmYWl0aGhlYXJ0ZW1wdHlvZmZlcnNjb3Blb3duZWRtaWdodGFsYnVtdGhpbmtibG9vZGFycmF5bWFqb3J0cnVzdGNhbm9udW5pb25jb3VudHZhbGlkc3RvbmVTdHlsZUxvZ2luaGFwcHlvY2N1cmxlZnQ6ZnJlc2hxdWl0ZWZpbG1zZ3JhZGVuZWVkc3VyYmFuZmlnaHRiYXNpc2hvdmVyYXV0bztyb3V0ZS5odG1sbWl4ZWRmaW5hbFlvdXIgc2xpZGV0b3BpY2Jyb3duYWxvbmVkcmF3bnNwbGl0cmVhY2hSaWdodGRhdGVzbWFyY2hxdW90ZWdvb2RzTGlua3Nkb3VidGFzeW5jdGh1bWJhbGxvd2NoaWVmeW91dGhub3ZlbDEwcHg7c2VydmV1bnRpbGhhbmRzQ2hlY2tTcGFjZXF1ZXJ5amFtZXNlcXVhbHR3aWNlMCwwMDBTdGFydHBhbmVsc29uZ3Nyb3VuZGVpZ2h0c2hpZnR3b3J0aHBvc3RzbGVhZHN3ZWVrc2F2b2lkdGhlc2VtaWxlc3BsYW5lc21hcnRhbHBoYXBsYW50bWFya3NyYXRlc3BsYXlzY2xhaW1zYWxlc3RleHRzc3RhcnN3cm9uZzwvaDM+dGhpbmcub3JnL211bHRpaGVhcmRQb3dlcnN0YW5kdG9rZW5zb2xpZCh0aGlzYnJpbmdzaGlwc3N0YWZmdHJpZWRjYWxsc2Z1bGx5ZmFjdHNhZ2VudFRoaXMgLy8tLT5hZG1pbmVneXB0RXZlbnQxNXB4O0VtYWlsdHJ1ZSJjcm9zc3NwZW50YmxvZ3Nib3giPm5vdGVkbGVhdmVjaGluYXNpemVzZ3Vlc3Q8L2g0PnJvYm90aGVhdnl0cnVlLHNldmVuZ3JhbmRjcmltZXNpZ25zYXdhcmVkYW5jZXBoYXNlPjwhLS1lbl9VUyYjMzk7MjAwcHhfbmFtZWxhdGluZW5qb3lhamF4LmF0aW9uc21pdGhVLlMuIGhvbGRzcGV0ZXJpbmRpYW5hdiI+Y2hhaW5zY29yZWNvbWVzZG9pbmdwcmlvclNoYXJlMTk5MHNyb21hbmxpc3RzamFwYW5mYWxsc3RyaWFsb3duZXJhZ3JlZTwvaDI+YWJ1c2VhbGVydG9wZXJhIi0vL1djYXJkc2hpbGxzdGVhbXNQaG90b3RydXRoY2xlYW4ucGhwP3NhaW50bWV0YWxsb3Vpc21lYW50cHJvb2ZicmllZnJvdyI+Z2VucmV0cnVja2xvb2tzVmFsdWVGcmFtZS5uZXQvLS0+Cjx0cnkgewp2YXIgbWFrZXNjb3N0c3BsYWluYWR1bHRxdWVzdHRyYWlubGFib3JoZWxwc2NhdXNlbWFnaWNtb3RvcnRoZWlyMjUwcHhsZWFzdHN0ZXBzQ291bnRjb3VsZGdsYXNzc2lkZXNmdW5kc2hvdGVsYXdhcmRtb3V0aG1vdmVzcGFyaXNnaXZlc2R1dGNodGV4YXNmcnVpdG51bGwsfHxbXTt0b3AiPgo8IS0tUE9TVCJvY2Vhbjxici8+Zmxvb3JzcGVha2RlcHRoIHNpemViYW5rc2NhdGNoY2hhcnQyMHB4O2FsaWduZGVhbHN3b3VsZDUwcHg7dXJsPSJwYXJrc21vdXNlTW9zdCAuLi48L2Ftb25nYnJhaW5ib2R5IG5vbmU7YmFzZWRjYXJyeWRyYWZ0cmVmZXJwYWdlX2hvbWUubWV0ZXJkZWxheWRyZWFtcHJvdmVqb2ludDwvdHI+ZHJ1Z3M8IS0tIGFwcmlsaWRlYWxhbGxlbmV4YWN0Zm9ydGhjb2Rlc2xvZ2ljVmlldyBzZWVtc2JsYW5rcG9ydHMgKDIwMHNhdmVkX2xpbmtnb2Fsc2dyYW50Z3JlZWtob21lc3JpbmdzcmF0ZWQzMHB4O3dob3NlcGFyc2UoKTsiIEJsb2NrbGludXhqb25lc3BpeGVsJyk7Ij4pO2lmKC1sZWZ0ZGF2aWRob3JzZUZvY3VzcmFpc2Vib3hlc1RyYWNrZW1lbnQ8L2VtPmJhciI+LnNyYz10b3dlcmFsdD0iY2FibGVoZW5yeTI0cHg7c2V0dXBpdGFseXNoYXJwbWlub3J0YXN0ZXdhbnRzdGhpcy5yZXNldHdoZWVsZ2lybHMvY3NzLzEwMCU7Y2x1YnNzdHVmZmJpYmxldm90ZXMgMTAwMGtvcmVhfSk7DQpiYW5kc3F1ZXVlPSB7fTs4MHB4O2NraW5new0KCQlhaGVhZGNsb2NraXJpc2hsaWtlIHJhdGlvc3RhdHNGb3JtInlhaG9vKVswXTtBYm91dGZpbmRzPC9oMT5kZWJ1Z3Rhc2tzVVJMID1jZWxsc30pKCk7MTJweDtwcmltZXRlbGxzdHVybnMweDYwMC5qcGcic3BhaW5iZWFjaHRheGVzbWljcm9hbmdlbC0tPjwvZ2lmdHNzdGV2ZS1saW5rYm9keS59KTsKCW1vdW50ICgxOTlGQVE8L3JvZ2VyZnJhbmtDbGFzczI4cHg7ZmVlZHM8aDE+PHNjb3R0dGVzdHMyMnB4O2RyaW5rKSB8fCBsZXdpc3NoYWxsIzAzOTsgZm9yIGxvdmVkd2FzdGUwMHB4O2phOuOCc2ltb248Zm9udHJlcGx5bWVldHN1bnRlcmNoZWFwdGlnaHRCcmFuZCkgIT0gZHJlc3NjbGlwc3Jvb21zb25rZXltb2JpbG1haW4uTmFtZSBwbGF0ZWZ1bm55dHJlZXNjb20vIjEuanBnd21vZGVwYXJhbVNUQVJUbGVmdCBpZGRlbiwgMjAxKTsKfQpmb3JtLnZpcnVzY2hhaXJ0cmFuc3dvcnN0UGFnZXNpdGlvbnBhdGNoPCEtLQpvLWNhY2Zpcm1zdG91cnMsMDAwIGFzaWFuaSsrKXthZG9iZScpWzBdaWQ9MTBib3RoO21lbnUgLjIubWkucG5nImtldmluY29hY2hDaGlsZGJydWNlMi5qcGdVUkwpKy5qcGd8c3VpdGVzbGljZWhhcnJ5MTIwIiBzd2VldHRyPg0KbmFtZT1kaWVnb3BhZ2Ugc3dpc3MtLT4KCiNmZmY7Ij5Mb2cuY29tInRyZWF0c2hlZXQpICYmIDE0cHg7c2xlZXBudGVudGZpbGVkamE644NpZD0iY05hbWUid29yc2VzaG90cy1ib3gtZGVsdGEKJmx0O2JlYXJzOjQ4WjxkYXRhLXJ1cmFsPC9hPiBzcGVuZGJha2Vyc2hvcHM9ICIiO3BocCI+Y3Rpb24xM3B4O2JyaWFuaGVsbG9zaXplPW89JTJGIGpvaW5tYXliZTxpbWcgaW1nIj4sIGZqc2ltZyIgIilbMF1NVG9wQlR5cGUibmV3bHlEYW5za2N6ZWNodHJhaWxrbm93czwvaDU+ZmFxIj56aC1jbjEwKTsKLTEiKTt0eXBlPWJsdWVzdHJ1bHlkYXZpcy5qcyc7Pg0KPCFzdGVlbCB5b3UgaDI+DQpmb3JtIGplc3VzMTAwJSBtZW51Lg0KCQ0Kd2FsZXNyaXNrc3VtZW50ZGRpbmdiLWxpa3RlYWNoZ2lmIiB2ZWdhc2RhbnNrZWVzdGlzaHFpcHN1b21pc29icmVkZXNkZWVudHJldG9kb3NwdWVkZWHDsW9zZXN0w6F0aWVuZWhhc3Rhb3Ryb3NwYXJ0ZWRvbmRlbnVldm9oYWNlcmZvcm1hbWlzbW9tZWpvcm11bmRvYXF1w61kw61hc3PDs2xvYXl1ZGFmZWNoYXRvZGFzdGFudG9tZW5vc2RhdG9zb3RyYXNzaXRpb211Y2hvYWhvcmFsdWdhcm1heW9yZXN0b3Nob3Jhc3RlbmVyYW50ZXNmb3Rvc2VzdGFzcGHDrXNudWV2YXNhbHVkZm9yb3NtZWRpb3F1aWVubWVzZXNwb2RlcmNoaWxlc2Vyw6F2ZWNlc2RlY2lyam9zw6llc3RhcnZlbnRhZ3J1cG9oZWNob2VsbG9zdGVuZ29hbWlnb2Nvc2Fzbml2ZWxnZW50ZW1pc21hYWlyZXNqdWxpb3RlbWFzaGFjaWFmYXZvcmp1bmlvbGlicmVwdW50b2J1ZW5vYXV0b3JhYnJpbGJ1ZW5hdGV4dG9tYXJ6b3NhYmVybGlzdGFsdWVnb2PDs21vZW5lcm9qdWVnb3BlcsO6aGFiZXJlc3RveW51bmNhbXVqZXJ2YWxvcmZ1ZXJhbGlicm9ndXN0YWlndWFsdm90b3NjYXNvc2d1w61hcHVlZG9zb21vc2F2aXNvdXN0ZWRkZWJlbm5vY2hlYnVzY2FmYWx0YWV1cm9zc2VyaWVkaWNob2N1cnNvY2xhdmVjYXNhc2xlw7NucGxhem9sYXJnb29icmFzdmlzdGFhcG95b2p1bnRvdHJhdGF2aXN0b2NyZWFyY2FtcG9oZW1vc2NpbmNvY2FyZ29waXNvc29yZGVuaGFjZW7DoXJlYWRpc2NvcGVkcm9jZXJjYXB1ZWRhcGFwZWxtZW5vcsO6dGlsY2xhcm9qb3JnZWNhbGxlcG9uZXJ0YXJkZW5hZGllbWFyY2FzaWd1ZWVsbGFzc2lnbG9jb2NoZW1vdG9zbWFkcmVjbGFzZXJlc3RvbmnDsW9xdWVkYXBhc2FyYmFuY29oaWpvc3ZpYWplcGFibG/DqXN0ZXZpZW5lcmVpbm9kZWphcmZvbmRvY2FuYWxub3J0ZWxldHJhY2F1c2F0b21hcm1hbm9zbHVuZXNhdXRvc3ZpbGxhdmVuZG9wZXNhcnRpcG9zdGVuZ2FtYXJjb2xsZXZhcGFkcmV1bmlkb3ZhbW9zem9uYXNhbWJvc2JhbmRhbWFyaWFhYnVzb211Y2hhc3ViaXJyaW9qYXZpdmlyZ3JhZG9jaGljYWFsbMOtam92ZW5kaWNoYWVzdGFudGFsZXNzYWxpcnN1ZWxvcGVzb3NmaW5lc2xsYW1hYnVzY2/DqXN0YWxsZWdhbmVncm9wbGF6YWh1bW9ycGFnYXJqdW50YWRvYmxlaXNsYXNib2xzYWJhw7FvaGFibGFsdWNoYcOBcmVhZGljZW5qdWdhcm5vdGFzdmFsbGVhbGzDoWNhcmdhZG9sb3JhYmFqb2VzdMOpZ3VzdG9tZW50ZW1hcmlvZmlybWFjb3N0b2ZpY2hhcGxhdGFob2dhcmFydGVzbGV5ZXNhcXVlbG11c2VvYmFzZXNwb2Nvc21pdGFkY2llbG9jaGljb21pZWRvZ2FuYXJzYW50b2V0YXBhZGViZXNwbGF5YXJlZGVzc2lldGVjb3J0ZWNvcmVhZHVkYXNkZXNlb3ZpZWpvZGVzZWFhZ3VhcyZxdW90O2RvbWFpbmNvbW1vbnN0YXR1c2V2ZW50c21hc3RlcnN5c3RlbWFjdGlvbmJhbm5lcnJlbW92ZXNjcm9sbHVwZGF0ZWdsb2JhbG1lZGl1bWZpbHRlcm51bWJlcmNoYW5nZXJlc3VsdHB1YmxpY3NjcmVlbmNob29zZW5vcm1hbHRyYXZlbGlzc3Vlc3NvdXJjZXRhcmdldHNwcmluZ21vZHVsZW1vYmlsZXN3aXRjaHBob3Rvc2JvcmRlcnJlZ2lvbml0c2VsZnNvY2lhbGFjdGl2ZWNvbHVtbnJlY29yZGZvbGxvd3RpdGxlPmVpdGhlcmxlbmd0aGZhbWlseWZyaWVuZGxheW91dGF1dGhvcmNyZWF0ZXJldmlld3N1bW1lcnNlcnZlcnBsYXllZHBsYXllcmV4cGFuZHBvbGljeWZvcm1hdGRvdWJsZXBvaW50c3Nlcmllc3BlcnNvbmxpdmluZ2Rlc2lnbm1vbnRoc2ZvcmNlc3VuaXF1ZXdlaWdodHBlb3BsZWVuZXJneW5hdHVyZXNlYXJjaGZpZ3VyZWhhdmluZ2N1c3RvbW9mZnNldGxldHRlcndpbmRvd3N1Ym1pdHJlbmRlcmdyb3Vwc3VwbG9hZGhlYWx0aG1ldGhvZHZpZGVvc3NjaG9vbGZ1dHVyZXNoYWRvd2RlYmF0ZXZhbHVlc09iamVjdG90aGVyc3JpZ2h0c2xlYWd1ZWNocm9tZXNpbXBsZW5vdGljZXNoYXJlZGVuZGluZ3NlYXNvbnJlcG9ydG9ubGluZXNxdWFyZWJ1dHRvbmltYWdlc2VuYWJsZW1vdmluZ2xhdGVzdHdpbnRlckZyYW5jZXBlcmlvZHN0cm9uZ3JlcGVhdExvbmRvbmRldGFpbGZvcm1lZGRlbWFuZHNlY3VyZXBhc3NlZHRvZ2dsZXBsYWNlc2RldmljZXN0YXRpY2NpdGllc3N0cmVhbXllbGxvd2F0dGFja3N0cmVldGZsaWdodGhpZGRlbmluZm8iPm9wZW5lZHVzZWZ1bHZhbGxleWNhdXNlc2xlYWRlcnNlY3JldHNlY29uZGRhbWFnZXNwb3J0c2V4Y2VwdHJhdGluZ3NpZ25lZHRoaW5nc2VmZmVjdGZpZWxkc3N0YXRlc29mZmljZXZpc3VhbGVkaXRvcnZvbHVtZVJlcG9ydG11c2V1bW1vdmllc3BhcmVudGFjY2Vzc21vc3RseW1vdGhlciIgaWQ9Im1hcmtldGdyb3VuZGNoYW5jZXN1cnZleWJlZm9yZXN5bWJvbG1vbWVudHNwZWVjaG1vdGlvbmluc2lkZW1hdHRlckNlbnRlcm9iamVjdGV4aXN0c21pZGRsZUV1cm9wZWdyb3d0aGxlZ2FjeW1hbm5lcmVub3VnaGNhcmVlcmFuc3dlcm9yaWdpbnBvcnRhbGNsaWVudHNlbGVjdHJhbmRvbWNsb3NlZHRvcGljc2NvbWluZ2ZhdGhlcm9wdGlvbnNpbXBseXJhaXNlZGVzY2FwZWNob3NlbmNodXJjaGRlZmluZXJlYXNvbmNvcm5lcm91dHB1dG1lbW9yeWlmcmFtZXBvbGljZW1vZGVsc051bWJlcmR1cmluZ29mZmVyc3N0eWxlc2tpbGxlZGxpc3RlZGNhbGxlZHNpbHZlcm1hcmdpbmRlbGV0ZWJldHRlcmJyb3dzZWxpbWl0c0dsb2JhbHNpbmdsZXdpZGdldGNlbnRlcmJ1ZGdldG5vd3JhcGNyZWRpdGNsYWltc2VuZ2luZXNhZmV0eWNob2ljZXNwaXJpdC1zdHlsZXNwcmVhZG1ha2luZ25lZWRlZHJ1c3NpYXBsZWFzZWV4dGVudFNjcmlwdGJyb2tlbmFsbG93c2NoYXJnZWRpdmlkZWZhY3Rvcm1lbWJlci1iYXNlZHRoZW9yeWNvbmZpZ2Fyb3VuZHdvcmtlZGhlbHBlZENodXJjaGltcGFjdHNob3VsZGFsd2F5c2xvZ28iIGJvdHRvbWxpc3QiPil7dmFyIHByZWZpeG9yYW5nZUhlYWRlci5wdXNoKGNvdXBsZWdhcmRlbmJyaWRnZWxhdW5jaFJldmlld3Rha2luZ3Zpc2lvbmxpdHRsZWRhdGluZ0J1dHRvbmJlYXV0eXRoZW1lc2ZvcmdvdFNlYXJjaGFuY2hvcmFsbW9zdGxvYWRlZENoYW5nZXJldHVybnN0cmluZ3JlbG9hZE1vYmlsZWluY29tZXN1cHBseVNvdXJjZW9yZGVyc3ZpZXdlZCZuYnNwO2NvdXJzZUFib3V0IGlzbGFuZDxodG1sIGNvb2tpZW5hbWU9ImFtYXpvbm1vZGVybmFkdmljZWluPC9hPjogVGhlIGRpYWxvZ2hvdXNlc0JFR0lOIE1leGljb3N0YXJ0c2NlbnRyZWhlaWdodGFkZGluZ0lzbGFuZGFzc2V0c0VtcGlyZVNjaG9vbGVmZm9ydGRpcmVjdG5lYXJseW1hbnVhbFNlbGVjdC4KCk9uZWpvaW5lZG1lbnUiPlBoaWxpcGF3YXJkc2hhbmRsZWltcG9ydE9mZmljZXJlZ2FyZHNraWxsc25hdGlvblNwb3J0c2RlZ3JlZXdlZWtseSAoZS5nLmJlaGluZGRvY3RvcmxvZ2dlZHVuaXRlZDwvYj48L2JlZ2luc3BsYW50c2Fzc2lzdGFydGlzdGlzc3VlZDMwMHB4fGNhbmFkYWFnZW5jeXNjaGVtZXJlbWFpbkJyYXppbHNhbXBsZWxvZ28iPmJleW9uZC1zY2FsZWFjY2VwdHNlcnZlZG1hcmluZUZvb3RlcmNhbWVyYTwvaDE+Cl9mb3JtImxlYXZlc3N0cmVzcyIgLz4NCi5naWYiIG9ubG9hZGxvYWRlck94Zm9yZHNpc3RlcnN1cnZpdmxpc3RlbmZlbWFsZURlc2lnbnNpemU9ImFwcGVhbHRleHQiPmxldmVsc3RoYW5rc2hpZ2hlcmZvcmNlZGFuaW1hbGFueW9uZUFmcmljYWFncmVlZHJlY2VudFBlb3BsZTxiciAvPndvbmRlcnByaWNlc3R1cm5lZHx8IHt9O21haW4iPmlubGluZXN1bmRheXdyYXAiPmZhaWxlZGNlbnN1c21pbnV0ZWJlYWNvbnF1b3RlczE1MHB4fGVzdGF0ZXJlbW90ZWVtYWlsImxpbmtlZHJpZ2h0O3NpZ25hbGZvcm1hbDEuaHRtbHNpZ251cHByaW5jZWZsb2F0Oi5wbmciIGZvcnVtLkFjY2Vzc3BhcGVyc3NvdW5kc2V4dGVuZEhlaWdodHNsaWRlclVURi04IiZhbXA7IEJlZm9yZS4gV2l0aHN0dWRpb293bmVyc21hbmFnZXByb2ZpdGpRdWVyeWFubnVhbHBhcmFtc2JvdWdodGZhbW91c2dvb2dsZWxvbmdlcmkrKykge2lzcmFlbHNheWluZ2RlY2lkZWhvbWUiPmhlYWRlcmVuc3VyZWJyYW5jaHBpZWNlc2Jsb2NrO3N0YXRlZHRvcCI+PHJhY2luZ3Jlc2l6ZS0tJmd0O3BhY2l0eXNleHVhbGJ1cmVhdS5qcGciIDEwLDAwMG9idGFpbnRpdGxlc2Ftb3VudCwgSW5jLmNvbWVkeW1lbnUiIGx5cmljc3RvZGF5LmluZGVlZGNvdW50eV9sb2dvLkZhbWlseWxvb2tlZE1hcmtldGxzZSBpZlBsYXllcnR1cmtleSk7dmFyIGZvcmVzdGdpdmluZ2Vycm9yc0RvbWFpbn1lbHNle2luc2VydEJsb2c8L2Zvb3RlcmxvZ2luLmZhc3RlcmFnZW50czxib2R5IDEwcHggMHByYWdtYWZyaWRheWp1bmlvcmRvbGxhcnBsYWNlZGNvdmVyc3BsdWdpbjUsMDAwIHBhZ2UiPmJvc3Rvbi50ZXN0KGF2YXRhcnRlc3RlZF9jb3VudGZvcnVtc3NjaGVtYWluZGV4LGZpbGxlZHNoYXJlc3JlYWRlcmFsZXJ0KGFwcGVhclN1Ym1pdGxpbmUiPmJvZHkiPgoqIFRoZVRob3VnaHNlZWluZ2plcnNleU5ld3M8L3ZlcmlmeWV4cGVydGluanVyeXdpZHRoPUNvb2tpZVNUQVJUIGFjcm9zc19pbWFnZXRocmVhZG5hdGl2ZXBvY2tldGJveCI+ClN5c3RlbSBEYXZpZGNhbmNlcnRhYmxlc3Byb3ZlZEFwcmlsIHJlYWxseWRyaXZlcml0ZW0iPm1vcmUiPmJvYXJkc2NvbG9yc2NhbXB1c2ZpcnN0IHx8IFtdO21lZGlhLmd1aXRhcmZpbmlzaHdpZHRoOnNob3dlZE90aGVyIC5waHAiIGFzc3VtZWxheWVyc3dpbHNvbnN0b3Jlc3JlbGllZnN3ZWRlbkN1c3RvbWVhc2lseSB5b3VyIFN0cmluZwoKV2hpbHRheWxvcmNsZWFyOnJlc29ydGZyZW5jaHRob3VnaCIpICsgIjxib2R5PmJ1eWluZ2JyYW5kc01lbWJlcm5hbWUiPm9wcGluZ3NlY3RvcjVweDsiPnZzcGFjZXBvc3Rlcm1ham9yIGNvZmZlZW1hcnRpbm1hdHVyZWhhcHBlbjwvbmF2PmthbnNhc2xpbmsiPkltYWdlcz1mYWxzZXdoaWxlIGhzcGFjZTAmYW1wOyAKCkluICBwb3dlclBvbHNraS1jb2xvcmpvcmRhbkJvdHRvbVN0YXJ0IC1jb3VudDIuaHRtbG5ld3MiPjAxLmpwZ09ubGluZS1yaWdodG1pbGxlcnNlbmlvcklTQk4gMDAsMDAwIGd1aWRlc3ZhbHVlKWVjdGlvbnJlcGFpci54bWwiICByaWdodHMuaHRtbC1ibG9ja3JlZ0V4cDpob3ZlcndpdGhpbnZpcmdpbnBob25lczwvdHI+DXVzaW5nIAoJdmFyID4nKTsKCTwvdGQ+CjwvdHI+CmJhaGFzYWJyYXNpbGdhbGVnb21hZ3lhcnBvbHNraXNycHNradix2K/ZiOS4reaWh+eugOS9k+e5gemrlOS/oeaBr+S4reWbveaIkeS7rOS4gOS4quWFrOWPuOeuoeeQhuiuuuWdm+WPr+S7peacjeWKoeaXtumXtOS4quS6uuS6p+WTgeiHquW3seS8geS4muafpeeci+W3peS9nOiBlOezu+ayoeaciee9keermeaJgOacieivhOiuuuS4reW/g+aWh+eroOeUqOaIt+mmlumhteS9nOiAheaKgOacr+mXrumimOebuOWFs+S4i+i9veaQnOe0ouS9v+eUqOi9r+S7tuWcqOe6v+S4u+mimOi1hOaWmeinhumikeWbnuWkjeazqOWGjOe9kee7nOaUtuiXj+WGheWuueaOqOiNkOW4guWcuua2iOaBr+epuumXtOWPkeW4g+S7gOS5iOWlveWPi+eUn+a0u+WbvueJh+WPkeWxleWmguaenOaJi+acuuaWsOmXu+acgOaWsOaWueW8j+WMl+S6rOaPkOS+m+WFs+S6juabtOWkmui/meS4quezu+e7n+efpemBk+a4uOaIj+W5v+WRiuWFtuS7luWPkeihqOWuieWFqOesrOS4gOS8muWRmOi/m+ihjOeCueWHu+eJiOadg+eUteWtkOS4lueVjOiuvuiuoeWFjei0ueaVmeiCsuWKoOWFpea0u+WKqOS7luS7rOWVhuWTgeWNmuWuoueOsOWcqOS4iua1t+WmguS9leW3sue7j+eVmeiogOivpue7huekvuWMuueZu+W9leacrOermemcgOimgeS7t+agvOaUr+aMgeWbvemZhemTvuaOpeWbveWutuW7uuiuvuaci+WPi+mYheivu+azleW+i+S9jee9rue7j+a1jumAieaLqei/meagt+W9k+WJjeWIhuexu+aOkuihjOWboOS4uuS6pOaYk+acgOWQjumfs+S5kOS4jeiDvemAmui/h+ihjOS4muenkeaKgOWPr+iDveiuvuWkh+WQiOS9nOWkp+WutuekvuS8mueglOeptuS4k+S4muWFqOmDqOmhueebrui/memHjOi/mOaYr+W8gOWni+aDheWGteeUteiEkeaWh+S7tuWTgeeJjOW4ruWKqeaWh+WMlui1hOa6kOWkp+WtpuWtpuS5oOWcsOWdgOa1j+iniOaKlei1hOW3peeoi+imgeaxguaAjuS5iOaXtuWAmeWKn+iDveS4u+imgeebruWJjei1hOiur+WfjuW4guaWueazleeUteW9seaLm+iBmOWjsOaYjuS7u+S9leWBpeW6t+aVsOaNrue+juWbveaxvei9puS7i+e7jeS9huaYr+S6pOa1geeUn+S6p+aJgOS7peeUteivneaYvuekuuS4gOS6m+WNleS9jeS6uuWRmOWIhuaekOWcsOWbvuaXhea4uOW3peWFt+WtpueUn+ezu+WIl+e9keWPi+W4luWtkOWvhueggemikemBk+aOp+WItuWcsOWMuuWfuuacrOWFqOWbvee9keS4iumHjeimgeesrOS6jOWWnOasoui/m+WFpeWPi+aDhei/meS6m+iAg+ivleWPkeeOsOWfueiureS7peS4iuaUv+W6nOaIkOS4uueOr+Wig+mmmea4r+WQjOaXtuWoseS5kOWPkemAgeS4gOWumuW8gOWPkeS9nOWTgeagh+WHhuasoui/juino+WGs+WcsOaWueS4gOS4i+S7peWPiui0o+S7u+aIluiAheWuouaIt+S7o+ihqOenr+WIhuWls+S6uuaVsOeggemUgOWUruWHuueOsOemu+e6v+W6lOeUqOWIl+ihqOS4jeWQjOe8lui+kee7n+iuoeafpeivouS4jeimgeacieWFs+acuuaehOW+iOWkmuaSreaUvue7hOe7h+aUv+etluebtOaOpeiDveWKm+adpea6kOaZgumWk+eci+WIsOeDremXqOWFs+mUruS4k+WMuumdnuW4uOiLseivreeZvuW6puW4jOacm+e+juWls+avlOi+g+efpeivhuinhOWumuW7uuiurumDqOmXqOaEj+ingeeyvuW9qeaXpeacrOaPkOmrmOWPkeiogOaWuemdouWfuumHkeWkhOeQhuadg+mZkOW9seeJh+mTtuihjOi/mOacieWIhuS6q+eJqeWTgee7j+iQpea3u+WKoOS4k+Wutui/meenjeivnemimOi1t+adpeS4muWKoeWFrOWRiuiusOW9leeugOS7i+i0qOmHj+eUt+S6uuW9seWTjeW8leeUqOaKpeWRiumDqOWIhuW/q+mAn+WSqOivouaXtuWwmuazqOaEj+eUs+ivt+WtpuagoeW6lOivpeWOhuWPsuWPquaYr+i/lOWbnui0reS5sOWQjeensOS4uuS6huaIkOWKn+ivtOaYjuS+m+W6lOWtqeWtkOS4k+mimOeoi+W6j+S4gOiIrOacg+WToeWPquacieWFtuWug+S/neaKpOiAjOS4lOS7iuWkqeeql+WPo+WKqOaAgeeKtuaAgeeJueWIq+iupOS4uuW/hemhu+abtOaWsOWwj+ivtOaIkeWAkeS9nOS4uuWqkuS9k+WMheaLrOmCo+S5iOS4gOagt+WbveWGheaYr+WQpuagueaNrueUteinhuWtpumZouWFt+aciei/h+eoi+eUseS6juS6uuaJjeWHuuadpeS4jei/h+ato+WcqOaYjuaYn+aVheS6i+WFs+ezu+agh+mimOWVhuWKoei+k+WFpeS4gOebtOWfuuehgOaVmeWtpuS6huino+W7uuetkee7k+aenOWFqOeQg+mAmuefpeiuoeWIkuWvueS6juiJuuacr+ebuOWGjOWPkeeUn+ecn+eahOW7uueri+etiee6p+exu+Wei+e7j+mqjOWunueOsOWItuS9nOadpeiHquagh+etvuS7peS4i+WOn+WIm+aXoOazleWFtuS4reWAi+S6uuS4gOWIh+aMh+WNl+WFs+mXrembhuWbouesrOS4ieWFs+azqOWboOatpOeFp+eJh+a3seWcs+WVhuS4muW5v+W3nuaXpeacn+mrmOe6p+acgOi/kee7vOWQiOihqOekuuS4k+i+keihjOS4uuS6pOmAmuivhOS7t+inieW+l+eyvuWNjuWutuW6reWujOaIkOaEn+inieWuieijheW+l+WIsOmCruS7tuWItuW6pumjn+WTgeiZveeEtui9rOi9veaKpeS7t+iusOiAheaWueahiOihjOaUv+S6uuawkeeUqOWTgeS4nOilv+aPkOWHuumFkuW6l+eEtuWQjuS7mOasvueDreeCueS7peWJjeWujOWFqOWPkeW4luiuvue9rumihuWvvOW3peS4muWMu+mZoueci+eci+e7j+WFuOWOn+WboOW5s+WPsOWQhOenjeWinuWKoOadkOaWmeaWsOWinuS5i+WQjuiBjOS4muaViOaenOS7iuW5tOiuuuaWh+aIkeWbveWRiuivieeJiOS4u+S/ruaUueWPguS4juaJk+WNsOW/q+S5kOacuuaisOingueCueWtmOWcqOeyvuelnuiOt+W+l+WIqeeUqOe7p+e7reS9oOS7rOi/meS5iOaooeW8j+ivreiogOiDveWkn+mbheiZjuaTjeS9nOmjjuagvOS4gOi1t+enkeWtpuS9k+iCsuefreS/oeadoeS7tuayu+eWl+i/kOWKqOS6p+S4muS8muiuruWvvOiIquWFiOeUn+iBlOebn+WPr+aYr+WVj+mhjOe7k+aehOS9nOeUqOiwg+afpeizh+aWmeiHquWKqOi0n+i0o+WGnOS4muiuv+mXruWunuaWveaOpeWPl+iuqOiuuumCo+S4quWPjemmiOWKoOW8uuWls+aAp+iMg+WbtOacjeWLmeS8kemXsuS7iuaXpeWuouacjeingOeci+WPguWKoOeahOivneS4gOeCueS/neivgeWbvuS5puacieaViOa1i+ivleenu+WKqOaJjeiDveWGs+WumuiCoeelqOS4jeaWremcgOaxguS4jeW+l+WKnuazleS5i+mXtOmHh+eUqOiQpemUgOaKleivieebruagh+eIseaDheaRhOW9seacieS6m+ikh+ijveaWh+WtpuacuuS8muaVsOWtl+ijheS/rui0reeJqeWGnOadkeWFqOmdoueyvuWTgeWFtuWunuS6i+aDheawtOW5s+aPkOekuuS4iuW4guiwouiwouaZrumAmuaVmeW4iOS4iuS8oOexu+WIq+atjOabsuaLpeacieWIm+aWsOmFjeS7tuWPquimgeaXtuS7o+izh+ioiui+vuWIsOS6uueUn+iuoumYheiAgeW4iOWxleekuuW/g+eQhui0tOWtkOe2suermeS4u+mhjOiHqueEtue6p+WIq+eugOWNleaUuemdqemCo+S6m+adpeivtOaJk+W8gOS7o+eggeWIoOmZpOivgeWIuOiKguebrumHjeeCueasoeaVuOWkmuWwkeinhOWIkui1hOmHkeaJvuWIsOS7peWQjuWkp+WFqOS4u+mhteacgOS9s+WbnuetlOWkqeS4i+S/nemanOeOsOS7o+ajgOafpeaKleelqOWwj+aXtuaykuacieato+W4uOeUmuiHs+S7o+eQhuebruW9leWFrOW8gOWkjeWItumHkeiejeW5uOemj+eJiOacrOW9ouaIkOWHhuWkh+ihjOaDheWbnuWIsOaAneaDs+aAjuagt+WNj+iuruiupOivgeacgOWlveS6p+eUn+aMieeFp+acjeijheW5v+S4nOWKqOa8q+mHh+i0reaWsOaJi+e7hOWbvumdouadv+WPguiAg+aUv+ayu+WuueaYk+WkqeWcsOWKquWKm+S6uuS7rOWNh+e6p+mAn+W6puS6uueJqeiwg+aVtOa1geihjOmAoOaIkOaWh+Wtl+mfqeWbvei0uOaYk+W8gOWxleebuOmXnOihqOeOsOW9seinhuWmguatpOe+juWuueWkp+Wwj+aKpemBk+adoeasvuW/g+aDheiuuOWkmuazleinhOWutuWxheS5puW6l+i/nuaOpeeri+WNs+S4vuaKpeaKgOW3p+Wlpei/kOeZu+WFpeS7peadpeeQhuiuuuS6i+S7tuiHqueUseS4reWNjuWKnuWFrOWmiOWmiOecn+ato+S4jemUmeWFqOaWh+WQiOWQjOS7t+WAvOWIq+S6uuebkeedo+WFt+S9k+S4lue6quWboumYn+WIm+S4muaJv+aLheWinumVv+acieS6uuS/neaMgeWVhuWutue7tOS/ruWPsOa5vuW3puWPs+iCoeS7veetlOahiOWunumZheeUteS/oee7j+eQhueUn+WRveWuo+S8oOS7u+WKoeato+W8j+eJueiJsuS4i+adpeWNj+S8muWPquiDveW9k+eEtumHjeaWsOWFp+WuueaMh+WvvOi/kOihjOaXpeW/l+izo+Wutui2hei/h+Wcn+WcsOa1meaxn+aUr+S7mOaOqOWHuuermemVv+adreW3nuaJp+ihjOWItumAoOS5i+S4gOaOqOW5v+eOsOWcuuaPj+i/sOWPmOWMluS8oOe7n+atjOaJi+S/nemZqeivvueoi+WMu+eWl+e7j+i/h+i/h+WOu+S5i+WJjeaUtuWFpeW5tOW6puadguW/l+e+juS4veacgOmrmOeZu+mZhuacquadpeWKoOW3peWFjei0o+aVmeeoi+eJiOWdl+i6q+S9k+mHjeW6huWHuuWUruaIkOacrOW9ouW8j+Wcn+ixhuWHuuWDueS4nOaWuemCrueuseWNl+S6rOaxguiBjOWPluW+l+iBjOS9jeebuOS/oemhtemdouWIhumSn+e9kemhteehruWumuWbvuS+i+e9keWdgOenr+aegemUmeivr+ebrueahOWunei0neacuuWFs+mjjumZqeaOiOadg+eXheavkuWuoOeJqemZpOS6huipleirlueWvueXheWPiuaXtuaxgui0reermeeCueWEv+erpeavj+WkqeS4reWkruiupOivhuavj+S4quWkqea0peWtl+S9k+WPsOeBo+e7tOaKpOacrOmhteS4quaAp+WumOaWueW4uOingeebuOacuuaImOeVpeW6lOW9k+W+i+W4iOaWueS+v+agoeWbreiCoeW4guaIv+Wxi+agj+ebruWRmOW3peWvvOiHtOeqgeeEtumBk+WFt+acrOe9kee7k+WQiOaho+ahiOWKs+WKqOWPpuWklue+juWFg+W8lei1t+aUueWPmOesrOWbm+S8muiuoeiqquaYjumakOengeWuneWuneinhOiMg+a2iOi0ueWFseWQjOW/mOiusOS9k+ezu+W4puadpeWQjeWtl+eZvOihqOW8gOaUvuWKoOebn+WPl+WIsOS6jOaJi+Wkp+mHj+aIkOS6uuaVsOmHj+WFseS6q+WMuuWfn+Wls+WtqeWOn+WImeaJgOWcqOe7k+adn+mAmuS/oei2hee6p+mFjee9ruW9k+aXtuS8mOengOaAp+aEn+aIv+S6p+mBiuaIsuWHuuWPo+aPkOS6pOWwseS4muS/neWBpeeoi+W6puWPguaVsOS6i+S4muaVtOS4quWxseS4nOaDheaEn+eJueauiuWIhumhnuaQnOWwi+WxnuS6jumXqOaIt+i0ouWKoeWjsOmfs+WPiuWFtui0oue7j+WdmuaMgeW5sumDqOaIkOeri+WIqeebiuiAg+iZkeaIkOmDveWMheijheeUqOaItuavlOi1m+aWh+aYjuaLm+WVhuWujOaVtOecn+aYr+ecvOedm+S8meS8tOWogeacm+mihuWfn+WNq+eUn+S8mOaDoOirluWjh+WFrOWFseiJr+WlveWFheWIhuespuWQiOmZhOS7tueJueeCueS4jeWPr+iLseaWh+i1hOS6p+agueacrOaYjuaYvuWvhueivOWFrOS8l+awkeaXj+abtOWKoOS6q+WPl+WQjOWtpuWQr+WKqOmAguWQiOWOn+adpemXruetlOacrOaWh+e+jumjn+e7v+iJsueos+Wumue7iOS6jueUn+eJqeS+m+axguaQnOeLkOWKm+mHj+S4pemHjeawuOi/nOWGmeecn+aciemZkOernuS6ieWvueixoei0ueeUqOS4jeWlvee7neWvueWNgeWIhuS/g+i/m+eCueivhOW9semfs+S8mOWKv+S4jeWwkeaso+i1j+W5tuS4lOacieeCueaWueWQkeWFqOaWsOS/oeeUqOiuvuaWveW9ouixoei1hOagvOeqgeegtOmaj+edgOmHjeWkp+S6juaYr+avleS4muaZuuiDveWMluW3peWujOe+juWVhuWfjue7n+S4gOWHuueJiOaJk+mAoOeUouWTgeamguWGteeUqOS6juS/neeVmeWboOe0oOS4reWci+WtmOWCqOi0tOWbvuacgOaEm+mVv+acn+WPo+S7t+eQhui0ouWfuuWcsOWuieaOkuatpuaxiemHjOmdouWIm+W7uuWkqeepuummluWFiOWujOWWhOmpseWKqOS4i+mdouS4jeWGjeivmuS/oeaEj+S5iemYs+WFieiLseWbvea8guS6ruWGm+S6i+eOqeWutue+pOS8l+WGnOawkeWNs+WPr+WQjeeoseWutuWFt+WKqOeUu+aDs+WIsOazqOaYjuWwj+WtpuaAp+iDveiAg+eglOehrOS7tuingueci+a4healmuaQnueskemmlumggem7hOmHkemAgueUqOaxn+iLj+ecn+WunuS4u+euoemYtuauteiou+WGiue/u+ivkeadg+WIqeWBmuWlveS8vOS5jumAmuiur+aWveW3peeLgOaFi+S5n+iuuOeOr+S/neWfueWFu+amguW/teWkp+Wei+acuuelqOeQhuino+WMv+WQjWN1YW5kb2Vudmlhcm1hZHJpZGJ1c2NhcmluaWNpb3RpZW1wb3BvcnF1ZWN1ZW50YWVzdGFkb3B1ZWRlbmp1ZWdvc2NvbnRyYWVzdMOhbm5vbWJyZXRpZW5lbnBlcmZpbG1hbmVyYWFtaWdvc2NpdWRhZGNlbnRyb2F1bnF1ZXB1ZWRlc2RlbnRyb3ByaW1lcnByZWNpb3NlZ8O6bmJ1ZW5vc3ZvbHZlcnB1bnRvc3NlbWFuYWhhYsOtYWFnb3N0b251ZXZvc3VuaWRvc2Nhcmxvc2VxdWlwb25pw7Fvc211Y2hvc2FsZ3VuYWNvcnJlb2ltYWdlbnBhcnRpcmFycmliYW1hcsOtYWhvbWJyZWVtcGxlb3ZlcmRhZGNhbWJpb211Y2hhc2Z1ZXJvbnBhc2Fkb2zDrW5lYXBhcmVjZW51ZXZhc2N1cnNvc2VzdGFiYXF1aWVyb2xpYnJvc2N1YW50b2FjY2Vzb21pZ3VlbHZhcmlvc2N1YXRyb3RpZW5lc2dydXBvc3NlcsOhbmV1cm9wYW1lZGlvc2ZyZW50ZWFjZXJjYWRlbcOhc29mZXJ0YWNvY2hlc21vZGVsb2l0YWxpYWxldHJhc2FsZ8O6bmNvbXByYWN1YWxlc2V4aXN0ZWN1ZXJwb3NpZW5kb3ByZW5zYWxsZWdhcnZpYWplc2RpbmVyb211cmNpYXBvZHLDoXB1ZXN0b2RpYXJpb3B1ZWJsb3F1aWVyZW1hbnVlbHByb3Bpb2NyaXNpc2NpZXJ0b3NlZ3Vyb211ZXJ0ZWZ1ZW50ZWNlcnJhcmdyYW5kZWVmZWN0b3BhcnRlc21lZGlkYXByb3BpYW9mcmVjZXRpZXJyYWUtbWFpbHZhcmlhc2Zvcm1hc2Z1dHVyb29iamV0b3NlZ3VpcnJpZXNnb25vcm1hc21pc21vc8O6bmljb2NhbWlub3NpdGlvc3JhesOzbmRlYmlkb3BydWViYXRvbGVkb3RlbsOtYWplc8O6c2VzcGVyb2NvY2luYW9yaWdlbnRpZW5kYWNpZW50b2PDoWRpemhhYmxhcnNlcsOtYWxhdGluYWZ1ZXJ6YWVzdGlsb2d1ZXJyYWVudHJhcsOpeGl0b2zDs3BlemFnZW5kYXbDrWRlb2V2aXRhcnBhZ2luYW1ldHJvc2phdmllcnBhZHJlc2bDoWNpbGNhYmV6YcOhcmVhc3NhbGlkYWVudsOtb2phcMOzbmFidXNvc2JpZW5lc3RleHRvc2xsZXZhcnB1ZWRhbmZ1ZXJ0ZWNvbcO6bmNsYXNlc2h1bWFub3Rlbmlkb2JpbGJhb3VuaWRhZGVzdMOhc2VkaXRhcmNyZWFkb9C00LvRj9GH0YLQvtC60LDQutC40LvQuNGN0YLQvtCy0YHQtdC10LPQvtC/0YDQuNGC0LDQutC10YnQtdGD0LbQtdCa0LDQutCx0LXQt9Cx0YvQu9C+0L3QuNCS0YHQtdC/0L7QtNCt0YLQvtGC0L7QvNGH0LXQvNC90LXRgtC70LXRgtGA0LDQt9C+0L3QsNCz0LTQtdC80L3QtdCU0LvRj9Cf0YDQuNC90LDRgdC90LjRhdGC0LXQvNC60YLQvtCz0L7QtNCy0L7RgtGC0LDQvNCh0KjQkNC80LDRj9Cn0YLQvtCy0LDRgdCy0LDQvNC10LzRg9Ci0LDQutC00LLQsNC90LDQvNGN0YLQuNGN0YLRg9CS0LDQvNGC0LXRhdC/0YDQvtGC0YPRgtC90LDQtNC00L3Rj9CS0L7RgtGC0YDQuNC90LXQudCS0LDRgdC90LjQvNGB0LDQvNGC0L7RgtGA0YPQsdCe0L3QuNC80LjRgNC90LXQtdCe0J7QntC70LjRhtGN0YLQsNCe0L3QsNC90LXQvNC00L7QvNC80L7QudC00LLQtdC+0L3QvtGB0YPQtOCkleClh+CkueCliOCkleClgOCkuOClh+CkleCkvuCkleCli+CklOCksOCkquCksOCkqOClh+Ckj+CkleCkleCkv+CkreClgOCkh+CkuOCkleCksOCkpOCli+CkueCli+CkhuCkquCkueClgOCkr+CkueCkr+CkvuCkpOCkleCkpeCkvmphZ3JhbuCkhuCknOCknOCli+CkheCkrOCkpuCli+Ckl+CkiOCknOCkvuCkl+Ckj+CkueCkruCkh+CkqOCkteCkueCkr+Clh+CkpeClh+CkpeClgOCkmOCksOCknOCkrOCkpuClgOCkleCkiOCknOClgOCkteClh+CkqOCkiOCkqOCkj+CkueCksOCkieCkuOCkruClh+CkleCkruCkteCli+CksuClh+CkuOCkrOCkruCkiOCkpuClh+Ckk+CksOCkhuCkruCkrOCkuOCkreCksOCkrOCkqOCkmuCksuCkruCkqOCkhuCkl+CkuOClgOCksuClgNi52YTZidil2YTZidmH2LDYp9ii2K7Ysdi52K/Yr9in2YTZidmH2LDZh9i12YjYsdi62YrYsdmD2KfZhtmI2YTYp9io2YrZhti52LHYttiw2YTZg9mH2YbYp9mK2YjZhdmC2KfZhNi52YTZitin2YbYp9mE2YPZhtit2KrZidmC2KjZhNmI2K3Yqdin2K7YsdmB2YLYt9i52KjYr9ix2YPZhtil2LDYp9mD2YXYp9in2K3Yr9il2YTYp9mB2YrZh9io2LnYttmD2YrZgdio2K3Yq9mI2YXZhtmI2YfZiNij2YbYp9is2K/Yp9mE2YfYp9iz2YTZhdi52YbYr9mE2YrYs9i52KjYsdi12YTZidmF2YbYsNio2YfYp9ij2YbZh9mF2KvZhNmD2YbYqtin2YTYp9it2YrYq9mF2LXYsdi02LHYrdit2YjZhNmI2YHZitin2LDYp9mE2YPZhNmF2LHYqdin2YbYqtin2YTZgdij2KjZiNiu2KfYtdij2YbYqtin2YbZh9in2YTZiti52LbZiNmI2YLYr9in2KjZhtiu2YrYsdio2YbYqtmE2YPZhdi02KfYodmI2YfZitin2KjZiNmC2LXYtdmI2YXYp9ix2YLZhdij2K3Yr9mG2K3Zhti52K/Zhdix2KPZitin2K3YqdmD2KrYqNiv2YjZhtmK2KzYqNmF2YbZh9iq2K3Yqtis2YfYqdiz2YbYqdmK2KrZhdmD2LHYqdi62LLYqdmG2YHYs9io2YrYqtmE2YTZh9mE2YbYp9iq2YTZg9mC2YTYqNmE2YXYp9i52YbZh9ij2YjZhNi02YrYodmG2YjYsdij2YXYp9mB2YrZg9io2YPZhNiw2KfYqtix2KrYqNio2KPZhtmH2YXYs9in2YbZg9io2YrYudmB2YLYr9it2LPZhtmE2YfZhdi02LnYsdij2YfZhNi02YfYsdmC2LfYsdi32YTYqHByb2ZpbGVzZXJ2aWNlZGVmYXVsdGhpbXNlbGZkZXRhaWxzY29udGVudHN1cHBvcnRzdGFydGVkbWVzc2FnZXN1Y2Nlc3NmYXNoaW9uPHRpdGxlPmNvdW50cnlhY2NvdW50Y3JlYXRlZHN0b3JpZXNyZXN1bHRzcnVubmluZ3Byb2Nlc3N3cml0aW5nb2JqZWN0c3Zpc2libGV3ZWxjb21lYXJ0aWNsZXVua25vd25uZXR3b3JrY29tcGFueWR5bmFtaWNicm93c2VycHJpdmFjeXByb2JsZW1TZXJ2aWNlcmVzcGVjdGRpc3BsYXlyZXF1ZXN0cmVzZXJ2ZXdlYnNpdGVoaXN0b3J5ZnJpZW5kc29wdGlvbnN3b3JraW5ndmVyc2lvbm1pbGxpb25jaGFubmVsd2luZG93LmFkZHJlc3N2aXNpdGVkd2VhdGhlcmNvcnJlY3Rwcm9kdWN0ZWRpcmVjdGZvcndhcmR5b3UgY2FucmVtb3ZlZHN1YmplY3Rjb250cm9sYXJjaGl2ZWN1cnJlbnRyZWFkaW5nbGlicmFyeWxpbWl0ZWRtYW5hZ2VyZnVydGhlcnN1bW1hcnltYWNoaW5lbWludXRlc3ByaXZhdGVjb250ZXh0cHJvZ3JhbXNvY2lldHludW1iZXJzd3JpdHRlbmVuYWJsZWR0cmlnZ2Vyc291cmNlc2xvYWRpbmdlbGVtZW50cGFydG5lcmZpbmFsbHlwZXJmZWN0bWVhbmluZ3N5c3RlbXNrZWVwaW5nY3VsdHVyZSZxdW90Oyxqb3VybmFscHJvamVjdHN1cmZhY2VzJnF1b3Q7ZXhwaXJlc3Jldmlld3NiYWxhbmNlRW5nbGlzaENvbnRlbnR0aHJvdWdoUGxlYXNlIG9waW5pb25jb250YWN0YXZlcmFnZXByaW1hcnl2aWxsYWdlU3BhbmlzaGdhbGxlcnlkZWNsaW5lbWVldGluZ21pc3Npb25wb3B1bGFycXVhbGl0eW1lYXN1cmVnZW5lcmFsc3BlY2llc3Nlc3Npb25zZWN0aW9ud3JpdGVyc2NvdW50ZXJpbml0aWFscmVwb3J0c2ZpZ3VyZXNtZW1iZXJzaG9sZGluZ2Rpc3B1dGVlYXJsaWVyZXhwcmVzc2RpZ2l0YWxwaWN0dXJlQW5vdGhlcm1hcnJpZWR0cmFmZmljbGVhZGluZ2NoYW5nZWRjZW50cmFsdmljdG9yeWltYWdlcy9yZWFzb25zc3R1ZGllc2ZlYXR1cmVsaXN0aW5nbXVzdCBiZXNjaG9vbHNWZXJzaW9udXN1YWxseWVwaXNvZGVwbGF5aW5nZ3Jvd2luZ29idmlvdXNvdmVybGF5cHJlc2VudGFjdGlvbnM8L3VsPg0Kd3JhcHBlcmFscmVhZHljZXJ0YWlucmVhbGl0eXN0b3JhZ2Vhbm90aGVyZGVza3RvcG9mZmVyZWRwYXR0ZXJudW51c3VhbERpZ2l0YWxjYXBpdGFsV2Vic2l0ZWZhaWx1cmVjb25uZWN0cmVkdWNlZEFuZHJvaWRkZWNhZGVzcmVndWxhciAmYW1wOyBhbmltYWxzcmVsZWFzZUF1dG9tYXRnZXR0aW5nbWV0aG9kc25vdGhpbmdQb3B1bGFyY2FwdGlvbmxldHRlcnNjYXB0dXJlc2NpZW5jZWxpY2Vuc2VjaGFuZ2VzRW5nbGFuZD0xJmFtcDtIaXN0b3J5ID0gbmV3IENlbnRyYWx1cGRhdGVkU3BlY2lhbE5ldHdvcmtyZXF1aXJlY29tbWVudHdhcm5pbmdDb2xsZWdldG9vbGJhcnJlbWFpbnNiZWNhdXNlZWxlY3RlZERldXRzY2hmaW5hbmNld29ya2Vyc3F1aWNrbHliZXR3ZWVuZXhhY3RseXNldHRpbmdkaXNlYXNlU29jaWV0eXdlYXBvbnNleGhpYml0Jmx0OyEtLUNvbnRyb2xjbGFzc2VzY292ZXJlZG91dGxpbmVhdHRhY2tzZGV2aWNlcyh3aW5kb3dwdXJwb3NldGl0bGU9Ik1vYmlsZSBraWxsaW5nc2hvd2luZ0l0YWxpYW5kcm9wcGVkaGVhdmlseWVmZmVjdHMtMSddKTsKY29uZmlybUN1cnJlbnRhZHZhbmNlc2hhcmluZ29wZW5pbmdkcmF3aW5nYmlsbGlvbm9yZGVyZWRHZXJtYW55cmVsYXRlZDwvZm9ybT5pbmNsdWRld2hldGhlcmRlZmluZWRTY2llbmNlY2F0YWxvZ0FydGljbGVidXR0b25zbGFyZ2VzdHVuaWZvcm1qb3VybmV5c2lkZWJhckNoaWNhZ29ob2xpZGF5R2VuZXJhbHBhc3NhZ2UsJnF1b3Q7YW5pbWF0ZWZlZWxpbmdhcnJpdmVkcGFzc2luZ25hdHVyYWxyb3VnaGx5LgoKVGhlIGJ1dCBub3RkZW5zaXR5QnJpdGFpbkNoaW5lc2VsYWNrIG9mdHJpYnV0ZUlyZWxhbmQiIGRhdGEtZmFjdG9yc3JlY2VpdmV0aGF0IGlzTGlicmFyeWh1c2JhbmRpbiBmYWN0YWZmYWlyc0NoYXJsZXNyYWRpY2FsYnJvdWdodGZpbmRpbmdsYW5kaW5nOmxhbmc9InJldHVybiBsZWFkZXJzcGxhbm5lZHByZW1pdW1wYWNrYWdlQW1lcmljYUVkaXRpb25dJnF1b3Q7TWVzc2FnZW5lZWQgdG92YWx1ZT0iY29tcGxleGxvb2tpbmdzdGF0aW9uYmVsaWV2ZXNtYWxsZXItbW9iaWxlcmVjb3Jkc3dhbnQgdG9raW5kIG9mRmlyZWZveHlvdSBhcmVzaW1pbGFyc3R1ZGllZG1heGltdW1oZWFkaW5ncmFwaWRseWNsaW1hdGVraW5nZG9tZW1lcmdlZGFtb3VudHNmb3VuZGVkcGlvbmVlcmZvcm11bGFkeW5hc3R5aG93IHRvIFN1cHBvcnRyZXZlbnVlZWNvbm9teVJlc3VsdHNicm90aGVyc29sZGllcmxhcmdlbHljYWxsaW5nLiZxdW90O0FjY291bnRFZHdhcmQgc2VnbWVudFJvYmVydCBlZmZvcnRzUGFjaWZpY2xlYXJuZWR1cCB3aXRoaGVpZ2h0OndlIGhhdmVBbmdlbGVzbmF0aW9uc19zZWFyY2hhcHBsaWVkYWNxdWlyZW1hc3NpdmVncmFudGVkOiBmYWxzZXRyZWF0ZWRiaWdnZXN0YmVuZWZpdGRyaXZpbmdTdHVkaWVzbWluaW11bXBlcmhhcHNtb3JuaW5nc2VsbGluZ2lzIHVzZWRyZXZlcnNldmFyaWFudCByb2xlPSJtaXNzaW5nYWNoaWV2ZXByb21vdGVzdHVkZW50c29tZW9uZWV4dHJlbWVyZXN0b3JlYm90dG9tOmV2b2x2ZWRhbGwgdGhlc2l0ZW1hcGVuZ2xpc2h3YXkgdG8gIEF1Z3VzdHN5bWJvbHNDb21wYW55bWF0dGVyc211c2ljYWxhZ2FpbnN0c2VydmluZ30pKCk7DQpwYXltZW50dHJvdWJsZWNvbmNlcHRjb21wYXJlcGFyZW50c3BsYXllcnNyZWdpb25zbW9uaXRvciAnJ1RoZSB3aW5uaW5nZXhwbG9yZWFkYXB0ZWRHYWxsZXJ5cHJvZHVjZWFiaWxpdHllbmhhbmNlY2FyZWVycykuIFRoZSBjb2xsZWN0U2VhcmNoIGFuY2llbnRleGlzdGVkZm9vdGVyIGhhbmRsZXJwcmludGVkY29uc29sZUVhc3Rlcm5leHBvcnRzd2luZG93c0NoYW5uZWxpbGxlZ2FsbmV1dHJhbHN1Z2dlc3RfaGVhZGVyc2lnbmluZy5odG1sIj5zZXR0bGVkd2VzdGVybmNhdXNpbmctd2Via2l0Y2xhaW1lZEp1c3RpY2VjaGFwdGVydmljdGltc1Rob21hcyBtb3ppbGxhcHJvbWlzZXBhcnRpZXNlZGl0aW9ub3V0c2lkZTpmYWxzZSxodW5kcmVkT2x5bXBpY19idXR0b25hdXRob3JzcmVhY2hlZGNocm9uaWNkZW1hbmRzc2Vjb25kc3Byb3RlY3RhZG9wdGVkcHJlcGFyZW5laXRoZXJncmVhdGx5Z3JlYXRlcm92ZXJhbGxpbXByb3ZlY29tbWFuZHNwZWNpYWxzZWFyY2gud29yc2hpcGZ1bmRpbmd0aG91Z2h0aGlnaGVzdGluc3RlYWR1dGlsaXR5cXVhcnRlckN1bHR1cmV0ZXN0aW5nY2xlYXJseWV4cG9zZWRCcm93c2VybGliZXJhbH0gY2F0Y2hQcm9qZWN0ZXhhbXBsZWhpZGUoKTtGbG9yaWRhYW5zd2Vyc2FsbG93ZWRFbXBlcm9yZGVmZW5zZXNlcmlvdXNmcmVlZG9tU2V2ZXJhbC1idXR0b25GdXJ0aGVyb3V0IG9mICE9IG51bGx0cmFpbmVkRGVubWFya3ZvaWQoMCkvYWxsLmpzcHJldmVudFJlcXVlc3RTdGVwaGVuCgpXaGVuIG9ic2VydmU8L2gyPg0KTW9kZXJuIHByb3ZpZGUiIGFsdD0iYm9yZGVycy4KCkZvciAKCk1hbnkgYXJ0aXN0c3Bvd2VyZWRwZXJmb3JtZmljdGlvbnR5cGUgb2ZtZWRpY2FsdGlja2V0c29wcG9zZWRDb3VuY2lsd2l0bmVzc2p1c3RpY2VHZW9yZ2UgQmVsZ2l1bS4uLjwvYT50d2l0dGVybm90YWJseXdhaXRpbmd3YXJmYXJlIE90aGVyIHJhbmtpbmdwaHJhc2VzbWVudGlvbnN1cnZpdmVzY2hvbGFyPC9wPg0KIENvdW50cnlpZ25vcmVkbG9zcyBvZmp1c3QgYXNHZW9yZ2lhc3RyYW5nZTxoZWFkPjxzdG9wcGVkMSddKTsNCmlzbGFuZHNub3RhYmxlYm9yZGVyOmxpc3Qgb2ZjYXJyaWVkMTAwLDAwMDwvaDM+CiBzZXZlcmFsYmVjb21lc3NlbGVjdCB3ZWRkaW5nMDAuaHRtbG1vbmFyY2hvZmYgdGhldGVhY2hlcmhpZ2hseSBiaW9sb2d5bGlmZSBvZm9yIGV2ZW5yaXNlIG9mJnJhcXVvO3BsdXNvbmVodW50aW5nKHRob3VnaERvdWdsYXNqb2luaW5nY2lyY2xlc0ZvciB0aGVBbmNpZW50VmlldG5hbXZlaGljbGVzdWNoIGFzY3J5c3RhbHZhbHVlID1XaW5kb3dzZW5qb3llZGEgc21hbGxhc3N1bWVkPGEgaWQ9ImZvcmVpZ24gQWxsIHJpaG93IHRoZURpc3BsYXlyZXRpcmVkaG93ZXZlcmhpZGRlbjtiYXR0bGVzc2Vla2luZ2NhYmluZXR3YXMgbm90bG9vayBhdGNvbmR1Y3RnZXQgdGhlSmFudWFyeWhhcHBlbnN0dXJuaW5nYTpob3Zlck9ubGluZSBGcmVuY2ggbGFja2luZ3R5cGljYWxleHRyYWN0ZW5lbWllc2V2ZW4gaWZnZW5lcmF0ZGVjaWRlZGFyZSBub3Qvc2VhcmNoYmVsaWVmcy1pbWFnZTpsb2NhdGVkc3RhdGljLmxvZ2luIj5jb252ZXJ0dmlvbGVudGVudGVyZWRmaXJzdCI+Y2lyY3VpdEZpbmxhbmRjaGVtaXN0c2hlIHdhczEwcHg7Ij5hcyBzdWNoZGl2aWRlZDwvc3Bhbj53aWxsIGJlbGluZSBvZmEgZ3JlYXRteXN0ZXJ5L2luZGV4LmZhbGxpbmdkdWUgdG8gcmFpbHdheWNvbGxlZ2Vtb25zdGVyZGVzY2VudGl0IHdpdGhudWNsZWFySmV3aXNoIHByb3Rlc3RCcml0aXNoZmxvd2Vyc3ByZWRpY3RyZWZvcm1zYnV0dG9uIHdobyB3YXNsZWN0dXJlaW5zdGFudHN1aWNpZGVnZW5lcmljcGVyaW9kc21hcmtldHNTb2NpYWwgZmlzaGluZ2NvbWJpbmVncmFwaGljd2lubmVyczxiciAvPjxieSB0aGUgTmF0dXJhbFByaXZhY3ljb29raWVzb3V0Y29tZXJlc29sdmVTd2VkaXNoYnJpZWZseVBlcnNpYW5zbyBtdWNoQ2VudHVyeWRlcGljdHNjb2x1bW5zaG91c2luZ3NjcmlwdHNuZXh0IHRvYmVhcmluZ21hcHBpbmdyZXZpc2VkalF1ZXJ5KC13aWR0aDp0aXRsZSI+dG9vbHRpcFNlY3Rpb25kZXNpZ25zVHVya2lzaHlvdW5nZXIubWF0Y2gofSkoKTsKCmJ1cm5pbmdvcGVyYXRlZGVncmVlc3NvdXJjZT1SaWNoYXJkY2xvc2VseXBsYXN0aWNlbnRyaWVzPC90cj4NCmNvbG9yOiN1bCBpZD0icG9zc2Vzc3JvbGxpbmdwaHlzaWNzZmFpbGluZ2V4ZWN1dGVjb250ZXN0bGluayB0b0RlZmF1bHQ8YnIgLz4KOiB0cnVlLGNoYXJ0ZXJ0b3VyaXNtY2xhc3NpY3Byb2NlZWRleHBsYWluPC9oMT4NCm9ubGluZS4/eG1sIHZlaGVscGluZ2RpYW1vbmR1c2UgdGhlYWlybGluZWVuZCAtLT4pLmF0dHIocmVhZGVyc2hvc3RpbmcjZmZmZmZmcmVhbGl6ZVZpbmNlbnRzaWduYWxzIHNyYz0iL1Byb2R1Y3RkZXNwaXRlZGl2ZXJzZXRlbGxpbmdQdWJsaWMgaGVsZCBpbkpvc2VwaCB0aGVhdHJlYWZmZWN0czxzdHlsZT5hIGxhcmdlZG9lc24ndGxhdGVyLCBFbGVtZW50ZmF2aWNvbmNyZWF0b3JIdW5nYXJ5QWlycG9ydHNlZSB0aGVzbyB0aGF0TWljaGFlbFN5c3RlbXNQcm9ncmFtcywgYW5kICB3aWR0aD1lJnF1b3Q7dHJhZGluZ2xlZnQiPgpwZXJzb25zR29sZGVuIEFmZmFpcnNncmFtbWFyZm9ybWluZ2Rlc3Ryb3lpZGVhIG9mY2FzZSBvZm9sZGVzdCB0aGlzIGlzLnNyYyA9IGNhcnRvb25yZWdpc3RyQ29tbW9uc011c2xpbXNXaGF0IGlzaW4gbWFueW1hcmtpbmdyZXZlYWxzSW5kZWVkLGVxdWFsbHkvc2hvd19hb3V0ZG9vcmVzY2FwZShBdXN0cmlhZ2VuZXRpY3N5c3RlbSxJbiB0aGUgc2l0dGluZ0hlIGFsc29Jc2xhbmRzQWNhZGVteQoJCTwhLS1EYW5pZWwgYmluZGluZ2Jsb2NrIj5pbXBvc2VkdXRpbGl6ZUFicmFoYW0oZXhjZXB0e3dpZHRoOnB1dHRpbmcpLmh0bWwofHwgW107CkRBVEFbICpraXRjaGVubW91bnRlZGFjdHVhbCBkaWFsZWN0bWFpbmx5IF9ibGFuaydpbnN0YWxsZXhwZXJ0c2lmKHR5cGVJdCBhbHNvJmNvcHk7ICI+VGVybXNib3JuIGluT3B0aW9uc2Vhc3Rlcm50YWxraW5nY29uY2VybmdhaW5lZCBvbmdvaW5nanVzdGlmeWNyaXRpY3NmYWN0b3J5aXRzIG93bmFzc2F1bHRpbnZpdGVkbGFzdGluZ2hpcyBvd25ocmVmPSIvIiByZWw9ImRldmVsb3Bjb25jZXJ0ZGlhZ3JhbWRvbGxhcnNjbHVzdGVycGhwP2lkPWFsY29ob2wpO30pKCk7dXNpbmcgYT48c3Bhbj52ZXNzZWxzcmV2aXZhbEFkZHJlc3NhbWF0ZXVyYW5kcm9pZGFsbGVnZWRpbGxuZXNzd2Fsa2luZ2NlbnRlcnNxdWFsaWZ5bWF0Y2hlc3VuaWZpZWRleHRpbmN0RGVmZW5zZWRpZWQgaW4KCTwhLS0gY3VzdG9tc2xpbmtpbmdMaXR0bGUgQm9vayBvZmV2ZW5pbmdtaW4uanM/YXJlIHRoZWtvbnRha3R0b2RheSdzLmh0bWwiIHRhcmdldD13ZWFyaW5nQWxsIFJpZzsKfSkoKTtyYWlzaW5nIEFsc28sIGNydWNpYWxhYm91dCI+ZGVjbGFyZS0tPgo8c2NmaXJlZm94YXMgbXVjaGFwcGxpZXNpbmRleCwgcywgYnV0IHR5cGUgPSAKDQo8IS0tdG93YXJkc1JlY29yZHNQcml2YXRlRm9yZWlnblByZW1pZXJjaG9pY2VzVmlydHVhbHJldHVybnNDb21tZW50UG93ZXJlZGlubGluZTtwb3ZlcnR5Y2hhbWJlckxpdmluZyB2b2x1bWVzQW50aG9ueWxvZ2luIiBSZWxhdGVkRWNvbm9teXJlYWNoZXNjdXR0aW5nZ3Jhdml0eWxpZmUgaW5DaGFwdGVyLXNoYWRvd05vdGFibGU8L3RkPg0KIHJldHVybnN0YWRpdW13aWRnZXRzdmFyeWluZ3RyYXZlbHNoZWxkIGJ5d2hvIGFyZXdvcmsgaW5mYWN1bHR5YW5ndWxhcndobyBoYWRhaXJwb3J0dG93biBvZgoKU29tZSAnY2xpY2snY2hhcmdlc2tleXdvcmRpdCB3aWxsY2l0eSBvZih0aGlzKTtBbmRyZXcgdW5pcXVlIGNoZWNrZWRvciBtb3JlMzAwcHg7IHJldHVybjtyc2lvbj0icGx1Z2luc3dpdGhpbiBoZXJzZWxmU3RhdGlvbkZlZGVyYWx2ZW50dXJlcHVibGlzaHNlbnQgdG90ZW5zaW9uYWN0cmVzc2NvbWUgdG9maW5nZXJzRHVrZSBvZnBlb3BsZSxleHBsb2l0d2hhdCBpc2hhcm1vbnlhIG1ham9yIjoiaHR0cGluIGhpcyBtZW51Ij4KbW9udGhseW9mZmljZXJjb3VuY2lsZ2FpbmluZ2V2ZW4gaW5TdW1tYXJ5ZGF0ZSBvZmxveWFsdHlmaXRuZXNzYW5kIHdhc2VtcGVyb3JzdXByZW1lU2Vjb25kIGhlYXJpbmdSdXNzaWFubG9uZ2VzdEFsYmVydGFsYXRlcmFsc2V0IG9mIHNtYWxsIj4uYXBwZW5kZG8gd2l0aGZlZGVyYWxiYW5rIG9mYmVuZWF0aERlc3BpdGVDYXBpdGFsZ3JvdW5kcyksIGFuZCBwZXJjZW50aXQgZnJvbWNsb3Npbmdjb250YWluSW5zdGVhZGZpZnRlZW5hcyB3ZWxsLnlhaG9vLnJlc3BvbmRmaWdodGVyb2JzY3VyZXJlZmxlY3RvcmdhbmljPSBNYXRoLmVkaXRpbmdvbmxpbmUgcGFkZGluZ2Egd2hvbGVvbmVycm9yeWVhciBvZmVuZCBvZiBiYXJyaWVyd2hlbiBpdGhlYWRlciBob21lIG9mcmVzdW1lZHJlbmFtZWRzdHJvbmc+aGVhdGluZ3JldGFpbnNjbG91ZGZyd2F5IG9mIE1hcmNoIDFrbm93aW5naW4gcGFydEJldHdlZW5sZXNzb25zY2xvc2VzdHZpcnR1YWxsaW5rcyI+Y3Jvc3NlZEVORCAtLT5mYW1vdXMgYXdhcmRlZExpY2Vuc2VIZWFsdGggZmFpcmx5IHdlYWx0aHltaW5pbWFsQWZyaWNhbmNvbXBldGVsYWJlbCI+c2luZ2luZ2Zhcm1lcnNCcmFzaWwpZGlzY3Vzc3JlcGxhY2VHcmVnb3J5Zm9udCBjb3B1cnN1ZWRhcHBlYXJzbWFrZSB1cHJvdW5kZWRib3RoIG9mYmxvY2tlZHNhdyB0aGVvZmZpY2VzY29sb3Vyc2lmKGRvY3V3aGVuIGhlZW5mb3JjZXB1c2goZnVBdWd1c3QgVVRGLTgiPkZhbnRhc3lpbiBtb3N0aW5qdXJlZFVzdWFsbHlmYXJtaW5nY2xvc3VyZW9iamVjdCBkZWZlbmNldXNlIG9mIE1lZGljYWw8Ym9keT4KZXZpZGVudGJlIHVzZWRrZXlDb2Rlc2l4dGVlbklzbGFtaWMjMDAwMDAwZW50aXJlIHdpZGVseSBhY3RpdmUgKHR5cGVvZm9uZSBjYW5jb2xvciA9c3BlYWtlcmV4dGVuZHNQaHlzaWNzdGVycmFpbjx0Ym9keT5mdW5lcmFsdmlld2luZ21pZGRsZSBjcmlja2V0cHJvcGhldHNoaWZ0ZWRkb2N0b3JzUnVzc2VsbCB0YXJnZXRjb21wYWN0YWxnZWJyYXNvY2lhbC1idWxrIG9mbWFuIGFuZDwvdGQ+CiBoZSBsZWZ0KS52YWwoKWZhbHNlKTtsb2dpY2FsYmFua2luZ2hvbWUgdG9uYW1pbmcgQXJpem9uYWNyZWRpdHMpOwp9KTsKZm91bmRlcmluIHR1cm5Db2xsaW5zYmVmb3JlIEJ1dCB0aGVjaGFyZ2VkVGl0bGUiPkNhcHRhaW5zcGVsbGVkZ29kZGVzc1RhZyAtLT5BZGRpbmc6YnV0IHdhc1JlY2VudCBwYXRpZW50YmFjayBpbj1mYWxzZSZMaW5jb2xud2Uga25vd0NvdW50ZXJKdWRhaXNtc2NyaXB0IGFsdGVyZWQnXSk7CiAgaGFzIHRoZXVuY2xlYXJFdmVudCcsYm90aCBpbm5vdCBhbGwKCjwhLS0gcGxhY2luZ2hhcmQgdG8gY2VudGVyc29ydCBvZmNsaWVudHNzdHJlZXRzQmVybmFyZGFzc2VydHN0ZW5kIHRvZmFudGFzeWRvd24gaW5oYXJib3VyRnJlZWRvbWpld2VscnkvYWJvdXQuLnNlYXJjaGxlZ2VuZHNpcyBtYWRlbW9kZXJuIG9ubHkgb25vbmx5IHRvaW1hZ2UiIGxpbmVhciBwYWludGVyYW5kIG5vdHJhcmVseSBhY3JvbnltZGVsaXZlcnNob3J0ZXIwMCZhbXA7YXMgbWFueXdpZHRoPSIvKiA8IVtDdGl0bGUgPW9mIHRoZSBsb3dlc3QgcGlja2VkIGVzY2FwZWR1c2VzIG9mcGVvcGxlcyBQdWJsaWNNYXR0aGV3dGFjdGljc2RhbWFnZWR3YXkgZm9ybGF3cyBvZmVhc3kgdG8gd2luZG93c3Ryb25nICBzaW1wbGV9Y2F0Y2goc2V2ZW50aGluZm9ib3h3ZW50IHRvcGFpbnRlZGNpdGl6ZW5JIGRvbid0cmV0cmVhdC4gU29tZSB3dy4iKTsKYm9tYmluZ21haWx0bzptYWRlIGluLiBNYW55IGNhcnJpZXN8fHt9O3dpd29yayBvZnN5bm9ueW1kZWZlYXRzZmF2b3JlZG9wdGljYWxwYWdlVHJhdW5sZXNzIHNlbmRpbmdsZWZ0Ij48Y29tU2NvckFsbCB0aGVqUXVlcnkudG91cmlzdENsYXNzaWNmYWxzZSIgV2lsaGVsbXN1YnVyYnNnZW51aW5lYmlzaG9wcy5zcGxpdChnbG9iYWwgZm9sbG93c2JvZHkgb2Zub21pbmFsQ29udGFjdHNlY3VsYXJsZWZ0IHRvY2hpZWZseS1oaWRkZW4tYmFubmVyPC9saT4KCi4gV2hlbiBpbiBib3RoZGlzbWlzc0V4cGxvcmVhbHdheXMgdmlhIHRoZXNwYcOxb2x3ZWxmYXJlcnVsaW5nIGFycmFuZ2VjYXB0YWluaGlzIHNvbnJ1bGUgb2ZoZSB0b29raXRzZWxmLD0wJmFtcDsoY2FsbGVkc2FtcGxlc3RvIG1ha2Vjb20vcGFnTWFydGluIEtlbm5lZHlhY2NlcHRzZnVsbCBvZmhhbmRsZWRCZXNpZGVzLy8tLT48L2FibGUgdG90YXJnZXRzZXNzZW5jZWhpbSB0byBpdHMgYnkgY29tbW9uLm1pbmVyYWx0byB0YWtld2F5cyB0b3Mub3JnL2xhZHZpc2VkcGVuYWx0eXNpbXBsZTppZiB0aGV5TGV0dGVyc2Egc2hvcnRIZXJiZXJ0c3RyaWtlcyBncm91cHMubGVuZ3RoZmxpZ2h0c292ZXJsYXBzbG93bHkgbGVzc2VyIHNvY2lhbCA8L3A+CgkJaXQgaW50b3JhbmtlZCByYXRlIG9mdWw+DQogIGF0dGVtcHRwYWlyIG9mbWFrZSBpdEtvbnRha3RBbnRvbmlvaGF2aW5nIHJhdGluZ3MgYWN0aXZlc3RyZWFtc3RyYXBwZWQiKS5jc3MoaG9zdGlsZWxlYWQgdG9saXR0bGUgZ3JvdXBzLFBpY3R1cmUtLT4NCg0KIHJvd3M9IiBvYmplY3RpbnZlcnNlPGZvb3RlckN1c3RvbVY+PFwvc2Nyc29sdmluZ0NoYW1iZXJzbGF2ZXJ5d291bmRlZHdoZXJlYXMhPSAndW5kZm9yIGFsbHBhcnRseSAtcmlnaHQ6QXJhYmlhbmJhY2tlZCBjZW50dXJ5dW5pdCBvZm1vYmlsZS1FdXJvcGUsaXMgaG9tZXJpc2sgb2ZkZXNpcmVkQ2xpbnRvbmNvc3Qgb2ZhZ2Ugb2YgYmVjb21lIG5vbmUgb2ZwJnF1b3Q7TWlkZGxlIGVhZCcpWzBDcml0aWNzc3R1ZGlvcz4mY29weTtncm91cCI+YXNzZW1ibG1ha2luZyBwcmVzc2Vkd2lkZ2V0LnBzOiIgPyByZWJ1aWx0Ynkgc29tZUZvcm1lciBlZGl0b3JzZGVsYXllZENhbm9uaWNoYWQgdGhlcHVzaGluZ2NsYXNzPSJidXQgYXJlcGFydGlhbEJhYnlsb25ib3R0b20gY2FycmllckNvbW1hbmRpdHMgdXNlQXMgd2l0aGNvdXJzZXNhIHRoaXJkZGVub3Rlc2Fsc28gaW5Ib3VzdG9uMjBweDsiPmFjY3VzZWRkb3VibGUgZ29hbCBvZkZhbW91cyApLmJpbmQocHJpZXN0cyBPbmxpbmVpbiBKdWx5c3QgKyAiZ2NvbnN1bHRkZWNpbWFsaGVscGZ1bHJldml2ZWRpcyB2ZXJ5cicrJ2lwdGxvc2luZyBmZW1hbGVzaXMgYWxzb3N0cmluZ3NkYXlzIG9mYXJyaXZhbGZ1dHVyZSA8b2JqZWN0Zm9yY2luZ1N0cmluZygiIC8+CgkJaGVyZSBpc2VuY29kZWQuICBUaGUgYmFsbG9vbmRvbmUgYnkvY29tbW9uYmdjb2xvcmxhdyBvZiBJbmRpYW5hYXZvaWRlZGJ1dCB0aGUycHggM3B4anF1ZXJ5LmFmdGVyIGFwb2xpY3kubWVuIGFuZGZvb3Rlci09IHRydWU7Zm9yIHVzZXNjcmVlbi5JbmRpYW4gaW1hZ2UgPWZhbWlseSxodHRwOi8vICZuYnNwO2RyaXZlcnNldGVybmFsc2FtZSBhc25vdGljZWR2aWV3ZXJzfSkoKTsKIGlzIG1vcmVzZWFzb25zZm9ybWVyIHRoZSBuZXdpcyBqdXN0Y29uc2VudCBTZWFyY2h3YXMgdGhld2h5IHRoZXNoaXBwZWRicj48YnI+d2lkdGg6IGhlaWdodD1tYWRlIG9mY3Vpc2luZWlzIHRoYXRhIHZlcnkgQWRtaXJhbCBmaXhlZDtub3JtYWwgTWlzc2lvblByZXNzLCBvbnRhcmlvY2hhcnNldHRyeSB0byBpbnZhZGVkPSJ0cnVlInNwYWNpbmdpcyBtb3N0YSBtb3JlIHRvdGFsbHlmYWxsIG9mfSk7DQogIGltbWVuc2V0aW1lIGluc2V0IG91dHNhdGlzZnl0byBmaW5kZG93biB0b2xvdCBvZiBQbGF5ZXJzaW4gSnVuZXF1YW50dW1ub3QgdGhldGltZSB0b2Rpc3RhbnRGaW5uaXNoc3JjID0gKHNpbmdsZSBoZWxwIG9mR2VybWFuIGxhdyBhbmRsYWJlbGVkZm9yZXN0c2Nvb2tpbmdzcGFjZSI+aGVhZGVyLXdlbGwgYXNTdGFubGV5YnJpZGdlcy9nbG9iYWxDcm9hdGlhIEFib3V0IFswXTsKICBpdCwgYW5kZ3JvdXBlZGJlaW5nIGEpe3Rocm93aGUgbWFkZWxpZ2h0ZXJldGhpY2FsRkZGRkZGImJvdHRvbSJsaWtlIGEgZW1wbG95c2xpdmUgaW5hcyBzZWVucHJpbnRlcm1vc3Qgb2Z1Yi1saW5rcmVqZWN0c2FuZCB1c2VpbWFnZSI+c3VjY2VlZGZlZWRpbmdOdWNsZWFyaW5mb3JtYXRvIGhlbHBXb21lbidzTmVpdGhlck1leGljYW5wcm90ZWluPHRhYmxlIGJ5IG1hbnloZWFsdGh5bGF3c3VpdGRldmlzZWQucHVzaCh7c2VsbGVyc3NpbXBseSBUaHJvdWdoLmNvb2tpZSBJbWFnZShvbGRlciI+dXMuanMiPiBTaW5jZSB1bml2ZXJzbGFyZ2VyIG9wZW4gdG8hLS0gZW5kbGllcyBpbiddKTsNCiAgbWFya2V0d2hvIGlzICgiRE9NQ29tYW5hZ2Vkb25lIGZvcnR5cGVvZiBLaW5nZG9tcHJvZml0c3Byb3Bvc2V0byBzaG93Y2VudGVyO21hZGUgaXRkcmVzc2Vkd2VyZSBpbm1peHR1cmVwcmVjaXNlYXJpc2luZ3NyYyA9ICdtYWtlIGEgc2VjdXJlZEJhcHRpc3R2b3RpbmcgCgkJdmFyIE1hcmNoIDJncmV3IHVwQ2xpbWF0ZS5yZW1vdmVza2lsbGVkd2F5IHRoZTwvaGVhZD5mYWNlIG9mYWN0aW5nIHJpZ2h0Ij50byB3b3JrcmVkdWNlc2hhcyBoYWRlcmVjdGVkc2hvdygpO2FjdGlvbj1ib29rIG9mYW4gYXJlYT09ICJodHQ8aGVhZGVyCjxodG1sPmNvbmZvcm1mYWNpbmcgY29va2llLnJlbHkgb25ob3N0ZWQgLmN1c3RvbWhlIHdlbnRidXQgZm9yc3ByZWFkIEZhbWlseSBhIG1lYW5zb3V0IHRoZWZvcnVtcy5mb290YWdlIj5Nb2JpbENsZW1lbnRzIiBpZD0iYXMgaGlnaGludGVuc2UtLT48IS0tZmVtYWxlIGlzIHNlZW5pbXBsaWVkc2V0IHRoZWEgc3RhdGVhbmQgaGlzZmFzdGVzdGJlc2lkZXNidXR0b25fYm91bmRlZCI+PGltZyBJbmZvYm94ZXZlbnRzLGEgeW91bmdhbmQgYXJlTmF0aXZlIGNoZWFwZXJUaW1lb3V0YW5kIGhhc2VuZ2luZXN3b24gdGhlKG1vc3RseXJpZ2h0OiBmaW5kIGEgLWJvdHRvbVByaW5jZSBhcmVhIG9mbW9yZSBvZnNlYXJjaF9uYXR1cmUsbGVnYWxseXBlcmlvZCxsYW5kIG9mb3Igd2l0aGluZHVjZWRwcm92aW5nbWlzc2lsZWxvY2FsbHlBZ2FpbnN0dGhlIHdheWsmcXVvdDtweDsiPg0KcHVzaGVkIGFiYW5kb25udW1lcmFsQ2VydGFpbkluIHRoaXNtb3JlIGlub3Igc29tZW5hbWUgaXNhbmQsIGluY3Jvd25lZElTQk4gMC1jcmVhdGVzT2N0b2Jlcm1heSBub3RjZW50ZXIgbGF0ZSBpbkRlZmVuY2VlbmFjdGVkd2lzaCB0b2Jyb2FkbHljb29saW5nb25sb2FkPWl0LiBUaGVyZWNvdmVyTWVtYmVyc2hlaWdodCBhc3N1bWVzPGh0bWw+CnBlb3BsZS5pbiBvbmUgPXdpbmRvd2Zvb3Rlcl9hIGdvb2QgcmVrbGFtYW90aGVycyx0byB0aGlzX2Nvb2tpZXBhbmVsIj5Mb25kb24sZGVmaW5lc2NydXNoZWRiYXB0aXNtY29hc3RhbHN0YXR1cyB0aXRsZSIgbW92ZSB0b2xvc3QgaW5iZXR0ZXIgaW1wbGllc3JpdmFscnlzZXJ2ZXJzIFN5c3RlbVBlcmhhcHNlcyBhbmQgY29udGVuZGZsb3dpbmdsYXN0ZWQgcmlzZSBpbkdlbmVzaXN2aWV3IG9mcmlzaW5nIHNlZW0gdG9idXQgaW4gYmFja2luZ2hlIHdpbGxnaXZlbiBhZ2l2aW5nIGNpdGllcy5mbG93IG9mIExhdGVyIGFsbCBidXRIaWdod2F5b25seSBieXNpZ24gb2ZoZSBkb2VzZGlmZmVyc2JhdHRlcnkmYW1wO2xhc2luZ2xlc3RocmVhdHNpbnRlZ2VydGFrZSBvbnJlZnVzZWRjYWxsZWQgPVVTJmFtcFNlZSB0aGVuYXRpdmVzYnkgdGhpc3N5c3RlbS5oZWFkIG9mOmhvdmVyLGxlc2JpYW5zdXJuYW1lYW5kIGFsbGNvbW1vbi9oZWFkZXJfX3BhcmFtc0hhcnZhcmQvcGl4ZWwucmVtb3ZhbHNvIGxvbmdyb2xlIG9mam9pbnRseXNreXNjcmFVbmljb2RlYnIgLz4NCkF0bGFudGFudWNsZXVzQ291bnR5LHB1cmVseSBjb3VudCI+ZWFzaWx5IGJ1aWxkIGFvbmNsaWNrYSBnaXZlbnBvaW50ZXJoJnF1b3Q7ZXZlbnRzIGVsc2UgewpkaXRpb25zbm93IHRoZSwgd2l0aCBtYW4gd2hvb3JnL1dlYm9uZSBhbmRjYXZhbHJ5SGUgZGllZHNlYXR0bGUwMCwwMDAge3dpbmRvd2hhdmUgdG9pZih3aW5kYW5kIGl0c3NvbGVseSBtJnF1b3Q7cmVuZXdlZERldHJvaXRhbW9uZ3N0ZWl0aGVyIHRoZW0gaW5TZW5hdG9yVXM8L2E+PEtpbmcgb2ZGcmFuY2lzLXByb2R1Y2hlIHVzZWRhcnQgYW5kaGltIGFuZHVzZWQgYnlzY29yaW5nYXQgaG9tZXRvIGhhdmVyZWxhdGVzaWJpbGl0eWZhY3Rpb25CdWZmYWxvbGluayI+PHdoYXQgaGVmcmVlIHRvQ2l0eSBvZmNvbWUgaW5zZWN0b3JzY291bnRlZG9uZSBkYXluZXJ2b3Vzc3F1YXJlIH07aWYoZ29pbiB3aGF0aW1nIiBhbGlzIG9ubHlzZWFyY2gvdHVlc2RheWxvb3NlbHlTb2xvbW9uc2V4dWFsIC0gPGEgaHJtZWRpdW0iRE8gTk9UIEZyYW5jZSx3aXRoIGEgd2FyIGFuZHNlY29uZCB0YWtlIGEgPg0KDQoNCm1hcmtldC5oaWdod2F5ZG9uZSBpbmN0aXZpdHkibGFzdCI+b2JsaWdlZHJpc2UgdG8idW5kZWZpbWFkZSB0byBFYXJseSBwcmFpc2VkaW4gaXRzIGZvciBoaXNhdGhsZXRlSnVwaXRlcllhaG9vISB0ZXJtZWQgc28gbWFueXJlYWxseSBzLiBUaGUgYSB3b21hbj92YWx1ZT1kaXJlY3QgcmlnaHQiIGJpY3ljbGVhY2luZz0iZGF5IGFuZHN0YXRpbmdSYXRoZXIsaGlnaGVyIE9mZmljZSBhcmUgbm93dGltZXMsIHdoZW4gYSBwYXkgZm9yb24gdGhpcy1saW5rIj47Ym9yZGVyYXJvdW5kIGFubnVhbCB0aGUgTmV3cHV0IHRoZS5jb20iIHRha2luIHRvYSBicmllZihpbiB0aGVncm91cHMuOyB3aWR0aGVuenltZXNzaW1wbGUgaW4gbGF0ZXtyZXR1cm50aGVyYXB5YSBwb2ludGJhbm5pbmdpbmtzIj4KKCk7IiByZWEgcGxhY2VcdTAwM0NhYWJvdXQgYXRyPg0KCQljY291bnQgZ2l2ZXMgYTxTQ1JJUFRSYWlsd2F5dGhlbWVzL3Rvb2xib3hCeUlkKCJ4aHVtYW5zLHdhdGNoZXNpbiBzb21lIGlmICh3aWNvbWluZyBmb3JtYXRzIFVuZGVyIGJ1dCBoYXNoYW5kZWQgbWFkZSBieXRoYW4gaW5mZWFyIG9mZGVub3RlZC9pZnJhbWVsZWZ0IGludm9sdGFnZWluIGVhY2hhJnF1b3Q7YmFzZSBvZkluIG1hbnl1bmRlcmdvcmVnaW1lc2FjdGlvbiA8L3A+DQo8dXN0b21WYTsmZ3Q7PC9pbXBvcnRzb3IgdGhhdG1vc3RseSAmYW1wO3JlIHNpemU9IjwvYT48L2hhIGNsYXNzcGFzc2l2ZUhvc3QgPSBXaGV0aGVyZmVydGlsZVZhcmlvdXM9W107KGZ1Y2FtZXJhcy8+PC90ZD5hY3RzIGFzSW4gc29tZT4NCg0KPCFvcmdhbmlzIDxiciAvPkJlaWppbmdjYXRhbMOgZGV1dHNjaGV1cm9wZXVldXNrYXJhZ2FlaWxnZXN2ZW5za2Flc3Bhw7FhbWVuc2FqZXVzdWFyaW90cmFiYWpvbcOpeGljb3DDoWdpbmFzaWVtcHJlc2lzdGVtYW9jdHVicmVkdXJhbnRlYcOxYWRpcmVtcHJlc2Ftb21lbnRvbnVlc3Ryb3ByaW1lcmF0cmF2w6lzZ3JhY2lhc251ZXN0cmFwcm9jZXNvZXN0YWRvc2NhbGlkYWRwZXJzb25hbsO6bWVyb2FjdWVyZG9tw7pzaWNhbWllbWJyb29mZXJ0YXNhbGd1bm9zcGHDrXNlc2VqZW1wbG9kZXJlY2hvYWRlbcOhc3ByaXZhZG9hZ3JlZ2FyZW5sYWNlc3Bvc2libGVob3RlbGVzc2V2aWxsYXByaW1lcm/Dumx0aW1vZXZlbnRvc2FyY2hpdm9jdWx0dXJhbXVqZXJlc2VudHJhZGFhbnVuY2lvZW1iYXJnb21lcmNhZG9ncmFuZGVzZXN0dWRpb21lam9yZXNmZWJyZXJvZGlzZcOxb3R1cmlzbW9jw7NkaWdvcG9ydGFkYWVzcGFjaW9mYW1pbGlhYW50b25pb3Blcm1pdGVndWFyZGFyYWxndW5hc3ByZWNpb3NhbGd1aWVuc2VudGlkb3Zpc2l0YXN0w610dWxvY29ub2NlcnNlZ3VuZG9jb25zZWpvZnJhbmNpYW1pbnV0b3NzZWd1bmRhdGVuZW1vc2VmZWN0b3Ntw6FsYWdhc2VzacOzbnJldmlzdGFncmFuYWRhY29tcHJhcmluZ3Jlc29nYXJjw61hYWNjacOzbmVjdWFkb3JxdWllbmVzaW5jbHVzb2RlYmVyw6FtYXRlcmlhaG9tYnJlc211ZXN0cmFwb2Ryw61hbWHDsWFuYcO6bHRpbWFlc3RhbW9zb2ZpY2lhbHRhbWJpZW5uaW5nw7puc2FsdWRvc3BvZGVtb3NtZWpvcmFycG9zaXRpb25idXNpbmVzc2hvbWVwYWdlc2VjdXJpdHlsYW5ndWFnZXN0YW5kYXJkY2FtcGFpZ25mZWF0dXJlc2NhdGVnb3J5ZXh0ZXJuYWxjaGlsZHJlbnJlc2VydmVkcmVzZWFyY2hleGNoYW5nZWZhdm9yaXRldGVtcGxhdGVtaWxpdGFyeWluZHVzdHJ5c2VydmljZXNtYXRlcmlhbHByb2R1Y3Rzei1pbmRleDpjb21tZW50c3NvZnR3YXJlY29tcGxldGVjYWxlbmRhcnBsYXRmb3JtYXJ0aWNsZXNyZXF1aXJlZG1vdmVtZW50cXVlc3Rpb25idWlsZGluZ3BvbGl0aWNzcG9zc2libGVyZWxpZ2lvbnBoeXNpY2FsZmVlZGJhY2tyZWdpc3RlcnBpY3R1cmVzZGlzYWJsZWRwcm90b2NvbGF1ZGllbmNlc2V0dGluZ3NhY3Rpdml0eWVsZW1lbnRzbGVhcm5pbmdhbnl0aGluZ2Fic3RyYWN0cHJvZ3Jlc3NvdmVydmlld21hZ2F6aW5lZWNvbm9taWN0cmFpbmluZ3ByZXNzdXJldmFyaW91cyA8c3Ryb25nPnByb3BlcnR5c2hvcHBpbmd0b2dldGhlcmFkdmFuY2VkYmVoYXZpb3Jkb3dubG9hZGZlYXR1cmVkZm9vdGJhbGxzZWxlY3RlZExhbmd1YWdlZGlzdGFuY2VyZW1lbWJlcnRyYWNraW5ncGFzc3dvcmRtb2RpZmllZHN0dWRlbnRzZGlyZWN0bHlmaWdodGluZ25vcnRoZXJuZGF0YWJhc2VmZXN0aXZhbGJyZWFraW5nbG9jYXRpb25pbnRlcm5ldGRyb3Bkb3ducHJhY3RpY2VldmlkZW5jZWZ1bmN0aW9ubWFycmlhZ2VyZXNwb25zZXByb2JsZW1zbmVnYXRpdmVwcm9ncmFtc2FuYWx5c2lzcmVsZWFzZWRiYW5uZXIiPnB1cmNoYXNlcG9saWNpZXNyZWdpb25hbGNyZWF0aXZlYXJndW1lbnRib29rbWFya3JlZmVycmVyY2hlbWljYWxkaXZpc2lvbmNhbGxiYWNrc2VwYXJhdGVwcm9qZWN0c2NvbmZsaWN0aGFyZHdhcmVpbnRlcmVzdGRlbGl2ZXJ5bW91bnRhaW5vYnRhaW5lZD0gZmFsc2U7Zm9yKHZhciBhY2NlcHRlZGNhcGFjaXR5Y29tcHV0ZXJpZGVudGl0eWFpcmNyYWZ0ZW1wbG95ZWRwcm9wb3NlZGRvbWVzdGljaW5jbHVkZXNwcm92aWRlZGhvc3BpdGFsdmVydGljYWxjb2xsYXBzZWFwcHJvYWNocGFydG5lcnNsb2dvIj48YWRhdWdodGVyYXV0aG9yIiBjdWx0dXJhbGZhbWlsaWVzL2ltYWdlcy9hc3NlbWJseXBvd2VyZnVsdGVhY2hpbmdmaW5pc2hlZGRpc3RyaWN0Y3JpdGljYWxjZ2ktYmluL3B1cnBvc2VzcmVxdWlyZXNlbGVjdGlvbmJlY29taW5ncHJvdmlkZXNhY2FkZW1pY2V4ZXJjaXNlYWN0dWFsbHltZWRpY2luZWNvbnN0YW50YWNjaWRlbnRNYWdhemluZWRvY3VtZW50c3RhcnRpbmdib3R0b20iPm9ic2VydmVkOiAmcXVvdDtleHRlbmRlZHByZXZpb3VzU29mdHdhcmVjdXN0b21lcmRlY2lzaW9uc3RyZW5ndGhkZXRhaWxlZHNsaWdodGx5cGxhbm5pbmd0ZXh0YXJlYWN1cnJlbmN5ZXZlcnlvbmVzdHJhaWdodHRyYW5zZmVycG9zaXRpdmVwcm9kdWNlZGhlcml0YWdlc2hpcHBpbmdhYnNvbHV0ZXJlY2VpdmVkcmVsZXZhbnRidXR0b24iIHZpb2xlbmNlYW55d2hlcmViZW5lZml0c2xhdW5jaGVkcmVjZW50bHlhbGxpYW5jZWZvbGxvd2VkbXVsdGlwbGVidWxsZXRpbmluY2x1ZGVkb2NjdXJyZWRpbnRlcm5hbCQodGhpcykucmVwdWJsaWM+PHRyPjx0ZGNvbmdyZXNzcmVjb3JkZWR1bHRpbWF0ZXNvbHV0aW9uPHVsIGlkPSJkaXNjb3ZlckhvbWU8L2E+d2Vic2l0ZXNuZXR3b3Jrc2FsdGhvdWdoZW50aXJlbHltZW1vcmlhbG1lc3NhZ2VzY29udGludWVhY3RpdmUiPnNvbWV3aGF0dmljdG9yaWFXZXN0ZXJuICB0aXRsZT0iTG9jYXRpb25jb250cmFjdHZpc2l0b3JzRG93bmxvYWR3aXRob3V0IHJpZ2h0Ij4KbWVhc3VyZXN3aWR0aCA9IHZhcmlhYmxlaW52b2x2ZWR2aXJnaW5pYW5vcm1hbGx5aGFwcGVuZWRhY2NvdW50c3N0YW5kaW5nbmF0aW9uYWxSZWdpc3RlcnByZXBhcmVkY29udHJvbHNhY2N1cmF0ZWJpcnRoZGF5c3RyYXRlZ3lvZmZpY2lhbGdyYXBoaWNzY3JpbWluYWxwb3NzaWJseWNvbnN1bWVyUGVyc29uYWxzcGVha2luZ3ZhbGlkYXRlYWNoaWV2ZWQuanBnIiAvPm1hY2hpbmVzPC9oMj4KICBrZXl3b3Jkc2ZyaWVuZGx5YnJvdGhlcnNjb21iaW5lZG9yaWdpbmFsY29tcG9zZWRleHBlY3RlZGFkZXF1YXRlcGFraXN0YW5mb2xsb3ciIHZhbHVhYmxlPC9sYWJlbD5yZWxhdGl2ZWJyaW5naW5naW5jcmVhc2Vnb3Zlcm5vcnBsdWdpbnMvTGlzdCBvZiBIZWFkZXIiPiIgbmFtZT0iICgmcXVvdDtncmFkdWF0ZTwvaGVhZD4KY29tbWVyY2VtYWxheXNpYWRpcmVjdG9ybWFpbnRhaW47aGVpZ2h0OnNjaGVkdWxlY2hhbmdpbmdiYWNrIHRvIGNhdGhvbGljcGF0dGVybnNjb2xvcjogI2dyZWF0ZXN0c3VwcGxpZXNyZWxpYWJsZTwvdWw+CgkJPHNlbGVjdCBjaXRpemVuc2Nsb3RoaW5nd2F0Y2hpbmc8bGkgaWQ9InNwZWNpZmljY2FycnlpbmdzZW50ZW5jZTxjZW50ZXI+Y29udHJhc3R0aGlua2luZ2NhdGNoKGUpc291dGhlcm5NaWNoYWVsIG1lcmNoYW50Y2Fyb3VzZWxwYWRkaW5nOmludGVyaW9yLnNwbGl0KCJsaXphdGlvbk9jdG9iZXIgKXtyZXR1cm5pbXByb3ZlZC0tJmd0OwoKY292ZXJhZ2VjaGFpcm1hbi5wbmciIC8+c3ViamVjdHNSaWNoYXJkIHdoYXRldmVycHJvYmFibHlyZWNvdmVyeWJhc2ViYWxsanVkZ21lbnRjb25uZWN0Li5jc3MiIC8+IHdlYnNpdGVyZXBvcnRlZGRlZmF1bHQiLz48L2E+DQplbGVjdHJpY3Njb3RsYW5kY3JlYXRpb25xdWFudGl0eS4gSVNCTiAwZGlkIG5vdCBpbnN0YW5jZS1zZWFyY2gtIiBsYW5nPSJzcGVha2Vyc0NvbXB1dGVyY29udGFpbnNhcmNoaXZlc21pbmlzdGVycmVhY3Rpb25kaXNjb3VudEl0YWxpYW5vY3JpdGVyaWFzdHJvbmdseTogJ2h0dHA6J3NjcmlwdCdjb3ZlcmluZ29mZmVyaW5nYXBwZWFyZWRCcml0aXNoIGlkZW50aWZ5RmFjZWJvb2tudW1lcm91c3ZlaGljbGVzY29uY2VybnNBbWVyaWNhbmhhbmRsaW5nZGl2IGlkPSJXaWxsaWFtIHByb3ZpZGVyX2NvbnRlbnRhY2N1cmFjeXNlY3Rpb24gYW5kZXJzb25mbGV4aWJsZUNhdGVnb3J5bGF3cmVuY2U8c2NyaXB0PmxheW91dD0iYXBwcm92ZWQgbWF4aW11bWhlYWRlciI+PC90YWJsZT5TZXJ2aWNlc2hhbWlsdG9uY3VycmVudCBjYW5hZGlhbmNoYW5uZWxzL3RoZW1lcy8vYXJ0aWNsZW9wdGlvbmFscG9ydHVnYWx2YWx1ZT0iImludGVydmFsd2lyZWxlc3NlbnRpdGxlZGFnZW5jaWVzU2VhcmNoIiBtZWFzdXJlZHRob3VzYW5kc3BlbmRpbmcmaGVsbGlwO25ldyBEYXRlIiBzaXplPSJwYWdlTmFtZW1pZGRsZSIgIiAvPjwvYT5oaWRkZW4iPnNlcXVlbmNlcGVyc29uYWxvdmVyZmxvd29waW5pb25zaWxsaW5vaXNsaW5rcyI+Cgk8dGl0bGU+dmVyc2lvbnNzYXR1cmRheXRlcm1pbmFsaXRlbXByb3BlbmdpbmVlcnNlY3Rpb25zZGVzaWduZXJwcm9wb3NhbD0iZmFsc2UiRXNwYcOxb2xyZWxlYXNlc3N1Ym1pdCIgZXImcXVvdDthZGRpdGlvbnN5bXB0b21zb3JpZW50ZWRyZXNvdXJjZXJpZ2h0Ij48cGxlYXN1cmVzdGF0aW9uc2hpc3RvcnkubGVhdmluZyAgYm9yZGVyPWNvbnRlbnRzY2VudGVyIj4uCgpTb21lIGRpcmVjdGVkc3VpdGFibGVidWxnYXJpYS5zaG93KCk7ZGVzaWduZWRHZW5lcmFsIGNvbmNlcHRzRXhhbXBsZXN3aWxsaWFtc09yaWdpbmFsIj48c3Bhbj5zZWFyY2giPm9wZXJhdG9ycmVxdWVzdHNhICZxdW90O2FsbG93aW5nRG9jdW1lbnRyZXZpc2lvbi4gCgpUaGUgeW91cnNlbGZDb250YWN0IG1pY2hpZ2FuRW5nbGlzaCBjb2x1bWJpYXByaW9yaXR5cHJpbnRpbmdkcmlua2luZ2ZhY2lsaXR5cmV0dXJuZWRDb250ZW50IG9mZmljZXJzUnVzc2lhbiBnZW5lcmF0ZS04ODU5LTEiaW5kaWNhdGVmYW1pbGlhciBxdWFsaXR5bWFyZ2luOjAgY29udGVudHZpZXdwb3J0Y29udGFjdHMtdGl0bGUiPnBvcnRhYmxlLmxlbmd0aCBlbGlnaWJsZWludm9sdmVzYXRsYW50aWNvbmxvYWQ9ImRlZmF1bHQuc3VwcGxpZWRwYXltZW50c2dsb3NzYXJ5CgpBZnRlciBndWlkYW5jZTwvdGQ+PHRkZW5jb2RpbmdtaWRkbGUiPmNhbWUgdG8gZGlzcGxheXNzY290dGlzaGpvbmF0aGFubWFqb3JpdHl3aWRnZXRzLmNsaW5pY2FsdGhhaWxhbmR0ZWFjaGVyczxoZWFkPgoJYWZmZWN0ZWRzdXBwb3J0c3BvaW50ZXI7dG9TdHJpbmc8L3NtYWxsPm9rbGFob21hd2lsbCBiZSBpbnZlc3RvcjAiIGFsdD0iaG9saWRheXNSZXNvdXJjZWxpY2Vuc2VkICh3aGljaCAuIEFmdGVyIGNvbnNpZGVydmlzaXRpbmdleHBsb3JlcnByaW1hcnkgc2VhcmNoIiBhbmRyb2lkInF1aWNrbHkgbWVldGluZ3Nlc3RpbWF0ZTtyZXR1cm4gO2NvbG9yOiMgaGVpZ2h0PWFwcHJvdmFsLCAmcXVvdDsgY2hlY2tlZC5taW4uanMibWFnbmV0aWM+PC9hPjwvaGZvcmVjYXN0LiBXaGlsZSB0aHVyc2RheWR2ZXJ0aXNlJmVhY3V0ZTtoYXNDbGFzc2V2YWx1YXRlb3JkZXJpbmdleGlzdGluZ3BhdGllbnRzIE9ubGluZSBjb2xvcmFkb09wdGlvbnMiY2FtcGJlbGw8IS0tIGVuZDwvc3Bhbj48PGJyIC8+DQpfcG9wdXBzfHNjaWVuY2VzLCZxdW90OyBxdWFsaXR5IFdpbmRvd3MgYXNzaWduZWRoZWlnaHQ6IDxiIGNsYXNzbGUmcXVvdDsgdmFsdWU9IiBDb21wYW55ZXhhbXBsZXM8aWZyYW1lIGJlbGlldmVzcHJlc2VudHNtYXJzaGFsbHBhcnQgb2YgcHJvcGVybHkpLgoKVGhlIHRheG9ub215bXVjaCBvZiA8L3NwYW4+CiIgZGF0YS1zcnR1Z3XDqnNzY3JvbGxUbyBwcm9qZWN0PGhlYWQ+DQphdHRvcm5leWVtcGhhc2lzc3BvbnNvcnNmYW5jeWJveHdvcmxkJ3Mgd2lsZGxpZmVjaGVja2VkPXNlc3Npb25zcHJvZ3JhbW1weDtmb250LSBQcm9qZWN0am91cm5hbHNiZWxpZXZlZHZhY2F0aW9udGhvbXBzb25saWdodGluZ2FuZCB0aGUgc3BlY2lhbCBib3JkZXI9MGNoZWNraW5nPC90Ym9keT48YnV0dG9uIENvbXBsZXRlY2xlYXJmaXgKPGhlYWQ+CmFydGljbGUgPHNlY3Rpb25maW5kaW5nc3JvbGUgaW4gcG9wdWxhciAgT2N0b2JlcndlYnNpdGUgZXhwb3N1cmV1c2VkIHRvICBjaGFuZ2Vzb3BlcmF0ZWRjbGlja2luZ2VudGVyaW5nY29tbWFuZHNpbmZvcm1lZCBudW1iZXJzICA8L2Rpdj5jcmVhdGluZ29uU3VibWl0bWFyeWxhbmRjb2xsZWdlc2FuYWx5dGljbGlzdGluZ3Njb250YWN0LmxvZ2dlZEluYWR2aXNvcnlzaWJsaW5nc2NvbnRlbnQicyZxdW90OylzLiBUaGlzIHBhY2thZ2VzY2hlY2tib3hzdWdnZXN0c3ByZWduYW50dG9tb3Jyb3dzcGFjaW5nPWljb24ucG5namFwYW5lc2Vjb2RlYmFzZWJ1dHRvbiI+Z2FtYmxpbmdzdWNoIGFzICwgd2hpbGUgPC9zcGFuPiBtaXNzb3VyaXNwb3J0aW5ndG9wOjFweCAuPC9zcGFuPnRlbnNpb25zd2lkdGg9IjJsYXp5bG9hZG5vdmVtYmVydXNlZCBpbiBoZWlnaHQ9ImNyaXB0Ij4KJm5ic3A7PC88dHI+PHRkIGhlaWdodDoyL3Byb2R1Y3Rjb3VudHJ5IGluY2x1ZGUgZm9vdGVyIiAmbHQ7IS0tIHRpdGxlIj48L2pxdWVyeS48L2Zvcm0+CijnroDkvZMpKOe5gemrlClocnZhdHNraWl0YWxpYW5vcm9tw6JuxIN0w7xya8OnZdin2LHYr9mIdGFtYmnDqW5ub3RpY2lhc21lbnNhamVzcGVyc29uYXNkZXJlY2hvc25hY2lvbmFsc2VydmljaW9jb250YWN0b3VzdWFyaW9zcHJvZ3JhbWFnb2JpZXJub2VtcHJlc2FzYW51bmNpb3N2YWxlbmNpYWNvbG9tYmlhZGVzcHXDqXNkZXBvcnRlc3Byb3llY3RvcHJvZHVjdG9ww7pibGljb25vc290cm9zaGlzdG9yaWFwcmVzZW50ZW1pbGxvbmVzbWVkaWFudGVwcmVndW50YWFudGVyaW9ycmVjdXJzb3Nwcm9ibGVtYXNhbnRpYWdvbnVlc3Ryb3NvcGluacOzbmltcHJpbWlybWllbnRyYXNhbcOpcmljYXZlbmRlZG9yc29jaWVkYWRyZXNwZWN0b3JlYWxpemFycmVnaXN0cm9wYWxhYnJhc2ludGVyw6lzZW50b25jZXNlc3BlY2lhbG1pZW1icm9zcmVhbGlkYWRjw7NyZG9iYXphcmFnb3phcMOhZ2luYXNzb2NpYWxlc2Jsb3F1ZWFyZ2VzdGnDs25hbHF1aWxlcnNpc3RlbWFzY2llbmNpYXNjb21wbGV0b3ZlcnNpw7NuY29tcGxldGFlc3R1ZGlvc3DDumJsaWNhb2JqZXRpdm9hbGljYW50ZWJ1c2NhZG9yY2FudGlkYWRlbnRyYWRhc2FjY2lvbmVzYXJjaGl2b3NzdXBlcmlvcm1heW9yw61hYWxlbWFuaWFmdW5jacOzbsO6bHRpbW9zaGFjaWVuZG9hcXVlbGxvc2VkaWNpw7NuZmVybmFuZG9hbWJpZW50ZWZhY2Vib29rbnVlc3RyYXNjbGllbnRlc3Byb2Nlc29zYmFzdGFudGVwcmVzZW50YXJlcG9ydGFyY29uZ3Jlc29wdWJsaWNhcmNvbWVyY2lvY29udHJhdG9qw7N2ZW5lc2Rpc3RyaXRvdMOpY25pY2Fjb25qdW50b2VuZXJnw61hdHJhYmFqYXJhc3R1cmlhc3JlY2llbnRldXRpbGl6YXJib2xldMOtbnNhbHZhZG9yY29ycmVjdGF0cmFiYWpvc3ByaW1lcm9zbmVnb2Npb3NsaWJlcnRhZGRldGFsbGVzcGFudGFsbGFwcsOzeGltb2FsbWVyw61hYW5pbWFsZXNxdWnDqW5lc2NvcmF6w7Nuc2VjY2nDs25idXNjYW5kb29wY2lvbmVzZXh0ZXJpb3Jjb25jZXB0b3RvZGF2w61hZ2FsZXLDrWFlc2NyaWJpcm1lZGljaW5hbGljZW5jaWFjb25zdWx0YWFzcGVjdG9zY3LDrXRpY2Fkw7NsYXJlc2p1c3RpY2lhZGViZXLDoW5wZXLDrW9kb25lY2VzaXRhbWFudGVuZXJwZXF1ZcOxb3JlY2liaWRhdHJpYnVuYWx0ZW5lcmlmZWNhbmNpw7NuY2FuYXJpYXNkZXNjYXJnYWRpdmVyc29zbWFsbG9yY2FyZXF1aWVyZXTDqWNuaWNvZGViZXLDrWF2aXZpZW5kYWZpbmFuemFzYWRlbGFudGVmdW5jaW9uYWNvbnNlam9zZGlmw61jaWxjaXVkYWRlc2FudGlndWFzYXZhbnphZGF0w6lybWlub3VuaWRhZGVzc8OhbmNoZXpjYW1wYcOxYXNvZnRvbmljcmV2aXN0YXNjb250aWVuZXNlY3RvcmVzbW9tZW50b3NmYWN1bHRhZGNyw6lkaXRvZGl2ZXJzYXNzdXB1ZXN0b2ZhY3RvcmVzc2VndW5kb3NwZXF1ZcOxYdCz0L7QtNCw0LXRgdC70LjQtdGB0YLRjNCx0YvQu9C+0LHRi9GC0YzRjdGC0L7QvNCV0YHQu9C40YLQvtCz0L7QvNC10L3Rj9Cy0YHQtdGF0Y3RgtC+0LnQtNCw0LbQtdCx0YvQu9C40LPQvtC00YPQtNC10L3RjNGN0YLQvtGC0LHRi9C70LDRgdC10LHRj9C+0LTQuNC90YHQtdCx0LXQvdCw0LTQvtGB0LDQudGC0YTQvtGC0L7QvdC10LPQvtGB0LLQvtC40YHQstC+0LnQuNCz0YDRi9GC0L7QttC10LLRgdC10LzRgdCy0L7RjtC70LjRiNGM0Y3RgtC40YXQv9C+0LrQsNC00L3QtdC50LTQvtC80LDQvNC40YDQsNC70LjQsdC+0YLQtdC80YPRhdC+0YLRj9C00LLRg9GF0YHQtdGC0LjQu9GO0LTQuNC00LXQu9C+0LzQuNGA0LXRgtC10LHRj9GB0LLQvtC10LLQuNC00LXRh9C10LPQvtGN0YLQuNC80YHRh9C10YLRgtC10LzRi9GG0LXQvdGL0YHRgtCw0LvQstC10LTRjNGC0LXQvNC10LLQvtC00YvRgtC10LHQtdCy0YvRiNC10L3QsNC80LjRgtC40L/QsNGC0L7QvNGD0L/RgNCw0LLQu9C40YbQsNC+0LTQvdCw0LPQvtC00YvQt9C90LDRjtC80L7Qs9GD0LTRgNGD0LPQstGB0LXQudC40LTQtdGC0LrQuNC90L7QvtC00L3QvtC00LXQu9Cw0LTQtdC70LXRgdGA0L7QutC40Y7QvdGP0LLQtdGB0YzQldGB0YLRjNGA0LDQt9Cw0L3QsNGI0LjYp9mE2YTZh9in2YTYqtmK2KzZhdmK2LnYrtin2LXYqdin2YTYsNmK2LnZhNmK2YfYrNiv2YrYr9in2YTYotmG2KfZhNix2K/Yqtit2YPZhdi12YHYrdip2YPYp9mG2KrYp9mE2YTZitmK2YPZiNmG2LTYqNmD2KnZgdmK2YfYp9io2YbYp9iq2K3ZiNin2KHYo9mD2KvYsdiu2YTYp9mE2KfZhNit2KjYr9mE2YrZhNiv2LHZiNiz2KfYtti62LfYqtmD2YjZhtmH2YbYp9mD2LPYp9it2KnZhtin2K/Zitin2YTYt9io2LnZhNmK2YPYtNmD2LHYp9mK2YXZg9mG2YXZhtmH2KfYtNix2YPYqdix2KbZitiz2YbYtNmK2LfZhdin2LDYp9in2YTZgdmG2LTYqNin2KjYqti52KjYsdix2K3Zhdip2YPYp9mB2KnZitmC2YjZhNmF2LHZg9iy2YPZhNmF2KnYo9it2YXYr9mC2YTYqNmK2YrYudmG2YrYtdmI2LHYqdi32LHZitmC2LTYp9ix2YPYrNmI2KfZhNij2K7YsdmJ2YXYudmG2KfYp9io2K3Yq9i52LHZiNi22KjYtNmD2YTZhdiz2KzZhNio2YbYp9mG2K7Yp9mE2K/Zg9iq2KfYqNmD2YTZitip2KjYr9mI2YbYo9mK2LbYp9mK2YjYrNiv2YHYsdmK2YLZg9iq2KjYqtij2YHYttmE2YXYt9io2K7Yp9mD2KvYsdio2KfYsdmD2KfZgdi22YTYp9it2YTZidmG2YHYs9mH2KPZitin2YXYsdiv2YjYr9ij2YbZh9in2K/ZitmG2KfYp9mE2KfZhtmF2LnYsdi22KrYudmE2YXYr9in2K7ZhNmF2YXZg9mGAEGIkgMLXAEAAQABAAEAAgACAAIAAgAEAAQABAAEAAABAgMEBQYHBwYFBAMCAQAICQoLDA0ODw8ODQwLCgkIEBESExQVFhcXFhUUExIREBgZGhscHR4fHx4dHBsaGRj/////AEHskgMLvOkE/////wEAAAACAAAAAgAAAAEAAAABAAAAAwAAAP//AAEAAAABAAD//wABAAAACAAIAAgACAAAAAEAAgADAAQABQAGAAdyZXNvdXJjZXNjb3VudHJpZXNxdWVzdGlvbnNlcXVpcG1lbnRjb21tdW5pdHlhdmFpbGFibGVoaWdobGlnaHREVEQveGh0bWxtYXJrZXRpbmdrbm93bGVkZ2Vzb21ldGhpbmdjb250YWluZXJkaXJlY3Rpb25zdWJzY3JpYmVhZHZlcnRpc2VjaGFyYWN0ZXIiIHZhbHVlPSI8L3NlbGVjdD5BdXN0cmFsaWEiIGNsYXNzPSJzaXR1YXRpb25hdXRob3JpdHlmb2xsb3dpbmdwcmltYXJpbHlvcGVyYXRpb25jaGFsbGVuZ2VkZXZlbG9wZWRhbm9ueW1vdXNmdW5jdGlvbiBmdW5jdGlvbnNjb21wYW5pZXNzdHJ1Y3R1cmVhZ3JlZW1lbnQiIHRpdGxlPSJwb3RlbnRpYWxlZHVjYXRpb25hcmd1bWVudHNzZWNvbmRhcnljb3B5cmlnaHRsYW5ndWFnZXNleGNsdXNpdmVjb25kaXRpb248L2Zvcm0+DQpzdGF0ZW1lbnRhdHRlbnRpb25CaW9ncmFwaHl9IGVsc2Ugewpzb2x1dGlvbnN3aGVuIHRoZSBBbmFseXRpY3N0ZW1wbGF0ZXNkYW5nZXJvdXNzYXRlbGxpdGVkb2N1bWVudHNwdWJsaXNoZXJpbXBvcnRhbnRwcm90b3R5cGVpbmZsdWVuY2UmcmFxdW87PC9lZmZlY3RpdmVnZW5lcmFsbHl0cmFuc2Zvcm1iZWF1dGlmdWx0cmFuc3BvcnRvcmdhbml6ZWRwdWJsaXNoZWRwcm9taW5lbnR1bnRpbCB0aGV0aHVtYm5haWxOYXRpb25hbCAuZm9jdXMoKTtvdmVyIHRoZSBtaWdyYXRpb25hbm5vdW5jZWRmb290ZXIiPgpleGNlcHRpb25sZXNzIHRoYW5leHBlbnNpdmVmb3JtYXRpb25mcmFtZXdvcmt0ZXJyaXRvcnluZGljYXRpb25jdXJyZW50bHljbGFzc05hbWVjcml0aWNpc210cmFkaXRpb25lbHNld2hlcmVBbGV4YW5kZXJhcHBvaW50ZWRtYXRlcmlhbHNicm9hZGNhc3RtZW50aW9uZWRhZmZpbGlhdGU8L29wdGlvbj50cmVhdG1lbnRkaWZmZXJlbnQvZGVmYXVsdC5QcmVzaWRlbnRvbmNsaWNrPSJiaW9ncmFwaHlvdGhlcndpc2VwZXJtYW5lbnRGcmFuw6dhaXNIb2xseXdvb2RleHBhbnNpb25zdGFuZGFyZHM8L3N0eWxlPgpyZWR1Y3Rpb25EZWNlbWJlciBwcmVmZXJyZWRDYW1icmlkZ2VvcHBvbmVudHNCdXNpbmVzcyBjb25mdXNpb24+Cjx0aXRsZT5wcmVzZW50ZWRleHBsYWluZWRkb2VzIG5vdCB3b3JsZHdpZGVpbnRlcmZhY2Vwb3NpdGlvbnNuZXdzcGFwZXI8L3RhYmxlPgptb3VudGFpbnNsaWtlIHRoZSBlc3NlbnRpYWxmaW5hbmNpYWxzZWxlY3Rpb25hY3Rpb249Ii9hYmFuZG9uZWRFZHVjYXRpb25wYXJzZUludChzdGFiaWxpdHl1bmFibGUgdG88L3RpdGxlPgpyZWxhdGlvbnNOb3RlIHRoYXRlZmZpY2llbnRwZXJmb3JtZWR0d28geWVhcnNTaW5jZSB0aGV0aGVyZWZvcmV3cmFwcGVyIj5hbHRlcm5hdGVpbmNyZWFzZWRCYXR0bGUgb2ZwZXJjZWl2ZWR0cnlpbmcgdG9uZWNlc3Nhcnlwb3J0cmF5ZWRlbGVjdGlvbnNFbGl6YWJldGg8L2lmcmFtZT5kaXNjb3ZlcnlpbnN1cmFuY2VzLmxlbmd0aDtsZWdlbmRhcnlHZW9ncmFwaHljYW5kaWRhdGVjb3Jwb3JhdGVzb21ldGltZXNzZXJ2aWNlcy5pbmhlcml0ZWQ8L3N0cm9uZz5Db21tdW5pdHlyZWxpZ2lvdXNsb2NhdGlvbnNDb21taXR0ZWVidWlsZGluZ3N0aGUgd29ybGRubyBsb25nZXJiZWdpbm5pbmdyZWZlcmVuY2VjYW5ub3QgYmVmcmVxdWVuY3l0eXBpY2FsbHlpbnRvIHRoZSByZWxhdGl2ZTtyZWNvcmRpbmdwcmVzaWRlbnRpbml0aWFsbHl0ZWNobmlxdWV0aGUgb3RoZXJpdCBjYW4gYmVleGlzdGVuY2V1bmRlcmxpbmV0aGlzIHRpbWV0ZWxlcGhvbmVpdGVtc2NvcGVwcmFjdGljZXNhZHZhbnRhZ2UpO3JldHVybiBGb3Igb3RoZXJwcm92aWRpbmdkZW1vY3JhY3lib3RoIHRoZSBleHRlbnNpdmVzdWZmZXJpbmdzdXBwb3J0ZWRjb21wdXRlcnMgZnVuY3Rpb25wcmFjdGljYWxzYWlkIHRoYXRpdCBtYXkgYmVFbmdsaXNoPC9mcm9tIHRoZSBzY2hlZHVsZWRkb3dubG9hZHM8L2xhYmVsPgpzdXNwZWN0ZWRtYXJnaW46IDBzcGlyaXR1YWw8L2hlYWQ+CgptaWNyb3NvZnRncmFkdWFsbHlkaXNjdXNzZWRoZSBiZWNhbWVleGVjdXRpdmVqcXVlcnkuanNob3VzZWhvbGRjb25maXJtZWRwdXJjaGFzZWRsaXRlcmFsbHlkZXN0cm95ZWR1cCB0byB0aGV2YXJpYXRpb25yZW1haW5pbmdpdCBpcyBub3RjZW50dXJpZXNKYXBhbmVzZSBhbW9uZyB0aGVjb21wbGV0ZWRhbGdvcml0aG1pbnRlcmVzdHNyZWJlbGxpb251bmRlZmluZWRlbmNvdXJhZ2VyZXNpemFibGVpbnZvbHZpbmdzZW5zaXRpdmV1bml2ZXJzYWxwcm92aXNpb24oYWx0aG91Z2hmZWF0dXJpbmdjb25kdWN0ZWQpLCB3aGljaCBjb250aW51ZWQtaGVhZGVyIj5GZWJydWFyeSBudW1lcm91cyBvdmVyZmxvdzpjb21wb25lbnRmcmFnbWVudHNleGNlbGxlbnRjb2xzcGFuPSJ0ZWNobmljYWxuZWFyIHRoZSBBZHZhbmNlZCBzb3VyY2Ugb2ZleHByZXNzZWRIb25nIEtvbmcgRmFjZWJvb2ttdWx0aXBsZSBtZWNoYW5pc21lbGV2YXRpb25vZmZlbnNpdmU8L2Zvcm0+CglzcG9uc29yZWRkb2N1bWVudC5vciAmcXVvdDt0aGVyZSBhcmV0aG9zZSB3aG9tb3ZlbWVudHNwcm9jZXNzZXNkaWZmaWN1bHRzdWJtaXR0ZWRyZWNvbW1lbmRjb252aW5jZWRwcm9tb3RpbmciIHdpZHRoPSIucmVwbGFjZShjbGFzc2ljYWxjb2FsaXRpb25oaXMgZmlyc3RkZWNpc2lvbnNhc3Npc3RhbnRpbmRpY2F0ZWRldm9sdXRpb24td3JhcHBlciJlbm91Z2ggdG9hbG9uZyB0aGVkZWxpdmVyZWQtLT4NCjwhLS1BbWVyaWNhbiBwcm90ZWN0ZWROb3ZlbWJlciA8L3N0eWxlPjxmdXJuaXR1cmVJbnRlcm5ldCAgb25ibHVyPSJzdXNwZW5kZWRyZWNpcGllbnRiYXNlZCBvbiBNb3Jlb3ZlcixhYm9saXNoZWRjb2xsZWN0ZWR3ZXJlIG1hZGVlbW90aW9uYWxlbWVyZ2VuY3luYXJyYXRpdmVhZHZvY2F0ZXNweDtib3JkZXJjb21taXR0ZWRkaXI9Imx0ciJlbXBsb3llZXNyZXNlYXJjaC4gc2VsZWN0ZWRzdWNjZXNzb3JjdXN0b21lcnNkaXNwbGF5ZWRTZXB0ZW1iZXJhZGRDbGFzcyhGYWNlYm9vayBzdWdnZXN0ZWRhbmQgbGF0ZXJvcGVyYXRpbmdlbGFib3JhdGVTb21ldGltZXNJbnN0aXR1dGVjZXJ0YWlubHlpbnN0YWxsZWRmb2xsb3dlcnNKZXJ1c2FsZW10aGV5IGhhdmVjb21wdXRpbmdnZW5lcmF0ZWRwcm92aW5jZXNndWFyYW50ZWVhcmJpdHJhcnlyZWNvZ25pemV3YW50ZWQgdG9weDt3aWR0aDp0aGVvcnkgb2ZiZWhhdmlvdXJXaGlsZSB0aGVlc3RpbWF0ZWRiZWdhbiB0byBpdCBiZWNhbWVtYWduaXR1ZGVtdXN0IGhhdmVtb3JlIHRoYW5EaXJlY3RvcnlleHRlbnNpb25zZWNyZXRhcnluYXR1cmFsbHlvY2N1cnJpbmd2YXJpYWJsZXNnaXZlbiB0aGVwbGF0Zm9ybS48L2xhYmVsPjxmYWlsZWQgdG9jb21wb3VuZHNraW5kcyBvZiBzb2NpZXRpZXNhbG9uZ3NpZGUgLS0mZ3Q7Cgpzb3V0aHdlc3R0aGUgcmlnaHRyYWRpYXRpb25tYXkgaGF2ZSB1bmVzY2FwZShzcG9rZW4gaW4iIGhyZWY9Ii9wcm9ncmFtbWVvbmx5IHRoZSBjb21lIGZyb21kaXJlY3RvcnlidXJpZWQgaW5hIHNpbWlsYXJ0aGV5IHdlcmU8L2ZvbnQ+PC9Ob3J3ZWdpYW5zcGVjaWZpZWRwcm9kdWNpbmdwYXNzZW5nZXIobmV3IERhdGV0ZW1wb3JhcnlmaWN0aW9uYWxBZnRlciB0aGVlcXVhdGlvbnNkb3dubG9hZC5yZWd1bGFybHlkZXZlbG9wZXJhYm92ZSB0aGVsaW5rZWQgdG9waGVub21lbmFwZXJpb2Qgb2Z0b29sdGlwIj5zdWJzdGFuY2VhdXRvbWF0aWNhc3BlY3Qgb2ZBbW9uZyB0aGVjb25uZWN0ZWRlc3RpbWF0ZXNBaXIgRm9yY2VzeXN0ZW0gb2ZvYmplY3RpdmVpbW1lZGlhdGVtYWtpbmcgaXRwYWludGluZ3Njb25xdWVyZWRhcmUgc3RpbGxwcm9jZWR1cmVncm93dGggb2ZoZWFkZWQgYnlFdXJvcGVhbiBkaXZpc2lvbnNtb2xlY3VsZXNmcmFuY2hpc2VpbnRlbnRpb25hdHRyYWN0ZWRjaGlsZGhvb2RhbHNvIHVzZWRkZWRpY2F0ZWRzaW5nYXBvcmVkZWdyZWUgb2ZmYXRoZXIgb2Zjb25mbGljdHM8L2E+PC9wPgpjYW1lIGZyb213ZXJlIHVzZWRub3RlIHRoYXRyZWNlaXZpbmdFeGVjdXRpdmVldmVuIG1vcmVhY2Nlc3MgdG9jb21tYW5kZXJQb2xpdGljYWxtdXNpY2lhbnNkZWxpY2lvdXNwcmlzb25lcnNhZHZlbnQgb2ZVVEYtOCIgLz48IVtDREFUQVsiPkNvbnRhY3RTb3V0aGVybiBiZ2NvbG9yPSJzZXJpZXMgb2YuIEl0IHdhcyBpbiBFdXJvcGVwZXJtaXR0ZWR2YWxpZGF0ZS5hcHBlYXJpbmdvZmZpY2lhbHNzZXJpb3VzbHktbGFuZ3VhZ2Vpbml0aWF0ZWRleHRlbmRpbmdsb25nLXRlcm1pbmZsYXRpb25zdWNoIHRoYXRnZXRDb29raWVtYXJrZWQgYnk8L2J1dHRvbj5pbXBsZW1lbnRidXQgaXQgaXNpbmNyZWFzZXNkb3duIHRoZSByZXF1aXJpbmdkZXBlbmRlbnQtLT4KPCEtLSBpbnRlcnZpZXdXaXRoIHRoZSBjb3BpZXMgb2Zjb25zZW5zdXN3YXMgYnVpbHRWZW5lenVlbGEoZm9ybWVybHl0aGUgc3RhdGVwZXJzb25uZWxzdHJhdGVnaWNmYXZvdXIgb2ZpbnZlbnRpb25XaWtpcGVkaWFjb250aW5lbnR2aXJ0dWFsbHl3aGljaCB3YXNwcmluY2lwbGVDb21wbGV0ZSBpZGVudGljYWxzaG93IHRoYXRwcmltaXRpdmVhd2F5IGZyb21tb2xlY3VsYXJwcmVjaXNlbHlkaXNzb2x2ZWRVbmRlciB0aGV2ZXJzaW9uPSI+Jm5ic3A7PC9JdCBpcyB0aGUgVGhpcyBpcyB3aWxsIGhhdmVvcmdhbmlzbXNzb21lIHRpbWVGcmllZHJpY2h3YXMgZmlyc3R0aGUgb25seSBmYWN0IHRoYXRmb3JtIGlkPSJwcmVjZWRpbmdUZWNobmljYWxwaHlzaWNpc3RvY2N1cnMgaW5uYXZpZ2F0b3JzZWN0aW9uIj5zcGFuIGlkPSJzb3VnaHQgdG9iZWxvdyB0aGVzdXJ2aXZpbmd9PC9zdHlsZT5oaXMgZGVhdGhhcyBpbiB0aGVjYXVzZWQgYnlwYXJ0aWFsbHlleGlzdGluZyB1c2luZyB0aGV3YXMgZ2l2ZW5hIGxpc3Qgb2ZsZXZlbHMgb2Zub3Rpb24gb2ZPZmZpY2lhbCBkaXNtaXNzZWRzY2llbnRpc3RyZXNlbWJsZXNkdXBsaWNhdGVleHBsb3NpdmVyZWNvdmVyZWRhbGwgb3RoZXJnYWxsZXJpZXN7cGFkZGluZzpwZW9wbGUgb2ZyZWdpb24gb2ZhZGRyZXNzZXNhc3NvY2lhdGVpbWcgYWx0PSJpbiBtb2Rlcm5zaG91bGQgYmVtZXRob2Qgb2ZyZXBvcnRpbmd0aW1lc3RhbXBuZWVkZWQgdG90aGUgR3JlYXRyZWdhcmRpbmdzZWVtZWQgdG92aWV3ZWQgYXNpbXBhY3Qgb25pZGVhIHRoYXR0aGUgV29ybGRoZWlnaHQgb2ZleHBhbmRpbmdUaGVzZSBhcmVjdXJyZW50Ij5jYXJlZnVsbHltYWludGFpbnNjaGFyZ2Ugb2ZDbGFzc2ljYWxhZGRyZXNzZWRwcmVkaWN0ZWRvd25lcnNoaXA8ZGl2IGlkPSJyaWdodCI+DQpyZXNpZGVuY2VsZWF2ZSB0aGVjb250ZW50Ij5hcmUgb2Z0ZW4gIH0pKCk7DQpwcm9iYWJseSBQcm9mZXNzb3ItYnV0dG9uIiByZXNwb25kZWRzYXlzIHRoYXRoYWQgdG8gYmVwbGFjZWQgaW5IdW5nYXJpYW5zdGF0dXMgb2ZzZXJ2ZXMgYXNVbml2ZXJzYWxleGVjdXRpb25hZ2dyZWdhdGVmb3Igd2hpY2hpbmZlY3Rpb25hZ3JlZWQgdG9ob3dldmVyLCBwb3B1bGFyIj5wbGFjZWQgb25jb25zdHJ1Y3RlbGVjdG9yYWxzeW1ib2wgb2ZpbmNsdWRpbmdyZXR1cm4gdG9hcmNoaXRlY3RDaHJpc3RpYW5wcmV2aW91cyBsaXZpbmcgaW5lYXNpZXIgdG9wcm9mZXNzb3IKJmx0OyEtLSBlZmZlY3Qgb2ZhbmFseXRpY3N3YXMgdGFrZW53aGVyZSB0aGV0b29rIG92ZXJiZWxpZWYgaW5BZnJpa2FhbnNhcyBmYXIgYXNwcmV2ZW50ZWR3b3JrIHdpdGhhIHNwZWNpYWw8ZmllbGRzZXRDaHJpc3RtYXNSZXRyaWV2ZWQKCkluIHRoZSBiYWNrIGludG9ub3J0aGVhc3RtYWdhemluZXM+PHN0cm9uZz5jb21taXR0ZWVnb3Zlcm5pbmdncm91cHMgb2ZzdG9yZWQgaW5lc3RhYmxpc2hhIGdlbmVyYWxpdHMgZmlyc3R0aGVpciBvd25wb3B1bGF0ZWRhbiBvYmplY3RDYXJpYmJlYW5hbGxvdyB0aGVkaXN0cmljdHN3aXNjb25zaW5sb2NhdGlvbi47IHdpZHRoOiBpbmhhYml0ZWRTb2NpYWxpc3RKYW51YXJ5IDE8L2Zvb3Rlcj5zaW1pbGFybHljaG9pY2Ugb2Z0aGUgc2FtZSBzcGVjaWZpYyBidXNpbmVzcyBUaGUgZmlyc3QubGVuZ3RoOyBkZXNpcmUgdG9kZWFsIHdpdGhzaW5jZSB0aGV1c2VyQWdlbnRjb25jZWl2ZWRpbmRleC5waHBhcyAmcXVvdDtlbmdhZ2UgaW5yZWNlbnRseSxmZXcgeWVhcnN3ZXJlIGFsc28KPGhlYWQ+CjxlZGl0ZWQgYnlhcmUga25vd25jaXRpZXMgaW5hY2Nlc3NrZXljb25kZW1uZWRhbHNvIGhhdmVzZXJ2aWNlcyxmYW1pbHkgb2ZTY2hvb2wgb2Zjb252ZXJ0ZWRuYXR1cmUgb2YgbGFuZ3VhZ2VtaW5pc3RlcnM8L29iamVjdD50aGVyZSBpcyBhIHBvcHVsYXJzZXF1ZW5jZXNhZHZvY2F0ZWRUaGV5IHdlcmVhbnkgb3RoZXJsb2NhdGlvbj1lbnRlciB0aGVtdWNoIG1vcmVyZWZsZWN0ZWR3YXMgbmFtZWRvcmlnaW5hbCBhIHR5cGljYWx3aGVuIHRoZXllbmdpbmVlcnNjb3VsZCBub3RyZXNpZGVudHN3ZWRuZXNkYXl0aGUgdGhpcmQgcHJvZHVjdHNKYW51YXJ5IDJ3aGF0IHRoZXlhIGNlcnRhaW5yZWFjdGlvbnNwcm9jZXNzb3JhZnRlciBoaXN0aGUgbGFzdCBjb250YWluZWQiPjwvZGl2Pgo8L2E+PC90ZD5kZXBlbmQgb25zZWFyY2giPgpwaWVjZXMgb2Zjb21wZXRpbmdSZWZlcmVuY2V0ZW5uZXNzZWV3aGljaCBoYXMgdmVyc2lvbj08L3NwYW4+IDw8L2hlYWRlcj5naXZlcyB0aGVoaXN0b3JpYW52YWx1ZT0iIj5wYWRkaW5nOjB2aWV3IHRoYXR0b2dldGhlcix0aGUgbW9zdCB3YXMgZm91bmRzdWJzZXQgb2ZhdHRhY2sgb25jaGlsZHJlbixwb2ludHMgb2ZwZXJzb25hbCBwb3NpdGlvbjphbGxlZ2VkbHlDbGV2ZWxhbmR3YXMgbGF0ZXJhbmQgYWZ0ZXJhcmUgZ2l2ZW53YXMgc3RpbGxzY3JvbGxpbmdkZXNpZ24gb2ZtYWtlcyB0aGVtdWNoIGxlc3NBbWVyaWNhbnMuCgpBZnRlciAsIGJ1dCB0aGVNdXNldW0gb2Zsb3Vpc2lhbmEoZnJvbSB0aGVtaW5uZXNvdGFwYXJ0aWNsZXNhIHByb2Nlc3NEb21pbmljYW52b2x1bWUgb2ZyZXR1cm5pbmdkZWZlbnNpdmUwMHB4fHJpZ2htYWRlIGZyb21tb3VzZW92ZXIiIHN0eWxlPSJzdGF0ZXMgb2Yod2hpY2ggaXNjb250aW51ZXNGcmFuY2lzY29idWlsZGluZyB3aXRob3V0IGF3aXRoIHNvbWV3aG8gd291bGRhIGZvcm0gb2ZhIHBhcnQgb2ZiZWZvcmUgaXRrbm93biBhcyAgU2VydmljZXNsb2NhdGlvbiBhbmQgb2Z0ZW5tZWFzdXJpbmdhbmQgaXQgaXNwYXBlcmJhY2t2YWx1ZXMgb2YNCjx0aXRsZT49IHdpbmRvdy5kZXRlcm1pbmVlciZxdW90OyBwbGF5ZWQgYnlhbmQgZWFybHk8L2NlbnRlcj5mcm9tIHRoaXN0aGUgdGhyZWVwb3dlciBhbmRvZiAmcXVvdDtpbm5lckhUTUw8YSBocmVmPSJ5OmlubGluZTtDaHVyY2ggb2Z0aGUgZXZlbnR2ZXJ5IGhpZ2hvZmZpY2lhbCAtaGVpZ2h0OiBjb250ZW50PSIvY2dpLWJpbi90byBjcmVhdGVhZnJpa2FhbnNlc3BlcmFudG9mcmFuw6dhaXNsYXR2aWXFoXVsaWV0dXZpxbPEjGXFoXRpbmHEjWXFoXRpbmHguYTguJfguKLml6XmnKzoqp7nroDkvZPlrZfnuYHpq5TlrZftlZzqta3slrTkuLrku4DkuYjorqHnrpfmnLrnrJTorrDmnKzoqI7oq5bljYDmnI3liqHlmajkupLogZTnvZHmiL/lnLDkuqfkv7HkuZDpg6jlh7rniYjnpL7mjpLooYzmppzpg6jokL3moLzov5vkuIDmraXmlK/ku5jlrp3pqozor4HnoIHlp5TlkZjkvJrmlbDmja7lupPmtojotLnogIXlip7lhazlrqTorqjorrrljLrmt7HlnLPluILmkq3mlL7lmajljJfkuqzluILlpKflrabnlJ/otormnaXotornrqHnkIblkZjkv6Hmga/nvZFzZXJ2aWNpb3NhcnTDrWN1bG9hcmdlbnRpbmFiYXJjZWxvbmFjdWFscXVpZXJwdWJsaWNhZG9wcm9kdWN0b3Nwb2zDrXRpY2FyZXNwdWVzdGF3aWtpcGVkaWFzaWd1aWVudGViw7pzcXVlZGFjb211bmlkYWRzZWd1cmlkYWRwcmluY2lwYWxwcmVndW50YXNjb250ZW5pZG9yZXNwb25kZXJ2ZW5lenVlbGFwcm9ibGVtYXNkaWNpZW1icmVyZWxhY2nDs25ub3ZpZW1icmVzaW1pbGFyZXNwcm95ZWN0b3Nwcm9ncmFtYXNpbnN0aXR1dG9hY3RpdmlkYWRlbmN1ZW50cmFlY29ub23DrWFpbcOhZ2VuZXNjb250YWN0YXJkZXNjYXJnYXJuZWNlc2FyaW9hdGVuY2nDs250ZWzDqWZvbm9jb21pc2nDs25jYW5jaW9uZXNjYXBhY2lkYWRlbmNvbnRyYXJhbsOhbGlzaXNmYXZvcml0b3N0w6lybWlub3Nwcm92aW5jaWFldGlxdWV0YXNlbGVtZW50b3NmdW5jaW9uZXNyZXN1bHRhZG9jYXLDoWN0ZXJwcm9waWVkYWRwcmluY2lwaW9uZWNlc2lkYWRtdW5pY2lwYWxjcmVhY2nDs25kZXNjYXJnYXNwcmVzZW5jaWFjb21lcmNpYWxvcGluaW9uZXNlamVyY2ljaW9lZGl0b3JpYWxzYWxhbWFuY2Fnb256w6FsZXpkb2N1bWVudG9wZWzDrWN1bGFyZWNpZW50ZXNnZW5lcmFsZXN0YXJyYWdvbmFwcsOhY3RpY2Fub3ZlZGFkZXNwcm9wdWVzdGFwYWNpZW50ZXN0w6ljbmljYXNvYmpldGl2b3Njb250YWN0b3PgpK7gpYfgpILgpLLgpL/gpI/gpLngpYjgpILgpJfgpK/gpL7gpLjgpL7gpKXgpI/gpLXgpILgpLDgpLngpYfgpJXgpYvgpIjgpJXgpYHgpJvgpLDgpLngpL7gpKzgpL7gpKbgpJXgpLngpL7gpLjgpK3gpYDgpLngpYHgpI/gpLDgpLngpYDgpK7gpYjgpILgpKbgpL/gpKjgpKzgpL7gpKRkaXBsb2RvY3PgpLjgpK7gpK/gpLDgpYLgpKrgpKjgpL7gpK7gpKrgpKTgpL7gpKvgpL/gpLDgpJTgpLjgpKTgpKTgpLDgpLngpLLgpYvgpJfgpLngpYHgpIbgpKzgpL7gpLDgpKbgpYfgpLbgpLngpYHgpIjgpJbgpYfgpLLgpK/gpKbgpL/gpJXgpL7gpK7gpLXgpYfgpKzgpKTgpYDgpKjgpKzgpYDgpJrgpK7gpYzgpKTgpLjgpL7gpLLgpLLgpYfgpJbgpJzgpYngpKzgpK7gpKbgpKbgpKTgpKXgpL7gpKjgpLngpYDgpLbgpLngpLDgpIXgpLLgpJfgpJXgpK3gpYDgpKjgpJfgpLDgpKrgpL7gpLjgpLDgpL7gpKTgpJXgpL/gpI/gpIngpLjgpYfgpJfgpK/gpYDgpLngpYLgpIHgpIbgpJfgpYfgpJ/gpYDgpK7gpJbgpYvgpJzgpJXgpL7gpLDgpIXgpK3gpYDgpJfgpK/gpYfgpKTgpYHgpK7gpLXgpYvgpJ/gpKbgpYfgpILgpIXgpJfgpLDgpJDgpLjgpYfgpK7gpYfgpLLgpLLgpJfgpL7gpLngpL7gpLLgpIrgpKrgpLDgpJrgpL7gpLDgpJDgpLjgpL7gpKbgpYfgpLDgpJzgpL/gpLjgpKbgpL/gpLLgpKzgpILgpKbgpKzgpKjgpL7gpLngpYLgpILgpLLgpL7gpJbgpJzgpYDgpKTgpKzgpJ/gpKjgpK7gpL/gpLLgpIfgpLjgpYfgpIbgpKjgpYfgpKjgpK/gpL7gpJXgpYHgpLLgpLLgpYngpJfgpK3gpL7gpJfgpLDgpYfgpLLgpJzgpJfgpLngpLDgpL7gpK7gpLLgpJfgpYfgpKrgpYfgpJzgpLngpL7gpKXgpIfgpLjgpYDgpLjgpLngpYDgpJXgpLLgpL7gpKDgpYDgpJXgpLngpL7gpIHgpKbgpYLgpLDgpKTgpLngpKTgpLjgpL7gpKTgpK/gpL7gpKbgpIbgpK/gpL7gpKrgpL7gpJXgpJXgpYzgpKjgpLbgpL7gpK7gpKbgpYfgpJbgpK/gpLngpYDgpLDgpL7gpK/gpJbgpYHgpKbgpLLgpJfgpYBjYXRlZ29yaWVzZXhwZXJpZW5jZTwvdGl0bGU+DQpDb3B5cmlnaHQgamF2YXNjcmlwdGNvbmRpdGlvbnNldmVyeXRoaW5nPHAgY2xhc3M9InRlY2hub2xvZ3liYWNrZ3JvdW5kPGEgY2xhc3M9Im1hbmFnZW1lbnQmY29weTsgMjAxamF2YVNjcmlwdGNoYXJhY3RlcnNicmVhZGNydW1idGhlbXNlbHZlc2hvcml6b250YWxnb3Zlcm5tZW50Q2FsaWZvcm5pYWFjdGl2aXRpZXNkaXNjb3ZlcmVkTmF2aWdhdGlvbnRyYW5zaXRpb25jb25uZWN0aW9ubmF2aWdhdGlvbmFwcGVhcmFuY2U8L3RpdGxlPjxtY2hlY2tib3giIHRlY2huaXF1ZXNwcm90ZWN0aW9uYXBwYXJlbnRseWFzIHdlbGwgYXN1bnQnLCAnVUEtcmVzb2x1dGlvbm9wZXJhdGlvbnN0ZWxldmlzaW9udHJhbnNsYXRlZFdhc2hpbmd0b25uYXZpZ2F0b3IuID0gd2luZG93LmltcHJlc3Npb24mbHQ7YnImZ3Q7bGl0ZXJhdHVyZXBvcHVsYXRpb25iZ2NvbG9yPSIjZXNwZWNpYWxseSBjb250ZW50PSJwcm9kdWN0aW9ubmV3c2xldHRlcnByb3BlcnRpZXNkZWZpbml0aW9ubGVhZGVyc2hpcFRlY2hub2xvZ3lQYXJsaWFtZW50Y29tcGFyaXNvbnVsIGNsYXNzPSIuaW5kZXhPZigiY29uY2x1c2lvbmRpc2N1c3Npb25jb21wb25lbnRzYmlvbG9naWNhbFJldm9sdXRpb25fY29udGFpbmVydW5kZXJzdG9vZG5vc2NyaXB0PjxwZXJtaXNzaW9uZWFjaCBvdGhlcmF0bW9zcGhlcmUgb25mb2N1cz0iPGZvcm0gaWQ9InByb2Nlc3Npbmd0aGlzLnZhbHVlZ2VuZXJhdGlvbkNvbmZlcmVuY2VzdWJzZXF1ZW50d2VsbC1rbm93bnZhcmlhdGlvbnNyZXB1dGF0aW9ucGhlbm9tZW5vbmRpc2NpcGxpbmVsb2dvLnBuZyIgKGRvY3VtZW50LGJvdW5kYXJpZXNleHByZXNzaW9uc2V0dGxlbWVudEJhY2tncm91bmRvdXQgb2YgdGhlZW50ZXJwcmlzZSgiaHR0cHM6IiB1bmVzY2FwZSgicGFzc3dvcmQiIGRlbW9jcmF0aWM8YSBocmVmPSIvd3JhcHBlciI+Cm1lbWJlcnNoaXBsaW5ndWlzdGljcHg7cGFkZGluZ3BoaWxvc29waHlhc3Npc3RhbmNldW5pdmVyc2l0eWZhY2lsaXRpZXNyZWNvZ25pemVkcHJlZmVyZW5jZWlmICh0eXBlb2ZtYWludGFpbmVkdm9jYWJ1bGFyeWh5cG90aGVzaXMuc3VibWl0KCk7JmFtcDtuYnNwO2Fubm90YXRpb25iZWhpbmQgdGhlRm91bmRhdGlvbnB1Ymxpc2hlciJhc3N1bXB0aW9uaW50cm9kdWNlZGNvcnJ1cHRpb25zY2llbnRpc3RzZXhwbGljaXRseWluc3RlYWQgb2ZkaW1lbnNpb25zIG9uQ2xpY2s9ImNvbnNpZGVyZWRkZXBhcnRtZW50b2NjdXBhdGlvbnNvb24gYWZ0ZXJpbnZlc3RtZW50cHJvbm91bmNlZGlkZW50aWZpZWRleHBlcmltZW50TWFuYWdlbWVudGdlb2dyYXBoaWMiIGhlaWdodD0ibGluayByZWw9Ii5yZXBsYWNlKC9kZXByZXNzaW9uY29uZmVyZW5jZXB1bmlzaG1lbnRlbGltaW5hdGVkcmVzaXN0YW5jZWFkYXB0YXRpb25vcHBvc2l0aW9ud2VsbCBrbm93bnN1cHBsZW1lbnRkZXRlcm1pbmVkaDEgY2xhc3M9IjBweDttYXJnaW5tZWNoYW5pY2Fsc3RhdGlzdGljc2NlbGVicmF0ZWRHb3Zlcm5tZW50CgpEdXJpbmcgdGRldmVsb3BlcnNhcnRpZmljaWFsZXF1aXZhbGVudG9yaWdpbmF0ZWRDb21taXNzaW9uYXR0YWNobWVudDxzcGFuIGlkPSJ0aGVyZSB3ZXJlTmVkZXJsYW5kc2JleW9uZCB0aGVyZWdpc3RlcmVkam91cm5hbGlzdGZyZXF1ZW50bHlhbGwgb2YgdGhlbGFuZz0iZW4iIDwvc3R5bGU+DQphYnNvbHV0ZTsgc3VwcG9ydGluZ2V4dHJlbWVseSBtYWluc3RyZWFtPC9zdHJvbmc+IHBvcHVsYXJpdHllbXBsb3ltZW50PC90YWJsZT4NCiBjb2xzcGFuPSI8L2Zvcm0+CiAgY29udmVyc2lvbmFib3V0IHRoZSA8L3A+PC9kaXY+aW50ZWdyYXRlZCIgbGFuZz0iZW5Qb3J0dWd1ZXNlc3Vic3RpdHV0ZWluZGl2aWR1YWxpbXBvc3NpYmxlbXVsdGltZWRpYWFsbW9zdCBhbGxweCBzb2xpZCAjYXBhcnQgZnJvbXN1YmplY3QgdG9pbiBFbmdsaXNoY3JpdGljaXplZGV4Y2VwdCBmb3JndWlkZWxpbmVzb3JpZ2luYWxseXJlbWFya2FibGV0aGUgc2Vjb25kaDIgY2xhc3M9IjxhIHRpdGxlPSIoaW5jbHVkaW5ncGFyYW1ldGVyc3Byb2hpYml0ZWQ9ICJodHRwOi8vZGljdGlvbmFyeXBlcmNlcHRpb25yZXZvbHV0aW9uZm91bmRhdGlvbnB4O2hlaWdodDpzdWNjZXNzZnVsc3VwcG9ydGVyc21pbGxlbm5pdW1oaXMgZmF0aGVydGhlICZxdW90O25vLXJlcGVhdDtjb21tZXJjaWFsaW5kdXN0cmlhbGVuY291cmFnZWRhbW91bnQgb2YgdW5vZmZpY2lhbGVmZmljaWVuY3lSZWZlcmVuY2VzY29vcmRpbmF0ZWRpc2NsYWltZXJleHBlZGl0aW9uZGV2ZWxvcGluZ2NhbGN1bGF0ZWRzaW1wbGlmaWVkbGVnaXRpbWF0ZXN1YnN0cmluZygwIiBjbGFzcz0iY29tcGxldGVseWlsbHVzdHJhdGVmaXZlIHllYXJzaW5zdHJ1bWVudFB1Ymxpc2hpbmcxIiBjbGFzcz0icHN5Y2hvbG9neWNvbmZpZGVuY2VudW1iZXIgb2YgYWJzZW5jZSBvZmZvY3VzZWQgb25qb2luZWQgdGhlc3RydWN0dXJlc3ByZXZpb3VzbHk+PC9pZnJhbWU+b25jZSBhZ2FpbmJ1dCByYXRoZXJpbW1pZ3JhbnRzb2YgY291cnNlLGEgZ3JvdXAgb2ZMaXRlcmF0dXJlVW5saWtlIHRoZTwvYT4mbmJzcDsKZnVuY3Rpb24gaXQgd2FzIHRoZUNvbnZlbnRpb25hdXRvbW9iaWxlUHJvdGVzdGFudGFnZ3Jlc3NpdmVhZnRlciB0aGUgU2ltaWxhcmx5LCIgLz48L2Rpdj5jb2xsZWN0aW9uDQpmdW5jdGlvbnZpc2liaWxpdHl0aGUgdXNlIG9mdm9sdW50ZWVyc2F0dHJhY3Rpb251bmRlciB0aGUgdGhyZWF0ZW5lZCo8IVtDREFUQVtpbXBvcnRhbmNlaW4gZ2VuZXJhbHRoZSBsYXR0ZXI8L2Zvcm0+CjwvLmluZGV4T2YoJ2kgPSAwOyBpIDxkaWZmZXJlbmNlZGV2b3RlZCB0b3RyYWRpdGlvbnNzZWFyY2ggZm9ydWx0aW1hdGVseXRvdXJuYW1lbnRhdHRyaWJ1dGVzc28tY2FsbGVkIH0KPC9zdHlsZT5ldmFsdWF0aW9uZW1waGFzaXplZGFjY2Vzc2libGU8L3NlY3Rpb24+c3VjY2Vzc2lvbmFsb25nIHdpdGhNZWFud2hpbGUsaW5kdXN0cmllczwvYT48YnIgLz5oYXMgYmVjb21lYXNwZWN0cyBvZlRlbGV2aXNpb25zdWZmaWNpZW50YmFza2V0YmFsbGJvdGggc2lkZXNjb250aW51aW5nYW4gYXJ0aWNsZTxpbWcgYWx0PSJhZHZlbnR1cmVzaGlzIG1vdGhlcm1hbmNoZXN0ZXJwcmluY2lwbGVzcGFydGljdWxhcmNvbW1lbnRhcnllZmZlY3RzIG9mZGVjaWRlZCB0byI+PHN0cm9uZz5wdWJsaXNoZXJzSm91cm5hbCBvZmRpZmZpY3VsdHlmYWNpbGl0YXRlYWNjZXB0YWJsZXN0eWxlLmNzcyIJZnVuY3Rpb24gaW5ub3ZhdGlvbj5Db3B5cmlnaHRzaXR1YXRpb25zd291bGQgaGF2ZWJ1c2luZXNzZXNEaWN0aW9uYXJ5c3RhdGVtZW50c29mdGVuIHVzZWRwZXJzaXN0ZW50aW4gSmFudWFyeWNvbXByaXNpbmc8L3RpdGxlPgoJZGlwbG9tYXRpY2NvbnRhaW5pbmdwZXJmb3JtaW5nZXh0ZW5zaW9uc21heSBub3QgYmVjb25jZXB0IG9mIG9uY2xpY2s9Ikl0IGlzIGFsc29maW5hbmNpYWwgbWFraW5nIHRoZUx1eGVtYm91cmdhZGRpdGlvbmFsYXJlIGNhbGxlZGVuZ2FnZWQgaW4ic2NyaXB0Iik7YnV0IGl0IHdhc2VsZWN0cm9uaWNvbnN1Ym1pdD0iCjwhLS0gRW5kIGVsZWN0cmljYWxvZmZpY2lhbGx5c3VnZ2VzdGlvbnRvcCBvZiB0aGV1bmxpa2UgdGhlQXVzdHJhbGlhbk9yaWdpbmFsbHlyZWZlcmVuY2VzCjwvaGVhZD4NCnJlY29nbmlzZWRpbml0aWFsaXplbGltaXRlZCB0b0FsZXhhbmRyaWFyZXRpcmVtZW50QWR2ZW50dXJlc2ZvdXIgeWVhcnMKCiZsdDshLS0gaW5jcmVhc2luZ2RlY29yYXRpb25oMyBjbGFzcz0ib3JpZ2lucyBvZm9ibGlnYXRpb25yZWd1bGF0aW9uY2xhc3NpZmllZChmdW5jdGlvbihhZHZhbnRhZ2VzYmVpbmcgdGhlIGhpc3RvcmlhbnM8YmFzZSBocmVmcmVwZWF0ZWRseXdpbGxpbmcgdG9jb21wYXJhYmxlZGVzaWduYXRlZG5vbWluYXRpb25mdW5jdGlvbmFsaW5zaWRlIHRoZXJldmVsYXRpb25lbmQgb2YgdGhlcyBmb3IgdGhlIGF1dGhvcml6ZWRyZWZ1c2VkIHRvdGFrZSBwbGFjZWF1dG9ub21vdXNjb21wcm9taXNlcG9saXRpY2FsIHJlc3RhdXJhbnR0d28gb2YgdGhlRmVicnVhcnkgMnF1YWxpdHkgb2Zzd2ZvYmplY3QudW5kZXJzdGFuZG5lYXJseSBhbGx3cml0dGVuIGJ5aW50ZXJ2aWV3cyIgd2lkdGg9IjF3aXRoZHJhd2FsZmxvYXQ6bGVmdGlzIHVzdWFsbHljYW5kaWRhdGVzbmV3c3BhcGVyc215c3RlcmlvdXNEZXBhcnRtZW50YmVzdCBrbm93bnBhcmxpYW1lbnRzdXBwcmVzc2VkY29udmVuaWVudHJlbWVtYmVyZWRkaWZmZXJlbnQgc3lzdGVtYXRpY2hhcyBsZWQgdG9wcm9wYWdhbmRhY29udHJvbGxlZGluZmx1ZW5jZXNjZXJlbW9uaWFscHJvY2xhaW1lZFByb3RlY3Rpb25saSBjbGFzcz0iU2NpZW50aWZpY2NsYXNzPSJuby10cmFkZW1hcmtzbW9yZSB0aGFuIHdpZGVzcHJlYWRMaWJlcmF0aW9udG9vayBwbGFjZWRheSBvZiB0aGVhcyBsb25nIGFzaW1wcmlzb25lZEFkZGl0aW9uYWwKPGhlYWQ+CjxtTGFib3JhdG9yeU5vdmVtYmVyIDJleGNlcHRpb25zSW5kdXN0cmlhbHZhcmlldHkgb2ZmbG9hdDogbGVmRHVyaW5nIHRoZWFzc2Vzc21lbnRoYXZlIGJlZW4gZGVhbHMgd2l0aFN0YXRpc3RpY3NvY2N1cnJlbmNlL3VsPjwvZGl2PmNsZWFyZml4Ij50aGUgcHVibGljbWFueSB5ZWFyc3doaWNoIHdlcmVvdmVyIHRpbWUsc3lub255bW91c2NvbnRlbnQiPgpwcmVzdW1hYmx5aGlzIGZhbWlseXVzZXJBZ2VudC51bmV4cGVjdGVkaW5jbHVkaW5nIGNoYWxsZW5nZWRhIG1pbm9yaXR5dW5kZWZpbmVkImJlbG9uZ3MgdG90YWtlbiBmcm9taW4gT2N0b2JlcnBvc2l0aW9uOiBzYWlkIHRvIGJlcmVsaWdpb3VzIEZlZGVyYXRpb24gcm93c3Bhbj0ib25seSBhIGZld21lYW50IHRoYXRsZWQgdG8gdGhlLS0+DQo8ZGl2IDxmaWVsZHNldD5BcmNoYmlzaG9wIGNsYXNzPSJub2JlaW5nIHVzZWRhcHByb2FjaGVzcHJpdmlsZWdlc25vc2NyaXB0PgpyZXN1bHRzIGlubWF5IGJlIHRoZUVhc3RlciBlZ2dtZWNoYW5pc21zcmVhc29uYWJsZVBvcHVsYXRpb25Db2xsZWN0aW9uc2VsZWN0ZWQiPm5vc2NyaXB0Pg0vaW5kZXgucGhwYXJyaXZhbCBvZi1qc3NkaycpKTttYW5hZ2VkIHRvaW5jb21wbGV0ZWNhc3VhbHRpZXNjb21wbGV0aW9uQ2hyaXN0aWFuc1NlcHRlbWJlciBhcml0aG1ldGljcHJvY2VkdXJlc21pZ2h0IGhhdmVQcm9kdWN0aW9uaXQgYXBwZWFyc1BoaWxvc29waHlmcmllbmRzaGlwbGVhZGluZyB0b2dpdmluZyB0aGV0b3dhcmQgdGhlZ3VhcmFudGVlZGRvY3VtZW50ZWRjb2xvcjojMDAwdmlkZW8gZ2FtZWNvbW1pc3Npb25yZWZsZWN0aW5nY2hhbmdlIHRoZWFzc29jaWF0ZWRzYW5zLXNlcmlmb25rZXlwcmVzczsgcGFkZGluZzpIZSB3YXMgdGhldW5kZXJseWluZ3R5cGljYWxseSAsIGFuZCB0aGUgc3JjRWxlbWVudHN1Y2Nlc3NpdmVzaW5jZSB0aGUgc2hvdWxkIGJlIG5ldHdvcmtpbmdhY2NvdW50aW5ndXNlIG9mIHRoZWxvd2VyIHRoYW5zaG93cyB0aGF0PC9zcGFuPgoJCWNvbXBsYWludHNjb250aW51b3VzcXVhbnRpdGllc2FzdHJvbm9tZXJoZSBkaWQgbm90ZHVlIHRvIGl0c2FwcGxpZWQgdG9hbiBhdmVyYWdlZWZmb3J0cyB0b3RoZSBmdXR1cmVhdHRlbXB0IHRvVGhlcmVmb3JlLGNhcGFiaWxpdHlSZXB1YmxpY2Fud2FzIGZvcm1lZEVsZWN0cm9uaWNraWxvbWV0ZXJzY2hhbGxlbmdlc3B1Ymxpc2hpbmd0aGUgZm9ybWVyaW5kaWdlbm91c2RpcmVjdGlvbnNzdWJzaWRpYXJ5Y29uc3BpcmFjeWRldGFpbHMgb2ZhbmQgaW4gdGhlYWZmb3JkYWJsZXN1YnN0YW5jZXNyZWFzb24gZm9yY29udmVudGlvbml0ZW10eXBlPSJhYnNvbHV0ZWx5c3VwcG9zZWRseXJlbWFpbmVkIGFhdHRyYWN0aXZldHJhdmVsbGluZ3NlcGFyYXRlbHlmb2N1c2VzIG9uZWxlbWVudGFyeWFwcGxpY2FibGVmb3VuZCB0aGF0c3R5bGVzaGVldG1hbnVzY3JpcHRzdGFuZHMgZm9yIG5vLXJlcGVhdChzb21ldGltZXNDb21tZXJjaWFsaW4gQW1lcmljYXVuZGVydGFrZW5xdWFydGVyIG9mYW4gZXhhbXBsZXBlcnNvbmFsbHlpbmRleC5waHA/PC9idXR0b24+CnBlcmNlbnRhZ2ViZXN0LWtub3duY3JlYXRpbmcgYSIgZGlyPSJsdHJMaWV1dGVuYW50CjxkaXYgaWQ9InRoZXkgd291bGRhYmlsaXR5IG9mbWFkZSB1cCBvZm5vdGVkIHRoYXRjbGVhciB0aGF0YXJndWUgdGhhdHRvIGFub3RoZXJjaGlsZHJlbidzcHVycG9zZSBvZmZvcm11bGF0ZWRiYXNlZCB1cG9udGhlIHJlZ2lvbnN1YmplY3Qgb2ZwYXNzZW5nZXJzcG9zc2Vzc2lvbi4KCkluIHRoZSBCZWZvcmUgdGhlYWZ0ZXJ3YXJkc2N1cnJlbnRseSBhY3Jvc3MgdGhlc2NpZW50aWZpY2NvbW11bml0eS5jYXBpdGFsaXNtaW4gR2VybWFueXJpZ2h0LXdpbmd0aGUgc3lzdGVtU29jaWV0eSBvZnBvbGl0aWNpYW5kaXJlY3Rpb246d2VudCBvbiB0b3JlbW92YWwgb2YgTmV3IFlvcmsgYXBhcnRtZW50c2luZGljYXRpb25kdXJpbmcgdGhldW5sZXNzIHRoZWhpc3RvcmljYWxoYWQgYmVlbiBhZGVmaW5pdGl2ZWluZ3JlZGllbnRhdHRlbmRhbmNlQ2VudGVyIGZvcnByb21pbmVuY2VyZWFkeVN0YXRlc3RyYXRlZ2llc2J1dCBpbiB0aGVhcyBwYXJ0IG9mY29uc3RpdHV0ZWNsYWltIHRoYXRsYWJvcmF0b3J5Y29tcGF0aWJsZWZhaWx1cmUgb2YsIHN1Y2ggYXMgYmVnYW4gd2l0aHVzaW5nIHRoZSB0byBwcm92aWRlZmVhdHVyZSBvZmZyb20gd2hpY2gvIiBjbGFzcz0iZ2VvbG9naWNhbHNldmVyYWwgb2ZkZWxpYmVyYXRlaW1wb3J0YW50IGhvbGRzIHRoYXRpbmcmcXVvdDsgdmFsaWduPXRvcHRoZSBHZXJtYW5vdXRzaWRlIG9mbmVnb3RpYXRlZGhpcyBjYXJlZXJzZXBhcmF0aW9uaWQ9InNlYXJjaHdhcyBjYWxsZWR0aGUgZm91cnRocmVjcmVhdGlvbm90aGVyIHRoYW5wcmV2ZW50aW9ud2hpbGUgdGhlIGVkdWNhdGlvbixjb25uZWN0aW5nYWNjdXJhdGVseXdlcmUgYnVpbHR3YXMga2lsbGVkYWdyZWVtZW50c211Y2ggbW9yZSBEdWUgdG8gdGhld2lkdGg6IDEwMHNvbWUgb3RoZXJLaW5nZG9tIG9mdGhlIGVudGlyZWZhbW91cyBmb3J0byBjb25uZWN0b2JqZWN0aXZlc3RoZSBGcmVuY2hwZW9wbGUgYW5kZmVhdHVyZWQiPmlzIHNhaWQgdG9zdHJ1Y3R1cmFscmVmZXJlbmR1bW1vc3Qgb2Z0ZW5hIHNlcGFyYXRlLT4KPGRpdiBpZCBPZmZpY2lhbCB3b3JsZHdpZGUuYXJpYS1sYWJlbHRoZSBwbGFuZXRhbmQgaXQgd2FzZCIgdmFsdWU9Imxvb2tpbmcgYXRiZW5lZmljaWFsYXJlIGluIHRoZW1vbml0b3JpbmdyZXBvcnRlZGx5dGhlIG1vZGVybndvcmtpbmcgb25hbGxvd2VkIHRvd2hlcmUgdGhlIGlubm92YXRpdmU8L2E+PC9kaXY+c291bmR0cmFja3NlYXJjaEZvcm10ZW5kIHRvIGJlaW5wdXQgaWQ9Im9wZW5pbmcgb2ZyZXN0cmljdGVkYWRvcHRlZCBieWFkZHJlc3Npbmd0aGVvbG9naWFubWV0aG9kcyBvZnZhcmlhbnQgb2ZDaHJpc3RpYW4gdmVyeSBsYXJnZWF1dG9tb3RpdmVieSBmYXIgdGhlcmFuZ2UgZnJvbXB1cnN1aXQgb2Zmb2xsb3cgdGhlYnJvdWdodCB0b2luIEVuZ2xhbmRhZ3JlZSB0aGF0YWNjdXNlZCBvZmNvbWVzIGZyb21wcmV2ZW50aW5nZGl2IHN0eWxlPWhpcyBvciBoZXJ0cmVtZW5kb3VzZnJlZWRvbSBvZmNvbmNlcm5pbmcwIDFlbSAxZW07QmFza2V0YmFsbC9zdHlsZS5jc3NhbiBlYXJsaWVyZXZlbiBhZnRlci8iIHRpdGxlPSIuY29tL2luZGV4dGFraW5nIHRoZXBpdHRzYnVyZ2hjb250ZW50Ij4NPHNjcmlwdD4oZnR1cm5lZCBvdXRoYXZpbmcgdGhlPC9zcGFuPg0KIG9jY2FzaW9uYWxiZWNhdXNlIGl0c3RhcnRlZCB0b3BoeXNpY2FsbHk+PC9kaXY+CiAgY3JlYXRlZCBieUN1cnJlbnRseSwgYmdjb2xvcj0idGFiaW5kZXg9ImRpc2FzdHJvdXNBbmFseXRpY3MgYWxzbyBoYXMgYT48ZGl2IGlkPSI8L3N0eWxlPgo8Y2FsbGVkIGZvcnNpbmdlciBhbmQuc3JjID0gIi8vdmlvbGF0aW9uc3RoaXMgcG9pbnRjb25zdGFudGx5aXMgbG9jYXRlZHJlY29yZGluZ3NkIGZyb20gdGhlbmVkZXJsYW5kc3BvcnR1Z3XDqnPXoteR16jXmdeq2YHYp9ix2LPbjGRlc2Fycm9sbG9jb21lbnRhcmlvZWR1Y2FjacOzbnNlcHRpZW1icmVyZWdpc3RyYWRvZGlyZWNjacOzbnViaWNhY2nDs25wdWJsaWNpZGFkcmVzcHVlc3Rhc3Jlc3VsdGFkb3NpbXBvcnRhbnRlcmVzZXJ2YWRvc2FydMOtY3Vsb3NkaWZlcmVudGVzc2lndWllbnRlc3JlcMO6YmxpY2FzaXR1YWNpw7NubWluaXN0ZXJpb3ByaXZhY2lkYWRkaXJlY3RvcmlvZm9ybWFjacOzbnBvYmxhY2nDs25wcmVzaWRlbnRlY29udGVuaWRvc2FjY2Vzb3Jpb3N0ZWNobm9yYXRpcGVyc29uYWxlc2NhdGVnb3LDrWFlc3BlY2lhbGVzZGlzcG9uaWJsZWFjdHVhbGlkYWRyZWZlcmVuY2lhdmFsbGFkb2xpZGJpYmxpb3RlY2FyZWxhY2lvbmVzY2FsZW5kYXJpb3BvbMOtdGljYXNhbnRlcmlvcmVzZG9jdW1lbnRvc25hdHVyYWxlemFtYXRlcmlhbGVzZGlmZXJlbmNpYWVjb27Ds21pY2F0cmFuc3BvcnRlcm9kcsOtZ3VlenBhcnRpY2lwYXJlbmN1ZW50cmFuZGlzY3VzacOzbmVzdHJ1Y3R1cmFmdW5kYWNpw7NuZnJlY3VlbnRlc3Blcm1hbmVudGV0b3RhbG1lbnRl0LzQvtC20L3QvtCx0YPQtNC10YLQvNC+0LbQtdGC0LLRgNC10LzRj9GC0LDQutC20LXRh9GC0L7QsdGL0LHQvtC70LXQtdC+0YfQtdC90YzRjdGC0L7Qs9C+0LrQvtCz0LTQsNC/0L7RgdC70LXQstGB0LXQs9C+0YHQsNC50YLQtdGH0LXRgNC10LfQvNC+0LPRg9GC0YHQsNC50YLQsNC20LjQt9C90LjQvNC10LbQtNGD0LHRg9C00YPRgtCf0L7QuNGB0LrQt9C00LXRgdGM0LLQuNC00LXQvtGB0LLRj9C30LjQvdGD0LbQvdC+0YHQstC+0LXQudC70Y7QtNC10LnQv9C+0YDQvdC+0LzQvdC+0LPQvtC00LXRgtC10LnRgdCy0L7QuNGF0L/RgNCw0LLQsNGC0LDQutC+0LnQvNC10YHRgtC+0LjQvNC10LXRgtC20LjQt9C90YzQvtC00L3QvtC50LvRg9GH0YjQtdC/0LXRgNC10LTRh9Cw0YHRgtC40YfQsNGB0YLRjNGA0LDQsdC+0YLQvdC+0LLRi9GF0L/RgNCw0LLQvtGB0L7QsdC+0LnQv9C+0YLQvtC80LzQtdC90LXQtdGH0LjRgdC70LXQvdC+0LLRi9C10YPRgdC70YPQs9C+0LrQvtC70L7QvdCw0LfQsNC00YLQsNC60L7QtdGC0L7Qs9C00LDQv9C+0YfRgtC40J/QvtGB0LvQtdGC0LDQutC40LXQvdC+0LLRi9C50YHRgtC+0LjRgtGC0LDQutC40YXRgdGA0LDQt9GD0KHQsNC90LrRgtGE0L7RgNGD0LzQmtC+0LPQtNCw0LrQvdC40LPQuNGB0LvQvtCy0LDQvdCw0YjQtdC50L3QsNC50YLQuNGB0LLQvtC40LzRgdCy0Y/Qt9GM0LvRjtCx0L7QudGH0LDRgdGC0L7RgdGA0LXQtNC40JrRgNC+0LzQtdCk0L7RgNGD0LzRgNGL0L3QutC10YHRgtCw0LvQuNC/0L7QuNGB0LrRgtGL0YHRj9GH0LzQtdGB0Y/RhtGG0LXQvdGC0YDRgtGA0YPQtNCw0YHQsNC80YvRhdGA0YvQvdC60LDQndC+0LLRi9C50YfQsNGB0L7QstC80LXRgdGC0LDRhNC40LvRjNC80LzQsNGA0YLQsNGB0YLRgNCw0L3QvNC10YHRgtC10YLQtdC60YHRgtC90LDRiNC40YXQvNC40L3Rg9GC0LjQvNC10L3QuNC40LzQtdGO0YLQvdC+0LzQtdGA0LPQvtGA0L7QtNGB0LDQvNC+0LzRjdGC0L7QvNGD0LrQvtC90YbQtdGB0LLQvtC10LzQutCw0LrQvtC50JDRgNGF0LjQstmF2YbYqtiv2YnYpdix2LPYp9mE2LHYs9in2YTYqdin2YTYudin2YXZg9iq2KjZh9in2KjYsdin2YXYrNin2YTZitmI2YXYp9mE2LXZiNix2KzYr9mK2K/Yqdin2YTYudi22YjYpdi22KfZgdip2KfZhNmC2LPZhdin2YTYudin2KjYqtit2YXZitmE2YXZhNmB2KfYqtmF2YTYqtmC2YnYqti52K/ZitmE2KfZhNi02LnYsdij2K7YqNin2LHYqti32YjZitix2LnZhNmK2YPZhdil2LHZgdin2YLYt9mE2KjYp9iq2KfZhNmE2LrYqdiq2LHYqtmK2KjYp9mE2YbYp9iz2KfZhNi02YrYrtmF2YbYqtiv2YrYp9mE2LnYsdio2KfZhNmC2LXYtdin2YHZhNin2YXYudmE2YrZh9in2KrYrdiv2YrYq9in2YTZhNmH2YXYp9mE2LnZhdmE2YXZg9iq2KjYqdmK2YXZg9mG2YPYp9mE2LfZgdmE2YHZitiv2YrZiNil2K/Yp9ix2KnYqtin2LHZitiu2KfZhNi12K3Yqdiq2LPYrNmK2YTYp9mE2YjZgtiq2LnZhtiv2YXYp9mF2K/ZitmG2KnYqti12YXZitmF2KPYsdi02YrZgdin2YTYsNmK2YbYudix2KjZitip2KjZiNin2KjYqdij2YTYudin2KjYp9mE2LPZgdix2YXYtNin2YPZhNiq2LnYp9mE2YnYp9mE2KPZiNmE2KfZhNiz2YbYqdis2KfZhdi52KnYp9mE2LXYrdmB2KfZhNiv2YrZhtmD2YTZhdin2KrYp9mE2K7Yp9i12KfZhNmF2YTZgdij2LnYttin2KHZg9iq2KfYqNip2KfZhNiu2YrYsdix2LPYp9im2YTYp9mE2YLZhNio2KfZhNij2K/YqNmF2YLYp9i32LnZhdix2KfYs9mE2YXZhti32YLYqdin2YTZg9iq2KjYp9mE2LHYrNmE2KfYtNiq2LHZg9in2YTZgtiv2YXZiti52LfZitmDc0J5VGFnTmFtZSguanBnIiBhbHQ9IjFweCBzb2xpZCAjLmdpZiIgYWx0PSJ0cmFuc3BhcmVudGluZm9ybWF0aW9uYXBwbGljYXRpb24iIG9uY2xpY2s9ImVzdGFibGlzaGVkYWR2ZXJ0aXNpbmcucG5nIiBhbHQ9ImVudmlyb25tZW50cGVyZm9ybWFuY2VhcHByb3ByaWF0ZSZhbXA7bWRhc2g7aW1tZWRpYXRlbHk8L3N0cm9uZz48L3JhdGhlciB0aGFudGVtcGVyYXR1cmVkZXZlbG9wbWVudGNvbXBldGl0aW9ucGxhY2Vob2xkZXJ2aXNpYmlsaXR5OmNvcHlyaWdodCI+MCIgaGVpZ2h0PSJldmVuIHRob3VnaHJlcGxhY2VtZW50ZGVzdGluYXRpb25Db3Jwb3JhdGlvbjx1bCBjbGFzcz0iQXNzb2NpYXRpb25pbmRpdmlkdWFsc3BlcnNwZWN0aXZlc2V0VGltZW91dCh1cmwoaHR0cDovL21hdGhlbWF0aWNzbWFyZ2luLXRvcDpldmVudHVhbGx5IGRlc2NyaXB0aW9uKSBuby1yZXBlYXRjb2xsZWN0aW9ucy5KUEd8dGh1bWJ8cGFydGljaXBhdGUvaGVhZD48Ym9keWZsb2F0OmxlZnQ7PGxpIGNsYXNzPSJodW5kcmVkcyBvZgoKSG93ZXZlciwgY29tcG9zaXRpb25jbGVhcjpib3RoO2Nvb3BlcmF0aW9ud2l0aGluIHRoZSBsYWJlbCBmb3I9ImJvcmRlci10b3A6TmV3IFplYWxhbmRyZWNvbW1lbmRlZHBob3RvZ3JhcGh5aW50ZXJlc3RpbmcmbHQ7c3VwJmd0O2NvbnRyb3ZlcnN5TmV0aGVybGFuZHNhbHRlcm5hdGl2ZW1heGxlbmd0aD0ic3dpdHplcmxhbmREZXZlbG9wbWVudGVzc2VudGlhbGx5CgpBbHRob3VnaCA8L3RleHRhcmVhPnRodW5kZXJiaXJkcmVwcmVzZW50ZWQmYW1wO25kYXNoO3NwZWN1bGF0aW9uY29tbXVuaXRpZXNsZWdpc2xhdGlvbmVsZWN0cm9uaWNzCgk8ZGl2IGlkPSJpbGx1c3RyYXRlZGVuZ2luZWVyaW5ndGVycml0b3JpZXNhdXRob3JpdGllc2Rpc3RyaWJ1dGVkNiIgaGVpZ2h0PSJzYW5zLXNlcmlmO2NhcGFibGUgb2YgZGlzYXBwZWFyZWRpbnRlcmFjdGl2ZWxvb2tpbmcgZm9yaXQgd291bGQgYmVBZmdoYW5pc3RhbndhcyBjcmVhdGVkTWF0aC5mbG9vcihzdXJyb3VuZGluZ2NhbiBhbHNvIGJlb2JzZXJ2YXRpb25tYWludGVuYW5jZWVuY291bnRlcmVkPGgyIGNsYXNzPSJtb3JlIHJlY2VudGl0IGhhcyBiZWVuaW52YXNpb24gb2YpLmdldFRpbWUoKWZ1bmRhbWVudGFsRGVzcGl0ZSB0aGUiPjxkaXYgaWQ9Imluc3BpcmF0aW9uZXhhbWluYXRpb25wcmVwYXJhdGlvbmV4cGxhbmF0aW9uPGlucHV0IGlkPSI8L2E+PC9zcGFuPnZlcnNpb25zIG9maW5zdHJ1bWVudHNiZWZvcmUgdGhlICA9ICdodHRwOi8vRGVzY3JpcHRpb25yZWxhdGl2ZWx5IC5zdWJzdHJpbmcoZWFjaCBvZiB0aGVleHBlcmltZW50c2luZmx1ZW50aWFsaW50ZWdyYXRpb25tYW55IHBlb3BsZWR1ZSB0byB0aGUgY29tYmluYXRpb25kbyBub3QgaGF2ZU1pZGRsZSBFYXN0PG5vc2NyaXB0Pjxjb3B5cmlnaHQiIHBlcmhhcHMgdGhlaW5zdGl0dXRpb25pbiBEZWNlbWJlcmFycmFuZ2VtZW50bW9zdCBmYW1vdXNwZXJzb25hbGl0eWNyZWF0aW9uIG9mbGltaXRhdGlvbnNleGNsdXNpdmVseXNvdmVyZWlnbnR5LWNvbnRlbnQiPgo8dGQgY2xhc3M9InVuZGVyZ3JvdW5kcGFyYWxsZWwgdG9kb2N0cmluZSBvZm9jY3VwaWVkIGJ5dGVybWlub2xvZ3lSZW5haXNzYW5jZWEgbnVtYmVyIG9mc3VwcG9ydCBmb3JleHBsb3JhdGlvbnJlY29nbml0aW9ucHJlZGVjZXNzb3I8aW1nIHNyYz0iLzxoMSBjbGFzcz0icHVibGljYXRpb25tYXkgYWxzbyBiZXNwZWNpYWxpemVkPC9maWVsZHNldD5wcm9ncmVzc2l2ZW1pbGxpb25zIG9mc3RhdGVzIHRoYXRlbmZvcmNlbWVudGFyb3VuZCB0aGUgb25lIGFub3RoZXIucGFyZW50Tm9kZWFncmljdWx0dXJlQWx0ZXJuYXRpdmVyZXNlYXJjaGVyc3Rvd2FyZHMgdGhlTW9zdCBvZiB0aGVtYW55IG90aGVyIChlc3BlY2lhbGx5PHRkIHdpZHRoPSI7d2lkdGg6MTAwJWluZGVwZW5kZW50PGgzIGNsYXNzPSIgb25jaGFuZ2U9IikuYWRkQ2xhc3MoaW50ZXJhY3Rpb25PbmUgb2YgdGhlIGRhdWdodGVyIG9mYWNjZXNzb3JpZXNicmFuY2hlcyBvZg0KPGRpdiBpZD0idGhlIGxhcmdlc3RkZWNsYXJhdGlvbnJlZ3VsYXRpb25zSW5mb3JtYXRpb250cmFuc2xhdGlvbmRvY3VtZW50YXJ5aW4gb3JkZXIgdG8iPgo8aGVhZD4KPCIgaGVpZ2h0PSIxYWNyb3NzIHRoZSBvcmllbnRhdGlvbik7PC9zY3JpcHQ+aW1wbGVtZW50ZWRjYW4gYmUgc2VlbnRoZXJlIHdhcyBhZGVtb25zdHJhdGVjb250YWluZXIiPmNvbm5lY3Rpb25zdGhlIEJyaXRpc2h3YXMgd3JpdHRlbiFpbXBvcnRhbnQ7cHg7IG1hcmdpbi1mb2xsb3dlZCBieWFiaWxpdHkgdG8gY29tcGxpY2F0ZWRkdXJpbmcgdGhlIGltbWlncmF0aW9uYWxzbyBjYWxsZWQ8aDQgY2xhc3M9ImRpc3RpbmN0aW9ucmVwbGFjZWQgYnlnb3Zlcm5tZW50c2xvY2F0aW9uIG9maW4gTm92ZW1iZXJ3aGV0aGVyIHRoZTwvcD4KPC9kaXY+YWNxdWlzaXRpb25jYWxsZWQgdGhlIHBlcnNlY3V0aW9uZGVzaWduYXRpb257Zm9udC1zaXplOmFwcGVhcmVkIGluaW52ZXN0aWdhdGVleHBlcmllbmNlZG1vc3QgbGlrZWx5d2lkZWx5IHVzZWRkaXNjdXNzaW9uc3ByZXNlbmNlIG9mIChkb2N1bWVudC5leHRlbnNpdmVseUl0IGhhcyBiZWVuaXQgZG9lcyBub3Rjb250cmFyeSB0b2luaGFiaXRhbnRzaW1wcm92ZW1lbnRzY2hvbGFyc2hpcGNvbnN1bXB0aW9uaW5zdHJ1Y3Rpb25mb3IgZXhhbXBsZW9uZSBvciBtb3JlcHg7IHBhZGRpbmd0aGUgY3VycmVudGEgc2VyaWVzIG9mYXJlIHVzdWFsbHlyb2xlIGluIHRoZXByZXZpb3VzbHkgZGVyaXZhdGl2ZXNldmlkZW5jZSBvZmV4cGVyaWVuY2VzY29sb3JzY2hlbWVzdGF0ZWQgdGhhdGNlcnRpZmljYXRlPC9hPjwvZGl2Pgogc2VsZWN0ZWQ9ImhpZ2ggc2Nob29scmVzcG9uc2UgdG9jb21mb3J0YWJsZWFkb3B0aW9uIG9mdGhyZWUgeWVhcnN0aGUgY291bnRyeWluIEZlYnJ1YXJ5c28gdGhhdCB0aGVwZW9wbGUgd2hvIHByb3ZpZGVkIGJ5PHBhcmFtIG5hbWVhZmZlY3RlZCBieWluIHRlcm1zIG9mYXBwb2ludG1lbnRJU08tODg1OS0xIndhcyBib3JuIGluaGlzdG9yaWNhbCByZWdhcmRlZCBhc21lYXN1cmVtZW50aXMgYmFzZWQgb24gYW5kIG90aGVyIDogZnVuY3Rpb24oc2lnbmlmaWNhbnRjZWxlYnJhdGlvbnRyYW5zbWl0dGVkL2pzL2pxdWVyeS5pcyBrbm93biBhc3RoZW9yZXRpY2FsIHRhYmluZGV4PSJpdCBjb3VsZCBiZTxub3NjcmlwdD4KaGF2aW5nIGJlZW4NCjxoZWFkPg0KPCAmcXVvdDtUaGUgY29tcGlsYXRpb25oZSBoYWQgYmVlbnByb2R1Y2VkIGJ5cGhpbG9zb3BoZXJjb25zdHJ1Y3RlZGludGVuZGVkIHRvYW1vbmcgb3RoZXJjb21wYXJlZCB0b3RvIHNheSB0aGF0RW5naW5lZXJpbmdhIGRpZmZlcmVudHJlZmVycmVkIHRvZGlmZmVyZW5jZXNiZWxpZWYgdGhhdHBob3RvZ3JhcGhzaWRlbnRpZnlpbmdIaXN0b3J5IG9mIFJlcHVibGljIG9mbmVjZXNzYXJpbHlwcm9iYWJpbGl0eXRlY2huaWNhbGx5bGVhdmluZyB0aGVzcGVjdGFjdWxhcmZyYWN0aW9uIG9mZWxlY3RyaWNpdHloZWFkIG9mIHRoZXJlc3RhdXJhbnRzcGFydG5lcnNoaXBlbXBoYXNpcyBvbm1vc3QgcmVjZW50c2hhcmUgd2l0aCBzYXlpbmcgdGhhdGZpbGxlZCB3aXRoZGVzaWduZWQgdG9pdCBpcyBvZnRlbiI+PC9pZnJhbWU+YXMgZm9sbG93czptZXJnZWQgd2l0aHRocm91Z2ggdGhlY29tbWVyY2lhbCBwb2ludGVkIG91dG9wcG9ydHVuaXR5dmlldyBvZiB0aGVyZXF1aXJlbWVudGRpdmlzaW9uIG9mcHJvZ3JhbW1pbmdoZSByZWNlaXZlZHNldEludGVydmFsIj48L3NwYW4+PC9pbiBOZXcgWW9ya2FkZGl0aW9uYWwgY29tcHJlc3Npb24KCjxkaXYgaWQ9ImluY29ycG9yYXRlOzwvc2NyaXB0PjxhdHRhY2hFdmVudGJlY2FtZSB0aGUgIiB0YXJnZXQ9Il9jYXJyaWVkIG91dFNvbWUgb2YgdGhlc2NpZW5jZSBhbmR0aGUgdGltZSBvZkNvbnRhaW5lciI+bWFpbnRhaW5pbmdDaHJpc3RvcGhlck11Y2ggb2YgdGhld3JpdGluZ3Mgb2YiIGhlaWdodD0iMnNpemUgb2YgdGhldmVyc2lvbiBvZiBtaXh0dXJlIG9mIGJldHdlZW4gdGhlRXhhbXBsZXMgb2ZlZHVjYXRpb25hbGNvbXBldGl0aXZlIG9uc3VibWl0PSJkaXJlY3RvciBvZmRpc3RpbmN0aXZlL0RURCBYSFRNTCByZWxhdGluZyB0b3RlbmRlbmN5IHRvcHJvdmluY2Ugb2Z3aGljaCB3b3VsZGRlc3BpdGUgdGhlc2NpZW50aWZpYyBsZWdpc2xhdHVyZS5pbm5lckhUTUwgYWxsZWdhdGlvbnNBZ3JpY3VsdHVyZXdhcyB1c2VkIGluYXBwcm9hY2ggdG9pbnRlbGxpZ2VudHllYXJzIGxhdGVyLHNhbnMtc2VyaWZkZXRlcm1pbmluZ1BlcmZvcm1hbmNlYXBwZWFyYW5jZXMsIHdoaWNoIGlzIGZvdW5kYXRpb25zYWJicmV2aWF0ZWRoaWdoZXIgdGhhbnMgZnJvbSB0aGUgaW5kaXZpZHVhbCBjb21wb3NlZCBvZnN1cHBvc2VkIHRvY2xhaW1zIHRoYXRhdHRyaWJ1dGlvbmZvbnQtc2l6ZToxZWxlbWVudHMgb2ZIaXN0b3JpY2FsIGhpcyBicm90aGVyYXQgdGhlIHRpbWVhbm5pdmVyc2FyeWdvdmVybmVkIGJ5cmVsYXRlZCB0byB1bHRpbWF0ZWx5IGlubm92YXRpb25zaXQgaXMgc3RpbGxjYW4gb25seSBiZWRlZmluaXRpb25zdG9HTVRTdHJpbmdBIG51bWJlciBvZmltZyBjbGFzcz0iRXZlbnR1YWxseSx3YXMgY2hhbmdlZG9jY3VycmVkIGlubmVpZ2hib3JpbmdkaXN0aW5ndWlzaHdoZW4gaGUgd2FzaW50cm9kdWNpbmd0ZXJyZXN0cmlhbE1hbnkgb2YgdGhlYXJndWVzIHRoYXRhbiBBbWVyaWNhbmNvbnF1ZXN0IG9md2lkZXNwcmVhZCB3ZXJlIGtpbGxlZHNjcmVlbiBhbmQgSW4gb3JkZXIgdG9leHBlY3RlZCB0b2Rlc2NlbmRhbnRzYXJlIGxvY2F0ZWRsZWdpc2xhdGl2ZWdlbmVyYXRpb25zIGJhY2tncm91bmRtb3N0IHBlb3BsZXllYXJzIGFmdGVydGhlcmUgaXMgbm90aGUgaGlnaGVzdGZyZXF1ZW50bHkgdGhleSBkbyBub3Rhcmd1ZWQgdGhhdHNob3dlZCB0aGF0cHJlZG9taW5hbnR0aGVvbG9naWNhbGJ5IHRoZSB0aW1lY29uc2lkZXJpbmdzaG9ydC1saXZlZDwvc3Bhbj48L2E+Y2FuIGJlIHVzZWR2ZXJ5IGxpdHRsZW9uZSBvZiB0aGUgaGFkIGFscmVhZHlpbnRlcnByZXRlZGNvbW11bmljYXRlZmVhdHVyZXMgb2Znb3Zlcm5tZW50LDwvbm9zY3JpcHQ+ZW50ZXJlZCB0aGUiIGhlaWdodD0iM0luZGVwZW5kZW50cG9wdWxhdGlvbnNsYXJnZS1zY2FsZS4gQWx0aG91Z2ggdXNlZCBpbiB0aGVkZXN0cnVjdGlvbnBvc3NpYmlsaXR5c3RhcnRpbmcgaW50d28gb3IgbW9yZWV4cHJlc3Npb25zc3Vib3JkaW5hdGVsYXJnZXIgdGhhbmhpc3RvcnkgYW5kPC9vcHRpb24+DQpDb250aW5lbnRhbGVsaW1pbmF0aW5nd2lsbCBub3QgYmVwcmFjdGljZSBvZmluIGZyb250IG9mc2l0ZSBvZiB0aGVlbnN1cmUgdGhhdHRvIGNyZWF0ZSBhbWlzc2lzc2lwcGlwb3RlbnRpYWxseW91dHN0YW5kaW5nYmV0dGVyIHRoYW53aGF0IGlzIG5vd3NpdHVhdGVkIGlubWV0YSBuYW1lPSJUcmFkaXRpb25hbHN1Z2dlc3Rpb25zVHJhbnNsYXRpb250aGUgZm9ybSBvZmF0bW9zcGhlcmljaWRlb2xvZ2ljYWxlbnRlcnByaXNlc2NhbGN1bGF0aW5nZWFzdCBvZiB0aGVyZW1uYW50cyBvZnBsdWdpbnNwYWdlL2luZGV4LnBocD9yZW1haW5lZCBpbnRyYW5zZm9ybWVkSGUgd2FzIGFsc293YXMgYWxyZWFkeXN0YXRpc3RpY2FsaW4gZmF2b3Igb2ZNaW5pc3RyeSBvZm1vdmVtZW50IG9mZm9ybXVsYXRpb25pcyByZXF1aXJlZDxsaW5rIHJlbD0iVGhpcyBpcyB0aGUgPGEgaHJlZj0iL3BvcHVsYXJpemVkaW52b2x2ZWQgaW5hcmUgdXNlZCB0b2FuZCBzZXZlcmFsbWFkZSBieSB0aGVzZWVtcyB0byBiZWxpa2VseSB0aGF0UGFsZXN0aW5pYW5uYW1lZCBhZnRlcml0IGhhZCBiZWVubW9zdCBjb21tb250byByZWZlciB0b2J1dCB0aGlzIGlzY29uc2VjdXRpdmV0ZW1wb3JhcmlseUluIGdlbmVyYWwsY29udmVudGlvbnN0YWtlcyBwbGFjZXN1YmRpdmlzaW9udGVycml0b3JpYWxvcGVyYXRpb25hbHBlcm1hbmVudGx5d2FzIGxhcmdlbHlvdXRicmVhayBvZmluIHRoZSBwYXN0Zm9sbG93aW5nIGEgeG1sbnM6b2c9Ij48YSBjbGFzcz0iY2xhc3M9InRleHRDb252ZXJzaW9uIG1heSBiZSB1c2VkbWFudWZhY3R1cmVhZnRlciBiZWluZ2NsZWFyZml4Ij4KcXVlc3Rpb24gb2Z3YXMgZWxlY3RlZHRvIGJlY29tZSBhYmVjYXVzZSBvZiBzb21lIHBlb3BsZWluc3BpcmVkIGJ5c3VjY2Vzc2Z1bCBhIHRpbWUgd2hlbm1vcmUgY29tbW9uYW1vbmdzdCB0aGVhbiBvZmZpY2lhbHdpZHRoOjEwMCU7dGVjaG5vbG9neSx3YXMgYWRvcHRlZHRvIGtlZXAgdGhlc2V0dGxlbWVudHNsaXZlIGJpcnRoc2luZGV4Lmh0bWwiQ29ubmVjdGljdXRhc3NpZ25lZCB0byZhbXA7dGltZXM7YWNjb3VudCBmb3JhbGlnbj1yaWdodHRoZSBjb21wYW55YWx3YXlzIGJlZW5yZXR1cm5lZCB0b2ludm9sdmVtZW50QmVjYXVzZSB0aGV0aGlzIHBlcmlvZCIgbmFtZT0icSIgY29uZmluZWQgdG9hIHJlc3VsdCBvZnZhbHVlPSIiIC8+aXMgYWN0dWFsbHlFbnZpcm9ubWVudA0KPC9oZWFkPg0KQ29udmVyc2VseSw+CjxkaXYgaWQ9IjAiIHdpZHRoPSIxaXMgcHJvYmFibHloYXZlIGJlY29tZWNvbnRyb2xsaW5ndGhlIHByb2JsZW1jaXRpemVucyBvZnBvbGl0aWNpYW5zcmVhY2hlZCB0aGVhcyBlYXJseSBhczpub25lOyBvdmVyPHRhYmxlIGNlbGx2YWxpZGl0eSBvZmRpcmVjdGx5IHRvb25tb3VzZWRvd253aGVyZSBpdCBpc3doZW4gaXQgd2FzbWVtYmVycyBvZiByZWxhdGlvbiB0b2FjY29tbW9kYXRlYWxvbmcgd2l0aCBJbiB0aGUgbGF0ZXRoZSBFbmdsaXNoZGVsaWNpb3VzIj50aGlzIGlzIG5vdHRoZSBwcmVzZW50aWYgdGhleSBhcmVhbmQgZmluYWxseWEgbWF0dGVyIG9mDQoJPC9kaXY+DQoNCjwvc2NyaXB0PmZhc3RlciB0aGFubWFqb3JpdHkgb2ZhZnRlciB3aGljaGNvbXBhcmF0aXZldG8gbWFpbnRhaW5pbXByb3ZlIHRoZWF3YXJkZWQgdGhlZXIiIGNsYXNzPSJmcmFtZWJvcmRlcnJlc3RvcmF0aW9uaW4gdGhlIHNhbWVhbmFseXNpcyBvZnRoZWlyIGZpcnN0RHVyaW5nIHRoZSBjb250aW5lbnRhbHNlcXVlbmNlIG9mZnVuY3Rpb24oKXtmb250LXNpemU6IHdvcmsgb24gdGhlPC9zY3JpcHQ+CjxiZWdpbnMgd2l0aGphdmFzY3JpcHQ6Y29uc3RpdHVlbnR3YXMgZm91bmRlZGVxdWlsaWJyaXVtYXNzdW1lIHRoYXRpcyBnaXZlbiBieW5lZWRzIHRvIGJlY29vcmRpbmF0ZXN0aGUgdmFyaW91c2FyZSBwYXJ0IG9mb25seSBpbiB0aGVzZWN0aW9ucyBvZmlzIGEgY29tbW9udGhlb3JpZXMgb2ZkaXNjb3Zlcmllc2Fzc29jaWF0aW9uZWRnZSBvZiB0aGVzdHJlbmd0aCBvZnBvc2l0aW9uIGlucHJlc2VudC1kYXl1bml2ZXJzYWxseXRvIGZvcm0gdGhlYnV0IGluc3RlYWRjb3Jwb3JhdGlvbmF0dGFjaGVkIHRvaXMgY29tbW9ubHlyZWFzb25zIGZvciAmcXVvdDt0aGUgY2FuIGJlIG1hZGV3YXMgYWJsZSB0b3doaWNoIG1lYW5zYnV0IGRpZCBub3Rvbk1vdXNlT3ZlcmFzIHBvc3NpYmxlb3BlcmF0ZWQgYnljb21pbmcgZnJvbXRoZSBwcmltYXJ5YWRkaXRpb24gb2Zmb3Igc2V2ZXJhbHRyYW5zZmVycmVkYSBwZXJpb2Qgb2ZhcmUgYWJsZSB0b2hvd2V2ZXIsIGl0c2hvdWxkIGhhdmVtdWNoIGxhcmdlcgoJPC9zY3JpcHQ+YWRvcHRlZCB0aGVwcm9wZXJ0eSBvZmRpcmVjdGVkIGJ5ZWZmZWN0aXZlbHl3YXMgYnJvdWdodGNoaWxkcmVuIG9mUHJvZ3JhbW1pbmdsb25nZXIgdGhhbm1hbnVzY3JpcHRzd2FyIGFnYWluc3RieSBtZWFucyBvZmFuZCBtb3N0IG9mc2ltaWxhciB0byBwcm9wcmlldGFyeW9yaWdpbmF0aW5ncHJlc3RpZ2lvdXNncmFtbWF0aWNhbGV4cGVyaWVuY2UudG8gbWFrZSB0aGVJdCB3YXMgYWxzb2lzIGZvdW5kIGluY29tcGV0aXRvcnNpbiB0aGUgVS5TLnJlcGxhY2UgdGhlYnJvdWdodCB0aGVjYWxjdWxhdGlvbmZhbGwgb2YgdGhldGhlIGdlbmVyYWxwcmFjdGljYWxseWluIGhvbm9yIG9mcmVsZWFzZWQgaW5yZXNpZGVudGlhbGFuZCBzb21lIG9ma2luZyBvZiB0aGVyZWFjdGlvbiB0bzFzdCBFYXJsIG9mY3VsdHVyZSBhbmRwcmluY2lwYWxseTwvdGl0bGU+CiAgdGhleSBjYW4gYmViYWNrIHRvIHRoZXNvbWUgb2YgaGlzZXhwb3N1cmUgdG9hcmUgc2ltaWxhcmZvcm0gb2YgdGhlYWRkRmF2b3JpdGVjaXRpemVuc2hpcHBhcnQgaW4gdGhlcGVvcGxlIHdpdGhpbiBwcmFjdGljZXRvIGNvbnRpbnVlJmFtcDttaW51czthcHByb3ZlZCBieSB0aGUgZmlyc3QgYWxsb3dlZCB0aGVhbmQgZm9yIHRoZWZ1bmN0aW9uaW5ncGxheWluZyB0aGVzb2x1dGlvbiB0b2hlaWdodD0iMCIgaW4gaGlzIGJvb2ttb3JlIHRoYW4gYWZvbGxvd3MgdGhlY3JlYXRlZCB0aGVwcmVzZW5jZSBpbiZuYnNwOzwvdGQ+bmF0aW9uYWxpc3R0aGUgaWRlYSBvZmEgY2hhcmFjdGVyd2VyZSBmb3JjZWQgY2xhc3M9ImJ0bmRheXMgb2YgdGhlZmVhdHVyZWQgaW5zaG93aW5nIHRoZWludGVyZXN0IGluaW4gcGxhY2Ugb2Z0dXJuIG9mIHRoZXRoZSBoZWFkIG9mTG9yZCBvZiB0aGVwb2xpdGljYWxseWhhcyBpdHMgb3duRWR1Y2F0aW9uYWxhcHByb3ZhbCBvZnNvbWUgb2YgdGhlZWFjaCBvdGhlcixiZWhhdmlvciBvZmFuZCBiZWNhdXNlYW5kIGFub3RoZXJhcHBlYXJlZCBvbnJlY29yZGVkIGluYmxhY2smcXVvdDttYXkgaW5jbHVkZXRoZSB3b3JsZCdzY2FuIGxlYWQgdG9yZWZlcnMgdG8gYWJvcmRlcj0iMCIgZ292ZXJubWVudCB3aW5uaW5nIHRoZXJlc3VsdGVkIGluIHdoaWxlIHRoZSBXYXNoaW5ndG9uLHRoZSBzdWJqZWN0Y2l0eSBpbiB0aGU+PC9kaXY+DQoJCXJlZmxlY3QgdGhldG8gY29tcGxldGViZWNhbWUgbW9yZXJhZGlvYWN0aXZlcmVqZWN0ZWQgYnl3aXRob3V0IGFueWhpcyBmYXRoZXIsd2hpY2ggY291bGRjb3B5IG9mIHRoZXRvIGluZGljYXRlYSBwb2xpdGljYWxhY2NvdW50cyBvZmNvbnN0aXR1dGVzd29ya2VkIHdpdGhlcjwvYT48L2xpPm9mIGhpcyBsaWZlYWNjb21wYW5pZWRjbGllbnRXaWR0aHByZXZlbnQgdGhlTGVnaXNsYXRpdmVkaWZmZXJlbnRseXRvZ2V0aGVyIGluaGFzIHNldmVyYWxmb3IgYW5vdGhlcnRleHQgb2YgdGhlZm91bmRlZCB0aGVlIHdpdGggdGhlIGlzIHVzZWQgZm9yY2hhbmdlZCB0aGV1c3VhbGx5IHRoZXBsYWNlIHdoZXJld2hlcmVhcyB0aGU+IDxhIGhyZWY9IiI+PGEgaHJlZj0idGhlbXNlbHZlcyxhbHRob3VnaCBoZXRoYXQgY2FuIGJldHJhZGl0aW9uYWxyb2xlIG9mIHRoZWFzIGEgcmVzdWx0cmVtb3ZlQ2hpbGRkZXNpZ25lZCBieXdlc3Qgb2YgdGhlU29tZSBwZW9wbGVwcm9kdWN0aW9uLHNpZGUgb2YgdGhlbmV3c2xldHRlcnN1c2VkIGJ5IHRoZWRvd24gdG8gdGhlYWNjZXB0ZWQgYnlsaXZlIGluIHRoZWF0dGVtcHRzIHRvb3V0c2lkZSB0aGVmcmVxdWVuY2llc0hvd2V2ZXIsIGlucHJvZ3JhbW1lcnNhdCBsZWFzdCBpbmFwcHJveGltYXRlYWx0aG91Z2ggaXR3YXMgcGFydCBvZmFuZCB2YXJpb3VzR292ZXJub3Igb2Z0aGUgYXJ0aWNsZXR1cm5lZCBpbnRvPjxhIGhyZWY9Ii90aGUgZWNvbm9teWlzIHRoZSBtb3N0bW9zdCB3aWRlbHl3b3VsZCBsYXRlcmFuZCBwZXJoYXBzcmlzZSB0byB0aGVvY2N1cnMgd2hlbnVuZGVyIHdoaWNoY29uZGl0aW9ucy50aGUgd2VzdGVybnRoZW9yeSB0aGF0aXMgcHJvZHVjZWR0aGUgY2l0eSBvZmluIHdoaWNoIGhlc2VlbiBpbiB0aGV0aGUgY2VudHJhbGJ1aWxkaW5nIG9mbWFueSBvZiBoaXNhcmVhIG9mIHRoZWlzIHRoZSBvbmx5bW9zdCBvZiB0aGVtYW55IG9mIHRoZXRoZSBXZXN0ZXJuVGhlcmUgaXMgbm9leHRlbmRlZCB0b1N0YXRpc3RpY2FsY29sc3Bhbj0yIHxzaG9ydCBzdG9yeXBvc3NpYmxlIHRvdG9wb2xvZ2ljYWxjcml0aWNhbCBvZnJlcG9ydGVkIHRvYSBDaHJpc3RpYW5kZWNpc2lvbiB0b2lzIGVxdWFsIHRvcHJvYmxlbXMgb2ZUaGlzIGNhbiBiZW1lcmNoYW5kaXNlZm9yIG1vc3Qgb2ZubyBldmlkZW5jZWVkaXRpb25zIG9mZWxlbWVudHMgaW4mcXVvdDsuIFRoZWNvbS9pbWFnZXMvd2hpY2ggbWFrZXN0aGUgcHJvY2Vzc3JlbWFpbnMgdGhlbGl0ZXJhdHVyZSxpcyBhIG1lbWJlcnRoZSBwb3B1bGFydGhlIGFuY2llbnRwcm9ibGVtcyBpbnRpbWUgb2YgdGhlZGVmZWF0ZWQgYnlib2R5IG9mIHRoZWEgZmV3IHllYXJzbXVjaCBvZiB0aGV0aGUgd29yayBvZkNhbGlmb3JuaWEsc2VydmVkIGFzIGFnb3Zlcm5tZW50LmNvbmNlcHRzIG9mbW92ZW1lbnQgaW4JCTxkaXYgaWQ9Iml0IiB2YWx1ZT0ibGFuZ3VhZ2Ugb2ZhcyB0aGV5IGFyZXByb2R1Y2VkIGluaXMgdGhhdCB0aGVleHBsYWluIHRoZWRpdj48L2Rpdj4KSG93ZXZlciB0aGVsZWFkIHRvIHRoZQk8YSBocmVmPSIvd2FzIGdyYW50ZWRwZW9wbGUgaGF2ZWNvbnRpbnVhbGx5d2FzIHNlZW4gYXNhbmQgcmVsYXRlZHRoZSByb2xlIG9mcHJvcG9zZWQgYnlvZiB0aGUgYmVzdGVhY2ggb3RoZXIuQ29uc3RhbnRpbmVwZW9wbGUgZnJvbWRpYWxlY3RzIG9mdG8gcmV2aXNpb253YXMgcmVuYW1lZGEgc291cmNlIG9mdGhlIGluaXRpYWxsYXVuY2hlZCBpbnByb3ZpZGUgdGhldG8gdGhlIHdlc3R3aGVyZSB0aGVyZWFuZCBzaW1pbGFyYmV0d2VlbiB0d29pcyBhbHNvIHRoZUVuZ2xpc2ggYW5kY29uZGl0aW9ucyx0aGF0IGl0IHdhc2VudGl0bGVkIHRvdGhlbXNlbHZlcy5xdWFudGl0eSBvZnJhbnNwYXJlbmN5dGhlIHNhbWUgYXN0byBqb2luIHRoZWNvdW50cnkgYW5kdGhpcyBpcyB0aGVUaGlzIGxlZCB0b2Egc3RhdGVtZW50Y29udHJhc3QgdG9sYXN0SW5kZXhPZnRocm91Z2ggaGlzaXMgZGVzaWduZWR0aGUgdGVybSBpc2lzIHByb3ZpZGVkcHJvdGVjdCB0aGVuZzwvYT48L2xpPlRoZSBjdXJyZW50dGhlIHNpdGUgb2ZzdWJzdGFudGlhbGV4cGVyaWVuY2UsaW4gdGhlIFdlc3R0aGV5IHNob3VsZHNsb3ZlbsSNaW5hY29tZW50YXJpb3N1bml2ZXJzaWRhZGNvbmRpY2lvbmVzYWN0aXZpZGFkZXNleHBlcmllbmNpYXRlY25vbG9nw61hcHJvZHVjY2nDs25wdW50dWFjacOzbmFwbGljYWNpw7NuY29udHJhc2XDsWFjYXRlZ29yw61hc3JlZ2lzdHJhcnNlcHJvZmVzaW9uYWx0cmF0YW1pZW50b3JlZ8Otc3RyYXRlc2VjcmV0YXLDrWFwcmluY2lwYWxlc3Byb3RlY2Npw7NuaW1wb3J0YW50ZXNpbXBvcnRhbmNpYXBvc2liaWxpZGFkaW50ZXJlc2FudGVjcmVjaW1pZW50b25lY2VzaWRhZGVzc3VzY3JpYmlyc2Vhc29jaWFjacOzbmRpc3BvbmlibGVzZXZhbHVhY2nDs25lc3R1ZGlhbnRlc3Jlc3BvbnNhYmxlcmVzb2x1Y2nDs25ndWFkYWxhamFyYXJlZ2lzdHJhZG9zb3BvcnR1bmlkYWRjb21lcmNpYWxlc2ZvdG9ncmFmw61hYXV0b3JpZGFkZXNpbmdlbmllcsOtYXRlbGV2aXNpw7NuY29tcGV0ZW5jaWFvcGVyYWNpb25lc2VzdGFibGVjaWRvc2ltcGxlbWVudGVhY3R1YWxtZW50ZW5hdmVnYWNpw7NuY29uZm9ybWlkYWRsaW5lLWhlaWdodDpmb250LWZhbWlseToiIDogImh0dHA6Ly9hcHBsaWNhdGlvbnNsaW5rIiBocmVmPSJzcGVjaWZpY2FsbHkvLzwhW0NEQVRBWwpPcmdhbml6YXRpb25kaXN0cmlidXRpb24wcHg7IGhlaWdodDpyZWxhdGlvbnNoaXBkZXZpY2Utd2lkdGg8ZGl2IGNsYXNzPSI8bGFiZWwgZm9yPSJyZWdpc3RyYXRpb248L25vc2NyaXB0PgovaW5kZXguaHRtbCJ3aW5kb3cub3BlbiggIWltcG9ydGFudDthcHBsaWNhdGlvbi9pbmRlcGVuZGVuY2UvL3d3dy5nb29nbGVvcmdhbml6YXRpb25hdXRvY29tcGxldGVyZXF1aXJlbWVudHNjb25zZXJ2YXRpdmU8Zm9ybSBuYW1lPSJpbnRlbGxlY3R1YWxtYXJnaW4tbGVmdDoxOHRoIGNlbnR1cnlhbiBpbXBvcnRhbnRpbnN0aXR1dGlvbnNhYmJyZXZpYXRpb248aW1nIGNsYXNzPSJvcmdhbmlzYXRpb25jaXZpbGl6YXRpb24xOXRoIGNlbnR1cnlhcmNoaXRlY3R1cmVpbmNvcnBvcmF0ZWQyMHRoIGNlbnR1cnktY29udGFpbmVyIj5tb3N0IG5vdGFibHkvPjwvYT48L2Rpdj5ub3RpZmljYXRpb24ndW5kZWZpbmVkJylGdXJ0aGVybW9yZSxiZWxpZXZlIHRoYXRpbm5lckhUTUwgPSBwcmlvciB0byB0aGVkcmFtYXRpY2FsbHlyZWZlcnJpbmcgdG9uZWdvdGlhdGlvbnNoZWFkcXVhcnRlcnNTb3V0aCBBZnJpY2F1bnN1Y2Nlc3NmdWxQZW5uc3lsdmFuaWFBcyBhIHJlc3VsdCw8aHRtbCBsYW5nPSImbHQ7L3N1cCZndDtkZWFsaW5nIHdpdGhwaGlsYWRlbHBoaWFoaXN0b3JpY2FsbHkpOzwvc2NyaXB0PgpwYWRkaW5nLXRvcDpleHBlcmltZW50YWxnZXRBdHRyaWJ1dGVpbnN0cnVjdGlvbnN0ZWNobm9sb2dpZXNwYXJ0IG9mIHRoZSA9ZnVuY3Rpb24oKXtzdWJzY3JpcHRpb25sLmR0ZCI+DQo8aHRnZW9ncmFwaGljYWxDb25zdGl0dXRpb24nLCBmdW5jdGlvbihzdXBwb3J0ZWQgYnlhZ3JpY3VsdHVyYWxjb25zdHJ1Y3Rpb25wdWJsaWNhdGlvbnNmb250LXNpemU6IDFhIHZhcmlldHkgb2Y8ZGl2IHN0eWxlPSJFbmN5Y2xvcGVkaWFpZnJhbWUgc3JjPSJkZW1vbnN0cmF0ZWRhY2NvbXBsaXNoZWR1bml2ZXJzaXRpZXNEZW1vZ3JhcGhpY3MpOzwvc2NyaXB0PjxkZWRpY2F0ZWQgdG9rbm93bGVkZ2Ugb2ZzYXRpc2ZhY3Rpb25wYXJ0aWN1bGFybHk8L2Rpdj48L2Rpdj5FbmdsaXNoIChVUylhcHBlbmRDaGlsZCh0cmFuc21pc3Npb25zLiBIb3dldmVyLCBpbnRlbGxpZ2VuY2UiIHRhYmluZGV4PSJmbG9hdDpyaWdodDtDb21tb253ZWFsdGhyYW5naW5nIGZyb21pbiB3aGljaCB0aGVhdCBsZWFzdCBvbmVyZXByb2R1Y3Rpb25lbmN5Y2xvcGVkaWE7Zm9udC1zaXplOjFqdXJpc2RpY3Rpb25hdCB0aGF0IHRpbWUiPjxhIGNsYXNzPSJJbiBhZGRpdGlvbixkZXNjcmlwdGlvbitjb252ZXJzYXRpb25jb250YWN0IHdpdGhpcyBnZW5lcmFsbHlyIiBjb250ZW50PSJyZXByZXNlbnRpbmcmbHQ7bWF0aCZndDtwcmVzZW50YXRpb25vY2Nhc2lvbmFsbHk8aW1nIHdpZHRoPSJuYXZpZ2F0aW9uIj5jb21wZW5zYXRpb25jaGFtcGlvbnNoaXBtZWRpYT0iYWxsIiB2aW9sYXRpb24gb2ZyZWZlcmVuY2UgdG9yZXR1cm4gdHJ1ZTtTdHJpY3QvL0VOIiB0cmFuc2FjdGlvbnNpbnRlcnZlbnRpb252ZXJpZmljYXRpb25JbmZvcm1hdGlvbiBkaWZmaWN1bHRpZXNDaGFtcGlvbnNoaXBjYXBhYmlsaXRpZXM8IVtlbmRpZl0tLT59Cjwvc2NyaXB0PgpDaHJpc3RpYW5pdHlmb3IgZXhhbXBsZSxQcm9mZXNzaW9uYWxyZXN0cmljdGlvbnNzdWdnZXN0IHRoYXR3YXMgcmVsZWFzZWQoc3VjaCBhcyB0aGVyZW1vdmVDbGFzcyh1bmVtcGxveW1lbnR0aGUgQW1lcmljYW5zdHJ1Y3R1cmUgb2YvaW5kZXguaHRtbCBwdWJsaXNoZWQgaW5zcGFuIGNsYXNzPSIiPjxhIGhyZWY9Ii9pbnRyb2R1Y3Rpb25iZWxvbmdpbmcgdG9jbGFpbWVkIHRoYXRjb25zZXF1ZW5jZXM8bWV0YSBuYW1lPSJHdWlkZSB0byB0aGVvdmVyd2hlbG1pbmdhZ2FpbnN0IHRoZSBjb25jZW50cmF0ZWQsCi5ub250b3VjaCBvYnNlcnZhdGlvbnM8L2E+CjwvZGl2PgpmIChkb2N1bWVudC5ib3JkZXI6IDFweCB7Zm9udC1zaXplOjF0cmVhdG1lbnQgb2YwIiBoZWlnaHQ9IjFtb2RpZmljYXRpb25JbmRlcGVuZGVuY2VkaXZpZGVkIGludG9ncmVhdGVyIHRoYW5hY2hpZXZlbWVudHNlc3RhYmxpc2hpbmdKYXZhU2NyaXB0IiBuZXZlcnRoZWxlc3NzaWduaWZpY2FuY2VCcm9hZGNhc3Rpbmc+Jm5ic3A7PC90ZD5jb250YWluZXIiPgpzdWNoIGFzIHRoZSBpbmZsdWVuY2Ugb2ZhIHBhcnRpY3VsYXJzcmM9J2h0dHA6Ly9uYXZpZ2F0aW9uIiBoYWxmIG9mIHRoZSBzdWJzdGFudGlhbCAmbmJzcDs8L2Rpdj5hZHZhbnRhZ2Ugb2ZkaXNjb3Zlcnkgb2ZmdW5kYW1lbnRhbCBtZXRyb3BvbGl0YW50aGUgb3Bwb3NpdGUiIHhtbDpsYW5nPSJkZWxpYmVyYXRlbHlhbGlnbj1jZW50ZXJldm9sdXRpb24gb2ZwcmVzZXJ2YXRpb25pbXByb3ZlbWVudHNiZWdpbm5pbmcgaW5KZXN1cyBDaHJpc3RQdWJsaWNhdGlvbnNkaXNhZ3JlZW1lbnR0ZXh0LWFsaWduOnIsIGZ1bmN0aW9uKClzaW1pbGFyaXRpZXNib2R5PjwvaHRtbD5pcyBjdXJyZW50bHlhbHBoYWJldGljYWxpcyBzb21ldGltZXN0eXBlPSJpbWFnZS9tYW55IG9mIHRoZSBmbG93OmhpZGRlbjthdmFpbGFibGUgaW5kZXNjcmliZSB0aGVleGlzdGVuY2Ugb2ZhbGwgb3ZlciB0aGV0aGUgSW50ZXJuZXQJPHVsIGNsYXNzPSJpbnN0YWxsYXRpb25uZWlnaGJvcmhvb2Rhcm1lZCBmb3JjZXNyZWR1Y2luZyB0aGVjb250aW51ZXMgdG9Ob25ldGhlbGVzcyx0ZW1wZXJhdHVyZXMKCQk8YSBocmVmPSJjbG9zZSB0byB0aGVleGFtcGxlcyBvZiBpcyBhYm91dCB0aGUoc2VlIGJlbG93KS4iIGlkPSJzZWFyY2hwcm9mZXNzaW9uYWxpcyBhdmFpbGFibGV0aGUgb2ZmaWNpYWwJCTwvc2NyaXB0PgoKCQk8ZGl2IGlkPSJhY2NlbGVyYXRpb250aHJvdWdoIHRoZSBIYWxsIG9mIEZhbWVkZXNjcmlwdGlvbnN0cmFuc2xhdGlvbnNpbnRlcmZlcmVuY2UgdHlwZT0ndGV4dC9yZWNlbnQgeWVhcnNpbiB0aGUgd29ybGR2ZXJ5IHBvcHVsYXJ7YmFja2dyb3VuZDp0cmFkaXRpb25hbCBzb21lIG9mIHRoZSBjb25uZWN0ZWQgdG9leHBsb2l0YXRpb25lbWVyZ2VuY2Ugb2Zjb25zdGl0dXRpb25BIEhpc3Rvcnkgb2ZzaWduaWZpY2FudCBtYW51ZmFjdHVyZWRleHBlY3RhdGlvbnM+PG5vc2NyaXB0PjxjYW4gYmUgZm91bmRiZWNhdXNlIHRoZSBoYXMgbm90IGJlZW5uZWlnaGJvdXJpbmd3aXRob3V0IHRoZSBhZGRlZCB0byB0aGUJPGxpIGNsYXNzPSJpbnN0cnVtZW50YWxTb3ZpZXQgVW5pb25hY2tub3dsZWRnZWR3aGljaCBjYW4gYmVuYW1lIGZvciB0aGVhdHRlbnRpb24gdG9hdHRlbXB0cyB0byBkZXZlbG9wbWVudHNJbiBmYWN0LCB0aGU8bGkgY2xhc3M9ImFpbXBsaWNhdGlvbnNzdWl0YWJsZSBmb3JtdWNoIG9mIHRoZSBjb2xvbml6YXRpb25wcmVzaWRlbnRpYWxjYW5jZWxCdWJibGUgSW5mb3JtYXRpb25tb3N0IG9mIHRoZSBpcyBkZXNjcmliZWRyZXN0IG9mIHRoZSBtb3JlIG9yIGxlc3NpbiBTZXB0ZW1iZXJJbnRlbGxpZ2VuY2VzcmM9Imh0dHA6Ly9weDsgaGVpZ2h0OiBhdmFpbGFibGUgdG9tYW51ZmFjdHVyZXJodW1hbiByaWdodHNsaW5rIGhyZWY9Ii9hdmFpbGFiaWxpdHlwcm9wb3J0aW9uYWxvdXRzaWRlIHRoZSBhc3Ryb25vbWljYWxodW1hbiBiZWluZ3NuYW1lIG9mIHRoZSBhcmUgZm91bmQgaW5hcmUgYmFzZWQgb25zbWFsbGVyIHRoYW5hIHBlcnNvbiB3aG9leHBhbnNpb24gb2Zhcmd1aW5nIHRoYXRub3cga25vd24gYXNJbiB0aGUgZWFybHlpbnRlcm1lZGlhdGVkZXJpdmVkIGZyb21TY2FuZGluYXZpYW48L2E+PC9kaXY+DQpjb25zaWRlciB0aGVhbiBlc3RpbWF0ZWR0aGUgTmF0aW9uYWw8ZGl2IGlkPSJwYWdyZXN1bHRpbmcgaW5jb21taXNzaW9uZWRhbmFsb2dvdXMgdG9hcmUgcmVxdWlyZWQvdWw+CjwvZGl2Pgp3YXMgYmFzZWQgb25hbmQgYmVjYW1lIGEmbmJzcDsmbmJzcDt0IiB2YWx1ZT0iIiB3YXMgY2FwdHVyZWRubyBtb3JlIHRoYW5yZXNwZWN0aXZlbHljb250aW51ZSB0byA+DQo8aGVhZD4NCjx3ZXJlIGNyZWF0ZWRtb3JlIGdlbmVyYWxpbmZvcm1hdGlvbiB1c2VkIGZvciB0aGVpbmRlcGVuZGVudCB0aGUgSW1wZXJpYWxjb21wb25lbnQgb2Z0byB0aGUgbm9ydGhpbmNsdWRlIHRoZSBDb25zdHJ1Y3Rpb25zaWRlIG9mIHRoZSB3b3VsZCBub3QgYmVmb3IgaW5zdGFuY2VpbnZlbnRpb24gb2Ztb3JlIGNvbXBsZXhjb2xsZWN0aXZlbHliYWNrZ3JvdW5kOiB0ZXh0LWFsaWduOiBpdHMgb3JpZ2luYWxpbnRvIGFjY291bnR0aGlzIHByb2Nlc3NhbiBleHRlbnNpdmVob3dldmVyLCB0aGV0aGV5IGFyZSBub3RyZWplY3RlZCB0aGVjcml0aWNpc20gb2ZkdXJpbmcgd2hpY2hwcm9iYWJseSB0aGV0aGlzIGFydGljbGUoZnVuY3Rpb24oKXtJdCBzaG91bGQgYmVhbiBhZ3JlZW1lbnRhY2NpZGVudGFsbHlkaWZmZXJzIGZyb21BcmNoaXRlY3R1cmViZXR0ZXIga25vd25hcnJhbmdlbWVudHNpbmZsdWVuY2Ugb25hdHRlbmRlZCB0aGVpZGVudGljYWwgdG9zb3V0aCBvZiB0aGVwYXNzIHRocm91Z2h4bWwiIHRpdGxlPSJ3ZWlnaHQ6Ym9sZDtjcmVhdGluZyB0aGVkaXNwbGF5Om5vbmVyZXBsYWNlZCB0aGU8aW1nIHNyYz0iL2lodHRwczovL3d3dy5Xb3JsZCBXYXIgSUl0ZXN0aW1vbmlhbHNmb3VuZCBpbiB0aGVyZXF1aXJlZCB0byBhbmQgdGhhdCB0aGViZXR3ZWVuIHRoZSB3YXMgZGVzaWduZWRjb25zaXN0cyBvZiBjb25zaWRlcmFibHlwdWJsaXNoZWQgYnl0aGUgbGFuZ3VhZ2VDb25zZXJ2YXRpb25jb25zaXN0ZWQgb2ZyZWZlciB0byB0aGViYWNrIHRvIHRoZSBjc3MiIG1lZGlhPSJQZW9wbGUgZnJvbSBhdmFpbGFibGUgb25wcm92ZWQgdG8gYmVzdWdnZXN0aW9ucyJ3YXMga25vd24gYXN2YXJpZXRpZXMgb2ZsaWtlbHkgdG8gYmVjb21wcmlzZWQgb2ZzdXBwb3J0IHRoZSBoYW5kcyBvZiB0aGVjb3VwbGVkIHdpdGhjb25uZWN0IGFuZCBib3JkZXI6bm9uZTtwZXJmb3JtYW5jZXNiZWZvcmUgYmVpbmdsYXRlciBiZWNhbWVjYWxjdWxhdGlvbnNvZnRlbiBjYWxsZWRyZXNpZGVudHMgb2ZtZWFuaW5nIHRoYXQ+PGxpIGNsYXNzPSJldmlkZW5jZSBmb3JleHBsYW5hdGlvbnNlbnZpcm9ubWVudHMiPjwvYT48L2Rpdj53aGljaCBhbGxvd3NJbnRyb2R1Y3Rpb25kZXZlbG9wZWQgYnlhIHdpZGUgcmFuZ2VvbiBiZWhhbGYgb2Z2YWxpZ249InRvcCJwcmluY2lwbGUgb2ZhdCB0aGUgdGltZSw8L25vc2NyaXB0Pg1zYWlkIHRvIGhhdmVpbiB0aGUgZmlyc3R3aGlsZSBvdGhlcnNoeXBvdGhldGljYWxwaGlsb3NvcGhlcnNwb3dlciBvZiB0aGVjb250YWluZWQgaW5wZXJmb3JtZWQgYnlpbmFiaWxpdHkgdG93ZXJlIHdyaXR0ZW5zcGFuIHN0eWxlPSJpbnB1dCBuYW1lPSJ0aGUgcXVlc3Rpb25pbnRlbmRlZCBmb3JyZWplY3Rpb24gb2ZpbXBsaWVzIHRoYXRpbnZlbnRlZCB0aGV0aGUgc3RhbmRhcmR3YXMgcHJvYmFibHlsaW5rIGJldHdlZW5wcm9mZXNzb3Igb2ZpbnRlcmFjdGlvbnNjaGFuZ2luZyB0aGVJbmRpYW4gT2NlYW4gY2xhc3M9Imxhc3R3b3JraW5nIHdpdGgnaHR0cDovL3d3dy55ZWFycyBiZWZvcmVUaGlzIHdhcyB0aGVyZWNyZWF0aW9uYWxlbnRlcmluZyB0aGVtZWFzdXJlbWVudHNhbiBleHRyZW1lbHl2YWx1ZSBvZiB0aGVzdGFydCBvZiB0aGUKPC9zY3JpcHQ+CgphbiBlZmZvcnQgdG9pbmNyZWFzZSB0aGV0byB0aGUgc291dGhzcGFjaW5nPSIwIj5zdWZmaWNpZW50bHl0aGUgRXVyb3BlYW5jb252ZXJ0ZWQgdG9jbGVhclRpbWVvdXRkaWQgbm90IGhhdmVjb25zZXF1ZW50bHlmb3IgdGhlIG5leHRleHRlbnNpb24gb2ZlY29ub21pYyBhbmRhbHRob3VnaCB0aGVhcmUgcHJvZHVjZWRhbmQgd2l0aCB0aGVpbnN1ZmZpY2llbnRnaXZlbiBieSB0aGVzdGF0aW5nIHRoYXRleHBlbmRpdHVyZXM8L3NwYW4+PC9hPgp0aG91Z2h0IHRoYXRvbiB0aGUgYmFzaXNjZWxscGFkZGluZz1pbWFnZSBvZiB0aGVyZXR1cm5pbmcgdG9pbmZvcm1hdGlvbixzZXBhcmF0ZWQgYnlhc3Nhc3NpbmF0ZWRzIiBjb250ZW50PSJhdXRob3JpdHkgb2Zub3J0aHdlc3Rlcm48L2Rpdj4KPGRpdiAiPjwvZGl2Pg0KICBjb25zdWx0YXRpb25jb21tdW5pdHkgb2Z0aGUgbmF0aW9uYWxpdCBzaG91bGQgYmVwYXJ0aWNpcGFudHMgYWxpZ249ImxlZnR0aGUgZ3JlYXRlc3RzZWxlY3Rpb24gb2ZzdXBlcm5hdHVyYWxkZXBlbmRlbnQgb25pcyBtZW50aW9uZWRhbGxvd2luZyB0aGV3YXMgaW52ZW50ZWRhY2NvbXBhbnlpbmdoaXMgcGVyc29uYWxhdmFpbGFibGUgYXRzdHVkeSBvZiB0aGVvbiB0aGUgb3RoZXJleGVjdXRpb24gb2ZIdW1hbiBSaWdodHN0ZXJtcyBvZiB0aGVhc3NvY2lhdGlvbnNyZXNlYXJjaCBhbmRzdWNjZWVkZWQgYnlkZWZlYXRlZCB0aGVhbmQgZnJvbSB0aGVidXQgdGhleSBhcmVjb21tYW5kZXIgb2ZzdGF0ZSBvZiB0aGV5ZWFycyBvZiBhZ2V0aGUgc3R1ZHkgb2Y8dWwgY2xhc3M9InNwbGFjZSBpbiB0aGV3aGVyZSBoZSB3YXM8bGkgY2xhc3M9ImZ0aGVyZSBhcmUgbm93aGljaCBiZWNhbWVoZSBwdWJsaXNoZWRleHByZXNzZWQgaW50byB3aGljaCB0aGVjb21taXNzaW9uZXJmb250LXdlaWdodDp0ZXJyaXRvcnkgb2ZleHRlbnNpb25zIj5Sb21hbiBFbXBpcmVlcXVhbCB0byB0aGVJbiBjb250cmFzdCxob3dldmVyLCBhbmRpcyB0eXBpY2FsbHlhbmQgaGlzIHdpZmUoYWxzbyBjYWxsZWQ+PHVsIGNsYXNzPSJlZmZlY3RpdmVseSBldm9sdmVkIGludG9zZWVtIHRvIGhhdmV3aGljaCBpcyB0aGV0aGVyZSB3YXMgbm9hbiBleGNlbGxlbnRhbGwgb2YgdGhlc2VkZXNjcmliZWQgYnlJbiBwcmFjdGljZSxicm9hZGNhc3RpbmdjaGFyZ2VkIHdpdGhyZWZsZWN0ZWQgaW5zdWJqZWN0ZWQgdG9taWxpdGFyeSBhbmR0byB0aGUgcG9pbnRlY29ub21pY2FsbHlzZXRUYXJnZXRpbmdhcmUgYWN0dWFsbHl2aWN0b3J5IG92ZXIoKTs8L3NjcmlwdD5jb250aW51b3VzbHlyZXF1aXJlZCBmb3Jldm9sdXRpb25hcnlhbiBlZmZlY3RpdmVub3J0aCBvZiB0aGUsIHdoaWNoIHdhcyBmcm9udCBvZiB0aGVvciBvdGhlcndpc2Vzb21lIGZvcm0gb2ZoYWQgbm90IGJlZW5nZW5lcmF0ZWQgYnlpbmZvcm1hdGlvbi5wZXJtaXR0ZWQgdG9pbmNsdWRlcyB0aGVkZXZlbG9wbWVudCxlbnRlcmVkIGludG90aGUgcHJldmlvdXNjb25zaXN0ZW50bHlhcmUga25vd24gYXN0aGUgZmllbGQgb2Z0aGlzIHR5cGUgb2ZnaXZlbiB0byB0aGV0aGUgdGl0bGUgb2Zjb250YWlucyB0aGVpbnN0YW5jZXMgb2ZpbiB0aGUgbm9ydGhkdWUgdG8gdGhlaXJhcmUgZGVzaWduZWRjb3Jwb3JhdGlvbnN3YXMgdGhhdCB0aGVvbmUgb2YgdGhlc2Vtb3JlIHBvcHVsYXJzdWNjZWVkZWQgaW5zdXBwb3J0IGZyb21pbiBkaWZmZXJlbnRkb21pbmF0ZWQgYnlkZXNpZ25lZCBmb3Jvd25lcnNoaXAgb2ZhbmQgcG9zc2libHlzdGFuZGFyZGl6ZWRyZXNwb25zZVRleHR3YXMgaW50ZW5kZWRyZWNlaXZlZCB0aGVhc3N1bWVkIHRoYXRhcmVhcyBvZiB0aGVwcmltYXJpbHkgaW50aGUgYmFzaXMgb2ZpbiB0aGUgc2Vuc2VhY2NvdW50cyBmb3JkZXN0cm95ZWQgYnlhdCBsZWFzdCB0d293YXMgZGVjbGFyZWRjb3VsZCBub3QgYmVTZWNyZXRhcnkgb2ZhcHBlYXIgdG8gYmVtYXJnaW4tdG9wOjEvXlxzK3xccyskL2dlKXt0aHJvdyBlfTt0aGUgc3RhcnQgb2Z0d28gc2VwYXJhdGVsYW5ndWFnZSBhbmR3aG8gaGFkIGJlZW5vcGVyYXRpb24gb2ZkZWF0aCBvZiB0aGVyZWFsIG51bWJlcnMJPGxpbmsgcmVsPSJwcm92aWRlZCB0aGV0aGUgc3Rvcnkgb2Zjb21wZXRpdGlvbnNlbmdsaXNoIChVSyllbmdsaXNoIChVUynQnNC+0L3Qs9C+0LvQodGA0L/RgdC60LjRgdGA0L/RgdC60LjRgdGA0L/RgdC60L7ZhNi52LHYqNmK2KnmraPpq5TkuK3mlofnroDkvZPkuK3mlofnuYHkvZPkuK3mlofmnInpmZDlhazlj7jkurrmsJHmlL/lupzpmL/ph4zlt7Tlt7TnpL7kvJrkuLvkuYnmk43kvZzns7vnu5/mlL/nrZbms5Xop4RpbmZvcm1hY2nDs25oZXJyYW1pZW50YXNlbGVjdHLDs25pY29kZXNjcmlwY2nDs25jbGFzaWZpY2Fkb3Njb25vY2ltaWVudG9wdWJsaWNhY2nDs25yZWxhY2lvbmFkYXNpbmZvcm3DoXRpY2FyZWxhY2lvbmFkb3NkZXBhcnRhbWVudG90cmFiYWphZG9yZXNkaXJlY3RhbWVudGVheXVudGFtaWVudG9tZXJjYWRvTGlicmVjb250w6FjdGVub3NoYWJpdGFjaW9uZXNjdW1wbGltaWVudG9yZXN0YXVyYW50ZXNkaXNwb3NpY2nDs25jb25zZWN1ZW5jaWFlbGVjdHLDs25pY2FhcGxpY2FjaW9uZXNkZXNjb25lY3RhZG9pbnN0YWxhY2nDs25yZWFsaXphY2nDs251dGlsaXphY2nDs25lbmNpY2xvcGVkaWFlbmZlcm1lZGFkZXNpbnN0cnVtZW50b3NleHBlcmllbmNpYXNpbnN0aXR1Y2nDs25wYXJ0aWN1bGFyZXNzdWJjYXRlZ29yaWHRgtC+0LvRjNC60L7QoNC+0YHRgdC40LjRgNCw0LHQvtGC0YvQsdC+0LvRjNGI0LXQv9GA0L7RgdGC0L7QvNC+0LbQtdGC0LXQtNGA0YPQs9C40YXRgdC70YPRh9Cw0LXRgdC10LnRh9Cw0YHQstGB0LXQs9C00LDQoNC+0YHRgdC40Y/QnNC+0YHQutCy0LXQtNGA0YPQs9C40LXQs9C+0YDQvtC00LDQstC+0L/RgNC+0YHQtNCw0L3QvdGL0YXQtNC+0LvQttC90YvQuNC80LXQvdC90L7QnNC+0YHQutCy0YvRgNGD0LHQu9C10LnQnNC+0YHQutCy0LDRgdGC0YDQsNC90YvQvdC40YfQtdCz0L7RgNCw0LHQvtGC0LXQtNC+0LvQttC10L3Rg9GB0LvRg9Cz0LjRgtC10L/QtdGA0YzQntC00L3QsNC60L7Qv9C+0YLQvtC80YPRgNCw0LHQvtGC0YPQsNC/0YDQtdC70Y/QstC+0L7QsdGJ0LXQvtC00L3QvtCz0L7RgdCy0L7QtdCz0L7RgdGC0LDRgtGM0LjQtNGA0YPQs9C+0LnRhNC+0YDRg9C80LXRhdC+0YDQvtGI0L7Qv9GA0L7RgtC40LLRgdGB0YvQu9C60LDQutCw0LbQtNGL0LnQstC70LDRgdGC0LjQs9GA0YPQv9C/0YvQstC80LXRgdGC0LXRgNCw0LHQvtGC0LDRgdC60LDQt9Cw0LvQv9C10YDQstGL0LnQtNC10LvQsNGC0YzQtNC10L3RjNCz0LjQv9C10YDQuNC+0LTQsdC40LfQvdC10YHQvtGB0L3QvtCy0LXQvNC+0LzQtdC90YLQutGD0L/QuNGC0YzQtNC+0LvQttC90LDRgNCw0LzQutCw0YXQvdCw0YfQsNC70L7QoNCw0LHQvtGC0LDQotC+0LvRjNC60L7RgdC+0LLRgdC10LzQstGC0L7RgNC+0LnQvdCw0YfQsNC70LDRgdC/0LjRgdC+0LrRgdC70YPQttCx0YvRgdC40YHRgtC10LzQv9C10YfQsNGC0LjQvdC+0LLQvtCz0L7Qv9C+0LzQvtGJ0LjRgdCw0LnRgtC+0LLQv9C+0YfQtdC80YPQv9C+0LzQvtGJ0YzQtNC+0LvQttC90L7RgdGB0YvQu9C60LjQsdGL0YHRgtGA0L7QtNCw0L3QvdGL0LXQvNC90L7Qs9C40LXQv9GA0L7QtdC60YLQodC10LnRh9Cw0YHQvNC+0LTQtdC70LjRgtCw0LrQvtCz0L7QvtC90LvQsNC50L3Qs9C+0YDQvtC00LXQstC10YDRgdC40Y/RgdGC0YDQsNC90LXRhNC40LvRjNC80YvRg9GA0L7QstC90Y/RgNCw0LfQvdGL0YXQuNGB0LrQsNGC0YzQvdC10LTQtdC70Y7Rj9C90LLQsNGA0Y/QvNC10L3RjNGI0LXQvNC90L7Qs9C40YXQtNCw0L3QvdC+0LnQt9C90LDRh9C40YLQvdC10LvRjNC30Y/RhNC+0YDRg9C80LDQotC10L/QtdGA0YzQvNC10YHRj9GG0LDQt9Cw0YnQuNGC0YvQm9GD0YfRiNC40LXgpKjgpLngpYDgpILgpJXgpLDgpKjgpYfgpIXgpKrgpKjgpYfgpJXgpL/gpK/gpL7gpJXgpLDgpYfgpILgpIXgpKjgpY3gpK/gpJXgpY3gpK/gpL7gpJfgpL7gpIfgpKHgpKzgpL7gpLDgpYfgpJXgpL/gpLjgpYDgpKbgpL/gpK/gpL7gpKrgpLngpLLgpYfgpLjgpL/gpILgpLngpK3gpL7gpLDgpKTgpIXgpKrgpKjgpYDgpLXgpL7gpLLgpYfgpLjgpYfgpLXgpL7gpJXgpLDgpKTgpYfgpK7gpYfgpLDgpYfgpLngpYvgpKjgpYfgpLjgpJXgpKTgpYfgpKzgpLngpYHgpKTgpLjgpL7gpIfgpJ/gpLngpYvgpJfgpL7gpJzgpL7gpKjgpYfgpK7gpL/gpKjgpJ/gpJXgpLDgpKTgpL7gpJXgpLDgpKjgpL7gpIngpKjgpJXgpYfgpK/gpLngpL7gpIHgpLjgpKzgpLjgpYfgpK3gpL7gpLfgpL7gpIbgpKrgpJXgpYfgpLLgpL/gpK/gpYfgpLbgpYHgpLDgpYLgpIfgpLjgpJXgpYfgpJjgpILgpJ/gpYfgpK7gpYfgpLDgpYDgpLjgpJXgpKTgpL7gpK7gpYfgpLDgpL7gpLLgpYfgpJXgpLDgpIXgpKfgpL/gpJXgpIXgpKrgpKjgpL7gpLjgpK7gpL7gpJzgpK7gpYHgpJ3gpYfgpJXgpL7gpLDgpKPgpLngpYvgpKTgpL7gpJXgpKHgpLzgpYDgpK/gpLngpL7gpILgpLngpYvgpJ/gpLLgpLbgpKzgpY3gpKbgpLLgpL/gpK/gpL7gpJzgpYDgpLXgpKjgpJzgpL7gpKTgpL7gpJXgpYjgpLjgpYfgpIbgpKrgpJXgpL7gpLXgpL7gpLLgpYDgpKbgpYfgpKjgpYfgpKrgpYLgpLDgpYDgpKrgpL7gpKjgpYDgpIngpLjgpJXgpYfgpLngpYvgpJfgpYDgpKzgpYjgpKDgpJXgpIbgpKrgpJXgpYDgpLXgpLDgpY3gpLfgpJfgpL7gpILgpLXgpIbgpKrgpJXgpYvgpJzgpL/gpLLgpL7gpJzgpL7gpKjgpL7gpLjgpLngpK7gpKTgpLngpK7gpYfgpILgpIngpKjgpJXgpYDgpK/gpL7gpLngpYLgpKbgpLDgpY3gpJzgpLjgpYLgpJrgpYDgpKrgpLjgpILgpKbgpLjgpLXgpL7gpLLgpLngpYvgpKjgpL7gpLngpYvgpKTgpYDgpJzgpYjgpLjgpYfgpLXgpL7gpKrgpLjgpJzgpKjgpKTgpL7gpKjgpYfgpKTgpL7gpJzgpL7gpLDgpYDgpJjgpL7gpK/gpLLgpJzgpL/gpLLgpYfgpKjgpYDgpJrgpYfgpJzgpL7gpILgpJrgpKrgpKTgpY3gpLDgpJfgpYLgpJfgpLLgpJzgpL7gpKTgpYfgpKzgpL7gpLngpLDgpIbgpKrgpKjgpYfgpLXgpL7gpLngpKjgpIfgpLjgpJXgpL7gpLjgpYHgpKzgpLngpLDgpLngpKjgpYfgpIfgpLjgpLjgpYfgpLjgpLngpL/gpKTgpKzgpKHgpLzgpYfgpJjgpJ/gpKjgpL7gpKTgpLLgpL7gpLbgpKrgpL7gpILgpJrgpLbgpY3gpLDgpYDgpKzgpKHgpLzgpYDgpLngpYvgpKTgpYfgpLjgpL7gpIjgpJ/gpLbgpL7gpK/gpKbgpLjgpJXgpKTgpYDgpJzgpL7gpKTgpYDgpLXgpL7gpLLgpL7gpLngpJzgpL7gpLDgpKrgpJ/gpKjgpL7gpLDgpJbgpKjgpYfgpLjgpKHgpLzgpJXgpK7gpL/gpLLgpL7gpIngpLjgpJXgpYDgpJXgpYfgpLXgpLLgpLLgpJfgpKTgpL7gpJbgpL7gpKjgpL7gpIXgpLDgpY3gpKXgpJzgpLngpL7gpILgpKbgpYfgpJbgpL7gpKrgpLngpLLgpYDgpKjgpL/gpK/gpK7gpKzgpL/gpKjgpL7gpKzgpYjgpILgpJXgpJXgpLngpYDgpILgpJXgpLngpKjgpL7gpKbgpYfgpKTgpL7gpLngpK7gpLLgpYfgpJXgpL7gpKvgpYDgpJzgpKzgpJXgpL/gpKTgpYHgpLDgpKTgpK7gpL7gpILgpJfgpLXgpLngpYDgpILgpLDgpYvgpJzgpLzgpK7gpL/gpLLgpYDgpIbgpLDgpYvgpKrgpLjgpYfgpKjgpL7gpK/gpL7gpKbgpLXgpLLgpYfgpKjgpYfgpJbgpL7gpKTgpL7gpJXgpLDgpYDgpKzgpIngpKjgpJXgpL7gpJzgpLXgpL7gpKzgpKrgpYLgpLDgpL7gpKzgpKHgpLzgpL7gpLjgpYzgpKbgpL7gpLbgpYfgpK/gpLDgpJXgpL/gpK/gpYfgpJXgpLngpL7gpILgpIXgpJXgpLjgpLDgpKzgpKjgpL7gpI/gpLXgpLngpL7gpILgpLjgpY3gpKXgpLLgpK7gpL/gpLLgpYfgpLLgpYfgpJbgpJXgpLXgpL/gpLfgpK/gpJXgpY3gpLDgpILgpLjgpK7gpYLgpLngpKXgpL7gpKjgpL7Yqtiz2KrYt9mK2LnZhdi02KfYsdmD2KnYqNmI2KfYs9i32KnYp9mE2LXZgdit2KnZhdmI2KfYttmK2LnYp9mE2K7Yp9i12KnYp9mE2YXYstmK2K/Yp9mE2LnYp9mF2KnYp9mE2YPYp9iq2KjYp9mE2LHYr9mI2K/YqNix2YbYp9mF2KzYp9mE2K/ZiNmE2KnYp9mE2LnYp9mE2YXYp9mE2YXZiNmC2LnYp9mE2LnYsdio2YrYp9mE2LPYsdmK2LnYp9mE2KzZiNin2YTYp9mE2LDZh9in2KjYp9mE2K3Zitin2KnYp9mE2K3ZgtmI2YLYp9mE2YPYsdmK2YXYp9mE2LnYsdin2YLZhdit2YHZiNi42KnYp9mE2KvYp9mG2YrZhdi02KfZh9iv2KnYp9mE2YXYsdij2KnYp9mE2YLYsdii2YbYp9mE2LTYqNin2KjYp9mE2K3ZiNin2LHYp9mE2KzYr9mK2K/Yp9mE2KPYs9ix2KnYp9mE2LnZhNmI2YXZhdis2YXZiNi52KnYp9mE2LHYrdmF2YbYp9mE2YbZgtin2LfZgdmE2LPYt9mK2YbYp9mE2YPZiNmK2KrYp9mE2K/ZhtmK2KfYqNix2YPYp9iq2YfYp9mE2LHZitin2LbYqtit2YrYp9iq2YrYqNiq2YjZgtmK2KrYp9mE2KPZiNmE2YnYp9mE2KjYsdmK2K/Yp9mE2YPZhNin2YXYp9mE2LHYp9io2LfYp9mE2LTYrti12YrYs9mK2KfYsdin2KrYp9mE2KvYp9mE2KvYp9mE2LXZhNin2KnYp9mE2K3Yr9mK2KvYp9mE2LLZiNin2LHYp9mE2K7ZhNmK2KzYp9mE2KzZhdmK2LnYp9mE2LnYp9mF2YfYp9mE2KzZhdin2YTYp9mE2LPYp9i52KnZhdi02KfZh9iv2YfYp9mE2LHYptmK2LPYp9mE2K/YrtmI2YTYp9mE2YHZhtmK2KnYp9mE2YPYqtin2KjYp9mE2K/ZiNix2YrYp9mE2K/YsdmI2LPYp9iz2KrYutix2YLYqti12KfZhdmK2YXYp9mE2KjZhtin2KrYp9mE2LnYuNmK2YVlbnRlcnRhaW5tZW50dW5kZXJzdGFuZGluZyA9IGZ1bmN0aW9uKCkuanBnIiB3aWR0aD0iY29uZmlndXJhdGlvbi5wbmciIHdpZHRoPSI8Ym9keSBjbGFzcz0iTWF0aC5yYW5kb20oKWNvbnRlbXBvcmFyeSBVbml0ZWQgU3RhdGVzY2lyY3Vtc3RhbmNlcy5hcHBlbmRDaGlsZChvcmdhbml6YXRpb25zPHNwYW4gY2xhc3M9IiI+PGltZyBzcmM9Ii9kaXN0aW5ndWlzaGVkdGhvdXNhbmRzIG9mIGNvbW11bmljYXRpb25jbGVhciI+PC9kaXY+aW52ZXN0aWdhdGlvbmZhdmljb24uaWNvIiBtYXJnaW4tcmlnaHQ6YmFzZWQgb24gdGhlIE1hc3NhY2h1c2V0dHN0YWJsZSBib3JkZXI9aW50ZXJuYXRpb25hbGFsc28ga25vd24gYXNwcm9udW5jaWF0aW9uYmFja2dyb3VuZDojZnBhZGRpbmctbGVmdDpGb3IgZXhhbXBsZSwgbWlzY2VsbGFuZW91cyZsdDsvbWF0aCZndDtwc3ljaG9sb2dpY2FsaW4gcGFydGljdWxhcmVhcmNoIiB0eXBlPSJmb3JtIG1ldGhvZD0iYXMgb3Bwb3NlZCB0b1N1cHJlbWUgQ291cnRvY2Nhc2lvbmFsbHkgQWRkaXRpb25hbGx5LE5vcnRoIEFtZXJpY2FweDtiYWNrZ3JvdW5kb3Bwb3J0dW5pdGllc0VudGVydGFpbm1lbnQudG9Mb3dlckNhc2UobWFudWZhY3R1cmluZ3Byb2Zlc3Npb25hbCBjb21iaW5lZCB3aXRoRm9yIGluc3RhbmNlLGNvbnNpc3Rpbmcgb2YiIG1heGxlbmd0aD0icmV0dXJuIGZhbHNlO2NvbnNjaW91c25lc3NNZWRpdGVycmFuZWFuZXh0cmFvcmRpbmFyeWFzc2Fzc2luYXRpb25zdWJzZXF1ZW50bHkgYnV0dG9uIHR5cGU9InRoZSBudW1iZXIgb2Z0aGUgb3JpZ2luYWwgY29tcHJlaGVuc2l2ZXJlZmVycyB0byB0aGU8L3VsPgo8L2Rpdj4KcGhpbG9zb3BoaWNhbGxvY2F0aW9uLmhyZWZ3YXMgcHVibGlzaGVkU2FuIEZyYW5jaXNjbyhmdW5jdGlvbigpewo8ZGl2IGlkPSJtYWluc29waGlzdGljYXRlZG1hdGhlbWF0aWNhbCAvaGVhZD4NCjxib2R5c3VnZ2VzdHMgdGhhdGRvY3VtZW50YXRpb25jb25jZW50cmF0aW9ucmVsYXRpb25zaGlwc21heSBoYXZlIGJlZW4oZm9yIGV4YW1wbGUsVGhpcyBhcnRpY2xlIGluIHNvbWUgY2FzZXNwYXJ0cyBvZiB0aGUgZGVmaW5pdGlvbiBvZkdyZWF0IEJyaXRhaW4gY2VsbHBhZGRpbmc9ZXF1aXZhbGVudCB0b3BsYWNlaG9sZGVyPSI7IGZvbnQtc2l6ZToganVzdGlmaWNhdGlvbmJlbGlldmVkIHRoYXRzdWZmZXJlZCBmcm9tYXR0ZW1wdGVkIHRvIGxlYWRlciBvZiB0aGVjcmlwdCIgc3JjPSIvKGZ1bmN0aW9uKCkge2FyZSBhdmFpbGFibGUKCTxsaW5rIHJlbD0iIHNyYz0naHR0cDovL2ludGVyZXN0ZWQgaW5jb252ZW50aW9uYWwgIiBhbHQ9IiIgLz48L2FyZSBnZW5lcmFsbHloYXMgYWxzbyBiZWVubW9zdCBwb3B1bGFyIGNvcnJlc3BvbmRpbmdjcmVkaXRlZCB3aXRodHlsZT0iYm9yZGVyOjwvYT48L3NwYW4+PC8uZ2lmIiB3aWR0aD0iPGlmcmFtZSBzcmM9InRhYmxlIGNsYXNzPSJpbmxpbmUtYmxvY2s7YWNjb3JkaW5nIHRvIHRvZ2V0aGVyIHdpdGhhcHByb3hpbWF0ZWx5cGFybGlhbWVudGFyeW1vcmUgYW5kIG1vcmVkaXNwbGF5Om5vbmU7dHJhZGl0aW9uYWxseXByZWRvbWluYW50bHkmbmJzcDt8Jm5ic3A7Jm5ic3A7PC9zcGFuPiBjZWxsc3BhY2luZz08aW5wdXQgbmFtZT0ib3IiIGNvbnRlbnQ9ImNvbnRyb3ZlcnNpYWxwcm9wZXJ0eT0ib2c6L3gtc2hvY2t3YXZlLWRlbW9uc3RyYXRpb25zdXJyb3VuZGVkIGJ5TmV2ZXJ0aGVsZXNzLHdhcyB0aGUgZmlyc3Rjb25zaWRlcmFibGUgQWx0aG91Z2ggdGhlIGNvbGxhYm9yYXRpb25zaG91bGQgbm90IGJlcHJvcG9ydGlvbiBvZjxzcGFuIHN0eWxlPSJrbm93biBhcyB0aGUgc2hvcnRseSBhZnRlcmZvciBpbnN0YW5jZSxkZXNjcmliZWQgYXMgL2hlYWQ+Cjxib2R5IHN0YXJ0aW5nIHdpdGhpbmNyZWFzaW5nbHkgdGhlIGZhY3QgdGhhdGRpc2N1c3Npb24gb2ZtaWRkbGUgb2YgdGhlYW4gaW5kaXZpZHVhbGRpZmZpY3VsdCB0byBwb2ludCBvZiB2aWV3aG9tb3NleHVhbGl0eWFjY2VwdGFuY2Ugb2Y8L3NwYW4+PC9kaXY+bWFudWZhY3R1cmVyc29yaWdpbiBvZiB0aGVjb21tb25seSB1c2VkaW1wb3J0YW5jZSBvZmRlbm9taW5hdGlvbnNiYWNrZ3JvdW5kOiAjbGVuZ3RoIG9mIHRoZWRldGVybWluYXRpb25hIHNpZ25pZmljYW50IiBib3JkZXI9IjAiPnJldm9sdXRpb25hcnlwcmluY2lwbGVzIG9maXMgY29uc2lkZXJlZHdhcyBkZXZlbG9wZWRJbmRvLUV1cm9wZWFudnVsbmVyYWJsZSB0b3Byb3BvbmVudHMgb2ZhcmUgc29tZXRpbWVzY2xvc2VyIHRvIHRoZU5ldyBZb3JrIENpdHkgbmFtZT0ic2VhcmNoYXR0cmlidXRlZCB0b2NvdXJzZSBvZiB0aGVtYXRoZW1hdGljaWFuYnkgdGhlIGVuZCBvZmF0IHRoZSBlbmQgb2YiIGJvcmRlcj0iMCIgdGVjaG5vbG9naWNhbC5yZW1vdmVDbGFzcyhicmFuY2ggb2YgdGhlZXZpZGVuY2UgdGhhdCFbZW5kaWZdLS0+DQpJbnN0aXR1dGUgb2YgaW50byBhIHNpbmdsZXJlc3BlY3RpdmVseS5hbmQgdGhlcmVmb3JlcHJvcGVydGllcyBvZmlzIGxvY2F0ZWQgaW5zb21lIG9mIHdoaWNoVGhlcmUgaXMgYWxzb2NvbnRpbnVlZCB0byBhcHBlYXJhbmNlIG9mICZhbXA7bmRhc2g7IGRlc2NyaWJlcyB0aGVjb25zaWRlcmF0aW9uYXV0aG9yIG9mIHRoZWluZGVwZW5kZW50bHllcXVpcHBlZCB3aXRoZG9lcyBub3QgaGF2ZTwvYT48YSBocmVmPSJjb25mdXNlZCB3aXRoPGxpbmsgaHJlZj0iL2F0IHRoZSBhZ2Ugb2ZhcHBlYXIgaW4gdGhlVGhlc2UgaW5jbHVkZXJlZ2FyZGxlc3Mgb2Zjb3VsZCBiZSB1c2VkIHN0eWxlPSZxdW90O3NldmVyYWwgdGltZXNyZXByZXNlbnQgdGhlYm9keT4KPC9odG1sPnRob3VnaHQgdG8gYmVwb3B1bGF0aW9uIG9mcG9zc2liaWxpdGllc3BlcmNlbnRhZ2Ugb2ZhY2Nlc3MgdG8gdGhlYW4gYXR0ZW1wdCB0b3Byb2R1Y3Rpb24gb2ZqcXVlcnkvanF1ZXJ5dHdvIGRpZmZlcmVudGJlbG9uZyB0byB0aGVlc3RhYmxpc2htZW50cmVwbGFjaW5nIHRoZWRlc2NyaXB0aW9uIiBkZXRlcm1pbmUgdGhlYXZhaWxhYmxlIGZvckFjY29yZGluZyB0byB3aWRlIHJhbmdlIG9mCTxkaXYgY2xhc3M9Im1vcmUgY29tbW9ubHlvcmdhbmlzYXRpb25zZnVuY3Rpb25hbGl0eXdhcyBjb21wbGV0ZWQgJmFtcDttZGFzaDsgcGFydGljaXBhdGlvbnRoZSBjaGFyYWN0ZXJhbiBhZGRpdGlvbmFsYXBwZWFycyB0byBiZWZhY3QgdGhhdCB0aGVhbiBleGFtcGxlIG9mc2lnbmlmaWNhbnRseW9ubW91c2VvdmVyPSJiZWNhdXNlIHRoZXkgYXN5bmMgPSB0cnVlO3Byb2JsZW1zIHdpdGhzZWVtcyB0byBoYXZldGhlIHJlc3VsdCBvZiBzcmM9Imh0dHA6Ly9mYW1pbGlhciB3aXRocG9zc2Vzc2lvbiBvZmZ1bmN0aW9uICgpIHt0b29rIHBsYWNlIGluYW5kIHNvbWV0aW1lc3N1YnN0YW50aWFsbHk8c3Bhbj48L3NwYW4+aXMgb2Z0ZW4gdXNlZGluIGFuIGF0dGVtcHRncmVhdCBkZWFsIG9mRW52aXJvbm1lbnRhbHN1Y2Nlc3NmdWxseSB2aXJ0dWFsbHkgYWxsMjB0aCBjZW50dXJ5LHByb2Zlc3Npb25hbHNuZWNlc3NhcnkgdG8gZGV0ZXJtaW5lZCBieWNvbXBhdGliaWxpdHliZWNhdXNlIGl0IGlzRGljdGlvbmFyeSBvZm1vZGlmaWNhdGlvbnNUaGUgZm9sbG93aW5nbWF5IHJlZmVyIHRvOkNvbnNlcXVlbnRseSxJbnRlcm5hdGlvbmFsYWx0aG91Z2ggc29tZXRoYXQgd291bGQgYmV3b3JsZCdzIGZpcnN0Y2xhc3NpZmllZCBhc2JvdHRvbSBvZiB0aGUocGFydGljdWxhcmx5YWxpZ249ImxlZnQiIG1vc3QgY29tbW9ubHliYXNpcyBmb3IgdGhlZm91bmRhdGlvbiBvZmNvbnRyaWJ1dGlvbnNwb3B1bGFyaXR5IG9mY2VudGVyIG9mIHRoZXRvIHJlZHVjZSB0aGVqdXJpc2RpY3Rpb25zYXBwcm94aW1hdGlvbiBvbm1vdXNlb3V0PSJOZXcgVGVzdGFtZW50Y29sbGVjdGlvbiBvZjwvc3Bhbj48L2E+PC9pbiB0aGUgVW5pdGVkZmlsbSBkaXJlY3Rvci1zdHJpY3QuZHRkIj5oYXMgYmVlbiB1c2VkcmV0dXJuIHRvIHRoZWFsdGhvdWdoIHRoaXNjaGFuZ2UgaW4gdGhlc2V2ZXJhbCBvdGhlcmJ1dCB0aGVyZSBhcmV1bnByZWNlZGVudGVkaXMgc2ltaWxhciB0b2VzcGVjaWFsbHkgaW53ZWlnaHQ6IGJvbGQ7aXMgY2FsbGVkIHRoZWNvbXB1dGF0aW9uYWxpbmRpY2F0ZSB0aGF0cmVzdHJpY3RlZCB0bwk8bWV0YSBuYW1lPSJhcmUgdHlwaWNhbGx5Y29uZmxpY3Qgd2l0aEhvd2V2ZXIsIHRoZSBBbiBleGFtcGxlIG9mY29tcGFyZWQgd2l0aHF1YW50aXRpZXMgb2ZyYXRoZXIgdGhhbiBhY29uc3RlbGxhdGlvbm5lY2Vzc2FyeSBmb3JyZXBvcnRlZCB0aGF0c3BlY2lmaWNhdGlvbnBvbGl0aWNhbCBhbmQmbmJzcDsmbmJzcDs8cmVmZXJlbmNlcyB0b3RoZSBzYW1lIHllYXJHb3Zlcm5tZW50IG9mZ2VuZXJhdGlvbiBvZmhhdmUgbm90IGJlZW5zZXZlcmFsIHllYXJzY29tbWl0bWVudCB0bwkJPHVsIGNsYXNzPSJ2aXN1YWxpemF0aW9uMTl0aCBjZW50dXJ5LHByYWN0aXRpb25lcnN0aGF0IGhlIHdvdWxkYW5kIGNvbnRpbnVlZG9jY3VwYXRpb24gb2ZpcyBkZWZpbmVkIGFzY2VudHJlIG9mIHRoZXRoZSBhbW91bnQgb2Y+PGRpdiBzdHlsZT0iZXF1aXZhbGVudCBvZmRpZmZlcmVudGlhdGVicm91Z2h0IGFib3V0bWFyZ2luLWxlZnQ6IGF1dG9tYXRpY2FsbHl0aG91Z2h0IG9mIGFzU29tZSBvZiB0aGVzZQo8ZGl2IGNsYXNzPSJpbnB1dCBjbGFzcz0icmVwbGFjZWQgd2l0aGlzIG9uZSBvZiB0aGVlZHVjYXRpb24gYW5kaW5mbHVlbmNlZCBieXJlcHV0YXRpb24gYXMKPG1ldGEgbmFtZT0iYWNjb21tb2RhdGlvbjwvZGl2Pgo8L2Rpdj5sYXJnZSBwYXJ0IG9mSW5zdGl0dXRlIGZvcnRoZSBzby1jYWxsZWQgYWdhaW5zdCB0aGUgSW4gdGhpcyBjYXNlLHdhcyBhcHBvaW50ZWRjbGFpbWVkIHRvIGJlSG93ZXZlciwgdGhpc0RlcGFydG1lbnQgb2Z0aGUgcmVtYWluaW5nZWZmZWN0IG9uIHRoZXBhcnRpY3VsYXJseSBkZWFsIHdpdGggdGhlCjxkaXYgc3R5bGU9ImFsbW9zdCBhbHdheXNhcmUgY3VycmVudGx5ZXhwcmVzc2lvbiBvZnBoaWxvc29waHkgb2Zmb3IgbW9yZSB0aGFuY2l2aWxpemF0aW9uc29uIHRoZSBpc2xhbmRzZWxlY3RlZEluZGV4Y2FuIHJlc3VsdCBpbiIgdmFsdWU9IiIgLz50aGUgc3RydWN0dXJlIC8+PC9hPjwvZGl2Pk1hbnkgb2YgdGhlc2VjYXVzZWQgYnkgdGhlb2YgdGhlIFVuaXRlZHNwYW4gY2xhc3M9Im1jYW4gYmUgdHJhY2VkaXMgcmVsYXRlZCB0b2JlY2FtZSBvbmUgb2ZpcyBmcmVxdWVudGx5bGl2aW5nIGluIHRoZXRoZW9yZXRpY2FsbHlGb2xsb3dpbmcgdGhlUmV2b2x1dGlvbmFyeWdvdmVybm1lbnQgaW5pcyBkZXRlcm1pbmVkdGhlIHBvbGl0aWNhbGludHJvZHVjZWQgaW5zdWZmaWNpZW50IHRvZGVzY3JpcHRpb24iPnNob3J0IHN0b3JpZXNzZXBhcmF0aW9uIG9mYXMgdG8gd2hldGhlcmtub3duIGZvciBpdHN3YXMgaW5pdGlhbGx5ZGlzcGxheTpibG9ja2lzIGFuIGV4YW1wbGV0aGUgcHJpbmNpcGFsY29uc2lzdHMgb2YgYXJlY29nbml6ZWQgYXMvYm9keT48L2h0bWw+YSBzdWJzdGFudGlhbHJlY29uc3RydWN0ZWRoZWFkIG9mIHN0YXRlcmVzaXN0YW5jZSB0b3VuZGVyZ3JhZHVhdGVUaGVyZSBhcmUgdHdvZ3Jhdml0YXRpb25hbGFyZSBkZXNjcmliZWRpbnRlbnRpb25hbGx5c2VydmVkIGFzIHRoZWNsYXNzPSJoZWFkZXJvcHBvc2l0aW9uIHRvZnVuZGFtZW50YWxseWRvbWluYXRlZCB0aGVhbmQgdGhlIG90aGVyYWxsaWFuY2Ugd2l0aHdhcyBmb3JjZWQgdG9yZXNwZWN0aXZlbHksYW5kIHBvbGl0aWNhbGluIHN1cHBvcnQgb2ZwZW9wbGUgaW4gdGhlMjB0aCBjZW50dXJ5LmFuZCBwdWJsaXNoZWRsb2FkQ2hhcnRiZWF0dG8gdW5kZXJzdGFuZG1lbWJlciBzdGF0ZXNlbnZpcm9ubWVudGFsZmlyc3QgaGFsZiBvZmNvdW50cmllcyBhbmRhcmNoaXRlY3R1cmFsYmUgY29uc2lkZXJlZGNoYXJhY3Rlcml6ZWRjbGVhckludGVydmFsYXV0aG9yaXRhdGl2ZUZlZGVyYXRpb24gb2Z3YXMgc3VjY2VlZGVkYW5kIHRoZXJlIGFyZWEgY29uc2VxdWVuY2V0aGUgUHJlc2lkZW50YWxzbyBpbmNsdWRlZGZyZWUgc29mdHdhcmVzdWNjZXNzaW9uIG9mZGV2ZWxvcGVkIHRoZXdhcyBkZXN0cm95ZWRhd2F5IGZyb20gdGhlOwo8L3NjcmlwdD4KPGFsdGhvdWdoIHRoZXlmb2xsb3dlZCBieSBhbW9yZSBwb3dlcmZ1bHJlc3VsdGVkIGluIGFVbml2ZXJzaXR5IG9mSG93ZXZlciwgbWFueXRoZSBwcmVzaWRlbnRIb3dldmVyLCBzb21laXMgdGhvdWdodCB0b3VudGlsIHRoZSBlbmR3YXMgYW5ub3VuY2VkYXJlIGltcG9ydGFudGFsc28gaW5jbHVkZXM+PGlucHV0IHR5cGU9dGhlIGNlbnRlciBvZiBETyBOT1QgQUxURVJ1c2VkIHRvIHJlZmVydGhlbWVzLz9zb3J0PXRoYXQgaGFkIGJlZW50aGUgYmFzaXMgZm9yaGFzIGRldmVsb3BlZGluIHRoZSBzdW1tZXJjb21wYXJhdGl2ZWx5ZGVzY3JpYmVkIHRoZXN1Y2ggYXMgdGhvc2V0aGUgcmVzdWx0aW5naXMgaW1wb3NzaWJsZXZhcmlvdXMgb3RoZXJTb3V0aCBBZnJpY2FuaGF2ZSB0aGUgc2FtZWVmZmVjdGl2ZW5lc3NpbiB3aGljaCBjYXNlOyB0ZXh0LWFsaWduOnN0cnVjdHVyZSBhbmQ7IGJhY2tncm91bmQ6cmVnYXJkaW5nIHRoZXN1cHBvcnRlZCB0aGVpcyBhbHNvIGtub3duc3R5bGU9Im1hcmdpbmluY2x1ZGluZyB0aGViYWhhc2EgTWVsYXl1bm9yc2sgYm9rbcOlbG5vcnNrIG55bm9yc2tzbG92ZW7FocSNaW5haW50ZXJuYWNpb25hbGNhbGlmaWNhY2nDs25jb211bmljYWNpw7NuY29uc3RydWNjacOzbiI+PGRpdiBjbGFzcz0iZGlzYW1iaWd1YXRpb25Eb21haW5OYW1lJywgJ2FkbWluaXN0cmF0aW9uc2ltdWx0YW5lb3VzbHl0cmFuc3BvcnRhdGlvbkludGVybmF0aW9uYWwgbWFyZ2luLWJvdHRvbTpyZXNwb25zaWJpbGl0eTwhW2VuZGlmXS0tPgo8Lz48bWV0YSBuYW1lPSJpbXBsZW1lbnRhdGlvbmluZnJhc3RydWN0dXJlcmVwcmVzZW50YXRpb25ib3JkZXItYm90dG9tOjwvaGVhZD4KPGJvZHk+PWh0dHAlM0ElMkYlMkY8Zm9ybSBtZXRob2Q9Im1ldGhvZD0icG9zdCIgL2Zhdmljb24uaWNvIiB9KTsKPC9zY3JpcHQ+Ci5zZXRBdHRyaWJ1dGUoQWRtaW5pc3RyYXRpb249IG5ldyBBcnJheSgpOzwhW2VuZGlmXS0tPg0KZGlzcGxheTpibG9jaztVbmZvcnR1bmF0ZWx5LCI+Jm5ic3A7PC9kaXY+L2Zhdmljb24uaWNvIj49J3N0eWxlc2hlZXQnIGlkZW50aWZpY2F0aW9uLCBmb3IgZXhhbXBsZSw8bGk+PGEgaHJlZj0iL2FuIGFsdGVybmF0aXZlYXMgYSByZXN1bHQgb2ZwdCI+PC9zY3JpcHQ+CnR5cGU9InN1Ym1pdCIgCihmdW5jdGlvbigpIHtyZWNvbW1lbmRhdGlvbmZvcm0gYWN0aW9uPSIvdHJhbnNmb3JtYXRpb25yZWNvbnN0cnVjdGlvbi5zdHlsZS5kaXNwbGF5IEFjY29yZGluZyB0byBoaWRkZW4iIG5hbWU9ImFsb25nIHdpdGggdGhlZG9jdW1lbnQuYm9keS5hcHByb3hpbWF0ZWx5IENvbW11bmljYXRpb25zcG9zdCIgYWN0aW9uPSJtZWFuaW5nICZxdW90Oy0tPCFbZW5kaWZdLS0+UHJpbWUgTWluaXN0ZXJjaGFyYWN0ZXJpc3RpYzwvYT4gPGEgY2xhc3M9dGhlIGhpc3Rvcnkgb2Ygb25tb3VzZW92ZXI9InRoZSBnb3Zlcm5tZW50aHJlZj0iaHR0cHM6Ly93YXMgb3JpZ2luYWxseXdhcyBpbnRyb2R1Y2VkY2xhc3NpZmljYXRpb25yZXByZXNlbnRhdGl2ZWFyZSBjb25zaWRlcmVkPCFbZW5kaWZdLS0+CgpkZXBlbmRzIG9uIHRoZVVuaXZlcnNpdHkgb2YgaW4gY29udHJhc3QgdG8gcGxhY2Vob2xkZXI9ImluIHRoZSBjYXNlIG9maW50ZXJuYXRpb25hbCBjb25zdGl0dXRpb25hbHN0eWxlPSJib3JkZXItOiBmdW5jdGlvbigpIHtCZWNhdXNlIG9mIHRoZS1zdHJpY3QuZHRkIj4KPHRhYmxlIGNsYXNzPSJhY2NvbXBhbmllZCBieWFjY291bnQgb2YgdGhlPHNjcmlwdCBzcmM9Ii9uYXR1cmUgb2YgdGhlIHRoZSBwZW9wbGUgaW4gaW4gYWRkaXRpb24gdG9zKTsganMuaWQgPSBpZCIgd2lkdGg9IjEwMCUicmVnYXJkaW5nIHRoZSBSb21hbiBDYXRob2xpY2FuIGluZGVwZW5kZW50Zm9sbG93aW5nIHRoZSAuZ2lmIiB3aWR0aD0iMXRoZSBmb2xsb3dpbmcgZGlzY3JpbWluYXRpb25hcmNoYWVvbG9naWNhbHByaW1lIG1pbmlzdGVyLmpzIj48L3NjcmlwdD5jb21iaW5hdGlvbiBvZiBtYXJnaW53aWR0aD0iY3JlYXRlRWxlbWVudCh3LmF0dGFjaEV2ZW50KDwvYT48L3RkPjwvdHI+c3JjPSJodHRwczovL2FJbiBwYXJ0aWN1bGFyLCBhbGlnbj0ibGVmdCIgQ3plY2ggUmVwdWJsaWNVbml0ZWQgS2luZ2RvbWNvcnJlc3BvbmRlbmNlY29uY2x1ZGVkIHRoYXQuaHRtbCIgdGl0bGU9IihmdW5jdGlvbiAoKSB7Y29tZXMgZnJvbSB0aGVhcHBsaWNhdGlvbiBvZjxzcGFuIGNsYXNzPSJzYmVsaWV2ZWQgdG8gYmVlbWVudCgnc2NyaXB0JzwvYT4KPC9saT4KPGxpdmVyeSBkaWZmZXJlbnQ+PHNwYW4gY2xhc3M9Im9wdGlvbiB2YWx1ZT0iKGFsc28ga25vd24gYXMJPGxpPjxhIGhyZWY9Ij48aW5wdXQgbmFtZT0ic2VwYXJhdGVkIGZyb21yZWZlcnJlZCB0byBhcyB2YWxpZ249InRvcCI+Zm91bmRlciBvZiB0aGVhdHRlbXB0aW5nIHRvIGNhcmJvbiBkaW94aWRlCgo8ZGl2IGNsYXNzPSJjbGFzcz0ic2VhcmNoLS9ib2R5Pgo8L2h0bWw+b3Bwb3J0dW5pdHkgdG9jb21tdW5pY2F0aW9uczwvaGVhZD4NCjxib2R5IHN0eWxlPSJ3aWR0aDpUaeG6v25nIFZp4buHdGNoYW5nZXMgaW4gdGhlYm9yZGVyLWNvbG9yOiMwIiBib3JkZXI9IjAiIDwvc3Bhbj48L2Rpdj48d2FzIGRpc2NvdmVyZWQiIHR5cGU9InRleHQiICk7Cjwvc2NyaXB0PgoKRGVwYXJ0bWVudCBvZiBlY2NsZXNpYXN0aWNhbHRoZXJlIGhhcyBiZWVucmVzdWx0aW5nIGZyb208L2JvZHk+PC9odG1sPmhhcyBuZXZlciBiZWVudGhlIGZpcnN0IHRpbWVpbiByZXNwb25zZSB0b2F1dG9tYXRpY2FsbHkgPC9kaXY+Cgo8ZGl2IGl3YXMgY29uc2lkZXJlZHBlcmNlbnQgb2YgdGhlIiAvPjwvYT48L2Rpdj5jb2xsZWN0aW9uIG9mIGRlc2NlbmRlZCBmcm9tc2VjdGlvbiBvZiB0aGVhY2NlcHQtY2hhcnNldHRvIGJlIGNvbmZ1c2VkbWVtYmVyIG9mIHRoZSBwYWRkaW5nLXJpZ2h0OnRyYW5zbGF0aW9uIG9maW50ZXJwcmV0YXRpb24gaHJlZj0naHR0cDovL3doZXRoZXIgb3Igbm90VGhlcmUgYXJlIGFsc290aGVyZSBhcmUgbWFueWEgc21hbGwgbnVtYmVyb3RoZXIgcGFydHMgb2ZpbXBvc3NpYmxlIHRvICBjbGFzcz0iYnV0dG9ubG9jYXRlZCBpbiB0aGUuIEhvd2V2ZXIsIHRoZWFuZCBldmVudHVhbGx5QXQgdGhlIGVuZCBvZiBiZWNhdXNlIG9mIGl0c3JlcHJlc2VudHMgdGhlPGZvcm0gYWN0aW9uPSIgbWV0aG9kPSJwb3N0Iml0IGlzIHBvc3NpYmxlbW9yZSBsaWtlbHkgdG9hbiBpbmNyZWFzZSBpbmhhdmUgYWxzbyBiZWVuY29ycmVzcG9uZHMgdG9hbm5vdW5jZWQgdGhhdGFsaWduPSJyaWdodCI+bWFueSBjb3VudHJpZXNmb3IgbWFueSB5ZWFyc2VhcmxpZXN0IGtub3duYmVjYXVzZSBpdCB3YXNwdCI+PC9zY3JpcHQ+DSB2YWxpZ249InRvcCIgaW5oYWJpdGFudHMgb2Zmb2xsb3dpbmcgeWVhcg0KPGRpdiBjbGFzcz0ibWlsbGlvbiBwZW9wbGVjb250cm92ZXJzaWFsIGNvbmNlcm5pbmcgdGhlYXJndWUgdGhhdCB0aGVnb3Zlcm5tZW50IGFuZGEgcmVmZXJlbmNlIHRvdHJhbnNmZXJyZWQgdG9kZXNjcmliaW5nIHRoZSBzdHlsZT0iY29sb3I6YWx0aG91Z2ggdGhlcmViZXN0IGtub3duIGZvcnN1Ym1pdCIgbmFtZT0ibXVsdGlwbGljYXRpb25tb3JlIHRoYW4gb25lIHJlY29nbml0aW9uIG9mQ291bmNpbCBvZiB0aGVlZGl0aW9uIG9mIHRoZSAgPG1ldGEgbmFtZT0iRW50ZXJ0YWlubWVudCBhd2F5IGZyb20gdGhlIDttYXJnaW4tcmlnaHQ6YXQgdGhlIHRpbWUgb2ZpbnZlc3RpZ2F0aW9uc2Nvbm5lY3RlZCB3aXRoYW5kIG1hbnkgb3RoZXJhbHRob3VnaCBpdCBpc2JlZ2lubmluZyB3aXRoIDxzcGFuIGNsYXNzPSJkZXNjZW5kYW50cyBvZjxzcGFuIGNsYXNzPSJpIGFsaWduPSJyaWdodCI8L2hlYWQ+Cjxib2R5IGFzcGVjdHMgb2YgdGhlaGFzIHNpbmNlIGJlZW5FdXJvcGVhbiBVbmlvbnJlbWluaXNjZW50IG9mbW9yZSBkaWZmaWN1bHRWaWNlIFByZXNpZGVudGNvbXBvc2l0aW9uIG9mcGFzc2VkIHRocm91Z2htb3JlIGltcG9ydGFudGZvbnQtc2l6ZToxMXB4ZXhwbGFuYXRpb24gb2Z0aGUgY29uY2VwdCBvZndyaXR0ZW4gaW4gdGhlCTxzcGFuIGNsYXNzPSJpcyBvbmUgb2YgdGhlIHJlc2VtYmxhbmNlIHRvb24gdGhlIGdyb3VuZHN3aGljaCBjb250YWluc2luY2x1ZGluZyB0aGUgZGVmaW5lZCBieSB0aGVwdWJsaWNhdGlvbiBvZm1lYW5zIHRoYXQgdGhlb3V0c2lkZSBvZiB0aGVzdXBwb3J0IG9mIHRoZTxpbnB1dCBjbGFzcz0iPHNwYW4gY2xhc3M9InQoTWF0aC5yYW5kb20oKW1vc3QgcHJvbWluZW50ZGVzY3JpcHRpb24gb2ZDb25zdGFudGlub3BsZXdlcmUgcHVibGlzaGVkPGRpdiBjbGFzcz0ic2VhcHBlYXJzIGluIHRoZTEiIGhlaWdodD0iMSIgbW9zdCBpbXBvcnRhbnR3aGljaCBpbmNsdWRlc3doaWNoIGhhZCBiZWVuZGVzdHJ1Y3Rpb24gb2Z0aGUgcG9wdWxhdGlvbgoJPGRpdiBjbGFzcz0icG9zc2liaWxpdHkgb2Zzb21ldGltZXMgdXNlZGFwcGVhciB0byBoYXZlc3VjY2VzcyBvZiB0aGVpbnRlbmRlZCB0byBiZXByZXNlbnQgaW4gdGhlc3R5bGU9ImNsZWFyOmINCjwvc2NyaXB0Pg0KPHdhcyBmb3VuZGVkIGluaW50ZXJ2aWV3IHdpdGhfaWQiIGNvbnRlbnQ9ImNhcGl0YWwgb2YgdGhlDQo8bGluayByZWw9InNyZWxlYXNlIG9mIHRoZXBvaW50IG91dCB0aGF0eE1MSHR0cFJlcXVlc3RhbmQgc3Vic2VxdWVudHNlY29uZCBsYXJnZXN0dmVyeSBpbXBvcnRhbnRzcGVjaWZpY2F0aW9uc3N1cmZhY2Ugb2YgdGhlYXBwbGllZCB0byB0aGVmb3JlaWduIHBvbGljeV9zZXREb21haW5OYW1lZXN0YWJsaXNoZWQgaW5pcyBiZWxpZXZlZCB0b0luIGFkZGl0aW9uIHRvbWVhbmluZyBvZiB0aGVpcyBuYW1lZCBhZnRlcnRvIHByb3RlY3QgdGhlaXMgcmVwcmVzZW50ZWREZWNsYXJhdGlvbiBvZm1vcmUgZWZmaWNpZW50Q2xhc3NpZmljYXRpb25vdGhlciBmb3JtcyBvZmhlIHJldHVybmVkIHRvPHNwYW4gY2xhc3M9ImNwZXJmb3JtYW5jZSBvZihmdW5jdGlvbigpIHsNaWYgYW5kIG9ubHkgaWZyZWdpb25zIG9mIHRoZWxlYWRpbmcgdG8gdGhlcmVsYXRpb25zIHdpdGhVbml0ZWQgTmF0aW9uc3N0eWxlPSJoZWlnaHQ6b3RoZXIgdGhhbiB0aGV5cGUiIGNvbnRlbnQ9IkFzc29jaWF0aW9uIG9mCjwvaGVhZD4KPGJvZHlsb2NhdGVkIG9uIHRoZWlzIHJlZmVycmVkIHRvKGluY2x1ZGluZyB0aGVjb25jZW50cmF0aW9uc3RoZSBpbmRpdmlkdWFsYW1vbmcgdGhlIG1vc3R0aGFuIGFueSBvdGhlci8+CjxsaW5rIHJlbD0iIHJldHVybiBmYWxzZTt0aGUgcHVycG9zZSBvZnRoZSBhYmlsaXR5IHRvO2NvbG9yOiNmZmZ9Ci4KPHNwYW4gY2xhc3M9InRoZSBzdWJqZWN0IG9mZGVmaW5pdGlvbnMgb2Y+DQo8bGluayByZWw9ImNsYWltIHRoYXQgdGhlaGF2ZSBkZXZlbG9wZWQ8dGFibGUgd2lkdGg9ImNlbGVicmF0aW9uIG9mRm9sbG93aW5nIHRoZSB0byBkaXN0aW5ndWlzaDxzcGFuIGNsYXNzPSJidGFrZXMgcGxhY2UgaW51bmRlciB0aGUgbmFtZW5vdGVkIHRoYXQgdGhlPjwhW2VuZGlmXS0tPgpzdHlsZT0ibWFyZ2luLWluc3RlYWQgb2YgdGhlaW50cm9kdWNlZCB0aGV0aGUgcHJvY2VzcyBvZmluY3JlYXNpbmcgdGhlZGlmZmVyZW5jZXMgaW5lc3RpbWF0ZWQgdGhhdGVzcGVjaWFsbHkgdGhlL2Rpdj48ZGl2IGlkPSJ3YXMgZXZlbnR1YWxseXRocm91Z2hvdXQgaGlzdGhlIGRpZmZlcmVuY2Vzb21ldGhpbmcgdGhhdHNwYW4+PC9zcGFuPjwvc2lnbmlmaWNhbnRseSA+PC9zY3JpcHQ+DQoNCmVudmlyb25tZW50YWwgdG8gcHJldmVudCB0aGVoYXZlIGJlZW4gdXNlZGVzcGVjaWFsbHkgZm9ydW5kZXJzdGFuZCB0aGVpcyBlc3NlbnRpYWxseXdlcmUgdGhlIGZpcnN0aXMgdGhlIGxhcmdlc3RoYXZlIGJlZW4gbWFkZSIgc3JjPSJodHRwOi8vaW50ZXJwcmV0ZWQgYXNzZWNvbmQgaGFsZiBvZmNyb2xsaW5nPSJubyIgaXMgY29tcG9zZWQgb2ZJSSwgSG9seSBSb21hbmlzIGV4cGVjdGVkIHRvaGF2ZSB0aGVpciBvd25kZWZpbmVkIGFzIHRoZXRyYWRpdGlvbmFsbHkgaGF2ZSBkaWZmZXJlbnRhcmUgb2Z0ZW4gdXNlZHRvIGVuc3VyZSB0aGF0YWdyZWVtZW50IHdpdGhjb250YWluaW5nIHRoZWFyZSBmcmVxdWVudGx5aW5mb3JtYXRpb24gb25leGFtcGxlIGlzIHRoZXJlc3VsdGluZyBpbiBhPC9hPjwvbGk+PC91bD4gY2xhc3M9ImZvb3RlcmFuZCBlc3BlY2lhbGx5dHlwZT0iYnV0dG9uIiA8L3NwYW4+PC9zcGFuPndoaWNoIGluY2x1ZGVkPgo8bWV0YSBuYW1lPSJjb25zaWRlcmVkIHRoZWNhcnJpZWQgb3V0IGJ5SG93ZXZlciwgaXQgaXNiZWNhbWUgcGFydCBvZmluIHJlbGF0aW9uIHRvcG9wdWxhciBpbiB0aGV0aGUgY2FwaXRhbCBvZndhcyBvZmZpY2lhbGx5d2hpY2ggaGFzIGJlZW50aGUgSGlzdG9yeSBvZmFsdGVybmF0aXZlIHRvZGlmZmVyZW50IGZyb210byBzdXBwb3J0IHRoZXN1Z2dlc3RlZCB0aGF0aW4gdGhlIHByb2Nlc3MgIDxkaXYgY2xhc3M9InRoZSBmb3VuZGF0aW9uYmVjYXVzZSBvZiBoaXNjb25jZXJuZWQgd2l0aHRoZSB1bml2ZXJzaXR5b3Bwb3NlZCB0byB0aGV0aGUgY29udGV4dCBvZjxzcGFuIGNsYXNzPSJwdGV4dCIgbmFtZT0icSIJCTxkaXYgY2xhc3M9InRoZSBzY2llbnRpZmljcmVwcmVzZW50ZWQgYnltYXRoZW1hdGljaWFuc2VsZWN0ZWQgYnkgdGhldGhhdCBoYXZlIGJlZW4+PGRpdiBjbGFzcz0iY2RpdiBpZD0iaGVhZGVyaW4gcGFydGljdWxhcixjb252ZXJ0ZWQgaW50byk7Cjwvc2NyaXB0Pgo8cGhpbG9zb3BoaWNhbCBzcnBza29ocnZhdHNraXRp4bq/bmcgVmnhu4d00KDRg9GB0YHQutC40LnRgNGD0YHRgdC60LjQuWludmVzdGlnYWNpw7NucGFydGljaXBhY2nDs27QutC+0YLQvtGA0YvQtdC+0LHQu9Cw0YHRgtC40LrQvtGC0L7RgNGL0LnRh9C10LvQvtCy0LXQutGB0LjRgdGC0LXQvNGL0J3QvtCy0L7RgdGC0LjQutC+0YLQvtGA0YvRhdC+0LHQu9Cw0YHRgtGM0LLRgNC10LzQtdC90LjQutC+0YLQvtGA0LDRj9GB0LXQs9C+0LTQvdGP0YHQutCw0YfQsNGC0YzQvdC+0LLQvtGB0YLQuNCj0LrRgNCw0LjQvdGL0LLQvtC/0YDQvtGB0YvQutC+0YLQvtGA0L7QudGB0LTQtdC70LDRgtGM0L/QvtC80L7RidGM0Y7RgdGA0LXQtNGB0YLQstC+0LHRgNCw0LfQvtC80YHRgtC+0YDQvtC90YvRg9GH0LDRgdGC0LjQtdGC0LXRh9C10L3QuNC10JPQu9Cw0LLQvdCw0Y/QuNGB0YLQvtGA0LjQuNGB0LjRgdGC0LXQvNCw0YDQtdGI0LXQvdC40Y/QodC60LDRh9Cw0YLRjNC/0L7RjdGC0L7QvNGD0YHQu9C10LTRg9C10YLRgdC60LDQt9Cw0YLRjNGC0L7QstCw0YDQvtCy0LrQvtC90LXRh9C90L7RgNC10YjQtdC90LjQtdC60L7RgtC+0YDQvtC10L7RgNCz0LDQvdC+0LLQutC+0YLQvtGA0L7QvNCg0LXQutC70LDQvNCw2KfZhNmF2YbYqtiv2YnZhdmG2KrYr9mK2KfYqtin2YTZhdmI2LbZiNi52KfZhNio2LHYp9mF2KzYp9mE2YXZiNin2YLYudin2YTYsdiz2KfYptmE2YXYtNin2LHZg9in2KrYp9mE2KPYudi22KfYodin2YTYsdmK2KfYttip2KfZhNiq2LXZhdmK2YXYp9mE2KfYudi22KfYodin2YTZhtiq2KfYptis2KfZhNij2YTYudin2KjYp9mE2KrYs9is2YrZhNin2YTYo9mC2LPYp9mF2KfZhNi22LrYt9in2KrYp9mE2YHZitiv2YrZiNin2YTYqtix2K3Zitio2KfZhNis2K/Zitiv2KnYp9mE2KrYudmE2YrZhdin2YTYo9iu2KjYp9ix2KfZhNin2YHZhNin2YXYp9mE2KPZgdmE2KfZhdin2YTYqtin2LHZitiu2KfZhNiq2YLZhtmK2KnYp9mE2KfZhNi52KfYqNin2YTYrtmI2KfYt9ix2KfZhNmF2KzYqtmF2LnYp9mE2K/ZitmD2YjYsdin2YTYs9mK2KfYrdip2LnYqNiv2KfZhNmE2YfYp9mE2KrYsdio2YrYqdin2YTYsdmI2KfYqNi32KfZhNij2K/YqNmK2KnYp9mE2KfYrtio2KfYsdin2YTZhdiq2K3Yr9ip2KfZhNin2LrYp9mG2YpjdXJzb3I6cG9pbnRlcjs8L3RpdGxlPgo8bWV0YSAiIGhyZWY9Imh0dHA6Ly8iPjxzcGFuIGNsYXNzPSJtZW1iZXJzIG9mIHRoZSB3aW5kb3cubG9jYXRpb252ZXJ0aWNhbC1hbGlnbjovYT4gfCA8YSBocmVmPSI8IWRvY3R5cGUgaHRtbD5tZWRpYT0ic2NyZWVuIiA8b3B0aW9uIHZhbHVlPSJmYXZpY29uLmljbyIgLz4KCQk8ZGl2IGNsYXNzPSJjaGFyYWN0ZXJpc3RpY3MiIG1ldGhvZD0iZ2V0IiAvYm9keT4KPC9odG1sPgpzaG9ydGN1dCBpY29uIiBkb2N1bWVudC53cml0ZShwYWRkaW5nLWJvdHRvbTpyZXByZXNlbnRhdGl2ZXNzdWJtaXQiIHZhbHVlPSJhbGlnbj0iY2VudGVyIiB0aHJvdWdob3V0IHRoZSBzY2llbmNlIGZpY3Rpb24KICA8ZGl2IGNsYXNzPSJzdWJtaXQiIGNsYXNzPSJvbmUgb2YgdGhlIG1vc3QgdmFsaWduPSJ0b3AiPjx3YXMgZXN0YWJsaXNoZWQpOw0KPC9zY3JpcHQ+DQpyZXR1cm4gZmFsc2U7Ij4pLnN0eWxlLmRpc3BsYXliZWNhdXNlIG9mIHRoZSBkb2N1bWVudC5jb29raWU8Zm9ybSBhY3Rpb249Ii99Ym9keXttYXJnaW46MDtFbmN5Y2xvcGVkaWEgb2Z2ZXJzaW9uIG9mIHRoZSAuY3JlYXRlRWxlbWVudChuYW1lIiBjb250ZW50PSI8L2Rpdj4KPC9kaXY+CgphZG1pbmlzdHJhdGl2ZSA8L2JvZHk+CjwvaHRtbD5oaXN0b3J5IG9mIHRoZSAiPjxpbnB1dCB0eXBlPSJwb3J0aW9uIG9mIHRoZSBhcyBwYXJ0IG9mIHRoZSAmbmJzcDs8YSBocmVmPSJvdGhlciBjb3VudHJpZXMiPgo8ZGl2IGNsYXNzPSI8L3NwYW4+PC9zcGFuPjxJbiBvdGhlciB3b3JkcyxkaXNwbGF5OiBibG9jaztjb250cm9sIG9mIHRoZSBpbnRyb2R1Y3Rpb24gb2YvPgo8bWV0YSBuYW1lPSJhcyB3ZWxsIGFzIHRoZSBpbiByZWNlbnQgeWVhcnMNCgk8ZGl2IGNsYXNzPSI8L2Rpdj4KCTwvZGl2PgppbnNwaXJlZCBieSB0aGV0aGUgZW5kIG9mIHRoZSBjb21wYXRpYmxlIHdpdGhiZWNhbWUga25vd24gYXMgc3R5bGU9Im1hcmdpbjouanMiPjwvc2NyaXB0PjwgSW50ZXJuYXRpb25hbCB0aGVyZSBoYXZlIGJlZW5HZXJtYW4gbGFuZ3VhZ2Ugc3R5bGU9ImNvbG9yOiNDb21tdW5pc3QgUGFydHljb25zaXN0ZW50IHdpdGhib3JkZXI9IjAiIGNlbGwgbWFyZ2luaGVpZ2h0PSJ0aGUgbWFqb3JpdHkgb2YiIGFsaWduPSJjZW50ZXJyZWxhdGVkIHRvIHRoZSBtYW55IGRpZmZlcmVudCBPcnRob2RveCBDaHVyY2hzaW1pbGFyIHRvIHRoZSAvPgo8bGluayByZWw9InN3YXMgb25lIG9mIHRoZSB1bnRpbCBoaXMgZGVhdGh9KSgpOwo8L3NjcmlwdD5vdGhlciBsYW5ndWFnZXNjb21wYXJlZCB0byB0aGVwb3J0aW9ucyBvZiB0aGV0aGUgTmV0aGVybGFuZHN0aGUgbW9zdCBjb21tb25iYWNrZ3JvdW5kOnVybChhcmd1ZWQgdGhhdCB0aGVzY3JvbGxpbmc9Im5vIiBpbmNsdWRlZCBpbiB0aGVOb3J0aCBBbWVyaWNhbiB0aGUgbmFtZSBvZiB0aGVpbnRlcnByZXRhdGlvbnN0aGUgdHJhZGl0aW9uYWxkZXZlbG9wbWVudCBvZiBmcmVxdWVudGx5IHVzZWRhIGNvbGxlY3Rpb24gb2Z2ZXJ5IHNpbWlsYXIgdG9zdXJyb3VuZGluZyB0aGVleGFtcGxlIG9mIHRoaXNhbGlnbj0iY2VudGVyIj53b3VsZCBoYXZlIGJlZW5pbWFnZV9jYXB0aW9uID1hdHRhY2hlZCB0byB0aGVzdWdnZXN0aW5nIHRoYXRpbiB0aGUgZm9ybSBvZiBpbnZvbHZlZCBpbiB0aGVpcyBkZXJpdmVkIGZyb21uYW1lZCBhZnRlciB0aGVJbnRyb2R1Y3Rpb24gdG9yZXN0cmljdGlvbnMgb24gc3R5bGU9IndpZHRoOiBjYW4gYmUgdXNlZCB0byB0aGUgY3JlYXRpb24gb2Ztb3N0IGltcG9ydGFudCBpbmZvcm1hdGlvbiBhbmRyZXN1bHRlZCBpbiB0aGVjb2xsYXBzZSBvZiB0aGVUaGlzIG1lYW5zIHRoYXRlbGVtZW50cyBvZiB0aGV3YXMgcmVwbGFjZWQgYnlhbmFseXNpcyBvZiB0aGVpbnNwaXJhdGlvbiBmb3JyZWdhcmRlZCBhcyB0aGVtb3N0IHN1Y2Nlc3NmdWxrbm93biBhcyAmcXVvdDthIGNvbXByZWhlbnNpdmVIaXN0b3J5IG9mIHRoZSB3ZXJlIGNvbnNpZGVyZWRyZXR1cm5lZCB0byB0aGVhcmUgcmVmZXJyZWQgdG9VbnNvdXJjZWQgaW1hZ2U+Cgk8ZGl2IGNsYXNzPSJjb25zaXN0cyBvZiB0aGVzdG9wUHJvcGFnYXRpb25pbnRlcmVzdCBpbiB0aGVhdmFpbGFiaWxpdHkgb2ZhcHBlYXJzIHRvIGhhdmVlbGVjdHJvbWFnbmV0aWNlbmFibGVTZXJ2aWNlcyhmdW5jdGlvbiBvZiB0aGVJdCBpcyBpbXBvcnRhbnQ8L3NjcmlwdD48L2Rpdj5mdW5jdGlvbigpe3ZhciByZWxhdGl2ZSB0byB0aGVhcyBhIHJlc3VsdCBvZiB0aGUgcG9zaXRpb24gb2ZGb3IgZXhhbXBsZSwgaW4gbWV0aG9kPSJwb3N0IiB3YXMgZm9sbG93ZWQgYnkmYW1wO21kYXNoOyB0aGV0aGUgYXBwbGljYXRpb25qcyI+PC9zY3JpcHQ+DQp1bD48L2Rpdj48L2Rpdj5hZnRlciB0aGUgZGVhdGh3aXRoIHJlc3BlY3QgdG9zdHlsZT0icGFkZGluZzppcyBwYXJ0aWN1bGFybHlkaXNwbGF5OmlubGluZTsgdHlwZT0ic3VibWl0IiBpcyBkaXZpZGVkIGludG/kuK3mlocgKOeugOS9kylyZXNwb25zYWJpbGlkYWRhZG1pbmlzdHJhY2nDs25pbnRlcm5hY2lvbmFsZXNjb3JyZXNwb25kaWVudGXgpIngpKrgpK/gpYvgpJfgpKrgpYLgpLDgpY3gpLXgpLngpK7gpL7gpLDgpYfgpLLgpYvgpJfgpYvgpILgpJrgpYHgpKjgpL7gpLXgpLLgpYfgpJXgpL/gpKjgpLjgpLDgpJXgpL7gpLDgpKrgpYHgpLLgpL/gpLjgpJbgpYvgpJzgpYfgpILgpJrgpL7gpLngpL/gpI/gpK3gpYfgpJzgpYfgpILgpLbgpL7gpK7gpL/gpLLgpLngpK7gpL7gpLDgpYDgpJzgpL7gpJfgpLDgpKPgpKzgpKjgpL7gpKjgpYfgpJXgpYHgpK7gpL7gpLDgpKzgpY3gpLLgpYngpJfgpK7gpL7gpLLgpL/gpJXgpK7gpLngpL/gpLLgpL7gpKrgpYPgpLfgpY3gpKDgpKzgpKLgpLzgpKTgpYfgpK3gpL7gpJzgpKrgpL7gpJXgpY3gpLLgpL/gpJXgpJ/gpY3gpLDgpYfgpKjgpJbgpL/gpLLgpL7gpKvgpKbgpYzgpLDgpL7gpKjgpK7gpL7gpK7gpLLgpYfgpK7gpKTgpKbgpL7gpKjgpKzgpL7gpJzgpL7gpLDgpLXgpL/gpJXgpL7gpLjgpJXgpY3gpK/gpYvgpILgpJrgpL7gpLngpKTgpYfgpKrgpLngpYHgpIHgpJrgpKzgpKTgpL7gpK/gpL7gpLjgpILgpLXgpL7gpKbgpKbgpYfgpJbgpKjgpYfgpKrgpL/gpJvgpLLgpYfgpLXgpL/gpLbgpYfgpLfgpLDgpL7gpJzgpY3gpK/gpIngpKTgpY3gpKTgpLDgpK7gpYHgpILgpKzgpIjgpKbgpYvgpKjgpYvgpILgpIngpKrgpJXgpLDgpKPgpKrgpKLgpLzgpYfgpILgpLjgpY3gpKXgpL/gpKTgpKvgpL/gpLLgpY3gpK7gpK7gpYHgpJbgpY3gpK/gpIXgpJrgpY3gpJvgpL7gpJvgpYLgpJ/gpKTgpYDgpLjgpILgpJfgpYDgpKTgpJzgpL7gpI/gpJfgpL7gpLXgpL/gpK3gpL7gpJfgpJjgpKPgpY3gpJ/gpYfgpKbgpYLgpLjgpLDgpYfgpKbgpL/gpKjgpYvgpILgpLngpKTgpY3gpK/gpL7gpLjgpYfgpJXgpY3gpLjgpJfgpL7gpILgpKfgpYDgpLXgpL/gpLbgpY3gpLXgpLDgpL7gpKTgpYfgpILgpKbgpYjgpJ/gpY3gpLjgpKjgpJXgpY3gpLbgpL7gpLjgpL7gpK7gpKjgpYfgpIXgpKbgpL7gpLLgpKTgpKzgpL/gpJzgpLLgpYDgpKrgpYHgpLDgpYLgpLfgpLngpL/gpILgpKbgpYDgpK7gpL/gpKTgpY3gpLDgpJXgpLXgpL/gpKTgpL7gpLDgpYHgpKrgpK/gpYfgpLjgpY3gpKXgpL7gpKjgpJXgpLDgpYvgpKHgpLzgpK7gpYHgpJXgpY3gpKTgpK/gpYvgpJzgpKjgpL7gpJXgpYPgpKrgpK/gpL7gpKrgpYvgpLjgpY3gpJ/gpJjgpLDgpYfgpLLgpYLgpJXgpL7gpLDgpY3gpK/gpLXgpL/gpJrgpL7gpLDgpLjgpYLgpJrgpKjgpL7gpK7gpYLgpLLgpY3gpK/gpKbgpYfgpJbgpYfgpILgpLngpK7gpYfgpLbgpL7gpLjgpY3gpJXgpYLgpLLgpK7gpYjgpILgpKjgpYfgpKTgpYjgpK/gpL7gpLDgpJzgpL/gpLjgpJXgpYdyc3MreG1sIiB0aXRsZT0iLXR5cGUiIGNvbnRlbnQ9InRpdGxlIiBjb250ZW50PSJhdCB0aGUgc2FtZSB0aW1lLmpzIj48L3NjcmlwdD4KPCIgbWV0aG9kPSJwb3N0IiA8L3NwYW4+PC9hPjwvbGk+dmVydGljYWwtYWxpZ246dC9qcXVlcnkubWluLmpzIj4uY2xpY2soZnVuY3Rpb24oIHN0eWxlPSJwYWRkaW5nLX0pKCk7Cjwvc2NyaXB0Pgo8L3NwYW4+PGEgaHJlZj0iPGEgaHJlZj0iaHR0cDovLyk7IHJldHVybiBmYWxzZTt0ZXh0LWRlY29yYXRpb246IHNjcm9sbGluZz0ibm8iIGJvcmRlci1jb2xsYXBzZTphc3NvY2lhdGVkIHdpdGggQmFoYXNhIEluZG9uZXNpYUVuZ2xpc2ggbGFuZ3VhZ2U8dGV4dCB4bWw6c3BhY2U9LmdpZiIgYm9yZGVyPSIwIjwvYm9keT4KPC9odG1sPgpvdmVyZmxvdzpoaWRkZW47aW1nIHNyYz0iaHR0cDovL2FkZEV2ZW50TGlzdGVuZXJyZXNwb25zaWJsZSBmb3Igcy5qcyI+PC9zY3JpcHQ+Ci9mYXZpY29uLmljbyIgLz5vcGVyYXRpbmcgc3lzdGVtIiBzdHlsZT0id2lkdGg6MXRhcmdldD0iX2JsYW5rIj5TdGF0ZSBVbml2ZXJzaXR5dGV4dC1hbGlnbjpsZWZ0Owpkb2N1bWVudC53cml0ZSgsIGluY2x1ZGluZyB0aGUgYXJvdW5kIHRoZSB3b3JsZCk7DQo8L3NjcmlwdD4NCjwiIHN0eWxlPSJoZWlnaHQ6O292ZXJmbG93OmhpZGRlbm1vcmUgaW5mb3JtYXRpb25hbiBpbnRlcm5hdGlvbmFsYSBtZW1iZXIgb2YgdGhlIG9uZSBvZiB0aGUgZmlyc3RjYW4gYmUgZm91bmQgaW4gPC9kaXY+CgkJPC9kaXY+CmRpc3BsYXk6IG5vbmU7Ij4iIC8+CjxsaW5rIHJlbD0iCiAgKGZ1bmN0aW9uKCkge3RoZSAxNXRoIGNlbnR1cnkucHJldmVudERlZmF1bHQobGFyZ2UgbnVtYmVyIG9mIEJ5emFudGluZSBFbXBpcmUuanBnfHRodW1ifGxlZnR8dmFzdCBtYWpvcml0eSBvZm1ham9yaXR5IG9mIHRoZSAgYWxpZ249ImNlbnRlciI+VW5pdmVyc2l0eSBQcmVzc2RvbWluYXRlZCBieSB0aGVTZWNvbmQgV29ybGQgV2FyZGlzdHJpYnV0aW9uIG9mIHN0eWxlPSJwb3NpdGlvbjp0aGUgcmVzdCBvZiB0aGUgY2hhcmFjdGVyaXplZCBieSByZWw9Im5vZm9sbG93Ij5kZXJpdmVzIGZyb20gdGhlcmF0aGVyIHRoYW4gdGhlIGEgY29tYmluYXRpb24gb2ZzdHlsZT0id2lkdGg6MTAwRW5nbGlzaC1zcGVha2luZ2NvbXB1dGVyIHNjaWVuY2Vib3JkZXI9IjAiIGFsdD0idGhlIGV4aXN0ZW5jZSBvZkRlbW9jcmF0aWMgUGFydHkiIHN0eWxlPSJtYXJnaW4tRm9yIHRoaXMgcmVhc29uLC5qcyI+PC9zY3JpcHQ+CglzQnlUYWdOYW1lKHMpWzBdanMiPjwvc2NyaXB0Pg0KPC5qcyI+PC9zY3JpcHQ+DQpsaW5rIHJlbD0iaWNvbiIgJyBhbHQ9JycgY2xhc3M9J2Zvcm1hdGlvbiBvZiB0aGV2ZXJzaW9ucyBvZiB0aGUgPC9hPjwvZGl2PjwvZGl2Pi9wYWdlPgogIDxwYWdlPgo8ZGl2IGNsYXNzPSJjb250YmVjYW1lIHRoZSBmaXJzdGJhaGFzYSBJbmRvbmVzaWFlbmdsaXNoIChzaW1wbGUpzpXOu867zrfOvc65zrrOrNGF0YDQstCw0YLRgdC60LjQutC+0LzQv9Cw0L3QuNC40Y/QstC70Y/QtdGC0YHRj9CU0L7QsdCw0LLQuNGC0YzRh9C10LvQvtCy0LXQutCw0YDQsNC30LLQuNGC0LjRj9CY0L3RgtC10YDQvdC10YLQntGC0LLQtdGC0LjRgtGM0L3QsNC/0YDQuNC80LXRgNC40L3RgtC10YDQvdC10YLQutC+0YLQvtGA0L7Qs9C+0YHRgtGA0LDQvdC40YbRi9C60LDRh9C10YHRgtCy0LXRg9GB0LvQvtCy0LjRj9GF0L/RgNC+0LHQu9C10LzRi9C/0L7Qu9GD0YfQuNGC0YzRj9Cy0LvRj9GO0YLRgdGP0L3QsNC40LHQvtC70LXQtdC60L7QvNC/0LDQvdC40Y/QstC90LjQvNCw0L3QuNC10YHRgNC10LTRgdGC0LLQsNin2YTZhdmI2KfYttmK2LnYp9mE2LHYptmK2LPZitip2KfZhNin2YbYqtmC2KfZhNmF2LTYp9ix2YPYp9iq2YPYp9mE2LPZitin2LHYp9iq2KfZhNmF2YPYqtmI2KjYqdin2YTYs9i52YjYr9mK2KnYp9it2LXYp9im2YrYp9iq2KfZhNi52KfZhNmF2YrYqdin2YTYtdmI2KrZitin2KrYp9mE2KfZhtiq2LHZhtiq2KfZhNiq2LXYp9mF2YrZhdin2YTYpdiz2YTYp9mF2YrYp9mE2YXYtNin2LHZg9ip2KfZhNmF2LHYptmK2KfYqnJvYm90cyIgY29udGVudD0iPGRpdiBpZD0iZm9vdGVyIj50aGUgVW5pdGVkIFN0YXRlczxpbWcgc3JjPSJodHRwOi8vLmpwZ3xyaWdodHx0aHVtYnwuanMiPjwvc2NyaXB0Pg0KPGxvY2F0aW9uLnByb3RvY29sZnJhbWVib3JkZXI9IjAiIHMiIC8+CjxtZXRhIG5hbWU9IjwvYT48L2Rpdj48L2Rpdj48Zm9udC13ZWlnaHQ6Ym9sZDsmcXVvdDsgYW5kICZxdW90O2RlcGVuZGluZyBvbiB0aGUgbWFyZ2luOjA7cGFkZGluZzoiIHJlbD0ibm9mb2xsb3ciIFByZXNpZGVudCBvZiB0aGUgdHdlbnRpZXRoIGNlbnR1cnlldmlzaW9uPgogIDwvcGFnZUludGVybmV0IEV4cGxvcmVyYS5hc3luYyA9IHRydWU7DQppbmZvcm1hdGlvbiBhYm91dDxkaXYgaWQ9ImhlYWRlciI+IiBhY3Rpb249Imh0dHA6Ly88YSBocmVmPSJodHRwczovLzxkaXYgaWQ9ImNvbnRlbnQiPC9kaXY+DQo8L2Rpdj4NCjxkZXJpdmVkIGZyb20gdGhlIDxpbWcgc3JjPSdodHRwOi8vYWNjb3JkaW5nIHRvIHRoZSAKPC9ib2R5Pgo8L2h0bWw+CnN0eWxlPSJmb250LXNpemU6c2NyaXB0IGxhbmd1YWdlPSJBcmlhbCwgSGVsdmV0aWNhLDwvYT48c3BhbiBjbGFzcz0iPC9zY3JpcHQ+PHNjcmlwdCBwb2xpdGljYWwgcGFydGllc3RkPjwvdHI+PC90YWJsZT48aHJlZj0iaHR0cDovL3d3dy5pbnRlcnByZXRhdGlvbiBvZnJlbD0ic3R5bGVzaGVldCIgZG9jdW1lbnQud3JpdGUoJzxjaGFyc2V0PSJ1dGYtOCI+CmJlZ2lubmluZyBvZiB0aGUgcmV2ZWFsZWQgdGhhdCB0aGV0ZWxldmlzaW9uIHNlcmllcyIgcmVsPSJub2ZvbGxvdyI+IHRhcmdldD0iX2JsYW5rIj5jbGFpbWluZyB0aGF0IHRoZWh0dHAlM0ElMkYlMkZ3d3cubWFuaWZlc3RhdGlvbnMgb2ZQcmltZSBNaW5pc3RlciBvZmluZmx1ZW5jZWQgYnkgdGhlY2xhc3M9ImNsZWFyZml4Ij4vZGl2Pg0KPC9kaXY+DQoNCnRocmVlLWRpbWVuc2lvbmFsQ2h1cmNoIG9mIEVuZ2xhbmRvZiBOb3J0aCBDYXJvbGluYXNxdWFyZSBraWxvbWV0cmVzLmFkZEV2ZW50TGlzdGVuZXJkaXN0aW5jdCBmcm9tIHRoZWNvbW1vbmx5IGtub3duIGFzUGhvbmV0aWMgQWxwaGFiZXRkZWNsYXJlZCB0aGF0IHRoZWNvbnRyb2xsZWQgYnkgdGhlQmVuamFtaW4gRnJhbmtsaW5yb2xlLXBsYXlpbmcgZ2FtZXRoZSBVbml2ZXJzaXR5IG9maW4gV2VzdGVybiBFdXJvcGVwZXJzb25hbCBjb21wdXRlclByb2plY3QgR3V0ZW5iZXJncmVnYXJkbGVzcyBvZiB0aGVoYXMgYmVlbiBwcm9wb3NlZHRvZ2V0aGVyIHdpdGggdGhlPjwvbGk+PGxpIGNsYXNzPSJpbiBzb21lIGNvdW50cmllc21pbi5qcyI+PC9zY3JpcHQ+b2YgdGhlIHBvcHVsYXRpb25vZmZpY2lhbCBsYW5ndWFnZTxpbWcgc3JjPSJpbWFnZXMvaWRlbnRpZmllZCBieSB0aGVuYXR1cmFsIHJlc291cmNlc2NsYXNzaWZpY2F0aW9uIG9mY2FuIGJlIGNvbnNpZGVyZWRxdWFudHVtIG1lY2hhbmljc05ldmVydGhlbGVzcywgdGhlbWlsbGlvbiB5ZWFycyBhZ288L2JvZHk+DQo8L2h0bWw+Dc6VzrvOu863zr3Ouc66zqwKdGFrZSBhZHZhbnRhZ2Ugb2ZhbmQsIGFjY29yZGluZyB0b2F0dHJpYnV0ZWQgdG8gdGhlTWljcm9zb2Z0IFdpbmRvd3N0aGUgZmlyc3QgY2VudHVyeXVuZGVyIHRoZSBjb250cm9sZGl2IGNsYXNzPSJoZWFkZXJzaG9ydGx5IGFmdGVyIHRoZW5vdGFibGUgZXhjZXB0aW9udGVucyBvZiB0aG91c2FuZHNzZXZlcmFsIGRpZmZlcmVudGFyb3VuZCB0aGUgd29ybGQucmVhY2hpbmcgbWlsaXRhcnlpc29sYXRlZCBmcm9tIHRoZW9wcG9zaXRpb24gdG8gdGhldGhlIE9sZCBUZXN0YW1lbnRBZnJpY2FuIEFtZXJpY2Fuc2luc2VydGVkIGludG8gdGhlc2VwYXJhdGUgZnJvbSB0aGVtZXRyb3BvbGl0YW4gYXJlYW1ha2VzIGl0IHBvc3NpYmxlYWNrbm93bGVkZ2VkIHRoYXRhcmd1YWJseSB0aGUgbW9zdHR5cGU9InRleHQvY3NzIj4KdGhlIEludGVybmF0aW9uYWxBY2NvcmRpbmcgdG8gdGhlIHBlPSJ0ZXh0L2NzcyIgLz4KY29pbmNpZGUgd2l0aCB0aGV0d28tdGhpcmRzIG9mIHRoZUR1cmluZyB0aGlzIHRpbWUsZHVyaW5nIHRoZSBwZXJpb2Rhbm5vdW5jZWQgdGhhdCBoZXRoZSBpbnRlcm5hdGlvbmFsYW5kIG1vcmUgcmVjZW50bHliZWxpZXZlZCB0aGF0IHRoZWNvbnNjaW91c25lc3MgYW5kZm9ybWVybHkga25vd24gYXNzdXJyb3VuZGVkIGJ5IHRoZWZpcnN0IGFwcGVhcmVkIGlub2NjYXNpb25hbGx5IHVzZWRwb3NpdGlvbjphYnNvbHV0ZTsiIHRhcmdldD0iX2JsYW5rIiBwb3NpdGlvbjpyZWxhdGl2ZTt0ZXh0LWFsaWduOmNlbnRlcjtqYXgvbGlicy9qcXVlcnkvMS5iYWNrZ3JvdW5kLWNvbG9yOiN0eXBlPSJhcHBsaWNhdGlvbi9hbmd1YWdlIiBjb250ZW50PSI8bWV0YSBodHRwLWVxdWl2PSJQcml2YWN5IFBvbGljeTwvYT5lKCIlM0NzY3JpcHQgc3JjPSciIHRhcmdldD0iX2JsYW5rIj5PbiB0aGUgb3RoZXIgaGFuZCwuanBnfHRodW1ifHJpZ2h0fDI8L2Rpdj48ZGl2IGNsYXNzPSI8ZGl2IHN0eWxlPSJmbG9hdDpuaW5ldGVlbnRoIGNlbnR1cnk8L2JvZHk+DQo8L2h0bWw+DQo8aW1nIHNyYz0iaHR0cDovL3M7dGV4dC1hbGlnbjpjZW50ZXJmb250LXdlaWdodDogYm9sZDsgQWNjb3JkaW5nIHRvIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4iIGZyYW1lYm9yZGVyPSIwIiAiIHN0eWxlPSJwb3NpdGlvbjpsaW5rIGhyZWY9Imh0dHA6Ly9odG1sNC9sb29zZS5kdGQiPgpkdXJpbmcgdGhpcyBwZXJpb2Q8L3RkPjwvdHI+PC90YWJsZT5jbG9zZWx5IHJlbGF0ZWQgdG9mb3IgdGhlIGZpcnN0IHRpbWU7Zm9udC13ZWlnaHQ6Ym9sZDtpbnB1dCB0eXBlPSJ0ZXh0IiA8c3BhbiBzdHlsZT0iZm9udC1vbnJlYWR5c3RhdGVjaGFuZ2UJPGRpdiBjbGFzcz0iY2xlYXJkb2N1bWVudC5sb2NhdGlvbi4gRm9yIGV4YW1wbGUsIHRoZSBhIHdpZGUgdmFyaWV0eSBvZiA8IURPQ1RZUEUgaHRtbD4NCjwmbmJzcDsmbmJzcDsmbmJzcDsiPjxhIGhyZWY9Imh0dHA6Ly9zdHlsZT0iZmxvYXQ6bGVmdDtjb25jZXJuZWQgd2l0aCB0aGU9aHR0cCUzQSUyRiUyRnd3dy5pbiBwb3B1bGFyIGN1bHR1cmV0eXBlPSJ0ZXh0L2NzcyIgLz5pdCBpcyBwb3NzaWJsZSB0byBIYXJ2YXJkIFVuaXZlcnNpdHl0eWxlc2hlZXQiIGhyZWY9Ii90aGUgbWFpbiBjaGFyYWN0ZXJPeGZvcmQgVW5pdmVyc2l0eSAgbmFtZT0ia2V5d29yZHMiIGNzdHlsZT0idGV4dC1hbGlnbjp0aGUgVW5pdGVkIEtpbmdkb21mZWRlcmFsIGdvdmVybm1lbnQ8ZGl2IHN0eWxlPSJtYXJnaW4gZGVwZW5kaW5nIG9uIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGU8ZGl2IGNsYXNzPSJoZWFkZXIubWluLmpzIj48L3NjcmlwdD5kZXN0cnVjdGlvbiBvZiB0aGVzbGlnaHRseSBkaWZmZXJlbnRpbiBhY2NvcmRhbmNlIHdpdGh0ZWxlY29tbXVuaWNhdGlvbnNpbmRpY2F0ZXMgdGhhdCB0aGVzaG9ydGx5IHRoZXJlYWZ0ZXJlc3BlY2lhbGx5IGluIHRoZSBFdXJvcGVhbiBjb3VudHJpZXNIb3dldmVyLCB0aGVyZSBhcmVzcmM9Imh0dHA6Ly9zdGF0aWNzdWdnZXN0ZWQgdGhhdCB0aGUiIHNyYz0iaHR0cDovL3d3dy5hIGxhcmdlIG51bWJlciBvZiBUZWxlY29tbXVuaWNhdGlvbnMiIHJlbD0ibm9mb2xsb3ciIHRIb2x5IFJvbWFuIEVtcGVyb3JhbG1vc3QgZXhjbHVzaXZlbHkiIGJvcmRlcj0iMCIgYWx0PSJTZWNyZXRhcnkgb2YgU3RhdGVjdWxtaW5hdGluZyBpbiB0aGVDSUEgV29ybGQgRmFjdGJvb2t0aGUgbW9zdCBpbXBvcnRhbnRhbm5pdmVyc2FyeSBvZiB0aGVzdHlsZT0iYmFja2dyb3VuZC08bGk+PGVtPjxhIGhyZWY9Ii90aGUgQXRsYW50aWMgT2NlYW5zdHJpY3RseSBzcGVha2luZyxzaG9ydGx5IGJlZm9yZSB0aGVkaWZmZXJlbnQgdHlwZXMgb2Z0aGUgT3R0b21hbiBFbXBpcmU+PGltZyBzcmM9Imh0dHA6Ly9BbiBJbnRyb2R1Y3Rpb24gdG9jb25zZXF1ZW5jZSBvZiB0aGVkZXBhcnR1cmUgZnJvbSB0aGVDb25mZWRlcmF0ZSBTdGF0ZXNpbmRpZ2Vub3VzIHBlb3BsZXNQcm9jZWVkaW5ncyBvZiB0aGVpbmZvcm1hdGlvbiBvbiB0aGV0aGVvcmllcyBoYXZlIGJlZW5pbnZvbHZlbWVudCBpbiB0aGVkaXZpZGVkIGludG8gdGhyZWVhZGphY2VudCBjb3VudHJpZXNpcyByZXNwb25zaWJsZSBmb3JkaXNzb2x1dGlvbiBvZiB0aGVjb2xsYWJvcmF0aW9uIHdpdGh3aWRlbHkgcmVnYXJkZWQgYXNoaXMgY29udGVtcG9yYXJpZXNmb3VuZGluZyBtZW1iZXIgb2ZEb21pbmljYW4gUmVwdWJsaWNnZW5lcmFsbHkgYWNjZXB0ZWR0aGUgcG9zc2liaWxpdHkgb2ZhcmUgYWxzbyBhdmFpbGFibGV1bmRlciBjb25zdHJ1Y3Rpb25yZXN0b3JhdGlvbiBvZiB0aGV0aGUgZ2VuZXJhbCBwdWJsaWNpcyBhbG1vc3QgZW50aXJlbHlwYXNzZXMgdGhyb3VnaCB0aGVoYXMgYmVlbiBzdWdnZXN0ZWRjb21wdXRlciBhbmQgdmlkZW9HZXJtYW5pYyBsYW5ndWFnZXMgYWNjb3JkaW5nIHRvIHRoZSBkaWZmZXJlbnQgZnJvbSB0aGVzaG9ydGx5IGFmdGVyd2FyZHNocmVmPSJodHRwczovL3d3dy5yZWNlbnQgZGV2ZWxvcG1lbnRCb2FyZCBvZiBEaXJlY3RvcnM8ZGl2IGNsYXNzPSJzZWFyY2h8IDxhIGhyZWY9Imh0dHA6Ly9JbiBwYXJ0aWN1bGFyLCB0aGVNdWx0aXBsZSBmb290bm90ZXNvciBvdGhlciBzdWJzdGFuY2V0aG91c2FuZHMgb2YgeWVhcnN0cmFuc2xhdGlvbiBvZiB0aGU8L2Rpdj4NCjwvZGl2Pg0KDQo8YSBocmVmPSJpbmRleC5waHB3YXMgZXN0YWJsaXNoZWQgaW5taW4uanMiPjwvc2NyaXB0PgpwYXJ0aWNpcGF0ZSBpbiB0aGVhIHN0cm9uZyBpbmZsdWVuY2VzdHlsZT0ibWFyZ2luLXRvcDpyZXByZXNlbnRlZCBieSB0aGVncmFkdWF0ZWQgZnJvbSB0aGVUcmFkaXRpb25hbGx5LCB0aGVFbGVtZW50KCJzY3JpcHQiKTtIb3dldmVyLCBzaW5jZSB0aGUvZGl2Pgo8L2Rpdj4KPGRpdiBsZWZ0OyBtYXJnaW4tbGVmdDpwcm90ZWN0aW9uIGFnYWluc3QwOyB2ZXJ0aWNhbC1hbGlnbjpVbmZvcnR1bmF0ZWx5LCB0aGV0eXBlPSJpbWFnZS94LWljb24vZGl2Pgo8ZGl2IGNsYXNzPSIgY2xhc3M9ImNsZWFyZml4Ij48ZGl2IGNsYXNzPSJmb290ZXIJCTwvZGl2PgoJCTwvZGl2Pgp0aGUgbW90aW9uIHBpY3R1cmXQkdGK0LvQs9Cw0YDRgdC60LjQsdGK0LvQs9Cw0YDRgdC60LjQpNC10LTQtdGA0LDRhtC40LjQvdC10YHQutC+0LvRjNC60L7RgdC+0L7QsdGJ0LXQvdC40LXRgdC+0L7QsdGJ0LXQvdC40Y/Qv9GA0L7Qs9GA0LDQvNC80YvQntGC0L/RgNCw0LLQuNGC0YzQsdC10YHQv9C70LDRgtC90L7QvNCw0YLQtdGA0LjQsNC70YvQv9C+0LfQstC+0LvRj9C10YLQv9C+0YHQu9C10LTQvdC40LXRgNCw0LfQu9C40YfQvdGL0YXQv9GA0L7QtNGD0LrRhtC40LjQv9GA0L7Qs9GA0LDQvNC80LDQv9C+0LvQvdC+0YHRgtGM0Y7QvdCw0YXQvtC00LjRgtGB0Y/QuNC30LHRgNCw0L3QvdC+0LXQvdCw0YHQtdC70LXQvdC40Y/QuNC30LzQtdC90LXQvdC40Y/QutCw0YLQtdCz0L7RgNC40LjQkNC70LXQutGB0LDQvdC00YDgpKbgpY3gpLXgpL7gpLDgpL7gpK7gpYjgpKjgpYHgpIXgpLLgpKrgpY3gpLDgpKbgpL7gpKjgpK3gpL7gpLDgpKTgpYDgpK/gpIXgpKjgpYHgpKbgpYfgpLbgpLngpL/gpKjgpY3gpKbgpYDgpIfgpILgpKHgpL/gpK/gpL7gpKbgpL/gpLLgpY3gpLLgpYDgpIXgpKfgpL/gpJXgpL7gpLDgpLXgpYDgpKHgpL/gpK/gpYvgpJrgpL/gpJ/gpY3gpKDgpYfgpLjgpK7gpL7gpJrgpL7gpLDgpJzgpILgpJXgpY3gpLbgpKjgpKbgpYHgpKjgpL/gpK/gpL7gpKrgpY3gpLDgpK/gpYvgpJfgpIXgpKjgpYHgpLjgpL7gpLDgpJHgpKjgpLLgpL7gpIfgpKjgpKrgpL7gpLDgpY3gpJ/gpYDgpLbgpLDgpY3gpKTgpYvgpILgpLLgpYvgpJXgpLjgpK3gpL7gpKvgpLzgpY3gpLLgpYjgpLbgpLbgpLDgpY3gpKTgpYfgpILgpKrgpY3gpLDgpKbgpYfgpLbgpKrgpY3gpLLgpYfgpK/gpLDgpJXgpYfgpILgpKbgpY3gpLDgpLjgpY3gpKXgpL/gpKTgpL/gpIngpKTgpY3gpKrgpL7gpKbgpIngpKjgpY3gpLngpYfgpILgpJrgpL/gpJ/gpY3gpKDgpL7gpK/gpL7gpKTgpY3gpLDgpL7gpJzgpY3gpK/gpL7gpKbgpL7gpKrgpYHgpLDgpL7gpKjgpYfgpJzgpYvgpKHgpLzgpYfgpILgpIXgpKjgpYHgpLXgpL7gpKbgpLbgpY3gpLDgpYfgpKPgpYDgpLbgpL/gpJXgpY3gpLfgpL7gpLjgpLDgpJXgpL7gpLDgpYDgpLjgpILgpJfgpY3gpLDgpLngpKrgpLDgpL/gpKPgpL7gpK7gpKzgpY3gpLDgpL7gpILgpKHgpKzgpJrgpY3gpJrgpYvgpILgpIngpKrgpLLgpKzgpY3gpKfgpK7gpILgpKTgpY3gpLDgpYDgpLjgpILgpKrgpLDgpY3gpJXgpIngpK7gpY3gpK7gpYDgpKbgpK7gpL7gpKfgpY3gpK/gpK7gpLjgpLngpL7gpK/gpKTgpL7gpLbgpKzgpY3gpKbgpYvgpILgpK7gpYDgpKHgpL/gpK/gpL7gpIbgpIjgpKrgpYDgpI/gpLLgpK7gpYvgpKzgpL7gpIfgpLLgpLjgpILgpJbgpY3gpK/gpL7gpIbgpKrgpLDgpYfgpLbgpKjgpIXgpKjgpYHgpKzgpILgpKfgpKzgpL7gpJzgpLzgpL7gpLDgpKjgpLXgpYDgpKjgpKTgpK7gpKrgpY3gpLDgpK7gpYHgpJbgpKrgpY3gpLDgpLbgpY3gpKjgpKrgpLDgpL/gpLXgpL7gpLDgpKjgpYHgpJXgpLjgpL7gpKjgpLjgpK7gpLDgpY3gpKXgpKjgpIbgpK/gpYvgpJzgpL/gpKTgpLjgpYvgpK7gpLXgpL7gpLDYp9mE2YXYtNin2LHZg9in2KrYp9mE2YXZhtiq2K/Zitin2KrYp9mE2YPZhdio2YrZiNiq2LHYp9mE2YXYtNin2YfYr9in2KrYudiv2K/Yp9mE2LLZiNin2LHYudiv2K/Yp9mE2LHYr9mI2K/Yp9mE2KXYs9mE2KfZhdmK2KnYp9mE2YHZiNiq2YjYtNmI2KjYp9mE2YXYs9in2KjZgtin2KrYp9mE2YXYudmE2YjZhdin2KrYp9mE2YXYs9mE2LPZhNin2KrYp9mE2KzYsdin2YHZitmD2LPYp9mE2KfYs9mE2KfZhdmK2KnYp9mE2KfYqti12KfZhNin2KprZXl3b3JkcyIgY29udGVudD0idzMub3JnLzE5OTkveGh0bWwiPjxhIHRhcmdldD0iX2JsYW5rIiB0ZXh0L2h0bWw7IGNoYXJzZXQ9IiB0YXJnZXQ9Il9ibGFuayI+PHRhYmxlIGNlbGxwYWRkaW5nPSJhdXRvY29tcGxldGU9Im9mZiIgdGV4dC1hbGlnbjogY2VudGVyO3RvIGxhc3QgdmVyc2lvbiBieSBiYWNrZ3JvdW5kLWNvbG9yOiAjIiBocmVmPSJodHRwOi8vd3d3Li9kaXY+PC9kaXY+PGRpdiBpZD08YSBocmVmPSIjIiBjbGFzcz0iIj48aW1nIHNyYz0iaHR0cDovL2NyaXB0IiBzcmM9Imh0dHA6Ly8KPHNjcmlwdCBsYW5ndWFnZT0iLy9FTiIgImh0dHA6Ly93d3cud2VuY29kZVVSSUNvbXBvbmVudCgiIGhyZWY9ImphdmFzY3JpcHQ6PGRpdiBjbGFzcz0iY29udGVudGRvY3VtZW50LndyaXRlKCc8c2Nwb3NpdGlvbjogYWJzb2x1dGU7c2NyaXB0IHNyYz0iaHR0cDovLyBzdHlsZT0ibWFyZ2luLXRvcDoubWluLmpzIj48L3NjcmlwdD4KPC9kaXY+CjxkaXYgY2xhc3M9InczLm9yZy8xOTk5L3hodG1sIiAKDQo8L2JvZHk+DQo8L2h0bWw+ZGlzdGluY3Rpb24gYmV0d2Vlbi8iIHRhcmdldD0iX2JsYW5rIj48bGluayBocmVmPSJodHRwOi8vZW5jb2Rpbmc9InV0Zi04Ij8+CncuYWRkRXZlbnRMaXN0ZW5lcj9hY3Rpb249Imh0dHA6Ly93d3cuaWNvbiIgaHJlZj0iaHR0cDovLyBzdHlsZT0iYmFja2dyb3VuZDp0eXBlPSJ0ZXh0L2NzcyIgLz4KbWV0YSBwcm9wZXJ0eT0ib2c6dDxpbnB1dCB0eXBlPSJ0ZXh0IiAgc3R5bGU9InRleHQtYWxpZ246dGhlIGRldmVsb3BtZW50IG9mIHR5bGVzaGVldCIgdHlwZT0idGVodG1sOyBjaGFyc2V0PXV0Zi04aXMgY29uc2lkZXJlZCB0byBiZXRhYmxlIHdpZHRoPSIxMDAlIiBJbiBhZGRpdGlvbiB0byB0aGUgY29udHJpYnV0ZWQgdG8gdGhlIGRpZmZlcmVuY2VzIGJldHdlZW5kZXZlbG9wbWVudCBvZiB0aGUgSXQgaXMgaW1wb3J0YW50IHRvIDwvc2NyaXB0PgoKPHNjcmlwdCAgc3R5bGU9ImZvbnQtc2l6ZToxPjwvc3Bhbj48c3BhbiBpZD1nYkxpYnJhcnkgb2YgQ29uZ3Jlc3M8aW1nIHNyYz0iaHR0cDovL2ltRW5nbGlzaCB0cmFuc2xhdGlvbkFjYWRlbXkgb2YgU2NpZW5jZXNkaXYgc3R5bGU9ImRpc3BsYXk6Y29uc3RydWN0aW9uIG9mIHRoZS5nZXRFbGVtZW50QnlJZChpZClpbiBjb25qdW5jdGlvbiB3aXRoRWxlbWVudCgnc2NyaXB0Jyk7IDxtZXRhIHByb3BlcnR5PSJvZzrQkdGK0LvQs9Cw0YDRgdC60LgKIHR5cGU9InRleHQiIG5hbWU9Ij5Qcml2YWN5IFBvbGljeTwvYT5hZG1pbmlzdGVyZWQgYnkgdGhlZW5hYmxlU2luZ2xlUmVxdWVzdHN0eWxlPSZxdW90O21hcmdpbjo8L2Rpdj48L2Rpdj48L2Rpdj48PjxpbWcgc3JjPSJodHRwOi8vaSBzdHlsZT0mcXVvdDtmbG9hdDpyZWZlcnJlZCB0byBhcyB0aGUgdG90YWwgcG9wdWxhdGlvbiBvZmluIFdhc2hpbmd0b24sIEQuQy4gc3R5bGU9ImJhY2tncm91bmQtYW1vbmcgb3RoZXIgdGhpbmdzLG9yZ2FuaXphdGlvbiBvZiB0aGVwYXJ0aWNpcGF0ZWQgaW4gdGhldGhlIGludHJvZHVjdGlvbiBvZmlkZW50aWZpZWQgd2l0aCB0aGVmaWN0aW9uYWwgY2hhcmFjdGVyIE94Zm9yZCBVbml2ZXJzaXR5IG1pc3VuZGVyc3RhbmRpbmcgb2ZUaGVyZSBhcmUsIGhvd2V2ZXIsc3R5bGVzaGVldCIgaHJlZj0iL0NvbHVtYmlhIFVuaXZlcnNpdHlleHBhbmRlZCB0byBpbmNsdWRldXN1YWxseSByZWZlcnJlZCB0b2luZGljYXRpbmcgdGhhdCB0aGVoYXZlIHN1Z2dlc3RlZCB0aGF0YWZmaWxpYXRlZCB3aXRoIHRoZWNvcnJlbGF0aW9uIGJldHdlZW5udW1iZXIgb2YgZGlmZmVyZW50PjwvdGQ+PC90cj48L3RhYmxlPlJlcHVibGljIG9mIElyZWxhbmQKPC9zY3JpcHQ+CjxzY3JpcHQgdW5kZXIgdGhlIGluZmx1ZW5jZWNvbnRyaWJ1dGlvbiB0byB0aGVPZmZpY2lhbCB3ZWJzaXRlIG9maGVhZHF1YXJ0ZXJzIG9mIHRoZWNlbnRlcmVkIGFyb3VuZCB0aGVpbXBsaWNhdGlvbnMgb2YgdGhlaGF2ZSBiZWVuIGRldmVsb3BlZEZlZGVyYWwgUmVwdWJsaWMgb2ZiZWNhbWUgaW5jcmVhc2luZ2x5Y29udGludWF0aW9uIG9mIHRoZU5vdGUsIGhvd2V2ZXIsIHRoYXRzaW1pbGFyIHRvIHRoYXQgb2YgY2FwYWJpbGl0aWVzIG9mIHRoZWFjY29yZGFuY2Ugd2l0aCB0aGVwYXJ0aWNpcGFudHMgaW4gdGhlZnVydGhlciBkZXZlbG9wbWVudHVuZGVyIHRoZSBkaXJlY3Rpb25pcyBvZnRlbiBjb25zaWRlcmVkaGlzIHlvdW5nZXIgYnJvdGhlcjwvdGQ+PC90cj48L3RhYmxlPjxhIGh0dHAtZXF1aXY9IlgtVUEtcGh5c2ljYWwgcHJvcGVydGllc29mIEJyaXRpc2ggQ29sdW1iaWFoYXMgYmVlbiBjcml0aWNpemVkKHdpdGggdGhlIGV4Y2VwdGlvbnF1ZXN0aW9ucyBhYm91dCB0aGVwYXNzaW5nIHRocm91Z2ggdGhlMCIgY2VsbHBhZGRpbmc9IjAiIHRob3VzYW5kcyBvZiBwZW9wbGVyZWRpcmVjdHMgaGVyZS4gRm9yaGF2ZSBjaGlsZHJlbiB1bmRlciUzRSUzQy9zY3JpcHQlM0UiKSk7PGEgaHJlZj0iaHR0cDovL3d3dy48bGk+PGEgaHJlZj0iaHR0cDovL3NpdGVfbmFtZSIgY29udGVudD0idGV4dC1kZWNvcmF0aW9uOm5vbmVzdHlsZT0iZGlzcGxheTogbm9uZTxtZXRhIGh0dHAtZXF1aXY9IlgtbmV3IERhdGUoKS5nZXRUaW1lKCkgdHlwZT0iaW1hZ2UveC1pY29uIjwvc3Bhbj48c3BhbiBjbGFzcz0ibGFuZ3VhZ2U9ImphdmFzY3JpcHR3aW5kb3cubG9jYXRpb24uaHJlZjxhIGhyZWY9ImphdmFzY3JpcHQ6LS0+DQo8c2NyaXB0IHR5cGU9InQ8YSBocmVmPSdodHRwOi8vd3d3LmhvcnRjdXQgaWNvbiIgaHJlZj0iPC9kaXY+DQo8ZGl2IGNsYXNzPSI8c2NyaXB0IHNyYz0iaHR0cDovLyIgcmVsPSJzdHlsZXNoZWV0IiB0PC9kaXY+CjxzY3JpcHQgdHlwZT0vYT4gPGEgaHJlZj0iaHR0cDovLyBhbGxvd1RyYW5zcGFyZW5jeT0iWC1VQS1Db21wYXRpYmxlIiBjb25yZWxhdGlvbnNoaXAgYmV0d2Vlbgo8L3NjcmlwdD4NCjxzY3JpcHQgPC9hPjwvbGk+PC91bD48L2Rpdj5hc3NvY2lhdGVkIHdpdGggdGhlIHByb2dyYW1taW5nIGxhbmd1YWdlPC9hPjxhIGhyZWY9Imh0dHA6Ly88L2E+PC9saT48bGkgY2xhc3M9ImZvcm0gYWN0aW9uPSJodHRwOi8vPGRpdiBzdHlsZT0iZGlzcGxheTp0eXBlPSJ0ZXh0IiBuYW1lPSJxIjx0YWJsZSB3aWR0aD0iMTAwJSIgYmFja2dyb3VuZC1wb3NpdGlvbjoiIGJvcmRlcj0iMCIgd2lkdGg9InJlbD0ic2hvcnRjdXQgaWNvbiIgaDY+PHVsPjxsaT48YSBocmVmPSIgIDxtZXRhIGh0dHAtZXF1aXY9ImNzcyIgbWVkaWE9InNjcmVlbiIgcmVzcG9uc2libGUgZm9yIHRoZSAiIHR5cGU9ImFwcGxpY2F0aW9uLyIgc3R5bGU9ImJhY2tncm91bmQtaHRtbDsgY2hhcnNldD11dGYtOCIgYWxsb3d0cmFuc3BhcmVuY3k9InN0eWxlc2hlZXQiIHR5cGU9InRlDQo8bWV0YSBodHRwLWVxdWl2PSI+PC9zcGFuPjxzcGFuIGNsYXNzPSIwIiBjZWxsc3BhY2luZz0iMCI+Owo8L3NjcmlwdD4KPHNjcmlwdCBzb21ldGltZXMgY2FsbGVkIHRoZWRvZXMgbm90IG5lY2Vzc2FyaWx5Rm9yIG1vcmUgaW5mb3JtYXRpb25hdCB0aGUgYmVnaW5uaW5nIG9mIDwhRE9DVFlQRSBodG1sPjxodG1scGFydGljdWxhcmx5IGluIHRoZSB0eXBlPSJoaWRkZW4iIG5hbWU9ImphdmFzY3JpcHQ6dm9pZCgwKTsiZWZmZWN0aXZlbmVzcyBvZiB0aGUgYXV0b2NvbXBsZXRlPSJvZmYiIGdlbmVyYWxseSBjb25zaWRlcmVkPjxpbnB1dCB0eXBlPSJ0ZXh0IiAiPjwvc2NyaXB0Pg0KPHNjcmlwdHRocm91Z2hvdXQgdGhlIHdvcmxkY29tbW9uIG1pc2NvbmNlcHRpb25hc3NvY2lhdGlvbiB3aXRoIHRoZTwvZGl2Pgo8L2Rpdj4KPGRpdiBjZHVyaW5nIGhpcyBsaWZldGltZSxjb3JyZXNwb25kaW5nIHRvIHRoZXR5cGU9ImltYWdlL3gtaWNvbiIgYW4gaW5jcmVhc2luZyBudW1iZXJkaXBsb21hdGljIHJlbGF0aW9uc2FyZSBvZnRlbiBjb25zaWRlcmVkbWV0YSBjaGFyc2V0PSJ1dGYtOCIgPGlucHV0IHR5cGU9InRleHQiIGV4YW1wbGVzIGluY2x1ZGUgdGhlIj48aW1nIHNyYz0iaHR0cDovL2lwYXJ0aWNpcGF0aW9uIGluIHRoZXRoZSBlc3RhYmxpc2htZW50IG9mCjwvZGl2Pgo8ZGl2IGNsYXNzPSImYW1wO25ic3A7JmFtcDtuYnNwO3RvIGRldGVybWluZSB3aGV0aGVycXVpdGUgZGlmZmVyZW50IGZyb21tYXJrZWQgdGhlIGJlZ2lubmluZ2Rpc3RhbmNlIGJldHdlZW4gdGhlY29udHJpYnV0aW9ucyB0byB0aGVjb25mbGljdCBiZXR3ZWVuIHRoZXdpZGVseSBjb25zaWRlcmVkIHRvd2FzIG9uZSBvZiB0aGUgZmlyc3R3aXRoIHZhcnlpbmcgZGVncmVlc2hhdmUgc3BlY3VsYXRlZCB0aGF0KGRvY3VtZW50LmdldEVsZW1lbnRwYXJ0aWNpcGF0aW5nIGluIHRoZW9yaWdpbmFsbHkgZGV2ZWxvcGVkZXRhIGNoYXJzZXQ9InV0Zi04Ij4gdHlwZT0idGV4dC9jc3MiIC8+CmludGVyY2hhbmdlYWJseSB3aXRobW9yZSBjbG9zZWx5IHJlbGF0ZWRzb2NpYWwgYW5kIHBvbGl0aWNhbHRoYXQgd291bGQgb3RoZXJ3aXNlcGVycGVuZGljdWxhciB0byB0aGVzdHlsZSB0eXBlPSJ0ZXh0L2Nzc3R5cGU9InN1Ym1pdCIgbmFtZT0iZmFtaWxpZXMgcmVzaWRpbmcgaW5kZXZlbG9waW5nIGNvdW50cmllc2NvbXB1dGVyIHByb2dyYW1taW5nZWNvbm9taWMgZGV2ZWxvcG1lbnRkZXRlcm1pbmF0aW9uIG9mIHRoZWZvciBtb3JlIGluZm9ybWF0aW9ub24gc2V2ZXJhbCBvY2Nhc2lvbnNwb3J0dWd1w6pzIChFdXJvcGV1KdCj0LrRgNCw0ZfQvdGB0YzQutCw0YPQutGA0LDRl9C90YHRjNC60LDQoNC+0YHRgdC40LnRgdC60L7QudC80LDRgtC10YDQuNCw0LvQvtCy0LjQvdGE0L7RgNC80LDRhtC40LjRg9C/0YDQsNCy0LvQtdC90LjRj9C90LXQvtCx0YXQvtC00LjQvNC+0LjQvdGE0L7RgNC80LDRhtC40Y/QmNC90YTQvtGA0LzQsNGG0LjRj9Cg0LXRgdC/0YPQsdC70LjQutC40LrQvtC70LjRh9C10YHRgtCy0L7QuNC90YTQvtGA0LzQsNGG0LjRjtGC0LXRgNGA0LjRgtC+0YDQuNC40LTQvtGB0YLQsNGC0L7Rh9C90L7Yp9mE2YXYqtmI2KfYrNiv2YjZhtin2YTYp9i02KrYsdin2YPYp9iq2KfZhNin2YLYqtix2KfYrdin2KpodG1sOyBjaGFyc2V0PVVURi04IiBzZXRUaW1lb3V0KGZ1bmN0aW9uKClkaXNwbGF5OmlubGluZS1ibG9jazs8aW5wdXQgdHlwZT0ic3VibWl0IiB0eXBlID0gJ3RleHQvamF2YXNjcmk8aW1nIHNyYz0iaHR0cDovL3d3dy4iICJodHRwOi8vd3d3LnczLm9yZy9zaG9ydGN1dCBpY29uIiBocmVmPSIiIGF1dG9jb21wbGV0ZT0ib2ZmIiA8L2E+PC9kaXY+PGRpdiBjbGFzcz08L2E+PC9saT4KPGxpIGNsYXNzPSJjc3MiIHR5cGU9InRleHQvY3NzIiA8Zm9ybSBhY3Rpb249Imh0dHA6Ly94dC9jc3MiIGhyZWY9Imh0dHA6Ly9saW5rIHJlbD0iYWx0ZXJuYXRlIiANCjxzY3JpcHQgdHlwZT0idGV4dC8gb25jbGljaz0iamF2YXNjcmlwdDoobmV3IERhdGUpLmdldFRpbWUoKX1oZWlnaHQ9IjEiIHdpZHRoPSIxIiBQZW9wbGUncyBSZXB1YmxpYyBvZiAgPGEgaHJlZj0iaHR0cDovL3d3dy50ZXh0LWRlY29yYXRpb246dW5kZXJ0aGUgYmVnaW5uaW5nIG9mIHRoZSA8L2Rpdj4KPC9kaXY+CjwvZGl2Pgplc3RhYmxpc2htZW50IG9mIHRoZSA8L2Rpdj48L2Rpdj48L2Rpdj48L2Qjdmlld3BvcnR7bWluLWhlaWdodDoKPHNjcmlwdCBzcmM9Imh0dHA6Ly9vcHRpb24+PG9wdGlvbiB2YWx1ZT1vZnRlbiByZWZlcnJlZCB0byBhcyAvb3B0aW9uPgo8b3B0aW9uIHZhbHU8IURPQ1RZUEUgaHRtbD4KPCEtLVtJbnRlcm5hdGlvbmFsIEFpcnBvcnQ+CjxhIGhyZWY9Imh0dHA6Ly93d3c8L2E+PGEgaHJlZj0iaHR0cDovL3fguKDguLLguKnguLLguYTguJfguKLhg6Xhg5Dhg6Dhg5fhg6Phg5rhg5jmraPpq5TkuK3mlocgKOe5gemrlCngpKjgpL/gpLDgpY3gpKbgpYfgpLbgpKHgpL7gpIngpKjgpLLgpYvgpKHgpJXgpY3gpLfgpYfgpKTgpY3gpLDgpJzgpL7gpKjgpJXgpL7gpLDgpYDgpLjgpILgpKzgpILgpKfgpL/gpKTgpLjgpY3gpKXgpL7gpKrgpKjgpL7gpLjgpY3gpLXgpYDgpJXgpL7gpLDgpLjgpILgpLjgpY3gpJXgpLDgpKPgpLjgpL7gpK7gpJfgpY3gpLDgpYDgpJrgpL/gpJ/gpY3gpKDgpYvgpILgpLXgpL/gpJzgpY3gpJ7gpL7gpKjgpIXgpK7gpYfgpLDgpL/gpJXgpL7gpLXgpL/gpK3gpL/gpKjgpY3gpKjgpJfgpL7gpKHgpL/gpK/gpL7gpIHgpJXgpY3gpK/gpYvgpILgpJXgpL/gpLjgpYHgpLDgpJXgpY3gpLfgpL7gpKrgpLngpYHgpIHgpJrgpKTgpYDgpKrgpY3gpLDgpKzgpILgpKfgpKjgpJ/gpL/gpKrgpY3gpKrgpKPgpYDgpJXgpY3gpLDgpL/gpJXgpYfgpJ/gpKrgpY3gpLDgpL7gpLDgpILgpK3gpKrgpY3gpLDgpL7gpKrgpY3gpKTgpK7gpL7gpLLgpL/gpJXgpYvgpILgpLDgpKvgpLzgpY3gpKTgpL7gpLDgpKjgpL/gpLDgpY3gpK7gpL7gpKPgpLLgpL/gpK7gpL/gpJ/gpYfgpKFkZXNjcmlwdGlvbiIgY29udGVudD0iZG9jdW1lbnQubG9jYXRpb24ucHJvdC5nZXRFbGVtZW50c0J5VGFnTmFtZSg8IURPQ1RZUEUgaHRtbD4KPGh0bWwgPG1ldGEgY2hhcnNldD0idXRmLTgiPjp1cmwiIGNvbnRlbnQ9Imh0dHA6Ly8uY3NzIiByZWw9InN0eWxlc2hlZXQic3R5bGUgdHlwZT0idGV4dC9jc3MiPnR5cGU9InRleHQvY3NzIiBocmVmPSJ3My5vcmcvMTk5OS94aHRtbCIgeG1sdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBtZXRob2Q9ImdldCIgYWN0aW9uPSJsaW5rIHJlbD0ic3R5bGVzaGVldCIgID0gZG9jdW1lbnQuZ2V0RWxlbWVudHR5cGU9ImltYWdlL3gtaWNvbiIgLz5jZWxscGFkZGluZz0iMCIgY2VsbHNwLmNzcyIgdHlwZT0idGV4dC9jc3MiIDwvYT48L2xpPjxsaT48YSBocmVmPSIiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIj48YSBocmVmPSJodHRwOi8vd3d3LnN0eWxlPSJkaXNwbGF5Om5vbmU7Ij5hbHRlcm5hdGUiIHR5cGU9ImFwcGxpLS8vVzNDLy9EVEQgWEhUTUwgMS4wIGVsbHNwYWNpbmc9IjAiIGNlbGxwYWQgdHlwZT0iaGlkZGVuIiB2YWx1ZT0iL2E+Jm5ic3A7PHNwYW4gcm9sZT0icwo8aW5wdXQgdHlwZT0iaGlkZGVuIiBsYW5ndWFnZT0iSmF2YVNjcmlwdCIgIGRvY3VtZW50LmdldEVsZW1lbnRzQmc9IjAiIGNlbGxzcGFjaW5nPSIwIiB5cGU9InRleHQvY3NzIiBtZWRpYT0idHlwZT0ndGV4dC9qYXZhc2NyaXB0J3dpdGggdGhlIGV4Y2VwdGlvbiBvZiB5cGU9InRleHQvY3NzIiByZWw9InN0IGhlaWdodD0iMSIgd2lkdGg9IjEiID0nK2VuY29kZVVSSUNvbXBvbmVudCg8bGluayByZWw9ImFsdGVybmF0ZSIgCmJvZHksIHRyLCBpbnB1dCwgdGV4dG1ldGEgbmFtZT0icm9ib3RzIiBjb25tZXRob2Q9InBvc3QiIGFjdGlvbj0iPgo8YSBocmVmPSJodHRwOi8vd3d3LmNzcyIgcmVsPSJzdHlsZXNoZWV0IiA8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzbGFuZ3VhZ2U9ImphdmFzY3JpcHQiPmFyaWEtaGlkZGVuPSJ0cnVlIj7CtzxyaXB0IiB0eXBlPSJ0ZXh0L2phdmFzbD0wO30pKCk7CihmdW5jdGlvbigpe2JhY2tncm91bmQtaW1hZ2U6IHVybCgvYT48L2xpPjxsaT48YSBocmVmPSJoCQk8bGk+PGEgaHJlZj0iaHR0cDovL2F0b3IiIGFyaWEtaGlkZGVuPSJ0cnU+IDxhIGhyZWY9Imh0dHA6Ly93d3cubGFuZ3VhZ2U9ImphdmFzY3JpcHQiIC9vcHRpb24+CjxvcHRpb24gdmFsdWUvZGl2PjwvZGl2PjxkaXYgY2xhc3M9cmF0b3IiIGFyaWEtaGlkZGVuPSJ0cmU9KG5ldyBEYXRlKS5nZXRUaW1lKClwb3J0dWd1w6pzIChkbyBCcmFzaWwp0L7RgNCz0LDQvdC40LfQsNGG0LjQuNCy0L7Qt9C80L7QttC90L7RgdGC0YzQvtCx0YDQsNC30L7QstCw0L3QuNGP0YDQtdCz0LjRgdGC0YDQsNGG0LjQuNCy0L7Qt9C80L7QttC90L7RgdGC0LjQvtCx0Y/Qt9Cw0YLQtdC70YzQvdCwPCFET0NUWVBFIGh0bWwgUFVCTElDICJudC1UeXBlIiBjb250ZW50PSJ0ZXh0LzxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlcmFuc2l0aW9uYWwvL0VOIiAiaHR0cDo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy0vL1czQy8vRFREIFhIVE1MIDEuMCBURFREL3hodG1sMS10cmFuc2l0aW9uYWwvL3d3dy53My5vcmcvVFIveGh0bWwxL3BlID0gJ3RleHQvamF2YXNjcmlwdCc7PG1ldGEgbmFtZT0iZGVzY3JpcHRpb25wYXJlbnROb2RlLmluc2VydEJlZm9yZTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hanMiIHR5cGU9InRleHQvamF2YXNjcmkoZG9jdW1lbnQpLnJlYWR5KGZ1bmN0aXNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzaW1hZ2UiIGNvbnRlbnQ9Imh0dHA6Ly9VQS1Db21wYXRpYmxlIiBjb250ZW50PXRtbDsgY2hhcnNldD11dGYtOCIgLz4KbGluayByZWw9InNob3J0Y3V0IGljb248bGluayByZWw9InN0eWxlc2hlZXQiIDwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9PSBkb2N1bWVudC5jcmVhdGVFbGVtZW48YSB0YXJnZXQ9Il9ibGFuayIgaHJlZj0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCaW5wdXQgdHlwZT0idGV4dCIgbmFtZT1hLnR5cGUgPSAndGV4dC9qYXZhc2NyaW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1laHRtbDsgY2hhcnNldD11dGYtOCIgLz5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cC0vL1czQy8vRFREIEhUTUwgNC4wMSBUZW50c0J5VGFnTmFtZSgnc2NyaXB0JylpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhcyIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCcgdHlwZT0ndGV4dC9qYXZhc2NyaXB0J2lucHV0IHR5cGU9InRleHQiIG5hbWU9ImQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoc25pY2FsIiBocmVmPSJodHRwOi8vd3d3LkMvL0RURCBIVE1MIDQuMDEgVHJhbnNpdDxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPmlvbmFsLmR0ZCI+CjxodG1sIHhtbG5zPWh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZWRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwImh0bWw7IGNoYXJzZXQ9dXRmLTgiIC8+CiBzdHlsZT0iZGlzcGxheTpub25lOyI+PDxsaT48YSBocmVmPSJodHRwOi8vd3d3LiB0eXBlPSd0ZXh0L2phdmFzY3JpcHQnPtC00LXRj9GC0LXQu9GM0L3QvtGB0YLQuNGB0L7QvtGC0LLQtdGC0YHRgtCy0LjQuNC/0YDQvtC40LfQstC+0LTRgdGC0LLQsNCx0LXQt9C+0L/QsNGB0L3QvtGB0YLQuOCkquClgeCkuOCljeCkpOCkv+CkleCkvuCkleCkvuCkguCkl+CljeCksOClh+CkuOCkieCkqOCljeCkueCli+CkguCkqOClh+CkteCkv+Ckp+CkvuCkqOCkuOCkreCkvuCkq+Ckv+CkleCljeCkuOCkv+CkguCkl+CkuOClgeCksOCkleCljeCkt+Ckv+CkpOCkleClieCkquClgOCksOCkvuCkh+Ckn+CkteCkv+CknOCljeCknuCkvuCkquCkqOCkleCkvuCksOCljeCksOCkteCkvuCkiOCkuOCkleCljeCksOCkv+Ckr+CkpOCkvgEgAiwgCCBvZiB0aGUgBCBvZiACcyABLgUgYW5kIAQgaW4gASIEIHRvIAIiPgEKAi4gAV0FIGZvciADIGEgBiB0aGF0IAEnBiB3aXRoIAYgZnJvbSAEIGJ5IAEoBi4gVGhlIAQgb24gBCBhcyAEIGlzIARpbmcgAgoJAToDZWQgAj0iBCBhdCADbHkgASwCPScFLmNvbS8HLiBUaGlzIAUgbm90IANlciADYWwgBGZ1bCAEaXZlIAVsZXNzIARlc3QgBGl6ZSACwqAEb3VzIAUgdGhlIAJlIABBsvwHC2ECAAUADgATABYAGAAeACMAJQAqAC0ALwAyADQAOgA+AEUARwBOAFUAWgBcAGMAaABtAHIAdwB6AHwAgACDAIgAjACOAJEAlwCfAKUAqQCtALIAtwC9AMIAxwDKAM8A1QDYAEGg/QcL8gIxADExAAAAAAAxDDExCgAxAC8AADEEAAAxAAMxCjExAAYxDTExATEBAAAxAAEACgAxAAcxAAkwAAAxAAgxAAUxAAoxAAsxAzExAA0xAA4xDjExAjExAA8xABAACjExAAwFADEAAAExDzExABIxABExABMxABQxEDExETEvADExBDExABYxCzExABcxABgxABkxBzExARoxABsxABwAAAwxAB0xFDExEjExBjExABUxCgExCDExAB8xACAvAAMxBTExCTEACgExCggFABUxCwAxCgoxAB4AAAUjADEvAAIxChExACQxACEFAAAxChUxCgUxACUAAB4xACYACwAxACcACzExACIxCwgxCgwAABUxACgACgwxACkxACoxCxExACsACgUxCwoAACIxCiExACwxCwUtADEAACExCh4xCx4xAC4xCwExCiIACiEACx4ACwExCyExCxUxCwwACwUxCyIACwwACh4ACyIACiIAAAAAAEh9AEGigAgLAmRVAEGygAgLAiaeAEG+gAgLAuayAEHMgAgLAgwFAEHWgAgLCmQTFgGlXAAABE4AQfiACAsMTgjmPgAAAAAAAGU4AEGSgQgLCmdozQgAAAAAZEMAQa6BCAsCJg4AQbiBCAsCyFkAQcaBCAsGB0EAAMeFAEHWgQgLAma9AEH0gQgLAs8JAEG4gggLEExMAAAAAMRdAAAAAAAAZCYAQeaCCAsChXgAQaqDCAsC5nwAQbyDCAsQqlBkCQAAJVGNBkcjAAAEGQBB8oMICwKnygBBkIQICxZpGiYcAAAAAOhVx1kAAAAAyQ0AAEgHAEGyhAgLGiYrAAAAAKklAAAAAAAAaxkAAAAARpBIVKfzAEHehAgLAmYgAEHuhAgLDGefAAAA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//8CAAAA/f///wMAAAD/////AQAAAP7///8CAAAA/f///wMAAAABAgMEAAURBhAHCAkKCwwNDg8AQfCFDAsVhAAAADkAAAAXAAAACgAAAAQAAAABAEGUhgwL+RUEAAAACAAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAACwAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAAA4AAAAOAAAADgAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAFQAAABUAAAAVAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAAHAAAABwAAAAcAAAA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AAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAB4AAAAeAAAAHgAAAAsAAAAAAAAAGwAAAAAAAAArAAAAAAAAADsAAAAAAAAAywIAAAAAAADLBgAAAAAAAMsKAAAAAAAAyw4AAAAAAADbAgAAAAAAANsGAAAAAAAA2woAAAAAAADbDgAAAAAAAOsCAAAAAAAA6wYAAAAAAADrCgAAAAAAAOsOAAAAAAAA+wIAAAAAAAD7BgAAAAAAAPsKAAAAAAAA+w4AAAAAAADLsgAAAAAAAMuyAQAAAAAAy7ICAAAAAADLsgMAAAAAAMu2AAAAAAAAy7YBAAAAAADLtgIAAAAAAMu2AwAAAAAAy7oAAAAAAADLugEAAAAAAMu6AgAAAAAAy7oDAAAAAADLvgAAAAAAAMu+AQAAAAAAy74CAAAAAADLvgMAAAAAANuyAAAAAAAA27IBAAAAAADbsgIAAAAAANuyAwAAAAAA27YAAAAAAADbtgEAAAAAANu2AgAAAAAA27YDAAAAAADbugAAAAAAANu6AQAAAAAA27oCAAAAAADbugMAAAAAANu+AAAAAAAA274BAAAAAADbvgIAAAAAANu+AwAAAAAA67IAAAAAAADrsgEAAAAAAOuyAgAAAAAA67IDAAAAAADrtgAAAAAAAOu2AQAAAAAA67YCAAAAAADrtgMAAAAAAOu6AAAAAAAA67oBAAAAAADrugIAAAAAAOu6AwAAAAAA674AAAAAAADrvgEAAAAAAOu+AgAAAAAA674DAAAAAAD7sgAAAAAAAPuyAQAAAAAA+7ICAAAAAAD7sgMAAAAAAPu2AAAAAAAA+7YBAAAAAAD7tgIAAAAAAPu2AwAAAAAA+7oAAAAAAAD7ugEAAAAAAPu6AgAAAAAA+7oDAAAAAAD7vgAAAAAAAPu+AQAAAAAA+74CAAAAAAD7vgMAAAAAAMuyLAAAAAAAy7JsAAAAAADLsqwAAAAAAMuy7AAAAAAAy7ItAAAAAADLsm0AAAAAAMuyrQAAAAAAy7LtAAAAAADLsi4AAAAAAMuybgAAAAAAy7KuAAAAAADLsu4AAAAAAMuyLwAAAAAAy7JvAAAAAADLsq8AAAAAAMuy7wAAAAAAy7YsAAAAAADLtmwAAAAAAMu2rAAAAAAAy7bsAAAAAADLti0AAAAAAMu2bQAAAAAAy7atAAAAAADLtu0AAAAAAMu2LgAAAAAAy7ZuAAAAAADLtq4AAAAAAMu27gAAAAAAy7YvAAAAAADLtm8AAAAAAMu2rwAAAAAAy7bvAAAAAADLuiwAAAAAAMu6bAAAAAAAy7qsAAAAAADLuuwAAAAAAMu6LQAAAAAAy7ptAAAAAADLuq0AAAAAAMu67QAAAAAAy7ouAAAAAADLum4AAAAAAMu6rgAAAAAAy7ruAAAAAADLui8AAAAAAMu6bwAAAAAAy7qvAAAAAADLuu8AAAAAAMu+LAAAAAAAy75sAAAAAADLvqwAAAAAAMu+7AAAAAAAy74tAAAAAADLvm0AAAAAAMu+rQAAAAAAy77tAAAAAADLvi4AAAAAAMu+bgAAAAAAy76uAAAAAADLvu4AAAAAAMu+LwAAAAAAy75vAAAAAADLvq8AAAAAAMu+7wAAAAAA27IsAAAAAADbsmwAAAAAANuyrAAAAAAA27LsAAAAAADbsi0AAAAAANuybQAAAAAA27KtAAAAAADbsu0AAAAAANuyLgAAAAAA27JuAAAAAADbsq4AAAAAANuy7gAAAAAA27IvAAAAAADbsm8AAAAAANuyrwAAAAAA27LvAAAAAADbtiwAAAAAANu2bAAAAAAA27asAAAAAADbtuwAAAAAANu2LQAAAAAA27ZtAAAAAADbtq0AAAAAANu27QAAAAAA27YuAAAAAADbtm4AAAAAANu2rgAAAAAA27buAAAAAADbti8AAAAAANu2bwAAAAAA27avAAAAAADbtu8AAAAAANu6LAAAAAAA27psAAAAAADbuqwAAAAAANu67AAAAAAA27otAAAAAADbum0AAAAAANu6rQAAAAAA27rtAAAAAADbui4AAAAAANu6bgAAAAAA27quAAAAAADbuu4AAAAAANu6LwAAAAAA27pvAAAAAADbuq8AAAAAANu67wAAAAAA274sAAAAAADbvmwAAAAAANu+rAAAAAAA277sAAAAAADbvi0AAAAAANu+bQAAAAAA276tAAAAAADbvu0AAAAAANu+LgAAAAAA275uAAAAAADbvq4AAAAAANu+7gAAAAAA274vAAAAAADbvm8AAAAAANu+rwAAAAAA277vAAAAAADrsiwAAAAAAOuybAAAAAAA67KsAAAAAADrsuwAAAAAAOuyLQAAAAAA67JtAAAAAADrsq0AAAAAAOuy7QAAAAAA67IuAAAAAADrsm4AAAAAAOuyrgAAAAAA67LuAAAAAADrsi8AAAAAAOuybwAAAAAA67KvAAAAAADrsu8AAAAAAOu2LAAAAAAA67ZsAAAAAADrtqwAAAAAAOu27AAAAAAA67YtAAAAAADrtm0AAAAAAOu2rQAAAAAA67btAAAAAADrti4AAAAAAOu2bgAAAAAA67auAAAAAADrtu4AAAAAAOu2LwAAAAAA67ZvAAAAAADrtq8AAAAAAOu27wAAAAAA67osAAAAAADrumwAAAAAAOu6rAAAAAAA67rsAAAAAADrui0AAAAAAOu6bQAAAAAA67qtAAAAAADruu0AAAAAAOu6LgAAAAAA67puAAAAAADruq4AAAAAAOu67gAAAAAA67ovAAAAAADrum8AAAAAAOu6rwAA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AAAAy7otCwAAAADLui0bAAAAAMu6LSsAAAAAy7otOwAAAADLum0LAAAAAMu6bRsAAAAAy7ptKwAAAADLum07AAAAAMu6rQsAAAAAy7qtGwAAAADLuq0rAAAAAMu6rTsAAAAAy7rtCwAAAADLuu0bAAAAAMu67SsAAAAAy7rtOwAAAADLui4LAAAAAMu6LhsAAAAAy7ouKwAAAADLui47AAAAAMu6bgsAAAAAy7puGwAAAADLum4rAAAAAMu6bjsAAAAAy7quCwAAAADLuq4bAAAAAMu6risAAAAAy7quOwAAAADLuu4LAAAAAMu67hsAAAAAy7ruKwAAAADLuu47AAAAAMu6LwsAAAAAy7ovGwAAAADLui8rAAAAAMu6LzsAAAAAy7pvCwAAAADLum8bAAAAAMu6bysAAAAAy7pvOwAAAADLuq8LAAAAAMu6rxsAAAAAy7qvKwAAAADLuq87AAAAAMu67wsAAAAAy7rvGwAAAADLuu8rAAAAAMu67zsAAAAAy74sCwAAAADLviwbAAAAAMu+LCsAAAAAy74sOwAAAADLvmwLAAAAAMu+bBsAAAAAy75sKwAAAADLvmw7AAAAAMu+rAsAAAAAy76sGwAAAADLvqwrAAAAAMu+rDsAAAAAy77sCwAAAADLvuwbAAAAAMu+7CsAAAAAy77sOwAAAADLvi0LAAAAAMu+LRsAAAAAy74tKwAAAADLvi07AAAAAMu+bQsAAAAAy75tGwAAAADLvm0rAAAAAMu+bTsAAAAAy76tCwAAAADLvq0bAAAAAMu+rSsAAAAAy76tOwAAAADLvu0LAAAAAMu+7RsAAAAAy77tKwAAAADLvu07AAAAAMu+LgsAAAAAy74uGwAAAADLvi4rAAAAAMu+LjsAAAAAy75uCwAAAADLvm4bAAAAAMu+bisAAAAAy75uOwAAAADLvq4LAAAAAMu+rhsAAAAAy76uKwAAAADLvq47AAAAAMu+7gsAAAAAy77uGwAAAADLvu4rAAAAAMu+7jsAAAAAy74vCwAAAADLvi8bAAAAAMu+LysAAAAAy74vOwAAAADLvm8LAAAAAMu+bxsAAAAAy75vKwAAAADLvm87AAAAAMu+rwsAAAAAy76vGwAAAADLvq8rAAAAAMu+rzsAAAAAy77vCwAAAADLvu8bAAAAAMu+7ysAAAAAy77vOwAAAADbsiwLAAAAANuyLBsAAAAA27IsKwAAAADbsiw7AAAAANuybAsAAAAA27JsGwAAAADbsmwrAAAAANuybDsAAAAA27KsCwAAAADbsqwbAAAAANuyrCsAAAAA27KsOwAAAADbsuwLAAAAANuy7BsAAAAA27LsKwAAAADbsuw7AAAAANuyLQsAAAAA27ItGwAAAADbsi0rAAAAANuyLTsAAAAA27JtCwAAAADbsm0bAAAAANuybSsAAAAA27JtOwAAAADbsq0LAAAAANuyrRsAAAAA27KtKwAAAADbsq07AAAAANuy7QsAAAAA27LtGwAAAADbsu0rAAAAANuy7TsAAAAA27IuCwAAAADbsi4bAAAAANuyLisAAAAA27IuOwAAAADbsm4LAAAAANuybhsAAAAA27JuKwAAAADbsm47AAAAANuyrgsAAAAA27KuGwAAAADbsq4rAAAAANuyrjsAAAAA27LuCwAAAADbsu4bAAAAANuy7isAAAAA27LuOwAAAADbsi8LAAAAANuyLxsAAAAA27IvKwAAAADbsi87AAAAANuybwsAAAAA27JvGwAAAADbsm8rAAAAANuybzsAAAAA27KvCwAAAADbsq8bAAAAANuyrysAAAAA27KvOwAAAADbsu8LAAAAANuy7xsAAAAA27LvKwAAAADbsu87AAAAANu2LAsAAAAA27YsGwAAAADbtiwrAAAAANu2LDsAAAAA27ZsCwAAAADbtmwbAAAAANu2bCsAAAAA27ZsOwAAAADbtqwLAAAAANu2rBsAAAAA27asKwAAAADbtqw7AAAAANu27AsAAAAA27bsGwAAAADbtuwrAAAAANu27DsAAAAA27YtCwAAAADbti0bAAAAANu2LSsAAAAA27YtOwAAAADbtm0LAAAAANu2bRsAAAAA27ZtKwAAAADbtm07AAAAANu2rQsAAAAA27atGwAAAADbtq0rAAAAANu2rTsAAAAA27btCwAAAADbtu0bAAAAANu27SsAAAAA27btOwAAAADbti4LAAAAANu2LhsAAAAA27YuKwAAAADbti47AAAAANu2bgsAAAAA27ZuGwAAAADbtm4rAAAAANu2bjsAAAAA27auCwAAAADbtq4bAAAAANu2risAAAAA27auOwAAAAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1Njc4OTo7PD0+PwABAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj8AAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/AEGEjw0L/AEBAQEBAgICAgMDAwMEBAQEBQUFBQYGBgYHBwcHCAgICAkJCQkKCgoKCwsLCwwMDAwNDQ0NDg4ODg8PDw8QEBAQERERERISEhITExMTFBQUFBUVFRUWFhYWFxcXFxgYGBgZGRkZGhoaGhsbGxscHBwcHR0dHR4eHh4fHx8fICAgICEhISEiIiIiIyMjIyQkJCQlJSUlJiYmJicnJycoKCgoKSkpKSoqKiorKysrLCwsLC0tLS0uLi4uLy8vLzAwMDAxMTExMjIyMjMzMzM0NDQ0NTU1NTY2NjY3Nzc3ODg4ODk5OTk6Ojo6Ozs7Ozw8PDw9PT09Pj4+Pj8/Pz8AQYmTDQsFBAQAAAQAQaCTDQvgAQgMEAwMFAwQGBwMDCAMJAwsLCwsLCwsLCwsICAYKBwMDDA0NDQwNDQ0MDQ0NDQ0MDQ0NDQ0MDQ0NDQ0GAwcDAwMODw8PDg8PDw4PDw8PDw4PDw8PDw4PDw8PDwYDBwMAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAECAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAEGhlQ0LXgEBAQEBAQEBAQEBAQEBAQICAgICAgICAgIBAQEBAQEBAgICAgICAgICAgICAgICAgICAgICAgICAgIBAQEBAQEDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwEBAQEAQeCWDQugBAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAgICAgICAgICAgICAgICBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoMDAwMDAwMDAwMDAwMDAwOAABAQEBAQEBAQEBAQEBAQECAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQYGBgYGBgYGBgYGBgYGBgcAQZibDQuGAgEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAEAAAABQAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAwAAAAOAAAAGAAAAAAAAAABAAAAAgAAAAMAAAAEAAAABQAAAAYAAAAIAAAACgAAAA4AAAASAAAAGgAAACIAAAAyAAAAQgAAAGIAAACCAAAAwgAAAEIBAABCAgAAQgQAAEIIAABCGAAAQlgAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAwAAAAOAAAAEgAAABYAAAAeAAAAJgAAADYAAABGAAAAZgAAAIYAAADGAAAARgEAAEYCAABGBAAARggAQcCdDQvNFAEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAEAAAABQAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAABgAAAABAAAAAgAAAAUAAAACAAAACQAAAAIAAAANAAAAAgAAABEAAAADAAAAGQAAAAMAAAAhAAAAAwAAACkAAAADAAAAMQAAAAQAAABBAAAABAAAAFEAAAAEAAAAYQAAAAQAAABxAAAABQAAAJEAAAAFAAAAsQAAAAUAAADRAAAABQAAAPEAAAAGAAAAMQEAAAYAAABxAQAABwAAAPEBAAAIAAAA8QIAAAkAAADxBAAACgAAAPEIAAALAAAA8RAAAAwAAADxIAAADQAAAPFAAAAYAAAACQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsAAAABgACAAUAAQAHAAMABIAAgAaAAoAFgAGAB4ADgARAAEAGQAJABUABQAdAA0AEwADABsACwAXAAcAHwAPABCAAIAYgAiAFIAEgByADIASgAKAGoAKgBaABoAegA6AEYABgBmACYAVgAWAHYANgBOAA4AbgAuAF4AHgB+AD4AQQABAGEAIQBRABEAcQAxAEkACQBpACkAWQAZAHkAOQBFAAUAZQAlAFUAFQB1ADUATQANAG0ALQBdAB0AfQA9AEMAAwBjACMAUwATAHMAMwBLAAsAawArAFsAGwB7ADsARwAHAGcAJwBXABcAdwA3AE8ADwBvAC8AXwAfAH8APwBAgACAYIAggFCAEIBwgDCASIAIgGiAKIBYgBiAeIA4gESABIBkgCSAVIAUgHSANIBMgAyAbIAsgFyAHIB8gDyAQoACgGKAIoBSgBKAcoAygEqACoBqgCqAWoAagHqAOoBGgAaAZoAmgFaAFoB2gDaAToAOgG6ALoBegB6AfoA+gEGAAYBhgCGAUYARgHGAMYBJgAmAaYApgFmAGYB5gDmARYAFgGWAJYBVgBWAdYA1gE2ADYBtgC2AXYAdgH2APYBDgAOAY4AjgFOAE4BzgDOAS4ALgGuAK4BbgBuAe4A7gEeAB4BngCeAV4AXgHeAN4BPgA+Ab4AvgF+AH4B/gD+AQEAAQGBAIEBQQBBAcEAwQEhACEBoQChAWEAYQHhAOEBEQARAZEAkQFRAFEB0QDRATEAMQGxALEBcQBxAfEA8QEJAAkBiQCJAUkASQHJAMkBKQApAakAqQFpAGkB6QDpARkAGQGZAJkBWQBZAdkA2QE5ADkBuQC5AXkAeQH5APkBBQAFAYUAhQFFAEUBxQDFASUAJQGlAKUBZQBlAeUA5QEVABUBlQCVAVUAVQHVANUBNQA1AbUAtQF1AHUB9QD1AQ0ADQGNAI0BTQBNAc0AzQEtAC0BrQCtAW0AbQHtAO0BHQAdAZ0AnQFdAF0B3QDdAT0APQG9AL0BfQB9Af0A/QEDAAMBgwCDAUMAQwHDAMMBIwAjAaMAowFjAGMB4wDjARMAEwGTAJMBUwBTAdMA0wEzADMBswCzAXMAcwHzAPMBCwALAYsAiwFLAEsBywDLASsAKwGrAKsBawBrAesA6wEbABsBmwCbAVsAWwHbANsBOwA7AbsAuwF7AHsB+wD7AQcABwQHAgcGBwEHBQcDBweHAIcEhwKHBocBhwWHA4cHRwBHBEcCRwZHAUcFRwNHB8cAxwTHAscGxwHHBccDxwcnACcEJwInBicBJwUnAycHpwCnBKcCpwanAacFpwOnB2cAZwRnAmcGZwFnBWcDZwfnAOcE5wLnBucB5wXnA+cHFwAXBBcCFwYXARcFFwMXB5cAlwSXApcGlwGXBZcDlwdXAFcEVwJXBlcBVwVXA1cH1wDXBNcC1wbXAdcF1wPXBzcANwQ3AjcGNwE3BTcDNwe3ALcEtwK3BrcBtwW3A7cHdwB3BHcCdwZ3AXcFdwN3B/cA9wT3AvcG9wH3BfcD9wcPAA8EDwIPBg8BDwUPAw8HjwCPBI8CjwaPAY8FjwOPB08ATwRPAk8GTwFPBU8DTwfPAM8EzwLPBs8BzwXPA88HLwAvBC8CLwYvAS8FLwMvB68ArwSvAq8GrwGvBa8DrwdvAG8EbwJvBm8BbwVvA28H7wDvBO8C7wbvAe8F7wPvBx8AHwQfAh8GHwEfBR8DHwefAJ8EnwKfBp8BnwWfA58HXwBfBF8CXwZfAV8FXwNfB98A3wTfAt8G3wHfBd8D3wc/AD8EPwI/Bj8BPwU/Az8HvwC/BL8Cvwa/Ab8FvwO/B38AfwR/An8GfwF/BX8Dfwf/AP8E/wL/Bv8B/wX/A/8HBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgAAIAAQADAACAAoABgAOAAEACQAFAA0AAwALAAcADwAAgAiABIAMgAKACoAGgA6AAYAJgAWADYADgAuAB4APgABACEAEQAxAAkAKQAZADkABQAlABUANQANAC0AHQA9AAMAIwATADMACwArABsAOwAHACcAFwA3AA8ALwAfAD8AAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQBBnLINC7UBAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAAAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQBBkLQNC60BAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAQdC1DQsBAQBB4rUNCwMDAAYAQfC1DQsNFAAAAAAAAAAVAAAAFgBBjrYNCw8XAAAAAAAZAAAAHQAAADUAQaq2DQsBNwBBuLYNCws9AEwAAAAAAAAAXgBB0LYNCwlgAAAAYQAAAGIAQei2DQsHYwBlAGoAbABB+rYNCw9uAAAAbwBwAAAAcQB2AHwAQZS3DQsDfQCAAEGgtw0LB4EAAAAAAIMAQbS3DQsPhAAAAAAAhwAAAAAAAACJAEHOtw0LA4oAiwBB4LcNCwWOAI8AkABB8LcNCxWRAAAAAAAAAJIAlQCXAJgAAAAAAJkAQaS4DQsBmgBBsrgNCwGbAEG8uA0LA6AAtgBBzLgNCxG3AAAAAAAAALwAvQAAAAAAwABB6rgNCwHCAEH8uA0LF8UAygDRAAAAAADSAAAA4AAAAAAAAADhAEGouQ0LE+cAAAAAAAAA6AAAAPAAAAAAAPIAQdK5DQsT9AAAAAAAAAD2AAAAAAD5APsA/QBB8LkNCxwCAQAAAAAFAQcBAAAAAAAACwEAAAAADAEAAA0BAEGeug0LAg8BAEGsug0LEBABAAARAQAAFQEAABYBHgEAQcS6DQsaHwEAACEBIgEjAQAAAAAAACcBAAAAACgBKQEAQfK6DQsUKgEAAAAAAAArAQAAAAAxAQAARAEAQZC7DQsIRwEAAEgBSQEAQaC7DQsaUAEAAAAAVAEAAFUBVgFXAQAAAABaAQAAXAEAQca7DQscXQFfAQAAAABjAQAAawEAAGwBAABwAXEBAAByAQBB8LsNCwJ0AQBBiLwNCwZ1AQAAdwEAQZa8DQsUeAF5AQAAAACKAYsBjAEAAAAAjgEAQbK8DQsIkAEAAAAAmAEAQcK8DQsCpAEAQdC8DQsqpQEAAAAApgGnAQAAAACtAbMBtAG6AQAAAAC7AQAAvAG9AcUByAEAAMkBAEGEvQ0LGsoBAAAAAAAAywEAAAAAAADMAQAAzgHPAdEBAEGqvQ0LBNIB1QEAQbq9DQsO1gEAAAAAAADaAQAA3AEAQdC9DQtE4wEAAOUBAAAAAAAA5gEAAAAA6AHrAewBAAAAAPEB8wH0AQAA9QEAAAAAAAD5AQAAAAD6AQAAAAAAAPsBAAAAAAAA/QEAQZy+DQsG/wEAAgcCAEGuvg0LDBECEgIAAAAAAAAWAgBBwr4NCwIfAgBB1r4NCwIpAgBB4L4NCwQtAjACAEHwvg0LBjECAAA0AgBBgr8NCy41AjYCAAA/AgAAawIAAGwCAAAAAG8CcAIAAAAAAABxAgAAAAByAnMCAAAAAHQCAEG4vw0LBnYCAAB3AgBB0L8NCwKBAgBB2r8NCxaDApACnAIAAAAAAAChAgAAAAAAAKICAEGAwA0LEqoCAACvAgAAsgIAALUCuwK8AgBBnsANCwTAAsECAEGqwA0LCMMCxgIAAMcCAEG6wA0LEtYCAAAAANkCAAAAAAAA2gLbAgBB1sANCyTwAgAAAAAAAPoCAAD7AgAAAAD/AgAAAAAAAAIDBgMAAAAABwMAQY7BDQsWCAMAAAAAAAAJAw8DAAAAAAAAEQMUAwBBrMENCwoWAwAAAAAAABkDAEG+wQ0LNhoDAAAAACQDMwM1AwAAOwMAAAAAAABCAwAAAABDAwAAAAAAAEkDAABMAwAAUgNTA1sDAABcAwBBgsINCwxqAwAAbAMAAG0DegMAQZ7CDQsGfQN+A4IDAEHCwg0LIIMDAAAAAAAAhAOIA4oDAAAAAAAAiwMAAIwDjQMAAI4DAEHqwg0LAo8DAEH2wg0LFJQDAAAAAAAAmgOdAwAAogMAAKYDAEGUww0LDq8DAAAAALADAAC5A7oDAEGuww0LHrsDAADCA8MDAAAAANADAAAAANED0gPTA9QDAADVAwBB1MMNCxLYAwAAAADZAwAAAADbA90D3wMAQfjDDQsK4AMAAAAAAADhAwBBjsQNCwrkAwAAAAAAAOgDAEGixA0LAuoDAEGsxA0LFO0D7wMAAAAAAADxAwAAAAAAAPIDAEHMxA0LBvMDAAD0AwBB2sQNCxD2A/gDAAAAAAAA/AMAAP0DAEHyxA0LCv4DAAAAAAAAAAQAQYjFDQsKAQQAAAAAAgQDBABBnMUNCwYHBAAACQQAQarFDQs0CgQAAAAAAAANBBAEAAAAAAAAEgQTBAAAAAAdBAAAHgQAAAAAIQQAAAAAAAAiBAAAAAAkBABB7MUNCwglBAAAAAAmBABB/MUNCwInBABBhsYNCwIoBABBksYNCwIpBABBnMYNCxAqBCsEAAAAAAAALQQuBDAEAEG4xg0LBjEEAAAzBABBysYNCwQ4BDwEAEHWxg0LAkAEAEHkxg0LKkYEAABHBAAAUwQAAAAAAABYBFoEAABfBAAAYgQAAAAAZgQAAGkEAABqBABBmMcNCwJsBABBpscNCxh4BAAAAAB5BHoEAAB8BH0EAAAAAH4EfwQAQcbHDQsGgAQAAIEEAEHWxw0LDoIEAACLBAAAAAAAAIwEAEHuxw0LCo0EAACPBAAAkgQAQYLIDQsEkwSUBABBlsgNCwqVBJcEmQQAAKIEAEG0yA0LFKsEAAAAAMUEAAAAAMgEAAAAAMsEAEHSyA0LCswEzQQAAAAAzgQAQe7IDQsWzwQAAAAAAADRBAAAAADbBNwE3gTgBABBjMkNCybmBOcE6gTrBAAAAAAAAOwEAAAAAO0EAAAAAAAA7gTwBAAAAADxBABByskNCwbyBAAA8wQAQdjJDQsc+QT6BPwECQUAAAAACwUMBQ0FAAAAAA4FDwUQBQBB/MkNCwYWBQAAGAUAQZTKDQsQHwUgBQAAIgUAACQFKAUpBQBBssoNCw4qBSsFLAUAADcFAAA4BQBByMoNCxY9BT4FAABCBQAATQUAAAAAAABOBVAFAEHqyg0LEFEFAAAAAAAAUgVVBQAAVgUAQYjLDQsCYwUAQaLLDQsGagUAAGwFAEHEyw0LAnMFAEHOyw0LDHsFAAB9BQAAAAB/BQBB5MsNCyKABYEFAACCBQAAAAAAAIQFhQWIBQAAAACVBasFAAAAAK4FAEGUzA0LAq8FAEGkzA0LArAFAEGuzA0LCLMFtAW1BcMFAEHCzA0LNMUFAADIBQAAyQUAAAAAzgUAAAAA1wUAAAAAAADYBQAAAADaBdsF3QXwBfEFAAAAAAAA9gUAQf7MDQsk+AX5BQAA/QUABgAAAAAAAAEGAgYNBgAADgYWBhcGJAYAACUGAEG0zQ0LAicGAEHAzQ0LEisGAAA/BgAAQwYAAEQGAABFBgBB3M0NCwRIBkoGAEHozQ0LFksGAABPBgAAUAZSBgAAUwYAAAAAVgYAQYbODQsSYgYAAAAAAABjBgAAAAAAAGkGAEGqzg0LEGsGAAAAAAAAcgYAAAAAdAYAQcTODQsKdQYAAAAAAAB2BgBB1s4NCyJ3BgAAfgYAAAAAfwaABgAAAACEBgAAAACFBoYGAACIBokGAEGCzw0LGIoGAAAAAAAAiwaMBpAGAACSBgAAAACXBgBBpM8NCw6oBgAAAACpBgAAAAC5BgBBus8NCwTGBscGAEHGzw0LAskGAEHQzw0LCMsGAAAAAMwGAEHszw0LBM0GzwYAQfjPDQsS0QYAAAAAAADVBgAAAAAAANcGAEGW0A0LAuAGAEGg0A0LAuUGAEGs0A0LCPgGAAD5BvsGAEG80A0LBPwG/QYAQcjQDQsM/gb/BgEHAAAGBwcHAEHc0A0LHAkHAAALBw0HAAAAAAAADgcTBwAAFAcWBwAAHQcAQYLRDQsEHgcpBwBBktENCwI4BwBBoNENCwpBBwAAAAAAAEMHAEGy0Q0LAkUHAEHC0Q0LEkoHAACBB4UHAAAAAAAAiQeKBwBB5tENCwKLBwBB8NENCwqMBwAAAAAAAI4HAEGK0g0LCJoHAAAAAJwHAEGa0g0LCp4HAAClBwAApgcAQa7SDQsErQevBwBButINCwywBwAAsQcAALMHtAcAQeTSDQsCtQcAQe7SDQsCtwcAQfjSDQsIuAe7BwAAvgcAQYjTDQsEwAfEBwBBlNMNCxDGB9QH2AcAAAAAAADcB90HAEG40w0LCN8HAADgB+EHAEHI0w0LCOUHAAAAAOkHAEHa0w0LCu0H9Af4BwAA+gcAQYDUDQsC+wcAQYzUDQsC/QcAQZzUDQsg/gf/BwAAAAgBCAAACwgAAAAADwgAABAIEQgAAAAAEggAQcjUDQsCFQgAQdLUDQsKFggAABcIAAAYCABB5NQNCwYgCCIIIwgAQfTUDQsMJQgAACYIKAgpCDkIAEGI1Q0LFDsIAAAAAEQIRQgAAEgIAAAAAEoIAEGm1Q0LIksIAAAAAE0ITwhQCAAAAAAAAFIIAAAAAAAAWQhbCFwIXQgAQdrVDQsMYAhhCAAAAABiCGUIAEHu1Q0LEmYIAAAAAGcIbggAAG8IAABwCABBjNYNCwxxCHIIAAAAAJIImggAQaTWDQsSnQipCAAArAgAAK0IAACuCLAIAEG+1g0LAr0IAEHK1g0LDr4IAAC/CMEIAAAAAMIIAEHi1g0LAsMIAEHw1g0LGswIAAAAAM0IAAAAAAAA0QjSCAAAAAAAANQIAEGY1w0LBtYIAADYCABBqNcNCwTdCN4IAEG+1w0LBt8IAADhCABBzNcNCwLlCABB1tcNCwLmCABB4NcNCwrnCAAA6AgAAOsIAEGO2A0LAu8IAEGe2A0LBPEI8ggAQarYDQsS8wgAAPQIAAAAAAAA9Qj3CPgIAEHK2A0LAvoIAEHW2A0LEP8IAAABCQAAAAACCQAAAwkAQf7YDQskCQkKCQsJDAkAAAAADgkAAA8JAAASCQAAAAATCQAAFAkAABYJAEGw2Q0LKh8JAAAgCSIJIwkAACQJAAAAAAAAMwkAAEcJAABOCVIJAABTCQAAAABaCQBB4tkNCwZbCQAAXQkAQfLZDQsCXgkAQYLaDQsSXwliCWQJaAlrCQAAAAAAAG0JAEGw2g0LEG8JAAAAAHAJcQlzCQAAdAkAQcraDQsKeQkAAAAAAAB6CQBB7NoNCxR7CXwJAAB9CQAAAAB+CYIJAACECQBBjNsNC0aJCYoJAACNCQAAAACOCZkJAACbCQAAAACeCQAAoAkAAK0JAACuCbYJAAAAAAAAuwkAAAAAvQkAAAAAvgkAAL8JAADRCdsJAEHa2w0LAtwJAEHo2w0LMuAJ4QniCQAAAADjCQAA5QkAAAAA5gnnCQAA6AnpCQAA6gkAAOsJ7AkAAAAAAADxCfIJAEGo3A0LDvQJAAAAAPUJAAD2CfsJAEHA3A0LBv0JAAAACgBB3NwNCwYBCgAAEAoAQfTcDQsMEQoSCgAAAAAAABMKAEGO3Q0LAhQKAEGY3Q0LAhUKAEGi3Q0LFBcKAAAYCgAAHAoeCgAAAAAAAB8KAEG+3Q0LMCEKIgoAACMKAAApCioKAAAAACsKAAAtCgAAAAAAAC4KLwozCgAANwoAAAAAAAA5CgBBiN4NCzg7CgAAAAA8CgAAAAAAAD0KAAA/CgAAQQoAAAAARApFCgAAAABLCkwKTQoAAAAATwoAAAAAAABSCgBByN4NCwpTCgAAVAoAAFkKAEHe3g0LCl8KYAoAAAAAYQoAQfLeDQsCYgoAQf7eDQsCYwoAQYjfDQtEaAp9CgAAfwoAAIAKAAAAAIEKAAAAAIYKAACHCgAAAACKCgAAjQqSCgAAAAAAAJMKAACVCpYKlwoAAAAAAACgCqoKrwoAQdTfDQsEsgq0CgBB4N8NCwK7CgBB7t8NCwi8CgAAAAC9CgBBgOANCwq+CgAAAADACsIKAEGU4A0LAsYKAEGe4A0LAsoKAEGo4A0LAssKAEG44A0LBMwKzwoAQcTgDQsI0AoAAAAA0goAQdrgDQsC0woAQe7gDQsC1AoAQfrgDQsg1QrYCgAAAADfCgAAAADgCgAA5QoAAOYKAAAAAAAA6AoAQa7hDQsE6QrrCgBBvuENCwLsCgBBzOENCwTtCu8KAEHY4Q0LAvMKAEHi4Q0LDPYKAAD3CvgKAQsDCwBB+OENCwIFCwBBguINCwQGCwcLAEGU4g0LDAgLAAAAAAwLAAASCwBBrOINCwwUCwAAFgsAAAAAFwsAQdriDQsKGQsAAAAAAAAaCwBB7uINCwQbCxwLAEH64g0LEB4LAAAAAB8LAAAhCwAAJQsAQZTjDQsCKQsAQZ7jDQsSKgsAACsLAAAAACwLAAAuCzQLAEG44w0LLjsLAAA8CwAAAAA9Cz4LRAtJC0oLAAAAAEsLAAAAAEwLAAAAAAAAWgtgCwAAYQsAQfbjDQsGZAsAAHYLAEGG5A0LAncLAEGQ5A0LBnsLAAB8CwBBpOQNCyx9CwAAAAAAAIILAACFCwAAAACGC4oLiwsAAAAAAACPC5ELAAAAAJILAACTCwBB3OQNCwiUC5ULlguXCwBB8uQNCwKZCwBB/uQNCwyaC58LAACmC6cLqAsAQZTlDQsIrQsAAAAArgsAQarlDQsCrwsAQbzlDQs4tgsAALgLuQsAAAAAugsAAAAAAAC7CwAAAADECwAAAADOCwAAAADQCwAAAADRC9MLAAAAAAAA1gsAQfzlDQsY2gvbCwAAAADcCwAA3wsAAOkLAAAAAOoLAEGg5g0LBusLAADtCwBBruYNCwbxCwAA8gsAQcTmDQsU9wsAAAAAAQwCDAYMBwwAAAgMDgwAQejmDQssDwwAABQMAAAXDAAAGwwAAAAAAAAcDAAAHQweDAAAMgwAAAAAAAA0DAAANQwAQaDnDQsKPAw+DAAAAABADABBuOcNCwhLDAAAAABNDABByucNCwZODE8MUAwAQdjnDQsqVgwAAAAAWAwAAAAAWQwAAAAAWgwAAFsMXgxgDAAAAABhDGIMAAAAAGMMAEGQ6A0LEm4MAABwDAAAAAB0DAAAAAB6DABBrugNCwKEDABBuOgNCwKJDABB0OgNCwSQDJEMAEHi6A0LDpMMAAAAAJQMlgwAAJcMAEH46A0LIpgMAACZDJoMAACcDKEMAACnDKkMqgwAAAAAswy0DLUMtwwAQarpDQsQvAwAAAAAvQwAAAAAAADDDABByukNCyDHDAAAAAAAAM4MAADSDAAAAAAAANQMAAAAAAAA1QzWDABB+OkNCwTXDNwMAEGE6g0LEt4M4AwAAAAA4wzkDOUMAADmDABBoOoNCwToDOoMAEGw6g0LAuwMAEHE6g0LAu8MAEHW6g0LCvAM8gzzDAAA9gwAQfDqDQsC9wwAQfzqDQsC+QwAQZDrDQsq+gwAAAAA/Az9DAAAAAD+DAAAAAAADQENAw0AAAAABw0AAAAACQ0AAAoNAEHC6w0LEg8NEw0AAAAAAAAUDQAAAAAXDQBB4OsNCwIaDQBB9usNCwwbDQAAAAAlDSYNJw0AQY7sDQsgKA0pDQAAKg0AAAAALQ0AAAAAMA0AAAAAMQ0AADMNOw0AQbjsDQsCPg0AQcjsDQsoSg0AAEsNbA1tDW8NAAAAAHENAAAAAAAAcg0AAAAAeQ0AAAAAAAB6DQBB/uwNCxx7DQAAAAB8DQAAfQ2ADQAAgQ0AAAAAgg0AAIMNAEGs7Q0LUIQNAAAAAI0Njg0AAAAAkw0AAAAAAACYDZ8NoQ0AAKINAAAAAKMNqw0AAKwNAAAAAK0NAAAAAAAArg0AALoNAAAAAAAAvA29DQAAAAAAAL4NAEGE7g0LDsANwQ3CDQAAAADGDcoNAEGa7g0LAssNAEGk7g0LAtANAEG07g0LHNMN1Q0AAAAA1g3YDQAA2w3cDQAAAADeDQAA4Q0AQd7uDQsO4g0AAOMNAADmDQAA5w0AQfzuDQsu6w0AAP0NAAAAAAAADw4AAAAAAAAQDgAAEQ4AABIOEw4AAAAAFg4YDgAAGg4bDgBBvO8NCwYcDiAOIw4AQdzvDQsMKA4sDgAALQ4yDjMOAEH07w0LDjQOAAA1DgAAAAA2DkMOAEGO8A0LBEQORQ4AQZrwDQsESA5JDgBBqPANCwJKDgBBsvANCxxLDgAATQ5PDlAOAABRDgAAbA4AAAAAAABuDnAOAEHm8A0LAnIOAEGG8Q0LHHQOAAAAAHUOAAAAAAAAfA59DgAAAAAAAH8OgA4AQazxDQsOiw4AAIwOjQ4AAAAAjg4AQcbxDQs2kA6RDgAAlg6XDpkOAAAAAAAAnw4AAKEOAAAAAKIOAAAAAKMOpA4AAK0OAACvDrYOtw4AALgOAEGE8g0LDLkOAAAAALsOAAC+DgBBnPINCwK/DgBBqvINCw7ADgAAwQ7KDgAAzA7NDgBByvINCwbPDgAA4w4AQdryDQsI5g7nDugO7A4AQfDyDQsI7Q4AAAAA8Q4AQYDzDQsK+w4AAAAACA8JDwBBkvMNCwYKDwsPDQ8AQaDzDQsIEw8AABQPFg8AQbLzDQsCFw8AQcTzDQsQIQ8AACIPAAAjDy4PAAAvDwBB3PMNCxI0D0kPAABKDwAAAAAAAFUPWw8AQfbzDQsGXg9lD2YPAEGE9A0LCmcPAAAAAAAAaA8AQZj0DQsQaQ8AAGsPAAAAAAAAdA91DwBBuvQNCwh2DwAAdw99DwBByvQNCxR+DwAAAAAAAH8PAAAAAAAAgA+GDwBB6PQNCwaHD4kPig8AQfb0DQsGjA8AAJEPAEGM9Q0LCpIPqw8AAAAAsQ8AQaz1DQsCsg8AQbb1DQsQsw8AALcPAAAAAAAAuw+8DwBB1vUNCxC/D8IPAAAAAMMPxQ/HD8gPAEHw9Q0LFtsPAADcD90PAADeD98P4g8AAAAA6A8AQaD2DQsC+A8AQaz2DQsC+w8AQbb2DQsK/g//DwAAAAAAEABByvYNCzACEAMQAAAAAAAABRAAAAgQAAAAAAAACRAMEAAAERAAAAAAExAUEAAAHhAAAAAAHxAAQYj3DQsYIBAkECUQAAAmEAAAAAAAACkQAAAAAC0QAEGo9w0LBjAQMhAzEABBtvcNC1Q0EAAAAADXEAAAAAAAANoQ6RAAAOsQ7BAAAO0QAADuEAAAAAAAAO8QAADwEAAAAAAAAPEQAAAAAAAA9hD5EPoQ/hAAAP8QABEAAAIRAxEAAAAADBEAQZL4DQsOEREAAAAAAAAVEQAAFhEAQaj4DQsCGREAQbL4DQsUGhEAAAAAAAAcEQAAAAAAAB0RHhEAQdT4DQsCIBEAQd74DQsUIREAAAAAAAAiEQAAAAAAACcRLhEAQfr4DQsENxE5EQBBhvkNCyA6EQAAAAA7EQAAPhE/EUIRAABLEUwRThEAAE8RAABgEQBBsPkNCxZhEQAAAAAAAGMRZBEAAGURZhEAAGgRAEHU+Q0LBmsRAABvEQBB5PkNCwpyEQAAcxEAAHURAEGI+g0LDnYRdxEAAHkRAAAAAHsRAEGe+g0LFn0RfhEAAAAAAAB/EYERAACCEQAAhBEAQcL6DQsyhhEAAAAAiBEAAAAAkREAAJwRAAAAAJ4RnxEAAKgRqxEAAKwRAACtEQAArxEAAAAAsBEAQfz6DQsUshEAALMRAAAAALQRAAAAAAAAtREAQZr7DQsKtxEAAAAAAAC4EQBBrvsNCw69Eb8RwBHBEcMRAADEEQBBxPsNCwjGEccRAADJEQBB1PsNCyjSEQAAAADbEQAAAAAAAN4RAAAAAAAA3xEAAOARAADhEQAAAAAAAOURAEGG/A0LGuYRAAAAAOoRAAAAAAAA7BEAAAAA9REAAPYRAEGo/A0LCAgSCRIAAAoSAEG4/A0LEAsSAAAMEgAAAAANEgAAEBIAQdL8DQsCERIAQdz8DQsYMRIAADMSAAA7EgAAAAAAADwSPhIAAEASAEH+/A0LBEESRBIAQYr9DQsCTxIAQZT9DQsCWRIAQZ79DQsGWxIAAF0SAEGs/Q0LGl4SAAAAAGISAAAAAGkSAAAAAAAAahJrEmwSAEHe/Q0LMG0SAAAAAHASAABxEnkSfxIAAAAAAACBEgAAAAAAAIMSAAAAAAAAhBIAAAAAAACFEgBBmP4NCwqGEgAAiRKKEosSAEGy/g0LCowSAAAAAAAAjRIAQeb+DQsejxKyEgAAsxIAALQSvBIAAAAAvRK+EgAAvxLGEscSAEGM/w0LBMkSyhIAQZz/DQsCyxIAQaj/DQsSzBIAAM0SAAAAAM8SAADVEtYSAEHC/w0LAtcSAEHY/w0LAtgSAEHi/w0LJNoSAAAAAAAA3BIAAN0SAAAAAAAA6xIAAAAA7xIAAPUS9xL6EgBBkIAOCwz7EgAAABMAAAAADxMAQaSADgsCEBMAQa6ADgsGERMAABITAEHGgA4LAhMTAEHQgA4LAhQTAEHcgA4LGhYTFxMYEx4TIBMAACYTAAAAACkTAAAAADMTAEGEgQ4LCDQTNRM3EzkTAEGWgQ4LAj4TAEGggQ4LAj8TAEGygQ4LGkETAABCE0MTAABKEwAAWBMAAFkTXRNgE2QTAEHagQ4LBpsTnBOeEwBB6oEOCxKfEwAAAAAAAKATAAAAAAAAoRMAQYSCDgsCpBMAQY6CDgsKpROmE6cTAACpEwBBqoIOCw6qE6sTAACsEwAAAACtEwBBwIIOCxKuEwAAAACvEwAAAAAAALETshMAQdqCDgsWtBO5E74TAAC/EwAAwRMAAAAAAADEEwBB+oIOCxTHEwAAyBPJEwAAyxMAAAAAAADMEwBBtoMOCwLUEwBBxoMOCxDVEwAAAADWE9gTAAAAANsTAEHmgw4LAt0TAEH0gw4LEuoT6xPtE/ET8xMAAPQTAAD1EwBBlIQOCwL2EwBBoIQOCyL9E/4TAAABFAAAAhQAAAAAChQAAAAAAAARFAAAAAAAABwUAEHQhA4LFh8UIhQAAAAAAAAjFAAAAAAkFCcUKRQAQe6EDgsCKhQAQfiEDgsIKxQsFAAALhQAQZSFDgsKLxQAAAAAAAA0FABBqoUOCxw6FDsUAAAAAEYUAAAAAEcUSBRKFAAAAABOFFEUAEHQhQ4LCFMUAABWFFkUAEHkhQ4LCF0UAABeFGAUAEH2hQ4LAmEUAEGIhg4LHmIUYxQAAG8UAAAAAHwUgRQAAIYUAACHFAAAAACJFABBsIYOCwyKFAAAjBSWFAAAnRQAQciGDgsIoBShFKIUoxQAQdqGDgsGpBQAAKUUAEHqhg4LBKcUqBQAQYKHDgsQqRSrFAAAAACuFAAAAACvFABBoIcOCxa4FAAAAAC6FLsUvBQAAL0UAAAAAL4UAEG+hw4LCL8UwBQAAMEUAEHQhw4LCsQUAAAAAAAAxRQAQeyHDgsCzRQAQfqHDgsMzhQAAM8U0RQAANQUAEGOiA4LAtoUAEGgiA4LHNwUAAAAAN0UAAAAAAAA3hQAAN8U4BQAAAAA4RQAQciIDgsE4xTkFABB3ogOCwrlFAAA5hQAAOoUAEHwiA4LOO4UAAAAAO8UAAAAAPEUAAAAAPUUAAD3FAAA/RQAAAAAAAADFQAAAAAAAAQVAAAAAAAABhUAAAgVAEG0iQ4LAgkVAEG+iQ4LAgsVAEHMiQ4LBgwVDhURFQBB6IkOCwIUFQBB8okOCwQVFRoVAEGAig4LDBsVAAAAAAAAHBUdFQBBpIoOCwIeFQBBrooOCwwiFQAAAAAjFQAAJxUAQcKKDgsEKBU6FQBB3IoOCwY+FQAAQBUAQe6KDgs0QRVCFQAAAAAAAEMVRBVHFQAAAABIFUkVSxUAAAAAAABQFVEVAAAAAAAAUxUAAAAAAABVFQBBvosOCyJYFQAAWhUAAAAAWxUAAF4VAAAAAGEVAAAAAGIVAAAAAGQVAEH2iw4LAmUVAEGGjA4LCmwVAAAAAG0VbhUAQZqMDgsCcBUAQaqMDgsCcRUAQbaMDgsygxUAAAAAAACGFQAAhxUAAAAAiBUAAAAAAACJFQAAixUAAAAAjBWNFQAAjhUAAAAAkhUAQfKMDgsynhWfFQAAAACgFQAAohUAAAAApxUAAKgVAAAAAKkVAACrFQAAtRUAAAAAthUAALgVvxUAQayNDgsUwBUAAAAAAADDFcUVAADGFQAAxxUAQciNDgsIyRUAAAAA3hUAQeKNDgsE4BXpFQBB7o0OCyLqFQAAAADsFQAA+BUAAPkVAAAAAAAA/RUAAAkWAAAKFgsWAEGcjg4LGBMWAAAAAAAAFBYVFgAAHRYeFi4WAAAvFgBBvI4OCwQ1FjYWAEHKjg4LCDoWPBYAAEcWAEHcjg4LAkoWAEHmjg4LAksWAEH0jg4LJkwWAAAAAE0WAABOFgAAAAAAAFAWAABlFgAAZhZnFgAAAABwFncWAEGyjw4LBngWAAB6FgBBxI8OCwp9Fn4WAACAFoEWAEHWjw4LFIMWhBaFFgAAhhYAAIcWiBYAAIoWAEHyjw4LBJAWlBYAQf6PDgsClhYAQYiQDgsImBYAAAAAnBYAQaaQDgsCpRYAQcaQDgsQpxYAAAAAqRYAAAAAAACzFgBB4pAOCwi4FgAAAADDFgBB+pAOCxzGFscWAAAAAMgWAAAAAMkWAADLFtQW1RYAANYWAEGgkQ4LAtoWAEGskQ4LRtwWAADfFuEWAAAAAOMWAADlFgAAAADnFgAA6RYAAAAAAADxFvMWAAAAAAAA9RYAAPcWAAAAAAAAABcAAAAAARcDFwAABhcAQf6RDgsGBxcAAAkXAEGQkg4LGhMXAAAXFwAAAAAYFwAAGRciFyQXAAAnFygXAEGykg4LCCkXKhcAAC0XAEHCkg4LCD0XAAAAAD8XAEHakg4LIkEXAAAAAEIXAABHF0gXSRcAAEwXAAAAAAAAWBdaF2MXZhcAQYaTDgseZxcAAGgXAAAAAAAAahdrFwAAAABsFwAAAABxF3MXAEGskw4LAncXAEG4kw4LIngXAAAAAHkXAAB6FwAAAAAAAHsXfxcAAIEXAACDFwAAhxcAQeiTDgsCiRcAQf6TDgs4ihcAAI4XAAAAAJAXAAAAAAAAkReWF5gXAAAAAAAAmRedFwAAAACeFwAAAAClFwAAAACmFwAApxcAQcKUDgsWqRcAAK8XAAAAAAAAsBcAALIXtxe4FwBB5JQOCwq7F7wXAAAAAL0XAEGAlQ4LBL4XvxcAQZSVDgsGwBcAAMMXAEGklQ4LMsQXAAAAAMgXAADJFwAAAADNF9kXAAAAANsXAADeFwAAAAAAAN8X7RfuFwAAAAAAAPEXAEHelQ4LDPIXAAAAAAAA8xf2FwBB9pUOCwL+FwBBg5YOCxkYAAAAAAIYBxgJGAAADBgAABMYAAAkGCUYAEGmlg4LAiYYAEGwlg4LLCgYMxgAAAAAPhgAAEAYAAAAAEQYRRhGGAAARxgAAAAAAABUGAAAAAAAAFoYAEHolg4LElsYYBgAAGIYYxhkGAAAahhvGABBhJcOCxhxGAAAAAAAAHIYhhgAAIwYAAAAAAAAjRgAQayXDgsSjhgAAAAAAACwGAAAAACyGLwYAEHOlw4LAr4YAEHelw4LLL8YAAAAAMEYAADCGAAAwxjEGAAAAADUGNUY4RgAAAAAAADiGOMY5BgAAOUYAEGUmA4LAugYAEGgmA4LBu4Y7xjwGABBrpgOCxDyGAAA9Rj9GAAZCxkAAA4ZAEHMmA4LBA8ZEBkAQdyYDgsCERkAQeaYDgsCEhkAQfaYDgsWFBkAABUZFxkZGQAAHRkeGQAAIRkmGQBBoJkOCxAnGSgZAAAAACkZAAAAACwZAEG4mQ4LAi4ZAEHCmQ4LHC8ZMBkAAAAAMhkAAAAAAAA2GQAAAAA3GQAAPRkAQeqZDgsgPhkAAAAAPxkAAEAZAABBGUMZAAAAAAAARBkAAE8ZUBkAQZiaDgsKURkAAAAAVRlXGQBBrpoOCwJdGQBBwJoOCwZeGV8ZYBkAQdCaDgsMYhkAAAAAAABrGWwZAEHwmg4LBG8ZcBkAQfyaDgsKcRkAAAAAAAByGQBBkJsOCxp0GQAAAAB1GXYZAAAAAAAAdxl4GXkZAAB7GQBBspsOCzJ8GYAZAACCGQAAAACEGQAAshkAAAAAAAC3GQAAuBkAAAAAAAC7GQAAAAAAAL4ZAAC/GQBB7psOCwLAGQBB+JsOCwTBGcIZAEGGnA4LDscZyBkAAAAAyRnKGcwZAEGwnA4LAtAZAEHCnA4LFNIZ0xkAANcZAADYGdoZ3BkAAO0ZAEHenA4LAu8ZAEHonA4LJvEZAADyGQAAAAAAAPcZAAAEGgcaAAAIGgAAChoNGgAAExoUGhUaAEGgnQ4LDhYaAAAAAAAAFxoAABgaAEG8nQ4LAiUaAEHQnQ4LDjAaMRoyGgAAAAA3GjkaAEHonQ4LEDwaAAAAAAAAPRoAAD8aRBoAQYieDgsERRpGGgBBlp4OCyBIGkkaTxoAAFEaVhoAAAAAVxpeGgAAXxoAAAAAYBphGgBBwp4OCwJiGgBBzp4OCwJkGgBB3J4OCyxrGgAAAABsGm0aAAAAAAAAchoAAAAAAAB4GnwaAAB9GgAAAAAAAH8aAACAGgBBrp8OCxiBGgAAAAAAAIgaAAAAAAAAiRoAAAAAkhoAQdCfDgsekxoAAAAAAACUGgAAAAAAAJwaAAAAAKcaAACoGrcaAEH2nw4LDsQaAAAAAMYaAADIGskaAEGWoA4LFNMaAADUGtYa2BoAAAAAAADZGtoaAEG0oA4LCNsaAAAAAN0aAEHKoA4LDt4aAAAAAAAA3xoAAOAaAEHsoA4LDucaAADoGusa7RoAAO8aAEGKoQ4LAvMaAEGUoQ4LAvUaAEGeoQ4LJv4aAAD/GgAAAAAAGwAAAAABGwIbAAAAAAAAAxsAAAAAAAAEGwcbAEHQoQ4LJgwbAAANGwAAAAAAAA4bDxsQGwAAERsAABIbAAAAABMbFxsAABgbAEH+oQ4LBhsbHBsdGwBBoqIOCwYeGyQbJRsAQbaiDgsSKBsqGzMbNRs2GwAAAAA3GzgbAEHaog4LFjkbAAAAADobQxsAAAAARBsAAAAARxsAQfqiDgsCSBsAQYqjDgsGTBtOG1AbAEGeow4LClMbAAAAAAAAZBsAQbqjDgsCaxsAQcyjDgsSbRsAAAAAbhtvG3QbAAB2G3kbAEHqow4LAn4bAEGApA4LAn8bAEGMpA4LBoYbAACHGwBBqKQOCwSIG4wbAEG2pA4LBo4bAACUGwBBxKQOCwaVGwAAmRsAQdKkDgsymxudGwAAnhufG6AbAAAAAKYbAACoG6kbAACrGwAAAAAAAKwbrxuwGwAAAACyGwAAtRsAQaKlDgsIwxsAAAAAxBsAQbqlDgsGxhsAAMobAEHOpQ4LBssbAADMGwBB3qUOCxjNGwAAAADOGwAAAADUGwAA1RsAAAAA1hsAQf6lDgsC2BsAQYqmDgse2RsAANobAADcG90bAAAAAN4bAAAAAOMbAADsG+4bAEGwpg4LDvAbAAAAAAAA8Rv0G/UbAEHIpg4LAvYbAEHepg4LCvsb/RsBHAAAAxwAQfqmDgsIBBwAAAUcDRwAQYynDgsEDhwRHABBmKcOCwgTHAAAIRwkHABBqqcOCwQmHCccAEG2pw4LCCscMBwAADIcAEHGpw4LDjocPBw+HEAcQRxDHEUcAEHcpw4LFkYcSRwAAEocAAAAAE8cAAAAAAAAYhwAQYCoDgsUeRwAAAAAehx7HAAAAAB8HAAAgRwAQaioDgsGhBwAAIUcAEHGqA4LAoYcAEHQqA4LAokcAEHaqA4LDoscAACMHAAAjhwAAKccAEH2qA4LCKkcAACvHLMcAEGIqQ4LDLQcAAC1HLYcuBy6HABBnKkOCxy9HAAAvhzGHAAAxxzIHAAAAADNHAAAAAAAAM4cAEHGqQ4LCtAcAAAAAAAA0RwAQdqpDgsI0hwAANMc1BwAQeypDgsI1xwAAAAA2hwAQfypDgsQ5hwAAAAAAADnHOgcAADpHABBmqoOCwLqHABBpqoOCwLtHABBsqoOCwLuHABBxKoOCxz9HAMdBR0AAAAAAAALHQAAAAAMHQAAAAAAAA0dAEHsqg4LDA4dEx0AABYdAAAYHQBBjKsOCwIgHQBBmKsOCwghHQAAAAAlHQBBqqsOCwImHQBByKsOCyonHSodMB0AADQdAAAAAEIdAABDHQAAAABFHQAAAAAAAEodSx0AAAAAVB0AQfyrDgsOWB0AAAAAAABZHVodXB0AQZKsDgs2Xh0AAAAAXx1hHWIdAAAAAAAAZh0AAAAAaR0AAAAAax0AAHAdAAByHQAAcx0AAAAAdR12HXodAEHSrA4LBnsdAAB8HQBB4qwOCwp+HQAAAACAHYEdAEGArQ4LCIIdix0AAJUdAEGUrQ4LGJYdmB0AAJodnR2fHQAAAAAAAKAdAACjHQBBtq0OCxqlHQAAAAAAAKodAAAAAKsdAAAAALAdsh26HQBB2q0OCyK8HQAAvR2+HQAAAAC/HQAAAADAHQAAxB0AAMUdxh0AAMcdAEGErg4LAsodAEGOrg4LDMsdzR3PHQAAAADRHQBBpK4OCw7XHQAA2B3aHQAAAADbHQBBuq4OCwLcHQBByq4OCwLdHQBB1q4OCxztHe4d7x3xHQAA8h0AAPMdAAAEHggeCh4AAAseAEH+rg4LJAweAAAAABQeAAAbHgAAHB4AAB0eAAApHgAAAAAAACoeAAAsHgBBrq8OCw4xHjMeAAA0HgAANR43HgBByq8OCx47HgAAAAA9HkEeAABEHgAAAAAAAEceAAAAAAAASB4AQfavDgsUSR4AAAAATB4AAE0eAABPHgAAUB4AQZKwDgsiUR5YHgAAAABZHgAAAABaHgAAAABbHgAAAABcHgAAAABdHgBBvrAOCwRiHmceAEHMsA4LCGgeaR4AAG4eAEHcsA4LBnAeAAB2HgBB7LAOCzR3HgAAgh4AAAAAhR4AAIYeAACIHgAAih6QHpEekh4AAJQelh4AAAAAAACgHgAAoh4AAKMeAEGosQ4LAqQeAEG4sQ4LAqYeAEHEsQ4LGLAesR6yHrYeAAC5HgAAAAC6HgAAAADpHgBB5LEOCxLqHgAAAADrHu0e7h7vHgAA8B4AQZSyDgsg8R7yHgAA9B4AAAAA9R4AAAAA9x4AAPoe/x4AAAAAAR8AQcCyDgsGAx8AAAQfAEHQsg4LAgUfAEHasg4LAgkfAEHksg4LAg0fAEH2sg4LBg4fAAARHwBBirMOCwIgHwBBlLMOCwohHyQfOB8AADkfAEG0sw4LAjofAEG+sw4LBEcfSB8AQdqzDgsKSh8AAAAAAABMHwBB9LMOCx5SHwAAXB9dHwAAAABeHwAAAABgH2EfAAAAAGIfZB8AQaa0Dgs6ZR8AAAAAAABrH3Qfex98HwAAAAB9HwAAAAAAAH4fAAB/HwAAgB8AAIIfhB8AAAAAAACQH5EfAACZHwBB6rQOCwKcHwBB+LQOCwSdH64fAEGKtQ4LAq8fAEGWtQ4LCLAfsx8AALUfAEG+tQ4LGrgfuR+6H8AfwR/CH8MfAAAAAMsfAAAAANAfAEHgtQ4LBtEf0h/ZHwBB9rUOCxDaHwAA3R/gH+IfAADkH+UfAEGOtg4LKOYf5x8AAAAA8x8AAAAAAAD5HwAAAAAAAPofAAAAAPsfAAAAAAAA/B8AQcC2DgsCDCAAQcq2DgsCEiAAQda2DgsMFSAAABYgAAAAABcgAEHutg4LAhogAEGCtw4LDBsgAAAdIAAAAAAeIABBrrcOCxAhIAAAAAAAACkgAAAAADIgAEHUtw4LGjcgAAA4IDwgAABAIEEgAAAAAEUgAABIIEkgAEH2tw4LCksgAAAAAAAATSAAQZK4DgscTiAAAAAAAABWIAAAVyBbIAAAAABdIF4gYSBkIABBtrgOCwplIGcgayBsIG0gAEHMuA4LBHAgcyAAQd64DgsggSAAAAAAAACCIIMghSCGIIcgAAAAAIwgkiAAAAAAlCAAQYi5DgsOniAAAAAAnyAAAKIgoyAAQbK5DgsEqCC0IABBxrkOCwK5IABB0LkOCw68IAAAAAAAAL8gAADAIABB5rkOCwrCIMggAAAAAMogAEH+uQ4LDMwgzSAAAM4gAADPIABBlLoOCxLQIAAA0SDaINsgAADcIN0g5iAAQa66DgsC5yAAQbi6DgsI6CAAAAAA6SAAQc66DgsE+SD6IABB3roOCwz7IAAAAAD8IAAA/yAAQfK6DgskAyEAAAohAAAOIQAAAAAUIQAAFSEAAAAAAAAWIQAAGSEfISAhAEGeuw4LBCEhIyEAQbS7DgsIJCEAAAAAKiEAQci7DgsKKyEtIS4hAABQIQBB4LsOCwJSIQBB8rsOCy5WIVohXCEAAAAAXSEAAAAAYSEAAG0hAAAAAHkheiEAAAAAeyF+IX8hgyEAAIchAEGovA4LAo8hAEG6vA4LBp4hAACfIQBB0rwOCzKgIQAAAAChIQAAAAAAAKIhAAAAAAAAoyEAAAAApSGpIa0hAAAAAK4hAACvIQAAsCGxIQBBlr0OCwi9Ib4hvyHKIQBBpr0OCwbMIc4hzyEAQcC9DgsC0CEAQcy9DgsC0SEAQeC9DgsI0iEAAAAA0yEAQZC+DgsC1CEAQZ6+DgsG1SHXIdghAEGsvg4LBtkhAADdIQBBwL4OCyDfIeIhAADsIQAA7iEAAAAAAADxIQAAAAAAAPIhAAACIgBB9r4OCxoGIgAAByIJIgoiFCIXIhgiHSIgIgAAISIjIgBBmL8OCwgmIiciKSIyIgBBqL8OCwI0IgBBtr8OCwQ1IjgiAEHEvw4LGDoiOyI8IgAAPiJBIkIiRSIAAEYiAABLIgBB5L8OCw5MIgAAAABNIgAAAABPIgBBnsAOCwJQIgBBsMAOCwJRIgBBusAOCwJSIgBBxMAOCxJUIlYiAAAAAAAAYyIAAG0ibiIAQeDADgsEbyJwIgBB7MAOCwJyIgBB9sAOCwp2InwifSIAAH8iAEGIwQ4LHoEiAAAAAAAAgiIAAAAAAACDIgAAhCIAAAAAAACFIgBBssEOCwSGIociAEHMwQ4LFogiAAAAAAAAiSIAAIoiAAAAAAAAjiIAQfDBDgsijyIAAJAiAAAAAKAiAAAAAKIiAAAAAKYiqCIAAAAAqSKqIgBBnsIOCwarIgAArCIAQazCDgsEwCLEIgBBuMIOCwLFIgBBxMIOCwbIIgAAyyIAQdLCDgsSzyLQItEiAAAAAAAA0iIAANMiAEH8wg4LCtQiAAAAAAAA4SIAQZrDDgsU4iIAAOQiAADvIgAAAAAAAPEi8yIAQbbDDgsS9SIAAPYiAAD6Iv0iAAAAAAojAEHQww4LBgsjAAAkIwBB3sMOCwQlIygjAEHqww4LDCkjKiMAACwjMSNAIwBBjsQOCwxDI3ojAAAAAHsjgSMAQabEDgsggiMAAAAAAACEIwAAAACFIwAAhyMAAAAAiCOJI40jjiMAQdbEDgsCmCMAQeTEDgtImiMAAAAAoCMAAKEjoiMAAAAAAACjI6QjAAAAAKUjAAAAAKYjAACnIwAAAACpI6sjAAAAAAAArCMAAAAAsCMAALgjAAAAALwjAEG4xQ4LDr0jAADAI8sjAAAAAM0jAEHgxQ4LBs4jAADRIwBB9MUOCwLSIwBB/sUOCw7UIwAA1iPXI9gjAADZIwBBnMYOCxbiIwAA4yMAAAAAAADkI+UjAAAAAOYjAEG6xg4LCucjAAAAAAAA6SMAQczGDgsO7SPuIwAAAAAAAPgj+yMAQePGDgsHJAEkAAAEJABB8sYOCyYFJAYkByQAAAgkCSQAAAAACyQAAAwkDSQAAAAADiQAABAkAAARJABBoscOCwoSJBMkAAAAABUkAEG8xw4LChYkGCQAAAAAGSQAQc7HDgsCHCQAQdjHDgsCHyQAQe7HDgsKICQAAAAAAAAhJABBgsgOCwIiJABBjMgOCxIjJAAAAAAkJCckAAAAAAAAKCQAQazIDgsIKSQAAAAAKiQAQcDIDgsCKyQAQczIDgsMLiQvJAAAAAAxJDIkAEHoyA4LBDQkNyQAQf7IDgsOOSQAAAAAAAA8JD0kPyQAQZrJDgsIQCQAAAAATSQAQazJDgsEUSRVJABBxskOCxpcJF0kYSRpJGokAABuJG8kAAAAAAUlAAAHJQBB6MkOCw4KJQAAAAAAAAslAAAMJQBBiMoOCxANJQAAAAAOJQAAAAAAABElAEGgyg4LBBIlEyUAQazKDgsIFSUAABclGCUAQcTKDgsGHCUAAB4lAEHUyg4LEiAlIyUAACUlAAAnJQAAAAApJQBB9soOCwIrJQBBhMsOCwQsJS0lAEGQyw4LFDwlAAAAAD0lAAAAAEIlAABDJUQlAEGsyw4LCkUlAAAAAAAARiUAQcbLDgsISCVJJQAASiUAQdrLDgtGSyVMJQAAAAAAAE4lAABVJQAAViUAAFklAABbJWIlAABkJWYlZyUAAAAAAABpJXglAAAAAHwlAAAAAAAAfiUAAIAlAACBJQBBrMwOCwiIJQAApiWnJQBBwswOCxapJQAAAACrJawlrSWuJQAAAAAAALAlAEHmzA4LBLIltiUAQfrMDgsCtyUAQYbNDgsGuCUAALklAEGUzQ4LGrolAAAAALslAAAAAMAlAAAAAMElAADDJcUlAEHGzQ4LCMclAADJJdElAEHWzQ4LBtIl0yXUJQBB5M0OCxTWJeIlAAAAAOQl5SXmJQAA5yX1JQBBgM4OCwb2JQAA/iUAQY7ODgsg/yUAAAAAAAAAJgAADiYAABAmAAAAAAAAFiYAABomGyYAQbjODgs6HCYAAB0mKCYAACkmAAAAAAAAKiYrJgAALSYAAC4mAAAvJgAAAAAAADAmMSY4JgAAAAAAADomAAA9JgBB+s4OCwxBJkImAAAAAAAAUCYAQZDPDgsCUyYAQarPDgsOVCYAAFwmAABfJgAAZCYAQcDPDgs0ZiYAAAAAaSZsJgAAAAAAAHAmAAAAAAAAcSYAAAAAciYAAHUmAAAAAAAAdyZ4JgAAAAB/JgBBgNAOCwaAJocmiSYAQZbQDgsKiiaLJowmkSaTJgBBrNAOCxSYJgAAniYAAAAAAACfJgAAAACjJgBBztAOCw6yJrMmtCYAAAAAAAC1JgBB6NAOCwK2JgBB8tAOCwK5JgBB/NAOCwK6JgBBiNEOCwLCJgBBktEOCwTDJsUmAEGi0Q4LCsomAAAAAAAAyyYAQcrRDgsszCYAANMmAAAAANQm6ibuJgAA8SbyJgAAAAD2JgAA+yb9Jv4mAAAAAAAAAScAQYLSDgsCAycAQZLSDgsWBCcJJwAAAAAKJwAAAAAAAA0nAAAUJwBBstIOCxAXJyMnJCcmJwAAAAAAAC8nAEHM0g4LDDAnAAAAADInAAA0JwBB4NIOCww2JwAANyc4JzknOicAQfbSDgsCOycAQYLTDgsEPSdGJwBBjtMOCwpHJwAAAABJJ0onAEGk0w4LAksnAEG00w4LAkwnAEHE0w4LMk8nAABSJwAAAAAAAFYnAABYJwAAAABcJ10nAAAAAGQnAABnJ2onaycAAAAAAABuJ3EnAEGC1A4LAnInAEGQ1A4LCncnAAB4JwAAfCcAQarUDgsQiCcAAAAAAACKJwAAAACNJwBBwtQOC0KPJ5AnAAAAAJYnAACXJ5gnAACZJwAAAACjJwAApSemJwAAAACsJwAArievJ7AnuCcAAAAAuycAAL0nAAAAAAAAwCcAQYzVDgsCwScAQZbVDgsCwicAQaDVDgsY0icAANonAAAAANsn3CcAAN0n3icAAN8nAEHA1Q4LAuEnAEHQ1Q4LAuUnAEHe1Q4LHOknAAD1JwAA9if3JwAAAAD4JwAAAAD9J/4nBCgAQYTWDgsGCigAAAwoAEGW1g4LCA8oAAAAABEoAEGq1g4LBhIoAAATKABBwNYOCwIUKABB0NYOCxIsKDAoMSgAAAAAAAAyKAAAOCgAQezWDgsCOSgAQfrWDgsCOigAQYTXDgsEOyg/KABBktcOCw5CKAAAAAAAAEMoAABEKABBqNcOCwJHKABBuNcOCxpLKE0oAAAAAAAATihPKAAAUSgAAFYoAABYKABB2tcOCwxZKAAAAABbKAAAXCgAQfLXDgsKXigAAAAAXyhiKABBhtgOCwRjKG0oAEGW2A4LBm8oAABxKABBqNgOCxR6KAAAgCgAAIEoAAAAAAAAhCiFKABBxtgOCxiGKAAAAAAAAIcoAACIKAAAAACSKJQoligAQezYDgsYlygAAAAAmCiaKAAAAACcKAAAnSgAAKMoAEGU2Q4LEqQoAAClKKooAAAAAKsoAACsKABBtNkOCwa1KLYotygAQczZDgsOuSgAAAAAuygAAAAAvigAQeTZDgsIwCgAAMEowigAQfTZDgsSxCjFKAAAxigAAMcoAADMKM4oAEGQ2g4LAtAoAEGc2g4LAtEoAEGs2g4LGtMoAADVKAAAAAAAANYo2SgAAAAA2ygAAOUoAEHQ2g4LBOgo8SgAQd7aDgsI8ijzKAAA/CgAQfraDgsgAykAAAAAAAAGKQAAAAAOKQAAGSkcKQAAAAAdKR4pICkAQarbDgsCIikAQbTbDgsGJSkAACYpAEHO2w4LFicpKCkAAAAAMCkAADkpPCkAAD0pPykAQe7bDgsWQilDKUQpAABFKQAAAAAAAEYpAABHKQBBjNwOCwxPKQAAAABQKQAAUikAQazcDgsSWSlaKVspXSkAAF4pAAAAAGIpAEHI3A4LKmYpAAAAAGkpAAAAAAAAaikAAGspAABsKQAAbSkAAAAAbykAAIIpAACDKQBB/NwOCziFKYYphykAAAAAAACWKQAAAAAAAJcpAACaKQAAmykAAAAAAACcKZ0pnykAAKIpAAAAAKMpAACrKQBBvN0OCwKtKQBB0N0OCwquKQAAAAAAAK8pAEHi3Q4LELApsSkAALIpAAAAAAAAtCkAQf7dDgsQtikAALopAAAAAMQpAADJKQBBlt4OCwrKKQAAAAAAAMwpAEGq3g4LBs8pAADQKQBBvt4OCxDRKQAA2yneKeApAAAAAOIpAEHe3g4LAuMpAEHo3g4LAuYpAEH03g4LBucp6in3KQBBht8OCwj4KQAAAAD5KQBBmt8OCwL8KQBBpN8OCxL+KQAAAAAAKgEqAAAAAAAABCoAQcLfDgsUBioAAAAAAAAHKgAAESoAAAAAFCoAQeLfDgsQFSoAAAAAAAAZKgAAAAAbKgBBguAOCxQcKiAqAAAAAAAAJSoAAAAAAAAnKgBBqOAOCyYrKgAAAAAsKgAAOCoAADkqAAAAAAAAOioAAAAAAAA8KgAAAAA+KgBB4OAOCwI/KgBB6uAOCwRAKkEqAEH24A4LBkMqAABEKgBBhOEOCwxFKkYqRyoAAEoqYSoAQZjhDgseYioAAAAAZCoAAGUqAAAAAGgqAAAAAGkqaiprKmwqAEHC4Q4LFG8qAAByKnMqeCqKKgAAAACLKowqAEHg4Q4LFI0qAAAAAAAAkCqTKgAAAACUKpYqAEH+4Q4LApcqAEGY4g4LBpkqAACaKgBBpuIOCw6cKp8qAACgKgAAAACkKgBBvuIOCw6lKgAApioAAAAAAACrKgBB1uIOCxisKgAAAACwKrEqAAAAALIqAAAAAAAAtCoAQfbiDgsWuyoAAAAAwSoAAAAAAADDKgAAAADEKgBBpOMOCxbOKgAA0CrSKgAAAADUKgAAAAAAANYqAEHO4w4LEtcqAAAAAAAA2CoAAAAAAADdKgBB6uMOCybfKgAAAAAAAOAq4ioAAAAA5iroKusqAAAAAOwqAADtKgAAAADvKgBBmOQOCyjwKgAAAAAAAPEqAADzKgAAAAAAAPQq9SoAAAAAAAD2KgAA9yoAAPkqAEHM5A4LFgIrBCsAAAUrCCsJKwAAAAALKwwrDSsAQfrkDgsKDisAAAAADysVKwBBjOUOCwoXKwAAAAAAABorAEGe5Q4LAi8rAEGq5Q4LBDArNCsAQbrlDgsWNSsAAAAAOCs5KwAAOisAAD0rAABNKwBB2uUOCxxOKwAAAAAAAFArAAAAAAAAVisAAAAAAABXK1grAEGC5g4LBFkrWisAQZLmDgsyWysAAAAAXitkKwAAAAAAAGUrAABqK28rAAB7KwAAAAAAAIYrAAAAAIcrAACKKwAAiysAQeLmDgskjCsAAI0rkCuRK5IrAACUKwAAlSsAAAAAAACWKwAAAACXK5grAEGe5w4LHJsrAAAAAJwrnisAAAAAAACkK6YrAAAAAAAAqCsAQcTnDgsWriuvKwAAAAAAALArsysAAAAAtCu1KwBB5ucOCwK6KwBB9ucOCwTAK8IrAEGG6A4LBsMrAADEKwBBlugOCz7FKwAAAAAAAMYrAADHKwAAAADJKwAAyysAAM4rAAAAAN8rAAAAAAAAHSwfLAAAAAAgLCEsJiwAAAAAAAArLABB3OgOCxQtLC4sAAAvLAAAAAAAADEsAAAyLABB+OgOCw5GLAAASiwAAAAAAABLLABBkOkOCyhMLAAATSxOLAAAUCwAAFEsAAAAAAAAVCxVLAAAAABWLAAAAAAAAFssAEHE6Q4LQFwsAABdLGosAAAAAGssAABuLHAsAAAAAAAAcSwAAAAAcix3LAAAeiyHLAAAiCyOLAAAAAAAAJAsAAAAAJEslCwAQYzqDgsUmSwAAAAAAACaLAAAnSwAAKIspSwAQarqDgsKpiwAAK0sAACuLABBvuoOCwSwLL0sAEHO6g4LAr4sAEHY6g4LFr8sAAAAAMAsxCzFLMcsAADNLAAA0SwAQfbqDgsS0iwAAAAAAADTLAAA1CzVLNgsAEGQ6w4LDtksAAAAANwsAAAAAN8sAEGy6w4LFuksAAAAAO4sAAD1LAAAAAD2LPcs+SwAQdzrDgsC+ywAQebrDgsI/CwAAAAtAS0AQYTsDgsOCS0KLQstDi0AAAAAFy0AQZzsDgsGGy0AABwtAEGs7A4LEiAtJC0AACUtAAAAACctAAAoLQBByuwOCw4pLQAAAAArLSwtAAAtLQBB4OwOCzIvLQAAAAAAADEtAAA2LQAANy0AAAAAAAA5LQAAOi0AAAAAAAA8LT0tAAAAAAAAPi1ALQBBoO0OCwxDLQAARC1HLQAASy0AQbztDgsGTC0AAE0tAEHK7Q4LDE4tUS0AAAAAAABSLQBB+u0OCw5TLVQtAABWLQAAAABYLQBBkO4OCwhaLQAAAABbLQBBoO4OCw5dLQAAZi0AAAAAAABnLQBBtu4OCw5pLQAAAABqLWstbC1uLQBB0O4OCxJ3LQAAAAB+LQAAgC2BLQAAgi0AQfTuDgsUgy0AAAAAhC2FLYgtAAAAAJ0tny0AQZDvDgsMoC0AAAAAoS0AAKUtAEGs7w4LDqgtAAAAAAAAxC0AAMctAEHE7w4LCsktAAAAAMwt3y0AQd7vDgsG4S3kLeYtAEHu7w4LEOctAAAAAAAA6C3qLQAA6y0AQYzwDgsC7y0AQZrwDgsK8C0AAAAAAADxLQBBsPAOCxj2LfctAAD8Lf0tAAD+LQAAAAD/LQAAAS4AQe7wDgsEAi4ELgBBgPEOCxYHLgAACC4AAAAAAAAJLgAAAAAAAAouAEGe8Q4LDAwuAAAAAA0uDy4QLgBBsvEOCzgTLjouOy48LgAAAAA9LgAAAAAAAD4uAAAAAEYuSy4AAEwuAABdLgAAAAAAAF8uAAAAAAAAYC5iLgBB9vEOCwhjLgAAZC5lLgBBkvIOCwJrLgBBovIOCzJsLgAAbS4AAG4uAAAAAG8uAAB2LncueS6FLoYuAACILo4uAAAAAJAuAACSLpQuly6YLgBB3PIOCwaZLgAAni4AQezyDgsKpS6nLqguAACpLgBB/vIOCwSsLq0uAEGK8w4LDrEuAACyLgAAsy4AALQuAEGi8w4LCLUuAAAAALcuAEG68w4LArkuAEHG8w4LFMouAAAAAAAAyy7MLtIu0y4AANguAEHk8w4LFNkuAAAAAAAA2i4AAN8u5C7lLuYuAEGC9A4LJusuAAAAAOwu7i4AAAAA7y4AAAAA8y78LgAAAAD9LgAAAAAALwEvAEGw9A4LDgIvAAAJLwsvAAAAAAwvAEHM9A4LAg4vAEHc9A4LEhYvFy8AABgvAAAAAAAAHC8gLwBB+PQOCwYhLyMvJC8AQY71DgsiKi8AAAAAAAArLywvAAAAAAAALy8AADEvNi83LwAAAAA4LwBBuPUOCwY5LwAAPC8AQcb1DgsCQS8AQdj1DgsCQi8AQfT1DgskRi9HL0gvTy8AAAAAUi9ULwAAAAAAAFYvAAAAAAAAVy9YL2AvAEGg9g4LAmIvAEGu9g4LDGMvAAAAAAAAZC9mLwBBwvYOCxhpLwAAay8AAG0vAAAAAG4vAAAAAAAAcC8AQeT2DgsKcS8AAHQvAAB5LwBB9vYOCw56L4svjS8AAAAAAACPLwBBjPcOCwKSLwBBnPcOCwKXLwBBrvcOCwqYLwAAAAAAAJovAEHC9w4LHJsvnC8AAAAAnS8AAKQvAAClLwAAAACmLwAAqS8AQeb3DgsGqy8AALEvAEH09w4LDrIvsy+0L7UvAAC5L7ovAEGU+A4LAr4vAEGk+A4LCL8vAAAAAMUvAEG0+A4LAskvAEG++A4LLMovAAAAAMwv0i8AAAAAAADTLwAAAAAAANQv3S8AAN4v4C8AAOEvAAAAAPMvAEH0+A4LAvUvAEGA+Q4LKvYvAAABMAAAAAACMAAABDAFMAAAAAAGMAAABzAAAAAACDAAAAkwAAAKMABBsvkOCwINMABBzvkOCwgVMAAAMjA0MABB3vkOCwI1MABB8PkOCwg2MDcwAAA4MABBivoOCwI5MABBnPoOCwI6MABBpvoOCwI8MABBwPoOCwI+MABB4PoOCxQ/MAAAQzBEMEUwAAAAAE8wUjBTMABB/voOCwRUMFgwAEGS+w4LEFswAABeMAAAXzAAAAAAYDAAQar7DgsIaTAAAAAAajAAQbr7DgsKbjBzMAAAAAB0MABB3vsOCxJ6MAAAAAAAAHswAAAAAAAAfDAAQfj7DgsGhDAAAIUwAEGI/A4LEocwAACJMI0wAAAAAAAAjzCQMABBsvwOCwKSMABBvvwOCwSTMJQwAEHS/A4LApUwAEHe/A4LApYwAEHw/A4LDJ0wAAAAAAAAojCjMABBjP0OCxSkMLswAAAAAM0wzjAAAAAAAADPMABBqP0OCwbQMNYw3TAAQbb9DgsI3jAAAOAw4TAAQcb9DgsW4jAAAAAAAADjMAAA6DAAAAAAAADsMABB/P0OCxLvMAAAAAAAAPAwAAAAAAAA8TAAQZj+DgsQ8jAAAPcwAAAAAPgwAAD6MABBwP4OCwb8MAAABDEAQdD+DgsUBjEAAAAAAAAHMQgxAAAAAAAACjEAQfT+DgsQCzEAAAAAEjEAABUxAAAWMQBBnP8OCwwZMQAAAAAAABsxHjEAQbb/DgsCITEAQcb/DgscIjEjMTsxAABAMQAAAABDMQAARDEAAEcxAABRMQBB6v8OCw5TMWYxAABoMQAAAABxMQBBlIAPCw5+MQAAAAB/MQAAgTGFMQBBuIAPCyKHMQAAiTEAAIoxlTEAAJYxAACZMQAAnTEAAAAAAACfMaAxAEHigA8LGKMxwTEAAAAAwzEAAAAAxDEAAAAAxjHHMQBBjIEPCxTJMQAAyjHLMQAAzDEAAAAA1zHfMQBBqIEPCwjlMQAA5jHqMQBBvoEPCwLrMQBByoEPCxDsMfkxAAAYMgAAGTIAACQyAEHigQ8LBicyAAAqMgBBgIIPCwgrMi0yAAAuMgBBkIIPC0AvMgAAAAAyMjQyNTIAAAAAAAA2MgAAAAAAADcyAAA4MgAAOjIAAAAAOzIAAD4yAAA/MgAAAABCMgAARTJIMkkyAEHigg8LDEsyAABNMgAAAABOMgBBgIMPCwpUMlUyWDIAAFkyAEGSgw8LDl0yAAAAAAAAXzJgMmIyAEGugw8LHGYyAABtMm4yAAB+MgAAgDIAAAAAAACBMgAAgjIAQdKDDwsIgzIAAIQyhTIAQfqDDwsGhjIAAI4yAEGIhA8LApAyAEGahA8LDpIyAAAAAJQyAAAAAJUyAEGwhA8LApYyAEG6hA8LFpcyAACYMgAAmTIAAAAAAACaMp4ynzIAQdqEDwsEoDKkMgBB6IQPCwKmMgBB+oQPCwaqMgAAqzIAQYyFDwserDIAAAAAtjIAAAAAAAC4MrkyAAC6MsQyxTLJMsoyAEGyhQ8LIMwyAAAAAM0yAAAAAM8y0TIAANkyAAAAAAAA3DIAAN0yAEHmhQ8LAt4yAEH4hQ8LBOAy4zIAQYaGDwsI5DIAAAAA5TIAQZyGDwsG6DIAAO0yAEGuhg8LFPAyAAAAAPEyAAAAAAAA8zL0MvYyAEHKhg8LAvcyAEHahg8LEPky/jIAAAAzAAAAAAQzBTMAQfSGDwsMCzMAAAAADDMAAA8zAEGKhw8LBBUzFjMAQZiHDwsSFzMYMxkzAAAaMwAAAAAAAB0zAEG4hw8LCB4zAAAfMyAzAEHKhw8LJiYzAAArMwAALDMAAAAAAAAtMwAARTNGM0gzSTMAAAAASjMAAEszAEH8hw8LAk4zAEGUiA8LBl4zAABwMwBBrIgPCwhxMwAAAAByMwBBvIgPCwp2MwAAAAAAAHgzAEHQiA8LLHkzAAB6M38zgzMAAAAAAACFMwAAAACGMwAAAACHMwAAAACWMwAAAAAAAJczAEGQiQ8LGJwzAAAAAKMzsDMAAAAAAAC5MwAAwTPFMwBBsokPCxLHM8szAADMM80zAADOMwAA2DMAQcyJDwsC3DMAQdaJDwsk3TPzMwAAAAD1M/YzAAAAAPczAAAAAPkzAAD+MwAAAAAAAP8zAEGCig8LDg00AAAQNAAAAAAAABE0AEGcig8LEhI0AAAAABM0AAAXNAAAAAAeNABBuIoPCzofNAAAKjQAADI0AAA2NDc0OTQAAAAAOzQ8NAAAPTQ+NAAAQDQAAEQ0RTRKNAAASzRMNAAATTRPNFM0AEH8ig8LCFk0YTQAAGI0AEGMiw8LAmw0AEGYiw8LAm40AEGiiw8LAm80AEGsiw8LAnE0AEG4iw8LIHM0AAAAAAAAdDQAAAAAdjR+NAAAfzQAAIU0AACINIk0AEHkiw8LBos0AACRNABB8osPCwiSNJM0AACUNABBgowPCyKYNJk0mjSeNAAAnzSgNKI0ozQAAKQ0AAAAAKY0pzQAAKk0AEGsjA8LFq80AACyNAAAtTQAAAAAtjQAAAAAtzQAQd6MDws0uDS5NAAAvDQAAAAAzDTSNAAAAADVNNg0AAAAAAAA2jTfNAAA4TTjNAAA5DQAAOc0AADoNABBno0PCwLpNABBrI0PCxbrNAAAAAAAAO008zQAAAAAAAD0NPU0AEHQjQ8LBvY0AAD7NABB3o0PCwL8NABB8I0PCwL+NABB/o0PCwgBNQAAAAADNQBBjo4PCwIFNQBBnI4PCwIKNQBBso4PCw4NNQAAEjUAABs1AAAgNQBB0I4PCxYhNSM1AAAkNSU1JjUnNQAAAAAxNTI1AEH0jg8LCDc1AAA5NTs1AEGMjw8LEj01AAAAAAAAQjUAAAAAAABGNQBBro8PCwJWNQBBxI8PCx5YNQAAWzUAAAAAXDUAAAAAXjUAAAAAAABfNQAAYDUAQeyPDwsOZDUAAGU1ZzUAAAAAaDUAQYaQDwskazV1NQAAdjUAAAAAAAB3NQAAAAAAAHw1fjWBNQAAAAAAAIY1AEG0kA8LAok1AEG+kA8LCos1AAAAAAAAkjUAQdqQDwsUkzUAAJQ1lTUAAAAAlzWcNaI1ozUAQf6QDwsCpDUAQY6RDwtGpjUAAKg1AAAAAKk1qjWzNQAAtzUAAAAAuDUAAAAAAAC5NQAAvTUAAAAAwjXDNQAAxDXFNQAAxjUAAAAAxzUAAAAAAADINQBB4pEPCwzJNQAAAADMNQAAzzUAQZKSDwsc0DXSNds1AAAAAAAA5TUAAOY1AADpNQAA7DXuNQBBtpIPCwT4Nfk1AEHUkg8LFgo2AAAMNgAAAAAONgAAAAAPNgAAEDYAQfKSDwsCEjYAQYCTDwsCEzYAQZSTDwsCFTYAQaCTDwsgIjYAAAAAJDYAAAAAJTYAAAAAJjYnNgAALDYAAC02LjYAQdSTDwsCMDYAQd6TDwsEMTY2NgBB9pMPCzo+NgAAQDZBNkI2AAAAAEM2RjYAAEk2SzZMNlA2AAAAAFI2AAAAAAAAVTYAAAAAAABWNgAAAAAAAFc2AEG6lA8LBFg2XTYAQcaUDwsaXjYAAF82AAAAAGA2AAAAAAAAYTYAAAAAYjYAQe6UDwsGZDYAAGc2AEH+lA8LImw2AABtNgAAbjYAAAAAbzYAAHg2AAAAAAAAgjYAAAAAgzYAQaiVDwsMhDYAAIU2AACPNpE2AEHMlQ8LDpI2pjYAAKc2qjYAAKs2AEHilQ8LGKw2AAAAAK82AAAAAAAAwjYAAMM2AADFNgBBhpYPCwLZNgBBmJYPCwLbNgBBopYPCwzeNgAAAAAAAOA24TYAQcKWDwsa4zYAAAAA5DboNgAA7zYAAPA28jYAAAAA8zYAQe6WDwse9DYAAAAAAAD4NgAA+jb7NgAA/Db/NgU3BjcHNw03AEGUlw8LAg83AEGilw8LBBA3ETcAQbSXDwsGEjcAABY3AEHElw8LIBc3AAAAAAAAGDcAAAAAGTcAAAAAAAAbNxw3AAAAAB03AEH0lw8LAiU3AEH+lw8LAiY3AEGImA8LLic3AAAAACg3AAAAACk3AAAqNy83AAAwNzg3AAAAADo3AAA8NwAAAAAAAD03PjcAQb6YDwsaQjcAAAAARTcAAEc3AAAAAAAASDcAAAAASTcAQeqYDwsSSjcAAEw3TTcAAAAATzcAAFE3AEGEmQ8LAlI3AEGSmQ8LCFM3AAAAAF03AEGmmQ8LKl43AAAAAGA3AAAAAGI3AAAAAGM3ZTcAAAAAZjdpN2s3AABuNwAAAAB1NwBB6JkPCwJ2NwBB9pkPCxJ3N3g3AAAAAAAAfDcAAAAAgDcAQZ6aDwsClzcAQbKaDwtEmjcAAAAAmzcAAAAAAACgN6E3AAAAAAAApjcAAAAAAACnNwAAqjcAAAAAqzcAAAAArjcAAAAAsDcAAAAAAAC0NwAAtTcAQf6aDwsqtje7N703AAAAAMU3AAAAAMY3AADHN8o3AAAAAAAAyzcAAAAAAADMN803AEGwmw8LLM43AAAAAAAA0DcAAAAAAADRNwAA0jcAANU33TfeN+A34TcAAOM3AADkN+U3AEHymw8LCuc36DcAAAAA7TcAQYqcDwsC7jcAQZScDwsC8DcAQZ6cDwsE8TfyNwBBrJwPCwT2N/k3AEHMnA8LBPo3+zcAQdicDwss/DcAAAAAAAD9NwAAAAABOAQ4AAAFOAAAAAAGOAAACTgKOAAAAAALOAAAGjgAQY6dDwsYHDgdOCM4AAAlOAAAAAAmOAAAKzgAAEA4AEGwnQ8LIEE4AAAAAEU4AABGOAAASDhJOAAAAAAAAFE4AAAAAFg4AEHinQ8LFF44AAAAAAAAXzgAAAAAYzgAAGg4AEGCng8LCGo4AAAAAGs4AEGUng8LAm44AEGkng8LEHY4AAB5OAAAfDgAAAAAgjgAQb6eDwsCgzgAQcyeDwsGhTgAAI04AEHeng8LNo44kjgAAAAAAACTOAAAAAAAAJU4ljgAAAAAAACXOJg4mTicOJ04njifOKA4oTgAAKM4AAClOABBqJ8PCwymOAAAqziwOLE4sjgAQcqfDwsuszi+OMI4AADJOAAA0DgAANM4AAAAANQ41jjXOAAAAADYOAAAAAAAANk4AADaOABBgKAPCwzcOOQ4AAAAAOU45jgAQZigDwsi6DgAAAAA6TgAAAAAAADrOPA4AAAAAPE48jjzOAAAAAD0OABBwqAPCwL2OABB3KAPCwL3OABB6KAPCwz7OAAA/DgAAAAACDkAQZyhDwsQCTkAAAAADDkNORM5AAAVOQBBtKEPCwIXOQBBwqEPCwYjOQAAJDkAQdChDwsIJzkAACk5KjkAQeChDwsCKzkAQfKhDwsKLDkAAAAALzkyOQBBhKIPCwI0OQBBjqIPCyY1OTY5AAA9OQAAAAA+OQAAQjkAAEU5AAAAAAAASTkAAAAAAABMOQBBxqIPCxZNOQAAAABOOQAAAAAAAFg5AAAAAFk5AEHmog8LBFo5WzkAQfKiDwsCXjkAQfyiDwsEXzlpOQBBiKMPCwZrOXE5dzkAQaKjDwsKeDkAAAAAAAB5OQBBtKMPCxR/OQAAgDmBOYY5AAAAAAAAiDmJOQBB0KMPCwKLOQBB4KMPCxiNOZA5kTkAAAAAlDmWOQAAAAAAAJg5oTkAQYCkDwsGozmmOag5AEGQpA8LHqk5qjmtObM5AAC0OQAAtTm2OQAAAAC3OQAAAAC4OQBBtqQPCxa5OQAAuzkAAAAAvjkAAAAAwTnCOcQ5AEHWpA8LAss5AEHkpA8LEs45AADTOdQ51jkAAAAAAADZOQBBgqUPCwLaOQBBjKUPCwbbOQAA3DkAQZylDwsC3zkAQa6lDwsG4DkAAOI5AEHApQ8LGuM5AADkOQAA5zkAAAAAAADoOQAAAADqOes5AEHypQ8LAu45AEH+pQ8LBvE5AAD9OQBBjqYPCxr+OQAAAAD/ORc6AAAZOgAAHDoAAB06HjogOgBBsqYPCwghOgAAIjouOgBBwqYPCwovOgAAOzoAADw6AEHapg8LAj86AEHkpg8LGkg6AAAAAFM6AABUOlY6VzoAAAAAWDoAAGE6AEGMpw8LImM6AAAAAGQ6ZTpnOgAAAABoOgAAAAAAAHQ6fToAAAAAjjoAQbanDwsSkzoAAAAAljqZOgAAAACaOqw6AEHUpw8LBq06AACuOgBB4qcPCxyvOgAAAACxOrU6uToAAAAAAAC6OgAAAAAAALs6AEGIqA8LFsM6xDoAAAAAAADFOsY6yDrKOgAA2ToAQaaoDwsU2joAAAAA4zrqOuw6AAAAAO067joAQcqoDwsK8DoAAAAAAADxOgBB3KgPCxT2OgAA+DoAAPk6AAD8OgAAAAD+OgBBgKkPCxoBOwAAAAACOwAABTsJOwAAAAAAAAs7AAAOOwBBpqkPCwgPOwAAAAAQOwBBuKkPCyQTOxk7AAAAAAAAGjsAABs7AAAAAB47AAAfOwAAAAAAACE7IjsAQeipDwsCIzsAQfSpDwsUJDsAAAAAMjs6OwAAQTtCOwAARzsAQaaqDwsISTsAAEo7SzsAQbiqDwsCTzsAQdKqDwsMUTtTOwAAWjtbO1w7AEHsqg8LAmQ7AEH2qg8LAmY7AEGCqw8LAmc7AEGWqw8LBm07AABuOwBBqqsPCwKAOwBBtKsPCwyCOwAAhjuIOwAAkDsAQcirDwsEkjuTOwBB2qsPCyyUOwAAAAAAAJc7njuiOwAAAAAAAKM7AAAAAAAArTuvOwAAAAAAALA7sTuyOwBBkKwPCwK1OwBBmqwPCwi5OwAAAAC7OwBBsKwPCwrAO8E7AAAAAMg7AEHCrA8LAso7AEHQrA8LFss7zDsAAM07AAAAAM87AAAAANA70TsAQf6sDwsO0jvVOwAAAAAAANY71zsAQZStDwsC2DsAQbatDwsC2TsAQcKtDwsM3DsAAN073jsAAOI7AEHWrQ8LGOY7AADnOwAA7TsAAAAA7jsAAAAA7zvwOwBB9q0PCwLxOwBBgK4PCxDzOwAAAAD0O/U79jsAAPw7AEGwrg8LBv07AAD+OwBBxK4PCwr/OwA8BDwAABQ8AEHYrg8LDCA8AAAAACE8AAAjPABB9K4PCwokPAAAAAAlPCY8AEGQrw8LFCc8AAAoPAAAAAAAACo8AAAtPDI8AEGsrw8LDjM8AAAAAAAANDwAADg8AEHIrw8LDEQ8AABLPAAAAABOPABB3K8PCxZPPAAAAAAAAFA8AAAAAAAAUTxZPFs8AEGAsA8LHFw8AAAAAF88AAAAAAAAYDwAAAAAYjwAAGQ8ZTwAQaawDwsUZjxoPAAAaTwAAAAAajwAAAAAazwAQcSwDwsCbDwAQc6wDwsWeTwAAAAAfDwAAH08fjwAAAAAAAB/PABB7rAPC2yAPAAAhDyKPAAAAAAAAIs8AAAAAAAAjDwAAI08AAAAAJg8AACiPAAAAAAAAKQ8AAClPKY8AAAAAKc8AAAAALk8ujwAALw8wDwAAME8AAAAAAAAwjwAAMM8AADFPM081TzZPNo8AADePAAA3zwAQfSxDwsC4jwAQZKyDwsC5DwAQZ6yDwsC5TwAQa6yDwsE6TzqPABBurIPCwLrPABByLIPCwrsPAAAAAAAAO08AEHasg8LCPA8AAAAAPE8AEHqsg8LBPI88zwAQfqyDwsu9DwAAPk8AAAAAPw8AAAAAP08AAAAAP88AT0CPQAAAAAEPQAAFD0VPQAAAAAhPQBBtrMPCygiPQAAAAAjPQAAAAAAACg9AAAqPQAAAAAAADA9AAAAADE9AAAAADQ9AEHosw8LDjU9AAAAADo9AAAAADs9AEH+sw8LAjw9AEGWtA8LAj09AEGgtA8LAj49AEGstA8LDD89AAAAAEE9AABGPQBBwLQPCxpHPQAASD0AAAAASj0AAAAAAABRPQAAUz1UPQBB7LQPCyhVPQAAVj1XPQAAWD0AAFk9AABbPQAAXT0AAGA9ZD0AAGU9AABmPWg9AEGetQ8LJmw9AAAAAAAAbT0AAG49AAAAAAAAfD0AAIE9gj0AAAAAgz0AAIQ9AEHOtQ8LDoU9AAAAAAAAiD0AAIk9AEHotQ8LCo89AAAAAAAAlT0AQYS2DwsQlz0AAAAAAACbPQAAAACoPQBBnLYPCxipPa49rz0AAAAAsD0AAAAAAAC/PQAAwz0AQcy2DwsKyj0AAAAAAADLPQBB3rYPCwLNPQBB6rYPCybOPdA9AAAAANM9AAAAANU91z0AANg9AAAAANk9AADbPd493z3jPQBBprcPCwLkPQBBsLcPCwblPes98D0AQcS3DwsQ8j30PQAA9T0AAAAAAAD4PQBB3LcPCwL5PQBB6rcPCwz6PQAAAD4AAAAABD4AQf63DwsOBT4GPgs+DT4AAAAAED4AQZa4DwsEET4SPgBBqrgPCwIUPgBBurgPCzIVPgAAAAAWPgAAAAAAABc+AAAYPhk+AAAaPh0+Hj4AACc+Kz4AACw+AAA0Pj8+AABBPgBB9rgPCwJOPgBBhrkPCypWPgAAAAAAAFk+AAAAAF4+AABfPgAAAABpPgAAAABqPgAAAABtPm4+bz4AQb65Dwsacj4AAAAAAAB2PgAAdz57Pn4+AAB/PgAAgD4AQeC5DwsCiD4AQYi6DwsIiT6LPgAAjT4AQaC6Dwsgjj4AAAAAjz6XPpg+mT4AAAAAmj4AAJ4+AACgPgAAoT4AQcy6DwsGoz6kPqU+AEHcug8LAqc+AEHmug8LAqk+AEHyug8LHKs+rD4AAAAArz4AAAAAAACwPgAAAACxPrI+tD4AQZi7DwsCtz4AQaq7DwsCuD4AQbq7DwtAuj68Pr0+AAAAAL8+AAAAAMA+AAAAAAAAwz7EPgAAAADFPs4+AAAAAAAAzz4AAAAAAADQPgAA0T4AAAAAAADYPgBBkLwPCx7ZPt0+AADhPgAA5z4AAOg+6T4AAAAAgD8AAAAAgz8AQby8DwsUhD+FPwAAAACGPwAAAACHPwAAjD8AQd68DwsOjT8AAAAAjj+RPwAAkj8AQfS8Dwsekz+UP5U/mD8AAAAAAACZP5w/AAAAAAAAnj8AAKE/AEGkvQ8LAqI/AEGuvQ8LAqM/AEG+vQ8LAqQ/AEHQvQ8LFqU/pz+pPwAArj8AALA/AACxPwAAsj8AQf69DwsGsz+0P7g/AEGQvg8LELk/uz8AAL4/AAAAAAAAwT8AQa6+DwsGxj/NP9A/AEG8vg8LBNE/1D8AQcq+DwsI2T8AAAAA2j8AQeS+DwsI2z8AAAAA3D8AQfS+DwsO3T8AAAAAAADePwAA5T8AQYq/DwsE5z/oPwBBlr8PCw7qP+s/7D/tPwAAAADuPwBBrL8PCwrvP/A/AADxP/Y/AEHEvw8LAvg/AEHOvw8LEvo/+z8AAPw/AAAAAAAA/T//PwBB6r8PCx4GQAAAAAAAAA9AAAASQBRAFkAXQAAAAAAAABlAG0AAQZDADwsKHEAAAB1AH0AnQABBpMAPCx4oQAAAAAAAACxAMkAzQEFAAABCQENAAAAAAAAARUAAQeDADwsWRkAAAAAASEBKQAAAAABLQAAAAABMQABB/sAPCwxOQAAAT0AAAAAAUkAAQZTBDwsOX0AAAAAAYEAAAGFAZEAAQbbBDwsCZUAAQcTBDwsCaUAAQdDBDwsSa0AAAAAAckAAAAAAd0AAAHlAAEHywQ8LDHpAAAAAAAAAfEB9QABBjsIPCx5/QIFAAAAAAAAAhEAAAIVAAACHQAAAkUAAAAAAk0AAQbjCDwsKlkAAAAAAnUCeQABB1MIPC1afQKNApEAAAAAAAACnQAAAqEAAAAAAAACpQAAAAACuQAAAAACyQLVAAAAAAAAAukAAAAAAAAC9QMlAAAAAAAAAykDLQNNAAADUQAAA1kAAAAAAAADYQABBxMMPCwLZQABBzsMPCwLbQABB3sMPCwTcQORAAEHqww8LFOVAAADqQAAAAAAAAABBAAAAAAFBAEGKxA8LAgVBAEGUxA8LAgZBAEGixA8LAgtBAEGsxA8LFA1BDkEAAAAAAAAPQQAAAAAQQRtBAEHIxA8LDh9BAAAgQQAAAAAAACFBAEHgxA8LBiRBAAAuQQBB7sQPCx4xQQAAMkEAADRBAAA1QQAANkEAADhBAAAAAAAAQUEAQZjFDwsKQ0EAAAAAAABFQQBBqsUPCxBHQQAASEFJQQAAAAAAAEtBAEHCxQ8LAkxBAEHWxQ8LDE5BVEEAAAAAVkFXQQBB8MUPCwxYQQAAWUEAAAAAWkEAQYbGDwsKW0EAAAAAAABcQQBBmMYPCwReQWJBAEGsxg8LCGdBAAAAAGlBAEG+xg8LBm1BAABwQQBBzMYPCwx0QQAAAAB2QQAAd0EAQeLGDwsCeEEAQfLGDwsYekEAAIFBAACCQQAAhEEAAAAAAACJQYxBAEGWxw8LOI1BAAAAAI5BAACQQQAAAACRQZNBmEEAAAAAmkEAAAAAAACeQQAAAACpQQAAAACuQbBBsUEAALNBAEHixw8LIrRBAAAAAMRBx0EAAAAAyUHTQdlBAAAAANpB20EAAAAA3EEAQZTIDwsG3kEAAN9BAEGoyA8LAuBBAEG4yA8LHOxBAADxQfJBAAD1QfZBAAD3QQAAAAAAAPlB+0EAQd7IDwsE/kH/QQBB+MgPCwYBQgAAAkIAQYjJDwtaEUIAAAAAHEIdQh5CAAAAAB9CAAAAAAAAKUIqQgAAAAAAACxCLUIAAAAAAAAuQjFCAAAyQjVCNkIAAAAAAAA4QjtCAAAAAAAARUIAAElCAAAAAE9CAAAAAFBCAEHqyQ8LDlJCAAAAAFVCAABXQl1CAEGAyg8LGF5CAAAAAF9CAAAAAAAAYUIAAGJCZEJoQgBBosoPCw5qQmxCAABuQgAAAABvQgBBuMoPCwZwQnVCdkIAQdDKDwsGfUIAAIdCAEHgyg8LGolCjEIAAI5CAAAAAI9CAACVQgAAAACWQpdCAEGCyw8LFphCAACZQppCAACbQp1CAACeQgAAn0IAQaLLDwsIp0IAAAAAqEIAQbjLDwsIqUIAAAAArEIAQcrLDwsCsEIAQdjLDwsCsUIAQf7LDwsGskIAALhCAEGuzA8LDrlCu0K8QgAAAAAAAL1CAEHEzA8LAsRCAEHYzA8LCMVCAADHQs5CAEHszA8LDM9CAAAAANFCAADTQgBBgM0PCwLaQgBBjM0PCxrbQuVC50IAAAAA6EIAAAAAAADpQupCAADrQgBBsM0PCwbsQu9C+UIAQcbNDwsK+kIAAPtCAAD8QgBB3M0PCw79Qv5CAAD/QgFDAAADQwBB8s0PCwgLQxNDAAAWQwBBgs4PCwobQwAAAAAeQyFDAEGWzg8LCCJDAAAAACRDAEGszg8LCCVDJ0MAACpDAEHGzg8LECtDLEMzQzRDAAAAADVDQUMAQeDODwsCQkMAQerODwsQQ0MAAERDAABFQwAAAABOQwBBhM8PCzhUQwAAVkNXQwAAAAAAAFlDXEMAAAAAXUMAAGBDAAAAAGNDAABkQwAAAABwQwAAckMAAAAAAAB0QwBBxM8PCxx3Q3hDAAB5QwAAj0MAAJZDAACZQwAAAAAAAJpDAEHuzw8LApxDAEGQ0A8LCJ1DAACeQ6FDAEGg0A8LCKJDo0MAAKVDAEGw0A8LAqZDAEHA0A8LAqhDAEHO0A8LHrZDAADAQ8RDAAAAAAAAxkPHQwAAAADJQwAAAADKQwBB/tAPCwLLQwBBjNEPCx7MQ81DAAAAAM9DAAAAAAAA20MAANxDAAAAAAAA8UMAQbLRDwsC8kMAQb7RDwsa80MAAAAA90MAAAAAAAD5QwlEAAAKRAAAC0QAQeLRDwsEDkQPRABB8NEPCwIQRABB/NEPCyAURBVEGUQAAAAAAAAdRAAAAAAhRAAAAAAiRAAAAAAtRABBrNIPCxguRDBENkQAAAAAOkQAAAAAPEQAAAAAPUQAQczSDwsGPkQAAENEAEHc0g8LPkdEAAAAAAAAS0RMRAAATUQAAE5EAABTRFREAAAAAFVEAABWRFdEAAAAAAAAWEQAAAAAAABZRAAAAAAAAF5EAEGk0w8LMl9EAABhRAAAY0QAAAAAAABoRGlEakQAAAAAa0QAAAAAAABvRAAAAAAAAHJEAAAAAHNEAEHo0w8LEndEAAAAAAAAeEQAAAAAAAB+RABBgtQPCxKARAAAAAAAAINEAACERIdEjUQAQbTUDwsalEQAAAAAlkQAAJdEAAAAAJhEAAAAAAAAm0QAQdrUDwsOnEQAAAAAnUSeRAAAn0QAQfTUDwsIoUSiRAAAp0QAQZLVDwsWrUQAAAAAAACuRK9EAACyRAAAAACzRABBttUPCwK0RABBwNUPCwy8RL1EAAAAAL5EwEQAQdjVDwsWwUQAAAAAAADERAAAAADFRAAAAADHRABBlNYPCw7MRAAAAADSRAAA1UTWRABBqtYPCxjXRAAAAADYRAAAAADeRAAAAADfROFE4kQAQdDWDwsW40QAAAAA5EQAAAAA5UQAAOZEAADoRABB+tYPCwLpRABBkNcPCwLrRABBmtcPCwLtRABBrNcPCwTuRP5EAEHC1w8LGv9EAEUAAAFFAkUAAAAAAAAFRQdFCUUAAA9FAEHq1w8LPBRFAAAAAAAAFkUAADJFAAAAADhFOkU+RQAAAABARQAAAABBRQAAAAAAAERFAABFRQAARkUAAAAAAABHRQBBrtgPCwJJRQBBuNgPCwxLRQAAAAAAAE1FTkUAQczYDwsoT0VQRVFFAAAAAAAAVUUAAFZFV0VYRVpFYUViRQAAY0UAAGZFAABsRQBB/tgPCwJvRQBBjtkPCxZwRQAAAABxRQAAAAByRXNFAAB2RXdFAEG42Q8LAnhFAEHI2Q8LFJ1FAAAAAAAAnkUAAAAAAACfRaFFAEHm2Q8LLKJFp0WoRalFAAAAALVFAAAAAAAAtkUAAAAAAAC4RbpFvkUAAL9FAAAAAMNFAEGe2g8LBMRFxUUAQcjaDwsEzkXPRQBB2NoPCyzQRQAAAAAAANdFAAAAAAAA2UXbRQAA3EUAAN1FAAAAAN5FAAAAAN9F40UhRgBBjNsPCxIiRgAAAAAjRgAAMEYAAAAANEYAQajbDwsCNkYAQbLbDwsKOEY6RgAAAAA/RgBBxNsPCwJTRgBB0NsPCwJXRgBB3NsPCwJZRgBB7NsPCwJaRgBB+tsPCyRcRgAAAABeRgAAAAAAAF9GAAAAAAAAYEYAAGFGAAAAAAAAbkYAQazcDwseb0YAAAAAdEZ1RnZGAAAAAIFGiEYAAIlGikYAAItGAEHa3A8LAo5GAEHk3A8LApBGAEH23A8LGpNGAAAAAAAAlEYAAAAAm0YAAAAAnkatRq5GAEGg3Q8LArFGAEGs3Q8LJrJGtEYAAAAAAAC8RgAAv0YAAAAAwEYAAMFGAAAAAMNGxEYAAMZGAEHa3Q8LAslGAEHk3Q8LAstGAEH43Q8LAsxGAEGC3g8LEM1GzkYAAM9GAAAAANBG10YAQaTeDwsC5kYAQbDeDwsS50boRgAAAADsRvRGAAD2RvtGAEHU3g8LCPxGB0cAAAhHAEHk3g8LBglHAAALRwBB9N4PCwIMRwBBht8PCyoNRwAAAAAORwAAAAAPRxBHAAAAABJHE0cURwAAAAAAABVHAAAbRwAAHEcAQbjfDwsqHUcAAAAAAAAfRyBHAAAAACZHAAAAAAAAJ0coRwAAAAAAACxHAAAAAC5HAEHs3w8LEC9HAAAxRzdHAAA6RwAAO0cAQYTgDwsKQEcAAAAAQUdCRwBBmOAPCxRDR0tHAABNRwAATkcAAAAAAABaRwBBuOAPCwpdR15HX0dhR2lHAEHa4A8LCmpHAABrRwAAbEcAQfDgDwsObUcAAG9HcUcAAAAAckcAQYbhDwsKhEcAAAAAAACGRwBBqOEPCyCHRwAAiEeJRwAAi0cAAAAAjEeQRwAAm0cAAJxHAACgRwBB0OEPCwahRwAApEcAQejhDwsMpUcAAKhHqUcAAKpHAEH+4Q8LDKxHAACvRwAAAAC0RwBBluIPCwK1RwBBouIPCx6/RwAAAAAAAMBHAADBRwAAwkfDRwAAAAAAAAVIDEgAQdziDwsEDUgSSABB6OIPCw4TSAAAFEgAAAAAAAAVSABBgOMPCxgXSAAAAAAAABhIAAAZSAAAHEgAAAAAHUgAQajjDwsIIkgAAAAAI0gAQbjjDwsqKUgAAAAAAAAsSAAALUgAAAAAAAAuSC9IMEgAAAAAAAA1SAAAAAAAADZIAEHu4w8LBDhIOkgAQf7jDwsCO0gAQYrkDwsIP0gAAAAAQEgAQZ7kDwsWSUgAAFlIAABaSFtIAAAAAAAAXUheSABBvuQPCwJfSABByOQPCwhkSGVIAABmSABB3OQPCwhnSGlIAABqSABB8OQPCwxsSG1IbkhvSAAAckgAQYTlDwseeUh8SAAAAAB+SAAAAACJSItIAAAAAAAAjEgAAI5IAEGq5Q8LAppIAEG25Q8LCJxIAAAAAJ1IAEHK5Q8LBp5IAACgSABB2OUPCxiiSAAAAAAAAKRIAAAAAKVIpkgAAAAAqUgAQfjlDwsQqkgAAAAAAACrSKxIAACtSABBkOYPCwiwSAAAAACzSABBquYPCyS0SAAAuEgAAAAAuUi7SAAAAAAAAMRIAAAAAAAAxUgAAAAAxkgAQdzmDwsOx0gAAMhIAAAAAMtIzUgAQfbmDwsm0UjTSNhIAADcSAAAAADdSAAA30jgSAAAAAAAAOFIAAAAAOpI8kgAQaTnDwsS9Uj8SP1IAAAAAP5IAAAAAAJJAEHE5w8LBAdJCEkAQdznDwsICUkAAAAADEkAQfDnDwsgDkkAABRJAAAAABVJAAAWSQAAAAAXSQAAGkkAAAAAHkkAQZzoDwsMH0kAAAAAIkkAACZJAEHC6A8LAitJAEHO6A8LNjNJNUkAAAAANkkAADdJOEk6STxJAABASUFJAAAAAEJJS0kAAE1JAAAAAAAATkkAAAAAAABRSQBBjukPCxhVSVpJW0ldSQAAAABgSWNJAABkSQAAaUkAQbLpDwsIa0kAAAAAcEkAQcTpDwsEcUl0SQBB1ukPCw52SQAAAAAAAHtJf0mASQBB7OkPCxCJSQAAAACLSY1JAAAAAI5JAEGE6g8LCI9JAAAAAJBJAEGU6g8LDpFJAACYSQAAmUkAAJpJAEGq6g8LBptJAACcSQBBvOoPCwSdSZ5JAEHm6g8LJqBJAAAAAAAApUmsSQAAAACuSbJJAAAAALNJtUkAAAAAuknBSctJAEGg6w8LAsxJAEGy6w8LHs9JAADQSQAAAAAAANRJAAAAAAAA1UkAANZJ40nkSQBB4OsPCwLnSQBB7OsPCwzoSQAAAAAAAOlJ8UkAQYDsDwsC8kkAQY7sDwsC9EkAQZjsDwsO9kn+SQAAAAAAAAdKDUoAQa7sDwsCDkoAQbjsDwsQD0oQSgAAAAARSgAAAAASSgBB0OwPCxATShRKAAAAAAAAFUoAABdKAEHy7A8LDhhKAAAZSgAAGkodSiBKAEGM7Q8LFiFKAAAAAAAAJUoAAAAAAAAuSgAANkoAQaztDwsSN0o7SgAAAAA9SgAAAAAAAD5KAEHK7Q8LSEBKQ0oAAAAASkoAAAAAS0oAAFBKAABXSlhKAABfSgAAYUpqSgAAAAAAAGtKb0pwSgAAc0p3SnhKAAAAAJBKAAAAAAAAlUqWSgBBmu4PCyCXSgAAmEoAAAAAAACZSgAAAACaSgAAm0qcSgAAAACfSgBByO4PCwKnSgBB1u4PCxKoSgAAAAAAAKxKrUoAALFKskoAQZTvDwsEs0q0SgBBpu8PCwi1SrZKAAC4SgBBwu8PCxi5SrpKu0q8SgAAAADKSgAAAADLStRK1koAQervDwsS7krxSgAAAADzSgAAAAAAAPlKAEGG8A8LBvpKAAD9SgBBlPAPCwL+SgBBqvAPCwICSwBB3PAPCzADSwAABUsKSwAAAAAAAA1LAAASSwAAAAAAABdLHUsAAAAAHksAAAAAH0sgSyFLJ0sAQZbxDwsIKEsAADBLMUsAQabxDwskNksAADhLOks7SwAAAAA9SwAAQksAAAAAAABISwAATktRS1JLAEHi8Q8LEFNLAAAAAFRLAAAAAFVLV0sAQY7yDwsIWEtbSwAAXEsAQZ7yDwsGYUsAAGJLAEGs8g8LBGZLZ0sAQbjyDwsEaEtpSwBBxPIPCw5ySwAAAABzSwAAAAB5SwBB4PIPCxJ6SwAAhUsAAIZLh0sAAIhLiUsAQYjzDwsmkksAAAAAmUsAAJpLoksAAKZLp0sAAAAAqUsAAK9LAACxS7RLvEsAQbjzDwsEvUu+SwBBxPMPCwLASwBB0PMPCwLKSwBB4vMPCx7USwAAAADVS95LAADgSwAAAAAAAOFLAAAAAAAA5EsAQYj0DwsC50sAQZT0DwsC6EsAQaD0DwsY+EsDTAAAAAAFTAAABkwHTAAAC0wSTBpMAEHA9A8LAiZMAEHK9A8LAi1MAEHg9A8LBC5MMEwAQfL0DwsCMUwAQfz0DwskMkwzTAAAAAAAADRMAAAAADdMAAAAADpMAAA7TAAAPEwAAD5MAEHE9Q8LFEpMAABRTFJMAABXTFpMAABbTF9MAEHk9Q8LBGBMYUwAQYD2DwsIY0wAAAAAZEwAQaD2DwsKaExpTAAAAABqTABBtvYPCxZtTG9MAABwTAAAAAAAAHFMckwAAHpMAEHU9g8LAnxMAEHe9g8LBH1MgEwAQfD2DwsSgUyCTAAAAAAAAINMhEwAAIVMAEGO9w8LJIhMiUyPTAAAkEwAAAAAlEwAAAAAlUwAAJZMmEyaTAAAnUyeTABBvvcPCzKgTKFMAAAAAKJMAAAAAKNMAAAAAAAApEylTK9MAAAAALBMsky0TAAAu0wAAAAAvEzKTABBmPgPCwLLTABBsPgPCwTbTN1MAEG8+A8LCt9MAADjTAAA5EwAQdL4DwsC50wAQeT4DwsG6EzpTOxMAEH4+A8LBO9M8UwAQYb5DwsU8kzzTAAAAAD0TAAA9kwAAAAA90wAQab5DwsU+Ez8TAAA/kwAAAFNAAAAAAAAA00AQcL5DwsCBk0AQdL5DwsMCE0AAApNAAAAAA1NAEH4+Q8LAhJNAEGE+g8LJhNNAAAWTRdNG00AAAAAHE0AAB1NAAAAAAAAIk0AAAAAI00AADtNAEG6+g8LBDxNP00AQcr6DwsCQk0AQdb6Dws0Q00AAAAARE1OTQAAT00AAAAAUE0AAAAAAABRTQAAAABUTVVNAAAAAAAAV00AAAAAAABZTQBBkvsPCxhbTQAAXE0AAF1NAAAAAF9NAAAAAAAAYE0AQbb7DwsCYU0AQdr7DwsWaE0AAG1NAABuTXZNd00AAAAAAAB5TQBBhPwPCwJ+TQBBjvwPCwh/TQAAAACDTQBBnvwPCwKFTQBBqPwPCwyHTQAAAACITQAAiU0AQcL8DwsKi00AAAAAAACOTQBB3vwPCwqYTQAAmU0AAJpNAEH2/A8LKpxNAAAAAJ5NAAAAAJ9NAAAAAKBNoU2jTQAAqE2qTaxNAAAAAK1Nrk2wTQBBuP0PC0qyTbRNtU0AAAAAtk0AAAAAAAC3TQAAuE2+TQAAAAC/TQAAAADBTQAAAAAAAMJNAADETQAAxU3HTQAAAAAAAMlN0E0AAOJN403kTQBBkP4PCyDmTQAA500AAOlNAAAAAAAA703wTfJN+E0AAP1NAAADTgBBuv4PCzAHTgAACE4AABZOAAAAABdOAAAZTgAAG04AAAAAAAAeTh9OIU4AACNOJU4AACtOLE4AQfb+DwsGLk4AADROAEGE/w8LAjVOAEGQ/w8LBDdOOE4AQZ7/DwsUOU4AAAAAO04AAAAAPU4AAAAAQE4AQbr/DwscTE5NTgAAUE5RTgAAAABSTgAAVE4AAAAAVk5ZTgBB6P8PCxxbTgAAAABdTgAAXk4AAGBOAAAAAGJOAAAAAGNOAEGMgBALAmVOAEGagBALBGZOZ04AQbSAEAsKaE4AAAAAaU5qTgBByIAQCwZrTgAAbk4AQdaAEAsGcE4AAHFOAEHogBALBn9OAACCTgBB/IAQCwKLTgBBjoEQCySQTgAAAAAAAJFOkk4AAAAAAACTTptOnE4AAAAAAACjTqVOpk4AQbqBEAswqE4AAAAAqU6qTrZOAAC4TgAAAAAAALlOAAAAALpOAAAAAAAAvk4AAMNOAAAAAMROAEH4gRALFMZOAADITgAAyk4AAM9OAAAAANJOAEGUghALAv9OAEGfghALD08AAAJPAAAAAAZPAAAHTwBBtoIQCxIITwAAAAAJTwpPAAAUTwAAF08AQdSCEAsKGU8AAAAAAAAaTwBB5oIQCwobTwAAHU8AAB5PAEH4ghALCCBPAAAAAChPAEGIgxALEipPAAAAAAAANk8AAAAAN086TwBBpIMQCxA7TwAAPE8AAD1PAAA/T0JPAEG8gxALAkRPAEHGgxALBEVPSU8AQdaDEAsIS08AAExPT08AQeqDEAsQU08AAAAAVE8AAFVPAABWTwBBhoQQCwpYTwAAAAAAAFpPAEGYhBALCFtPXE8AAGJPAEGshBALCnNPAAAAAAAAdk8AQb6EEAsCgE8AQdSEEAsOik8AAAAAjU8AAJdPmU8AQfiEEAsamk+bTwAAnE8AAAAAnU8AAJ5PAACfTwAApE8AQa6FEAsMpk+oT6lPAAAAAKtPAEHEhRALAqxPAEHWhRALLK5Pv08AAAAAAADBTwAAAADETwAAAADKT8xPAADPTwAAAADQTwAA0U/ST9NPAEGKhhALAthPAEGWhhALCtpPAADbTwAA3k8AQaiGEAsG4E8AAONPAEHAhhALCuRP5U8AAAAA5k8AQdaGEAsO6U8AAOpPAAAAAAAA8U8AQe6GEAsO9U8AAAAAAAD5TwAA/E8AQYyHEAsi/U8AAAAABVAAAAAABlAAAAAAB1AAABBQAAARUAAAAAASUABBwocQCwgTUBRQAAAVUABB1IcQCwgoUC9QAAAxUABB5IcQCxg7UAAAAAA8UAAAAAAAAD9QAAAAAAAAQlAAQYaIEAsSRFAAAAAAU1AAAAAAVFAAAFZQAEGiiBALAm1QAEGsiBALCm5QAAAAAHFQclAAQb6IEAsSc1AAAHVQdlAAAAAAAACKUIxQAEHYiBALAo1QAEHiiBALApNQAEHuiBALFJRQAAAAAAAAlVAAAJZQAAAAAJ9QAEGMiRALEuNQAAAAAOVQAAAAAAAA6VDqUABBqIkQCwT0UPVQAEG0iRALLPZQ+FD5UAAA/VAAAP5QAAD/UABRAAABUQAAAAAIUQAACVEAAAxRAAAAAA1RAEHwiRALAg5RAEH6iRALEBJRAAAAAAAAGVEAAAAAG1EAQZiKEAsCHlEAQbaKEAsCH1EAQcCKEAsIIFEAACFRKVEAQdSKEAssMVEAAAAAAAAyUTtRQVEAAEJRAABHUQAAAABIUQAAAABKUQAAAABLUQAATFEAQYqLEAsgTVEAAAAAUlFUUVVRAAAAAAAAVlEAAFdRAAAAAAAAWlEAQbiLEAsuXVFeUV9RAABgUWRRAAAAAGdRAAAAAGhRalEAAGtRAABsUQAAdlEAAAAAAAB3UQBB7osQCxB4UQAAAAAAAIVRAAAAAIdRAEGMjBALAolRAEGYjBALAoxRAEGkjBALCJBRAAAAAJJRAEG0jBALCpNRlFEAAAAAmlEAQdCMEAsCm1EAQdyMEAsQqVEAAKpRrlEAAAAAsFGzUQBB9owQCz60UQAAtVEAALdRuFG6UQAAv1EAAMBRwVHCUQAAAADHUQAAAADLUQAAAADNUQAAAAAAAM9RAAAAAAAA0lHTUQBBvo0QCxTWUQAA2lEAAAAA21HkUQAAAADnUQBB3I0QCxLtUe9RAAAAAAAA+FEAAPtR/FEAQfiNEAsS/VEAAAAAAAADUgAABlIAAAdSAEGSjhALBAhSCVIAQZ6OEAsUEFIAABJSAAAYUgAAAAAAABlSGlIAQbyOEAsOHVIiUiNSJFIAAAAAJVIAQdSOEAsCJlIAQfCOEAsEJ1IoUgBB/o4QCwgtUgAAAAAuUgBBmI8QC0ovUgAAMVIAADZSN1IAAAAAAAA5Uj1SAAAAAEFSSFJJUgAAAABKUktSAAAAAAAATVIAAAAAAABPUlBSAAAAAFFSAABSUgAAAABWUgBB6o8QCxZXUgAAAABYUllSAAAAAF5SX1IAAGFSAEGOkBALCmNSAABlUgAAZlIAQaiQEAsCZ1IAQbSQEAsGaFIAAGpSAEHIkBALDGtSAAAAAGxSbVJuUgBB3pAQCwZvUgAAcFIAQe6QEAsOcVJ0UnVSAAAAAHhSeVIAQYiREAsGe1KCUoNSAEGYkRALAoVSAEGqkRALNolSi1IAAAAAjlIAAAAAAACRUpZSAACXUgAAAACYUgAAmVKaUgAAoFKiUqNSpFIAAAAAAACoUgBB7JEQCwqpUgAArFIAAK5SAEH+kRALArJSAEGIkhALELNSAAAAALRSAAC2UgAAt1IAQaKSEAs0uFK7UsRSAAAAAAAAxVIAAAAAxlIAAAAAAADIUgAAAADJUgAAAAAAAM5SAADcUgAAAADdUgBB4pIQCxDfUuBSAAAAAOdS6VIAAOpSAEH6khALCutS7FIAAAAA7VIAQYyTEAsE7lL0UgBBqpMQCwr1UgAAAAD2UvdSAEG8kxALAghTAEHIkxALAglTAEHYkxALFgtTAAAAAAAAD1MAABhTAAAaUwAAIlMAQf6TEAsCI1MAQZCUEAsILlMAAAAAMVMAQaCUEAs+MlMAAAAAAAAzUwAANFM2UwAARFMAAEZTSlNLUwAATFMAAE5TAAAAAAAAT1NQUwAAAAAAAGhTAAAAAGpTcVMAQfiUEAsKclMAAAAAAABzUwBBlJUQCyJ2UwAAAAB3U3xTflMAAAAAAAB/U4FTAACCUwAAAAAAAIRTAEHKlRALAoVTAEHYlRALEoZTAACHUwAAAACIUwAAAACJUwBB8pUQCwSNU45TAEGQlhALBJVTllMAQaiWEAsGl1MAAJhTAEG2lhALGppTAAAAAAAAm1OcUwAAnVOeUwAAAAAAAJ9TAEHolhALAqBTAEHylhALFKFTAACtUwAArlMAAAAAAACxU7RTAEGOlxALArVTAEGalxALArlTAEGwlxALTLpTAADDUwAAxFPJUwAAzFMAAM1TzlMAAAAAAADRUwAAAADSUwAAAAAAANRT1VMAAAAA2FMAAAAAAADhU+ZTAAAAAOdTAAAAAOlT61MAQYyYEAsQ7FMAAAAA7VPuUwAAAADwUwBBqJgQCwgTVAAAAAAVVABBvpgQCwIWVABBzJgQCxwZVBpUAAAAABtUAAAAAB1UAAAAACNUPFQAAD9UAEH4mBALAkdUAEGCmRALAklUAEGOmRALCFdUAAAAAGRUAEGomRALEmVUAABmVAAAAABxVHJUc1R0VABB1JkQCwJ3VABB3pkQCwZ/VAAAg1QAQeyZEAsoh1SOVJVUnlQAAAAAn1SgVAAAolQAAAAAo1QAAKZUqFSpVAAAqlSzVABBnpoQCwa0VAAAvlQAQayaEAsav1TEVAAAx1QAAMhUAAAAAM1UAAAAAAAAzlQAQdaaEAscz1QAAAAAAADQVAAA1VQAAOJUAAAAAAAA41TlVABB+poQCxLpVO1U7lQAAPNUAAAAAAAA9VQAQaabEAsC9lQAQbKbEAsC+FQAQbybEAsC+VQAQcqbEAsI+1T8VAAA/VQAQd+bEAsHVQAAAAADVQBB+JsQCw4EVQAAAAAGVQAAAAAHVQBBmJwQCwwNVQAADlUAAAAAD1UAQaycEAsIEFUAAAAAEVUAQcacEAsQFFUbVRxVH1UAAAAAAAAlVQBB4JwQCwItVQBB6pwQCywuVQAAL1UxVQAAMlUzVQAAOVU7VTxVAAA/VQAAQFUAAAAAQVUAAAAAQlVIVQBBoJ0QCxpJVVhVWVUAAAAAa1VuVW9VcVUAAAAAAAByVQBBzJ0QCxRzVQAAdlUAAAAAAAB3VQAAeVV+VQBB6J0QCzx/VQAAAACAVYZVh1WJVQAAjVUAAJBVAAAAAJJVAAAAAAAAlVWWVZdVAAAAAJhVAAAAAJlVmlWbVQAAn1UAQbKeEAsMoVUAAAAAolWtVbNVAEHUnhALArhVAEHgnhALBrlVAAC7VQBB+p4QCwq9VQAAAAAAAL5VAEGenxALBr9VAADAVQBBtp8QCwTCVcVVAEHCnxALBsZVAADHVQBB1J8QCwTKVctVAEHonxALIMxVzVUAAAAA0VXSVQAAAAAAANZVAAAAANxV3VUAAN5VAEGSoBALDuFVAADkVQAA6FUAAO9VAEGsoBALBvFVAADyVQBBvqAQCwLzVQBByqAQCyD0VQAAAAAAAPhVAAD5Vf9VAAAAAABWAAAAAAAAAVYDVgBB/KAQCwIEVgBBkqEQCzQFVhVWAAAXVgAAAAAAABhWAAAAAAAAIFYhVgAAAAAlVidWKFYrVgAAAAAsVi1WAAAAADBWAEHOoRALAjJWAEHeoRALDDlWAAAAAAAAOlY7VgBB+KEQCwI8VgBBgqIQCwY9VkRWU1YAQZaiEAsUWFYAAAAAW1YAAFxWAABdVgAAXlYAQbiiEAsKX1ZnVgAAaFZqVgBByqIQCwxtVgAAAAAAAHBWcVYAQeKiEAskfVYAAAAAAAB+VgAAAACAVoJWAACEVoVWh1aKVgAAAAAAAJJWAEGOoxALBJRWoVYAQZqjEAsQo1YAAKZWp1YAAAAAqFasVgBBuqMQCzyuVgAAsla5VgAAAADAVgAAwVYAAMRWAAAAAMdWAADPVtdWAAAAANhWAADaVgAAAADbVtxWAADdVgAA4FYAQYCkEAsc4VYAAAAAAADiVuZW51YAAAAAAADzVvxWAAD9VgBBqqQQCwL+VgBBtKQQCwr/VgAAAFcAAAVXAEHIpBALGgZXCFcLVw5XAAAAAA9XEVcAAAAAElcAABVXAEH2pBALFBdXAAAdVx5XAAAAAAAAIVcAACRXAEGepRALFitXAAAAAAAALVcAAD5XAAAAAAAAP1cAQb6lEAsSQFcAAEJXSFcAAEtXTVcAAE5XAEHepRALAlVXAEHqpRALAlZXAEGAphALBFdXWFcAQZSmEAsQWVdeVwAAAABhVwAAYldlVwBBrqYQCwZnVwAAaVcAQb6mEAsCalcAQcimEAsCbVcAQdKmEAsGblcAAG9XAEHqphALDndXAAAAAHhXe1d8V4JXAEGSpxALFoVXAAAAAIZXAAAAAIhXAAAAAIlXilcAQbSnEAsCmFcAQb6nEAsamlcAAAAAAACbVwAAnFcAAKBXAACjV6pXq1cAQeCnEAsCrFcAQeynEAsarlcAALZXAAC3VwAAAAAAAMFXAADGVwAAx1cAQY6oEAsQyFfJVwAA11cAAAAAAADYVwBBpqgQCwjZVwAAAADjVwBBuqgQCwjyVwAAAADzVwBB0KgQCyr0VwAAAAAAAPVX+FcAAAAAAAAGWAAAAAAHWAAAAAAIWAAADFgZWAAAG1gAQYKpEAsIIVgAAAAAIlgAQaCpEAsCJlgAQaqpEAsWJ1goWAAAAAAvWAAAM1gAADZYN1g5WABByqkQCw46WAAAAAA7WAAAAAA+WABB4qkQCwY/WAAAQFgAQfKpEAsYQVgAAEpYAAAAAExYAAAAAFFYAAAAAFpYAEGWqhALDltYAABgWGFYAAAAAG5YAEGuqhALCG9YAAAAAHBYAEHEqhALCHRYAAB1WHdYAEHUqhALGHxYfVgAAAAAAAB+WAAAf1gAAAAAAACAWABBgKsQCxKRWJNYlFgAAAAAlliXWAAAo1gAQaCrEAsQpVgAAAAAqFgAAKtYs1i0WABBwKsQCwa+WAAAv1gAQc6rEAsMw1gAAAAAAADEWMVYAEH2qxALBMZYyFgAQYqsEAsIyVgAAAAAy1gAQZqsEAsGzFjPWNBYAEGorBALDNNYAADdWAAAAADfWABByqwQCwLmWABB1qwQCwLoWABB4qwQCwrsWO1Y7lgAAPBYAEH2rBALBPFY8lgAQYatEAsk81gAAAAA9Fj3WAAA+Fj5WPxYAAAAAP5YAFkAAANZAAAFWQxZAEG0rRALAg5ZAEHCrRALCBJZAAATWRRZAEHerRALGhVZAAAAABpZG1keWSBZAAApWSpZAAAvWTFZAEGKrhALDDJZAAA0WTZZAAA3WQBBoK4QCwY4WQAAP1kAQbCuEAsWSFlJWQAASllLWQAAAABOWQAAAABQWQBBzq4QCwJRWQBB5q4QCwhSWQAAU1lUWQBB9q4QCxZVWQAAV1kAAFhZAABZWWFZYllkWWVZAEGarxALGGZZZ1kAAG5ZAABvWQAAAAAAAHRZAAB1WQBBuq8QCwJ4WQBBxK8QC0B5WXtZAAAAAAAAg1mFWQAAAACGWQAAAAAAAIhZAAAAAAAAkVmSWQAAAAAAAJ1ZnlkAAAAAAACfWQAAAAAAAKBZAEGSsBALFqJZAACjWQAAAACqWQAArFkAAAAAslkAQbawEAsIs1kAAAAAtFkAQcywEAsOtVkAALhZAAAAAAAAuVkAQeSwEAsGulkAALtZAEH0sBALEsJZAAAAAMNZAADLWQAAAADNWQBBkrEQCwbOWQAA3VkAQaaxEAsQ3lnfWeBZAAAAAO9Z8Fn1WQBBvrEQCwL2WQBByrEQCwL4WQBB1rEQCwL7WQBB4LEQCxr+WQAAAAAAAAhaAAAJWgxaDVoUWhVaAAAXWgBBgrIQCxobWhxaAAAAAAAAHVohWgAAAAAAAFdaAABYWgBBprIQCxpZWgAAYlplWgAAbVoAAAAAbloAAAAAAABwWgBB0LIQCwJyWgBB2rIQCwZ1WndaeFoAQfiyEAsCjFoAQYKzEAsMjVoAAAAAlFoAAJVaAEGmsxALCptaAAAAAJxan1oAQcKzEAsQoloAAKRaAACnWgAAqVqqWgBB3rMQCxq7Wr1aAAAAAL5awlrGWgAAAAAAAM1azlrQWgBBgLQQCwzRWtZaAAAAAAAA4VoAQZq0EAsG5FoAAOxaAEGotBALCu1aAAABWwAAAlsAQbq0EAsYA1sAAAZbAAAAAAdbEFsAAAAAElsAABhbAEHatBALFhxbAAAdWwAAIFsAACZbAAAAAAAAKVsAQfi0EAsKL1swWzJbAAA0WwBBkrUQCwI5WwBBnLUQCzA7WwAAPFs+WwAAAAAAAD9bQFsAAEFbAABHWwAASVsAAAAATVsAAFJbU1sAAFZbV1sAQei1EAsCW1sAQfa1EAscXFteWwAAAABhW2ZbAAAAAAAAZ1sAAAAAAABoWwBBmrYQCwppWwAAAAAAAHdbAEG0thALDHhbAAB+WwAAk1uUWwBByLYQCwaYWwAAnlsAQdq2EAsKoFsAAAAAoluoWwBB8LYQCxypWwAAAAAAAK5br1sAAAAAsFsAAAAAAACxW8hbAEGctxALJslbAADLWwAAAADOWwAAAADPWwAAAADZWwAAAADbWwAAAAAAAN1bAEHKtxALEN5b31vhW+RbAADlW+hb81sAQeS3EAsU9VsAAAAA+FsAAAAABFwAAAAABVwAQZK4EAsSB1wAAAhcAAAAAAlcAAAAAA5cAEGuuBALBhBcEVwSXABBvLgQCwYTXAAAFlwAQdi4EAsMF1wAABtcAAAAAB1cAEHwuBALAiNcAEGAuRALBCxcLlwAQYy5EAsYMlw2XAAAAAA3XAAAOFwAAAAAAAA+XEBcAEGuuRALCEJcAAAAAENcAEG+uRALCEVcSlwAAEtcAEHUuRALBk1cAABOXABB4rkQCwZSXAAAVFwAQfS5EAsCVlwAQf65EAsQWFxzXAAAdVwAAAAAAACBXABBnLoQCwaCXAAAg1wAQay6EAschFwAAAAAAACFXIlcAACNXI5clFwAAJZcAACdXABB1roQCwKgXABB4roQCwiiXAAAAACjXABB8roQCwimXAAAAACoXABBgrsQCxaqXAAAAAAAAK5csVwAAL1cwlwAAMRcAEGguxALAsVcAEGsuxALAsZcAEG2uxALBsdcAADJXABBxLsQCwzNXNVcAAAAAAAA2lwAQd67EAsO21wAANxc5VwAAAAA9FwAQfS7EAs69lwAAPdcAAAAAAAA+lwAAAAA/lwAAP9cAAAAAABdAAABXQAAC10AAAAAAAANXQAAE10AAAAAAAAVXQBBvLwQCwIWXQBByrwQCwgYXRldGl0bXQBB2rwQCwQdXR5dAEHovBALAiZdAEH2vBALAiddAEGCvRALEkddSV0AAAAASl1LXVddAABbXQBBnL0QCwJdXQBBqr0QCwJeXQBBtr0QCy5fXWFdAABiXQAAY11uXW9dcF0AAHJdAAB0XQAAd10AAH5dAACBXYVdAACGXYpdAEHuvRALBpNdlF2WXQBBgL4QCwyXXQAAml2dXQAAnl0AQZS+EAsQn12gXQAAAAClXQAAAACmXQBBrL4QCwanXQAAqF0AQcy+EAsCqV0AQd6+EAscrF0AAAAAsF0AALFdAAAAALNdAAAAALRdtl23XQBBhr8QCwK4XQBBmL8QCwq6XQAAAAAAAL5dAEG0vxALHr9dAAAAAMNdAADEXQAAxl0AAAAAAADHXQAAAADIXQBB4L8QCyrJXQAAAADKXQAAAADLXQAAAADNXc5dAAAAAM9d0F3bXQAA3F3dXQAA3l0AQZTAEAtQ4V3iXQAA410AAAAA5F0AAAAA7F0AAPBd8V3/XQNeAAAEXgZeAAAAAAdeDl4XXgAAGl4AAAAAAAAfXgAAIl4lXiheKl4AACteAAAAAAAALF4AQezAEAsQLl4vXgAAMV4AAAAAM144XgBBiMEQCw48XgAAPV4AAD5eAAA/XgBBoMEQCzBHXgAAAABIXgAASV5OXgAAAAAAAFJeAAAAAFNeVV5aXgAAY14AAAAAAABlXmZeZ14AQeTBEAsmaV5qXm9eAAAAAAAAcl4AAAAAc14AAAAAdV4AAHhehV4AAIlejF4AQZbCEAsOjl6UXpxeAAAAAAAAoF4AQbTCEAsGol4AAKpeAEHawhALBqteAACsXgBB6sIQCxavXrBesV4AAAAAuF4AAAAAuV4AALteAEGMwxALFL1eAADMXgAAAAAAAM1eAADPXtBeAEGowxALDtFeAAAAANJeAAAAANdeAEHEwxALCNheAADlXuZeAEHYwxALKuheAAAAAANfAAAAAAAACV8KXwtfE18AAB9fAAAAADFfMl8AAAAAAAAzXwBBisQQCwY0XzVfNl8AQZrEEAsCOl8AQaTEEAs8O18AAD1fAAA/X0VfAABGXwAAAABKX0tfUF8AAAAAAABRX1JfAABWXwAAAAAAAFtfAAAAAAAAX18AAGBfAEHqxBALNmFfAABjXwAAZl8AAGdfbF8AAHNfAAAAAAAAd18AAAAAAAB4X3pffl8AAAAAAAB/X4BfgV+EXwBBqMUQCxKFX4lfAAAAAIpfi1+MXwAAkV8AQcjFEAsCll8AQe7FEAsQl18AAJlfml+bX5xfAACeXwBBhsYQCwKgXwBBnMYQCwKhXwBBssYQCwSiX6VfAEG+xhALEqZfAAAAAAAAqF8AAAAAAACuXwBB2MYQCyixXwAAAACyXwAAAAAAALNful8AAAAAAAC7XwAAAAC/XwAAAADBX8JfAEGKxxALEsVfAADGXwAAyF8AAMlfzF/NXwBBpscQCwLPXwBBxMcQCwLQXwBB5scQCxDZX9tfAADcXwAAAAAAAORfAEGAyBALGuVf5l8AAAAAAADpX+pfAADrXwAA7F8AAO5fAEGkyBALCvBfAAAAAAAA8V8AQbjIEAsC8l8AQdTIEAsC918AQeDIEAsO+V8AAAAAAAD+XwAA/18AQYTJEAsIAWAFYAAACGAAQZbJEAsCCWAAQaLJEAsMCmAAAAAAC2AAAAxgAEHCyRALBA5gD2AAQc7JEAsCEGAAQd7JEAsCEmAAQe7JEAsEFGAVYABB+skQCwQaYBtgAEGGyhALEhxgAAAAAB1gAAAiYAAAAAAjYABBoMoQCxYkYCdgKGAwYAAAAAAAADNgAAA+YD9gAEG+yhALDkBgAAAAAAAAT2BQYFFgAEHcyhALCFZgAABXYFhgAEHuyhALAllgAEH4yhALAltgAEGGyxALKFxgXWAAAF5gYmAAAAAAAABjYAAAZmAAAAAAZ2AAAAAAAABpYAAAa2AAQbbLEAsUbGAAAG1gAAAAAG5gAAAAAHBgcWAAQdLLEAsEcmBzYABB5MsQCwZ5YAAAemAAQfrLEAsChWAAQYbMEAsGhmAAAIhgAEGYzBALEolgimAAAItgAACMYI5gAACPYABBsswQCyyQYAAAAACVYAAAAACiYAAArWCuYAAAAAAAALBgAAAAAAAAsWAAAAAAAAC2YABB6MwQCwa6YAAAu2AAQfzMEAsCvGAAQYjNEAsKvWC/YMBgAADEYABBms0QCwLFYABBpM0QCwLJYABBsM0QCxDRYAAA0mDUYAAAAAAAANVgAEHIzRALJNpg3mAAAN9g4GAAAAAAAADjYAAA5GDmYAAA52AAAAAAAADqYABB+M0QCwj7YPxgAAADYQBBjM4QCwIEYQBBmM4QCwgHYQAAC2EMYQBBtM4QCwgPYQAAAAAQYQBByM4QCxQRYQAAEmETYQAAAAAAABRhAAAVYQBB7s4QCyIWYQAAF2EAAAAAJGEAAAAAAAAzYQAAAAAAADRhAAA/YUFhAEGazxALAkNhAEGmzxALBkRhAABRYQBBuM8QCyBSYQAAAABVYWJhY2EAAAAAAABkYQAAAABrYQAAAABuYQBB6s8QCzJxYXZhAAB3YQAAAAB5YQAAAAAAAHphAAB/YQAAAAAAAIFhAAAAAIJhAACEYYhhimGMYQBBptAQC1iQYQAAAAAAAJFhAACWYQAAAACXYQAAAACYYQAAAAAAAKFhAAAAAAAAomEAAAAAqWEAAAAAAACrYQAAAAC6YQAAAAC/YQAAAAAAAMphAAAAAMthzGEAAM1hAEGM0RALAs9hAEGY0RALAtBhAEGo0RALCtJhAAAAANNh1WEAQb7REAsc2WEAAAAA22EAANxh3WEAAAAA3mEAAAAAAADfYQBB4tEQCxThYeNhAAAAAORh6GEAAOlh7WHuYQBB/tEQCxTwYQAA8WEAAAJiAAAAAARiBWINYgBBntIQCxIRYhRiAAAAABliAAAAABtiHGIAQbzSEAsMHWIAAAAAAAAgYiFiAEHW0hALJCViAAAAAAAAJmIAACpiLmIAADNiAAA3YgAAAAAAAD9iAABJYgBBoNMQCwJLYgBBsNMQCxJWYgAAV2IAAHdiAAAAAAAAeWIAQcrTEAsmfWIAAINiAACHYgAAiWIAAAAAAACLYgAAAAAAAIxiAAAAAAAAjWIAQf7TEAsEj2KRYgBBitQQCxqVYpdiAAAAAAAAm2IAAAAAAACkYgAAqWKqYgBBrNQQCxisYrFiAAC0YgAAAAC5YuxiAADtYgAA7mIAQdTUEAsC72IAQeDUEAsC8GIAQe7UEAsg9GIAAAAAAAD1YgAAAAAAAPhi+WL6YgAAAAD/YgAABmMAQZzVEAsOCGMAAApjAAAfYwAAI2MAQbLVEAsCKGMAQcbVEAsmKmMAACxjAAAuYwAAAAA3YwAAAAA5YwAAAAAAADpjAAAAAAAAP2MAQYLWEAsKRWNHYwAAAABJYwBBmtYQCxJLYwAAAAAAAE1jAAAAAAAAUGMAQbTWEAsCWWMAQcjWEAsCW2MAQdbWEAsQXGMAAAAAAABdYwAAAABgYwBB8tYQCxpiYwAAAABjYwAAZmMAAAAAaWMAAAAAAABqYwBBlNcQCyZsYwAAbWNuY29jAAAAAAAAcGMAAHFjAAAAAAAAc2MAAHVjAAB8YwBBytcQCwJ9YwBB1tcQCwJ/YwBB4tcQCwKCYwBB9NcQCwKDYwBB/tcQCwKFYwBBiNgQCwKLYwBBlNgQCwKMYwBBrtgQCyCNYwAAmWMAAAAAmmMAAKBjAACmYwAAqGMAAAAAqWOqYwBB2tgQCwqtY65jr2MAALBjAEHy2BALJLFjAACyY7djvmMAAMBjAADBYwAAAADMY85jAAAAAM9jAADQYwBBoNkQCxjSYwAA02MAANRj1WPgYwAAAAAAAOJj42MAQcTZEAsC5mMAQc7ZEAsS62MAAAAAAADtYwAAAAAAAO5jAEHy2RALAvRjAEH82RALAvVjAEGG2hALHPZjAAD3Y/hj+WMAAPpjAAAAAAAA/GMAAP1jD2QAQazaEAsCEmQAQbbaEAsgE2QXZAAAAAAdZAAAAAAfZAAAAAAAACNkJGQAAAAAMWQAQd7aEAsiNmQAAAAAAAA9ZD9kAAAAAEdkAAAAAE5kYmQAAGNkZmRnZABBkNsQCwJoZABBnNsQCypqZAAAAABuZAAAb2QAAHBkAABzZHRkdWQAAAAAdmSAZIRkAAAAAAAAhmQAQdjbEAsiiWQAAAAAi2QAAAAAAACMZAAAjWSRZAAAkmQAAJRkrGSyZABBhNwQCwK0ZABBjtwQCxK1ZAAAtmS4ZLlkAAAAAAAAvWQAQazcEAsexWTJZAAAAAAAANBk0WQAAAAA02TWZNdkAAAAANlkAEHa3BALAtxkAEHk3BALFuhk6WQAAAAAAAD2ZAAAAAAAAPdk+GQAQYzdEAse+WT6ZAAAAAD7ZAAAAAD8ZAAABmUAAAAAAAAHZQllAEG43RALFAtlDGUAAA1lEmUAABNlAAAUZRVlAEHU3RALBBZlLmUAQebdEAsQL2UwZTFlAAAAAAAANGU1ZQBB/t0QCwI2ZQBBjt4QCwY4ZQAAOWUAQaTeEAsIOmUAAAAAPGUAQbbeEAsEPWVHZQBBwt4QCxhIZQAAAABKZQAAAAAAAE1lAAAAAFJlVmUAQejeEAsgWWUAAF5lAABkZQAAAABpZWplAAAAAGtlAABsZW1lbmUAQZLfEAsCb2UAQZzfEAsMcGUAAAAAAABxZXNlAEGy3xALBHVld2UAQcTfEAsWemUAAH1lAAAAAAAAfmUAAAAAAACAZQBB6N8QCwKJZQBBhOAQCx6SZQAAAAAAAJVlAAAAAAAAlmWXZQAAAACeZZ9loGUAQa7gEAsgoWWiZaRlAACmZadlAAAAAAAAqGWsZQAArWWxZbJlvGUAQdjgEAsWvmUAAAAAv2UAAAAAwWUAAMJlAADDZQBB+OAQCwLFZQBBguEQCwTGZctlAEGS4RALBsxlAADSZQBBsOEQCxrTZQAA1WUAAAAA12UAAAAAAADZZQAA2mXdZQBB0uEQCxTeZQAAAAAAAN9lAADqZQAAAADuZQBB9uEQCwLvZQBBjuIQCxTwZfVlAAD7ZQpmAAAMZgAAAAANZgBBruIQCwYYZh1mK2YAQcbiEAseNGY2ZgAAAAAAADdmAAA6ZjtmAAAAADxmAAAAAD5mAEH+4hALHD9mAAAAAAAAQGZBZgAA0WbSZgAA02YAAAAA1GYAQajjEAsG1WYAANtmAEG64xALJN9mAAAAAAAA7mYAAAAAAAALZwAAAAAOZw9nEWcAAAAAGGcmZwBB5uMQCwIrZwBB8uMQCxYsZwAAAAA0ZwAAAAA3ZwAAOGc6Z0BnAEGo5BALBkNnAABEZwBBuOQQCw5JZwAATGcAAAAAAABOZwBBzuQQCwJPZwBB2OQQCy5RZwAAUmdUZwAAVWdWZwAAAAAAAFdnAAAAAAAAWGcAAAAAWmcAAAAAXGcAAF9nAEGW5RALBGBnZmcAQazlEAsIaWcAAAAAamcAQcLlEAsCa2cAQdLlEAsobWcAAHVnAAAAAHZnAAB3ZwAAAAB4Z31nfmcAAAAAf2cAAIFniGeKZwBBhOYQCwKLZwBBkOYQCwiNZwAAAACOZwBBsuYQC1CQZwAAkWeTZwAAAAAAAJZnAAAAAAAAl2cAAJxnnmcAAAAAAACfZwAApGcAAKVnqWe+ZwAAAAAAAL9nAAAAAAAAy2cAAAAAzWcAANxnAADhZwBBjucQCwbrZwAA7GcAQajnEAsC7mcAQbjnEAsW72fxZ/Nn9mcAAAAAAAD4Z/xnAAD9ZwBB2OcQCxwDaAAABWgAAAAABmgAAAAACGgTaAAAAAAAABRoAEGG6BALEhZoF2gAAAAAAAAaaAAAAAAgaABBoOgQCxYnaC5oL2gAAAAAAAA9aD5oP2gAAEFoAEG+6BALFHhoAAB5aAAAe2h8aAAAfWh+aH9oAEHa6BALFoBog2gAAAAAAACEaJFoAAAAAAAAlmgAQfroEAsUl2gAAJlommgAAKJoAAAAAAAAo2gAQajpEAsIpGgAAAAApWgAQbrpEAsop2gAAKhoqWgAAAAAAACqaAAArWiuaAAAAAAAALBoAAAAALNoAAC0aABB9OkQCw61aAAAAAC4aAAAAAC5aABBkOoQCwa8aAAAyWgAQaTqEAsMymgAAAAAy2jNaNJoAEG46hALDNNoAAAAAOFoAADjaABB1uoQCxDkaAAA5WjpaAAA6mgAAOtoAEH06hALCvxoAAD+aAJpA2kAQYbrEAsECmkOaQBBkusQCwQPaRBpAEGg6xALAhRpAEGw6xALOB9pIWkiaSNpJGknaQAAAAAAAClpKmkAAAAALWkAAAAAAAAwaQAAAAAxaTJpAAAAAAAAM2kAADRpAEHy6xALAjVpAEGA7BALFjlpAAAAAD9pAAAAAEBpAAAAAAAAQmkAQaTsEAsMTGkAAE5pAAAAAFNpAEG+7BALClVpAABZaVppXGkAQdLsEAsOXWkAAF5pAABiaQAAZGkAQezsEAsMZmkAAGppa2kAAG5pAEGA7RALEHtpfmkAAAAAf2mCaYRphWkAQaDtEAsKhmmHaYppAACLaQBBtO0QCwqRaQAAAAAAAJJpAEHG7RALIpVplmmXaZppAAAAAJxpnWkAAAAAAACeaaJpAAAAAAAApGkAQYTuEAsCpWkAQZTuEAsCpmkAQaTuEAsWp2mpaQAAqmkAAAAAAACraaxpAACvaQBB4O4QCw6wabJps2kAALVpAAC4aQBB+O4QCwi9aQAAAAC+aQBBju8QCwLAaQBBoO8QCwLEaQBBrO8QCw7GaQAAx2kAAAAAAADJaQBBxu8QCwjKaQAAy2nOaQBB1u8QCwLPaQBB4u8QCxzQadJpAADWaQAAAADXaQAA22neaQAAAAAAAN9pAEGG8BALCuFpAAAAAAAA4mkAQZzwEAsC42kAQabwEAsE5GntaQBBsvAQCxTuaQAAAAD0aQAA9mkAAAAA+mn7aQBB0vAQCwILagBB3PAQCwQMag1qAEHo8BALFA5qD2oAABBqAAAXagAAAAAAABxqAEGK8RALGCdqAAA1agAAAAA3agAAOWoAADtqAAA+agBBrPEQCwJAagBBtvEQCwJCagBBwPEQCxJDagAAAABEagAAAABGagAAR2oAQdrxEAsoSWoAAAAAAABNagAAAABQalNqVGpWaldqAABYagAAWWpaagAAAABhagBBivIQCwpjagAAZWoAAGZqAEGw8hALGGdqAABqamtqAAByagAAAAAAAHNqAAB1agBB8vIQCw52andqemoAAAAAAAB7agBBjPMQCwiDagAAjGqOagBBpvMQCwagaqFqpWoAQbjzEAsCpmoAQcbzEAsEsGqxagBB1PMQCxS2agAAuGoAAMFqAADCasNqAADEagBB8PMQCwrMagAAAAAAANRqAEGG9BALBtZqAADXagBBlPQQCyTbagAAAADeat9q4WoAAAAAAADlagAA52oAAPBq8moAAAAA82oAQcT0EAsIBGsAAAVrDGsAQdb0EAsCEGsAQeD0EAsSPWsAAAAAAABAawAAAAAAAEJrAEGA9RALKkNrAAAAAAAARGsAAAAARWsAAElrS2sAAAAATWsAAE5rAABPawAAVWtaawBBtvUQCwJcawBBxPUQCwJdawBB0PUQCwhlawAAZmtuawBB8PUQCxZ3a4xrAAAAAAAAjWuZawAAAAAAAJprAEGa9hALDptrAAAAAJ1rnmsAAJ9rAEG29hALHqNrAAAAALNrAAC1a7Zrt2u5awAAumsAAAAAu2vBawBB3vYQCwrCawAAAADEa8VrAEHw9hALCMxrAAAAANBrAEGO9xALAthrAEGm9xALNNprAAAAAAAA4msAAAAA5GsAAAAAAADvawAAAADwa/JrAAD0a/ZrAAAAAAAA+2sAAPxrAWwAQfT3EAsIA2wMbAAADWwAQYr4EAtGDmwAAAAAEGwAABFsAAAAAAAAFWwAABdsAAAAAAAAGWwabAAAAAAAACJsAAAAAAAAP2wAAEBsQWxHbEhsAAAAAFBsAABRbABB4vgQCyJTbAAAAABUbAAAVWwAAFpsAAAAAAAAXmwAAAAAAABfbGBsAEGQ+RALTmFsYmwAAAAAAABjbGRsZ2xobAAAAAAAAHhsemwAAAAAAAB+bH9sAACAbIFsAAAAAIVsAACIbAAAimwAAAAAj2wAAJBskWycbAAApGylbABB7vkQCwqmbAAAsWwAALNsAEGA+hALHLRs1WzWbAAAAAAAANhsAAAAAAAA2WzsbAAA8WwAQab6EAsO8mwAAPNsAAAAAAAA9GwAQb76EAsu+Wz6bAAAAAD7bAAAAAAAAP1sAW0AAAAAEG0AAAAAEW0AABJtAAAAAAAAG20ebQBBgPsQCxAlbQAAJm0AACltAAArbTJtAEGY+xALBDhtO20AQaz7EAskPG09bQAAAAAAAD9tAABBbUdtAABIbUltAABNbQAAT22TbZRtAEHa+xALAphtAEHo+xALCpptm20AAAAAnW0AQYD8EAsCn20AQY78EAsCom0AQZz8EAsQpW2mbahtAACpbQAAAACqbQBBtPwQCwKrbQBBxPwQCwKubQBBzvwQCwK1bQBB2PwQCwK2bQBB5vwQCwK4bQBB+PwQCwq6bQAAwW3SbdNtAEGQ/RALAtRtAEGc/RALItZtAADhbQAA420AAAAA520AAAAAAADsbe1tAAAAAAAA8m0AQcb9EAsC+G0AQdD9EAsG+239bQFuAEHe/RALBgZuAAAHbgBB+v0QCwIMbgBBiP4QCwgNbgAAAAAPbgBBov4QCwgSbhxuAAAebgBBtP4QCz4fbgAAIW4ubgAAAAAvbjFuAAAzbgAANW4AAAAAAAA3bjhuOW4AAD5uAAA/bkFuAAAAAAAAQm4AAENuRW5IbgBBhP8QCwxLbgAAUW4AAAAAUm4AQZj/EAsaU24AAAAAAABVbgAAAAAAAFhuWm4AAFtuXG4AQb7/EAsWXW4AAAAAXm5fbgAAAABgbgAAAABibgBB3v8QCw5jbgAAAABkbgAAAABlbgBB9P8QC0JmbmduAAAAAGhuAAAAAAAAam4AAGxubW4AAG5ucG5ybgAAdW52bgAAAAAAAHduAAB4bnlue24AAIRuAACGbgAAiW4AQb6AEQsCi24AQcqAEQsCjG4AQdqAEQsCjW4AQfaAEQsEjm6PbgBBgoERCxKQbgAAAACRbgAAmG4AAJlumm4AQaCBEQsmm24AAAAAAACgbqFuAAAAAKhuAAAAAAAAqW6ybgAAs24AAAAAuG4AQdaBEQsCu24AQeiBEQsCvG4AQfSBEQsU+24AAPxu/W4AAABvAAAAAAAABG8AQZKCEQsCBW8AQZyCEQsQB28AAAAAAAAIbwAAAAAMbwBBtoIRCxANbwAAAAAAAA9vEm8AACpvAEHcghELAjBvAEHmghELBjFvAAAzbwBB+IIRCwI3bwBBgoMRCxA6bwAAQG8AAEFvAAAAAEVvAEGagxELCkZvSG8AAAAASW8AQayDEQsSTG8AAAAAAABPbwAAUW8AAFNvAEHGgxELMFRvAAAAAFZvV28AAAAAAABcbwAAAAAAAF5vAAAAAGBvYW9ib2lvAABubwAAb29wbwBB/oMRCyJxbwAAAAB0bwAAAAB5b3pvAAAAAAAAe28AAIRvAACJb4pvAEG4hBELCpBvk28AAAAAlG8AQcqEEQsClW8AQdqEEQsElm+YbwBB6oQRCxCZbwAAAAAAAJpvAACcb51vAEGChRELAp9vAEGMhRELJqBvpW+sbwAAAACtbwAAAAAAAK5vs28AALZvAAAAALlvAAAAAL1vAEG6hRELBsZvx2/LbwBBzIURCxTMbwAA0m8AAAAA1G8AANdvAADYbwBB7IURCwzbbwAAAAAAAN1v3m8AQaKGEQsa328AAONvAAAAAOxvAAAAAAAA9m8AAP5v/28AQc+GEQsHcAFwA3AEcABB5IYRCyQTcAAAAAAAABdwAAAAAAAAGHAAABlwGnAAACFwAAAjcCRwJnAAQZaHEQsUJ3A4cAAAAAAAAEBwAAAAAAAAQXAAQbyHEQsQQnAAAENwAABFcAAAAABGcABB4ocRCwJJcABB8IcRCw5NcE5wUHBScFRwAABVcABBhogRCwRXcFhwAEGWiBELClpwAAAAAAAAXHAAQayIEQsIXnAAAF9wYHAAQbyIEQsEYXBicABB2ogRCwJjcABB+ogRCwpkcAAAZXAAAG5wAEGQiRELGnBwAABxcAAAcnAAAAAAAABzcAAAAAAAAH1wAEG2iRELCH9wAAAAAIFwAEHGiRELEoJwAACFcAAAAACGcAAAAACHcABB5okRCwKIcABB8okRC1SKcIxwAAAAAJBwk3AAAAAAlXAAAJpwAAAAAAAAqnC0cAAAAAC1cAAAtnC3cAAAAAAAALlwAAAAAAAAunAAAMNwxHDFcAAAAAAAAMpw0HDScNpw3HAAQdSKEQse33AAAAAAAADicONwAAAAAAAA5HAAAAAA6HAAAOpwAEH6ihELAutwAEGIixELDuxwAAAAAAAA7nAAAPJwAEGkixELEPNw9HD3cAAAAAD4cAAA+XAAQcSLEQsC/HAAQc6LEQsU/nABcQAAAAAAAAJxAAAIcQAAC3EAQeqLEQsCDnEAQfiLEQsKHHEAAAAAAAAmcQBBiowRCwIncQBBnowRCyAocQAAK3EAAC9xMHEAADZxN3EAAAAAOHE9cURxRXFGcQBByowRCwJHcQBB1owRCxpIcQAASXEAAAAAAABRcQAAAABTcQAAAABdcQBB+IwRCwZgcQAAYXEAQYiNEQsSYnEAAAAAAABscQAAAAAAAG1xAEGijRELCm5xAAB1cQAAd3EAQb6NEQsce3EAAAAAAAB+cYBxhnEAAI5xmnEAAAAAAACbcQBB+o0RCwKccQBBhI4RCwSdcaBxAEGWjhELDKJxqXEAAAAAAACvcQBBso4RCwKxcQBBvo4RCxyzcQAAtXEAAAAAAAC7cQAAAADAcQAAAADScdRxAEHsjhELFuBxAADocfZxAAD4cQAAAAD8cQAA/XEAQZKPEQsOLHIAAAAALXIAAAAALnIAQbSPEQseMnIAAAAAAAA5cgAAPXIAAEByAABCckhyYHIAAGJyAEHwjxELDGVyAAAAAGZya3JscgBBhJARCwZucgAAb3IAQZSQEQs0cHJxcnJydHIAAHZyAAAAAHhye3IAAIByAAAAAAAAinIAAAAAi3IAAAAAjHKOcpByAACXcgBB1pARCwSacptyAEHkkBELBJ1yn3IAQfCQEQsCoHIAQfyQEQsCoXIAQYaREQsConIAQaiREQsSo3KkcqVyAAAAAKpyAAAAAKtyAEHKkRELAq1yAEHUkRELBrRyAAC1cgBB6JERCwi2cgAAAAC4cgBBgJIRCwbCcgAAxXIAQZaSEQsCynIAQaSSEQsezXIAAAAAAADOcgAAAADPctVyAADWcuRy5nLqcutyAEHQkhELAuxyAEHgkhELHO9yAAAAAAAA+3IAAAAAAAD9cgAAAAD/cgAAAXMAQYSTEQsKA3MAAAZzCnMMcwBBmJMRCwIQcwBBpJMRCwoVcwAAAAAAABhzAEG+kxELVBxzAAAhcwAAAAAAAC5zAAAAAAAAMnMAAAAAAAAzczRzAAAAADlzAAAAAAAAOnMAADtzAAA+c0FzAABFcwAAAAAAAEZzAAAAAAAASHMAAAAAAABMcwBBopQRCwZOcwAAT3MAQbKUEQsGUHNRc1lzAEHIlBELOlpzAAAAAFtzYnMAAGRzAAAAAAAAZnMAAGdzaHNrcwAAAABscwAAAAAAAG1zAAAAAAAAbnMAAAAAcHMAQYqVEQsWdnN5cwAAenN8cwAAAAB9cwAAAAB+cwBBtJURCwiKc5BzknOXcwBBxJURCxiZc5pzAAAAAJ1zAAAAAK1zAACucwAAr3MAQeSVEQsSsHOxcwAAAAC5cwAAAAAAAMBzAEGElhELAsFzAEGQlhELEMJzw3PFcwAAxnMAAMlzy3MAQayWEQsWzHMAAM1zAADRcwAAAAAAANJzAADVcwBB3pYRCxLYc9tzAAAAANxzAAAAAAAA3XMAQfqWEQsM4HMAAAAAAADnc+lzAEGUlxELDutzAADtc+9zAAAAAPRzAEGslxELKvVzAAAAAAAA93MAAAAAAAD4cwAA+XP6cwR0AAAFdAAAAAAAAAZ0AAAKdABB5JcRCxoYdAAAGXQAAB90AAAldCZ0AAA2dEF0AABDdABBiJgRCxBEdAAAAABFdAAAAAAAAEt0AEGwmBELDkx0AAAAAAAATXROdE90AEHUmBELDn50AAAAAAAAgHQAAIF0AEHsmBELAoN0AEH+mBELFoV0AACIdIp0AAAAAIt0AAAAAI10jnQAQbiZEQsCk3QAQcKZEQsElHSVdABB2JkRCw6ZdAAAAACtdLB0wnTRdABB8JkRCxTTdOF0AADidAAAAADjdOZ0+HT6dABBkpoRCwz7dPx0AAAAAAAA/3QAQaiaEQsSAXUAAAAABHUAAAV1AAAAAAp1AEHCmhELChN1AAAAAAAAFHUAQdaaEQsWGnUAABt1KHU3dTh1OnUAAAAAAAA9dQBB9JoRCwQ+dUB1AEGOmxELAkF1AEGamxELCkd1T3UAAAAAUXUAQbibEQsOUnUAAFZ1AABXdQAAWHUAQdKbEQsYc3V0dQAAAAAAAHV1AAB4dQAAAAAAAHl1AEHymxELAnt1AEGAnBELCH91AAAAAIB1AEGSnBELAoJ1AEGqnBELCoR1inUAAAAAi3UAQbycEQsOknWmdQAAp3UAAKl1snUAQeScEQsGs3W0dbV1AEH2nBELArd1AEGOnRELFLh1AAAAALl1unUAAAAAAAC7dcJ1AEGsnRELGMN1AAAAAMR1x3UAAAAAAADYdQAA3HXddQBB1J0RCwjkdeV1AADwdQBB6p0RCxDydfR1AAAAAPd1AAAAAPp1AEGCnhELAvt1AEGYnhELGAV2AAAAAAAACHYAAAAACXYAAAAAAAAKdgBBuJ4RCwwLdgAADHYAAA52E3YAQc6eEQsKF3YAAAAAGXYbdgBB4J4RCzgedgAAIHYjdiV2AAAqdix2AAAAAAAAPXYAAAAAP3ZAdgAAAAAAAEZ2SHYAAAAASnYAAEx2AABWdgBBoJ8RCwRXdlh2AEGunxELClp2W3ZedmB2YnYAQcSfEQscbHZtdgAAAAAAAG52AAAAAAAAb3YAAHB2cnZ2dgBB6p8RCxB3dgAAfHaMdo12AAAAAJR2AEGKoBELFpV2AACWdgAAl3aYdgAAAACddp52qnYAQaigEQsaq3YAAAAArXYAALF2AAC0dr12AAAAAAAAwXYAQcqgEQsCw3YAQdagEQs6xHYAAAAAxXYAAMZ2yHYAAMl2AADKdgAAAAAAANF2AAAAANJ203YAANR2AADYdgAAAAAAANt23nbgdgBBtqERCwLhdgBBxqERCxbkdgAA5XbmdgAA6XbqdgAAAAAAAO12AEHkoRELEvR2+Hb5dgAAAAAAAPp2AAAAdwBBgqIRCwYDdwAABXcAQZKiEQsIDXcAAAAAFHcAQaSiEQsCFXcAQbCiEQsIFncXdyF3IncAQcyiEQsWKXcAACx3AAAAAAAALXcudwAAMnc0dwBB+KIRCwo7dwAAPHcAAD13AEGKoxELCEl3AAAAAEp3AEGcoxELGll3AAAAAFt3XHded193YHcAAAAAYXcAAGJ3AEHGoxELGGN3andrdwAAend7dwAAAAB+dwAAAACCdwBB5qMRCyqTd5R3n3eqdwAAAACsd7B3v3fAdwAAwXcAAAAAwnfNdwAAzncAANR31ncAQZ6kEQsC13cAQbakEQsI53cAAAAA6ncAQcakEQsC7HcAQdCkEQsI7XcAAO5373cAQeCkEQsU83cAAAAAAAD1dwAAAAD2d/93CXgAQYalEQsQC3gAAAAADXgAAAAAAAAOeABBoKURCzYQeBF4AAAAAAAAFHgAAAAAAAAXeAAAGngAABt4HHgAAAAAH3ggeCF4AAAAAAAAIngAAAAAKHgAQeSlEQsiK3gAACx4AAAAAC54AAAxeDJ4M3g2eDl4AAAAADt4PHg9eABBjqYRCwpGeAAAAAAAAEh4AEGgphELAlp4AEGwphELFFx4Y3gAAAAAZ3hoeAAAaXgAAGt4AEHQphELHmx4AAAAAG54AAAAAAAAcngAAHN4AAB1eHZ4AAB9eABB+KYRCw5+eH94AAAAAIF4AACDeABBkKcRCyqEeIp4AAAAAIt4AACReAAAAACSeAAAAACUeAAAAACVeAAAAAAAAKF4o3gAQcSnEQsGqXgAAKt4AEHSpxELHK54AACveAAAsXgAALJ4AAAAAAAAuHi6eAAAvXgAQfqnEQsOvngAAAAAAADDeNV43ngAQZCoEQsI33gAAAAA4XgAQaSoEQs84ngAAAAA43gAAAAA63jseAAAAADweAAAAADxePJ49ngAAAAA+Xj+eAAAAAAAAAB5AAAAAAF5AAACeQZ5AEHuqBELKhJ5E3kWeQAAGHkAAAAAGXkAAAAAG3kdeQAAAAAeeSN5AAAAACZ5AAAoeQBBoKkRCw4qeQAAAAAseS95MHkxeQBByqkRCwYzeTR5NXkAQdypEQsCOHkAQfSpEQs0PHk9eT55AAAAAAAAQXlDeUV5AABHeQAAAAAAAEh5AABJeQAAAAAAAE15TnlPeQAAAABXeQBBsqoRCxJaeQAAXHlfeQAAAAAAAGB5YXkAQcyqEQsWY3kAAAAAZHkAAAAAAABleWd5AABoeQBB9qoRCxRveQAApnkAAKh5AAAAAKl5qnmreQBBpqsRCwiteQAAr3mweQBBvKsRCxC6ecN5xnnHeQAAAAAAAMh5AEHaqxELGst5AAAAAAAA0nkAAAAAAADYedt5AAAAANx5AEGErBELAt55AEGQrBELCt95AAAAAAAA5XkAQaKsEQsE63nveQBBrqwRCwb/eQAAAHoAQcisEQsKAXoEehV6AAAWegBB3qwRCwgXegAAAAAZegBB+KwRCw4aeht6AAAAABx6AAAdegBBkK0RCxIeeh96AAAAACB6AAAiegAAI3oAQaytEQssMXoAADJ6AAA0egAAAAA1ejd6OHoAAAAAOnoAAAAAAAA8ej96AABDegAARHoAQeKtEQsCRnoAQeytEQsCR3oAQfqtEQsCSHoAQYauEQsMSXpMek16U3oAAFV6AEGcrhELBlt6AABcegBBrK4RCwpdel96AAAAAGN6AEHArhELAmV6AEHMrhELCGh6AAAAAGl6AEHgrhELAmp6AEH6rhELAmt6AEGKrxELAm56AEGUrxELAnF6AEGmrxELAnN6AEG0rxELFHR6AAAAAHZ6d3oAAHh6AAAAAHp6AEHQrxELCHt6AAAAAHx6AEHsrxELDIN6AACMegAAAACNegBBirARCx6QegAAnHoAAJ16AACgegAAqXoAAK16r3qwegAAsXoAQbSwEQsOtXq3egAAAAAAALh6unoAQc6wEQsQvnq/egAAAADAegAAwXrIegBB8LARCwLJegBBgrERCwLKegBBkLERCwLLegBBmrERCwLOegBBwLERCxDSegAA1HoAANh6AAAAANt6AEHYsRELKNx6AADleul6AAAAAOp6AAAAAOt6AAAAAOx6AAAAAAAA7XrxegAA9HoAQYiyEQsEAXsCewBBmrIRCwYEewV7BnsAQaiyEQsGDXsQexF7AEHAshELAhV7AEHKshELDhZ7AAAAABd7AAAAABl7AEHqshELEBp7AAAiezB7M3s0ewAANXsAQYazEQsmOntBe0d7AAAAAAAASHtJe0p7AAAAAEx7T3sAAFF7AAAAAAAAUnsAQbSzEQsCU3sAQcKzEQsaVHtWe1x7XXsAAAAAXntge2F7YntrewAAbHsAQeSzEQsobXsAAG97AABwe3F7AAAAAHN7dHsAAAAAeHt6ewAAAAAAAHt7AAB/ewBBlLQRCwKAewBBorQRCwKBewBBrrQRCwKCewBBvLQRCwKFewBB0LQRCwSGe4l7AEHctBELEot7AACZewAAAACaewAAAACbewBBgLURCwacewAAnnsAQY61EQsYoHsAAAAAAACkewAAAAAAAKl7AAAAALx7AEG0tRELgN8HyXvLe8x7AADOewAAAAAAANB7AADWewAA13sAAAAAAAAIAOoDiAD3AwQAqwIECkUBigp9AAcLPAIJC1ACCwuoAgsLSgMLC5wDDAtkAQwLJgINCz0BDQtyAQ0L1QENC9cBDguNARILRQCSC5EAhgDxBIgLFgKGAJcFCwCKAIwAKAAEAJsABwCZBgQKzgKHCsAEBAD1AAUAlwAFAOUCBgB7BAcA8gEHAGYDBwAGBgwA1QAOACQADgCHAREAbwASAAYAEgAuABIAlwATACQAFAAgABQAOAAUAEUAFABmABUABAAWAAgAFgAKABYADgCWAB8ABABwAocA2AYFCnwABQqQAAYKJAIHCg8ABwqZAIkKdQIGAPcBCQBKAg0A1AEOAEIAEAA6AAcK+wUICqABCQoTAQoKZAALCpICCwrTAwwKVgAOCs8ADwoUAI8KGQAFAFsCBwC8BAkANQIOAC0BBQqTAwYK9wYHCtMABwpJBQkKUwAKCngBCgqvAQsKHwIMCpgCDQoYAQ0KrAEOCoAAEQo0AJEKUQAEAOwBhQDDAYcAQwONAEYAhAAbAgcL7AKLC7wCBwvtBQsLVQIOC0wADgtPAZQLIQAGAHEAhwC0AQQKUgGFCpABiADOAoULfwCFC6IBBgDhBQcACAIGC8YACwp8A4wLUwAECt0ABQqTAgUK3QMHCrkCBwq7BIoKHAGHAC4EBQsUAQYLNwCHC1kFhgDrBQYL2AaIC9YCigr7AQ8ATgAECrwAhwolAwUKdAOLCt8DhQv8AoYKdQYGCzUBBwtLAYoLJgKHC0UHhAtcAYcL2gOHCyUGDABiAg0ArwGQADsACQsfA4wKpgCGAPoFhADuAoQAMwGFAMQDBgvCAAcLhQAKC+0BCgs6AosLmAIFCxgABQs5AgYLAwAGC3cABguPAAYLuAEHCycBBwtXAgcLlgYHCz4HCAuoAQkLKwAJC0gCCQv4AgoLlAAKC0gBCwufAAsL/QALC/oBDAvnAQwLEwKQCyEAiAr4AgULDgAFC3wDBgsbAQcL6gCICxkChwvjBAQLfgAIC3sCkwsiAAQLPAGHCxkGBgDnAwYAHgWJC10DBAtAAAULYAEFC9ACBgtwAYsLZwEEAEsABQC0AAYA9AEHADoABwDGAgoAhQKICgIDhQCJAgYAFAEHABoBBwBvAwcAnAMIAMsBCQBXAgkA8gILAD4CDACAAAwA7gENADQADQAtAQ8AHgCPAIQAhADIAAQKWQAFCukBBgo7AQcKKQIHCtEGigrzAIcLGgQHAFUGBgp6BgkKAwAKCpoACwqBAg0KVQANCskAjQpaAQYLrwCJCyEBBQuwAYULkQMGAOEAiQDTAAcAzgIIAK8CiwB2AQQKpgCFCvkBCQBuAIYKhgYIADoACQDUAgsAKQMNAHEAkQBIAAYAWQEHAN8EkAtSAAULowOGC6IGCAD/AggAIwMJAC0BiQCHA4sAywCGAIIEBwCdB4gAogKGAAMBhwD7BAULBgMGC2UGBguWBoYL1waGAM8EBwq9AQgKMwEICsACCgopAAoKtwELCu0ACwpuAowKyQCIAP4ABgsEAYcLzAWLABUBhwq5BwQKvQAFCskCBgs9AogKOQCKCnMBhAooAoYLWAGFAPgACQAgAwoAtQILAOIBCwDeAgsAFQOGC/AABAB0AAUAXwAFAL0BBwCYBggAHQAJABABCwD9AQsAkwMECyQBBAvgAgULZwMGC6sABguZBgcLLAUHC5gHCQufAQkLRAIOC+YAkgtEAAcA6gENAGQAjwBLAIcAaQaFAB8CBwvRAAgLlQIKCyoACws6AAwLOgAMC3YAjQsgAAUAtQAIACkABgs/AIcLmAOFAJEChQsZA4oAxQIHABkACADKAIoAGAIFC5kChwr8BpEKMQAJAKcBjABZAAULQwAGCz4ABgt2AYcLbwUIAHEACQBtAwoAKgILAFMADACIABMAbQAJCxYDjAsvAIoKlQIEAMMDCgCfAw4AugGHCpkHhQDQA4QAzgAEC4cBhwuRBIYA0gcGALgChgDwA4YAkgSECw8BBwANAAgA4gAKABkCCwA6AgsAXQILAB8DCwAkAwwAVQAMAAQCDABvAg0AcAANAGkBDgBNAA4ATgARABwAEwBuAIwLOgGEAAEDhgAIBgQAJwKJAKYCBQpUAIYKowAJADkACQDLAQoAqQELAHcADAC4AAwAcwENAGYBkQAzAAUAvAAFAC4DCAAKAAkApQEJANkCCgBhAgsAsQIEC/0ABQqaAQULIAIHCywBiQtUAYYAcAKKC0EBhwCVBxIAggAFCkIBCAq6AAkKBgEKCrsAjgrQAAULNQAFCx0CBgteAAYL8wEHC+YAiwtBAYUK4wAEAHoBBAuYAwULGQAFCxYDBgvJAYcLVQOJAA0BhAAQAoYAegQHCnMFCArmAQkK7AAJCm4DCgraAAsKXwATChEAkwofAAcK+wcICqACjQrAAYYAUQSGAFAGhgvlBowLowAFCpwBhQs2A4QLegIGAJAChgvCBoYAlAcFAGgABgCtAIcAXwaICjICBgskAAcLkgIIC8YBkwtWAAUAyQGGCusGBwAqAwgAigAIAFYBCQBUAAoAwQALAHMDjABnAQkAbAKHCqYEiQqEAAcLzwOJCxUDBgBfAAYAjgeIAMcDjQtPAQYAlgEKAJkBCgC/AQsALACMAGQABAo9AYcK/wSEAN0BhgD0BAYAlQcIALADBQo/AIUK/QGEAHUChAtoAAQA9gCFAHcBBgBkBoQKIAGHC04GCQAxAAoABgMIClkACApsAgsKdAIMCkIBjwp8AAQAGgEHAAoECwCOAQsAegIMAAEADABPAAwAIAIOAO0AEQAKAJIAFACEADgDBwstAAkLHgIJCzYCigvYAgUAdgAFAPMBBgDcAQYAmQIGAJgEBgCsBAcAWAIHAHgDhwBIBAcAKAEHAFQCCAAwAggASgIJAGQCCwAwAQwALgANAFkADgBwAJEAegAFAH4DBgDsBgkA8QOKCngABQsVAgcL8wKKCwwDlwoBAAYAwgUHC1cAjgsgAYsAbgGJCs0BBwvcAwcLkwcJC0AACQv2AQwLBwAMCyIADQsMAA0L6gCTC00ABwA/BgcAuwYIAE8ACABqAAgAvgAIAC4BCAB/AQgAyQIJAHcACQDpAAkAowEJANcBCgC1AAoAlgELADkACwBVAAsAeAALALEACwAoAQsAfgELAMYBCwD2AgsA5wMMABsADABiAAwAgwAMAPUADAA4AQwAvgEMAMYBDQAZAA0AYgANAKoBDQD8AQ4ARgAOAKMADgAQAQ4AFQEOAHIBDwBfAA8AigAPAKcAEQAmAJQAYACHCkIFCgDIABMAAgCXABYAhwuNAIYKVQCGAN8GigB0AZEAEAAIAK8DhAtrAosLWAAFC/YACAu9AAkLYwEJCwACCgt8AAoLxQELC48ACwugAQsLWwONC1UBBQACAYYAzwIGAAYHBgAvBwgAhAMKAGoDCgB2AwwAugIMANwCDAACAxAAagASAKMAEgCqABIAqwCYABQACQDDAgsARgELAFMBDACnAQwA9gEUAD4ACQvDAgsLRgELC1MBDAunAQwL9gGUCz4ABQAeAAcA7wEIAIYACQAUA4wAtgGFC6YCBQoXAQYK6wAHCtQBCAq+AQkKfQIKCs0CCwriAowKAgIFCyMABgsfAQcLXgMHC14HiguzAAcAnAcHANQHhAsFAgUKEQAGCnMBiQoQAgQAcwAFAJ0CBgCXAQgANwELAAoAjQAFAIkAfQEFADIABgC3AQcADAOHABAEiAubAgsLkwGSC1MABQABAAYAUQCKAAgChgDiAgUA4gEIAGIACQCsAAoAaAEKALwCCgA2AwsALgELAAoDDAAyAAwAfwAMAIwBDQA+AA0ASAEOAHoAkwBIAAkLnQAKC4MAjAtIAIcLygKHCxsCBQACAAYAAAIHAB0DBwDWBQgA/QAIAE0CCQBNAAoAAQAKAIEACgDhAAsAdgALAOIACwD7AAsArgELAL0CCwDOAwsA1gMMAEAADAAEAQwA6AGMALICBQuKAQcLbwEHC+cBBwtZAwcLsQYIC/YACQsZAgoLpQAMC9sAjAsxAogALQIFCgsDBQonAwYKdwaGCowGBArEAAUKLgKFCrUDCws7AwwLOAAOCyIAjwuUAIkAWwGFADwChgBAAwQADAAHAPgBBwAKAgcAKQMIAB0DjQBYAAQK8AKFC8EBBwtWAAgLZwCRC0UABwvsB4oLgQIFABACBgsBAI4LAgCGAF0DCgAmAQQK4wAFCp8ABQqZAQcKUAAKCt8BDAqiAQ4KMgAOCvkAjgonAQcKvgUICkIACAqJAAgK+QIJCn4CCwpQAAsK1AALCnABCwqiAQwKCAANCg8AEAo9ABEKOwATChwAlApUABQAbQCHC3wEBgsVAQcL+gQHC2oFBwtwBQwLgQCSC1cABgu7AAcLJwAHC7MECAt8AQgLHgIOC3UAlQscAIYAowQFAAoBCQAiAQkAbAEKACUBCwBeAo4ALQAGCykBBwsZA4sLqgMEADIABgBSAgkAeQAKADEACgCcAYsAQgOIAOwCBwvQAQgLtgELC2kACwtrAQwL5wAOC4IBDwtmAJQLSwCEANIBDQCPAQ4AUQEGCiYABwrEBAgKuQAICgABCQoWAAkKSwEKCuICCwrNAAsKHAILCuoCDQrRAY4KwgAJAHoBjQCiAIkABwIECp8ABgpzAAcK/AAHCgEBBwqIBwgKRQAJCoABCgpbAAoKZwIMCncBDgrrABIKdQCTCnsABQtcAgUKjwOIChYBhACbAggAXwEJAEIBBAqXAIcKHwaGAIYDhQreAwwAtAAFCsIABwp+BokKWgAEAGUDhgDMB4YALQOFCqkBiQv5AoQABAGFCssDBQsUAAYLKgEHC5MCBwtWBYkL2wAEACcABQAkAAcAMwcIAJcBCwCQAIwACwIEAP4BCgBLAosK8AIHAB0ABwBCAAcAvAcKAOcBigApAw0ABAEOAFIAEgA/AIkKlgIFCkgABgoIAQcKFQAHCi4ABwrdBwgK1wAICgECCgoKAYsKFgCGADoCBgA1AgcAgwYEC7cBCgpfAAsKWwIMC/IADQq7AQ4KoACPCgQAhgC4BYYKrwEJAHQBDwACABMACgATABIABQpqAwYKjQaPCgAAhAATAwYAfAEMAI8BFQATAAcKqwMHCpQEBwqHBgkKHAIKCrgCCwoJAQsK3AILCqADCwqpA40KtgGJAMgAhAvpAIQABAKGC0EChABMAwsAdwMOAG0BjgB3AYQL4gEIADUDjAAsAAcAdwaIADEBBQqqAocKXweHC1oBhAq4AgQACgAHAJUDiwASAwULGwMGC80GCAuhAYkLDgMEAPgDhgDvBwUArAIECtYChQp2AgYA/QOGAMgFCAoiA4gKRgOGABsAhgCLAYcLbgIHC3EChwvWBgQLywCHC5AHBgp2AAcK1wAHCvEFjAoLAIQALQOIAP8BBwpnAooK+wCHChQEkQA4AIUK4QAGAFYBBgDwAQgAEwGJAM4ABACNA4UArAOEAHsDBws3AQkLNAGMC/8ABApyAQUK9AKHCi4FBACvAoYAPAaGAD4FBgp+BgcKMAAICgMDCgp0AA0KaAAOCmkADgq4AA8KqAATClwAlApEAIoK0QAEC5ABBQsLAYcL6ACXCwwABgApAI0AoACNCzoBhgC2BogACgOOCwUBhgBKBoUAcwCEACYBDgA6AYQKeACEANcDBQDBAIwAsgCKCq0BBQo0A4cKowMGAOIDBgAbBAYAnwUHAK4AhQvcAgQLZAAHC6cCCAs5AYoKxwAGCpcABgqLBgcKfwGXCgoABgAEBwgAUAMIAGMDCACLAwoAVwOMAL8CjADdAAQAegAFABwDBQC4AwYAfAYGAIcGCAA3AgkArwIJAOYCCgCuAgsAqgILAI0DjAAZAQULagEFC7sBBgs+AQcL+wOLC28CBQvPAYgLKAELAEcCDQAGAQYKWAYMCqYBjgpoAQUAswAHAEcEhwC9BAQKKwAEC8YBBQpYAYUKZQEEAEIABwDSAocAiAOGAAUDBwBgAYUKeAMFCzAABQuUAQYLLQIHC8oBCAtVAgoLxwEKC14CCwsxAAsLJAIMC9wBDQsSAI0LwgGGC6IBhArHAgULugGHC8AHjQAjAIkAmACGAK0EhwtFBIkLywCJCrgBCgBQAgoA8QIMAD0BDABjAQwA0QEMANUBDAAwAgwAQgKNAPMAhQA0AoYAHQMFCr4DhQrbAwULNwAHC3gBjAuhAIULwgGGACwChgAzAwsKFAGOCiUBBwAgAooAPQAIAM8CBApBAAUK3wEFCuwDBwp5BwgKPQEJCi4BCgpkAo0KFgAEAAUABQDyAQgAfQIJAAkCBAvVAAQKBQEHC98ABwr+AYgLUAAFAJ8DBwBlAAQKIwEHC30BBwsmAwcLNAMIC2IBCAu1AQgLEwMJCgMCCQuRAgoLOgAKC1MBCgvtAgsLkgMMCpgADAuiAAwKuwENC0sADQqIAQ4LagAOC8YADgtAAQ4KZQEOC50BkgsrAAYAgQQHAKEFiAvrAgQAfQMFAAwDhQB9A4oLjgKFC7QChQDuAIYLvwAECoIAhwpLAwYAEAUFCioABQpvAwcK9QAHCkQBBwr8BQsKzwELCtgBDQprAZAKNACGAMEGBgDPB4gAyQMECoYAhQp0AQQAPAAHAK0DBwAIBwgAOgEJALwCiwDnAYYAeAQGC6IABwuoB4gLPwOEC8IChwB7BIoLqgGKC1kABwA9B4oAtQGIAKMBhwpiBoUAPAMFACYDBwCwAAcAsgAHANgEBwC4B4QKhAKHC1UHBQukAYcLqQUEADMABQAnAAYABAAHAE8CBwBRAwcAtwMHAE0GBwDgBgcAxAcJALIBCgDyAgsAGQCLACUACgs5AIoLFQGHChwChAvMAIcAnwCLC+cAhQCGAwcAoAMHC24BCQsfAQwLxwAMCywCjAtBAgYKbwKIChUDBAqMAwUKZwEFCvwBBgq7BgcKVwEHCswHhwrqB4YADgEEClUBhwrgAQULZAGHC+AACwtMAgsLYAMLC8gDjwugAIQALAKJACEDhACgAY4AdAEFAJgABQDFAAcAVAEHAGMDCgAkAgoARQILAAYADAADAAwAEwAOAG4AjgAhAYsAcQEHC3YCCQs3AgsLlgALC7wBjQt3AIYLGwIHCssHCAorAQsKegOMCqICBwAiAAcAvgAIABwACACNAAgAvAEIACsDCQDUAQsATgEMABgADACCAYwAQAKFAPUCBwARBogAggOFANECiAD0AwQAFQMFAIcChwBOBIQAggMKALcABAruAAUK9wEGCrMABwrTBwgKfQEICtkBCQqVAAoKFAMPCi0ADwpWABQKbgCWCjkACQCIABMAawAECnkABQqcAAUKXQEKCl0CjgpWAQQL6wCHC/8ABAvCAAULSAIGC4ABBwtHAgoL+QILC/gCiwtTAwYKUAAGCp4GBwqtAAcKtgcJCiMCCgraAg4KEgCWCicABAqbA4YKrwYFABUBjQD3AIQAswGFCzIChgAfBQULvwCJCw8BhApTAgcLAQYOC2AAjwtJAAUAtQEHAPYBBwAHAgcAYgQHANcGDgDTAAYKywEHCtkGBwoNBwgKkgIJCgEACwq/A40KvgEGAC4DBAvWAQUL2QEGC5kABwvfBQcLgwcKC70CCwuEAAsLqAALC+MACwtAAQsLtAELCw0CCwtXAwwLKQAMCx4BDQtnAA0LHAEOC/8ADgsGAQ8LdQCPC38ABQAJAQYA1ACHABwAigDuAoULRwEGCygCBwvaBokLXAKGANwHhAC+AgULUAAGC5UBBwuTAQcL3gUHC1oGCAvIAQkL5wEJC1UDCQt5AwoLNQELC9ECCwviAwwLrgGNC6UABQAoA4cA/QcFAKYACADjAowA/wGGCuoBBAvFAQULdwMGCxcCCAsGAIgLHwIEAHcABQCqAAUAvwEHAKwGBwBhBwkAZQEJAM8CDADmAYwAVAKJAPQBBwr6AIgK+wGECp4ABgApA4YA3AUJAEcBCwBeAQsAPwMNAGABBAqMAAcKagEICtEACQoKAAkK9wEJCmYCCgqxAgsKRwELCtUCDAr8AAwKRwINCsAADgoNAQ4KZAGUCjIAhwvlAgQAwgEHAIYEEwoBABMKGgCWCgkABgBVAocAJgWGAEIGBgrkAAcKPQUJCpgBigpXAQcAXwUHALoFigBLAYQA8gKECi0CBQtlAAYLWAAGCx8CBwuNBgkLZAAKC6UCDgupAA4LLgEOCzkBDwswAI8LVACGAFgFBAs2AQkLGwMKC90CCwvDAQwL+QAOC3MADgseAY8LZACECiQCCgAtAgcKxQAICo4ACApFAQkKlgAJClQCCgphAQsKSgALCjsBDAqWAgwKqQIOCqcBjwqNAIULSwIFAFIDiAAfAwoAjAMMAL0CDAD1Ao4A0gEEAD4ABQATARIAEwAGCo8BBgpDAgcKtAIHCk4DBwr3AwcKBwcICpMBCQqKAQoKhQAMCgQADAopAQwKxAEQClEAEgoZABUKDgAWCgwAlwoSAAwAywEHCgoGCworAY4KlwGECrEAhAvyAQcL2QAIC4wAigtiAgUKmwGHCo0ChgAKBwcKtwEKCtcCCwoEAYsKrAKFC4kDCwtEAo4LyQCGAHUFBQrQAAcK8QKHCvgFBwDuAAcA8QcIAHgACAC8AAgAkwIJAFYCCgDSAQwAVgEMAEwCDQD3AQ4A9gCPAFwAhwsRBAQLyAEHC2kABwtmAQcLZQYIC4MCiwvjAQYAJgWGACwFBADJAAcA0AYIAFoCCwD3AAsAOgMRAEEAhQryAAgApACSAD4AhQq5A4sKIgOFAGcCBwseBggLDQEJC9QACQvOAg4LDwAOC4QAjgvjAIUKIgGECnwBBQo0AAcKFQEJCnABiwoXA4cA2wSFCxsCCwuXA40LmQGIAMgDhQvWAYYAcgOEAIsDBQBkAAoASQEMAKABlQAdAAoKigCLCtwBBQrVAgUK1wIGC1sABwuzAYcKEwcECxAABQs8AQULSgMGC3IBBgvyBggLpgALCywDDAvOAAwLXwEOC6IBEAsPABALIgASCwMAEwsDABMLBwAUCwQAlQsVAIQAsAAFAHwCBQDmAwcACQAHAOQFCAAaAAkAPQEJAGYBCgDSAAoAJAEKABUCCwArAgwADgIMAF8CDQAHAQ0AywGOAA8BBgAAAQgACQEECiYABwozAQcK5wMHCskFBwrEBgcKygYJCp4BCwo8AQwKNAANCqQBkwpkAIcKEAUEC2MChQteAgQAgwKOCxUAhQvLAoUK0wIGAGIChwtVAgoAfwCNABsABgDLBwYA0QcIAHcAiADNAwQLlQCKC3ABDAAKAgQLmgAFCm0ABgr4BgcLbgQHCmcHCAtpAAwKKAGMCi4BBAsfAAYLrQEHC8IDCQvKAYsLswIKACkCCwBsAw0AwQANAKcBDgCmABMAVAAECzgBBQrYAAcKVwcJCo0ACQoOAQkKpwIKCp8ACwrFAAwKGgIMCi8CDgqQAA4KpwCPCkMAhgAuBgcAKgaHCyoGiQpRAIQL7ACGCocBhgAbAwcKQgGICvkABQtEAwULWQMGC5AGBws7AJMLNQCHALABCgtEAIsL7gEEC1EAiwtjAwcAfgCIAFQAjgsYAQULGgEIC4oCCQsnAQkLiwOKC7sBiAAWAwUKeAKKCg4CBgBAAAwAeQENADUBDgCNAA4ArQEOC40AjgutAYYA+QUGAEEBBwBBBwkAEgITAGMABwq0AwcKEgQICusACArNAQkKxQEKCmIBkQpNAAcAUAQLAA0BCwAbAgsAcwILAMICCwDPAwwA+AAMALIBDABYAgwAbgINACkBDQDlAQ4ARQAOAJkBjwBsAAQKagEHCjQABwovAQoLRgAMCxoADgsRAA4LsgAPCyIAlQsMAAsA0QONAPsBCQAiAIsA5AEFCsQABgrmAQcK1AAICjUBiApaAQYApAYHABoABwAlAQcAfgEHAAIEBwA/BAcA6wcIABgACAByAAgA/AAIANcCCADZAgkAHgAJAMcACQDnAAkA+wAJAE4BCQBpAQkAyAIKADcACgA8AAoA6AAKAEwBCgCAAQoAjAEKAPgBCgAeAgoAjAILABQACwAwAAsAzwALACMBCwAqAQsAVgELAG0BCwCKAQsAbAILAMECCwD5AwwAewAMAFQBDACWAQwAgwINAD0ADQANAQ0ANwENAD8BDQDmAQ4A6gAPAD4ADwBVABAARwASAHcAFABpAIcKeAcEC0cABQt4AQcLdwCKC5kCCgCWAwoAngMECq4CiAs3AIoKcQKICsIChAvfAQQKHgCFCisABgB7AQcADgEIALAACAC3AAkAsAEJAJUCDAD3AAwAaQISAH0ABwtfAggLYwCYCwQABQAYA4UAhAMEC2QChQsxAgQLKQAECtwABQtKAAcK/wUHC1sGCwtnA4wLawKHAIAHBwteAAsLSQELC8UDDAvxAA4LYgEPCxYAlAs/AAkL0QCJCywBhgADA4cAuwcEAIUDhQAIA44A/gCFC2IACQsQAI0LggGFC9gDBAu2AAYLzQCHC9wABwq9BgcK7gaKCokBBQoHAYYKngEECyoACQvNAAkLEgOKC5MCDgCMAJQAKQAIALgBCgBnAQYKsgAGCyEBBgrWBgcLhgYJCrICCgqbAAoKdQELCroCDAs5AA0KmwAUCl0AlwsEAAQAJQAFAE4BBwDlBJcLGQAEAPwBBAt7AgUKYQCJCokBiwsVAgQAgAKFAAEChgpnBoQLcwEECxABBwtEAwcLcwaRC1kABQs5AwYLvAEGC2gGiAs0AQQKvwAHCqYDCAqHApEKYQAMAPYADwCiABMAQAAUAAgAFABfABYAGACYABEABAAVAgUKpQAJCloBigqPAgUL4QKLCnUDhQptAwgKgACLCrMAiQszAYwA8AKFAJgDhwAYBAUAmQAGAEQCBgp/BgcKhAAHCoIEBwqHBQcK4wUMCu0BDwppAJcKDwAFCssBBwoxBAgK8QCICk4BigCHAYcAoAeFCw0CCAuBAgsLhAGMC0QCjgB+AIYAgAKEAOMBBwBQBgkARQAGCkQBBgoIAgcKUgEHCsEGCArkAIsK7gIFC+0BhgsQAocA3gIEC64AhwuPA4oA4AEJAO8BkgBoAIcKwQIJANgBBApJAAYKZAIHCp8DBwoyBQcKHgcICtkACQr9AgkK/gIKCpgBCwozAAsKGQMMCgoBDwqeABQKWQCWCiAABwskAokLOgAECyAABQvXAAYLDQEHC/YGBwtkBwoLEAALCzYDCwu6A40L4QGEAGoDCQDlAAUKhQGICnwCBwvVBogL3QGGALQDBQs0AYcLQAQEAOwCiwDxA4gKFQAGACsChwDlAQULfgAICykBCQtuAQkLvQEMCzUADAt2AY0L7AEHCw8GiwtpAYgAwQCIANgBCACNAg0AXQCTAA4AhADYA4QLrwAFAKwABgCzB4QLrQKVCwgAhQsdAw0AUwAFCr0ABwq6AQcKuwEIChkBDAquAI0KBQGGACAGhQs1AosAgAGFAAQBBwD2AgcAcAMHAE8FCQCkAAkApwAKAJwACgBMAgwAZQAOADAADwBGAAYKAgAHCu4EBwrJBggKFgAICg4BCApkAgkKOAEJCrQBCgo3AQoKbwILCkgACwpKAQsKxwEMCkEBDAr4AQwKEgIMCh8CDQoRAA0KnAANCk4BEQo8AJQKQAAEC/wABwssBAoLsgELC+QACwuqAQ0L5wASC2oAlAtXAAcKYgEKCpoBiwovAwYAbwEHCp4CBwovBQgKmwEICrMBCQqNAgkK5AIKCoEBCwreAAsKRAELCj0DjApjAgcAlgQGCqYAhwp2AZIAeQCEADwDBQvnAIoL/QEHC1kCCQsVAQkLogIKC7IACgsBAQoLogELCxMCCwsgAgsLSQIMC3EADAvbAQ0LYwCOC6wBhgAFBocL8wYFAFcBhgqOAYcKMgCHC5MGBAC4AQcAOQAIAKcACAB3AQkAUgAJADECCQDoAgoAbAKJC+gChgCeAwYKBQIHCocECgptAosKwACJADsDCADCAIgA9AIKCt8AiwqFAgcKQACICvUABAuPAQULdwAFC+4BBwvvAokLLAKEACgDhwAWAAcK4waMCjYBBQB/AgcA4QQLAIADhgtIAoYATgaHAFwDhwthBAUKgQAGCj0AhwqzAwQAZgAHAC8DBwCjBosAxAMNCvkBjQr6AYsK6AOEC6cChACDA4QAOQIFC7YCiQvKAogAGwMGAP0HiwsHAAYANAAJAGgACQAvAgwANAGTAFcABAAtAYQAXAKFCn0CiAALAwULjwAFCwEDBgvgBgcLqgIHC8gHiAvgAokKTgKTACAAiQsPAgUKGAGHCsoEhgDuAQYApQIGAKoChgAUBIUKGQGHCigEBwD8AYULXAMGC6YBBwsAAAcLCAYJC0ECCwveAwwLjQAMC8UBDQsvAI0LCgGGAPYDBQsDAokLgwCGAL0D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Bwp7BwkKuQAJCusACgpAAAoKDgEKCpMBCgrVAQoKEQIKCk4CCwqMAAsKXAMNCgEADQqmAQ4KVQEOCmwBEQpdABIKcQATCmEAkwpxAIUKtwKHAGEEBQoGAAYKtwAHCqgCBwrSAwcK9QMHCh8EDArmAA0KrACSCh0ABAsIAAcLgAQHC4EEBwuzBgkLdgEKC94BiwuIAocLSwQGCh0Aiwo/AAQAMQIKAPkAiwDRAIQA+AIHCx8Digv/AYgLVwAJAJoAjADlAYgA/wCEAEMBjACjAYQKNwGGCswGBABwAYcAgQIHCqoACApaAAgKsQAICp8BCwrKAo4KGQEEC0UABQt6AAkLkAKKC9ABBQtRA4YLYQYIAAoCjgBIAQsKWwANCoEADwplAJEKfQAHADICCAAnAgQK7gEGCkoABwosAAsL8wEMChEADwoFAJQKCwAEChQBhQooAQkAXACTAFsABAoHAAUKWgAFCp4ABgoeAgcK3QAHCiYGCQrqAQoKHAILCrsBiwr1AgYADQIGALgHCAAmAwkAbAOMABwBBQtbAwcKTAIHC4gECAtrAAkKrwAJCyMBCQu3AQoKEgIKC5cCCwthAowLxQAHC6gADQvEAI0L7QCLAL4DhQBSAocKRAIHClgAiApzAgYA3wEGADICBwAkBA0ABgAFCmgDBgo5AAcK1wEJCr8BiQrGAYgLnQGRCxMABAt1AAYLdAEHC3EHjgtDAQQL0gKLC9cBEQA9AAUKHwCGCmYCCApKAYwK3QEHCrAEigrMAQYKqAGHCkoHBgBpBogANAMGABQGhgBSBgkLBQAMC9gADAsmAQwLKgEMC5ABDAsGAg0L5QCPC4sADwubAJALTwAEAC4BhwDmBgUKDQCGCo4ABgCUAAcAIQUHCnQACApCAQgK8wIJCiQCCgrKAgsKdAONCkQBiQCkAgkLWACLCw4BBQsMAAcLdwGJC7YBhgCKBgcKwAWHChIGCwCyAAcKLwQHCgUGBwrnBgcKDgcLCqIACwryAAwKXQIPChoAkAosAAYAhQEHAJUACQCOAIoAXgCMC0cAkQpzAAYACAAHAFkHCABbAAsLxgMMCx8BDQtWAQ0LkgEPC24AjwujAAQLAgGIC38CBgsWAAcLhwOKC0EChQupAocKVwSHCwYFCQBwAAgKAQCKCkYBBQroAQYKDwIHCukBBwpkBggKeQAICpAA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Cgu5AgsLyAGLC/QCCQuLAYoLTwCJC2wAkwBeAIgA7gGHC3cChwpuAgcA5gWHCtYGBArLAIcKkAcHC5YBBwvLAQgLXgKLC9YCBwAaBQgA+QEJAOIBCgB+AAsA4QAMAFsBDADBAQ0AEwAOANoAjgCzAQUADAEKAPwCDAB4AA0AJwCRAH8AjgtEAAsKpgKMCjMBDAsMAQwLgAKOC3cAhwr8B4ULZAIEC3QBBwviAQgLngAJC1oCCQtnAgoL9QAKC6YCCgvoAgsL+ACLCyYDBwo3AQkKNAGMCv8ABACAAYcA/gMFC1YDhwvHB4cK8gQECpABBQoLAYcK6ACHAKcGCQCfAAsAlQKMAFsCBADEAw4AtgEOALwBDgDIARYAPAAWAD8ACQtqAAkLowAJCygBCgunAAoLrAAKCwkDiwsQAIgARwKEAAMCCAB4AggAuQKJAFYDBQvDAIcLlQYGAGMEhgBVBYYLSAEHC80HCAvaAosL7gMEAIgAhQAnAoYA9gYHAAcFCQAsAAoAKAIKAIICCwBHAwwAEgEMABMBDAB0AQ0AWwCOAH0ABQvvAgsLHQOMC8sAhQDcAgcApwIIADkBBApkAIcLNQMKAGkBjgA8AYYAUwIGAJMABwB2AwkA8QKKAAwBBQpqAQUKuwEGCj4BBwr7A4sKbwIFCs8BiAooAQQKxgEFC7YDBQviA4YLXwGKAIkABQowAAUKlAEGCi0CBwrKAQgKVQIKCscBCgpeAgsKMQALCiQCDArcAQ0KEgCNCsIBhQCeAYcA4gYFC6UBhwsvAAUKugGHCsAHhgBXAoYA1QaGAFsGBADoAYQLXgGJC+8ChABTAIwApAKFC8cDBwBnBgUKNwCMCqEABAvZAQcLbwIICygDCQtnAwkLfQMLCyYACwuvAQwLcAAMC9kADAvzAAwLMgIMC6sCDQuNAA0LxQANC+MADQuWAQ0L5wEOC5wADgvLAA4L4AAOCwABEgs6AJYLAACFCsIBBwvgAosLCAGGABYBBAveAAcLHgGIC3UChwplA4wAYQCQAA4AhgA9BAQK1QAHCt8AiApQAAcAhAEHAIQCiwANA4QAUQMHAOUACAA7AAkAvgAKAHoBjAC/AAcKfQEHCiYDBwo0AwgKYgEICrUBCAoTAwkKkQIKCjoACgpTAQoK7QILCpIDDAqiAA0KSwAOCmoADgrGAA4KQAEOCp0B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hApzAQQKEAGHCkQDBQo5A4YKaAYFC/sABQu8AwgLDAEJC9YAkguOAIoANAEGAEcHjQslAIkKbwMHCj0Bhwo5AoQLJgGGABYDBQDqA4gA6QIFC1oBBQvHAogLhgGHACEBBQD4AQsARACJCjMBBADvAAYA3QEHAEcGiwBpApUADQCFAGEChQtwAgULDwMHC84Hhwv/B4UKDQKEAG8BhAtSAgYAEAKFCu0BBAquAIcKjwMICqEBiQoOA4QAtgIHACQCiQA6AAQKIAAFCtcABgoNAQcK9gYHCmQHCgoQAAsKNgMLCroDjQrhAYwArwIHANUGiArdAYQLOQKFCjQBhwpABAQAlQKKAOwDBQslAAYLJwAGC8MBBwvaAAcLmwIHC44EBwuXBggLlgKQCwIACQC9AQwANQANAOwBBQp+AAgKKQEJCm4BjAp2AQcKDwaLCmkBlABKAIYL/AGHANUAhAqvAIQKrQIGAPgCBgBCA4YA4AQHC8UBBwt7AgcLHAMIC0sBCQtIAQkLSgEJC2EDCgt3AAoL6wALC28ACwuBAAsL8AAMCx8ADAtCAAwL3gAMCw0BDAtXAgwLsQINC7oADQtsAY4LWQEHAIgGiwC9AIUKHQOFCjUCBgAMBgYLYgAHC0kChwu+AgkAyAMPAMAAlQA4AAQK/AAGCyUABwsrAQcKLAQHC4IGCAvDAAgLPAEJC7IACQsUAQkLUwEJCxgCCgtmAAoLagEKCrIBCgsRAwsLNwALC5UACwrkAAsKqgELCwUDDQrnAA0LoAENC6MBDgsmAA4LKQAOC9IAEgpqAJQKVwAEAO8CCwCGAYwAIAAEAJkBhQBOAAsLygEMCw8AjAuwAQcAQgYKAAEBCgC6AgsAIAILAEkCDADUAA0AMwEFCucABwpZAgkKFQEJCqICCgqyAAoKogEKCv0BCwoTAgwKcQAMCtsBDQpjAI4KrAEGANkBkQBpAAYAnQcPAJwAhQuFAgcKNwaQCisAhwDzBocKkwYECyIBhwtMBYYA+wIGC0YABwsMBQoL+gKLCyABjgAdAIwLrAEHAHMDBwuDAAcLpgEIC9IAjAs9AoYA6AEECo8BBQp3AAUK7gEHCu8CiQosAoUAaQKEC6gDiwAyAAcA7gWLALYCiQARAwQAIgKHAPoHBwvMAg0LYQCNC/sAhAuNApEAFgCGAPgDBAA5AYUAQQKIC5ECCAC4AI0AsQGHAKcDBgDQAgkAcgCSC1AADAC6AAwAJAEOAGQAEgBGAAcKUgIHClMDBwpCBwkKmwEJCj4CCQqaAgkK4QIKCloBCgrIAgsK9gALCrABCwoFAgsKhwILCqcCCwrXAgwKMAEMCjEBDApDAQwK4wEMCjwCDApRAgwKWgINCl8ADQplAA0KqwANCjsBDQp6AQ0KqQENCtsBDgo/AA4KfAEOCoABDwqFABIKcACUCkgAhwpFBIcLLAeECqcCiQrLAAsAkgEMAG0ADACvAQ0AswANAM4ADgDZABAAAwCUADUABwtYBQgL6AAIC2kBCguqAooL5gKJCsoCBQB2AwYALgAGAP4GBwAOAAcA3AIHAHYGCABfAAgARwEIAGgCCQB8AwoAVgIKAAEDCwCGAAsA6wIMAHoBDgBhAIkLFgIEAMkDiAo5A4kLGwAGANcCjgsMAIUA/QOGAKYEhgt5BgUKjwAFCgEDBgrgBgcKqgIHCsgHiArgAoQAmQCHC38AhQAeA4QASwIGAFYCBwAqAAgAtwIKANQACwCeAA4AxACRAFUAhQpcAwYAiQeGAI0HBQC9AwUA8AMJAEECDACNAAYKpgEHCgAABwoIBggLbAELCt4DDArFAQ0KLwCNCgoBhgAnBQQAgQCHANEBBwDWAQcAIQQHALEECQDzAgsAigOMAA8CBwCMA5IABwAFAJQAiADCAQUKAwKJCoMABwpFBgsKwgOSCosAhAqGAoYAjgQECowBBwrYAgkKdQANCsoAlAozAAYKeQAGCnwABgplAQcKcgQHCg8FCAqiAIsKjwIOAHYBjgt2AYoA/QCLAOsDBQuNAwkLUQOKCyUDhQrtAAcLDQIHCysGCAvxAYgLPQKJAC4AhABvA4YAJgOHAEwHBgAtB4YANgcGANoChgBxAwcAxQMHALQFBwBEBgcLwQAHC40BBwtRBAgLfAAIC2sCCQsxAQoLCAELCygADAtdAQ0LhgANCycBDgubAA8LeACSC2kAiAD6AY8ACgAECwYBBwtWAQcKOwIHClUHCgpuAY0LFwCFC4ECCgAWAAkKAQIKCicADAp6AIwKuwCHC5cFlgsxAAQLYwAGC/oABgtaAQgLfwCKC1EABgDeBwgAoAMKAMADCgDTA4wA5AOGACgBhAuTAwULSwAJCwUCCgvWAQwLmwCNC+AAiQppAwQAVgOMCxIAhgBLAgcKawAHCkYDCAomAooKkQELAHwCDwCRABEAIgATADIAFwAUAAsKTAILCmADCwrIA48KoACHC9gABwDWAwoAIACPADgAhQoAA4ULugMGCzABBwtaBAgLogEKC1kBCwtVAQsLowKNCygACQuaAYsLqQGIAK0DBQCzAYQKfgMFAFUABgCjAQcAhgAHADEBBwBpAQcAOQUIAEcAjAAHAowAsAKHAOQCBQCzAgcAWQEJAF4AjACpAAUAtwAGAEYCCgCnAowAswGGCw4ABgCxA4cA/wGGC6wGBQtxAAYL8wAHC0kHCwuhABALJQCRC2MAhAsSAYkAGwIHAMkHCACsAoYKEAEGAJMChgDWAwQKCQAFCoAABwpwAQsK4AGUCgMAhgBHAoQAIwOFAMACBACzAAUAxgCFALkCBwBbAQcAywMIALUACgDHAocLpgCICqoCBAoCAAcKIQIHCn4DiAsJAocA4QGEAPMABQDLAAcAEwAHAEcABwBxAAoAlQELAGUBjgDwAAUL1QIFC9cChwsTBwYAOgOJCzABBwCqBYsAYwCFC44ChgDsAQUAhgAGAJgBBgDvAQcAOQYGCxEBCgu8AA0LeQGSC00ACQoBA4wKuQCHC5oBjgAEAAQAmQKGC/kGBAD4AAcAiQCJAF0BBQoSAo4KcQAHAPYEiwBkAoQLDAMFAHMBhwAzAocAOgMGAP8FFwAVAJcAFwAEAHYBBwAjAgcApAYHACkHiwBaA4UKLAIHC2QCCAshAggLOAIIC4ICCQvNAgoLHQIKC/sCCwvBAQwL6QENC5kADQsoAQ4LigAOC4gBDwsyABALBgAQCwwAlAsJAAkANwGNACoACAoQAIwKOAIGALAHBgDrB4oA3wMGAG8GBwAQBgcA2gcJAO4BiQD9AYULtAMGCroAiQqqAYYAAQOGAIIChApJAgYAewAHANYACQDYAgoAnQALAFoBCwCWAo8AagCOC30BhwCbBQQLFAIFC8IChwuWAgULRQOGC3MGBApdAAUK/AAGCuUABwojAQkKJgKLCoQClABPAIkK7QKGAJEFiQqiAAQLagEHCzQABwsvAYwLpgCECn0BBAtKAQcLpQMHC9wHiAskAYcL/wIEAMMCBQBMAgYAiQENAGoAEgAxAJMAKQAGANMABwCaBgsA5gGMAHEBiQtzAwQLvwKHC88ABAC7AAUAuAAFALICBwBNBwoA9AKLAA8DhAs7AoYAZgUFAK8ABgpNAAYKnQAHCs4DBwoVBQcKOwUHCtIFBwpRB4kKdAKGANUFBQtpA4ULwAOGAO8DDAtdAAwL9QENC2oBDguXAA8LKAAPCzsAEAsuABELGQASCw4AEguGABMLGQATC0UAFAsQABQLEwAUC0IAFQsXABULGQCWCyoACwqXA40KmQGGANsABQBGAgYAbgYHAGMABwCqBwcAwgcIAAMCCAAFAwkAFwAJAOsBDABsAo4AXQCFAFMDBQshAIYL1gGHCwsFhgD+BIcLWgeHCtEFhADoA4oA1gMIAPoCCAAsA4kAjgMGCy8ABwtaAAcLmAIHCz4DBwtkBQcL6QcIC8ABiAs8AwQAYgAEAKwDBgAbBwYAKgcGADEHBwBVBQgAWwMIAIEDCACWAwkApgEJAJ4CCgAHAwoAfgMKAI0DCgCOAwoApwMLANIADADuAgwA8wINABoADQDJAQ0A3AEQAGQAEABtABIArQASAK8ACAqOAQkKqQKLCngCCQuhAYkL7QGICoUCigCKA4YAwgaGChQAhQv7A4YAoQQKACgAiAoBAwkAkwCGC9AAjACKAgUA0QAGAB4ACwA4AIsAMQGEACkCigtYAQYLRAAHC44BBwvAAQcLXQYHCxUHCAuDAQgLugEJC8YCCgsaAYoL0gIFAFUCDgAUAI4LFACHAE4GhwrdBgQAlgAFAC8BBgBHAYcKqQMQADEABwp0BpALMQAIAMAACgBOAI0AZwGHABIDjwCGAAYAZgYHAE8ABwDwAQkAigAKAFABCwAMAAwAnAEMALgBjgAxAYgL6wEECkMCBQriAAUKQwGHCsADBwDMAAcAnwEIACoACgBVAIsANAKEAGYCBAuTAQULuQEHC8IBCwtlAAwLwQCNC64BhwuHB4cLMgUEAAMABQD3AAUAhAIHAOgCBwC3BAcAyQQHAHUHkgCTAIgArgMEAPsDhgDnBwULpwKFCs0DBQAdAQkAQwANANkBjwBSAAcLSAGJC0YBlwAIAAYKhwCHCpgEhwtoBIYAHQWHCwQHhwo6AQQLPgIHC14BBwsABAgLUgEJC6UCCgsoA4sL/AEHCzIDEQsOABELLQASC0sAlAsSAJIKBACHCzkEBAAdAAYAFAIHAFwGBwBwBgkAXgEKALEBCwBhAAsALQILAOkCDAAhAQwATwEMAFwBDABeAg0AdAANAOkADQDSAQ4AtQAOANEADgDoAA4A7AAOACwBEAApAJQAYQAHAD4BBgoZAQgKGgEICuABCArzAQkKxgAKCo8ACgqpAAoK0wAKCqEBCgo+AgsKkwALCosBDApLAAwKlwEMCmACDQr0AY4K+wCHC4wGhwv1B4cAnAYFAPUBBwCoBgkAKQILAAgCDAAtAo0A+QAGAPcFDgBEAQ8ANwAPAFAADgtEAQ8LNwCPC1AAhwrwBggA3AOJCykBhAqjAY4A3wCLC+oABwBjBAwA/AEOAGYADgDiAJAAOQAECooABwr0AwcKAAWJCkwABwDkBgUKHQCMCn4ChgDfB4YAPwaKCzgABgsyAQcLdAQHCzwFCAuFAIoLwQGLC/MDBgquBocK9gcHC+MGjAs2AQYAgQAEChEABQoXAAcK4wMLCn8BCwq1AQwKzAGMChQCBQtJAYgLBAGFCl4DhAAWAgYAKwOHAHIChAuRAgQAGQAFADwABgD4AQcAZgIHAIMEDAAAAJgLBwAHAOAECwBtAosAvgKJAEEBCApGAAwKqwCNChABCgrpAIsKTAAEAHsBBwB1BYYKugEFC0IABwtoB4gLIAGGC2sGhgqtBgQLFQAFC1sABQs6AgULiAIFC+4CBQsNAwYLNgAGC3AABguSAQYLxAYHCzsBBwvtAgcLQwUHC2wHCQtOAAkL/AEKC2MCCwv+AQsL2AINCyQADgsnABALUwARC3wAlAseAAQAdgAGABIBBgBpAQcASwCNALkBCgtCAQoLzwKLC5cBkwp3AAwLJQIOC0MAkws8AAsKRQAMCmkADAp1AA0K1QAOCg0ADgo+AA4KsQAOCqUBDwoTAJIKjQAJAEkDiQo1AQcKYAIHCtADCAt9AAgLcQEICwwCCQqSAAoKzgAKC+YBCgpUAgsLDQALC30BCwvgAgsL/gILC00DDQtyAA0K2gANCyQBDgsvAI4KmQAMALUChwv3AgUAOgEGAN0ABwCjAQoAigILAIwBDACcAA0AcQEOAE0BkQAvAAYLlAYGC8MGBwtkAQcLjAcICzYACAvdAAkL4QAJC2QBCgtNAAoLvgEKC9sCDAuUAY0L6wGEC3cBBAoGAocKcAQEAJEDBAubAQsLgwKMC3MABAtQAIULLAAICrECiQpfA4oAcAMEChIABwqRAAcKvAEHCv4ECAoxAAgKkAEJCkcACQr6AAoKywEMCqAAkAoYAIgA2wEFAPgDBQsrAYcLOwQHAFoCCACzAAoADQOMAH4ABgBJAYoAbwCHAEgHBAvbAAcL4QaJC1YABgBgBwYAZAcGAG0HBgBwBwkAuQMJANkDCQDfAwkA6QMMADIDDABOAwwATwMMAF0DDABeAwwAaQMMAGsDDABtAwwAbwMMAHEDDAB0AwwAhwMMAJMDDACeAwwAqwMPALYADwDbAA8A/wASAL8AEgDRABIA0wCVACkABQtIAYcLlgOJAAwDDABSAI8AJACFCvIDBQA1A4YAlwaFCwIChAC8A4YAnAQKAHAABQpXAAcKOQEHCk8ECgpGAgsKhQELCi0DDAqBAQ0KHgEOCnwAkgpsAAUARwAHAH8FCQDAAgoABQEKAGsCCwAjAgsAawKPAJ0ABAATAgUAxwEFCy0BBgs7Ag4LMQCSC2YAhAoLAQYAgQEHANgHCQBRAYoABQKFC9YChQtsAQQLTAAHCw4GCQsyAQkLrgEJC5cCCgurAgsLqwELC/ECDAtOAQwLugEOCwIBDgtuAY8LgwAGAEkHBgBXBwYAWQcGAGYHBgB0BwkAkwMJAJ4DCQCsAwkArwMJAMYDCQDUAwkA3QMJAO0DCQDyAwwALQMMADEDDABIAwwASwMMAFcDDABgAwwAZwMMAGgDDACDAwwAiQMMAJwDDwCrAA8AtQAPAOAADwDrAA8A+wCSALgAiQs0AAUAEAAGAFYABgBbAgcAJAEHADECCAABAQgAfgEJANECCQAKAwsARQKMANIBBADmAQUA6wGHCmEEBABIAAYACQGHABQFhwufBAoK+QCLCtEAhAoxAokLBwIEC5ACBAr4AocLCwMJCpoAjArlAYcLAQeHC5AAiAr/AIUAbQIECnABhwqBAocLXQUHCyoCBwtdAo0LCgCJAOoABQAvAwYAmAaGANsGBQtGAwULSQOGC3EGBwDDBwcA+AeIAOcChQv0AwYAxQCIAM0ABgA6AYYLOgGQCzUABgv7AAcLbQEHC00FBwvZBQgLmgCNCxkBhQtUAQYAxAEHADgBigDbAIoATQIEAE0BCQCwAAwAYQGNALsACQpcAJMKWwCGAFYECwAvAIsL7wEGCg0CCAomAwkKbAOMChwBCAsFAQkLkAAJC9IBCgtyAQwL1gENC5AAjgtcAYkLgQMIAF8DCABgAwgAZAMIAHQDCgBiAwoAZAMKAGkDCgCPAwoAkAMKALADDADXAgYL+AAJCyICCgsXAgsLqQKNC4cABgAsAYcA6wWGANUEiwq+A4UKUgKMC/oAhgCVBoYLNwIHAIcACAAHAAgAPgAJAPMACgCSAgoAuQILAMgBiwD0AgkAiwGKAE8ABgppBogKNAMECi4BhwrmBoYLrgCHCiEFhwB3AoYKigaGC4sBigBDAwcAlgEHAMsBCABeAosA1gKGC2kChgDTAwYKhQEHCpUACQqOAIoKXgAFC24DhQvMAwYKCAAHClkHCApbAIgL/wGFAGQChAtfAQQAdAEHAOIBCACeAAkAWgIJAGcCCgD1AAoApgIKAOgCCwD4AIsAJgMFAFYDhwDHB4QLHgGHC1gBBwu2AQcLcwIHC+wFCAsoAAkLOAAJCyYBCgseAAoLAwELC8kDkguUAIcA1AUFCwMBBwueAQcLVgOOC2sAhwrSBgYAQQOGAOYDhwoYAAYA7gKHAMsGBAr3AYcKfQYFCoIABwoiBQkKYgIKCs4CCwpZAgsKMwMLCrIDjAoYAgoKlQALChgBjgpQAYQL4gKHCpoHBQDDAIcAlQYHAM0HCADaAosA7gOXCxEAhQtiAw4AzwEOANYBlgA9AAUA7wIIAAoBCwBCAgQKiAGHCj0GBQqxAQkKeQKLCnUChwA1AwYAywKGAC0FhQt0AAYAZAOEC8kBhgC/AwYK6gCKC8cABwAdBAcKngcICqgCCwoxA5MKWAAHCsYEigqCAQUAtgMFAOIDBgBfAYYAZASGADkEBwA7BgYKBQALCvkADAo5ARAKQgCRChoAlAA7AAULDwIGC70AhwtbAwUKwwMGCu0GCwtoAAsLKgIPCzwAjwt9AIcALwCJAKwChgt0AIYARgaGAAkDBwD8AwgK/QGIChgDhwBGBIQAXgGFC+cBBAtWAAULmwIFC/ECBgs8AQYLxwGHC7IDBwAUBw0AAwENAGQBDgDyAJMAcgCECqMDhQDHAwQA2QEHAG8CCAAoAwkAZwMJAH0DCwAmAAsArwEMAHAADADZAAwA8wAMADICDACXAgwAqwINAI0ADQDFAA0A4wANAJYBDQDnAQ4AnAAOAMsADgDgAA4AAAESADoAlgAAAIoAHgEHCq8DiwpmAocKLQeWCy0AhAAeAwQA3gAHAB4BiAB1AgQLTwAHC+0GCgvCAQsLTQINC0wBDQvtAQ4LtwAOC04BDgtqAQ4LcAEOC3gBDgt7ARMLWgATC2cAEwt/AJQLWgAFAFEBCwABAgsAeQMLAMEDDADNAQ0ATwAPAHkABApaAAUKIQIHCvICCQq6AAoKSAAKCg4DCwpBAgsKYgIMCmIBDApqAYwKUwKNADIBiACSAAcAbgYJCkkBCwr+AI0LfAAEANEBhwB/BoQADQKFC5cCCgArARIASgAJCrsACwr4A5EKLAAHAKUABwCXAwQK+gGICgUCBQonAYcKkAaFC04DhgAoBAULegEHC3oFBwuGBQgL0QEJCx4BCgu5AAoLMgIKC3sCCwsfAAsLiQEMC8gBDQs4ARILQQASC2AAkwtZAIQAVAIHCtsDCQqwAgoKCgILChQDjAo2AgYAUgAHAIoABwAFAgcAzQYLAO4ABAuIAoYK7wYHANEEBwq8AgcKrAMICgICCQp0AAkKFwIKCnYACwprAAsKlAALCpoDDAr+AAwKpQGOCu4ABADCAwYAIAcIAH4DDADEAgwA1QIOAMMBFABeABYAOwCWAD4ABQuxAwYLeAYGC/sGBwunAAgLOAMJC4cBCgt3AYsLuQAFAO8BBwBCAwkA3QKLAHoBBArnAocL+QQGALQEBwttBggLYAGJC/kAiwokAYUALwKEC5gACQDzAQoAVQEPAJAAEwAxAAcKAwUJCuMACwpFAQsKmAEOCrQAkgovAAYAFQAGAMkGBwCkBYgA4ACFC+4DBwCmBQkAYQARAA8ABQpRAAcKkgAHCj4FCAo1AAgKMQIICrYCCAryAgkKcwAJCn4DCgrOAQoKLQMLCuYACwqRAgsKuwILCuwCDAp3AAwKyAAMChsBjgoRAQUKmAGJCusChwuvAYcLQAMGANkChgC5AwQA1wIIADUCBQtfAQcLCAGICzUChgCcBwUABwIFCygABwtWAgcLZgYIC04ACQumAAkLgAIJC60CCQsFAwsL1wANC0EADgusAA4LPQGRCwYACAs8AAkLVwGLCwEDiQvHAYYAqQSMABYDBwufBwgL/QIICwQDjAufAgcLbAAIC9sACAuEAQkLfwIJCwcDCwsTAYwL0AGEC9QBBwoeAAgKVgAICjsBCAq8AgkKQAIJCloDCwo2AQsKeAMLCogDDAppAY0K+AAFCw8ABgs4AAcL3gYIC/QBCQvaAgsLSwENC5YAjgsaAQQAkgEHAAIACABDAYgA3wGKCkcDCwBEAo4AyQAFADsAhwCgAokKaQKSACIAhgteBwQAwQOIAIADBgAFBQULzQAGC7YBiQvHAoYKrAEHCgwCCAqpAAgK6gAJCuABigqGApQALgCNAN8BhQsWAgYA4weGCnAGBABVAAcAJQIHCrUEigp9AgQAlwIFAF4ABwvrAAcLwwUPC0QAkgt4AAYLuwEJC+0ACQs7AgkLtwIKC4sACwvLAgwLoQGNC6UBhAAPAwQAqgIIAEEACQonAAoKpgALCpYDDAp7AhQKCgAWChsAFgorAJYKNAAGAAsAhwC7AIQACgIEADQAhwCVAgQAfwGFAAgChwsiAgsAVwGOAH8ABAtCAgcKnQAHC3ACBwuUAwgKFwEKCwABCwtXAIsLvwKGClwCBAAZAQUAJgAHAMIABwCcAgcAZQeJAI0BBwqxAwsKyQKLCugCiwr+AwkAewKLAC8CBQubAwcL6gEMCykCDQtkAA4LdgCPC0sAhADPA4QKNwKJClsDBwo2BwcLNgcICnQCiAt0ApQAdACKC+4CDgAzAA4LMwAPCwcAlAsUAIQAWgOGADMEBAucA4UK+gKIABcChQDAAQoKEAONCr8AhQoqAQcAYgKHAN0FBwp5AgcKiQMHCo0DBwoCBgkK/wKMCnwCBAsJAQcLJwOHC7YDBQtdAAwLCwGQCxoAiAC/AIsKLQGHCrIHhwALAQQAPwEFALsCigChAgYAUAEHAFwABwC2AAgAxQEIACgCCQDMAAkAHQEKAGMACwA4AgsAtgMMAF4AEAAUABAARgATADcADAqEApAKWgAGACcCBwAcBQcKTQMHC+IDCAqgAIkKPgETCwEAEwsaAJYLCQAHAH4FCQDaAI0A3gAFAAABigBFAAUL6QAFC0ABBguMAAcLSgGICycBBgC8B4gAuAMEAEEDiQumAoUL0gMEC4kDBgulBokLSwOKCt8CiApMABEAJwCUACQAEgBRAJILUQAOAGABEQA1ABIAkgASAJgAEwALAJYANgCHAHoCigpJA4QAagIEAFMBBwADAREASQAECxMBjAt4AYQL/QEHCxEBiwt5AQQA9wINAKkAiQokAwYKYACHCpIFBAqLAoUKIQEHADMECAojAAkK/wEKCv8Ckwp2AAYAiQIGAJ4CiADiAQUAUAEGAFUBBgDeAQYA4waIAIIBBQsiAwcL5QcICyUDDgteAA8LQQAQCwQAEAtNABALUACRCwUABgALBAULpwAFC4MDBguaAYkLCQOGC6kGBQCcA4UAyQOECsAChwBJAIcLCgCHCjYEBQsLAAYLdQAGC+UBBwttBAkLRgIJC1ICCwsVAAsLMgMMCxcCjQtWAIcAswcECwgBBwsrBAgLzAAIC4EBiwu5AwYAsgWHAEAFBQCMAYYA9QEECtAChQoyAQQAoQMFAB8DCAAuAAgA5AKFCq8BBwuGAgcLwgYLC74BjQuyAAcAFAEFCtABBgrsAAcKuAIHCpIDBwpUBAcKqAUJCg8ACQo0AgoKDgAMCjUCDQrBAQ4KNQAPCg0AEApAAJEKKQAEAHwDhQACAwYK5wYMCsIAkQprAIcAngAFCkgDigtgAoYAmAWKC/oACAsaAwkLkAEKCyoBjgvkAJcAGQAHC2sEhwu8BYcA0QcJCoICCwrsAI4KwQAECkQABQp6AgYKggEHChoDCAoRAQkKMwIKCmkACgqrAAsKXgCLCmIBiAvUAoQA3gELCwACDQvNABMLHgAWCyQAlwsTAAcAtQWMAFsABgu+AAcLAAOHC5IEBABaAggA0wAECl8ABwqgAYsKPgMHCtsCDQoUAI8KCwAGACwEhwBQBwQADQAFADcCBwDaBQkAfAALAAkCDACVAYcL/wOHAO4DhADfAooALAMEAKoAhwBDAQYLiQAJC0sACQv9AAoLwgCKC7wBBQAwAQcAewUFCmADCgqIAgsKnwKPCi4AhwucBIUKoAMEAJQAhQDmAgsK2gOMCqoChQALAocLzwYHANoCEgCQABMAPQAICiwACQp0AwoKRAILCo8BCwp+A48KegAFC/gCBwseAggLhwCIC/ABiADVA4UAbwAKAIQACwC/AAsAZgGLAMwBBws/AQcLYwEHC/sCCguFAZELKwCGAHoDhgCMBYgLLQKFCgYChQC8AYcA+waHCjwHCAB7AA8ABgCQAAcABgD5BwoLJgCLCxADiACkAwUAqQOHAGQABgDjAwQLOgAFCx4BBgs/AQcLkgEHC+YEBwtvBwgLZAGMC5gBBAuFAQkLtQAJC/8ACgsIAAoLHQAKCzADCws3AQsLMQIMC0MAjQu1AIoA/wAFAIoABAqmA4gKYgIEAMUDCgBfA4oAggMKCiQDigpAAwwAdwIICmAACQokAAoKXwILCqcBCwq6AQwKNQEOCscADwpaAJEKbgCGAHIFBACMAggAQAEWAAYAFgAQAAkKDQAJCo4BCQrXAgoKSwAKCrgACgrmAAoKNAIKCjkCCwrNAwwKRgAMCr0ADQo5AI0KAQEGAIEDhgA1BQQAtAKFAEEBhQt1AYcAmgMFAGsChQC6AokKdwIFClkBhwr4AwkAvQMJAPoDDAA8AwwATAMMAIEDDACFAwwArwMPALQAEgDFABIAyAASANUAEgDWAJIA4gAFAJUDhgB7BocATASGAJUEhgCKBwUA+wAFALwDCAAMAQkA1gCSAI4AhQqhAokKUgMECh8BhQr6A4QLoAIFAFoBBQDHAggAhgELC/ACiwt1AwUKIgAKCtQCDAq8AQ0KYgESCiAAFwoYABcKHwCYCgUABAvGAoYLXgKGAOgChgp+AYULkQAECkkBBwt0A4wLfAAEC9MBBQuVAYYLIAIJCk4Digo7A4UAcAIJC3QBDwsCABMLCgCTCxIABAuDAYcLCAUFAA8DBwDOB4cA/weECooDiApuAYcLJgIECnsABAqJAgUKXQIHCuUFiAokAIYAZQSEAFIChQr/AocLywSIC9MBBAtAAocL7wQEAAwBBwD+BYcL/gUEChEBBQqSAgULlwMFCuMDhguJBoUAMwKGCkgAhwpBBQQLUgAFC00BBQuIAwYLzwAHC0UBBwu+BggLZQAKCwoDiwvcAAUAJQAGACcABgDDAQcA2gAHAJsCBwCOBAcAlwYIAJYCEAACAIUKTQKGADQFhQuHA4YA/AEFCnUABgoCAgYKHQIHCowEBwqcBQgK3AAICogCCgqwAgsKMAKMC5MABgsrAocL5QGFCq4CBwDFAQcAewIHABwDCABLAQkASgEJAGEDCgB3AAoA6wALAG8ACwCBAAsA8AAMAB8ADABCAAwA3gAMAA0BDABXAgwArAIMALECDACzAo4AWQGHACoHBAvBAgcLZwKKC/sAiAtZAYkADwIGAGIABwC+AocA3wMLAEACDgBKAAcKxAAKCv0CCwpbAQsKKAILChYDDAoHAQ0K9gANCg4BDQqLAQ4KsAAOCr4ADgqOAQ4KnAEPCiAADwo/ABAKWACTCmkAhgtaAA0AVACNAHoABgAlAAcAKwEHAIIGCADDAAgAPAEJALIACQAUAQkAUwEJABgCCgBmAAoAagEKABEDCwA3AAsAlQALAAUDDQCgAQ0AowEOACYADgApAI4A0gAFCn0BhwoABwcLLQMMC/EBjQs4AAcKaAKKCp0BhQCFAgYLfQCHC/0EhAAiAQYARgAHAAwFCgD6AosAIAEGCngABwqkBAcKrgYICh4BCQqbAgsKUAKLCtoChwv4BgcAIwWHCyMFhgCjB4cKegQHAIMABwCmAQgA0gCMAD0CBApgAYcKrwKLAB0DjwAmAA4AswAPAJcAlgALAAcA6AEECsAABQoxAAYKyAAGCiUBhgqgBoQAqAOHC78CBgugAAcLUgQJCwIDCgtqAgsLcACMC50BBQDFAYYAuQGHAFMChAqKAoQKkwAGAN8DBgCeBAwLDwGRC20AhQqmA4wL3QCEAI0CBwD5AYcACwKGAIcDhwvfAQcLMAEJC4YCCQteAwoLBgELC7gCDAvQAA8LTwCTC2wAkgBQAIcL1QOOALABhAA6AYkLmAAHAFgFCADoAAgAaQEKAKoCigDmAocLMgYJABYCBAuyAQsLlwIMC9IADQumAA0LNgEOC3UBkwsrAAcLQwSHC+UGBgsmAocLjAKJABsAjgAMAAQKfQIFCykCBwv+AooLOAMHC+ECCAsqAYgLxAEHAOACiwAIAYYAeQaFCyQBiguHAAYATAOGAF0EhwB/AAkKYwOKCkUDBgCgBIYAuASGAA4FiABsAQYAhwUHADYFCwB9AAYKqgAHC4kBCAqLAQgK5wEKC1sCCwvOAI0KkwCJC+wCBAuQA4kL6AAEChcCiApqAokAGAMHC7UHiAvMAocLYgAFAI0DCQBRA4oAJQMEAHYChAC7AgUL3QIOC2cAlgoXAAwLngASCwgAEws+ABQLBgAWCwQAFwsCAJcLCQCEAMgDhAoKA4QKLgAFCisDBgqPBgYKsgaHCvAHBgCmBQcKsgUJCpcBiwoPAAcAzgAHAI0BBwBtAgcAgAIIAHwACABrAgkAMQEJAIMCCgAIAQoAdAILACgADABdAQ0AhgANACcBDgCbAA8AeAASAGkABgoiAAcKQQQICsQCCArRAgkKawGUCmIABAAGAQUAgQKHAFYBiQtIAAQAYwAGAPoABgBaAQgAfwCKAFEAhACTAwUASwAJAAUCCgDWAQwAmwCNAOAAhArOAQsLWAILC54CjQv1AI4AUwAFCkkABgoXAIYKUgEGAAcEiwubAwcLpAAHCyMGCQtrAIwL4QCGAL4FhQC6AwYAMAEIAKIBCgBZAQsAVQGLAKMCCQCaAYsAqQEECxsABQvkAQUL/gEGC7IBBwvoAwcLSgQICwIAiAvIAIYA3gKMCwEBBwrVAggK8gGLCgwBhgAeB4cABgeHCgUDhAvMAQQLpAOFC3sDhgAOAIQKRwIHCrYFCAtxAosKkwIFAHEABgDzAAYArAYHAEkHCwChABAAJQARAGMAhQrcAIYLTAAFC80BhwuFB4wARQAIC1wAiQvdAIsKIwOECiACBAASAYYAmgOEAB0CBQBzAgYKtQEGCjQCCwq1AI0KtwCHCqgEBwCmAIQL+wKFC/0AhgBRAwkLSQAKC24ADgu5AJELdwAFC9QADAsjAI0LfgGFAM0CiQAwAYgAWAKFAI4CBgARAQoAvAANAHkBkgBNAAQKFgMFChEBhgqKAYQAHwKHAJoBCwBiAAsADAKNAFcAhACtA4cLlwQEAPoABwBMBgsAugAMAIUABgp/AAcK5wUICmUCDArvAQwKSgIMCpQCDAqcAg4KgQEPCnYAEQoUAJIKYgAGAPkGhQswA4YAOwUHAMEDBwA9BAcAvwYIAM4BBgrmAIcLvwYJAHwChwqiB4QADAMFC2UDBQvIAwYLWgYIC94CiAsQAwQLHgIGC7QGBgu/BgcLOgQHCwkGCAs4AAgLdgAIC5wBCAs0AgkLeAMJC4wDCgsyAAoLpwELC60CCwu5AgsLpQMMCysBDQt+AA0LiAANC6oAjQu+AIYL4gAEC+gACQvKAAoL2gGMC7EBiQv0AQUAEQKICkQAhAqOAgQKnAAHCuYDBwoVBAcKRAcJCjAACQq0AgsKowGLCloCBwD8BAgA2gEJAIwCBgtsAAcL6wMHC50EiAtXAQcL8AQHC44GCwuxAwwLVQEMC9cBjAs5AoYLsAYFALQDDADUARMAYACUABgABAuFAAcLxwIHCxIFBwsxBocLiQcGAPECjACRAosArQMGC2MABwsQB5ELOQAGCz4CBwusAQcL4gQKC50CCwvlAQsLSAMMCywBjgv6AAQAFAIFAMIChwCWAgUARQMGAHMGiwDZAwcARQcJCsUACgosAQwK2QENCloAjQqVAYkL/AAGC0MBhwscBgQASgEEAF8DBwClAwcA3AcIACQBBwvNAQgLBwOKC7MBhApeAgQLjwIHC1IDEQtLAJILiQCHAP8CBwq6B4gKpAKEAIEChwsXBoYA0QSJAPIAEQByAAQKaQGFCjsBiQBzA4QKzQGKABIBhgDYB4YAAgcEAL8ChwDPAAwAHQGECtgBhAA7AgUAaQMFAMADCAA3AwkAcQOIC0ECBwBpAgoA8gELAPUBDAAQAIwAlgCKCusChACvAYUKmwALABsBCwA3AgcKowAICj8BCQqSAQoKGAAKCqkCCwrIAAwK/QAMCpoBjgrbAAQLnQEFC6UCCAuwAYwLGAEJAJEBBQrbAQcK9AYLCikBCwouAg4KQgGTCkwABgANAwkAhgAKAAIACgAbAAoATQELANICjwABAAUAIQAGANYBiwCoAYcA1gcMAA8DhwqkB4gAEgGHAFoHhAAaA4cAOAcFCrADhgrpBgYALwAHAFoABwCYAgcAPgMHAGQFBwDpBwgAwAGIADwDhAqQAIYArwQEC4sBiwv6AocL4AUJAKEBiQDtAQkLrgAKC6QACwu4AQsLSQOPC2IAhguqAYsL6gOGACcBhgAwAwYK9wCJCisChQD7AwQAbAIFC9wBCgoYAYoKHQOLANABBQtMAAYLygEGC/EBBwv8AgcLZAMJC5ICCgtSAgsLrQALCzYCDAsUAAwLUgGNC8gAhgDQAAQLDgIHCwUEhwseBIQLfAIGC+kABwuUAgcLZAQRCx8AEwsWAJcLDgAKALoBhQqsAQoAogOMAAoDBgBEAAcAwAEHAF0GBwDpBgcAFQcIALoBCAAEAgkAxgIKABoBCgDSAgcKtQaKCiIChgBoBAsATAMMAGgAjABxAgQLsAGHCzgDigq9AIUAEwOFCmMABAsXAQcLLQGJC2oBCADrAQQKjQGICisCBAuyAIULjwGGAMcCkAAJAAQAkwEFALkBBwDCAQoASAMLAGUADADBAI0ArgGHC94EDAqOARQKJwAVCgsAlgopAAQK5QEHCmEBhwrzBQYKbgEHCmgFBwpBBocLeAcHAIwBCgCgAIcLjAGJChoBhgucBgQKnQAFCtcBBgvKAAoLwAELC9AADAtoARELdQARC3YAEgsbAJQLQwCFAKcCiQBGAYgKdAAHC2gDCgsEAosLpwCEC+AABQsiAgcLIwAICwsACAsMAAkLOwEJCxUCCgsiAwsLpgAMCw0CjgvzAAcAaASHC4AHBQvxAAgL8gAJC8MBCgubAgsLVgKMC60BBgDhAgUKoAAHCmsBBwpNAgoKqgCNCjcAhwAEB44L/gAEAD4CBwBeAQcAAAQIAFIBCQClAooAKAOGAEgEiQsEAgcAlQEKAOsBBApsAAQLbgGLCvIBCwtRAY4LLwGGC8gGBwA5BIwLbAEHCu0DjAphAgcAjAYECn8DhQoEA4cA9QcGALcECwuUA44LowEOC4wAlAspAAYLSwGIC28CCQCwAwkAyQMJAP4DDACRAwwAqAMPALEADwDBAAQKngOFCtcDBQBiAYcL+gEIAFYCCQCYAooAuQEEC4AChQsBAokAKQGEChoCBgomAQcK8wSICnACBwDsBgcLYAcICyEBCwstAAwLFgGMCxkChwotBYoA7wKNACUAhgAkB4QK9QKEC4oBBgABAYcA8gUEAEYCCQC/AIcLiwcHCz4CBwu3BokLkQCEC5ICCgAWA4QLcQEJCw0DCguQAAsLgQENC6EADQvkAA0LDAGUC2sACADVAQoALwCIC3YBBgAyAQcAdAQHADwFCACFAIoAwQGLAPMDBwpTB4sKfAAEC1gBBgvyAYsLQwGJACsBhABFA4ULigMFAEkBCAAEAYoACgCGACgFBACRApIAngCHAKcEmAAHAAYAkwcIAM4DigDkA4cAgQYLC34AiwsfAY8ACAAOC5UADguPAY8LOQAFAEIABwBoB4gAIAEHAK8ACgDuAQUKlgAIClsCCQpRAgkKegIKCq0ACwrOAQsKAwINCtgADQogAY4KkAGGAGsGiAsVAAQAFQAFAFsABQCIAgUA7gIFAA0DBgA2AAYAcAAGAJIBBgDEBgcAOwEHAO0CBwCTBQcAbAcJAE4ACQD8AQoAYwIKACsDCwD+AQsA2AINACQADgAnABAAUwARAHwAlAAeAAQAnAKIADoCCgBCAQoAzwKLAJcBhwtlBYgLwQAMCmwAjQojAYQLaAKIC7QCCAB9AAgAcQEIAAwCCgDmAQsADQALAH0BCwDgAgsA/gILAE0DDQByAA0AJAGOAC8AhgDfBAYAlAYGAMMGBwBkAQgANgAIAN0ACQDhAAkAZAEKAE0ACgC+AQoA2wIMAJQBjQDrAYcK8QYECzEBBArtAZAKNwAEALcDBgARBwYAOQcIAE4DCABiAwgAgwMKAIADDAC2Ao4A1AEFC9YABwtbAggLYwIJC64CCgtYAAsLywELC/ABDAvPAQwLTgINCwAAjgvWAIQAmwEEAFAAhQAsAIwLSgCPAB8ABwCdAgYKOAIHCgwHCApqAQgKmgEICj4DCQoCAgsKiQKOCp0ABwChAoYLpwaECnEChgAXBQUAKwGHADsEigDAAgYAEwEHAJgBBgqeAAcKgQAHCrUACAoUAQgKeQEKCgsCCwowAwwKxwENCi8BjgqHAAQA2wAHAG8BBwCxBgcA4QYJAFYACQAZAgoApQAMANsAjAAxAggA2AAECgEABAvhAgYLPQEHCncEBwq3BQkKzwAJCoYBCQrTAQoLYgALCyYBCwpEAwwLPAAMC7UBDQtAAA0LfAGOC64BBgveBggLCAIJC1kBCQuTAY4LXgEFCy8ACgvyAIoLQwIFC4sABwuQBIoLGwKHACcFBAonAQQK0wIFCn8DBwoHBAgKxwAIClQBCQqZAAkK1wAKChUACgo7AAoKUAAKCuAACgpGAwsK5QALCowCDArAAA0KkgCOClsAjACsAYkKMwCFAAICBQo1AYwK0wAGAPIDBQp9AAgKTQCKCg8ABAA3AAUALQEGADsCjgAxAJIAZgCIC3IBBAtrAAcLZQIIC2YBCAu3AQgL+AEJC/UBCgt/AYsL3QGEC+UAhQBsAYUKtwEEC4cDhwsYBwsAewGMCkwABABMAAQAywMHAA4GCQAyAQkArgEJAJcCCgCrAgoAmQMLAKsBCwDxAgwATgEMALoBDgACAQ4AbgGPAIMAiQA0AAQLLwAGC3UBBwvEAQcLHwIHC7IGBwtABwkLBgALCwEBiwuHAQQKCAAHCoAEBwqBBAcKswYJCnYBCgreAYsKiAIECxEDhQtwAYcKSwSHC1wDBQvUA4YL2gaGAOoEBgAiBAYATwUHCxgCBwszBYgLjwAEAJAChwALA4gKVwAFCxMABgsVApILfgAHAJAAigq2AQULiwEFC7cDhgvwBocAXQUHACoCBwBdAo0ACgAECkUABQp6AAkKkAKKCtABBQpRA4YKYQYFAEYDBQBJA4YAcQaFAPQDiwrzAQcK3AEHCjgGigpXAAYA+wAHAG0BBwBNBQcA2QUIAJoAjQAZAYQLuQGEC7cCBwvxAQkLgwGTC1EAhQBUAQ4KGwGOCxsBhgAqA4cLZgeLAO8BBQscAQYLMQAGC14BBwsBAAcLeQEHC50GCAsSAAgLpgIJC6EACQtJAgkLnwIJC0cDCwuQA40LqwEFClsDBwqIBAgKawAJCiMBCQq3AQoKlwILCmECjArFAAgABQEJAJAACQDSAQoAcgEMANYBDQCQAI4AXAGJAIEDBgD4AAkAIgIKABcCCwCpAo0AhwAEAGYBhwDYBYYANwKIAL0BBAp1AAYKdAEHCnEHjgpDAQQK0gKLCtcBBgC5AoYA5AMHC9cHCQtlAAkLwgEKC0IACgtKAwsLGAKMC0sChABBAoYAOAUJCgUADArYAAwKJgEMCioBDAqQAQwKBgINCuUAjwqLAAYArgCKAJUDhgruBgUKDAAHCncBCQpYAAkKtgELCz4AiwoOAYYL5gYGCwAABwtUAAcKMAMHCtkECQobAQkKCAIKCtUACgozAQoKzwEKCp8CCgrqAgsKkQELChoDCwt/AwwKBQIRCwsAEgprAJMKcwAFAG4DhQDMAwYLgQYHCwABBwtsBYoL8wEECgIBiAp/AgQLFgAFCwoABgoWAAcLUAMHCocDBwqrBwgLYQCKCkECBQqpAogKDgOFC+EBhABfAQQKmAIFCiQDiwr1AwYLhgAHC7UBBwu/AwkLJQAOCx0BDgtzAZALPAAHC+YBCAubAAsLXQCMC6QAhAAeAQcAtgEHAHMCBwDsBQgAKAAJADgACQAmAQoAHgALAMkDCwDjA5IAlAAFC08ChwtRAYYAngeFCiAAigv0AQULfAEFC4oCiAs2AQQLbAEHC4QEBwujBIkLmQEEAOIChgviAQQLDQMGC+cBBwueAwgLBwGLC/QBhwuiAQYA/wcKAMkDBAohAQcKdQIHCqIGBwqvBowK1wAGCsIBiAptAIYAMgOICsEChQBiAwQLXgCHC/EEhAuhAYYAuwWHCtYEBADMAwYAOweGAEEHhgBjAYUAdACEAMkBhwuDBQQLmAEEC+UChwv0AYYKGgCOC4kABQAPAgYAvQAHAFsDiAALAQsAaAALACoCDwA8AI8AfQCGAE0GBAqeAQUK0wEJCo4CCgrDAQwKOwCNCncBhwoRAIYAdACHCx0Chwq7AwYLSQCHC7EAhQtAAoYAdgOFAOcBBABWAAUAmwIFAPECBgA8AQYAxwGHALIDjgvnAJYALQCGAF8DhgChBwYKGAEKCvYBCwpYAYwKJgAEAE8ABwDtBgoAwgELAE0CDQBMAQ0A7QEOALcADgBOAQ4AagEOAHABDgB4AQ4AewETAFoAEwBnABMAfwCUAFoABQotAAcKiQQLCsABCwpwAw0KiwANCpcBDwoQABEKXwASCkIAEgpYABIKewCVCgcAiAoJAwQKmgGHCgkChwryBocLGgKOAH0BhQudAYYAdgQGAKUEiAvvAQUAlwIGAKoHhgDTBwcLNgAICzgBCgu/AAoLZgKMCzcChAq0AYUATgMKABACCwD4AQcKMwaHCqsGBQB6AQgA0QEJAB4BCgC5AAoAMgIKAHsCCwAfAAsAiQENADgBEgBBABIAYACTAFkABwCDAw4ARQEGC9QBBws3AgcLxgUICxICjgsiAQcAWAcJAKgCiwAeA4YA6gaEAIgClgsjAAUAsQMGAHgGBgD7BgcApwAIADgDCQCHAQoAdwGLALkABgvkAYcLNgOGAP4HBwBtBggAYAGJAPkAhACYAAYAYwKHAMUGBgu8BocL5geFAO4DjQtgAAUApAGHAKkFkguVAIcAQAOHCpcChQBfAQUAKAAHAFYCBwBmBggATgAJAKYACQCAAgkArQIJAAUDCwDXAA0AQQAOAKwADgA9AZEABgAIADwACQBXAYsAAQOGAEoFhADUAokA6QKEC9oBBwCfBwgA/QIIAAQDjACfAgcAbAAIANsACACEAQkABwMLABMBjADQAYkAfwKHCvcBhQtuAQUADwAGADgABwDeBggA9AEJANoCCwBLAQ0AlgAOABoBBQsxAQkLMAKNC9AABApxAAUKowAFCt8CBwrxAwkKCQAJCgMDDApaAA0KigANCpoBjwqAAAQKRAGKCmgAhwvSAY4LGwCGAF4HBQDNAAYAtgEJAMcCBAvgAQYLpwAGCy4BBgtqBgcLggAHC5ACBwtFAwcLCwYHC3kGCAutAQkL5AAKC4MCDQshAQ0LVwGTC2UAhgBhAwYA6QeIAMUDBwsWAQoL4wILC8QCjQtcAYUAFgKHC4IHiQCzAgQKpwOFCjcDBgC7AQkA7QAJADsCCQC3AgoAiwALAMsCDAChAY0ApQEFCg0BBwqyAQcKewMIClMBCQq+AgsKUgILCs4CkQpkAAYAEwYHAG4DCQrlAY0KCAGGCrEGBwoSBwsKYgMMCmcAjQrvAYcKhAMGAIIFCQs8AYsLAAEEAOMDhwAJBIQAQgIKAHEDDADkAgwA5wKMAPcChAA2A4UAmwOOCo8AhwugBgYLawEHC6MHiAvVAoQAnAOFAJkChwrtB4cAbQcEAAkBBgBEBAYAiQUHACcDhwC2AwUAXQAMAAsBjQDyAYcAqwUFCy0Dhwv+BwUKcQKHClEGhwDrAgYAFAOJADwDBwC4AAsAMwELAJABDwCCAAULyAIHCz8HCAqpAQgKtQIJCtACCgp8AQoKfgILCxEACwrZAQwKPQANC0EBkAtDAIcAxgAGC0ABBwsNAwcLgQcJCzcACgu6AAoLEQEKC5gCCgshAwsL5AMLC+UDDQudAI4LqgCICw8BhwDiAwcLZwAHC18DCwu4AA4LKwGRCz4ACwonAo4KnwAFAOkABQBAAQYAjAAIACcBCABnAogLZwKFANIDBACJAwYApQaJAEsDhAqoAAQAzgMIAFIDDADFAgwAAAOMABIDhwpbAJgABgCKChQChwpcB4QA/QEGABsFhwARAQULTQAHC68FCgtLAxMLSQCWCwUAhAvKAYcLjAUGC20Aigt+AQYAyQAGC0oBBwpGAAcLPAQKCvAACwuOAJMKXQAHABEEjAtIAYULYgGGABAEhQC1AoYABgOLAOoAhABQAQcAdwWLCogBFAAWAJQLFgAFACIDBwDlB4gAJQMFAKcABQCDAwYAmgGJAAkDiQAVA4YAqQYHCo8Chwo0BwQKkQAGCrAABwqLAYkKMgKECvUBhwAKAAUACwAGAHUABgDlAQcAbQQJAEYCCQBSAgoAUgALABUACwAyAwwAFwINAFYAFABbABcADQCGCv0BBAAIAQcAKwQIAMwACACBAYsAuQOLC+ECigA4AIYAfQeFANYBCguRAg4LKQGOC2kBhwucAQcArgQHC64ECAssAg4LewAOC8AAjwsbAAcLwQcOC5IADwsqABALFwARC1YAkgsRAAsA9wOIC3oABApyAAkK7AENCs4BjgrXAAQKTQAFCmkBBgqLAAYKkQEGCpQBBwqdAQcKywIHCrQGCwoXAQwKswAMCgIBDQr0AI4KZgGGCrUGBwolBAgKUgALCvoADAqkAY0KuACFAMsChwrUAgkAlwMJAJoDCQCfAwkApQMJAMIDCQDoAwkA6gMJAP0DDAB6AwwAiwMMAKIDDwDPAA8A5AAPAO4AlQA9AAgAGgMJAJABCgAqAY4A5AAFC64BBQukAwYLgwAHC6EBCQsKAgsLOgGNC4YBhABjAwgA1AKEC/sBiQsFAQQLVwGFC/8BBgC+AAcAAAOHAJIEBgoBAocKHAQHC8cBigtPAoYAKgSJCoMDDgBDAJMAPAAEALQDEgCuAJIAsACHAP8DBwqJBQwKfgERCjAAmAoMAIYLPwKEAPwCBgohAgcKNQIHCoUGCgpyAAsKggKMCmoCBgCJAAkASwAJAP0ACgDCAIoAvAEEAPQChQoFAAgA8AOHCsAAhABKAwsAgwIMAHMAiAr7AosAQwCFCvcCBAA1AwUA+AIHAB4CCACHAAgA8AGHC0QCBwpyAQcK7wMHCpkEhwodBocK1QSMAOACBwA/AQcAYwEHAPsCCgCFAZEAKwAIC00Bigu2AAQKVwAFCvoAjQoqAYoAEgOGAPwHCAtKAYwL3QGHCzoFhAt9AIYABgSGADsEhAvRAocKLgMHCwgDCAuRAJMLOACGAMoEBAo5AAcKqwQHCp4FBwoMBgcKKwcHCnAHCQr1AgoKXAKLCgcCBwsYAwgLkwAKCzUDiwv9A4kLHQMEADoABQAeAQYAPwEHAJIBBwDmBAcAbwcIAGQBjACYAQQAhQEEAC8DCQC1AAkA/wAKAAgACgAdAAoAMAMLADcBCwAxAgwAQwCNALUABwvABYcLEgYHCy8EBwsFBgcL5wYHCw4HBwvPBwkL+AAKC5ABCwuiAAsLsgALC/IADAtdAg8LGgCQCywABQuoAAULogMIC0oACQtvAgwL9AEMC0MCDQspAI8LXQAGC9wABwtNBI0LaQAFANoBBwD7AQQK0QAHC/sBhwqGA4QAqwEGAJ0BBwpPAQcKnQUHCoQGCAopAggKjAIICpACCQouAgsK5wKVChIAhADaAgYLEwAHC4UFiwusAYUAdQGECi8CBwtgAAgLkQGJC4ADBwAfAwcAtAcFCvkDigr/AYcAAQcHC6kHBwutBwgLvgKIC+4CCAuWAAgL4QKMC24BhABCAYUKxQIICyADCQuUAAkLaAMJC3oDCws1AQsL6QMNCwsBjQtDAYYK0QYHACIBiArOAAcAcwaRAFkAiwACAIQAoAIGAEQHCACJAwoATAMKAE4DCgBaAwwAuwIMAOoCjAAEA4cLqAGFCyMChQDhAgUL6gEGC2cCBgtsAocLqwIGAOoChgBMBoQKCAMJC4EBlQsRAIUAkQCHCvgEBwB0A4wAfAAEAIMBhwAIBQULhQCICpYBiAu7AAYApwIICwgAigsAAIcAJgKHCx4DiAutAgcLPgSRCy4ACAqvAAoKqACKCj0ChwAZBQQAQAKHAO8EBgCuAoYAGwaGAF8CBQCXA4YAiQaUACUACAsGAwoLngKMCzMAhQoQA4sKcgMEAFIABQBNAQUAiAMGAM8ABwBFAQcAvgYIAGUACgAKA4sA3ACHC3MBhAC+A4UAhwMEC38ABQteAQYLZAEIC6oBCQs8AgoL9wCLCzgBjACTAAYLOwAHC3UDCQtbAo0LjQEKAG8BCQoOAAkKuQGLCgkACwrGAwwKHwENClYBDQqSAQ8KbgCPCqMAhgCyAoQAwQIJAIsCCwDLAw0AEQEHCpQFBwpoBgcKSwcJCqkACQq2AAkKbwEJCt4BCQr6AQkKJwIJCi0CCQqIAgkKuQIJCsECCQrVAgkKEwMJChoDCgrGAAoK1gAKCgsBCgoTAQoKyAEKCicCCgoxAgoKZQIKCnMCCgqcAgoKowIKCrMCCgq3AgoKwwIKCssCCwq3AAsKyQALCgYBCwpgAQsKtwELCu0BCwo8AgsKTwILCmACCwpjAgsKhgILCqICCwrHAgsK7wILCvkCCwoIAwsKEQMLClIDCwpVAwsKXgMLCmEDCwpkAwsKawMLCoIDCwqGAwsKhwMLCo4DCwqkAwsKrgMLCr0DCwrHAwsKzAMMCpQADArDAAwK3AAMCu0ADAo+AQwKUwEMCokBDAq9AQwKwgEMCtoBDAr5AQwK/QEMChUCDApPAgwKUgIMClUCDAptAgwKeQIMCoICDQo7AA0KPAANCpEADQrvAA0K+gANCkkBDQpYAQ0KbQENCnQBDQqDAQ0KkwENCp4BDQrIAQ0K1gENCt4BDQrjAQ0K6QEOCjcADgo5AA4KUQAOCloADgqUAA4K7wAOCgoBDgpBAQ4KRgEOCkcBDgpKAQ4KWwEOCmMBDgqRAQ4KlAEOCpsBDgqeAQ4KoAEOCqQBDwo9AA8KSgAPClcADwpYAA8KXgAPCmAADwp0AA8KlQAPCpoAEAoyABAKPwAQCkkAEQoCABEKQgARClwAEQpnABEKcAARCngAEgoyABIKNgASClIAEgpWABIKWgASCm8AEgpzABIKnAATCigAEwpPABQKTgCVChYABwB3AwUKoQCHCkcDjgtiAIYAWgCKC2QBhwu5AQYLbwAHCwQACAujAAgLCAOKCzYChgCMA4YA7QQHAC0DDADxAY0AOACGANMEhwCtAYcLygeKAIgDBgB9AAcA/QSJAAQDlwAMAAQASQMFAIIBhQuCAQULKQGHCw4EBgBcAwYALQSHCzUB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CwsiAgsLtAIMCwMBDAsnAQ0LLgCNC5oAhgCkAoQLTAIEC+cABQs9AAYLaAAHC9kCBwvEAwcLegaMC54BBgsHAYoL9QILAFEBjgAvAYcLUwWEC0ABjAD6AYYKvwEFAE0ABwCvBQoASwOTAEkABwpBAgcKmAUJCtsBCQr5AQkKDgIJCmECCQqxAgkK1gIJCt8CCQriAgoKLAIKCqICCgqsAgsKWQALCsoACwoQAQsKfAELCp8BCwr5AQsKGQILCiYCCwoyAgsKgAILCpsCCwqwAgsKTwMLCp8DCwqiAwsKrAMMCpAADApFAQwKSQEMCoUBDAqTAQwKwwEMCgMCDApcAgwKaAIMCnICDQpCAA0KgwANCqcADQrsAA0KcAENCpsBDQqyAQ0KxQENCs0BDQraAQ4KOwAOCjwADgqLAA4KmAAOChQBDgphAQ4KkgEPChwADwpRAA8KewAPCpgAEgqIAJQKWACEAMoBhwCMBQYAbQAKAH4BBAuVAQQKYQIHCvQCBwsxAwkKIAILCp0BDgs6AA4KMwEQChkAEQslAJILfAAGAEoBBwA8BAsAjgCFC84DBAqiA4UKswMFCqsDjguKARAAWwCRAFcABQvrAAUKwgMHC9cECwuDAIwLcgELAOwBBQqLAggKqgAJCj0ACQo/AAoKFwAKCiUACgpCAwsKBAALChkBCwr3AQsKpQIMCmAADAqCAAwK9AAOCgUADgooAA4KogAOCsoAkgqFAAQKlgEFCkMCDArsAZYKDwAJC4kAigvdAIYA1wQLANMAjACRAAcLhgGKC4wAhwuKBYcLeASGABkEBwBBAQYKEQAHCukDBwq+BwkKdgMKCukBCgogAwsKDgMMCkABDQrTAQ4KkQAOCoMBjwp3AJEKEQAFC5cBCwvpARMLJQAUC0kAlgsmAIUKygGHAMEHBwq/BwgKAAAICqsACQp4AAkK3AIKCtkBCwqQAgsK5gMSCgAAEgoCAJMKFQAFC0UBBwvLBQgLBQAIC+MACQtpAAoLSQKMC2YCiAB6AIQA6gCHC6wEBgDQAwYASgSGAKEFBwD9AIgAJQIGC20CDQv4AZALEwCECgcCBQCuAQUApAMGAIMABwChAQkACgILADoBjQCGAQ4AlQAOAI8BjwA5AAUKiwMGCh8ABgvaAAcK6wEHChICCApQAgsKNQALCgsDDAqnAAwKmwEOCg4ADgqIAA8KSAAQChEAkApIAIwLSgEHC8YBBwsOA4gLAAOEAPsBCgukAowLzgEGAHYCCQArAwQK0AAFCmoABgoTAggKmAEJCrwAigo8AgQAVwEFAP8BhgqdBoYLpACEAMABBwDHAYoATwKHAGUFDAq5AZYLMgAJCsEBCgrAAIoK5AIGAD8ChArxAIYAlwSGAI0ChgDhBoYArgSECgMBBgtXAQcLwwAJC+IACgvFAAoLPwILC/YBiwuDAwcAZwQHACQGCgApAQoApgELAPwCCwAqAwwACAENAGYADQAsAQ0A5AEOAJMADgDlABEARwASAHYAkwB4AIcLmgKEAKYCBAqtAAUKOAEFCgAChwoFBQcKQwYHCpsGCQrQAQsKwwAMChcBDArAAQ4KCwCTCmYAEABjAJIApAAHC2UECQuPAAsLPQAOC5UBlgsVAIkLBAEECsQBBQpHAgUKMQMGCrEBBwpRAgcK0AIHCmIFCAqhAAkKHAEKCjkBiwp2A4QKIwKICtICDgAjAI4AvwCNAC0AigB5AIQAfQCGAFYGhQu/AwgKpAGLCsEAhADRAocKmQGIAJEABwAYAwgAkwAKADUDCwDKAwsA/QOIC60AhgsKAYQAywIHAM8Higo0AYUAEwIFAKgABQCiAwgASgAJAG8CDAD0AYwAQwKQAEEAigv2AAYA3AAHAE0EDQBpAI4LOgEFCuoDiArpAoYAwAMUAAAAlAsAAAQA7QMECu8ABgrdAQcKRwYLCkQAiwppAgYAEwAHAIUFiwCsAZUKDQAHAGAACACRAQgAvwIJAIADiAssAYYAOwaRAHQAiAD9AwcAqQcHAK0HBwDuBwgAlgAIAL4CCADhAggA7gKMAG4BCwtLAI4LCwGECm8BCAAgAwkAlAAJAGgDCQB6AwsANQELAOkDDQALAQ0AQwEFC6sBBQveAgcL3gGICzQABwvvAAsL2QCOC6UAhAtDAYwLowENACsBjgBLAAYLVwAGC8YGBwsUAAcLIAQIC9wCCQuWAQkLjwOKC7YChgBnBYQKtgKFC2UCiQALAwQAVgKMCq8CBgDKA4cAqAGFACMCBwsgAAcL2AMIC1UACAvFAgkLQwIJC08DCQtYAwoLHwMLCwIBCwvvAwwLSwEMC2cCDQu8AA0LswEOCwgADwulABALGwCUCygABgDGBIYAaQWEAGwDiguXAIcK1QAEC6cAhwtSAIUAhQAGCxgABwtKAAcLpgKJCwIBBQs+AAYLFgIHC6wCBwsTBAcLMAQICxgBCAsdAggLrgIKCwcCCwv8AIwLGgGIALsACAAIAAoAAAAKADIDiwDcA4QLZwELAK0BDwAzAIcKiAaIAK0CBQvTAAcLWACIC3MChgDYAYgAhAAGC5EAjQtQAQQK7wILCoYBjAogAAYAqgMGACQEBAsHAQQKmQGFCk4AiQBqAwgABgMKAJ4CDAAzAAQLlAMGCtkBBwpCBgoKugIMCtQADQozAZEKaQCSAFwAjwqcAIQAPgOJAL0CBAtXAgYLYgYHCwUABws3AAcLQwAHC2EABwuzAgcL0wMHC6EGCAvPAAgL1gAIC+cACAsmAQgLUAEIC6wBCAvDAQgLzAEIC9cBCAtuAggLcgIIC6cCCAv3AggLPQMJCwsACQv2AAkL5AEJCz0CCQvCAgkL+gIJCx4DCQtXAwkLZgMJC5ADCgsvAQoLTwEKC6gBCgvNAQoLHwIKC/cCCgsuAwsLOwALC8cACwvrAAsL2wELC04CCwuhAwsLwwMMC3IADAu2AAwL4gAMC0wBDAu3AQwLPwIMC1YCDQsIAA0LfQANC8IADQsfAQ4LxQAOC38BDws1ABELPwATCy4AEwtiABMLagCUC1UABAB/AAUAXgEGAGQBCACqAQkAPAIKAPcAiwA4AYYAvwQGADsACQBbAg0AjQEHCz0Higu1AYYA4gaTC34AhwpzAw0AJQGOADgAhQppAosKMgAFC7sABwruBYsKtgKHALkBBgBvAAcABAAIAKMACAAIA4oANgKEACYDBAvXAAkLJgAKCwMACwsXAAsLfwCLCxwDDgDpAAQKIgKHCvoHhwDKB4YAywaHC/oFiACJAQUAKQEHAA4EDgBnARMANACUAC8AhwA1AQQKOQGFCkECCAq4AI0KsQGHCqcDDAq6AAwKJAEOCmQAkgpGAIgAawEOAK8ACwqSAQwKbQAMCq8BDQqzAA0KzgAOCtkAEAoDAJQKNQAFCnYDBgouAAYK/gYHCg4ABwrcAgcKdgYICl8ACApHAQgKaAIJCnwDCgpWAgoKAQMLCoYACwrrAgwKegGOCmEAiACaAocAiwYGAI8ChgBABocAKAOFCv0DBAscAAULuAEHC/gACwtBA4wLWAGGC3YGhAAYAYwANgAEAKUBhQAkAoQKmQAGC1MB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hQoxAYQL9wAHAHMFCADmAQkA7AAJAG4DCgDaAAsAXwATABEAkwAfAAcA+wcIAKACjQDAAQQLuAAFC4YBBgtRAQcLFwAHC+4BBwtqAgcLsAUICxsACAtXAgoLmQCLC8YChwDSAYcK1AQGAKcABwC6AAcAkAIKAIMCBArgAQYKLgEGCmoGBwpFAwcKCwYHCnkGCAqtAQkK5AANCiEBDQpXAZMKZQCGAJQFhgCgBQUAnAEHChYBCgrjAgsKxAKNClwBhgBeBIgAMgKUCy4ACQA8AYsAAAGGAOsGhwCmBIkAhAAKC+MACwvxAQsLxQKMC58BjwBCAAYLaAEHC4AGiAveAZAKHAAEAD0BhwD/BAUAPwCFAP0BiAu7ApEKJACGAMMFCwtXAY4LfwCEC+MChAAgAYcL3QYIAFkACABsAgkAYAILAHQCDABCAY8AfACGAMkEBwClBAQLQwAFC6YBBgprAQcLDQQHCwkFBwsTBgcKowcICtUCCQvlApELbACGALwFBgCxAoYAqwWKAHgAlwABAIkKJQOOAEkBBQotA4cK/geHAOIAigtgAAcAPwcFCsgCCwoRAA0KQQGQCkMACQDNAQYKQAEHCg0DBwqBBwkKNwAKCroACgoRAQoKmAIKCiEDCwrkAwsK5QMNCp0AjgqqAAgLywAICg8BCws3AwsLTgMMC+IBDQuFAA0LFQENCy4BDQvQAQ4LzQCOC90AhwBCBQQLwQGFC84ChgBVAA4AKwEHCmcABwpfAwsKuACRCj4ABAtjAQYLNwEJCwABiguUAYkKkwKKC/YChQs7AwULQACMC0UChgCTBAQLugEHCxcEBwtIBYcLawaEANQDBQvRAwYLIAEHCxAChwspBAUAFwEGAOsABwDUAQgAvgEJAH0CCgDNAgsA4gKMAAIChAAlAQsKUQGOCi8BiAsdAQUAEQAGAHMBCQAQAgwAbAGEC/4ABQpNAAcKrwUKCksDkwpJAJYABQCECsoBBgsMAAcLwwSRC0kAhwqMBQYKbQCKCn4Bhwt9AAYKSgEHCjwEiwqOAAYLcQEGC/YBBwsMBAgLXAEJC8QBCgsaAAsL4AALC4MBCwsEAwwLXwAMC3UCDQvDAA0LzwANC/EADgsEAQ4LDgGPC4wAhAsNAQUL4AEHCxQCBwutBAcLTgUICyMBCwtdAY4LjAGWADAACgBZAg0AYQGNAHgB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CwDbAQQKVwIGCmIGBwpDAAcKswIHCtMDBwqhBggKzwAICtYACArnAAgKJgEIClABCAqsAQgK1wEICm4CCApyAggKpwIICvcCCAo9AwkKCwAJCvYACQrkAQkKPQIJCsICCQr6AgkKHgMJClcDCQpmAwkKkAMKCi8BCgpPAQoKqAEKCs0BCgofAgoK9wIKCi4DCwo7AAsK6wALCk4CCwqhAwsKwwMLCtsDDApyAAwKtgAMCuIADApMAQwKtwEMCj8CDApWAgwKowINCggADQp9AA0KwgANCh8BDgrFAA4KfwEPCjUAEQo/ABMKLgATCmIAEwpqAJQKVQCEC9wBBABHAQUA3gEHADQFiADxAgUA/AOFAP4DhwsPBwQAZwCFAJEBBADzAYcAjQUKAM8ADQCkAJMKfgAJCxQACgtEAYsL6AGEAGAACQsYAYoLhgCHAMgDhQq7AIcKBgUFC3AABgtnAIYLlgAIAJIDCgADAAQK1wAJCiYACwoXAAsKfwCLChwDhwCPAQYAMwKJAOAABgDAAoYAvgQEC8QCCAsPAAkLMgAJC4IBCwsSAAsLEQKMC+QABAszAgcLbQAHC1ACBwt9AgcLAgMHC6UGCAu0AQgLzwEJCzwACQtPAQkLiAMKC0kACwuyAQwLSQINC0sBEgtuAJQLPACGABcGhAv2AQYLWwGKC6EABAshAAULZgAFC/QBBgscAQcLNwQHC48FBwumBggL1gEJCyoCCQvTAosLTQEHC/YAhwtIAwYLCgAICzsCCQvjAo8LWwAIAF0DCgCJAwwA2gIMABUDhQtyAoYAsgMFAOoCDABNAQ4ATAEMC00BjgtMAQULEgAGCw4CDQsYAA0LbgATCwUAkwssAAQAjgMFAEADhwrSBwoLAAOLCxMDBAs1AQULzgEHC8oDhwtJBAQKHAAFCrgBBwr4AAsKQQOMClgBhgp2BgYAeAIGAIwCBgD4BAYAaAWGABgGhguoBgYAcQWFClUDBgr5AAcK0gSLCj0CBQtWAAcL5wIJC1UACgsZAQoLsAELC+oBDAv7AA0LdgAOC3oBkguPAAULDAKFC+gChgDqBQoAyQCOAD8BBwDNAgoA/gEHCogBCAoUAAgKrAAICrICCQp/AQkKTQMLCiUBCwpAAwsKmAMLCtgDjQrdAIYAZQUFCloDhQrgAwgAEAKJAFwBCgtrAIwLtAEEABQAhQBoAoYA4wSEC58DCgt7AAwLngINC3MBDguOAJILXgCGAIsEBwt9BIkLnACGADMBhQsKAwcAQwSHAOUGBQv2AQYKDAGJCj4ACAvEAAoLGwGLC5YBBAAaAAUArQEGAPUABwDAAgcAYwWHAMIFhQtXA4QAcQMEAG0Chws8BgcLeAUJC74BigstAAYA4AKKCmoAhQAeAoYAXAGFAGQDiACxAYcA1wWKAAMDBgplAogK3wCKANcAjQB8AIgLhwGHC6wAhAqeAowANwAJCigAiwqIAAcAPgCTAHAAhABYA4QLOAIMAA4BiwoDAQgAPAKJALoCBAvcAgkKNgGJCqoCjgooAYYAqwOIC90ChwubBQcKeQWHCsQFBgBgAQQKKAEHCpEBBwqCBQcKOgYHCooGCAo/AAgKlAKJCkoABAusAYULnAIECosABAqEAYwKvAAHC98HjAuZAoQAhwKSAAoAigDcAI4A0AGEAG0AhgDSBgYAAwIECusCBgtXBgYLkQYHCokCBwrHBYcKLwaFCugAhwA2AokKdwMEACgACgBDAAsAdQALAAADiwCnA4QAIQMHAOADCAAtAQkA0gIMAD8ADQAdAA4AoQCPABIAiwCbAwYL1AYIC8sCCQsiAwoLLgAKCzMDDQs0AQ4LXwEOC2sBkgtDAIkL6QIHAHkEBAoOAAcKCQcKCuwCjQrKAQQLPwAFC1sBhgvaAYcAOAIECqkBBwtBAgcLmAUJC9sBCQv5AQkLDgIJC2ECCQuxAgkL1gIJC98CCQviAgoLLAIKC6ICCgusAgsLWQALC8oACwsQAQsLfAELC58BCwv5AQsLGQILCyYCCwsyAgsLgAILC5sCCwuwAgsLTwMLC58DCwuiAwsLrAMMC5AADAtFAQwLSQEMC4UBDAuTAQwLwwEMCwMCDAtcAgwLaAIMC3ICDQtCAA0LgwANC6cADQvsAA0LcAENC5sBDQuyAQ0LxQENC80BDQvaAQ4LOwAOCzwADguLAA4LmAAOCxQBDgthAQ4LkgEPCxwADwtRAA8LewAPC5gAEguIAJQLWACJAPcAhwtWBgkLIAILC50BkAsZAAQAhQIHADkDBgroBocLWQCMAEgBBQqvA4YK8waGAFMFBQr1AAYKQAIHCkYCiArhAIYAAAUFCzgDhQutAwcLuAEIC+YAiwtqAAUAHAAGAMwACgBAAQoARwINAPYB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iAsOAowA4QILClwACwrEAAsKmQELCsIBCwqaAgsKCQMMCgYBDQqBAQ0KiQEPCnMAEAotAJEKUgAEAOIABABGAQcA6gYECz8BBQu7AooLoQIGCigAhwr1BgUAqgEIAB4ACQACAAsAJQKTAHoABgCJBIYAMQWKCmEABgqnAQcKmQKHCroEBwsNAAgL4gAKCxkCCws6AgsLXQILCx8DCwskAwwLVQAMCwQCDAtvAg0LcAANC2kBDgtNAA4LTgARCxwAkwtuAIQLAQOECycChAvYApMAdQAJCzkACQvLAQoLqQELC3cADAu4AAwLcwENC2YBkQszAAULvAAFCy4DCAsKAAkLpQEJC9kCCgthAosLsQKGC3AChwsqAYcAzgEEAFkBiwpwAogKPgIEAIEBBwAJAYcASwIGACgDhAsQAoUAjgGECmIBBABbAQUApwEFAOQDhwAxBYcKFgYHAOsECQB9AIsAQQAFAIgABgCIAIgAhAIFC2gABgutAIcLXwaHANUBhQo+AwQAFgEFANEBhwBXBQcLKgMIC4oACAtWAQkLVAAKC8EACwtzA4wLZwEFCvABhwrLAAQAsQGFAM8CBgtfAIYKIwIFClgAiQrvAAYLlgEKC5kBCgu/AQsLLACMC2QAhgCPBQcKigKHCh4FhgDtAocL2wSHAFMFBgB9AQcAhQIHALYCCAAiAgcKNAQJClAACwpOAAsKpQELChYCjAohAoYLZAaHC0AFDAAVAQcKEgELCt8Biwr7AQYAwQIGAA8DBgD7BAYAyQUECxoBBwsKBAsLjgELC3oCDAsBAAwLTwAMCyACDgvtABELCgCSCxQAhgDFAQQAKwIIABgCCgAgAQsA7QMECvEBhwowBgULdgAFC/MBBgvcAQcLWAIHC3gDhwtIBIoA2wMHAFMEBwoFAQcKWwQHCkoFBwo0BgcKqQYHCm4HCQrRAQoK+AAKCl0BCgqHAgsKDwILCpQCCwqdAgwKEQKNCjEBBwsoAQcLVAIICzACCAtKAgkLZAILC2QACwswAQwLLgANC1kADgtwAJELegAJAHIBigBaAIgKDQCEAFwDBwqCAggK+gALCnsACwqJAA0KMACOCl8AhwqVBYkLQQGEAAEBhwDvBwcA6AYHCz8GBwu7BggLTwAIC2oACAu+AAgLLgEIC38BCQt3AAkL6QAJCyoBCQujAQkL1wEKC7UA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Cwu1AwwL6AAMC+wADQudAQ0L9QGSC3QACQCMAAUK3gCKChYCBgAgBIkKigOGAKgGigr3AYYADAQFCpoABwrTBQoKewGKCuUBBAt/AYUKzAKGACMFBQBWAAcA5wIJAFUACgAZAQoAsAELADkDDAD7AA0AdgCOAHoBCAAIAQQKWwAFCoQBBQpNAwYKzgAGCvwABgptAQcKiAAHChMCiAptAgUADAKFAOgCBQsVAY0L9wCEC7MBCgBrAIwAtAGEAJ8DCgB7AAwAngKSAF4ABwB9BAkAnACKAL0DBQsJAQYL1ACHCxwAhQAKA4UA9gEIAMQACgAbAYsAlgGHCkACiAsXAoYAIAUFCgMDBQpfAwUKggMGCmAGBgpsBoYK9AYFAFcDBQpLAYcLzwWEC74CBQsoA4cL/QcHAHgFCQC+AYoALQCMCngChADrAwULpgAIC+MCjAv/AQUKawAHCskAiAoGAgYKvgGHChkHhgD8BYYASQQEC3cABQuqAAULvwEHC6wGBwthBwkLZQEJC88CDAvmAYwLVAIJClMDjQr+AQcAZAIIACECCAA4AggAggIJAM0CCgAdAgoA+wILAMEBDADpAQ0AmQANACgBDgCKAA4AiAEPADIAEAAGABAADAAUAAkAhAr4AQQLwgGHC4YECwA2AA0ArQANACYBBQpzAwUKzwMICogBlAoHAA0AxwEPAGMADwCBAJAARACHAKwAhAvyAgUKmgOGCqsGhgAFBBELJwCUCyQABAA4AgUK4QMHCgMCiQpbAIQA3AIKAGkCigtpAoYAzgMHAN0DCgB5AQwAawENAEQADQBeAA4AbACOADIBiADdAoQArAEHAP0GhwsmBAcA3weMAJkChwqZBQUAHwEHCpkDCApEAggKUQIICnYCigocAIoAJgMECo8DBQpjAwUK9QMHCvIHCAoeA4gKLQOGAAMGCAsLApYLIgCHC+QCBwvuAAcL8QcIC3gACAu8AAgLkwIJC1YCCgvSAQwLVgEMC0wCDQv3AQ4L9gCPC1wABwAbBo0AtgAFCocABgoHAgcKugYKCg8BCwoFAZEKNgAOClIBlApRAAcA5AEECiwBhQq0AZELcgAGAFcGhgCRBoULgAIEC8kABwvQBggLWgILC/cACws6A5ELQQAIC6QAkgs+AAYAKQcGAEUHiABuA4YAIQYICmUBCgrpAg4KqgERCl4A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AAIAAAAFAAAACQAAAAwAAAAAAAAAsF8GAAEAAAACAAAAAwAAAAQAAAAGAAAAAgAAAAMAAAAJAAAADQAAAAAAAADAXwYABQAAAAIAAAADAAAABAAAAAcAAAAIAAAAAwAAAAkAAAAOAAAAAAAAANBfBgAGAAAAAgAAAAMAAAAEAAAACQAAAAoAAAADAAAACQAAAA8AAAAAAAAA4F8GAAEAAAACAAAAAwAAAAQAAAALAAAAAgAAAAwAAAAJAAAAEAAAAAAAAADwXwYAAQAAAAIAAAADAAAABAAAAA0AAAACAAAAAwAAAAkAAAARAEHB0hkLuAVgBgAHAAAACAAAAAkAAAAKAAAADgAAAA8AAAADAAAACQAAABIAAAAAAAAAEGAGAAEAAAACAAAAAwAAAAQAAAAQAAAAAgAAAAMAAAAJAAAAEwAAAAAAAAAgYAYAAQAAAAIAAAADAAAABAAAABEAAAACAAAAAwAAAAkAAAAUAAAAAAAAADBgBgABAAAAAgAAAAMAAAAEAAAAEgAAAAIAAAADAAAACQAAABUAAAAAAAAAQGAGAAEAAAACAAAAAwAAAAQAAAATAAAAAgAAAAMAAAAJAAAAFgAAAAAAAABQYAYAAQAAAAIAAAADAAAABAAAABQAAAACAAAAAwAAAAkAAAAXAAAAAAAAAGBgBgABAAAAAgAAAAMAAAAEAAAAFQAAAAIAAAADAAAACQAAABgAAAAAAAAAcGAGAAEAAAACAAAAAwAAAAQAAAAWAAAAAgAAAAMAAAAJAAAAGQAAAAAAAACAYAYAAQAAAAIAAAADAAAABAAAABcAAAACAAAAAwAAAAkAAAAaAAAAAAAAAJBgBgABAAAAAgAAAAMAAAAEAAAAGAAAAAIAAAADAAAACQAAABsAAAAAAAAAoGAGAAEAAAACAAAAAwAAAAQAAAAZAAAAAgAAAAMAAAAJAAAAHAAAAAAAAACwYAYAAQAAAAIAAAADAAAABAAAABoAAAACAAAAAwAAAAkAAAAdAAAAAAAAAMBgBgABAAAAAgAAAAMAAAAEAAAAGwAAAAIAAAADAAAACQAAAB4AAAAAAAAA0GAGAAEAAAACAAAAAwAAAAQAAAAcAAAAAgAAAAMAAAAJAAAAHwAAAAAAAADgYAYAAQAAAAIAAAADAAAABAAAAB0AAAACAAAAAwAAAAkAAAAgAAAAAAAAAPBgBgABAAAAAgAAAAMAAAAEAAAAHgAAAAIAAAADAAAACQAAACEAQYHYGQu4BWEGAAEAAAACAAAAAwAAAAQAAAAfAAAAAgAAAAMAAAAJAAAAIgAAAAAAAAAQYQYAAQAAAAIAAAADAAAABAAAACAAAAACAAAAAwAAAAkAAAAjAAAAAAAAACBhBgABAAAAAgAAAAMAAAAEAAAAIQAAAAIAAAADAAAACQAAACQAAAAAAAAAMGEGAAEAAAACAAAAAwAAAAQAAAAiAAAAAgAAAAMAAAAJAAAAJQAAAAAAAABAYQYAAQAAAAIAAAADAAAABAAAACMAAAACAAAAJAAAAAkAAAAmAAAAAAAAAFBhBgABAAAAAgAAAAMAAAAEAAAAJQAAAAIAAAADAAAACQAAACcAAAAAAAAAYGEGAAEAAAACAAAAAwAAAAQAAAAmAAAAAgAAAAMAAAAJAAAAKAAAAAAAAABwYQYAAQAAAAIAAAADAAAABAAAACcAAAACAAAAKAAAAAkAAAApAAAAAAAAAIBhBgABAAAAAgAAAAMAAAAEAAAAKQAAAAIAAAADAAAACQAAACoAAAAAAAAAkGEGAAEAAAACAAAAAwAAAAQAAAAqAAAAAgAAAAMAAAAJAAAAKwAAAAAAAACgYQYAAQAAAAIAAAADAAAABAAAACsAAAACAAAAAwAAAAkAAAAsAAAAAAAAALBhBgABAAAAAgAAAAMAAAAEAAAALAAAAAIAAAAtAAAACQAAAC0AAAAAAAAAwGEGAAEAAAACAAAAAwAAAAQAAAAuAAAAAgAAAAMAAAAJAAAALgAAAAAAAADQYQYAAQAAAAIAAAADAAAABAAAAC8AAAACAAAAAwAAAAkAAAAvAAAAAAAAAOBhBgABAAAAAgAAAAMAAAAEAAAAMAAAAAIAAAADAAAACQAAADAAAAAAAAAA8GEGAAEAAAACAAAAAwAAAAQAAAAxAAAAAgAAAAMAAAAJAAAAMQBBwd0ZC7gFYgYAAQAAAAIAAAADAAAABAAAADIAAAACAAAAAwAAAAkAAAAyAAAAAAAAABBiBgABAAAAAgAAAAMAAAAEAAAAMwAAAAIAAAADAAAACQAAADMAAAAAAAAAIGIGAAEAAAACAAAAAwAAAAQAAAA0AAAAAgAAAAMAAAAJAAAANAAAAAAAAAAwYgYACwAAAAwAAAANAAAADgAAADUAAAA2AAAAAwAAAAkAAAA1AAAAAAAAAEBiBgABAAAAAgAAAAMAAAAEAAAANwAAAAIAAAADAAAACQAAADYAAAAAAAAAUGIGAAEAAAACAAAAAwAAAAQAAAA4AAAAAgAAADkAAAAJAAAANwAAAAAAAABgYgYAAQAAAAIAAAADAAAABAAAADoAAAACAAAAAwAAAAkAAAA4AAAAAAAAAHBiBgABAAAAAgAAAAMAAAAEAAAAOwAAAAIAAAADAAAACQAAADkAAAAAAAAAgGIGAAEAAAACAAAAAwAAAAQAAAA8AAAAAgAAAAMAAAAJAAAAOgAAAAAAAACQYgYAAQAAAAIAAAADAAAABAAAAD0AAAACAAAAAwAAAAkAAAA7AAAAAAAAAKBiBgABAAAAAgAAAAMAAAAEAAAAPgAAAAIAAAADAAAACQAAADwAAAAAAAAAsGIGAAEAAAACAAAAAwAAAAQAAAA/AAAAAgAAAEAAAAAJAAAAPQAAAAAAAADAYgYAAQAAAAIAAAADAAAABAAAAEEAAAACAAAAQgAAAAkAAAA+AAAAAAAAANBiBgAPAAAAAgAAAAMAAAAEAAAAQwAAAEQAAAADAAAACQAAAD8AAAAAAAAA4GIGABAAAAARAAAAAwAAAAQAAABFAAAARgAAAAMAAAAJAAAAQAAAAAAAAADwYgYAAQAAAAIAAAADAAAABAAAAEcAAAACAAAAAwAAAAkAAABBAEGB4xkL4ARjBgABAAAAAgAAAAMAAAAEAAAASAAAAAIAAAADAAAACQAAAEIAAAAAAAAAEGMGABIAAAATAAAAFAAAAAQAAABJAAAASgAAAAMAAAAJAAAAQwAAAAAAAAAgYwYAAQAAAAIAAAADAAAABAAAAEsAAAACAAAAAwAAAAkAAABEAAAAAAAAADBjBgABAAAAAgAAAAMAAAAEAAAATAAAAAIAAAADAAAACQAAAEUAAAAAAAAAQGMGABUAAAACAAAAFgAAAAQAAABNAAAATgAAAAMAAAAJAAAARgAAAAAAAABQYwYAAQAAAAIAAAADAAAABAAAAE8AAAACAAAAAwAAAAkAAABHAAAAAAAAAGBjBgABAAAAAgAAAAMAAAAEAAAAUAAAAAIAAAADAAAACQAAAEgAAAAAAAAAcGMGAAEAAAACAAAAAwAAAAQAAABRAAAAAgAAAAMAAAAJAAAASQAAAAAAAACAYwYAAQAAAAIAAAADAAAABAAAAFIAAAACAAAAAwAAAAkAAABKAAAAAAAAAJBjBgAXAAAAAgAAABgAAAAEAAAAUwAAAFQAAAADAAAACQAAAEsAAAAAAAAAoGMGAAEAAAACAAAAAwAAAAQAAABVAAAAAgAAAAMAAAAJAAAATAAAAAAAAACwYwYAAQAAAAIAAAADAAAABAAAAFYAAAACAAAAAwAAAAkAAABNAAAAAAAAAMBjBgBOAAAATwAAAAQAAAAAAAAA0GMGAE4AAABQAAAABAAAAAAAAADgYwYATgAAAFEAAAAEAAAAAAAAADBkBgAEAAAAUgAAAAYAAAAHAAAABQBB6ecZC5BEZAYABAAAAFMAAAAGAAAABwAAAAYAAAAAAAAAsGQGAAQAAABUAAAABgAAAAcAAAAEAAAAAwAAAAMAAAADAAAAdmVjdG9yPHVpbnQ4X3Q+AHdvZmYyRGVjAHdvZmYyRW5jAHB1c2hfYmFjawByZXNpemUAc2l6ZQBnZXQAc2V0AE5TdDNfXzI2dmVjdG9ySWhOU185YWxsb2NhdG9ySWhFRUVFAE5TdDNfXzIxM19fdmVjdG9yX2Jhc2VJaE5TXzlhbGxvY2F0b3JJaEVFRUUATlN0M19fMjIwX192ZWN0b3JfYmFzZV9jb21tb25JTGIxRUVFAFBOU3QzX18yNnZlY3RvckloTlNfOWFsbG9jYXRvckloRUVFRQBQS05TdDNfXzI2dmVjdG9ySWhOU185YWxsb2NhdG9ySWhFRUVFAGlpAHYAdmkAdmlpaQB2aWlpaQBpaWkATjEwZW1zY3JpcHRlbjN2YWxFAGlpaWkAaWlpaWkATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUATlN0M19fMjIxX19iYXNpY19zdHJpbmdfY29tbW9uSUxiMUVFRQB4X21pbnMuc2l6ZSgpID09IG51bV9nbHlwaHMAd29mZjIvc3JjL3dvZmYyX2RlYy5jYwBSZWNvbnN0cnVjdFRyYW5zZm9ybWVkSG10eABONXdvZmYyMTRXT0ZGMlN0cmluZ091dEUATjV3b2ZmMjhXT0ZGMk91dEUAZ2x5Zi9sb2NhIHRyYW5zZm9ybWF0aW9uIGZhaWxlZC4KAFBhcnNpbmcgb2YgdGhlIGlucHV0IGZvbnQgZmFpbGVkLgoAQ29tcHJlc3Npb24gb2YgY29tYmluZWQgdGFibGUgZmFpbGVkLgoAQ29tcHJlc3NlZCAlenUgdG8gJXUuCgBDb21wcmVzc2lvbiBvZiBleHRlbmRlZCBtZXRhZGF0YSBmYWlsZWQuCgBSZXN1bHQgYWxsb2NhdGlvbiB3YXMgdG9vIHNtYWxsICglemQgdnMgJXpkIGJ5dGVzKS4KAE1pc3NpbmcgdGFibGUgaW5kZXggZm9yIG9mZnNldCAweCUwOHgKAE1pc21hdGNoIGJldHdlZW4gY29tcHV0ZWQgYW5kIGFjdHVhbCBsZW5ndGggKCV6ZCB2cyAlemQpCgBtYXA6OmF0OiAga2V5IG5vdCBmb3VuZABhbGxvY2F0b3I8VD46OmFsbG9jYXRlKHNpemVfdCBuKSAnbicgZXhjZWVkcyBtYXhpbXVtIHN1cHBvcnRlZCBzaXplAAAMGxcqPzgwO0ACBAMCAgQABwMCAQ8tKyAgIDBYMHgAKG51bGwpAC0wWCswWCAwWC0weCsweCAweABpbmYASU5GAG5hbgBOQU4AdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlczogJXMAdGVybWluYXRpbmcgd2l0aCAlcyBleGNlcHRpb24gb2YgdHlwZSAlcwB0ZXJtaW5hdGluZyB3aXRoICVzIGZvcmVpZ24gZXhjZXB0aW9uAHRlcm1pbmF0aW5nAHVuY2F1Z2h0AFN0OWV4Y2VwdGlvbgBOMTBfX2N4eGFiaXYxMTZfX3NoaW1fdHlwZV9pbmZvRQBTdDl0eXBlX2luZm8ATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQB0ZXJtaW5hdGVfaGFuZGxlciB1bmV4cGVjdGVkbHkgcmV0dXJuZWQAX1oAX19fWgBfYmxvY2tfaW52b2tlAGludm9jYXRpb24gZnVuY3Rpb24gZm9yIGJsb2NrIGluIABsb25nIGxvbmcAX19pbnQxMjgAdW5zaWduZWQgX19pbnQxMjgAbG9uZyBkb3VibGUAX19mbG9hdDEyOAAuLi4AZGVjaW1hbDY0AGRlY2ltYWwxMjgAZGVjaW1hbDMyAGRlY2ltYWwxNgBjaGFyMzJfdABjaGFyMTZfdABhdXRvAGRlY2x0eXBlKGF1dG8pAHN0ZDo6bnVsbHB0cl90AFthYmk6AF0ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBBYmlUYWdBdHRyRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU0Tm9kZUUAUHVyZSB2aXJ0dWFsIGZ1bmN0aW9uIGNhbGxlZCEAYWxsb2NhdG9yAGJhc2ljX3N0cmluZwBzdHJpbmcAaXN0cmVhbQBvc3RyZWFtAGlvc3RyZWFtAHN0ZDo6YWxsb2NhdG9yAHN0ZDo6YmFzaWNfc3RyaW5nAHN0ZDo6aXN0cmVhbQBzdGQ6Om9zdHJlYW0Ac3RkOjppb3N0cmVhbQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxOVNwZWNpYWxTdWJzdGl0dXRpb25FACBpbWFnaW5hcnkATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjBQb3N0Zml4UXVhbGlmaWVkVHlwZUUAIGNvbXBsZXgAKQAgACgAJgAmJgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM1JlZmVyZW5jZVR5cGVFAG9iamNfb2JqZWN0ACoAaWQ8AD4ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTFQb2ludGVyVHlwZUUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjBOYW1lV2l0aFRlbXBsYXRlQXJnc0UAPAAsIABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMlRlbXBsYXRlQXJnc0UATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTNQYXJhbWV0ZXJQYWNrRQB3Y2hhcl90AGIwRQBiMUUAdQBsAHVsAGxsAHVsbABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNUludGVnZXJDYXN0RXhwckUAJUxhTABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNkZsb2F0TGl0ZXJhbEltcGxJZUVFACVhAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE2RmxvYXRMaXRlcmFsSW1wbElkRUUAJWFmAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE2RmxvYXRMaXRlcmFsSW1wbElmRUUAdHJ1ZQBmYWxzZQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU4Qm9vbEV4cHJFAC0ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTRJbnRlZ2VyTGl0ZXJhbEUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjBUZW1wbGF0ZUFyZ3VtZW50UGFja0UAZ3MAJj0APQBhbGlnbm9mICgALAB+AC4qAC8ALz0AXgBePQA9PQA+PQA8PQA8PAA8PD0ALT0AKj0ALS0AIT0AIQB8fAB8AHw9AC0+KgArACs9ACsrAC0+ACUAJT0APj4APj49AHNpemVvZiAoAHR5cGVpZCAoAHRocm93AHRocm93IABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU5VGhyb3dFeHByRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMkluaXRMaXN0RXhwckUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTNOb2RlQXJyYXlOb2RlRQBzaXplb2YuLi4gKABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM0VuY2xvc2luZ0V4cHJFAHNpemVvZi4uLigATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMjJQYXJhbWV0ZXJQYWNrRXhwYW5zaW9uRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxOVNpemVvZlBhcmFtUGFja0V4cHJFAHN0YXRpY19jYXN0AD4oAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZThDYXN0RXhwckUAcmVpbnRlcnByZXRfY2FzdAApID8gKAApIDogKABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNUNvbmRpdGlvbmFsRXhwckUAbm9leGNlcHQgKABudwBuYQBwaQA6Om9wZXJhdG9yIABuZXcAW10ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlN05ld0V4cHJFAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTExUG9zdGZpeEV4cHJFACAuLi4gACA9IABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNUJyYWNlZFJhbmdlRXhwckUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBCcmFjZWRFeHByRQBfR0xPQkFMX19OAChhbm9ueW1vdXMgbmFtZXNwYWNlKQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU4TmFtZVR5cGVFAClbAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE4QXJyYXlTdWJzY3JpcHRFeHByRQAuAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwTWVtYmVyRXhwckUAc3JOAHNyADo6AE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE5R2xvYmFsUXVhbGlmaWVkTmFtZUUAZG4Ab24Ab3BlcmF0b3ImJgBvcGVyYXRvciYAb3BlcmF0b3ImPQBvcGVyYXRvcj0Ab3BlcmF0b3IoKQBvcGVyYXRvciwAb3BlcmF0b3J+AG9wZXJhdG9yIGRlbGV0ZVtdAG9wZXJhdG9yKgBvcGVyYXRvci8Ab3BlcmF0b3IvPQBvcGVyYXRvcl4Ab3BlcmF0b3JePQBvcGVyYXRvcj09AG9wZXJhdG9yPj0Ab3BlcmF0b3I+AG9wZXJhdG9yW10Ab3BlcmF0b3I8PQBvcGVyYXRvcjw8AG9wZXJhdG9yPDw9AG9wZXJhdG9yPABvcGVyYXRvci0Ab3BlcmF0b3ItPQBvcGVyYXRvcio9AG9wZXJhdG9yLS0Ab3BlcmF0b3IgbmV3W10Ab3BlcmF0b3IhPQBvcGVyYXRvciEAb3BlcmF0b3IgbmV3AG9wZXJhdG9yfHwAb3BlcmF0b3J8AG9wZXJhdG9yfD0Ab3BlcmF0b3ItPioAb3BlcmF0b3IrAG9wZXJhdG9yKz0Ab3BlcmF0b3IrKwBvcGVyYXRvci0+AG9wZXJhdG9yPwBvcGVyYXRvciUAb3BlcmF0b3IlPQBvcGVyYXRvcj4+AG9wZXJhdG9yPj49AG9wZXJhdG9yPD0+AG9wZXJhdG9yIiIgAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE1TGl0ZXJhbE9wZXJhdG9yRQBvcGVyYXRvciBkZWxldGUAb3BlcmF0b3IgAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIyQ29udmVyc2lvbk9wZXJhdG9yVHlwZUUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOER0b3JOYW1lRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM1F1YWxpZmllZE5hbWVFAGR5bmFtaWNfY2FzdABkZWxldGUAW10gAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwRGVsZXRlRXhwckUAY3YAKSgATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTRDb252ZXJzaW9uRXhwckUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOENhbGxFeHByRQBjb25zdF9jYXN0AE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwUHJlZml4RXhwckUAKSAAICgATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBCaW5hcnlFeHByRQBhYQBhbgBhTgBhUwBjbQBkcwBkdgBkVgBlbwBlTwBlcQBnZQBndABsZQBscwBsUwBsdABtaQBtSQBtbABtTABuZQBvbwBvcgBvUgBwbABwTABybQByTQBycwByUwAuLi4gACAuLi4ATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOEZvbGRFeHByRQBmcABmTABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM0Z1bmN0aW9uUGFyYW1FAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTI0Rm9yd2FyZFRlbXBsYXRlUmVmZXJlbmNlRQBUcwBzdHJ1Y3QAVHUAdW5pb24AVGUAZW51bQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUyMkVsYWJvcmF0ZWRUeXBlU3BlZlR5cGVFAFN0TABTdABzdGQ6OgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNlN0ZFF1YWxpZmllZE5hbWVFAERDAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIxU3RydWN0dXJlZEJpbmRpbmdOYW1lRQBVdABVbAB2RQAnbGFtYmRhACcoAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE1Q2xvc3VyZVR5cGVOYW1lRQAndW5uYW1lZAAnAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTE1VW5uYW1lZFR5cGVOYW1lRQBzdHJpbmcgbGl0ZXJhbABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGU5TG9jYWxOYW1lRQBzdGQATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTJDdG9yRHRvck5hbWVFAGJhc2ljX2lzdHJlYW0AYmFzaWNfb3N0cmVhbQBiYXNpY19pb3N0cmVhbQBzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLCBzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LCBzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+AHN0ZDo6YmFzaWNfaXN0cmVhbTxjaGFyLCBzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+ID4Ac3RkOjpiYXNpY19vc3RyZWFtPGNoYXIsIHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4gPgBzdGQ6OmJhc2ljX2lvc3RyZWFtPGNoYXIsIHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4gPgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUyN0V4cGFuZGVkU3BlY2lhbFN1YnN0aXR1dGlvbkUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTBOZXN0ZWROYW1lRQA6OioATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTlQb2ludGVyVG9NZW1iZXJUeXBlRQBbAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTlBcnJheVR5cGVFAER2ACB2ZWN0b3JbAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTEwVmVjdG9yVHlwZUUAcGl4ZWwgdmVjdG9yWwBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNVBpeGVsVmVjdG9yVHlwZUUAZGVjbHR5cGUoAHVuc2lnbmVkIGxvbmcgbG9uZwBvYmpjcHJvdG8AIGNvbnN0ACB2b2xhdGlsZQAgcmVzdHJpY3QATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOFF1YWxUeXBlRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxN1ZlbmRvckV4dFF1YWxUeXBlRQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxM09iakNQcm90b05hbWVFAERvAG5vZXhjZXB0AERPAER3AER4AFJFAE9FACAmACAmJgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMkZ1bmN0aW9uVHlwZUUAdGhyb3coAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIwRHluYW1pY0V4Y2VwdGlvblNwZWNFAG5vZXhjZXB0KABOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMk5vZXhjZXB0U3BlY0UATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlMTFTcGVjaWFsTmFtZUUATjEyX0dMT0JBTF9fTl8xMTZpdGFuaXVtX2RlbWFuZ2xlOURvdFN1ZmZpeEUAVWE5ZW5hYmxlX2lmSQBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxNkZ1bmN0aW9uRW5jb2RpbmdFACBbZW5hYmxlX2lmOgBOMTJfR0xPQkFMX19OXzExNml0YW5pdW1fZGVtYW5nbGUxMkVuYWJsZUlmQXR0ckUAdGhyZWFkLWxvY2FsIHdyYXBwZXIgcm91dGluZSBmb3IgAHJlZmVyZW5jZSB0ZW1wb3JhcnkgZm9yIABndWFyZCB2YXJpYWJsZSBmb3IgAG5vbi12aXJ0dWFsIHRodW5rIHRvIAB2aXJ0dWFsIHRodW5rIHRvIAB0aHJlYWQtbG9jYWwgaW5pdGlhbGl6YXRpb24gcm91dGluZSBmb3IgAGNvbnN0cnVjdGlvbiB2dGFibGUgZm9yIAAtaW4tAE4xMl9HTE9CQUxfX05fMTE2aXRhbml1bV9kZW1hbmdsZTIxQ3RvclZ0YWJsZVNwZWNpYWxOYW1lRQBjb3ZhcmlhbnQgcmV0dXJuIHRodW5rIHRvIAB0eXBlaW5mbyBuYW1lIGZvciAAdHlwZWluZm8gZm9yIABWVFQgZm9yIAB2dGFibGUgZm9yIABTdDExbG9naWNfZXJyb3IAU3QxMmxlbmd0aF9lcnJvcgBTdDEyb3V0X29mX3JhbmdlAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMTlfX3BvaW50ZXJfdHlwZV9pbmZvRQBOMTBfX2N4eGFiaXYxMjBfX2Z1bmN0aW9uX3R5cGVfaW5mb0UATjEwX19jeHhhYml2MTI5X19wb2ludGVyX3RvX21lbWJlcl90eXBlX2luZm9FAE4xMF9fY3h4YWJpdjEyM19fZnVuZGFtZW50YWxfdHlwZV9pbmZvRQB2AERuAGIAYwBoAGEAcwB0AGkAagBtAGYAZABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAHZvaWQAYm9vbABjaGFyAHNpZ25lZCBjaGFyAHVuc2lnbmVkIGNoYXIAc2hvcnQAdW5zaWduZWQgc2hvcnQAaW50AHVuc2lnbmVkIGludABsb25nAHVuc2lnbmVkIGxvbmcAZmxvYXQAZG91YmxlAHN0ZDo6c3RyaW5nAHN0ZDo6YmFzaWNfc3RyaW5nPHVuc2lnbmVkIGNoYXI+AHN0ZDo6d3N0cmluZwBlbXNjcmlwdGVuOjp2YWwAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MTZfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDMyX3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQzMl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxmbG9hdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZG91YmxlPgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxsb25nIGRvdWJsZT4ATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJZUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWRFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lmRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWxFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lqRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaUVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SXRFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lzRUUATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJaEVFAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWFFRQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUU="),AXt=function(){let A=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return function(t){t=t||{};var t=typeof t<"u"?t:{};let r={},i;for(i in t)t.hasOwnProperty(i)&&(r[i]=t[i]);let u=[],a="./this.program",n=function(oA,hA){throw hA},o=!1,s=!1,l=!1,g=!1,C=!1;if(o=typeof window=="object",s=typeof importScripts=="function",g=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string",l=g&&!o&&!s,C=!o&&!l&&!s,t.ENVIRONMENT)throw Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -s ENVIRONMENT=web or -s ENVIRONMENT=node)");let B="";function E(oA){return t.locateFile?t.locateFile(oA,B):B+oA}let d,I,h,Q;if(l){B=`${__dirname}/`;let oA,hA;d=function(jA,ae){let Ue;return oA||(oA=hEA(["fs"].join())),hA||(hA=hEA(["path"].join())),jA=hA.normalize(jA),Ue=oA.readFileSync(jA),ae?Ue:Ue.toString()},h=function(jA){let ae=d(jA,!0);return ae.buffer||(ae=new Uint8Array(ae)),L(ae.buffer),ae},process.argv.length>1&&(a=process.argv[1].replace(/\\/g,"/")),u=process.argv.slice(2),process.on("uncaughtException",(jA)=>{if(!(jA instanceof hmA))throw jA}),process.on("unhandledRejection",ue),n=function(jA){process.exit(jA)},t.inspect=function(){return"[Emscripten Module object]"}}else if(C)typeof read<"u"&&(d=function(oA){return read(oA)}),h=function(oA){let hA;return typeof readbuffer=="function"?new Uint8Array(readbuffer(oA)):(hA=read(oA,"binary"),L(typeof hA=="object"),hA)},typeof scriptArgs<"u"?u=scriptArgs:typeof arguments<"u"&&(u=arguments),typeof quit=="function"&&(n=function(oA){quit(oA)}),typeof print<"u"&&(typeof console>"u"&&(console={}),console.log=print,console.warn=console.error=typeof printErr<"u"?printErr:print);else if(o||s)s?B=self.location.href:document.currentScript&&(B=document.currentScript.src),A&&(B=A),B.indexOf("blob:")!==0?B=B.substr(0,B.lastIndexOf("/")+1):B="",d=function(oA){let hA=new XMLHttpRequest;return hA.open("GET",oA,!1),hA.send(null),hA.responseText},s&&(h=function(oA){let hA=new XMLHttpRequest;return hA.open("GET",oA,!1),hA.responseType="arraybuffer",hA.send(null),new Uint8Array(hA.response)}),I=function(oA,hA,jA){let ae=new XMLHttpRequest;ae.open("GET",oA,!0),ae.responseType="arraybuffer",ae.onload=function(){if(ae.status==200||ae.status==0&&ae.response){hA(ae.response);return}jA()},ae.onerror=jA,ae.send(null)},Q=function(oA){document.title=oA};else throw Error("environment detection error");let p=t.print||function(){},m=t.printErr||function(){};for(i in r)r.hasOwnProperty(i)&&(t[i]=r[i]);r=null,t.arguments&&(u=t.arguments),Object.getOwnPropertyDescriptor(t,"arguments")||Object.defineProperty(t,"arguments",{configurable:!0,get(){ue("Module.arguments has been replaced with plain arguments_")}}),t.thisProgram&&(a=t.thisProgram),Object.getOwnPropertyDescriptor(t,"thisProgram")||Object.defineProperty(t,"thisProgram",{configurable:!0,get(){ue("Module.thisProgram has been replaced with plain thisProgram")}}),t.quit&&(n=t.quit),Object.getOwnPropertyDescriptor(t,"quit")||Object.defineProperty(t,"quit",{configurable:!0,get(){ue("Module.quit has been replaced with plain quit_")}}),L(typeof t.memoryInitializerPrefixURL>"u","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead"),L(typeof t.pthreadMainPrefixURL>"u","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead"),L(typeof t.cdInitializerPrefixURL>"u","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead"),L(typeof t.filePackagePrefixURL>"u","Module.filePackagePrefixURL option was removed, use Module.locateFile instead"),L(typeof t.read>"u","Module.read option was removed (modify read_ in JS)"),L(typeof t.readAsync>"u","Module.readAsync option was removed (modify readAsync in JS)"),L(typeof t.readBinary>"u","Module.readBinary option was removed (modify readBinary in JS)"),L(typeof t.setWindowTitle>"u","Module.setWindowTitle option was removed (modify setWindowTitle in JS)"),Object.getOwnPropertyDescriptor(t,"read")||Object.defineProperty(t,"read",{configurable:!0,get(){ue("Module.read has been replaced with plain read_")}}),Object.getOwnPropertyDescriptor(t,"readAsync")||Object.defineProperty(t,"readAsync",{configurable:!0,get(){ue("Module.readAsync has been replaced with plain readAsync")}}),Object.getOwnPropertyDescriptor(t,"readBinary")||Object.defineProperty(t,"readBinary",{configurable:!0,get(){ue("Module.readBinary has been replaced with plain readBinary")}}),kZ=ImA=vZ=function(){ue("cannot use the stack before compiled code is ready to run, and has provided stack access")};function f(oA){f.shown||(f.shown={}),f.shown[oA]||(f.shown[oA]=1,m(oA))}let D={"f64-rem"(oA,hA){return oA%hA},debugger(){debugger}},w=[],b=0,k=function(oA){b=oA},v;t.wasmBinary&&(v=t.wasmBinary),Object.getOwnPropertyDescriptor(t,"wasmBinary")||Object.defineProperty(t,"wasmBinary",{configurable:!0,get(){ue("Module.wasmBinary has been replaced with plain wasmBinary")}});let S;t.noExitRuntime&&(S=t.noExitRuntime),Object.getOwnPropertyDescriptor(t,"noExitRuntime")||Object.defineProperty(t,"noExitRuntime",{configurable:!0,get(){ue("Module.noExitRuntime has been replaced with plain noExitRuntime")}}),typeof WebAssembly!="object"&&ue("No WebAssembly support found. Build with -s WASM=0 to target JavaScript instead.");let x,F=new WebAssembly.Table({initial:352,maximum:352,element:"anyfunc"}),T=!1,R=0;function L(oA,hA){oA||ue(`Assertion failed: ${hA}`)}function M(oA){let hA=t[`_${oA}`];return L(hA,`Cannot call unknown function ${oA}, make sure it is exported`),hA}function U(oA,hA,jA,ae,Ue){let qe={string(Wr){let Ui=0;if(Wr!=null&&Wr!==0){let bn=(Wr.length<<2)+1;Ui=vZ(bn),P(Wr,Ui,bn)}return Ui},array(Wr){let Ui=vZ(Wr.length);return W(Wr,Ui),Ui}};function $e(Wr){return hA==="string"?K(Wr):hA==="boolean"?!!Wr:Wr}let Ke=M(oA),nt=[],qt=0;if(L(hA!=="array",'Return type should not be "array".'),ae)for(let Wr=0;Wr<ae.length;Wr++){let Ui=qe[jA[Wr]];Ui?(qt===0&&(qt=kZ()),nt[Wr]=Ui(ae[Wr])):nt[Wr]=ae[Wr]}let ui=Ke.apply(null,nt);return ui=$e(ui),qt!==0&&ImA(qt),ui}function Y(oA,hA,jA,ae){return function(){return U(oA,hA,jA,arguments,ae)}}let H=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function J(oA,hA,jA){let ae=hA+jA,Ue=hA;for(;oA[Ue]&&!(Ue>=ae);)++Ue;if(Ue-hA>16&&oA.subarray&&H)return H.decode(oA.subarray(hA,Ue));let qe="";for(;hA<Ue;){let $e=oA[hA++];if(!($e&128)){qe+=String.fromCharCode($e);continue}let Ke=oA[hA++]&63;if(($e&224)==192){qe+=String.fromCharCode(($e&31)<<6|Ke);continue}let nt=oA[hA++]&63;if(($e&240)==224?$e=($e&15)<<12|Ke<<6|nt:(($e&248)!=240&&f(`Invalid UTF-8 leading byte 0x${$e.toString(16)} encountered when deserializing a UTF-8 string on the asm.js/wasm heap to a JS string!`),$e=($e&7)<<18|Ke<<12|nt<<6|oA[hA++]&63),$e<65536)qe+=String.fromCharCode($e);else{let qt=$e-65536;qe+=String.fromCharCode(55296|qt>>10,56320|qt&1023)}}return qe}function K(oA,hA){return oA?J(aA,oA,hA):""}function O(oA,hA,jA,ae){if(!(ae>0))return 0;let Ue=jA,qe=jA+ae-1;for(let $e=0;$e<oA.length;++$e){let Ke=oA.charCodeAt($e);if(Ke>=55296&&Ke<=57343){let nt=oA.charCodeAt(++$e);Ke=65536+((Ke&1023)<<10)|nt&1023}if(Ke<=127){if(jA>=qe)break;hA[jA++]=Ke}else if(Ke<=2047){if(jA+1>=qe)break;hA[jA++]=192|Ke>>6,hA[jA++]=128|Ke&63}else if(Ke<=65535){if(jA+2>=qe)break;hA[jA++]=224|Ke>>12,hA[jA++]=128|Ke>>6&63,hA[jA++]=128|Ke&63}else{if(jA+3>=qe)break;Ke>=2097152&&f(`Invalid Unicode code point 0x${Ke.toString(16)} encountered when serializing a JS string to an UTF-8 string on the asm.js/wasm heap! (Valid unicode code points should be in range 0-0x1FFFFF).`),hA[jA++]=240|Ke>>18,hA[jA++]=128|Ke>>12&63,hA[jA++]=128|Ke>>6&63,hA[jA++]=128|Ke&63}}return hA[jA]=0,jA-Ue}function P(oA,hA,jA){return L(typeof jA=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!"),O(oA,aA,hA,jA)}function z(oA){let hA=0;for(let jA=0;jA<oA.length;++jA){let ae=oA.charCodeAt(jA);ae>=55296&&ae<=57343&&(ae=65536+((ae&1023)<<10)|oA.charCodeAt(++jA)&1023),ae<=127?++hA:ae<=2047?hA+=2:ae<=65535?hA+=3:hA+=4}return hA}let AA=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0;function W(oA,hA){L(oA.length>=0,"writeArrayToMemory array must have a length (should be an array or typed array)"),gA.set(oA,hA)}let CA=65536;function tA(oA,hA){return oA%hA>0&&(oA+=hA-oA%hA),oA}let lA,gA,aA,NA,DA,KA,TA,qA,IA;function bA(oA){lA=oA,t.HEAP8=gA=new Int8Array(oA),t.HEAP16=NA=new Int16Array(oA),t.HEAP32=KA=new Int32Array(oA),t.HEAPU8=aA=new Uint8Array(oA),t.HEAPU16=DA=new Uint16Array(oA),t.HEAPU32=TA=new Uint32Array(oA),t.HEAPF32=qA=new Float32Array(oA),t.HEAPF64=IA=new Float64Array(oA)}let SA=434112,EA=5676992,nA=5676992,eA=433920;L(SA%16===0,"stack must start aligned"),L(nA%16===0,"heap must start aligned");let BA=5242880;t.TOTAL_STACK&&L(BA===t.TOTAL_STACK,"the stack size can no longer be determined at runtime");let yA=t.TOTAL_MEMORY||16777216;Object.getOwnPropertyDescriptor(t,"TOTAL_MEMORY")||Object.defineProperty(t,"TOTAL_MEMORY",{configurable:!0,get(){ue("Module.TOTAL_MEMORY has been replaced with plain INITIAL_TOTAL_MEMORY")}}),L(yA>=BA,`TOTAL_MEMORY should be larger than TOTAL_STACK, was ${yA}! (TOTAL_STACK=${BA})`),L(typeof Int32Array<"u"&&typeof Float64Array<"u"&&Int32Array.prototype.subarray!==void 0&&Int32Array.prototype.set!==void 0,"JS engine does not provide full typed array support"),t.wasmMemory?x=t.wasmMemory:x=new WebAssembly.Memory({initial:yA/CA}),x&&(lA=x.buffer),yA=lA.byteLength,L(yA%CA===0),bA(lA),KA[eA>>2]=nA;function vA(){L((EA&3)==0),TA[(EA>>2)-1]=34821223,TA[(EA>>2)-2]=2310721022,KA[0]=1668509029}function FA(){let oA=TA[(EA>>2)-1],hA=TA[(EA>>2)-2];(oA!=34821223||hA!=2310721022)&&ue(`Stack overflow! Stack cookie has been overwritten, expected hex dwords 0x89BACDFE and 0x02135467, but received 0x${hA.toString(16)} ${oA.toString(16)}`),KA[0]!==1668509029&&ue("Runtime error: The application has corrupted its heap memory area (address zero)!")}function HA(oA){ue(`Stack overflow! Attempted to allocate ${oA} bytes on the stack, but stack has only ${EA-kZ()+oA} bytes available!`)}(function(){let oA=new Int16Array(1),hA=new Int8Array(oA.buffer);if(oA[0]=25459,hA[0]!==115||hA[1]!==99)throw"Runtime error: expected the system to be little-endian!"})();function dA(oA,hA){ue(`Invalid function pointer ${oA} called with signature '${hA}'. Perhaps this is an invalid value (e.g. caused by calling a virtual method on a NULL pointer)? Or calling a function with an incorrect type, which will fail? (it is worth building your source files with -Werror (warnings are errors), as warnings can indicate undefined behavior which can cause this). Build with ASSERTIONS=2 for more info.`)}function q(oA){for(;oA.length>0;){let hA=oA.shift();if(typeof hA=="function"){hA();continue}let jA=hA.func;typeof jA=="number"?hA.arg===void 0?t.dynCall_v(jA):t.dynCall_vi(jA,hA.arg):jA(hA.arg===void 0?null:hA.arg)}}let Z=[],fA=[],j=[],mA=[],rA=!1,JA=!1;function _A(){if(t.preRun)for(typeof t.preRun=="function"&&(t.preRun=[t.preRun]);t.preRun.length;)Ae(t.preRun.shift());q(Z)}function ZA(){FA(),L(!rA),rA=!0,q(fA)}function WA(){FA(),q(j)}function te(){FA(),JA=!0}function zA(){if(FA(),t.postRun)for(typeof t.postRun=="function"&&(t.postRun=[t.postRun]);t.postRun.length;)$A(t.postRun.shift());q(mA)}function Ae(oA){Z.unshift(oA)}function $A(oA){mA.unshift(oA)}L(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),L(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),L(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill"),L(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");let oe=0,kA=null,Pe=null,MA={};function ke(oA){oe++,t.monitorRunDependencies&&t.monitorRunDependencies(oe),oA?(L(!MA[oA]),MA[oA]=1,kA===null&&typeof setInterval<"u"&&(kA=setInterval(()=>{if(T){clearInterval(kA),kA=null;return}let hA=!1;for(let jA in MA)hA||(hA=!0,m("still waiting on run dependencies:")),m(`dependency: ${jA}`);hA&&m("(end of list)")},1e4))):m("warning: run dependency added without ID")}function We(oA){if(oe--,t.monitorRunDependencies&&t.monitorRunDependencies(oe),oA?(L(MA[oA]),delete MA[oA]):m("warning: run dependency removed without ID"),oe==0&&(kA!==null&&(clearInterval(kA),kA=null),Pe)){let hA=Pe;Pe=null,hA()}}t.preloadedImages={},t.preloadedAudios={};function ue(oA){t.onAbort&&t.onAbort(oA),oA+="",p(oA),m(oA),T=!0,R=1;let hA="";throw`abort(${oA}) at ${Le()}${hA}`}var Me={error(){ue("Filesystem support (FS) was not included. The problem is that you are using files from JS, but files were not used from C/C++, so filesystem support was not auto-included. You can force-include filesystem support with -s FORCE_FILESYSTEM=1")},init(){Me.error()},createDataFile(){Me.error()},createPreloadedFile(){Me.error()},createLazyFile(){Me.error()},open(){Me.error()},mkdev(){Me.error()},registerDevice(){Me.error()},analyzePath(){Me.error()},loadFilesFromDB(){Me.error()},ErrnoError:function(){Me.error()}};t.FS_createDataFile=Me.createDataFile,t.FS_createPreloadedFile=Me.createPreloadedFile;let je="data:application/octet-stream;base64,";function Ge(oA){return String.prototype.startsWith?oA.startsWith(je):oA.indexOf(je)===0}let wA="woff2.wasm";Ge(wA)||(wA=E(wA));function Re(){try{if(v)return new Uint8Array(v);if(h)return h(wA);throw"both async and sync fetching of the wasm failed"}catch(oA){ue(oA)}}function He(){return!v&&(o||s)&&typeof fetch=="function"?fetch(wA,{credentials:"same-origin"}).then((oA)=>{if(!oA.ok)throw`failed to load wasm binary file at '${wA}'`;return oA.arrayBuffer()}).catch(()=>Re()):new Promise((oA,hA)=>{oA(Re())})}function de(){let oA={env:wZ,wasi_unstable:wZ,global:{NaN:NaN,Infinity:1/0},"global.Math":Math,asm2wasm:D};function hA($e,Ke){let nt=$e.exports;t.asm=nt,We("wasm-instantiate")}ke("wasm-instantiate");let jA=t;function ae($e){L(t===jA,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?"),jA=null,hA($e.instance)}function Ue($e){return He().then((Ke)=>WebAssembly.instantiate(Ke,oA)).then($e,(Ke)=>{m(`failed to asynchronously prepare wasm: ${Ke}`),ue(Ke)})}function qe(){if(!v&&typeof WebAssembly.instantiateStreaming=="function"&&!Ge(wA)&&typeof fetch=="function"&&typeof process=="object"&&process.versions&&process.versions.node&&+process.versions.node.split(".")[0]<17)fetch(wA,{credentials:"same-origin"}).then(($e)=>WebAssembly.instantiateStreaming($e,oA).then(ae,(Ke)=>{m(`wasm streaming compile failed: ${Ke}`),m("falling back to ArrayBuffer instantiation"),Ue(ae)}));else return Ue(ae)}if(t.instantiateWasm)try{return t.instantiateWasm(oA,hA)}catch($e){return m(`Module.instantiateWasm callback failed with error: ${$e}`),!1}return qe(),{}}t.asm=de,fA.push({func(){mje()}}),L(!0);function RA(oA){let hA=t.___cxa_demangle||t.__cxa_demangle;L(hA);try{let qe=oA;qe.startsWith("__Z")&&(qe=qe.substr(1));let $e=z(qe)+1;var jA=O5($e);P(qe,jA,$e);var ae=O5(4),Ue=hA(jA,0,0,ae);if(KA[ae>>2]===0&&Ue)return K(Ue)}catch{}finally{jA&&Zc(jA),ae&&Zc(ae),Ue&&Zc(Ue)}return oA}function ce(oA){let hA=/\b__Z[\w\d_]+/g;return oA.replace(hA,(jA)=>{let ae=RA(jA);return jA===ae?jA:`${ae} [${jA}]`})}function me(){let oA=Error();if(!oA.stack){try{throw Error(0)}catch(hA){oA=hA}if(!oA.stack)return"(no stack trace available)"}return oA.stack.toString()}function Le(){let oA=me();return t.extraStackTrace&&(oA+=`
${t.extraStackTrace()}`),ce(oA)}function Lt(oA,hA,jA,ae){ue(`Assertion failed: ${K(oA)}, at: ${[hA?K(hA):"unknown filename",jA,ae?K(ae):"unknown function"]}`)}function Je(oA){return O5(oA)}let kt={},Cr=0;function Pt(oA,hA,jA){throw kt[oA]={ptr:oA,adjusted:[oA],type:hA,destructor:jA,refcount:0,caught:!1,rethrown:!1},Cr=oA,"uncaught_exception"in bZ?bZ.uncaught_exceptions++:bZ.uncaught_exceptions=1,`${oA} - Exception catching is disabled, this exception cannot be caught. Compile with -s DISABLE_EXCEPTION_CATCHING=0 or DISABLE_EXCEPTION_CATCHING=2 to catch.`}function dt(){}function Yt(){}var Ce={splitPath(oA){return/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(oA).slice(1)},normalizeArray(oA,hA){let jA=0;for(let ae=oA.length-1;ae>=0;ae--){let Ue=oA[ae];Ue==="."?oA.splice(ae,1):Ue===".."?(oA.splice(ae,1),jA++):jA&&(oA.splice(ae,1),jA--)}if(hA)for(;jA;jA--)oA.unshift("..");return oA},normalize(oA){let hA=oA.charAt(0)==="/",jA=oA.substr(-1)==="/";return oA=Ce.normalizeArray(oA.split("/").filter((ae)=>!!ae),!hA).join("/"),!oA&&!hA&&(oA="."),oA&&jA&&(oA+="/"),(hA?"/":"")+oA},dirname(oA){let hA=Ce.splitPath(oA),jA=hA[0],ae=hA[1];return!jA&&!ae?".":(ae&&(ae=ae.substr(0,ae.length-1)),jA+ae)},basename(oA){if(oA==="/")return"/";let hA=oA.lastIndexOf("/");return hA===-1?oA:oA.substr(hA+1)},extname(oA){return Ce.splitPath(oA)[3]},join(){let oA=Array.prototype.slice.call(arguments,0);return Ce.normalize(oA.join("/"))},join2(oA,hA){return Ce.normalize(`${oA}/${hA}`)}},ye={buffers:[null,[],[]],printChar(oA,hA){let jA=ye.buffers[oA];L(jA),hA===0||hA===10?((oA===1?p:m)(J(jA,0)),jA.length=0):jA.push(hA)},varargs:0,get(oA){return ye.varargs+=4,KA[ye.varargs-4>>2]},getStr(){return K(ye.get())},get64(){let oA=ye.get(),hA=ye.get();return oA>=0?L(hA===0):L(hA===-1),oA},getZero(){L(ye.get()===0)}};function Ze(oA){try{return ue("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM"),0}catch(hA){return(typeof Me>"u"||!(hA instanceof Me.ErrnoError))&&ue(hA),hA.errno}}function Xt(){return Ze.apply(null,arguments)}function Vt(oA,hA,jA,ae,Ue){try{return ue("it should not be possible to operate on streams when !SYSCALLS_REQUIRE_FILESYSTEM"),0}catch(qe){return(typeof Me>"u"||!(qe instanceof Me.ErrnoError))&&ue(qe),qe.errno}}function or(){return Vt.apply(null,arguments)}function Qi(){let oA=t._fflush;oA&&oA(0);let hA=ye.buffers;hA[1].length&&ye.printChar(1,10),hA[2].length&&ye.printChar(2,10)}function sr(oA,hA,jA,ae){try{let Ue=0;for(let qe=0;qe<jA;qe++){let $e=KA[hA+qe*8>>2],Ke=KA[hA+(qe*8+4)>>2];for(let nt=0;nt<Ke;nt++)ye.printChar(oA,aA[$e+nt]);Ue+=Ke}return KA[ae>>2]=Ue,0}catch(Ue){return(typeof Me>"u"||!(Ue instanceof Me.ErrnoError))&&ue(Ue),Ue.errno}}function et(){return sr.apply(null,arguments)}function Ye(oA){switch(oA){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw TypeError(`Unknown type size: ${oA}`)}}function Ct(){let oA=Array(256);for(let hA=0;hA<256;++hA)oA[hA]=String.fromCharCode(hA);lt=oA}var lt=void 0;function Te(oA){let hA="",jA=oA;for(;aA[jA];)hA+=lt[aA[jA++]];return hA}let Ft={},LA={},ki={},YA=48,lr=57;function Du(oA){if(oA===void 0)return"_unknown";oA=oA.replace(/[^a-zA-Z0-9_]/g,"$");let hA=oA.charCodeAt(0);return hA>=YA&&hA<=lr?`_${oA}`:oA}function zn(oA,hA){return oA=Du(oA),Function("body",`return function ${oA}() {
"use strict"; return body.apply(this, arguments);
};
`)(hA)}function an(oA,hA){let jA=zn(hA,function(ae){this.name=hA,this.message=ae;let Ue=Error(ae).stack;Ue!==void 0&&(this.stack=`${this.toString()}
${Ue.replace(/^Error(:[^\n]*)?\n/,"")}`)});return jA.prototype=Object.create(oA.prototype),jA.prototype.constructor=jA,jA.prototype.toString=function(){return this.message===void 0?this.name:`${this.name}: ${this.message}`},jA}let as;function Ai(oA){throw new as(oA)}let Ku;function ko(oA){throw new Ku(oA)}function Zn(oA,hA,jA){oA.forEach((Ke)=>{ki[Ke]=hA});function ae(Ke){let nt=jA(Ke);nt.length!==oA.length&&ko("Mismatched type converter count");for(let qt=0;qt<oA.length;++qt)nn(oA[qt],nt[qt])}let Ue=Array(hA.length),qe=[],$e=0;hA.forEach((Ke,nt)=>{LA.hasOwnProperty(Ke)?Ue[nt]=LA[Ke]:(qe.push(Ke),Ft.hasOwnProperty(Ke)||(Ft[Ke]=[]),Ft[Ke].push(()=>{Ue[nt]=LA[Ke],++$e,$e===qe.length&&ae(Ue)}))}),qe.length===0&&ae(Ue)}function nn(oA,hA,jA){if(jA=jA||{},!("argPackAdvance"in hA))throw TypeError("registerType registeredInstance requires argPackAdvance");let ae=hA.name;if(oA||Ai(`type "${ae}" must have a positive integer typeid pointer`),LA.hasOwnProperty(oA)){if(jA.ignoreDuplicateRegistrations)return;Ai(`Cannot register type '${ae}' twice`)}if(LA[oA]=hA,delete ki[oA],Ft.hasOwnProperty(oA)){let Ue=Ft[oA];delete Ft[oA],Ue.forEach((qe)=>{qe()})}}function Ud(oA,hA,jA,ae,Ue){let qe=Ye(jA);hA=Te(hA),nn(oA,{name:hA,fromWireType($e){return!!$e},toWireType($e,Ke){return Ke?ae:Ue},argPackAdvance:8,readValueFromPointer($e){let Ke;if(jA===1)Ke=gA;else if(jA===2)Ke=NA;else if(jA===4)Ke=KA;else throw TypeError(`Unknown boolean type size: ${hA}`);return this.fromWireType(Ke[$e>>qe])},destructorFunction:null})}function Vn(oA){if(!(this instanceof sn)||!(oA instanceof sn))return!1;let hA=this.$$.ptrType.registeredClass,jA=this.$$.ptr,ae=oA.$$.ptrType.registeredClass,Ue=oA.$$.ptr;for(;hA.baseClass;)jA=hA.upcast(jA),hA=hA.baseClass;for(;ae.baseClass;)Ue=ae.upcast(Ue),ae=ae.baseClass;return hA===ae&&jA===Ue}function Md(oA){return{count:oA.count,deleteScheduled:oA.deleteScheduled,preservePointerOnDelete:oA.preservePointerOnDelete,ptr:oA.ptr,ptrType:oA.ptrType,smartPtr:oA.smartPtr,smartPtrType:oA.smartPtrType}}function on(oA){function hA(jA){return jA.$$.ptrType.registeredClass.name}Ai(`${hA(oA)} instance already deleted`)}let Td=!1;function _l(oA){}function jn(oA){oA.smartPtr?oA.smartPtrType.rawDestructor(oA.smartPtr):oA.ptrType.registeredClass.rawDestructor(oA.ptr)}function Fp(oA){oA.count.value-=1,oA.count.value===0&&jn(oA)}function Xe(oA){return typeof FinalizationGroup>"u"?(Xe=function(hA){return hA},oA):(Td=new FinalizationGroup((hA)=>{for(let jA=hA.next();!jA.done;jA=hA.next()){let ae=jA.value;ae.ptr?Fp(ae):console.warn(`object already deleted: ${ae.ptr}`)}}),Xe=function(hA){return Td.register(hA,hA.$$,hA.$$),hA},_l=function(hA){Td.unregister(hA.$$)},Xe(oA))}function UA(){if(this.$$.ptr||on(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;let oA=Xe(Object.create(Object.getPrototypeOf(this),{$$:{value:Md(this.$$)}}));return oA.$$.count.value+=1,oA.$$.deleteScheduled=!1,oA}function se(){this.$$.ptr||on(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Ai("Object already scheduled for deletion"),_l(this),Fp(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)}function Oe(){return!this.$$.ptr}let rt,Ht=[];function _r(){for(;Ht.length;){let oA=Ht.pop();oA.$$.deleteScheduled=!1,oA.delete()}}function br(){return this.$$.ptr||on(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&Ai("Object already scheduled for deletion"),Ht.push(this),Ht.length===1&&rt&&rt(_r),this.$$.deleteScheduled=!0,this}function ga(){sn.prototype.isAliasOf=Vn,sn.prototype.clone=UA,sn.prototype.delete=se,sn.prototype.isDeleted=Oe,sn.prototype.deleteLater=br}function sn(){}let F0={};function Yd(oA,hA,jA){if(oA[hA].overloadTable===void 0){let ae=oA[hA];oA[hA]=function(){return oA[hA].overloadTable.hasOwnProperty(arguments.length)||Ai(`Function '${jA}' called with an invalid number of arguments (${arguments.length}) - expects one of (${oA[hA].overloadTable})!`),oA[hA].overloadTable[arguments.length].apply(this,arguments)},oA[hA].overloadTable=[],oA[hA].overloadTable[ae.argCount]=ae}}function _2(oA,hA,jA){t.hasOwnProperty(oA)?((jA===void 0||t[oA].overloadTable!==void 0&&t[oA].overloadTable[jA]!==void 0)&&Ai(`Cannot register public name '${oA}' twice`),Yd(t,oA,oA),t.hasOwnProperty(jA)&&Ai(`Cannot register multiple overloads of a function with the same number of arguments (${jA})!`),t[oA].overloadTable[jA]=hA):(t[oA]=hA,jA!==void 0&&(t[oA].numArguments=jA))}function jo(oA,hA,jA,ae,Ue,qe,$e,Ke){this.name=oA,this.constructor=hA,this.instancePrototype=jA,this.rawDestructor=ae,this.baseClass=Ue,this.getActualType=qe,this.upcast=$e,this.downcast=Ke,this.pureVirtualFunctions=[]}function W2(oA,hA,jA){for(;hA!==jA;)hA.upcast||Ai(`Expected null or instance of ${jA.name}, got an instance of ${hA.name}`),oA=hA.upcast(oA),hA=hA.baseClass;return oA}function hVe(oA,hA){if(hA===null)return this.isReference&&Ai(`null is not a valid ${this.name}`),0;hA.$$||Ai(`Cannot pass "${q2(hA)}" as a ${this.name}`),hA.$$.ptr||Ai(`Cannot pass deleted object as a pointer of type ${this.name}`);let jA=hA.$$.ptrType.registeredClass;return W2(hA.$$.ptr,jA,this.registeredClass)}function QVe(oA,hA){let jA;if(hA===null)return this.isReference&&Ai(`null is not a valid ${this.name}`),this.isSmartPointer?(jA=this.rawConstructor(),oA!==null&&oA.push(this.rawDestructor,jA),jA):0;hA.$$||Ai(`Cannot pass "${q2(hA)}" as a ${this.name}`),hA.$$.ptr||Ai(`Cannot pass deleted object as a pointer of type ${this.name}`),!this.isConst&&hA.$$.ptrType.isConst&&Ai(`Cannot convert argument of type ${hA.$$.smartPtrType?hA.$$.smartPtrType.name:hA.$$.ptrType.name} to parameter type ${this.name}`);let ae=hA.$$.ptrType.registeredClass;if(jA=W2(hA.$$.ptr,ae,this.registeredClass),this.isSmartPointer)switch(hA.$$.smartPtr===void 0&&Ai("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:hA.$$.smartPtrType===this?jA=hA.$$.smartPtr:Ai(`Cannot convert argument of type ${hA.$$.smartPtrType?hA.$$.smartPtrType.name:hA.$$.ptrType.name} to parameter type ${this.name}`);break;case 1:jA=hA.$$.smartPtr;break;case 2:if(hA.$$.smartPtrType===this)jA=hA.$$.smartPtr;else{let Ue=hA.clone();jA=this.rawShare(jA,yZ(()=>{Ue.delete()})),oA!==null&&oA.push(this.rawDestructor,jA)}break;default:Ai("Unsupporting sharing policy")}return jA}function pVe(oA,hA){if(hA===null)return this.isReference&&Ai(`null is not a valid ${this.name}`),0;hA.$$||Ai(`Cannot pass "${q2(hA)}" as a ${this.name}`),hA.$$.ptr||Ai(`Cannot pass deleted object as a pointer of type ${this.name}`),hA.$$.ptrType.isConst&&Ai(`Cannot convert argument of type ${hA.$$.ptrType.name} to parameter type ${this.name}`);let jA=hA.$$.ptrType.registeredClass;return W2(hA.$$.ptr,jA,this.registeredClass)}function PL(oA){return this.fromWireType(TA[oA>>2])}function fVe(oA){return this.rawGetPointee&&(oA=this.rawGetPointee(oA)),oA}function mVe(oA){this.rawDestructor&&this.rawDestructor(oA)}function DVe(oA){oA!==null&&oA.delete()}function omA(oA,hA,jA){if(hA===jA)return oA;if(jA.baseClass===void 0)return null;let ae=omA(oA,hA,jA.baseClass);return ae===null?null:jA.downcast(ae)}function yVe(){return Object.keys(J5).length}function wVe(){let oA=[];for(let hA in J5)J5.hasOwnProperty(hA)&&oA.push(J5[hA]);return oA}function bVe(oA){rt=oA,Ht.length&&rt&&rt(_r)}function vVe(){t.getInheritedInstanceCount=yVe,t.getLiveInheritedInstances=wVe,t.flushPendingDeletes=_r,t.setDelayFunction=bVe}var J5={};function kVe(oA,hA){for(hA===void 0&&Ai("ptr should not be undefined");oA.baseClass;)hA=oA.upcast(hA),oA=oA.baseClass;return hA}function FVe(oA,hA){return hA=kVe(oA,hA),J5[hA]}function _L(oA,hA){(!hA.ptrType||!hA.ptr)&&ko("makeClassHandle requires ptr and ptrType");let jA=!!hA.smartPtrType,ae=!!hA.smartPtr;return jA!==ae&&ko("Both smartPtrType and smartPtr must be specified"),hA.count={value:1},Xe(Object.create(oA,{$$:{value:hA}}))}function xVe(oA){let hA=this.getPointee(oA);if(!hA)return this.destructor(oA),null;let jA=FVe(this.registeredClass,hA);if(jA!==void 0){if(jA.$$.count.value===0)return jA.$$.ptr=hA,jA.$$.smartPtr=oA,jA.clone();let nt=jA.clone();return this.destructor(oA),nt}function ae(){return this.isSmartPointer?_L(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:hA,smartPtrType:this,smartPtr:oA}):_L(this.registeredClass.instancePrototype,{ptrType:this,ptr:oA})}let Ue=this.registeredClass.getActualType(hA),qe=F0[Ue];if(!qe)return ae.call(this);let $e;this.isConst?$e=qe.constPointerType:$e=qe.pointerType;let Ke=omA(hA,this.registeredClass,$e.registeredClass);return Ke===null?ae.call(this):this.isSmartPointer?_L($e.registeredClass.instancePrototype,{ptrType:$e,ptr:Ke,smartPtrType:this,smartPtr:oA}):_L($e.registeredClass.instancePrototype,{ptrType:$e,ptr:Ke})}function SVe(){Hd.prototype.getPointee=fVe,Hd.prototype.destructor=mVe,Hd.prototype.argPackAdvance=8,Hd.prototype.readValueFromPointer=PL,Hd.prototype.deleteObject=DVe,Hd.prototype.fromWireType=xVe}function Hd(oA,hA,jA,ae,Ue,qe,$e,Ke,nt,qt,ui){this.name=oA,this.registeredClass=hA,this.isReference=jA,this.isConst=ae,this.isSmartPointer=Ue,this.pointeeType=qe,this.sharingPolicy=$e,this.rawGetPointee=Ke,this.rawConstructor=nt,this.rawShare=qt,this.rawDestructor=ui,!Ue&&hA.baseClass===void 0?ae?(this.toWireType=hVe,this.destructorFunction=null):(this.toWireType=pVe,this.destructorFunction=null):this.toWireType=QVe}function smA(oA,hA,jA){t.hasOwnProperty(oA)||ko("Replacing nonexistant public symbol"),t[oA].overloadTable!==void 0&&jA!==void 0?t[oA].overloadTable[jA]=hA:(t[oA]=hA,t[oA].argCount=jA)}function xp(oA,hA){oA=Te(oA);function jA(Ue){let qe=[];for(let Ke=1;Ke<oA.length;++Ke)qe.push(`a${Ke}`);let $e=`return function ${`dynCall_${oA}_${hA}`}(${qe.join(", ")}) {
`;return $e+=` return dynCall(rawFunction${qe.length?", ":""}${qe.join(", ")});
`,$e+=`};
`,Function("dynCall","rawFunction",$e)(Ue,hA)}let ae;if(t[`FUNCTION_TABLE_${oA}`]!==void 0)ae=t[`FUNCTION_TABLE_${oA}`][hA];else if(typeof FUNCTION_TABLE<"u")ae=FUNCTION_TABLE[hA];else{let Ue=t[`dynCall_${oA}`];Ue===void 0&&(Ue=t[`dynCall_${oA.replace(/f/g,"d")}`],Ue===void 0&&Ai(`No dynCall invoker for signature: ${oA}`)),ae=jA(Ue)}return typeof ae!="function"&&Ai(`unknown function pointer with signature ${oA}: ${hA}`),ae}let lmA;function gmA(oA){let hA=fje(oA),jA=Te(hA);return Zc(hA),jA}function WL(oA,hA){let jA=[],ae={};function Ue(qe){if(!ae[qe]&&!LA[qe]){if(ki[qe]){ki[qe].forEach(Ue);return}jA.push(qe),ae[qe]=!0}}throw hA.forEach(Ue),new lmA(`${oA}: ${jA.map(gmA).join([", "])}`)}function LVe(oA,hA,jA,ae,Ue,qe,$e,Ke,nt,qt,ui,Wr,Ui){ui=Te(ui),qe=xp(Ue,qe),Ke&&(Ke=xp($e,Ke)),qt&&(qt=xp(nt,qt)),Ui=xp(Wr,Ui);let bn=Du(ui);_2(bn,()=>{WL(`Cannot construct ${ui} due to unbound types`,[ae])}),Zn([oA,hA,jA],ae?[ae]:[],(SB)=>{SB=SB[0];let Vc,xZ;ae?(Vc=SB.registeredClass,xZ=Vc.instancePrototype):xZ=sn.prototype;let Zh=zn(bn,function(){if(Object.getPrototypeOf(this)!==SZ)throw new as(`Use 'new' to construct ${ui}`);if(z2.constructor_body===void 0)throw new as(`${ui} has no accessible constructor`);let fmA=z2.constructor_body[arguments.length];if(fmA===void 0)throw new as(`Tried to invoke ctor of ${ui} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(z2.constructor_body).toString()}) parameters instead!`);return fmA.apply(this,arguments)});var SZ=Object.create(xZ,{constructor:{value:Zh}});Zh.prototype=SZ;var z2=new jo(ui,Zh,SZ,Ui,Vc,qe,Ke,qt);let wje=new Hd(ui,z2,!0,!1,!1),QmA=new Hd(`${ui}*`,z2,!1,!1,!1),pmA=new Hd(`${ui} const*`,z2,!1,!0,!1);return F0[oA]={pointerType:QmA,constPointerType:pmA},smA(bn,Zh),[wje,QmA,pmA]})}function mZ(oA,hA){let jA=[];for(let ae=0;ae<oA;ae++)jA.push(KA[(hA>>2)+ae]);return jA}function cmA(oA){for(;oA.length;){let hA=oA.pop();oA.pop()(hA)}}function RVe(oA,hA,jA,ae,Ue,qe){let $e=mZ(hA,jA);Ue=xp(ae,Ue),Zn([],[oA],(Ke)=>{Ke=Ke[0];let nt=`constructor ${Ke.name}`;if(Ke.registeredClass.constructor_body===void 0&&(Ke.registeredClass.constructor_body=[]),Ke.registeredClass.constructor_body[hA-1]!==void 0)throw new as(`Cannot register multiple constructors with identical number of parameters (${hA-1}) for class '${Ke.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return Ke.registeredClass.constructor_body[hA-1]=function(){WL(`Cannot construct ${Ke.name} due to unbound types`,$e)},Zn([],$e,(qt)=>(Ke.registeredClass.constructor_body[hA-1]=function(){arguments.length!==hA-1&&Ai(`${nt} called with ${arguments.length} arguments, expected ${hA-1}`);let ui=[],Wr=Array(hA);Wr[0]=qe;for(let bn=1;bn<hA;++bn)Wr[bn]=qt[bn].toWireType(ui,arguments[bn-1]);let Ui=Ue.apply(null,Wr);return cmA(ui),qt[0].fromWireType(Ui)},[])),[]})}function NVe(oA,hA){if(!(oA instanceof Function))throw TypeError(`new_ called with constructor type ${typeof oA} which is not a function`);let jA=zn(oA.name||"unknownFunctionName",()=>{});jA.prototype=oA.prototype;let ae=new jA,Ue=oA.apply(ae,hA);return Ue instanceof Object?Ue:ae}function CmA(oA,hA,jA,ae,Ue){let qe=hA.length;qe<2&&Ai("argTypes array size mismatch! Must at least get return value and 'this' types!");let $e=hA[1]!==null&&jA!==null,Ke=!1;for(var nt=1;nt<hA.length;++nt)if(hA[nt]!==null&&hA[nt].destructorFunction===void 0){Ke=!0;break}let qt=hA[0].name!=="void",ui="",Wr="";for(var nt=0;nt<qe-2;++nt)ui+=`${nt!==0?", ":""}arg${nt}`,Wr+=`${nt!==0?", ":""}arg${nt}Wired`;let Ui=`return function ${Du(oA)}(${ui}) {
if (arguments.length !== ${qe-2}) {
throwBindingError('function ${oA} called with ' + arguments.length + ' arguments, expected ${qe-2} args!');
}
`;Ke&&(Ui+=`var destructors = [];
`);let bn=Ke?"destructors":"null",SB=["throwBindingError","invoker","fn","runDestructors","retType","classParam"],Vc=[Ai,ae,Ue,cmA,hA[0],hA[1]];$e&&(Ui+=`var thisWired = classParam.toWireType(${bn}, this);
`);for(var nt=0;nt<qe-2;++nt)Ui+=`var arg${nt}Wired = argType${nt}.toWireType(${bn}, arg${nt}); // ${hA[nt+2].name}
`,SB.push(`argType${nt}`),Vc.push(hA[nt+2]);if($e&&(Wr=`thisWired${Wr.length>0?", ":""}${Wr}`),Ui+=`${qt?"var rv = ":""}invoker(fn${Wr.length>0?", ":""}${Wr});
`,Ke)Ui+=`runDestructors(destructors);
`;else for(var nt=$e?1:2;nt<hA.length;++nt){let Zh=nt===1?"thisWired":`arg${nt-2}Wired`;hA[nt].destructorFunction!==null&&(Ui+=`${Zh}_dtor(${Zh}); // ${hA[nt].name}
`,SB.push(`${Zh}_dtor`),Vc.push(hA[nt].destructorFunction))}return qt&&(Ui+=`var ret = retType.fromWireType(rv);
return ret;
`),Ui+=`}
`,SB.push(Ui),NVe(Function,SB).apply(null,Vc)}function GVe(oA,hA,jA,ae,Ue,qe,$e,Ke){let nt=mZ(jA,ae);hA=Te(hA),qe=xp(Ue,qe),Zn([],[oA],(qt)=>{qt=qt[0];let ui=`${qt.name}.${hA}`;Ke&&qt.registeredClass.pureVirtualFunctions.push(hA);function Wr(){WL(`Cannot call ${ui} due to unbound types`,nt)}let Ui=qt.registeredClass.instancePrototype,bn=Ui[hA];return bn===void 0||bn.overloadTable===void 0&&bn.className!==qt.name&&bn.argCount===jA-2?(Wr.argCount=jA-2,Wr.className=qt.name,Ui[hA]=Wr):(Yd(Ui,hA,ui),Ui[hA].overloadTable[jA-2]=Wr),Zn([],nt,(SB)=>{let Vc=CmA(ui,SB,qt,qe,$e);return Ui[hA].overloadTable===void 0?(Vc.argCount=jA-2,Ui[hA]=Vc):Ui[hA].overloadTable[jA-2]=Vc,[]}),[]})}let DZ=[],zc=[{},{value:void 0},{value:null},{value:!0},{value:!1}];function BmA(oA){oA>4&&--zc[oA].refcount===0&&(zc[oA]=void 0,DZ.push(oA))}function UVe(){let oA=0;for(let hA=5;hA<zc.length;++hA)zc[hA]!==void 0&&++oA;return oA}function MVe(){for(let oA=5;oA<zc.length;++oA)if(zc[oA]!==void 0)return zc[oA];return null}function TVe(){t.count_emval_handles=UVe,t.get_first_emval=MVe}function yZ(oA){switch(oA){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:{let hA=DZ.length?DZ.pop():zc.length;return zc[hA]={refcount:1,value:oA},hA}}}function YVe(oA,hA){hA=Te(hA),nn(oA,{name:hA,fromWireType(jA){let ae=zc[jA].value;return BmA(jA),ae},toWireType(jA,ae){return yZ(ae)},argPackAdvance:8,readValueFromPointer:PL,destructorFunction:null})}function q2(oA){if(oA===null)return"null";let hA=typeof oA;return hA==="object"||hA==="array"||hA==="function"?oA.toString():`${oA}`}function HVe(oA,hA){switch(hA){case 2:return function(jA){return this.fromWireType(qA[jA>>2])};case 3:return function(jA){return this.fromWireType(IA[jA>>3])};default:throw TypeError(`Unknown float type: ${oA}`)}}function KVe(oA,hA,jA){let ae=Ye(jA);hA=Te(hA),nn(oA,{name:hA,fromWireType(Ue){return Ue},toWireType(Ue,qe){if(typeof qe!="number"&&typeof qe!="boolean")throw TypeError(`Cannot convert "${q2(qe)}" to ${this.name}`);return qe},argPackAdvance:8,readValueFromPointer:HVe(hA,ae),destructorFunction:null})}function JVe(oA,hA,jA,ae,Ue,qe){let $e=mZ(hA,jA);oA=Te(oA),Ue=xp(ae,Ue),_2(oA,()=>{WL(`Cannot call ${oA} due to unbound types`,$e)},hA-1),Zn([],$e,(Ke)=>{let nt=[Ke[0],null].concat(Ke.slice(1));return smA(oA,CmA(oA,nt,null,Ue,qe),hA-1),[]})}function OVe(oA,hA,jA){switch(hA){case 0:return jA?function(ae){return gA[ae]}:function(ae){return aA[ae]};case 1:return jA?function(ae){return NA[ae>>1]}:function(ae){return DA[ae>>1]};case 2:return jA?function(ae){return KA[ae>>2]}:function(ae){return TA[ae>>2]};default:throw TypeError(`Unknown integer type: ${oA}`)}}function PVe(oA,hA,jA,ae,Ue){hA=Te(hA),Ue===-1&&(Ue=4294967295);let qe=Ye(jA),$e=function(nt){return nt};if(ae===0){let nt=32-8*jA;$e=function(qt){return qt<<nt>>>nt}}let Ke=hA.indexOf("unsigned")!=-1;nn(oA,{name:hA,fromWireType:$e,toWireType(nt,qt){if(typeof qt!="number"&&typeof qt!="boolean")throw TypeError(`Cannot convert "${q2(qt)}" to ${this.name}`);if(qt<ae||qt>Ue)throw TypeError(`Passing a number "${q2(qt)}" from JS side to C/C++ side to an argument of type "${hA}", which is outside the valid range [${ae}, ${Ue}]!`);return Ke?qt>>>0:qt|0},argPackAdvance:8,readValueFromPointer:OVe(hA,qe,ae!==0),destructorFunction:null})}function _Ve(oA,hA,jA){let ae=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][hA];function Ue(qe){qe=qe>>2;let $e=TA,Ke=$e[qe],nt=$e[qe+1];return new ae($e.buffer,nt,Ke)}jA=Te(jA),nn(oA,{name:jA,fromWireType:Ue,argPackAdvance:8,readValueFromPointer:Ue},{ignoreDuplicateRegistrations:!0})}function WVe(oA,hA){hA=Te(hA);let jA=hA==="std::string";nn(oA,{name:hA,fromWireType(ae){let Ue=TA[ae>>2],qe;if(jA){let Ke=aA[ae+4+Ue],nt=0;Ke!=0&&(nt=Ke,aA[ae+4+Ue]=0);let qt=ae+4;for(var $e=0;$e<=Ue;++$e){let ui=ae+4+$e;if(aA[ui]==0){let Wr=K(qt);qe===void 0?qe=Wr:(qe+="\x00",qe+=Wr),qt=ui+1}}nt!=0&&(aA[ae+4+Ue]=nt)}else{let Ke=Array(Ue);for(var $e=0;$e<Ue;++$e)Ke[$e]=String.fromCharCode(aA[ae+4+$e]);qe=Ke.join("")}return Zc(ae),qe},toWireType(ae,Ue){Object.prototype.toString.call(Ue)==="[object ArrayBuffer]"&&(Ue=new Uint8Array(Ue));let qe,$e=typeof Ue=="string";$e||Ue instanceof Uint8Array||Ue instanceof Uint8ClampedArray||Ue instanceof Int8Array||Ai("Cannot pass non-string to std::string"),jA&&$e?qe=function(){return z(Ue)}:qe=function(){return Ue.length};let Ke=qe(),nt=O5(4+Ke+1);if(TA[nt>>2]=Ke,jA&&$e)P(Ue,nt+4,Ke+1);else if($e)for(var qt=0;qt<Ke;++qt){let ui=Ue.charCodeAt(qt);ui>255&&(Zc(nt),Ai("String has UTF-16 code units that do not fit in 8 bits")),aA[nt+4+qt]=ui}else for(var qt=0;qt<Ke;++qt)aA[nt+4+qt]=Ue[qt];return ae!==null&&ae.push(Zc,nt),nt},argPackAdvance:8,readValueFromPointer:PL,destructorFunction(ae){Zc(ae)}})}function qVe(oA,hA,jA){jA=Te(jA);let ae,Ue;hA===2?(ae=function(){return DA},Ue=1):hA===4&&(ae=function(){return TA},Ue=2),nn(oA,{name:jA,fromWireType(qe){let $e=ae(),Ke=TA[qe>>2],nt=Array(Ke),qt=qe+4>>Ue;for(let ui=0;ui<Ke;++ui)nt[ui]=String.fromCharCode($e[qt+ui]);return Zc(qe),nt.join("")},toWireType(qe,$e){let Ke=$e.length,nt=O5(4+Ke*hA),qt=ae();TA[nt>>2]=Ke;let ui=nt+4>>Ue;for(let Wr=0;Wr<Ke;++Wr)qt[ui+Wr]=$e.charCodeAt(Wr);return qe!==null&&qe.push(Zc,nt),nt},argPackAdvance:8,readValueFromPointer:PL,destructorFunction(qe){Zc(qe)}})}function zVe(oA,hA){hA=Te(hA),nn(oA,{isVoid:!0,name:hA,argPackAdvance:0,fromWireType(){},toWireType(jA,ae){}})}function ZVe(oA){oA>4&&(zc[oA].refcount+=1)}function VVe(oA,hA){let jA=LA[oA];return jA===void 0&&Ai(`${hA} has unknown type ${gmA(oA)}`),jA}function jVe(oA,hA){oA=VVe(oA,"_emval_take_value");let jA=oA.readValueFromPointer(hA);return yZ(jA)}function XVe(){ue()}function EmA(){return gA.length}function $Ve(oA){try{return x.grow(oA-lA.byteLength+65535>>16),bA(x.buffer),1}catch(hA){console.error(`emscripten_realloc_buffer: Attempted to grow heap from ${lA.byteLength} bytes to ${oA} bytes, but got error: ${hA}`)}}function Aje(oA){let hA=EmA();L(oA>hA);let jA=65536,ae=2147483648-jA;if(oA>ae)return m(`Cannot enlarge memory, asked to go up to ${oA} bytes, but the limit is ${ae} bytes!`),!1;let Ue=Math.max(hA,16777216);for(;Ue<oA;)Ue<=536870912?Ue=tA(2*Ue,jA):Ue=Math.min(tA((3*Ue+2147483648)/4,jA),ae),Ue===hA&&f(`Cannot ask for more memory since we reached the practical limit in browsers (which is just below 2GB), so the request would have failed. Requesting only ${gA.length}`);return $Ve(Ue)?!0:(m(`Failed to grow the heap from ${hA} bytes to ${Ue} bytes, not enough memory!`),!1)}function eje(oA){yje(oA)}function tje(oA){return Math.log(oA)/Math.LN2}function rje(oA){return tje(oA)}function ije(){ue("trap!")}function uje(oA,hA,jA){aA.set(aA.subarray(hA,hA+jA),oA)}Ct(),as=t.BindingError=an(Error,"BindingError"),Ku=t.InternalError=an(Error,"InternalError"),ga(),SVe(),vVe(),lmA=t.UnboundTypeError=an(Error,"UnboundTypeError"),TVe();function aje(oA){dA(oA,"i")}function nje(oA){dA(oA,"ii")}function oje(oA){dA(oA,"iidiiii")}function sje(oA){dA(oA,"iii")}function lje(oA){dA(oA,"iiii")}function gje(oA){dA(oA,"iiiii")}function cje(oA){dA(oA,"jiji")}function Cje(oA){dA(oA,"v")}function Bje(oA){dA(oA,"vi")}function Eje(oA){dA(oA,"vii")}function dje(oA){dA(oA,"viii")}function Ije(oA){dA(oA,"viiii")}function hje(oA){dA(oA,"viiiii")}function Qje(oA){dA(oA,"viiiiii")}let pje={};var wZ={___assert_fail:Lt,___cxa_allocate_exception:Je,___cxa_throw:Pt,___lock:dt,___unlock:Yt,___wasi_fd_close:Xt,___wasi_fd_seek:or,___wasi_fd_write:et,__embind_register_bool:Ud,__embind_register_class:LVe,__embind_register_class_constructor:RVe,__embind_register_class_function:GVe,__embind_register_emval:YVe,__embind_register_float:KVe,__embind_register_function:JVe,__embind_register_integer:PVe,__embind_register_memory_view:_Ve,__embind_register_std_string:WVe,__embind_register_std_wstring:qVe,__embind_register_void:zVe,__emval_decref:BmA,__emval_incref:ZVe,__emval_take_value:jVe,__memory_base:1024,__table_base:0,_abort:XVe,_emscripten_get_heap_size:EmA,_emscripten_memcpy_big:uje,_emscripten_resize_heap:Aje,_exit:eje,_llvm_log2_f64:rje,_llvm_trap:ije,abortStackOverflow:HA,memory:x,nullFunc_i:aje,nullFunc_ii:nje,nullFunc_iidiiii:oje,nullFunc_iii:sje,nullFunc_iiii:lje,nullFunc_iiiii:gje,nullFunc_jiji:cje,nullFunc_v:Cje,nullFunc_vi:Bje,nullFunc_vii:Eje,nullFunc_viii:dje,nullFunc_viiii:Ije,nullFunc_viiiii:hje,nullFunc_viiiiii:Qje,setTempRet0:k,table:F};let dmA=t.asm(pje,wZ,lA);t.asm=dmA;var bZ=t.__ZSt18uncaught_exceptionv=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.__ZSt18uncaught_exceptionv.apply(null,arguments)};let NQr=t.___cxa_demangle=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.___cxa_demangle.apply(null,arguments)},GQr=t.___embind_register_native_and_builtin_types=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.___embind_register_native_and_builtin_types.apply(null,arguments)};var fje=t.___getTypeName=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.___getTypeName.apply(null,arguments)};let UQr=t._fflush=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm._fflush.apply(null,arguments)};var Zc=t._free=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm._free.apply(null,arguments)},O5=t._malloc=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm._malloc.apply(null,arguments)};let MQr=t.establishStackSpace=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.establishStackSpace.apply(null,arguments)};var mje=t.globalCtors=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.globalCtors.apply(null,arguments)},vZ=t.stackAlloc=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.stackAlloc.apply(null,arguments)},ImA=t.stackRestore=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.stackRestore.apply(null,arguments)},kZ=t.stackSave=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.stackSave.apply(null,arguments)};let TQr=t.dynCall_i=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_i.apply(null,arguments)},YQr=t.dynCall_ii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_ii.apply(null,arguments)},HQr=t.dynCall_iidiiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_iidiiii.apply(null,arguments)},KQr=t.dynCall_iii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_iii.apply(null,arguments)},JQr=t.dynCall_iiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_iiii.apply(null,arguments)},OQr=t.dynCall_iiiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_iiiii.apply(null,arguments)},PQr=t.dynCall_jiji=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_jiji.apply(null,arguments)},_Qr=t.dynCall_v=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_v.apply(null,arguments)},WQr=t.dynCall_vi=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_vi.apply(null,arguments)},qQr=t.dynCall_vii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_vii.apply(null,arguments)},zQr=t.dynCall_viii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_viii.apply(null,arguments)},ZQr=t.dynCall_viiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_viiii.apply(null,arguments)},VQr=t.dynCall_viiiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_viiiii.apply(null,arguments)},jQr=t.dynCall_viiiiii=function(){return L(rA,"you need to wait for the runtime to be ready (e.g. wait for main() to be called)"),L(!JA,"the runtime was exited (use NO_EXIT_RUNTIME to keep it alive after main() exits)"),t.asm.dynCall_viiiiii.apply(null,arguments)};t.asm=dmA,Object.getOwnPropertyDescriptor(t,"intArrayFromString")||(t.intArrayFromString=function(){ue("'intArrayFromString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"intArrayToString")||(t.intArrayToString=function(){ue("'intArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),t.ccall=U,t.cwrap=Y,Object.getOwnPropertyDescriptor(t,"setValue")||(t.setValue=function(){ue("'setValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getValue")||(t.getValue=function(){ue("'getValue' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"allocate")||(t.allocate=function(){ue("'allocate' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getMemory")||(t.getMemory=function(){ue("'getMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"AsciiToString")||(t.AsciiToString=function(){ue("'AsciiToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stringToAscii")||(t.stringToAscii=function(){ue("'stringToAscii' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"UTF8ArrayToString")||(t.UTF8ArrayToString=function(){ue("'UTF8ArrayToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"UTF8ToString")||(t.UTF8ToString=function(){ue("'UTF8ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stringToUTF8Array")||(t.stringToUTF8Array=function(){ue("'stringToUTF8Array' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),t.stringToUTF8=P,Object.getOwnPropertyDescriptor(t,"lengthBytesUTF8")||(t.lengthBytesUTF8=function(){ue("'lengthBytesUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"UTF16ToString")||(t.UTF16ToString=function(){ue("'UTF16ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stringToUTF16")||(t.stringToUTF16=function(){ue("'stringToUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"lengthBytesUTF16")||(t.lengthBytesUTF16=function(){ue("'lengthBytesUTF16' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"UTF32ToString")||(t.UTF32ToString=function(){ue("'UTF32ToString' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stringToUTF32")||(t.stringToUTF32=function(){ue("'stringToUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"lengthBytesUTF32")||(t.lengthBytesUTF32=function(){ue("'lengthBytesUTF32' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"allocateUTF8")||(t.allocateUTF8=function(){ue("'allocateUTF8' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stackTrace")||(t.stackTrace=function(){ue("'stackTrace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addOnPreRun")||(t.addOnPreRun=function(){ue("'addOnPreRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addOnInit")||(t.addOnInit=function(){ue("'addOnInit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addOnPreMain")||(t.addOnPreMain=function(){ue("'addOnPreMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addOnExit")||(t.addOnExit=function(){ue("'addOnExit' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addOnPostRun")||(t.addOnPostRun=function(){ue("'addOnPostRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"writeStringToMemory")||(t.writeStringToMemory=function(){ue("'writeStringToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"writeArrayToMemory")||(t.writeArrayToMemory=function(){ue("'writeArrayToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"writeAsciiToMemory")||(t.writeAsciiToMemory=function(){ue("'writeAsciiToMemory' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addRunDependency")||(t.addRunDependency=function(){ue("'addRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"removeRunDependency")||(t.removeRunDependency=function(){ue("'removeRunDependency' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"ENV")||(t.ENV=function(){ue("'ENV' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"FS")||(t.FS=function(){ue("'FS' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"FS_createFolder")||(t.FS_createFolder=function(){ue("'FS_createFolder' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createPath")||(t.FS_createPath=function(){ue("'FS_createPath' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createDataFile")||(t.FS_createDataFile=function(){ue("'FS_createDataFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createPreloadedFile")||(t.FS_createPreloadedFile=function(){ue("'FS_createPreloadedFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createLazyFile")||(t.FS_createLazyFile=function(){ue("'FS_createLazyFile' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createLink")||(t.FS_createLink=function(){ue("'FS_createLink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_createDevice")||(t.FS_createDevice=function(){ue("'FS_createDevice' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"FS_unlink")||(t.FS_unlink=function(){ue("'FS_unlink' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}),Object.getOwnPropertyDescriptor(t,"GL")||(t.GL=function(){ue("'GL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"dynamicAlloc")||(t.dynamicAlloc=function(){ue("'dynamicAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"loadDynamicLibrary")||(t.loadDynamicLibrary=function(){ue("'loadDynamicLibrary' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"loadWebAssemblyModule")||(t.loadWebAssemblyModule=function(){ue("'loadWebAssemblyModule' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getLEB")||(t.getLEB=function(){ue("'getLEB' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getFunctionTables")||(t.getFunctionTables=function(){ue("'getFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"alignFunctionTables")||(t.alignFunctionTables=function(){ue("'alignFunctionTables' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"registerFunctions")||(t.registerFunctions=function(){ue("'registerFunctions' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"addFunction")||(t.addFunction=function(){ue("'addFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"removeFunction")||(t.removeFunction=function(){ue("'removeFunction' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getFuncWrapper")||(t.getFuncWrapper=function(){ue("'getFuncWrapper' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"prettyPrint")||(t.prettyPrint=function(){ue("'prettyPrint' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"makeBigInt")||(t.makeBigInt=function(){ue("'makeBigInt' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"dynCall")||(t.dynCall=function(){ue("'dynCall' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getCompilerSetting")||(t.getCompilerSetting=function(){ue("'getCompilerSetting' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stackSave")||(t.stackSave=function(){ue("'stackSave' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stackRestore")||(t.stackRestore=function(){ue("'stackRestore' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"stackAlloc")||(t.stackAlloc=function(){ue("'stackAlloc' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"establishStackSpace")||(t.establishStackSpace=function(){ue("'establishStackSpace' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"print")||(t.print=function(){ue("'print' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"printErr")||(t.printErr=function(){ue("'printErr' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"getTempRet0")||(t.getTempRet0=function(){ue("'getTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"setTempRet0")||(t.setTempRet0=function(){ue("'setTempRet0' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"callMain")||(t.callMain=function(){ue("'callMain' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"abort")||(t.abort=function(){ue("'abort' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"Pointer_stringify")||(t.Pointer_stringify=function(){ue("'Pointer_stringify' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),Object.getOwnPropertyDescriptor(t,"warnOnce")||(t.warnOnce=function(){ue("'warnOnce' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}),t.writeStackCookie=vA,t.checkStackCookie=FA,t.abortStackOverflow=HA,Object.getOwnPropertyDescriptor(t,"ALLOC_NORMAL")||Object.defineProperty(t,"ALLOC_NORMAL",{configurable:!0,get(){ue("'ALLOC_NORMAL' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(t,"ALLOC_STACK")||Object.defineProperty(t,"ALLOC_STACK",{configurable:!0,get(){ue("'ALLOC_STACK' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(t,"ALLOC_DYNAMIC")||Object.defineProperty(t,"ALLOC_DYNAMIC",{configurable:!0,get(){ue("'ALLOC_DYNAMIC' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(t,"ALLOC_NONE")||Object.defineProperty(t,"ALLOC_NONE",{configurable:!0,get(){ue("'ALLOC_NONE' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ)")}}),Object.getOwnPropertyDescriptor(t,"calledRun")||Object.defineProperty(t,"calledRun",{configurable:!0,get(){ue("'calledRun' was not exported. add it to EXTRA_EXPORTED_RUNTIME_METHODS (see the FAQ). Alternatively, forcing filesystem support (-s FORCE_FILESYSTEM=1) can export this for you")}});let P5;t.then=function(oA){if(P5)oA(t);else{let hA=t.onRuntimeInitialized;t.onRuntimeInitialized=function(){hA&&hA(),oA(t)}}return t};function hmA(oA){this.name="ExitStatus",this.message=`Program terminated with exit(${oA})`,this.status=oA}Pe=function oA(){P5||FZ(),P5||(Pe=oA)};function FZ(oA){if(oA=oA||u,oe>0||(vA(),_A(),oe>0))return;function hA(){P5||(P5=!0,!T&&(ZA(),WA(),t.onRuntimeInitialized&&t.onRuntimeInitialized(),L(!t._main,'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]'),zA()))}t.setStatus?(t.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>{t.setStatus("")},1),hA()},1)):hA(),FA()}t.run=FZ;function Dje(){let oA=p,hA=m,jA=!1;p=m=function(ae){jA=!0};try{let ae=Qi;ae&&ae(0)}catch{}p=oA,m=hA,jA&&(f("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc."),f("(this may also be due to not including full filesystem support - try building with -s FORCE_FILESYSTEM=1)"))}function yje(oA,hA){Dje(),!(hA&&S&&oA===0)&&(S?hA||m(`program exited (with status: ${oA}), but EXIT_RUNTIME is not set, so halting execution but not exiting the runtime or preventing further async execution (build with EXIT_RUNTIME=1, if you want a true shutdown)`):(T=!0,R=oA,te(),t.onExit&&t.onExit(oA)),n(oA,new hmA(oA)))}if(t.preInit)for(typeof t.preInit=="function"&&(t.preInit=[t.preInit]);t.preInit.length>0;)t.preInit.pop()();return S=!0,FZ(),t}}(),eXt=AXt;iXt=(()=>{let A=new Uint8Array(128);for(let e=0;e<64;e++)A[e<26?e+65:e<52?e+71:e<62?e-4:e*4-205]=e;return(e)=>{let t=e.length,r=new Uint8Array((t-(e[t-1]=="=")-(e[t-2]=="="))*3/4|0);for(let i=0,u=0;i<t;){let a=A[e.charCodeAt(i++)],n=A[e.charCodeAt(i++)],o=A[e.charCodeAt(i++)],s=A[e.charCodeAt(i++)];r[u++]=a<<2|n>>4,r[u++]=n<<4|o>>2,r[u++]=o<<6|s}return r}})(),uXt=iXt("AGFzbQEAAAAB+gIuYAJ/fwF/YAJ/fwBgAX8Bf2ABfwBgA39/fwF/YAR/f39/AX9gA39/fwBgBH9/f38AYAV/f39/fwF/YAZ/f39/f38Bf2AFf39/f38AYAZ/f39/f38AYAh/f39/f39/fwBgB39/f39/f38Bf2AIf39/f39/f38Bf2AAAX9gBn9/f319fwBgBX9/f39/AX1gB39/f39/f38AYAAAYAJ8fwF8YAh/f399fX19fwBgCn9/f319fX19fX8AYAl/f319fX19fX8AYAF/AXxgBH9/f38BfWACf30Bf2AEf39/fQF/YAZ/f399fX0Bf2AEfH9/fwF8YAJ/fAF8YA5/f39/f39/f39/f39/fwF/YAV/f39/fwF8YAZ/f39/f38BfWADf39/AX1gCn9/f39/f39/f38AYAt/f39/f39/f39/fwBgA399fwF/YAJ/fwF+YAN/fn8AYAV8fHx8fAF8YAJ/fQBgA399fQBgAXwBfGACfn8Bf2AGf3x/f39/AX8DkQ2PDRMABAAABAIBAQYDAQIIAgMDAwMCAgACBAQDBA8BAQIDBAIEAQEAAAEAAAEAAwMDAwAFAgQCAQMDAAAEAwQDAwMDCAAAAAICAgUFCA4ECQkFBQwACwAMAAsACQkICA0JCwwDBAQFAAUICQUFCQYJCA0JCQsMAQIDBgcDAgECAA8DBQgAAQQEAwEBAQIBAQIBAhgFAQAGBQAAAgUABgADAwMDAwMDAwAGAgICBgYCAgAAAAIKAQIBAgABAQcAAQMCAgAGAwAKAQMDAgcEAgICGQICEQ8DBAAaAgQAAAUBAwMCAAEEAQEGAQEBAwICAAEEAgICCAQABwcOAQEBAAQDAwMACAQEAAgAAAUDCAIDBwYAAAYEAwAHAAAEAwEAAAMDAgQIBAAEAQIHAQMPAwICAAIBAwQFBBscBAQCAAMCBAQFDQQdBwEeFAEEAQEBAQEBAQEBAQABAQEBAwMDAwMDAQEBAwAABAEAAwEAAAICAAEDAgYBCgoKAgECAAYLAgEGAQgCAgEBAQIAAQEBAAABAhEEBgIEAAEHAQEDAwMFAAUBAQYAAgAHAQIEAAABAAADBAYAAgAABAYCBwACAAQBAgABAgIBAQEDBQECAAEFAAMGAwEFAwYGBQAAAwEQEBUWBwcBAwEBAAEDBgMBAwEBAQECAwIGCgwAAQICAQQIDgkFDAUMCQgCAgIFBAQEBAQBBAQAAAQAAAAAAAADAAQEAAAEBAAABAUCAAARAAAAAB8EAQADAQYBAQkBCggAIAQEIQIBAQIEAgYGAAADAAAABAQFAAIABQMEAQMABwYBBQAEAgABAgMAAAIEAAUFBAACAAADAQMDAAIABAQCAAECAAAEAwMEBwoEBgUEAQEFBQQBACICAAAAAAACAAQAAAQEAAAEAQQABQAEBgECBgICAwAEAgIGBgECAQIFAAICAwMBBgIAAgIAAwYDBQoEAQcSBSMJAQAKBQADAwQEBgAEBAcACgUHJA4AAAAEBAQABAAEAAAAAAQEBAAABAAAAAAEAAUJBAQFCgIAAAQEAQABBAAAAAQAAAEAAQAGAQEFAwEACAgBAwQBBgYGAQEBAQEBAQEBAQQADQEDBgEDBQYGAQsBBwEBAwAJAwUCAQMDAwYGBgEBAgYGAwECAwIBAAsNBgYLAwAHAAQEAgMAAAAAAAIDAAMABgMGBwADAAADAAcAAwABBgABAQQAAAAAAAACBAQGAgEBAAQEBgEBAQYAAQABAAUBAQMCAQYEAAQCBgAEBAAGAQMBAAAABAAAAAAAAAAAAAAEBAQAAAAAAQcAAgACBAQlAQYBBwYBAAIDBQEBAAAFBQADAQYBAwcGBgMGAgIFBQYABAQEBgEHAQEBBwMABwAAAAIDAAQCCgQGAAMDAAEABQEEAwEDASYnAQoGAQcAAAAEAgQBAAIACQMEAAAHAQoABQIBAwEABwUCAQMEBgEBAgMBAAEBAQMBAQcDBQIBAgIFAQECAAsBBQIBAgIFAQECAQoDBwcBBgICBwcGBQUDAgEDAQEGBgEGBgoKCgoAAAIABAUFBQUBAwcCAAMABAQAAgMAAAAABAEGBAUEBgEBAQEBAAAAAQAAAAAAAAUDAQQNAQAEBhIGAQUDAgALAgAAAgAABQEABQACDAcFAwAABgUFBQUIAgMBAwEGCQkBAwUCAAICCQMDBQQBAggEBAYABAECAAEAAQAAAAAAAQIIAwEABAEAAQQAAAEEACgCBAUAAgAABQAFAgcCAgAABgAAAAAAAAApAAsIBAUAAAgABQgIAAUFBQUFBQAFBQUFBQMFBQACAAQEAQAACAQEBAQHBQICAQACAwQABAMBAwACDAUIAQEFAAUACQUDAgkAAAACCQgEBQECAAAKCggAAAQAAAUBAgQCAQIGAQIEAgcBAAIBAAIAAAMBAgACAQIAAAEABQQFCgUACQALAAYEBAUHBAMFAAQACQEBAwsGBwsBBgkBAQMBAQYCBwECCwASAQIBAQIBBQEACQEBAgQCAQMFAAIGCAcOAAQGBgQCBAcEAAAABAQFAQUFAAAAAwQBBwQEAwsBBAMBAgAAAAAAKgEAAAAAAAUAAQEGBAYGAAYAAAIDAAEBAQEGCgYGBgYBAAAABgMGCgwBAAEBBgEBAQcCAAAEBAAFAAQGCgIAARMEBAQCKwcAAhQIBgIGLAotAQQAAgIDAAEAAw8EBwUKBAQLBgcCBAUGBAQEBAQFCAkJCQkIBgUGCAYFBgEGBAcBcAGCAYIBBQYBAZAIkAgGCAF/AUGQ2wQLB/MGJgZtZW1vcnkCAARmcmVlAOcMDmhiX2Jsb2JfY3JlYXRlAA0PaGJfYmxvYl9kZXN0cm95AA8GbWFsbG9jAOYMEmhiX2Jsb2JfZ2V0X2xlbmd0aAAUEGhiX2Jsb2JfZ2V0X2RhdGEAFRFoYl9mYWNlX2dldF9lbXB0eQAbDmhiX2ZhY2VfY3JlYXRlADkPaGJfZmFjZV9kZXN0cm95AD0WaGJfZmFjZV9yZWZlcmVuY2VfYmxvYgBFDWhiX3NldF9jcmVhdGUA0gEOaGJfc2V0X2Rlc3Ryb3kA0wEMaGJfc2V0X2NsZWFyAN0BCmhiX3NldF9hZGQA4QEKaGJfc2V0X2RlbADjAQxoYl9zZXRfdW5pb24A5gENaGJfc2V0X2ludmVydADpAR5oYl9zdWJzZXRfaW5wdXRfY3JlYXRlX29yX2ZhaWwAqgIXaGJfc3Vic2V0X2lucHV0X2Rlc3Ryb3kAqwIZaGJfc3Vic2V0X2lucHV0X3JlZmVyZW5jZQCsAhtoYl9zdWJzZXRfaW5wdXRfdW5pY29kZV9zZXQAFBloYl9zdWJzZXRfaW5wdXRfZ2x5cGhfc2V0AK0CE2hiX3N1YnNldF9pbnB1dF9zZXQArgIZaGJfc3Vic2V0X2lucHV0X2dldF9mbGFncwCvAhloYl9zdWJzZXRfaW5wdXRfc2V0X2ZsYWdzALACHWhiX3N1YnNldF9pbnB1dF9zZXRfdXNlcl9kYXRhAEEdaGJfc3Vic2V0X2lucHV0X2dldF91c2VyX2RhdGEAQh9oYl9zdWJz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DEGgI2okACAFC4QDAgZ9Bn8gACoCRCIFIAEoAgQiCMGylCEGIAAqAkAiAyABKAIAIgnBspQhAiAFIAEoAgwgCGrBspQhByADIAEoAgggCWrBspQhBSAAKgI8IgRDAAAAAFwEQCAFIAYgBJQiAyAEIAeUIgQgAyAEYBuSIQUgAiADIAQgAyAEXxuSIQILIAECfyAGjiIDi0MAAABPXQRAIAOoDAELQYCAgIB4CyIINgIEIAECfyACjiICi0MAAABPXQRAIAKoDAELQYCAgIB4CyIJNgIAIAECfyAHjSAIspMiAotDAAAAT10EQCACqAwBC0GAgICAeAsiCjYCDCABAn8gBY0gCbKTIgKLQwAAAE9dBEAgAqgMAQtBgICAgHgLIg02AgggACgCMCILIAAoAjQiDHIEQCABIApBACAMayAMIAAoAiBBAEgbIgprNgIMIAEgCCAKajYCBEEAIAtrIAsgACgCHEEASBshCCAALQAsQQFGBEAgASAIQX5tIAlqNgIACyABIAggDWo2AggLCzgBAX8CQCAAQaASRg0AAkACQCAALQAADgQAAgIBAgsgACABai0AAQ8LIABBAWogARCWASECCyACC7UBAQN/AkAgAiABLwAAIgNBCHQgA0EIdnJB//8DcU8EQAwBCyABIAIQlwEhAwJAIAMgASACQQFqEJcBIgJNBEAgASABLwAAIgRBCHQgBEEIdnJB//8DcRCXASACTw0BCwwBCyABLQACIQUgAS8AACEEIABBADYCCCAAIAIgA2s2AgQgACABQQJqIAUgBEEIdCAEQQh2ckH//wNxQQFqbGogA2o2AgAPCyAAQgA3AgAgAEEANgIIC5MCAgF+An8gAigCSCEFQaASIAIoAtgBIANBGGxqIAIoAtQBIANNGygCFCECIABCADcDACAAQQA6ABAgAEEANgIIIABBFGpBAEGMIBDUDBogASkCACEEIABCADcDoCAgAEEANgIIIAAgBDcDACAAQaggaiIDQQA2AgAgAEHEIGoQ4gMgAEGwImoiBkIANwMAIABCADcDqCIgASkCACEEIABCADcDqCIgAEEANgLAICAAQgA3A7ggIABBATsAtSAgAEEANgKwICADQgA3AwAgACAENwOgICAGQgA3AwAgAEGUImogBRDjAyAAQZwiaiACEOMDIABBADoAyCIgAEEANgK8IiAA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BWovAAAiAkEIdCACQQh2csEiBCABTARAIAAgA0EBdGovAAAiAEEIdCAAQQh2csEgASAEa2oPCyACIAUgAEEEayIFai8AACIGRgRAIAUgA0EBdGovAAAiAEEIdCAAQQh2csEPCyABIAZBCHQgBkEIdnLBIgFrsiAAIANBAXQiAmovAAAiAEEIdCAAQQh2csEgAiAFai8AACIAQQh0IABBCHZywSIAa7KUIAQgAWuylSAAspJDAAAAP5KOIgiLQwAAAE9dBEAgCKgPC0GAgICAeCEBDAILIABBAWohAAwACwALIAELmAIBA38CQCAALQAAQQFHDQAgACABKAIcQQAQiQVFDQAgACABKAIENgIEIABBDGoiAigCACIDQQBIBEAgAiADQX9zNgIACyACQQBBAUEAEI0FGiACIAEoAhBBARD8ARoCQCACKAIAQQBIDQAgASgCFCEDIAIgASgCECIENgIEIARBA3QiBEUNACACKAIIIAMgBBDSDBoLIABBGGoiAigCACIDQQBIBEAgAiADQX9zNgIACyACQQBBAUEAEIwFGiACIAEoAhxBARCOBRoCQCACKAIAQQBIDQAgASgCICEDIAIgASgCHCIENgIEIARByABsIgRFDQAgAigCCCADIAQQ0gwaCwsgAC0AAEEBRgRAIAAgAS0AJDoAJAsLCgAgAEEMahDeAQsZACAAEIAHIAAtAABBAUYEQCAAQQA6ACQLCy4BAX8jAEEQayIBJAAgAUF/NgIMIAAgAUEMahDsARogASgCDCABQRBqJABBf0YLDwAgACABEKIMIAAtACRHCwwAIABBDGogARCOAQsiACAALQAkQQFGBEAgACABIAIQnAxBAQ8LIAAgASACEJ0MCwwAIABBDGogARDkAQscACAALQAkQQFGBEAgACABEJsMDwsgACABEJoMCyEAIAAtACRBAUYEQCAAIAEgAhCdDBoPCyAAIAEgAhCcDAsPACAAQQxqIAFBDGoQ5wELYQEBfwJAIAAtACQiAiABLQAkRgRAIAIEQCAAIAEQpwwMAgsgACABEKgMDAELIAIEQCAAIAEQqQwMAQsgACABEKoMCyAALQAAQQFGBEAgACAALQAkIAEtACRyQQFxOgAkCwthAQF/AkAgAC0AJCICIAEtACRGBEAgAgRAIAAgARCqDAwCCyAAIAEQqQwMAQsgAgRAIAAg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IAMgAUECdGogAkEYdCACQYD+A3FBCHRyIAJBCHZBgP4DcSACQRh2cnI2AAALCz8BAX8jAEEQayIDJAAgAyABNgIMIAAoAiAgA0EMahCCASgCACIAQX9HBEAgAiAANgIACyADQRBqJAAgAEF/RwtjAQJ/IABCADcCACAAQgA3AhAgAEIANwIIIABBGGohAgNAIAFBC0cEQCACIAFBAnRqQX82AgAgAUEBaiEBDAELCyAAQgA3AlAgAEKAgICAgMIINwJIIABCADcCWCAAQgA3AmALOQECfyAAKAIMIgIgACgCCEEEdGohAwNAIAMgAiIARwRAIABBEGohAiAAKAIEIAFHDQELCyAAIANHC18BAn8gAEEEaiADEPcEIgMgATYCBCACKAIIIQEgAigCBCEEIAMgACgCACIFIAIoAgBqNgIAIAMgBCAFayICQQAgAiAETRsiAiABIAVrIgMgAiADSRs6AAggACABNgIACxYAIAAgACgCVCAAQdwAakEAIAEQoQYLTAECfyAAIAFBACABQQBKGyIBQQAQpAIiAgRAAkAgACgCBCIDIAFJBEAgACABEKUCDAELIAEgA08NACAAIAEQogYLIAAgATYCBAsgAgtCAQF/IABBoBIgACgCWCIDKAIIIAFBDGxqIAMoAgQgAU0bQaASIAAoApgBIAFBNGxqIAAoApQBIAFNGyABIAIQoQYLcAECfyAAQbQBahCjBiAAQagBahDzBCAAQZwBahDzBCAAQdwAaiICQTRqIgEoAgAEQCABQQAQsAYgASgCCBDnDAsgAUEANgIIIAFCADcCACACEJ8CGiAAQcgAahAtIABBCGoiAEE0ahDHASAAELYBGguhAgEEfwJAIAAoAgQiAiAAKAIATgRAIAJBAWohBAJAIAAoAgAiA0EASA0AQQEhBSADIARPDQAgAyECA0AgAiAESQRAIAIgAkEBdmpBCGohAgwBCwsCfyACQc2Zs+YATwRAIANBf3MhAkEADAELAn8gACgCCCEDIAJFBEAgAxDnDEEADAELIAMgAkEUbBDoDAsiAyACRXJFBEAgAiAAKAIAIgNNDQIgA0F/cyECQQAMAQsgACADNgIIQQELIQUgACACNgIACyAFRQ0BIAAoAgQhAgsgACACQQFqNgIEIAAoAgggAkEUbGoiACABKAIQNgIQIAAgASkCCDcCCCAAIAEp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AyADQcggajYCtCAgBhDuBCECIAYoAgBBAEgNBCACQgA3AgAgAkIANwIQIAJCADcCCCACQoCAgIBwNwIYIANBtCBqIAIQ7wRFDQQCfyAFIAAoAtQBTwRAQeDQAEIANwMAQdjQAEIANwMAQdDQAEIANwMAQdDQAAwBCyAAKALYASAFQRhsagshBCABIAIoAhAgACACQRRqENQEIgdBoBJGDQQgAigCFCECIANBADoAICAIQQBBjCAQ1AwaIANBADYCGCADIAI2AhQgAyAHNgIQIAMgA0EQajYCDCAEQQA2AhAgBEIANwIIIARCADcCACAEQaASNgIUIANBDGogBBDuBkUNBCAEIAcgBCgCECAAEOgENgIUIAVBAWohBSAAKAJYIQQMAAsACwJ/IAAoAtQBRQRAQeDQAEIANwMAQdjQAEIANwMAQdDQAEIANwMAQdDQAAwBCyAAKALYAQshAiABIAAoArgBIAAgAEG8AWoQ1AQiAUGgEkYNAiAAKAK8ASEEIANBADoA2CAgA0HcIGpBAEGMIBDUDBogA0EANgLQICADIAQ2AswgIAMgATYCyCAgAyADQcggajYCECACQQA2AhAgAkIANwIIIAJCADcCACACQaASNgIUIANBEGogAhDuBkUNAiACIAEgAigCECAAEOgENgIUDAMFAn8gAiAAKALUAU8EQEHg0ABCADcDAEHY0ABCADcDAEHQ0ABCADcDAEHQ0AAMAQsgACgC2AEgAkEYbGoLIgRCADcCACAEQaASNgIUIARBADYCECAEQgA3AgggAkEBaiECDAELAAsACyAAEPEECyADQfDAAGokACAAQQA2AuQBIAALawEDfyAAQQRrIQIDQAJAIAAoAgAiAUUEQCACKAIARQRAQaASDwsgAEEEaygCACEDQQFB6AEQ6gwiAQRAIAEgAxDqAhoLIAFBoBIgARshASAAKAIADQEgACABNgIACyABDwsgARDbAgwACwALoQIBBH8jAEEQayIEJAAjAEFAaiIBJAACQAJAIAAoApwQIgJBBGogAEH0C2ogAhsiAi0ADEEBRw0AIAFBwqrNugQ2AgggAiABQQhqIgNBABCFAUUNACABQcKqzboENgIIIAIgAxCkBSgCACIARQ0BIAAoAgAiAkUNASAAIAJBAWo2AgAMAQsgAUIANwMQIAFCADcDGCABQgA3AB0gAUIA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AiAAIAJBCGsQygMaDAILIAQgBCACIARBf0cbIAtBAXEbIQQgBSAIQQFqIgggAmpxIQIMAAsACyAFCxcAIAAgARDLAyAAQQA2AhwgAEEtNgIYC1wBAn8CfyAAKAIERQRAQdDQAEIANwMAQdjQAEEANgIAQdDQAAwBCyAAKAIACyAAKAIcIgJBAXVqIQEgACgCGCEAIAEgAkEBcQR/IAEoAgAgAGooAgAFIAALEQIAC6MCAQR/IAAtAAxBAUcEQEEADwsCQCABBEAgACgCGCABQQF2IAFqSw0BC0EMQSAgACgCECICIAEgASACSRtBAXRBCGoiAWdrQQAgARsiAXQiAxDmDCICRQRAIABBADoADEEADwsgAUEdTQRAIAJBACADENQMGgsgAEIANwIQIAAoAhghAyAAQX8gAXRBf3M2AhggAUEfSwR/Qf////8HBSABQQJ0QZDGAGooAgALIQQgACgCICEFIAAgAjYCICAAIAQ2AhwgACABQQF0OwEOAkAgA0UNACADQQFqIQNBACEBA0AgASADRg0BIAUgAUEMbGoiAigCBCIEQQFxBEAgACACIARBAnYgAkEIahDHAxoLIAFBAWohAQwACwALIAUQ5wwLQQELCwAgACABQS4Q+QwLVwEBfiACKQIAIQQgACABKQIANwIAIAAgASgCCDYCCCAAIAM2AhQgACAENwIMIABBDGohAQNAAkAgACgCBEUNACABIAAoAgAQzQMNACAAEMYDDAELCyAACzUBAX8gASAAKAIEIgJBAXVqIQEgACgCACEAIAEgAkEBcQR/IAEoAgAgAGooAgAFIAALEQIAC8YBAQN/IwBBEGsiAyQAIABBADYCGCAAQgA3AhAgACAAKAIANgIEIAAgACgCDDYCCCAAENADIANBADYCDAJAAkAgAEEwaiIBKAIEIgIgASgCAE4EQCABIAJBAWpBABDYAUUNASABKAIEIQILIAEgAkEBajYCBCABKAIIIAJBAnRqQQA2AgAMAQtB0NAAQQA2AgALIABCADcBSiAAQQE6AEggAEEANgJEIABCgYCAgBA3AjwgAEIANwFSIABCADcBWCADQRBqJAALNwEBfwJ/IAAoAhgiA0UgASgCAEEASHFFBEBBACADDQEaQQEgAi0ADA0BGgsgAEEBNgIYQQALGgt3AQN/IAAoAjggACgCNCICQQBHQQJ0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IghqIgJCADcCACACQQA2AhggAkIANwIQIAJCADcCCCACIAAoAgggCGoiCRDiBCACIAkoAhg2AhggAiAJKQIQNwIQIAAoAgggCGpBBGoQLSAEQQFqIQQMAAsACyAHKAIAEOcMIAYLIgIgAUVyRQRAIAEgACgCACICTQ0CIAJBf3MhAUEADAELIAAgAjYCCEEBCyEFIAAgATYCAAsgBQRAAkAgACgCBCIBIANJBEAgACgCBCEBA0AgASADSQRAIAAoAgggAUEcbGoiAUIANwIAIAFBADYCGCABQgA3AhAgAUIANwIIIAAgACgCBEEBaiIBNgIEDAELCwwBCyABIANNDQAgACADENcECyAAIAM2AgQLIAULTQAgACAAKAIEQQFqENEERQRAQeDQAEIANwMAQdjQAEIANwMAQdDQAEIANwMAQejQAEEANgIAQdDQAA8LIAAoAgggACgCBEEcbGpBHGsL/QEBBX8gAUIANwIAIAFBADYCGCABQgA3AhAgAUIANwIIIAAoAgAiAigCBCEDIAIoAgghBANAAkAgBEEBaiADSyIFDQAgAhCYASEEIAAoAgAhAiMAQRBrIgMkAAJAAkAgBEESRgRAIAEgAkEQaiIGEOMENgIQIAEgBhDjBDYCFCACQQA2AhQMAQsgBCACENwEIAIoAhQNAQsgAigCCCACKAIESw0AIAItABBBAXENACADQQA2AgggA0IANwMAIANB//8DNgIEIAEgBCACIAMQ2gQLIANBEGokACAAKAIAIgIoAggiBCACKAIEIgNLDQAgAi0AEEEBcUUNAQsLIAULPAEBf0GgEiEEAkAgAUUNACACKAIMIAAgAWoiACACKAIEa0kNACAAQaASIAIgACADKAIAENYEGyEECyAECy0AIAAQNyAAQThqEC0gAEHsAGoQ2AQgAEH4AGoQ2AQgACgCMBAPIABBADYCMAsNACAAIAEgAkEBEKUECw0AIAAgAUEcQRgQ7gwLJwAgACgCAARAIABBABDXBCAAKAIIEOcMCyAAQQA2AgggAEIANwIACw0AIAAgAUECQQUQ7wwLXgECfyAAQQRqIAMQJSIDIAE2AgQgAigCCCEBIAIoAgQhBCADIAAoAgAiBSACKAIAajYCACADIAQgBWsiAkEAIAIgBE0bIgIgASAFayIDIAIgA0kbOgAIIAAgATYCAAtNAAJAAkAg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CEEBCyEFIAAgATYCAAsgBQRAAkAgACgCBCIBIANJBEAgACgCBCEBA0AgASADSQRAIAAoAgggAUEFdGoiAUIANwIAIAFCADcCGCABQgA3AhAgAUIANwIIIAAgACgCBEEBaiIBNgIEDAELCwwBCyABIANNDQAgACADEPwECyAAIAM2AgQLIAVFBEBB6NAAQgA3AwBB4NAAQgA3AwBB2NAAQgA3AwBB0NAAQgA3AwBB0NAADwsgACgCCCAAKAIEQQV0akEgawuyAgEFfyABQgA3AgAgAUIANwIQIAFCADcCCCABQoCAgIBwNwIYIAAoAgAiAigCBCEDIAIoAgghBANAAkAgBEEBaiADSyIGDQAgAhCYASEDIAAoAgAhAiMAQRBrIgQkAAJAAkACQAJ/AkACQAJAIANBhQJrDgMEAQQACyADQRJGDQEgA0GmAkcNACACQRBqIQVBHAwCCyADIAIQ3AQgAigCFEUNAwwECyABIAJBEGoiBRDjBDYCEEEUCyABaiAFEOMENgIACyACQQA2AhQLIAIoAgggAigCBEsNACACLQAQQQFxDQAgBEEANgIIIARCADcDACAEQf//AzYCBCABIAMgAiAEENoECyAEQRBqJAAgACgCACICKAIIIgQgAigCBCIDSw0AIAItABBBAXFFDQELCyAGC6cCAQV/IAFCADcCACABQaASNgIUIAFBADYCECABQgA3AgggACgCACICKAIEIQMgAigCCCEEA0ACQCAEQQFqIANLIgUNACACEJgBIQMgACgCACECIwBBEGsiBCQAIARBADoADCAEQoCAgIDw/z83AgQCQAJAAkACQCADQRVLDQBBASADdEHAn8ABcQ0BIANBE0cNACABIAJBEGoQ+QM2AhAMAQsgA0GJAmsiBkEKTUEAQQEgBnRBvw5xGw0AIAMgAhDcBCACKAIURQ0BDAILIAJBADYCFAsgAigCCCACKAIESw0AIAItABBBAXENACABIAMgAiAEQQRqENoECyAEQRBqJAAgACgCACICKAIIIgQgAigCBCIDSw0AIAItABBBAXFFDQELCyAFCy4AIAAQNyAAQeAAahAtIABBxAFqEPMEIABB0AFqEPQEIAAoAjAQDyAAQQA2AjALDQAgACABQRhBFBDuDAsnACAAKAIABEAgAEEAEPwEIAAoAggQ5wwLIABBADYCCCAAQgA3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IAAvAAIiA0EIdCADQQh2ckH//wNxIgMgAS8AAiIEQQh0IARBCHZyQf//A3EiBEkNASADIARLDQBBfyECIAAvAAQiAEEIdCAAQQh2ckH//wNxIgAgAS8ABCIBQQh0IAFBCHZyQf//A3EiAUkNACAAIAFLIQILIAIPC0F/C4oBAQd/AkAgASgCDCIGIAEoAggiAmsiByABKAIEIgggASgCACIDayIEaiIFRQRADAELIAUQ5gwiAUUEQAwBCyADIAhHBEAgASADIAQQ0gwaCyACIAZHBEAgASAEaiACIAcQ0gwaCyAAQQA2AgggACAFNgIEIAAgATYCAA8LIABCADcCACAAQQA2AggLewEFfyACQf////8DcSIEIAAoAhxwIQIDQAJAIAAoAiAgAkEMbGoiBigCBCIHQQJxBH8gB0ECdiAERw0BIAYgARCQBkUNAUEAIAAoAiAgAkEMbGoiACgCBEEBcWsgAHEFQQALDwsgACgCGCADQQFqIgMgAmpxIQIMAAsAC6ICAQR/IAAtAAxBAUcEQEEADwsCQCABBEAgACgCGCABQQF2IAFqSw0BC0EMQSAgACgCECICIAEgASACSRtBAXRBCGoiAWdrQQAgARsiAXQiAxDmDCICRQRAIABBADoADEEADwsgAUEdTQRAIAJBACADENQMGgsgAEIANwIQIAAoAhghAyAAQX8gAXRBf3M2AhggAUEfSwR/Qf////8HBSABQQJ0QZDGAGooAgALIQQgACgCICEFIAAgAjYCICAAIAQ2AhwgACABQQF0OwEOAkAgA0UNACADQQFqIQNBACEBA0AgASADRg0BIAUgAUEMbGoiAigCBCIEQQFxBEAgACACIARBAnYgAkEIahCNAgsgAUEBaiEBDAALAAsgBRDnDAtBAQusAQEGfyAAKAIAIQIgASgCACEBIwBBIGsiACQAAkAgAigCBCACKAIAIgRrIgUgASgCBCABKAIAIgZrRw0AIAIoAgwiByABKAIMRw0AIAQgBiAFEKgDDQAgAigCECECIABBADYCHCAAIAdBDGwiAzYCGCAAIAI2AhQgASgCECEBIABBADYCECAAIAM2AgwgACABNgIIIABBFGogAEEIahCiAyEDCyAAQSBqJAAgAwuGAQEDfyMAQRBrIgIkACABQQFqQYgDTwRAIAIgAUGHA2s2AgwgAiAAKAIANgIIAn8gAEEEaiIBIAJBDGoiAyACQQhqIgRBABCAAQRAIABBKGogAxDaARogACAAKAIAQQFqNgIAIAQMAQsgASACQQxqEIIBCygCAEGHA2ohAQsgAkEQaiQAIAELpwQBBH8gACgCOCIDQaASRwRAAn8gACgC3AEhBEEAIQACQAJAAkACQCADLQAADgMAAQIDCyABRSABIARPcg0CIAFBAXQgA2pBAWsvAAAiAEEIdCAAQQh2ckH//wNxDAMLAn8gA0EBaiEGQQAgASAETw0AGgJ/AkACQCACRQ0AIAIoAgQiACABSw0AIAIoAgAhAwwBC0EBIQBBACIDIAFFDQEaCyABIABrIQEDfyAGIANBA2xqIgQtAAIiBSABTwR/IAIEQCACIAA2AgQgAiADNgIACyABIAQvAAAiAEEIdCAAQQh2ckH//wNxagUgA0EBaiEDIAEgBUEBaiIEayEBIAAgBGohAAwBCwsLCwwCCwJ/IANBAWohBkEAIAEgBE8NABoCfwJAAkAgAkUNACACKAIEIgAgAUsNACACKAIAIQMMAQtBASEAQQAiAyABRQ0BGgsgASAAayEBA38gBiADQQJ0aiIELwACIgVBCHQgBUEIdnJB//8DcSIFIAFPBH8gAgRAIAIgADYCBCACIAM2AgALIAEgBC8AACIAQQh0IABBCHZyQf//A3FqBSADQQFqIQMgASAFQQFqIgRrIQEgACAEaiEADAELCwsLIQALIAALDwtBACECAkACQAJAAkAgACgCsAEOAwABAgMLIAFBACABQeUBSRsPCyABQaUBSw0BIAFBAXRBoAxqLwEADwsgAUHWAEsNACABQQF0QfAOai8BACECCyACC1QBA38gACgCCEEEayEEIAAoAgQhAAN/IAAEfyAEIABBA3RqIgMgASADKAIAIgNBf3NqIgE2AgAgAEEBayEAIAEgAnIhAiADIQEMAQUgAkH/AUsLCwsLACAAIAFBARCkBgtRAQF/AkAgACgCBCICIAAoAgBOBEAgACACQQFqQQAQwQJFDQEgACgCBCECCyAAIAJBAWo2AgQgACgCCCACaiABKAIAOgAADwtB0NAAQQA6AAALDQAgACABQQFBARC/AgsLACAAIAFBARCZBguBAQECfyAAIAFBACABQQBKGyIBQQAQpAIiAwRAAkAgACgCBCICIAFJBEAgACgCBCECA0AgASACSwRAIAAoAgggAkEMbGoiAkIANwIAIAJBADYCCCAAIAAoAgRBAWoiAjYCBAwBCwsMAQsgASACTw0AIAAgARCyBgsgACABNgIECyADC5ABACAAIAFBACABQQBKGyIBIAIQswYEQAJAIAAoAgQiAiABSQRAIAAoAgQhAgNAIAEgAksEQCAAKAIIIAJBBXRqIgJCADcDGCACQgA3AwAgAkIANwMIIAIgAi0AEEHkAXE6ABAgACAAKAIEQQFqIgI2AgQMAQsLDAELIAEgAk8NACAAIAEQ/AQLIAAgATYCBAsL5QEBBX8gACABKAIANgIAIABBBGoiAigCACIDQQBIBEAgAiADQX9zNgIACyACQQBBABCkAgRAIAIoAgRBAEkEQCACKAIEIgQhBiACKAIIIQUDQCAEIAZHBEAgBSAEQQxsaiIDQQA2AgggA0KAgICA8P8/NwIAIAIgBEEBaiIENgIEDAELCwsgAkEANgIECyACIAEoAghBARCkAhoCQCACKAIAQQBIDQAgASgCDCEFIAIgASgCCCIDNgIEIANBDGwiA0UNACACKAIIIAUgAxDSDBoLIAAgASkDGDcDGCAAIAEpAxA3AxALDwAgAEEEaiABQQEQpAIaC7sDAQp/IANBA2ohDCADQQFqIQ0gASgCDCEHIAEoAgghCAN/IAUgCEYEfyADQQE6AAJBACEEAkADQCAEIAhGDQEgByAEQQxsaiIAKAIEQQtGDQEgBEEBaiEEIAAtAAkNAAsgA0EAOgACCyAJBSADIQYCQAJ/AkACQAJAAkACQAJAAkAgByAFQQxsaiIEKAIEIgpBAWsOFwQIBAMICAgICAUICAgICAgIBAEBAwMEAAsgCkGAAkYNASAKQR1HDQcgBSEGIAAgASAFIAIoAgggBC8BCiACIAMQtQZFDQcMBQsgAy0AAEEBRw0CCyAEQQlqIQYLIAZBAToAAAwECyAEQQE6AAkgDSELIAUhBiAFQQFqIgQgASgCCEkEQCABKAIMIARBDGxqKAIEQQtHDQILQQAMAgsgBSEGIAAgASAFIAIoAgwgBC8BCiACIAMQtQZFDQILQQELIQQDQAJAAkAgBEUEQCALQQE6AAAMAQtBASEJIAZBAWsiBkEASA0DIAcgBkEMbGoiBC0ACQ0DIARBAToACSAEKAIEQQ9GDQELQQEhBAwBCyAMIQtBACEEDAALAAsgBUEBaiEFDAELCwvkAQEIfyAAKAIIIgcEQCAAQQRqIQhBASEDA0AgAyAHRgRAIAggBUEBahC2BgUCQAJAIAAoAgwiBCAFQQxsaiIBKAIEIgJBCkYgAkEdRnINACAEIANBDGxqIgIoAgQiBkEKRiAGQR1Gcg0AIAEtAAkgAi0ACUcNACACKAIAIAEtAAgiBiABKAIAakcNACACLQAIIAZqIgJB/wFLDQAgAUH//wM2AgQgASACOgAIDAELIAQgBUEBaiIFQQxsaiIBIAQgA0EMbGoiBCkCADcCACABIAQoAgg2AggLIANBAWohAwwBCwsLC1sBAn8gACABELkGA0AgAiAAKAI4T0UEQCACQTRsIgMgACgCPGoCfyACIAEoAjhPBEBB0NAAQQBBNBDUDBpB0NAADAELIAEoAjwgA2oLELkGIAJBAWohAgwBCwsLPwEBfyAAKAJMIgIEQEGgEiAAKAJQIAFBAnRqIAEgAk8bKAIADwtBoBIgACgCpAEgAUEFdGogACgCoAEgAU0bC4MEAQV/IwBBEGsiBiQAIAYgAzYCDCADEMQGIAAoAgQoAhBBAXEhCQJAIARFDQAgCUUgAS0AEEEKcUEKR3INACAGQQxqIgUgAUEYahCpBiABKAIUIgRB//8DRg0AIAUgBBCqBgsgASgCDCIEIAEoAghBDGxqIQdBACEFA0AgBCAHRgRAAkBBACEEIAMgAygCBCAFakEBEMECRQ0AIABB3ABqIQMgASgCDCIEIAEoAghBDGxqIQcgAkE0bCEIA0AgBCAHRgRAIAYoAgwoAgBBAE4hBAUCQCAJBEAgBC0ACQ0BCwJ/AkACQCAEKAIEIgFBHUcEQCABQQpHDQEgBkEMakGgEiAAKAKYASAIaiAAKAKUASACTRsgBC8BChDFBhCrBiAELQAIIgFFDQIgBigCDCIFKAIIIAUoAgRqIAQoAgAgARDSDBoMAgsgBkEMaiADIAQvAQoQxQYQqwYgBC0ACCIBRQ0BIAYoAgwiBSgCCCAFKAIEaiAEKAIAIAEQ0gwaDAELIAYoAgwiBSAELQAIIgFFDQEaIAUoAgggBSgCBGogBCgCACABENIMGgsgBigCDAsiBSAFKAIEIAFqNgIECyAEQQxqIQQMAQsLCwUgBSAELQAIaiEFIAUgBUEDaiAEKAIEIghBHUcgCEEKR3EbIQUgBEEMaiEEDAELCyAGQRBqJAAgBAujAQEFfyAEIAIoAhAiBxCUBkUEQEEADwsDQCAFIAdGIghFBEBBoBIgASgCCEGgEiACKAIsIAVBAnRqIAIoAiggBU0bKAIAIgZBBXRqIAEoAgQgBk0bIQkCfyAFIAQoAgRPBEBB0NAAQgA3AwBB2NAAQQA2AgBB0NAADAELIAQoAgggBUEMbGoLIQYgBUEBaiEFIAAgCSADIAZBARCgBg0BCwsgCAs/AQJ/IAAoAgQiAiABayEDIAAoAgggAkEMbGohAgNAIAMEQCACQQxrIgIQngIgA0EBayEDDAELCyAAIAE2AgQLJwAgACgCAARAIABBABCyBiAAKAIIEOcMCyAAQQA2AgggAEIANwIAC0wBAX8gACABQQAgAUEAShsiASACEKQCIgIEQAJAIAAoAgQiAyABSQRAIAAgARClAgwBCyABIANPDQAgACABEKUGCyAAIAE2AgQLIAILPgECfyAAKAIEIgIgAWshAyAAKAIIIAJBDGxqIQIDQCADBEAgAkEMayICEC0gA0EBayEDDAELCyAAIAE2AgQLiAEBA38jAEEQayIEJAAgBCACKAIANgIMIAFBGGohBSABKAK8IiEDA0AgASgCFCADTQRAIAFBADYCFCABQQA2ArwiIARBEGokAAUgBEEMaiAFIANBA3RqEKkGIANBAWohAwwBCwsjAEEQayIBJAAgASACKAIANgIMIAFBDGogABCqBiABQRBqJAALiQEBAX8gASgCvCIEQCMAQRBrIgMkACADIAIoAgA2AgwgA0EMaiABQcAiahCpBiADQRBqJAALAkACQCAAQRdNQQBBASAAdEGAgPAEcRsNAAJAIABBAWsOAwECAQALIABBgAJHDQELIAItAARBAUcNACABQQA2AhQgAUEANgK8Ig8LIAAgASACEKYGCyIAIAEtALUgRQRAIAEQ8QMgAUEBOgC1IAsgACABIAIQpwYLngEBAXwCfyABKwMAIgKZRAAAAAAAAOBBYwRAIAKqDAELQYCAgIB4CyEBIAHBtyACYQRAIAAgARCrBg8LIABB/wEQrAYgAAJ/IAJEAAAAAAAA8ECiIgKZRAAAAAAAAOBBYwRAIAKqDAELQYCAgIB4CyIBQRh2EKwGIAAgAUEQdkH/AXEQrAYgACABQQh2Qf8BcRCsBiAAIAFB/wFxEKwGCx0AIAFBgAJPBEAgAEEMEKwGCyAAIAFB/wFxEKwGC6gBAQF/AkAgAUHrCGpB1hFNBEAgAUHrAGpB1gFNBEAgAUH1AGshAgwCCyABQQBKBEAgACABQewAayICQQh2QQlrQf8BcRCsBgwCCyAAQZR/IAFrIgJBCHZBBWtB/wFxEKwGDAELQYCAfiECAkAgAUGAgH5IDQAgASICQYCAAkgNAEH//wEhAgsgAEEcEKwGIAAgAkEIdkH/AXEQrAYLIAAgAkH/AXEQrAYLVgECfyMAQRBrIgIkACACIAE6AA8CQCAAKAIAIgAoAgQiAyAAKAIASARAIAAgA0EBajYCBCAAKAIIIANqIAE6AAAMAQsgACACQQ9qEK0GCyACQRBqJAALUQEBfwJAIAAoAgQiAiAAKAIATgRAIAAgAkEBakEAEMECRQ0BIAAoAgQhAgsgACACQQFqNgIEIAAoAgggAmogAS0AADoAAA8LQdDQAEEAOgAAC0MAIABBAToADCAAQQA2AgggAEKBgICAEDcCACAAQRBqQQBBIRDUDBogAEEANgI8IABCADcCNCAAQTRqIAFBARDLBRoLiQQBCH8gAEEBOgAMIABBADYCCCAAQoGAgIAQNwIAIABBDmpBAEEiENQMGiAAQQA2AjwgAEIANwI0IAFBACABQQBKGyEDAkAgAEE0aiICKAIAIgFBAEgNAEEBIQUgASADTw0AIAEhAANAIAAgA0kEQCAAIABBAXZqQQhqIQAMAQsLAn8gAEHFnbEnTwRAIAFBf3MhAEEADAELAn8CQCAARQRAIAJBCGohBgwBC0EAIABBNGwQ5gwiB0UNARogAkEIaiEGA0AgBCACKAIETw0BIAcgBEE0bCIIaiIBQQxqQQBBKBDUDBogAUEBOgAMIAFBADYCCCABQoGAgIAQNwIAIAFBDmpBAEEiENQMGiABIAIoAgggCGoiCRCxBiABIAkoAjA2AjAgAigCCCAIahCfAhogBEEBaiEEDAALAAsgBigCABDnDCAHCyIBIABFckUEQCAAIAIoAgAiAU0NAiABQX9zIQBBAAwBCyACIAE2AghBAQshBSACIAA2AgALIAUEQAJAIAIoAgQiACADSQRAIAIoAgQhAANAIAAgA0kEQCACKAIIIABBNGxqIgBBDGpBAEEoENQMGiAAQQE6AAwgAEEANgIIIABCgYCAgBA3AgAgAEEOakEAQSIQ1AwaIAIgAigCBEEBaiIANgIEDAELCwwBCyAAIANNDQAgAiADELAGCyACIAM2AgQLCwsAIAAgAUE0EPQMCxYAIAAgARD9AiAAQSRqIAFBJGoQxAMLPwECfyAAKAIEIgIgAWshAyAAKAIIIAJBDGxqIQIDQCADBEAgAkEMayICEPMEIANBAWshAwwBCwsgACABNgIEC+8CAQV/AkAgACgCACIDQQBIDQACQCACBEAgACgCBCICIAEgASACSRsiAiADSw0BQQEhBCACIANBAnZPDQIMAQtBASEEIAEgA00NASADIQIDQCABIAJNDQEgAiACQQF2akEIaiECDAALAAsCfyACQYCAgMAATwRAIANBf3MhAkEADAELAn9BACEDQQAhBAJAIAJFBEAgAEEIaiEFDAELQQAgAkEFdBDmDCIERQ0BGiAAQQhqIQUDQCADIAAoAgRPDQEgBCADQQV0IgZqIgFCADcDGCABQgA3AwAgAUIANwMIIAEgAS0AEEHkAXE6ABAgASAAKAIIIAZqIgcQ4gQgASAHKQMYNwMYIAEgBykDEDcDECAAKAIIIAZqQQRqEC0gA0EBaiEDDAALAAsgBSgCABDnDCAECyIBIAJFckUEQEEBIQQgAiAAKAIAIgFNDQIgAUF/cyECQQAMAQsgACABNgIIQQELIQQgACACNgIACyAEC2QBAX8CQAJAAkACQCABKAIMDgMAAgEDCyAAKAIEDwsgASgCECIBIAAoAgwiACgCBE8NASAAKAIIIAFBBXRqDwsgASgCECIBIAAoAggiACgCBE8NACAAKAIIIAFBBXRqIQILIAILjwIAIAZBADoAASAAAn8gBCADKAIETwRAQejQAEIANwMAQeDQAEIANwMAQdjQAEIANwMAQdDQAEIANwMAQdDQAAwBCyADKAIIIARBBXRqCyAFIAYQnAYhAAJAIAYtAAFBAUYEQAJ/IAIgASgCCCIETwRAQdDQAEIANwMAQdjQAEEANgIAIAEoAgghBEHQ0AAMAQsgASgCDCACQQxsagtBAToACSACQQFqIgIgBE8NASABKAIMIAJBDGxqKAIEQQtGDQEgBkEAOgABIAAPCyAGLQACQQFHDQACfyACIAEoAghPBEBB0NAAQgA3AwBB2NAAQQA2AgBB0NAADAELIAEoAgwgAkEMbGoLQQE6AAkLIAALKAAgAUEAIAFBAEobIgEgACgCBEkEQCAAIAE2AgQgACABQQEQpAIaCws0AQF/IABBDGoQ3gEDQCABIAAoAjhJBEAgACgCPCABQTRsakEMahDeASABQQFqIQEMAQsLC/wBAQh/AkAgAS0AEEEQcUUNACACQRRqIQYgAkEMaiEHIAJBEGohCCACQQhqIQkgASgCDCIDIAEoAghBDGxqIQoDQCADIApGDQECQCACLQAYQQFGBEAgAy0ACQ0BCyAHIQEgBiEEIAMoAgQiBUEKRwR/IAVBHUcNASAIIQQgCQUgAQsoAgAhBSAEKAIAQQxqIgEgAy8BCiIEEOABRQRAIAEgBBCOASAAAn8gBCAFKAIETwRAQejQAEIANwMAQeDQAEIANwMAQdjQAEIANwMAQdDQAEIANwMAQdDQAAwBCyAFKAIIIARBBXRqCyACELgGCwsgA0EMaiEDDAALAAsLugEBA38jAEEgayICJAAgACABQQxqEMgBIgMQtwEaIABBJGogA0EAENgBGiACQRRqIAEQuAEgAkEIaiABELkBIAIoAgghASACKAIMIQMDQAJAIAIoAhgiBCADRw0AIAIoAhQgAUcNAAJAIAAoAhAiAUHYCUkEQCAAQesANgIwDAELIAFB64gCTQRAIABB6wg2AjAMAQsgAEGAgAI2AjALIAJBIGokAA8LIAAgBBD6ASACQRRqEL0BDAALAAuLAQEDfyAAKAKwASIBIAAoAqwBQQV0aiECA0AgASACRgRAAkAgACgCvAEiAiAAKAK4AUEMbGohAANAIAAgAkYNASACKAIIIgEgAigCBEEFdGohAwNAIAEgA0YEQCACQQxqIQIMAgUgARCdBiABQSBqIQEMAQsACwALAAsFIAEQnQYgAUEgaiEBDAELCwv2AgIGfwF+QSwQ5gwiBwRAIAdBAEEoENQMIgUgARDCBiAFQQxqIAIQwgYjAEEgayICJAAgBUEYaiIBKAIAIgRBAEgEQCABIARBf3M2AgALIAFBABCYBhogASADKAIEQQEQpAIaIAEoAgBBAE4EQCADKQIEIQogAkEANgIcIAJBADYCECACIApCIIkiCjcCFCACIAo3AwhBACEDIAFBADYCBCACKAIIIQggAigCDCEJA0AgAyAJSQRAIAEgA0EBajYCBCADQQxsIgYgASgCCGohBCMAQSBrIgMkACAEQgA3AgAgBEEANgIIIAQgBiAIaiIGKAIEQQEQswYaIAQoAgBBAE4EQCAGKQIEIQogA0EANgIcIANBADYCECADIApCIIkiCjcCFCADIAo3AwggBCADQQhqEMMGCyADQSBqJAAgASgCBCEDDAELCwsgAkEgaiQAAkAgAEUNACAAKAIAIgFFDQAgACABQQFqNgIACyAFIAA2AigLIAcLQgEBfyMAQRBrIgMkACAALQAQQQFxRQRAIANBADYCDCADQoCAgIDw/z83AgQgACABIAIgA0EEahDaBAsgA0EQaiQACw4AIAAgASACQaAgEPUMC0IAAkACQCAAQQ5HBEAgAEGAAkcNAQwCC0EOIAEQ5AMgAUEBOgC0IAwBCyAAIAEQwAYPCyABQQA2AhQgAUEANgK8IgtaAQF/IwBBEGsiBiQAIAYgAigCCDYCCCAGIAIpAgA3AwAgAiAEIAEQ6AMgAygCACAAIAYgAigCsCAQwQYgBUEMaiACKAKwIBCOASADIAJBARC9BiAGQRBqJAAL4gIAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABBAWsOHwUMBgoODg4ODAMBDAwCDAwMBQcHCAkGDg4ODgwEDg4ACyAAQaICaw4EDQ0NDQoLIAEQ5wMPC0EOIAEQ5AMgAUEANgK8IiABQQE6ALQgIAFBADYCFA8LIAEgAUGcImpBAhDoAw8LIAEgAUGUImpBARDoAw8LIAAgARDkAyABQQA2ArwiIAEoAhQhACABQQA2AhQgASABKAK4ICAAQQF2ajYCuCAPCyAAIAEQ5AMgAUEANgK8IiABKAIUIQAgAUEANgIUIAEgASgCvCAgAEEBdmo2ArwgDwsgACABEOQDIAEQ6QMPC0EVIAEQ5AMgARDrAw8LQRYgARDkAyABEOsDDwtBBCABEOQDIAEQ6wMPCyAAQf8BRg0BCyAAIAEQ7gMPCyABQRBqIAEQ7wMPCyABQQA2AhQgAUEANgK8IgthAQJ/IwBBEGsiBCQAIAAtABAiBUEBcUUEQCAAIAVBEHI6ABAgBEEEaiIFIABBBGoQxQMgBCADOwEOIARBADsBDCAEQoCAgIDw/z83AgQgACABIAIgBRDaBAsgBEEQaiQAC4ABAgJ/AX4jAEEgayICJAAgACgCACIDQQBIBEAgACADQX9zNgIACyAAQQBBABCZBiAAIAEoAgRBARCzBhogACgCAEEATgRAIAEpAgQhBCACQQA2AhwgAkEANgIQIAIgBEIgiSIENwIUIAIgBDcDCCAAIAJBCGoQwwYLIAJBIGokAAu+AQEGfyAAQQA2AgQgASgCACEFIAEoAgQhBgNAIAIgBkkEQCAAIAJBAWo2AgQgAkEFdCIBIAAoAghqIgIgASAFaiIDKAIANgIAIAJBBGoiAUIANwIAIAFBADYCCCABIAMoAghBARCkAhoCQCABKAIAQQBIDQAgAygCDCEHIAEgAygCCCIENgIEIARBDGwiBEUNACABKAIIIAcgBBDSDBoLIAIgAykDGDcDGCACIAMpAxA3AxAgACgCBCECDAELCwslAQF/IAAoAgAiAUEASARAIAAgAUF/czYCAAsgAEEAQQEQvQIaCw8AIAAgARD7ASAAKAIwawukAwIGfwF+IAIoAlQhCUGgEiADQRxsIgogAigCgAFqIAIoAnwgA00bKAIUIQsgAEIANwMAIABBADYCCCAAQRBqIgdBADYCBCAHQQA6AABBCCEGA0AgBiAHaiIIQQA2AhggCEIANwMQIAhCADcDACAGQSBqIgZBqIABRw0ACyABKQIAIQwgAEEANgIIIAAgDDcDACAAQgA3A7iAASAAQcCAAWoiBkEANgIAIABB3IABahDiAyAAQciCAWoiB0IANwMAIABCADcDwIIBIAEpAgAhDCAAQgA3A8CCASAAQQA2AtiAASAAQgA3A9CAASAAQQE7AM2AASAAQQA2AsiAASAGQgA3AwAgACAMNwO4gAEgB0IANwMAIABBrIIBaiAJEMoGIABBtIIBaiALEMoGIABBADsA8YIBIABBADYC7IIBIABCADcC5IIBIAAgBTYC1IIBIAAgBDYC0IIBIAAgAigCWCIBNgLYggEgACAERSAFRXIEf0EABSABLwAAQQBHCzoA8IIBIABBoBIgAigCgAEgCmogAigCfCADTRsoAhg2AuCCASAACzABAX8gAEHkggFqEC0gAEEgaiEBQaiAASEAA0AgASAAQSBrIgBqEC0gAEEIRw0ACwu7AwEKfyADQQNqIQwgA0EBaiENIAEoAgwhByABKAIIIQgDfyAFIAhGBH8gA0EBOgACQQAhBAJAA0AgBCAIRg0BIAcgBEEMbGoiACgCBEELRg0BIARBAWohBCAALQAJDQALIANBADoAAgsgCQUgAyEGAkACfwJAAkACQAJAAkACQAJAIAcgBUEMbGoiBCgCBCIKQQFrDhcECAQDCAgICAgFCAgICAgICAQBAQMDBAALIApBgAJGDQEgCkEdRw0HIAUhBiAAIAEgBSACKAIIIAQvAQogAiADEN4GRQ0HDAULIAMtAABBAUcNAgsgBEEJaiEGCyAGQQE6AAAMBAsgBEEBOgAJIA0hCyAFIQYgBUEBaiIEIAEoAghJBEAgASgCDCAEQQxsaigCBEELRw0CC0EADAILIAUhBiAAIAEgBSACKAIMIAQvAQogAiADEN4GRQ0CC0EBCyEEA0ACQAJAIARFBEAgC0EBOgAADAELQQEhCSAGQQFrIgZBAEgNAyAHIAZBDGxqIgQtAAkNAyAEQQE6AAkgBCgCBEEPRg0BC0EBIQQMAQsgDCELQQAhBAwACwALIAVBAWohBQwBCwsLJQAgACgCBCAAKAIIQQFqTwRAIAAQmAEPC0ELQQ4gACgC4IABGwteAQF/IAAgATYCBEHrACECAkAgAUUNACABKAAAIgFBGHQgAUGA/gNxQQh0ciABQQh2QYD+A3EgAUEYdnJyIgFB2AlJDQBB6whBgIACIAFB7IgCSRshAgsgACACNgIAC48HAg9/AXwjAEEgayIDJAAgAC0A8oIBRQRAIAAgACgC2IIBQQJqIAAoAuCCARDcBiIBNgLcggECQCAALQDwggFBAUcNACAAQeSCAWogARCWBkUEQCAAIAAoAgRBAWo2AggMAQsgACgC2IIBQQJqIAAoAuCCASAAKALQggEgACgC1IIBAn8gACgC6IIBRQRAQdDQAEEANgIAQdDQAAwBCyAAKALsggELIAAoAtyCARDdBgsgAEEBOgDyggELIAAoAtyCASEGAkAgAEEQahDTBiIJIAZBf3NsIAAoAhQiAWoiCiABTQRAIABBGGohCyAJIApqIQwDQCAHIAlGBEAgACgCFCIBIAYgCWwiAk8EQCAAIAEgAms2AhQMBAsgAEEBOgAQDAMFQYEEIAwgBiAHbGoiAWsiAkEAIAJBgQRNGyICIAYgAiAGSRshAiALIAFBBXRqIQQCfyAHIApqIgEgACgCFE8EQCAAQQE6ABBB6NAAQgA3AwBB4NAAQgA3AwBB2NAAQgA3AwBB0NAAQgA3AwBB0NAADAELIAsgAUEFdGoLIQEgA0EANgIcIANBADYCECADIAI2AhggAyAENgIUIAMgAykCFDcDCCMAQSBrIgIkAAJAIAAoAtSCAQRAIAErAwAhECACIAMoAhA2AhggAiADKQIINwMQIAECfyAQRAAAAAAAAAAAIRACQCAALQDwggFBAUcNACAAKALoggEiBCACKAIURw0AIAIoAhAhBSAAKALsggEhCEEAIQEDQCABIARGDQEgCCABQQJ0aioCALsgBSABQQV0aisDAKIgEKAhECABQQFqIQEMAAsACyAQoBDWDCIQmUQAAAAAAADgQWMEQCAQqgwBC0GAgICAeAsQ2wYMAQsgAiADKAIQNgIIIAIgAykCCDcDACABIAc2AgwgASAJNgIIIAFBEGoiBCACKAIEIg0iBUEAIAVBAEobIghBARD8ASIOBEAgCCAEKAIESwRAIAQoAgghDyAEKAIEIQUDQCAFIAhJBEAgDyAFQQN0akIANwMAIAQgBUEBaiIFNgIEDAELCwsgBCAINgIECwJAIA5FDQAgASgCGCEEIAIoAgAhBUEAIQEDQCABIA1GDQEgBCABQQN0aiAFIAFBBXRqKQMANwMAIAFBAWohAQwACwALCyACQSBqJAAgB0EBaiEHDAELAAsACyAAIAAoAgRBAWo2AggLIANBIGokAAtLAQF/IABBEGoQ0wYhAQJ/IAAtAPGCAUUEQEHgggEgAC0A8oIBQQFxRQ0BGgsgACgCBEEBaiEBQQgLIABqIAE2AgAgAEEBOgDxggELbAIBfwF+IAAoAgQiASAAKAIISQRAIAAgAUEBajYCCAsgACAAQdyAAWoQ8AMiASkCADcCuIABIABByIABaiABKAIQNgIAIABBwIABaiABKQIINwIAIAEpAgAhAiAAIAEoAgg2AgggACACNwIAC9QCAgR/AX4jAEEQayIEJAAgBEEANgIMIARBADYCDAJAIABBEGoQ2gYgASgCAGoiBkEASA0AIAEoAgQiA0UNACAGIAMoAAAiA0EYdCADQYD+A3FBCHRyIANBCHZBgP4DcSADQRh2cnJPDQAgBCAGNgIMQQEhBQsCQAJAIAUEQCAAKALggAEiBUEKSQ0BCyAAIAAoAgRBAWo2AggMAQsgACAAKQMAIgc3A7iAASAAIAVBAWo2AuCAASAAQcCAAWoiAyAAKAIINgIAIAAgBUEUbGoiBUH0gAFqIABByIABaiIGKAIANgIAIAVB5IABaiAHNwIAIAVB7IABaiADKQIANwIAIAQgASAEKAIMENUGIAQpAwAhByAGIAQoAgw2AgAgACACNgLEgAEgA0EANgIAIAAgBzcDuIABIAAgAygCADYCCCAAIAApA7iAATcDAAsgBEEQaiQACyQAIAEtAM2AAUUEQCABENYGIAFBAToAzYABCyAAIAEgAhDUBgvEBAEKfyMAQRBrIgkkACABQRhqIQsCQAJAA0AgBiABKAIUIgNPDQECQAJ/IAsgBkEFdGoiBSgCFARAIAUoAghBAWsgA08NAkEAIQgjAEEQayIHJAAgByACKAIANgIMIAFBGGohCkEAIQMCQANAIAUoAggiBCADTQRAA0AgBCAITQRAIAdBDGoiAyAEEKsGIANBEBCsBgwECwJ/IAYgCGoiAyABKAIUTwRAIAFBAToAEEHo0ABCADcDAEHg0ABCADcDAEHY0ABCADcDAEHQ0ABCADcDAEHQ0AAMAQsgCiADQQV0agshBEEAIQMDQCAEKAIUIANNBEAgCEEBaiEIIAUoAgghBAwCBSAHQQxqIAQoAhggA0EDdGoQqQYgA0EBaiEDDAELAAsACwALAkAgAyAGaiIEIAEoAhRPBEAgAUEBOgAQQejQAEIANwMAQeDQAEIANwMAQdjQAEIANwMAQdDQAEIANwMADAELIAogBEEFdGoiBCgCFCIMRQ0AIAUoAgggBCgCCEcNACAEKAIMIANHDQAgDCABKALcggFHDQAgB0EMaiAEEKkGIANBAWohAwwBCwsgASABKAIEQQFqNgIICyAHQRBqJAAgBSgCCAwBCyAJIAIoAgA2AgwgCUEMaiAFEKkGQQELIAZqIQYMAQsLIAEgASgCBEEBajYCCAwBCyABQQA2AhQLIAlBEGokACMAQRBrIgEkAAJAAkAgAEELaw4EAQAAAQALIAEgAigCADYCDCABQQxqIAAQqgYLIAFBEGokAAvLAgECfwJAAkACQAJAAkAgAEH3AWsOCAEBAQECAgICAAsgAEEcRw0CIAFBEGoCfyABKAIIIgAgASgCBCICTwRAIAEgAkEBajYCCEGgEgwBCyABKAIAIABqCy0AAEEIdCABQQEQ9gMtAABywRDXBiABIAEoAghBAmo2AggPCyAAQQh0IQIgAUEQaiACAn8gASgCCCIAIAEoAgQiA08EQCABIANBAWo2AghBoBIMAQsgASgCACAAagstAABqQewSakH//wNxENcGDAILIABBEHRBgIDsB2tBCHYhAiABQRBqQZR/IAICfyABKAIIIgAgASgCBCIDTwRAIAEgA0EBajYCCEGgEgwBCyABKAIAIABqCy0AAHJrENcGDAELIABBIGtB1gFNBEAgAUEQaiAAQYsBaxDXBg8LIAFBADYCFA8LIAEgASgCCEEBajYCCAuKAQECfyABKAIEIgIgASgCCCIDQQRqTwRAAn8gAiADTQRAIAEgAkEBajYCCEGgEgwBCyABKAIAIANqCygAACICQRh0IAJBgP4DcUEIdHIgAkEIdkGA/gNxIAJBGHZyciECIAAQ2AYiABDZBiAAIAK3RAAAAAAAAPA+ojkDACABIAEoAghBBGo2AggLCx0BAX8gABDaBiIBQQBIBH8gAEEBOgAAQQAFIAELC1MBAX8CQAJAAkAgAEEXTQRAQQEgAHQiA0GAgPAEcQ0BIANBgJABcQ0DCyAAQQFrDgMAAQABCyACLQAEQQFHDQAgAUEANgIUDwsgACABIAIQ0AYLC1QBAX8CQCABKAIEIgMEQCADKAAAIgFBGHQgAUGA/gNxQQh0ciABQQh2QYD+A3EgAUEYdnJyIAJLDQELIABCADcCACAAQQA2AggPCyAAIAMgAhCbAQtIAQF/IAAtAM6AAUUEQCAAQQE6AM6AASAAIAAoAtSAASAAKAIUQQF2aiIBNgLUgAEgACABIAAoAtCAAWpBB2pBA3Y2AtiAAQsLDAAgABDYBiABENsGC1cBAX8gACgCBCIBQYAETQRAIAAgAUEBajYCBCAAIAFBBXRqQQhqDwsgAEEBOgAAQejQAEIANwMAQeDQAEIANwMAQdjQAEIANwMAQdDQAEIANwMAQdDQAAsnACAAQgA3AwggAEEQaiIAKAIEBEAgAEEANgIEIABBAEEBEPwBGgsLeAIBfwF8An8gACgCBCIBBEAgACABQQFrIgE2AgQgACABQQV0akEIagwBCyAAQQE6AABB6NAAQgA3AwBB4NAAQgA3AwBB2NAAQgA3AwBB0NAAQgA3AwBB0NAACysDACICmUQAAAAAAADgQWMEQCACqg8LQYCAgIB4Cw8AIAAQ2QYgACABtzkDAAtzAQJ/QaASIQJBoBIgACABQQJ0akEIaiABIAAvAAYiA0EIdCADQQh2ckH//wNxTxsoAAAiAQR/IAAgAUEYdCABQYD+A3FBCHRyIAFBCHZBgP4DcSABQRh2cnJqBUGgEgsvAAQiAEEIdCAAQQh2ckH//wNxC6QCAQN/QaASIAAgAUECdGpBCGogASAALwAGIgZBCHQgBkEIdnJB//8DcU8bKAAAIgEEfyAAIAFBGHQgAUGA/gNxQQh0ciABQQh2QYD+A3EgAUEYdnJyagVBoBILIQYgACgAAiIBBH8gACABQRh0IAFBgP4DcUEIdHIgAUEIdkGA/gNxIAFBGHZycmoFQaASCyEHIAUgBi8ABCIAQQh0IABBCHZyQf//A3EiACAAIAVLGyEAIAZBBmohBkEAIQEDQCAAIAFGBEADQCAAIAVHBEAgBCAAQQJ0akEANgIAIABBAWohAAwBCwsFIAQgAUECdGogByAGIAFBAXRqLwAAIghBCHQgCEEIdnJB//8DcSACIANBABCpBDgCACABQQFqIQEMAQsLC48CACAGQQA6AAEgAAJ/IAQgAygCBE8EQEHo0ABCADcDAEHg0ABCADcDAEHY0ABCADcDAEHQ0ABCADcDAEHQ0AAMAQsgAygCCCAEQQV0agsgBSAGEMgGIQACQCAGLQABQQFGBEACfyACIAEoAggiBE8EQEHQ0ABCADcDAEHY0ABBADYCACABKAIIIQRB0NAADAELIAEoAgwgAkEMbGoLQQE6AAkgAkEBaiICIARPDQEgASgCDCACQQxsaigCBEELRg0BIAZBADoAASAADwsgBi0AAkEBRw0AAn8gAiABKAIITwRAQdDQAEIANwMAQdjQAEEANgIAQdDQAAwBCyABKAIMIAJBDGxqC0EBOgAJCyAAC/wBAQh/AkAgAS0AEEEQcUUNACACQRRqIQYgAkEMaiEHIAJBEGohCCACQQhqIQkgASgCDCIDIAEoAghBDGxqIQoDQCADIApGDQECQCACLQAYQQFGBEAgAy0ACQ0BCyAHIQEgBiEEIAMoAgQiBUEKRwR/IAVBHUcNASAIIQQgCQUgAQsoAgAhBSAEKAIAQQxqIgEgAy8BCiIEEOABRQRAIAEgBBCOASAAAn8gBCAFKAIETwRAQejQAEIANwMAQeDQAEIANwMAQdjQAEIANwMAQdDQAEIANwMAQdDQAAwBCyAFKAIIIARBBXRqCyACEN8GCwsgA0EMaiEDDAALAAsLDwAgACABIAJBuIABEPUMC1wBAX8jAEEQayIGJAAgBiACKAIINgIIIAYgAikCADcDACACIAQgARDOBiADKAIAIAAgBiACKALIgAEQwQYgBUEMaiACKALIgAEQjgEgAyACQQEQ4AYgBkEQaiQACyIAIAAtAM2AAUUEQCAAENYGIABBAToAzYABCyAAQQA2AhQL4QEBCX8jAEEQayIEJAAgBEEMaiEHIwBBEGsiBSQAIAEoAgAhCCAAKAIEIQIgACgCACEJA0AgAkEBayEKA0ACQCACIANMBEAgAyEBDAELIAkgAyAKakEBdiIBQQZsai8AACIGQQh0IAZBCHZyQf//A3EiBiAISwRAIAEhAgwDCyAGIAhPDQAgAUEBaiEDDAELCwsgBSABNgIMAkACQCACIANKIgEEQCAHRQ0CDAELDAELIAcgBSgCDDYCAAsgBUEQaiQAIAQoAgwhAiAAKAIAIARBEGokACACQQZsakGgEiABGwvYAgEIfyAALQAMQQFHBEAPCwJAIAAoAhgiBiAAKAIUIgRBAXYgBGpNBEAgAEEAEOUGRQ0BIAAoAhghBgsgAkH/////A3EiCSAAKAIccCECIAEoAgAhBSAAKAIgIQdBfyEEA0ACQCAHIAJBGGxqIgooAgQiC0ECcQRAIAooAgAgBUcNAQsgByACIAQgBEF/RhtBGGxqIgItAARBAnEEQCAAIAAoAhRBAWs2AhQgACAAKAIQIAIoAgRBAXFrNgIQIAEoAgAhBQsgAiAFNgIAIAIgAykDADcDCCACIAMpAwg3AxAgAiAJQQJ0QQNyNgIEIAAgACgCFEEBaiIBNgIUIAAgACgCEEEBajYCECAIIAAvAQ5NDQIgACgCGCICIAFBA3RPDQIgACACQQhrEOUGGgwCCyAEIAQgAiAEQX9HGyALQQFxGyEEIAYgCEEBaiIIIAJqcSECDAALAAsL2gIBBX8gAC0ADEEBRwRAQQAPCwJAIAEEQCAAKAIYIAFBAXYgAWpLDQELQRhBICAAKAIQIgIgASABIAJJG0EBdEEIaiIBZ2tBACABGyIEdBDmDCICRQRAIABBADoADEEADwsgAkEBIAR0IgVBGGxqIQMgAiEBA0AgASADRgRAIABCADcCECAAKAIYIQMgACAFQQFrNgIYIANBAWpBACEBIARBH0sEf0H/////BwUgBEECdEGQxgBqKAIACyEFQQAgAxshBiAAKAIgIQMgACACNgIgIAAgBTYCHCAAIARBAXQ7AQ4DQCABIAZGBEAgAxDnDAwECyADIAFBGGxqIgIoAgQiBEEBcQRAIAAgAiAEQQJ2IAJBCGoQ5AYLIAFBAWohAQwACwAFIAFCgICAgICAgPg/NwMQIAFCgICAgICAgPg/NwMIIAFCADcDACABQRhqIQEMAQsACwALQQELQQAgACgCIEUEQEEADwsgACABIAEoAgBBsfPd8XlsEOcGIgFBAEchACACRSABRXIEfyAABSACIAFBCGo2AgBBAQsLDQAgACABIAJBFBD4DAtCAQJ/IABBMGoQ8AEiAC8AMiICQQh0IAJBCHZyQf//A3FBAU0EfyAALwA0IgBBCHQgAEEIdnJB//8DcUECSQVBAAsLPQEBfyAABEAgACgCKBAPIAAoAiQiAQRAIAEQLSABEOcMCyAAQRhqEKMGIABBDGoQ8wQgABDzBCAAEOcMCwvuAQEDfyAALQAsRQRAIAEQRyECIABBAToALCAAIAI2AigLAn8gACABQeTClcMGEEMiARA1A0AgABA2IAAoAgQiAkUEQCAAEDcgAQwCCyACIAAQ6wYhBCAAKAIgIQMCQAJAAkACQCAEBEAgA0UNAiAAQQA2AiAgAiAAEOsGIQIgACgCICAAEDcgAkVyDQEMAwsCQCADRQ0AIAAtABwNACAAIAEQFiICNgIEIAAgAiABKAIQajYCCCACDQQLIAAQNwsgARAPQaASDAQLIAAQNwsgASgCBARAIAFBADYCBAsgAQwCCyAAQQE6ABwMAAsACws/AQF/AkAgASgCDCAAIAEoAgRrSQ0AIAEoAgggAGtBNkkNACAALwAAQYACRw0AIAAoAAxB357wqX9GIQILIAIL7gEBA38gAC0ALEUEQCABEEchAiAAQQE6ACwgACACNgIoCwJ/IAAgAUHywtm7BhBDIgEQNQNAIAAQNiAAKAIEIgJFBEAgABA3IAEMAgsgAiAAEO0GIQQgACgCICEDAkACQAJAAkAgBARAIANFDQIgAEEANgIgIAIgABDtBiECIAAoAiAgABA3IAJFcg0BDAMLAkAgA0UNACAALQAcDQAgACABEBYiAjYCBCAAIAIgASgCEGo2AgggAg0ECyAAEDcLIAEQD0GgEgwECyAAEDcLIAEoAgQEQCABQQA2AgQLIAEMAgsgAEEBOgAcDAALAAsL6wEBA38jAEEQayIEJAACQCABKAIMIAAgASgCBGtJDQAgASgCCCAAa0EUSQ0AIAAvAABBgAJHDQAgBCAALwAGIgJBCHQgAkEIdnJB//8DcSAALwAEIgJBCHQgAkEIdnJB//8DcWw2AgwgAEEIaiABEJQEBH8gASAAIAAoAAgiAkEYdCACQYD+A3FBCHRyIAJBCHZBgP4DcSACQRh2cnJqIAQoAgwQ+QQFQQALRQ0AIABBFGohAiABKAIoQQFqIQMgAC0AD0EBcQRAIAEgAiADEPUFIQMMAQsgASACIAMQ+QQhAwsgBEEQaiQAIAMLpwIBBX8gAUIANwIAIAFBoBI2AhQgAUEANgIQIAFCADcCCCAAKAIAIgIoAgQhAyACKAIIIQQDQAJAIARBAWogA0siBQ0AIAIQmAEhAyAAKAIAIQIjAEEQayIEJAACQAJAAkACQCADQRVLDQBBASADdEHAn8ABcQ0BIANBE0cNACABIAJBEGoQ+QM2AhAMAQsgA0GJAmsiBkEKTUEAQQEgBnRBvw5xGw0AIAMgAhDcBCACKAIURQ0BDAILIAJBADYCFAsgAigCCCACKAIESw0AIAItABBBAXENACAEQQA2AgggBEIANwMAIARB//8DNgIEIAEgAyACIAQQ2gQLIARBEGokACAAKAIAIgIoAggiBCACKAIEIgNLDQAgAi0AEEEBcUUNAQsLIAULUAECf0GgEiECIAAoAgwgACgCAEGgEiAAKAIEG2ooAAAiAQR/IAAoAhQgAUEYdCABQYD+A3FBCHRyIAFBCHZBgP4DcSABQRh2cnJqBUGgEgsLCQAgAEEFEI0NCyQAIAAoAgBBDGogAS0AAiABLQABQQh0IAEtAABBEHRychDgAQsaACAAIAAoAgAgACgCBGo2AgAgAEEIahC9AQtaAQJ/IwBBEGsiAiQAIAIgATYCDCAALwAAIgFBCHQgAUEIdnJB//8DcSEBA0AgASIDBEAgAUEBayEBIAJBDGogAEECaiIAEKEHRQ0BCwsgAkEQaiQAIANBAEcLOgEBfyMAQRBrIgMkACADIAEoAgg2AgggAyABKQIANwMAIAAgAyACKAIAIAIoAgQQogcaIANBEGokAAslAANAAkAgABCCBSAAKAIERQ0AIAAoAgwgACgCABChB0UNAQsLCxcAIAAgASABKAIAQbHz3fF5bCACEPcGC9wCAQh/IAAtAAxBAUcEQA8LAkAgACgCGCIGIAAoAhQiBEEBdiAEak0EQCAAQQAQ+AZFDQEgACgCGCEGCyACQf////8DcSIJIAAoAhxwIQIgASgCACEFIAAoAiAhB0F/IQQDQAJAIAcgAkEMbGoiCigCBCILQQJxBEAgCigCACAFRw0BCyAHIAIgBCAEQX9GG0EMbGoiAi0ABEECcQRAIAAgACgCFEEBazYCFCAAIAAoAhAgAigCBEEBcWs2AhAgASgCACEFCyACIAU2AgAgAigCCBAPIAIgAygCADYCCCADQQA2AgAgAiAJQQJ0QQNyNgIEIAAgACgCFEEBaiIBNgIUIAAgACgCEEEBajYCECAIIAAvAQ5NDQIgACgCGCICIAFBA3RPDQIgACACQQhrEPgGGgwCCyAEIAQgAiAEQX9HGyALQQFxGyEEIAYgCEEBaiIIIAJqcSECDAALAAsL6gIBBX8gAC0ADEEBRwRAQQAPCwJAIAEEQCAAKAIYIAFBAXYgAWpLDQELQQxBICAAKAIQIgIgASABIAJJG0EBdEEIaiIBZ2tBACABGyIEdBDmDCICRQRAIABBADoADEEADwsgAkEBIAR0IgZBDGxqIQMgAiEBA0AgASADRgRAIABCADcCECAAKAIYIQMgACAGQQFrNgIYIANBAWpBACEBIARBH0sEf0H/////BwUgBEECdEGQxgBqKAIACyEGQQAgAxshBSAAKAIgIQMgACACNgIgIAAgBjYCHCAAIARBAXQ7AQ4DQAJAIAEgBUYEQEEAIQEMAQsgAyABQQxsaiICKAIEIgRBAXEEQCAAIAIgBEECdiACQQhqEPcGCyABQQFqIQEMAQsLA0AgASAFRkUEQCADIAFBDGxqQQhqEJoEIAFBAWohAQwBCwsgAxDnDAUgAUEANgIIIAFCADcCACABQQxqIQEMAQsLC0EBCxAAIAAoAgAQfyAAQQA2AgALwQEBA38gACgCACECIAEoAgAhASMAQfAAayIAJAACQCACKAIQIAEoAhBHDQAgAEHQAGoiAyACEIcBIAAgACkCaDcDSCAAQUBrIAApAmA3AwAgACAAKQJYNwM4IAAgACkCUDcDMCAAQRBqIAMQiAEDQCAAKAIwIAAoAhBGIAAoAjQgACgCFEZxIgMNASAAQQhqIgIgAEEwaiIEEIkBIAEgAhCCASgCACAAKAIMRw0BIAQQDBoMAAsACyAAQfAAaiQAIAMLwwUBC38gAC0ADEEBRwRAQQAPCwJAIAEEQCAAKAIYIAFBAXYgAWpLDQELQQxBICAAKAIQIgIgASABIAJJG0EBdEEIaiIBZ2tBACABGyIDdBDmDCICRQRAIABBADoADEEADwsgAkEBIAN0IgVBDGxqIQQgAiEBA0AgASAERgRAIABCADcCECAAKAIYIQQgACAFQQFrNgIYIARBAWpBACEBIANBH0sEf0H/////BwUgA0ECdEGQxgBqKAIACyEGQQAgBBshCSAAKAIgIQcgACACNgIgIAAgBjYCHCAAIANBAXQ7AQ4DQAJAIAEgCUYEQEEAIQEMAQsgByABQQxsaiIFKAIEIgJBAXEEQAJAQQAhBiAALQAMQQFHDQAgAkECdiEIAkAgACgCGCAAKAIUIgJBAXYgAmpNBEAgAEEAEPsGRQ0BCyAIIAAoAhxwIQMgACgCICEEQX8hAgJAA0AgBCADQQxsIgpqIgsoAgQiDEECcUUNAQJAIAggDEECdkYEQCALIAUQ+gYNASAAKAIgIQQLIAIgAiADIAJBf0cbIAQgCmotAARBAXEbIQIgACgCGCAGQQFqIgYgA2pxIQMMAQsLIAAoAiAhBAsgBCADIAIgAkF/RhtBDGxqIgItAARBAnEEQCAAIAAoAhRBAWs2AhQgACAAKAIQIAIoAgRBAXFrNgIQCyACKAIAEH8gAiAFKAIANgIAIAVBADYCACAFKAIIIQMgAiAIQQJ0QQNyNgIEIAIgAzYCCCAAIAAoAhRBAWoiAjYCFCAAIAAoAhBBAWo2AhAgBiAALwEOTQ0AIAAoAhgiAyACQQN0Tw0AIAAgA0EIaxD7BhoLCwsgAUEBaiEBDAELCwNAIAEgCUcEQCAHIAFBDGxqEPkGIAFBAWohAQwBCwsgBxDnDAUgAUEANgIIIAFCADcCACABQQxqIQEMAQsLC0EBCyUBAX8CQCAAKAIAIgBFDQAgACgCACIBRQ0AIAAgAUEBajYCAAsLrAUBDX8gAC0ADEEBRwRAQQAPCwJAIAEEQCAAKAIYIAFBAXYgAWpLDQELQQxBICAAKAIQIgMgASABIANJG0EBdEEIaiIBZ2tBACABGyIEdBDmDCIDRQRAIABBADoADEEADwsgA0EBIAR0IgVBDGxqIQIgAyEBA0AgASACRgRAIABCADcCECAAKAIYIQIgACAFQQFrNgIYIAJBAWpBACEBIARBH0sEf0H/////BwUgBEECdEGQxgBqKAIACyEGQQAgAhshCiAAKAIgIQggACADNgIgIAAgBjYCHCAAIARBAXQ7AQ4DQAJAIAEgCkYEQEEAIQEMAQsgCCABQQxsaiIDKAIEIgRBAXEEQAJAIARBAnYhBCADQQhqIQxBACEGIAAtAAxBAUcNAAJAIAAoAhgiCSAAKAIUIgJBAXYgAmpNBEAgAEEAEP0GRQ0BIAAoAhghCQsgBCAAKAIccCEFIAMoAgAhByAAKAIgIQtBfyECA0ACQCALIAVBDGxqIg0oAgQiDkECcQRAIA0oAgAgB0cNAQsgCyAFIAIgAkF/RhtBDGxqIgItAARBAnEEQCAAIAAoAhRBAWs2AhQgACAAKAIQIAIoAgRBAXFrNgIQIAMoAgAhBwsgAiAHNgIAIAJBCGogDBCoAiACIARBAnRBA3I2AgQgACAAKAIUQQFqIgM2AhQgACAAKAIQQQFqNgIQIAYgAC8BDk0NAiAAKAIYIgQgA0EDdE8NAiAAIARBCGsQ/QYaDAILIAIgAiAFIAJBf0cbIA5BAXEbIQIgCSAGQQFqIgYgBWpxIQUMAAsACwsLIAFBAWohAQwBCwsDQCABIApHBEAgCCABQQxsakEIahCpAiABQQFqIQEMAQsLIAgQ5wwFIAFBADYCCCABQgA3AgAgAUEMaiEBDAELCwtBAQvSAgEIfyAALQAMQQFHBEAPCwJAIAAoAhgiBiAAKAIUIgRBAXYgBGpNBEAgAEEAEP8GRQ0BIAAoAhghBgsgAkH/////A3EiCSAAKAIccCECIAEoAgAhBSAAKAIgIQdBfyEEA0ACQCAHIAJBDGxqIgooAgQiC0ECcQRAIAooAgAgBUcNAQsgByACIAQgBEF/RhtBDGxqIgItAARBAnEEQCAAIAAoAhRBAWs2AhQgACAAKAIQIAIoAgRBAXFrNgIQIAEoAgAhBQsgAiAFNgIAIAMoAgAhASACIAlBAnRBA3I2AgQgAiABNgIIIAAgACgCFEEBaiIBNgIUIAAgACgCEEEBajYCECAIIAAvAQ5NDQIgACgCGCICIAFBA3RPDQIgACACQQhrEP8GGgwCCyAEIAQgAiAEQX9HGyALQQFxGyEEIAYgCEEBaiIIIAJqcSECDAALAAsLogIBBH8gAC0ADEEBRwRAQQAPCwJAIAEEQCAAKAIYIAFBAXYgAWpLDQELQQxBICAAKAIQIgIgASABIAJJG0EBdEEIaiIBZ2tBACABGyIBdCIDEOYMIgJFBEAgAEEAOgAMQQAPCyABQR1NBEAgAkEAIAMQ1AwaCyAAQgA3AhAgACgCGCEDIABBfyABdEF/czYCGCABQR9LBH9B/////wcFIAFBAnRBkMYAaigCAAshBCAAKAIgIQUgACACNgIgIAAgBDYCHCAAIAFBAXQ7AQ4CQCADRQ0AIANBAWohA0EAIQEDQCABIANGDQEgBSABQQxsaiICKAIEIgRBAXEEQCAAIAIgBEECdiACQQhqEP4GCyABQQFqIQEMAAsACyAFEOcMC0EBCx4AIABBAEEBEIkFGiAALQAAQQFGBEAgAEEANgIECwuFBQIMfwF+IAAtAAxBAUcEQEEADwsCQCABBEAgACgCGCABQQF2IAFqSw0BC0EQQSAgACgCECIDIAEgASADSRtBAXRBCGoiAWdrQQAgARsiBHQQ5gwiA0UEQCAAQQA6AAxBAA8LIANBASAEdCIFQQR0aiECIAMhAQNAIAEgAkYEQCAAQgA3AhAgACgCGCECIAAgBUEBazYCGCACQQFqQQAhASAEQR9LBH9B/////wcFIARBAnRBkMYAaigCAAshBkEAIAIbIQsgACgCICEJIAAgAzYCICAAIAY2AhwgACAEQQF0OwEOA0AgASALRgRAIAkQ5wwMBAsgCSABQQR0aiIDKAIEIgRBAXEEQAJAIARBAnYhBEEAIQYgAC0ADEEBRw0AAkAgACgCGCIIIAAoAhQiAkEBdiACak0EQCAAQQAQgQdFDQEgACgCGCEICyAEIAAoAhxwIQUgAygCACEHIAAoAiAhCkF/IQIDQAJAIAogBUEEdGoiDCgCBCINQQJxBEAgDCgCACAHRw0BCyAKIAUgAiACQX9GG0EEdGoiAi0ABEECcQRAIAAgACgCFEEBazYCFCAAIAAoAhAgAigCBEEBcWs2AhAgAygCACEHCyACIAc2AgAgAykCCCEOIAIgBEECdEEDcjYCBCACIA43AgggACAAKAIUQQFqIgM2AhQgACAAKAIQQQFqNgIQIAYgAC8BDk0NAiAAKAIYIgQgA0EDdE8NAiAAIARBCGsQgQcaDAILIAIgAiAFIAJBf0cbIA1BAXEbIQIgCCAGQQFqIgYgBWpxIQUMAAsACwsLIAFBAWohAQwACwAFIAFCADcCACABQgA3AgggAUEQaiEBDAELAAsAC0EBCzUBAX9BoBIgACgCBCgChAEoAgAiAkGgEiACGyICKAIMIAIoAhBBBEkbIAEQwAEgACABEIMHC/4BAQZ/IAEgAhCEB0UEQCABIAIQhQcgASgCCCEDIwBBEGsiBCQAIAQgAzYCDCAEQQA2AgggBEEIaiEHIAAvAAQiA0EIdCADQQh2ckH//wNxIQYgAC8AACIDQQh0IANBCHZyQf//A3EhCEEAIQMDQCAGIAMiBUcEQCADQQFqIQMgACAFEJQFIAcgCBCHB0UNAQsLIAUgBkkgBEEQaiQARQRAIAEgAhCGBw8LIAAvAAQiAkEIdCACQQh2ckH//wNxIQUgAC8AACICQQh0IAJBCHZyQf//A3EhA0EAIQIDQCACIAVHBEAgACACEJQFIAEgAxCYByACQQFqIQIMAQsLCws+AQF/IAAgACgCHCICQQFqNgIcAn9BASACQbiRAksNABpBASAAKAIUIgAtAAxBAUcNABogAEEMaiABEOABCwsPACAAKAIUQQxqIAEQjgELDwAgACgCGEEMaiABEI4BC+cEAQd/AkACQAJAAkACQAJAAkACQAJAIAJBAWsOCAABAgMEBQYHCAsgACABEIgHDwsgACABEIkHDwsgACABEIkHDwsgAC8AAEGAAkYEfyABKAIEIQIjAEGQAWsiASQAIAFBEGoiBCAALwACIgMEfyAAIANBCHQgA0EIdnJB//8DcWoFQaASCyAAQQRqELMFIAFBth42AgwgASACNgIIIAFBMGoiAyAEIAFBCGoQwAUgAUHYAGogA0EoENIMGiABIACtIAKtQiCGhDcChAEgAUG3HjYCgAEgAUGEAWohAANAAkAgAUHYAGoiBBC2BSIJRQ0AQQAhBSAEEMEFLwAAIgIEfyAAKAIAIAJBCHQgAkEIdnJB//8DcWoFQaASCyEDIAAoAgQhBiMAQSBrIgIkACADLwAAIQcgAiAGNgIcIAJBADYCECACIANBAmoiCDYCCCACIAOtQiCGQrUehDcCFCACIAdBCHQgB0EIdnJB//8DcSIDNgIMA0ACQCADRQ0AIAJBCGoQmAUgBhDCBQ0AIAIgBUEBaiIFNgIQIAIgA0EBayIDNgIMIAIgCEECaiIINgIIDAELCyACQSBqJAAgAw0AIAQQuAUaDAELCyABQZABaiQAIAkFQQALDwsgACABEIoHDwsgACABEIsHDwsgAC8AAEGAAkYEfyAAKAAEIgIEfyAAIAJBGHQgAkGA/gNxQQh0ciACQQh2QYD+A3EgAkEYdnJyagVBoBILIAEgAC8AAiIAQQh0IABBCHZyQf//A3EQhwcFQQALDwsgAC8AAEGAAkYEfyAAIAEoAgQQ5gUFQQALIQMLIAMLPQECfwJAAkACQCAALwAAIgNBCHQgA0EIdnJB//8DcUEBaw4CAAECCyABIAAQjAcPCyABIAAQjAchAgsgAgsaAQF/IAAvAABBgAJGBH8gASAAEIwHBUEACwv1BwEDfwJAAkACQAJAIAAvAAAiAkEIdCACQQh2ckH//wNxQQFrDgMAAQIDCyABKAIEIQIjAEGwAWsiASQAIAEgAjYCbCABQcgeKQIANwNgIAFBwB4pAgA3A1ggAUG4HikCADcDUCABQQhqIgQgAC8AAiIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsgAEEEahCzBSABQbYeNgIEIAEgAjYCACABQShqIgIgBCABEMAFIAFB8ABqIAJBKBDSDBogASABQewAaq0gAUHQAGqtQiCGhDcCpAEgASAArUIghkK1HoQ3ApwBIAFBtx42ApgBA0ACQCABQfAAaiIAELYFIgJFDQAgABCOByABKAKkASgCACABKAKoARCPBw0AIAAQuAUaDAELCyABQbABaiQAIAIPCyABKAIEIQNBACECIwBB8AFrIgEkACABIAM2ArQBIAAvAAIiBAR/IAAgBEEIdCAEQQh2ckH//wNxagVBoBILIAMQ0wUEQEGgEiECIAAvAAQiBARAIAAgBEEIdCAEQQh2ckH//wNxaiECCyABQgA3AaYBIAFCADcBrAEgAUIANwGeASABQQE6AJwBIAFBADYCmAEgAUKBgICAEDcCkAEgAUEANgKMASABIAI2AoQBIAFCgICAgCA3AnwgAUE6NgJ4IAEgAUGQAWo2AogBIAFBAToAUCABQQA2AkwgAUKBgICAEDcCRCABQdQAakEAQSEQ1AwaIAAvAAIiBAR/IAAgBEEIdCAEQQh2ckH//wNxagVBoBILIAMgAUHEAGoiAxCrBSABQQE6ABwgAUEANgIYIAFCgYCAgBA3AhAgAUEgakEAQSEQ1AwaIAIgAyABQRBqIgQQkQcgAC8ABiEDIAEgAjYC1AEgASAArUIghkK1HoQ3AswBIAFBADYCyAEgASAAQQhqNgLAASABQoCAgIAQNwO4ASABIANBCHQgA0EIdnJB//8DcSIANgLEASABIAFB+ABqNgLgASABIAQ2AtwBIAEgAUG0AWo2AtgBA0ACQCAARQ0AIAEoArgBIQMgASABKALAAS8AACICBH8gASgC0AEgAkEIdCACQQh2ckH//wNxagVBoBILNgLsASABIAM2AugBIAEgASkC6AE3AwhBACECAkAgASgC1AEgASgC2AEoAgAgASgCCCIDENkFRQ0AIAEoAtwBQQxqIAMQ4AFFDQAgASgCDCABKALYASgCACABKALgARCPByECCyACDQAgAUG4AWoQkgcaIAEoAsQBIQAMAQsLIAFBEGoQtgEaIAFBxABqELYBGiABQZABahAvIABBAEchAgsgAUHwAWokACACDwsgACABKAIEEI0HIQMLIAML+QgBB38CQAJAAkACQCAALwAAIgRBCHQgBEEIdnJB//8DcUEBaw4DAAECAwsgASgCBCEEIwBBwAFrIgEkACABIAQ2AnwgAUHUAGpB0B5BKBDSDBogAUEMaiIDIAAvAAIiAgR/IAAgAkEIdCACQQh2ckH//wNxagVBoBILIABBBGoQswUgAUG2HjYCCCABIAQ2AgQgAUEsaiIEIAMgAUEEahDABSABQYABaiAEQSgQ0gwaIAEgAUH8AGqtIAFB1ABqrUIghoQ3ArQBIAEgAK1CIIZCtR6ENwKsASABQbceNgKoAQNAAkAgAUGAAWoiABC2BSIERQ0AIAAQjgcgASgCtAEoAgAgASgCuAEQlgcNACAAELgFGgwBCwsgAUHAAWokACAEDwsgASgCBCEGIwBB0AJrIgEkACABIAY2ApQCIAAvAAIiBAR/IAAgBEEIdCAEQQh2ckH//wNxagVBoBILIAYQ0wUEQEGgEiEFQaASIQQgAC8ABCIDBEAgACADQQh0IANBCHZyQf//A3FqIQQLIAAvAAYiAwRAIAAgA0EIdCADQQh2ckH//wNxaiEFCyAALwAIIgMEfyAAIANBCHQgA0EIdnJB//8DcWoFQaASCyEHA0AgAUGgAWoiCCACaiIDQgA3AQ4gA0EBOgAMIANBADYCCCADQoGAgIAQNwIAIANCADcBFiADQgA3ARwgAkEkaiICQewARw0ACyABQQA2ApwBIAEgBzYCjAEgASAFNgKIASABIAQ2AoQBIAFCgICAgCA3AnwgAUE6NgJ4IAEgAUHoAWo2ApgBIAEgAUHEAWo2ApQBIAEgCDYCkAEgAUEBOgBQIAFBADYCTCABQoGAgIAQNwJEIAFB1ABqQQBBIRDUDBogAUGMAmohBCAALwACIgIEfyAAIAJBCHQgAkEIdnJB//8DcWoFQaASCyAGIAFBxABqIgIQqwUgAUEBOgAcIAFBADYCGCABQoGAgIAQNwIQIAFBIGpBAEEhENQMGiAFIAIgAUEQaiIDEJEHIAAvAAohAiABIAU2ArQCIAEgAK1CIIZCtR6ENwKsAiABQQA2AqgCIAEgAEEMajYCoAIgAUKAgICAEDcDmAIgASACQQh0IAJBCHZyQf//A3EiADYCpAIgASABQfgAajYCwAIgASADNgK8AiABIAFBlAJqNgK4AgNAAkAgAEUNACABKAKYAiEDIAEgASgCoAIvAAAiAgR/IAEoArACIAJBCHQgAkEIdnJB//8DcWoFQaASCzYCzAIgASADNgLIAiABIAEpAsgCNwMIQQAhAgJAIAEoArQCIAEoArgCKAIAIAEoAggiAxDZBUUNACABKAK8AkEMaiADEOABRQ0AIAEoAgwgASgCuAIoAgAgASgCwAIQlgchAgsgAg0AIAFBmAJqEJIHGiABKAKkAiEADAELCyAAQQBHIQIgAUEQahC2ARogAUHEAGoQtgEaA0AgBEEkayIEEC8gBCABQaABakcNAAsLIAFB0AJqJAAgAg8LIAAgASgCBBCVByECCyACCzEBAX8gACgCBCECIAEvAAIiAAR/IAEgAEEIdCAAQQh2ckH//wNxagVBoBILIAIQ0wULhQEBA38jAEEgayICJAAgAC8ABiIEBH8gACAEQQh0IARBCHZyQf//A3FqBUGgEgsgARDTBQRAIAJCADcCGCACQoCAgIAwNwIMIAJBPDYCCCACIAA2AhQgASAALwACIgFBCHQgAUEIdnJB//8DcSAAQQhqIAJBCGoQzwUhAwsgAkEgaiQAIAMLRQECfyMAQRBrIgEkACABQQhqIAAQtwUgASgCDC8AACICBH8gACgCMCACQQh0IAJBCHZyQf//A3FqBUGgEgsgAUEQaiQAC88BAQF/IwBBIGsiAyQAIAMgATYCACAALwAAIQEgAyADrSACrUIghoQ3AhggAyAArUIghkK1HoQ3AhAgA0EANgIMIAMgAEECajYCBCADIAFBCHQgAUEIdnJB//8DcSIANgIIIANBGGohAQNAAkAgAEUNACADQQRqEJgFIAEoAgAoAgAgASgCBBCQBw0AQQAhACADKAIIIgJFDQEgAyACQQFrIgA2AgggAyADKAIMQQFqNgIMIAMgAygCBEECajYCBAwBCwsgA0EgaiQAIABBAEcLIwAgASAALwAAIgFBCHQgAUEIdnJB//8DcSAAQQRqIAIQzwULzgUBBn8CQAJAAkAgAC8AACIDQQh0IANBCHZyQf//A3FBAWsOAgABAgsjAEHQAGsiBCQAAkAgAUEMaiIGEN8BDQAgAC8ABCEFIAAvAAIhAwJAIAYQ6gEgAC8AAiIBQQh0IAFBCHZyQf//A3FPBEAgBhDrASADQQh0IANBgP4DcUEIdnJB//8DcSAFQQh0IAVBgP4DcUEIdnJB//8DcWpBAWtNDQELIAJBDGpBABCOAQsgAC8ABCEDIARBQGsiASAAQQZqNgIAIARBADYCSCAEQoCAgIAQNwM4IAQgA0EIdCADQQh2ckH//wNxNgJEIARBADYCMCAEIAEpAwA3AyggBEKAgICAEDcDICACQQxqIQMgBEEMaiAEQThqEJMHA0AgBCgCLCEFIAQoAigiAiAEKAIURgRAIAUgBCgCGEYNAgsgBiAEKAIgIAAvAAIiAUEIdCABQQh2ckH//wNxahDgAQRAIAMgAkGgEiAFGy8AACIBQQh0IAFBCHZyQf//A3EQjgELIARBIGoQ1wUMAAsACyAEQdAAaiQADwsjAEEQayIHJAACQCABQQxqIggQ3wENACAHQX82AgwgAEEEaiIFIAAvAAIiA0EIdCADQQh2ckH//wNxQQZsaiEEIAUhAwNAAkACQCADIARGDQAgCCAHQQxqEOwBRQ0AIAcoAgwgAy8AACIGQQh0IAZBCHZyQf//A3FPDQEgAkEMakEAEI4BCwJAIAcoAgxBf0YNACAIIAdBDGoQ7AFFDQAgAkEMakEAEI4BCyAFIAAvAAIiAEEIdCAAQQh2ckH//wNxQQZsaiEDIAJBDGohAgNAIAMgBUYNAyAFIAEQ3AUEQCACIAUvAAQiAEEIdCAAQQh2ckH//wNxEI4BCyAFQQZqIQUMAAsACyAHIAMvAAIiBkEIdCAGQQh2ckH//wNxNgIMIANBBmohAwwACwALIAdBEGokAAsLHAAgACAAKAIAIAAoAgRqNgIAIABBCGoQggUgAAsfAQF+IAEpAgAhAiAAQQhqIAFBCGoQlAcgACACNwIACwsAIAAgAUEBEI4NC5gCAQR/IwBBMGsiAyQAQaASIQVBoBIhAiAAQQJqIAAvAAIiBEEIdCAEQQh2ckH//wNxQQF0aiIELwACBH8gBEEEagVBoBILLwAAIgIEQCAAIAJBCHQgAkEIdnJB//8DcWohBQtBACECIAUgARDTBQRAIAQvAAIhAiADQgA3AiggA0IANwIgIAMgADYCHCADIAA2AhggAyAANgIUIANCgICAgDA3AgwgA0E8NgIIIAEgAC8AAiIBQQh0IAFBCHZyQf//A3EgAEEEaiACQQh0IAJBCHZyQf//A3EiACAEQQZqIARBAmogAEEBdGoiAC8AAiIBQQh0IAFBCHZyQf//A3EgAEEEaiADQQhqEOUFIQILIANBMGokACACC88BAQF/IwBBIGsiAyQAIAMgATYCACAALwAAIQEgAyADrSACrUIghoQ3AhggAyAArUIghkK1HoQ3AhAgA0EANgIMIAMgAEECajYCBCADIAFBCHQgAUEIdnJB//8DcSIANgIIIANBGGohAQNAAkAgAEUNACADQQRqEJgFIAEoAgAoAgAgASgCBBCXBw0AQQAhACADKAIIIgJFDQEgAyACQQFrIgA2AgggAyADKAIMQQFqNgIMIAMgAygCBEECajYCBAwBCwsgA0EgaiQAIABBAEcLdQEBfyABIAAvAAAiAUEIdCABQQh2ckH//wNxIgEgAEECaiAAIAFBAXRqIgAvAAIiAUEIdCABQQh2ckH//wNxIgMgAEEEaiAAQQJqIANBAXRBAiABG2oiAC8AACIBQQh0IAFBCHZyQf//A3EgAEECaiACEOUFC4EBAAJAAkACQAJAIAJBBWsOAwABAgMLIAAgARCZBw8LIAAgARCaBw8LIAAvAABBgAJGBEAgACgABCICBH8gACACQRh0IAJBgP4DcUEIdHIgAkEIdkGA/gNxIAJBGHZycmoFQaASCyABIAAvAAIiAEEIdCAAQQh2ckH//wNxEJgHCwsL0wcBA38CQAJAAkACQCAALwAAIgJBCHQgAkEIdnJB//8DcUEBaw4DAAECAwsjAEGwAWsiAiQAIAIgATYCdCACQYgfKQIANwNoIAJBgB8pAgA3A2AgAkH4HikCADcDWCACQRBqIgQgAC8AAiIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsgAEEEahCzBSABKAIIIQEgAkG2HjYCDCACIAE2AgggAkEwaiIBIAQgAkEIahDABSACQfgAaiABQSgQ0gwaIAIgAK1CIIZCtR6ENwKkASACQbceNgKgASACIAJB2ABqNgIEIAIgAkH0AGo2AgADQCACQfgAaiIAELYFBEAgAiAAEI4HEJsHIAAQuAUaDAELCyACQbABaiQADwsjAEGwAWsiAiQAIAIgATYCdCAALwACIgMEfyAAIANBCHQgA0EIdnJB//8DcWoFQaASCyABKAIIENMFBEAgAC8ABCIBBH8gACABQQh0IAFBCHZyQf//A3FqBUGgEgshASACQgA3AWYgAkIANwFsIAJCADcBXiACQQE6AFwgAkEANgJYIAJCgYCAgBA3AlAgAkEANgJMIAJCgICAgCA3AjwgAkE6NgI4IAIgAkHQAGo2AkggAiABNgJEIAAvAAYhAyACQcUXNgI0IAIgAa0gAkH0AGqtQiCGhDcCLCACIACtQiCGQrUehDcCJCACQQA2AiAgAiAAQQhqNgIYIAJCgICAgBA3AxAgAiADQQh0IANBCHZyQf//A3EiADYCHCACQSxqIQEDQAJAIABFDQAgAigCECEDIAIgAigCGC8AACIABH8gAigCKCAAQQh0IABBCHZyQf//A3FqBUGgEgs2AnwgAiADNgJ4IAEgAkH4AGoQnQcNACACQRBqEJIHGiACKAIcIQAMAQsLIAJB+ABqIAJBEGpBKBDSDBogAkG3HjYCoAEgAiACQThqNgIMIAIgAkH0AGo2AgggAkGUAWohAQNAIAIoAoQBBEAgAkEIaiACKAKAAS8AACIABH8gAigCkAEgAEEIdCAAQQh2ckH//wNxagVBoBILEJsHA0AgAkH4AGoQkgcgAigChAFFDQIoAgAhAyACIAIoAoABLwAAIgAEfyACKAKQASAAQQh0IABBCHZyQf//A3FqBUGgEgs2AqwBIAIgAzYCqAEgASACQagBahCdB0UNAAsMAQsLIAJB0ABqEC8LIAJBsAFqJAAPCyAAIAEoAggQjQcEQCABIAAvAAQiAUEIdCABQQh2ckH//wNxIAAgAC8AAiIBQQh0IAFBCHZyQf//A3FBAXRqQQZqEJwHCwsLqQgBBn8CQAJAAkACQCAALwAAIgJBCHQgAkEIdnJB//8DcUEBaw4DAAECAwsjAEHAAWsiAiQAIAIgATYChAEgAkHcAGpBkB9BKBDSDBogAkEUaiIEIAAvAAIiAwR/IAAgA0EIdCADQQh2ckH//wNxagVBoBILIABBBGoQswUgASgCCCEBIAJBth42AhAgAiABNgIMIAJBNGoiASAEIAJBDGoQwAUgAkGIAWogAUEoENIMGiACIACtQiCGQrUehDcCtAEgAkG3HjYCsAEgAiACQdwAajYCCCACIAJBhAFqNgIEA0AgAkGIAWoiABC2BQRAIAJBBGogABCOBxCeByAAELgFGgwBCwsgAkHAAWokAA8LIwBBgAJrIgIkACACIAE2AswBIAAvAAIiAwR/IAAgA0EIdCADQQh2ckH//wNxagVBoBILIAEoAggQ0wUEQEGgEiEDQaASIQUgAC8ABCIBBEAgACABQQh0IAFBCHZyQf//A3FqIQULIAAvAAYiAQRAIAAgAUEIdCABQQh2ckH//wNxaiEDCyAALwAIIgEEfyAAIAFBCHQgAUEIdnJB//8DcWoFQaASCyEGA0AgAkHgAGoiByAEaiIBQgA3AQ4gAUEBOgAMIAFBADYCCCABQoGAgIAQNwIAIAFCADcBFiABQgA3ARwgBEEkaiIEQewARw0ACyACQQA2AlwgAiAGNgJMIAIgBTYCRCACQoCAgIAgNwI8IAJBOjYCOCACIAJBqAFqNgJYIAIgAkGEAWo2AlQgAiAHNgJQIAIgAzYCSCAALwAKIQQgAkG2HjYCNCACIAOtIAJBzAFqIgGtQiCGhDcCLCACIACtQiCGQrUehDcCJCACQQA2AiAgAiAAQQxqNgIYIAJCgICAgBA3AxAgAiAEQQh0IARBCHZyQf//A3EiAzYCHCACQSxqIQQgASEAA0ACQCADRQ0AIAQgAigCEBCfBw0AIAJBEGoQkgcaIAIoAhwhAwwBCwsgAkHQAWogAkEQakEoENIMGiACQbceNgL4ASACIAJBOGo2AgwgAiACQcwBajYCCCACQewBaiEDA0AgAigC3AEEQCACQQhqIAIoAtgBLwAAIgEEfyACKALoASABQQh0IAFBCHZyQf//A3FqBUGgEgsQngcDQCACQdABahCSByEBIAIoAtwBRQ0CIAMgASgCABCfB0UNAAsMAQsLA0AgAEEkayIAEC8gACACQeAAakcNAAsLIAJBgAJqJAAPCyAAIAEoAggQlQcEQCABIABBAmogAC8AAiIAQQh0IABBCHZyQf//A3FBAXRqIgBBAmogAC8AAiIAQQh0IABBCHZyQf//A3FBAXRqIgBBAmogAC8AAiIAQQh0IABBCHZyQf//A3FBAXRqIgAvAAIiAUEIdCABQQh2ckH//wNxIABBBGoQnAcLCwuyAgEFfyAAKAIAKAIAIQIgACgCBCEEIwBBMGsiACQAIAAgAjYCFAJAIAIoAhxBuJECSw0AIAEvAAAhAiAAIAQ2AhAgACAAQRRqNgIMIAAgAa1CIIZCtR6ENwIkIABBADYCICAAIAJBCHQgAkEIdnJB//8DcSIENgIcIAAgAUECaiIBNgIYA0AgBEUNASAAQRhqEJgFIQIgACgCECEGAkAgACgCDCgCACIDKAIcQbiRAksNACACIAMoAgggBhCQB0UNACADIAIvAAIiA0EIdCADQQh2ckH//wNxIAIgAi8AACIDQQh0IANBCHZyQf//A3FBAXRBAmtBACADG2pBBGoQnAcLIAAgBUEBaiIFNgIgIAAgBEEBayIENgIcIAAgAUECaiIBNgIYDAALAAsgAEEwaiQAC5UBAQN/A0AgASAERwRAIAIgBEECdGovAAIiA0EIdCADQQh2ckH//wNxIQMCQCAAKAIQRQ0AIAAoAgxFDQAgACgCHEG4kQJLDQAgACgCFCIFLQAMQQFHDQAgBUEMaiADEOABDQAgACAAKAIQQQFrNgIQIAAgAyAAKAIMEQEAIAAgACgCEEEBajYCEAsgBEEBaiEEDAELCwtBAgF/AX4jAEEQayICJAAgAiABKQIAIgM3AwAgAiADNwMIIAAoAgAgACgCBCgCACgCCCACKAIAENkFIAJBEGokAAvqAgEFfyAAKAIAKAIAIQMgACgCBCECIwBBMGsiACQAIAAgAzYCFAJAIAMoAhxBuJECSw0AIAEvAAAhAyAAIAI2AhAgACAAQRRqNgIMIAAgAa1CIIZCtR6ENwIkIABBADYCICAAIANBCHQgA0EIdnJB//8DcSIDNgIcIAAgAUECaiIBNgIYA0AgA0UNASAAQRhqEJgFIQIgACgCECEGAkAgACgCDCgCACIEKAIcQbiRAksNACACIAQoAgggBhCXB0UNACAEIAIgAi8AACIEQQh0IARBCHZyQf//A3FBAXRqIgJBAmogAi8AAiICQQh0IAJBCHZyQf//A3FBAXRBAiACG2oiAiACLwAAIgJBCHQgAkEIdnJB//8DcUEBdGoiAi8AAiIEQQh0IARBCHZyQf//A3EgAkEEahCcBwsgACAFQQFqIgU2AiAgACADQQFrIgM2AhwgACABQQJqIgE2AhgMAAsACyAAQTBqJAALFwAgACgCACAAKAIEKAIAKAIIIAEQ2QULLAAgACABKQIANwIAIAAgASgCCDYCCANAIAAoAgRBf0ZFBEAgABC9AQwBCwsLPQEBfyMAQRBrIgIkACAAKAIAIAIgAS8AACIBQQh0IAFBCHZyQf//A3E2AgwgAkEMakEAEIUBIAJBEGokAAtKACAAIAEpAgA3AgAgACABKAIINgIIIAAgAzYCECAAIAI2AgwDQAJAIAAoAgRFDQAgACgCDCAAKAIAEKEHDQAgABCCBQwBCwsgAAuiAgEDfyMAQUBqIgIkAAJAAkAgAC8AAiIDQf//A0YEQCAALwAEDQEMAgsgASgCCCACIANBCHQgA0EIdnJB//8DcTYCKCACQShqQQAQhQFFDQAgASgCDEEMaiAALwACIgNBCHQgA0EIdnJB//8DcRCOAQsgAC8ABCEDIAJBADYCECACIABBBmo2AgggAiADQQh0IANBCHZyQf//A3E2AgwgAkHFFzYCBCACIAFBCGo2AgAgAkEUaiACQQhqIAIQ9AYgASgCDCACIAIoAiQ2AjggAiACKQIcNwMwIAIgAikCFDcDKEEMaiEAA0AgAigCLEUNASAAIAIoAigvAAAiAUEIdCABQQh2ckH//wNxEI4BIAJBKGoQ9QYMAAsACyACQUBrJAALbgIDfwF+IAEpAgAhBSABKAIMIQQgAEEIaiICIAEpAgg3AgAgAiABKAIQNgIIIAIoAgQiAyAEIgFJBEAgAyEBCyACIAMgAWs2AgQgAiACKAIIIAFqNgIIIAIgAigCACABQQZsajYCACAAIAU3AgALGgAgACAAKAIAIAAoAgRqNgIAIABBCGoQgQULSgECfyMAQRBrIgEkACAAKAIUKAIAIAEgACgCAEGgFyAAKAIEGy8AACIAQQh0IABBCHZyQf//A3E2AgwgAUEMahCCASABQRBqJAALNQEBf0GgEiAAKAIEKAKIASgCACICQaASIAIbIgIoAgwgAigCEEEESRsgARDAASAAIAEQqAcL/gEBBn8gASACEIQHRQRAIAEgAhCFByABKAIIIQMjAEEQayIEJAAgBCADNgIMIARBADYCCCAEQQhqIQcgAC8ABCIDQQh0IANBCHZyQf//A3EhBiAALwAAIgNBCHQgA0EIdnJB//8DcSEIQQAhAwNAIAYgAyIFRwRAIANBAWohAyAAIAUQlAUgByAIEKkHRQ0BCwsgBSAGSSAEQRBqJABFBEAgASACEIYHDwsgAC8ABCICQQh0IAJBCHZyQf//A3EhBSAALwAAIgJBCHQgAkEIdnJB//8DcSEDQQAhAgNAIAIgBUcEQCAAIAIQlAUgASADEK0HIAJBAWohAgwBCwsLC8EGAQh/AkACQAJAAkACQAJAAkACQCACQQFrDgkAAQIHBwcDBAUGCyAAIAEQiAcPCwJ/QQAhAgJAAkACQCAALwAAIgNBCHQgA0EIdnJB//8DcUEBaw4CAAECCyABKAIEIQIjAEGQAWsiASQAIAAvAAIiAwR/IAAgA0EIdCADQQh2ckH//wNxagVBoBILIQMgAEEIaiEFAkAgAC8ACCIEQQh0IARBCHZyQf//A3EgAkEMahDIAUEgIAAvAAgiBEEIdCAEQQh2ckH//wNxZ2tBACAEG2xBAnZLBEAgAUHYAGogAhC4ASABIAEoAmA2AjggASABKQJYNwMwIABBBGohByAAQQpqIQggASgCWCEJA0AgASgCNCIGQX9HIAEoAjAgCUdyIgRFDQIgAyAGEJUFIgYgBS8AACIKQQh0IApBCHZyQf//A3FJBH8gCCAGQQF0agVBoBILLwAAIgYEfyAAIAZBCHQgBkEIdnJB//8DcWoFQaASCyACIAcQqwcNAiABQTBqEL0BDAALAAsgAUEQaiIEIAMgBRCzBSABQbYeNgIMIAEgAjYCCCABQTBqIgMgBCABQQhqELQFIAFB2ABqIANBKBDSDBogASACrSAArUIghoQ3AoQBIAFBtx42AoABIAFBhAFqIQADQCABQdgAaiICELYFIgRFDQEgAhDBBSAAKAIEIQMvAAAiBQR/IAMgBUEIdCAFQQh2ckH//wNxagVBoBILIAAoAgAgA0EEahCrBw0BIAIQuAUaDAALAAsgAUGQAWokACAEDAILIAAgASgCBBCqByECCyACCw8LIAAgARCJBw8LIAAgARCKBw8LIAAgARCLBw8LIAAvAABBgAJGBH8gACgABCICBH8gACACQRh0IAJBgP4DcUEIdHIgAkEIdkGA/gNxIAJBGHZycmoFQaASCyABIAAvAAIiAEEIdCAAQQh2ckH//wNxEKkHBUEACyEDCyADDwsgAC8AAEGAAkYEfyABKAIEIQEgAC8AAiICBH8gACACQQh0IAJBCHZyQf//A3FqBUGgEgsgARDTBQR/IAAvAAQiAgR/IAAgAkEIdCACQQh2ckH//wNxagVBoBILIAEQ0wUFQQALBUEACwvjBAEHfyAALwACIgIEfyAAIAJBCHQgAkEIdnJB//8DcWoFQaASCyABENMFBH8Cf0EAIQICQAJAAkAgAC8ACiIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsiAy8AACIAQQh0IABBCHZyQf//A3FBAWsOAgABAgsjAEEQayIAJAAgAy8ABCECIAAgAy8AAiIEQQh0IARBCHZyQf//A3EiBEEBazYCDCACQQh0IAJBCHZyQf//A3EgBGohAiADQQZqIQUgAUEMaiEBA0AgASAAQQxqEOwBIAAoAgwiBiACSXEiBwRAIAYgBGsiBiADLwAEIghBCHQgCEEIdnJB//8DcU8Ef0GgEgUgBSAGQQF0agsvAABFDQELCyAAQRBqJAAgBwwCCyMAQSBrIgAkAAJAIAMvAAIiAkEIdCACQQh2ckH//wNxIAFBDGoQyAFBICADLwACIgRBCHQgBEEIdnJB//8DcSICZ2tBACAEG2xBAXZLBEAgAEEQaiABELgBIABBBGogARC5ASAAKAIEIQIgACgCCCEEA0AgACgCFCIFIARHIAAoAhAgAkdyIgFFDQIgAyAFEP4EDQIgAEEQahC9AQwACwALIAAgATYCHCAAQQA2AhggACACNgIUIAAgA0EEajYCEANAAkAgAkUNACAAKAIQQaoXIAAoAhQbIgEgACgCHBDcBSABLwAEQQBHcQ0AQQAhAiAAKAIUIgFFDQEgACABQQFrIgI2AhQgACAAKAIYQQFqNgIYIAAgACgCEEEGajYCEAwBCwsgAkEARyEBCyAAQSBqJAAgASECCyACCwVBAAsLcgEDfyACEKwHIQQgAC8AACICQQh0IAJBCHZyQf//A3EhAyABQQxqIQEgAEECaiECQQAhAANAAkAgACADRg0AIAEgAi8AACIFQQh0IAVBCHZyQf//A3EQ4AENACAAQQFqIQAgAiAEaiECDAELCyAAIANJCxUAIAAvAAJpIAAvAABpakEBdEECaguBAQACQAJAAkACQCACQQdrDgMAAQIDCyAAIAEQmQcPCyAAIAEQmgcPCyAALwAAQYACRgRAIAAoAAQiAgR/IAAgAkEYdCACQYD+A3FBCHRyIAJBCHZBgP4DcSACQRh2cnJqBUGgEgsgASAALwACIgBBCHQgAEEIdnJB//8DcRCtBwsLC98MARR/AkAgASgCDCAAIAEoAgRrSQ0AIAEoAgggAGtBBEkNACAALwAAQYACRw0AAn8CQCAAQQRqIAEQmwVFDQBBASEGAkAgAC8ABCICRQ0AAkAgASgCDCAAIAJBCHQgAkEIdnJB//8DcWoiCCABKAIEa0kNACABKAIIIAhrQdYBSQ0AIAhBCGohAwNAIAQiAkEzRwRAIAJBAWohBCADIAJBAnRqIAEgCBCvBw0BCwsgAkEySyEECyAEDQAgASgCICIEQR9LDQEgASAEQQFqNgIgQQAhBiABLQAcQQFHDQAgAEEAOwAEQQEhBgsgBgwBC0EAC0UNAAJ/AkAgAEEGaiABEJsFRQ0AQQEhBgJAIAAvAAYiAkUNAEEAIQQCQCABKAIMIAAgAkEIdCACQQh2ckH//wNxaiIHIAEoAgRrSQ0AIAEoAgggB2tBCEkNACAHIAEgBxCwB0UNACAHQQJqIAEgBxCwB0UNACAHQQRqIAEgBxCdBUUNAAJ/AkAgB0EGaiABEJsFRQ0AQQEhBAJAIAcvAAYiAkUNAAJAIAEoAgwgByACQQh0IAJBCHZyQf//A3FqIgogASgCBGtJDQAgASgCCCAKa0EESQ0AIAogASAKEJ0FRQ0AIApBAmogARCSBEUNACAKLwACIgJBCHQgAkEIdnJB//8DcSETIApBBGohFANAIAsgE0YiEA0BIAtBA3QgC0EBaiELIBRqIRVBACEIA0AgCCIOQQRHBEAgCEEBaiEIAn9BACEMAkAgFSAOQQF0aiISIAEQmwVFDQBBASERAkAgEi8AACICRQ0AAkAgASgCDCAKIAJBCHQgAkEIdnJB//8DcWoiAiABKAIEa0kNACABKAIIIAJrQQJJDQAgASACQQJqIg0gAi8AACIDQQh0IANBCHZyQf//A3FBAXRBAXIQ9QVFDQAgAi8AACIDQQh0IANBCHZyQf//A3FBAXQiBUEBciEJIA0hDEEAIQMDQCAJIAMiDUcEQCADQQFqIQMgDCANQQJ0aiABIAIQrwcNAQsLIAUgDUkhDAsgDA0AIAEoAiAiAkEfSw0BIAEgAkEBajYCIEEAIREgAS0AHEEBRw0AIBJBADsAAEEBIRELIBEMAQtBAAsNAQsLIA5BA0sNAAsLIBANACABKAIgIgRBH0sNASABIARBAWo2AiBBACEEIAEtABxBAUcNACAHQQA7AAZBASEECyAEDAELQQALIQQLIAQNACABKAIgIgRBH0sNASABIARBAWo2AiBBACEGIAEtABxBAUcNACAAQQA7AAZBASEGCyAGDAELQQALRQ0AAn8CQCAAQQhqIAEQmwVFDQBBASEGAkAgAC8ACCICRQ0AQQAhBAJAIAEoAgwgACACQQh0IAJBCHZyQf//A3FqIgUgASgCBGtJDQAgASgCCCAFa0EKSQ0AIAVBAmogASAFEJ0FRQ0AIAVBBGogASAFEJ0FRQ0AIAEgBUEKaiIIIAUvAAgiAkEIdCACQQh2ckH//wNxIAUvAAYiAkEIdCACQQh2ckH//wNxahD5BEUNACAFLwAIIgJBCHQgAkEIdnJB//8DcSAFLwAGIgJBCHQgAkEIdnJB//8DcWohDgNAIA4gBCICRwRAIAJBAWohBAJ/QQAhEEEAIQwCQCAIIAJBAXRqIg0gARCbBUUNAEEBIQsCQCANLwAAIgNFDQACQCABKAIMIAUgA0EIdCADQQh2ckH//wNxaiIJIAEoAgRrSQ0AIAEoAgggCWtBBEkNAAJ/AkAgCSABEJsFRQ0AQQEhDwJAIAkvAAAiA0UNAAJAIAEoAgwgCSADQQh0IANBCHZyQf//A3FqIgMgASgCBGtJDQAgASgCCCADa0EGSQ0AIAMgASADEK8HRQ0AIANBBGogARCxByEQCyAQDQAgASgCICIDQR9LDQEgASADQQFqNgIgQQAhDyABLQAcQQFHDQAgCUEAOwAAQQEhDwsgDwwBC0EAC0UNACAJQQJqIAEQowQhDAsgDA0AIAEoAiAiA0EfSw0BIAEgA0EBajYCIEEAIQsgAS0AHEEBRw0AIA1BADsAAEEBIQsLIAsMAQtBAAsNAQsLIAIgDk8hBAsgBA0AIAEoAiAiBEEfSw0BIAEgBEEBajYCIEEAIQYgAS0AHEEBRw0AIABBADsACEEBIQYLIAYMAQtBAAshDwsgDws0AQF/AkAgASgCDCAAIAEoAgRrSQ0AIAEoAgggAGtBBEkNACAAQQJqIAEgAhChBSEDCyADC/ABAQZ/AkAgACABEJsFRQ0AQQEhBAJAIAAvAAAiA0UNAAJAIAEoAgwgAiADQQh0IANBCHZyQf//A3FqIgIgASgCBGtJDQAgASgCCCACa0EESQ0AIAIgASACEJ0FRQ0AIAJBAmogARCjBEUNACACLwACIgNBCHQgA0EIdnJB//8DcSEGIAJBBGohB0EAIQMDQCADIAZGIgUNASADQQJ0IQggA0EBaiEDIAcgCGogASACEK8HDQALCyAFDQAgASgCICICQR9LDQEgASACQQFqNgIgQQAhBCABLQAcQQFHDQAgAEEAOwAAQQEhBAsgBA8LQQALCwAgACABQQoQ8gwLgAECAX8BfiMAQRBrIgMkACACKQIAIQQgACABKQIANwIAIAAgASkCCDcCCCAAIAEpAhA3AhAgACABKQIYNwIYIAAgBDcCIANAAkAgABC2BUUNACAAKAIgIANBCGogABC3BSgCAEEMaiADKAIIEOABDQAgABC9BQwBCwsgA0EQaiQAC58BAQJ/IAAvAAAiAgR/IAAgAkEIdCACQQh2ckH//wNxagVBoBILIgNBBmoiAiADLwAEIgNBCHQgA0EIdnJB//8DcUEKbGohAwNAIAIgA0cEQCACIAEQtQcgAkEKaiECDAELCyAAQQRqIgIgAC8AAiIAQQh0IABBCHZyQf//A3FBAnRqIQADQCAAIAJHBEAgAiABELUHIAJBBGohAgwBCwsLRwECfyMAQRBrIgEkAANAAkAgABC9BSAAELYFRQ0AIAAoAiAgAUEIaiAAELcFKAIAQQxqIAEoAggQ4AFFDQELCyABQRBqJAALHwAgAUEMaiAALwAAIgBBCHQgAEEIdnJB//8DcRCOAQvuAQEDfyAALQAsRQRAIAEQRyECIABBAToALCAAIAI2AigLAn8gACABQdKYvZoEEEMiARA1A0AgABA2IAAoAgQiAkUEQCAAEDcgAQwCCyACIAAQuAchBCAAKAIgIQMCQAJAAkACQCAEBEAgA0UNAiAAQQA2AiAgAiAAELgHIQIgACgCICAAEDcgAkVyDQEMAwsCQCADRQ0AIAAtABwNACAAIAEQFiICNgIEIAAgAiABKAIQajYCCCACDQQLIAAQNwsgARAPQaASDAQLIAAQNwsgASgCBARAIAFBADYCBAsgAQwCCyAAQQE6ABwMAAsACwuwAwEHfyABQQAgAUEAShshAwJAIAAoAgAiAkEASA0AQQEhBSACIANPDQAgAiEBA0AgASADSQRAIAEgAUEBdmpBCGohAQwBCwsCfyABQdaq1SpPBEAgAkF/cyEBQQAMAQsCfwJAIAFFBEAgAEEIaiEHDAELQQAgAUEwbBDmDCIGRQ0BGiAAQQhqIQdBACECA0AgAiAAKAIETw0BIAYgAkEwbCIIaiIEQgA3AgggBEKBgICAEDcCACAEQQE6AAwgBEEOakEAQSIQ1AwaIAQgACgCCCAIahCxBiAAKAIIIAhqEJ8CGiACQQFqIQIMAAsACyAHKAIAEOcMIAYLIgIgAUVyRQRAIAEgACgCACICTQ0CIAJBf3MhAUEADAELIAAgAjYCCEEBCyEFIAAgATYCAAsgBQRAAkAgACgCBCIBIANJBEAgACgCBCEBA0AgASADSQRAIAAoAgggAUEwbGoiAUIANwIIIAFCgYCAgBA3AgAgAUEBOgAMIAFBDmpBAEEiENQMGiAAIAAoAgRBAWoiATYCBAwBCwsMAQsgASADTQ0AIAAgAxDLBwsgACADNgIECyAFC6oKAgx/AX4CQCABKAIMIAAgASgCBGtJDQAgASgCCCAAa0EOSQ0AIAEgACAAKAAEIgNBGHQgA0GA/gNxQQh0ciADQQh2QYD+A3EgA0EYdnJyaiAALwACIgNBCHQgA0EIdnJB//8DcRCkBEUNACABIAAgACgACCIDQRh0IANBgP4DcUEIdHIgA0EIdkGA/gNxIANBGHZycmogAC8ADCIDQQh0IANBCHZyQf//A3EQ9QVFDQAgAC8AAEUEQEEBDwsgAC8AAEGAAkcNAAJ/AkAgAEEOaiABEJQERQ0AQQEhAwJAIAAoAA4iAkUNACAAIAJBGHQgAkGA/gNxQQh0ciACQQh2QYD+A3EgAkEYdnJyaiIGIAEQ4QQEfyAGKAAAIgJBGHQgAkGA/gNxQQh0ciACQQh2QYD+A3EgAkEYdnJyIQcgBkEEaiEIQQAhAgNAIAIgB0YiCUUEQCACQQZsIQUgAkEBaiECQQAhBAJAIAEoAgwgBSAIaiIFIAEoAgRrSQ0AIAEoAgggBWtBBkkNACAFQQJqIAEgBhC5ByEECyAEDQELCyAJBUEACw0AIAEoAiAiA0EfSw0BIAEgA0EBajYCIEEAIQMgAS0AHEEBRw0AIABBADYADkEBIQMLIAMMAQtBAAtFDQACfwJAIABBEmogARCUBEUNAEEBIQMCQCAAKAASIgJFDQAgACACQRh0IAJBgP4DcUEIdHIgAkEIdkGA/gNxIAJBGHZycmoiBCABEJcEBH8gBCgAACICQRh0IAJBgP4DcUEIdHIgAkEIdkGA/gNxIAJBGHZyciEGIARBBGohBUEAIQIDQCACIAZGIgdFBEAgAkECdCEIIAJBAWohAiAFIAhqIAEgBBC5Bw0BCwsgBwVBAAsNACABKAIgIgNBH0sNASABIANBAWo2AiBBACEDIAEtABxBAUcNACAAQQA2ABJBASEDCyADDAELQQALRQ0AAn8CQCAAQRZqIAEQlARFDQBBASEDAkAgACgAFiICRQ0AQQAhBUEAIQkCQCABKAIMIAAgAkEYdCACQYD+A3FBCHRyIAJBCHZBgP4DcSACQRh2cnJqIgIgASgCBGtJDQAgASgCCCACa0EFSQ0AAkAgASgCDCACQQFqIgQgASgCBGtJDQAgASgCCCAEa0EESQ0AIAQoAAAiBkEYdCAGQYD+A3FBCHRyIAZBCHZBgP4DcSAGQRh2cnKtQgd+Ig5CIIinDQAgASAEQQRqIA6nEJMEIQULIAVFDQAgAigAASIEQRh0IARBgP4DcUEIdHIgBEEIdkGA/gNxIARBGHZyciELIAJBBWohDEEAIQYDQCAGIAtGIgkNASAGQQdsIQUgBkEBaiEGQQAhBAJAIAEoAgwgBSAMaiIFIAEoAgRrSQ0AIAEoAgggBWtBB0kNAEEAIQdBACEIAkAgBUEEaiIEIAEQ+gVFDQBBASEIIAQQkgUNAAJAIAEoAgwgAiAELQACIAQtAAFBCHQgBC0AAEEQdHJyaiIFIAEoAgRrSQ0AIAEoAgggBUYNAEEBIQdBCCEKAkACQCAFLQAAQQFrDgIBAAILQQwhCgsgASgCCCAFayAKSyABKAIMIAUgASgCBGtPcSEHCyAHDQAgBCABEPsFIQgLIAghBAsgBA0ACwsgCQ0AIAEoAiAiA0EfSw0BIAEgA0EBajYCIEEAIQMgAS0AHEEBRw0AIABBADYAFkEBIQMLIAMMAQtBAAtFDQAgAEEaaiABIAAQoQRFDQAgAEEeaiABIAAQoAQhDQsgDQuBAQECfwJAIAAgARCUBEUNAEEBIQQCQCAAKAAAIgNFDQAgAiADQRh0IANBgP4DcUEIdHIgA0EIdkGA/gNxIANBGHZycmogARC6Bw0AIAEoAiAiAkEfSw0BIAEgAkEBajYCIEEAIQQgAS0AHEEBRw0AIABBADYAAEEBIQQLIAQPC0EAC9sIAQN/AkAgASgCGCICQT9KDQAgASACQQFqIgI2AhggAkUNAAJ/QQAhAgJAAkACQCABKAIMIAAgASgCBGtJDQAgASgCCCAARg0AQQEhAgJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAC0AAEEBaw4gAAECAwQFBgcICQoLDBscGxwNDg8QERITFBUWGxwXGBkaCyABKAIIIABrQQVLIAEoAgwgACABKAIEa09xDBwLIAEoAgggAGtBBEsgASgCDCAAIAEoAgRrT3EMGwsgASgCCCAAa0EISyABKAIMIAAgASgCBGtPcQwaCyAAIAEQuwcMGQsgACABELwHDBgLIAAgARC7BwwXCyAAIAEQvAcMFgtBACECAkAgASgCDCAAIAEoAgRrSSIDDQAgASgCCCAAa0EMSSIEDQAgAyAEckUEQCAAQQFqIAEgABDEByECCwsgAgwVC0EAIQICQCABKAIMIAAgASgCBGtJIgMNACABKAIIIABrIgRBEEkNACAEQQxJIANyRQRAIABBAWogASAAEMUHIQILCyACDBQLIAAgARC9BwwTCyABKAIIIABrQQJLIAEoAgwgACABKAIEa09xDBILQQAhAgJAIAEoAgwgACABKAIEa0kNACABKAIIIABrQQdJDQAgAEEBaiABIAAQxgdFDQACQCAAQQRqIgMgARD6BUUNAEEBIQIgAxCSBQ0AIAEoAgwgACADLQACIAMtAAFBCHQgAy0AAEEQdHJyaiIAIAEoAgRrTwRAIAEoAgggAGtBF0sNAQsgAyABEPsFIQILCyACDBELQQAhAgJAIAEoAgwgACABKAIEa0kNACABKAIIIABrQQdJDQAgAEEBaiABIAAQxgdFDQACQCAAQQRqIgMgARD6BUUNAEEBIQIgAxCSBQ0AIAEoAgwgACADLQACIAMtAAFBCHQgAy0AAEEQdHJyaiIAIAEoAgRrTwRAIAEoAgggAGtBG0sNAQsgAyABEPsFIQILCyACDBALIAAgARC+BwwPCyAAIAEQvwcMDgsgACABEMAHDA0LIAAgARDBBwwMCyAAIAEQwgcMCwsgACABEMMHDAoLIAAgARDABwwJCyAAIAEQwQcMCAsgACABEMIHDAcLIAAgARDDBwwGCyAAIAEQvgcMBQsgACABEL8HDAQLQQAhAgJAIAEoAgwgACABKAIEa0kNACABKAIIIABrQQhJDQAgAUF/IAEoAhAiA0EIayADQQhMGzYCECADQQlIDQAgAEEBaiABIAAQxgdFDQAgAEEFaiABIAAQxgchAgsLIAIMAgtBACECAkAgASgCDCAAIAEoAgRrSQ0AIAEoAgggAGtBCEkNACAAIAEQxwchAgsgAgwBC0EAIQICQCABKAIMIAAgASgCBGtJDQAgASgCCCAAa0EMSQ0AIAAgARDHByECCyACCyEDIAEgASgCGEEBazYCGAsgAwtBAQN/AkAgASgCDCAAIAEoAgRrSSIDDQAgASgCCCAAa0EQSSIEDQAgAyAEckUEQCAAQQFqIAEgABDEByECCwsgAgtEAQN/AkAgASgCDCAAIAEoAgRrSSIDDQAgASgCCCAAayIEQRRJDQAgBEEQSSADckUEQCAAQQFqIAEgABDFByECCwsgAgsLACAAIAFBBhD6DAsLACAAIAFBDBD7DAsLACAAIAFBEBD7DAsLACAAIAFBBhD8DAsLACAAIAFBChD8DAsLACAAIAFBChD9DAsLACAAIAFBDhD9DAtxAQJ/AkAgACABEPoFRQ0AQQEhAyAAEJIFDQACQCABKAIMIAIgAC0AAiAALQABQQh0IAAtAABBEHRycmoiAiABKAIEa0kNACABKAIIIAJrQQNJDQAgAkEBaiABEJwFIQQLIAQNACAAIAEQ+wUhAwsgAwtxAQJ/AkAgACABEPoFRQ0AQQEhAyAAEJIFDQACQCABKAIMIAIgAC0AAiAALQABQQh0IAAtAABBEHRycmoiAiABKAIEa0kNACABKAIIIAJrQQNJDQAgAkEBaiABELEHIQQLIAQNACAAIAEQ+wUhAwsgAwtIAQF/AkAgACABEPoFRQ0AQQEhAyAAEJIFDQAgAiAALQACIAAtAAFBCHQgAC0AAEEQdHJyaiABELoHDQAgACABEPsFIQMLIAMLCwAgACABQQgQ+gwLCwAgACABQQwQ+gwLCwAgACABQQoQ+gwLuQEBBH8jAEEQayIEJAAgAC8AAiEFIAAoAAQhAyAEIAE2AgwjAEEQayICJAAgAkEANgIMIAIgBUEIdCAFQQh2ckH//wNxNgIIIAIgACADQRh0IANBgP4DcUEIdHIgA0EIdkGA/gNxIANBGHZycmo2AgQgAkEEaiAEQQxqEOMGIQAgAkEQaiQAAkAgAEGgEkcEQCABIAAvAAAiAkEIdCACQQh2ckH//wNxRg0BC0EAIQALIARBEGokACAACwsAIAAgAUEwEPQMC9QCAgh/AX4gAC0ADEEBRwRADwsCQCAAKAIYIgYgACgCFCIEQQF2IARqTQRAIABBABDNB0UNASAAKAIYIQYLIAJB/////wNxIgkgACgCHHAhAiABKAIAIQUgACgCICEHQX8hBANAAkAgByACQQR0aiIKKAIEIgtBAnEEQCAKKAIAIAVHDQELIAcgAiAEIARBf0YbQQR0aiICLQAEQQJxBEAgACAAKAIUQQFrNgIUIAAgACgCECACKAIEQQFxazYCECABKAIAIQULIAIgBTYCACADKQIAIQwgAiAJQQJ0QQNyNgIEIAIgDDcCCCAAIAAoAhRBAWoiATYCFCAAIAAoAhBBAWo2AhAgCCAALwEOTQ0CIAAoAhgiAiABQQN0Tw0CIAAgAkEIaxDNBxoMAgsgBCAEIAIgBEF/RxsgC0EBcRshBCAGIAhBAWoiCCACanEhAgwACwALC8MCAQV/IAAtAAxBAUcEQEEADwsCQCABBEAgACgCGCABQQF2IAFqSw0BC0EQQSAgACgCECICIAEgASACSRtBAXRBCGoiAWdrQQAgARsiBHQQ5gwiAkUEQCAAQQA6AAxBAA8LIAJBASAEdCIFQQR0aiEDIAIhAQNAIAEgA0YEQCAAQgA3AhAgACgCGCEDIAAgBUEBazYCGCADQQFqQQAhASAEQR9LBH9B/////wcFIARBAnRBkMYAaigCAAshBUEAIAMbIQYgACgCICEDIAAgAjYCICAAIAU2AhwgACAEQQF0OwEOA0AgASAGRgRAIAMQ5wwMBAsgAyABQQR0aiICKAIEIgRBAXEEQCAAIAIgBEECdiACQQhqEMwHCyABQQFqIQEMAAsABSABQgA3AgAgAUIANwIIIAFBEGohAQwBCwALAAtBAQsXACAALwAEIgBBCHQgAEEIdnJB//8DcQuCAgEEfyMAQRBrIgMkACAAKAIEKAIAIQUgAyAAKAIAIgAoAgg2AgggAyAAKQIANwMAIwBBQGoiAiQAAkACQAJAAkACQCABLwAAIgBBCHQgAEEIdnJB//8DcUEBaw4EAAECAwQLIAIgAygCCDYCCCACIAMpAgA3AwAgASACIAUQ0QchBAwDCyACIAMoAgg2AhggAiADKQIANwMQIAEgAkEQaiAFENEHIQQMAgsgAiADKAIINgIoIAIgAykCADcDICABIAJBIGogBRDRByEEDAELIAIgAygCCDYCOCACIAMpAgA3AzAgASACQTBqIAUQ0gchBAsgAkFAayQAIANBEGokACAEC40BAQJ/Qf//AyEBAkACQAJAAkACQCAALwAAIgJBCHQgAkEIdnJB//8DcUEBaw4EAAECAwQLIAAvAAYiAEEIdCAAQQh2ciEBDAMLIAAvAAYiAEEIdCAAQQh2ciEBDAILIAAvAAYiAEEIdCAAQQh2ciEBDAELIAAvAAYiAEEIdCAAQQh2ciEBCyABQf//A3ELiQEBAX9BoBIgASgCACAALwACIgNBCHQgA0EIdnJB//8DcSIDQQN0aiABKAIEIANNGygAACIBQRh0IAFBgP4DcUEIdHIgAUEIdkGA/gNxIAFBGHZyciAAKAAIIgBBGHQgAEGA/gNxQQh0ciAAQQh2QYD+A3EgAEEYdnJyskMAAIA3lCACENMHQQFzC84BAQV/IABBCGoiAyAALwACIgBBCHQgAEEIdnJB//8DcUEGbGohBCABKAIAIQUgASgCBCEGA0AgAyAERiIHRQRAIAMvAAAhASADKAACIQAgA0EGaiEDQaASIAUgAUEIdCABQQh2ckH//wNxIgFBA3RqIAEgBk8bKAAAIgFBGHQgAUGA/gNxQQh0ciABQQh2QYD+A3EgAUEYdnJyIABBGHQgAEGA/gNxQQh0ciAAQQh2QYD+A3EgAEEYdnJyskMAAIA3lCACENMHRQ0BCwsgBwtRAgJ/AXwjAEEQayIDJAAgAyAANgIMQQAhACACIANBDGoiBEEAELcCBEAgAbsiBSACIAQQ4gIiACsDAGMgACsDECAFY3IhAAsgA0EQaiQAIAALPwAgAC8ABEGAAUYEQCABKAIEQQxqIAAoAAAiAEEYdCAAQYD+A3FBCHRyIABBCHZBgP4DcSAAQRh2cnIQjgELC4EiAgx/An4CQAJAAkACQAJAAkACQAJAIAJBAWsOCQABAgMEBQcHBgcLAkACQAJAIAAvAAAiAkEIdCACQQh2ckH//wNxQQFrDgIAAQILIwBBQGoiAiQAIAAvAARBgCBPBEAgAkEBOgAYIAJBADYCFCACQoGAgIAQNwIMIAJBHGpBAEEhENQMGiAALwACIgMEfyAAIANBCHQgA0EIdnJB//8DcWoFQaASCyABKAIIIAJBDGoiAxCrBSADEPACBEAgAC8ABCEDIAJBADYCCCACIABBBmo2AgAgAiADaTYCBCAAQQRqIAEgACACENcHCyACQQxqELYBGgsgAkFAayQADAELIwBBwAFrIgIkAAJAIAAvAARBgCBJDQAgAC8ABiEEIAJBPGoiCCAALwACIgMEfyAAIANBCHQgA0EIdnJB//8DcWoFQaASCxC6BSIDQQA2AhQgA0EBNgIcIAMgBEEIdCAEQQh2ckH//wNxNgIYIAIgAykCEDcDeCACIAMpAgg3A3AgAiADKQIYNwOAASACIAMpAgA3A2ggAkG2HjYCFCACIAFBCGo2AhAgAkGYAWoiBCACQegAaiIDIAJBEGoiBhDYByAEEMQFRQ0AIABBBGohByAALwAEIAAvAAYhBSADIARBKBDSDBogAkG3HjYCkAEgCCADQSwQ0gwaaSIEIAVBCHQgBUEIdnJB//8DcWwhBSAAQQhqIQggBiADENkHA0AgAkE8aiIDIAJBEGoQ2gdFDQEgAiAIIAMQ2wcgBGwiBkEBdGo2AgQgAkEANgIMIAIgBSAGayIGQQAgBSAGTxsiBiAEIAQgBksbNgIIIAcgASAAIAJBBGoQ1wcgAxDcBwwACwALIAJBwAFqJAALDwsCQAJAAkAgAC8AACICQQh0IAJBCHZyQf//A3FBAWsOAgABAgsjAEGAAWsiAiQAIAIgATYCPAJAIAAvAARB/x9NBEAgAC8ABkGAIEkNAQsgAkFAayAALwACIgMEfyAAIANBCHQgA0EIdnJB//8DcWoFQaASCyAAQQhqELMFIAJBth42AmQgAiABQQhqNgJgA0ACQCACQUBrIgEQtgVFDQAgAigCYCACQRBqIAEQtwUoAgBBDGogAigCEBDgAQ0AIAEQvQUMAQsLIAJBEGoiASACQUBrIgNBKBDSDBogAkG3HjYCOCABELYFRQ0AIAMgAUEsENIMGiACIAA2AgwgAiAArUIghkK1HoQ3AmwgAiACQTxqNgIIA0AgAkFAayIAELYFRQ0BIAJB+ABqIAAQtwUgAigCfC8AACIABH8gAigCcCAAQQh0IABBCHZyQf//A3FqBUGgEgshAyACKAIIKAIAIQhBACEGIAIoAgxBBGoiARCsByEKIAMvAAAiAEEIdCAAQQh2ckH//wNxIQwgA0ECaiEEA0AgBiAMRwRAIAgoAghBDGogBC8AACIAQQh0IABBCHZyQf//A3EQ4AEEQCMAQRBrIgAkACAEQQJqIQcgAS8AACINaSEFIAEvAAIhCSANQYAgTwR/IABBADYCDCAAIAU2AgggACAHNgIEIAEgCCADIABBBGoQ1wcgAS8AAgUgCQtBgCBPBEAgACAHIAVBAXRqNgIEIABBADYCDCAAIAlpIgcgBWoiCSAFayIFQQAgBSAJTRsiBSAHIAUgB0kbNgIIIAFBAmogCCADIABBBGoQ1wcLIABBEGokAAsgBkEBaiEGIAQgCmohBAwBCwsDQCACQUBrIgAQvQUgABC2BUUNASACKAJgIAJB+ABqIAAQtwUoAgBBDGogAigCeBDgAUUNAAsMAAsACyACQYABaiQADAELIwBBsAJrIgIkAAJAIAAgASgCCBCqB0UNACAALwAEQf8fTQRAIAAvAAZBgCBJDQELIAJBAToA+AEgAkEANgL0ASACQoGAgIAQNwLsASACQfwBakEAQSEQ1AwaIAJBAToAxAEgAkEANgLAASACQoGAgIAQNwK4ASACQcgBakEAQSEQ1AwaAkAgAC8ACCIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsgAkHsAWoQ4QdFDQAgAC8ACiIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsgAkG4AWoQ4QdFDQAgAkEBOgCQASACQQA2AowBIAJCgYCAgBA3AoQBIAJBlAFqQQBBIRDUDBogAkEBOgBcIAJBADYCWCACQoGAgIAQNwJQIAJB4ABqQQBBIRDUDBogAkEUaiABKAIIELgBIAAvAAIiAwR/IAAgA0EIdCADQQh2ckH//wNxagVBoBILIQQgAEEGaiEIIABBBGohCSACQfgBaiEKIAJB3ABqIQMgAkGQAWohBSACIAIoAhw2AjAgAiACKQIUNwMoIAIgAkE8aiACQShqIARBxRcQ4gciBCgCEDYCOCACIAQpAgg3AzAgAiAEKQIANwMoIAJBoAJqIgYgBBCgByACQRRqIAYgBCgCDCAEKAIQEOIHIQQDQAJAIAIoAiwiBiAEKAIERw0AIAIoAiggBCgCAEcNACADQQAQjgEgAkEUaiIGIAEoAggQuAEgAiACKAIcNgIwIAIgAikCFDcDKCACIAJBPGogAkEoaiACQbgBakHFFxDjByIEKAIQNgI4IAIgBCkCCDcDMCACIAQpAgA3AyggAkGgAmoiByAEEKAHIAYgByAEKAIMIAQoAhAQ4wchBANAAkAgAigCLCIHIAQoAgRHDQAgAigCKCAEKAIARw0AAkAgBRDfAQ0AIAMQ3wENACADEMgBQQFGBEAgA0EAEOABDQELIAAvAAYgAC8ABCEHIAAvAAwhAyAALwAOIQUgAkE8aiACQYQBahC4ASACIAIoAkQ2AjAgAiACKQI8NwMoaSIGIAdpIgRqIgogA0EIdCADQQh2ckH//wNxbCAFQQh0IAVBCHZyQf//A3FsIQMgAEEQaiEHIAIoAjwhDANAIAIoAiwiDUF/RgRAIAIoAiggDEYNAgsgAkEUaiACQdAAahC4ASACIAIoAhw2AqgCIAIgAikCFDcDoAIgAigCFCEOA0ACQCACKAKkAiIFQX9HDQAgAigCoAIgDkcNACACQShqEL0BDAILIAUgDSAALwAOIgtBCHQgC0EIdnJB//8DcWxqIApsIQUgAC8ABEGAIE8EQCACIAcgBUEBdGo2AgggAkEANgIQIAIgAyAFayILQQAgAyALTxsiCyAEIAQgC0sbNgIMIAkgASAAIAJBCGoQ1wcLIAgvAABBgCBPBEAgAiAHIAQgBWoiBUEBdGo2AgggAkEANgIQIAIgAyAFayIFQQAgAyAFTxsiBSAGIAUgBkkbNgIMIAggASAAIAJBCGoQ1wcLIAJBoAJqEL0BDAALAAsACyACQdAAahC2ARogAkGEAWoQtgEaDAQLIAMgAC8ACiIGBH8gACAGQQh0IAZBCHZyQf//A3FqBUGgEgsgBxClARCOAQNAIAJBKGoQvQEgAigCLCIGQX9GDQEgAigCNEEMaiAGEOABRQ0ACwwACwALIAUgCiAGEOABBH8gAC8ACCIHBH8gACAHQQh0IAdBCHZyQf//A3FqBUGgEgsgBhClAQVBAAsQjgEDQCACQShqEL0BIAIoAiwiBkF/Rg0BIAIoAjQgBhDkB0UNAAsMAAsACyACQbgBahC2ARogAkHsAWoQtgEaCyACQbACaiQACw8LIAAvAABBgAJGBEAjAEHwAGsiAiQAIAIgATYCNCACQQxqIAAvAAIiAwR/IAAgA0EIdCADQQh2ckH//wNxagVBoBILIABBBGoQswUgAkG2HjYCMCACIAFBCGo2AiwDQAJAIAJBDGoiARC2BUUNACACKAIsIAJBOGogARC3BSgCAEEMaiACKAI4EOABDQAgARDlBwwBCwsgAkE4aiACQQxqQSgQ0gwaIAJBtx42AmAgAiAANgIIIAIgAkE0ajYCBANAIAJBOGoiABC2BQRAIAJB6ABqIAAQtwUgAigCBCgCACEAIAIoAgghASACKAJsIgQvAAAiAwR/IAEgA0EIdCADQQh2ckH//wNxagVBoBILIAAQ5gcgBC8AAiIDBH8gASADQQh0IANBCHZyQf//A3FqBUGgEgsgABDmBwNAIAJBOGoiABDlByAAELYFRQ0CIAIoAlggAkHoAGogABC3BSgCAEEMaiACKAJoEOABRQ0ACwwBCwsgAkHwAGokAAsPCyAAIAEQ1gcPCyAALwAAQYACRgRAIwBBwAJrIgIkACACIAE2AuwBIAJB7ABqIgQgAC8AAiIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsgAC8ACCIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsQswUgAkG2HjYCzAEgAiABQQhqNgLIASACQZgBaiIBIAQgAkHIAWoQ5wcgAkHwAWogAUEoENIMGiACQbceNgKYAiACIAA2AqQCIAIgAkHsAWo2AqACA0AgAkHwAWoiARC2BQRAIAJBoAJqIAEQwQUQ6AcgARDpBwwBCwsgAkIANwHeASACQgA3AeQBIAJCADcB1gEgAkEBOgDUASACQQA2AtABIAJCgYCAgBA3AsgBIAAvAAIiAQR/IAAgAUEIdCABQQh2ckH//wNxagVBoBILIAAvAAgiAQR/IAAgAUEIdCABQQh2ckH//wNxagVBoBILIAIoAuwBKAIIIAJByAFqEOoHIAAvAAoiAQR/IAAgAUEIdCABQQh2ckH//wNxagVBoBILLwAAIgFBCHQgAUEIdnJB//8DcSEDIAJB7ABqIAAvAAQiAQR/IAAgAUEIdCABQQh2ckH//wNxagVBoBILELoFIgFBADYCFCABQQE2AhwgASADNgIYIAIgASkCEDcDqAEgAiABKQIINwOgASACIAEpAhg3A7ABIAIgASkCADcDmAEgAkG2HjYCpAIgAiACKALsAUEIajYCoAIgAkHwAWogAkGYAWogAkGgAmoQ2AcgAkG3HjYCmAIgAC8ACiIBBH8gACABQQh0IAFBCHZyQf//A3FqBUGgEgshAyACQZgBaiACQfABaiIBQSwQ0gwaIAJBxABqrSAArUIghoQhDyACQewAaiABENkHA0AgAkGYAWoiASACQewAahDaBwRAIAEQ2wchBEEAIQEgAkEANgJoIAJCADcCYCADIAQQkwUvAAAhBSACQQE2AlwgAkEANgJUIAIgBUEIdCAFQQh2ckH//wNxNgJYIAJByABqIAJB1ABqEOgCA0AgAigCSCABRgRAIAMgBBCTBSACQQA2AhggAkEANgIIIAIgAikCZEIgiSIQNwIQIAIgEDcDACACKALsASACEOsHIAJB4ABqEC0gAkGYAWoQ3AcMAwUgAiABNgJEIAAvAAYhBSACQQE2AiwgAkEANgIkIAIgBUEIdCAFQQh2ckH//wNxNgIoIAJBxRc2AiAgAiACQcgBajYCHCACQTBqIAJBJGogAkEcahDsByACIAJBQGsoAgA2ArACIAIgAikCODcDqAIgAiACKQIwNwOgAiACIA83ArQCA0AgAigCoAIiBSACKAKkAkcEQCACIAUgAigCtAIoAgAgAigCuAIvAAYiCEEIdCAIQQh2ckH//wNxbGo2ArwCIAJB4ABqIAJBvAJqENoBGiACQaACahDtBwwBCwsgAUEBaiEBDAELAAsACwsgAkHIAWoQLyACQcACaiQACw8LIAAgARDWBw8LIAAvAABBgAJGBEAgACgABCICBH8gACACQRh0IAJBgP4DcUEIdHIgAkEIdkGA/gNxIAJBGHZycmoFQaASCyABIAAvAAIiAEEIdCAAQQh2ckH//wNxENUHCwsL5gcCA38BfiAALwAAQYACRgRAIwBBoAJrIgIkACACIAE2AswBIAJBxABqIgQgAC8AAiIDBH8gACADQQh0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BBDqARogA0EwaiABELgBIANBGGogARC5AUEAIQQgAygCGCEHIAMoAhwhCANAAkAgAygCNCIJIAhHDQAgAygCMCAHRw0AIAYoAkAgBE0NAiAAIAIQrwgiBUF/RgRAQQAhBQwDCyADQdQAaiABELgBIANByABqIAEQuQEgAygCSCEKIAMoAkwhCwNAIAsgAygCWCIBRgRAIAMoAlQgCkYNBAsCfyABIAEgBUZqIgYgACgCBE8EQEEAIQdB0NAAQQBB8AAQ1AwaQQAhCEEAIQlBAAwBCyAAKAIIIAZB8ABsaiIBKAIYIQcgASgCHCEIIAEoAgwhCSABKAIQCyEEIANBADYCOCADQUBrIgEgBzYCACADIAk2AjQgAyAENgIwIAMgCDYCPCADQQA2AkQgAyABKQIANwMoIAMgAykCODcDICADIAMpAjA3AxggAyADQTBqEAgDQCADKAIcIQECQCADKAIYIgQgAygCAEcNACABIAMoAgRHDQAgAygCJCADKAIMRw0AIAMoAiggAygCEEcNACADQdQAahC9AQwCCwJAIAENACADKAIoRQRAQdDQAEIANwMAQdjQAEEANgIAQdDQACEEDAELIAMoAiQhBAsgAiAEKAIIRgRAIAAgBCAGIAUQsAgLIANBGGoQCgwACwALAAsgBiAJEK4IIARqIQQgA0EwahC9AQwACwALIANB4ABqJAAgBQsnACAAKAIABEAgAEEAEMADIAAoAggQ5wwLIABBADYCCCAAQgA3AgALvgEBAX8jAEEQayICJAAgAiABNgIMAkAgACgCQEUEQCAAQQE2AkAgACABNgJEDAELIABBxABqIgEoAgBBf0cEQCACQQE2AgggAEHIAGogASACQQhqELwDRQ0BIAFBfzYCAAsCQCAAQcgAaiIBIAJBDGogAkEIahCFAQRAIAIoAggiASABKAIAQQFqNgIADAELIAJBATYCBCABIAJBDGogAkEEahC8A0UNAQsgACAAKAJAQQFqNgJACyACQRBqJAALFgAgAEKAgICAcDcDQCAAQcgAahD+AQsMACAAIAFBABD4BBoLcgIBfgF/IAFB//8Pca1C////////AQJ+QgAgACgCPCIBRQ0AGiAAKAIEIAAoAgBrIgNBfm2sIAFBAUYNABpCACADrH0LIAApAyh8IgJCACACQgBVGyICIAJC////////AVkb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ACkCEDcDECABIAApAgg3AwggASAAKQIANwMAQQAhAANAAkAgASgCAEEBa0EBSw0AIAEoAgggASgCBC8AAiICQQh0IAJBCHZyQf//A3FPDQAgAEEBaiEAIAEQ3wgaDAELCyABQSBqJAAgAAsTACAAIAEQ5AggACABKAIgNgIgCyMBAX8jAEEQayIBJAAgAUEIaiAAEOEIIAEoAgggAUEQaiQAC0MBAX8jAEEQayIBJAADQAJAIAAQvgUgABC7BUUNACABQQhqIAAQ4QggACgCGCgCACABKAIMTQ0BCwsgAUEQaiQAIAALcwEBfyMAQRBrIgQkACAAIAEpAgA3AgAgACABKQIYNwIYIAAgASkCEDcCECAAIAEpAgg3AgggACADNgIkIAAgAjYCIANAAkAgABC7BUUNACAEQQhqIAAQ4QggBCgCDA0AIAAQ3wgaDAELCyAEQRBqJAAgAAskAQF/IAEQvAUhAiAAIAEoAhQoAgggAhClATYCBCAAIAI2AgALLQEBfyMAQSBrIgIkACACIAEQ5AggACACIAEoAiAgASgCJBDgCBogAkEgaiQACzgBAn8jAEEQayIBJAADQCAAEN8IIgIQuwUEQCABQQhqIAIQ4QggASgCDEUNAQsLIAFBEGokACACCzIBAn8jAEEgayICJAAgAkEIaiIDIAEQxwggACADIAEoAhggASgCHBDbCBogAkEgaiQACxMAIAAgASABIAIgAxACIAQQ6AgLJwAgACgCAARAIABBABDpCCAAKAIIEOcMCyAAQQA2AgggAEIANwIACxEAIAAgASABIAIgAxACEOoIC4UBAQN/AkAgAiABKAIETw0AIAEoAgggAkHwAGxqIgEoAgAiBEUNACABKAIEIAEoAgBrIgVBAk4EfyAFIAMgBC8AACIGQQh0IAZBCHZyQf//A3FsQQF0QQJqTwVBAAtFDQAgACAENgIIIAAgATYCBCAAIAI2AgAPCyAAQQA2AgggAEIANwIACz8BAn8gACgCBCICIAFrIQMgACgCCCACQQZ0aiECA0AgAwRAIANBAWshAyACQUBqEOwIIQIMAQsLIAAgATYCBAuEAQECfwJAIAIgASgCBE8NACABKAIIIAJB8ABsaiIBKAIAIgRFDQAgASgCBCABKAIAayIDQQJOBH8gA60gBC8AACIDQQh0IANBCHZyrUL//wODQgKG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ICEBIAAgAzcCGCAAIAIpAhA3AhAgACACKQIINwIIIAAgAikCADcCACAAIAE2AiAgAkEgaiQAC9wCAgR/An4jAEHQAGsiAyQAIAMgATYCTAJAIAIgA0HMAGpBABCFAQ0AIAMgACADKAJMEK8IIgE2AkggAC0AGyIEQQFxRSABQX9HckUEQCAAQQA6ABsMAQsgBEEBcUUNACACIANBzABqIANByABqQQEQgAEaQaASIAAoAgggAygCTCIBQfAAbGogACgCBCABTRsiASkCDCEHIAEpAhghCCADQQA2AjggA0EANgJEIAMgCEIgiTcCPCADIAdCIIk3AjAgAyADQUBrKQIANwMoIAMgAykCODcDICADIAMpAjA3AxggAyADQTBqEAgDQCADKAIkIQEgAygCKCEEIAMoAhwhBQJAIAMoAhgiBiADKAIARw0AIAUgAygCBEcNACABIAMoAgxHDQAgBCADKAIQRg0CCyAAIAYgAUGgEiAEGyAFGygCCCACEPsIIANBGGoQCgwACwALIANB0ABqJAAL3wIBBX8jAEHQAGsiAyQAAn8gASAAKAIETwRAQdDQAEEAQfAAENQMGkEADAELIAAoAgggAUHwAGxqIgEoAhghBCABKAIcIQUgASgCDCEGIAEoAhALIQEgA0FAayIHQQA2AgAgAyAENgJIIAMgBjYCPCADIAE2AjggAyAFNgJEIANBADYCTCADIAMpAkg3AzAgAyAHKQIANwMoIAMgAykCODcDICADQQhqIANBOGoQCANAAkAgAygCLCEBIAMoAjAhBCADKAIkIQUCQCADKAIgIgYgAygCCEcNACAFIAMoAgxHDQAgASADKAIURw0AIAQgAygCGEYNAQsCQCACIAYgAUGgEiAEGyAFG0EIaiIBIANBBGoQhQEEQCADKAIEIgEgASgCAEEBajYCAAwBCyADQQE2AgAgAiABIANBARCAARogACABKAIAIAIQ/AgLIANBIGoQCgwBCwsgA0HQAGokAAsRACAAIAEgAiADIARBDBDzDAsRACAAIAEgAiADIARBBBDzDAsRACAAIAEgAiADIARBChDzDAsRACAAIAEgAiADIARBAxDzDAuOAQEDfwJAIAEoAgwgACABKAIEa0kNACABKAIIIABrQQhJDQAgAC8AAiICQQh0IAJBCHZyQf//A3EiBK0gACgABCICQRh0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IAFBgP4DcUEIdnI7AAQgACACQQh0IAJBgP4DcUEIdnIiADsAAAsgByAFQQZsaiAAOwACIAFBAWohASADQdgCahCOCxogAiEADAEFIAZFDQQgCC8AAiEAIANBADYC4AIgAyAHNgLYAiADIABBCHQgAEEIdnJB//8DcTYC3AIgCiACEIsGCwsLCwsLC0EBIQAgBCAJIARBARCGAkEAQQAQhQYMAgsgBBCJAgtBACEACyADQZADaiQAIAAFQQELIQMLIAMLC6cQARB/QQEhAgJAAkACQAJAIAAvAAAiBEEIdCAEQQh2ckH//wNxQQFrDgMAAQIDCyMAQfABayICJAAgASgCCCIEKAIcIQYCQCABKAIMIgUgBSgCBCIFEIcGRQRAQQAhAAwBCyAEQdAEaiEDIAUgAC8AADsAACACIAEoAghB7AVBkAYgASgCEEHCqs26BEYbajYCnAEgAkEANgKYASACQgA3ApABIAJBDGoiByAALwACIgQEfyAAIARBCHQgBEEIdnJB//8DcWoFQaASCyAAQQRqELMFIAJBth42AgggAiADNgIEIAJBLGoiBCAHIAJBBGoQwAUgAkHUAGogBEEoENIMGiACQbceNgKMASACIAA2AoQBIAIgBUEEajYCgAEgAiABNgJ8IAIgAkGcAWo2AogBIAJB/ABqIQQDQAJAIAJB1ABqIgAQtgVFDQAgAkGgAWogABC3BSAEIAIoAqQBEKQLDQAgABC4BRoMAQsLIAJBoAFqIAJB1ABqQTwQ0gwaIAIgBjYC4AEgAkG2HjYC3AEgAkHIAWohAANAIAJBoAFqIgQQtgUEQCACKALgASEGIAJB6AFqIAQQtwUgAiACKALoATYC5AEgAkGQAWogBiACQeQBahCCARDaARoDQCACQaABahC4BSIEELYFRQ0CIAJB6AFqIAQQtwUgACACKALsARCkC0UNAAsMAQsLIAEoAgwhACACIAIpApQBQiCJNwKgASACQQA2AqgBIAVBAmogACACQaABahDbChogAigClAFBAEchACACQZABahAtCyACQfABaiQAIAAPC0EAIQIjAEGwAmsiAyQAAkAgASgCDCIFIAUoAgQiBBDXA0UNACAEIAAvAAA7AAAgBEECaiABIABBAmogABCnC0UNACADQgA3AY4CIANCADcBlAIgA0IANwGGAiADQQE6AIQCIANB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aiIEELYFBEAgAigC4AEhAyACQegBaiAEELcFIAIgAigC6AE2AuQBIAJBkAFqIAMgAkHkAWoQggEQ2gEaA0AgAkGgAWoQuAUiBBC2BUUNAiACQegBaiAEELcFIAAgAigC7AEQqgtFDQALDAELCyABKAIMIQAgAiACKQKUAUIgiTcCoAEgAkEANgKoASAFQQJqIAAgAkGgAWoQ2woaIAIoApQBQQBHIQAgAkGQAWoQLQsgAkHwAWokACAADwsjAEGAA2siAyQAAkAgASgCDCICIAIoAgQiBRApRQRAQQAhAgwBCyAFIAAvAAA7AAAgBUECaiABIABBAmogABCnCxogA0IANwHeAiADQgA3AeQCIANCADcB1gIgA0EBOgDUAkEAIQIgA0EANgLQAiADQoGAgIAQNwLIAiADQgA3AboCIANCADcBwAIgA0IANwGyAiADQQE6ALACIANBADYCrAIgA0KBgICAEDcCpAIgA0IANwGWAiADQgA3AZwCIANCADcBjgIgA0EBOgCMAiADQQA2AogCIANCgYCAgBA3AoACIAMgA0HIAmo2AswBIAVBBGogASAAQQRqIAAgA0HMAWoiBBCoCyADIANBpAJqNgLMASAFQQZqIAEgAEEGaiAAIAQQqAsgAyADQYACajYCzAEgBUEIaiABIABBCGogACAEEKgLAkACQAJAIAEoAgwiBCgCGCIGRQRAIAMtANQCQQFxRQ0BCyAGDQIgAy0AsAJBAUcNACADLQCMAg0BCyAEQQE2AhgMAQsgASgCCCEEIANBAToA2AEgA0EANgLUASADQoGAgIAQNwLMASADQdwBakEAQSEQ1AwaIAAvAAIiAgR/IAAgAkEIdCACQQh2ckH//wNxagVBoBILIARB0ARqIANBzAFqEKsFIANBAToApAEgA0EANgKgASADQoGAgIAQNwKYASADQagBakEAQSEQ1AwaIAAvAAYiAgR/IAAgAkEIdCACQQh2ckH//wNxagVBoBILIANBzAFqIANBmAFqEJEHIAMgASgCCEHsBUGQBiABKAIQQcKqzboERhtqNgKUASABKAIMIgIoAiwiBgRAIAYoAgwhCyAGKAIYIQcLIANBpAFqIRAgAigCCCEMIAIoAgQhDSACKAIYIQ4gAC8ACiECIANBADYCaCADIABBDGo2AmAgA0KAgICAEDcDWCADIAJBCHQg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CxoDQCAAIAAoAqgBIAAoArABaiIINgKoASAIIAAoAqwBRg0CIA8gCBDkC0UNAAsMAQsLIAkgCyAJQQEQhgJBAEEAEIUGQQEMAQsgCRCJAkEACyAEciEECwNAIABB2ABqIggQvQUgCBC2BUUNASAAKAJ4IABBqAFqIAgQtwVBDGogACgCqAEQ4AFFDQALDAALAAtBACEECyAAQZACaiQAIAJBIGokACAEQQFxBEAgByABIAdBARCGAkEAQQAQhQZBAQwCCyAHEIkCC0EACyECDAMLIAgQiQIMAQsgCBCJAgtBACECCyAGQYwBahAvCyAGQfACaiQAIAIFQQELDAULIAEgABC5CwwECyABIAAQgwsMAwsgASAAEIQLDAILIAEvAABBgAJGBH8jAEEQayICJAAgACgCDCIDIAMoAgQiAxDXAwR/IAMgAS8AADsAACADIAEvAAI7AAIgAiABLwACIgRBCHQgBEEIdnJB//8DcTYCDAJ/IAJBDGohBCADQQRqIgZBADYAACABKAAEBEAgACgCDCIDECEaIAAgASgABCIABH8gASAAQRh0IABBgP4DcUEIdHIgAEEIdkGA/gNxIABBGHZycmoFQaASCyAEELgLBEAgAyAGIANBARCGAkEAQQAQ/ghBAQwCCyADEIkCC0EACwVBAAsgAkEQaiQABUEBCyEDCyADCwuiDQILfwF+IAAvAABBgAJGBH8jAEHgAmsiAiQAIAEoAggiBCgCHCEHIAEoAgwiAyADKAIEIgUQKQRAIAUgAC8AADsAACACQgA3AbICIAJCADcBuAIgAkIANwGqAiACQQE6AKgCIAJBADYCpAIgAkKBgICAEDcCnAIgAC8AAiIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsgAC8ACCIDBH8gACADQQh0IANBCHZyQf//A3FqBUGgEgsgBEHQBGoiCSACQZwCahDqByACKAKsAiIDBEAgBSADQQh0IANBgP4DcUEIdnI7AAYgAkG4AWoiBCAALwACIgMEfyAAIANBCHQgA0EIdnJB//8DcWoFQaASCyAAQQhqIggvAAAiAwR/IAAgA0EIdCADQQh2ckH//wNxagVBoBILELMFIAJBth42AlwgAiAJNgJYIAJB9AFqIgMgBCACQdgAahDuByACQQA2AvABIAJCADcC6AEgBCADQSgQ0gwaIAIg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BH8gByAELwAAOwEAIARBAmohBCACQQFxBH8gASAHEMsJBUEACwVBAAshCiAGQQJxBEAgByAELwAAOwEIIAJBAnEEQCABIAdBCGoQywkhCAsgBEECaiEECyAGQQRxBH8gByAELwAAOwEQIARBAmohBCACQQRxBH8gASAHQRBqEMsJBUEACwVBAAshCyAGQQhxBEAgByAELwAAOwEYIAJBCHEEQCABIAdBGGoQywkhCQsgBEECaiEECyAALwAAQYAgSQ0AIAZBEHEEQCAKIAMgBCAFEMALIAEgAyAEIAUgAkEQEMELIARBAmohBAsgBkEgcQRAIAggAyAEIAUQwAsgASADIAQgBSACQSAQwQsgBEECaiEECyAGQcAAcQRAIAsgAyAEIAUQwAsgASADIAQgBSACQcAAEMELIARBAmohBAsgBkGAAXFFDQAgCSADIAQgBRDACyABIAMgBCAFIAJBgAEQwQsLIAdBIGokAAvtBwIIfwF+IwBBgAFrIgMkACAAQQA7AAAgARAhIQYgAyACKQIYNwMYIAMgAikCEDcDECADIAIpAgg3AwggAyACKQIANwMAAkACQCABIAYQkAJFDQAgAygCCCEIIAMgAykDGDcDeCADIAMpAxA3A3AgAyADKQMINwNoIAMgAykDADcDYCADQUBrIAMQwgtBfiEEQQAhAgNAAkACQCADKAJkIAMoAkRHDQAgAygCYCADKAJARw0AIAZBgARBgAIgCSAIIAdBA2xLckEBcSIEGzsAACACQf//A0sEQCABKAIYDQQgAUEINgIYDAQLIARFBEAgAyADKQMYNwN4IAMgAykDEDcDcCADIAMpAwgiCzcDaCADIAMpAwA3A2BBACECIAZBAmogASALpyIEQQAQngNFDQQgBkEEaiEFA0AgAiAERg0DIAUgAkEBdGogA0HgAGoiCBCgCy8BACIGQQh0IAZBCHZyOwAAIAJBAWohAiAIEL0BDAALAAsgAyADKQMYNwM4IAMgAykDEDcDMCADIAMpAwg3AyggAyADKQMANwMgIAEgBhAoRQ0DIAMgAykDODcDeCADIAMpAzA3A3AgAyADKQMoNwNoIAMgAykDIDcDYCADQUBrIANBIGoQwgtBACECQX4hBANAAkAgAygCZCADKAJERw0AIAMoAmAgAygCQEcNACAGQQJqIAEgAhCKBkUNBSACRQ0D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AkAgAiAAKAIQIgMEfyADBSAAENUMDQEgACgCEAsgACgCFCIEa0sEQCAAIAEgAiAAKAIkEQQAGgwBCwJAAkAgAkUgACgCUEEASHINACACIQMDQCABIANqIgVBAWstAABBCkcEQCADQQFrIgMNAQwCCwsgACABIAMgACgCJBEEACADSQ0CIAIgA2shAiAAKAIUIQQMAQsgASEFCyAEIAUgAhDSDBogACAAKAIUIAJqNgIUCwsLbwEFfyAAKAIAIgMsAABBMGsiAUEJSwRAQQAPCwNAQX8hBCACQcyZs+YATQRAQX8gASACQQpsIgVqIAEgBUH/////B3NLGyEECyAAIANBAWoiBTYCACADLAABIAQhAiAFIQNBMGsiAUEKSQ0ACyACC7oCAAJAAkACQAJAAkACQAJAAkACQAJAAkAgAUEJaw4SAAgJCggJAQIDBAoJCgoICQUGBwsgAiACKAIAIgFBBGo2AgAgACABKAIANgIADwsgAiACKAIAIgFBBGo2AgAgACABMgEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMwEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMAAANwMADwsgAiACKAIAIgFBBGo2AgAgACABMQAANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACEOIMCw8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAAt/AgF+A38CQCAAQoCAgIAQVARAIAAhAgwBCwNAIAFBAWsiASAAIABCCoAiAkIKfn2nQTByOgAAIABC/////58BViACIQANAAsLIAJQRQRAIAKnIQMDQCABQQFrIgEgAyADQQpuIgRBCmxrQTByOgAAIANBCUsgBCEDDQALCyABC2wBAX8jAEGAAmsiBSQAIARBgMAEcSACIANMckUEQCAFIAEgAiADayIDQYACIANBgAJJIgEbENQMGiABRQRAA0AgACAFQYACENwMIANBgAJrIgNB/wFLDQALCyAAIAUgAxDcDAsgBUGAAmokAAucGAMSfwF8A34jAEGwBGsiDCQAIAxBADYCLAJAIAG9IhlCAFMEQEEBIRBB4h0hEyABmiIBvSEZ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c2l4AHNldmVuAGVpZ2h0AG5pbmUAY29sb24Ac2VtaWNvbG9uAGxlc3MAZXF1YWwAZ3JlYXRlcgBxdWVzdGlvbgBhdABBAEIAQwBEAEUARgBHAEgASQBKAEsATABNAE4ATwBQAFEAUgBTAFQAVQBWAFcAWABZAFoAYnJhY2tldGxlZnQAYmFja3NsYXNoAGJyYWNrZXRyaWdodABhc2NpaWNpcmN1bQB1bmRlcnNjb3JlAGdyYXZlAGEAYgBjAGQAZQBmAGcAaABpAGoAawBsAG0AbgBvAHAAcQByAHMAdAB1AHYAdwB4AHkAegBicmFjZWxlZnQAYmFyAGJyYWNlcmlnaHQAYXNjaWl0aWxkZQBBZGllcmVzaXMAQXJpbmcAQ2NlZGlsbGEARWFjdXRlAE50aWxkZQBPZGllcmVzaXMAVWRpZXJlc2lzAGFhY3V0ZQBhZ3JhdmUAYWNpcmN1bWZsZXgAYWRpZXJlc2lzAGF0aWxkZQBhcmluZwBjY2VkaWxsYQBlYWN1dGUAZWdyYXZlAGVjaXJjdW1mbGV4AGVkaWVyZXNpcwBpYWN1dGUAaWdyYXZlAGljaXJjdW1mbGV4AGlkaWVyZXNpcwBudGlsZGUAb2FjdXRlAG9ncmF2ZQBvY2lyY3VtZmxleABvZGllcmVzaXMAb3RpbGRlAHVhY3V0ZQB1Z3JhdmUAdWNpcmN1bWZsZXgAdWRpZXJlc2lzAGRhZ2dlcgBkZWdyZWUAY2VudABzdGVybGluZwBzZWN0aW9uAGJ1bGxldABwYXJhZ3JhcGgAZ2VybWFuZGJscwByZWdpc3RlcmVkAGNvcHlyaWdodAB0cmFkZW1hcmsAYWN1dGUAZGllcmVzaXMAbm90ZXF1YWwAQUUAT3NsYXNoAGluZmluaXR5AHBsdXNtaW51cwBsZXNzZXF1YWwAZ3JlYXRlcmVxdWFsAHllbgBtdQBwYXJ0aWFsZGlmZgBzdW1tYXRpb24AcHJvZHVjdABwaQBpbnRlZ3JhbABvcmRmZW1pbmluZQBvcmRtYXNjdWxpbmUAT21lZ2EAYWUAb3NsYXNoAHF1ZXN0aW9uZG93bgBleGNsYW1kb3duAGxvZ2ljYWxub3QAcmFkaWNhbABmbG9yaW4AYXBwcm94ZXF1YWwARGVsdGEAZ3VpbGxlbW90bGVmdABndWlsbGVtb3RyaWdodABlbGxpcHNpcwBub25icmVha2luZ3NwYWNlAEFncmF2ZQBBdGlsZGUAT3RpbGRlAE9FAG9lAGVuZGFzaABlbWRhc2gAcXVvdGVkYmxsZWZ0AHF1b3RlZGJscmlnaHQAcXVvdGVsZWZ0AHF1b3RlcmlnaHQAZGl2aWRlAGxvemVuZ2UAeWRpZXJlc2lzAFlkaWVyZXNpcwBmcmFjdGlvbgBjdXJyZW5jeQBndWlsc2luZ2xsZWZ0AGd1aWxzaW5nbHJpZ2h0AGZpAGZsAGRhZ2dlcmRibABwZXJpb2RjZW50ZXJlZABxdW90ZXNpbmdsYmFzZQBxdW90ZWRibGJhc2UAcGVydGhvdXNhbmQAQWNpcmN1bWZsZXgARWNpcmN1bWZsZXgAQWFjdXRlAEVkaWVyZXNpcwBFZ3JhdmUASWFjdXRlAEljaXJjdW1mbGV4AElkaWVyZXNpcwBJZ3JhdmUAT2FjdXRlAE9jaXJjdW1mbGV4AGFwcGxlAE9ncmF2ZQBVYWN1dGUAVWNpcmN1bWZsZXgAVWdyYXZlAGRvdGxlc3NpAGNpcmN1bWZsZXgAdGlsZGUAbWFjcm9uAGJyZXZlAGRvdGFjY2VudAByaW5nAGNlZGlsbGEAaHVuZ2FydW1sYXV0AG9nb25lawBjYXJvbgBMc2xhc2gAbHNsYXNoAFNjYXJvbgBzY2Fyb24AWmNhcm9uAHpjYXJvbgBicm9rZW5iYXIARXRoAGV0aABZYWN1dGUAeWFjdXRlAFRob3JuAHRob3JuAG1pbnVzAG11bHRpcGx5AG9uZXN1cGVyaW9yAHR3b3N1cGVyaW9yAHRocmVlc3VwZXJpb3IAb25laGFsZgBvbmVxdWFydGVyAHRocmVlcXVhcnRlcnMAZnJhbmMAR2JyZXZlAGdicmV2ZQBJZG90YWNjZW50AFNjZWRpbGxhAHNjZWRpbGxhAENhY3V0ZQBjYWN1dGUAQ2Nhcm9uAGNjYXJvbgBkY3JvYXQAQZQuC4YICAAAAA4AAAAfAAAAJQAAACwAAAA1AAAAQAAAAEcAAABPAAAAWQAAAGUAAABvAAAAegAAAIMAAACIAAAAjgAAAJUAAACcAAAAogAAAKcAAACrAAAArwAAALUAAAC6AAAAvwAAAMMAAADJAAAAzwAAANQAAADaAAAA5AAAAOkAAADvAAAA9wAAAAABAAADAQAABQEAAAcBAAAJAQAACwEAAA0BAAAPAQAAEQEAABMBAAAVAQAAFwEAABkBAAAbAQAAHQEAAB8BAAAhAQAAIwEAACUBAAAnAQAAKQEAACsBAAAtAQAALwEAADEBAAAzAQAANQEAADcBAABDAQAATQEAAFoBAABmAQAAcQEAAHcBAAB5AQAAewEAAH0BAAB/AQAAgQEAAIMBAACFAQAAhwEAAIkBAACLAQAAjQEAAI8BAACRAQAAkwEAAJUBAACXAQAAmQEAAJsBAACdAQAAnwEAAKEBAACjAQAApQEAAKcBAACpAQAAqwEAALUBAAC5AQAAxAEAAM8BAADZAQAA3wEAAOgBAADvAQAA9gEAAAACAAAKAgAAEQIAABgCAAAkAgAALgIAADUCAAA7AgAARAIAAEsCAABSAgAAXgIAAGgCAABvAgAAdgIAAIICAACMAgAAkwIAAJoCAAChAgAArQIAALcCAAC+AgAAxQIAAMwCAADYAgAA4gIAAOkCAADwAgAA9QIAAP4CAAAGAwAADQMAABcDAAAiAwAALQMAADcDAABBAwAARwMAAFADAABZAwAAXAMAAGMDAABsAwAAdgMAAIADAACNAwAAkQMAAJQDAACgAwAAqgMAALIDAAC1AwAAvgMAAMoDAADXAwAA3QMAAOADAADnAwAA9AMAAP8DAAAKBAAAEgQAABkEAAAlBAAAKwQAADkEAABIBAAAUQQAAGIEAABpBAAAcAQAAHcEAAB6BAAAfQQAAIQEAACLBAAAmAQAAKYEAACwBAAAuwQAAMIEAADKBAAA1AQAAN4EAADnBAAA8AQAAP4EAAANBQAAEAUAABMFAAAdBQAALAUAADsFAABIBQAAVAUAAGAFAABsBQAAcwUAAH0FAACEBQAAiwUAAJcFAAChBQAAqAUAAK8FAAC7BQAAwQUAAMgFAADPBQAA2wUAAOIFAADrBQAA9gUAAPwFAAADBgAACQYAABMGAAAYBgAAIAYAAC0GAAA0BgAAOgYAAEEGAABIBgAATwYAAFYGAABdBgAAZAYAAG4GAAByBgAAdgYAAH0GAACEBgAAigYAAJAGAACWBgAAnwYAAKsGAAC3BgAAxQYAAM0GAADYBgAA5gYAAOwGAADzBgAA+gYAAAUHAAAOBwAAFwcAAB4HAAAlBwAALAcAADMHAAA6BwBBpDYLrRF/AAAAAAAAAIAAAAD/AAAAAQAAAAABAAB/AQAAAgAAAIABAABPAgAAAwAAAFACAACvAgAABAAAALACAAD/AgAABQAAAAADAABvAwAABgAAAHADAAD/AwAABwAAAAAEAAD/BAAACQAAAAAFAAAvBQAACQAAADAFAACPBQAACgAAAJAFAAD/BQAACwAAAAAGAAD/BgAADQAAAAAHAABPBwAARwAAAFAHAAB/BwAADQAAAIAHAAC/BwAASAAAAMAHAAD/BwAADgAAAAAJAAB/CQAADwAAAIAJAAD/CQAAEAAAAAAKAAB/CgAAEQAAAIAKAAD/CgAAEgAAAAALAAB/CwAAEwAAAIALAAD/CwAAFAAAAAAMAAB/DAAAFQAAAIAMAAD/DAAAFgAAAAANAAB/DQAAFwAAAIANAAD/DQAASQAAAAAOAAB/DgAAGAAAAIAOAAD/DgAAGQAAAAAPAAD/DwAARgAAAAAQAACfEAAASgAAAKAQAAD/EAAAGgAAAAARAAD/EQAAHAAAAAASAAB/EwAASwAAAIATAACfEwAASwAAAKATAAD/EwAATAAAAAAUAAB/FgAATQAAAIAWAACfFgAATgAAAKAWAAD/FgAATwAAAAAXAAAfFwAAVAAAACAXAAA/FwAAVAAAAEAXAABfFwAAVAAAAGAXAAB/FwAAVAAAAIAXAAD/FwAAUAAAAAAYAACvGAAAUQAAAAAZAABPGQAAXQAAAFAZAAB/GQAAXgAAAIAZAADfGQAAXwAAAOAZAAD/GQAAUAAAAAAaAAAfGgAAYAAAAAAbAAB/GwAAGwAAAIAbAAC/GwAAcAAAAAAcAABPHAAAcQAAAFAcAAB/HAAAcgAAAAAdAAB/HQAABAAAAIAdAAC/HQAABAAAAMAdAAD/HQAABgAAAAAeAAD/HgAAHQAAAAAfAAD/HwAAHgAAAAAgAABvIAAAHwAAAHAgAACfIAAAIAAAAKAgAADPIAAAIQAAANAgAAD/IAAAIgAAAAAhAABPIQAAIwAAAFAhAACPIQAAJAAAAJAhAAD/IQAAJQAAAAAiAAD/IgAAJgAAAAAjAAD/IwAAJwAAAAAkAAA/JAAAKAAAAEAkAABfJAAAKQAAAGAkAAD/JAAAKgAAAAAlAAB/JQAAKwAAAIAlAACfJQAALAAAAKAlAAD/JQAALQAAAAAmAAD/JgAALgAAAAAnAAC/JwAALwAAAMAnAADvJwAAJgAAAPAnAAD/JwAAJQAAAAAoAAD/KAAAUgAAAAApAAB/KQAAJQAAAIApAAD/KQAAJgAAAAAqAAD/KgAAJgAAAAArAAD/KwAAJQAAAAAsAABfLAAAYQAAAGAsAAB/LAAAHQAAAIAsAAD/LAAACAAAAAAtAAAvLQAAGgAAADAtAAB/LQAAYgAAAIAtAADfLQAASwAAAOAtAAD/LQAACQAAAAAuAAB/LgAAHwAAAIAuAAD/LgAAOwAAAAAvAADfLwAAOwAAAPAvAAD/LwAAOwAAAAAwAAA/MAAAMAAAAEAwAACfMAAAMQAAAKAwAAD/MAAAMgAAAAAxAAAvMQAAMwAAADAxAACPMQAANAAAAJAxAACfMQAAOwAAAKAxAAC/MQAAMwAAAMAxAADvMQAAPQAAAPAxAAD/MQAAMgAAAAAyAAD/MgAANgAAAAAzAAD/MwAANwAAAAA0AAC/TQAAOwAAAMBNAAD/TQAAYwAAAABOAAD/nwAAOwAAAACgAACPpAAAUwAAAJCkAADPpAAAUwAAAAClAAA/pgAADAAAAECmAACfpgAACQAAAACnAAAfpwAABQAAACCnAAD/pwAAHQAAAACoAAAvqAAAZAAAAECoAAB/qAAANQAAAICoAADfqAAAcwAAAACpAAAvqQAAdAAAADCpAABfqQAAdQAAAACqAABfqgAAdgAAAACsAACv1wAAOAAAAADYAAD/3wAAOQAAAADgAAD/+AAAPAAAAAD5AAD/+gAAPQAAAAD7AABP+wAAPgAAAFD7AAD//QAAPwAAAAD+AAAP/gAAWwAAABD+AAAf/gAAQQAAACD+AAAv/gAAQAAAADD+AABP/gAAQQAAAFD+AABv/gAAQgAAAHD+AAD//gAAQwAAAAD/AADv/wAARAAAAPD/AAD//wAARQAAAAAAAQB/AAEAZQAAAIAAAQD/AAEAZQAAAAABAQA/AQEAZQAAAEABAQCPAQEAZgAAAJABAQDPAQEAdwAAANABAQD/AQEAeAAAAIACAQCfAgEAeQAAAKACAQDfAgEAeQAAAAADAQAvAwEAVQAAADADAQBPAwEAVgAAAIADAQCfAwEAZwAAAKADAQDfAwEAaAAAAAAEAQBPBAEAVwAAAFAEAQB/BAEAaQAAAIAEAQCvBAEAagAAAAAIAQA/CAEAawAAAAAJAQAfCQEAOgAAACAJAQA/CQEAeQAAAAAKAQBfCgEAbAAAAAAgAQD/IwEAbgAAAAAkAQB/JAEAbgAAAADQAQD/0AEAWAAAAADRAQD/0QEAWAAAAADSAQBP0gEAWAAAAADTAQBf0wEAbQAAAGDTAQB/0wEAbwAAAADUAQD/1wEAWQAAAADwAQAv8AEAegAAADDwAQCf8AEAegAAAAAAAgDfpgIAOwAAAAD4AgAf+gIAPQAAAAAADgB/AA4AXAAAAAABDgDvAQ4AWwAAAAAADwD9/w8AWgAAAAAAEAD9/xAAWgAAAAAAAAABAAAAAgAAAAMAAAAHAAAADQAAAB8AAAA9AAAAfwAAAPsAAAD9AQAA/QMAAPcHAAD9DwAA/x8AAP0/AADtfwAA8f8AAP//AQD7/wMA//8HAP3/DwD3/x8A/f8/APH/fwD9//8A2f//Afv//wPZ//8Hx///D/3//x/d//8/////fxkACwAZGRkAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAGQAKChkZGQMKBwABAAkLGAAACQYLAAALAAYZAAAAGRkZAEHhxwALIQ4AAAAAAAAAABkACw0ZGRkADQAAAgAJDgAAAAkADgAADgBBm8gACwEMAEGnyAALFRMAAAAAEwAAAAAJDAAAAAAADAAADABB1cgACwEQAEHhyAALFQ8AAAAEDwAAAAAJEAAAAAAAEAAAEABBj8kACwESAEGbyQALHhEAAAAAEQAAAAAJEgAAAAAAEgAAEgAAGgAAABoaGgBB0skACw4aAAAAGhoaAAAAAAAACQBBg8oACwEUAEGPygALFRcAAAAAFwAAAAAJFAAAAAAAFAAAFABBvcoACwEWAEHJygALJxUAAAAAFQAAAAAJFgAAAAAAFgAAFgAAMDEyMzQ1Njc4OUFCQ0RFRgBBjMsACwLoAwBBmMwAC0VfAAAAYAAAAGEAAAAPAAAAYgAAAGMAAABkAAAAEQAAABIAAABlAAAAZgAAAGcAAABoAAAAaQAAAGoAAABrAAAAbAAAAG0AQfTMAAtFDAAAAA0AAAAOAAAADwAAABAAAABuAAAAbwAAABEAAAASAAAAcAAAABMAAABxAAAAFAAAAHIAAABzAAAAdAAAAHUAAAB2AEHYzQALCnAlAADoAwAA6AMAQezNAAsBAQBBgs4ACxGAPwAAgD8AAAEAAAAAAAAAAQBBpM4ACwT/////AEG0zgALAgQmAEHIzgALAsQLAEHYzgALEXcAAAB4AAAAeQAAAHoAAAB7AEGAzwALywFyYXZhRVNBQlREQkNDTEJDIEZGQzJGRkNwYW1jUkxPQ0xBUENyYXZjIHR2Y0dJU0RUREJFQ0xCRUNTQkVtZ3BmcmF2ZnBzYWdGRURHZnlsZ1NPUEdCVVNHcmF2Z3htZGhkYWVoYWVoaHh0bWhSQVZIRlRTSm5yZWthY29sSFNUTEhUQU1weGFtR1JFTWF0ZW1SQVZNVExDUHRzb3BwZXJweGlic1RBVFMgR1ZTWE1EVmFlaHZ4dG12R1JPVlJBVlZlbWFuMi9TT5AtAQ==");nXt={subset:aXt},A_={Subset:"SUBSET"}});var PBe={};Dt(PBe,{WorkerUrl:()=>lXt});var lXt;var _Be=_(()=>{ydA();T6();zt();lXt=import.meta.url?new URL(import.meta.url):void 0;typeof window>"u"&&typeof self<"u"&&(self.onmessage=async(A)=>{switch(A.data.command){case A_.Subset:let e=await s8(A.data.arrayBuffer,A.data.codePoints);self.postMessage(e,{transfer:[e]});break}})});var WBe={};Dt(WBe,{Commands:()=>A_,subsetToBase64:()=>OBe,subsetToBinary:()=>s8,toBase64:()=>$P});var qBe=_(()=>{ydA();T6();zt()});var zBe={};Dt(zBe,{decodePngMetadata:()=>VBe,encodePngMetadata:()=>e_});var wdA=_(()=>{bdA();T6();zt()});var XBe=wu(function(jBe,vdA){/*!
pica
https://github.com/nodeca/pica
*/(function(A){if(typeof jBe==="object"&&typeof vdA<"u")vdA.exports=A();else if(typeof define==="function"&&define.amd)define([],A);else{var e;if(typeof window<"u")e=window;else if(typeof global<"u")e=global;else if(typeof self<"u")e=self;else e=this;e.pica=A()}})(function(){var A,e,t;return function(){function r(i,u,a){function n(l,g){if(!u[l]){if(!i[l]){var C=Z2;if(!g&&C)return C(l,!0);if(o)return o(l,!0);var B=Error("Cannot find module '"+l+"'");throw B.code="MODULE_NOT_FOUND",B}var E=u[l]={exports:{}};i[l][0].call(E.exports,function(d){var I=i[l][1][d];return n(I||d)},E,E.exports,r,i,u,a)}return u[l].exports}for(var o=Z2,s=0;s<a.length;s++)n(a[s]);return n}return r}()({1:[function(r,i,u){var a=r("inherits"),n=r("multimath"),o=r("./mm_unsharp_mask"),s=r("./mm_resize");function l(g){var C=g||[],B={js:C.indexOf("js")>=0,wasm:C.indexOf("wasm")>=0};n.call(this,B),this.features={js:B.js,wasm:B.wasm&&this.has_wasm()},this.use(o),this.use(s)}a(l,n),l.prototype.resizeAndUnsharp=function(C,B){var E=this.resize(C,B);if(C.unsharpAmount)this.unsharp_mask(E,C.toWidth,C.toHeight,C.unsharpAmount,C.unsharpRadius,C.unsharpThreshold);return E},i.exports=l},{"./mm_resize":4,"./mm_unsharp_mask":9,inherits:19,multimath:20}],2:[function(r,i,u){function a(s){return s<0?0:s>255?255:s}function n(s,l,g,C,B,E){var d,I,h,Q,p,m,f,D,w,b,k,v=0,S=0;for(w=0;w<C;w++){p=0;for(b=0;b<B;b++){m=E[p++],f=E[p++],D=v+m*4|0,d=I=h=Q=0;for(;f>0;f--)k=E[p++],Q=Q+k*s[D+3]|0,h=h+k*s[D+2]|0,I=I+k*s[D+1]|0,d=d+k*s[D]|0,D=D+4|0;l[S+3]=a(Q+8192>>14),l[S+2]=a(h+8192>>14),l[S+1]=a(I+8192>>14),l[S]=a(d+8192>>14),S=S+C*4|0}S=(w+1)*4|0,v=(w+1)*g*4|0}}function o(s,l,g,C,B,E){var d,I,h,Q,p,m,f,D,w,b,k,v=0,S=0;for(w=0;w<C;w++){p=0;for(b=0;b<B;b++){m=E[p++],f=E[p++],D=v+m*4|0,d=I=h=Q=0;for(;f>0;f--)k=E[p++],Q=Q+k*s[D+3]|0,h=h+k*s[D+2]|0,I=I+k*s[D+1]|0,d=d+k*s[D]|0,D=D+4|0;l[S+3]=a(Q+8192>>14),l[S+2]=a(h+8192>>14),l[S+1]=a(I+8192>>14),l[S]=a(d+8192>>14),S=S+C*4|0}S=(w+1)*4|0,v=(w+1)*g*4|0}}i.exports={convolveHorizontally:n,convolveVertically:o}},{}],3:[function(r,i,u){i.exports="AGFzbQEAAAAADAZkeWxpbmsAAAAAAAEXA2AAAGAGf39/f39/AGAHf39/f39/fwACDwEDZW52Bm1lbW9yeQIAAAMEAwABAgYGAX8AQQALB1cFEV9fd2FzbV9jYWxsX2N0b3JzAAAIY29udm9sdmUAAQpjb252b2x2ZUhWAAIMX19kc29faGFuZGxlAwAYX193YXNtX2FwcGx5X2RhdGFfcmVsb2NzAAAK7AMDAwABC8YDAQ9/AkAgA0UNACAERQ0AA0AgDCENQQAhE0EAIQcDQCAHQQJqIQYCfyAHQQF0IAVqIgcuAQIiFEUEQEGAwAAhCEGAwAAhCUGAwAAhCkGAwAAhCyAGDAELIBIgBy4BAGohCEEAIQsgFCEHQQAhDiAGIQlBACEPQQAhEANAIAUgCUEBdGouAQAiESAAIAhBAnRqKAIAIgpBGHZsIBBqIRAgCkH/AXEgEWwgC2ohCyAKQRB2Qf8BcSARbCAPaiEPIApBCHZB/wFxIBFsIA5qIQ4gCEEBaiEIIAlBAWohCSAHQQFrIgcNAAsgC0GAQGshCCAOQYBAayEJIA9BgEBrIQogEEGAQGshCyAGIBRqCyEHIAEgDUECdGogCUEOdSIGQf8BIAZB/wFIGyIGQQAgBkEAShtBCHRBgP4DcSAKQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EQdEGAgPwHcSALQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EYdHJyIAhBDnUiBkH/ASAGQf8BSBsiBkEAIAZBAEobcjYCACADIA1qIQ0gE0EBaiITIARHDQALIAxBAWoiDCACbCESIAMgDEcNAAsLCx4AQQAgAiADIAQgBSAAEAEgAkEAIAQgBSAGIAEQAQs="},{}],4:[function(r,i,u){i.exports={name:"resize",fn:r("./resize"),wasm_fn:r("./resize_wasm"),wasm_src:r("./convolve_wasm_base64")}},{"./convolve_wasm_base64":3,"./resize":5,"./resize_wasm":8}],5:[function(r,i,u){var a=r("./resize_filter_gen"),n=r("./convolve").convolveHorizontally,o=r("./convolve").convolveVertically;function s(l,g,C){var B=3,E=g*C*4|0;while(B<E)l[B]=255,B=B+4|0}i.exports=function(g){var{src:C,width:B,height:E,toWidth:d,toHeight:I}=g,h=g.scaleX||g.toWidth/g.width,Q=g.scaleY||g.toHeight/g.height,p=g.offsetX||0,m=g.offsetY||0,f=g.dest||new Uint8Array(d*I*4),D=typeof g.quality>"u"?3:g.quality,w=g.alpha||!1,b=a(D,B,d,h,p),k=a(D,E,I,Q,m),v=new Uint8Array(d*E*4);if(n(C,v,B,E,d,b),o(v,f,E,d,I,k),!w)s(f,d,I);return f}},{"./convolve":2,"./resize_filter_gen":6}],6:[function(r,i,u){var a=r("./resize_filter_info"),n=14;function o(s){return Math.round(s*((1<<n)-1))}i.exports=function(l,g,C,B,E){var d=a[l].filter,I=1/B,h=Math.min(1,B),Q=a[l].win/h,p,m,f,D,w,b,k,v,S,x,F,T,R,L,M,U,Y,H=Math.floor((Q+1)*2),J=new Int16Array((H+2)*C),K=0,O=!J.subarray||!J.set;for(p=0;p<C;p++){m=(p+0.5)*I+E,f=Math.max(0,Math.floor(m-Q)),D=Math.min(g-1,Math.ceil(m+Q)),w=D-f+1,b=new Float32Array(w),k=new Int16Array(w),v=0;for(S=f,x=0;S<=D;S++,x++)F=d((S+0.5-m)*h),v+=F,b[x]=F;T=0;for(x=0;x<b.length;x++)R=b[x]/v,T+=R,k[x]=o(R);k[C>>1]+=o(1-T),L=0;while(L<k.length&&k[L]===0)L++;if(L<k.length){M=k.length-1;while(M>0&&k[M]===0)M--;if(U=f+L,Y=M-L+1,J[K++]=U,J[K++]=Y,!O)J.set(k.subarray(L,M+1),K),K+=Y;else for(x=L;x<=M;x++)J[K++]=k[x]}else J[K++]=0,J[K++]=0}return J}},{"./resize_filter_info":7}],7:[function(r,i,u){i.exports=[{win:0.5,filter:function(n){return n>=-0.5&&n<0.5?1:0}},{win:1,filter:function(n){if(n<=-1||n>=1)return 0;if(n>-0.00000011920929&&n<0.00000011920929)return 1;var o=n*Math.PI;return Math.sin(o)/o*(0.54+0.46*Math.cos(o/1))}},{win:2,filter:function(n){if(n<=-2||n>=2)return 0;if(n>-0.00000011920929&&n<0.00000011920929)return 1;var o=n*Math.PI;return Math.sin(o)/o*Math.sin(o/2)/(o/2)}},{win:3,filter:function(n){if(n<=-3||n>=3)return 0;if(n>-0.00000011920929&&n<0.00000011920929)return 1;var o=n*Math.PI;return Math.sin(o)/o*Math.sin(o/3)/(o/3)}}]},{}],8:[function(r,i,u){var a=r("./resize_filter_gen");function n(g,C,B){var E=3,d=C*B*4|0;while(E<d)g[E]=255,E=E+4|0}function o(g){return new Uint8Array(g.buffer,0,g.byteLength)}var s=!0;try{s=new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]===1}catch(g){}function l(g,C,B){if(s){C.set(o(g),B);return}for(var E=B,d=0;d<g.length;d++){var I=g[d];C[E++]=I&255,C[E++]=I>>8&255}}i.exports=function(C){var{src:B,width:E,height:d,toWidth:I,toHeight:h}=C,Q=C.scaleX||C.toWidth/C.width,p=C.scaleY||C.toHeight/C.height,m=C.offsetX||0,f=C.offsetY||0,D=C.dest||new Uint8Array(I*h*4),w=typeof C.quality>"u"?3:C.quality,b=C.alpha||!1,k=a(w,E,I,Q,m),v=a(w,d,h,p,f),S=0,x=this.__align(S+Math.max(B.byteLength,D.byteLength)),F=this.__align(x+d*I*4),T=this.__align(F+k.byteLength),R=T+v.byteLength,L=this.__instance("resize",R),M=new Uint8Array(this.__memory.buffer),U=new Uint32Array(this.__memory.buffer),Y=new Uint32Array(B.buffer);U.set(Y),l(k,M,F),l(v,M,T);var H=L.exports.convolveHV||L.exports._convolveHV;H(F,T,x,E,d,I,h);var J=new Uint32Array(D.buffer);if(J.set(new Uint32Array(this.__memory.buffer,0,h*I)),!b)n(D,I,h);return D}},{"./resize_filter_gen":6}],9:[function(r,i,u){i.exports={name:"unsharp_mask",fn:r("./unsharp_mask"),wasm_fn:r("./unsharp_mask_wasm"),wasm_src:r("./unsharp_mask_wasm_base64")}},{"./unsharp_mask":10,"./unsharp_mask_wasm":11,"./unsharp_mask_wasm_base64":12}],10:[function(r,i,u){var a=r("glur/mono16");function n(o,s,l){var g=s*l,C=new Uint16Array(g),B,E,d,I;for(var h=0;h<g;h++)B=o[4*h],E=o[4*h+1],d=o[4*h+2],I=B>=E&&B>=d?B:E>=d&&E>=B?E:d,C[h]=I<<8;return C}i.exports=function(s,l,g,C,B,E){var d,I,h,Q,p;if(C===0||B<0.5)return;if(B>2)B=2;var m=n(s,l,g),f=new Uint16Array(m);a(f,l,g,B);var D=C/100*4096+0.5|0,w=E<<8,b=l*g;for(var k=0;k<b;k++)if(d=m[k],Q=d-f[k],Math.abs(Q)>=w)I=d+(D*Q+2048>>12),I=I>65280?65280:I,I=I<0?0:I,d=d!==0?d:1,h=(I<<12)/d|0,p=k*4,s[p]=s[p]*h+2048>>12,s[p+1]=s[p+1]*h+2048>>12,s[p+2]=s[p+2]*h+2048>>12}},{"glur/mono16":18}],11:[function(r,i,u){i.exports=function(n,o,s,l,g,C){if(l===0||g<0.5)return;if(g>2)g=2;var B=o*s,E=B*4,d=B*2,I=B*2,h=Math.max(o,s)*4,Q=32,p=0,m=E,f=m+d,D=f+I,w=D+I,b=w+h,k=this.__instance("unsharp_mask",E+d+I*2+h+Q,{exp:Math.exp}),v=new Uint32Array(n.buffer),S=new Uint32Array(this.__memory.buffer);S.set(v);var x=k.exports.hsv_v16||k.exports._hsv_v16;x(p,m,o,s),x=k.exports.blurMono16||k.exports._blurMono16,x(m,f,D,w,b,o,s,g),x=k.exports.unsharp||k.exports._unsharp,x(p,p,m,f,o,s,l,C),v.set(new Uint32Array(this.__memory.buffer,0,B))}},{}],12:[function(r,i,u){i.exports="AGFzbQEAAAAADAZkeWxpbmsAAAAAAAE0B2AAAGAEf39/fwBgBn9/f39/fwBgCH9/f39/f39/AGAIf39/f39/f30AYAJ9fwBgAXwBfAIZAgNlbnYDZXhwAAYDZW52Bm1lbW9yeQIAAAMHBgAFAgQBAwYGAX8AQQALB4oBCBFfX3dhc21fY2FsbF9jdG9ycwABFl9fYnVpbGRfZ2F1c3NpYW5fY29lZnMAAg5fX2dhdXNzMTZfbGluZQADCmJsdXJNb25vMTYABAdoc3ZfdjE2AAUHdW5zaGFycAAGDF9fZHNvX2hhbmRsZQMAGF9fd2FzbV9hcHBseV9kYXRhX3JlbG9jcwABCsUMBgMAAQvWAQEHfCABRNuGukOCGvs/IAC7oyICRAAAAAAAAADAohAAIgW2jDgCFCABIAKaEAAiAyADoCIGtjgCECABRAAAAAAAAPA/IAOhIgQgBKIgAyACIAKgokQAAAAAAADwP6AgBaGjIgS2OAIAIAEgBSAEmqIiB7Y4AgwgASADIAJEAAAAAAAA8D+gIASioiIItjgCCCABIAMgAkQAAAAAAADwv6AgBKKiIgK2OAIEIAEgByAIoCAFRAAAAAAAAPA/IAahoCIDo7Y4AhwgASAEIAKgIAOjtjgCGAuGBQMGfwl8An0gAyoCDCEVIAMqAgghFiADKgIUuyERIAMqAhC7IRACQCAEQQFrIghBAEgiCQRAIAIhByAAIQYMAQsgAiAALwEAuCIPIAMqAhi7oiIMIBGiIg0gDCAQoiAPIAMqAgS7IhOiIhQgAyoCALsiEiAPoqCgoCIOtjgCACACQQRqIQcgAEECaiEGIAhFDQAgCEEBIAhBAUgbIgpBf3MhCwJ/IAQgCmtBAXFFBEAgDiENIAgMAQsgAiANIA4gEKIgFCASIAAvAQK4Ig+ioKCgIg22OAIEIAJBCGohByAAQQRqIQYgDiEMIARBAmsLIQIgC0EAIARrRg0AA0AgByAMIBGiIA0gEKIgDyAToiASIAYvAQC4Ig6ioKCgIgy2OAIAIAcgDSARoiAMIBCiIA4gE6IgEiAGLwECuCIPoqCgoCINtjgCBCAHQQhqIQcgBkEEaiEGIAJBAkohACACQQJrIQIgAA0ACwsCQCAJDQAgASAFIAhsQQF0aiIAAn8gBkECay8BACICuCINIBW7IhKiIA0gFrsiE6KgIA0gAyoCHLuiIgwgEKKgIAwgEaKgIg8gB0EEayIHKgIAu6AiDkQAAAAAAADwQWMgDkQAAAAAAAAAAGZxBEAgDqsMAQtBAAs7AQAgCEUNACAGQQRrIQZBACAFa0EBdCEBA0ACfyANIBKiIAJB//8DcbgiDSAToqAgDyIOIBCioCAMIBGioCIPIAdBBGsiByoCALugIgxEAAAAAAAA8EFjIAxEAAAAAAAAAABmcQRAIAyrDAELQQALIQMgBi8BACECIAAgAWoiACADOwEAIAZBAmshBiAIQQFKIQMgDiEMIAhBAWshCCADDQALCwvRAgIBfwd8AkAgB0MAAAAAWw0AIARE24a6Q4Ia+z8gB0MAAAA/l7ujIglEAAAAAAAAAMCiEAAiDLaMOAIUIAQgCZoQACIKIAqgIg22OAIQIAREAAAAAAAA8D8gCqEiCyALoiAKIAkgCaCiRAAAAAAAAPA/oCAMoaMiC7Y4AgAgBCAMIAuaoiIOtjgCDCAEIAogCUQAAAAAAADwP6AgC6KiIg+2OAIIIAQgCiAJRAAAAAAAAPC/oCALoqIiCbY4AgQgBCAOIA+gIAxEAAAAAAAA8D8gDaGgIgqjtjgCHCAEIAsgCaAgCqO2OAIYIAYEQANAIAAgBSAIbEEBdGogAiAIQQF0aiADIAQgBSAGEAMgCEEBaiIIIAZHDQALCyAFRQ0AQQAhCANAIAIgBiAIbEEBdGogASAIQQF0aiADIAQgBiAFEAMgCEEBaiIIIAVHDQALCwtxAQN/IAIgA2wiBQRAA0AgASAAKAIAIgRBEHZB/wFxIgIgAiAEQQh2Qf8BcSIDIAMgBEH/AXEiBEkbIAIgA0sbIgYgBiAEIAIgBEsbIAMgBEsbQQh0OwEAIAFBAmohASAAQQRqIQAgBUEBayIFDQALCwuZAgIDfwF8IAQgBWwhBAJ/IAazQwAAgEWUQwAAyEKVu0QAAAAAAADgP6AiC5lEAAAAAAAA4EFjBEAgC6oMAQtBgICAgHgLIQUgBARAIAdBCHQhCUEAIQYDQCAJIAIgBkEBdCIHai8BACIBIAMgB2ovAQBrIgcgB0EfdSIIaiAIc00EQCAAIAZBAnQiCGoiCiAFIAdsQYAQakEMdSABaiIHQYD+AyAHQYD+A0gbIgdBACAHQQBKG0EMdCABQQEgARtuIgEgCi0AAGxBgBBqQQx2OgAAIAAgCEEBcmoiByABIActAABsQYAQakEMdjoAACAAIAhBAnJqIgcgASAHLQAAbEGAEGpBDHY6AAALIAZBAWoiBiAERw0ACwsL"},{}],13:[function(r,i,u){var a=100;function n(o,s){this.create=o,this.available=[],this.acquired={},this.lastId=1,this.timeoutId=0,this.idle=s||2000}n.prototype.acquire=function(){var o=this,s;if(this.available.length!==0)s=this.available.pop();else s=this.create(),s.id=this.lastId++,s.release=function(){return o.release(s)};return this.acquired[s.id]=s,s},n.prototype.release=function(o){var s=this;if(delete this.acquired[o.id],o.lastUsed=Date.now(),this.available.push(o),this.timeoutId===0)this.timeoutId=setTimeout(function(){return s.gc()},a)},n.prototype.gc=function(){var o=this,s=Date.now();if(this.available=this.available.filter(function(l){if(s-l.lastUsed>o.idle)return l.destroy(),!1;return!0}),this.available.length!==0)this.timeoutId=setTimeout(function(){return o.gc()},a);else this.timeoutId=0},i.exports=n},{}],14:[function(r,i,u){var a=2;i.exports=function(o,s,l,g,C,B){var E=l/o,d=g/s,I=(2*B+a+1)/C;if(I>0.5)return[[l,g]];var h=Math.ceil(Math.log(Math.min(E,d))/Math.log(I));if(h<=1)return[[l,g]];var Q=[];for(var p=0;p<h;p++){var m=Math.round(Math.pow(Math.pow(o,h-p-1)*Math.pow(l,p+1),1/h)),f=Math.round(Math.pow(Math.pow(s,h-p-1)*Math.pow(g,p+1),1/h));Q.push([m,f])}return Q}},{}],15:[function(r,i,u){var a=0.00001;function n(s){var l=Math.round(s);if(Math.abs(s-l)<a)return l;return Math.floor(s)}function o(s){var l=Math.round(s);if(Math.abs(s-l)<a)return l;return Math.ceil(s)}i.exports=function(l){var g=l.toWidth/l.width,C=l.toHeight/l.height,B=n(l.srcTileSize*g)-2*l.destTileBorder,E=n(l.srcTileSize*C)-2*l.destTileBorder;if(B<1||E<1)throw Error("Internal error in pica: target tile width/height is too small.");var d,I,h,Q,p,m,f=[],D;for(Q=0;Q<l.toHeight;Q+=E)for(h=0;h<l.toWidth;h+=B){if(d=h-l.destTileBorder,d<0)d=0;if(p=h+B+l.destTileBorder-d,d+p>=l.toWidth)p=l.toWidth-d;if(I=Q-l.destTileBorder,I<0)I=0;if(m=Q+E+l.destTileBorder-I,I+m>=l.toHeight)m=l.toHeight-I;D={toX:d,toY:I,toWidth:p,toHeight:m,toInnerX:h,toInnerY:Q,toInnerWidth:B,toInnerHeight:E,offsetX:d/g-n(d/g),offsetY:I/C-n(I/C),scaleX:g,scaleY:C,x:n(d/g),y:n(I/C),width:o(p/g),height:o(m/C)},f.push(D)}return f}},{}],16:[function(r,i,u){function a(n){return Object.prototype.toString.call(n)}i.exports.isCanvas=function(o){var s=a(o);return s==="[object HTMLCanvasElement]"||s==="[object OffscreenCanvas]"||s==="[object Canvas]"},i.exports.isImage=function(o){return a(o)==="[object HTMLImageElement]"},i.exports.isImageBitmap=function(o){return a(o)==="[object ImageBitmap]"},i.exports.limiter=function(o){var s=0,l=[];function g(){if(s<o&&l.length)s++,l.shift()()}return function(B){return new Promise(function(E,d){l.push(function(){B().then(function(I){E(I),s--,g()},function(I){d(I),s--,g()})}),g()})}},i.exports.cib_quality_name=function(o){switch(o){case 0:return"pixelated";case 1:return"low";case 2:return"medium"}return"high"},i.exports.cib_support=function(o){return Promise.resolve().then(function(){if(typeof createImageBitmap>"u")return!1;var s=o(100,100);return createImageBitmap(s,0,0,100,100,{resizeWidth:10,resizeHeight:10,resizeQuality:"high"}).then(function(l){var g=l.width===10;return l.close(),s=null,g})}).catch(function(){return!1})},i.exports.worker_offscreen_canvas_support=function(){return new Promise(function(o,s){if(typeof OffscreenCanvas>"u"){o(!1);return}function l(B){if(typeof createImageBitmap>"u"){B.postMessage(!1);return}Promise.resolve().then(function(){var E=new OffscreenCanvas(10,10),d=E.getContext("2d");return d.rect(0,0,1,1),createImageBitmap(E,0,0,1,1)}).then(function(){return B.postMessage(!0)},function(){return B.postMessage(!1)})}var g=btoa("(".concat(l.toString(),")(self);")),C=new Worker("data:text/javascript;base64,".concat(g));C.onmessage=function(B){return o(B.data)},C.onerror=s}).then(function(o){return o},function(){return!1})},i.exports.can_use_canvas=function(o){var s=!1;try{var l=o(2,1),g=l.getContext("2d"),C=g.createImageData(2,1);if(C.data[0]=12,C.data[1]=23,C.data[2]=34,C.data[3]=255,C.data[4]=45,C.data[5]=56,C.data[6]=67,C.data[7]=255,g.putImageData(C,0,0),C=null,C=g.getImageData(0,0,2,1),C.data[0]===12&&C.data[1]===23&&C.data[2]===34&&C.data[3]===255&&C.data[4]===45&&C.data[5]===56&&C.data[6]===67&&C.data[7]===255)s=!0}catch(B){}return s},i.exports.cib_can_use_region=function(){return new Promise(function(o){if(typeof createImageBitmap>"u"){o(!1);return}var s=new Image;s.src="data:image/jpeg;base64,/9j/4QBiRXhpZgAATU0AKgAAAAgABQESAAMAAAABAAYAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAAITAAMAAAABAAEAAAAAAAAAAABIAAAAAQAAAEgAAAAB/9sAQwAEAwMEAwMEBAMEBQQEBQYKBwYGBgYNCQoICg8NEBAPDQ8OERMYFBESFxIODxUcFRcZGRsbGxAUHR8dGh8YGhsa/9sAQwEEBQUGBQYMBwcMGhEPERoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoa/8IAEQgAAQACAwERAAIRAQMRAf/EABQAAQAAAAAAAAAAAAAAAAAAAAf/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAF/P//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAQUCf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQMBAT8Bf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQIBAT8Bf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEABj8Cf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAT8hf//aAAwDAQACAAMAAAAQH//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQMBAT8Qf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQIBAT8Qf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAT8Qf//Z",s.onload=function(){createImageBitmap(s,0,0,s.width,s.height).then(function(l){if(l.width===s.width&&l.height===s.height)o(!0);else o(!1)},function(){return o(!1)})},s.onerror=function(){return o(!1)}})}},{}],17:[function(r,i,u){i.exports=function(){var a=r("./mathlib"),n;onmessage=function(s){var l=s.data.opts,g=!1;if(!l.src&&l.srcBitmap){var C=new OffscreenCanvas(l.width,l.height),B=C.getContext("2d",{alpha:Boolean(l.alpha)});B.drawImage(l.srcBitmap,0,0),l.src=B.getImageData(0,0,l.width,l.height).data,C.width=C.height=0,C=null,l.srcBitmap.close(),l.srcBitmap=null}if(!n)n=new a(s.data.features);var E=n.resizeAndUnsharp(l);if(g){var d=new ImageData(new Uint8ClampedArray(E),l.toWidth,l.toHeight),I=new OffscreenCanvas(l.toWidth,l.toHeight),h=I.getContext("2d",{alpha:Boolean(l.alpha)});h.putImageData(d,0,0),createImageBitmap(I).then(function(Q){postMessage({bitmap:Q},[Q])})}else postMessage({data:E},[E.buffer])}}},{"./mathlib":1}],18:[function(r,i,u){var a,n,o,s,l,g,C,B;function E(h){if(h<0.5)h=0.5;var Q=Math.exp(0.527076)/h,p=Math.exp(-Q),m=Math.exp(-2*Q),f=(1-p)*(1-p)/(1+2*Q*p-m);return a=f,n=f*(Q-1)*p,o=f*(Q+1)*p,s=-f*m,l=2*p,g=-m,C=(a+n)/(1-l-g),B=(o+s)/(1-l-g),new Float32Array([a,n,o,s,l,g,C,B])}function d(h,Q,p,m,f,D){var w,b,k,v,S,x,F,T,R,L,M,U,Y,H;for(R=0;R<D;R++){x=R*f,F=R,T=0,w=h[x],S=w*m[6],v=S,M=m[0],U=m[1],Y=m[4],H=m[5];for(L=0;L<f;L++)b=h[x],k=b*M+w*U+v*Y+S*H,S=v,v=k,w=b,p[T]=v,T++,x++;x--,T--,F+=D*(f-1),w=h[x],S=w*m[7],v=S,b=w,M=m[2],U=m[3];for(L=f-1;L>=0;L--)k=b*M+w*U+v*Y+S*H,S=v,v=k,w=b,b=h[x],Q[F]=p[T]+v,x--,T--,F-=D}}function I(h,Q,p,m){if(!m)return;var f=new Uint16Array(h.length),D=new Float32Array(Math.max(Q,p)),w=E(m);d(h,f,D,w,Q,p,m),d(f,h,D,w,p,Q,m)}i.exports=I},{}],19:[function(r,i,u){if(typeof Object.create==="function")i.exports=function(n,o){if(o)n.super_=o,n.prototype=Object.create(o.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}})};else i.exports=function(n,o){if(o){n.super_=o;var s=function(){};s.prototype=o.prototype,n.prototype=new s,n.prototype.constructor=n}}},{}],20:[function(r,i,u){var a=r("object-assign"),n=r("./lib/base64decode"),o=r("./lib/wa_detect"),s={js:!0,wasm:!0};function l(g){if(!(this instanceof l))return new l(g);var C=a({},s,g||{});if(this.options=C,this.__cache={},this.__init_promise=null,this.__modules=C.modules||{},this.__memory=null,this.__wasm={},this.__isLE=new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]===1,!this.options.js&&!this.options.wasm)throw Error('mathlib: at least "js" or "wasm" should be enabled')}l.prototype.has_wasm=o,l.prototype.use=function(g){if(this.__modules[g.name]=g,this.options.wasm&&this.has_wasm()&&g.wasm_fn)this[g.name]=g.wasm_fn;else this[g.name]=g.fn;return this},l.prototype.init=function(){if(this.__init_promise)return this.__init_promise;if(!this.options.js&&this.options.wasm&&!this.has_wasm())return Promise.reject(Error(`mathlib: only "wasm" was enabled, but it's not supported`));var g=this;return this.__init_promise=Promise.all(Object.keys(g.__modules).map(function(C){var B=g.__modules[C];if(!g.options.wasm||!g.has_wasm()||!B.wasm_fn)return null;if(g.__wasm[C])return null;return WebAssembly.compile(g.__base64decode(B.wasm_src)).then(function(E){g.__wasm[C]=E})})).then(function(){return g}),this.__init_promise},l.prototype.__base64decode=n,l.prototype.__reallocate=function(C){if(!this.__memory)return this.__memory=new WebAssembly.Memory({initial:Math.ceil(C/65536)}),this.__memory;var B=this.__memory.buffer.byteLength;if(B<C)this.__memory.grow(Math.ceil((C-B)/65536));return this.__memory},l.prototype.__instance=function(C,B,E){if(B)this.__reallocate(B);if(!this.__wasm[C]){var d=this.__modules[C];this.__wasm[C]=new WebAssembly.Module(this.__base64decode(d.wasm_src))}if(!this.__cache[C]){var I={memoryBase:0,memory:this.__memory,tableBase:0,table:new WebAssembly.Table({initial:0,element:"anyfunc"})};this.__cache[C]=new WebAssembly.Instance(this.__wasm[C],{env:a(I,E||{})})}return this.__cache[C]},l.prototype.__align=function(C,B){B=B||8;var E=C%B;return C+(E?B-E:0)},i.exports=l},{"./lib/base64decode":21,"./lib/wa_detect":22,"object-assign":23}],21:[function(r,i,u){var a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";i.exports=function(o){var s=o.replace(/[\r\n=]/g,""),l=s.length,g=new Uint8Array(l*3>>2),C=0,B=0;for(var E=0;E<l;E++){if(E%4===0&&E)g[B++]=C>>16&255,g[B++]=C>>8&255,g[B++]=C&255;C=C<<6|a.indexOf(s.charAt(E))}var d=l%4*6;if(d===0)g[B++]=C>>16&255,g[B++]=C>>8&255,g[B++]=C&255;else if(d===18)g[B++]=C>>10&255,g[B++]=C>>2&255;else if(d===12)g[B++]=C>>4&255;return g}},{}],22:[function(r,i,u){var a;i.exports=function(){if(typeof a<"u")return a;if(a=!1,typeof WebAssembly>"u")return a;try{var o=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),s=new WebAssembly.Module(o),l=new WebAssembly.Instance(s,{});if(l.exports.test(4)!==0)a=!0;return a}catch(g){}return a}},{}],23:[function(r,i,u){var a=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;function s(g){if(g===null||g===void 0)throw TypeError("Object.assign cannot be called with null or undefined");return Object(g)}function l(){try{if(!Object.assign)return!1;var g=new String("abc");if(g[5]="de",Object.getOwnPropertyNames(g)[0]==="5")return!1;var C={};for(var B=0;B<10;B++)C["_"+String.fromCharCode(B)]=B;var E=Object.getOwnPropertyNames(C).map(function(I){return C[I]});if(E.join("")!=="0123456789")return!1;var d={};if("abcdefghijklmnopqrst".split("").forEach(function(I){d[I]=I}),Object.keys(Object.assign({},d)).join("")!=="abcdefghijklmnopqrst")return!1;return!0}catch(I){return!1}}i.exports=l()?Object.assign:function(g,C){var B,E=s(g),d;for(var I=1;I<arguments.length;I++){B=Object(arguments[I]);for(var h in B)if(n.call(B,h))E[h]=B[h];if(a){d=a(B);for(var Q=0;Q<d.length;Q++)if(o.call(B,d[Q]))E[d[Q]]=B[d[Q]]}}return E}},{}],24:[function(r,i,u){var a=arguments[3],n=arguments[4],o=arguments[5],s=JSON.stringify;i.exports=function(l,g){var C,B=Object.keys(o);for(var E=0,d=B.length;E<d;E++){var I=B[E],h=o[I].exports;if(h===l||h&&h.default===l){C=I;break}}if(!C){C=Math.floor(Math.pow(16,8)*Math.random()).toString(16);var Q={};for(var E=0,d=B.length;E<d;E++){var I=B[E];Q[I]=I}n[C]=["function(require,module,exports){"+l+"(self); }",Q]}var p=Math.floor(Math.pow(16,8)*Math.random()).toString(16),m={};m[C]=C,n[p]=["function(require,module,exports){var f = require("+s(C)+");(f.default ? f.default : f)(self);}",m];var f={};D(p);function D(x){f[x]=!0;for(var F in n[x][1]){var T=n[x][1][F];if(!f[T])D(T)}}var w="("+a+")({"+Object.keys(f).map(function(x){return s(x)+":["+n[x][0]+","+s(n[x][1])+"]"}).join(",")+"},{},["+s(p)+"])",b=window.URL||window.webkitURL||window.mozURL||window.msURL,k=new Blob([w],{type:"text/javascript"});if(g&&g.bare)return k;var v=b.createObjectURL(k),S=new Worker(v);return S.objectURL=v,S}},{}],"/index.js":[function(r,i,u){function a(L,M){return g(L)||l(L,M)||o(L,M)||n()}function n(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function o(L,M){if(!L)return;if(typeof L==="string")return s(L,M);var U=Object.prototype.toString.call(L).slice(8,-1);if(U==="Object"&&L.constructor)U=L.constructor.name;if(U==="Map"||U==="Set")return Array.from(L);if(U==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(U))return s(L,M)}function s(L,M){if(M==null||M>L.length)M=L.length;for(var U=0,Y=Array(M);U<M;U++)Y[U]=L[U];return Y}function l(L,M){var U=L==null?null:typeof Symbol<"u"&&L[Symbol.iterator]||L["@@iterator"];if(U==null)return;var Y=[],H=!0,J=!1,K,O;try{for(U=U.call(L);!(H=(K=U.next()).done);H=!0)if(Y.push(K.value),M&&Y.length===M)break}catch(P){J=!0,O=P}finally{try{if(!H&&U.return!=null)U.return()}finally{if(J)throw O}}return Y}function g(L){if(Array.isArray(L))return L}var C=r("object-assign"),B=r("webworkify"),E=r("./lib/mathlib"),d=r("./lib/pool"),I=r("./lib/utils"),h=r("./lib/worker"),Q=r("./lib/stepper"),p=r("./lib/tiler"),m={},f=!1;try{if(typeof navigator<"u"&&navigator.userAgent)f=navigator.userAgent.indexOf("Safari")>=0}catch(L){}var D=1;if(typeof navigator<"u")D=Math.min(navigator.hardwareConcurrency||1,4);var w={tile:1024,concurrency:D,features:["js","wasm","ww"],idle:2000,createCanvas:function(M,U){var Y=document.createElement("canvas");return Y.width=M,Y.height=U,Y}},b={quality:3,alpha:!1,unsharpAmount:0,unsharpRadius:0,unsharpThreshold:0},k=!1,v=!1,S=!1,x=!1,F=!1;function T(){return{value:B(h),destroy:function(){if(this.value.terminate(),typeof window<"u"){var M=window.URL||window.webkitURL||window.mozURL||window.msURL;if(M&&M.revokeObjectURL&&this.value.objectURL)M.revokeObjectURL(this.value.objectURL)}}}}function R(L){if(!(this instanceof R))return new R(L);this.options=C({},w,L||{});var M="lk_".concat(this.options.concurrency);if(this.__limit=m[M]||I.limiter(this.options.concurrency),!m[M])m[M]=this.__limit;this.features={js:!1,wasm:!1,cib:!1,ww:!1},this.__workersPool=null,this.__requested_features=[],this.__mathlib=null}R.prototype.init=function(){var L=this;if(this.__initPromise)return this.__initPromise;if(typeof ImageData<"u"&&typeof Uint8ClampedArray<"u")try{new ImageData(new Uint8ClampedArray(400),10,10),k=!0}catch(P){}if(typeof ImageBitmap<"u")if(ImageBitmap.prototype&&ImageBitmap.prototype.close)v=!0;else this.debug("ImageBitmap does not support .close(), disabled");var M=this.options.features.slice();if(M.indexOf("all")>=0)M=["cib","wasm","js","ww"];if(this.__requested_features=M,this.__mathlib=new E(M),M.indexOf("ww")>=0){if(typeof window<"u"&&"Worker"in window)try{var U=r("webworkify")(function(){});U.terminate(),this.features.ww=!0;var Y="wp_".concat(JSON.stringify(this.options));if(m[Y])this.__workersPool=m[Y];else this.__workersPool=new d(T,this.options.idle),m[Y]=this.__workersPool}catch(P){}}var H=this.__mathlib.init().then(function(P){C(L.features,P.features)}),J;if(!v)J=Promise.resolve(!1);else J=I.cib_support(this.options.createCanvas).then(function(P){if(L.features.cib&&M.indexOf("cib")<0){L.debug("createImageBitmap() resize supported, but disabled by config");return}if(M.indexOf("cib")>=0)L.features.cib=P});S=I.can_use_canvas(this.options.createCanvas);var K;if(v&&k&&M.indexOf("ww")!==-1)K=I.worker_offscreen_canvas_support();else K=Promise.resolve(!1);K=K.then(function(P){x=P});var O=I.cib_can_use_region().then(function(P){F=P});return this.__initPromise=Promise.all([H,J,K,O]).then(function(){return L}),this.__initPromise},R.prototype.__invokeResize=function(L,M){var U=this;return M.__mathCache=M.__mathCache||{},Promise.resolve().then(function(){if(!U.features.ww)return{data:U.__mathlib.resizeAndUnsharp(L,M.__mathCache)};return new Promise(function(Y,H){var J=U.__workersPool.acquire();if(M.cancelToken)M.cancelToken.catch(function(O){return H(O)});J.value.onmessage=function(O){if(J.release(),O.data.err)H(O.data.err);else Y(O.data)};var K=[];if(L.src)K.push(L.src.buffer);if(L.srcBitmap)K.push(L.srcBitmap);J.value.postMessage({opts:L,features:U.__requested_features,preload:{wasm_nodule:U.__mathlib.__}},K)})})},R.prototype.__extractTileData=function(L,M,U,Y,H){if(this.features.ww&&x&&(I.isCanvas(M)||F))return this.debug("Create tile for OffscreenCanvas"),createImageBitmap(Y.srcImageBitmap||M,L.x,L.y,L.width,L.height).then(function(O){return H.srcBitmap=O,H});if(I.isCanvas(M)){if(!Y.srcCtx)Y.srcCtx=M.getContext("2d",{alpha:Boolean(U.alpha)});return this.debug("Get tile pixel data"),H.src=Y.srcCtx.getImageData(L.x,L.y,L.width,L.height).data,H}this.debug("Draw tile imageBitmap/image to temporary canvas");var J=this.options.createCanvas(L.width,L.height),K=J.getContext("2d",{alpha:Boolean(U.alpha)});return K.globalCompositeOperation="copy",K.drawImage(Y.srcImageBitmap||M,L.x,L.y,L.width,L.height,0,0,L.width,L.height),this.debug("Get tile pixel data"),H.src=K.getImageData(0,0,L.width,L.height).data,J.width=J.height=0,H},R.prototype.__landTileData=function(L,M,U){var Y;if(this.debug("Convert raw rgba tile result to ImageData"),M.bitmap)return U.toCtx.drawImage(M.bitmap,L.toX,L.toY),null;if(k)Y=new ImageData(new Uint8ClampedArray(M.data),L.toWidth,L.toHeight);else if(Y=U.toCtx.createImageData(L.toWidth,L.toHeight),Y.data.set)Y.data.set(M.data);else for(var H=Y.data.length-1;H>=0;H--)Y.data[H]=M.data[H];if(this.debug("Draw tile"),f)U.toCtx.putImageData(Y,L.toX,L.toY,L.toInnerX-L.toX,L.toInnerY-L.toY,L.toInnerWidth+0.00001,L.toInnerHeight+0.00001);else U.toCtx.putImageData(Y,L.toX,L.toY,L.toInnerX-L.toX,L.toInnerY-L.toY,L.toInnerWidth,L.toInnerHeight);return null},R.prototype.__tileAndResize=function(L,M,U){var Y=this,H={srcCtx:null,srcImageBitmap:null,isImageBitmapReused:!1,toCtx:null},J=function(O){return Y.__limit(function(){if(U.canceled)return U.cancelToken;var P={width:O.width,height:O.height,toWidth:O.toWidth,toHeight:O.toHeight,scaleX:O.scaleX,scaleY:O.scaleY,offsetX:O.offsetX,offsetY:O.offsetY,quality:U.quality,alpha:U.alpha,unsharpAmount:U.unsharpAmount,unsharpRadius:U.unsharpRadius,unsharpThreshold:U.unsharpThreshold};return Y.debug("Invoke resize math"),Promise.resolve(P).then(function(z){return Y.__extractTileData(O,L,U,H,z)}).then(function(z){return Y.debug("Invoke resize math"),Y.__invokeResize(z,U)}).then(function(z){if(U.canceled)return U.cancelToken;return H.srcImageData=null,Y.__landTileData(O,z,H)})})};return Promise.resolve().then(function(){if(H.toCtx=M.getContext("2d",{alpha:Boolean(U.alpha)}),I.isCanvas(L))return null;if(I.isImageBitmap(L))return H.srcImageBitmap=L,H.isImageBitmapReused=!0,null;if(I.isImage(L)){if(!v)return null;return Y.debug("Decode image via createImageBitmap"),createImageBitmap(L).then(function(K){H.srcImageBitmap=K}).catch(function(K){return null})}throw Error('Pica: ".from" should be Image, Canvas or ImageBitmap')}).then(function(){if(U.canceled)return U.cancelToken;Y.debug("Calculate tiles");var K=p({width:U.width,height:U.height,srcTileSize:Y.options.tile,toWidth:U.toWidth,toHeight:U.toHeight,destTileBorder:U.__destTileBorder}),O=K.map(function(z){return J(z)});function P(z){if(z.srcImageBitmap){if(!z.isImageBitmapReused)z.srcImageBitmap.close();z.srcImageBitmap=null}}return Y.debug("Process tiles"),Promise.all(O).then(function(){return Y.debug("Finished!"),P(H),M},function(z){throw P(H),z})})},R.prototype.__processStages=function(L,M,U,Y){var H=this;if(Y.canceled)return Y.cancelToken;var J=L.shift(),K=a(J,2),O=K[0],P=K[1],z=L.length===0;Y=C({},Y,{toWidth:O,toHeight:P,quality:z?Y.quality:Math.min(1,Y.quality)});var AA;if(!z)AA=this.options.createCanvas(O,P);return this.__tileAndResize(M,z?U:AA,Y).then(function(){if(z)return U;return Y.width=O,Y.height=P,H.__processStages(L,AA,U,Y)}).then(function(W){if(AA)AA.width=AA.height=0;return W})},R.prototype.__resizeViaCreateImageBitmap=function(L,M,U){var Y=this,H=M.getContext("2d",{alpha:Boolean(U.alpha)});return this.debug("Resize via createImageBitmap()"),createImageBitmap(L,{resizeWidth:U.toWidth,resizeHeight:U.toHeight,resizeQuality:I.cib_quality_name(U.quality)}).then(function(J){if(U.canceled)return U.cancelToken;if(!U.unsharpAmount)return H.drawImage(J,0,0),J.close(),H=null,Y.debug("Finished!"),M;Y.debug("Unsharp result");var K=Y.options.createCanvas(U.toWidth,U.toHeight),O=K.getContext("2d",{alpha:Boolean(U.alpha)});O.drawImage(J,0,0),J.close();var P=O.getImageData(0,0,U.toWidth,U.toHeight);return Y.__mathlib.unsharp_mask(P.data,U.toWidth,U.toHeight,U.unsharpAmount,U.unsharpRadius,U.unsharpThreshold),H.putImageData(P,0,0),K.width=K.height=0,P=O=K=H=null,Y.debug("Finished!"),M})},R.prototype.resize=function(L,M,U){var Y=this;this.debug("Start resize...");var H=C({},b);if(!isNaN(U))H=C(H,{quality:U});else if(U)H=C(H,U);if(H.toWidth=M.width,H.toHeight=M.height,H.width=L.naturalWidth||L.width,H.height=L.naturalHeight||L.height,M.width===0||M.height===0)return Promise.reject(Error("Invalid output size: ".concat(M.width,"x").concat(M.height)));if(H.unsharpRadius>2)H.unsharpRadius=2;if(H.canceled=!1,H.cancelToken)H.cancelToken=H.cancelToken.then(function(K){throw H.canceled=!0,K},function(K){throw H.canceled=!0,K});var J=3;return H.__destTileBorder=Math.ceil(Math.max(J,2.5*H.unsharpRadius|0)),this.init().then(function(){if(H.canceled)return H.cancelToken;if(Y.features.cib)return Y.__resizeViaCreateImageBitmap(L,M,H);if(!S){var K=Error("Pica: cannot use getImageData on canvas, make sure fingerprinting protection isn't enabled");throw K.code="ERR_GET_IMAGE_DATA",K}var O=Q(H.width,H.height,H.toWidth,H.toHeight,Y.options.tile,H.__destTileBorder);return Y.__processStages(O,L,M,H)})},R.prototype.resizeBuffer=function(L){var M=this,U=C({},b,L);return this.init().then(function(){return M.__mathlib.resizeAndUnsharp(U)})},R.prototype.toBlob=function(L,M,U){return M=M||"image/png",new Promise(function(Y){if(L.toBlob){L.toBlob(function(P){return Y(P)},M,U);return}if(L.convertToBlob){Y(L.convertToBlob({type:M,quality:U}));return}var H=atob(L.toDataURL(M,U).split(",")[1]),J=H.length,K=new Uint8Array(J);for(var O=0;O<J;O++)K[O]=H.charCodeAt(O);Y(new Blob([K],{type:M}))})},R.prototype.debug=function(){},i.exports=R},{"./lib/mathlib":1,"./lib/pool":13,"./lib/stepper":14,"./lib/tiler":15,"./lib/utils":16,"./lib/worker":17,"object-assign":23,webworkify:24}]},{},[])("/index.js")})});function $Be(A,e){var t={};return e.forEach(function(r){if(Object.prototype.hasOwnProperty.call(A,r))t[r]=A[r]}),t}function cXt(A){return $Be(A,["alpha","unsharpAmount","unsharpRadius","unsharpThreshold","cancelToken"])}function AEe(A){var e={exports:{}};return A(e,e.exports),e.exports}function t_(A){throw Error('Could not dynamically require "'+A+'". Please configure the dynamicRequireTargets option of @rollup/plugin-commonjs appropriately for this require call to behave properly.')}function tEe(A){return this._getUint8Array(A.blob).then(function(e){if(A.is_jpeg=r_.is_jpeg(e),!A.is_jpeg)return Promise.resolve(A);A.orig_blob=A.blob;try{var t,r;if(r_.jpeg_exif_tags_each(e,function(u){if(u.ifd===0&&u.tag===274&&Array.isArray(u.value))return A.orientation=u.value[0]||1,t=u.is_big_endian,r=u.data_offset,!1}),r){var i=t?new Uint8Array([0,1]):new Uint8Array([1,0]);A.blob=new Blob([e.slice(0,r),i,e.slice(r+2)],{type:"image/jpeg"})}}catch(u){}return A})}function rEe(A){if(!A.is_jpeg)return Promise.resolve(A);var e=A.orientation-1;if(!e)return Promise.resolve(A);var t;if(e&4)t=this.pica.options.createCanvas(A.out_canvas.height,A.out_canvas.width);else t=this.pica.options.createCanvas(A.out_canvas.width,A.out_canvas.height);var r=t.getContext("2d");if(r.save(),e&1)r.transform(-1,0,0,1,t.width,0);if(e&2)r.transform(-1,0,0,-1,t.width,t.height);if(e&4)r.transform(0,1,1,0,0,0);return r.drawImage(A.out_canvas,0,0),r.restore(),A.out_canvas.width=A.out_canvas.height=0,A.out_canvas=t,Promise.resolve(A)}function iEe(A){if(!A.is_jpeg)return Promise.resolve(A);return Promise.all([this._getUint8Array(A.blob),this._getUint8Array(A.out_blob)]).then(function(e){var t=e[0],r=e[1];if(!r_.is_jpeg(t))return Promise.resolve(A);var i=[];return r_.jpeg_segments_each(t,function(u){if(u.code===218)return!1;i.push(u)}),i=i.filter(function(u){if(u.code===226)return!1;if(u.code>=224&&u.code<240)return!0;if(u.code===254)return!0;return!1}).map(function(u){return t.slice(u.offset,u.offset+u.length)}),A.out_blob=new Blob([r.slice(0,2)].concat(i).concat([r.slice(20)]),{type:"image/jpeg"}),A})}function EXt(A){A.before("_blob_to_image",tEe),A.after("_transform",rEe),A.after("_create_blob",iEe)}function q0(A){if(!(this instanceof q0))return new q0(A);A=A||{},this.pica=A.pica||eEe({}),this.initialized=!1,this.utils=kdA}var gXt=function(e){var t;for(var r=1;r<arguments.length;r++){t=Object(arguments[r]);for(var i in t)if(Object.prototype.hasOwnProperty.call(t,i))e[i]=t[i]}return e},CXt,BXt,kdA,eEe,r_,dXt,IXt,hXt,QXt,pXt,fXt,mXt;var uEe=_(()=>{/*! image-blob-reduce 3.0.1 https://github.com/nodeca/image-blob-reduce @license MIT */CXt=$Be,BXt=cXt,kdA={assign:gXt,pick:CXt,pick_pica_resize_options:BXt};/*!
pica
https://github.com/nodeca/pica
*/eEe=AEe(function(A,e){(function(t){A.exports=t()})(function(){return function(){function t(r,i,u){function a(s,l){if(!i[s]){if(!r[s]){var g=typeof t_=="function"&&t_;if(!l&&g)return g(s,!0);if(n)return n(s,!0);var C=Error("Cannot find module '"+s+"'");throw C.code="MODULE_NOT_FOUND",C}var B=i[s]={exports:{}};r[s][0].call(B.exports,function(E){var d=r[s][1][E];return a(d||E)},B,B.exports,t,r,i,u)}return i[s].exports}for(var n=typeof t_=="function"&&t_,o=0;o<u.length;o++)a(u[o]);return a}return t}()({1:[function(t,r,i){var u=t("inherits"),a=t("multimath"),n=t("./mm_unsharp_mask"),o=t("./mm_resize");function s(l){var g=l||[],C={js:g.indexOf("js")>=0,wasm:g.indexOf("wasm")>=0};a.call(this,C),this.features={js:C.js,wasm:C.wasm&&this.has_wasm()},this.use(n),this.use(o)}u(s,a),s.prototype.resizeAndUnsharp=function(g,C){var B=this.resize(g,C);if(g.unsharpAmount)this.unsharp_mask(B,g.toWidth,g.toHeight,g.unsharpAmount,g.unsharpRadius,g.unsharpThreshold);return B},r.exports=s},{"./mm_resize":4,"./mm_unsharp_mask":9,inherits:19,multimath:20}],2:[function(t,r,i){function u(o){return o<0?0:o>255?255:o}function a(o,s,l,g,C,B){var E,d,I,h,Q,p,m,f,D,w,b,k=0,v=0;for(D=0;D<g;D++){Q=0;for(w=0;w<C;w++){p=B[Q++],m=B[Q++],f=k+p*4|0,E=d=I=h=0;for(;m>0;m--)b=B[Q++],h=h+b*o[f+3]|0,I=I+b*o[f+2]|0,d=d+b*o[f+1]|0,E=E+b*o[f]|0,f=f+4|0;s[v+3]=u(h+8192>>14),s[v+2]=u(I+8192>>14),s[v+1]=u(d+8192>>14),s[v]=u(E+8192>>14),v=v+g*4|0}v=(D+1)*4|0,k=(D+1)*l*4|0}}function n(o,s,l,g,C,B){var E,d,I,h,Q,p,m,f,D,w,b,k=0,v=0;for(D=0;D<g;D++){Q=0;for(w=0;w<C;w++){p=B[Q++],m=B[Q++],f=k+p*4|0,E=d=I=h=0;for(;m>0;m--)b=B[Q++],h=h+b*o[f+3]|0,I=I+b*o[f+2]|0,d=d+b*o[f+1]|0,E=E+b*o[f]|0,f=f+4|0;s[v+3]=u(h+8192>>14),s[v+2]=u(I+8192>>14),s[v+1]=u(d+8192>>14),s[v]=u(E+8192>>14),v=v+g*4|0}v=(D+1)*4|0,k=(D+1)*l*4|0}}r.exports={convolveHorizontally:a,convolveVertically:n}},{}],3:[function(t,r,i){r.exports="AGFzbQEAAAAADAZkeWxpbmsAAAAAAAEXA2AAAGAGf39/f39/AGAHf39/f39/fwACDwEDZW52Bm1lbW9yeQIAAAMEAwABAgYGAX8AQQALB1cFEV9fd2FzbV9jYWxsX2N0b3JzAAAIY29udm9sdmUAAQpjb252b2x2ZUhWAAIMX19kc29faGFuZGxlAwAYX193YXNtX2FwcGx5X2RhdGFfcmVsb2NzAAAK7AMDAwABC8YDAQ9/AkAgA0UNACAERQ0AA0AgDCENQQAhE0EAIQcDQCAHQQJqIQYCfyAHQQF0IAVqIgcuAQIiFEUEQEGAwAAhCEGAwAAhCUGAwAAhCkGAwAAhCyAGDAELIBIgBy4BAGohCEEAIQsgFCEHQQAhDiAGIQlBACEPQQAhEANAIAUgCUEBdGouAQAiESAAIAhBAnRqKAIAIgpBGHZsIBBqIRAgCkH/AXEgEWwgC2ohCyAKQRB2Qf8BcSARbCAPaiEPIApBCHZB/wFxIBFsIA5qIQ4gCEEBaiEIIAlBAWohCSAHQQFrIgcNAAsgC0GAQGshCCAOQYBAayEJIA9BgEBrIQogEEGAQGshCyAGIBRqCyEHIAEgDUECdGogCUEOdSIGQf8BIAZB/wFIGyIGQQAgBkEAShtBCHRBgP4DcSAKQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EQdEGAgPwHcSALQQ51IgZB/wEgBkH/AUgbIgZBACAGQQBKG0EYdHJyIAhBDnUiBkH/ASAGQf8BSBsiBkEAIAZBAEobcjYCACADIA1qIQ0gE0EBaiITIARHDQALIAxBAWoiDCACbCESIAMgDEcNAAsLCx4AQQAgAiADIAQgBSAAEAEgAkEAIAQgBSAGIAEQAQs="},{}],4:[function(t,r,i){r.exports={name:"resize",fn:t("./resize"),wasm_fn:t("./resize_wasm"),wasm_src:t("./convolve_wasm_base64")}},{"./convolve_wasm_base64":3,"./resize":5,"./resize_wasm":8}],5:[function(t,r,i){var u=t("./resize_filter_gen"),a=t("./convolve").convolveHorizontally,n=t("./convolve").convolveVertically;function o(s,l,g){var C=3,B=l*g*4|0;while(C<B)s[C]=255,C=C+4|0}r.exports=function(l){var{src:g,width:C,height:B,toWidth:E,toHeight:d}=l,I=l.scaleX||l.toWidth/l.width,h=l.scaleY||l.toHeight/l.height,Q=l.offsetX||0,p=l.offsetY||0,m=l.dest||new Uint8Array(E*d*4),f=typeof l.quality>"u"?3:l.quality,D=l.alpha||!1,w=u(f,C,E,I,Q),b=u(f,B,d,h,p),k=new Uint8Array(E*B*4);if(a(g,k,C,B,E,w),n(k,m,B,E,d,b),!D)o(m,E,d);return m}},{"./convolve":2,"./resize_filter_gen":6}],6:[function(t,r,i){var u=t("./resize_filter_info"),a=14;function n(o){return Math.round(o*((1<<a)-1))}r.exports=function(s,l,g,C,B){var E=u[s].filter,d=1/C,I=Math.min(1,C),h=u[s].win/I,Q,p,m,f,D,w,b,k,v,S,x,F,T,R,L,M,U,Y=Math.floor((h+1)*2),H=new Int16Array((Y+2)*g),J=0,K=!H.subarray||!H.set;for(Q=0;Q<g;Q++){p=(Q+0.5)*d+B,m=Math.max(0,Math.floor(p-h)),f=Math.min(l-1,Math.ceil(p+h)),D=f-m+1,w=new Float32Array(D),b=new Int16Array(D),k=0;for(v=m,S=0;v<=f;v++,S++)x=E((v+0.5-p)*I),k+=x,w[S]=x;F=0;for(S=0;S<w.length;S++)T=w[S]/k,F+=T,b[S]=n(T);b[g>>1]+=n(1-F),R=0;while(R<b.length&&b[R]===0)R++;if(R<b.length){L=b.length-1;while(L>0&&b[L]===0)L--;if(M=m+R,U=L-R+1,H[J++]=M,H[J++]=U,!K)H.set(b.subarray(R,L+1),J),J+=U;else for(S=R;S<=L;S++)H[J++]=b[S]}else H[J++]=0,H[J++]=0}return H}},{"./resize_filter_info":7}],7:[function(t,r,i){r.exports=[{win:0.5,filter:function(a){return a>=-0.5&&a<0.5?1:0}},{win:1,filter:function(a){if(a<=-1||a>=1)return 0;if(a>-0.00000011920929&&a<0.00000011920929)return 1;var n=a*Math.PI;return Math.sin(n)/n*(0.54+0.46*Math.cos(n/1))}},{win:2,filter:function(a){if(a<=-2||a>=2)return 0;if(a>-0.00000011920929&&a<0.00000011920929)return 1;var n=a*Math.PI;return Math.sin(n)/n*Math.sin(n/2)/(n/2)}},{win:3,filter:function(a){if(a<=-3||a>=3)return 0;if(a>-0.00000011920929&&a<0.00000011920929)return 1;var n=a*Math.PI;return Math.sin(n)/n*Math.sin(n/3)/(n/3)}}]},{}],8:[function(t,r,i){var u=t("./resize_filter_gen");function a(l,g,C){var B=3,E=g*C*4|0;while(B<E)l[B]=255,B=B+4|0}function n(l){return new Uint8Array(l.buffer,0,l.byteLength)}var o=!0;try{o=new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]===1}catch(l){}function s(l,g,C){if(o){g.set(n(l),C);return}for(var B=C,E=0;E<l.length;E++){var d=l[E];g[B++]=d&255,g[B++]=d>>8&255}}r.exports=function(g){var{src:C,width:B,height:E,toWidth:d,toHeight:I}=g,h=g.scaleX||g.toWidth/g.width,Q=g.scaleY||g.toHeight/g.height,p=g.offsetX||0,m=g.offsetY||0,f=g.dest||new Uint8Array(d*I*4),D=typeof g.quality>"u"?3:g.quality,w=g.alpha||!1,b=u(D,B,d,h,p),k=u(D,E,I,Q,m),v=0,S=this.__align(v+Math.max(C.byteLength,f.byteLength)),x=this.__align(S+E*d*4),F=this.__align(x+b.byteLength),T=F+k.byteLength,R=this.__instance("resize",T),L=new Uint8Array(this.__memory.buffer),M=new Uint32Array(this.__memory.buffer),U=new Uint32Array(C.buffer);M.set(U),s(b,L,x),s(k,L,F);var Y=R.exports.convolveHV||R.exports._convolveHV;Y(x,F,S,B,E,d,I);var H=new Uint32Array(f.buffer);if(H.set(new Uint32Array(this.__memory.buffer,0,I*d)),!w)a(f,d,I);return f}},{"./resize_filter_gen":6}],9:[function(t,r,i){r.exports={name:"unsharp_mask",fn:t("./unsharp_mask"),wasm_fn:t("./unsharp_mask_wasm"),wasm_src:t("./unsharp_mask_wasm_base64")}},{"./unsharp_mask":10,"./unsharp_mask_wasm":11,"./unsharp_mask_wasm_base64":12}],10:[function(t,r,i){var u=t("glur/mono16");function a(n,o,s){var l=o*s,g=new Uint16Array(l),C,B,E,d;for(var I=0;I<l;I++)C=n[4*I],B=n[4*I+1],E=n[4*I+2],d=C>=B&&C>=E?C:B>=E&&B>=C?B:E,g[I]=d<<8;return g}r.exports=function(o,s,l,g,C,B){var E,d,I,h,Q;if(g===0||C<0.5)return;if(C>2)C=2;var p=a(o,s,l),m=new Uint16Array(p);u(m,s,l,C);var f=g/100*4096+0.5|0,D=B<<8,w=s*l;for(var b=0;b<w;b++)if(E=p[b],h=E-m[b],Math.abs(h)>=D)d=E+(f*h+2048>>12),d=d>65280?65280:d,d=d<0?0:d,E=E!==0?E:1,I=(d<<12)/E|0,Q=b*4,o[Q]=o[Q]*I+2048>>12,o[Q+1]=o[Q+1]*I+2048>>12,o[Q+2]=o[Q+2]*I+2048>>12}},{"glur/mono16":18}],11:[function(t,r,i){r.exports=function(a,n,o,s,l,g){if(s===0||l<0.5)return;if(l>2)l=2;var C=n*o,B=C*4,E=C*2,d=C*2,I=Math.max(n,o)*4,h=32,Q=0,p=B,m=p+E,f=m+d,D=f+d,w=D+I,b=this.__instance("unsharp_mask",B+E+d*2+I+h,{exp:Math.exp}),k=new Uint32Array(a.buffer),v=new Uint32Array(this.__memory.buffer);v.set(k);var S=b.exports.hsv_v16||b.exports._hsv_v16;S(Q,p,n,o),S=b.exports.blurMono16||b.exports._blurMono16,S(p,m,f,D,w,n,o,l),S=b.exports.unsharp||b.exports._unsharp,S(Q,Q,p,m,n,o,s,g),k.set(new Uint32Array(this.__memory.buffer,0,C))}},{}],12:[function(t,r,i){r.exports="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"},{}],13:[function(t,r,i){var u=100;function a(n,o){this.create=n,this.available=[],this.acquired={},this.lastId=1,this.timeoutId=0,this.idle=o||2000}a.prototype.acquire=function(){var n=this,o;if(this.available.length!==0)o=this.available.pop();else o=this.create(),o.id=this.lastId++,o.release=function(){return n.release(o)};return this.acquired[o.id]=o,o},a.prototype.release=function(n){var o=this;if(delete this.acquired[n.id],n.lastUsed=Date.now(),this.available.push(n),this.timeoutId===0)this.timeoutId=setTimeout(function(){return o.gc()},u)},a.prototype.gc=function(){var n=this,o=Date.now();if(this.available=this.available.filter(function(s){if(o-s.lastUsed>n.idle)return s.destroy(),!1;return!0}),this.available.length!==0)this.timeoutId=setTimeout(function(){return n.gc()},u);else this.timeoutId=0},r.exports=a},{}],14:[function(t,r,i){var u=2;r.exports=function(n,o,s,l,g,C){var B=s/n,E=l/o,d=(2*C+u+1)/g;if(d>0.5)return[[s,l]];var I=Math.ceil(Math.log(Math.min(B,E))/Math.log(d));if(I<=1)return[[s,l]];var h=[];for(var Q=0;Q<I;Q++){var p=Math.round(Math.pow(Math.pow(n,I-Q-1)*Math.pow(s,Q+1),1/I)),m=Math.round(Math.pow(Math.pow(o,I-Q-1)*Math.pow(l,Q+1),1/I));h.push([p,m])}return h}},{}],15:[function(t,r,i){var u=0.00001;function a(o){var s=Math.round(o);if(Math.abs(o-s)<u)return s;return Math.floor(o)}function n(o){var s=Math.round(o);if(Math.abs(o-s)<u)return s;return Math.ceil(o)}r.exports=function(s){var l=s.toWidth/s.width,g=s.toHeight/s.height,C=a(s.srcTileSize*l)-2*s.destTileBorder,B=a(s.srcTileSize*g)-2*s.destTileBorder;if(C<1||B<1)throw Error("Internal error in pica: target tile width/height is too small.");var E,d,I,h,Q,p,m=[],f;for(h=0;h<s.toHeight;h+=B)for(I=0;I<s.toWidth;I+=C){if(E=I-s.destTileBorder,E<0)E=0;if(Q=I+C+s.destTileBorder-E,E+Q>=s.toWidth)Q=s.toWidth-E;if(d=h-s.destTileBorder,d<0)d=0;if(p=h+B+s.destTileBorder-d,d+p>=s.toHeight)p=s.toHeight-d;f={toX:E,toY:d,toWidth:Q,toHeight:p,toInnerX:I,toInnerY:h,toInnerWidth:C,toInnerHeight:B,offsetX:E/l-a(E/l),offsetY:d/g-a(d/g),scaleX:l,scaleY:g,x:a(E/l),y:a(d/g),width:n(Q/l),height:n(p/g)},m.push(f)}return m}},{}],16:[function(t,r,i){function u(a){return Object.prototype.toString.call(a)}r.exports.isCanvas=function(n){var o=u(n);return o==="[object HTMLCanvasElement]"||o==="[object OffscreenCanvas]"||o==="[object Canvas]"},r.exports.isImage=function(n){return u(n)==="[object HTMLImageElement]"},r.exports.isImageBitmap=function(n){return u(n)==="[object ImageBitmap]"},r.exports.limiter=function(n){var o=0,s=[];function l(){if(o<n&&s.length)o++,s.shift()()}return function(C){return new Promise(function(B,E){s.push(function(){C().then(function(d){B(d),o--,l()},function(d){E(d),o--,l()})}),l()})}},r.exports.cib_quality_name=function(n){switch(n){case 0:return"pixelated";case 1:return"low";case 2:return"medium"}return"high"},r.exports.cib_support=function(n){return Promise.resolve().then(function(){if(typeof createImageBitmap>"u")return!1;var o=n(100,100);return createImageBitmap(o,0,0,100,100,{resizeWidth:10,resizeHeight:10,resizeQuality:"high"}).then(function(s){var l=s.width===10;return s.close(),o=null,l})}).catch(function(){return!1})},r.exports.worker_offscreen_canvas_support=function(){return new Promise(function(n,o){if(typeof OffscreenCanvas>"u"){n(!1);return}function s(C){if(typeof createImageBitmap>"u"){C.postMessage(!1);return}Promise.resolve().then(function(){var B=new OffscreenCanvas(10,10),E=B.getContext("2d");return E.rect(0,0,1,1),createImageBitmap(B,0,0,1,1)}).then(function(){return C.postMessage(!0)},function(){return C.postMessage(!1)})}var l=btoa("(".concat(s.toString(),")(self);")),g=new Worker("data:text/javascript;base64,".concat(l));g.onmessage=function(C){return n(C.data)},g.onerror=o}).then(function(n){return n},function(){return!1})},r.exports.can_use_canvas=function(n){var o=!1;try{var s=n(2,1),l=s.getContext("2d"),g=l.createImageData(2,1);if(g.data[0]=12,g.data[1]=23,g.data[2]=34,g.data[3]=255,g.data[4]=45,g.data[5]=56,g.data[6]=67,g.data[7]=255,l.putImageData(g,0,0),g=null,g=l.getImageData(0,0,2,1),g.data[0]===12&&g.data[1]===23&&g.data[2]===34&&g.data[3]===255&&g.data[4]===45&&g.data[5]===56&&g.data[6]===67&&g.data[7]===255)o=!0}catch(C){}return o},r.exports.cib_can_use_region=function(){return new Promise(function(n){if(typeof createImageBitmap>"u"){n(!1);return}var o=new Image;o.src="data:image/jpeg;base64,/9j/4QBiRXhpZgAATU0AKgAAAAgABQESAAMAAAABAAYAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAAITAAMAAAABAAEAAAAAAAAAAABIAAAAAQAAAEgAAAAB/9sAQwAEAwMEAwMEBAMEBQQEBQYKBwYGBgYNCQoICg8NEBAPDQ8OERMYFBESFxIODxUcFRcZGRsbGxAUHR8dGh8YGhsa/9sAQwEEBQUGBQYMBwcMGhEPERoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoaGhoa/8IAEQgAAQACAwERAAIRAQMRAf/EABQAAQAAAAAAAAAAAAAAAAAAAAf/xAAUAQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIQAxAAAAF/P//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAQUCf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQMBAT8Bf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQIBAT8Bf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEABj8Cf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAT8hf//aAAwDAQACAAMAAAAQH//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQMBAT8Qf//EABQRAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQIBAT8Qf//EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAT8Qf//Z",o.onload=function(){createImageBitmap(o,0,0,o.width,o.height).then(function(s){if(s.width===o.width&&s.height===o.height)n(!0);else n(!1)},function(){return n(!1)})},o.onerror=function(){return n(!1)}})}},{}],17:[function(t,r,i){r.exports=function(){var u=t("./mathlib"),a;onmessage=function(o){var s=o.data.opts,l=!1;if(!s.src&&s.srcBitmap){var g=new OffscreenCanvas(s.width,s.height),C=g.getContext("2d",{alpha:Boolean(s.alpha)});C.drawImage(s.srcBitmap,0,0),s.src=C.getImageData(0,0,s.width,s.height).data,g.width=g.height=0,g=null,s.srcBitmap.close(),s.srcBitmap=null,l=!0}if(!a)a=new u(o.data.features);var B=a.resizeAndUnsharp(s);if(l){var E=new ImageData(new Uint8ClampedArray(B),s.toWidth,s.toHeight),d=new OffscreenCanvas(s.toWidth,s.toHeight),I=d.getContext("2d",{alpha:Boolean(s.alpha)});I.putImageData(E,0,0),createImageBitmap(d).then(function(h){postMessage({bitmap:h},[h])})}else postMessage({data:B},[B.buffer])}}},{"./mathlib":1}],18:[function(t,r,i){var u,a,n,o,s,l,g,C;function B(I){if(I<0.5)I=0.5;var h=Math.exp(0.527076)/I,Q=Math.exp(-h),p=Math.exp(-2*h),m=(1-Q)*(1-Q)/(1+2*h*Q-p);return u=m,a=m*(h-1)*Q,n=m*(h+1)*Q,o=-m*p,s=2*Q,l=-p,g=(u+a)/(1-s-l),C=(n+o)/(1-s-l),new Float32Array([u,a,n,o,s,l,g,C])}function E(I,h,Q,p,m,f){var D,w,b,k,v,S,x,F,T,R,L,M,U,Y;for(T=0;T<f;T++){S=T*m,x=T,F=0,D=I[S],v=D*p[6],k=v,L=p[0],M=p[1],U=p[4],Y=p[5];for(R=0;R<m;R++)w=I[S],b=w*L+D*M+k*U+v*Y,v=k,k=b,D=w,Q[F]=k,F++,S++;S--,F--,x+=f*(m-1),D=I[S],v=D*p[7],k=v,w=D,L=p[2],M=p[3];for(R=m-1;R>=0;R--)b=w*L+D*M+k*U+v*Y,v=k,k=b,D=w,w=I[S],h[x]=Q[F]+k,S--,F--,x-=f}}function d(I,h,Q,p){if(!p)return;var m=new Uint16Array(I.length),f=new Float32Array(Math.max(h,Q)),D=B(p);E(I,m,f,D,h,Q),E(m,I,f,D,Q,h)}r.exports=d},{}],19:[function(t,r,i){if(typeof Object.create==="function")r.exports=function(a,n){if(n)a.super_=n,a.prototype=Object.create(n.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}})};else r.exports=function(a,n){if(n){a.super_=n;var o=function(){};o.prototype=n.prototype,a.prototype=new o,a.prototype.constructor=a}}},{}],20:[function(t,r,i){var u=t("object-assign"),a=t("./lib/base64decode"),n=t("./lib/wa_detect"),o={js:!0,wasm:!0};function s(l){if(!(this instanceof s))return new s(l);var g=u({},o,l||{});if(this.options=g,this.__cache={},this.__init_promise=null,this.__modules=g.modules||{},this.__memory=null,this.__wasm={},this.__isLE=new Uint32Array(new Uint8Array([1,0,0,0]).buffer)[0]===1,!this.options.js&&!this.options.wasm)throw Error('mathlib: at least "js" or "wasm" should be enabled')}s.prototype.has_wasm=n,s.prototype.use=function(l){if(this.__modules[l.name]=l,this.options.wasm&&this.has_wasm()&&l.wasm_fn)this[l.name]=l.wasm_fn;else this[l.name]=l.fn;return this},s.prototype.init=function(){if(this.__init_promise)return this.__init_promise;if(!this.options.js&&this.options.wasm&&!this.has_wasm())return Promise.reject(Error(`mathlib: only "wasm" was enabled, but it's not supported`));var l=this;return this.__init_promise=Promise.all(Object.keys(l.__modules).map(function(g){var C=l.__modules[g];if(!l.options.wasm||!l.has_wasm()||!C.wasm_fn)return null;if(l.__wasm[g])return null;return WebAssembly.compile(l.__base64decode(C.wasm_src)).then(function(B){l.__wasm[g]=B})})).then(function(){return l}),this.__init_promise},s.prototype.__base64decode=a,s.prototype.__reallocate=function(g){if(!this.__memory)return this.__memory=new WebAssembly.Memory({initial:Math.ceil(g/65536)}),this.__memory;var C=this.__memory.buffer.byteLength;if(C<g)this.__memory.grow(Math.ceil((g-C)/65536));return this.__memory},s.prototype.__instance=function(g,C,B){if(C)this.__reallocate(C);if(!this.__wasm[g]){var E=this.__modules[g];this.__wasm[g]=new WebAssembly.Module(this.__base64decode(E.wasm_src))}if(!this.__cache[g]){var d={memoryBase:0,memory:this.__memory,tableBase:0,table:new WebAssembly.Table({initial:0,element:"anyfunc"})};this.__cache[g]=new WebAssembly.Instance(this.__wasm[g],{env:u(d,B||{})})}return this.__cache[g]},s.prototype.__align=function(g,C){C=C||8;var B=g%C;return g+(B?C-B:0)},r.exports=s},{"./lib/base64decode":21,"./lib/wa_detect":22,"object-assign":23}],21:[function(t,r,i){var u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";r.exports=function(n){var o=n.replace(/[\r\n=]/g,""),s=o.length,l=new Uint8Array(s*3>>2),g=0,C=0;for(var B=0;B<s;B++){if(B%4===0&&B)l[C++]=g>>16&255,l[C++]=g>>8&255,l[C++]=g&255;g=g<<6|u.indexOf(o.charAt(B))}var E=s%4*6;if(E===0)l[C++]=g>>16&255,l[C++]=g>>8&255,l[C++]=g&255;else if(E===18)l[C++]=g>>10&255,l[C++]=g>>2&255;else if(E===12)l[C++]=g>>4&255;return l}},{}],22:[function(t,r,i){var u;r.exports=function(){if(typeof u<"u")return u;if(u=!1,typeof WebAssembly>"u")return u;try{var n=new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,127,1,127,3,2,1,0,5,3,1,0,1,7,8,1,4,116,101,115,116,0,0,10,16,1,14,0,32,0,65,1,54,2,0,32,0,40,2,0,11]),o=new WebAssembly.Module(n),s=new WebAssembly.Instance(o,{});if(s.exports.test(4)!==0)u=!0;return u}catch(l){}return u}},{}],23:[function(t,r,i){var u=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function o(l){if(l===null||l===void 0)throw TypeError("Object.assign cannot be called with null or undefined");return Object(l)}function s(){try{if(!Object.assign)return!1;var l=new String("abc");if(l[5]="de",Object.getOwnPropertyNames(l)[0]==="5")return!1;var g={};for(var C=0;C<10;C++)g["_"+String.fromCharCode(C)]=C;var B=Object.getOwnPropertyNames(g).map(function(d){return g[d]});if(B.join("")!=="0123456789")return!1;var E={};if("abcdefghijklmnopqrst".split("").forEach(function(d){E[d]=d}),Object.keys(Object.assign({},E)).join("")!=="abcdefghijklmnopqrst")return!1;return!0}catch(d){return!1}}r.exports=s()?Object.assign:function(l,g){var C,B=o(l),E;for(var d=1;d<arguments.length;d++){C=Object(arguments[d]);for(var I in C)if(a.call(C,I))B[I]=C[I];if(u){E=u(C);for(var h=0;h<E.length;h++)if(n.call(C,E[h]))B[E[h]]=C[E[h]]}}return B}},{}],24:[function(t,r,i){var u=arguments[3],a=arguments[4],n=arguments[5],o=JSON.stringify;r.exports=function(s,l){var g,C=Object.keys(n);for(var B=0,E=C.length;B<E;B++){var d=C[B],I=n[d].exports;if(I===s||I&&I.default===s){g=d;break}}if(!g){g=Math.floor(Math.pow(16,8)*Math.random()).toString(16);var h={};for(var B=0,E=C.length;B<E;B++){var d=C[B];h[d]=d}a[g]=["function(require,module,exports){"+s+"(self); }",h]}var Q=Math.floor(Math.pow(16,8)*Math.random()).toString(16),p={};p[g]=g,a[Q]=["function(require,module,exports){var f = require("+o(g)+");(f.default ? f.default : f)(self);}",p];var m={};f(Q);function f(S){m[S]=!0;for(var x in a[S][1]){var F=a[S][1][x];if(!m[F])f(F)}}var D="("+u+")({"+Object.keys(m).map(function(S){return o(S)+":["+a[S][0]+","+o(a[S][1])+"]"}).join(",")+"},{},["+o(Q)+"])",w=window.URL||window.webkitURL||window.mozURL||window.msURL,b=new Blob([D],{type:"text/javascript"});if(l&&l.bare)return b;var k=w.createObjectURL(b),v=new Worker(k);return v.objectURL=k,v}},{}],"/index.js":[function(t,r,i){function u(R,L){return l(R)||s(R,L)||n(R,L)||a()}function a(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function n(R,L){if(!R)return;if(typeof R==="string")return o(R,L);var M=Object.prototype.toString.call(R).slice(8,-1);if(M==="Object"&&R.constructor)M=R.constructor.name;if(M==="Map"||M==="Set")return Array.from(R);if(M==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(M))return o(R,L)}function o(R,L){if(L==null||L>R.length)L=R.length;for(var M=0,U=Array(L);M<L;M++)U[M]=R[M];return U}function s(R,L){var M=R==null?null:typeof Symbol<"u"&&R[Symbol.iterator]||R["@@iterator"];if(M==null)return;var U=[],Y=!0,H=!1,J,K;try{for(M=M.call(R);!(Y=(J=M.next()).done);Y=!0)if(U.push(J.value),L&&U.length===L)break}catch(O){H=!0,K=O}finally{try{if(!Y&&M.return!=null)M.return()}finally{if(H)throw K}}return U}function l(R){if(Array.isArray(R))return R}var g=t("object-assign"),C=t("webworkify"),B=t("./lib/mathlib"),E=t("./lib/pool"),d=t("./lib/utils"),I=t("./lib/worker"),h=t("./lib/stepper"),Q=t("./lib/tiler"),p={},m=!1;try{if(typeof navigator<"u"&&navigator.userAgent)m=navigator.userAgent.indexOf("Safari")>=0}catch(R){}var f=1;if(typeof navigator<"u")f=Math.min(navigator.hardwareConcurrency||1,4);var D={tile:1024,concurrency:f,features:["js","wasm","ww"],idle:2000,createCanvas:function(L,M){var U=document.createElement("canvas");return U.width=L,U.height=M,U}},w={quality:3,alpha:!1,unsharpAmount:0,unsharpRadius:0,unsharpThreshold:0},b=!1,k=!1,v=!1,S=!1,x=!1;function F(){return{value:C(I),destroy:function(){if(this.value.terminate(),typeof window<"u"){var L=window.URL||window.webkitURL||window.mozURL||window.msURL;if(L&&L.revokeObjectURL&&this.value.objectURL)L.revokeObjectURL(this.value.objectURL)}}}}function T(R){if(!(this instanceof T))return new T(R);this.options=g({},D,R||{});var L="lk_".concat(this.options.concurrency);if(this.__limit=p[L]||d.limiter(this.options.concurrency),!p[L])p[L]=this.__limit;this.features={js:!1,wasm:!1,cib:!1,ww:!1},this.__workersPool=null,this.__requested_features=[],this.__mathlib=null}T.prototype.init=function(){var R=this;if(this.__initPromise)return this.__initPromise;if(typeof ImageData<"u"&&typeof Uint8ClampedArray<"u")try{new ImageData(new Uint8ClampedArray(400),10,10),b=!0}catch(O){}if(typeof ImageBitmap<"u")if(ImageBitmap.prototype&&ImageBitmap.prototype.close)k=!0;else this.debug("ImageBitmap does not support .close(), disabled");var L=this.options.features.slice();if(L.indexOf("all")>=0)L=["cib","wasm","js","ww"];if(this.__requested_features=L,this.__mathlib=new B(L),L.indexOf("ww")>=0){if(typeof window<"u"&&"Worker"in window)try{var M=t("webworkify")(function(){});M.terminate(),this.features.ww=!0;var U="wp_".concat(JSON.stringify(this.options));if(p[U])this.__workersPool=p[U];else this.__workersPool=new E(F,this.options.idle),p[U]=this.__workersPool}catch(O){}}var Y=this.__mathlib.init().then(function(O){g(R.features,O.features)}),H;if(!k)H=Promise.resolve(!1);else H=d.cib_support(this.options.createCanvas).then(function(O){if(R.features.cib&&L.indexOf("cib")<0){R.debug("createImageBitmap() resize supported, but disabled by config");return}if(L.indexOf("cib")>=0)R.features.cib=O});v=d.can_use_canvas(this.options.createCanvas);var J;if(k&&b&&L.indexOf("ww")!==-1)J=d.worker_offscreen_canvas_support();else J=Promise.resolve(!1);J=J.then(function(O){S=O});var K=d.cib_can_use_region().then(function(O){x=O});return this.__initPromise=Promise.all([Y,H,J,K]).then(function(){return R}),this.__initPromise},T.prototype.__invokeResize=function(R,L){var M=this;return L.__mathCache=L.__mathCache||{},Promise.resolve().then(function(){if(!M.features.ww)return{data:M.__mathlib.resizeAndUnsharp(R,L.__mathCache)};return new Promise(function(U,Y){var H=M.__workersPool.acquire();if(L.cancelToken)L.cancelToken.catch(function(K){return Y(K)});H.value.onmessage=function(K){if(H.release(),K.data.err)Y(K.data.err);else U(K.data)};var J=[];if(R.src)J.push(R.src.buffer);if(R.srcBitmap)J.push(R.srcBitmap);H.value.postMessage({opts:R,features:M.__requested_features,preload:{wasm_nodule:M.__mathlib.__}},J)})})},T.prototype.__extractTileData=function(R,L,M,U,Y){if(this.features.ww&&S&&(d.isCanvas(L)||x))return this.debug("Create tile for OffscreenCanvas"),createImageBitmap(U.srcImageBitmap||L,R.x,R.y,R.width,R.height).then(function(K){return Y.srcBitmap=K,Y});if(d.isCanvas(L)){if(!U.srcCtx)U.srcCtx=L.getContext("2d",{alpha:Boolean(M.alpha)});return this.debug("Get tile pixel data"),Y.src=U.srcCtx.getImageData(R.x,R.y,R.width,R.height).data,Y}this.debug("Draw tile imageBitmap/image to temporary canvas");var H=this.options.createCanvas(R.width,R.height),J=H.getContext("2d",{alpha:Boolean(M.alpha)});return J.globalCompositeOperation="copy",J.drawImage(U.srcImageBitmap||L,R.x,R.y,R.width,R.height,0,0,R.width,R.height),this.debug("Get tile pixel data"),Y.src=J.getImageData(0,0,R.width,R.height).data,H.width=H.height=0,Y},T.prototype.__landTileData=function(R,L,M){var U;if(this.debug("Convert raw rgba tile result to ImageData"),L.bitmap)return M.toCtx.drawImage(L.bitmap,R.toX,R.toY),null;if(b)U=new ImageData(new Uint8ClampedArray(L.data),R.toWidth,R.toHeight);else if(U=M.toCtx.createImageData(R.toWidth,R.toHeight),U.data.set)U.data.set(L.data);else for(var Y=U.data.length-1;Y>=0;Y--)U.data[Y]=L.data[Y];if(this.debug("Draw tile"),m)M.toCtx.putImageData(U,R.toX,R.toY,R.toInnerX-R.toX,R.toInnerY-R.toY,R.toInnerWidth+0.00001,R.toInnerHeight+0.00001);else M.toCtx.putImageData(U,R.toX,R.toY,R.toInnerX-R.toX,R.toInnerY-R.toY,R.toInnerWidth,R.toInnerHeight);return null},T.prototype.__tileAndResize=function(R,L,M){var U=this,Y={srcCtx:null,srcImageBitmap:null,isImageBitmapReused:!1,toCtx:null},H=function(K){return U.__limit(function(){if(M.canceled)return M.cancelToken;var O={width:K.width,height:K.height,toWidth:K.toWidth,toHeight:K.toHeight,scaleX:K.scaleX,scaleY:K.scaleY,offsetX:K.offsetX,offsetY:K.offsetY,quality:M.quality,alpha:M.alpha,unsharpAmount:M.unsharpAmount,unsharpRadius:M.unsharpRadius,unsharpThreshold:M.unsharpThreshold};return U.debug("Invoke resize math"),Promise.resolve(O).then(function(P){return U.__extractTileData(K,R,M,Y,P)}).then(function(P){return U.debug("Invoke resize math"),U.__invokeResize(P,M)}).then(function(P){if(M.canceled)return M.cancelToken;return Y.srcImageData=null,U.__landTileData(K,P,Y)})})};return Promise.resolve().then(function(){if(Y.toCtx=L.getContext("2d",{alpha:Boolean(M.alpha)}),d.isCanvas(R))return null;if(d.isImageBitmap(R))return Y.srcImageBitmap=R,Y.isImageBitmapReused=!0,null;if(d.isImage(R)){if(!k)return null;return U.debug("Decode image via createImageBitmap"),createImageBitmap(R).then(function(J){Y.srcImageBitmap=J}).catch(function(J){return null})}throw Error('Pica: ".from" should be Image, Canvas or ImageBitmap')}).then(function(){if(M.canceled)return M.cancelToken;U.debug("Calculate tiles");var J=Q({width:M.width,height:M.height,srcTileSize:U.options.tile,toWidth:M.toWidth,toHeight:M.toHeight,destTileBorder:M.__destTileBorder}),K=J.map(function(P){return H(P)});function O(P){if(P.srcImageBitmap){if(!P.isImageBitmapReused)P.srcImageBitmap.close();P.srcImageBitmap=null}}return U.debug("Process tiles"),Promise.all(K).then(function(){return U.debug("Finished!"),O(Y),L},function(P){throw O(Y),P})})},T.prototype.__processStages=function(R,L,M,U){var Y=this;if(U.canceled)return U.cancelToken;var H=R.shift(),J=u(H,2),K=J[0],O=J[1],P=R.length===0;U=g({},U,{toWidth:K,toHeight:O,quality:P?U.quality:Math.min(1,U.quality)});var z;if(!P)z=this.options.createCanvas(K,O);return this.__tileAndResize(L,P?M:z,U).then(function(){if(P)return M;return U.width=K,U.height=O,Y.__processStages(R,z,M,U)}).then(function(AA){if(z)z.width=z.height=0;return AA})},T.prototype.__resizeViaCreateImageBitmap=function(R,L,M){var U=this,Y=L.getContext("2d",{alpha:Boolean(M.alpha)});return this.debug("Resize via createImageBitmap()"),createImageBitmap(R,{resizeWidth:M.toWidth,resizeHeight:M.toHeight,resizeQuality:d.cib_quality_name(M.quality)}).then(function(H){if(M.canceled)return M.cancelToken;if(!M.unsharpAmount)return Y.drawImage(H,0,0),H.close(),Y=null,U.debug("Finished!"),L;U.debug("Unsharp result");var J=U.options.createCanvas(M.toWidth,M.toHeight),K=J.getContext("2d",{alpha:Boolean(M.alpha)});K.drawImage(H,0,0),H.close();var O=K.getImageData(0,0,M.toWidth,M.toHeight);return U.__mathlib.unsharp_mask(O.data,M.toWidth,M.toHeight,M.unsharpAmount,M.unsharpRadius,M.unsharpThreshold),Y.putImageData(O,0,0),J.width=J.height=0,O=K=J=Y=null,U.debug("Finished!"),L})},T.prototype.resize=function(R,L,M){var U=this;this.debug("Start resize...");var Y=g({},w);if(!isNaN(M))Y=g(Y,{quality:M});else if(M)Y=g(Y,M);if(Y.toWidth=L.width,Y.toHeight=L.height,Y.width=R.naturalWidth||R.width,Y.height=R.naturalHeight||R.height,L.width===0||L.height===0)return Promise.reject(Error("Invalid output size: ".concat(L.width,"x").concat(L.height)));if(Y.unsharpRadius>2)Y.unsharpRadius=2;if(Y.canceled=!1,Y.cancelToken)Y.cancelToken=Y.cancelToken.then(function(J){throw Y.canceled=!0,J},function(J){throw Y.canceled=!0,J});var H=3;return Y.__destTileBorder=Math.ceil(Math.max(H,2.5*Y.unsharpRadius|0)),this.init().then(function(){if(Y.canceled)return Y.cancelToken;if(U.features.cib)return U.__resizeViaCreateImageBitmap(R,L,Y);if(!v){var J=Error("Pica: cannot use getImageData on canvas, make sure fingerprinting protection isn't enabled");throw J.code="ERR_GET_IMAGE_DATA",J}var K=h(Y.width,Y.height,Y.toWidth,Y.toHeight,U.options.tile,Y.__destTileBorder);return U.__processStages(K,R,L,Y)})},T.prototype.resizeBuffer=function(R){var L=this,M=g({},w,R);return this.init().then(function(){return L.__mathlib.resizeAndUnsharp(M)})},T.prototype.toBlob=function(R,L,M){return L=L||"image/png",new Promise(function(U){if(R.toBlob){R.toBlob(function(O){return U(O)},L,M);return}if(R.convertToBlob){U(R.convertToBlob({type:L,quality:M}));return}var Y=atob(R.toDataURL(L,M).split(",")[1]),H=Y.length,J=new Uint8Array(H);for(var K=0;K<H;K++)J[K]=Y.charCodeAt(K);U(new Blob([J],{type:L}))})},T.prototype.debug=function(){},r.exports=T},{"./lib/mathlib":1,"./lib/pool":13,"./lib/stepper":14,"./lib/tiler":15,"./lib/utils":16,"./lib/worker":17,"object-assign":23,webworkify:24}]},{},[])("/index.js")})}),r_=AEe(function(A){function e(n,o){var s=Error(n);return s.code=o,s}function t(n){var o=n.toString(16).toUpperCase();for(var s=2-o.length;s>0;s--)o="0"+o;return"0x"+o}function r(n){try{return unescape(encodeURIComponent(n))}catch(o){return n}}function i(n){try{return decodeURIComponent(escape(n))}catch(o){return n}}function u(n){return Object.prototype.toString.call(n)==="[object Uint8Array]"}function a(n,o,s){this.input=n.subarray(o,s),this.start=o;var l=String.fromCharCode.apply(null,this.input.subarray(0,4));if(l!=="II*\x00"&&l!=="MM\x00*")throw e("invalid TIFF signature","EBADDATA");this.big_endian=l[0]==="M"}a.prototype.each=function(n){this.aborted=!1;var o=this.read_uint32(4);this.ifds_to_read=[{id:0,offset:o}];while(this.ifds_to_read.length>0&&!this.aborted){var s=this.ifds_to_read.shift();if(!s.offset)continue;this.scan_ifd(s.id,s.offset,n)}},a.prototype.filter=function(n){var o={};o.ifd0={id:0,entries:[]},this.each(function(C){if(n(C)===!1&&!C.is_subifd_link)return;if(C.is_subifd_link&&C.count!==1&&C.format!==4)return;if(!o["ifd"+C.ifd])o["ifd"+C.ifd]={id:C.ifd,entries:[]};o["ifd"+C.ifd].entries.push(C)}),delete o.ifd1;var s=8;Object.keys(o).forEach(function(C){s+=2,o[C].entries.forEach(function(B){s+=12+(B.data_length>4?Math.ceil(B.data_length/2)*2:0)}),s+=4}),this.output=new Uint8Array(s),this.output[0]=this.output[1]=(this.big_endian?"M":"I").charCodeAt(0),this.write_uint16(2,42);var l=8,g=this;if(this.write_uint32(4,l),Object.keys(o).forEach(function(C){o[C].written_offset=l;var B=l,E=B+2+o[C].entries.length*12+4;l=E,g.write_uint16(B,o[C].entries.length),o[C].entries.sort(function(I,h){return I.tag-h.tag}).forEach(function(I,h){var Q=B+2+h*12;if(g.write_uint16(Q,I.tag),g.write_uint16(Q+2,I.format),g.write_uint32(Q+4,I.count),I.is_subifd_link){if(o["ifd"+I.tag])o["ifd"+I.tag].link_offset=Q+8}else if(I.data_length<=4)g.output.set(g.input.subarray(I.data_offset-g.start,I.data_offset-g.start+4),Q+8);else g.write_uint32(Q+8,l),g.output.set(g.input.subarray(I.data_offset-g.start,I.data_offset-g.start+I.data_length),l),l+=Math.ceil(I.data_length/2)*2});var d=o["ifd"+(o[C].id+1)];if(d)d.link_offset=E-4}),Object.keys(o).forEach(function(C){if(o[C].written_offset&&o[C].link_offset)g.write_uint32(o[C].link_offset,o[C].written_offset)}),this.output.length!==l)throw e("internal error: incorrect buffer size allocated");return this.output},a.prototype.read_uint16=function(n){var o=this.input;if(n+2>o.length)throw e("unexpected EOF","EBADDATA");return this.big_endian?o[n]*256+o[n+1]:o[n]+o[n+1]*256},a.prototype.read_uint32=function(n){var o=this.input;if(n+4>o.length)throw e("unexpected EOF","EBADDATA");return this.big_endian?o[n]*16777216+o[n+1]*65536+o[n+2]*256+o[n+3]:o[n]+o[n+1]*256+o[n+2]*65536+o[n+3]*16777216},a.prototype.write_uint16=function(n,o){var s=this.output;if(this.big_endian)s[n]=o>>>8&255,s[n+1]=o&255;else s[n]=o&255,s[n+1]=o>>>8&255},a.prototype.write_uint32=function(n,o){var s=this.output;if(this.big_endian)s[n]=o>>>24&255,s[n+1]=o>>>16&255,s[n+2]=o>>>8&255,s[n+3]=o&255;else s[n]=o&255,s[n+1]=o>>>8&255,s[n+2]=o>>>16&255,s[n+3]=o>>>24&255},a.prototype.is_subifd_link=function(n,o){return n===0&&o===34665||n===0&&o===34853||n===34665&&o===40965},a.prototype.exif_format_length=function(n){switch(n){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}},a.prototype.exif_format_read=function(n,o){var s;switch(n){case 1:case 2:return s=this.input[o],s;case 6:return s=this.input[o],s|(s&128)*33554430;case 3:return s=this.read_uint16(o),s;case 8:return s=this.read_uint16(o),s|(s&32768)*131070;case 4:return s=this.read_uint32(o),s;case 9:return s=this.read_uint32(o),s|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}},a.prototype.scan_ifd=function(n,o,s){var l=this.read_uint16(o);o+=2;for(var g=0;g<l;g++){var C=this.read_uint16(o),B=this.read_uint16(o+2),E=this.read_uint32(o+4),d=this.exif_format_length(B),I=E*d,h=I<=4?o+8:this.read_uint32(o+8),Q=!1;if(h+I>this.input.length)throw e("unexpected EOF","EBADDATA");var p=[],m=h;for(var f=0;f<E;f++,m+=d){var D=this.exif_format_read(B,m);if(D===null){p=null;break}p.push(D)}if(Array.isArray(p)&&B===2){try{p=i(String.fromCharCode.apply(null,p))}catch(b){p=null}if(p&&p[p.length-1]==="\x00")p=p.slice(0,-1)}if(this.is_subifd_link(n,C)){if(Array.isArray(p)&&Number.isInteger(p[0])&&p[0]>0)this.ifds_to_read.push({id:C,offset:p[0]}),Q=!0}var w={is_big_endian:this.big_endian,ifd:n,tag:C,format:B,count:E,entry_offset:o+this.start,data_length:I,data_offset:h+this.start,value:p,is_subifd_link:Q};if(s(w)===!1){this.aborted=!0;return}o+=12}if(n===0)this.ifds_to_read.push({id:1,offset:this.read_uint32(o)})},A.exports.is_jpeg=function(n){return n.length>=4&&n[0]===255&&n[1]===216&&n[2]===255},A.exports.jpeg_segments_each=function(n,o){if(!u(n))throw e("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof o!=="function")throw e("Invalid argument (on_segment), Function expected","EINVAL");if(!A.exports.is_jpeg(n))throw e("Unknown file format","ENOTJPEG");var s=0,l=n.length,g=!1;for(;;){var C,B;if(s+1>=l)throw e("Unexpected EOF","EBADDATA");var E=n[s],d=n[s+1];if(E===255&&d===255)C=255,B=1;else if(E===255&&d!==0){if(C=d,B=2,208<=C&&C<=217||C===1);else{if(s+3>=l)throw e("Unexpected EOF","EBADDATA");if(B+=n[s+2]*256+n[s+3],B<2)throw e("Invalid segment length","EBADDATA");if(s+B-1>=l)throw e("Unexpected EOF","EBADDATA")}if(g)if(C>=208&&C<=215);else g=!1;if(C===218)g=!0}else if(g)for(var I=s+1;;I++){if(I>=l)throw e("Unexpected EOF","EBADDATA");if(n[I]===255){if(I+1>=l)throw e("Unexpected EOF","EBADDATA");if(n[I+1]!==0){C=0,B=I-s;break}}}else throw e("Unexpected byte at segment start: "+t(E)+" (offset "+t(s)+")","EBADDATA");if(o({code:C,offset:s,length:B})===!1)break;if(C===217)break;s+=B}},A.exports.jpeg_segments_filter=function(n,o){if(!u(n))throw e("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof o!=="function")throw e("Invalid argument (on_segment), Function expected","EINVAL");var s=[],l=0;A.exports.jpeg_segments_each(n,function(B){var E=o(B);if(u(E))s.push({data:E}),l+=E.length;else if(Array.isArray(E))E.filter(u).forEach(function(I){s.push({data:I}),l+=I.length});else if(E!==!1){var d={start:B.offset,end:B.offset+B.length};if(s.length>0&&s[s.length-1].end===d.start)s[s.length-1].end=d.end;else s.push(d);l+=B.length}});var g=new Uint8Array(l),C=0;return s.forEach(function(B){var E=B.data||n.subarray(B.start,B.end);g.set(E,C),C+=E.length}),g},A.exports.jpeg_exif_tags_each=function(n,o){if(!u(n))throw e("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof o!=="function")throw e("Invalid argument (on_exif_entry), Function expected","EINVAL");A.exports.jpeg_segments_each(n,function(s){if(s.code===218)return!1;if(s.code===225&&s.length>=10&&n[s.offset+4]===69&&n[s.offset+5]===120&&n[s.offset+6]===105&&n[s.offset+7]===102&&n[s.offset+8]===0&&n[s.offset+9]===0)return new a(n,s.offset+10,s.offset+s.length).each(o),!1})},A.exports.jpeg_exif_tags_filter=function(n,o){if(!u(n))throw e("Invalid argument (jpeg_bin), Uint8Array expected","EINVAL");if(typeof o!=="function")throw e("Invalid argument (on_exif_entry), Function expected","EINVAL");var s=!1;return A.exports.jpeg_segments_filter(n,function(l){if(s)return;if(l.code===218)s=!0;if(l.code===225&&l.length>=10&&n[l.offset+4]===69&&n[l.offset+5]===120&&n[l.offset+6]===105&&n[l.offset+7]===102&&n[l.offset+8]===0&&n[l.offset+9]===0){var g=new a(n,l.offset+10,l.offset+l.length).filter(o);if(!g)return!1;var C=new Uint8Array(10);return C.set(n.slice(l.offset,l.offset+10)),C[2]=g.length+8>>>8&255,C[3]=g.length+8&255,s=!0,[C,g]}})},A.exports.jpeg_add_comment=function(n,o){var s=!1,l=0;return A.exports.jpeg_segments_filter(n,function(g){if(l++,l===1&&g.code===216)return;if(l===2&&g.code===224)return;if(s)return;o=r(o);var C=new Uint8Array(5+o.length),B=0;return C[B++]=255,C[B++]=254,C[B++]=o.length+3>>>8&255,C[B++]=o.length+3&255,o.split("").forEach(function(E){C[B++]=E.charCodeAt(0)&255}),C[B++]=0,s=!0,[C,n.subarray(g.offset,g.offset+g.length)]})}});dXt=tEe,IXt=rEe,hXt=iEe,QXt=EXt,pXt={jpeg_patch_exif:dXt,jpeg_rotate_canvas:IXt,jpeg_attach_orig_segments:hXt,assign:QXt};q0.prototype.use=function(A){var e=[this].concat(Array.prototype.slice.call(arguments,1));return A.apply(A,e),this};q0.prototype.init=function(){this.use(pXt.assign)};q0.prototype.toBlob=function(A,e){var t=kdA.assign({max:1/0},e),r={blob:A,opts:t};if(!this.initialized)this.init(),this.initialized=!0;return Promise.resolve(r).then(this._blob_to_image).then(this._calculate_size).then(this._transform).then(this._cleanup).then(this._create_blob).then(function(i){return i.out_canvas.width=i.out_canvas.height=0,i.out_blob})};q0.prototype.toCanvas=function(A,e){var t=kdA.assign({max:1/0},e),r={blob:A,opts:t};if(!this.initialized)this.init(),this.initialized=!0;return Promise.resolve(r).then(this._blob_to_image).then(this._calculate_size).then(this._transform).then(this._cleanup).then(function(i){return i.out_canvas})};q0.prototype.before=function(A,e){if(!this[A])throw Error('Method "'+A+'" does not exist');if(typeof e!=="function")throw Error('Invalid argument "fn", function expected');var t=this[A],r=this;return this[A]=function(i){return e.call(r,i).then(function(u){return t.call(r,u)})},this};q0.prototype.after=function(A,e){if(!this[A])throw Error('Method "'+A+'" does not exist');if(typeof e!=="function")throw Error('Invalid argument "fn", function expected');var t=this[A],r=this;return this[A]=function(i){return t.call(r,i).then(function(u){return e.call(r,u)})},this};q0.prototype._blob_to_image=function(A){var e=window.URL||window.webkitURL||window.mozURL||window.msURL;return A.image=document.createElement("img"),A.image_url=e.createObjectURL(A.blob),A.image.src=A.image_url,new Promise(function(t,r){A.image.onerror=function(){r(Error("ImageBlobReduce: failed to create Image() from blob"))},A.image.onload=function(){t(A)}})};q0.prototype._calculate_size=function(A){var e=A.opts.max/Math.max(A.image.width,A.image.height);if(e>1)e=1;return A.transform_width=Math.max(Math.round(A.image.width*e),1),A.transform_height=Math.max(Math.round(A.image.height*e),1),A.scale_factor=e,Promise.resolve(A)};q0.prototype._transform=function(A){A.out_canvas=this.pica.options.createCanvas(A.transform_width,A.transform_height),A.transform_width=null,A.transform_height=null;var e={alpha:A.blob.type==="image/png"};return this.utils.assign(e,this.utils.pick_pica_resize_options(A.opts)),this.pica.resize(A.image,A.out_canvas,e).then(function(){return A})};q0.prototype._cleanup=function(A){A.image.src="",A.image=null;var e=window.URL||window.webkitURL||window.mozURL||window.msURL;if(e.revokeObjectURL)e.revokeObjectURL(A.image_url);return A.image_url=null,Promise.resolve(A)};q0.prototype._create_blob=function(A){return this.pica.toBlob(A.out_canvas,A.blob.type).then(function(e){return A.out_blob=e,A})};q0.prototype._getUint8Array=function(A){if(A.arrayBuffer)return A.arrayBuffer().then(function(e){return new Uint8Array(e)});return new Promise(function(e,t){var r=new FileReader;r.readAsArrayBuffer(A),r.onload=function(){e(new Uint8Array(r.result))},r.onerror=function(){t(Error("ImageBlobReduce: failed to load data from input blob")),r.abort()},r.onabort=function(){t(Error("ImageBlobReduce: failed to load data from input blob (aborted)"))}})};q0.pica=eEe;fXt=q0,mXt=fXt});function x1(A){return A*Math.PI/180}function p9(A){return A*180/Math.PI}function YXt(A){return Math.abs(Math.sin(2*A))<0.0001}function qo(A,e,t=0,r=0){return[A-t,e-r]}function Mt(A,e=[0,0]){return qo(A[0]-e[0],A[1]-e[1])}function po(A,e){return A[0]*e[1]-e[0]*A[1]}function EIA(A,e){return A[0]*e[0]+A[1]*e[1]}function k1(A,e){return[A[0]+e[0],A[1]+e[1]]}function Q8(A,e){return[A[0]-e[0],A[1]-e[1]]}function ba(A,e){return qo(A[0]*e,A[1]*e)}function HXt(A){return A[0]*A[0]+A[1]*A[1]}function KXt(A){return Math.sqrt(HXt(A))}function X(A,e){return[A,e]}function dIA(A){return A.length===2?X(A[0],A[1]):void 0}function $r(A,e=X(0,0)){return X(e[0]+A[0],e[1]+A[1])}function JXt(A){return Array.isArray(A)&&A.length===2&&typeof A[0]=="number"&&!isNaN(A[0])&&typeof A[1]=="number"&&!isNaN(A[1])}function VC(A,e){let t=Math.abs;return t(A[0]-e[0])<0.0001&&t(A[1]-e[1])<0.0001}function De([A,e],[t,r],i){return X((A-t)*Math.cos(i)-(e-r)*Math.sin(i)+t,(A-t)*Math.sin(i)+(e-r)*Math.cos(i)+r)}function I_(A,e=[0,0]){return X(A[0]+e[0],A[1]+e[1])}function U8(A,e){return X((A[0]+e[0])/2,(A[1]+e[1])/2)}function Ri(A,e){return Math.hypot(e[0]-A[0],e[1]-A[1])}function p8(A,e){let t=e[0]-A[0],r=e[1]-A[1];return t*t+r*r}function OdA(A,e){return[A,e]}function OXt(A,e){let t=A[1][1]-A[0][1],r=A[0][0]-A[1][0],i=e[1][1]-e[0][1],u=e[0][0]-e[1][0],a=t*u-i*r;if(a!==0){let n=t*A[0][0]+r*A[0][1],o=i*e[0][0]+u*e[0][1];return X((n*u-o*r)/a,(t*o-i*n)/a)}return null}function Wt(A,e){return[A,e]}function f8(A,e){let t=OXt(OdA(A[0],A[1]),OdA(e[0],e[1]));return!t||!Jm(t,e)||!Jm(t,A)?null:t}function PdA(A,e){return[A,e]}function PXt(A,e){return[Wt(A[0],X(A[1][0],A[0][1])),Wt(X(A[1][0],A[0][1]),A[1]),Wt(A[1],X(A[0][0],A[1][1])),Wt(X(A[0][0],A[1][1]),A[0])].map((t)=>f8(e,t)).filter((t)=>!!t)}function kh(A,e,t,r){return[A,e,t,r]}function nEe(A,e,t,r=0.000001){return[(A(e+r,t)-A(e-r,t))/(2*r),(A(e,t+r)-A(e,t-r))/(2*r)]}function _Xt(A,e,t,r=0.001,i=10){let u=1/0,a=0;for(;u>=r;){if(a>=i)return null;let n=A(e,t),o=[nEe((d,I)=>A(d,I)[0],e,t),nEe((d,I)=>A(d,I)[1],e,t)],s=[[-n[0]],[-n[1]]],l=o[0][0]*o[1][1]-o[0][1]*o[1][0];if(l===0)return null;let g=[[o[1][1]/l,-o[0][1]/l],[-o[1][0]/l,o[0][0]/l]],C=[[g[0][0]*s[0][0]+g[0][1]*s[1][0]],[g[1][0]*s[0][0]+g[1][1]*s[1][0]]];e=e+C[0][0],t=t+C[1][0];let[B,E]=A(e,t);u=Math.max(Math.abs(B),Math.abs(E)),a+=1}return[e,t]}function Wde(A,e){let t=qXt(A);if(PXt(PdA(X(t[0],t[1]),X(t[2],t[3])),e).length===0)return[];let r=(n)=>X(e[0][0]+n*(e[1][0]-e[0][0]),e[0][1]+n*(e[1][1]-e[0][1])),i=[[0.5,0],[0.2,0],[0.8,0]],u=([n,o])=>{let s=_Xt((C,B)=>{let E=I8(A,C),d=r(B);return[E[0]-d[0],E[1]-d[1]]},n,o);if(!s)return null;let[l,g]=s;return l<0||l>1||g<0||g>1?null:I8(A,l)},a=u(i[0]);return a?[a]:(a=u(i[1]),a?[a]:(a=u(i[2]),a?[a]:[]))}function WXt(A,e,t=0.001){let r=(o,s,l,g=t)=>{let C=o,B=s,E;for(;B-C>g;)E=(B+C)/2,l(E-g)<l(E+g)?B=E:C=E;return E},i=0;for(let o=1/0,s=0;s<30;s++){let l=Ri(e,I8(A,s/30));l<o&&(o=l,i=s)}let u=Math.max((i-1)/30,0),a=Math.min((i+1)/30,1),n=r(u,a,(o)=>Ri(e,I8(A,o)));return n?I8(A,n):null}function qde(A,e){let t=WXt(A,e);return t?Ri(e,t):0}function qXt(A){let[e,t,r,i]=A,u=[e[0],t[0],r[0],i[0]],a=[e[1],t[1],r[1],i[1]];return[Math.min(...u),Math.min(...a),Math.max(...u),Math.max(...a)]}function oEe(...A){return zde(A)}function h_(A){return zde(A)}function zde(A){return ZXt(A)?A:[...A,A[0]]}function ZXt(A){return VC(A[0],A[A.length-1])}function z0(A,e){return vg([A,e])}function $6([A,e,t],r){let i=(l,g,C)=>(l[0]-C[0])*(g[1]-C[1])-(g[0]-C[0])*(l[1]-C[1]),u=i(r,A,e),a=i(r,e,t),n=i(r,t,A),o=u<0||a<0||n<0,s=u>0||a>0||n>0;return!(o&&s)}function fn(A,e){if(!A)throw Error(e)}function oa(A,e,t,r){return A?(A?.addEventListener?.(e,t,r),()=>{A?.removeEventListener?.(e,t,r)}):()=>{}}function nIe(A,e=!0){let t=A.length;if(t<4)return"";let r=A[0],i=A[1],u=A[2],a=`M${r[0].toFixed(2)},${r[1].toFixed(2)} Q${i[0].toFixed(2)},${i[1].toFixed(2)} ${i_(i[0],u[0]).toFixed(2)},${i_(i[1],u[1]).toFixed(2)} T`;for(let n=2,o=t-1;n<o;n++)r=A[n],i=A[n+1],a+=`${i_(r[0],i[0]).toFixed(2)},${i_(r[1],i[1]).toFixed(2)} `;return e&&(a+="Z"),a}function iQe(A,e,t){return{center:A,halfWidth:e,halfHeight:t}}function Qir({center:A,halfWidth:e,halfHeight:t},[r,i]){let[u,a]=A,n=r[0]-u,o=r[1]-a,s=i[0]-u,l=i[1]-a,g=Math.pow(s-n,2)/Math.pow(e,2)+Math.pow(l-o,2)/Math.pow(t,2),C=2*(n*(s-n)/Math.pow(e,2)+o*(l-o)/Math.pow(t,2)),B=Math.pow(n,2)/Math.pow(e,2)+Math.pow(o,2)/Math.pow(t,2)-1,E=(-C+Math.sqrt(Math.pow(C,2)-4*g*B))/(2*g),d=(-C-Math.sqrt(Math.pow(C,2)-4*g*B))/(2*g),I=[X(n+E*(s-n)+u,o+E*(l-o)+a),X(n+d*(s-n)+u,o+d*(l-o)+a)].filter((h)=>!isNaN(h[0])&&!isNaN(h[1]));return I.length===2&&VC(I[0],I[1])?[I[0]]:I}function uQe(A,e=0){let t=Fc(Math.min(A.width,A.height),A);if(t<=0){let g=PdA(X(A.x-e,A.y-e),X(A.x+A.width+e,A.y+A.height+e)),C=Wt(X(g[0][0]+t,g[0][1]),X(g[1][0]-t,g[0][1])),B=Wt(X(g[1][0],g[0][1]+t),X(g[1][0],g[1][1]-t)),E=Wt(X(g[0][0]+t,g[1][1]),X(g[1][0]-t,g[1][1])),d=Wt(X(g[0][0],g[1][1]-t),X(g[0][0],g[0][1]+t));return[[C,B,E,d],[]]}let r=X(A.x+A.width/2,A.y+A.height/2),i=PdA(X(A.x,A.y),X(A.x+A.width,A.y+A.height)),u=Wt(X(i[0][0]+t,i[0][1]),X(i[1][0]-t,i[0][1])),a=Wt(X(i[1][0],i[0][1]+t),X(i[1][0],i[1][1]-t)),n=Wt(X(i[0][0]+t,i[1][1]),X(i[1][0]-t,i[1][1])),o=Wt(X(i[0][0],i[1][1]-t),X(i[0][0],i[0][1]+t)),s=[ba(m0(Mt(X(i[0][0]-e,i[0][1]-e),r)),e),ba(m0(Mt(X(i[1][0]+e,i[0][1]-e),r)),e),ba(m0(Mt(X(i[1][0]+e,i[1][1]+e),r)),e),ba(m0(Mt(X(i[0][0]-e,i[1][1]+e),r)),e)],l=[kh($r(s[0],o[1]),$r(s[0],X(o[1][0]+0.6666666666666666*(i[0][0]-o[1][0]),o[1][1]+0.6666666666666666*(i[0][1]-o[1][1]))),$r(s[0],X(u[0][0]+0.6666666666666666*(i[0][0]-u[0][0]),u[0][1]+0.6666666666666666*(i[0][1]-u[0][1]))),$r(s[0],u[0])),kh($r(s[1],u[1]),$r(s[1],X(u[1][0]+0.6666666666666666*(i[1][0]-u[1][0]),u[1][1]+0.6666666666666666*(i[0][1]-u[1][1]))),$r(s[1],X(a[0][0]+0.6666666666666666*(i[1][0]-a[0][0]),a[0][1]+0.6666666666666666*(i[0][1]-a[0][1]))),$r(s[1],a[0])),kh($r(s[2],a[1]),$r(s[2],X(a[1][0]+0.6666666666666666*(i[1][0]-a[1][0]),a[1][1]+0.6666666666666666*(i[1][1]-a[1][1]))),$r(s[2],X(n[1][0]+0.6666666666666666*(i[1][0]-n[1][0]),n[1][1]+0.6666666666666666*(i[1][1]-n[1][1]))),$r(s[2],n[1])),kh($r(s[3],n[0]),$r(s[3],X(n[0][0]+0.6666666666666666*(i[0][0]-n[0][0]),n[0][1]+0.6666666666666666*(i[1][1]-n[0][1]))),$r(s[3],X(o[0][0]+0.6666666666666666*(i[0][0]-o[0][0]),o[0][1]+0.6666666666666666*(i[1][1]-o[0][1]))),$r(s[3],o[0]))];return[[Wt(l[0][3],l[1][0]),Wt(l[1][3],l[2][0]),Wt(l[2][3],l[3][0]),Wt(l[3][3],l[0][0])],l]}function aQe(A,e=0){let[t,r,i,u,a,n,o,s]=bQe(A),l=Fc(Math.abs(t-o),A),g=Fc(Math.abs(u-r),A);if(A.roundness?.type==null){let[p,m,f,D]=[X(A.x+t,A.y+r-e),X(A.x+i+e,A.y+u),X(A.x+a,A.y+n+e),X(A.x+o-e,A.y+s)],w=Wt(X(p[0]+l,p[1]+g),X(m[0]-l,m[1]-g)),b=Wt(X(m[0]-l,m[1]+g),X(f[0]+l,f[1]-g)),k=Wt(X(f[0]-l,f[1]-g),X(D[0]+l,D[1]+g)),v=Wt(X(D[0]+l,D[1]-g),X(p[0]-l,p[1]+g));return[[w,b,k,v],[]]}let C=X(A.x+A.width/2,A.y+A.height/2),[B,E,d,I]=[X(A.x+t,A.y+r),X(A.x+i,A.y+u),X(A.x+a,A.y+n),X(A.x+o,A.y+s)],h=[ba(m0(Mt(E,C)),e),ba(m0(Mt(d,C)),e),ba(m0(Mt(I,C)),e),ba(m0(Mt(B,C)),e)],Q=[kh($r(h[0],X(E[0]-l,E[1]-g)),$r(h[0],E),$r(h[0],E),$r(h[0],X(E[0]-l,E[1]+g))),kh($r(h[1],X(d[0]+l,d[1]-g)),$r(h[1],d),$r(h[1],d),$r(h[1],X(d[0]-l,d[1]-g))),kh($r(h[2],X(I[0]+l,I[1]+g)),$r(h[2],I),$r(h[2],I),$r(h[2],X(I[0]+l,I[1]-g))),kh($r(h[3],X(B[0]-l,B[1]+g)),$r(h[3],B),$r(h[3],B),$r(h[3],X(B[0]+l,B[1]+g)))];return[[Wt(Q[0][3],Q[1][0]),Wt(Q[1][3],Q[2][0]),Wt(Q[2][3],Q[3][0]),Wt(Q[3][3],Q[0][0])],Q]}function Gir(A){let e=hhA(A),t=new Path2D(e);return mQe.set(A,t),t}function Uir(A){return mQe.get(A)}function hhA(A){let e=A.simulatePressure?A.points:A.points.length?A.points.map(([r,i],u)=>[r,i,A.pressures[u]]):[[0,0,0.5]],t={simulatePressure:A.simulatePressure,size:A.strokeWidth*4.25,thinning:0.6,smoothing:0.5,streamline:0.5,easing:(r)=>Math.sin(r*Math.PI/2),last:!!A.lastCommittedPoint};return Tir(_Ce(e,t))}function IEe(A,e){return[(A[0]+e[0])/2,(A[1]+e[1])/2]}function Tir(A){if(!A.length)return"";let e=A.length-1;return A.reduce((t,r,i,u)=>(i===e?t.push(r,IEe(r,u[0]),"L",u[0],"Z"):t.push(r,IEe(r,u[i+1])),t),["M",A[0],"Q"]).join(" ").replace(Mir,"$1")}function Hir(A){let e=A.roughness,t=Math.max(A.width,A.height),r=Math.min(A.width,A.height);return r>=20&&t>=50||r>=15&&A.roundness&&oW(A.type)||Gr(A)&&t>=50?e:Math.min(e/(t<10?3:2),2.5)}function k4e(A){let e=[];for(let t of A.childNodes)if(t.nodeType===3){let r=t.textContent?.trim();r&&e.push({type:"text",value:r})}else if(t instanceof HTMLImageElement){let r=t.getAttribute("src");r&&r.startsWith("http")&&e.push({type:"imageUrl",value:r})}else e=e.concat(k4e(t));return e}function Ade(A){return[Math.min(A[0][0],A[1][0]),Math.min(A[0][1],A[1][1]),Math.max(A[0][0],A[1][0]),Math.max(A[0][1],A[1][1])]}function Jar(A,e){return A[0]<=e[2]&&A[2]>=e[0]&&A[1]<=e[3]&&A[3]>=e[1]}function ede(A,e){let t=Mt(A[1],A[0]),r=Mt(e,A[0]),i=po(t,r);return Math.abs(i)<Oar}function HdA(A,e){let t=Mt(A[1],A[0]),r=Mt(e,A[0]);return po(t,r)<0}function tde(A,e){return ede(A,e[0])||ede(A,e[1])||(HdA(A,e[0])?!HdA(A,e[1]):HdA(A,e[1]))}function Par(A,e){return Jar(Ade(A),Ade(e))&&tde(A,e)&&tde(e,A)}function EQA(A,e,t){let r=pEe(e,t),i=pEe(A,t);return r.some((u)=>i.some((a)=>Par(u,a)))}var tIA,gde,Jde,Ode,jQe,DXt=(A,e)=>e.reduce((t,r)=>((r in A)&&(t[r]=A[r]),t),{}),cde=5,zm=5,yXt=4,e9=4,t9=1,_C,WC=(A,e)=>e.map((t)=>ua[A][t]),Zr,Cde,rIA,iIA,uIA,Bde,Ede,wXt=(A)=>[Zr.cyan[A],Zr.blue[A],Zr.violet[A],Zr.grape[A],Zr.pink[A],Zr.green[A],Zr.teal[A],Zr.yellow[A],Zr.orange[A],Zr.red[A]],dde=(A,e,t)=>`#${(16777216+(A<<16)+(e<<8)+t).toString(16).slice(1)}`,rB,aIA,bXt,I9,vXt,Ide,nIA,hde=()=>navigator.brave?.isBrave?.name==="isBrave",S_,Qde="Excalidraw",kXt=36,Y1=10,k8=8,pde=5,oIA=1,fde=30,N1,mde="red",iu,Sh,Zm,F8,Ys,Vm,r9="Xiaolai",h8="Segoe UI Emoji",aa,i9,Dde=(A)=>{switch(A){case aa.Excalifont:return[r9,h8];default:return[h8]}},ei,Zu,sIA=1,cd=20,Lh,h9="left",x8="top",G1=2,B_,FXt=0.00001,yde,S8="#ffffff",wde="#1e1e1e",bde="#a2f1a6",L8=20,vde=5,jm,jt,xXt,L_,wg,R_,kde=500,Fde=300,xde=500,Sde=100,R8=0.1,N_=0.1,G_=30,Lde=300,U_="invert(93%) hue-rotate(180deg)",lIA,Rde=730,Nde=1000,Gde=500,Ude=1229,l8=2,M_,Xm=10,Mde=1440,gIA=4194304,bi="http://www.w3.org/2000/svg",N8,pn=5,SXt=0.7,LXt=11,Rl,l9,RXt=20,FdA=0.25,NXt=32,mn,Tde,T_,Ua,G8="library",$m="search",Gc,cIA,Jn,Q9,CIA="Untitled",Km,Fg=1,mo,BIA=0.3,E_="element",GXt,Yde,UXt,iB=()=>({showWelcomeScreen:!1,theme:ei.LIGHT,collaborators:new Map,currentChartType:"bar",currentItemBackgroundColor:Ua.backgroundColor,currentItemEndArrowhead:"arrow",currentItemFillStyle:Ua.fillStyle,currentItemFontFamily:Lh,currentItemFontSize:cd,currentItemOpacity:Ua.opacity,currentItemRoughness:Ua.roughness,currentItemStartArrowhead:null,currentItemStrokeColor:Ua.strokeColor,currentItemRoundness:"round",currentItemArrowType:mo.round,currentItemStrokeStyle:Ua.strokeStyle,currentItemStrokeWidth:Ua.strokeWidth,currentItemTextAlign:h9,currentHoveredFontFamily:null,cursorButton:"up",activeEmbeddable:null,newElement:null,editingTextElement:null,editingGroupId:null,editingLinearElement:null,activeTool:{type:"selection",customType:null,locked:Ua.locked,lastActiveTool:null},penMode:!1,penDetected:!1,errorMessage:null,exportBackground:!0,exportScale:UXt,exportEmbedScene:!1,exportWithDarkMode:!1,fileHandle:null,gridSize:L8,gridStep:vde,gridModeEnabled:!1,isBindingEnabled:!0,defaultSidebarDockedPreference:!1,isLoading:!1,isResizing:!1,isRotating:!1,lastPointerDownWith:"mouse",multiElement:null,name:null,contextMenu:null,openMenu:null,openPopup:null,openSidebar:null,openDialog:null,pasteDialog:{shown:!1,data:null},previousSelectedElementIds:{},resizingElement:null,scrolledOutside:!1,scrollX:0,scrollY:0,selectedElementIds:{},hoveredElementIds:{},selectedGroupIds:{},selectedElementsAreBeingDragged:!1,selectionElement:null,shouldCacheIgnoreZoom:!1,stats:{open:!1,panels:Km.generalStats|Km.elementProperties},startBoundElement:null,suggestedBindings:[],frameRendering:{enabled:!0,clip:!0,name:!0,outline:!0},frameToHighlight:null,editingFrame:null,elementsToHighlight:null,toast:null,viewBackgroundColor:Zr.white,zenModeEnabled:!1,zoom:{value:1},viewModeEnabled:!1,pendingImageElementId:null,showHyperlinkPopup:!1,selectedLinearElement:null,snapLines:[],originSnapOffset:{x:0,y:0},objectsSnapModeEnabled:!1,userToFollow:null,followedBy:new Set,isCropping:!1,croppingElementId:null,searchMatches:[]}),MXt,Hde=(A,e)=>{let t={};for(let r of Object.keys(A))if(MXt[r]?.[e]){let i=A[r];t[r]=i}return t},Kde=(A)=>Hde(A,"export"),TXt=(A)=>Hde(A,"server"),uB=({activeTool:A})=>A.type==="eraser",A2=({activeTool:A})=>A.type==="hand",jr=(A,e,t)=>Math.min(Math.max(A,e),t),aB=(A,e,t="round")=>{let r=Math.pow(10,e);return Math[t]((A+Number.EPSILON)*r)/r},Pde=(A,e,t="round")=>{let r=1/e;return Math[t](A*r)/r},i_=(A,e)=>(A+e)/2,o9=(A)=>typeof A=="number"&&Number.isFinite(A),aEe=(A,e,t=0.0001)=>Math.abs(A-e)<t,d_=(A)=>A<0?A+2*Math.PI:A>=2*Math.PI?A-2*Math.PI:A,m0=(A)=>{let e=KXt(A);return e===0?qo(0,0):qo(A[0]/e,A[1]/e)},wh=(A,e,t)=>I_(e,ba(Mt(A,e),t)),_de=(A,e,t)=>e[0]<=Math.max(A[0],t[0])&&e[0]>=Math.min(A[0],t[0])&&e[1]<=Math.max(A[1],t[1])&&e[1]>=Math.min(A[1],t[1]),Jm=(A,e,t=0.0001)=>{let r=IIA(A,e);return r===0?!0:r<t},IIA=(A,e)=>{let[t,r]=A,[[i,u],[a,n]]=e,o=t-i,s=r-u,l=a-i,g=n-u,C=o*l+s*g,B=l*l+g*g,E=-1;B!==0&&(E=C/B);let d,I;E<0?(d=i,I=u):E>1?(d=a,I=n):(d=i+E*l,I=u+E*g);let h=t-d,Q=r-I;return Math.sqrt(h*h+Q*Q)},I8=(A,e)=>X((1-e)**3*A[0][0]+3*(1-e)**2*e*A[1][0]+3*(1-e)*e**2*A[2][0]+e**3*A[3][0],(1-e)**3*A[0][1]+3*(1-e)**2*e*A[1][1]+3*(1-e)*e**2*A[2][1]+e**3*A[3][1]),sEe=(A,e)=>{let t=A[0],r=A[1],i=!1;for(let u=0,a=e.length-1;u<e.length;a=u++){let n=e[u][0],o=e[u][1],s=e[a][0],l=e[a][1];(o>r&&l<=r||o<=r&&l>r)&&t<(s-n)*(r-o)/(l-o)+n&&(i=!i)}return i},zXt=(A,e,t=0.0001)=>{let r=!1;for(let i=0,u=e.length-1;i<u;i++)if(Jm(A,Wt(e[i],e[i+1]),t)){r=!0;break}return r},Q_=([A,e],[t,r])=>A<=t?e>=t:A>=t?r>=A:!1,p_=([A,e],[t,r])=>{let i=Math.max(A,t),u=Math.min(e,r);return i<=u?vg([i,u]):null},u_=(A,[e,t])=>A>=e&&A<=t,lEe=null,hIA=()=>{if(lEe)return lEe;let A=new Date,e=A.getFullYear(),t=`${A.getMonth()+1}`.padStart(2,"0"),r=`${A.getDate()}`.padStart(2,"0"),i=`${A.getHours()}`.padStart(2,"0"),u=`${A.getMinutes()}`.padStart(2,"0");return`${e}-${t}-${r}-${i}${u}`},f9=(A)=>A.charAt(0).toUpperCase()+A.slice(1),Zde=(A)=>A instanceof HTMLElement&&A.className.includes("ToolIcon"),Y_=(A)=>A instanceof HTMLElement&&A.dataset.type==="wysiwyg"||A instanceof HTMLBRElement||A instanceof HTMLInputElement||A instanceof HTMLTextAreaElement||A instanceof HTMLSelectElement,Vde=(A)=>Y_(A)||A instanceof Element&&!!A.closest("label, button"),H1=(A)=>A instanceof HTMLElement&&A.dataset.type==="wysiwyg"||A instanceof HTMLBRElement||A instanceof HTMLTextAreaElement||A instanceof HTMLInputElement&&(A.type==="text"||A.type==="number"||A.type==="password"),e2=({fontFamily:A})=>{for(let[e,t]of Object.entries(aa))if(t===A)return`${e}${Dde(t).map((r)=>`, ${r}`).join("")}`;return h8},cu=({fontSize:A,fontFamily:e})=>`${A}px ${e2({fontFamily:e})}`,t2=(A,e)=>{let t=0,r=null,i=(...u)=>{r=u,clearTimeout(t),t=window.setTimeout(()=>{r=null,A(...u)},e)};return i.flush=()=>{if(clearTimeout(t),r){let u=r;r=null,A(...u)}},i.cancel=()=>{r=null,clearTimeout(t)},i},M8=(A,e)=>{let t=null,r=null,i=null,u=(n)=>{t=window.requestAnimationFrame(()=>{t=null,A(...n),r=null,i&&(r=i,i=null,u(r))})},a=(...n)=>{if(fr.MODE==="test"){A(...n);return}r=n,t===null?u(r):e?.trailing&&(i=n)};return a.flush=()=>{t!==null&&(cancelAnimationFrame(t),t=null),r&&(A(...i||r),r=i=null)},a.cancel=()=>{r=i=null,t!==null&&(cancelAnimationFrame(t),t=null)},a},K1=(A)=>1-Math.pow(1-A,4),gEe=(A,e,t)=>(e-A)*K1(t)+A,jde=({fromValues:A,toValues:e,onStep:t,duration:r=250,interpolateValue:i,onStart:u,onEnd:a,onCancel:n})=>{let o=!1,s=0,l;function g(C){if(o)return;l===void 0&&(l=C,u?.());let B=Math.min(C-l,r),E=K1(B/r),d={};if(Object.keys(A).forEach((I)=>{let h=I,Q=(e[h]-A[h])*E+A[h];d[h]=Q}),t(d),B<r){let I=B/r,h={};Object.keys(A).forEach((Q)=>{let p=Q,m=A[p],f=e[p],D;D=i?i(m,f,I,p):gEe(m,f,I),D==null&&(D=gEe(m,f,I)),h[p]=D}),t(h),s=window.requestAnimationFrame(g)}else t(e),a?.()}return s=window.requestAnimationFrame(g),()=>{n?.(),o=!0,window.cancelAnimationFrame(s)}},Xde=(A,e)=>{if(!A.length||e<1)return[];let t=0,r=0,i=Array(Math.ceil(A.length/e));for(;t<A.length;)i[r++]=A.slice(t,t+=e);return i},D0=(A,e)=>Math.abs(A-e),en=(A,e)=>e.type==="custom"?{...A.activeTool,type:"custom",customType:e.customType,locked:e.locked??A.activeTool.locked}:{...A.activeTool,lastActiveTool:e.lastActiveToolBeforeEraser===void 0?A.activeTool.lastActiveTool:e.lastActiveToolBeforeEraser,type:e.type,customType:null,locked:e.locked??A.activeTool.locked},Fe=(A)=>(A=A.replace(/\bAlt\b/i,"Alt").replace(/\bShift\b/i,"Shift").replace(/\b(Enter|Return)\b/i,"Enter"),rB?A.replace(/\bCtrlOrCmd\b/gi,"Cmd").replace(/\bAlt\b/i,"Option"):A.replace(/\bCtrlOrCmd\b/gi,"Ctrl")),Ru=({clientX:A,clientY:e},{zoom:t,offsetLeft:r,offsetTop:i,scrollX:u,scrollY:a})=>{let n=(A-r)/t.value-u,o=(e-i)/t.value-a;return{x:n,y:o}},Sc=({sceneX:A,sceneY:e},{zoom:t,offsetLeft:r,offsetTop:i,scrollX:u,scrollY:a})=>{let n=(A+u)*t.value+r,o=(e+a)*t.value+i;return{x:n,y:o}},T8=(A)=>getComputedStyle(document.documentElement).getPropertyValue(`--${A}`),VXt="A-Za-zÀ-ÖØ-öø-ʸ̀-֐ࠀ-῿Ⰰ-﬜﷾-﹯﻽-￿",jXt="֑-߿יִ-﷽ﹰ-ﻼ",XXt,$de=(A)=>XXt.test(A),kc=(A)=>{let[e,t]=A;return{x:e,y:t}},QIA=(A)=>{if(A?.name==="AbortError"){console.warn(A);return}throw A},pIA=(A,e,t=0)=>{t<0&&(t=A.length+t),t=Math.min(A.length,Math.max(t,0));let r=t-1;for(;++r<A.length;)if(e(A[r],r,A))return r;return-1},J1=(A,e,t=A.length-1)=>{t<0&&(t=A.length+t),t=Math.min(A.length-1,Math.max(t,0));let r=t+1;for(;--r>-1;)if(e(A[r],r,A))return r;return-1},vc=(A)=>{let e=A.length===5&&A.substr(4,1)==="0",t=A.length===9&&A.substr(7,2)==="00";return e||t||A===Zr.transparent},xdA=(A)=>A.fillStyle!=="solid"||vc(A.backgroundColor),AIe=()=>{let A,e,t=new Promise((r,i)=>{A=r,e=i});return t.resolve=A,t.reject=e,t},eIe=(A)=>{let e=A.parentElement;for(;e;){if(e===document.body)return document;let{overflowY:t}=window.getComputedStyle(e);if(e.scrollHeight>e.clientHeight&&(t==="auto"||t==="scroll"||t==="overlay"))return e;e=e.parentElement}return document},tIe=(A)=>{let e=A.parentElement;for(;e;){if(e.tabIndex>-1){e.focus();return}e=e.parentElement}},$Xt=(A)=>Array.from(A).map((e)=>`0${e.toString(16)}`.slice(-2)).join(""),m9=()=>Cd()?1:Date.now(),ar=(A)=>A instanceof Map?A:A.reduce((e,t)=>(e.set(typeof t=="string"?t:t.id,t),e),new Map),rIe=(A)=>A.reduce((e,t,r)=>(e.set(t.id,[t,r]),e),new Map),Dh=(A,e)=>A.reduce((t,r)=>(t[e?e(r):String(r)]=r,t),{}),iIe=(A)=>A.reduce((e,t,r)=>{let i={...t,prev:null,next:null};if(r!==0){let u=e[r-1];if(i.prev=u,u.next=i,r===A.length-1){let a=e[0];i.next=a,a.prev=i}}return e.push(i),e},[]),Cd=()=>fr.MODE==="test",fIA=()=>fr.MODE==="development",A$t=()=>typeof process<"u"&&!0,mIA=(A,e)=>new CustomEvent(A,{detail:{nativeEvent:e},cancelable:!0}),Y8=(A,e)=>{let t=!1;for(let r in e){let i=e[r];if(typeof i<"u"){if(A[r]===i&&(typeof i!="object"||i===null))continue;t=!0}}return t?{...A,...e}:A},uIe=()=>{try{return window.self===window.top?"top":"iframe"}catch{return"iframe"}},D9=(A)=>!!A&&typeof A=="object"&&("then"in A)&&("catch"in A)&&("finally"in A),H_=(A)=>{let e=A?.querySelectorAll("button, a, input, select, textarea, div[tabindex], label[tabindex]");return e?Array.from(e).filter((t)=>t.tabIndex>-1&&!t.disabled):[]},cEe=(A,e)=>Array.isArray(A)&&Array.isArray(e)&&A.length===0&&e.length===0?!0:A===e,zo=(A,e,t,r=!1)=>{let i=Object.keys(A),u=Object.keys(e);if(i.length!==u.length)return r&&console.warn("%cisShallowEqual: objects don't have same properties ->","color: #8B4000",A,e),!1;if(t&&Array.isArray(t)){for(let a of t)if(!(A[a]===e[a]||cEe(A[a],e[a])))return r&&console.warn(`%cisShallowEqual: ${a} not equal ->`,"color: #8B4000",A[a],e[a]),!1;return!0}return i.every((a)=>{let n=t?.[a],o=n?n(A[a],e[a]):A[a]===e[a]||cEe(A[a],e[a]);return!o&&r&&console.warn(`%cisShallowEqual: ${a} not equal ->`,"color: #8B4000",A[a],e[a]),o})},H8=(A,e,{checkForDefaultPrevented:t=!0}={})=>function(r){if(A?.(r),!t||!r?.defaultPrevented)return e?.(r)},O1=(A,e,t)=>{if(!e)return A;if(t)return console.error(e),A;throw Error(e)},aIe=(A)=>{let e,t,r=function(i){let u=Object.entries(i);if(e){let n=!0;for(let[o,s]of u)if(e.get(o)!==s){n=!1;break}if(n)return t}let a=A(i);return e=new Map(u),t=a,a};return r.clear=()=>{e=void 0,t=void 0},r},DIA=(A,e)=>A instanceof Set||A instanceof Map?A.has(e):("includes"in A)?A.includes(e):A.hasOwnProperty(e),Bd=(A)=>JSON.parse(JSON.stringify(A)),y9=(A,e)=>zo(A,e)?A:e,yIA=(A)=>A.replace(/\r?\n|\r/g,`
`),vg=(A)=>A,Om=async(A,...e)=>new Promise((t)=>{t(A(...e))}),e$t=(...A)=>Math.max(...A.map((e)=>e?1:0))>0,CEe=class{constructor(A,e){GA(this,"pool"),GA(this,"entries",{}),this.pool=new Ode.default(A,e)}all(){let A=(e)=>{if(e.data.result){let[t,r]=e.data.result;this.entries[t]=r}};return this.pool.addEventListener("fulfilled",A),this.pool.start().then(()=>(setTimeout(()=>{this.pool.removeEventListener("fulfilled",A)}),Object.values(this.entries)))}},l_=(A)=>A.replace(/"/g,"&quot;"),wIA=(A)=>Array.isArray(A)?A:[A],xg=(A)=>!!A&&A.type==="image"&&!!A.fileId,Ni=(A)=>!!A&&A.type==="image",Js=(A)=>!!A&&A.type==="embeddable",Rh=(A)=>!!A&&A.type==="iframe",bg=(A)=>!!A&&(A.type==="iframe"||A.type==="embeddable"),Bt=(A)=>A!=null&&A.type==="text",bIA=(A)=>A!=null&&A.type==="frame",K8=(A)=>A!=null&&A.type==="magicframe",nr=(A)=>A!=null&&(A.type==="frame"||A.type==="magicframe"),Lc=(A)=>A!=null&&t$t(A.type),t$t=(A)=>A==="freedraw",Gr=(A)=>A!=null&&K_(A.type),Jr=(A)=>A!=null&&A.type==="arrow",pt=(A)=>Jr(A)&&A.elbowed,K_=(A)=>A==="arrow"||A==="line",jC=(A,e=!0)=>A!=null&&(!A.locked||e===!0)&&vIA(A.type),vIA=(A)=>A==="arrow",Rc=(A,e=!0)=>A!=null&&(!A.locked||e===!0)&&(A.type==="rectangle"||A.type==="diamond"||A.type==="ellipse"||A.type==="image"||A.type==="iframe"||A.type==="embeddable"||A.type==="frame"||A.type==="magicframe"||A.type==="text"&&!A.containerId),r$t=(A)=>A!=null&&(A.type==="rectangle"||A.type==="diamond"||A.type==="image"||A.type==="iframe"||A.type==="embeddable"||A.type==="frame"||A.type==="magicframe"||A.type==="text"&&!A.containerId),P1=(A,e=!0)=>A!=null&&(!A.locked||e===!0)&&(A.type==="rectangle"||A.type==="diamond"||A.type==="ellipse"||Jr(A)),kIA=(A)=>{let e=A?.type;if(!e)return!1;switch(e){case"text":case"diamond":case"rectangle":case"iframe":case"embeddable":case"ellipse":case"arrow":case"freedraw":case"line":case"frame":case"magicframe":case"image":case"selection":return!0;default:return O1(e,null),!1}},J8=(A)=>A.type==="rectangle"||A.type==="ellipse"||A.type==="diamond",Ul=(A)=>P1(A)&&!!A.boundElements?.some(({type:e})=>e==="text"),Tu=(A)=>A!==null&&("containerId"in A)&&A.containerId!==null&&Bt(A),r2=(A)=>A==="rectangle"||A==="embeddable"||A==="iframe"||A==="image",oIe=(A)=>A==="line"||A==="arrow"||A==="diamond",sIe=(A,e)=>!!((A===mn.ADAPTIVE_RADIUS||A===mn.LEGACY)&&r2(e.type)||A===mn.PROPORTIONAL_RADIUS&&oIe(e.type)),lIe=(A)=>oIe(A.type)?{type:mn.PROPORTIONAL_RADIUS}:r2(A.type)?{type:mn.ADAPTIVE_RADIUS}:null,f_=(A)=>Object.hasOwn(A,"fixedPoint")&&A.fixedPoint!=null,y0=(A,e,t)=>{let r=A.split(`
`).map((a)=>a||" ").join(`
`),i=parseFloat(e),u=a$t(r,i,t);return{width:O_(r,e),height:u}},gIe,FIA=(A,e)=>{let t=n$t(A);return t===0?y0(gIe.split("").join(`
`),A,e).width+pn*2:t+pn*2},J_=(A,e)=>y0("",A,e).width+pn*2,cIe=()=>O_(gIe,cu({fontSize:cd,fontFamily:Lh}))>0,i2=(A)=>yIA(A).replace(/\t/g," "),xIA=(A)=>i2(A).split(`
`),i$t=(A)=>{let e=xIA(A.text).length;return A.height/e/A.fontSize},w9=(A,e)=>A*e,SIA=(A,e)=>w9(A,e)+pn*2,SdA,u$t=class{constructor(){GA(this,"canvas"),this.canvas=document.createElement("canvas")}getLineWidth(A,e){let t=this.canvas.getContext("2d");t.font=e;let r=t.measureText(A).width;return Cd()?r*10:r}},Pm=(A,e)=>(SdA||(SdA=new u$t),SdA.getLineWidth(A,e)),O_=(A,e)=>{let t=xIA(A),r=0;return t.forEach((i)=>{r=Math.max(r,Pm(i,e))}),r},a$t=(A,e,t)=>{let r=xIA(A).length;return w9(e,t)*r},O8,n$t=(A)=>{let e=O8.getCache(A);if(!e)return 0;let t=e.filter((r)=>r!==void 0);return Math.max(...t)},LdA,a_,RdA,o$t=(A)=>(LdA||(LdA=ru.class(...Object.values(bh))),LdA.test(A)),s$t=()=>{if(!a_)try{a_=g$t()}catch{a_=l$t()}return a_},LIA=()=>(RdA||(RdA=c$t()),RdA),bc,bh,Mm,l$t=()=>ru.or(LIA(),An.On(bc.HYPHEN,bc.WHITESPACE,bh.CHAR)),g$t=()=>ru.or(LIA(),An.Before(bc.WHITESPACE).Build(),An.After(bc.WHITESPACE,bc.HYPHEN).Build(),An.Before(bh.CHAR,bh.CURRENCY).NotPrecededBy(bc.OPENING,bh.OPENING).Build(),An.After(bh.CHAR).NotFollowedBy(bc.HYPHEN,bc.CLOSING,bh.CLOSING).Build(),An.BeforeMany(bh.OPENING).NotPrecededBy(bc.OPENING).Build(),An.AfterMany(bh.CLOSING).NotFollowedBy(bc.CLOSING).Build(),An.AfterMany(bc.CLOSING).FollowedBy(bc.OPENING).Build()),c$t=()=>ru.group(ru.or(Mm.FLAG,ru.and(Mm.MOST,Mm.JOINER,ru.build(`(?:${Mm.ZWJ.source}(?:${Mm.FLAG.source}|${Mm.ANY.source}${Mm.JOINER.source}))*`)))),ru,An,C$t=(A)=>{let e=s$t();return A.normalize("NFC").split(e).filter(Boolean)},_1=(A,e,t)=>{if(!Number.isFinite(t)||t<0)return A;let r=[],i=A.split(`
`);for(let u of i){if(Pm(u,e)<=t){r.push(u);continue}let a=B$t(u,e,t);r.push(...a)}return r.join(`
`)},B$t=(A,e,t)=>{let r=[],i=C$t(A)[Symbol.iterator](),u="",a=0,n=i.next();for(;!n.done;){let o=n.value,s=u+o,l=I$t(o)?a+O8.calculate(o,e):Pm(s,e);if(/\s/.test(o)||l<=t){u=s,a=l,n=i.next();continue}if(u)r.push(u.trimEnd()),u="",a=0;else{let g=E$t(o,e,t),C=g[g.length-1]??"",B=g.slice(0,-1);r.push(...B),u=C,a=Pm(C,e),n=i.next()}}if(u){let o=d$t(u,e,t);r.push(o)}return r},E$t=(A,e,t)=>{if(LIA().test(A))return[A];h$t(A);let r=[],i=Array.from(A),u="",a=0;for(let n of i){let o=O8.calculate(n,e),s=a+o;if(s<=t){u=u+n,a=s;continue}u&&r.push(u),u=n,a=o}return u&&r.push(u),r},d$t=(A,e,t)=>{if(!(Pm(A,e)>t))return A;let[,r,i]=A.match(/^(.+?)(\s+)$/)??[A,A.trimEnd(),""],u=Pm(r,e);for(let a of Array.from(i)){let n=O8.calculate(a,e),o=u+n;if(o>t)break;r=r+a,u=o}return r},I$t=(A)=>A.codePointAt(0)!==void 0&&A.codePointAt(1)===void 0,h$t=(A)=>{if((fr.MODE===Ys.TEST||fr.DEV)&&/\s/.test(A))throw Error("Word should not contain any whitespaces!")},Us=class{},na,ZC=(A)=>"var(--icon-fill-color)",CIe=(A)=>A===ei.LIGHT?ua.white:"#1e1e1e",ge=(A,e=512)=>{let{width:t=512,height:r=t,mirror:i,style:u,...a}=typeof e=="number"?{width:e}:e;return N("svg",{"aria-hidden":"true",focusable:"false",role:"img",viewBox:`0 0 ${t} ${r}`,className:Se({"rtl-mirror":i}),style:u,...a,children:typeof A=="string"?N("path",{fill:"currentColor",d:A}):A})},ct,Hr,lyi,P_,BIe,EIe,dIe,P8,__,IIe,hIe,QIe,gyi,Q$t,p$t,f$t,m$t,D$t,y$t,pIe,g9,RIA,w$t,b$t,NIA,GIA,fIe,W1,mIe,W_,q_,z_,UIA,_8,Z_,DIe,MIA,TIA,yIe,wIe,bIe,V_,vIe,kIe,j_,cyi,FIe,X_,YIA,xIe,Cyi,Byi,SIe,Eyi,HIA,KIA,LIe,RIe,dyi,Iyi,hyi,Qyi,pyi,NIe,GIe,JIA,OIA,PIA,_IA,WIA,qIA,zIA,ZIA,UIe,MIe,VIA,jIA,XIA,fyi,myi,u2,Dyi,yyi,wyi,$IA,AhA,TIe,YIe,HIe,KIe,ehA,JIe,OIe,byi,PIe,_Ie,WIe,qIe,zIe,ZIe,VIe,jIe,XIe,$Ie,Ahe,ehe,the,rhe,ihe,uhe,ahe,nhe,ohe,she,lhe,ghe,che,W8,v$t,m8,m_,Che,Bhe,Ehe,dhe,Ihe,hhe,thA,Qhe,vyi,rhA,ihA,$_,phe,fhe,kyi,Fyi,mhe,Dhe,yhe,whe,uhA,ahA,q8,nhA,ohA,xyi,Syi,bhe,AW,vhe,khe,Fhe,q1,xhe,She,Lhe,shA,Rhe,Nhe,Ghe,Uhe,lhA,eW,Mhe,The,Yhe,Hhe,Khe,Lyi,Jhe,Ohe,Phe,_he,Whe,qhe,ghA,zhe,Zhe,chA,ChA,D_,Tm,BhA="local:",k$t,z8,F1,F$t,Vhe,jhe,BEe,x$t=class{constructor(A){GA(this,"instance"),GA(this,"debounceTerminate"),this.instance=new Worker(A,{type:"module"})}},S$t=class A{constructor(e,t){GA(this,"idleWorkers",new Set),GA(this,"workerUrl"),GA(this,"workerTTL"),this.workerUrl=e,this.workerTTL=t.ttl||1000}static create(e,t={}){if(!e)throw new Vhe;if(!import.meta.url||e.toString()===import.meta.url)throw new jhe;return new A(e,t)}async postMessage(e,t){let r,i=Array.from(this.idleWorkers).shift();return i?(this.idleWorkers.delete(i),r=i):r=await this.createWorker(),new Promise((u,a)=>{r.instance.onmessage=this.onMessageHandler(r,u),r.instance.onerror=this.onErrorHandler(r,a),r.instance.postMessage(e,t),r.debounceTerminate(()=>a(Error(`Active worker did not respond for ${this.workerTTL}ms!`)))})}async clear(){for(let e of this.idleWorkers)e.debounceTerminate.cancel(),e.instance.terminate();this.idleWorkers.clear()}async createWorker(){let e=new x$t(this.workerUrl);return e.debounceTerminate=t2((t)=>{e.instance.terminate(),this.idleWorkers.has(e)?(this.idleWorkers.delete(e),console.debug("Job finished! Idle worker has been released from the pool.")):t?t():console.error("Worker has been terminated!")},this.workerTTL),e}onMessageHandler(e,t){return(r)=>{e.debounceTerminate(),this.idleWorkers.add(e),t(r.data)}}onErrorHandler(e,t){return(r)=>{e.debounceTerminate(()=>t(r)),e.debounceTerminate.flush(),this.clear()}}},EEe,L$t=async(A,e)=>{let{Commands:t,subsetToBase64:r,toBase64:i}=await N$t();return EEe?Om(async()=>{try{let u=await G$t(),a=A.slice(0),n=await u.postMessage({command:t.Subset,arrayBuffer:a,codePoints:e},{transfer:[a]});return i(n)}catch(u){return EEe=!1,A$t()&&(u instanceof Vhe||u instanceof jhe)||console.error("Failed to use workers for subsetting, falling back to the main thread.",u),r(A,e)}}):r(A,e)},NdA=null,GdA=null,R$t=async()=>(NdA||(NdA=Promise.resolve().then(() => (_Be(),PBe))),NdA),N$t=async()=>(GdA||(GdA=Promise.resolve().then(() => (qBe(),WBe))),GdA),UdA=null,G$t=()=>(UdA||(UdA=Om(async()=>{let{WorkerUrl:A}=await R$t();return S$t.create(A)})),UdA),Xhe=class A{constructor(e,t,r){GA(this,"urls"),GA(this,"fontFace"),this.urls=A.createUrls(t);let i=this.urls.map((u)=>`url(${u}) ${A.getFormat(u)}`).join(", ");this.fontFace=new FontFace(e,i,{display:"swap",style:"normal",weight:"400",...r})}toCSS(e){if(!this.getUnicodeRangeRegex().test(e))return;let t=Array.from(e).map((r)=>r.codePointAt(0));return this.getContent(t).then((r)=>`@font-face { font-family: ${this.fontFace.family}; src: url(${r}); }`)}async getContent(e){let t=0,r=[];for(;t<this.urls.length;){let i=this.urls[t];try{let u=await this.fetchFont(i);return await L$t(u,e)}catch(u){r.push(`"${i.toString()}" returned error "${u}"`)}t++}return console.error(`Failed to fetch font family "${this.fontFace.family}"`,JSON.stringify(r,void 0,2)),this.urls.length?this.urls[this.urls.length-1].toString():""}fetchFont(e){return Om(async()=>{let t=await fetch(e,{cache:"force-cache",headers:{Accept:"font/woff2"}});if(!t.ok){let r=e instanceof URL?e.toString():"dataurl";throw Error(`Failed to fetch "${r}": ${t.statusText}`)}return await t.arrayBuffer()})}getUnicodeRangeRegex(){let e=this.fontFace.unicodeRange.split(/,\s*/).map((t)=>{let[r,i]=t.replace("U+","").split("-");return i?`\\u{${r}}-\\u{${i}}`:`\\u{${r}}`}).join("");return new RegExp(`[${e}]`,"u")}static createUrls(e){if(e.startsWith("data"))return[e];if(e.startsWith(BhA))return[];if(e.startsWith("http"))return[new URL(e)];let t=e.replace(/^\/+/,""),r=[];if(typeof window.EXCALIDRAW_ASSET_PATH=="string"){let i=this.normalizeBaseUrl(window.EXCALIDRAW_ASSET_PATH);r.push(new URL(t,i))}else Array.isArray(window.EXCALIDRAW_ASSET_PATH)&&window.EXCALIDRAW_ASSET_PATH.forEach((i)=>{let u=this.normalizeBaseUrl(i);r.push(new URL(t,u))});return r.push(new URL(t,A.ASSETS_FALLBACK_URL)),r}static getFormat(e){if(!(e instanceof URL))return"";try{let t=new URL(e).pathname.split(".");return t.length===1?"":`format('${t.pop()}')`}catch{return""}}static normalizeBaseUrl(e){let t=e;return/^\.?\//.test(t)&&(t=new URL(t.replace(/^\.?\/+/,""),window?.location?.origin).toString()),t=`${t.replace(/\/+$/,"")}/`,t}},U$t,M$t="./fonts/Cascadia/CascadiaCode-Regular.woff2",T$t,Y$t="./fonts/ComicShanns/ComicShanns-Regular-279a7b317d12eb88de06167bd672b4b4.woff2",H$t="./fonts/ComicShanns/ComicShanns-Regular-fcb0fc02dcbee4c9846b3e2508668039.woff2",K$t="./fonts/ComicShanns/ComicShanns-Regular-dc6a8806fa96795d7b3be5026f989a17.woff2",J$t="./fonts/ComicShanns/ComicShanns-Regular-6e066e8de2ac57ea9283adb9c24d7f0c.woff2",O$t,P$t,_$t="./fonts/Excalifont/Excalifont-Regular-a88b72a24fb54c9f94e3b5fdaa7481c9.woff2",W$t="./fonts/Excalifont/Excalifont-Regular-be310b9bcd4f1a43f571c46df7809174.woff2",q$t="./fonts/Excalifont/Excalifont-Regular-b9dcf9d2e50a1eaf42fc664b50a3fd0d.woff2",z$t="./fonts/Excalifont/Excalifont-Regular-41b173a47b57366892116a575a43e2b6.woff2",Z$t="./fonts/Excalifont/Excalifont-Regular-3f2c5db56cc93c5a6873b1361d730c16.woff2",V$t="./fonts/Excalifont/Excalifont-Regular-349fac6ca4700ffec595a7150a0d1e1d.woff2",j$t="./fonts/Excalifont/Excalifont-Regular-623ccf21b21ef6b3a0d87738f77eb071.woff2",X$t,$$t,AAr="./fonts/Liberation/LiberationSans-Regular.woff2",eAr,tAr="./fonts/Lilita/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYEF8RXi4EwQ.woff2",rAr="./fonts/Lilita/Lilita-Regular-i7dPIFZ9Zz-WBtRtedDbYE98RXi4EwSsbg.woff2",iAr,uAr="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTQ3j6zbXWjgeg.woff2",aAr="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTo3j6zbXWjgevT5.woff2",nAr="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTA3j6zbXWjgevT5.woff2",oAr="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTk3j6zbXWjgevT5.woff2",sAr="./fonts/Nunito/Nunito-Regular-XRXI3I6Li01BKofiOc5wtlZ2di8HDIkhdTs3j6zbXWjgevT5.woff2",lAr,gAr="./fonts/Virgil/Virgil-Regular.woff2",cAr,CAr="./fonts/Xiaolai/Xiaolai-Regular-09850c4077f3fffe707905872e0e2460.woff2",BAr="./fonts/Xiaolai/Xiaolai-Regular-7eb9fffd1aa890d07d0f88cc82e6cfe4.woff2",EAr="./fonts/Xiaolai/Xiaolai-Regular-60a3089806700d379f11827ee9843b6b.woff2",dAr="./fonts/Xiaolai/Xiaolai-Regular-6fe5c5973cc06f74b2387a631ea36b88.woff2",IAr="./fonts/Xiaolai/Xiaolai-Regular-b96d9226ce77ec94ceca043d712182e6.woff2",hAr="./fonts/Xiaolai/Xiaolai-Regular-6ae5b42180ad70b971c91e7eefb8eba2.woff2",QAr="./fonts/Xiaolai/Xiaolai-Regular-a4c34be6d42152e64b0df90bc4607f64.woff2",pAr="./fonts/Xiaolai/Xiaolai-Regular-c69f61a4ab18d0488c8d1fc12e7028e8.woff2",fAr="./fonts/Xiaolai/Xiaolai-Regular-e3fcf5180fd466c8915c4e8069491054.woff2",mAr="./fonts/Xiaolai/Xiaolai-Regular-c1f94158256bb1f3bf665b053d895af9.woff2",DAr="./fonts/Xiaolai/Xiaolai-Regular-544fc28abe2c5c30e62383fd4dac255f.woff2",yAr="./fonts/Xiaolai/Xiaolai-Regular-7197d6fda6cba7c3874c53d6381ca239.woff2",wAr="./fonts/Xiaolai/Xiaolai-Regular-70c2eb8d64e71a42a834eb857ea9df51.woff2",bAr="./fonts/Xiaolai/Xiaolai-Regular-069e77aac84590e2e991d0a0176d34f2.woff2",vAr="./fonts/Xiaolai/Xiaolai-Regular-41521fade99856108931b4768b1b2648.woff2",kAr="./fonts/Xiaolai/Xiaolai-Regular-a004ddfcb26e67bd6e678c8ed19e25ce.woff2",FAr="./fonts/Xiaolai/Xiaolai-Regular-04b718e5623574919c8b0dea5f301444.woff2",xAr="./fonts/Xiaolai/Xiaolai-Regular-7e4bde7e9c7f84cd34d8a845e384c746.woff2",SAr="./fonts/Xiaolai/Xiaolai-Regular-23686f7f29da6e8008c36dd3a80c83d6.woff2",LAr="./fonts/Xiaolai/Xiaolai-Regular-69c09cc5fa3e55c74fc4821f76909cc3.woff2",RAr="./fonts/Xiaolai/Xiaolai-Regular-25b7f38e18f035f96cb5e547bd2bd08c.woff2",NAr="./fonts/Xiaolai/Xiaolai-Regular-ba3de316d63c7e339987b16f41a0b879.woff2",GAr="./fonts/Xiaolai/Xiaolai-Regular-12b52b58eb3df36804b9a654ec9ee194.woff2",UAr="./fonts/Xiaolai/Xiaolai-Regular-b1220a3c61f85cc0408deedb4c5f57a2.woff2",MAr="./fonts/Xiaolai/Xiaolai-Regular-4535823663ad81405188a528d8f2b1a2.woff2",TAr="./fonts/Xiaolai/Xiaolai-Regular-3eaa538115d76932653c21d8dc28f207.woff2",YAr="./fonts/Xiaolai/Xiaolai-Regular-7e929f262f30c8ee78bf398150b1a7cd.woff2",HAr="./fonts/Xiaolai/Xiaolai-Regular-73e309718fd16cea44b4d54a33581811.woff2",KAr="./fonts/Xiaolai/Xiaolai-Regular-9eb5a99df4e76ac3363453ac9ca288b1.woff2",JAr="./fonts/Xiaolai/Xiaolai-Regular-3e63ed8162808a9e425ed80a8bc79114.woff2",OAr="./fonts/Xiaolai/Xiaolai-Regular-cb17fc3db95f6d139afc9d31a8e93293.woff2",PAr="./fonts/Xiaolai/Xiaolai-Regular-c8b71798409ccc126ee264a00aadcf21.woff2",_Ar="./fonts/Xiaolai/Xiaolai-Regular-11c345711937f0ba4b8f7b6b919c8440.woff2",WAr="./fonts/Xiaolai/Xiaolai-Regular-e480d9c614742d05f0e78f274f1e69e6.woff2",qAr="./fonts/Xiaolai/Xiaolai-Regular-95429962233afd82db1c27df1500a28c.woff2",zAr="./fonts/Xiaolai/Xiaolai-Regular-2cf96d082d35ea3d8106851223ad0d16.woff2",ZAr="./fonts/Xiaolai/Xiaolai-Regular-2d43040e86ff03ba677f6f9c04cd0805.woff2",VAr="./fonts/Xiaolai/Xiaolai-Regular-2a26d20a23b00898ce82f09d2ee47c3f.woff2",jAr="./fonts/Xiaolai/Xiaolai-Regular-a365e82ed54697a52f27adcea1315fe8.woff2",XAr="./fonts/Xiaolai/Xiaolai-Regular-f5d079153c99a25b9be5b8583c4cc8a7.woff2",$Ar="./fonts/Xiaolai/Xiaolai-Regular-10a7ae9a371830a80c3d844acf1c02d7.woff2",Aer="./fonts/Xiaolai/Xiaolai-Regular-e4bca6cfa53e499cae0a6be4894a90e9.woff2",eer="./fonts/Xiaolai/Xiaolai-Regular-60a41c7e1c68f22424e6d22df544bc82.woff2",ter="./fonts/Xiaolai/Xiaolai-Regular-7ab2bed91166a9dca83a5ebfbe2a7f38.woff2",rer="./fonts/Xiaolai/Xiaolai-Regular-670ba603758d94268e8606f240a42e12.woff2",ier="./fonts/Xiaolai/Xiaolai-Regular-e656f091b9dc4709722c9f4b84d3c797.woff2",uer="./fonts/Xiaolai/Xiaolai-Regular-15dc6d811c9cd078f9086a740d5a1038.woff2",aer="./fonts/Xiaolai/Xiaolai-Regular-f0f13b5c60e0af5553bd359f5513be1b.woff2",ner="./fonts/Xiaolai/Xiaolai-Regular-8c2f33cee3993174f7e87c28e4bf42ee.woff2",oer="./fonts/Xiaolai/Xiaolai-Regular-761d05e3cd968cf574166867998ef06a.woff2",ser="./fonts/Xiaolai/Xiaolai-Regular-642b26e2e5f5fb780b51b593dbc8c851.woff2",ler="./fonts/Xiaolai/Xiaolai-Regular-5572b3513ba8df57a3d5d7303ee6b11b.woff2",ger="./fonts/Xiaolai/Xiaolai-Regular-3c9de2ae0ea4bc91a510942dfa4be8d2.woff2",cer="./fonts/Xiaolai/Xiaolai-Regular-671a2c20b1eb9e4ef8a192833940e319.woff2",Cer="./fonts/Xiaolai/Xiaolai-Regular-4dc6d5f188d5c96d44815cd1e81aa885.woff2",Ber="./fonts/Xiaolai/Xiaolai-Regular-ce4884f96f11589608b76b726a755803.woff2",Eer="./fonts/Xiaolai/Xiaolai-Regular-8f476c4c99813d57cbe6eca4727388ad.woff2",der="./fonts/Xiaolai/Xiaolai-Regular-5935a5775af3d5c6307ac667bd9ae74e.woff2",Ier="./fonts/Xiaolai/Xiaolai-Regular-79f007c1c6d07557120982951ea67998.woff2",her="./fonts/Xiaolai/Xiaolai-Regular-bafff7a14c27403dcc6cf1432e8ea836.woff2",Qer="./fonts/Xiaolai/Xiaolai-Regular-543fa46ace099a7099dad69123399400.woff2",per="./fonts/Xiaolai/Xiaolai-Regular-4ddc14ed3eb0c3e46364317dfc0144a3.woff2",fer="./fonts/Xiaolai/Xiaolai-Regular-0fa55a080fcd0f9dc2e0b0058b793df8.woff2",mer="./fonts/Xiaolai/Xiaolai-Regular-66493ba5a8367f2928812f446f47b56a.woff2",Der="./fonts/Xiaolai/Xiaolai-Regular-57862b464a55b18c7bf234ce22907d73.woff2",yer="./fonts/Xiaolai/Xiaolai-Regular-8d3bcabb847b56243b16afe62adaaf21.woff2",wer="./fonts/Xiaolai/Xiaolai-Regular-2b77e8ebfb2367ab2662396a60e7d320.woff2",ber="./fonts/Xiaolai/Xiaolai-Regular-0b5d723fdc4e249c140f0909e87d03b4.woff2",ver="./fonts/Xiaolai/Xiaolai-Regular-cdbce89e82cc1ab53a2decbf5819278f.woff2",ker="./fonts/Xiaolai/Xiaolai-Regular-739bc1a567439c7cffcd1614644593d2.woff2",Fer="./fonts/Xiaolai/Xiaolai-Regular-72252d73220fa3cd856677888cee1635.woff2",xer="./fonts/Xiaolai/Xiaolai-Regular-08e0dc436ad0ad61ba5558db0674d762.woff2",Ser="./fonts/Xiaolai/Xiaolai-Regular-cf6ff4e0f491ca0cf3038187a997b9b4.woff2",Ler="./fonts/Xiaolai/Xiaolai-Regular-9cfb2a77a4e45025105ad29a1748b90d.woff2",Rer="./fonts/Xiaolai/Xiaolai-Regular-450da755d5bcb70906e1295e559b9602.woff2",Ner="./fonts/Xiaolai/Xiaolai-Regular-0986d134c05864f5025962eef9f994a0.woff2",Ger="./fonts/Xiaolai/Xiaolai-Regular-1ee544f0f1dac422545c505baa788992.woff2",Uer="./fonts/Xiaolai/Xiaolai-Regular-4806e761d750087c2d734fc64596eaff.woff2",Mer="./fonts/Xiaolai/Xiaolai-Regular-33432927cd87d40cfe393c7482bf221f.woff2",Ter="./fonts/Xiaolai/Xiaolai-Regular-be549ab72f0719d606a5c01e2c0219b6.woff2",Yer="./fonts/Xiaolai/Xiaolai-Regular-019d66dcad46dc156b162d267f981c20.woff2",Her="./fonts/Xiaolai/Xiaolai-Regular-b5c1596551c256e0e9cf02028595b092.woff2",Ker="./fonts/Xiaolai/Xiaolai-Regular-e5f453bb04da18eed01675eeebd88bf8.woff2",Jer="./fonts/Xiaolai/Xiaolai-Regular-cf2cc71752631e579e35b0e423bf2638.woff2",Oer="./fonts/Xiaolai/Xiaolai-Regular-6f3256af8454371776bc46670d33cc65.woff2",Per="./fonts/Xiaolai/Xiaolai-Regular-23f228f3999c01983860012330e4be08.woff2",_er="./fonts/Xiaolai/Xiaolai-Regular-21430ee05a1248901da8d0de08744d47.woff2",Wer="./fonts/Xiaolai/Xiaolai-Regular-5330a2119a716e4e7224ed108b085dac.woff2",qer="./fonts/Xiaolai/Xiaolai-Regular-cd145ce4a0ea18469358df53c207bc1b.woff2",zer="./fonts/Xiaolai/Xiaolai-Regular-36925dfe329a45086cbb7fc5c20d45ac.woff2",Zer="./fonts/Xiaolai/Xiaolai-Regular-4bfaa8ffa64c5ee560aa2daba7c9cbd3.woff2",Ver="./fonts/Xiaolai/Xiaolai-Regular-112c051027b2d766c19a519f6ee1f4f7.woff2",jer="./fonts/Xiaolai/Xiaolai-Regular-5b0ed6971aaab9c8ad563230bd5471a7.woff2",Xer="./fonts/Xiaolai/Xiaolai-Regular-98f2ad84457de7f3740d9920b8fa8667.woff2",$er="./fonts/Xiaolai/Xiaolai-Regular-733171b4ffcd17ea1fe1c0ba627173bf.woff2",Atr="./fonts/Xiaolai/Xiaolai-Regular-684d65f1793cac449dde5d59cb3c47fb.woff2",etr="./fonts/Xiaolai/Xiaolai-Regular-cbaaefaaf326668277aa24dfa93c4d28.woff2",ttr="./fonts/Xiaolai/Xiaolai-Regular-58fd02350d0bc52cf1ca3bb32ce9766e.woff2",rtr="./fonts/Xiaolai/Xiaolai-Regular-7ccce86603f80a099ddb0cb21d4ae3e3.woff2",itr="./fonts/Xiaolai/Xiaolai-Regular-3717077e38f98d89eae729b6c14e56dc.woff2",utr="./fonts/Xiaolai/Xiaolai-Regular-dbea1af6dcd9860be40c3d18254338f5.woff2",atr="./fonts/Xiaolai/Xiaolai-Regular-4a0fdb40036e87b40aa08dd30584cb85.woff2",ntr="./fonts/Xiaolai/Xiaolai-Regular-0f626226ba1272e832aea87bafd9720e.woff2",otr="./fonts/Xiaolai/Xiaolai-Regular-938d90c10ff8c20386af7f242c05d6b0.woff2",str="./fonts/Xiaolai/Xiaolai-Regular-b6d128682ee29e471486354d486a1b90.woff2",ltr="./fonts/Xiaolai/Xiaolai-Regular-e51ef413167c6e14e0c0fdcc585f2fc9.woff2",gtr="./fonts/Xiaolai/Xiaolai-Regular-9d81066dd2b337c938df6e90380a00dc.woff2",ctr="./fonts/Xiaolai/Xiaolai-Regular-20e7bf72fa05de9adf7dbcc7bf51dde6.woff2",Ctr="./fonts/Xiaolai/Xiaolai-Regular-4095eb84ef3874e2600247bee0b04026.woff2",Btr="./fonts/Xiaolai/Xiaolai-Regular-4ee10ae43505e2e0bc62656ced49c0fa.woff2",Etr="./fonts/Xiaolai/Xiaolai-Regular-7494dc504ae00ee9cd0505f990f88c5d.woff2",dtr="./fonts/Xiaolai/Xiaolai-Regular-8de5b863cb50dfefdd07cb11c774d579.woff2",Itr="./fonts/Xiaolai/Xiaolai-Regular-3e1f8f654357353bf0e04ba5c34b5f7f.woff2",htr="./fonts/Xiaolai/Xiaolai-Regular-2e33e8dc771ef5e1d9127d60a6b73679.woff2",Qtr="./fonts/Xiaolai/Xiaolai-Regular-173945821411c09f70c95f98d590e697.woff2",ptr="./fonts/Xiaolai/Xiaolai-Regular-b358f7a51ece39a3247942b1feabdb29.woff2",ftr="./fonts/Xiaolai/Xiaolai-Regular-23ad2d71b280f00b1363b95b7bea94eb.woff2",mtr="./fonts/Xiaolai/Xiaolai-Regular-5882ffa04f32584d26109137e2da4352.woff2",Dtr="./fonts/Xiaolai/Xiaolai-Regular-a203b91dad570bf05a58c3c3ddb529bf.woff2",ytr="./fonts/Xiaolai/Xiaolai-Regular-bd77e3c7f9e0b072d96af37f73d1aa32.woff2",wtr="./fonts/Xiaolai/Xiaolai-Regular-5a45d991244d4c7140217e1e5f5ca4f4.woff2",btr="./fonts/Xiaolai/Xiaolai-Regular-f56414bf9bced67990def8660e306759.woff2",vtr="./fonts/Xiaolai/Xiaolai-Regular-583d166e56ba0de4b77eabb47ef67839.woff2",ktr="./fonts/Xiaolai/Xiaolai-Regular-7f855356ab893b0d2b9c1c83b8116f0e.woff2",Ftr="./fonts/Xiaolai/Xiaolai-Regular-b57aaedfd8ebdf3931f25119dc6a5eb2.woff2",xtr="./fonts/Xiaolai/Xiaolai-Regular-b6fd38ca30869792244804b04bc058da.woff2",Str="./fonts/Xiaolai/Xiaolai-Regular-452225341522a7942f0f6aab1a5c91a3.woff2",Ltr="./fonts/Xiaolai/Xiaolai-Regular-866fa7613df6b3fd272bcfd4530c0bb9.woff2",Rtr="./fonts/Xiaolai/Xiaolai-Regular-52a84a22fd1369bffeaf21da2d6158dc.woff2",Ntr="./fonts/Xiaolai/Xiaolai-Regular-829615148e6357d826b9242eb7fbbd1e.woff2",Gtr="./fonts/Xiaolai/Xiaolai-Regular-c99eda15fc26a2941579560f76c3a5cf.woff2",Utr="./fonts/Xiaolai/Xiaolai-Regular-395c35dd584b56b0789f58a0559beaf1.woff2",Mtr="./fonts/Xiaolai/Xiaolai-Regular-203b0e569e3b14aac86a003dc3fa523e.woff2",Ttr="./fonts/Xiaolai/Xiaolai-Regular-51a0e808bbc8361236ac521a119758a3.woff2",Ytr="./fonts/Xiaolai/Xiaolai-Regular-6e092f71c1e634059ada0e52abadce67.woff2",Htr="./fonts/Xiaolai/Xiaolai-Regular-0f7fb1e0d5015bb1371343153ecf7ce3.woff2",Ktr="./fonts/Xiaolai/Xiaolai-Regular-d0cf73942fea1c74edbdf0b3011f4656.woff2",Jtr="./fonts/Xiaolai/Xiaolai-Regular-968cffdc8ee679da094e77ebf50f58ef.woff2",Otr="./fonts/Xiaolai/Xiaolai-Regular-7a07ddc0f0c0f5f4a9bad6ee3dda66b5.woff2",Ptr="./fonts/Xiaolai/Xiaolai-Regular-ec181b795ac1fb5a50d700b6e996d745.woff2",_tr="./fonts/Xiaolai/Xiaolai-Regular-cfb211578629b7e8153b37240de6a9d5.woff2",Wtr="./fonts/Xiaolai/Xiaolai-Regular-59e9ff77b0efaf684bc09274fb6908c9.woff2",qtr="./fonts/Xiaolai/Xiaolai-Regular-2adbc89c11e65905393d3dfc468b9d5b.woff2",ztr="./fonts/Xiaolai/Xiaolai-Regular-70e811fd7994e61f408c923de6ddd078.woff2",Ztr="./fonts/Xiaolai/Xiaolai-Regular-c4a687ac4f0c2766eefc9f77ed99cddf.woff2",Vtr="./fonts/Xiaolai/Xiaolai-Regular-51502f1206be09c565f1547c406e9558.woff2",jtr="./fonts/Xiaolai/Xiaolai-Regular-1fdc0c67ed57263a80fd108c1f6ccf24.woff2",Xtr="./fonts/Xiaolai/Xiaolai-Regular-e11567fd2accf9957cd0d3c2be937d87.woff2",$tr="./fonts/Xiaolai/Xiaolai-Regular-20cc1bbf50e7efb442756cb605672c1f.woff2",Arr="./fonts/Xiaolai/Xiaolai-Regular-5d2898fbc097a7e24c6f38d80587621e.woff2",err="./fonts/Xiaolai/Xiaolai-Regular-ac9ceb44437becc3e9c4dbfebab7fc2d.woff2",trr="./fonts/Xiaolai/Xiaolai-Regular-c16ed9740b85badf16e86ea782a3062f.woff2",rrr="./fonts/Xiaolai/Xiaolai-Regular-aa0d470430e6391eca720c7cfa44446f.woff2",irr="./fonts/Xiaolai/Xiaolai-Regular-f2b54d4e7be0eaefe1c2c56836fa5368.woff2",urr="./fonts/Xiaolai/Xiaolai-Regular-99a16ef6a64934d5781933dbd9c46b2e.woff2",arr="./fonts/Xiaolai/Xiaolai-Regular-c40533fdf4cc57177b12803598af7e59.woff2",nrr="./fonts/Xiaolai/Xiaolai-Regular-91ddb2969bf2d31ba02ad82998d1314c.woff2",orr="./fonts/Xiaolai/Xiaolai-Regular-774d4f764a1299da5d28ec2f2ffe0d69.woff2",srr="./fonts/Xiaolai/Xiaolai-Regular-7718fe60986d8b42b1be9c5ace5ccf25.woff2",lrr="./fonts/Xiaolai/Xiaolai-Regular-aa5c9ca6cf4fba00433b7aa3fa10671a.woff2",grr="./fonts/Xiaolai/Xiaolai-Regular-4f50e5136e136527280bc902c5817561.woff2",crr="./fonts/Xiaolai/Xiaolai-Regular-093b9ef39a46ceae95a1df18a0a3a326.woff2",Crr="./fonts/Xiaolai/Xiaolai-Regular-a0ca5df4258213d7fc9fce80f65ce760.woff2",Brr="./fonts/Xiaolai/Xiaolai-Regular-d2666cbed13462c5dc36fa2f15c202ca.woff2",Err="./fonts/Xiaolai/Xiaolai-Regular-1e6fd68f1f3902ce48ce8c69df385622.woff2",drr="./fonts/Xiaolai/Xiaolai-Regular-87599f94b6cc129d505b375798d0d751.woff2",Irr="./fonts/Xiaolai/Xiaolai-Regular-06c77b8c66e51ed6c63ccb502dd8b8af.woff2",hrr="./fonts/Xiaolai/Xiaolai-Regular-13ae07ed2e272d26d59bc0691cd7117a.woff2",Qrr="./fonts/Xiaolai/Xiaolai-Regular-353f33792a8f60dc69323ddf635a269e.woff2",prr="./fonts/Xiaolai/Xiaolai-Regular-0facdf1ea213ba40261022f5d5ed4493.woff2",frr="./fonts/Xiaolai/Xiaolai-Regular-f8ee5d36068a42b51d0e4a1116cfcec1.woff2",mrr="./fonts/Xiaolai/Xiaolai-Regular-79d494361ae093b69e74ee9dbe65bfd4.woff2",Drr="./fonts/Xiaolai/Xiaolai-Regular-74e2263a91439c25b91d5132ce9f4d62.woff2",yrr="./fonts/Xiaolai/Xiaolai-Regular-ee8bae97908d5147b423f77ad0d3c1bb.woff2",wrr="./fonts/Xiaolai/Xiaolai-Regular-56467a5c8840c4d23a60b2f935114848.woff2",brr="./fonts/Xiaolai/Xiaolai-Regular-145aa02cdd91946e67dc934e1acffe75.woff2",vrr="./fonts/Xiaolai/Xiaolai-Regular-54acdfc2166ad7fcbd074f75fd4a56ba.woff2",krr="./fonts/Xiaolai/Xiaolai-Regular-29cec36cd205b211da97acabaa62f055.woff2",Frr="./fonts/Xiaolai/Xiaolai-Regular-3756e81d3e149cf6099163ee79944fec.woff2",xrr="./fonts/Xiaolai/Xiaolai-Regular-8e9f97f01034820170065b2921b4fb5e.woff2",Srr="./fonts/Xiaolai/Xiaolai-Regular-13d2887ec8ee73c43acdabc52a05af7b.woff2",Lrr="./fonts/Xiaolai/Xiaolai-Regular-72536a3d71b694a0d53dd90ddceae41e.woff2",Rrr="./fonts/Xiaolai/Xiaolai-Regular-603aefd23e350ba7eb124273e3c9bcf1.woff2",Nrr="./fonts/Xiaolai/Xiaolai-Regular-095c169f3314805276f603a362766abd.woff2",Grr="./fonts/Xiaolai/Xiaolai-Regular-9544732d2e62d1a429674f8ee41b5d3a.woff2",Urr="./fonts/Xiaolai/Xiaolai-Regular-d3716376641d615e2995605b29bca7b6.woff2",Mrr="./fonts/Xiaolai/Xiaolai-Regular-5a1ce3117cfe90c48e8fb4a9a00f694d.woff2",Trr="./fonts/Xiaolai/Xiaolai-Regular-b7d203b051eff504ff59ddca7576b6a9.woff2",Yrr="./fonts/Xiaolai/Xiaolai-Regular-4a38cc3e9cf104e69ba246d37f8cf135.woff2",Hrr="./fonts/Xiaolai/Xiaolai-Regular-982b630266d87db93d2539affb1275c6.woff2",Krr="./fonts/Xiaolai/Xiaolai-Regular-9592bfc861f07bcb8d75c196b370e548.woff2",Jrr="./fonts/Xiaolai/Xiaolai-Regular-a7accba310e821da5505f71c03b76bdb.woff2",Orr="./fonts/Xiaolai/Xiaolai-Regular-dac48066b5883d8b4551fc584f0c2a3e.woff2",Prr="./fonts/Xiaolai/Xiaolai-Regular-a1f916d6039285c4ffb900cd654e418f.woff2",_rr="./fonts/Xiaolai/Xiaolai-Regular-95bfd249da4902577b4b7d76ebdd0b44.woff2",Wrr="./fonts/Xiaolai/Xiaolai-Regular-93fc8f28a33234bcadf1527cafabd502.woff2",qrr="./fonts/Xiaolai/Xiaolai-Regular-903bb6865f3452e2fda42e3a25547bc5.woff2",zrr="./fonts/Xiaolai/Xiaolai-Regular-4aca6a43e59aceee2166b0c7e4e85ef1.woff2",Zrr="./fonts/Xiaolai/Xiaolai-Regular-24476a126f129212beb33f66853ea151.woff2",Vrr="./fonts/Xiaolai/Xiaolai-Regular-1b611157cd46bb184d4fa4dae2d6a2b8.woff2",jrr="./fonts/Xiaolai/Xiaolai-Regular-56a32a7689abd0326e57c10c6c069bb4.woff2",Xrr="./fonts/Xiaolai/Xiaolai-Regular-3cc70dbb64df5b21f1326cc24dee2195.woff2",$rr="./fonts/Xiaolai/Xiaolai-Regular-f6032fc06eb20480f096199713f70885.woff2",Air="./fonts/Xiaolai/Xiaolai-Regular-e2ead7ea7da0437f085f42ffc05f8d13.woff2",eir="./fonts/Xiaolai/Xiaolai-Regular-97f7f48ce90c9429bf32ae51469db74d.woff2",tir="./fonts/Xiaolai/Xiaolai-Regular-24a21c1e4449222e8d1898d69ff3a404.woff2",rir="./fonts/Xiaolai/Xiaolai-Regular-726303e0774b4e678bff8c2deb6ca603.woff2",iir="./fonts/Xiaolai/Xiaolai-Regular-5a7fac4b8b23a6e4e5ba0c9bf1756c91.woff2",uir="./fonts/Xiaolai/Xiaolai-Regular-2b7441d46298788ac94e610ffcc709b6.woff2",air,w1=class A{constructor(e){GA(this,"scene"),GA(this,"getSceneFamilies",()=>A.getUniqueFamilies(this.scene.getNonDeletedElements())),GA(this,"onLoaded",(t)=>{let r=!0;for(let a of t){let n=`${a.family}-${a.style}-${a.weight}-${a.unicodeRange}`;A.loadedFontsCache.has(n)||(A.loadedFontsCache.add(n),r=!1)}if(r)return;let i=!1,u=this.scene.getNonDeletedElementsMap();for(let a of this.scene.getNonDeletedElements())if(Bt(a)){i=!0,na.delete(a),O8.clearCache(cu(a));let n=Do(a,u);n&&na.delete(n)}i&&this.scene.triggerUpdate()}),GA(this,"loadSceneFonts",async()=>{let t=this.getSceneFamilies(),r=A.getCharsPerFamily(this.scene.getNonDeletedElements());return A.loadFontFaces(t,r)}),this.scene=e}static get registered(){return A._registered?A._initialized||(A._registered=new Map([...A.init().entries(),...A._registered.entries()])):A._registered=A.init(),A._registered}get registered(){return A.registered}static async generateFontFaceDeclarations(e){let t=A.getUniqueFamilies(e),r=A.getCharsPerFamily(e),i=t.find((o)=>Dde(o).includes(r9));if(i){let o=A.getCharacters(r,i);if(o$t(o)){let s=i9[r9];r[s]=new Set(o),t.unshift(i9[r9])}}let u=A.fontFacesStylesGenerator(t,r),a=3,n=await new CEe(u,a).all();return Array.from(new Set(n))}static async loadFontFaces(e,t){for(let{fontFaces:u,metadata:a}of A.registered.values())if(!a.local)for(let{fontFace:n}of u)window.document.fonts.has(n)||window.document.fonts.add(n);let r=A.fontFacesLoader(e,t);return(await new CEe(r,10).all()).flat().filter(Boolean)}static*fontFacesLoader(e,t){for(let[r,i]of e.entries()){let u=cu({fontFamily:i,fontSize:16}),a=A.getCharacters(t,i);window.document.fonts.check(u,a)||(yield Om(async()=>{try{let n=await window.document.fonts.load(u,a);return[r,n]}catch(n){console.error(`Failed to load font "${u}" from urls "${A.registered.get(i)?.fontFaces.map((o)=>o.urls)}"`,n)}}))}}static*fontFacesStylesGenerator(e,t){for(let[r,i]of e.entries()){let{fontFaces:u,metadata:a}=A.registered.get(i)??{};if(!Array.isArray(u)){console.error(`Couldn't find registered fonts for font-family "${i}"`,A.registered);continue}if(!a?.local)for(let[n,o]of u.entries())yield Om(async()=>{try{let s=A.getCharacters(t,i),l=await o.toCSS(s);return l?[r*1e4+n,l]:void 0}catch(s){console.error(`Couldn't transform font-face to css for family "${o.fontFace.family}"`,s)}})}}static register(e,t,...r){let i=aa[e]??i9[e];return this.registered.get(i)||this.registered.set(i,{metadata:t,fontFaces:r.map(({uri:u,descriptors:a})=>new U$t(e,u,a))}),this.registered}static init(){let e={registered:new Map},t=(r,...i)=>{let u=aa[r]??i9[r],a=D_[u]??D_[aa.Excalifont];A.register.call(e,r,a,...i)};return t("Cascadia",...T$t),t("Comic Shanns",...O$t),t("Excalifont",...X$t),t("Helvetica",...$$t),t("Liberation Sans",...eAr),t("Lilita One",...iAr),t("Nunito",...lAr),t("Virgil",...cAr),t(r9,...air),t(h8,...P$t),A._initialized=!0,e.registered}static getUniqueFamilies(e){return Array.from(e.reduce((t,r)=>(Bt(r)&&t.add(r.fontFamily),t),new Set))}static getCharsPerFamily(e){let t={};for(let r of e)if(Bt(r))for(let i of r.originalText)t[r.fontFamily]||(t[r.fontFamily]=new Set),t[r.fontFamily].add(i);return t}static getCharacters(e,t){return e[t]?Array.from(e[t]).join(""):""}static getAllFamilies(){return Array.from(A.registered.keys())}},Ed,$he=(A,e,t)=>{let{unitsPerEm:r,ascender:i,descender:u}=Ed.registered.get(A)?.metadata.metrics||D_[aa.Virgil].metrics,a=e/r,n=(t-a*i+a*u)/2;return a*i+n},z1=(A)=>{let{lineHeight:e}=Ed.registered.get(A)?.metadata.metrics||D_[aa.Excalifont].metrics;return e},AQe=(A)=>{let{angle:e,width:t,height:r,x:i,y:u}=A,a=i+t/2,n=u+r/2,o=X(a,n),s;return A.type==="diamond"?s=oEe(De(X(a,u),o,e),De(X(i+t,n),o,e),De(X(a,u+r),o,e),De(X(i,n),o,e)):s=oEe(De(X(i,u),o,e),De(X(i+t,u),o,e),De(X(i+t,u+r),o,e),De(X(i,u+r),o,e)),{type:"polygon",data:s}},eQe=(A,e,t=10)=>{let[r,i,u,a,n,o]=Nr(A,e,!0);r-=t,u+=t,i-=t,a+=t;let s=X(n,o),l=De(X(r,i),s,A.angle),g=De(X(u,i),s,A.angle),C=De(X(r,a),s,A.angle),B=De(X(u,a),s,A.angle);return{type:"polygon",data:[l,g,B,C]}},nir=(A)=>{let{width:e,height:t,angle:r,x:i,y:u}=A;return{type:"ellipse",data:{center:X(i+e/2,u+t/2),angle:r,halfWidth:e/2,halfHeight:t/2}}},Z1=(A)=>{if(!A)return[];for(let e of A.sets)if(e.type==="path")return e.ops;return A.sets[0].ops},oir=(A,e=X(0,0),t,r)=>{let i=(o)=>De(X(o[0]+e[0],o[1]+e[1]),r,t),u=Z1(A),a=[],n=X(0,0);for(let o of u){if(o.op==="move"){let s=dIA(o.data);fn(s!=null,"Ops data is not a point"),n=i(s)}if(o.op==="bcurveTo"){let s=i(X(o.data[0],o.data[1])),l=i(X(o.data[2],o.data[3])),g=i(X(o.data[4],o.data[5]));a.push(kh(n,s,l,g)),n=g}}return{type:"polycurve",data:a}},sir=(A)=>{let e=A[0],t=[];for(let r=1;r<A.length;r++){let i=A[r];t.push(Wt(e,i)),e=i}return t},lir=(A,e,t=!1)=>{let r=(u)=>De($r(k1(Mt(u),qo(A.x,A.y))),e,A.angle),i=sir(A.points.map((u)=>r(u)));return t?{type:"polygon",data:h_(i.flat())}:{type:"polyline",data:i}},gir=(A,e,t=X(0,0),r,i)=>{let u=(l)=>De(X(l[0]+t[0],l[1]+t[1]),i,r);if(A.roundness===null)return{type:"polygon",data:h_(A.points.map((l)=>u(l)))};let a=Z1(e),n=[],o=!1;for(let l of a)l.op==="move"?(o=!o,o&&n.push(X(l.data[0],l.data[1]))):l.op==="bcurveTo"?o&&(n.push(X(l.data[0],l.data[1])),n.push(X(l.data[2],l.data[3])),n.push(X(l.data[4],l.data[5]))):l.op==="lineTo"&&o&&n.push(X(l.data[0],l.data[1]));let s=hBe(n,10,5).map((l)=>u(l));return{type:"polygon",data:h_(s)}},cir=(A,e)=>{let{angle:t,halfWidth:r,halfHeight:i,center:u}=e,a=r,n=i,o=k1(Mt(A),ba(Mt(u),-1)),[s,l]=De($r(o),X(0,0),-t),g=Math.abs(s),C=Math.abs(l),B=0.707,E=0.707;for(let h=0;h<3;h++){let Q=a*B,p=n*E,m=(a*a-n*n)*B**3/a,f=(n*n-a*a)*E**3/n,D=Q-m,w=p-f,b=g-m,k=C-f,v=Math.hypot(w,D),S=Math.hypot(k,b);B=Math.min(1,Math.max(0,(b*v/S+m)/a)),E=Math.min(1,Math.max(0,(k*v/S+f)/n));let x=Math.hypot(E,B);B/=x,E/=x}let[d,I]=[a*B*Math.sign(s),n*E*Math.sign(l)];return Ri(X(s,l),X(d,I))},Cir=(A,e,t=0.0001)=>cir(A,e)<=t,Bir=(A,e)=>{let{center:t,angle:r,halfWidth:i,halfHeight:u}=e,a=k1(Mt(A),ba(Mt(t),-1)),[n,o]=De($r(a),X(0,0),-r);return n/i*(n/i)+o/u*(o/u)<=1},_dA=(A,e,t=0)=>{switch(e.type){case"polygon":return zXt(A,e.data,t);case"ellipse":return Cir(A,e.data,t);case"line":return Jm(A,e.data,t);case"polyline":return rQe(A,e.data,t);case"curve":return tQe(A,e.data,t);case"polycurve":return Eir(A,e.data,t);default:throw Error(`shape ${e} is not implemented`)}},D8=(A,e)=>{switch(e.type){case"polygon":return sEe(A,e.data);case"line":return!1;case"curve":return!1;case"ellipse":return Bir(A,e.data);case"polyline":{let t=h_(e.data.flat());return sEe(A,t)}case"polycurve":return!1;default:throw Error(`shape ${e} is not implemented`)}},Eir=(A,e,t)=>e.some((r)=>tQe(A,r,t)),dir=(A)=>{let[e,t,r,i]=A;return(u,a)=>Math.pow(1-u,3)*i[a]+3*u*Math.pow(1-u,2)*r[a]+3*Math.pow(u,2)*(1-u)*t[a]+e[a]*Math.pow(u,3)},Iir=(A,e=10)=>{let t=dir(A),r=[t(0,0),t(0,1)],i=[],u=0,a=1/e;for(let n=0;n<e;n++)if(u+=a,u<=1){let o=X(t(u,0),t(u,1));i.push(Wt(r,o)),r=o}return i},tQe=(A,e,t)=>rQe(A,Iir(e),t),rQe=(A,e,t=0.0001)=>e.some((r)=>Jm(A,r,t)),hir=(A,e)=>{let{halfWidth:t,halfHeight:r,center:i}=e,u=t,a=r,n=k1(Mt(A),ba(Mt(i),-1)),o=Math.abs(n[0]),s=Math.abs(n[1]),l=0.707,g=0.707;for(let E=0;E<3;E++){let d=u*l,I=a*g,h=(u*u-a*a)*l**3/u,Q=(a*a-u*u)*g**3/a,p=d-h,m=I-Q,f=o-h,D=s-Q,w=Math.hypot(m,p),b=Math.hypot(D,f);l=Math.min(1,Math.max(0,(f*w/b+h)/u)),g=Math.min(1,Math.max(0,(D*w/b+Q)/a));let k=Math.hypot(g,l);l/=k,g/=k}let[C,B]=[u*l*Math.sign(n[0]),a*g*Math.sign(n[1])];return Ri($r(n),X(C,B))},WdA=(A)=>{if(A.type==="arrow")return!1;let e=!vc(A.backgroundColor)||Ul(A)||bg(A)||Bt(A);return A.type==="line"?e&&od(A.points):A.type==="freedraw"?e&&od(A.points):e||Ni(A)},a2=({x:A,y:e,element:t,shape:r,threshold:i=10,frameNameBound:u=null})=>{let a=WdA(t)?D8(X(A,e),r)||_dA(X(A,e),r,i):_dA(X(A,e),r,i);return!a&&u&&(a=D8(X(A,e),{type:"polygon",data:AQe(u).data})),a},tW=(A,e,t,r,i=0)=>{let[u,a,n,o]=XC(t,r);return u-=i,a-=i,n+=i,o+=i,_de(X(u,a),X(A,e),X(n,o))},nQe=(A,e)=>!a2(A)&&!EhA(A.x,A.y,dhA(A.element,e))&&tW(A.x,A.y,A.element,e),EhA=(A,e,t)=>!!t&&D8(X(A,e),t),oQe=(A,e,t=0)=>{switch(A.type){case"rectangle":case"image":case"text":case"iframe":case"embeddable":case"frame":case"magicframe":return pir(A,e,t);case"diamond":return fir(A,e,t);case"ellipse":return mir(A,e,t);default:throw Error(`Unimplemented element type '${A.type}'`)}},pir=(A,e,t=0)=>{let r=X(A.x+A.width/2,A.y+A.height/2),i=De(e[0],r,-A.angle),u=De(e[1],r,-A.angle),[a,n]=uQe(A,t);return[...a.map((o)=>f8(Wt(i,u),o)).filter((o)=>o!=null).map((o)=>De(o,r,A.angle)),...n.flatMap((o)=>Wde(o,Wt(i,u))).filter((o)=>o!=null).map((o)=>De(o,r,A.angle))].filter((o,s,l)=>l.findIndex((g)=>VC(o,g))===s)},fir=(A,e,t=0)=>{let r=X(A.x+A.width/2,A.y+A.height/2),i=De(e[0],r,-A.angle),u=De(e[1],r,-A.angle),[a,n]=aQe(A,t);return[...a.map((o)=>f8(Wt(i,u),o)).filter((o)=>o!=null).map((o)=>De(o,r,A.angle)),...n.flatMap((o)=>Wde(o,Wt(i,u))).filter((o)=>o!=null).map((o)=>De(o,r,A.angle))].filter((o,s,l)=>l.findIndex((g)=>VC(o,g))===s)},mir=(A,e,t=0)=>{let r=X(A.x+A.width/2,A.y+A.height/2),i=De(e[0],r,-A.angle),u=De(e[1],r,-A.angle);return Qir(iQe(r,A.width/2+t,A.height/2+t),OdA(i,u)).map((a)=>De(a,r,A.angle))},hi,PA,Dir,yir=(A)=>/^[a-z]$/.test(A.toLowerCase()),rW=(A,e)=>{if(e===A.key.toLowerCase())return!0;let t=Dir.get(e);return!!(t&&!yir(A.key)&&A.code===t)},b9=(A)=>A===PA.ARROW_LEFT||A===PA.ARROW_RIGHT||A===PA.ARROW_DOWN||A===PA.ARROW_UP,iW=(A)=>A.altKey,v9=(A)=>A.shiftKey,c9=(A)=>A.shiftKey,uW,sQe=(A)=>uW.find((e,t)=>e.numericKey!=null&&A===e.numericKey.toString()||e.key&&(typeof e.key=="string"?e.key===A:e.key.includes(A)))?.value||null,nd=(A,e)=>{switch(A.type){case"rectangle":case"diamond":case"frame":case"magicframe":case"embeddable":case"image":case"iframe":case"text":case"selection":return AQe(A);case"arrow":case"line":{let t=na.get(A)?.[0]??na.generateElementShape(A,null)[0],[,,,,r,i]=Nr(A,e);return WdA(A)?gir(A,t,X(A.x,A.y),A.angle,X(r,i)):oir(t,X(A.x,A.y),A.angle,X(r,i))}case"ellipse":return nir(A);case"freedraw":{let[,,,,t,r]=Nr(A,e);return lir(A,X(t,r),WdA(A))}}},dhA=(A,e)=>{let t=Ur(A,e);return t?A.type==="arrow"?nd({...t,...It.getBoundTextElementPosition(A,t,e)},e):nd(t,e):null},lQe=(A,e)=>{let t=na.generateElementShape(A,null);if(!t)return null;let r=Z1(t[0]),i=X(0,0),u=0,a=1/0,n=null;for(;u<r.length;){let{op:o,data:s}=r[u];if(o==="move"&&(fn(JXt(s),"The returned ops is not compatible with a point"),i=s),o==="bcurveTo"){let l=i,g=X(s[0],s[1]),C=X(s[2],s[3]),B=X(s[4],s[5]),E=Ri(B,e);E<a&&(a=E,n=[l,g,C,B]),i=B}u++}return n},gQe=(A,e,t,r,i)=>{let u=(o,s)=>Math.pow(1-o,3)*r[s]+3*o*Math.pow(1-o,2)*t[s]+3*Math.pow(o,2)*(1-o)*e[s]+A[s]*Math.pow(o,3),a=u(i,0),n=u(i,1);return X(a,n)},wir=(A,e)=>{let t=lQe(A,e);if(!t)return[];let r=[],i=1;for(;i>0;){let u=gQe(t[0],t[1],t[2],t[3],i);r.push(X(u[0],u[1])),i-=0.05}return r.length&&VC(r.at(-1),e)&&r.push(X(e[0],e[1])),r},cQe=(A,e)=>{let t=[];t[0]=0;let r=wir(A,e),i=0,u=0;for(;i<r.length-1;){let a=Ri(r[i],r[i+1]);u+=a,t.push(u),i++}return t},bir=(A,e)=>cQe(A,e).at(-1),vir=(A,e,t)=>{let r=cQe(A,e),i=r.length-1,u=r.at(-1),a=t*u,n=0,o=i,s=0;for(;n<o;)s=Math.floor(n+(o-n)/2),r[s]<a?n=s+1:o=s;return r[s]>a&&s--,r[s]===a?s/i:1-(s+(a-r[s])/(r[s+1]-r[s]))/i},qC=(A,e)=>{let t={minX:A.x,minY:A.y,maxX:A.x+A.width,maxY:A.y+A.height,midX:A.x+A.width/2,midY:A.y+A.height/2},r=X(t.midX,t.midY),[i,u]=De(X(t.minX,t.minY),r,A.angle),[a,n]=De(X(t.maxX,t.minY),r,A.angle),[o,s]=De(X(t.maxX,t.maxY),r,A.angle),[l,g]=De(X(t.minX,t.maxY),r,A.angle),C=[Math.min(i,a,o,l),Math.min(u,n,s,g),Math.max(i,a,o,l),Math.max(u,n,s,g)];if(e){let[B,E,d,I]=e;return[C[0]-I,C[1]-B,C[2]+E,C[3]+d]}return C},C9=(A,e)=>A[0]>e[0]&&A[0]<e[2]&&A[1]>e[1]&&A[1]<e[3],Fc=(A,e)=>{if(e.roundness?.type===mn.PROPORTIONAL_RADIUS||e.roundness?.type===mn.LEGACY)return A*FdA;if(e.roundness?.type===mn.ADAPTIVE_RADIUS){let t=e.roundness?.value??NXt,r=t/FdA;return A<=r?A*FdA:t}return 0},od=(A,e=1)=>{if(A.length>=3){let[t,r]=[A[0],A[A.length-1]];return Ri(t,r)<=k8/e}return!1},Qo=10,CQe=(A,e,t,r,i,u,a)=>{let{width:n,height:o}=sd(A),s=t/n,l=r/o,g=(A.crop?.x??0)/s,C=(A.crop?.y??0)/l,B=De(X(i,u),X(A.x+A.width/2,A.y+A.height/2),-A.angle);i=B[0],u=B[1];let{width:E,height:d}=A,I=A.crop??{x:0,y:0,width:t,height:r,naturalWidth:t,naturalHeight:r},h=I.height,Q=I.width,p=A.scale[0]===-1,m=A.scale[1]===-1,f=u-A.y,D=i-A.x;e.includes("n")&&(d=jr(A.height-f,Qo,m?o-C:A.height+C)),e.includes("s")&&(f=u-A.y-A.height,d=jr(A.height+f,Qo,m?A.height+C:o-C)),e.includes("e")&&(D=i-A.x-A.width,E=jr(A.width+D,Qo,p?A.width+g:n-g)),e.includes("w")&&(E=jr(A.width-D,Qo,p?n-g:A.width+g));let w=(v)=>{v.height=d*l,v.width=E*s};w(I);let b=(v,S)=>{w(S),v.includes("n")&&(m||(S.y+=h-S.height)),v.includes("s")&&m&&(S.y+=h-S.height),v.includes("e")&&p&&(S.x+=Q-S.width),v.includes("w")&&(p||(S.x+=Q-S.width))};switch(e){case"n":{if(a){let v=g+A.width/2,S=n-g-A.width/2,x=Math.min(v,S)*2;E=jr(d*a,Qo,x),d=E/a}b(e,I),a&&(I.x+=(Q-I.width)/2);break}case"s":{if(a){let v=g+A.width/2,S=n-g-A.width/2,x=Math.min(v,S)*2;E=jr(d*a,Qo,x),d=E/a}b(e,I),a&&(I.x+=(Q-I.width)/2);break}case"w":{if(a){let v=C+A.height/2,S=o-C-A.height/2,x=Math.min(v,S)*2;d=jr(E/a,Qo,x),E=d*a}b(e,I),a&&(I.y+=(h-I.height)/2);break}case"e":{if(a){let v=C+A.height/2,S=o-C-A.height/2,x=Math.min(v,S)*2;d=jr(E/a,Qo,x),E=d*a}b(e,I),a&&(I.y+=(h-I.height)/2);break}case"ne":{if(a)if(D>-f){let v=m?o-C:C+A.height;d=jr(E/a,Qo,v),E=d*a}else{let v=p?g+A.width:n-g;E=jr(d*a,Qo,v),d=E/a}b(e,I);break}case"nw":{if(a)if(D<f){let v=m?o-C:C+A.height;d=jr(E/a,Qo,v),E=d*a}else{let v=p?n-g:g+A.width;E=jr(d*a,Qo,v),d=E/a}b(e,I);break}case"se":{if(a)if(D>f){let v=m?C+A.height:o-C;d=jr(E/a,Qo,v),E=d*a}else{let v=p?g+A.width:n-g;E=jr(d*a,Qo,v),d=E/a}b(e,I);break}case"sw":{if(a)if(-D>f){let v=m?C+A.height:o-C;d=jr(E/a,Qo,v),E=d*a}else{let v=p?n-g:g+A.width;E=jr(d*a,Qo,v),d=E/a}b(e,I);break}default:break}let k=kir(A,e,E,d,!!a);return aEe(I.width,I.naturalWidth)&&aEe(I.height,I.naturalHeight)&&(I=null),{x:k[0],y:k[1],width:E,height:d,crop:I}},kir=(A,e,t,r,i)=>{let[u,a,n,o]=S1(A,A.width,A.height,!0),s=X(u,a),l=X(n,o),g=U8(s,l),[C,B,E,d]=S1(A,t,r,!0),I=E-C,h=d-B,Q=[...s];if(["n","w","nw"].includes(e)&&(Q=[l[0]-Math.abs(I),l[1]-Math.abs(h)]),e==="ne"){let b=[s[0],l[1]];Q=[b[0],b[1]-Math.abs(h)]}if(e==="sw"){let b=[l[0],s[1]];Q=[b[0]-Math.abs(I),b[1]]}i&&(["s","n"].includes(e)&&(Q[0]=g[0]-I/2),["e","w"].includes(e)&&(Q[1]=g[1]-h/2));let p=A.angle,m=De(Q,g,p),f=[Q[0]+Math.abs(I)/2,Q[1]+Math.abs(h)/2],D=De(f,g,p);Q=De(m,D,-p);let w=[...Q];return w[0]+=A.x-C,w[1]+=A.y-B,w},Fir=(A,e)=>{if(A.crop){let{width:t,height:r}=sd(A),[i,u,a,n,o,s]=Nr(A,e),l=Mt(De(X(i,u),X(o,s),A.angle)),g=Mt(De(X(a,u),X(o,s),A.angle)),C=m0(Q8(g,l)),B=Mt(De(X(i,n),X(o,s),A.angle)),E=Q8(B,l),d=m0(E),{cropX:I,cropY:h}=xir(A.crop,A.scale),Q=k1(k1(l,ba(C,-I*t/A.crop.naturalWidth)),ba(d,-h*r/A.crop.naturalHeight)),p=$r(k1(k1(Q,ba(C,t/2)),ba(d,r/2))),m=De($r(Q),p,-A.angle);return{...A,x:m[0],y:m[1],width:t,height:r,crop:null}}return A},sd=(A)=>{if(A.crop){let e=A.width/(A.crop.width/A.crop.naturalWidth),t=A.height/(A.crop.height/A.crop.naturalHeight);return{width:e,height:t}}return{width:A.width,height:A.height}},xir=(A,e)=>{let{x:t,y:r}=A,i=e[0]===-1,u=e[1]===-1;return i&&(t=A.naturalWidth-Math.abs(t)-A.width),u&&(r=A.naturalHeight-Math.abs(r)-A.height),{cropX:t,cropY:r}},BQe=(A,e=!1)=>{let t=A.crop;if(!t)return null;let r=A.scale[0]===-1,i=A.scale[1]===-1,{x:u,y:a}=t;if(r&&(u=t.naturalWidth-t.width-t.x),i&&(a=t.naturalHeight-t.height-t.y),e)return{x:u,y:a};let{width:n,height:o}=sd(A);return{x:u/(t.naturalWidth/n),y:a/(t.naturalHeight/o)}},EQe="invert(100%) hue-rotate(180deg) saturate(1.25)",Sir,dQe=(A,e)=>xg(A)&&!e.imageCache.has(A.fileId),IQe=(A,e,t)=>t.theme===ei.DARK&&xg(A)&&!dQe(A,e)&&e.imageCache.get(A.fileId)?.mimeType!==jt.svg,aW=(A)=>{switch(A.type){case"freedraw":return A.strokeWidth*12;case"text":return A.fontSize/2;default:return 20}},IhA=(A,e,t,r,i=1)=>{let u=(e?.opacity??100)*A.opacity/1e4*i;return(t.has(A.id)||r&&r.some((a)=>a.id===A.id)||e&&t.has(e.id))&&(u*=RXt/100),u},Lir=(A,e,t)=>{let r=aW(A),[i,u,a,n]=Nr(A,e),o=Gr(A)||Lc(A)?D0(i,a):A.width,s=Gr(A)||Lc(A)?D0(u,n):A.height,l=o*window.devicePixelRatio+r*2,g=s*window.devicePixelRatio+r*2,C=t.value;return(l*C>32767||g*C>32767)&&(C=Math.min(32767/l,32767/g)),l*g*C*C>16777216&&(C=Math.sqrt(16777216/(l*g))),l=Math.floor(l*C),g=Math.floor(g*C),{width:l,height:g,scale:C}},hQe=(A,e,t,r,i)=>{let u=document.createElement("canvas"),a=u.getContext("2d"),n=aW(A),{width:o,height:s,scale:l}=Lir(A,e,t);if(!o||!s)return null;u.width=o,u.height=s;let g=-100,C=0;if(Gr(A)||Lc(A)){let[h,Q]=Nr(A,e);g=A.x>h?D0(A.x,h)*window.devicePixelRatio*l:0,C=A.y>Q?D0(A.y,Q)*window.devicePixelRatio*l:0,a.translate(g,C)}a.save(),a.translate(n*l,n*l),a.scale(window.devicePixelRatio*l,window.devicePixelRatio*l);let B=yc.canvas(u);IQe(A,r,i)&&(a.filter=EQe),g_(A,B,a,r,i),a.restore();let E=Ur(A,e),d=document.createElement("canvas"),I=d.getContext("2d");if(Jr(A)&&E){let[h,Q,p,m]=Nr(A,e),f=Math.max(D0(h,p),D0(Q,m));d.width=f*window.devicePixelRatio*l+n*l*10,d.height=f*window.devicePixelRatio*l+n*l*10,I.translate(d.width/2,d.height/2),I.rotate(A.angle),I.drawImage(u,-u.width/2,-u.height/2,u.width,u.height);let[,,,,D,w]=Nr(E,e);I.rotate(-A.angle);let b=(d.width-u.width)/2,k=(d.height-u.height)/2,v=d.width/2-(D-h)*window.devicePixelRatio*l-b-n*l,S=d.height/2-(w-Q)*window.devicePixelRatio*l-k-n*l;I.translate(-v,-S),I.clearRect(-(E.width/2+pn)*window.devicePixelRatio*l,-(E.height/2+pn)*window.devicePixelRatio*l,(E.width+pn*2)*window.devicePixelRatio*l,(E.height+pn*2)*window.devicePixelRatio*l)}return{element:A,canvas:u,theme:i.theme,scale:l,zoomValue:t.value,canvasOffsetX:g,canvasOffsetY:C,boundTextElementVersion:Ur(A,e)?.version||null,containingFrameOpacity:Ks(A,e)?.opacity||100,boundTextCanvas:d,angle:A.angle,imageCrop:Ni(A)?A.crop:null}},Rir=14,QQe,pQe,Nir=(A,e)=>{e.fillStyle="#E7E7E7",e.fillRect(0,0,A.width,A.height);let t=Math.min(A.width,A.height),r=Math.min(t,Math.min(t*0.4,100));e.drawImage(A.status==="error"?pQe:QQe,A.width/2-r/2,A.height/2-r/2,r,r)},g_=(A,e,t,r,i)=>{switch(A.type){case"rectangle":case"iframe":case"embeddable":case"diamond":case"ellipse":{t.lineJoin="round",t.lineCap="round",e.draw(na.get(A));break}case"arrow":case"line":{t.lineJoin="round",t.lineCap="round",na.get(A).forEach((u)=>{e.draw(u)});break}case"freedraw":{t.save(),t.fillStyle=A.strokeColor;let u=Uir(A),a=na.get(A);a&&e.draw(a),t.fillStyle=A.strokeColor,t.fill(u),t.restore();break}case"image":{let u=xg(A)?r.imageCache.get(A.fileId)?.image:void 0;if(u!=null&&!(u instanceof Promise)){A.roundness&&t.roundRect&&(t.beginPath(),t.roundRect(0,0,A.width,A.height,Fc(Math.min(A.width,A.height),A)),t.clip());let{x:a,y:n,width:o,height:s}=A.crop?A.crop:{x:0,y:0,width:u.naturalWidth,height:u.naturalHeight};t.drawImage(u,a,n,o,s,0,0,A.width,A.height)}else Nir(A,t);break}default:if(Bt(A)){let u=$de(A.text),a=u&&!t.canvas.isConnected;a&&document.body.appendChild(t.canvas),t.canvas.setAttribute("dir",u?"rtl":"ltr"),t.save(),t.font=cu(A),t.fillStyle=A.strokeColor,t.textAlign=A.textAlign;let n=A.text.replace(/\r\n?/g,`
`).split(`
`),o=A.textAlign==="center"?A.width/2:A.textAlign==="right"?A.width:0,s=w9(A.fontSize,A.lineHeight),l=$he(A.fontFamily,A.fontSize,s);for(let g=0;g<n.length;g++)t.fillText(n[g],o,g*s+l);t.restore(),a&&t.canvas.remove()}else throw Error(`Unimplemented type ${A.type}`)}},qdA,dEe=(A,e,t,r)=>{let i=t?r.zoom:Sir.zoom,u=qdA.get(A),a=u&&u.zoomValue!==i.value&&!r?.shouldCacheIgnoreZoom,n=Ur(A,e),o=n?.version||null,s=Ni(A)?A.crop:null,l=Ks(A,e)?.opacity||100;if(!u||a||u.theme!==r.theme||u.boundTextElementVersion!==o||u.imageCrop!==s||u.containingFrameOpacity!==l||Jr(A)&&n&&A.angle!==u.angle){let g=hQe(A,e,i,t,r);return g?(qdA.set(A,g),g):null}return u},MdA=(A,e,t,r,i)=>{let u=A.element,a=aW(u),n=A.scale,[o,s,l,g]=Nr(u,i),C=((o+l)/2+r.scrollX)*window.devicePixelRatio,B=((s+g)/2+r.scrollY)*window.devicePixelRatio;e.save(),e.scale(1/window.devicePixelRatio,1/window.devicePixelRatio);let E=Ur(u,i);if(Jr(u)&&E){let d=(A.boundTextCanvas.width-A.canvas.width)/2,I=(A.boundTextCanvas.height-A.canvas.height)/2;e.translate(C,B),e.drawImage(A.boundTextCanvas,-(l-o)/2*window.devicePixelRatio-d/n-a,-(g-s)/2*window.devicePixelRatio-I/n-a,A.boundTextCanvas.width/n,A.boundTextCanvas.height/n)}else if(e.translate(C,B),e.rotate(u.angle),"scale"in A.element&&!dQe(u,t)&&e.scale(A.element.scale[0],A.element.scale[1]),e.translate(-C,-B),e.drawImage(A.canvas,(o+r.scrollX)*window.devicePixelRatio-a*A.scale/A.scale,(s+r.scrollY)*window.devicePixelRatio-a*A.scale/A.scale,A.canvas.width/A.scale,A.canvas.height/A.scale),fr.VITE_APP_DEBUG_ENABLE_TEXT_CONTAINER_BOUNDING_BOX==="true"&&Ul(u)){let d=Ur(u,i),I=_Qe(u);e.strokeStyle="#c92a2a",e.lineWidth=3,e.strokeRect((I.x+r.scrollX)*window.devicePixelRatio,(I.y+r.scrollY)*window.devicePixelRatio,AB(u,d)*window.devicePixelRatio,R9(u,d)*window.devicePixelRatio)}e.restore()},fQe=(A,e,t,r)=>{e.save(),e.translate(A.x+t.scrollX,A.y+t.scrollY),e.fillStyle="rgba(0, 0, 200, 0.04)";let i=0.5/t.zoom.value;e.fillRect(i,i,A.width,A.height),e.lineWidth=1/t.zoom.value,e.strokeStyle=r,e.strokeRect(i,i,A.width,A.height),e.restore()},v1=(A,e,t,r,i,u,a)=>{let n=a.openDialog?.name==="elementLinkSelector"&&!a.selectedElementIds[A.id]&&!a.hoveredElementIds[A.id];switch(i.globalAlpha=IhA(A,Ks(A,e),u.elementsPendingErasure,u.pendingFlowchartNodes,n?BIA:1),A.type){case"magicframe":case"frame":{a.frameRendering.enabled&&a.frameRendering.outline&&(i.save(),i.translate(A.x+a.scrollX,A.y+a.scrollY),i.fillStyle="rgba(0, 0, 200, 0.04)",i.lineWidth=Zu.strokeWidth/a.zoom.value,i.strokeStyle=Zu.strokeColor,K8(A)&&(i.strokeStyle=a.theme===ei.LIGHT?"#7affd7":"#1d8264"),Zu.radius&&i.roundRect?(i.beginPath(),i.roundRect(0,0,A.width,A.height,Zu.radius/a.zoom.value),i.stroke(),i.closePath()):i.strokeRect(0,0,A.width,A.height),i.restore());break}case"freedraw":{if(na.generateElementShape(A,null),u.isExporting){let[o,s,l,g]=Nr(A,e),C=(o+l)/2+a.scrollX,B=(s+g)/2+a.scrollY,E=(l-o)/2-(A.x-o),d=(g-s)/2-(A.y-s);i.save(),i.translate(C,B),i.rotate(A.angle),i.translate(-E,-d),g_(A,r,i,u,a),i.restore()}else{let o=dEe(A,t,u,a);if(!o)return;MdA(o,i,u,a,t)}break}case"rectangle":case"diamond":case"ellipse":case"line":case"arrow":case"image":case"text":case"iframe":case"embeddable":{if(na.generateElementShape(A,u),u.isExporting){let[o,s,l,g]=Nr(A,e),C=(o+l)/2+a.scrollX,B=(s+g)/2+a.scrollY,E=(l-o)/2-(A.x-o),d=(g-s)/2-(A.y-s);if(Bt(A)){let h=Do(A,e);if(Jr(h)){let Q=It.getBoundTextElementPosition(h,A,e);E=(l-o)/2-(Q.x-o),d=(g-s)/2-(Q.y-s)}}i.save(),i.translate(C,B),IQe(A,u,a)&&(i.filter="none");let I=Ur(A,e);if(Jr(A)&&I){let h=document.createElement("canvas"),Q=h.getContext("2d"),p=Math.max(D0(o,l),D0(s,g)),m=aW(A);h.width=p*a.exportScale+m*10*a.exportScale,h.height=p*a.exportScale+m*10*a.exportScale,Q.translate(h.width/2,h.height/2),Q.scale(a.exportScale,a.exportScale),E=A.width/2-(A.x-o),d=A.height/2-(A.y-s),Q.rotate(A.angle);let f=yc.canvas(h);Q.translate(-E,-d),g_(A,f,Q,u,a),Q.translate(E,d),Q.rotate(-A.angle);let[,,,,D,w]=Nr(I,e),b=(o+l)/2-D,k=(s+g)/2-w;Q.translate(-b,-k),Q.clearRect(-I.width/2,-I.height/2,I.width,I.height),i.scale(1/a.exportScale,1/a.exportScale),i.drawImage(h,-h.width/2,-h.height/2,h.width,h.height)}else i.rotate(A.angle),A.type==="image"&&i.scale(A.scale[0],A.scale[1]),i.translate(-E,-d),g_(A,r,i,u,a);i.restore()}else{let o=dEe(A,t,u,a);if(!o)return;let s=i.imageSmoothingEnabled;if(!a?.shouldCacheIgnoreZoom&&(!A.angle||YXt(A.angle))&&(i.imageSmoothingEnabled=!1),A.id===a.croppingElementId&&Ni(o.element)&&o.element.crop!==null){i.save(),i.globalAlpha=0.1;let l=hQe(Fir(o.element,e),t,a.zoom,u,a);l&&MdA(l,i,u,a,t),i.restore()}MdA(o,i,u,a,t),i.imageSmoothingEnabled=s}break}default:throw Error(`Unimplemented type ${A.type}`)}i.globalAlpha=1},mQe,Mir,n2=(A)=>A==="rectangle"||A==="iframe"||A==="embeddable"||A==="ellipse"||A==="diamond"||A==="line"||A==="freedraw",nW=(A)=>A!=="image"&&A!=="frame"&&A!=="magicframe",QhA=(A)=>A==="rectangle"||A==="iframe"||A==="embeddable"||A==="ellipse"||A==="diamond"||A==="freedraw"||A==="arrow"||A==="line",phA=(A)=>A==="rectangle"||A==="iframe"||A==="embeddable"||A==="ellipse"||A==="diamond"||A==="arrow"||A==="line",oW=(A)=>A==="rectangle"||A==="iframe"||A==="embeddable"||A==="line"||A==="diamond"||A==="image",fhA=(A)=>A==="arrow",Z8=(A)=>A==="arrow",wa,fo,Ms,Ts,n_=(A,e)=>{let t=p9(Math.atan2(e[1]-A[1],e[0]-A[0]));return t>=315||t<45?Ts:t>=45&&t<135?wa:t>=135&&t<225?fo:Ms},_m=(A)=>{let[e,t]=A,r=Math.abs(e),i=Math.abs(t);return e>i?wa:e<=-i?Ms:t>r?fo:Ts},y8=(A,e)=>_m(Mt(A,e)),vh=(A,e)=>Fh(y8(A,e)),va=(A,e)=>A[0]===e[0]&&A[1]===e[1],Fh=(A)=>va(A,wa)||va(A,Ms),mhA=(A,e,t)=>{let r=whA(e);if(A.type==="diamond"){if(t[0]<A.x)return Ms;if(t[1]<A.y)return Ts;if(t[0]>A.x+A.width)return wa;if(t[1]>A.y+A.height)return fo;let o=De(wh(X(A.x+A.width/2,A.y),r,2),r,A.angle),s=De(wh(X(A.x+A.width,A.y+A.height/2),r,2),r,A.angle),l=De(wh(X(A.x+A.width/2,A.y+A.height),r,2),r,A.angle),g=De(wh(X(A.x,A.y+A.height/2),r,2),r,A.angle);return $6([o,s,r],t)?n_(o,s):$6([s,l,r],t)?n_(s,l):$6([l,g,r],t)?n_(l,g):n_(g,o)}let i=wh(X(e[0],e[1]),r,2),u=wh(X(e[2],e[1]),r,2),a=wh(X(e[0],e[3]),r,2),n=wh(X(e[2],e[3]),r,2);return $6([i,u,r],t)?Ts:$6([u,n,r],t)?wa:$6([n,a,r],t)?fo:Ms},DQe=(A)=>[A[0]===0?0:A[0]>0?-1:1,A[1]===0?0:A[1]>0?-1:1],Yir=(A)=>[8,8+A],yQe=(A)=>[1.5,6+A],yg=(A,e=!1)=>{let t={seed:A.seed,strokeLineDash:A.strokeStyle==="dashed"?Yir(A.strokeWidth):A.strokeStyle==="dotted"?yQe(A.strokeWidth):void 0,disableMultiStroke:A.strokeStyle!=="solid",strokeWidth:A.strokeStyle!=="solid"?A.strokeWidth+0.5:A.strokeWidth,fillWeight:A.strokeWidth/2,hachureGap:A.strokeWidth*4,roughness:Hir(A),stroke:A.strokeColor,preserveVertices:e||A.roughness<Tde.cartoonist};switch(A.type){case"rectangle":case"iframe":case"embeddable":case"diamond":case"ellipse":return t.fillStyle=A.fillStyle,t.fill=vc(A.backgroundColor)?void 0:A.backgroundColor,A.type==="ellipse"&&(t.curveFitting=1),t;case"line":case"freedraw":return od(A.points)&&(t.fillStyle=A.fillStyle,t.fill=A.backgroundColor==="transparent"?void 0:A.backgroundColor),t;case"arrow":return t;default:throw Error(`Unimplemented type ${A.type}`)}},hEe=(A,e,t)=>bg(A)&&(e||Js(A)&&t?.get(A.id)!==!0)&&vc(A.backgroundColor)&&vc(A.strokeColor)?{...A,roughness:0,backgroundColor:"#d3d3d3",fillStyle:"solid"}:Rh(A)?{...A,strokeColor:vc(A.strokeColor)?"#000000":A.strokeColor,backgroundColor:vc(A.backgroundColor)?"#f4f4f6":A.backgroundColor}:A,QEe=(A,e,t,r,i,u,a)=>{let n=DEe(A,e,t,r);if(n===null)return[];let o=(s,l)=>{if(s===null)return[];let[,,g,C,B,E]=s;return[i.line(g,C,B,E,l)]};switch(r){case"dot":case"circle":case"circle_outline":{let[s,l,g]=n;return delete u.strokeLineDash,[i.circle(s,l,g,{...u,fill:r==="circle_outline"?a:A.strokeColor,fillStyle:"solid",stroke:A.strokeColor,roughness:Math.min(0.5,u.roughness||0)})]}case"triangle":case"triangle_outline":{let[s,l,g,C,B,E]=n;return delete u.strokeLineDash,[i.polygon([[s,l],[g,C],[B,E],[s,l]],{...u,fill:r==="triangle_outline"?a:A.strokeColor,fillStyle:"solid",roughness:Math.min(1,u.roughness||0)})]}case"diamond":case"diamond_outline":{let[s,l,g,C,B,E,d,I]=n;return delete u.strokeLineDash,[i.polygon([[s,l],[g,C],[B,E],[d,I],[s,l]],{...u,fill:r==="diamond_outline"?a:A.strokeColor,fillStyle:"solid",roughness:Math.min(1,u.roughness||0)})]}case"crowfoot_one":return o(n,u);case"bar":case"arrow":case"crowfoot_many":case"crowfoot_one_or_many":default:{let[s,l,g,C,B,E]=n;if(A.strokeStyle==="dotted"){let d=yQe(A.strokeWidth-1);u.strokeLineDash=[d[0],d[1]-1]}else delete u.strokeLineDash;return u.roughness=Math.min(1,u.roughness||0),[i.line(g,C,s,l,u),i.line(B,E,s,l,u),...r==="crowfoot_one_or_many"?o(DEe(A,e,t,"crowfoot_one"),u):[]]}}},Kir=(A,e,{isExporting:t,canvasBackgroundColor:r,embedsValidationStatus:i})=>{switch(A.type){case"rectangle":case"iframe":case"embeddable":{let u;if(A.roundness){let{width:a,height:n}=A,o=Fc(Math.min(a,n),A);u=e.path(`M ${o} 0 L ${a-o} 0 Q ${a} 0, ${a} ${o} L ${a} ${n-o} Q ${a} ${n}, ${a-o} ${n} L ${o} ${n} Q 0 ${n}, 0 ${n-o} L 0 ${o} Q 0 0, ${o} 0`,yg(hEe(A,t,i),!0))}else u=e.rectangle(0,0,A.width,A.height,yg(hEe(A,t,i),!1));return u}case"diamond":{let u,[a,n,o,s,l,g,C,B]=bQe(A);if(A.roundness){let E=Fc(Math.abs(a-C),A),d=Fc(Math.abs(s-n),A);u=e.path(`M ${a+E} ${n+d} L ${o-E} ${s-d}
C ${o} ${s}, ${o} ${s}, ${o-E} ${s+d}
L ${l+E} ${g-d}
C ${l} ${g}, ${l} ${g}, ${l-E} ${g-d}
L ${C+E} ${B+d}
C ${C} ${B}, ${C} ${B}, ${C+E} ${B-d}
L ${a-E} ${n+d}
C ${a} ${n}, ${a} ${n}, ${a+E} ${n+d}`,yg(A,!0))}else u=e.polygon([[a,n],[o,s],[l,g],[C,B]],yg(A));return u}case"ellipse":return e.ellipse(A.width/2,A.height/2,A.width,A.height,yg(A));case"line":case"arrow":{let u,a=yg(A),n=A.points.length?A.points:[X(0,0)];if(pt(A)?n.every((o)=>Math.abs(o[0])<=1e6&&Math.abs(o[1])<=1e6)?u=[e.path(Jir(n,16),yg(A,!0))]:(console.error("Elbow arrow with extreme point positions detected. Arrow not rendered.",A.id,JSON.stringify(n)),u=[]):A.roundness?u=[e.curve(n,a)]:a.fill?u=[e.polygon(n,a)]:u=[e.linearPath(n,a)],A.type==="arrow"){let{startArrowhead:o=null,endArrowhead:s="arrow"}=A;if(o!==null){let l=QEe(A,u,"start",o,e,a,r);u.push(...l)}if(s!==null){let l=QEe(A,u,"end",s,e,a,r);u.push(...l)}}return u}case"freedraw":{let u;if(Gir(A),od(A.points)){let a=IBe(A.points,0.75);u=e.curve(a,{...yg(A),stroke:"none"})}else u=null;return u}case"frame":case"magicframe":case"text":case"image":return null;default:return O1(A,`generateElementShape(): Unimplemented type ${A?.type}`),null}},Jir=(A,e)=>{let t=[];for(let i=1;i<A.length-1;i+=1){let u=A[i-1],a=A[i+1],n=A[i],o=vh(n,u),s=vh(a,n),l=Math.min(e,Ri(A[i],a)/2,Ri(A[i],u)/2);o?u[0]<n[0]?t.push([A[i][0]-l,A[i][1]]):t.push([A[i][0]+l,A[i][1]]):u[1]<n[1]?t.push([A[i][0],A[i][1]-l]):t.push([A[i][0],A[i][1]+l]),t.push(A[i]),s?a[0]<n[0]?t.push([A[i][0]-l,A[i][1]]):t.push([A[i][0]+l,A[i][1]]):a[1]<n[1]?t.push([A[i][0],A[i][1]-l]):t.push([A[i][0],A[i][1]+l])}let r=[`M ${A[0][0]} ${A[0][1]}`];for(let i=0;i<t.length;i+=3)r.push(`L ${t[i][0]} ${t[i][1]}`),r.push(`Q ${t[i+1][0]} ${t[i+1][1]}, ${t[i+2][0]} ${t[i+2][1]}`);return r.push(`L ${A[A.length-1][0]} ${A[A.length-1][1]}`),r.join(" ")},Wm=(A)=>{let e=A.map((r)=>r[0]),t=A.map((r)=>r[1]);return{width:Math.max(...e)-Math.min(...e),height:Math.max(...t)-Math.min(...t)}},y_=(A,e,t,r)=>{let i=t.map((C)=>C[A]),u=Math.max(...i),a=Math.min(...i),n=u-a,o=n===0?1:e/n,s=1/0,l=t.map((C)=>{let B=C[A]*o,E=[...C];return E[A]=B,B<s&&(s=B),E});if(!r||l.length===2)return l;let g=a-s;return l.map((C)=>C.map((B,E)=>E===A?B+g:B))},wQe=class A{static getBounds(e,t){let r=A.boundsCache.get(e);if(r?.version&&r.version===e.version&&!Tu(e))return r.bounds;let i=A.calculateBounds(e,t);return A.boundsCache.set(e,{version:e.version,bounds:i}),i}static calculateBounds(e,t){let r,[i,u,a,n,o,s]=Nr(e,t);if(Lc(e)){let[l,g,C,B]=DhA(e.points.map(([E,d])=>De(X(E,d),X(o-e.x,s-e.y),e.angle)));return[l+e.x,g+e.y,C+e.x,B+e.y]}else if(Gr(e))r=Zir(e,o,s,t);else if(e.type==="diamond"){let[l,g]=De(X(o,u),X(o,s),e.angle),[C,B]=De(X(o,n),X(o,s),e.angle),[E,d]=De(X(i,s),X(o,s),e.angle),[I,h]=De(X(a,s),X(o,s),e.angle),Q=Math.min(l,C,E,I),p=Math.min(g,B,d,h),m=Math.max(l,C,E,I),f=Math.max(g,B,d,h);r=[Q,p,m,f]}else if(e.type==="ellipse"){let l=(a-i)/2,g=(n-u)/2,C=Math.cos(e.angle),B=Math.sin(e.angle),E=Math.hypot(l*C,g*B),d=Math.hypot(g*C,l*B);r=[o-E,s-d,o+E,s+d]}else{let[l,g]=De(X(i,u),X(o,s),e.angle),[C,B]=De(X(i,n),X(o,s),e.angle),[E,d]=De(X(a,n),X(o,s),e.angle),[I,h]=De(X(a,u),X(o,s),e.angle),Q=Math.min(l,C,E,I),p=Math.min(g,B,d,h),m=Math.max(l,C,E,I),f=Math.max(g,B,d,h);r=[Q,p,m,f]}return r}},Oir,Nr=(A,e,t=!1)=>{if(Lc(A))return _ir(A);if(Gr(A))return It.getElementAbsoluteCoords(A,e,t);if(Bt(A)){let r=e?Do(A,e):null;if(Jr(r)){let{x:i,y:u}=It.getBoundTextElementPosition(r,A,e);return[i,u,i+A.width,u+A.height,i+A.width/2,u+A.height/2]}}return[A.x,A.y,A.x+A.width,A.y+A.height,A.x+A.width/2,A.y+A.height/2]},pEe=(A,e)=>{let[t,r,i,u,a,n]=Nr(A,e),o=X(a,n);if(Gr(A)||Lc(A)){let h=[],Q=0;for(;Q<A.points.length-1;)h.push(Wt(De(X(A.points[Q][0]+A.x,A.points[Q][1]+A.y),o,A.angle),De(X(A.points[Q+1][0]+A.x,A.points[Q+1][1]+A.y),o,A.angle))),Q++;return h}let[s,l,g,C,B,E,d,I]=[[t,r],[i,r],[t,u],[i,u],[a,r],[a,u],[t,n],[i,n]].map((h)=>De(h,o,A.angle));return A.type==="diamond"?[Wt(B,d),Wt(B,I),Wt(E,d),Wt(E,I)]:A.type==="ellipse"?[Wt(B,d),Wt(B,I),Wt(E,d),Wt(E,I),Wt(B,d),Wt(B,I),Wt(E,d),Wt(E,I)]:[Wt(s,l),Wt(g,C),Wt(s,g),Wt(l,C),Wt(s,I),Wt(g,I),Wt(l,d),Wt(C,d)]},bQe=(A)=>{let e=Math.floor(A.width/2)+1,t=0,r=A.width,i=Math.floor(A.height/2)+1,u=e,a=A.height;return[e,t,r,i,u,a,0,i]},fEe=(A,e,t,r,i)=>{let u=1-A;return Math.pow(u,3)*e+3*Math.pow(u,2)*A*t+3*u*Math.pow(A,2)*r+Math.pow(A,3)*i},mEe=(A,e,t,r)=>{let i=e-A,u=t-e,a=r-t,n=3*i-6*u+3*a,o=6*u-6*i,s=3*i,l=o*o-4*n*s;if(!(l>=0))return!1;let g=null,C=null,B=1/0,E=1/0;return n===0?B=E=-s/o:(B=(-o+Math.sqrt(l))/(2*n),E=(-o-Math.sqrt(l))/(2*n)),B>=0&&B<=1&&(g=fEe(B,A,e,t,r)),E>=0&&E<=1&&(C=fEe(E,A,e,t,r)),[g,C]},Pir=(A,e,t,r)=>{let i=mEe(A[0],e[0],t[0],r[0]),u=mEe(A[1],e[1],t[1],r[1]),a=Math.min(A[0],r[0]),n=Math.max(A[0],r[0]);if(i){let l=i.filter((g)=>g!==null);a=Math.min(a,...l),n=Math.max(n,...l)}let o=Math.min(A[1],r[1]),s=Math.max(A[1],r[1]);if(u){let l=u.filter((g)=>g!==null);o=Math.min(o,...l),s=Math.max(s,...l)}return[a,o,n,s]},sW=(A,e)=>{let t=X(0,0),{minX:r,minY:i,maxX:u,maxY:a}=A.reduce((n,{op:o,data:s})=>{if(o==="move"){let l=dIA(s);fn(l!=null,"Op data is not a point"),t=l}else if(o==="bcurveTo"){let l=X(s[0],s[1]),g=X(s[2],s[3]),C=X(s[4],s[5]),B=e?e(l):l,E=e?e(g):g,d=e?e(C):C,I=e?e(t):t;t=C;let[h,Q,p,m]=Pir(I,B,E,d);n.minX=Math.min(n.minX,h),n.minY=Math.min(n.minY,Q),n.maxX=Math.max(n.maxX,p),n.maxY=Math.max(n.maxY,m)}return n},{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0});return[r,i,u,a]},DhA=(A)=>{let e=1/0,t=1/0,r=-1/0,i=-1/0;for(let[u,a]of A)e=Math.min(e,u),t=Math.min(t,a),r=Math.max(r,u),i=Math.max(i,a);return[e,t,r,i]},_ir=(A)=>{let[e,t,r,i]=DhA(A.points),u=e+A.x,a=t+A.y,n=r+A.x,o=i+A.y;return[u,a,n,o,(u+n)/2,(a+o)/2]},Wir=(A)=>{switch(A){case"arrow":return 25;case"diamond":case"diamond_outline":return 12;case"crowfoot_many":case"crowfoot_one":case"crowfoot_one_or_many":return 20;default:return 15}},qir=(A)=>{switch(A){case"bar":return 90;case"arrow":return 20;default:return 25}},DEe=(A,e,t,r)=>{if(e.length<1)return null;let i=Z1(e[0]);if(i.length<1)return null;let u=t==="start"?1:i.length-1,a=i[u].data;fn(a.length===6,"Op data length is not 6");let n=X(a[4],a[5]),o=X(a[2],a[3]),s=X(a[0],a[1]),l=i[u-1],g=X(0,0);if(l.op==="move"){let T=dIA(l.data);fn(T!=null,"Op data is not a point"),g=T}else l.op==="bcurveTo"&&(g=X(l.data[4],l.data[5]));let C=(T,R)=>Math.pow(1-T,3)*n[R]+3*T*Math.pow(1-T,2)*o[R]+3*Math.pow(T,2)*(1-T)*s[R]+g[R]*Math.pow(T,3),[B,E]=t==="start"?g:n,[d,I]=[C(0.3,0),C(0.3,1)],h=Math.hypot(B-d,E-I),Q=(B-d)/h,p=(E-I)/h,m=Wir(r),f=0;{let[T,R]=t==="end"?A.points[A.points.length-1]:A.points[0],[L,M]=A.points.length>1?t==="end"?A.points[A.points.length-2]:A.points[1]:[0,0];f=Math.hypot(T-L,R-M)}let D=Math.min(m,f*(r==="diamond"||r==="diamond_outline"?0.25:0.5)),w=B-Q*D,b=E-p*D;if(r==="dot"||r==="circle"||r==="circle_outline"){let T=Math.hypot(b-E,w-B)+A.strokeWidth-2;return[B,E,T]}let k=qir(r);if(r==="crowfoot_many"||r==="crowfoot_one_or_many"){let[T,R]=De(X(B,E),X(w,b),x1(-k)),[L,M]=De(X(B,E),X(w,b),x1(k));return[w,b,T,R,L,M]}let[v,S]=De(X(w,b),X(B,E),-k*Math.PI/180),[x,F]=De(X(w,b),X(B,E),x1(k));if(r==="diamond"||r==="diamond_outline"){let T,R;if(t==="start"){let[L,M]=A.points.length>1?A.points[1]:[0,0];[T,R]=De(X(B+D*2,E),X(B,E),Math.atan2(M-E,L-B))}else{let[L,M]=A.points.length>1?A.points[A.points.length-2]:[0,0];[T,R]=De(X(B-D*2,E),X(B,E),Math.atan2(E-M,B-L))}return[B,E,v,S,T,R,x,F]}return[B,E,v,S,x,F]},zir=(A)=>{let e=yc.generator(),t=yg(A),r=A.roundness?"curve":t.fill?"polygon":"linearPath";return e[r](A.points,t)},Zir=(A,e,t,r)=>{let i=Ur(A,r);if(A.points.length<2){let[s,l]=A.points[0],[g,C]=De(X(A.x+s,A.y+l),X(e,t),A.angle),B=[g,C,g,C];if(i){let E=It.getMinMaxXYWithBoundText(A,r,[g,C,g,C],i);B=[E[0],E[1],E[2],E[3]]}return B}let u=na.get(A)?.[0]??zir(A),a=Z1(u),n=sW(a,([s,l])=>De(X(A.x+s,A.y+l),X(e,t),A.angle)),o=[n[0],n[1],n[2],n[3]];if(i){let s=It.getMinMaxXYWithBoundText(A,r,o,i);o=[s[0],s[1],s[2],s[3]]}return o},XC=(A,e)=>Oir.getBounds(A,e),Pi=(A,e)=>{if(!A.length)return[0,0,0,0];let t=1/0,r=-1/0,i=1/0,u=-1/0,a=e||ar(A);return A.forEach((n)=>{let[o,s,l,g]=XC(n,a);t=Math.min(t,o),i=Math.min(i,s),r=Math.max(r,l),u=Math.max(u,g)}),[t,i,r,u]},yhA=(A,e)=>{let[t,r,i,u]=Pi(A);return[t+e.x,r+e.y,i+e.x,u+e.y]},S1=(A,e,t,r)=>{if(!(Gr(A)||Lc(A)))return[A.x,A.y,A.x+e,A.y+t];let i=y_(0,e,y_(1,t,A.points,r),r),u;if(Lc(A))u=DhA(i);else{let l=yc.generator(),g=A.roundness?l.curve(i,yg(A)):l.linearPath(i,yg(A)),C=Z1(g);u=sW(C)}let[a,n,o,s]=u;return[a+A.x,n+A.y,o+A.x,s+A.y]},yEe=(A,e)=>{let t=yc.generator(),r=A.roundness==null?t.linearPath(e,yg(A)):t.curve(e,yg(A)),i=Z1(r),[u,a,n,o]=sW(i);return[u+A.x,a+A.y,n+A.x,o+A.y]},Vir=(A,e)=>{if(!A.length)return[0,0,0,0];let t=1/0,r=A[0],i=ar(A);return A.forEach((u)=>{let[a,n,o,s]=XC(u,i),l=Ri(X((a+o)/2,(n+s)/2),X(e.x,e.y));l<t&&(t=l,r=u)}),XC(r,i)},Uc=(A)=>{let[e,t,r,i]=Pi(A);return{minX:e,minY:t,maxX:r,maxY:i,width:r-e,height:i-t,midX:(e+r)/2,midY:(t+i)/2}},vQe=({scrollX:A,scrollY:e,width:t,height:r,zoom:i})=>[-A,-e,-A+t/i.value,-e+r/i.value],whA=(A)=>X(A[0]+(A[2]-A[0])/2,A[1]+(A[3]-A[1])/2),jir=(A,e)=>{if(A==null||e==null)return!1;let[t,r,i,u]=A,[a,n,o,s]=e;return t<o&&i>a&&r<s&&u>n},lW=(A,e)=>{switch(A.type){case"rectangle":case"image":case"text":case"iframe":case"embeddable":case"frame":case"magicframe":return Xir(A,e);case"diamond":return $ir(A,e);case"ellipse":return Aur(A,e)}},Xir=(A,e)=>{let t=X(A.x+A.width/2,A.y+A.height/2),r=De(e,t,-A.angle),[i,u]=uQe(A);return Math.min(...i.map((a)=>IIA(r,a)),...u.map((a)=>qde(a,r)).filter((a)=>a!==null))},$ir=(A,e)=>{let t=X(A.x+A.width/2,A.y+A.height/2),r=De(e,t,-A.angle),[i,u]=aQe(A);return Math.min(...i.map((a)=>IIA(r,a)),...u.map((a)=>qde(a,r)).filter((a)=>a!==null))},Aur=(A,e)=>{let t=X(A.x+A.width/2,A.y+A.height/2);return hir(De(e,t,-A.angle),iQe(t,A.width/2,A.height/2))},kQe=(A)=>!A[PA.CTRL_OR_CMD],U1=(A)=>A.isBindingEnabled,Lu=5,gW=10,cW=4,eur=(A,e)=>{let t=[];return e.forEach((r)=>{let i=A.getNonDeletedElement(r);i!=null&&t.push(i)}),t},V8=(A,e,t,r,i)=>{let u=new Set,a=new Set;wEe(A,e,t,"start",u,a,r),wEe(A,t,e,"end",u,a,r);let n=Array.from(a).filter((o)=>!u.has(o));eur(i,n).forEach((o)=>{xe(o,{boundElements:o.boundElements?.filter((s)=>s.type!=="arrow"||s.id!==A.id)})})},wEe=(A,e,t,r,i,u,a)=>{if(e!=="keep"){if(e===null){let n=aur(A,r);n!=null&&u.add(n);return}SQe(A)?(t==null||(t==="keep"?!xQe(A,e,r):r==="start"||t.id!==e.id))&&($C(A,e,r,a),i.add(e.id)):($C(A,e,r,a),i.add(e.id))}},tur=(A,e,t,r)=>{let i=LQe(A,e,t),u=e==="start"?A.startBinding?.elementId:A.endBinding?.elementId;if(u){let a=t.get(u);if(Rc(a)&&c_(a,i,t,r))return a}return null},FQe=(A,e,t)=>["start","end"].map((r)=>tur(A,r,e,t)),rur=(A,e,t,r,i,u)=>{let a=A.points.length-1,n=t.findIndex((g)=>g===0)>-1,o=t.findIndex((g)=>g===a)>-1,s=n?e?u9(A,"start",r,i,u):null:pt(A)?"keep":u9(A,"start",r,i,u),l=o?e?u9(A,"end",r,i,u):null:pt(A)?"keep":u9(A,"end",r,i,u);return[s,l]},iur=(A,e,t,r,i)=>{if(pt(A))return["keep","keep"];let[u,a]=FQe(A,e,i),n=u&&r?u9(A,"start",e,t,i):null,o=a&&r?u9(A,"end",e,t,i):null;return[n,o]},j8=(A,e,t,r,i,u,a)=>{A.forEach((n)=>{let[o,s]=u?.length?rur(n,i,u??[],e,t,a):iur(n,e,t,i,a);V8(n,o,s,e,r)})},CW=(A,e,t)=>A.length>50?[]:A.filter(Gr).flatMap((r)=>FQe(r,e,t)).filter((r)=>r!==null).filter((r)=>A.filter((i)=>i.id===r?.id).length===0),BW=(A,e,t,r,i)=>{e.startBoundElement!=null&&$C(A,e.startBoundElement,"start",r);let u=Nc(t,i,r,e.zoom,pt(A),pt(A));u!==null&&(xQe(A,u,"end")||$C(A,u,"end",r))},uur=(A,e)=>{let t=A.gap,r=k9(e,e.width,e.height);return t>r&&(t=gW+cW),{...A,gap:t}},$C=(A,e,t,r)=>{if(!Jr(A))return;let i={elementId:e.id,...pt(A)?{...X8(A,e,t,r),focus:0,gap:0}:{...uur(sur(A,e,t,r),e)}};xe(A,{[t==="start"?"startBinding":"endBinding"]:i}),ar(e.boundElements||[]).has(A.id)||xe(e,{boundElements:(e.boundElements||[]).concat({id:A.id,type:"arrow"})})},xQe=(A,e,t)=>{let r=A[t==="start"?"endBinding":"startBinding"];return bhA(A,r?.elementId,e)},bhA=(A,e,t)=>e===t.id&&SQe(A),SQe=(A)=>A.points.length<3,aur=(A,e)=>{let t=e==="start"?"startBinding":"endBinding",r=A[t];return r==null?null:(xe(A,{[t]:null}),r.elementId)},Nc=(A,e,t,r,i,u)=>{if(u){let a=!1,n=our(e,(s)=>Rc(s,!1)&&c_(s,A,t,r,(i||!xdA(s))&&!nr(s))).filter((s)=>a?!1:(xdA(s)||(a=!0),!0));if(!n||n.length===0)return null;if(n.length===1)return n[0];let o=n.filter((s)=>c_(s,A,t,r,!1));return o.length===1?o[0]:n.sort((s,l)=>l.width**2+l.height**2-(s.width**2+s.height**2)).pop()}return nur(e,(a)=>Rc(a,!1)&&c_(a,A,t,r,(i||!xdA(a))&&!nr(a)))},nur=(A,e)=>{let t=null;for(let r=A.length-1;r>=0;--r){let i=A[r];if(!i.isDeleted&&e(i)){t=i;break}}return t},our=(A,e)=>{let t=[];for(let r=A.length-1;r>=0;--r){let i=A[r];i.isDeleted||e(i)&&t.push(i)}return t},sur=(A,e,t,r)=>{let i=t==="start"?-1:1,u=i===-1?0:A.points.length-1,a=u-i,n=It.getPointAtIndexGlobalCoordinates(A,u,r),o=It.getPointAtIndexGlobalCoordinates(A,a,r);return{focus:hur(e,o,n),gap:Math.max(1,lW(e,n))}},Hs=(A,e,t)=>{let{newSize:r,simultaneouslyUpdated:i}=t??{},u=gur(i);Rc(A)&&EW(e,A,(a)=>{if(!Gr(a)||a.isDeleted||!lur(a,A))return;let n=a.startBinding?e.get(a.startBinding.elementId):null,o=a.endBinding?e.get(a.endBinding.elementId):null,s=null,l=null;n&&o&&(s=XC(n,e),l=XC(o,e));let g={startBinding:bEe(A,a.startBinding,r),endBinding:bEe(A,a.endBinding,r)};if(u.has(a.id)){xe(a,g,!0);return}let C=dW(e,a,(E,d)=>{if(E&&Rc(E)&&(d==="startBinding"||d==="endBinding")&&(A.id===a[d]?.elementId||A.id===a[d==="startBinding"?"endBinding":"startBinding"]?.elementId&&!jir(s,l))){let I=Iur(a,d,g[d],E,e);if(I)return{index:d==="startBinding"?0:a.points.length-1,point:I}}return null}).filter((E)=>E!==null);It.movePoints(a,C,{...A.id===a.startBinding?.elementId?{startBinding:g.startBinding}:{},...A.id===a.endBinding?.elementId?{endBinding:g.endBinding}:{}});let B=Ur(a,e);B&&!B.isDeleted&&L9(a,e,!1)})},lur=(A,e)=>A.startBinding?.elementId===e.id||A.endBinding?.elementId===e.id,gur=(A)=>new Set((A||[]).map((e)=>e.id)),cur=(A,e,t,r,i,u,a)=>{let n=_m(Mt(e,A));return!t||!r?n:Cur(u,t,i,a)?mhA(t,r,A):_m(Mt(A,X(t.x+t.width/2,t.y+t.height/2)))},Cur=(A,e,t,r)=>{let i=lW(e,A),u=k9(e,e.width,e.height,r);return i>u?null:i},B9=(A,e,t)=>{let r=e&&qC(e),i=A.points[t==="start"?0:A.points.length-1],u=X(A.x+i[0],A.y+i[1]),a=r$t(e)?Eur(e,u):u;if(e&&r){let n=whA(r),o=oQe(e,Wt(n,$r(ba(m0(Mt(a,n)),Math.max(e.width,e.height)),n)))[0],s=Ri(a,n),l=Math.max(Ri(o??a,n),0.0001),g=aB(s/l,6);switch(!0){case g>0.9:return s-l>Lu||p8(a,o)<0.0001?a:$r(ba(m0(Mt(a,o??n)),g>1?Lu:-Lu),o??n);default:return Bur(a,e,r)}}return a},Bur=(A,e,t)=>{let r=whA(t),i=_m(Mt(A,r));switch(!0){case va(i,Ts):return De(X((t[0]+t[2])/2+0.1,t[1]),r,e.angle);case va(i,wa):return De(X(t[2],(t[1]+t[3])/2+0.1),r,e.angle);case va(i,fo):return De(X((t[0]+t[2])/2-0.1,t[3]),r,e.angle);default:return De(X(t[0],(t[1]+t[3])/2-0.1),r,e.angle)}},Eur=(A,e)=>{let t=X(A.x+A.width/2,A.y+A.height/2),r=De(e,t,-A.angle);return r[0]<A.x&&r[1]<A.y?r[1]-A.y>-Lu?De(X(A.x-Lu,A.y),t,A.angle):De(X(A.x,A.y-Lu),t,A.angle):r[0]<A.x&&r[1]>A.y+A.height?r[0]-A.x>-Lu?De(X(A.x,A.y+A.height+Lu),t,A.angle):De(X(A.x-Lu,A.y+A.height),t,A.angle):r[0]>A.x+A.width&&r[1]>A.y+A.height?r[0]-A.x<A.width+Lu?De(X(A.x+A.width,A.y+A.height+Lu),t,A.angle):De(X(A.x+A.width+Lu,A.y+A.height),t,A.angle):r[0]>A.x+A.width&&r[1]<A.y?r[0]-A.x<A.width+Lu?De(X(A.x+A.width,A.y-Lu),t,A.angle):De(X(A.x+A.width+Lu,A.y),t,A.angle):e},dur=(A,e,t=0.05)=>{let{x:r,y:i,width:u,height:a,angle:n}=A,o=X(r+u/2-0.1,i+a/2-0.1),s=De(e,o,-n),l=jr(t*a,5,80),g=jr(t*u,5,80);return s[0]<=r+u/2&&s[1]>o[1]-l&&s[1]<o[1]+l?De(X(r-Lu,o[1]),o,n):s[1]<=i+a/2&&s[0]>o[0]-g&&s[0]<o[0]+g?De(X(o[0],i-Lu),o,n):s[0]>=r+u/2&&s[1]>o[1]-l&&s[1]<o[1]+l?De(X(r+u+Lu,o[1]),o,n):s[1]>=i+a/2&&s[0]>o[0]-g&&s[0]<o[0]+g?De(X(o[0],i+a+Lu),o,n):e},Iur=(A,e,t,r,i)=>{if(t==null||t.elementId!==r.id&&A.points.length>2)return null;let u=e==="startBinding"?-1:1,a=u===-1?0:A.points.length-1;if(pt(A)&&f_(t)){let g=IW(t.fixedPoint)??X8(A,r,e==="startBinding"?"start":"end",i).fixedPoint,C=X(r.x+r.width/2,r.y+r.height/2),B=X(r.x+g[0]*r.width,r.y+g[1]*r.height),E=De(B,C,r.angle);return It.pointFromAbsoluteCoords(A,E,i)}let n=a-u,o=It.getPointAtIndexGlobalCoordinates(A,n,i),s=Qur(r,t.focus,o),l;if(t.gap===0)l=s;else{let g=It.getPointAtIndexGlobalCoordinates(A,a,i),C=X(r.x+r.width/2,r.y+r.height/2),B=Ri(o,g)+Ri(o,C)+Math.max(r.width,r.height)*2,E=oQe(r,Wt(o,$r(ba(m0(Mt(s,o)),B),o)),t.gap).sort((d,I)=>p8(d,o)-p8(I,o));E.length>1?l=E[0]:E.length===1?l=s:l=g}return It.pointFromAbsoluteCoords(A,l,i)},X8=(A,e,t,r)=>{let i=[e.x,e.y,e.x+e.width,e.y+e.height],u=B9(A,e,t),a=X(i[0]+(i[2]-i[0])/2,i[1]+(i[3]-i[1])/2),n=De(u,a,-e.angle);return{fixedPoint:IW([(n[0]-e.x)/e.width,(n[1]-e.y)/e.height])}},bEe=(A,e,t)=>{if(e==null||t==null)return e;let{width:r,height:i}=t,{width:u,height:a}=A,n=Math.max(1,Math.min(k9(A,r,i),e.gap*(r<i?r/u:i/a)));return{...e,gap:n}},u9=(A,e,t,r,i)=>Nc(LQe(A,e,t),r,t,i,pt(A),pt(A)),LQe=(A,e,t)=>{let r=e==="start"?0:-1;return kc(It.getPointAtIndexGlobalCoordinates(A,r,t))},vhA=(A,e,t,r)=>{let i=new Set,u=new Set,a=r==="duplicatesServeAsOld",n=new Map([...t].map(([o,s])=>[s,o]));e.forEach((o)=>{let{boundElements:s}=o;if(s!=null&&s.length>0&&(s.forEach((l)=>{a&&!t.has(l.id)&&i.add(l.id)}),u.add(t.get(o.id))),jC(o)){if(o.startBinding!=null){let{elementId:l}=o.startBinding;a&&!t.has(l)&&u.add(l)}if(o.endBinding!=null){let{elementId:l}=o.endBinding;a&&!t.has(l)&&u.add(l)}(o.startBinding!=null||o.endBinding!=null)&&i.add(t.get(o.id))}}),A.filter(({id:o})=>i.has(o)).forEach((o)=>{let{startBinding:s,endBinding:l}=o;xe(o,{startBinding:vEe(s,t),endBinding:vEe(l,t)})}),A.filter(({id:o})=>u.has(o)).forEach((o)=>{let s=n.get(o.id),l=A.find(({id:g})=>g===s)?.boundElements;l&&l.length>0&&xe(o,{boundElements:l.map((g)=>t.has(g.id)?{id:t.get(g.id),type:g.type}:g)})})},vEe=(A,e)=>A==null?null:{...A,elementId:e.get(A.elementId)??A.elementId},khA=(A,e)=>{let t=ar(A);for(let r of e)a9.unbindAffected(t,r,xe),n9.unbindAffected(t,r,xe)},w8=(A,e,t=[])=>{if(!A)return null;let r=A.filter((i)=>!e.has(i.id));return r.push(...t.map((i)=>({id:i.id,type:i.type}))),r},c_=(A,{x:e,y:t},r,i,u)=>{let a=k9(A,A.width,A.height,i),n=nd(A,r);return _dA(X(e,t),n,a)||u===!0&&C9(X(e,t),qC(A))},k9=(A,e,t,r)=>{let i=r?.value&&r.value<1?r.value:1,u=(A.type==="diamond"?1/Math.sqrt(2):1)*Math.min(e,t);return Math.max(16,Math.min(0.25*u,32),gW/i+cW)},hur=(A,e,t)=>{let r=X(A.x+A.width/2,A.y+A.height/2);if(VC(e,t))return 0;let i=De(e,r,-A.angle),u=De(t,r,-A.angle),a=Math.sign(po(Mt(u,e),Mt(u,r)))*-1,n=Wt(u,$r(ba(m0(Mt(u,i)),Math.max(A.width*2,A.height*2)),u)),o=A.type==="diamond"?[Wt(X(A.x+A.width/2,A.y),X(A.x+A.width/2,A.y+A.height)),Wt(X(A.x,A.y+A.height/2),X(A.x+A.width,A.y+A.height/2))]:[Wt(X(A.x,A.y),X(A.x+A.width,A.y+A.height)),Wt(X(A.x+A.width,A.y),X(A.x,A.y+A.height))],s=A.type==="diamond"?[Wt(X(A.x+A.width/2,A.y-A.height),X(A.x+A.width/2,A.y+A.height*2)),Wt(X(A.x-A.width,A.y+A.height/2),X(A.x+A.width*2,A.y+A.height/2))]:[Wt(X(A.x-A.width,A.y-A.height),X(A.x+A.width*2,A.y+A.height*2)),Wt(X(A.x+A.width*2,A.y-A.height),X(A.x-A.width,A.y+A.height*2))];return[f8(n,s[0]),f8(n,s[1])].filter((l)=>l!==null).sort((l,g)=>p8(l,t)-p8(g,t)).map((l,g)=>a*Ri(r,l)/(A.type==="diamond"?Ri(o[g][0],o[g][1])/2:Math.sqrt(A.width**2+A.height**2)/2)).sort((l,g)=>Math.abs(l)-Math.abs(g))[0]??0},Qur=(A,e,t)=>{let r=X(A.x+A.width/2,A.y+A.height/2);if(e===0)return r;let i=(A.type==="diamond"?[X(A.x,A.y+A.height/2),X(A.x+A.width/2,A.y),X(A.x+A.width,A.y+A.height/2),X(A.x+A.width/2,A.y+A.height)]:[X(A.x,A.y),X(A.x+A.width,A.y),X(A.x+A.width,A.y+A.height),X(A.x,A.y+A.height)]).map((a)=>$r(ba(Mt(a,r),Math.abs(e)),r)).map((a)=>De(a,r,A.angle)),u=[po(Mt(t,i[0]),Mt(i[1],i[0]))>0&&(e>0?po(Mt(t,i[1]),Mt(i[2],i[1]))<0:po(Mt(t,i[3]),Mt(i[0],i[3]))<0),po(Mt(t,i[1]),Mt(i[2],i[1]))>0&&(e>0?po(Mt(t,i[2]),Mt(i[3],i[2]))<0:po(Mt(t,i[0]),Mt(i[1],i[0]))<0),po(Mt(t,i[2]),Mt(i[3],i[2]))>0&&(e>0?po(Mt(t,i[3]),Mt(i[0],i[3]))<0:po(Mt(t,i[1]),Mt(i[2],i[1]))<0),po(Mt(t,i[3]),Mt(i[0],i[3]))>0&&(e>0?po(Mt(t,i[0]),Mt(i[1],i[0]))<0:po(Mt(t,i[2]),Mt(i[3],i[2]))<0)];return u[0]?e>0?i[1]:i[0]:u[1]?e>0?i[2]:i[1]:u[2]?e>0?i[3]:i[2]:e>0?i[0]:i[3]},pur,EW=(A,e,t)=>{Rc(e)&&(e.boundElements?.slice()??[]).forEach(({id:r})=>{t(A.get(r),"boundElements",r)})},dW=(A,e,t)=>{let r=[];if(e.frameId){let i=e.frameId;r.push(t(A.get(i),"frameId",i))}if(Tu(e)){let i=e.containerId;r.push(t(A.get(i),"containerId",i))}if(Jr(e)){if(e.startBinding){let i=e.startBinding.elementId;r.push(t(A.get(i),"startBinding",i))}if(e.endBinding){let i=e.endBinding.elementId;r.push(t(A.get(i),"endBinding",i))}}return r},a9=class{static unbindAffected(A,e,t){e&&dW(A,e,(r)=>{!r||r.isDeleted||EW(A,r,(i,u,a)=>{a===e.id&&t(r,{boundElements:w8(r.boundElements,new Set([a]))})})})}},n9=class{static unbindAffected(A,e,t){e&&EW(A,e,(r)=>{!r||r.isDeleted||dW(A,r,(i,u,a)=>{a===e.id&&t(r,{[u]:null})})})}},zdA=(A,e)=>{let[t,r]=IW(A);return De(X(e.x+e.width*t,e.y+e.height*r),X(e.x+e.width/2,e.y+e.height/2),e.angle)},fur=(A,e)=>{let t=A.startBinding&&e.get(A.startBinding.elementId),r=A.endBinding&&e.get(A.endBinding.elementId),i=t&&A.startBinding?zdA(A.startBinding.fixedPoint,t):X(A.x+A.points[0][0],A.y+A.points[0][1]),u=r&&A.endBinding?zdA(A.endBinding.fixedPoint,r):X(A.x+A.points[A.points.length-1][0],A.y+A.points[A.points.length-1][1]);return[i,u]},mur=(A,e)=>{let[t,r]=fur(A,e);return[It.pointFromAbsoluteCoords(A,t,e),It.pointFromAbsoluteCoords(A,r,e)]},IW=(A)=>A&&(Math.abs(A[0]-0.5)<0.0001||Math.abs(A[1]-0.5)<0.0001)?A.map((e)=>Math.abs(e-0.5)<0.0001?0.5001:e):A,Dur=(A,e)=>{let[t,r,i,u]=e,{x:a,y:n}=Sc({sceneX:t,sceneY:r},A),{x:o,y:s}=Sc({sceneX:i,sceneY:u},A);return o-a>A.width||s-n>A.height},FhA=({scenePoint:A,viewportDimensions:e,zoom:t,offsets:r})=>{let i=(e.width-(r?.right??0))/2/t.value-A.x;i+=(r?.left??0)/2/t.value;let u=(e.height-(r?.bottom??0))/2/t.value-A.y;return u+=(r?.top??0)/2/t.value,{scrollX:i,scrollY:u}},F9=(A,e)=>{if(A=anr(A),!A.length)return{scrollX:0,scrollY:0};let[t,r,i,u]=Pi(A);Dur(e,[t,r,i,u])&&([t,r,i,u]=Vir(A,Ru({clientX:e.scrollX,clientY:e.scrollY},e)));let a=(t+i)/2,n=(r+u)/2;return FhA({scenePoint:{x:a,y:n},viewportDimensions:{width:e.width,height:e.height},zoom:e.zoom})},dd=(A)=>jr(aB(A,6),N_,G_),yur=(A)=>jr(Math.round(A),1,100),xhA=(A)=>jr(Math.round(A),1,100),ShA=(A,e,t)=>{let r=t.reduce((i,u)=>(u.groupIds.includes(A)&&(i[u.id]=!0),i),{});return Object.keys(r).length<2?e.selectedGroupIds[A]||e.editingGroupId===A?{selectedElementIds:e.selectedElementIds,selectedGroupIds:{...e.selectedGroupIds,[A]:!1},editingGroupId:null}:e:{editingGroupId:e.editingGroupId,selectedGroupIds:{...e.selectedGroupIds,[A]:!0},selectedElementIds:{...e.selectedElementIds,...r}}},Z0,LhA=(A,e)=>RhA(A,e)!=null,RhA=(A,e)=>e.groupIds.filter((t)=>t!==A.editingGroupId).find((t)=>A.selectedGroupIds[t]),V1=(A)=>Object.entries(A.selectedGroupIds).filter(([e,t])=>t).map(([e,t])=>e),NhA=(A,e)=>{let t={...e,selectedGroupIds:{}};for(let r of A){let i=r.groupIds;if(e.editingGroupId){let u=i.indexOf(e.editingGroupId);u>-1&&(i=i.slice(0,u))}if(i.length>0){let u=i[i.length-1];t={...t,...ShA(u,t,A)}}}return t.selectedGroupIds},RQe=(A,e)=>({...A,editingGroupId:e.groupIds.length?e.groupIds[0]:null,selectedGroupIds:{},selectedElementIds:{[e.id]:!0}}),x9=(A,e)=>A.groupIds.includes(e),Yu=(A,e)=>{let t=[];for(let r of A.values())x9(r,e)&&t.push(r);return t},NQe=(A,e)=>A.groupIds.find((t)=>e[t]),wur=(A,e,t)=>{let r=[...A],i=e?A.indexOf(e):-1,u=i>-1?i:A.length;for(let a=0;a<u;a++)r[a]=t(r[a]);return r},GQe=(A,e,t)=>{let r=[...A],i=t?r.indexOf(t):-1,u=i>-1?i:r.length;return r.splice(u,0,e),r},UQe=(A,e)=>A.filter((t)=>!e[t]),$8=(A,e)=>{let t=new Map;return A.forEach((r)=>{let i=r.groupIds.length===0?r.id:r.groupIds[r.groupIds.length-1],u=t.get(i)||[],a=Ur(r,e);a&&u.push(a),t.set(i,[...u,r])}),Array.from(t.values())},bur=(A)=>{let e=new Set;for(let[,t]of A)if(!t.isDeleted)for(let r of t.groupIds??[])e.add(r);return e},GhA=(A)=>{let e=A.flatMap((i)=>i.groupIds),t=new Map,r=0;for(let i of e)t.set(i,(t.get(i)??0)+1),t.get(i)>r&&(r=t.get(i));return r===A.length},o2=(A)=>A.groupIds.length>0,vur=8,kEe=99999,hW=(A)=>vur/A,Ll=class{},Id,S9=(A)=>A.props.gridModeEnabled??A.state.gridModeEnabled,Nh=({event:A,app:e,selectedElements:t})=>A?e.state.objectsSnapModeEnabled&&!A[PA.CTRL_OR_CMD]||!e.state.objectsSnapModeEnabled&&A[PA.CTRL_OR_CMD]&&!S9(e):t.length===1&&t[0].type==="arrow"?!1:e.state.objectsSnapModeEnabled,kur=(A,e,t=0.01)=>Math.abs(A-e)<=t,b8=(A,e,{omitCenter:t,boundingBoxCorners:r,dragOffset:i}={omitCenter:!1,boundingBoxCorners:!1})=>{let u=[];if(A.length===1){let a=A[0],[n,o,s,l,g,C]=Nr(a,e);i&&(n+=i.x,s+=i.x,g+=i.x,o+=i.y,l+=i.y,C+=i.y);let B=(s-n)/2,E=(l-o)/2;if((a.type==="diamond"||a.type==="ellipse")&&!r){let d=De(X(n,o+E),X(g,C),a.angle),I=De(X(n+B,o),X(g,C),a.angle),h=De(X(s,o+E),X(g,C),a.angle),Q=De(X(n+B,l),X(g,C),a.angle),p=X(g,C);u=t?[d,I,h,Q]:[d,I,h,Q,p]}else{let d=De(X(n,o),X(g,C),a.angle),I=De(X(s,o),X(g,C),a.angle),h=De(X(n,l),X(g,C),a.angle),Q=De(X(s,l),X(g,C),a.angle),p=X(g,C);u=t?[d,I,h,Q]:[d,I,h,Q,p]}}else if(A.length>1){let[a,n,o,s]=yhA(A,i??{x:0,y:0}),l=o-a,g=s-n,C=X(a,n),B=X(o,n),E=X(a,s),d=X(o,s),I=X(a+l/2,n+g/2);u=t?[C,B,E,d]:[C,B,E,d,I]}return u.map((a)=>X(ya(a[0]),ya(a[1])))},MQe=(A,e,t,r)=>{let i=e.filter((u)=>nr(u)).map((u)=>u.id);return T4e(A,e,t,r).filter((u)=>!(u.frameId&&i.includes(u.frameId)))},TQe=(A,e,t,r)=>{let i=MQe(A,e,t,r),u=$8(i,r).filter((g)=>!(g.length===1&&Tu(g[0]))).map((g)=>Pi(g).map((C)=>ya(C))),a=u.sort((g,C)=>g[0]-C[0]),n=[],o=0;A:for(let g=0;g<a.length;g++){let C=a[g];for(let B=g+1;B<a.length;B++){if(++o>kEe)break A;let E=a[B],[,d,I,h]=C,[Q,p,,m]=E;I<Q&&Q_(z0(d,h),z0(p,m))&&n.push({startBounds:C,endBounds:E,startSide:[X(I,d),X(I,h)],endSide:[X(Q,p),X(Q,m)],length:Q-I,overlap:p_(z0(d,h),z0(p,m))})}}let s=u.sort((g,C)=>g[1]-C[1]),l=[];o=0;A:for(let g=0;g<s.length;g++){let C=s[g];for(let B=g+1;B<s.length;B++){if(++o>kEe)break A;let E=s[B],[d,,I,h]=C,[Q,p,m]=E;h<p&&Q_(z0(d,I),z0(Q,m))&&l.push({startBounds:C,endBounds:E,startSide:[X(d,h),X(I,h)],endSide:[X(Q,p),X(m,p)],length:p-h,overlap:p_(z0(d,I),z0(Q,m))})}}return{horizontalGaps:n,verticalGaps:l}},FEe=(A,e,t,r,i,u,a)=>{if(!Nh({app:t,event:r,selectedElements:A}))return[];if(A.length===0)return[];let n=Id.getVisibleGaps();if(n){let{horizontalGaps:o,verticalGaps:s}=n,[l,g,C,B]=yhA(A,e).map((I)=>ya(I)),E=(l+C)/2,d=(g+B)/2;for(let I of o){if(!Q_(z0(g,B),I.overlap))continue;let h=I.startSide[0][0]+I.length/2,Q=ya(h-E);if(I.length>C-l&&Math.abs(Q)<=a.x){Math.abs(Q)<a.x&&(i.length=0),a.x=Math.abs(Q);let k={type:"gap",direction:"center_horizontal",gap:I,offset:Q};i.push(k);continue}let[,,p]=I.endBounds,m=l-p,f=ya(I.length-m);if(Math.abs(f)<=a.x){Math.abs(f)<a.x&&(i.length=0),a.x=Math.abs(f);let k={type:"gap",direction:"side_right",gap:I,offset:f};i.push(k);continue}let[D,,,]=I.startBounds,w=D-C,b=ya(w-I.length);if(Math.abs(b)<=a.x){Math.abs(b)<a.x&&(i.length=0),a.x=Math.abs(b);let k={type:"gap",direction:"side_left",gap:I,offset:b};i.push(k);continue}}for(let I of s){if(!Q_(z0(l,C),I.overlap))continue;let h=I.startSide[0][1]+I.length/2,Q=ya(h-d);if(I.length>B-g&&Math.abs(Q)<=a.y){Math.abs(Q)<a.y&&(u.length=0),a.y=Math.abs(Q);let k={type:"gap",direction:"center_vertical",gap:I,offset:Q};u.push(k);continue}let[,p,,]=I.startBounds,m=p-B,f=ya(m-I.length);if(Math.abs(f)<=a.y){Math.abs(f)<a.y&&(u.length=0),a.y=Math.abs(f);let k={type:"gap",direction:"side_top",gap:I,offset:f};u.push(k);continue}let[,,,D]=I.endBounds,w=ya(g-D),b=I.length-w;if(Math.abs(b)<=a.y){Math.abs(b)<a.y&&(u.length=0),a.y=Math.abs(b);let k={type:"gap",direction:"side_bottom",gap:I,offset:b};u.push(k);continue}}}},YQe=(A,e,t,r)=>{let i=MQe(A,e,t,r);return $8(i,r).filter((u)=>!(u.length===1&&Tu(u[0]))).flatMap((u)=>b8(u,r))},E9=(A,e,t,r,i,u,a)=>{if(!Nh({app:t,event:r,selectedElements:A})||A.length===0&&e.length===0)return[];let n=Id.getReferenceSnapPoints();if(n)for(let o of e)for(let s of n){let l=s[0]-o[0],g=s[1]-o[1];Math.abs(l)<=a.x&&(Math.abs(l)<a.x&&(i.length=0),i.push({type:"point",points:[o,s],offset:l}),a.x=Math.abs(l)),Math.abs(g)<=a.y&&(Math.abs(g)<a.y&&(u.length=0),u.push({type:"point",points:[o,s],offset:g}),a.y=Math.abs(g))}},HQe=(A,e,t,r,i)=>{let u=t.state,a=Or(A,u);if(!Nh({app:t,event:r,selectedElements:a})||a.length===0)return{snapOffset:{x:0,y:0},snapLines:[]};e.x=ya(e.x),e.y=ya(e.y);let n=[],o=[],s=hW(u.zoom.value),l={x:s,y:s},g=b8(a,i,{dragOffset:e});E9(a,g,t,r,n,o,l),FEe(a,e,t,r,n,o,l);let C={x:n[0]?.offset??0,y:o[0]?.offset??0};l.x=0,l.y=0,n.length=0,o.length=0;let B={x:ya(e.x+C.x),y:ya(e.y+C.y)};E9(a,b8(a,i,{dragOffset:B}),t,r,n,o,l),FEe(a,B,t,r,n,o,l);let E=UhA(n,o),d=xur(a,B,[...n,...o].filter((I)=>I.type==="gap"));return{snapOffset:C,snapLines:[...E,...d]}},ya=(A)=>Math.round(A*1e6)/1e6,xEe=(A)=>{let e=new Map;for(let t of A){let r=t.join(",");e.has(r)||e.set(r,t)}return Array.from(e.values())},UhA=(A,e)=>{let t={},r={};if(A.length>0){for(let i of A)if(i.type==="point"){let u=ya(i.points[0][0]);t[u]||(t[u]=[]),t[u].push(...i.points.map((a)=>X(ya(a[0]),ya(a[1]))))}}if(e.length>0){for(let i of e)if(i.type==="point"){let u=ya(i.points[0][1]);r[u]||(r[u]=[]),r[u].push(...i.points.map((a)=>X(ya(a[0]),ya(a[1]))))}}return Object.entries(t).map(([i,u])=>({type:"points",points:xEe(u.map((a)=>X(Number(i),a[1])).sort((a,n)=>a[1]-n[1]))})).concat(Object.entries(r).map(([i,u])=>({type:"points",points:xEe(u.map((a)=>X(a[0],Number(i))).sort((a,n)=>a[0]-n[0]))})))},Fur=(A)=>{let e=new Map;for(let t of A){let r=t.points.flat().map((i)=>[ya(i)]).join(",");e.has(r)||e.set(r,t)}return Array.from(e.values())},xur=(A,e,t)=>{let[r,i,u,a]=yhA(A,e),n=[];for(let o of t){let[s,l,g,C]=o.gap.startBounds,[B,E,d,I]=o.gap.endBounds,h=p_(z0(i,a),o.gap.overlap),Q=p_(z0(r,u),o.gap.overlap);switch(o.direction){case"center_horizontal":{if(h){let p=(h[0]+h[1])/2;n.push({type:"gap",direction:"horizontal",points:[X(o.gap.startSide[0][0],p),X(r,p)]},{type:"gap",direction:"horizontal",points:[X(u,p),X(o.gap.endSide[0][0],p)]})}break}case"center_vertical":{if(Q){let p=(Q[0]+Q[1])/2;n.push({type:"gap",direction:"vertical",points:[X(p,o.gap.startSide[0][1]),X(p,i)]},{type:"gap",direction:"vertical",points:[X(p,a),X(p,o.gap.endSide[0][1])]})}break}case"side_right":{if(h){let p=(h[0]+h[1])/2;n.push({type:"gap",direction:"horizontal",points:[X(g,p),X(B,p)]},{type:"gap",direction:"horizontal",points:[X(d,p),X(r,p)]})}break}case"side_left":{if(h){let p=(h[0]+h[1])/2;n.push({type:"gap",direction:"horizontal",points:[X(u,p),X(s,p)]},{type:"gap",direction:"horizontal",points:[X(g,p),X(B,p)]})}break}case"side_top":{if(Q){let p=(Q[0]+Q[1])/2;n.push({type:"gap",direction:"vertical",points:[X(p,a),X(p,l)]},{type:"gap",direction:"vertical",points:[X(p,C),X(p,E)]})}break}case"side_bottom":{if(Q){let p=(Q[0]+Q[1])/2;n.push({type:"gap",direction:"vertical",points:[X(p,C),X(p,E)]},{type:"gap",direction:"vertical",points:[X(p,I),X(p,i)]})}break}}}return Fur(n.map((o)=>({...o,points:o.points.map((s)=>X(ya(s[0]),ya(s[1])))})))},MhA=(A,e,t,r,i,u)=>{if(!Nh({event:r,selectedElements:A,app:t})||A.length===0||A.length===1&&!kur(A[0].angle,0))return{snapOffset:{x:0,y:0},snapLines:[]};let[a,n,o,s]=Pi(e);u&&(u.includes("e")?o+=i.x:u.includes("w")&&(a+=i.x),u.includes("n")?n+=i.y:u.includes("s")&&(s+=i.y));let l=[];if(u)switch(u){case"e":{l.push(X(o,n),X(o,s));break}case"w":{l.push(X(a,n),X(a,s));break}case"n":{l.push(X(a,n),X(o,n));break}case"s":{l.push(X(a,s),X(o,s));break}case"ne":{l.push(X(o,n));break}case"nw":{l.push(X(a,n));break}case"se":{l.push(X(o,s));break}case"sw":{l.push(X(a,s));break}}let g=hW(t.state.zoom.value),C={x:g,y:g},B=[],E=[];E9(e,l,t,r,B,E,C);let d={x:B[0]?.offset??0,y:E[0]?.offset??0};C.x=0,C.y=0,B.length=0,E.length=0;let[I,h,Q,p]=Pi(A).map((D)=>ya(D)),m=[X(I,h),X(I,p),X(Q,h),X(Q,p)];E9(A,m,t,r,B,E,C);let f=UhA(B,E);return{snapOffset:d,snapLines:f}},KQe=(A,e,t,r,i,u)=>{if(!Nh({event:t,selectedElements:[A],app:e}))return{snapOffset:{x:0,y:0},snapLines:[]};let a=[X(r.x+i.x,r.y+i.y)],n=hW(e.state.zoom.value),o={x:n,y:n},s=[],l=[];E9([A],a,e,t,s,l,o);let g={x:s[0]?.offset??0,y:l[0]?.offset??0};o.x=0,o.y=0,s.length=0,l.length=0;let C=b8([A],u,{boundingBoxCorners:!0,omitCenter:!0});E9([A],C,e,t,s,l,o);let B=UhA(s,l);return{snapOffset:g,snapLines:B}},JQe=(A,e,t,r,i)=>{if(!Nh({event:r,selectedElements:[],app:e}))return{originOffset:{x:0,y:0},snapLines:[]};let u=T4e(A,[],e.state,i),a=hW(e.state.zoom.value),n={x:a,y:a},o=[],s=[];for(let l of u){let g=b8([l],i);for(let C of g){let B=C[0]-t.x;Math.abs(B)<=Math.abs(n.x)&&(Math.abs(B)<Math.abs(n.x)&&(s.length=0),s.push({type:"pointer",points:[C,X(C[0],t.y)],direction:"vertical"}),n.x=B);let E=C[1]-t.y;Math.abs(E)<=Math.abs(n.y)&&(Math.abs(E)<Math.abs(n.y)&&(o.length=0),o.push({type:"pointer",points:[C,X(t.x,C[1])],direction:"horizontal"}),n.y=E)}}return{originOffset:{x:s.length>0?s[0].points[0][0]-t.x:0,y:o.length>0?o[0].points[0][1]-t.y:0},snapLines:[...s,...o]}},OQe=(A)=>A===Jn.rectangle||A===Jn.ellipse||A===Jn.diamond||A===Jn.frame||A===Jn.magicframe||A===Jn.image||A===Jn.text,Dn=(A,e,t)=>t?[Math.round(A/t)*t,Math.round(e/t)*t]:[A,e],m1,$a=class A{constructor(e){GA(this,"elementId"),GA(this,"selectedPointsIndices"),GA(this,"pointerDownState"),GA(this,"isDragging"),GA(this,"lastUncommittedPoint"),GA(this,"pointerOffset"),GA(this,"startBindingElement"),GA(this,"endBindingElement"),GA(this,"hoverPointIndex"),GA(this,"segmentMidPointHoveredCoords"),GA(this,"elbowed"),this.elementId=e.id,VC(e.points[0],X(0,0))||console.error("Linear element is not normalized",Error().stack),this.selectedPointsIndices=null,this.lastUncommittedPoint=null,this.isDragging=!1,this.pointerOffset={x:0,y:0},this.startBindingElement="keep",this.endBindingElement="keep",this.pointerDownState={prevSelectedPointsIndices:null,lastClickedPoint:-1,lastClickedIsEndPoint:!1,origin:null,segmentMidpoint:{value:null,index:null,added:!1}},this.hoverPointIndex=-1,this.segmentMidPointHoveredCoords=null,this.elbowed=pt(e)&&e.elbowed}static getElement(e,t){return t.get(e)||null}static handleBoxSelection(e,t,r,i){if(!t.editingLinearElement||!t.selectionElement)return!1;let{editingLinearElement:u}=t,{selectedPointsIndices:a,elementId:n}=u,o=A.getElement(n,i);if(!o)return!1;let[s,l,g,C]=Nr(t.selectionElement,i),B=A.getPointsGlobalCoordinates(o,i).reduce((E,d,I)=>((d[0]>=s&&d[0]<=g&&d[1]>=l&&d[1]<=C||e.shiftKey&&a?.includes(I))&&E.push(I),E),[]).filter((E)=>!(pt(o)&&E!==0&&E!==o.points.length-1));r({editingLinearElement:{...u,selectedPointsIndices:B.length?B:null}})}static handlePointDragging(e,t,r,i,u,a,n){if(!a)return!1;let{elementId:o}=a,s=n.getNonDeletedElementsMap(),l=A.getElement(o,s);if(!l||pt(l)&&!a.pointerDownState.lastClickedIsEndPoint&&a.pointerDownState.lastClickedPoint!==0)return!1;let g=pt(l)?a.selectedPointsIndices?.reduce((E,d)=>d===0?[0,E[1]]:[E[0],l.points.length-1],[!1,!1]).filter((E)=>typeof E=="number"):a.selectedPointsIndices,C=pt(l)?a.pointerDownState.lastClickedPoint>0?l.points.length-1:0:a.pointerDownState.lastClickedPoint,B=l.points[C];if(g&&B){if(c9(e)&&g.length===1&&l.points.length>1){let E=g[0],d=l.points[E===0?1:E-1],[I,h]=A._getShiftLockedDelta(l,s,d,X(r,i),e[PA.CTRL_OR_CMD]?null:t.getEffectiveGridSize());A.movePoints(l,[{index:E,point:X(I+d[0],h+d[1]),isDragging:E===C}])}else{let E=A.createPointAt(l,s,r-a.pointerOffset.x,i-a.pointerOffset.y,e[PA.CTRL_OR_CMD]?null:t.getEffectiveGridSize()),d=E[0]-B[0],I=E[1]-B[1];A.movePoints(l,g.map((h)=>{let Q=h===C?A.createPointAt(l,s,r-a.pointerOffset.x,i-a.pointerOffset.y,e[PA.CTRL_OR_CMD]?null:t.getEffectiveGridSize()):X(l.points[h][0]+d,l.points[h][1]+I);return{index:h,point:Q,isDragging:h===C}}))}if(Ur(l,s)&&L9(l,s,!1),jC(l,!1)){let E=[];g[0]===0&&E.push(kc(A.getPointGlobalCoordinates(l,l.points[0],s)));let d=g[g.length-1];d===l.points.length-1&&E.push(kc(A.getPointGlobalCoordinates(l,l.points[d],s))),E.length&&u(l,E)}return!0}return!1}static handlePointerUp(e,t,r,i){let u=i.getNonDeletedElementsMap(),a=i.getNonDeletedElements(),{elementId:n,selectedPointsIndices:o,isDragging:s,pointerDownState:l}=t,g=A.getElement(n,u);if(!g)return t;let C={};if(s&&o){for(let B of o)if(B===0||B===g.points.length-1){od(g.points,r.zoom.value)&&A.movePoints(g,[{index:B,point:B===0?g.points[g.points.length-1]:g.points[0]}]);let E=U1(r)?Nc(kc(A.getPointAtIndexGlobalCoordinates(g,B,u)),a,u,r.zoom,pt(g),pt(g)):null;C[B===0?"startBindingElement":"endBindingElement"]=E}}return{...t,...C,selectedPointsIndices:s||e.shiftKey?!s&&e.shiftKey&&l.prevSelectedPointsIndices?.includes(l.lastClickedPoint)?o&&o.filter((B)=>B!==l.lastClickedPoint):o:o?.includes(l.lastClickedPoint)?[l.lastClickedPoint]:o,isDragging:!1,pointerOffset:{x:0,y:0}}}static isSegmentTooShort(e,t,r,i,u){if(pt(e))return i>=0&&i<e.points.length?Ri(t,r)*u.value<A.POINT_HANDLE_SIZE/2:!1;let a=Ri(t,r);return e.points.length>2&&e.roundness&&(a=bir(e,r)),a*u.value<A.POINT_HANDLE_SIZE*4}static getSegmentMidPoint(e,t,r,i,u){let a=U8(t,r);if(e.points.length>2&&e.roundness){let n=lQe(e,e.points[i]);if(n){let o=vir(e,e.points[i],0.5);a=A.getPointGlobalCoordinates(e,gQe(n[0],n[1],n[2],n[3],o),u)}}return a}static getSegmentMidPointIndex(e,t,r,i){let u=A.getElement(e.elementId,i);if(!u)return-1;let a=A.getEditorMidPoints(u,i,t),n=0;for(;n<a.length;){if(A.arePointsEqual(r,a[n]))return n+1;n++}return-1}static handlePointerDown(e,t,r,i,u,a){let n=t.state,o=a.getNonDeletedElementsMap(),s=a.getNonDeletedElements(),l={didAddPoint:!1,hitElement:null,linearElementEditor:null};if(!u)return l;let{elementId:g}=u,C=A.getElement(g,o);if(!C)return l;let B=A.getSegmentMidpointHitCoords(u,i,n,o),E=null;if(B)E=A.getSegmentMidPointIndex(u,n,B,o);else if(e.altKey&&n.editingLinearElement)return u.lastUncommittedPoint==null&&(xe(C,{points:[...C.points,A.createPointAt(C,o,i.x,i.y,e[PA.CTRL_OR_CMD]?null:t.getEffectiveGridSize())]}),l.didAddPoint=!0),r.shouldCaptureIncrement(),l.linearElementEditor={...u,pointerDownState:{prevSelectedPointsIndices:u.selectedPointsIndices,lastClickedPoint:-1,lastClickedIsEndPoint:!1,origin:{x:i.x,y:i.y},segmentMidpoint:{value:B,index:E,added:!1}},selectedPointsIndices:[C.points.length-1],lastUncommittedPoint:null,endBindingElement:Nc(i,s,o,t.state.zoom,u.elbowed)},l.didAddPoint=!0,l;let d=A.getPointIndexUnderCursor(C,o,n.zoom,i.x,i.y);if(d>=0||B)l.hitElement=C;else{let{startBindingElement:b,endBindingElement:k}=u;U1(n)&&jC(C)&&V8(C,b,k,o,a)}let[I,h,Q,p]=Nr(C,o),m=(I+Q)/2,f=(h+p)/2,D=d>-1&&De(X(C.x+C.points[d][0],C.y+C.points[d][1]),X(m,f),C.angle),w=d>-1||e.shiftKey?e.shiftKey||u.selectedPointsIndices?.includes(d)?Sur([...u.selectedPointsIndices||[],d]):[d]:null;return l.linearElementEditor={...u,pointerDownState:{prevSelectedPointsIndices:u.selectedPointsIndices,lastClickedPoint:d,lastClickedIsEndPoint:d===C.points.length-1,origin:{x:i.x,y:i.y},segmentMidpoint:{value:B,index:E,added:!1}},selectedPointsIndices:w,pointerOffset:D?{x:i.x-D[0],y:i.y-D[1]}:{x:0,y:0}},l}static arePointsEqual(e,t){return!e&&!t?!0:!e||!t?!1:VC(e,t)}static handlePointerMove(e,t,r,i,u){let a=i.state;if(!a.editingLinearElement)return null;let{elementId:n,lastUncommittedPoint:o}=a.editingLinearElement,s=A.getElement(n,u);if(!s)return a.editingLinearElement;let{points:l}=s,g=l[l.length-1];if(!e.altKey)return g===o&&A.deletePoints(s,[l.length-1]),{...a.editingLinearElement,lastUncommittedPoint:null};let C;if(c9(e)&&l.length>=2){let B=l[l.length-2],[E,d]=A._getShiftLockedDelta(s,u,B,X(t,r),e[PA.CTRL_OR_CMD]?null:i.getEffectiveGridSize());C=X(E+B[0],d+B[1])}else C=A.createPointAt(s,u,t-a.editingLinearElement.pointerOffset.x,r-a.editingLinearElement.pointerOffset.y,e[PA.CTRL_OR_CMD]||pt(s)?null:i.getEffectiveGridSize());return g===o?A.movePoints(s,[{index:s.points.length-1,point:C}]):A.addPoints(s,[{point:C}]),{...a.editingLinearElement,lastUncommittedPoint:s.points[s.points.length-1]}}static getPointGlobalCoordinates(e,t,r){let[i,u,a,n]=Nr(e,r),o=(i+a)/2,s=(u+n)/2,{x:l,y:g}=e;return De(X(l+t[0],g+t[1]),X(o,s),e.angle)}static getPointsGlobalCoordinates(e,t){let[r,i,u,a]=Nr(e,t),n=(r+u)/2,o=(i+a)/2;return e.points.map((s)=>{let{x:l,y:g}=e;return De(X(l+s[0],g+s[1]),X(n,o),e.angle)})}static getPointAtIndexGlobalCoordinates(e,t,r){let i=t<0?e.points.length+t:t,[u,a,n,o]=Nr(e,r),s=(u+n)/2,l=(a+o)/2,g=e.points[i],{x:C,y:B}=e;return g?De(X(C+g[0],B+g[1]),X(s,l),e.angle):De(X(C,B),X(s,l),e.angle)}static pointFromAbsoluteCoords(e,t,r){if(pt(e))return X(t[0]-e.x,t[1]-e.y);let[i,u,a,n]=Nr(e,r),o=(i+a)/2,s=(u+n)/2,[l,g]=De(X(t[0],t[1]),X(o,s),-e.angle);return X(l-e.x,g-e.y)}static getPointIndexUnderCursor(e,t,r,i,u){let a=A.getPointsGlobalCoordinates(e,t),n=a.length;for(;--n>-1;){let o=a[n];if(Ri(X(i,u),X(o[0],o[1]))*r.value<A.POINT_HANDLE_SIZE+1)return n}return-1}static createPointAt(e,t,r,i,u){let a=Dn(r,i,u),[n,o,s,l]=Nr(e,t),g=(n+s)/2,C=(o+l)/2,[B,E]=De(X(a[0],a[1]),X(g,C),-e.angle);return X(B-e.x,E-e.y)}static getNormalizedPoints(e){let{points:t}=e,r=t[0][0],i=t[0][1];return{points:t.map((u)=>X(u[0]-r,u[1]-i)),x:e.x+r,y:e.y+i}}static normalizePoints(e){xe(e,A.getNormalizedPoints(e))}static duplicateSelectedPoints(e,t){fn(e.editingLinearElement,"Not currently editing a linear element");let{selectedPointsIndices:r,elementId:i}=e.editingLinearElement,u=A.getElement(i,t);fn(u,"The linear element does not exist in the provided Scene"),fn(r!=null,"There are no selected points to duplicate");let{points:a}=u,n=[],o=!1,s=-1,l=a.reduce((g,C,B)=>{if(++s,g.push(C),r.includes(B)){let E=a[B+1];E||(o=!0),g.push(E?X((C[0]+E[0])/2,(C[1]+E[1])/2):X(C[0],C[1])),n.push(s+1),++s}return g},[]);if(xe(u,{points:l}),o){let g=u.points[u.points.length-1];A.movePoints(u,[{index:u.points.length-1,point:X(g[0]+30,g[1]+30)}])}return{...e,editingLinearElement:{...e.editingLinearElement,selectedPointsIndices:n}}}static deletePoints(e,t){let r=0,i=0;if(t.includes(0)){let a=e.points.find((n,o)=>!t.includes(o));a&&(r=a[0],i=a[1])}let u=e.points.reduce((a,n,o)=>(t.includes(o)||a.push(a.length?X(n[0]-r,n[1]-i):X(0,0)),a),[]);A._updatePoints(e,u,r,i)}static addPoints(e,t){let r=[...e.points,...t.map((i)=>i.point)];A._updatePoints(e,r,0,0)}static movePoints(e,t,r){let{points:i}=e,[u,a]=t.find(({index:l})=>l===0)?.point??X(0,0),[n,o]=X(u-i[0][0],a-i[0][1]),s=pt(e)?[t.find((l)=>l.index===0)?.point??i[0],t.find((l)=>l.index===i.length-1)?.point??i[i.length-1]]:i.map((l,g)=>{let C=t.find((B)=>B.index===g)?.point??l;return X(C[0]-n,C[1]-o)});A._updatePoints(e,s,n,o,r,{isDragging:t.reduce((l,g)=>l||g.isDragging===!0,!1)})}static shouldAddMidpoint(e,t,r,i){let u=A.getElement(e.elementId,i);if(u&&pt(u)||!u)return!1;let{segmentMidpoint:a}=e.pointerDownState;if(a.added||a.value===null||a.index===null||e.pointerDownState.origin===null)return!1;let n=e.pointerDownState.origin,o=Ri(X(n.x,n.y),X(t.x,t.y));return!(!r.editingLinearElement&&o<Y1/r.zoom.value)}static addMidpoint(e,t,r,i,u){let a=A.getElement(e.elementId,u);if(!a)return;let{segmentMidpoint:n}=e.pointerDownState,o={pointerDownState:e.pointerDownState,selectedPointsIndices:e.selectedPointsIndices},s=A.createPointAt(a,u,t.x,t.y,i&&!pt(a)?r.getEffectiveGridSize():null),l=[...a.points.slice(0,n.index),s,...a.points.slice(n.index)];return xe(a,{points:l}),o.pointerDownState={...e.pointerDownState,segmentMidpoint:{...e.pointerDownState.segmentMidpoint,added:!0},lastClickedPoint:n.index},o.selectedPointsIndices=[n.index],o}static _updatePoints(e,t,r,i,u,a){if(pt(e)){let n={};u?.startBinding!==void 0&&(n.startBinding=u.startBinding!==null&&f_(u.startBinding)?u.startBinding:null),u?.endBinding!==void 0&&(n.endBinding=u.endBinding!==null&&f_(u.endBinding)?u.endBinding:null),n.points=Array.from(t),xe(e,n,!0,{isDragging:a?.isDragging})}else{let n=yEe(e,t),o=yEe(e,e.points),s=(n[0]+n[2])/2,l=(n[1]+n[3])/2,g=(o[0]+o[2])/2,C=(o[1]+o[3])/2,B=g-s,E=C-l,d=De(X(r,i),X(B,E),e.angle);xe(e,{...u,points:t,x:e.x+d[0],y:e.y+d[1]})}}static _getShiftLockedDelta(e,t,r,i,u){let a=A.getPointGlobalCoordinates(e,r,t);if(pt(e))return[i[0]-a[0],i[1]-a[1]];let[n,o]=Dn(i[0],i[1],u),{width:s,height:l}=OW(a[0],a[1],n,o);return De(X(s,l),X(0,0),-e.angle)}static moveFixedSegment(e,t,r,i,u){let a=A.getElement(e.elementId,u);if(!a||!pt(a))return e;if(t&&t>0&&t<a.points.length){let n=Fh(_m(Mt(a.points[t],a.points[t-1]))),o=(a.fixedSegments??[]).reduce((C,B)=>(C[B.index]=B,C),{});o[t]={index:t,start:X(n?a.points[t-1][0]:r-a.x,n?i-a.y:a.points[t-1][1]),end:X(n?a.points[t][0]:r-a.x,n?i-a.y:a.points[t][1])};let s=Object.values(o).sort((C,B)=>C.index-B.index),l=s.map((C)=>C.index).reduce((C,B)=>B<t?C+1:C,0);xe(a,{fixedSegments:s});let g=X(a.x+(a.fixedSegments[l].start[0]+a.fixedSegments[l].end[0])/2,a.y+(a.fixedSegments[l].start[1]+a.fixedSegments[l].end[1])/2);return{...e,segmentMidPointHoveredCoords:g,pointerDownState:{...e.pointerDownState,segmentMidpoint:{added:!1,index:a.fixedSegments[l].index,value:g}}}}return e}static deleteFixedSegment(e,t){xe(e,{fixedSegments:e.fixedSegments?.filter((r)=>r.index!==t)}),xe(e,{},!0)}},It,Sur=(A)=>{let e=[...new Set(A.filter((t)=>t!==null&&t!==-1))];return e=e.sort((t,r)=>t-r),e.length?e:null},qm,AS=(A,e)=>{let t=qm[A]||(qm[A]={height:e});return t.height=e,t},ThA=(A)=>{qm[A]&&delete qm[A]},PQe=(A)=>qm[A]?.height??null,V0=(A,e,t,r=!0)=>{let i,u={x:A.x,y:A.y,text:A.text,width:A.width,height:A.height,angle:e?.angle??A.angle};u.text=A.text,(e||!A.autoResize)&&(i=e?AB(e,A):A.width,u.text=_1(A.originalText,cu(A),i));let a=y0(u.text,cu(A),A.lineHeight);if(A.autoResize&&(u.width=a.width),u.height=a.height,e){let n=R9(e,A),o=AB(e,A);if(!Jr(e)&&a.height>n){let C=M1(a.height,e.type);xe(e,{height:C},r),AS(e.id,C)}if(a.width>o){let C=M1(a.width,e.type);xe(e,{width:C},r)}let s={...A,...u},{x:l,y:g}=eS(e,s,t);u.x=l,u.y=g}xe(A,u,r)},YhA=(A,e,t)=>{let r=ar(A);e.forEach((i)=>{let u=t.get(i.id),a=ld(i);if(a){let n=t.get(a);if(n){let o=r.get(u);o&&xe(o,{boundElements:(i.boundElements||[]).filter((l)=>l.id!==n&&l.id!==a).concat({type:"text",id:n})});let s=r.get(n);s&&Bt(s)&&xe(s,{containerId:o?u:null})}}})},L9=(A,e,t,r=!1)=>{if(!ld(A))return;ThA(A.id);let i=Ur(A,e);if(i&&i.text){if(!A)return;let{text:u,height:a,width:n}=i,o=AB(A,i),s=R9(A,i),l=A.height;if(r||t!=="n"&&t!=="s"){u&&(u=_1(i.originalText,cu(i),o));let g=y0(u,cu(i),i.lineHeight);a=g.height,n=g.width}if(a>s){l=M1(a,A.type);let g=l-A.height,C=!Jr(A)&&(t==="ne"||t==="nw"||t==="n")?A.y-g:A.y;xe(A,{height:l,y:C})}xe(i,{text:u,width:n,height:a}),Jr(A)||xe(i,eS(A,i,e))}},eS=(A,e,t)=>{if(Jr(A))return It.getBoundTextElementPosition(A,e,t);let r=_Qe(A),i=R9(A,e),u=AB(A,e),a,n;return e.verticalAlign===Rl.TOP?n=r.y:e.verticalAlign===Rl.BOTTOM?n=r.y+(i-e.height):n=r.y+(i/2-e.height/2),e.textAlign===l9.LEFT?a=r.x:e.textAlign===l9.RIGHT?a=r.x+(u-e.width):a=r.x+(u/2-e.width/2),{x:a,y:n}},ld=(A)=>A?.boundElements?.length&&A?.boundElements?.find((e)=>e.type==="text")?.id||null,Ur=(A,e)=>{if(!A)return null;let t=ld(A);return t&&e.get(t)||null},Do=(A,e)=>A&&A.containerId&&e.get(A.containerId)||null,QW=(A,e,t)=>{if(!Jr(A))return{x:A.x+A.width/2,y:A.y+A.height/2};let r=It.getPointsGlobalCoordinates(A,t);if(r.length%2===1){let a=Math.floor(A.points.length/2),n=It.getPointGlobalCoordinates(A,A.points[a],t);return{x:n[0],y:n[1]}}let i=A.points.length/2-1,u=It.getEditorMidPoints(A,t,e)[i];return u||(u=It.getSegmentMidPoint(A,r[i],r[i+1],i+1,t)),{x:u[0],y:u[1]}},_Qe=(A)=>{let e=pn,t=pn;return A.type==="ellipse"&&(e+=A.width/2*(1-Math.sqrt(2)/2),t+=A.height/2*(1-Math.sqrt(2)/2)),A.type==="diamond"&&(e+=A.width/4,t+=A.height/4),{x:A.x+e,y:A.y+t}},WQe=(A,e)=>!e||Jr(e)?A.angle:e.angle,qQe=(A,e)=>A.some((t)=>{if(Tu(t)){let r=Do(t,e);return!Jr(r)}return!1}),zQe=(A,e)=>A.some((t)=>{if(Tu(t)){let r=Do(t,e);return!Jr(r)}return Bt(t)}),Lur,ZQe=(A)=>Lur.has(A.type),M1=(A,e)=>{A=Math.ceil(A);let t=pn*2;return e==="ellipse"?Math.round((A+t)/Math.sqrt(2)*2):e==="arrow"?A+t*8:e==="diamond"?2*(A+t):A+t},AB=(A,e)=>{let{width:t}=A;if(Jr(A)){let r=(e?.fontSize??cd)*LXt;return Math.max(SXt*t,r)}return A.type==="ellipse"?Math.round(t/2*Math.sqrt(2))-pn*2:A.type==="diamond"?Math.round(t/2)-pn*2:t-pn*2},R9=(A,e)=>{let{height:t}=A;return Jr(A)?t-pn*8*2<=0?e.height:t:A.type==="ellipse"?Math.round(t/2*Math.sqrt(2))-pn*2:A.type==="diamond"?Math.round(t/2)-pn*2:t-pn*2},VQe=(A,e=`
`)=>A.reduce((t,r)=>(Bt(r)&&t.push(r.text),t),[]).join(e),Nl=(A)=>(A=A.trim(),A&&jQe.sanitizeUrl(l_(A))),HhA=(A)=>!!(A?.includes(location.origin)||A?.startsWith("/")),KhA=(A)=>{if(A=Nl(A),A.startsWith("/"))return`${location.origin}${A}`;try{new URL(A)}catch{return"about:blank"}return A},w_,at=(A)=>(w_=w_.concat(A),A),XQe='<svg viewBox="0 0 24 24" stroke-width="1" width="28" height="28" xmlns="http://www.w3.org/2000/svg">',Rur='<path d="M6.164 11.755a5.314 5.314 0 0 1-4.932-5.298 5.314 5.314 0 0 1 5.311-5.311 5.314 5.314 0 0 1 5.307 5.113l8.773 8.773a3.322 3.322 0 0 1 0 4.696l-.895.895a3.322 3.322 0 0 1-4.696 0l-8.868-8.868Z" style="fill:#fff"/>',$Qe='<path stroke="#1b1b1f" fill="#fff" d="m7.868 11.113 7.773 7.774a2.359 2.359 0 0 0 1.667.691 2.368 2.368 0 0 0 2.357-2.358c0-.625-.248-1.225-.69-1.667L11.201 7.78 9.558 9.469l-1.69 1.643v.001Zm10.273 3.606-3.333 3.333m-3.25-6.583 2 2m-7-7 3 3M3.664 3.625l1 1M2.529 6.922l1.407-.144m5.735-2.932-1.118.866M4.285 9.823l.758-1.194m1.863-6.207-.13 1.408"/>',Nur,Gur,Mc=(A)=>{A&&(A.style.cursor="")},Cu=(A,e)=>{A&&(A.style.cursor=e)},ud,SEe,JhA=(A,e)=>{let t=()=>{let r=e===ei.DARK;ud=document.createElement("canvas"),ud.theme=e,ud.height=20,ud.width=20;let i=ud.getContext("2d");i.lineWidth=1,i.beginPath(),i.arc(ud.width/2,ud.height/2,5,0,2*Math.PI),i.fillStyle=r?ua.black:ua.white,i.fill(),i.strokeStyle=r?ua.white:ua.black,i.stroke(),SEe=ud.toDataURL(jt.svg)};(!ud||ud.theme!==e)&&t(),Cu(A,`url(${SEe}) 10 10, auto`)},nB=(A,e)=>{if(A)if(e.activeTool.type==="selection")Mc(A);else if(A2(e))A.style.cursor=iu.GRAB;else if(uB(e))JhA(A,e.theme);else if(e.activeTool.type==="laser"){let t=e.theme===ei.LIGHT?Nur:Gur;A.style.cursor=`url(${t}), auto`}else["image","custom"].includes(e.activeTool.type)?e.activeTool.type!=="image"&&(A.style.cursor=iu.AUTO):A.style.cursor=iu.CROSSHAIR},Uur,Mur=0,oB=()=>Math.floor(Uur.next()*2147483648),kg=()=>Cd()?`id${Mur++}`:fa(),eB=(A,{x:e,y:t,strokeColor:r=Ua.strokeColor,backgroundColor:i=Ua.backgroundColor,fillStyle:u=Ua.fillStyle,strokeWidth:a=Ua.strokeWidth,strokeStyle:n=Ua.strokeStyle,roughness:o=Ua.roughness,opacity:s=Ua.opacity,width:l=0,height:g=0,angle:C=0,groupIds:B=[],frameId:E=null,index:d=null,roundness:I=null,boundElements:h=null,link:Q=null,locked:p=Ua.locked,...m})=>((e<-1e6||e>1e6||t<-1e6||t>1e6||l<-1e6||l>1e6||g<-1e6||g>1e6)&&console.error("New element size or position is too large",{x:e,y:t,width:l,height:g,points:m.points}),{id:m.id||kg(),type:A,x:e,y:t,width:l,height:g,angle:C,strokeColor:r,backgroundColor:i,fillStyle:u,strokeWidth:a,strokeStyle:n,roughness:o,opacity:s,groupIds:B,frameId:E,index:d,roundness:I,seed:m.seed??oB(),version:m.version||1,versionNonce:m.versionNonce??0,isDeleted:!1,boundElements:h,updated:m9(),link:Q,locked:p,customData:m.customData}),sB=(A)=>eB(A.type,A),OhA=(A)=>eB("embeddable",A),A4e=(A)=>({...eB("iframe",A)}),pW=(A)=>Yr({...eB("frame",A),type:"frame",name:A?.name||null},{}),fW=(A)=>Yr({...eB("magicframe",A),type:"magicframe",name:A?.name||null},{}),e4e=(A,e)=>({x:A.textAlign==="center"?e.width/2:A.textAlign==="right"?e.width:0,y:A.verticalAlign==="middle"?e.height/2:0}),Gl=(A)=>{let e=A.fontFamily||Lh,t=A.fontSize||cd,r=A.lineHeight||z1(e),i=i2(A.text),u=y0(i,cu({fontFamily:e,fontSize:t}),r),a=A.textAlign||h9,n=A.verticalAlign||x8,o=e4e({textAlign:a,verticalAlign:n},u),s={...eB("text",A),text:i,fontSize:t,fontFamily:e,textAlign:a,verticalAlign:n,x:A.x-o.x,y:A.y-o.y,width:u.width,height:u.height,containerId:A.containerId||null,originalText:A.originalText??i,autoResize:A.autoResize??!0,lineHeight:r};return Yr(s,{})},Tur=(A,e,t)=>{let{width:r,height:i}=y0(t,cu(A),A.lineHeight);A.autoResize||(r=A.width);let{textAlign:u,verticalAlign:a}=A,n,o;if(u==="center"&&a===Rl.MIDDLE&&!A.containerId&&A.autoResize){let s=y0(A.text,cu(A),A.lineHeight),l=e4e(A,{width:r-s.width,height:i-s.height});n=A.x-l.x,o=A.y-l.y}else{let[s,l,g,C]=Nr(A,e),[B,E,d,I]=S1(A,r,i,!1),h=(s-B)/2,Q=(l-E)/2,p=(g-d)/2,m=(C-I)/2;[n,o]=Yur({s:!0,e:u==="center"||u==="left",w:u==="center"||u==="right"},A.x,A.y,A.angle,h,Q,p,m)}return{width:r,height:i,x:Number.isFinite(n)?n:A.x,y:Number.isFinite(o)?o:A.y}},Yur=(A,e,t,r,i,u,a,n)=>{let o=Math.cos(r),s=Math.sin(r);return A.e&&A.w?e+=i+a:A.e?(e+=i*(1+o),t+=i*s,e+=a*(1-o),t+=a*-s):A.w&&(e+=i*(1-o),t+=i*-s,e+=a*(1+o),t+=a*s),A.n&&A.s?t+=u+n:A.n?(e+=u*s,t+=u*(1-o),e+=n*-s,t+=n*(1+o)):A.s&&(e+=u*-s,t+=u*(1+o),e+=n*s,t+=n*(1-o)),[e,t]},PhA=(A,e,t,r=A.text)=>{if(A.isDeleted)return;(e||!A.autoResize)&&(r=_1(r,cu(A),e?AB(e,A):A.width));let i=Tur(A,t,r);return{text:r,...i}},t4e=(A)=>({...eB(A.type,A),points:A.points||[],pressures:A.pressures||[],simulatePressure:A.simulatePressure,lastCommittedPoint:null}),L1=(A)=>({...eB(A.type,A),points:A.points||[],lastCommittedPoint:null,startBinding:null,endBinding:null,startArrowhead:null,endArrowhead:null}),mW=(A)=>A.elbowed?{...eB(A.type,A),points:A.points||[],lastCommittedPoint:null,startBinding:null,endBinding:null,startArrowhead:A.startArrowhead||null,endArrowhead:A.endArrowhead||null,elbowed:!0,fixedSegments:A.fixedSegments||[],startIsSpecial:!1,endIsSpecial:!1}:{...eB(A.type,A),points:A.points||[],lastCommittedPoint:null,startBinding:null,endBinding:null,startArrowhead:A.startArrowhead||null,endArrowhead:A.endArrowhead||null,elbowed:!1},_hA=(A)=>({...eB("image",A),strokeColor:"transparent",status:A.status??"pending",fileId:A.fileId??null,scale:A.scale??[1,1],crop:A.crop??null}),b_=(A,e=0)=>{if(A==null||typeof A!="object")return A;let t=Object.prototype.toString.call(A);if(t==="[object Object]"){let r=typeof A.constructor=="function"?Object.create(Object.getPrototypeOf(A)):{};for(let i in A)if(A.hasOwnProperty(i)){if(e===0&&(i==="shape"||i==="canvas"))continue;r[i]=b_(A[i],e+1)}return r}if(Array.isArray(A)){let r=A.length,i=Array(r);for(;r--;)i[r]=b_(A[r],e+1);return i}return fr.DEV&&t!=="[object Object]"&&t!=="[object Array]"&&t.startsWith("[object ")&&console.warn(`_deepCloneElement: unexpected object type ${t}. This value will not be cloned!`),A},j1=(A)=>b_(A),r4e=(A,e)=>{Object.defineProperty(A,GXt,{value:e,writable:!1,enumerable:!1})},v_=()=>kg(),WhA=(A,e,t,r)=>{let i=j1(t);return Cd()&&r4e(i,t.id),i.id=v_(),i.boundElements=null,i.updated=m9(),i.seed=oB(),i.groupIds=wur(i.groupIds,A,(u)=>(e.has(u)||e.set(u,v_()),e.get(u))),r&&(i=Object.assign(i,r)),i},qhA=(A,e)=>{let t=[],r=ar(A),i=new Map,u=(n)=>{if(i.has(n))return i.get(n);if(r.has(n)){let o=v_();return i.set(n,o),o}return null},a=new Map;for(let n of A){let o=b_(n);if(o.id=u(n.id),Cd()&&r4e(o,n.id),e?.randomizeSeed&&(o.seed=oB(),gS(o)),o.groupIds&&(o.groupIds=o.groupIds.map((s)=>(a.has(s)||a.set(s,v_()),a.get(s)))),"containerId"in o&&o.containerId){let s=u(o.containerId);o.containerId=s}if("boundElements"in o&&o.boundElements&&(o.boundElements=o.boundElements.reduce((s,l)=>{let g=u(l.id);return g&&s.push({...l,id:g}),s},[])),"endBinding"in o&&o.endBinding){let s=u(o.endBinding.elementId);o.endBinding=s?{...o.endBinding,elementId:s}:null}if("startBinding"in o&&o.startBinding){let s=u(o.startBinding.elementId);o.startBinding=s?{...o.startBinding,elementId:s}:null}o.frameId&&(o.frameId=u(o.frameId)),t.push(o)}return t},DW=(A,{shouldThrow:e=!1,includeBoundTextValidation:t=!1,ignoreLogs:r,reconciliationContext:i})=>{let u=[],a=(o)=>`${o?.index}:${o?.id}:${o?.type}:${o?.isDeleted}:${o?.version}:${o?.versionNonce}`,n=A.map((o)=>o.index);for(let[o,s]of n.entries()){let l=n[o-1],g=n[o+1];if(ZdA(s,l,g)||u.push(`Fractional indices invariant has been compromised: "${a(A[o-1])}", "${a(A[o])}", "${a(A[o+1])}"`),t&&Ul(A[o])){let C=A[o],B=Ur(C,ar(A));B&&B.index<=C.index&&u.push(`Fractional indices invariant for bound elements has been compromised: "${a(B)}", "${a(C)}"`)}}if(u.length){let o=new F$t,s=[];if(i&&(s.push("Additional reconciliation context:"),s.push(i.localElements.map((l)=>a(l))),s.push(i.remoteElements.map((l)=>a(l)))),r||console.error(u.join(`
`),o.stack,A.map((l)=>a(l)),...s),e)throw o}},i4e=(A)=>A.sort((e,t)=>LEe(e)&&LEe(t)?e.index<t.index?-1:e.index>t.index?1:e.id<t.id?-1:1:1),tB=(A,e)=>{try{let t=Hur(A,e),r=u4e(A,t),i=A.map((u)=>r.has(u)?{...u,...r.get(u)}:u);DW(i,{includeBoundTextValidation:!1,shouldThrow:!0,ignoreLogs:!0});for(let[u,a]of r)xe(u,a,!1)}catch{hd(A)}return A},hd=(A)=>{let e=Kur(A),t=u4e(A,e);for(let[r,i]of t)xe(r,i,!1);return A},Hur=(A,e)=>{let t=[],r=0;for(;r<A.length;)if(e.has(A[r].id)){let i=[r-1,r];for(;++r<A.length&&e.has(A[r].id);)i.push(r);i.push(r),t.push(i)}else r++;return t},Kur=(A)=>{let e=[],t,r,i=-1,u=0,a=(s)=>{let l=A[i]?A[i].index:void 0,g=A[s-1]?.index;return!l&&g||l&&g&&g>l?[g,s-1]:[l,i]},n=(s)=>{let l=A[u]?A[u].index:void 0;if(l&&s<u)return[l,u];let g=u;for(;++g<A.length;){let C=A[g]?.index;if(!l&&C||l&&C&&C>l)return[C,g]}return[void 0,g]},o=0;for(;o<A.length;){let s=A[o].index;if([t,i]=a(o),[r,u]=n(o),ZdA(s,t,r))o++;else{let l=[i,o];for(;++o<A.length;){let g=A[o].index,[C,B]=a(o),[E,d]=n(o);if(ZdA(g,C,E))break;[t,i]=[C,B],[r,u]=[E,d],l.push(o)}l.push(u),e.push(l)}}return e},ZdA=(A,e,t)=>A?e&&t?e<A&&A<t:!e&&t?A<t:e&&!t?e<A:!!A:!1,u4e=(A,e)=>{let t=new Map;for(let r of e){let i=r.shift(),u=r.pop(),a=jP(A[i]?.index,A[u]?.index,r.length);for(let n=0;n<r.length;n++){let o=A[r[n]];t.set(o,{index:a[n]})}}return t},LEe=(A)=>!!A.index,Qn=class A{constructor(e,t){this.deleted=e,this.inserted=t}static create(e,t,r,i){let u=r&&i!=="inserted"?r(e):e,a=r&&i!=="deleted"?r(t):t;return new A(u,a)}static calculate(e,t,r,i){if(e===t)return A.empty();let u={},a={};for(let s of this.distinctKeysIterator("full",e,t))u[s]=e[s],a[s]=t[s];let[n,o]=i?i(u,a):[u,a];return A.create(n,o,r)}static empty(){return new A({},{})}static isEmpty(e){return!Object.keys(e.deleted).length&&!Object.keys(e.inserted).length}static mergeObjects(e,t,r){let i={...e};for(let u of Object.keys(r))delete i[u];return{...i,...t}}static mergeArrays(e,t,r,i){return Object.values(A.mergeObjects(Dh(e??[],i),Dh(t??[],i),Dh(r??[],i)))}static diffObjects(e,t,r,i){if(!(!e[r]&&!t[r])&&(typeof e[r]=="object"||typeof t[r]=="object")){let u=e[r]??{},a=t[r]??{},n=A.getLeftDifferences(u,a).reduce((s,l)=>(s[l]=i(u[l]),s),{}),o=A.getRightDifferences(u,a).reduce((s,l)=>(s[l]=i(a[l]),s),{});Object.keys(n).length||Object.keys(o).length?(Reflect.set(e,r,n),Reflect.set(t,r,o)):(Reflect.deleteProperty(e,r),Reflect.deleteProperty(t,r))}}static diffArrays(e,t,r,i){if(!(!e[r]&&!t[r])&&(Array.isArray(e[r])||Array.isArray(t[r]))){let u=Array.isArray(e[r])?e[r]:[],a=Array.isArray(t[r])?t[r]:[],n=Dh(A.getLeftDifferences(Dh(u,i),Dh(a,i))),o=Dh(A.getRightDifferences(Dh(u,i),Dh(a,i)));if(Object.keys(n).length||Object.keys(o).length){let s=u.filter((g)=>n[i?i(g):String(g)]),l=a.filter((g)=>o[i?i(g):String(g)]);Reflect.set(e,r,s),Reflect.set(t,r,l)}else Reflect.deleteProperty(e,r),Reflect.deleteProperty(t,r)}}static isLeftDifferent(e,t,r=!1){return!!this.distinctKeysIterator("left",e,t,r).next().value}static isRightDifferent(e,t,r=!1){return!!this.distinctKeysIterator("right",e,t,r).next().value}static getLeftDifferences(e,t,r=!1){return Array.from(this.distinctKeysIterator("left",e,t,r))}static getRightDifferences(e,t,r=!1){return Array.from(this.distinctKeysIterator("right",e,t,r))}static*distinctKeysIterator(e,t,r,i=!1){if(t===r)return;let u=[];e==="left"?u=Object.keys(t):e==="right"?u=Object.keys(r):e==="full"?u=Array.from(new Set([...Object.keys(t),...Object.keys(r)])):O1(e,`Unknown distinctKeysIterator's join param "${e}"`,!0);for(let a of u){let n=t[a],o=r[a];if(n!==o){if(!i&&typeof n=="object"&&typeof o=="object"&&n!==null&&o!==null&&zo(n,o))continue;yield a}}}},REe=class A{constructor(e){this.delta=e}static calculate(e,t){let r=Qn.calculate(e,t,void 0,A.postProcess);return new A(r)}static empty(){return new A(Qn.create({},{}))}inverse(){let e=Qn.create(this.delta.inserted,this.delta.deleted);return new A(e)}applyTo(e,t){try{let{selectedElementIds:r={},selectedGroupIds:i={}}=this.delta.deleted,{selectedElementIds:u={},selectedGroupIds:a={},selectedLinearElementId:n,editingLinearElementId:o,...s}=this.delta.inserted,l=Qn.mergeObjects(e.selectedElementIds,u,r),g=Qn.mergeObjects(e.selectedGroupIds,a,i),C=n&&t.has(n)?new It(t.get(n)):null,B=o&&t.has(o)?new It(t.get(o)):null,E={...e,...s,selectedElementIds:l,selectedGroupIds:g,selectedLinearElement:typeof n<"u"?C:e.selectedLinearElement,editingLinearElement:typeof o<"u"?B:e.editingLinearElement},d=this.filterInvisibleChanges(e,E,t);return[E,d]}catch(r){if(console.error("Couldn't apply appstate change",r),fr.DEV||fr.MODE===Ys.TEST)throw r;return[e,!1]}}isEmpty(){return Qn.isEmpty(this.delta)}static postProcess(e,t){try{Qn.diffObjects(e,t,"selectedElementIds",(r)=>!0),Qn.diffObjects(e,t,"selectedGroupIds",(r)=>r??!1)}catch(r){if(console.error("Couldn't postprocess appstate change deltas."),fr.DEV||fr.MODE===Ys.TEST)throw r}finally{return[e,t]}}filterInvisibleChanges(e,t,r){let i=k_(e),u=k_(t),a=Qn.isRightDifferent(A.stripElementsProps(i),A.stripElementsProps(u)),n=Qn.isRightDifferent(A.stripStandaloneProps(i),A.stripStandaloneProps(u));if(!a&&!n)return!1;let o={value:a};if(n){let s=Qn.getRightDifferences(A.stripStandaloneProps(i),A.stripStandaloneProps(u)),l=new Set;(s.includes("editingGroupId")||s.includes("selectedGroupIds"))&&(l=bur(r));for(let g of s)switch(g){case"selectedElementIds":t[g]=A.filterSelectedElements(t[g],r,o);break;case"selectedGroupIds":t[g]=A.filterSelectedGroups(t[g],l,o);break;case"croppingElementId":{let d=t[g],I=d&&r.get(d);I&&!I.isDeleted?o.value=!0:t[g]=null;break}case"editingGroupId":let C=t[g];C?l.has(C)?o.value=!0:t[g]=null:o.value=!0;break;case"selectedLinearElementId":case"editingLinearElementId":let B=A.convertToAppStateKey(g),E=t[B];if(!E)o.value=!0;else{let d=r.get(E.elementId);d&&!d.isDeleted?o.value=!0:t[B]=null}break;default:O1(g,`Unknown ObservedElementsAppState's key "${g}"`,!0)}}return o.value}static convertToAppStateKey(e){switch(e){case"selectedLinearElementId":return"selectedLinearElement";case"editingLinearElementId":return"editingLinearElement"}}static filterSelectedElements(e,t,r){let i=Object.keys(e);if(!i.length)return r.value=!0,e;let u={...e};for(let a of i){let n=t.get(a);n&&!n.isDeleted?r.value=!0:delete u[a]}return u}static filterSelectedGroups(e,t,r){if(!Object.keys(e).length)return r.value=!0,e;let i={...e};for(let u of Object.keys(i))t.has(u)?r.value=!0:delete i[u];return i}static stripElementsProps(e){let{editingGroupId:t,selectedGroupIds:r,selectedElementIds:i,editingLinearElementId:u,selectedLinearElementId:a,croppingElementId:n,...o}=e;return o}static stripStandaloneProps(e){let{name:t,viewBackgroundColor:r,...i}=e;return i}},b1=class A{constructor(e,t,r){this.added=e,this.removed=t,this.updated=r}static create(e,t,r,i={shouldRedistribute:!1}){let u;if(i.shouldRedistribute){let a=new Map,n=new Map,o=new Map,s=[...e,...t,...r];for(let[l,g]of s)this.satisfiesAddition(g)?a.set(l,g):this.satisfiesRemoval(g)?n.set(l,g):o.set(l,g);u=new A(a,n,o)}else u=new A(e,t,r);return(fr.DEV||fr.MODE===Ys.TEST)&&(A.validate(u,"added",this.satisfiesAddition),A.validate(u,"removed",this.satisfiesRemoval),A.validate(u,"updated",this.satisfiesUpdate)),u}static validate(e,t,r){for(let[i,u]of e[t].entries())if(!r(u))throw console.error(`Broken invariant for "${t}" delta, element "${i}", delta:`,u),Error(`ElementsChange invariant broken for element "${i}".`)}static calculate(e,t){if(e===t)return A.empty();let r=new Map,i=new Map,u=new Map;for(let a of e.values())if(!t.get(a.id)){let n={...a,isDeleted:!1},o={isDeleted:!0},s=Qn.create(n,o,A.stripIrrelevantProps);i.set(a.id,s)}for(let a of t.values()){let n=e.get(a.id);if(!n){let o={isDeleted:!0},s={...a,isDeleted:!1},l=Qn.create(o,s,A.stripIrrelevantProps);r.set(a.id,l);continue}if(n.versionNonce!==a.versionNonce){let o=Qn.calculate(n,a,A.stripIrrelevantProps,A.postProcess);if(typeof n.isDeleted=="boolean"&&typeof a.isDeleted=="boolean"&&n.isDeleted!==a.isDeleted){n.isDeleted&&!a.isDeleted?r.set(a.id,o):i.set(a.id,o);continue}Qn.isEmpty(o)||u.set(a.id,o)}}return A.create(r,i,u)}static empty(){return A.create(new Map,new Map,new Map)}inverse(){let e=(u)=>{let a=new Map;for(let[n,o]of u.entries())a.set(n,Qn.create(o.inserted,o.deleted));return a},t=e(this.added),r=e(this.removed),i=e(this.updated);return A.create(r,t,i)}isEmpty(){return this.added.size===0&&this.removed.size===0&&this.updated.size===0}applyLatestChanges(e){let t=(n)=>(o)=>{let s={};for(let l of Object.keys(o))switch(l){case"boundElements":s[l]=o[l];break;default:s[l]=n[l]}return s},r=(n)=>{let o=new Map;for(let[s,l]of n.entries()){let g=e.get(s);if(g){let C=Qn.create(l.deleted,l.inserted,t(g),"inserted");o.set(s,C)}else o.set(s,l)}return o},i=r(this.added),u=r(this.removed),a=r(this.updated);return A.create(i,u,a,{shouldRedistribute:!0})}applyTo(e,t){let r=vg(new Map(e)),i,u={containsVisibleDifference:!1,containsZindexDifference:!1};try{let a=A.createApplier(r,t,u),n=a(this.added),o=a(this.removed),s=a(this.updated),l=this.resolveConflicts(e,r);i=new Map([...n,...o,...s,...l])}catch(a){if(console.error("Couldn't apply elements change",a),fr.DEV||fr.MODE===Ys.TEST)throw a;return[e,!0]}try{A.redrawTextBoundingBoxes(r,i),r=A.reorderElements(r,i,u),A.redrawBoundArrows(r,i)}catch(a){if(console.error("Couldn't mutate elements after applying elements change",a),fr.DEV||fr.MODE===Ys.TEST)throw a}finally{return[r,u.containsVisibleDifference]}}static applyDelta(e,t,r={containsVisibleDifference:!0,containsZindexDifference:!0}){let{boundElements:i,...u}=t.inserted;if(t.deleted.boundElements?.length||t.inserted.boundElements?.length){let a=Qn.mergeArrays(e.boundElements,t.inserted.boundElements,t.deleted.boundElements,(n)=>n.id);Object.assign(u,{boundElements:a})}if(Ni(e)){let a=t;(a.deleted.crop||a.inserted.crop)&&Object.assign(u,{crop:a.inserted.crop??null})}if(!r.containsVisibleDifference){let{index:a,...n}=u,o=A.checkForVisibleDifference(e,n);r.containsVisibleDifference=o}return r.containsZindexDifference||(r.containsZindexDifference=t.deleted.index!==t.inserted.index),Yr(e,u)}static checkForVisibleDifference(e,t){return e.isDeleted&&t.isDeleted!==!1?!1:e.isDeleted&&t.isDeleted===!1||e.isDeleted===!1&&t.isDeleted?!0:Qn.isRightDifferent(e,t)}resolveConflicts(e,t){let r=new Map,i=(s,l)=>{let g=t.get(s.id);if(!g)return;let C;e.get(s.id)===g?C=Yr(g,l):C=xe(g,l),r.set(C.id,C),t.set(C.id,C)};for(let[s]of this.removed)A.unbindAffected(e,t,s,i);for(let[s]of this.added)A.rebindAffected(e,t,s,i);for(let[s]of Array.from(this.updated).filter(([l,g])=>Object.keys({...g.deleted,...g.inserted}).find((C)=>pur.has(C)))){let l=t.get(s);!l||l.isDeleted||A.rebindAffected(e,t,s,i)}let u=new Map(Array.from(e).filter(([s])=>r.has(s))),{added:a,removed:n,updated:o}=A.calculate(u,r);for(let[s,l]of a)this.added.set(s,l);for(let[s,l]of n)this.removed.set(s,l);for(let[s,l]of o)this.updated.set(s,l);return r}static unbindAffected(e,t,r,i){let u=()=>e.get(r),a=()=>t.get(r);a9.unbindAffected(t,u(),i),a9.unbindAffected(t,a(),i),n9.unbindAffected(t,u(),i),n9.unbindAffected(t,a(),i)}static rebindAffected(e,t,r,i){let u=()=>e.get(r),a=()=>t.get(r);a9.unbindAffected(t,u(),i),a9.rebindAffected(t,a(),i),n9.unbindAffected(t,u(),(n,o)=>{Bt(n)&&i(n,o)}),n9.rebindAffected(t,a(),i)}static redrawTextBoundingBoxes(e,t){let r=new Map;for(let i of t.values()){if(Tu(i)){let{containerId:u}=i,a=u?e.get(u):void 0;a&&r.set(a.id,{container:a,boundText:i})}if(Ul(i)){let u=ld(i),a=u?e.get(u):void 0;a&&r.set(i.id,{container:i,boundText:a})}}for(let{container:i,boundText:u}of r.values())i.isDeleted||u.isDeleted||V0(u,i,e,!1)}static redrawBoundArrows(e,t){for(let r of t.values())!r.isDeleted&&Rc(r)&&Hs(r,e,{changedElements:t})}static reorderElements(e,t,r){if(!r.containsZindexDifference)return e;let i=Array.from(e.values()),u=i4e([...i]),a=Qn.getRightDifferences(i,u,!0).reduce((n,o)=>{let s=i[Number(o)];return s&&t.has(s.id)&&n.set(s.id,s),n},new Map);return!r.containsVisibleDifference&&a.size&&(r.containsVisibleDifference=!0),ar(tB(u,a))}static postProcess(e,t){try{Qn.diffArrays(e,t,"boundElements",(r)=>r.id)}catch(r){if(console.error("Couldn't postprocess elements change deltas."),fr.DEV||fr.MODE===Ys.TEST)throw r}finally{return[e,t]}}static stripIrrelevantProps(e){let{id:t,updated:r,version:i,versionNonce:u,seed:a,...n}=e;return n}},NEe,lB=class{constructor(){GA(this,"subscribers",[])}on(...A){let e=A.flat().filter((t)=>typeof t=="function");return this.subscribers.push(...e),()=>this.off(e)}once(...A){let e=A.flat().filter((r)=>typeof r=="function");e.push(()=>t());let t=this.on(...e);return t}off(...A){let e=A.flat();this.subscribers=this.subscribers.filter((t)=>!e.includes(t))}trigger(...A){for(let e of this.subscribers)e(...A);return this}clear(){this.subscribers=[]}},a4e="__observedAppState",k_=(A)=>{let e={name:A.name,editingGroupId:A.editingGroupId,viewBackgroundColor:A.viewBackgroundColor,selectedElementIds:A.selectedElementIds,selectedGroupIds:A.selectedGroupIds,editingLinearElementId:A.editingLinearElement?.elementId||null,selectedLinearElementId:A.selectedLinearElement?.elementId||null,croppingElementId:A.croppingElementId};return Reflect.defineProperty(e,a4e,{value:!0,enumerable:!1}),e},Jur=(A)=>!!Reflect.get(A,a4e),be,Our=class{constructor(A,e){this.elementsChange=A,this.appStateChange=e}},n4e=class{constructor(){GA(this,"onStoreIncrementEmitter",new lB),GA(this,"scheduledActions",new Set),GA(this,"_snapshot",GEe.empty()),GA(this,"shouldCaptureIncrement",()=>{this.scheduleAction(be.IMMEDIATELY)}),GA(this,"shouldUpdateSnapshot",()=>{this.scheduleAction(be.NEVER)}),GA(this,"scheduleAction",(A)=>{this.scheduledActions.add(A),this.satisfiesScheduledActionsInvariant()}),GA(this,"commit",(A,e)=>{try{this.scheduledActions.has(be.IMMEDIATELY)?this.captureIncrement(A,e):this.scheduledActions.has(be.NEVER)&&this.updateSnapshot(A,e)}finally{this.satisfiesScheduledActionsInvariant(),this.scheduledActions=new Set}}),GA(this,"captureIncrement",(A,e)=>{let t=this.snapshot,r=this.snapshot.maybeClone(A,e);if(t!==r){let i=r.meta.didElementsChange?NEe.calculate(t.elements,r.elements):NEe.empty(),u=r.meta.didAppStateChange?REe.calculate(t.appState,r.appState):REe.empty();(!i.isEmpty()||!u.isEmpty())&&this.onStoreIncrementEmitter.trigger(new Our(i,u)),this.snapshot=r}}),GA(this,"updateSnapshot",(A,e)=>{let t=this.snapshot.maybeClone(A,e);this.snapshot!==t&&(this.snapshot=t)}),GA(this,"filterUncomittedElements",(A,e)=>{for(let[t,r]of A.entries()){if(!e.get(t))continue;let i=this.snapshot.elements.get(t);i?i.version<r.version&&e.set(t,i):e.delete(t)}return e}),GA(this,"clear",()=>{this.snapshot=GEe.empty(),this.scheduledActions=new Set}),GA(this,"satisfiesScheduledActionsInvariant",()=>{if(!(this.scheduledActions.size>=0&&this.scheduledActions.size<=3)){let A=`There can be at most three store actions scheduled at the same time, but there are "${this.scheduledActions.size}".`;if(console.error(A,this.scheduledActions.values()),fr.DEV||fr.MODE===Ys.TEST)throw Error(A)}})}get snapshot(){return this._snapshot}set snapshot(A){this._snapshot=A}},GEe=class A{constructor(e,t,r={didElementsChange:!1,didAppStateChange:!1,isEmpty:!1}){this.elements=e,this.appState=t,this.meta=r}static empty(){return new A(new Map,k_(iB()),{didElementsChange:!1,didAppStateChange:!1,isEmpty:!0})}isEmpty(){return this.meta.isEmpty}maybeClone(e,t){let r=this.maybeCreateElementsSnapshot(e),i=this.maybeCreateAppStateSnapshot(t),u=!1,a=!1;return this.elements!==r&&(u=!0),this.appState!==i&&(a=!0),!u&&!a?this:new A(r,i,{didElementsChange:u,didAppStateChange:a})}maybeCreateAppStateSnapshot(e){if(!e)return this.appState;let t=Jur(e)?e:k_(e);return this.detectChangedAppState(t)?t:this.appState}detectChangedAppState(e){return!zo(this.appState,e,{selectedElementIds:zo,selectedGroupIds:zo})}maybeCreateElementsSnapshot(e){return e?this.detectChangedElements(e)?this.createElementsSnapshot(e):this.elements:this.elements}detectChangedElements(e){if(this.elements===e)return!1;if(this.elements.size!==e.size)return!0;let t=Array.from(e.keys());for(let r=t.length-1;r>=0;r--){let i=this.elements.get(t[r]),u=e.get(t[r]);if(!i||!u||i.id!==u.id||i.versionNonce!==u.versionNonce)return!0}return!1}createElementsSnapshot(e){let t=new Map;for(let[r,i]of this.elements.entries())e.get(r)?t.set(r,i):t.set(r,Yr(i,{isDeleted:!0}));for(let[r,i]of e.entries()){let u=t.get(r);(!u||u&&u.versionNonce!==i.versionNonce)&&t.set(r,j1(i))}return t}},ad,Pur,_ur,Wur,UEe,qur,MEe,zur,Zur,Vur,TEe,YEe,jur,VdA,HEe,s9=(A)=>`<html><body>${A}</body></html>`,s2=(A)=>{if(!A)return null;if(ad.has(A))return ad.get(A);let e=A,t=HEe.has(jdA(A,HEe)||""),r="generic",i={w:560,h:840},u=A.match(Pur);if(u?.[2]){let o=u[3]?`&start=${u[3]}`:"",s=A.includes("shorts");switch(r="video",u[1]){case"embed/":case"watch?v=":case"shorts/":A=`https://www.youtube.com/embed/${u[2]}?enablejsapi=1${o}`;break;case"playlist?list=":case"embed/videoseries?list=":A=`https://www.youtube.com/embed/videoseries?list=${u[2]}&enablejsapi=1${o}`;break;default:A=`https://www.youtube.com/embed/${u[2]}?enablejsapi=1${o}`;break}return i=s?{w:315,h:560}:{w:560,h:315},ad.set(e,{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}),{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}}let a=A.match(_ur);if(a?.[1]){let o=a?.[1],s=/^\d+$/.test(o)?void 0:URIError("Invalid embed link format");return r="video",A=`https://player.vimeo.com/video/${o}?api=1`,i={w:560,h:315},ad.set(e,{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}),{link:A,intrinsicSize:i,type:r,error:s,sandbox:{allowSameOrigin:t}}}if(A.match(Wur))return r="generic",A=`https://www.figma.com/embed?embed_host=share&url=${encodeURIComponent(A)}`,i={w:550,h:550},ad.set(e,{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}),{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}};let n=A.match(Zur);if(n)return A=n[1]==="embed"?n[0]:n[0].replace("/v","/embed"),ad.set(e,{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}),{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}};if(MEe.test(A)){let o=A.match(MEe)[1],s=l_(`https://twitter.com/x/status/${o}`),l={type:"document",srcdoc:(g)=>s9(`<blockquote class="twitter-tweet" data-dnt="true" data-theme="${g}"><a href="${s}"></a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"><\/script>`),intrinsicSize:{w:480,h:480},sandbox:{allowSameOrigin:t}};return ad.set(e,l),l}if(YEe.test(A)){let[,o,s,l]=A.match(YEe),g=l_(`https://reddit.com/r/${o}/comments/${s}/${l}`),C={type:"document",srcdoc:(B)=>s9(`<blockquote class="reddit-embed-bq" data-embed-theme="${B}"><a href="${g}"></a><br></blockquote><script async="" src="https://embed.reddit.com/widgets.js" charset="UTF-8"><\/script>`),intrinsicSize:{w:480,h:480},sandbox:{allowSameOrigin:t}};return ad.set(e,C),C}if(UEe.test(A)){let[,o,s]=A.match(UEe),l=l_(`https://gist.github.com/${o}/${s}`),g={type:"document",srcdoc:()=>s9(`
<script src="${l}.js"><\/script>
<style type="text/css">
* { margin: 0px; }
table, .gist { height: 100%; }
.gist .gist-file { height: calc(100vh - 2px); padding: 0px; display: grid; grid-template-rows: 1fr auto; }
</style>
`),intrinsicSize:{w:550,h:720},sandbox:{allowSameOrigin:t}};return ad.set(A,g),g}return ad.set(A,{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}),{link:A,intrinsicSize:i,type:r,sandbox:{allowSameOrigin:t}}},o4e=(A)=>{let e;Rh(A)?e="IFrame element":e=!A.link||A?.link===""?"Empty Web-Embed":A.link;let t=Math.max(Math.min(A.width/2,A.width/e.length),A.width/30),r=aa.Helvetica,i=cu({fontSize:t,fontFamily:r});return Gl({x:A.x+A.width/2,y:A.y+A.height/2,strokeColor:A.strokeColor!=="transparent"?A.strokeColor:"black",backgroundColor:"transparent",fontFamily:r,fontSize:t,text:_1(e,i,A.width-20),textAlign:"center",verticalAlign:Rl.MIDDLE,angle:A.angle??0})},Hyi,jdA=(A,e)=>{try{let{hostname:t}=new URL(A),r=t.replace(/^www\./,"");if(e instanceof Set){if(VdA.has(r))return r;let u=r.replace(/^([^.]+)/,"*");return VdA.has(u)?u:null}let i=e.replace(/^www\./,"");if(r===i)return i}catch{}return null},s4e=(A)=>{let e=A.match(zur);if(e&&e.length===2)return e[1];let t=A.match(jur);if(t&&t.length===2)return t[1];let r=A.match(qur);if(r&&r.length===2)return r[1];if(TEe.test(A))return`https://giphy.com/embed/${TEe.exec(A)[1]}`;let i=A.match(Vur);return i&&i.length===2?i[1]:A},tS=(A,e)=>{if(!A)return!1;if(e!=null)if(typeof e=="function"){let t=e(A);if(typeof t=="boolean")return t}else{if(typeof e=="boolean")return e;if(e instanceof RegExp)return e.test(A);if(Array.isArray(e)){for(let t of e)if(t instanceof RegExp){if(A.match(t))return!0}else if(jdA(A,t))return!0;return!1}}return!!jdA(A,VdA)},g8=(A,e,t)=>{if(typeof t>"u")return A.draw(e);let r={sets:e.sets,shape:e.shape,options:{...e.options,fixedDecimalPlaceDigits:t}};return A.draw(r)},c8=(A,e,t,r,i)=>{if(!r.enabled||!r.clip)return null;let u=Ks(A,i);if(u){let a=e.ownerDocument.createElementNS(bi,"g");return a.setAttributeNS(bi,"clip-path",`url(#${u.id})`),t.forEach((n)=>a.appendChild(n)),a}return null},C_=(A,e,t,r,i,u,a,n)=>{let o={x:u,y:a},[s,l,g,C]=Nr(A,e),B=(g-s)/2-(A.x-s),E=(C-l)/2-(A.y-l);if(Bt(A)){let p=Do(A,e);if(Jr(p)){let[m,f,D,w]=Nr(p,e),b=It.getBoundTextElementPosition(p,A,e);B=(D-m)/2-(b.x-m),E=(w-f)/2-(b.y-f),u=u+b.x-A.x,a=a+b.y-A.y}}let d=180*A.angle/Math.PI,I=r;if(A.link){let p=r.ownerDocument.createElementNS(bi,"a");p.setAttribute("href",Nl(A.link)),I.appendChild(p),I=p}let h=(p,m)=>{Cd()&&p.setAttribute("data-id",m.id),I.appendChild(p)},Q=(Ks(A,e)?.opacity??100)*A.opacity/1e4;switch(A.type){case"selection":throw Error("Selection rendering is not supported for SVG");case"rectangle":case"diamond":case"ellipse":{let p=na.generateElementShape(A,null),m=g8(t,p,l8);Q!==1&&(m.setAttribute("stroke-opacity",`${Q}`),m.setAttribute("fill-opacity",`${Q}`)),m.setAttribute("stroke-linecap","round"),m.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`);let f=c8(A,I,[m],n.frameRendering,e);h(f||m,A);break}case"iframe":case"embeddable":{let p=na.generateElementShape(A,n),m=g8(t,p,l8),f=A.opacity/100;f!==1&&(m.setAttribute("stroke-opacity",`${f}`),m.setAttribute("fill-opacity",`${f}`)),m.setAttribute("stroke-linecap","round"),m.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`),h(m,A);let D=o4e(A);C_(D,e,t,I,i,D.x+o.x-A.x,D.y+o.y-A.y,n);let w=g8(t,p,l8);for(w.setAttribute("stroke-linecap","round"),w.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`);w.firstChild;)w.removeChild(w.firstChild);let b=Fc(Math.min(A.width,A.height),A),k=s2(KhA(A.link||""));if(n.renderEmbeddables===!1||k?.type==="document"){let v=r.ownerDocument.createElementNS(bi,"a");v.setAttribute("href",Nl(A.link||"")),v.setAttribute("target","_blank"),v.setAttribute("rel","noopener noreferrer"),v.style.borderRadius=`${b}px`,w.appendChild(v)}else{let v=r.ownerDocument.createElementNS(bi,"foreignObject");v.style.width=`${A.width}px`,v.style.height=`${A.height}px`,v.style.border="none";let S=v.ownerDocument.createElementNS(bi,"div");S.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),S.style.width="100%",S.style.height="100%";let x=S.ownerDocument.createElement("iframe");x.src=k?.link??"",x.style.width="100%",x.style.height="100%",x.style.border="none",x.style.borderRadius=`${b}px`,x.style.top="0",x.style.left="0",x.allowFullscreen=!0,S.appendChild(x),v.appendChild(S),w.appendChild(v)}h(w,A);break}case"line":case"arrow":{let p=Ur(A,e),m=r.ownerDocument.createElementNS(bi,"mask");if(p){m.setAttribute("id",`mask-${A.id}`);let w=r.ownerDocument.createElementNS(bi,"rect");u=u||0,a=a||0,w.setAttribute("x","0"),w.setAttribute("y","0"),w.setAttribute("fill","#fff"),w.setAttribute("width",`${A.width+100+u}`),w.setAttribute("height",`${A.height+100+a}`),m.appendChild(w);let b=r.ownerDocument.createElementNS(bi,"rect"),k=It.getBoundTextElementPosition(A,p,e),v=u+k.x-A.x,S=a+k.y-A.y;b.setAttribute("x",v.toString()),b.setAttribute("y",S.toString()),b.setAttribute("fill","#000"),b.setAttribute("width",`${p.width}`),b.setAttribute("height",`${p.height}`),b.setAttribute("opacity","1"),m.appendChild(b)}let f=r.ownerDocument.createElementNS(bi,"g");p&&f.setAttribute("mask",`url(#mask-${A.id})`),f.setAttribute("stroke-linecap","round"),na.generateElementShape(A,n).forEach((w)=>{let b=g8(t,w,l8);Q!==1&&(b.setAttribute("stroke-opacity",`${Q}`),b.setAttribute("fill-opacity",`${Q}`)),b.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`),A.type==="line"&&od(A.points)&&A.backgroundColor!=="transparent"&&b.setAttribute("fill-rule","evenodd"),f.appendChild(b)});let D=c8(A,I,[f,m],n.frameRendering,e);D?(h(D,A),I.appendChild(D)):(h(f,A),I.append(m));break}case"freedraw":{let p=na.generateElementShape(A,n),m=p?g8(t,p,l8):r.ownerDocument.createElementNS(bi,"g");Q!==1&&(m.setAttribute("stroke-opacity",`${Q}`),m.setAttribute("fill-opacity",`${Q}`)),m.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`),m.setAttribute("stroke","none");let f=r.ownerDocument.createElementNS(bi,"path");f.setAttribute("fill",A.strokeColor),f.setAttribute("d",hhA(A)),m.appendChild(f);let D=c8(A,I,[m],n.frameRendering,e);h(D||m,A);break}case"image":{let p=Math.round(A.width),m=Math.round(A.height),f=xg(A)&&i[A.fileId];if(f){let{reuseImages:D=!0}=n,w=`image-${f.id}`,{width:b,height:k}=A;A.crop&&({width:b,height:k}=sd(A),w=`image-crop-${f.id}-${q4e(`${b}x${k}`)}`),D||(w=`image-${A.id}`);let v=r.querySelector(`#${w}`);if(!v){v=r.ownerDocument.createElementNS(bi,"symbol"),v.id=w;let U=r.ownerDocument.createElementNS(bi,"image");U.setAttribute("href",f.dataURL),U.setAttribute("preserveAspectRatio","none"),A.crop||!D?(U.setAttribute("width",`${b}`),U.setAttribute("height",`${k}`)):(U.setAttribute("width","100%"),U.setAttribute("height","100%")),v.appendChild(U),(I.querySelector("defs")||I).prepend(v)}let S=r.ownerDocument.createElementNS(bi,"use");S.setAttribute("href",`#${w}`),n.exportWithDarkMode&&f.mimeType!==jt.svg&&S.setAttribute("filter",EQe);let x=0,F=0;if(A.crop){let{width:U,height:Y}=sd(A);x=A.crop.x/(A.crop.naturalWidth/U),F=A.crop.y/(A.crop.naturalHeight/Y)}let T=B+x,R=E+F;S.setAttribute("width",`${p+x}`),S.setAttribute("height",`${m+F}`),S.setAttribute("opacity",`${Q}`),(A.scale[0]!==1||A.scale[1]!==1)&&S.setAttribute("transform",`translate(${T} ${R}) scale(${A.scale[0]} ${A.scale[1]}) translate(${-T} ${-R})`);let L=r.ownerDocument.createElementNS(bi,"g");if(A.crop){let U=r.ownerDocument.createElementNS(bi,"mask");U.setAttribute("id",`mask-image-crop-${A.id}`),U.setAttribute("fill","#fff");let Y=r.ownerDocument.createElementNS(bi,"rect");Y.setAttribute("x",`${x}`),Y.setAttribute("y",`${F}`),Y.setAttribute("width",`${p}`),Y.setAttribute("height",`${m}`),U.appendChild(Y),I.appendChild(U),L.setAttribute("mask",`url(#${U.id})`)}if(L.appendChild(S),L.setAttribute("transform",`translate(${u-x} ${a-F}) rotate(${d} ${T} ${R})`),A.roundness){let U=r.ownerDocument.createElementNS(bi,"clipPath");U.id=`image-clipPath-${A.id}`;let Y=r.ownerDocument.createElementNS(bi,"rect"),H=Fc(Math.min(A.width,A.height),A);Y.setAttribute("width",`${A.width}`),Y.setAttribute("height",`${A.height}`),Y.setAttribute("rx",`${H}`),Y.setAttribute("ry",`${H}`),U.appendChild(Y),h(U,A),L.setAttributeNS(bi,"clip-path",`url(#${U.id})`)}let M=c8(A,I,[L],n.frameRendering,e);h(M||L,A)}break}case"frame":case"magicframe":{if(n.frameRendering.enabled&&n.frameRendering.outline){let p=document.createElementNS(bi,"rect");p.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`),p.setAttribute("width",`${A.width}px`),p.setAttribute("height",`${A.height}px`),p.setAttribute("rx",Zu.radius.toString()),p.setAttribute("ry",Zu.radius.toString()),p.setAttribute("fill","none"),p.setAttribute("stroke",Zu.strokeColor),p.setAttribute("stroke-width",Zu.strokeWidth.toString()),h(p,A)}break}default:if(Bt(A)){let p=r.ownerDocument.createElementNS(bi,"g");Q!==1&&(p.setAttribute("stroke-opacity",`${Q}`),p.setAttribute("fill-opacity",`${Q}`)),p.setAttribute("transform",`translate(${u||0} ${a||0}) rotate(${d} ${B} ${E})`);let m=A.text.replace(/\r\n?/g,`
`).split(`
`),f=w9(A.fontSize,A.lineHeight),D=A.textAlign==="center"?A.width/2:A.textAlign==="right"?A.width:0,w=$he(A.fontFamily,A.fontSize,f),b=$de(A.text)?"rtl":"ltr",k=A.textAlign==="center"?"middle":A.textAlign==="right"||b==="rtl"?"end":"start";for(let S=0;S<m.length;S++){let x=r.ownerDocument.createElementNS(bi,"text");x.textContent=m[S],x.setAttribute("x",`${D}`),x.setAttribute("y",`${S*f+w}`),x.setAttribute("font-family",e2(A)),x.setAttribute("font-size",`${A.fontSize}px`),x.setAttribute("fill",A.strokeColor),x.setAttribute("text-anchor",k),x.setAttribute("style","white-space: pre;"),x.setAttribute("direction",b),x.setAttribute("dominant-baseline","alphabetic"),p.appendChild(x)}let v=c8(A,I,[p],n.frameRendering,e);h(v||p,A)}else throw Error(`Unimplemented type ${A.type}`)}},Xur=(A,e,t,r,i,u)=>{r&&(A.filter((a)=>!bg(a)).forEach((a)=>{if(!a.isDeleted){if(Bt(a)&&a.containerId&&e.has(a.containerId))return;try{C_(a,e,t,r,i,a.x+u.offsetX,a.y+u.offsetY,u);let n=Ur(a,e);n&&C_(n,e,t,r,i,n.x+u.offsetX,n.y+u.offsetY,u)}catch(n){console.error(n)}}}),A.filter((a)=>bg(a)).forEach((a)=>{if(!a.isDeleted)try{C_(a,e,t,r,i,a.x+u.offsetX,a.y+u.offsetY,u)}catch(n){console.error(n)}}))},KEe=500,yW=(A)=>{let e=A.extensions?.reduce((r,i)=>(r.push(jt[i]),r),[]),t=A.extensions?.reduce((r,i)=>i==="jpg"?r.concat(".jpg",".jpeg"):r.concat(`.${i}`),[]);return YBe({description:A.description,extensions:t,mimeTypes:e,multiple:A.multiple??!1,legacySetup:(r,i,u)=>{let a=t2(i,KEe),n=()=>{o(),document.addEventListener("keyup",a),document.addEventListener("pointerup",a),a()},o=()=>{if(u.files?.length){let l=A.multiple?[...u.files]:u.files[0];r(l)}};requestAnimationFrame(()=>{window.addEventListener("focus",n)});let s=window.setInterval(()=>{o()},KEe);return(l)=>{clearInterval(s),a.cancel(),window.removeEventListener("focus",n),document.removeEventListener("keyup",a),document.removeEventListener("pointerup",a),l&&(console.warn("Opening the file was canceled (legacy-fs)."),l(new z8))}}})},rS=(A,e)=>HBe(A,{fileName:`${e.name}.${e.extension}`,description:e.description,extensions:[`.${e.extension}`],mimeTypes:e.mimeTypes},e.fileHandle),$ur=(A,e)=>{let t={};for(let r of A)!r.isDeleted&&"fileId"in r&&r.fileId&&e[r.fileId]&&(t[r.fileId]=e[r.fileId]);return t},wW=(A,e,t,r)=>{let i={type:wg.excalidraw,version:N8.excalidraw,source:R_,elements:r==="local"?Z4e(A):nnr(A),appState:r==="local"?Kde(e):TXt(e),files:r==="local"?$ur(A,t):void 0};return JSON.stringify(i,null,2)},zhA=async(A,e,t,r=e.name||CIA)=>{let i=wW(A,e,t,"local"),u=new Blob([i],{type:jt.excalidraw});return{fileHandle:await rS(u,{name:r,extension:"excalidraw",description:"Excalidraw file",fileHandle:zW(e.fileHandle)?null:e.fileHandle})}},l4e=async(A,e)=>{let t=await yW({description:"Excalidraw files"});return GQA(await VW(t),A,e,t.handle)},Aar=(A)=>A?.type===wg.excalidraw&&(!A.elements||Array.isArray(A.elements)&&(!A.appState||typeof A.appState=="object")),g4e=(A)=>typeof A=="object"&&A&&A.type===wg.excalidrawLibrary&&(A.version===1||A.version===2),ZhA=(A)=>{let e={type:wg.excalidrawLibrary,version:N8.excalidrawLibrary,source:R_,libraryItems:A};return JSON.stringify(e,null,2)},c4e=async(A)=>{let e=ZhA(A);await rS(new Blob([e],{type:jt.excalidrawlib}),{name:"library",extension:"excalidrawlib",description:"Excalidraw library file"})},VhA=(A)=>new Promise((e,t)=>{let r=new Image;r.onload=()=>{e(r)},r.onerror=(i)=>{t(i)},r.src=A}),jhA=async({fileIds:A,files:e,imageCache:t})=>{let r=new Map,i=new Map;return await Promise.all(A.reduce((u,a)=>{let n=e[a];return n&&!r.has(a)?(r.set(a,!0),u.concat((async()=>{try{if(n.mimeType===jt.binary)throw Error("Only images can be added to ImageCache");let o=VhA(n.dataURL),s={image:o,mimeType:n.mimeType};t.set(a,s);let l=await o;t.set(a,{...s,image:l})}catch{i.set(a,!0)}})())):u},[])),{imageCache:t,updatedFiles:r,erroredFiles:i}},XhA=(A)=>A.filter((e)=>xg(e)),ear=(A)=>A?.nodeName.toLowerCase()==="svg",$hA=(A)=>{let e=new DOMParser().parseFromString(A,jt.svg),t=e.querySelector("svg");if(e.querySelector("parsererror")||!ear(t))throw Error("Invalid SVG");{t.hasAttribute("xmlns")||t.setAttribute("xmlns",bi);let r=t.getAttribute("width"),i=t.getAttribute("height");(r?.includes("%")||r==="auto")&&(r=null),(i?.includes("%")||i==="auto")&&(i=null);let u=t.getAttribute("viewBox");if(!r||!i){if(r=r||"50",i=i||"50",u){let a=u.match(/\d+ +\d+ +(\d+(?:\.\d+)?) +(\d+(?:\.\d+)?)/);a&&([,r,i]=a)}t.setAttribute("width",r),t.setAttribute("height",i)}return u||t.setAttribute("viewBox",`0 0 ${r} ${i}`),t.outerHTML}},C4e,B4e,bW=([A,e,t,r],i,u)=>{let a=Rir,n=a/u.zoom.value,o=a/u.zoom.value,s=a/u.zoom.value,l=(A+t)/2,g=(e+r)/2,C=(a-8)/(2*u.zoom.value),B=4/u.zoom.value,E=t+B-C,d=e-B-s+C,[I,h]=De(X(E+n/2,d+o/2),X(l,g),i);return[I-n/2,h-o/2,n,o]},AQA=(A,e,t,[r,i])=>{let u=4/t.zoom.value,[a,n,o,s]=Nr(A,e),[l,g,C,B]=bW([a,n,o,s],A.angle,t);return r>l-u&&r<l+u+C&&i>g-u&&i<g+B+u},vW=(A,e,t,[r,i],u)=>!A.link||t.selectedElementIds[A.id]?!1:!u&&t.viewModeEnabled&&tW(r,i,A,e)?!0:AQA(A,e,t,X(r,i)),iS=(A,e,t,r,i=!0)=>{A.beginPath(),A.arc(e,t,r,0,Math.PI*2),A.fill(),i&&A.stroke()},kW=(A,e)=>[A.width/e,A.height/e],FW=({canvas:A,scale:e,normalizedWidth:t,normalizedHeight:r,theme:i,isExporting:u,viewBackgroundColor:a})=>{let n=A.getContext("2d");return n.setTransform(1,0,0,1,0,0),n.scale(e,e),u&&i===ei.DARK&&(n.filter=U_),typeof a=="string"?((a==="transparent"||a.length===5||a.length===9||/(hsla|rgba)\(/.test(a))&&n.clearRect(0,0,t,r),n.save(),n.fillStyle=a,n.fillRect(0,0,t,r),n.restore()):n.clearRect(0,0,t,r),n},eQA=(A,e)=>{let t=window.location.href;try{let r=new URL(t);return r.searchParams.set(E_,A),Nl(r.toString())}catch(r){console.error(r)}return Nl(t)},tQA=(A,e)=>{if(A.length>0&&uS(A)){if(A.length===1)return{id:A[0].id,type:"element"};if(A.length>1){let t=Object.keys(e.selectedGroupIds)[0];return t?{id:t,type:"group"}:{id:A[0].groupIds[0],type:"group"}}}return null},uS=(A)=>!!(A.length===1||A.length>1&&GhA(A)),N9=(A)=>{try{let e=new URL(A);return e.searchParams.has(E_)&&e.host===window.location.host}catch{return!1}},E4e=(A)=>{try{let{searchParams:e}=new URL(A);if(e.has(E_))return e.get(E_)}catch{}return null},o_,tar=(A,e,t,r,i,u,a,n)=>{let o=r%e-e,s=i%e-e,l=e*u.value,g=1/u.value;A.save(),u.value===1&&A.translate(o%1?0:0.5,s%1?0:0.5);for(let C=o;C<o+a+e*2;C+=e){let B=t>1&&Math.round(C-r)%(t*e)===0;if(!B&&l<10)continue;let E=Math.min(1/u.value,B?4:1);A.lineWidth=E;let d=[E*3,g+(E+g)];A.beginPath(),A.setLineDash(B?[]:d),A.strokeStyle=B?o_.Bold:o_.Regular,A.moveTo(C,s-e),A.lineTo(C,Math.ceil(s+n+e*2)),A.stroke()}for(let C=s;C<s+n+e*2;C+=e){let B=t>1&&Math.round(C-i)%(t*e)===0;if(!B&&l<10)continue;let E=Math.min(1/u.value,B?4:1);A.lineWidth=E;let d=[E*3,g+(E+g)];A.beginPath(),A.setLineDash(B?[]:d),A.strokeStyle=B?o_.Bold:o_.Regular,A.moveTo(o-e,C),A.lineTo(Math.ceil(o+a+e*2),C),A.stroke()}A.restore()},JEe=(A,e,t,r)=>{e.translate(A.x+r.scrollX,A.y+r.scrollY),e.beginPath(),e.roundRect?e.roundRect(0,0,A.width,A.height,Zu.radius/r.zoom.value):e.rect(0,0,A.width,A.height),e.clip(),e.translate(-(A.x+r.scrollX),-(A.y+r.scrollY))},OEe,PEe=(A,e,t,r)=>{if(A.link&&!t.selectedElementIds[A.id]){let[i,u,a,n]=Nr(A,r),[o,s,l,g]=bW([i,u,a,n],A.angle,t),C=o+l/2,B=s+g/2;e.save(),e.translate(t.scrollX+C,t.scrollY+B),e.rotate(A.angle);let E=N9(A.link)?"elementLink":"regularLink",d=OEe[E];if(!d||d.zoom!==t.zoom.value){d=Object.assign(document.createElement("canvas"),{zoom:t.zoom.value}),d.width=l*window.devicePixelRatio*t.zoom.value,d.height=g*window.devicePixelRatio*t.zoom.value,OEe[E]=d;let I=d.getContext("2d");I.scale(window.devicePixelRatio*t.zoom.value,window.devicePixelRatio*t.zoom.value),I.fillStyle="#fff",I.fillRect(0,0,l,g),E==="elementLink"?I.drawImage(B4e,0,0,l,g):I.drawImage(C4e,0,0,l,g),I.restore()}e.drawImage(d,o-C,s-B,l,g),e.restore()}},d4e=({canvas:A,rc:e,elementsMap:t,allElementsMap:r,visibleElements:i,scale:u,appState:a,renderConfig:n})=>{if(A===null)return;let{renderGrid:o=!0,isExporting:s}=n,[l,g]=kW(A,u),C=FW({canvas:A,scale:u,normalizedWidth:l,normalizedHeight:g,theme:a.theme,isExporting:s,viewBackgroundColor:a.viewBackgroundColor});C.scale(a.zoom.value,a.zoom.value),o&&tar(C,a.gridSize,a.gridStep,a.scrollX,a.scrollY,a.zoom,l/a.zoom.value,g/a.zoom.value);let B=new Set;i.forEach((d)=>{d.groupIds.length>0&&a.frameToHighlight&&a.selectedElementIds[d.id]&&(xh(d,a.frameToHighlight,t)||d.groupIds.find((I)=>B.has(I)))&&d.groupIds.forEach((I)=>B.add(I))});let E=new Map;i.filter((d)=>!bg(d)).forEach((d)=>{try{let I=d.frameId||a.frameToHighlight?.id;if(Bt(d)&&d.containerId&&t.has(d.containerId))return;if(C.save(),I&&a.frameRendering.enabled&&a.frameRendering.clip){let Q=$dA(d,t,a);Q&&rde(d,Q,a,t,E)&&JEe(Q,C,n,a),v1(d,t,r,e,C,n,a)}else v1(d,t,r,e,C,n,a);let h=Ur(d,t);h&&v1(h,t,r,e,C,n,a),C.restore(),s||PEe(d,C,a,t)}catch(I){console.error(I,d.id,d.x,d.y,d.width,d.height)}}),i.filter((d)=>bg(d)).forEach((d)=>{try{let I=()=>{if(v1(d,t,r,e,C,n,a),bg(d)&&(s||Js(d)&&n.embedsValidationStatus.get(d.id)!==!0)&&d.width&&d.height){let h=o4e(d);v1(h,t,r,e,C,n,a)}s||PEe(d,C,a,t)};if((d.frameId||a.frameToHighlight?.id)&&a.frameRendering.enabled&&a.frameRendering.clip){C.save();let h=$dA(d,t,a);h&&rde(d,h,a,t,E)&&JEe(h,C,n,a),I(),C.restore()}else I()}catch(I){console.error(I)}}),n.pendingFlowchartNodes?.forEach((d)=>{try{v1(d,t,r,e,C,n,a)}catch(I){console.error(I)}})},rQA,iQA=(A,e)=>{if(e){rQA(A);return}d4e(A)},rar=(A,e)=>{if(A.width<=e)return A;let t=document.createElement("canvas").getContext("2d");t.font=cu({fontFamily:A.fontFamily,fontSize:A.fontSize});let r=A.text;if(t.measureText(r).width>e)for(let i=r.length;i>0;i--){let u=`${r.slice(0,i)}...`;if(t.measureText(u).width<=e){r=u;break}}return Yr(A,{text:r,width:e})},iar=(A,e)=>{let t=[];for(let r of A){if(nr(r)){let i=Gl({x:r.x,y:r.y-Zu.nameOffsetY,fontFamily:aa.Helvetica,fontSize:Zu.nameFontSize,lineHeight:Zu.nameLineHeight,strokeColor:e.exportWithDarkMode?Zu.nameColorDarkTheme:Zu.nameColorLightTheme,text:pQA(r)});i.y-=i.height,i=rar(i,r.width),t.push(i)}t.push(r)}return t},I4e=(A,e)=>(e=e||iB().frameRendering,{enabled:A?!0:e.enabled,outline:A?!1:e.outline,name:A?!1:e.name,clip:A?!0:e.clip}),h4e=({elements:A,exportingFrame:e,frameRendering:t,exportWithDarkMode:r})=>{let i;return e?i=HW(A,e):t.enabled&&t.name?i=iar(A,{exportWithDarkMode:r}):i=A,i},uQA=async(A,e,t,{exportBackground:r,exportPadding:i=Xm,viewBackgroundColor:u,exportingFrame:a},n=(s,l)=>{let g=document.createElement("canvas");return g.width=s*e.exportScale,g.height=l*e.exportScale,{canvas:g,scale:e.exportScale}},o=async()=>{await Ed.loadElementsFonts(A)})=>{await o();let s=I4e(a??null,e.frameRendering??null);a&&(s.clip=!1);let l=h4e({elements:A,exportingFrame:a,exportWithDarkMode:e.exportWithDarkMode,frameRendering:s});a&&(i=0);let[g,C,B,E]=aQA(a?[a]:TW(l),i),{canvas:d,scale:I=1}=n(B,E),h=iB(),{imageCache:Q}=await jhA({imageCache:new Map,fileIds:XhA(l).map((p)=>p.fileId),files:t});return iQA({canvas:d,rc:yc.canvas(d),elementsMap:vg(ar(l)),allElementsMap:vg(ar(hd(A))),visibleElements:l,scale:I,appState:{...e,frameRendering:s,viewBackgroundColor:r?u:null,scrollX:-g+i,scrollY:-C+i,zoom:h.zoom,shouldCacheIgnoreZoom:!1,theme:e.exportWithDarkMode?ei.DARK:ei.LIGHT},renderConfig:{canvasBackgroundColor:u,imageCache:Q,renderGrid:!1,isExporting:!0,embedsValidationStatus:new Map,elementsPendingErasure:new Set,pendingFlowchartNodes:null}}),d},C8=(A)=>document.createComment(` ${A} `),xW=async(A,e,t,r)=>{let i=I4e(r?.exportingFrame??null,e.frameRendering??null),{exportPadding:u=Xm,exportWithDarkMode:a=!1,viewBackgroundColor:n,exportScale:o=1,exportEmbedScene:s}=e,{exportingFrame:l=null}=r||{},g=h4e({elements:A,exportingFrame:l,exportWithDarkMode:a,frameRendering:i});l&&(u=0);let[C,B,E,d]=aQA(l?[l]:TW(g),u),I=-C+u,h=-B+u,Q=document.createElementNS(bi,"svg");Q.setAttribute("version","1.1"),Q.setAttribute("xmlns",bi),Q.setAttribute("viewBox",`0 0 ${E} ${d}`),Q.setAttribute("width",`${E*o}`),Q.setAttribute("height",`${d*o}`),a&&Q.setAttribute("filter",U_);let p=Q.ownerDocument.createElementNS(bi,"defs"),m=Q.ownerDocument.createElementNS(bi,"metadata");if(Q.appendChild(C8("svg-source:excalidraw")),Q.appendChild(m),Q.appendChild(p),s)try{uar({metadataElement:m,payload:wW(A,e,t||{},"local")})}catch(S){console.error(S)}let f=MW(A);if(f.length){let S=ar(A);for(let x of f){let F=Q.ownerDocument.createElementNS(bi,"clipPath");F.setAttribute("id",x.id);let[T,R,L,M]=Nr(x,S),U=(L-T)/2-(x.x-T),Y=(M-R)/2-(x.y-R),H=Q.ownerDocument.createElementNS(bi,"rect");H.setAttribute("transform",`translate(${x.x+I} ${x.y+h}) rotate(${x.angle} ${U} ${Y})`),H.setAttribute("width",`${x.width}`),H.setAttribute("height",`${x.height}`),l||(H.setAttribute("rx",`${Zu.radius}`),H.setAttribute("ry",`${Zu.radius}`)),F.appendChild(H),p.appendChild(F)}}let D=r?.skipInliningFonts?[]:await Ed.generateFontFaceDeclarations(A),w=`
`,b=Q.ownerDocument.createElementNS(bi,"style");if(b.classList.add("style-fonts"),b.appendChild(document.createTextNode(`${w}${D.join(w)}`)),p.appendChild(b),e.exportBackground&&n){let S=Q.ownerDocument.createElementNS(bi,"rect");S.setAttribute("x","0"),S.setAttribute("y","0"),S.setAttribute("width",`${E}`),S.setAttribute("height",`${d}`),S.setAttribute("fill",n),Q.appendChild(S)}let k=yc.svg(Q),v=r?.renderEmbeddables??!1;return Xur(g,vg(ar(g)),k,Q,t||{},{offsetX:I,offsetY:h,isExporting:!0,exportWithDarkMode:a,renderEmbeddables:v,frameRendering:i,canvasBackgroundColor:n,embedsValidationStatus:v?new Map(g.filter((S)=>nr(S)).map((S)=>[S.id,!0])):new Map,reuseImages:r?.reuseImages??!0}),Q},uar=({payload:A,metadataElement:e})=>{let t=o1e(JSON.stringify(l1e({text:A})),!0);e.appendChild(C8(`payload-type:${jt.excalidraw}`)),e.appendChild(C8("payload-version:2")),e.appendChild(C8("payload-start")),e.appendChild(document.createTextNode(t)),e.appendChild(C8("payload-end"))},aar=({svg:A})=>{if(A.includes(`payload-type:${jt.excalidraw}`)){let e=A.match(/<!-- payload-start -->\s*(.+?)\s*<!-- payload-end -->/);if(!e)throw Error("INVALID");let t=(A.match(/<!-- payload-version:(\d+) -->/)?.[1]||"1")!=="1";try{let r=s1e(e[1],t),i=JSON.parse(r);if(!("encoded"in i)){if("type"in i&&i.type===wg.excalidraw)return r;throw Error("FAILED")}return g1e(i)}catch(r){throw console.error(r),Error("FAILED")}}throw Error("INVALID")},aQA=(A,e)=>{let[t,r,i,u]=Pi(A),a=D0(t,i)+e*2,n=D0(r,u)+e*2;return[t,r,a,n]},Q4e=(A,e,t)=>{let[,,r,i]=aQA(A,e).map((u)=>Math.trunc(u*t));return[r,i]},nar=class{constructor(A){this.scoreFunction=A,GA(this,"content",[])}sinkDown(A){let e=this.content[A];for(;A>0;){let t=(A+1>>1)-1,r=this.content[t];if(this.scoreFunction(e)<this.scoreFunction(r))this.content[t]=e,this.content[A]=r,A=t;else break}}bubbleUp(A){let e=this.content.length,t=this.content[A],r=this.scoreFunction(t);for(;;){let i=A+1<<1,u=i-1,a=null,n=0;if(u<e){let o=this.content[u];n=this.scoreFunction(o),n<r&&(a=u)}if(i<e){let o=this.content[i];this.scoreFunction(o)<(a===null?r:n)&&(a=i)}if(a!==null)this.content[A]=this.content[a],this.content[a]=t,A=a;else break}}push(A){this.content.push(A),this.sinkDown(this.content.length-1)}pop(){if(this.content.length===0)return null;let A=this.content[0],e=this.content.pop();return this.content.length>0&&(this.content[0]=e,this.bubbleUp(0)),A}remove(A){if(this.content.length===0)return;let e=this.content.indexOf(A),t=this.content.pop();e<this.content.length&&(this.content[e]=t,this.scoreFunction(t)<this.scoreFunction(A)?this.sinkDown(e):this.bubbleUp(e))}size(){return this.content.length}rescoreElement(A){this.sinkDown(this.content.indexOf(A))}},nQA=1,gu=40,oar=(A,e)=>{let t=A.fixedSegments?A.fixedSegments.slice():null;if(t){let r=[];A.points.map((a)=>X(A.x+a[0],A.y+a[1])).forEach((a,n,o)=>{if(n<2)return r.push(a);let s=y8(a,o[n-1]),l=y8(o[n-1],o[n-2]);if(va(s,l)){let g=t?.findIndex((B)=>B.index===n-1)??-1,C=t?.findIndex((B)=>B.index===n)??-1;C!==-1&&(t[C].start=X(o[n-2][0]-A.x,o[n-2][1]-A.y)),g!==-1&&t.splice(g,1),r.splice(-1,1),t.forEach((B)=>{B.index>n-1&&(B.index-=1)})}return r.push(a)});let i=[];r.forEach((a,n,o)=>{if(n<3)return i.push(a);if(Ri(o[n-2],o[n-1])<nQA){let s=t?.findIndex((C)=>C.index===n-2)??-1,l=t?.findIndex((C)=>C.index===n-1)??-1;l!==-1&&t.splice(l,1),s!==-1&&t.splice(s,1),i.splice(-2,2),t.forEach((C)=>{C.index>n-2&&(C.index-=2)});let g=vh(a,o[n-1]);return i.push(X(g?a[0]:o[n-2][0],g?o[n-2][1]:a[1]))}i.push(a)});let u=t.filter((a)=>a.index!==1&&a.index!==i.length-1);return u.length===0?T1(lQA(gQA(sQA(A,oQA(A,e,i.map((a)=>X(a[0]-A.x,a[1]-A.y)),A.startBinding&&d9(A.startBinding.elementId,e),A.endBinding&&d9(A.endBinding.elementId,e)))??[])),u,null,null):(fr.DEV&&fn(cQA(i),"Invalid elbow points with fixed segments"),T1(i,u,A.startIsSpecial,A.endIsSpecial))}return{x:A.x,y:A.y,points:A.points,fixedSegments:A.fixedSegments,startIsSpecial:A.startIsSpecial,endIsSpecial:A.endIsSpecial}},sar=(A,e,t)=>{let r=e.map((b)=>b.index),i=(A.fixedSegments?.map((b)=>b.index)??[]).findIndex((b)=>!r.includes(b));if(i===-1||!A.fixedSegments?.[i])return{points:A.points};let u=A.fixedSegments[i].index,a=A.fixedSegments[i-1],n=A.fixedSegments[i+1],o=A.x+(a?a.end[0]:0),s=A.y+(a?a.end[1]:0),l=a?null:A.startBinding,g=n?null:A.endBinding,{startHeading:C,endHeading:B,startGlobalPoint:E,endGlobalPoint:d,hoveredStartElement:I,hoveredEndElement:h,...Q}=oQA({x:o,y:s,startBinding:l,endBinding:g,startArrowhead:null,endArrowhead:null,points:A.points},t,[X(0,0),X(A.x+(n?.start[0]??A.points[A.points.length-1][0])-o,A.y+(n?.start[1]??A.points[A.points.length-1][1])-s)],l&&d9(l.elementId,t),g&&d9(g.elementId,t),{isDragging:!1}),{points:p}=T1(lQA(gQA(sQA(A,{startHeading:C,endHeading:B,startGlobalPoint:E,endGlobalPoint:d,hoveredStartElement:I,hoveredEndElement:h,...Q})??[])),e,null,null),m=[];if(a)for(let b=0;b<a.index;b++)m.push(X(A.x+A.points[b][0],A.y+A.points[b][1]));if(p.forEach((b)=>{m.push(X(A.x+(a?a.end[0]:0)+b[0],A.y+(a?a.end[1]:0)+b[1]))}),n)for(let b=n.index;b<A.points.length;b++)m.push(X(A.x+A.points[b][0],A.y+A.points[b][1]));let f=(n?.index??A.points.length)-(a?.index??0)-1,D=e.map((b)=>b.index>u?{...b,index:b.index-f+(p.length-1)}:b),w=m.flatMap((b,k)=>{let v=m[k-1],S=m[k+1];if(v&&S){let x=y8(b,v),F=y8(S,b);if(va(x,F))return D.forEach((T)=>{T.index>k&&(T.index-=1)}),[];if(va(x,DQe(F)))return D.forEach((T)=>{T.index>k&&(T.index+=1)}),[b,b]}return[b]});return T1(w,D,!1,!1)},lar=(A,e,t,r,i,u)=>{let a=e.map((f,D)=>A.fixedSegments==null||A.fixedSegments[D]===void 0||A.fixedSegments[D].index!==f.index||(f.start[0]!==A.fixedSegments[D].start[0]&&f.end[0]!==A.fixedSegments[D].end[0])!=(f.start[1]!==A.fixedSegments[D].start[1]&&f.end[1]!==A.fixedSegments[D].end[1])?D:null).filter((f)=>f!==null).shift();if(a==null)return{points:A.points};let n=A.fixedSegments?.findIndex((f)=>f.index===1)??-1,o=A.fixedSegments?.findIndex((f)=>f.index===A.points.length-1)??-1,s=Ri(e[a].start,e[a].end),l=s<gu+5;if(n===-1&&e[a].index===1&&i){let f=Fh(t),D=(f?va(t,wa):va(t,fo))?l?s/2:gu:l?-s/2:-gu;e[a].start=X(e[a].start[0]+(f?D:0),e[a].start[1]+(f?0:D))}if(o===-1&&e[a].index===A.points.length-1&&u){let f=Fh(r),D=(f?va(r,wa):va(r,fo))?l?s/2:gu:l?-s/2:-gu;e[a].end=X(e[a].end[0]+(f?D:0),e[a].end[1]+(f?0:D))}let g=e.map((f)=>({...f,start:X(A.x+f.start[0],A.y+f.start[1]),end:X(A.x+f.end[0],A.y+f.end[1])})),C=A.points.map((f,D)=>X(A.x+f[0],A.y+f[1])),B=g[a].index-1,E=g[a].index,d=g[a].start,I=g[a].end,h=C[B-1]&&!VC(C[B],C[B-1])?vh(C[B-1],C[B]):void 0,Q=C[E+1]&&!VC(C[E],C[E+1])?vh(C[E+1],C[E]):void 0;if(h!==void 0){let f=h?1:0;C[B-1][f]=d[f]}if(C[B]=d,C[E]=I,Q!==void 0){let f=Q?1:0;C[E+1][f]=I[f]}let p=g.findIndex((f)=>f.index===B);if(p!==-1){let f=vh(g[p].end,g[p].start)?1:0;g[p].start[f]=d[f],g[p].end=d}let m=g.findIndex((f)=>f.index===E+1);if(m!==-1){let f=vh(g[m].end,g[m].start)?1:0;g[m].end[f]=I[f],g[m].start=I}if(n===-1&&B===0){let f=i?Fh(t):vh(C[1],C[0]);C.unshift(X(f?d[0]:A.x+A.points[0][0],f?A.y+A.points[0][1]:d[1])),i&&C.unshift(X(A.x+A.points[0][0],A.y+A.points[0][1]));for(let D of g)D.index+=i?2:1}if(o===-1&&E===A.points.length-1){let f=Fh(r);C.push(X(f?I[0]:A.x+A.points[A.points.length-1][0],f?A.y+A.points[A.points.length-1][1]:I[1])),u&&C.push(X(A.x+A.points[A.points.length-1][0],A.y+A.points[A.points.length-1][1]))}return T1(C,g.map((f)=>({...f,start:X(f.start[0]-A.x,f.start[1]-A.y),end:X(f.end[0]-A.x,f.end[1]-A.y)})),!1,!1)},gar=(A,e,t,r,i,u,a,n,o)=>{let s=A.startIsSpecial??null,l=A.endIsSpecial??null,g=e.map((I,h)=>h===0?X(A.x+I[0],A.y+I[1]):h===e.length-1?X(A.x+I[0],A.y+I[1]):X(A.x+A.points[h][0],A.y+A.points[h][1])),C=t.map((I)=>({...I,start:X(A.x+(I.start[0]-e[0][0]),A.y+(I.start[1]-e[0][1])),end:X(A.x+(I.end[0]-e[0][0]),A.y+(I.end[1]-e[0][1]))})),B=[],E=2+(s?1:0),d=2+(l?1:0);for(;B.length+E<g.length-d;)B.push(g[B.length+E]);{let I=g[s?2:1],h=g[s?3:2],Q=Fh(r),p=Fh(_m(Mt(I,h)));if(n&&Q===p){let m=Q?va(r,wa):va(r,fo);if(B.unshift(X(p?u[0]+(m?gu:-gu):h[0],p?h[1]:u[1]+(m?gu:-gu))),B.unshift(X(Q?u[0]+(m?gu:-gu):u[0],Q?u[1]:u[1]+(m?gu:-gu))),!s){s=!0;for(let f of C)f.index>1&&(f.index+=1)}}else if(B.unshift(X(p?u[0]:I[0],p?I[1]:u[1])),s){s=!1;for(let m of C)m.index>1&&(m.index-=1)}B.unshift(u)}{let I=g[g.length-(l?3:2)],h=g[g.length-(l?4:3)],Q=Fh(i),p=vh(h,I);if(o&&Q===p){let m=Q?va(i,wa):va(i,fo);B.push(X(p?a[0]+(m?gu:-gu):h[0],p?h[1]:a[1]+(m?gu:-gu))),B.push(X(Q?a[0]+(m?gu:-gu):a[0],Q?a[1]:a[1]+(m?gu:-gu))),l||(l=!0)}else B.push(X(p?a[0]:I[0],p?I[1]:a[1])),l&&(l=!1)}return B.push(a),T1(B,C.map(({index:I})=>({index:I,start:B[I-1],end:B[I]})).map((I)=>({...I,start:X(I.start[0]-u[0],I.start[1]-u[1]),end:X(I.end[0]-u[0],I.end[1]-u[1])})),s,l)},xu=1e6,SW=(A,e,t,r)=>{if(A.points.length<2)return{points:t.points??A.points};(A.x<-xu||A.x>xu||A.y<-xu||A.y>xu||A.x+(t?.points?.[t?.points?.length-1]?.[0]??0)<-xu||A.x+(t?.points?.[t?.points?.length-1]?.[0]??0)>xu||A.y+(t?.points?.[t?.points?.length-1]?.[1]??0)<-xu||A.y+(t?.points?.[t?.points?.length-1]?.[1]??0)>xu||A.x+(A?.points?.[A?.points?.length-1]?.[0]??0)<-xu||A.x+(A?.points?.[A?.points?.length-1]?.[0]??0)>xu||A.y+(A?.points?.[A?.points?.length-1]?.[1]??0)<-xu||A.y+(A?.points?.[A?.points?.length-1]?.[1]??0)>xu)&&console.error("Elbow arrow (or update) is outside reasonable bounds (> 1e6)",{arrow:A,updates:t}),A.x=jr(A.x,-xu,xu),A.y=jr(A.y,-xu,xu),t.points&&(t.points=t.points.map(([h,Q])=>X(jr(h,-xu,xu),jr(Q,-xu,xu)))),fr.PROD||(fn(!t.points||t.points.length>=2,"Updated point array length must match the arrow point length, contain exactly the new start and end points or not be specified at all (i.e. you can't add new points between start and end manually to elbow arrows)"),fn(!A.fixedSegments||A.fixedSegments.map((h)=>h.start[0]===h.end[0]||h.start[1]===h.end[1]).every(Boolean),"Fixed segments must be either horizontal or vertical"),fn(!t.fixedSegments||t.fixedSegments.map((h)=>h.start[0]===h.end[0]||h.start[1]===h.end[1]).every(Boolean),"Updates to fixed segments must be either horizontal or vertical"),fn(A.points.slice(1).map((h,Q)=>h[0]===A.points[Q][0]||h[1]===A.points[Q][1]),"Elbow arrow segments must be either horizontal or vertical"));let i=t.points?t.points&&t.points.length===2?A.points.map((h,Q)=>Q===0?t.points[0]:Q===A.points.length-1?t.points[1]:h):t.points.slice():A.points.slice(),u=typeof t.startBinding<"u"?t.startBinding:A.startBinding,a=typeof t.endBinding<"u"?t.endBinding:A.endBinding,n=u&&d9(u.elementId,e),o=a&&d9(a.elementId,e);if(e.size===0&&cQA(i)||n?.id!==u?.elementId||o?.id!==a?.elementId)return T1(i.map((h)=>X(A.x+h[0],A.y+h[1])),A.fixedSegments,A.startIsSpecial,A.endIsSpecial);let{startHeading:s,endHeading:l,startGlobalPoint:g,endGlobalPoint:C,hoveredStartElement:B,hoveredEndElement:E,...d}=oQA({x:A.x,y:A.y,startBinding:u,endBinding:a,startArrowhead:A.startArrowhead,endArrowhead:A.endArrowhead,points:A.points},e,i,n,o,r),I=t.fixedSegments??A.fixedSegments??[];return!t.points&&!t.fixedSegments&&!t.startBinding&&!t.endBinding?oar(A,e):t.startBinding===A.startBinding&&t.endBinding===A.endBinding&&(t.points??[]).every((h,Q)=>VC(h,A.points[Q]??X(1/0,1/0)))?{}:I.length===0?T1(lQA(gQA(sQA(A,{startHeading:s,endHeading:l,startGlobalPoint:g,endGlobalPoint:C,hoveredStartElement:B,hoveredEndElement:E,...d})??[])),I,null,null):(A.fixedSegments?.length??0)>I.length?sar(A,I,e):t.points?t.points&&t.fixedSegments?t:gar(A,i,I,s,l,g,C,B,E):lar(A,I,s,l,B,E)},oQA=(A,e,t,r,i,u)=>{let a=I_(t[0],qo(A.x,A.y)),n=I_(t[t.length-1],qo(A.x,A.y)),o=r,s=i;if(u?.isDragging){let w=Array.from(e.values());o=zEe(a,e,w,u?.zoom)||r,s=zEe(n,e,w,u?.zoom)||i}let l=WEe({...A,elbowed:!0,points:t},"start",A.startBinding?.fixedPoint,a,r,o,u?.isDragging),g=WEe({...A,elbowed:!0,points:t},"end",A.endBinding?.fixedPoint,n,i,s,u?.isDragging),C=qEe(l,g,e,o,a),B=qEe(g,l,e,s,n),E=[l[0]-2,l[1]-2,l[0]+2,l[1]+2],d=[g[0]-2,g[1]-2,g[0]+2,g[1]+2],I=o?qC(o,D1(C,A.startArrowhead?Lu*6:Lu*2,1)):E,h=s?qC(s,D1(B,A.endArrowhead?Lu*6:Lu*2,1)):d,Q=C9(l,s?qC(s,D1(B,gu,gu)):d)||C9(g,o?qC(o,D1(C,gu,gu)):E),p=p4e(Q?[E,d]:[I,h]),m=Bar(Q?E:I,Q?d:h,p,Q?D1(C,!o&&!s?0:gu,0):D1(C,!o&&!s?0:gu-(A.startArrowhead?Lu*6:Lu*2),gu),Q?D1(B,!o&&!s?0:gu,0):D1(B,!o&&!s?0:gu-(A.endArrowhead?Lu*6:Lu*2),gu),Q,o&&qC(o),s&&qC(s)),f=_Ee(m[0],C,l),D=_Ee(m[1],B,g);return{dynamicAABBs:m,startDonglePosition:f,startGlobalPoint:l,startHeading:C,endDonglePosition:D,endGlobalPoint:g,endHeading:B,commonBounds:p,hoveredStartElement:o,hoveredEndElement:s,boundsOverlap:Q,startElementBounds:I,endElementBounds:h}},sQA=(A,e)=>{let{dynamicAABBs:t,startDonglePosition:r,startGlobalPoint:i,startHeading:u,endDonglePosition:a,endGlobalPoint:n,endHeading:o,commonBounds:s,hoveredEndElement:l}=e,g=Ear(t,r||i,u,a||n,o,s),C=r&&s_(r,g),B=a&&s_(a,g),E=s_(n,g);E&&l&&(E.closed=!0);let d=s_(i,g);d&&A.startBinding&&(d.closed=!0);let I=C&&B&&(C9(C.pos,t[1])||C9(B.pos,t[0])),h=car(C||d,B||E,g,u||wa,o||wa,I?[]:t);if(h){let Q=h.map((p)=>[p.pos[0],p.pos[1]]);return C&&Q.unshift(i),B&&Q.push(n),Q}return null},D1=(A,e,t)=>{switch(A){case Ts:return[e,t,t,t];case wa:return[t,e,t,t];case fo:return[t,t,e,t]}return[t,t,t,e]},car=(A,e,t,r,i,u)=>{let a=TdA(A.pos,e.pos),n=new nar((o)=>o.f);for(n.push(A);n.size()>0;){let o=n.pop();if(!o||o.closed)continue;if(o===e)return Car(A,o);o.closed=!0;let s=Iar(o.addr,t);for(let l=0;l<4;l++){let g=s[l];if(!g||g.closed)continue;let C=wh(g.pos,o.pos,0.5);if(e$t(...u.map((p)=>C9(C,p))))continue;let B=har(l),E=o.parent?_m(Mt(o.pos,o.parent.pos)):r,d=DQe(E);if(va(d,B)||ZEe(A.addr,g.addr)&&va(B,r)||ZEe(e.addr,g.addr)&&va(B,i))continue;let I=E!==B,h=o.g+TdA(g.pos,o.pos)+(I?Math.pow(a,3):0),Q=g.visited;if(!Q||h<g.g){let p=dar(g,e,B,i);g.visited=!0,g.parent=o,g.h=TdA(e.pos,g.pos)+p*Math.pow(a,2),g.g=h,g.f=g.g+g.h,Q?n.rescoreElement(g):n.push(g)}}}return null},Car=(A,e)=>{let t=e,r=[];for(;t.parent;)r.unshift(t),t=t.parent;return r.unshift(A),r},TdA=(A,e)=>Math.abs(A[0]-e[0])+Math.abs(A[1]-e[1]),Bar=(A,e,t,r,i,u,a,n)=>{let o=a??A,s=n??e,[l,g,C,B]=r??[0,0,0,0],[E,d,I,h]=i??[0,0,0,0],Q=[A[0]>e[2]?A[1]>e[3]||A[3]<e[1]?Math.min((o[0]+s[2])/2,A[0]-B):(o[0]+s[2])/2:A[0]>e[0]?A[0]-B:t[0]-B,A[1]>e[3]?A[0]>e[2]||A[2]<e[0]?Math.min((o[1]+s[3])/2,A[1]-l):(o[1]+s[3])/2:A[1]>e[1]?A[1]-l:t[1]-l,A[2]<e[0]?A[1]>e[3]||A[3]<e[1]?Math.max((o[2]+s[0])/2,A[2]+g):(o[2]+s[0])/2:A[2]<e[2]?A[2]+g:t[2]+g,A[3]<e[1]?A[0]>e[2]||A[2]<e[0]?Math.max((o[3]+s[1])/2,A[3]+C):(o[3]+s[1])/2:A[3]<e[3]?A[3]+C:t[3]+C],p=[e[0]>A[2]?e[1]>A[3]||e[3]<A[1]?Math.min((s[0]+o[2])/2,e[0]-h):(s[0]+o[2])/2:e[0]>A[0]?e[0]-h:t[0]-h,e[1]>A[3]?e[0]>A[2]||e[2]<A[0]?Math.min((s[1]+o[3])/2,e[1]-E):(s[1]+o[3])/2:e[1]>A[1]?e[1]-E:t[1]-E,e[2]<A[0]?e[1]>A[3]||e[3]<A[1]?Math.max((s[2]+o[0])/2,e[2]+d):(s[2]+o[0])/2:e[2]<A[2]?e[2]+d:t[2]+d,e[3]<A[1]?e[0]>A[2]||e[2]<A[0]?Math.max((s[3]+o[1])/2,e[3]+I):(s[3]+o[1])/2:e[3]<A[3]?e[3]+I:t[3]+I],m=p4e([Q,p]);if(!u&&Q[2]-Q[0]+p[2]-p[0]>m[2]-m[0]+0.00000000001&&Q[3]-Q[1]+p[3]-p[1]>m[3]-m[1]+0.00000000001){let[f,D]=[(p[0]+p[2])/2,(p[1]+p[3])/2];if(e[0]>A[2]&&A[1]>e[3]){let w=Q[2]+(p[0]-Q[2])/2,b=p[3]+(Q[1]-p[3])/2;return po(qo(A[2]-f,A[1]-D),qo(A[0]-f,A[3]-D))>0?[[Q[0],Q[1],w,Q[3]],[w,p[1],p[2],p[3]]]:[[Q[0],b,Q[2],Q[3]],[p[0],p[1],p[2],b]]}else if(A[2]<e[0]&&A[3]<e[1]){let w=Q[2]+(p[0]-Q[2])/2,b=Q[3]+(p[1]-Q[3])/2;return po(qo(A[0]-f,A[1]-D),qo(A[2]-f,A[3]-D))>0?[[Q[0],Q[1],Q[2],b],[p[0],b,p[2],p[3]]]:[[Q[0],Q[1],w,Q[3]],[w,p[1],p[2],p[3]]]}else if(A[0]>e[2]&&A[3]<e[1]){let w=p[2]+(Q[0]-p[2])/2,b=Q[3]+(p[1]-Q[3])/2;return po(qo(A[2]-f,A[1]-D),qo(A[0]-f,A[3]-D))>0?[[w,Q[1],Q[2],Q[3]],[p[0],p[1],w,p[3]]]:[[Q[0],Q[1],Q[2],b],[p[0],b,p[2],p[3]]]}else if(A[0]>e[2]&&A[1]>e[3]){let w=p[2]+(Q[0]-p[2])/2,b=p[3]+(Q[1]-p[3])/2;return po(qo(A[0]-f,A[1]-D),qo(A[2]-f,A[3]-D))>0?[[w,Q[1],Q[2],Q[3]],[p[0],p[1],w,p[3]]]:[[Q[0],b,Q[2],Q[3]],[p[0],p[1],p[2],b]]}}return[Q,p]},Ear=(A,e,t,r,i,u)=>{let a=new Set,n=new Set;t===Ms||t===wa?n.add(e[1]):a.add(e[0]),i===Ms||i===wa?n.add(r[1]):a.add(r[0]),A.forEach((l)=>{a.add(l[0]),a.add(l[2]),n.add(l[1]),n.add(l[3])}),a.add(u[0]),a.add(u[2]),n.add(u[1]),n.add(u[3]);let o=Array.from(n).sort((l,g)=>l-g),s=Array.from(a).sort((l,g)=>l-g);return{row:o.length,col:s.length,data:o.flatMap((l,g)=>s.map((C,B)=>({f:0,g:0,h:0,closed:!1,visited:!1,parent:null,addr:[B,g],pos:[C,l]})))}},_Ee=(A,e,t)=>{switch(e){case Ts:return X(t[0],A[1]);case wa:return X(A[2],t[1]);case fo:return X(t[0],A[3])}return X(A[0],t[1])},dar=(A,e,t,r)=>{if(r===wa)switch(t){case wa:return A.pos[0]>=e.pos[0]?4:A.pos[1]===e.pos[1]?0:2;case Ts:return A.pos[1]>e.pos[1]&&A.pos[0]<e.pos[0]?1:3;case fo:return A.pos[1]<e.pos[1]&&A.pos[0]<e.pos[0]?1:3;case Ms:return A.pos[1]===e.pos[1]?4:2}else if(r===Ms)switch(t){case wa:return A.pos[1]===e.pos[1]?4:2;case Ts:return A.pos[1]>e.pos[1]&&A.pos[0]>e.pos[0]?1:3;case fo:return A.pos[1]<e.pos[1]&&A.pos[0]>e.pos[0]?1:3;case Ms:return A.pos[0]<=e.pos[0]?4:A.pos[1]===e.pos[1]?0:2}else if(r===Ts)switch(t){case wa:return A.pos[1]>e.pos[1]&&A.pos[0]<e.pos[0]?1:3;case Ts:return A.pos[1]>=e.pos[1]?4:A.pos[0]===e.pos[0]?0:2;case fo:return A.pos[0]===e.pos[0]?4:2;case Ms:return A.pos[1]>e.pos[1]&&A.pos[0]>e.pos[0]?1:3}else if(r===fo)switch(t){case wa:return A.pos[1]<e.pos[1]&&A.pos[0]<e.pos[0]?1:3;case Ts:return A.pos[0]===e.pos[0]?4:2;case fo:return A.pos[1]<=e.pos[1]?4:A.pos[0]===e.pos[0]?0:2;case Ms:return A.pos[1]<e.pos[1]&&A.pos[0]>e.pos[0]?1:3}return 0},Iar=([A,e],t)=>[B8([A,e-1],t),B8([A+1,e],t),B8([A,e+1],t),B8([A-1,e],t)],B8=([A,e],t)=>A<0||A>=t.col||e<0||e>=t.row?null:t.data[e*t.col+A]??null,s_=(A,e)=>{for(let t=0;t<e.col;t++)for(let r=0;r<e.row;r++){let i=B8([t,r],e);if(i&&A[0]===i.pos[0]&&A[1]===i.pos[1])return i}return null},p4e=(A)=>[Math.min(...A.map((e)=>e[0])),Math.min(...A.map((e)=>e[1])),Math.max(...A.map((e)=>e[2])),Math.max(...A.map((e)=>e[3]))],d9=(A,e)=>{let t=e.get(A);return t&&Rc(t)?t:null},T1=(A,e,t,r)=>{let i=A[0][0],u=A[0][1],a=A.map((n)=>I_(n,ba(Mt(A[0]),-1)));return(i<-xu||i>xu||u<-xu||u>xu||i+a[a.length-1][0]<-xu||u+a[a.length-1][0]>xu||i+a[a.length-1][1]<-xu||u+a[a.length-1][1]>xu)&&console.error("Elbow arrow normalization is outside reasonable bounds (> 1e6)",{x:i,y:u,points:a,...Wm(a)}),a=a.map(([n,o])=>X(jr(n,-1e6,1e6),jr(o,-1e6,1e6))),{points:a,x:jr(i,-1e6,1e6),y:jr(u,-1e6,1e6),fixedSegments:(e?.length??0)>0?e:null,...Wm(a),startIsSpecial:t,endIsSpecial:r}},lQA=(A)=>{if(A.length>1){let e=Math.abs(A[0][1]-A[1][1])<Math.abs(A[0][0]-A[1][0]);return A.filter((t,r)=>{if(r===0||r===A.length-1)return!0;let i=A[r+1],u=Math.abs(t[1]-i[1])<Math.abs(t[0]-i[0]);return e===u?(e=u,!1):(e=u,!0)})}return A},gQA=(A)=>A.length>=4?A.filter((e,t)=>{if(t===0||t===A.length-1)return!0;let r=A[t-1];return Ri(r,e)>nQA}):A,har=(A)=>{switch(A){case 0:return Ts;case 1:return wa;case 2:return fo}return Ms},WEe=(A,e,t,r,i,u,a)=>{if(a){if(u){let n=B9(A,u,e);return dur(u,n)}return r}if(i){let n=zdA(t||[0,0],i);return Math.abs(lW(i,n)-Lu)>0.01?B9(A,i,e):n}return r},qEe=(A,e,t,r,i)=>cur(A,e,r,r&&qC(r,Array(4).fill(lW(r,A))),t,i),zEe=(A,e,t,r)=>Nc(kc(A),t,e,r,!0,!0),ZEe=(A,e)=>A[0]===e[0]&&A[1]===e[1],cQA=(A,e=nQA)=>A.slice(1).map((t,r)=>Math.abs(t[0]-A[r][0])<e||Math.abs(t[1]-A[r][1])<e).every(Boolean),Qar,par=(A)=>Object.keys(aa).includes(A)?aa[A]:Lh,A9=(A,e)=>{if(!e)return null;let t=e.focus||0;return pt(A)?f_(e)?{...e,focus:t,fixedPoint:IW(e.fixedPoint??[0,0])}:null:{...e,focus:t}},y1=(A,e)=>{let t={type:e.type||A.type,version:A.version||1,versionNonce:A.versionNonce??0,index:A.index??null,isDeleted:A.isDeleted??!1,id:A.id||kg(),fillStyle:A.fillStyle||Ua.fillStyle,strokeWidth:A.strokeWidth||Ua.strokeWidth,strokeStyle:A.strokeStyle??Ua.strokeStyle,roughness:A.roughness??Ua.roughness,opacity:A.opacity==null?Ua.opacity:A.opacity,angle:A.angle||0,x:e.x??A.x??0,y:e.y??A.y??0,strokeColor:A.strokeColor||Ua.strokeColor,backgroundColor:A.backgroundColor||Ua.backgroundColor,width:A.width||0,height:A.height||0,seed:A.seed??1,groupIds:A.groupIds??[],frameId:A.frameId??null,roundness:A.roundness?A.roundness:A.strokeSharpness==="round"?{type:r2(A.type)?mn.LEGACY:mn.PROPORTIONAL_RADIUS}:null,boundElements:A.boundElementIds?A.boundElementIds.map((r)=>({type:"arrow",id:r})):A.boundElements??[],updated:A.updated??m9(),link:A.link?Nl(A.link):null,locked:A.locked??!1};return(("customData"in A)||("customData"in e))&&(t.customData=("customData"in e)?e.customData:A.customData),{...A,...t,...DQA(t),...e}},far=(A)=>{switch(A={...A},A.type){case"text":delete A.rawText;let e=A.fontSize,t=A.fontFamily;if("font"in A){let[l,g]=A.font.split(" ");e=parseFloat(l),t=par(g)}let r=typeof A.text=="string"&&A.text||"",i=A.lineHeight||(A.height?i$t(A):z1(A.fontFamily));return A=y1(A,{fontSize:e,fontFamily:t,text:r,textAlign:A.textAlign||h9,verticalAlign:A.verticalAlign||x8,containerId:A.containerId??null,originalText:A.originalText||r,autoResize:A.autoResize??!0,lineHeight:i}),!r&&!A.isDeleted&&(A={...A,originalText:r,isDeleted:!0},A=gS(A)),A;case"freedraw":return y1(A,{points:A.points,lastCommittedPoint:null,simulatePressure:A.simulatePressure,pressures:A.pressures});case"image":return y1(A,{status:A.status||"pending",fileId:A.fileId,scale:A.scale||[1,1],crop:A.crop??null});case"line":case"draw":let{startArrowhead:u=null,endArrowhead:a=null}=A,n=A.x,o=A.y,s=!Array.isArray(A.points)||A.points.length<2?[X(0,0),X(A.width,A.height)]:A.points;return(s[0][0]!==0||s[0][1]!==0)&&({points:s,x:n,y:o}=It.getNormalizedPoints(A)),y1(A,{type:A.type==="draw"?"line":A.type,startBinding:A9(A,A.startBinding),endBinding:A9(A,A.endBinding),lastCommittedPoint:null,startArrowhead:u,endArrowhead:a,points:s,x:n,y:o,...Wm(s)});case"arrow":{let{startArrowhead:l=null,endArrowhead:g="arrow"}=A,C=A.x,B=A.y,E=!Array.isArray(A.points)||A.points.length<2?[X(0,0),X(A.width,A.height)]:A.points;(E[0][0]!==0||E[0][1]!==0)&&({points:E,x:C,y:B}=It.getNormalizedPoints(A));let d={type:A.type,startBinding:A9(A,A.startBinding),endBinding:A9(A,A.endBinding),lastCommittedPoint:null,startArrowhead:l,endArrowhead:g,points:E,x:C,y:B,elbowed:A.elbowed,...Wm(E)};return pt(A)?y1(A,{...d,elbowed:!0,startBinding:A9(A,A.startBinding),endBinding:A9(A,A.endBinding),fixedSegments:A.fixedSegments,startIsSpecial:A.startIsSpecial,endIsSpecial:A.endIsSpecial}):y1(A,d)}case"ellipse":case"rectangle":case"diamond":case"iframe":case"embeddable":return y1(A,{});case"magicframe":case"frame":return y1(A,{name:A.name??null})}return null},mar=(A,e)=>{if(A.boundElements){let t=A.boundElements.slice(),r=new Set;A.boundElements=t.reduce((i,u)=>{let a=e.get(u.id);if(a&&!r.has(u.id)){if(r.add(u.id),a.isDeleted)return i;i.push(u),Bt(a)&&!a.containerId&&(a.containerId=A.id)}return i},[])}},Dar=(A,e)=>{let t=A.containerId?e.get(A.containerId):null;if(!t){A.containerId=null;return}if(!A.isDeleted&&t.boundElements&&!t.boundElements.find((r)=>r.id===A.id)){let r=(t.boundElements||(t.boundElements=[])).slice();r.push({type:"text",id:A.id}),t.boundElements=r}},yar=(A,e)=>{A.frameId&&(e.get(A.frameId)||(A.frameId=null))},LW=(A,e,t)=>{let r=new Set,i=e?ar(e):null,u=hd((A||[]).reduce((n,o)=>{if(o.type!=="selection"&&!g2(o)){let s=far(o);if(s){let l=i?.get(o.id);l&&l.version>s.version&&(s=gS(s,l.version)),r.has(s.id)&&(s={...s,id:kg()}),r.add(s.id),n.push(s)}}return n},[]));if(!t?.repairBindings)return u;let a=ar(u);for(let n of u)n.frameId&&yar(n,a),Bt(n)&&n.containerId?Dar(n,a):n.boundElements&&mar(n,a),t.refreshDimensions&&Bt(n)&&Object.assign(n,PhA(n,Do(n,a),a)),Gr(n)&&(n.startBinding&&(!a.has(n.startBinding.elementId)||!Jr(n))&&(n.startBinding=null),n.endBinding&&(!a.has(n.endBinding.elementId)||!Jr(n))&&(n.endBinding=null));return u.map((n)=>{if(pt(n)&&n.startBinding==null&&n.endBinding==null&&!cQA(n.points))return{...n,...SW(n,a,{points:[X(0,0),n.points[n.points.length-1]]}),index:n.index};if(pt(n)&&n.startBinding&&n.endBinding&&n.startBinding.elementId===n.endBinding.elementId&&n.points.length>1&&n.points.some(([o,s])=>Math.abs(o)>1e6||Math.abs(s)>1e6)){console.error("Fixing self-bound elbow arrow",n.id);let o=a.get(n.startBinding.elementId);return o?{...n,x:o.x+o.width/2,y:o.y-5,width:o.width,height:o.height,points:[X(0,0),X(0,-10),X(o.width/2+5,-10),X(o.width/2+5,o.height/2+5)]}:(console.error("Bound element not found",n.startBinding.elementId),n)}return n})},war=(A,e,t)=>{let r=e[A];return r!==void 0?r:t[A]},VEe,f4e=(A,e)=>{A=A||{};let t=iB(),r={};for(let i of Object.keys(VEe))if(i in A){let[u,a]=VEe[i](A,t);r[u]=a}for(let[i,u]of Object.entries(t)){let a=A[i],n=e?e[i]:void 0;r[i]=a!==void 0?a:n!==void 0?n:u}return{...r,cursorButton:e?.cursorButton||"up",penDetected:e?.penDetected??(A.penMode?A.penDetected??!1:!1),activeTool:{...en(t,r.activeTool.type&&Qar[r.activeTool.type]?r.activeTool:{type:"selection"}),lastActiveTool:null,locked:r.activeTool.locked??!1},zoom:{value:dd(o9(A.zoom)?A.zoom:A.zoom?.value??t.zoom.value)},openSidebar:typeof A.openSidebar=="string"?{name:Gc.name}:r.openSidebar,gridSize:yur(o9(A.gridSize)?A.gridSize:L8),gridStep:xhA(o9(A.gridStep)?A.gridStep:vde),editingFrame:null}},aS=(A,e,t,r)=>({elements:LW(A?.elements,t,r),appState:f4e(A?.appState,e||null),files:A?.files||{}}),jEe=(A)=>{let e=LW(fu(A.elements),null);return e.length?{...A,elements:e}:null},RW=(A=[],e)=>{let t=[];for(let r of A)if(Array.isArray(r)){let i=jEe({status:e,elements:r,id:kg(),created:Date.now()});i&&t.push(i)}else{let i=r,u=jEe({...i,id:i.id||kg(),status:i.status||e,created:i.created||Date.now()});u&&t.push(u)}return t},zC=32,Su=12,R1=256,m4e=50,Ym="NOT_SPREADSHEET",v8="VALID_SPREADSHEET",E8=(A)=>{let e=/^([-+]?)[$€£¥₩]?([-+]?)([\d.,]+)[%]?$/.exec(A);return e?parseFloat(`${(e[1]||e[2])+e[3]}`.replace(/,/g,"")):null},YdA=(A,e)=>A.slice(1).every((t)=>E8(t[e])!==null),XEe=(A)=>{let e=A[0].length;if(e>2)return{type:Ym,reason:"More than 2 columns"};if(e===1){if(!YdA(A,0))return{type:Ym,reason:"Value is not numeric"};let o=E8(A[0][0])===null,s=(o?A.slice(1):A).map((l)=>E8(l[0]));return s.length<2?{type:Ym,reason:"Less than two rows"}:{type:v8,spreadsheet:{title:o?A[0][0]:null,labels:null,values:s}}}let t=YdA(A,0),r=YdA(A,1);if(!t&&!r)return{type:Ym,reason:"Value is not numeric"};let[i,u]=r?[0,1]:[1,0],a=E8(A[0][u])===null,n=a?A.slice(1):A;return n.length<2?{type:Ym,reason:"Less than 2 rows"}:{type:v8,spreadsheet:{title:a?A[0][u]:null,labels:n.map((o)=>o[i]),values:n.map((o)=>E8(o[u]))}}},bar=(A)=>{let e=[];for(let t=0;t<A[0].length;t++){let r=[];for(let i=0;i<A.length;i++)r.push(A[i][t]);e.push(r)}return e},kar=(A)=>{let e=A.trim().split(`
`).map((i)=>i.trim().split("\t"));if(e.length&&e[0].length!==2&&(e=A.trim().split(`
`).map((i)=>i.trim().split(","))),e.length===0)return{type:Ym,reason:"No values"};let t=e[0].length;if(!e.every((i)=>i.length===t))return{type:Ym,reason:"All rows don't have same number of columns"};let r=XEe(e);if(r.type!==v8){let i=XEe(bar(e));if(i.type===v8)return i}return r},F_,xc,D4e=(A)=>{let e=(zC+Su)*A.values.length+Su,t=R1+Su*2;return{chartWidth:e,chartHeight:t}},Far=(A,e,t,r,i)=>A.labels?.map((u,a)=>Gl({groupIds:[r],backgroundColor:i,...xc,text:u.length>8?`${u.slice(0,5)}...`:u,x:e+a*(zC+Su)+Su*2,y:t+Su/2,width:zC,angle:5.87,fontSize:16,textAlign:"center",verticalAlign:"top"}))||[],xar=(A,e,t,r,i)=>{let u=Gl({groupIds:[r],backgroundColor:i,...xc,x:e-Su,y:t-Su,text:"0",textAlign:"right"}),a=Gl({groupIds:[r],backgroundColor:i,...xc,x:e-Su,y:t-R1-u.height/2,text:Math.max(...A.values).toLocaleString(),textAlign:"right"});return[u,a]},Sar=(A,e,t,r,i)=>{let{chartWidth:u,chartHeight:a}=D4e(A),n=L1({backgroundColor:i,groupIds:[r],...xc,type:"line",x:e,y:t,width:u,points:[X(0,0),X(u,0)]}),o=L1({backgroundColor:i,groupIds:[r],...xc,type:"line",x:e,y:t,height:a,points:[X(0,0),X(0,-a)]}),s=L1({backgroundColor:i,groupIds:[r],...xc,type:"line",x:e,y:t-R1-Su,strokeStyle:"dotted",width:u,opacity:m4e,points:[X(0,0),X(u,0)]});return[n,o,s]},y4e=(A,e,t,r,i,u)=>{let{chartWidth:a,chartHeight:n}=D4e(A),o=A.title?Gl({backgroundColor:i,groupIds:[r],...xc,text:A.title,x:e+a/2,y:t-R1-Su*2-cd,roundness:null,textAlign:"center"}):null,s=u?sB({backgroundColor:i,groupIds:[r],...xc,type:"rectangle",x:e,y:t-n,width:a,height:n,strokeColor:Zr.black,fillStyle:"solid",opacity:6}):null;return[...s?[s]:[],...o?[o]:[],...Far(A,e,t,r,i),...xar(A,e,t,r,i),...Sar(A,e,t,r,i)]},Lar=(A,e,t)=>{let r=Math.max(...A.values),i=kg(),u=F_[Math.floor(Math.random()*F_.length)];return[...A.values.map((a,n)=>{let o=a/r*R1;return sB({backgroundColor:u,groupIds:[i],...xc,type:"rectangle",x:e+n*(zC+Su)+Su,y:t-o-Su,width:zC,height:o})}),...y4e(A,e,t,i,u,fr.DEV)]},Rar=(A,e,t)=>{let r=Math.max(...A.values),i=kg(),u=F_[Math.floor(Math.random()*F_.length)],a=0,n=[];for(let d of A.values){let I=a*(zC+Su),h=-(d/r)*R1;n.push([I,h]),a++}let o=Math.max(...n.map((d)=>d[0])),s=Math.max(...n.map((d)=>d[1])),l=Math.min(...n.map((d)=>d[0])),g=Math.min(...n.map((d)=>d[1])),C=L1({backgroundColor:u,groupIds:[i],...xc,type:"line",x:e+Su+zC/2,y:t-Su,height:s-g,width:o-l,strokeWidth:2,points:n}),B=A.values.map((d,I)=>{let h=I*(zC+Su)+Su/2,Q=-(d/r)*R1+Su/2;return sB({backgroundColor:u,groupIds:[i],...xc,fillStyle:"solid",strokeWidth:2,type:"ellipse",x:e+h+zC/2,y:t+Q-Su*2,width:Su,height:Su})}),E=A.values.map((d,I)=>{let h=I*(zC+Su)+Su/2,Q=d/r*R1+Su/2+Su;return L1({backgroundColor:u,groupIds:[i],...xc,type:"line",x:e+h+zC/2+Su/2,y:t-Q,height:Q,strokeStyle:"dotted",opacity:m4e,points:[X(0,0),X(0,Q)]})});return[...y4e(A,e,t,i,u,fr.DEV),C,...E,...B]},w4e=(A,e,t,r)=>A==="line"?Rar(e,t,r):Lar(e,t,r),Jyi,NW,GW,Nar=(A)=>!!([wg.excalidraw,wg.excalidrawClipboard,wg.excalidrawClipboardWithAPI].includes(A?.type)&&Array.isArray(A.elements)),b4e=({types:A,files:e})=>{!A&&!e&&console.warn("createPasteEvent: no types or files provided");let t=new ClipboardEvent("paste",{clipboardData:new DataTransfer});if(A)for(let[r,i]of Object.entries(A)){if(typeof i!="string"){e=e||[],e.push(i);continue}try{if(t.clipboardData?.setData(r,i),t.clipboardData?.getData(r)!==i)throw Error(`Failed to set "${r}" as clipboardData item`)}catch(u){throw Error(u.message)}}if(e){let r=-1;for(let i of e){r++;try{if(t.clipboardData?.items.add(i),t.clipboardData?.files[r]!==i)throw Error(`Failed to set file "${i.name}" as clipboardData item`)}catch(u){throw Error(u.message)}}}return t},Gar=({elements:A,files:e})=>{let t=ar(A),r=new Set(A.filter((n)=>nr(n))),i=!1,u=A.reduce((n,o)=>(xg(o)&&(i=!0,e&&e[o.fileId]&&(n[o.fileId]=e[o.fileId])),n),{});i&&!e&&console.warn("copyToClipboard: attempting to file element(s) without providing associated `files` object.");let a={type:wg.excalidrawClipboard,elements:A.map((n)=>{if(Ks(n,t)&&!r.has(Ks(n,t))){let o=j1(n);return xe(o,{frameId:null}),o}return n}),files:e?u:void 0};return JSON.stringify(a)},v4e=async(A,e,t)=>{await G9(Gar({elements:A,files:e}),t)},Uar=(A)=>{let e=kar(A);return e.type===v8?{spreadsheet:e.spreadsheet}:null},Mar=(A)=>{let e=A.clipboardData?.getData(jt.html);if(!e)return null;try{let t=new DOMParser().parseFromString(e,jt.html),r=k4e(t.body);if(r.length)return{type:"mixedContent",value:r}}catch(t){console.error(`error in parseHTMLFromPaste: ${t.message}`)}return null},F4e=async()=>{let A={},e;try{e=await navigator.clipboard?.read()}catch(t){try{if(navigator.clipboard?.readText){console.warn(`navigator.clipboard.readText() failed (${t.message}). Failling back to navigator.clipboard.read()`);let r=await navigator.clipboard?.readText();if(r)return{[jt.text]:r}}}catch(r){if(navigator.clipboard?.read)console.warn(`navigator.clipboard.readText() failed (${r.message}). Failling back to navigator.clipboard.read()`);else{if(r.name==="DataError")return console.warn(`navigator.clipboard.read() error, clipboard is probably empty: ${r.message}`),A;throw r}}throw t}for(let t of e)for(let r of t.types)if(DIA(xXt,r))try{if(r===jt.text||r===jt.html)A[r]=await(await t.getType(r)).text();else if(X4e(r)){let i=await t.getType(r),u=d8(i,r,void 0);A[r]=u}else throw new BEe(`Unsupported clipboard type: ${r}`)}catch(i){console.warn(i instanceof BEe?i.message:`Cannot retrieve ${r} from clipboardItem: ${i.message}`)}return Object.keys(A).length===0&&console.warn("No clipboard data found from clipboard.read()."),A},Tar=async(A,e=!1)=>{try{let t=!e&&A&&Mar(A);return t?t.value.every((r)=>r.type==="text")?{type:"text",value:A.clipboardData?.getData(jt.text)||t.value.map((r)=>r.value).join(`
`).trim()}:t:{type:"text",value:(A.clipboardData?.getData(jt.text)||"").trim()}}catch{return{type:"text",value:""}}},CQA=async(A,e=!1)=>{let t=await Tar(A,e);if(t.type==="mixedContent")return{mixedContent:t.value};try{let r=!e&&Uar(t.value);if(r)return r}catch(r){console.error(r)}try{let r=JSON.parse(t.value),i=r.type===wg.excalidrawClipboardWithAPI;if(Nar(r))return{elements:r.elements,files:r.files,text:e?JSON.stringify(r.elements,null,2):void 0,programmaticAPI:i}}catch{}return{text:t.value}},x4e=async(A)=>{try{await navigator.clipboard.write([new window.ClipboardItem({[jt.png]:A})])}catch(e){if(D9(A))await navigator.clipboard.write([new window.ClipboardItem({[jt.png]:await A})]);else throw e}},G9=async(A,e)=>{if(NW)try{await navigator.clipboard.writeText(A||"");return}catch(t){console.error(t)}try{if(e){if(e.clipboardData?.setData(jt.text,A||""),e.clipboardData?.getData(jt.text)!==A)throw Error("Failed to setData on clipboardEvent");return}}catch(t){console.error(t)}if(!Yar(A))throw Error("Error copying to clipboard.")},Yar=(A)=>{A||(A=" ");let e=document.documentElement.getAttribute("dir")==="rtl",t=document.createElement("textarea");t.style.border="0",t.style.padding="0",t.style.margin="0",t.style.position="absolute",t.style[e?"right":"left"]="-9999px";let r=window.pageYOffset||document.documentElement.scrollTop;t.style.top=`${r}px`,t.style.fontSize="12pt",t.setAttribute("readonly",""),t.value=A,document.body.appendChild(t);let i=!1;try{t.select(),t.setSelectionRange(0,t.value.length),i=document.execCommand("copy")}catch(u){console.error(u)}return t.remove(),i},UW=({elements:A,appState:e,files:t,maxWidthOrHeight:r,getDimensions:i,exportPadding:u,exportingFrame:a})=>{let{elements:n,appState:o}=aS({elements:A,appState:e},null,null),{exportBackground:s,viewBackgroundColor:l}=o;return uQA(n,{...o,offsetTop:0,offsetLeft:0,width:0,height:0},t||{},{exportBackground:s,exportPadding:u,viewBackgroundColor:l,exportingFrame:a},(g,C)=>{let B=document.createElement("canvas");if(r){typeof i=="function"&&console.warn("`getDimensions()` is ignored when `maxWidthOrHeight` is supplied.");let d=Math.max(g,C),I=r<d?r/d:e?.exportScale??1;return B.width=g*I,B.height=C*I,{canvas:B,scale:I}}let E=i?.(g,C)||{width:g,height:C};return B.width=E.width,B.height=E.height,{canvas:B,scale:E.scale??1}})},nS=async({elements:A,appState:e=iB(),files:t={},exportPadding:r,renderEmbeddables:i,exportingFrame:u,skipInliningFonts:a,reuseImages:n})=>{let{elements:o,appState:s}=aS({elements:A,appState:e},null,null),l={...s,exportPadding:r};return xW(o,l,t,{exportingFrame:u,renderEmbeddables:i,skipInliningFonts:a,reuseImages:n})},Har=(A)=>A.type==="diamond"?[X(A.width/2,0),X(A.width,A.height/2),X(A.width/2,A.height),X(0,A.height/2)]:[X(0,0),X(0+A.width,0),X(0+A.width,A.height),X(0,A.height)],Kar=(A)=>Gr(A)||Lc(A)?A.points:Har(A),$Ee=(A)=>{let e=A.reduce((t,[r,i])=>(t.minY=Math.min(t.minY,i),t.minX=Math.min(t.minX,r),t.maxX=Math.max(t.maxX,r),t.maxY=Math.max(t.maxY,i),t),{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0,cx:0,cy:0});return e.cx=(e.maxX+e.minX)/2,e.cy=(e.maxY+e.minY)/2,e},S4e=(A)=>{let e=Kar(A),{cx:t,cy:r}=$Ee(e),i=X(t,r),u=e.map((l)=>De(l,i,A.angle)),{minX:a,minY:n,maxX:o,maxY:s}=$Ee(u);return[a+A.x,n+A.y,o+A.x,s+A.y]},XdA=(A,e,t=!1)=>{let r=S4e(A),i=e[0]<=r[0]&&e[2]>=r[2]&&e[1]<=r[1]&&e[3]>=r[3];return t?i?!0:r[0]<=e[0]&&r[2]>=e[2]&&r[1]<=e[1]&&r[3]>=e[3]:i},L4e=(A,e)=>{let t=S4e(A);return(u_(t[0],z0(e[0],e[2]))||u_(e[0],z0(t[0],t[2])))&&(u_(t[1],z0(e[1],e[3]))||u_(e[1],z0(t[1],t[3])))},R4e=({elements:A,bounds:e,type:t,errorMargin:r=0})=>{kIA(e)&&(e=XC(e,ar(A)));let i=[e[0]-r,e[1]-r,e[2]+r,e[3]+r],u=new Set;for(let a of A){if(u.has(a.id))continue;if(t==="overlap"?L4e(a,i):t==="inside"?XdA(a,i):XdA(a,i,!0)){if(u.add(a.id),a.boundElements)for(let n of a.boundElements)u.add(n.id);Bt(a)&&a.containerId&&u.add(a.containerId),Jr(a)&&(a.startBinding&&u.add(a.startBinding.elementId),a.endBinding&&u.add(a.endBinding?.elementId))}}return A.filter((a)=>u.has(a.id))},Oar=0.000001,BQA=(A,e,t)=>{let r=ar(A);for(let i of e)if(i.frameId){let u=t.get(i.id),a=t.get(i.frameId);if(u){let n=r.get(u);n&&xe(n,{frameId:a??i.frameId},!1)}}},N4e=(A,e,t)=>YW(JW(A,e,t,!1)).filter((r)=>!nr(r)&&!r.frameId||r.frameId===e.id),dQA=(A,e,t)=>JW([e],A,t).some((r)=>r.id===e.id),U9=(A,e,t)=>{let[r,i,u,a]=Nr(e,t),[n,o,s,l]=Pi(A);return r<=n&&i<=o&&u>=s&&a>=l},xh=(A,e,t)=>U9([A],e,t)||EQA(A,e,t)||dQA(A,e,t),IQA=(A,e,t)=>{let[r,i,u,a]=Nr(e,t);return _de(X(r,i),X(A.x,A.y),X(u,a))},G4e=(A)=>{let e=new Map;for(let t of A){let r=nr(t)?t.id:t.frameId;r&&!e.has(r)&&e.set(r,gB(A,r))}return e},gB=(A,e)=>{let t=[];for(let r of A.values())r.frameId===e&&t.push(r);return t},MW=(A)=>A.filter((e)=>nr(e)),TW=(A)=>{let e=ar(MW(A));return A.filter((t)=>e.has(t.id)||!t.frameId||!e.has(t.frameId))},oS=(A,e,t,r)=>{let i=gB(A,e.id),u=new Set(i),a=new Set([...N4e(A,e,r),...i.filter((C)=>dQA(C,e,r))]),n=i.filter((C)=>!a.has(C)),o=new Set(Array.from(a).flatMap((C)=>C.groupIds));for(let C of n)if(!EQA(C,e,r))C.groupIds.length===0&&u.delete(C);else if(C.groupIds.length>0)for(let B of C.groupIds)o.add(B);for(let C of n)if(C.groupIds.length>0){let B=!0;for(let E of C.groupIds)o.has(E)&&(B=!1);B&&u.delete(C)}let s=Array.from(a).filter((C)=>C.groupIds.length===0);for(let C of s)u.add(C);let l=Array.from(a).filter((C)=>C.groupIds.length>0),g=NhA(l,t);for(let[C,B]of Object.entries(g))if(B){let E=Yu(A,C);if(U9(E,e,r))for(let d of E)u.add(d)}return[...u].filter((C)=>!(Bt(C)&&C.containerId))},U4e=(A,e,t)=>_ar(YW(A,N4e(A,e,t)),e,t),_ar=(A,e,t)=>{let r=[],i=new Map;for(let u of A){let a=!1;if(u.groupIds.length>0){if(u.groupIds.some((n)=>i.get(n)))a=!0;else{let n=new Set(u.groupIds.flatMap((o)=>Yu(t,o)));a=!U9(Array.from(n),e,t)}u.groupIds.forEach((n)=>{i.set(n,a)})}a||r.push(u)}return r},Ks=(A,e)=>A.frameId&&e.get(A.frameId)||null,M4e=(A,e)=>{let t=new Set,r=ar(A);A=YW(A);for(let a of A)nr(a)&&a.id!==e.id&&t.add(a.id);let i=new Set,u=[];for(let a of A)if(!(nr(a)||a.frameId&&t.has(a.frameId)))if(a.groupIds.length){let n=a.groupIds.at(-1);if(!i.has(n)){i.add(n);let o=Yu(A,n);if(o.some((s)=>xh(s,e,r)))for(let s of o)u.push(s)}}else xh(a,e,r)&&u.push(a);return u},M9=(A,e,t,r)=>{let i=ar(A),u=new Map;for(let s of A.values())s.frameId===t.id&&u.set(s.id,!0);let a=new Set(e.map((s)=>s.id)),n=[],o=new Set;for(let s of e)nr(s)&&s.id!==t.id&&o.add(s.id);for(let s of YW(A,e)){if(nr(s)||s.frameId&&o.has(s.frameId)||s.frameId&&r.selectedElementIds[s.id]&&r.selectedElementIds[s.frameId])continue;u.has(s.id)||n.push(s);let l=Ur(s,i);l&&!a.has(l.id)&&!u.has(l.id)&&n.push(l)}for(let s of n)xe(s,{frameId:t.id},!1);return A},sS=(A,e)=>{let t=new Map,r=new Map;for(let i of A)if(i.frameId){t.set(i.id,i);let u=r.get(i.frameId)||[];u.push(i);let a=Ur(i,e);a&&(t.set(a.id,a),u.push(a)),r.set(i.frameId,u)}for(let[,i]of t)xe(i,{frameId:null},!1)},hQA=(A,e)=>{let t=gB(A,e.id);return sS(t,ar(A)),A},QQA=(A,e,t,r)=>M9(hQA(A,t),e,t,r.state).slice(),l2=(A,e,t)=>{let r=t.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,elements:A}),i=new Set(r);if(e.editingGroupId)for(let n of r)n.groupIds.length===0?i.add(n):n.groupIds.flatMap((o)=>Yu(A,o)).forEach((o)=>i.add(o));let u=new Set,a=ar(A);return i.forEach((n)=>{n.frameId&&!nr(n)&&!lS(n,a,e)&&u.add(n)}),u.size>0&&sS(u,a),A},YW=(A,e)=>{let t=new Set,r=e||A;for(let a of r.values()){let n=a.groupIds[a.groupIds.length-1];n&&t.add(n)}let i=new Set;for(let a of t)Yu(A,a).some((n)=>nr(n))&&i.add(a);let u=[];for(let a of r.values())i.has(a.groupIds[a.groupIds.length-1])||u.push(a);return u},$dA=(A,e,t)=>{let r=Bt(A)&&Do(A,e)||A;return r.frameId&&t.selectedElementIds[r.id]&&t.selectedElementIds[r.frameId]?Ks(r,e):t.selectedElementIds[r.id]&&t.selectedElementsAreBeingDragged?t.frameToHighlight:Ks(r,e)},lS=(A,e,t,r)=>{let i=r?.targetFrame??$dA(A,e,t);if(!i)return!1;let u=Bt(A)&&Do(A,e)||A,a=(o)=>{r?.checkedGroups&&u.groupIds.forEach((s)=>{r.checkedGroups?.set(s,o)})};if(!t.selectedElementIds[u.id]||!t.selectedElementsAreBeingDragged||t.selectedElementIds[u.id]&&t.selectedElementIds[i.id])return!0;if(u.groupIds.length===0)return xh(u,i,e);for(let o of u.groupIds)if(r?.checkedGroups?.has(o))return r.checkedGroups.get(o);let n=new Set(u.groupIds.filter((o)=>r?.checkedGroups?!r.checkedGroups.has(o):!0).flatMap((o)=>Yu(e,o)));if(t.editingGroupId&&t.selectedElementsAreBeingDragged){let o=new Set(Or(e,t));if(t.frameToHighlight!==null)return!0;o.forEach((s)=>{n.delete(s)})}for(let o of n)if(nr(o))return a(!1),!1;for(let o of n)if(xh(o,i,e))return a(!0),!0;return!1},rde=(A,e,t,r,i)=>{if(!t.frameRendering||!t.frameRendering.clip)return!1;let u=EQA(A,e,r)||dQA(A,e,r);if(u){for(let a of A.groupIds)i?.set(a,!0);return!0}if(!u&&A.groupIds.length>0&&!U9([A],e,r)){let a=!1;if(t.selectedElementsAreBeingDragged)a=lS(A,r,t,{targetFrame:e,checkedGroups:i});else{a=A.frameId===e.id;for(let n of A.groupIds)i?.set(n,a)}for(let n of A.groupIds)i?.set(n,a);return a}return!1},pQA=(A)=>A.name===null?bIA(A)?"Frame":"AI Frame":A.name,HW=(A,e)=>R4e({elements:A,bounds:e,type:"overlap"}).filter((t)=>!t.frameId||t.frameId===e.id),fQA=(A)=>{let e=ar(A);return A.length>1&&A.some((t)=>t.frameId&&e.has(t.frameId))},KW=(A)=>{let e=new Set;return A.forEach((t)=>{nr(t)&&e.add(t.id)}),A.filter((t)=>!(t.frameId&&e.has(t.frameId)))},JW=(A,e,t,r=!0)=>{let[i,u,a,n]=Nr(e,t),o=A.filter((s)=>{let[l,g,C,B]=XC(s,t),E=Ks(s,t);if(E){let[d,I,h,Q]=XC(E,t);l=Math.max(d,l),g=Math.max(I,g),C=Math.min(h,C),B=Math.min(Q,B)}return s.locked===!1&&s.type!=="selection"&&!Tu(s)&&i<=l&&u<=g&&a>=C&&n>=B});return o=r?KW(o):o,o=o.filter((s)=>{let l=Ks(s,t);return l?xh(s,l,t):!0}),o},T4e=(A,e,t,r)=>{let i=new Set(e.map((u)=>u.id));return A.filter((u)=>{let a=cS(u,t.width,t.height,t,r);return!i.has(u.id)&&a})},yn,Y4e=(A,e,t)=>{let r=Array.from(new Set(Or(A,e).map((i)=>t(i))));return r.length===1?r[0]:null},Or=(A,e,t)=>{let r=new Set,i=[];for(let u of A.values()){if(e.selectedElementIds[u.id]){i.push(u),r.add(u.id);continue}if(t?.includeBoundTextElement&&Tu(u)&&e.selectedElementIds[u?.containerId]){i.push(u),r.add(u.id);continue}}if(t?.includeElementsInFrames){let u=[];return i.forEach((a)=>{nr(a)&&gB(A,a.id).forEach((n)=>!r.has(n.id)&&u.push(n)),u.push(a)}),u}return i},mQA=(A,e)=>e.editingTextElement?[e.editingTextElement]:e.newElement?[e.newElement]:Or(A,e,{includeBoundTextElement:!0}),Gi=(A,e)=>zo(e.selectedElementIds,A)?e.selectedElementIds:A,ide=(A)=>{let e=new Map,t=[];for(let r of A)r.isDeleted||(t.push(r),e.set(r.id,r));return{elementsMap:e,elements:t}},War,qar=(A)=>{let e=["includeBoundTextElement","includeElementsInFrames"],t="";for(let r of e)t+=`${r}:${A[r]?"1":"0"}`;return t},ude=(A)=>typeof A=="string",AIA=class A{constructor(){GA(this,"callbacks",new Set),GA(this,"nonDeletedElements",[]),GA(this,"nonDeletedElementsMap",vg(new Map)),GA(this,"elements",[]),GA(this,"nonDeletedFramesLikes",[]),GA(this,"frames",[]),GA(this,"elementsMap",vg(new Map)),GA(this,"selectedElementsCache",{selectedElementIds:null,elements:null,cache:new Map}),GA(this,"sceneNonce"),GA(this,"insertElement",(e)=>{let t=e.frameId?this.getElementIndex(e.frameId):this.elements.length;this.insertElementAtIndex(e,t)}),GA(this,"insertElements",(e)=>{if(!e.length)return;let t=e[0]?.frameId?this.getElementIndex(e[0].frameId):this.elements.length;this.insertElementsAtIndex(e,t)}),GA(this,"getContainerElement",(e)=>e&&e.containerId&&this.getElement(e.containerId)||null),GA(this,"getElementsFromId",(e)=>{let t=this.getNonDeletedElementsMap(),r=t.get(e);return r?[r]:Yu(t,e)})}static mapElementToScene(e,t){ude(e)?this.sceneMapById.set(e,t):(this.sceneMapByElement.set(e,t),this.sceneMapById.set(e.id,t))}static getScene(e){return ude(e)?this.sceneMapById.get(e)||null:this.sceneMapByElement.get(e)||null}getSceneNonce(){return this.sceneNonce}getNonDeletedElementsMap(){return this.nonDeletedElementsMap}getElementsIncludingDeleted(){return this.elements}getElementsMapIncludingDeleted(){return this.elementsMap}getNonDeletedElements(){return this.nonDeletedElements}getFramesIncludingDeleted(){return this.frames}getSelectedElements(e){let t=qar(e),r=e?.elements||this.nonDeletedElements;if(this.selectedElementsCache.elements===r&&this.selectedElementsCache.selectedElementIds===e.selectedElementIds){let u=this.selectedElementsCache.cache.get(t);if(u)return u}else e?.elements==null&&this.selectedElementsCache.cache.clear();let i=Or(r,{selectedElementIds:e.selectedElementIds},e);return e?.elements==null&&(this.selectedElementsCache.selectedElementIds=e.selectedElementIds,this.selectedElementsCache.elements=this.nonDeletedElements,this.selectedElementsCache.cache.set(t,i)),i}getNonDeletedFramesLikes(){return this.nonDeletedFramesLikes}getElement(e){return this.elementsMap.get(e)||null}getNonDeletedElement(e){let t=this.getElement(e);return t&&qW(t)?t:null}mapElements(e){let t=!1,r=this.elements.map((i)=>{let u=e(i);return u!==i&&(t=!0),u});return t&&this.replaceAllElements(r),t}replaceAllElements(e){let t=e instanceof Array?e:Array.from(e.values()),r=[];War(t),this.elements=hd(t),this.elementsMap.clear(),this.elements.forEach((u)=>{nr(u)&&r.push(u),this.elementsMap.set(u.id,u),A.mapElementToScene(u,this)});let i=ide(this.elements);this.nonDeletedElements=i.elements,this.nonDeletedElementsMap=i.elementsMap,this.frames=r,this.nonDeletedFramesLikes=ide(this.frames).elements,this.triggerUpdate()}triggerUpdate(){this.sceneNonce=oB();for(let e of Array.from(this.callbacks))e()}onUpdate(e){if(this.callbacks.has(e))throw Error();return this.callbacks.add(e),()=>{if(!this.callbacks.has(e))throw Error();this.callbacks.delete(e)}}destroy(){this.elements=[],this.nonDeletedElements=[],this.nonDeletedFramesLikes=[],this.frames=[],this.elementsMap.clear(),this.selectedElementsCache.selectedElementIds=null,this.selectedElementsCache.elements=null,this.selectedElementsCache.cache.clear(),A.sceneMapById.forEach((e,t)=>{e===this&&A.sceneMapById.delete(t)}),this.callbacks.clear()}insertElementAtIndex(e,t){if(!Number.isFinite(t)||t<0)throw Error("insertElementAtIndex can only be called with index >= 0");let r=[...this.elements.slice(0,t),e,...this.elements.slice(t)];tB(r,ar([e])),this.replaceAllElements(r)}insertElementsAtIndex(e,t){if(!e.length)return;if(!Number.isFinite(t)||t<0)throw Error("insertElementAtIndex can only be called with index >= 0");let r=[...this.elements.slice(0,t),...e,...this.elements.slice(t)];tB(r,ar(e)),this.replaceAllElements(r)}getElementIndex(e){return this.elements.findIndex((t)=>t.id===e)}},zar,gd,xe=(A,e,t=!0,r)=>{let i=!1,{points:u,fixedSegments:a,fileId:n,startBinding:o,endBinding:s}=e;if(pt(A)&&(Object.keys(e).length===0||typeof u<"u"||typeof a<"u"||typeof o<"u"||typeof s<"u")){let l=vg(gd.getScene(A)?.getNonDeletedElementsMap()??new Map);e={...e,angle:0,...SW({...A,x:e.x||A.x,y:e.y||A.y},l,{fixedSegments:a,points:u,startBinding:o,endBinding:s},{isDragging:r?.isDragging})}}else typeof u<"u"&&(e={...Wm(u),...e});for(let l in e){let g=e[l];if(typeof g<"u"){if(A[l]===g&&(typeof g!="object"||g===null||l==="groupIds"||l==="scale"))continue;if(l==="scale"){let C=A[l],B=g;if(C[0]===B[0]&&C[1]===B[1])continue}else if(l==="points"){let C=A[l],B=g;if(C.length===B.length){let E=!1,d=C.length;for(;--d;){let I=C[d],h=B[d];if(I[0]!==h[0]||I[1]!==h[1]){E=!0;break}}if(!E)continue}}A[l]=g,i=!0}}return i&&((typeof e.height<"u"||typeof e.width<"u"||typeof n<"u"||typeof u<"u")&&na.delete(A),A.version++,A.versionNonce=oB(),A.updated=m9(),t&&gd.getScene(A)?.triggerUpdate()),A},Yr=(A,e,t=!1)=>{let r=!1;for(let i in e){let u=e[i];if(typeof u<"u"){if(A[i]===u&&(typeof u!="object"||u===null))continue;r=!0}}return!r&&!t?A:{...A,...e,updated:m9(),version:A.version+1,versionNonce:oB()}},gS=(A,e)=>(A.version=(e??A.version)+1,A.versionNonce=oB(),A.updated=m9(),A),g2=(A)=>Gr(A)||Lc(A)?A.points.length<2:A.width===0&&A.height===0,cS=(A,e,t,r,i)=>{let[u,a,n,o]=XC(A,i),s=Ru({clientX:r.offsetLeft,clientY:r.offsetTop},r),l=Ru({clientX:r.offsetLeft+e,clientY:r.offsetTop+t},r);return s.x<=n&&s.y<=o&&l.x>=u&&l.y>=a},CS=(A,e,t,r,i,u)=>{let[a,n,o,s]=Pi(A,i),l=Ru({clientX:r.offsetLeft+(u?.left||0),clientY:r.offsetTop+(u?.top||0)},r),g=Ru({clientX:r.offsetLeft+e-(u?.right||0),clientY:r.offsetTop+t-(u?.bottom||0)},r);return a>=l.x&&n>=l.y&&o<=g.x&&s<=g.y},ade=(A,e,t)=>{let r=Math.abs(e),i=Math.abs(t);if(A==="line"||A==="arrow"||A==="freedraw"){let u=Math.round(Math.atan(i/r)/N1)*N1;u===0?t=0:u===Math.PI/2?e=0:t=r*Math.tan(u)*Math.sign(t)||t}else A!=="selection"&&(t=r*Math.sign(t));return{width:e,height:t}},OW=(A,e,t,r)=>{let i=t-A,u=r-e,a=Math.round(Math.atan(u/i)/N1)*N1;if(a===0)u=0;else if(a===Math.PI/2)i=0;else{let n=Math.tan(a),o=-1,s=e-n*A,l=-1/n,g=-1,C=r-l*t,B=(o*C-g*s)/(n*g-l*o),E=(s*l-C*n)/(n*g-l*o);i=B-A,u=E-e}return{width:i,height:u}},DQA=(A)=>{let e={width:A.width,height:A.height,x:A.x,y:A.y};if(A.width<0){let t=Math.abs(A.width);e.width=t,e.x=A.x-t}if(A.height<0){let t=Math.abs(A.height);e.height=t,e.y=A.y-t}return e},nde,Zar=16,H4e,ode,KdA,yh=(A,e,t,r,i,u,a)=>{let[n,o]=De(X(A+t/2,e+r/2),X(i,u),a);return[n-t/2,o-r/2,t,r]},yQA=(A)=>!(A.viewport.isMobile||A.isTouchScreen&&(bXt||nIA)),T9=(A)=>yQA(A)?H4e:{},PW=([A,e,t,r,i,u],a,n,o,s={},l=4,g=G1)=>{let C=nde[o],B=C/n.value,E=C/n.value,d=C/n.value,I=C/n.value,h=t-A,Q=r-e,p=l/n.value,m=(C-g*2)/(2*n.value),f={nw:s.nw?void 0:yh(A-p-d+m,e-p-I+m,B,E,i,u,a),ne:s.ne?void 0:yh(t+p-m,e-p-I+m,B,E,i,u,a),sw:s.sw?void 0:yh(A-p-d+m,r+p-m,B,E,i,u,a),se:s.se?void 0:yh(t+p-m,r+p-m,B,E,i,u,a),rotation:s.rotation?void 0:yh(A+h/2-B/2,e-p-I+m-Zar/n.value,B,E,i,u,a)},D=5*nde.mouse/n.value;return Math.abs(h)>D&&(s.n||(f.n=yh(A+h/2-B/2,e-p-I+m,B,E,i,u,a)),s.s||(f.s=yh(A+h/2-B/2,r+p-m,B,E,i,u,a))),Math.abs(Q)>D&&(s.w||(f.w=yh(A-p-d+m,e+Q/2-E/2,B,E,i,u,a)),s.e||(f.e=yh(t+p-m,e+Q/2-E/2,B,E,i,u,a))),f},wQA=(A,e,t,r="mouse",i=H4e)=>{if(A.locked||pt(A))return{};if(A.type==="freedraw"||Gr(A)){if(A.points.length===2){let[,a]=A.points;a[0]===0||a[1]===0?i=KdA:a[0]>0&&a[1]<0?i=ode:a[0]>0&&a[1]>0?i=KdA:a[0]<0&&a[1]>0?i=ode:a[0]<0&&a[1]<0&&(i=KdA)}}else nr(A)&&(i={...i,rotation:!0});let u=Gr(A)?G1+8:Ni(A)?0:G1;return PW(Nr(A,t,!0),A.angle,e,r,i,u,Ni(A)?0:void 0)},bQA=(A,e)=>{if(e.editingLinearElement)return!1;if(A.length>1)return!0;let t=A[0];return pt(t)?!1:Gr(t)?t.points.length>2:!0},eIA=(A,e,t)=>e>=A[0]&&e<=A[0]+A[2]&&t>=A[1]&&t<=A[1]+A[3],Var=(A,e,t,r,i,u,a,n)=>{if(!t.selectedElementIds[A.id])return!1;let{rotation:o,...s}=wQA(A,u,e,a,T9(n));if(o&&eIA(o,r,i))return"rotation";let l=Object.keys(s).filter((g)=>{let C=s[g];return C?eIA(C,r,i):!1});if(l.length>0)return l[0];if(yQA(n)){let[g,C,B,E,d,I]=Nr(A,e);if(!(Gr(A)&&A.points.length<=2)){let h=Ni(A)?0:B_/u.value,Q=B_/u.value,p=K4e(X(g-h,C-h),X(B+h,E+h),X(d,I),A.angle);for(let[m,f]of Object.entries(p))if(Jm(X(r,i),f,Q))return m}}return!1},vQA=(A,e,t,r,i,u,a,n)=>A.reduce((o,s)=>{if(o)return o;let l=Var(s,a,e,t,r,i,u,n);return l?{element:s,transformHandleType:l}:null},null),kQA=([A,e,t,r],i,u,a,n,o)=>{let s=PW([A,e,t,r,(A+t)/2,(e+r)/2],0,a,n,T9(o)),l=Object.keys(s).find((g)=>{let C=s[g];return C&&eIA(C,i,u)});if(l)return l;if(yQA(o)){let g=(A+t)/2,C=(e+r)/2,B=B_/a.value,E=K4e(X(A-B,e-B),X(t+B,r+B),X(g,C),0);for(let[d,I]of Object.entries(E))if(Jm(X(i,u),I,B))return d}return!1},JdA,jar=(A,e)=>{let t=JdA.indexOf(A);if(t>=0){let r=Math.round(e/(Math.PI/4));A=JdA[(t+r)%JdA.length]}return A},FQA=(A)=>{let{element:e,transformHandleType:t}=A,r=e&&Math.sign(e.height)*Math.sign(e.width)===-1,i=null;switch(t){case"n":case"s":i="ns";break;case"w":case"e":i="ew";break;case"nw":case"se":r?i="nesw":i="nwse";break;case"ne":case"sw":r?i="nwse":i="nesw";break;case"rotation":return"grab"}return i&&e&&(i=jar(i,e.angle)),i?`${i}-resize`:""},K4e=([A,e],[t,r],i,u)=>{let a=De(X(A,e),i,u),n=De(X(t,e),i,u),o=De(X(A,r),i,u),s=De(X(t,r),i,u);return{n:[a,n],e:[n,s],s:[s,o],w:[o,a]}},J4e=(A,e,t,r,i,u,a,n,o,s,l,g)=>{if(t.length===1){let[C]=t;if(e==="rotation")pt(C)||(Xar(C,r,i,o,s,u),Hs(C,r));else{if(Bt(C)&&e)return $ar(A,C,r,e,a,o,s),Hs(C,r),!0;if(e){let B=t[0].id,E=r.get(B),d=A.get(B);if(E&&d){let{nextWidth:I,nextHeight:h}=rnr(E,d,r,A,e,o,s,{shouldMaintainAspectRatio:n,shouldResizeFromCenter:a});Y9(I,h,E,d,r,A,e,{shouldMaintainAspectRatio:n,shouldResizeFromCenter:a})}}}return!0}else if(t.length>1){if(e==="rotation")return Anr(A,t,r,i,o,s,u,l,g),!0;if(e){let{nextWidth:C,nextHeight:B,flipByX:E,flipByY:d,originalBoundingBox:I}=inr(t,A,r,e,o,s,{shouldMaintainAspectRatio:n,shouldResizeFromCenter:a});return SQA(t,r,e,i,A,{shouldResizeFromCenter:a,shouldMaintainAspectRatio:n,flipByX:E,flipByY:d,nextWidth:C,nextHeight:B,originalBoundingBox:I}),!0}}return!1},Xar=(A,e,t,r,i,u)=>{let[a,n,o,s]=Nr(A,e),l=(a+o)/2,g=(n+s)/2,C;nr(A)?C=0:(C=5*Math.PI/2+Math.atan2(i-g,r-l),u&&(C=C+N1/2,C=C-C%N1),C=d_(C));let B=ld(A);if(xe(A,{angle:C}),B){let E=t.getElement(B);E&&!Jr(A)&&xe(E,{angle:C})}},_W=(A,e,t,r)=>Gr(A)||Lc(A)?{points:y_(0,e,y_(1,t,A.points,r),r)}:{},xQA=(A,e,t)=>{let r=A.width;if(Tu(A)){let u=Do(A,e);u&&(r=AB(u,A))}let i=A.fontSize*(t/r);return i<sIA?null:{size:i}},$ar=(A,e,t,r,i,u,a)=>{let[n,o,s,l,g,C]=Nr(e,t),[B,E]=De(X(u,a),X(g,C),-e.angle),d=0,I=0;r!=="e"&&r!=="w"&&(r.includes("e")&&(d=(B-n)/(s-n)),r.includes("w")&&(d=(s-B)/(s-n)),r.includes("n")&&(I=(l-E)/(l-o)),r.includes("s")&&(I=(E-o)/(l-o)));let h=Math.max(d,I);if(h>0){let Q=e.width*h,p=e.height*h,m=xQA(e,t,Q);if(m===null)return;let f=[n,o],D=[s,l],w=[g,C],b=X(n,o);if(["n","w","nw"].includes(r)&&(b=X(D[0]-Math.abs(Q),D[1]-Math.abs(p))),r==="ne"){let R=[f[0],D[1]];b=X(R[0],R[1]-Math.abs(p))}if(r==="sw"){let R=[D[0],f[1]];b=X(R[0]-Math.abs(Q),R[1])}["s","n"].includes(r)&&(b[0]=w[0]-Q/2),["e","w"].includes(r)&&(b[1]=w[1]-p/2),i&&(b[0]=w[0]-Math.abs(Q)/2,b[1]=w[1]-Math.abs(p)/2);let k=e.angle,v=De(b,X(g,C),k),S=X(b[0]+Math.abs(Q)/2,b[1]+Math.abs(p)/2),x=De(S,X(g,C),k);b=De(v,x,-k);let[F,T]=b;xe(e,{fontSize:m.size,width:Q,height:p,x:F,y:T})}if(r==="e"||r==="w"){let Q=A.get(e.id),[p,m,f,D]=S1(Q,Q.width,Q.height,!0),w=X(p,m),b=X(f,D),k=U8(w,b),v=De(X(u,a),k,-Q.angle),[S,,x]=S1(e,e.width,e.height,!0),F=x-S,T=b[0]-w[0],R=J_(cu({fontSize:e.fontSize,fontFamily:e.fontFamily}),e.lineHeight),L=T/F;r.includes("e")&&(L=(v[0]-w[0])/F),r.includes("w")&&(L=(b[0]-v[0])/F);let M=e.width*L<R?R:e.width*L,U=_1(e.originalText,cu(e),Math.abs(M)),Y=y0(U,cu(e),e.lineHeight),H=Y.height,[J,K,O,P]=S1(Q,M,H,!0),z=O-J,AA=P-K,W=[...w];["n","w","nw"].includes(r)&&(W=[b[0]-Math.abs(z),w[1]]);let CA=Q.angle,tA=De(W,k,CA),lA=X(W[0]+Math.abs(z)/2,W[1]+Math.abs(AA)/2),gA=De(lA,k,CA);W=De(tA,gA,-CA);let aA={width:Math.abs(M),height:Math.abs(Y.height),x:W[0],y:W[1],text:U,autoResize:!1};xe(e,aA)}},Anr=(A,e,t,r,i,u,a,n,o)=>{let s=5*Math.PI/2+Math.atan2(u-o,i-n);a&&(s+=N1/2,s-=s%N1);for(let l of e)if(!nr(l)){let[g,C,B,E]=Nr(l,t),d=(g+B)/2,I=(C+E)/2,h=A.get(l.id)?.angle??l.angle,[Q,p]=De(X(d,I),X(n,o),s+h-l.angle);pt(l)?xe(l,{points:mur(l,t)}):xe(l,{x:l.x+(Q-d),y:l.y+(p-I),angle:d_(s+h)},!1),Hs(l,t,{simultaneouslyUpdated:e});let m=Ur(l,t);m&&!Jr(l)&&xe(m,{x:m.x+(Q-d),y:m.y+(p-I),angle:d_(s+h)},!1)}r.triggerUpdate()},O4e=(A,e,t,r,i)=>{let[u,a,n,o]=e.length===1?Nr(e[0],t):Pi(e),s=(u+n)/2,l=(a+o)/2,g=e.length===1?e[0].angle:0;switch([r,i]=De(X(r,i),X(s,l),-g),A){case"n":return De(X(r-(u+n)/2,i-a),X(0,0),g);case"s":return De(X(r-(u+n)/2,i-o),X(0,0),g);case"w":return De(X(r-u,i-(a+o)/2),X(0,0),g);case"e":return De(X(r-n,i-(a+o)/2),X(0,0),g);case"nw":return De(X(r-u,i-a),X(0,0),g);case"ne":return De(X(r-n,i-a),X(0,0),g);case"sw":return De(X(r-u,i-o),X(0,0),g);case"se":return De(X(r-n,i-o),X(0,0),g);default:return[0,0]}},P4e=(A,e)=>{let[,[t,r]]=e.points;return A==="nw"&&(t<0||r<0)||A==="ne"&&t>=0||A==="sw"&&t<=0||A==="se"&&(t>0||r>0)?"end":"origin"},enr=(A,e,t)=>{if(t)return"center";if(e)switch(A){case"n":return"south-side";case"e":return"west-side";case"s":return"north-side";case"w":return"east-side";case"ne":return"bottom-left";case"nw":return"bottom-right";case"se":return"top-left";case"sw":return"top-right"}return["e","se","s"].includes(A)?"top-left":["n","nw","w"].includes(A)?"bottom-right":A==="ne"?"bottom-left":"top-right"},tnr=(A,e,t,r,i,u,a,n,o)=>{let s=enr(a,n,o),[l,g]=A;switch(s){case"top-left":return{x:l+(e-r)/2+(r-e)/2*Math.cos(u)+(t-i)/2*Math.sin(u),y:g+(t-i)/2+(r-e)/2*Math.sin(u)+(i-t)/2*Math.cos(u)};case"top-right":return{x:l+(e-r)/2*(Math.cos(u)+1)+(t-i)/2*Math.sin(u),y:g+(t-i)/2+(e-r)/2*Math.sin(u)+(i-t)/2*Math.cos(u)};case"bottom-left":return{x:l+(e-r)/2*(1-Math.cos(u))+(i-t)/2*Math.sin(u),y:g+(t-i)/2*(Math.cos(u)+1)+(r-e)/2*Math.sin(u)};case"bottom-right":return{x:l+(e-r)/2*(Math.cos(u)+1)+(i-t)/2*Math.sin(u),y:g+(t-i)/2*(Math.cos(u)+1)+(e-r)/2*Math.sin(u)};case"center":return{x:l-(r-e)/2,y:g-(i-t)/2};case"east-side":return{x:l+(e-r)/2*(Math.cos(u)+1),y:g+(e-r)/2*Math.sin(u)+(t-i)/2};case"west-side":return{x:l+(e-r)/2*(1-Math.cos(u)),y:g+(r-e)/2*Math.sin(u)+(t-i)/2};case"north-side":return{x:l+(e-r)/2+(t-i)/2*Math.sin(u),y:g+(i-t)/2*(Math.cos(u)-1)};case"south-side":return{x:l+(e-r)/2+(i-t)/2*Math.sin(u),y:g+(t-i)/2*(Math.cos(u)+1)}}},Y9=(A,e,t,r,i,u,a,{shouldInformMutation:n=!0,shouldMaintainAspectRatio:o=!1,shouldResizeFromCenter:s=!1}={})=>{let l={},g=Ur(t,i);if(g){let d=u.get(g.id);if(d&&(l={fontSize:d.fontSize}),o){let I={...t,width:A,height:e},h=xQA(g,i,AB(I,g));if(h===null)return;l={fontSize:h.size}}else{let I=FIA(cu(g),g.lineHeight),h=SIA(g.fontSize,g.lineHeight);A=Math.max(A,I),e=Math.max(e,h)}}let C=_W(r,A,e,!0),B=X(r.x,r.y);if(Gr(r)){let[d,I]=XC(r,u);B=X(d,I)}let E=tnr(B,r.width,r.height,A,e,r.angle,a,o,s);if(Gr(r)&&C.points){let d=r.x-B[0],I=r.y-B[1];E.x+=d,E.y+=I;let h=C.points[0][0],Q=C.points[0][1];E.x+=h,E.y+=Q,C.points=C.points.map((p)=>X(p[0]-h,p[1]-Q))}if(A<0&&(E.x=E.x+A),e<0&&(E.y=E.y+e),"scale"in t&&"scale"in r&&xe(t,{scale:[(Math.sign(A)||r.scale[0])*r.scale[0],(Math.sign(e)||r.scale[1])*r.scale[1]]}),Jr(t)&&g&&o){let d=A/t.width*g.fontSize;if(d<sIA)return;l.fontSize=d}if(A!==0&&e!==0&&Number.isFinite(E.x)&&Number.isFinite(E.y)){let d={...E,width:Math.abs(A),height:Math.abs(e),...C};xe(t,d,n),Hs(t,i,{newSize:{width:A,height:e}}),g&&l!=null&&xe(g,{fontSize:l.fontSize}),L9(t,i,a,o)}},rnr=(A,e,t,r,i,u,a,{shouldMaintainAspectRatio:n=!1,shouldResizeFromCenter:o=!1}={})=>{let[s,l,g,C]=S1(e,e.width,e.height,!0),B=X(s,l),E=X(g,C),d=U8(B,E),I=De(X(u,a),d,-e.angle),[h,Q,p,m]=S1(A,A.width,A.height,!0),f=p-h,D=m-Q,w=E[0]-B[0],b=E[1]-B[1],k=w/f,v=b/D;i.includes("e")&&(k=(I[0]-B[0])/f),i.includes("s")&&(v=(I[1]-B[1])/D),i.includes("w")&&(k=(E[0]-I[0])/f),i.includes("n")&&(v=(E[1]-I[1])/D);let S=A.width*k,x=A.height*v;if(o&&(S=2*S-e.width,x=2*x-e.height),n){let F=Math.abs(S)/e.width,T=Math.abs(x)/e.height;if(i.length===1&&(x*=F,S*=T),i.length===2){let R=Math.max(F,T);S=e.width*R*Math.sign(S),x=e.height*R*Math.sign(x)}}return{nextWidth:S,nextHeight:x}},inr=(A,e,t,r,i,u,{shouldMaintainAspectRatio:a=!1,shouldResizeFromCenter:n=!1}={})=>{let o=A.map((F)=>e.get(F.id)),s=o.reduce((F,T)=>{if(!Gr(T))return F;let R=ld(T);if(!R)return F;let L=e.get(R)??null;return Tu(L)?[...F,{...L,...It.getBoundTextElementPosition(T,L,t)}]:F},[]),l=Uc(o.map((F)=>F).concat(s)),{minX:g,minY:C,maxX:B,maxY:E,midX:d,midY:I}=l,h=B-g,Q=E-C,p={ne:[g,E],se:[g,C],sw:[B,C],nw:[B,E],e:[g,C+Q/2],w:[B,C+Q/2],n:[g+h/2,E],s:[g+h/2,C]},[m,f]=n?[d,I]:p[r],D=n?2:1,w=Math.max(Math.abs(i-m)/h||0,Math.abs(u-f)/Q||0)*D,b=r.includes("e")||r.includes("w")?Math.abs(i-m)*D:h,k=r.includes("n")||r.includes("s")?Math.abs(u-f)*D:Q;a&&(b=h*w*Math.sign(i-m),k=Q*w*Math.sign(u-f));let v={ne:[i<m,u>f],se:[i<m,u<f],sw:[i>m,u<f],nw:[i>m,u>f],e:[i<m,!1],w:[i>m,!1],n:[!1,u>f],s:[!1,u<f]},[S,x]=v[r].map((F)=>F);return{originalBoundingBox:l,nextWidth:b,nextHeight:k,flipByX:S,flipByY:x}},SQA=(A,e,t,r,i,{shouldMaintainAspectRatio:u=!1,shouldResizeFromCenter:a=!1,flipByX:n=!1,flipByY:o=!1,nextHeight:s,nextWidth:l,originalBoundingBox:g}={})=>{if(l===void 0&&s===void 0&&n===void 0&&o===void 0||s===0||l===0)return;i||(i=e);let C=A.reduce((D,w)=>{let b=i.get(w.id);return b&&D.push({orig:b,latest:w}),D},[]),B;if(g)B=g;else{let D=C.reduce((w,{orig:b})=>{if(!Gr(b))return w;let k=ld(b);if(!k)return w;let v=i.get(k)??null;return Tu(v)?[...w,{...v,...It.getBoundTextElementPosition(b,v,e)}]:w},[]);B=Uc(C.map(({orig:w})=>w).concat(D))}let{minX:E,minY:d,maxX:I,maxY:h,midX:Q,midY:p}=B,m=I-E,f=h-d;if(l===void 0&&s===void 0&&(l=m,s=f),u&&(l===void 0?l=s*(m/f):s===void 0?s=l*(f/m):Math.abs(l/s-m/f)>0.001&&(l=s*(m/f))),l&&s){let D=t.includes("e")||t.includes("w")?Math.abs(l)/m:1,w=t.includes("n")||t.includes("s")?Math.abs(s)/f:1,b;t.length===1?b=t.includes("e")||t.includes("w")?D:w:b=Math.max(Math.abs(l)/m||0,Math.abs(s)/f||0);let k={ne:[E,h],se:[E,d],sw:[I,d],nw:[I,h],e:[E,d+f/2],w:[I,d+f/2],n:[E+m/2,h],s:[E+m/2,d]},[v,S]=a?[Q,p]:k[t],x=u||C.some((M)=>M.latest.angle!==0||Bt(M.latest)||o2(M.latest));x&&(D=b,w=b);let[F,T]=[n?-1:1,o?-1:1],R=[];for(let{orig:M,latest:U}of C){if(Bt(M)&&Tu(M))continue;let Y=M.width*D,H=M.height*w,J=d_(M.angle*F*T),K=Gr(M)||Lc(M),O=M.x-v,P=M.y-S,z=n&&!K?Y:0,AA=o&&!K?H:0,W=v+F*(O*D+z),CA=S+T*(P*w+AA),tA=_W(M,Y*F,H*T,!1),lA={x:W,y:CA,width:Y,height:H,angle:J,...tA};if(pt(M)&&(M.startBinding&&(lA.startBinding={...M.startBinding,fixedPoint:[n?-M.startBinding.fixedPoint[0]+1:M.startBinding.fixedPoint[0],o?-M.startBinding.fixedPoint[1]+1:M.startBinding.fixedPoint[1]]}),M.endBinding&&(lA.endBinding={...M.endBinding,fixedPoint:[n?-M.endBinding.fixedPoint[0]+1:M.endBinding.fixedPoint[0],o?-M.endBinding.fixedPoint[1]+1:M.endBinding.fixedPoint[1]]}),M.fixedSegments&&tA.points&&(lA.fixedSegments=M.fixedSegments.map((aA)=>({...aA,start:tA.points[aA.index-1],end:tA.points[aA.index]})))),Ni(M)&&(lA.scale=[M.scale[0]*F,M.scale[1]*T]),Bt(M)){let aA=xQA(M,e,Y);if(!aA)return;lA.fontSize=aA.size}let gA=i.get(ld(M)??"");if(gA)if(x){let aA=gA.fontSize*b;if(aA<sIA)return;lA.boundTextFontSize=aA}else lA.boundTextFontSize=gA.fontSize;R.push({element:U,update:lA})}let L=R.map(({element:M})=>M);for(let{element:M,update:{boundTextFontSize:U,...Y}}of R){let{width:H,height:J,angle:K}=Y;xe(M,Y,!1,{isDragging:!0}),Hs(M,e,{simultaneouslyUpdated:L,newSize:{width:H,height:J}});let O=Ur(M,e);O&&U&&(xe(O,{fontSize:U,angle:Gr(M)?void 0:K},!1),L9(M,e,t,!0))}r.triggerUpdate()}},_4e=(A,e,t,r,i,u)=>{if(e.length===1&&pt(e[0])&&(e[0].startBinding||e[0].endBinding))return;let a=e.filter((g)=>{if(pt(g)&&g.startBinding&&g.endBinding){let C=e.find((E)=>E.id===g.startBinding?.elementId),B=e.find((E)=>E.id===g.endBinding?.elementId);return C&&B}return!0}),n=new Set(a),o=a.filter((g)=>nr(g)).map((g)=>g.id);if(o.length>0)for(let g of r.getNonDeletedElements())g.frameId!==null&&o.includes(g.frameId)&&n.add(g);let s=Pi(Array.from(n).map((g)=>A.originalElements.get(g.id)??g)),l=unr(s,t,i,u);n.forEach((g)=>{if(sde(A,g,l),!Jr(g)){let C=Ur(g,r.getNonDeletedElementsMap());C&&sde(A,C,l),Hs(g,r.getElementsMapIncludingDeleted(),{simultaneouslyUpdated:Array.from(n)})}})},unr=(A,e,t,r)=>{let[i,u]=A,a=i+e.x+t.x,n=u+e.y+t.y;if(t.x===0||t.y===0){let[o,s]=Dn(i+e.x,u+e.y,r);t.x===0&&(a=o),t.y===0&&(n=s)}return{x:a-i,y:n-u}},sde=(A,e,t)=>{let r=A.originalElements.get(e.id)??e,i=r.x+t.x,u=r.y+t.y;xe(e,{x:i,y:u})},W4e=(A,e,t)=>{let[r,i]=Pi(A);return[e-r,t-i]},LQA=({newElement:A,elementType:e,originX:t,originY:r,x:i,y:u,width:a,height:n,shouldMaintainAspectRatio:o,shouldResizeFromCenter:s,zoom:l,widthAspectRatio:g=null,originOffset:C=null,informMutation:B=!0})=>{o&&A.type!=="selection"&&(g?n=a/g:(Math.abs(u-r)>Math.abs(i-t)?{width:a,height:n}=ade(e,n,i<t?-a:a):{width:a,height:n}=ade(e,a,u<r?-n:n),n<0&&(n=-n)));let E=i<t?t-a:t,d=u<r?r-n:r;s&&(a+=a,n+=n,E=t-a/2,d=r-n/2);let I=null;if(Bt(A)){n=A.height;let h=J_(cu({fontSize:A.fontSize,fontFamily:A.fontFamily}),A.lineHeight);a=Math.max(a,h),Math.abs(i-t)>kXt/l&&(I={autoResize:!1}),d=r,s&&(E=t-a/2)}if(a!==0&&n!==0){let h=null;Ni(A)&&(h={initialWidth:a,initialHeight:n}),xe(A,{x:E+(C?.x??0),y:d+(C?.y??0),width:a,height:n,...I,...h},B)}},WW=(A,e)=>!!(!A.viewModeEnabled&&A.openDialog?.name!=="elementLinkSelector"&&(A.activeTool.type!=="custom"&&(A.editingTextElement||A.activeTool.type!=="selection"&&A.activeTool.type!=="eraser"&&A.activeTool.type!=="hand"&&A.activeTool.type!=="laser")||Or(e,A).length)),q4e=(A)=>{let e=5381;for(let t=0;t<A.length;t++){let r=A.charCodeAt(t);e=(e<<5)+e+r}return e>>>0},anr=(A)=>A.filter((e)=>!e.isDeleted&&!g2(e)),fu=(A)=>A.filter((e)=>!e.isDeleted),qW=(A)=>!A.isDeleted,z4e=(A)=>fu(A).map((e)=>K_(e.type)?{...e,lastCommittedPoint:null}:e),nnr=(A)=>z4e(A),Z4e=(A)=>z4e(A),V4e=async(A)=>{let e;if(A.type===jt.png)try{return await(await Promise.resolve().then(() => (wdA(),zBe))).decodePngMetadata(A)}catch(t){throw t.message==="INVALID"?new F1("Image doesn't contain scene","IMAGE_NOT_CONTAINS_SCENE_DATA"):new F1("Error: cannot restore image")}else if("text"in Blob?e=await A.text():e=await new Promise((t)=>{let r=new FileReader;r.readAsText(A,"utf8"),r.onloadend=()=>{r.readyState===FileReader.DONE&&t(r.result)}}),A.type===jt.svg)try{return aar({svg:e})}catch(t){throw t.message==="INVALID"?new F1("Image doesn't contain scene","IMAGE_NOT_CONTAINS_SCENE_DATA"):new F1("Error: cannot restore image")}return e},RQA=(A)=>A&&A.name.match(/\.(json|excalidraw|png|svg)$/)?.[1]||null,j4e=(A)=>A==="png"||A==="svg",zW=(A)=>{let e=RQA(A);return e==="png"||e==="svg"},X4e=(A)=>!!A&&Object.values(jm).includes(A),X1=(A)=>{let{type:e}=A||{};return X4e(e)},NQA=async(A,e,t,r)=>{let i=await V4e(A),u;try{try{u=JSON.parse(i)}catch(a){throw X1(A)?new F1("Image doesn't contain scene","IMAGE_NOT_CONTAINS_SCENE_DATA"):a}if(Aar(u))return{type:jt.excalidraw,data:aS({elements:Z4e(u.elements||[]),appState:{theme:e?.theme,fileHandle:r||A.handle||null,...Kde(u.appState||{}),...e?F9(u.elements||[],e):{}},files:u.files},e,t,{repairBindings:!0,refreshDimensions:!1})};if(g4e(u))return{type:jt.excalidrawlib,data:u};throw Error("Error: invalid file")}catch(a){throw a instanceof F1?a:Error("Error: invalid file")}},GQA=async(A,e,t,r)=>{let i=await NQA(A,e,t,r);if(i.type!==jt.excalidraw)throw Error("Error: invalid file");return i.data},UQA=(A,e="unpublished")=>{let t=JSON.parse(A);if(!g4e(t))throw Error("Invalid library");let r=t.libraryItems||t.library;return RW(r,e)},$4e=async(A,e="unpublished")=>UQA(await V4e(A),e),H9=async(A)=>new Promise(async(e,t)=>{try{D9(A)&&(A=await A),A.toBlob((r)=>{if(!r)return t(new k$t("Error: Canvas too big","CANVAS_POSSIBLY_TOO_BIG"));e(r)})}catch(r){t(r)}}),A1e=async(A)=>{try{let e=await window.crypto.subtle.digest("SHA-1",await Hm(A));return $Xt(new Uint8Array(e))}catch(e){return console.error(e),fa(40)}},MQA=async(A)=>new Promise((e,t)=>{let r=new FileReader;r.onload=()=>{let i=r.result;e(i)},r.onerror=(i)=>t(i),r.readAsDataURL(A)}),e1e=(A,e)=>`data:${e};base64,${o1e(x_(A),!0)}`,t1e=(A,e="")=>{let t=A.indexOf(","),r=atob(A.slice(t+1)),i=A.slice(0,t).split(":")[1].split(";")[0],u=new ArrayBuffer(r.length),a=new Uint8Array(u);for(let n=0;n<r.length;n++)a[n]=r.charCodeAt(n);return new File([u],e,{type:i})},r1e=(A)=>s1e(A.slice(A.indexOf(",")+1)),ZW=async(A,e)=>{if(A.type===jt.svg)return A;let[t,r]=await Promise.all([Promise.resolve().then(() => yu(XBe(),1)).then((u)=>u.default),Promise.resolve().then(() => (uEe(),{})).then((u)=>mXt)]),i=r({pica:t({features:["js","wasm"]})});if(e.outputType){let{outputType:u}=e;i._create_blob=function(a){return this.pica.toBlob(a.out_canvas,u,0.8).then((n)=>(a.out_blob=n,a))}}if(!X1(A))throw Error("Error: unsupported file type",{cause:"UNSUPPORTED"});return new File([await i.toBlob(A,{max:e.maxWidthOrHeight,alpha:!0})],A.name,{type:e.outputType||A.type})},TQA=(A,e="")=>new File([new TextEncoder().encode(A)],e,{type:jt.svg}),i1e=async(A,e="")=>{let t;try{t=await fetch(A)}catch{throw Error("Error: failed to fetch image",{cause:"FETCH_ERROR"})}if(!t.ok)throw Error("Error: failed to fetch image",{cause:"FETCH_ERROR"});let r=await t.blob();if(r.type&&X1(r)){let i=e||r.name||"";return new File([r],i,{type:r.type})}throw Error("Error: unsupported file type",{cause:"UNSUPPORTED"})},u1e=async(A)=>{let e=A.dataTransfer.files.item(0),t=await onr(A);return{file:e?await VW(e):null,fileHandle:t}},onr=async(A)=>{if(mh)try{return await A.dataTransfer.items[0].getAsFileSystemHandle()||null}catch(e){return console.warn(e.name,e.message),null}return null},lde=(A)=>{let e=null,t=`${[...new Uint8Array(A).slice(0,8)].join(" ")} `,r={png:"137 80 78 71 13 10 26 10 ",jpg:"255 216 255 ",gif:"71 73 70 56 57 97 "};return t===r.png?e=jt.png:t.startsWith(r.jpg)?e=jt.jpg:t.startsWith(r.gif)&&(e=jt.gif),e},d8=(A,e,t)=>new File([A],t||"",{type:e}),VW=async(A)=>{if(A.type){if(X1(A)){let e=await Hm(A),t=lde(e);t&&t!==A.type&&(A=d8(e,t,A.name))}}else if(A?.name?.endsWith(".excalidrawlib"))A=d8(await Hm(A),jt.excalidrawlib,A.name);else if(A?.name?.endsWith(".excalidraw"))A=d8(await Hm(A),jt.excalidraw,A.name);else{let e=await Hm(A),t=lde(e);t&&(A=d8(e,t,A.name))}return A},Hm=(A)=>("arrayBuffer"in A)?A.arrayBuffer():new Promise((e,t)=>{let r=new FileReader;r.onload=(i)=>{if(!i.target?.result)return t(Error("Couldn't convert blob to ArrayBuffer"));e(i.target.result)},r.readAsArrayBuffer(A)}),x_=(A)=>{let e=typeof A=="string"?new TextEncoder().encode(A):A instanceof Uint8Array?A:new Uint8Array(A),t="";for(let r of e)t+=String.fromCharCode(r);return t},a1e=(A)=>{let e=new ArrayBuffer(A.length),t=new Uint8Array(e);for(let r=0,i=A.length;r<i;r++)t[r]=A.charCodeAt(r);return e},n1e=(A)=>new TextDecoder("utf-8").decode(a1e(A)),o1e=(A,e=!1)=>e?window.btoa(A):window.btoa(x_(A)),s1e=(A,e=!1)=>e?window.atob(A):n1e(window.atob(A)),l1e=({text:A,compress:e})=>{let t;if(e!==!1)try{t=x_(rCe(A))}catch(r){console.error("encode: cannot deflate",r)}return{version:"1",encoding:"bstring",compressed:!!t,encoded:t||x_(A)}},g1e=(A)=>{let e;switch(A.encoding){case"bstring":e=A.compressed?A.encoded:n1e(A.encoded);break;default:throw Error(`decode: unknown encoding "${A.encoding}"`)}return A.compressed?iCe(new Uint8Array(a1e(e)),{to:"string"}):e},ZBe=async(A)=>{let e=tIA.default(new Uint8Array(await Hm(A))).find((t)=>t.name==="tEXt");return e?hP.decode(e.data):null},e_=async({blob:A,metadata:e})=>{let t=tIA.default(new Uint8Array(await Hm(A))),r=hP.encode(jt.excalidraw,JSON.stringify(l1e({text:e,compress:!0})));return t.splice(-1,0,r),new Blob([gde.default(t)],{type:jt.png})},VBe=async(A)=>{let e=await ZBe(A);if(e?.keyword===jt.excalidraw)try{let t=JSON.parse(e.text);if(!("encoded"in t)){if("type"in t&&t.type===wg.excalidraw)return e.text;throw Error("FAILED")}return g1e(t)}catch(t){throw console.error(t),Error("FAILED")}throw Error("INVALID")};var bdA=_(()=>{T6();zt();Nge();uCe();h1();zE();t8();t8();WCe();A8();fe();h1();Be();t8();h1();zE();KBe();tIA=yu(vge(),1),gde=yu(Tge(),1),Jde=yu(_6(),1),Ode=yu(gCe(),1),jQe=yu(fBe(),1),_C=[0,2,4,6,8],Zr={transparent:"transparent",black:"#1e1e1e",white:"#ffffff",gray:WC("gray",_C),red:WC("red",_C),pink:WC("pink",_C),grape:WC("grape",_C),violet:WC("violet",_C),blue:WC("blue",_C),cyan:WC("cyan",_C),teal:WC("teal",_C),green:WC("green",_C),yellow:WC("yellow",_C),orange:WC("orange",_C),bronze:["#f8f1ee","#eaddd7","#d2bab0","#a18072","#846358"]},Cde=DXt(Zr,["cyan","blue","violet","grape","pink","green","teal","yellow","orange","red"]),rIA=[Zr.black,Zr.red[e9],Zr.green[e9],Zr.blue[e9],Zr.yellow[e9]],iIA=[Zr.transparent,Zr.red[t9],Zr.green[t9],Zr.blue[t9],Zr.yellow[t9]],uIA=[Zr.white,"#f8f9fa","#f5faff","#fffce8","#fdf8f6"],Bde={transparent:Zr.transparent,white:Zr.white,gray:Zr.gray,black:Zr.black,bronze:Zr.bronze,...Cde},Ede={transparent:Zr.transparent,white:Zr.white,gray:Zr.gray,black:Zr.black,bronze:Zr.bronze,...Cde},rB=/Mac|iPod|iPhone|iPad/.test(navigator.platform),aIA=/^Win/.test(navigator.platform),bXt=/\b(android)\b/i.test(navigator.userAgent),I9="netscape"in window&&navigator.userAgent.indexOf("rv:")>1&&navigator.userAgent.indexOf("Gecko")>1,vXt=navigator.userAgent.indexOf("Chrome")!==-1,Ide=!vXt&&navigator.userAgent.indexOf("Safari")!==-1,nIA=/iPad|iPhone/.test(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document,S_=typeof window<"u"&&"ResizeObserver"in window,N1=Math.PI/12,iu={TEXT:"text",CROSSHAIR:"crosshair",GRABBING:"grabbing",GRAB:"grab",POINTER:"pointer",MOVE:"move",AUTO:""},Sh={MAIN:0,WHEEL:1,SECONDARY:2,TOUCH:-1,ERASER:5},Zm={enabled:"all",disabled:"none",inheritFromUI:"var(--ui-pointerEvents)"},F8={UNSTARTED:-1,ENDED:0,PLAYING:1,PAUSED:2,BUFFERING:3,CUED:5},Ys={TEST:"test",DEVELOPMENT:"development"},Vm={SHAPE_ACTIONS_MENU:"App-menu__left",ZOOM_ACTIONS:"zoom-actions",SEARCH_MENU_INPUT_WRAPPER:"layer-ui__search-inputWrapper"},aa={Virgil:1,Helvetica:2,Cascadia:3,Excalifont:5,Nunito:6,"Lilita One":7,"Comic Shanns":8,"Liberation Sans":9},i9={[r9]:100,[h8]:1000},ei={LIGHT:"light",DARK:"dark"},Zu={strokeColor:"#bbb",strokeWidth:2,strokeStyle:"solid",fillStyle:"solid",roughness:0,roundness:null,backgroundColor:"transparent",radius:8,nameOffsetY:3,nameColorLightTheme:"#999999",nameColorDarkTheme:"#7a7a7a",nameFontSize:14,nameLineHeight:1.25},Lh=aa.Excalifont,B_=2*G1,yde=2*B_-FXt,jm={svg:"image/svg+xml",png:"image/png",jpg:"image/jpeg",gif:"image/gif",webp:"image/webp",bmp:"image/bmp",ico:"image/x-icon",avif:"image/avif",jfif:"image/jfif"},jt={text:"text/plain",html:"text/html",json:"application/json",excalidraw:"application/vnd.excalidraw+json",excalidrawlib:"application/vnd.excalidrawlib+json","excalidraw.svg":"image/svg+xml","excalidraw.png":"image/png",binary:"application/octet-stream",...jm},xXt=[jt.text,jt.html,...Object.values(jm)],L_={png:"png",svg:"svg",clipboard:"clipboard"},wg={excalidraw:"excalidraw",excalidrawClipboard:"excalidraw/clipboard",excalidrawLibrary:"excalidrawlib",excalidrawClipboardWithAPI:"excalidraw-api/clipboard"},R_=window.EXCALIDRAW_EXPORT_SOURCE||window.location.origin,lIA={canvasActions:{changeViewBackgroundColor:!0,clearCanvas:!0,export:{saveFileToDisk:!0},loadScene:!0,saveToActiveFile:!0,toggleTheme:null,saveAsImage:!0},tools:{image:!0}},M_=[1,2,3],N8={excalidraw:2,excalidrawLibrary:2},Rl={TOP:"top",MIDDLE:"middle",BOTTOM:"bottom"},l9={LEFT:"left",CENTER:"center",RIGHT:"right"},mn={LEGACY:1,PROPORTIONAL_RADIUS:2,ADAPTIVE_RADIUS:3},Tde={architect:0,artist:1,cartoonist:2},T_={thin:1,bold:2,extraBold:4},Ua={strokeColor:Zr.black,backgroundColor:Zr.transparent,fillStyle:"solid",strokeWidth:2,strokeStyle:"solid",roughness:Tde.artist,opacity:100,locked:!1},Gc={name:"default",defaultTab:G8},cIA=new Set(["iframe","embeddable","image"]),Jn={selection:"selection",rectangle:"rectangle",diamond:"diamond",ellipse:"ellipse",arrow:"arrow",line:"line",freedraw:"freedraw",text:"text",image:"image",eraser:"eraser",hand:"hand",frame:"frame",magicframe:"magicframe",embeddable:"embeddable",laser:"laser"},Q9={OAI_API_KEY:"excalidraw-oai-api-key",MERMAID_TO_EXCALIDRAW:"mermaid-to-excalidraw",PUBLISH_LIBRARY:"publish-library-data"},Km={generalStats:1,elementProperties:2},mo={sharp:"sharp",round:"round",elbow:"elbow"},GXt=Symbol.for("__test__originalId__"),Yde=((A)=>(A.ACTIVE="active",A.AWAY="away",A.IDLE="idle",A))(Yde||{}),UXt=M_.includes(devicePixelRatio)?devicePixelRatio:1,MXt=((A)=>A)({showWelcomeScreen:{browser:!0,export:!1,server:!1},theme:{browser:!0,export:!1,server:!1},collaborators:{browser:!1,export:!1,server:!1},currentChartType:{browser:!0,export:!1,server:!1},currentItemBackgroundColor:{browser:!0,export:!1,server:!1},currentItemEndArrowhead:{browser:!0,export:!1,server:!1},currentItemFillStyle:{browser:!0,export:!1,server:!1},currentItemFontFamily:{browser:!0,export:!1,server:!1},currentItemFontSize:{browser:!0,export:!1,server:!1},currentItemRoundness:{browser:!0,export:!1,server:!1},currentItemArrowType:{browser:!0,export:!1,server:!1},currentItemOpacity:{browser:!0,export:!1,server:!1},currentItemRoughness:{browser:!0,export:!1,server:!1},currentItemStartArrowhead:{browser:!0,export:!1,server:!1},currentItemStrokeColor:{browser:!0,export:!1,server:!1},currentItemStrokeStyle:{browser:!0,export:!1,server:!1},currentItemStrokeWidth:{browser:!0,export:!1,server:!1},currentItemTextAlign:{browser:!0,export:!1,server:!1},currentHoveredFontFamily:{browser:!1,export:!1,server:!1},cursorButton:{browser:!0,export:!1,server:!1},activeEmbeddable:{browser:!1,export:!1,server:!1},newElement:{browser:!1,export:!1,server:!1},editingTextElement:{browser:!1,export:!1,server:!1},editingGroupId:{browser:!0,export:!1,server:!1},editingLinearElement:{browser:!1,export:!1,server:!1},activeTool:{browser:!0,export:!1,server:!1},penMode:{browser:!0,export:!1,server:!1},penDetected:{browser:!0,export:!1,server:!1},errorMessage:{browser:!1,export:!1,server:!1},exportBackground:{browser:!0,export:!1,server:!1},exportEmbedScene:{browser:!0,export:!1,server:!1},exportScale:{browser:!0,export:!1,server:!1},exportWithDarkMode:{browser:!0,export:!1,server:!1},fileHandle:{browser:!1,export:!1,server:!1},gridSize:{browser:!0,export:!0,server:!0},gridStep:{browser:!0,export:!0,server:!0},gridModeEnabled:{browser:!0,export:!0,server:!0},height:{browser:!1,export:!1,server:!1},isBindingEnabled:{browser:!1,export:!1,server:!1},defaultSidebarDockedPreference:{browser:!0,export:!1,server:!1},isLoading:{browser:!1,export:!1,server:!1},isResizing:{browser:!1,export:!1,server:!1},isRotating:{browser:!1,export:!1,server:!1},lastPointerDownWith:{browser:!0,export:!1,server:!1},multiElement:{browser:!1,export:!1,server:!1},name:{browser:!0,export:!1,server:!1},offsetLeft:{browser:!1,export:!1,server:!1},offsetTop:{browser:!1,export:!1,server:!1},contextMenu:{browser:!1,export:!1,server:!1},openMenu:{browser:!0,export:!1,server:!1},openPopup:{browser:!1,export:!1,server:!1},openSidebar:{browser:!0,export:!1,server:!1},openDialog:{browser:!1,export:!1,server:!1},pasteDialog:{browser:!1,export:!1,server:!1},previousSelectedElementIds:{browser:!0,export:!1,server:!1},resizingElement:{browser:!1,export:!1,server:!1},scrolledOutside:{browser:!0,export:!1,server:!1},scrollX:{browser:!0,export:!1,server:!1},scrollY:{browser:!0,export:!1,server:!1},selectedElementIds:{browser:!0,export:!1,server:!1},hoveredElementIds:{browser:!1,export:!1,server:!1},selectedGroupIds:{browser:!0,export:!1,server:!1},selectedElementsAreBeingDragged:{browser:!1,export:!1,server:!1},selectionElement:{browser:!1,export:!1,server:!1},shouldCacheIgnoreZoom:{browser:!0,export:!1,server:!1},stats:{browser:!0,export:!1,server:!1},startBoundElement:{browser:!1,export:!1,server:!1},suggestedBindings:{browser:!1,export:!1,server:!1},frameRendering:{browser:!1,export:!1,server:!1},frameToHighlight:{browser:!1,export:!1,server:!1},editingFrame:{browser:!1,export:!1,server:!1},elementsToHighlight:{browser:!1,export:!1,server:!1},toast:{browser:!1,export:!1,server:!1},viewBackgroundColor:{browser:!0,export:!0,server:!0},width:{browser:!1,export:!1,server:!1},zenModeEnabled:{browser:!0,export:!1,server:!1},zoom:{browser:!0,export:!1,server:!1},viewModeEnabled:{browser:!1,export:!1,server:!1},pendingImageElementId:{browser:!1,export:!1,server:!1},showHyperlinkPopup:{browser:!1,export:!1,server:!1},selectedLinearElement:{browser:!0,export:!1,server:!1},snapLines:{browser:!1,export:!1,server:!1},originSnapOffset:{browser:!1,export:!1,server:!1},objectsSnapModeEnabled:{browser:!0,export:!1,server:!1},userToFollow:{browser:!1,export:!1,server:!1},followedBy:{browser:!1,export:!1,server:!1},isCropping:{browser:!1,export:!1,server:!1},croppingElementId:{browser:!1,export:!1,server:!1},searchMatches:{browser:!1,export:!1,server:!1}});XXt=new RegExp(`^[^${VXt}]*[${jXt}]`);gIe="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".toLocaleUpperCase(),O8=(()=>{let A={};return{calculate:(e,t)=>{let r=e.charCodeAt(0);if(A[t]||(A[t]=[]),!A[t][r]){let i=Pm(e,t);A[t][r]=i}return A[t][r]},getCache:(e)=>A[e],clearCache:(e)=>{A[e]=[]}}})(),bc={WHITESPACE:/\s/u,HYPHEN:/-/u,OPENING:/<\(\[\{/u,CLOSING:/>\)\]\}.,:;!\?…\//u},bh={CHAR:/\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}`'^〃〰〆#&*+-ー/\=|¦〒¬ ̄/u,OPENING:/([{〈《⦅「「『【〖〔〘〚<〝/u,CLOSING:/)]}〉》⦆」」』】〗〕〙〛>。.,、〟‥?!:;・〜〞/u,CURRENCY:/¥₩£¢$/u},Mm={FLAG:/\p{RI}\p{RI}/u,JOINER:/(?:\p{Emoji_Modifier}|\uFE0F\u20E3?|[\u{E0020}-\u{E007E}]+\u{E007F})?/u,ZWJ:/\u200D/u,ANY:/[\p{Emoji}]/u,MOST:/[\p{Extended_Pictographic}\p{Emoji_Presentation}]/u},ru={build:(A)=>new RegExp(A,"u"),join:(...A)=>A.map((e)=>e.source).join(""),and:(...A)=>ru.build(ru.join(...A)),or:(...A)=>ru.build(A.map((e)=>e.source).join("|")),group:(...A)=>ru.build(`(${ru.join(...A)})`),class:(...A)=>ru.build(`[${ru.join(...A)}]`)},An={On:(...A)=>{let e=ru.join(...A);return ru.build(`([${e}])`)},Before:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?=[${e}])`);return An.Chain(t)},After:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?<=[${e}])`);return An.Chain(t)},BeforeMany:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?<![${e}])(?=[${e}])`);return An.Chain(t)},AfterMany:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?<=[${e}])(?![${e}])`);return An.Chain(t)},NotBefore:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?![${e}])`);return An.Chain(t)},NotAfter:(...A)=>{let e=ru.join(...A),t=()=>ru.build(`(?<![${e}])`);return An.Chain(t)},Chain:(A)=>({Build:A,PreceededBy:(...e)=>{let t=A(),r=An.After(...e).Build(),i=()=>ru.and(r,t);return An.Chain(i)},FollowedBy:(...e)=>{let t=A(),r=An.Before(...e).Build(),i=()=>ru.and(t,r);return An.Chain(i)},NotPrecededBy:(...e)=>{let t=A(),r=An.NotAfter(...e).Build(),i=()=>ru.and(r,t);return An.Chain(i)},NotFollowedBy:(...e)=>{let t=A(),r=An.NotBefore(...e).Build(),i=()=>ru.and(t,r);return An.Chain(i)}})};GA(Us,"rg",new id),GA(Us,"cache",new WeakMap),GA(Us,"get",(A)=>Us.cache.get(A)),GA(Us,"set",(A,e)=>Us.cache.set(A,e)),GA(Us,"delete",(A)=>Us.cache.delete(A)),GA(Us,"destroy",()=>{Us.cache=new WeakMap}),GA(Us,"generateElementShape",(A,e)=>{let t=e?.isExporting?void 0:Us.get(A);if(t!==void 0)return t;qdA.delete(A);let r=Kir(A,Us.rg,e||{isExporting:!1,canvasBackgroundColor:Zr.white,embedsValidationStatus:null});return Us.cache.set(A,r),r});na=Us,ct={width:24,height:24,fill:"none",strokeWidth:2,stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},Hr={width:20,height:20,fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"},lyi=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("rect",{x:3,y:8,width:18,height:4,rx:1}),N("line",{x1:12,y1:8,x2:12,y2:21}),N("path",{d:"M19 12v7a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2v-7"}),N("path",{d:"M7.5 8a2.5 2.5 0 0 1 0 -5a4.8 8 0 0 1 4.5 5a4.8 8 0 0 1 4.5 -5a2.5 2.5 0 0 1 0 5"})]}),ct),P_=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 19a9 9 0 0 1 9 0a9 9 0 0 1 9 0"}),N("path",{d:"M3 6a9 9 0 0 1 9 0a9 9 0 0 1 9 0"}),N("line",{x1:"3",y1:"6",x2:"3",y2:"19"}),N("line",{x1:"12",y1:"6",x2:"12",y2:"19"}),N("line",{x1:"21",y1:"6",x2:"21",y2:"19"})]}),ct),BIe=ge(cA("svg",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"12",y1:"5",x2:"12",y2:"19"}),N("line",{x1:"5",y1:"12",x2:"19",y2:"12"})]}),ct),EIe=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("circle",{cx:"12",cy:"12",r:"1"}),N("circle",{cx:"12",cy:"19",r:"1"}),N("circle",{cx:"12",cy:"5",r:"1"})]}),ct),dIe=ge(cA("svg",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M9 4v6l-2 4v2h10v-2l-2 -4v-6"}),N("line",{x1:"12",y1:"16",x2:"12",y2:"21"}),N("line",{x1:"8",y1:"4",x2:"16",y2:"4"})]}),ct),P8=ge(cA("g",{children:[N("path",{d:"M13.542 8.542H6.458a2.5 2.5 0 0 0-2.5 2.5v3.75a2.5 2.5 0 0 0 2.5 2.5h7.084a2.5 2.5 0 0 0 2.5-2.5v-3.75a2.5 2.5 0 0 0-2.5-2.5Z",stroke:"currentColor",strokeWidth:"1.25"}),N("path",{d:"M10 13.958a1.042 1.042 0 1 0 0-2.083 1.042 1.042 0 0 0 0 2.083Z",stroke:"currentColor",strokeWidth:"1.25"}),N("mask",{id:"UnlockedIcon",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:6,y:1,width:9,height:9,children:N("path",{stroke:"none",d:"M6.399 9.561V5.175c0-.93.401-1.823 1.116-2.48a3.981 3.981 0 0 1 2.693-1.028c1.01 0 1.98.37 2.694 1.027.715.658 1.116 1.55 1.116 2.481",fill:"#fff"})}),N("g",{mask:"url(#UnlockedIcon)",children:N("path",{stroke:"none",d:"M5.149 9.561v1.25h2.5v-1.25h-2.5Zm5.06-7.894V.417v1.25Zm2.559 3.508v1.25h2.5v-1.25h-2.5ZM7.648 8.51V5.175h-2.5V8.51h2.5Zm0-3.334c0-.564.243-1.128.713-1.561L6.668 1.775c-.959.883-1.52 2.104-1.52 3.4h2.5Zm.713-1.561a2.732 2.732 0 0 1 1.847-.697v-2.5c-1.31 0-2.585.478-3.54 1.358L8.36 3.614Zm1.847-.697c.71 0 1.374.26 1.847.697l1.694-1.839a5.231 5.231 0 0 0-3.54-1.358v2.5Zm1.847.697c.47.433.713.997.713 1.561h2.5c0-1.296-.56-2.517-1.52-3.4l-1.693 1.839Z",fill:"currentColor"})})]}),Hr),__=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M13.542 8.542H6.458a2.5 2.5 0 0 0-2.5 2.5v3.75a2.5 2.5 0 0 0 2.5 2.5h7.084a2.5 2.5 0 0 0 2.5-2.5v-3.75a2.5 2.5 0 0 0-2.5-2.5Z"}),N("path",{d:"M10 13.958a1.042 1.042 0 1 0 0-2.083 1.042 1.042 0 0 0 0 2.083Z"}),N("path",{d:"M6.667 8.333V5.417C6.667 3.806 8.159 2.5 10 2.5c1.841 0 3.333 1.306 3.333 2.917v2.916"})]}),Hr),IIe=ge(cA(At,{children:[N("path",{d:"M38.5 83.5c-14-2-17.833-10.473-21-22.5C14.333 48.984 12 22 12 12.5",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"}),N("path",{fillRule:"evenodd",clipRule:"evenodd",d:"m12.005 10.478 7.905 14.423L6 25.75l6.005-15.273Z",fill:"currentColor"}),N("path",{d:"M12.005 10.478c1.92 3.495 3.838 7 7.905 14.423m-7.905-14.423c3.11 5.683 6.23 11.368 7.905 14.423m0 0c-3.68.226-7.35.455-13.91.85m13.91-.85c-5.279.33-10.566.647-13.91.85m0 0c1.936-4.931 3.882-9.86 6.005-15.273M6 25.75c2.069-5.257 4.135-10.505 6.005-15.272",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"})]}),{width:41,height:94,fill:"none"}),hIe=ge(cA(At,{children:[N("path",{d:"M18.026 1.232c-5.268 13.125-5.548 33.555 3.285 42.311 8.823 8.75 33.31 12.304 42.422 13.523",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"}),N("path",{fillRule:"evenodd",clipRule:"evenodd",d:"m72.181 59.247-13.058-10-2.948 13.62 16.006-3.62Z",fill:"currentColor"}),N("path",{d:"M72.181 59.247c-3.163-2.429-6.337-4.856-13.058-10m13.058 10c-5.145-3.936-10.292-7.882-13.058-10m0 0c-.78 3.603-1.563 7.196-2.948 13.62m2.948-13.62c-1.126 5.168-2.24 10.346-2.948 13.62m0 0c5.168-1.166 10.334-2.343 16.006-3.62m-16.006 3.62c5.51-1.248 11.01-2.495 16.006-3.62",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"})]}),{width:85,height:71,fill:"none"}),QIe=ge(cA(At,{children:[N("path",{d:"M1 77c14-2 31.833-11.973 35-24 3.167-12.016-6-35-9.5-43.5",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"}),N("path",{fillRule:"evenodd",clipRule:"evenodd",d:"m24.165 1.093-2.132 16.309 13.27-4.258-11.138-12.05Z",fill:"currentColor"}),N("path",{d:"M24.165 1.093c-.522 3.953-1.037 7.916-2.132 16.309m2.131-16.309c-.835 6.424-1.68 12.854-2.13 16.308m0 0c3.51-1.125 7.013-2.243 13.27-4.257m-13.27 4.257c5.038-1.608 10.08-3.232 13.27-4.257m0 0c-3.595-3.892-7.197-7.777-11.14-12.05m11.14 12.05c-3.837-4.148-7.667-8.287-11.14-12.05",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round"})]}),{width:38,height:78,fill:"none"}),gyi=ge(N("g",{fill:"currentColor",children:N("path",{d:"M39.9 32.889a.326.326 0 0 0-.279-.056c-2.094-3.083-4.774-6-7.343-8.833l-.419-.472a.212.212 0 0 0-.056-.139.586.586 0 0 0-.167-.111l-.084-.083-.056-.056c-.084-.167-.28-.278-.475-.167-.782.39-1.507.973-2.206 1.528-.92.722-1.842 1.445-2.708 2.25a8.405 8.405 0 0 0-.977 1.028c-.14.194-.028.361.14.444-.615.611-1.23 1.223-1.843 1.861a.315.315 0 0 0-.084.223c0 .083.056.166.111.194l1.09.833v.028c1.535 1.528 4.244 3.611 7.12 5.861.418.334.865.667 1.284 1 .195.223.39.473.558.695.084.11.28.139.391.055.056.056.14.111.196.167a.398.398 0 0 0 .167.056.255.255 0 0 0 .224-.111.394.394 0 0 0 .055-.167c.029 0 .028.028.056.028a.318.318 0 0 0 .224-.084l5.082-5.528a.309.309 0 0 0 0-.444Zm-14.63-1.917a.485.485 0 0 0 .111.14c.586.5 1.2 1 1.843 1.555l-2.569-1.945-.251-.166c-.056-.028-.112-.084-.168-.111l-.195-.167.056-.056.055-.055.112-.111c.866-.861 2.346-2.306 3.1-3.028-.81.805-2.43 3.167-2.095 3.944Zm8.767 6.89-2.122-1.612a44.713 44.713 0 0 0-2.625-2.5c1.145.861 2.122 1.611 2.262 1.75 1.117.972 1.06.806 1.815 1.445l.921.666a1.06 1.06 0 0 1-.251.25Zm.558.416-.056-.028c.084-.055.168-.111.252-.194l-.196.222ZM1.089 5.75c.055.361.14.722.195 1.056.335 1.833.67 3.5 1.284 4.75l.252.944c.084.361.223.806.363.917 1.424 1.25 3.602 3.11 5.947 4.889a.295.295 0 0 0 .363 0s0 .027.028.027a.254.254 0 0 0 .196.084.318.318 0 0 0 .223-.084c2.988-3.305 5.221-6.027 6.813-8.305.112-.111.14-.278.14-.417.111-.111.195-.25.307-.333.111-.111.111-.306 0-.39l-.028-.027c0-.055-.028-.139-.084-.167-.698-.666-1.2-1.138-1.731-1.638-.922-.862-1.871-1.75-3.881-3.75l-.028-.028c-.028-.028-.056-.056-.112-.056-.558-.194-1.703-.389-3.127-.639C6.087 2.223 3.21 1.723.614.944c0 0-.168 0-.196.028l-.083.084c-.028.027-.056.055-.224.11h.056-.056c.028.167.028.278.084.473 0 .055.112.5.112.555l.782 3.556Zm15.496 3.278-.335-.334c.084.112.196.195.335.334Zm-3.546 4.666-.056.056c0-.028.028-.056.056-.056Zm-2.038-10c.168.167.866.834 1.033.973-.726-.334-2.54-1.167-3.379-1.445.838.167 1.983.334 2.346.472ZM1.424 2.306c.419.722.754 3.222 1.089 5.666-.196-.778-.335-1.555-.503-2.278-.251-1.277-.503-2.416-.838-3.416.056 0 .14 0 .252.028Zm-.168-.584c-.112 0-.223-.028-.307-.028 0-.027 0-.055-.028-.055.14 0 .223.028.335.083Zm-1.089.222c0-.027 0-.027 0 0ZM39.453 1.333c.028-.11-.558-.61-.363-.639.42-.027.42-.666 0-.666-.558.028-1.144.166-1.675.25-.977.194-1.982.389-2.96.61-2.205.473-4.383.973-6.561 1.557-.67.194-1.424.333-2.066.666-.224.111-.196.333-.084.472-.056.028-.084.028-.14.056-.195.028-.363.056-.558.083-.168.028-.252.167-.224.334 0 .027.028.083.028.11-1.173 1.556-2.485 3.195-3.909 4.945-1.396 1.611-2.876 3.306-4.356 5.056-4.719 5.5-10.052 11.75-15.943 17.25a.268.268 0 0 0 0 .389c.028.027.056.055.084.055-.084.084-.168.14-.252.222-.056.056-.084.111-.084.167a.605.605 0 0 0-.111.139c-.112.111-.112.305.028.389.111.11.307.11.39-.028.029-.028.029-.056.056-.056a.44.44 0 0 1 .615 0c.335.362.67.723.977 1.028l-.698-.583c-.112-.111-.307-.083-.39.028-.113.11-.085.305.027.389l7.427 6.194c.056.056.112.056.196.056s.14-.028.195-.084l.168-.166c.028.027.083.027.111.027.084 0 .14-.027.196-.083 10.052-10.055 18.15-17.639 27.42-24.417.083-.055.111-.166.111-.25.112 0 .196-.083.251-.194 1.704-5.194 2.039-9.806 2.15-12.083v-.028c0-.028.028-.056.028-.083.028-.056.028-.084.028-.084a1.626 1.626 0 0 0-.111-1.028ZM21.472 9.5c.446-.5.893-1.028 1.34-1.5-2.876 3.778-7.65 9.583-14.408 16.5 4.607-5.083 9.242-10.333 13.068-15ZM5.193 35.778h.084-.084Zm3.462 3.194c-.027-.028-.027-.028 0-.028v.028Zm4.16-3.583c.224-.25.448-.472.699-.722 0 0 0 .027.028.027-.252.223-.475.445-.726.695Zm1.146-1.111c.14-.14.279-.334.446-.5l.028-.028c1.648-1.694 3.351-3.389 5.082-5.111l.028-.028c.419-.333.921-.694 1.368-1.028a379.003 379.003 0 0 0-6.952 6.695ZM24.794 6.472c-.921 1.195-1.954 2.778-2.82 4.028-2.736 3.944-11.532 13.583-11.727 13.75a1976.983 1976.983 0 0 1-8.042 7.639l-.167.167c-.14-.167-.14-.417.028-.556C14.49 19.861 22.03 10.167 25.074 5.917c-.084.194-.14.36-.28.555Zm4.83 5.695c-1.116-.64-1.646-1.64-1.34-2.611l.084-.334c.028-.083.084-.194.14-.277.307-.5.754-.917 1.257-1.167.027 0 .055 0 .083-.028-.028-.056-.028-.139-.028-.222.028-.167.14-.278.335-.278.335 0 1.369.306 1.76.639.111.083.223.194.335.305.14.167.363.445.474.667.056.028.112.306.196.445.056.222.111.472.084.694-.028.028 0 .194-.028.194a2.668 2.668 0 0 1-.363 1.028c-.028.028-.028.056-.056.084l-.028.027c-.14.223-.335.417-.53.556-.643.444-1.369.583-2.095.389 0 0-.195-.084-.28-.111Zm8.154-.834a39.098 39.098 0 0 1-.893 3.167c0 .028-.028.083 0 .111-.056 0-.084.028-.14.056-2.206 1.61-4.356 3.305-6.506 5.028 1.843-1.64 3.686-3.306 5.613-4.945.558-.5.949-1.139 1.06-1.861l.28-1.667v-.055c.14-.334.67-.195.586.166Z",fill:"currentColor"})}),{width:40,height:40,fill:"none"}),Q$t=ge(cA("g",{stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M6 6l4.153 11.793a0.365 .365 0 0 0 .331 .207a0.366 .366 0 0 0 .332 -.207l2.184 -4.793l4.787 -1.994a0.355 .355 0 0 0 .213 -.323a0.355 .355 0 0 0 -.213 -.323l-11.787 -4.36z"}),N("path",{d:"M13.5 13.5l4.5 4.5"})]}),{fill:"none",width:22,height:22,strokeWidth:1.25}),p$t=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2"})]}),ct),f$t=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M10.5 20.4l-6.9 -6.9c-.781 -.781 -.781 -2.219 0 -3l6.9 -6.9c.781 -.781 2.219 -.781 3 0l6.9 6.9c.781 .781 .781 2.219 0 3l-6.9 6.9c-.781 .781 -2.219 .781 -3 0z"})]}),ct),m$t=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("circle",{cx:"12",cy:"12",r:"9"})]}),ct),D$t=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"5",y1:"12",x2:"19",y2:"12"}),N("line",{x1:"15",y1:"16",x2:"19",y2:"12"}),N("line",{x1:"15",y1:"8",x2:"19",y2:"12"})]}),ct),y$t=ge(N("path",{d:"M4.167 10h11.666",strokeWidth:"1.5"}),Hr),pIe=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M20 17v-12c0 -1.121 -.879 -2 -2 -2s-2 .879 -2 2v12l2 2l2 -2z"}),N("path",{d:"M16 7h4"}),N("path",{d:"M18 19h-13a2 2 0 1 1 0 -4h4a2 2 0 1 0 0 -4h-3"})]}),ct),g9=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{clipRule:"evenodd",d:"m7.643 15.69 7.774-7.773a2.357 2.357 0 1 0-3.334-3.334L4.31 12.357a3.333 3.333 0 0 0-.977 2.357v1.953h1.953c.884 0 1.732-.352 2.357-.977Z"}),N("path",{d:"m11.25 5.417 3.333 3.333"})]}),Hr),RIA=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"20",x2:"7",y2:"20"}),N("line",{x1:"14",y1:"20",x2:"21",y2:"20"}),N("line",{x1:"6.9",y1:"15",x2:"13.8",y2:"15"}),N("line",{x1:"10.2",y1:"6.3",x2:"16",y2:"20"}),N("polyline",{points:"5 20 11 4 13 4 20 20"})]}),ct),w$t=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M12.5 6.667h.01"}),N("path",{d:"M4.91 2.625h10.18a2.284 2.284 0 0 1 2.285 2.284v10.182a2.284 2.284 0 0 1-2.284 2.284H4.909a2.284 2.284 0 0 1-2.284-2.284V4.909a2.284 2.284 0 0 1 2.284-2.284Z"}),N("path",{d:"m3.333 12.5 3.334-3.333c.773-.745 1.726-.745 2.5 0l4.166 4.166"}),N("path",{d:"m11.667 11.667.833-.834c.774-.744 1.726-.744 2.5 0l1.667 1.667"})]}),Hr),b$t=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M19 20h-10.5l-4.21 -4.3a1 1 0 0 1 0 -1.41l10 -10a1 1 0 0 1 1.41 0l5 5a1 1 0 0 1 0 1.41l-9.2 9.3"}),N("path",{d:"M18 13.3l-6.3 -6.3"})]}),ct),NIA=ge(N("path",{strokeWidth:"1.25",d:"M10 4.167v11.666M4.167 10h11.666"}),Hr),GIA=ge(N("path",{d:"M5 10h10",strokeWidth:"1.25"}),Hr),fIe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M21 21l-6 -6"}),N("path",{d:"M3.268 12.043a7.017 7.017 0 0 0 6.634 4.957a7.012 7.012 0 0 0 7.043 -6.131a7 7 0 0 0 -5.314 -7.672a7.021 7.021 0 0 0 -8.241 4.403"}),N("path",{d:"M3 4v4h4"})]}),ct),W1=ge(N("path",{strokeWidth:"1.25",d:"M3.333 5.833h13.334M8.333 9.167v5M11.667 9.167v5M4.167 5.833l.833 10c0 .92.746 1.667 1.667 1.667h6.666c.92 0 1.667-.746 1.667-1.667l.833-10M7.5 5.833v-2.5c0-.46.373-.833.833-.833h3.334c.46 0 .833.373.833.833v2.5"}),Hr),mIe=ge(cA("g",{strokeWidth:"1.25",children:[N("polyline",{points:"12 16 18 10 12 4"}),N("polyline",{points:"8 4 2 10 8 16"})]}),Hr),W_=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M14.375 6.458H8.958a2.5 2.5 0 0 0-2.5 2.5v5.417a2.5 2.5 0 0 0 2.5 2.5h5.417a2.5 2.5 0 0 0 2.5-2.5V8.958a2.5 2.5 0 0 0-2.5-2.5Z"}),N("path",{clipRule:"evenodd",d:"M11.667 3.125c.517 0 .986.21 1.325.55.34.338.55.807.55 1.325v1.458H8.333c-.485 0-.927.185-1.26.487-.343.312-.57.75-.609 1.24l-.005 5.357H5a1.87 1.87 0 0 1-1.326-.55 1.87 1.87 0 0 1-.549-1.325V5c0-.518.21-.987.55-1.326.338-.34.807-.549 1.325-.549h6.667Z"})]}),Hr),q_=ge(N("path",{clipRule:"evenodd",d:"M10 2.5h.328a6.25 6.25 0 0 0 6.6 10.372A7.5 7.5 0 1 1 10 2.493V2.5Z",stroke:"currentColor"}),Hr),z_=ge(N("g",{stroke:"currentColor",strokeLinejoin:"round",children:N("path",{d:"M10 12.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5ZM10 4.167V2.5M14.167 5.833l1.166-1.166M15.833 10H17.5M14.167 14.167l1.166 1.166M10 15.833V17.5M5.833 14.167l-1.166 1.166M5 10H3.333M5.833 5.833 4.667 4.667"})}),{...Hr,strokeWidth:1.5}),UIA=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"6",x2:"20",y2:"6"}),N("line",{x1:"4",y1:"12",x2:"20",y2:"12"}),N("line",{x1:"4",y1:"18",x2:"20",y2:"18"})]}),ct),_8=ge(N("path",{strokeWidth:"1.25",d:"M3.333 14.167v1.666c0 .92.747 1.667 1.667 1.667h10c.92 0 1.667-.746 1.667-1.667v-1.666M5.833 9.167 10 13.333l4.167-4.166M10 3.333v10"}),Hr),Z_=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("circle",{cx:"12",cy:"12",r:"9"}),N("line",{x1:"12",y1:"17",x2:"12",y2:"17.01"}),N("path",{d:"M12 13.5a1.5 1.5 0 0 1 1 -1.5a2.6 2.6 0 1 0 -3 -4"})]}),ct),DIe=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("circle",{cx:"12",cy:"12",r:"9"}),N("line",{x1:"12",y1:"17",x2:"12",y2:"17.01"}),N("path",{d:"M12 13.5a1.5 1.5 0 0 1 1 -1.5a2.6 2.6 0 1 0 -3 -4"})]}),ct),MIA=ge(N("path",{strokeWidth:"1.25",d:"M9.167 5.833H5.833c-1.254 0-2.5 1.282-2.5 2.5v5.834c0 1.283 1.252 2.5 2.5 2.5h5.834c1.251 0 2.5-1.25 2.5-2.5v-3.334M8.333 11.667l8.334-8.334M12.5 3.333h4.167V7.5"}),Hr),TIA=ge(N("path",{d:"M7.5 15.833c-3.583 1.167-3.583-2.083-5-2.5m10 4.167v-2.917c0-.833.083-1.166-.417-1.666 2.334-.25 4.584-1.167 4.584-5a3.833 3.833 0 0 0-1.084-2.667 3.5 3.5 0 0 0-.083-2.667s-.917-.25-2.917 1.084a10.25 10.25 0 0 0-5.166 0C5.417 2.333 4.5 2.583 4.5 2.583a3.5 3.5 0 0 0-.083 2.667 3.833 3.833 0 0 0-1.084 2.667c0 3.833 2.25 4.75 4.584 5-.5.5-.5 1-.417 1.666V17.5",strokeWidth:"1.25"}),Hr),yIe=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M7.5 10.833a.833.833 0 1 0 0-1.666.833.833 0 0 0 0 1.666ZM12.5 10.833a.833.833 0 1 0 0-1.666.833.833 0 0 0 0 1.666ZM6.25 6.25c2.917-.833 4.583-.833 7.5 0M5.833 13.75c2.917.833 5.417.833 8.334 0"}),N("path",{d:"M12.917 14.167c0 .833 1.25 2.5 1.666 2.5 1.25 0 2.361-1.39 2.917-2.5.556-1.39.417-4.861-1.25-9.584-1.214-.846-2.5-1.116-3.75-1.25l-.833 2.084M7.083 14.167c0 .833-1.13 2.5-1.526 2.5-1.191 0-2.249-1.39-2.778-2.5-.529-1.39-.397-4.861 1.19-9.584 1.157-.846 2.318-1.116 3.531-1.25l.833 2.084"})]}),Hr),wIe=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 4l11.733 16h4.267l-11.733 -16z"}),N("path",{d:"M4 20l6.768 -6.768m2.46 -2.46l6.772 -6.772"})]}),ct),bIe=ge(N("polyline",{fill:"none",stroke:"currentColor",points:"20 6 9 17 4 12"}),{width:24,height:24}),V_=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M8.333 11.667a2.917 2.917 0 0 0 4.167 0l3.333-3.334a2.946 2.946 0 1 0-4.166-4.166l-.417.416"}),N("path",{d:"M11.667 8.333a2.917 2.917 0 0 0-4.167 0l-3.333 3.334a2.946 2.946 0 0 0 4.166 4.166l.417-.416"})]}),Hr),vIe=ge("M433.941 129.941l-83.882-83.882A48 48 0 0 0 316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 0 0-14.059-33.941zM224 416c-35.346 0-64-28.654-64-64 0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64zm96-304.52V212c0 6.627-5.373 12-12 12H76c-6.627 0-12-5.373-12-12V108c0-6.627 5.373-12 12-12h228.52c3.183 0 6.235 1.264 8.485 3.515l3.48 3.48A11.996 11.996 0 0 1 320 111.48z",{width:448,height:512}),kIe=ge("M252 54L203 8a28 27 0 00-20-8H28C12 0 0 12 0 27v195c0 15 12 26 28 26h204c15 0 28-11 28-26V73a28 27 0 00-8-19zM130 213c-21 0-37-16-37-36 0-19 16-35 37-35 20 0 37 16 37 35 0 20-17 36-37 36zm56-169v56c0 4-4 6-7 6H44c-4 0-7-2-7-6V42c0-4 3-7 7-7h133l4 2 3 2a7 7 0 012 5z M296 201l87 95-188 205-78 9c-10 1-19-8-18-20l9-84zm141-14l-41-44a31 31 0 00-46 0l-38 41 87 95 38-42c13-14 13-36 0-50z",{width:448,height:512}),j_=ge(N("path",{d:"m9.257 6.351.183.183H15.819c.34 0 .727.182 1.051.506.323.323.505.708.505 1.05v5.819c0 .316-.183.7-.52 1.035-.337.338-.723.522-1.037.522H4.182c-.352 0-.74-.181-1.058-.5-.318-.318-.499-.705-.499-1.057V5.182c0-.351.181-.736.5-1.054.32-.321.71-.503 1.057-.503H6.53l2.726 2.726Z",strokeWidth:"1.25"}),Hr),cyi=ge("M384 112v352c0 26.51-21.49 48-48 48H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h80c0-35.29 28.71-64 64-64s64 28.71 64 64h80c26.51 0 48 21.49 48 48zM192 40c-13.255 0-24 10.745-24 24s10.745 24 24 24 24-10.745 24-24-10.745-24-24-24m96 114v-20a6 6 0 0 0-6-6H102a6 6 0 0 0-6 6v20a6 6 0 0 0 6 6h180a6 6 0 0 0 6-6z",{width:384,height:512}),FIe=ge("M204.3 5C104.9 24.4 24.8 104.3 5.2 203.4c-37 187 131.7 326.4 258.8 306.7 41.2-6.4 61.4-54.6 42.5-91.7-23.1-45.4 9.9-98.4 60.9-98.4h79.7c35.8 0 64.8-29.6 64.9-65.3C511.5 97.1 368.1-26.9 204.3 5zM96 320c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm32-128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128-64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"),X_=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 16l1.465 1.638a2 2 0 1 1 -3.015 .099l1.55 -1.737z"}),N("path",{d:"M13.737 9.737c2.299 -2.3 3.23 -5.095 2.081 -6.245c-1.15 -1.15 -3.945 -.217 -6.244 2.082c-2.3 2.299 -3.231 5.095 -2.082 6.244c1.15 1.15 3.946 .218 6.245 -2.081z"}),N("path",{d:"M7.492 11.818c.362 .362 .768 .676 1.208 .934l6.895 4.047c1.078 .557 2.255 -.075 3.692 -1.512c1.437 -1.437 2.07 -2.614 1.512 -3.692c-.372 -.718 -1.72 -3.017 -4.047 -6.895a6.015 6.015 0 0 0 -.934 -1.208"})]}),ct),YIA=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M15 8h.01"}),N("path",{d:"M12 20h-5a3 3 0 0 1 -3 -3v-10a3 3 0 0 1 3 -3h10a3 3 0 0 1 3 3v5"}),N("path",{d:"M4 15l4 -4c.928 -.893 2.072 -.893 3 0l4 4"}),N("path",{d:"M14 14l1 -1c.617 -.593 1.328 -.793 2.009 -.598"}),N("path",{d:"M19 16v6"}),N("path",{d:"M22 19l-3 3l-3 -3"})]}),ct),xIe=ge("M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z",{width:512,height:512}),Cyi=ge("M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z",{width:448,height:512}),Byi=ge("M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z",{width:448,height:512}),SIe=ge("M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z"),Eyi=ge("M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"),HIA=ge(N("path",{d:"M7.5 10.833 4.167 7.5 7.5 4.167M4.167 7.5h9.166a3.333 3.333 0 0 1 0 6.667H12.5",strokeWidth:"1.25"}),Hr),KIA=ge(N("path",{d:"M12.5 10.833 15.833 7.5 12.5 4.167M15.833 7.5H6.667a3.333 3.333 0 1 0 0 6.667H7.5",strokeWidth:"1.25"}),Hr),LIe=ge("M504 256c0 136.997-111.043 248-248 248S8 392.997 8 256C8 119.083 119.043 8 256 8s248 111.083 248 248zM262.655 90c-54.497 0-89.255 22.957-116.549 63.758-3.536 5.286-2.353 12.415 2.715 16.258l34.699 26.31c5.205 3.947 12.621 3.008 16.665-2.122 17.864-22.658 30.113-35.797 57.303-35.797 20.429 0 45.698 13.148 45.698 32.958 0 14.976-12.363 22.667-32.534 33.976C247.128 238.528 216 254.941 216 296v4c0 6.627 5.373 12 12 12h56c6.627 0 12-5.373 12-12v-1.333c0-28.462 83.186-29.647 83.186-106.667 0-58.002-60.165-102-116.531-102zM256 338c-25.365 0-46 20.635-46 46 0 25.364 20.635 46 46 46s46-20.636 46-46c0-25.365-20.635-46-46-46z",{mirror:!0}),RIe=ge(N("path",{d:"M5 12.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5ZM15 7.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5ZM15 17.5a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5ZM7.25 8.917l5.5-2.834M7.25 11.083l5.5 2.834",strokeWidth:"1.5"}),Hr),dyi=ge("M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480H40c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24V296c0 13.3 10.7 24 24 24s24-10.7 24-24V184c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"),Iyi=ge("M16 5l-1.42 1.42-1.59-1.59V16h-1.98V4.83L9.42 6.42 8 5l4-4 4 4zm4 5v11c0 1.1-.9 2-2 2H6c-1.11 0-2-.9-2-2V10c0-1.11.89-2 2-2h3v2H6v11h12V10h-3V8h3c1.1 0 2 .89 2 2z",{width:24,height:24}),hyi=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M8 9h-1a2 2 0 0 0 -2 2v8a2 2 0 0 0 2 2h10a2 2 0 0 0 2 -2v-8a2 2 0 0 0 -2 -2h-1"}),N("path",{d:"M12 14v-11"}),N("path",{d:"M9 6l3 -3l3 3"})]}),ct),Qyi=ge(cA(At,{children:[N("path",{fill:"currentColor",d:"M40 5.6v6.1l-4.1.7c-8.9 1.4-16.5 6.9-20.6 15C13 32 10.9 43 12.4 43c.4 0 2.4-1.3 4.4-3 5-3.9 12.1-7 18.2-7.7l5-.6v12.8l11.2-11.3L62.5 22 51.2 10.8 40-.5v6.1zm10.2 22.6L44 34.5v-6.8l-6.9.6c-3.9.3-9.8 1.7-13.2 3.1-3.5 1.4-6.5 2.4-6.7 2.2-.9-1 3-7.5 6.4-10.8C28 18.6 34.4 16 40.1 16c3.7 0 3.9-.1 3.9-3.2V9.5l6.2 6.3 6.3 6.2-6.3 6.2z"}),N("path",{stroke:"currentColor",fill:"currentColor",d:"M0 36v20h48v-6.2c0-6 0-6.1-2-4.3-1.1 1-2 2.9-2 4.2V52H4V34c0-17.3-.1-18-2-18s-2 .7-2 20z"})]}),{width:64,height:64}),pyi=ge(N("path",{stroke:"currentColor",strokeWidth:"40",fill:"currentColor",d:"M148 560a318 318 0 0 0 522 110 316 316 0 0 0 0-450 316 316 0 0 0-450 0c-11 11-21 22-30 34v4h47c25 0 46 21 46 46s-21 45-46 45H90c-13 0-25-6-33-14-9-9-14-20-14-33V156c0-25 20-45 45-45s45 20 45 45v32l1 1a401 401 0 0 1 623 509l212 212a42 42 0 0 1-59 59L698 757A401 401 0 0 1 65 570a42 42 0 0 1 83-10z"}),{width:1024}),NIe=cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M12 10l0 10"}),N("path",{d:"M12 10l4 4"}),N("path",{d:"M12 10l-4 4"}),N("path",{d:"M4 4l16 0"})]}),GIe=cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M12 5l0 14"}),N("path",{d:"M16 9l-4 -4"}),N("path",{d:"M8 9l4 -4"})]}),JIA=ge(GIe,ct),OIA=ge(GIe,{...ct,style:{transform:"rotate(180deg)"}}),PIA=ge(NIe,ct),_IA=ge(NIe,{...ct,style:{transform:"rotate(180deg)"}}),WIA=ge(cA(At,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M3.333 3.333h13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M13.542 6.458h-.417c-.92 0-1.667.747-1.667 1.667v7.083c0 .92.746 1.667 1.667 1.667h.417c.92 0 1.666-.746 1.666-1.667V8.125c0-.92-.746-1.667-1.666-1.667ZM6.875 6.458h-.417c-.92 0-1.666.747-1.666 1.667v3.75c0 .92.746 1.667 1.666 1.667h.417c.92 0 1.667-.746 1.667-1.667v-3.75c0-.92-.747-1.667-1.667-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),qIA=ge(cA(At,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M3.333 16.667h13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M6.875 3.125h-.417c-.92 0-1.666.746-1.666 1.667v7.083c0 .92.746 1.667 1.666 1.667h.417c.92 0 1.667-.746 1.667-1.667V4.792c0-.92-.747-1.667-1.667-1.667ZM13.542 5.817h-.417c-.92 0-1.667.747-1.667 1.667v4.391c0 .92.746 1.667 1.667 1.667h.417c.92 0 1.666-.746 1.666-1.667V7.484c0-.92-.746-1.667-1.666-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),zIA=ge(cA(At,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M3.333 3.333v13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M15.208 4.792H8.125c-.92 0-1.667.746-1.667 1.666v.417c0 .92.747 1.667 1.667 1.667h7.083c.92 0 1.667-.747 1.667-1.667v-.417c0-.92-.746-1.666-1.667-1.666ZM12.516 11.458H8.125c-.92 0-1.667.746-1.667 1.667v.417c0 .92.747 1.666 1.667 1.666h4.391c.92 0 1.667-.746 1.667-1.666v-.417c0-.92-.746-1.667-1.667-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),ZIA=ge(cA(At,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M16.667 3.333v13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M11.875 4.792H4.792c-.92 0-1.667.746-1.667 1.666v.417c0 .92.746 1.667 1.667 1.667h7.083c.92 0 1.667-.747 1.667-1.667v-.417c0-.92-.746-1.666-1.667-1.666ZM11.683 11.458H7.292c-.92 0-1.667.746-1.667 1.667v.417c0 .92.746 1.666 1.667 1.666h4.39c.921 0 1.667-.746 1.667-1.666v-.417c0-.92-.746-1.667-1.666-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),UIe=ge(cA(At,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M16.667 3.333v13.334M3.333 3.333v13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M14.375 10.208v-.416c0-.92-.746-1.667-1.667-1.667H7.292c-.92 0-1.667.746-1.667 1.667v.416c0 .92.746 1.667 1.667 1.667h5.416c.92 0 1.667-.746 1.667-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),MIe=ge(cA(At,{children:[cA("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M3.333 3.333h13.334M3.333 16.667h13.334",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M10.208 5.625h-.416c-.92 0-1.667.746-1.667 1.667v5.416c0 .92.746 1.667 1.667 1.667h.416c.92 0 1.667-.746 1.667-1.667V7.292c0-.92-.746-1.667-1.667-1.667Z"})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),VIA=ge(cA("g",{stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M1.667 10h2.916",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M8.333 10h3.334",strokeLinejoin:"round"}),N("path",{d:"M15.417 10h2.916",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M6.875 4.792h-.417c-.92 0-1.666.746-1.666 1.666v7.084c0 .92.746 1.666 1.666 1.666h.417c.92 0 1.667-.746 1.667-1.666V6.458c0-.92-.747-1.666-1.667-1.666ZM13.542 6.458h-.417c-.92 0-1.667.747-1.667 1.667v3.75c0 .92.746 1.667 1.667 1.667h.417c.92 0 1.666-.746 1.666-1.667v-3.75c0-.92-.746-1.667-1.666-1.667Z"})]}),Hr),jIA=ge(cA("g",{stroke:"currentColor",strokeWidth:"1.25",children:[N("path",{d:"M10 18.333v-2.916",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M10 11.667V8.333",strokeLinejoin:"round"}),N("path",{d:"M10 4.583V1.667",strokeLinecap:"round",strokeLinejoin:"round"}),N("path",{d:"M4.792 13.125v.417c0 .92.746 1.666 1.666 1.666h7.084c.92 0 1.666-.746 1.666-1.666v-.417c0-.92-.746-1.667-1.666-1.667H6.458c-.92 0-1.666.746-1.666 1.667ZM6.458 6.458v.417c0 .92.747 1.667 1.667 1.667h3.75c.92 0 1.667-.747 1.667-1.667v-.417c0-.92-.746-1.666-1.667-1.666h-3.75c-.92 0-1.667.746-1.667 1.666Z"})]}),Hr),XIA=ge(cA("g",{strokeWidth:"1.5",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("circle",{cx:"9",cy:"7",r:"4"}),N("path",{d:"M3 21v-2a4 4 0 0 1 4 -4h4a4 4 0 0 1 4 4v2"}),N("path",{d:"M16 3.13a4 4 0 0 1 0 7.75"}),N("path",{d:"M21 21v-2a4 4 0 0 0 -3 -3.85"})]}),ct),fyi=ge("M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm115.7 272l-176 101c-15.8 8.8-35.7-2.5-35.7-21V152c0-18.4 19.8-29.8 35.7-21l176 107c16.4 9.2 16.4 32.9 0 42z"),myi=ge("M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm96 328c0 8.8-7.2 16-16 16H176c-8.8 0-16-7.2-16-16V176c0-8.8 7.2-16 16-16h160c8.8 0 16 7.2 16 16v160z"),u2=ge(cA(At,{children:[N("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:N("path",{d:"M15 5 5 15M5 5l10 10"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),Dyi=ge("M464 0c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48H176c-26.51 0-48-21.49-48-48V48c0-26.51 21.49-48 48-48h288M176 416c-44.112 0-80-35.888-80-80V128H48c-26.51 0-48 21.49-48 48v288c0 26.51 21.49 48 48 48h288c26.51 0 48-21.49 48-48v-48H176z",{mirror:!0}),yyi=ge("M11.553 22.894a.998.998 0 00.894 0s3.037-1.516 5.465-4.097C19.616 16.987 21 14.663 21 12V5a1 1 0 00-.649-.936l-8-3a.998.998 0 00-.702 0l-8 3A1 1 0 003 5v7c0 2.663 1.384 4.987 3.088 6.797 2.428 2.581 5.465 4.097 5.465 4.097zm-1.303-8.481l6.644-6.644a.856.856 0 111.212 1.212l-7.25 7.25a.856.856 0 01-1.212 0l-3.75-3.75a.856.856 0 111.212-1.212l3.144 3.144z",{width:24}),wyi=ge("M369.9 97.9L286 14C277 5 264.8-.1 252.1-.1H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V131.9c0-12.7-5.1-25-14.1-34zM332.1 128H256V51.9l76.1 76.1zM48 464V48h160v104c0 13.3 10.7 24 24 24h104v288H48zm32-48h224V288l-23.5-23.5c-4.7-4.7-12.3-4.7-17 0L176 352l-39.5-39.5c-4.7-4.7-12.3-4.7-17 0L80 352v64zm48-240c-26.5 0-48 21.5-48 48s21.5 48 48 48 48-21.5 48-48-21.5-48-48-48z",{width:384,height:512}),$IA=gi(({theme:A})=>ge(cA(At,{children:[N("path",{d:"M25 26H111V111H25",fill:ZC(A)}),N("path",{d:"M25 111C25 80.2068 25 49.4135 25 26M25 26C48.6174 26 72.2348 26 111 26H25ZM25 26C53.3671 26 81.7343 26 111 26H25ZM111 26C111 52.303 111 78.606 111 111V26ZM111 26C111 51.2947 111 76.5893 111 111V26ZM111 111C87.0792 111 63.1585 111 25 111H111ZM111 111C87.4646 111 63.9293 111 25 111H111ZM25 111C25 81.1514 25 51.3028 25 26V111Z",stroke:ZC(A),strokeWidth:"2"}),N("path",{d:"M100 100H160V160H100",fill:ZC(A)}),N("path",{d:"M100 160C100 144.106 100 128.211 100 100M100 100C117.706 100 135.412 100 160 100H100ZM100 100C114.214 100 128.428 100 160 100H100ZM160 100C160 120.184 160 140.369 160 160V100ZM160 100C160 113.219 160 126.437 160 160V100ZM160 160C145.534 160 131.068 160 100 160H160ZM160 160C143.467 160 126.934 160 100 160H160ZM100 160C100 143.661 100 127.321 100 100V160Z",stroke:ZC(A),strokeWidth:"2"}),cA("g",{fill:CIe(A),stroke:ZC(A),strokeWidth:"6",children:[N("rect",{x:"2.5",y:"2.5",width:"30",height:"30"}),N("rect",{x:"2.5",y:"149.5",width:"30",height:"30"}),N("rect",{x:"147.5",y:"149.5",width:"30",height:"30"}),N("rect",{x:"147.5",y:"2.5",width:"30",height:"30"})]})]}),{width:182,height:182,mirror:!0})),AhA=gi(({theme:A})=>ge(cA(At,{children:[N("path",{d:"M25 26H111V111H25",fill:ZC(A)}),N("path",{d:"M25 111C25 80.2068 25 49.4135 25 26M25 26C48.6174 26 72.2348 26 111 26H25ZM25 26C53.3671 26 81.7343 26 111 26H25ZM111 26C111 52.303 111 78.606 111 111V26ZM111 26C111 51.2947 111 76.5893 111 111V26ZM111 111C87.0792 111 63.1585 111 25 111H111ZM111 111C87.4646 111 63.9293 111 25 111H111ZM25 111C25 81.1514 25 51.3028 25 26V111Z",stroke:ZC(A),strokeWidth:"2"}),N("path",{d:"M100 100H160V160H100",fill:ZC(A)}),N("path",{d:"M100 160C100 144.106 100 128.211 100 100M100 100C117.706 100 135.412 100 160 100H100ZM100 100C114.214 100 128.428 100 160 100H100ZM160 100C160 120.184 160 140.369 160 160V100ZM160 100C160 113.219 160 126.437 160 160V100ZM160 160C145.534 160 131.068 160 100 160H160ZM160 160C143.467 160 126.934 160 100 160H160ZM100 160C100 143.661 100 127.321 100 100V160Z",stroke:ZC(A),strokeWidth:"2"}),cA("g",{fill:CIe(A),stroke:ZC(A),strokeWidth:"6",children:[N("rect",{x:"2.5",y:"2.5",width:"30",height:"30"}),N("rect",{x:"78.5",y:"149.5",width:"30",height:"30"}),N("rect",{x:"147.5",y:"149.5",width:"30",height:"30"}),N("rect",{x:"147.5",y:"78.5",width:"30",height:"30"}),N("rect",{x:"105.5",y:"2.5",width:"30",height:"30"}),N("rect",{x:"2.5",y:"102.5",width:"30",height:"30"})]})]}),{width:182,height:182,mirror:!0})),TIe=ge(N("g",{strokeWidth:1.25,children:N("path",{d:"M5.879 2.625h8.242a3.27 3.27 0 0 1 3.254 3.254v8.242a3.27 3.27 0 0 1-3.254 3.254H5.88a3.27 3.27 0 0 1-3.254-3.254V5.88A3.27 3.27 0 0 1 5.88 2.626l-.001-.001ZM4.518 16.118l7.608-12.83m.198 13.934 5.051-9.897M2.778 9.675l9.348-6.387m-7.608 12.83 12.857-8.793"})}),Hr),YIe=ge(cA(At,{children:[N("path",{d:"M5.879 2.625h8.242a3.254 3.254 0 0 1 3.254 3.254v8.242a3.254 3.254 0 0 1-3.254 3.254H5.88a3.254 3.254 0 0 1-3.254-3.254V5.88a3.254 3.254 0 0 1 3.254-3.254Z",stroke:"currentColor",strokeWidth:"1.25"}),N("mask",{id:"FillHachureIcon",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:2,y:2,width:16,height:16,children:N("path",{d:"M5.879 2.625h8.242a3.254 3.254 0 0 1 3.254 3.254v8.242a3.254 3.254 0 0 1-3.254 3.254H5.88a3.254 3.254 0 0 1-3.254-3.254V5.88a3.254 3.254 0 0 1 3.254-3.254Z",fill:"currentColor",stroke:"currentColor",strokeWidth:"1.25"})}),N("g",{mask:"url(#FillHachureIcon)",children:N("path",{d:"M2.258 15.156 15.156 2.258M7.324 20.222 20.222 7.325m-20.444 5.35L12.675-.222m-8.157 18.34L17.416 5.22",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})})]}),Hr),HIe=ge(cA(At,{children:[cA("g",{clipPath:"url(#a)",children:[N("path",{d:"M5.879 2.625h8.242a3.254 3.254 0 0 1 3.254 3.254v8.242a3.254 3.254 0 0 1-3.254 3.254H5.88a3.254 3.254 0 0 1-3.254-3.254V5.88a3.254 3.254 0 0 1 3.254-3.254Z",stroke:"currentColor",strokeWidth:"1.25"}),N("mask",{id:"FillCrossHatchIcon",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:-1,y:-1,width:22,height:22,children:N("path",{d:"M2.426 15.044 15.044 2.426M7.383 20 20 7.383M0 12.617 12.617 0m-7.98 17.941L17.256 5.324m-2.211 12.25L2.426 4.956M20 12.617 7.383 0m5.234 20L0 7.383m17.941 7.98L5.324 2.745",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),N("g",{mask:"url(#FillCrossHatchIcon)",children:N("path",{d:"M14.121 2H5.88A3.879 3.879 0 0 0 2 5.879v8.242A3.879 3.879 0 0 0 5.879 18h8.242A3.879 3.879 0 0 0 18 14.121V5.88A3.879 3.879 0 0 0 14.121 2Z",fill:"currentColor"})})]}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),KIe=ge(cA(At,{children:[N("g",{clipPath:"url(#a)",children:N("path",{d:"M4.91 2.625h10.18a2.284 2.284 0 0 1 2.285 2.284v10.182a2.284 2.284 0 0 1-2.284 2.284H4.909a2.284 2.284 0 0 1-2.284-2.284V4.909a2.284 2.284 0 0 1 2.284-2.284Z",stroke:"currentColor",strokeWidth:"1.25"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),{...Hr,fill:"currentColor"}),ehA=ge(N(At,{children:N("path",{d:"M4.167 10h11.666",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),Hr),JIe=ge(N("path",{d:"M5 10h10",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round"}),Hr),OIe=ge(N("path",{d:"M5 10h10",stroke:"currentColor",strokeWidth:"3.75",strokeLinecap:"round",strokeLinejoin:"round"}),Hr),byi=gi(({theme:A})=>ge(N("path",{d:"M6 10H34",stroke:ZC(A),strokeWidth:2,fill:"none",strokeLinecap:"round"}),{width:40,height:20})),PIe=ge(cA("g",{strokeWidth:"2",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 12h2"}),N("path",{d:"M17 12h2"}),N("path",{d:"M11 12h2"})]}),ct),_Ie=ge(cA("g",{strokeWidth:"2",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 12v.01"}),N("path",{d:"M8 12v.01"}),N("path",{d:"M12 12v.01"}),N("path",{d:"M16 12v.01"}),N("path",{d:"M20 12v.01"})]}),ct),WIe=ge(N("path",{d:"M2.5 12.038c1.655-.885 5.9-3.292 8.568-4.354 2.668-1.063.101 2.821 1.32 3.104 1.218.283 5.112-1.814 5.112-1.814",strokeWidth:"1.25"}),Hr),qIe=ge(N("path",{d:"M2.5 12.563c1.655-.886 5.9-3.293 8.568-4.355 2.668-1.062.101 2.822 1.32 3.105 1.218.283 5.112-1.814 5.112-1.814m-13.469 2.23c2.963-1.586 6.13-5.62 7.468-4.998 1.338.623-1.153 4.11-.132 5.595 1.02 1.487 6.133-1.43 6.133-1.43",strokeWidth:"1.25"}),Hr),zIe=ge(N("path",{d:"M2.5 11.936c1.737-.879 8.627-5.346 10.42-5.268 1.795.078-.418 5.138.345 5.736.763.598 3.53-1.789 4.235-2.147M2.929 9.788c1.164-.519 5.47-3.28 6.987-3.114 1.519.165 1 3.827 2.121 4.109 1.122.281 3.839-2.016 4.606-2.42",strokeWidth:"1.25"}),Hr),ZIe=ge(cA("svg",{strokeWidth:"1.5",children:[N("path",{d:"M3.33334 9.99998V6.66665C3.33334 6.04326 3.33403 4.9332 3.33539 3.33646C4.95233 3.33436 6.06276 3.33331 6.66668 3.33331H10"}),N("path",{d:"M13.3333 3.33331V3.34331"}),N("path",{d:"M16.6667 3.33331V3.34331"}),N("path",{d:"M16.6667 6.66669V6.67669"}),N("path",{d:"M16.6667 10V10.01"}),N("path",{d:"M3.33334 13.3333V13.3433"}),N("path",{d:"M16.6667 13.3333V13.3433"}),N("path",{d:"M3.33334 16.6667V16.6767"}),N("path",{d:"M6.66666 16.6667V16.6767"}),N("path",{d:"M10 16.6667V16.6767"}),N("path",{d:"M13.3333 16.6667V16.6767"}),N("path",{d:"M16.6667 16.6667V16.6767"})]}),Hr),VIe=ge(cA("g",{strokeWidth:"1.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 12v-4a4 4 0 0 1 4 -4h4"}),N("line",{x1:"16",y1:"4",x2:"16",y2:"4.01"}),N("line",{x1:"20",y1:"4",x2:"20",y2:"4.01"}),N("line",{x1:"20",y1:"8",x2:"20",y2:"8.01"}),N("line",{x1:"20",y1:"12",x2:"20",y2:"12.01"}),N("line",{x1:"4",y1:"16",x2:"4",y2:"16.01"}),N("line",{x1:"20",y1:"16",x2:"20",y2:"16.01"}),N("line",{x1:"4",y1:"20",x2:"4",y2:"20.01"}),N("line",{x1:"8",y1:"20",x2:"8",y2:"20.01"}),N("line",{x1:"12",y1:"20",x2:"12",y2:"20.01"}),N("line",{x1:"16",y1:"20",x2:"16",y2:"20.01"}),N("line",{x1:"20",y1:"20",x2:"20",y2:"20.01"})]}),ct),jIe=ge(cA("g",{stroke:"currentColor",opacity:0.3,strokeWidth:2,children:[N("path",{d:"M12 12l9 0"}),N("path",{d:"M3 9l6 6"}),N("path",{d:"M3 15l6 -6"})]}),ct),XIe=gi(({flip:A=!1})=>ge(cA("g",{transform:A?"translate(40, 0) scale(-1, 1)":"",stroke:"currentColor",strokeWidth:2,fill:"none",children:[N("path",{d:"M34 10H6M34 10L27 5M34 10L27 15"}),N("path",{d:"M27.5 5L34.5 10L27.5 15"})]}),{width:40,height:20})),$Ie=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"currentColor",transform:A?"translate(40, 0) scale(-1, 1)":"",children:[N("path",{d:"M32 10L6 10",strokeWidth:2}),N("circle",{r:"4",transform:"matrix(-1 0 0 1 30 10)"})]}),{width:40,height:20})),Ahe=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"none",transform:A?"translate(40, 0) scale(-1, 1)":"",strokeWidth:2,children:[N("path",{d:"M26 10L6 10"}),N("circle",{r:"4",transform:"matrix(-1 0 0 1 30 10)"})]}),{width:40,height:20})),ehe=gi(({flip:A=!1})=>ge(N("g",{transform:A?"translate(40, 0) scale(-1, 1)":"",children:N("path",{d:"M34 10H5.99996M34 10L34 5M34 10L34 15",stroke:"currentColor",strokeWidth:2,fill:"none"})}),{width:40,height:20})),the=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"currentColor",transform:A?"translate(40, 0) scale(-1, 1)":"",children:[N("path",{d:"M32 10L6 10",strokeWidth:2}),N("path",{d:"M27.5 5.5L34.5 10L27.5 14.5L27.5 5.5"})]}),{width:40,height:20})),rhe=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"none",transform:A?"translate(40, 0) scale(-1, 1)":"",strokeWidth:2,strokeLinejoin:"round",children:[N("path",{d:"M6,9.5H27"}),N("path",{d:"M27,5L34,10L27,14Z",fill:"none"})]}),{width:40,height:20})),ihe=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"currentColor",transform:A?"translate(40, 0) scale(-1, 1)":"",strokeLinejoin:"round",strokeWidth:2,children:[N("path",{d:"M6,9.5H20"}),N("path",{d:"M27,5L34,10L27,14L20,9.5Z"})]}),{width:40,height:20})),uhe=gi(({flip:A=!1})=>ge(cA("g",{stroke:"currentColor",fill:"none",transform:A?"translate(40, 0) scale(-1, 1)":"",strokeLinejoin:"round",strokeWidth:2,children:[N("path",{d:"M6,9.5H20"}),N("path",{d:"M27,5L34,10L27,14L20,9.5Z"})]}),{width:40,height:20})),ahe=gi(({flip:A=!1})=>ge(N("g",{stroke:"currentColor",fill:"none",transform:A?"":"translate(40, 0) scale(-1, 1)",strokeLinejoin:"round",strokeWidth:2,children:N("path",{d:"M34,10 H6 M15,10 L7,5 M15,10 L7,15"})}),{width:40,height:20})),nhe=gi(({flip:A=!1})=>ge(N("g",{stroke:"currentColor",fill:"none",transform:A?"":"translate(40, 0) scale(-1, 1)",strokeLinejoin:"round",strokeWidth:2,children:N("path",{d:"M34,10 H6 M15,10 L15,15 L15,5"})}),{width:40,height:20})),ohe=gi(({flip:A=!1})=>ge(N("g",{stroke:"currentColor",fill:"none",transform:A?"":"translate(40, 0) scale(-1, 1)",strokeLinejoin:"round",strokeWidth:2,children:N("path",{d:"M34,10 H6 M15,10 L15,16 L15,4 M15,10 L7,5 M15,10 L7,15"})}),{width:40,height:20})),she=ge(cA(At,{children:[N("g",{clipPath:"url(#a)",children:N("path",{d:"M14.167 6.667a3.333 3.333 0 0 0-3.334-3.334H9.167a3.333 3.333 0 0 0 0 6.667h1.666a3.333 3.333 0 0 1 0 6.667H9.167a3.333 3.333 0 0 1-3.334-3.334",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),lhe=ge(cA(At,{children:[N("g",{clipPath:"url(#a)",children:N("path",{d:"M5 16.667V3.333L10 15l5-11.667v13.334",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),ghe=ge(cA(At,{children:[N("g",{clipPath:"url(#a)",children:N("path",{d:"M5.833 3.333v13.334h8.334",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),che=ge(N(At,{children:N("path",{d:"m1.667 3.333 6.666 13.334M8.333 3.333 1.667 16.667M11.667 3.333v13.334h6.666",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})}),Hr),W8=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 7v-2h13v2"}),N("path",{d:"M10 5v14"}),N("path",{d:"M12 19h-4"}),N("path",{d:"M15 13v-1h6v1"}),N("path",{d:"M18 12v7"}),N("path",{d:"M17 19h2"})]}),ct),v$t=ge(N(At,{children:cA("g",{stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M7 12h10"}),N("path",{d:"M7 5v14"}),N("path",{d:"M17 5v14"}),N("path",{d:"M15 19h4"}),N("path",{d:"M15 5h4"}),N("path",{d:"M5 19h4"}),N("path",{d:"M5 5h4"})]})}),ct),m8=ge(N(At,{children:N("g",{stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:N("path",{d:"M5.833 16.667v-10a3.333 3.333 0 0 1 3.334-3.334h1.666a3.333 3.333 0 0 1 3.334 3.334v10M5.833 10.833h8.334"})})}),Hr),m_=ge(cA(At,{children:[N("g",{clipPath:"url(#a)",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",children:N("path",{d:"M5.833 6.667 2.5 10l3.333 3.333M14.167 6.667 17.5 10l-3.333 3.333M11.667 3.333 8.333 16.667"})}),N("defs",{children:N("clipPath",{id:"a",children:N("path",{fill:"#fff",d:"M0 0h20v20H0z"})})})]}),Hr),Che=ge(cA("g",{stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"8",x2:"20",y2:"8"}),N("line",{x1:"4",y1:"12",x2:"12",y2:"12"}),N("line",{x1:"4",y1:"16",x2:"16",y2:"16"})]}),ct),Bhe=ge(cA("g",{stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"8",x2:"20",y2:"8"}),N("line",{x1:"8",y1:"12",x2:"16",y2:"12"}),N("line",{x1:"6",y1:"16",x2:"18",y2:"16"})]}),ct),Ehe=ge(cA("g",{stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"8",x2:"20",y2:"8"}),N("line",{x1:"10",y1:"12",x2:"20",y2:"12"}),N("line",{x1:"8",y1:"16",x2:"20",y2:"16"})]}),ct),dhe=gi(({theme:A})=>ge(cA("g",{strokeWidth:"1.5",stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"4",x2:"20",y2:"4"}),N("rect",{x:"9",y:"8",width:"6",height:"12",rx:"2"})]}),ct)),Ihe=gi(({theme:A})=>ge(cA("g",{strokeWidth:"2",stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"20",x2:"20",y2:"20"}),N("rect",{x:"9",y:"4",width:"6",height:"12",rx:"2"})]}),ct)),hhe=gi(({theme:A})=>ge(cA("g",{strokeWidth:"1.5",stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("line",{x1:"4",y1:"12",x2:"9",y2:"12"}),N("line",{x1:"15",y1:"12",x2:"20",y2:"12"}),N("rect",{x:"9",y:"6",width:"6",height:"12",rx:"2"})]}),ct)),thA=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M21 19h-18l9 -15"}),N("path",{d:"M20.615 15.171h.015"}),N("path",{d:"M19.515 11.771h.015"}),N("path",{d:"M17.715 8.671h.015"}),N("path",{d:"M15.415 5.971h.015"})]}),ct),Qhe=ge(N("path",{d:"M537.6 226.6c4.1-10.7 6.4-22.4 6.4-34.6 0-53-43-96-96-96-19.7 0-38.1 6-53.3 16.2C367 64.2 315.3 32 256 32c-88.4 0-160 71.6-160 160 0 2.7.1 5.4.2 8.1C40.2 219.8 0 273.2 0 336c0 79.5 64.5 144 144 144h368c70.7 0 128-57.3 128-128 0-61.9-44-113.6-102.4-125.4zM393.4 288H328v112c0 8.8-7.2 16-16 16h-48c-8.8 0-16-7.2-16-16V288h-65.4c-14.3 0-21.4-17.2-11.3-27.3l105.4-105.4c6.2-6.2 16.4-6.2 22.6 0l105.4 105.4c10.1 10.1 2.9 27.3-11.3 27.3z",fill:"currentColor"}),{width:640,height:512}),vyi=ge(N("path",{d:"M480 416C497.7 416 512 430.3 512 448C512 465.7 497.7 480 480 480H150.6C133.7 480 117.4 473.3 105.4 461.3L25.37 381.3C.3786 356.3 .3786 315.7 25.37 290.7L258.7 57.37C283.7 32.38 324.3 32.38 349.3 57.37L486.6 194.7C511.6 219.7 511.6 260.3 486.6 285.3L355.9 416H480zM265.4 416L332.7 348.7L195.3 211.3L70.63 336L150.6 416L265.4 416z"})),rhA=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M8 13v-7.5a1.5 1.5 0 0 1 3 0v6.5"}),N("path",{d:"M11 5.5v-2a1.5 1.5 0 1 1 3 0v8.5"}),N("path",{d:"M14 5.5a1.5 1.5 0 0 1 3 0v6.5"}),N("path",{d:"M17 7.5a1.5 1.5 0 0 1 3 0v8.5a6 6 0 0 1 -6 6h-2h.208a6 6 0 0 1 -5.012 -2.7a69.74 69.74 0 0 1 -.196 -.3c-.312 -.479 -1.407 -2.388 -3.286 -5.728a1.5 1.5 0 0 1 .536 -2.022a1.867 1.867 0 0 1 2.28 .28l1.47 1.47"})]}),ct),ihA=ge(cA(At,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2 -2v-2"}),N("path",{d:"M7 11l5 5l5 -5"}),N("path",{d:"M12 4l0 12"})]}),ct),$_=ge(cA(At,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M8 8m0 2a2 2 0 0 1 2 -2h8a2 2 0 0 1 2 2v8a2 2 0 0 1 -2 2h-8a2 2 0 0 1 -2 -2z"}),N("path",{d:"M16 8v-2a2 2 0 0 0 -2 -2h-8a2 2 0 0 0 -2 2v8a2 2 0 0 0 2 2h2"})]}),ct),phe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M7 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"}),N("path",{d:"M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"}),N("path",{d:"M9.15 14.85l8.85 -10.85"}),N("path",{d:"M6 4l8.85 10.85"})]}),ct),fhe=ge(cA(At,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0"}),N("path",{d:"M12 17l0 .01"}),N("path",{d:"M12 13.5a1.5 1.5 0 0 1 1 -1.5a2.6 2.6 0 1 0 -3 -4"})]}),ct),kyi=ge(cA(At,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M7 4v16l13 -8z"})]}),ct),Fyi=ge(cA(At,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M17 4h-10a3 3 0 0 0 -3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3 -3v-10a3 3 0 0 0 -3 -3z",strokeWidth:"0",fill:"currentColor"})]}),ct),mhe=ge(cA(At,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 12l5 5l10 -10"})]}),ct),Dhe=ge(cA(At,{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M10.24 3.957l-8.422 14.06a1.989 1.989 0 0 0 1.7 2.983h16.845a1.989 1.989 0 0 0 1.7 -2.983l-8.423 -14.06a1.989 1.989 0 0 0 -3.4 0z"}),N("path",{d:"M12 9v4"}),N("path",{d:"M12 17h.01"})]}),ct),yhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M11 7l6 6"}),N("path",{d:"M4 16l11.7 -11.7a1 1 0 0 1 1.4 0l2.6 2.6a1 1 0 0 1 0 1.4l-11.7 11.7h-4v-4z"})]}),ct),whe=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M12 3l-4 7h8z"}),N("path",{d:"M17 17m-3 0a3 3 0 1 0 6 0a3 3 0 1 0 -6 0"}),N("path",{d:"M4 14m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z"})]}),ct),uhA=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 7l16 0"}),N("path",{d:"M4 17l16 0"}),N("path",{d:"M7 4l0 16"}),N("path",{d:"M17 4l0 16"})]}),ct),ahA=ge(N("path",{fill:"currentColor",d:"M407.48,111.18C335.587,108.103 269.573,152.338 245.08,220C220.587,152.338 154.573,108.103 82.68,111.18C80.285,168.229 107.577,222.632 154.74,254.82C178.908,271.419 193.35,298.951 193.27,328.27L193.27,379.13L296.9,379.13L296.9,328.27C296.816,298.953 311.255,271.42 335.42,254.82C382.596,222.644 409.892,168.233 407.48,111.18Z"})),q8=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{d:"M4.16602 10H15.8327"}),N("path",{d:"M12.5 13.3333L15.8333 10"}),N("path",{d:"M12.5 6.66666L15.8333 9.99999"})]}),Hr),nhA=ge(cA("g",{fill:"none",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round",transform:"rotate(90 10 10)",children:[N("path",{clipRule:"evenodd",d:"m9.644 13.69 7.774-7.773a2.357 2.357 0 0 0-3.334-3.334l-7.773 7.774L8 12l1.643 1.69Z"}),N("path",{d:"m13.25 3.417 3.333 3.333M10 10l2-2M5 15l3-3M2.156 17.894l1-1M5.453 19.029l-.144-1.407M2.377 11.887l.866 1.118M8.354 17.273l-1.194-.758M.953 14.652l1.408.13"})]}),20),ohA=ge(cA("g",{stroke:"currentColor",fill:"none",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z"}),N("path",{d:"M6 21l15 -15l-3 -3l-15 15l3 3"}),N("path",{d:"M15 6l3 3"}),N("path",{d:"M9 3a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2"}),N("path",{d:"M19 13a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2"})]}),ct),xyi=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z"}),N("path",{d:"M6 21l15 -15l-3 -3l-15 15l3 3"}),N("path",{d:"M15 6l3 3"}),N("path",{d:"M9 3a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2"}),N("path",{d:"M19 13a2 2 0 0 0 2 2a2 2 0 0 0 -2 2a2 2 0 0 0 -2 -2a2 2 0 0 0 2 -2"})]}),ct),Syi=ge(cA("g",{stroke:"currentColor",fill:"none",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M11.217 19.384a3.501 3.501 0 0 0 6.783 -1.217v-5.167l-6 -3.35"}),N("path",{d:"M5.214 15.014a3.501 3.501 0 0 0 4.446 5.266l4.34 -2.534v-6.946"}),N("path",{d:"M6 7.63c-1.391 -.236 -2.787 .395 -3.534 1.689a3.474 3.474 0 0 0 1.271 4.745l4.263 2.514l6 -3.348"}),N("path",{d:"M12.783 4.616a3.501 3.501 0 0 0 -6.783 1.217v5.067l6 3.45"}),N("path",{d:"M18.786 8.986a3.501 3.501 0 0 0 -4.446 -5.266l-4.34 2.534v6.946"}),N("path",{d:"M18 16.302c1.391 .236 2.787 -.395 3.534 -1.689a3.474 3.474 0 0 0 -1.271 -4.745l-4.308 -2.514l-5.955 3.42"})]}),ct),bhe=ge(cA("g",{stroke:"currentColor",fill:"none",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2"}),N("path",{d:"M4 16v2a2 2 0 0 0 2 2h2"}),N("path",{d:"M16 4h2a2 2 0 0 1 2 2v2"}),N("path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2"})]}),ct),AW=ge(cA("g",{stroke:"currentColor",fill:"none",strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M10 12a2 2 0 1 0 4 0a2 2 0 0 0 -4 0"}),N("path",{d:"M21 12c-2.4 4 -5.4 6 -9 6c-3.6 0 -6.6 -2 -9 -6c2.4 -4 5.4 -6 9 -6c3.6 0 6.6 2 9 6"})]}),ct),vhe=ge(cA("g",{stroke:"currentColor",fill:"none",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M10.585 10.587a2 2 0 0 0 2.829 2.828"}),N("path",{d:"M16.681 16.673a8.717 8.717 0 0 1 -4.681 1.327c-3.6 0 -6.6 -2 -9 -6c1.272 -2.12 2.712 -3.678 4.32 -4.674m2.86 -1.146a9.055 9.055 0 0 1 1.82 -.18c3.6 0 6.6 2 9 6c-.666 1.11 -1.379 2.067 -2.138 2.87"}),N("path",{d:"M3 3l18 18"})]}),ct),khe=ge(cA("g",{stroke:"currentColor",fill:"none",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M15.5 13a3.5 3.5 0 0 0 -3.5 3.5v1a3.5 3.5 0 0 0 7 0v-1.8"}),N("path",{d:"M8.5 13a3.5 3.5 0 0 1 3.5 3.5v1a3.5 3.5 0 0 1 -7 0v-1.8"}),N("path",{d:"M17.5 16a3.5 3.5 0 0 0 0 -7h-.5"}),N("path",{d:"M19 9.3v-2.8a3.5 3.5 0 0 0 -7 0"}),N("path",{d:"M6.5 16a3.5 3.5 0 0 1 0 -7h.5"}),N("path",{d:"M5 9.3v-2.8a3.5 3.5 0 0 1 7 0v10"})]}),ct),Fhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M15.5 13a3.5 3.5 0 0 0 -3.5 3.5v1a3.5 3.5 0 0 0 7 0v-1.8"}),N("path",{d:"M8.5 13a3.5 3.5 0 0 1 3.5 3.5v1a3.5 3.5 0 0 1 -7 0v-1.8"}),N("path",{d:"M17.5 16a3.5 3.5 0 0 0 0 -7h-.5"}),N("path",{d:"M19 9.3v-2.8a3.5 3.5 0 0 0 -7 0"}),N("path",{d:"M6.5 16a3.5 3.5 0 0 1 0 -7h.5"}),N("path",{d:"M5 9.3v-2.8a3.5 3.5 0 0 1 7 0v10"})]}),ct),q1=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0"}),N("path",{d:"M21 21l-6 -6"})]}),ct),xhe=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M20.984 12.53a9 9 0 1 0 -7.552 8.355"}),N("path",{d:"M12 7v5l3 3"}),N("path",{d:"M19 16l-2 3h4l-2 3"})]}),ct),She=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M9 2m0 3a3 3 0 0 1 3 -3h0a3 3 0 0 1 3 3v5a3 3 0 0 1 -3 3h0a3 3 0 0 1 -3 -3z"}),N("path",{d:"M5 10a7 7 0 0 0 14 0"}),N("path",{d:"M8 21l8 0"}),N("path",{d:"M12 17l0 4"})]}),ct),Lhe=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 3l18 18"}),N("path",{d:"M9 5a3 3 0 0 1 6 0v5a3 3 0 0 1 -.13 .874m-2 2a3 3 0 0 1 -3.87 -2.872v-1"}),N("path",{d:"M5 10a7 7 0 0 0 10.846 5.85m2 -2a6.967 6.967 0 0 0 1.152 -3.85"}),N("path",{d:"M8 21l8 0"}),N("path",{d:"M12 17l0 4"})]}),ct),shA=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M13 3l0 7l6 0l-8 11l0 -7l-6 0l8 -11"})]}),ct),Rhe=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M8 8m0 1a1 1 0 0 1 1 -1h6a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-6a1 1 0 0 1 -1 -1z"}),N("path",{d:"M12 20v.01"}),N("path",{d:"M16 20v.01"}),N("path",{d:"M8 20v.01"}),N("path",{d:"M4 20v.01"}),N("path",{d:"M4 16v.01"}),N("path",{d:"M4 12v.01"}),N("path",{d:"M4 8v.01"}),N("path",{d:"M4 4v.01"}),N("path",{d:"M8 4v.01"}),N("path",{d:"M12 4v.01"}),N("path",{d:"M16 4v.01"}),N("path",{d:"M20 4v.01"}),N("path",{d:"M20 8v.01"}),N("path",{d:"M20 12v.01"}),N("path",{d:"M20 16v.01"}),N("path",{d:"M20 20v.01"})]}),ct),Nhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 3v18"}),N("path",{d:"M19 21v-18"}),N("path",{d:"M5 7h14"}),N("path",{d:"M5 15h14"}),N("path",{d:"M8 13v4"}),N("path",{d:"M11 13v4"}),N("path",{d:"M16 13v4"}),N("path",{d:"M14 5v4"}),N("path",{d:"M11 5v4"}),N("path",{d:"M8 5v4"}),N("path",{d:"M3 21h18"})]}),ct),Ghe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 12l18 0"}),N("path",{d:"M7 16l10 0l-10 5l0 -5"}),N("path",{d:"M7 8l10 0l-10 -5l0 5"})]}),ct),Uhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M12 3l0 18"}),N("path",{d:"M16 7l0 10l5 0l-5 -10"}),N("path",{d:"M8 7l0 10l-5 0l5 -10"})]}),ct),lhA=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 3m0 2a2 2 0 0 1 2 -2h10a2 2 0 0 1 2 2v2a2 2 0 0 1 -2 2h-10a2 2 0 0 1 -2 -2z"}),N("path",{d:"M19 6h1a2 2 0 0 1 2 2a5 5 0 0 1 -5 5l-5 0v2"}),N("path",{d:"M10 15m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z"})]}),ct),eW=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M15 15m-5 0a5 5 0 1 0 10 0a5 5 0 1 0 -10 0"}),N("path",{d:"M22 22l-3 -3"}),N("path",{d:"M6 18h-1a2 2 0 0 1 -2 -2v-1"}),N("path",{d:"M3 11v-1"}),N("path",{d:"M3 6v-1a2 2 0 0 1 2 -2h1"}),N("path",{d:"M10 3h1"}),N("path",{d:"M15 3h1a2 2 0 0 1 2 2v1"})]}),ct),Mhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M14 3v4a1 1 0 0 0 1 1h4"}),N("path",{d:"M5 12v-7a2 2 0 0 1 2 -2h7l5 5v4"}),N("path",{d:"M4 20.25c0 .414 .336 .75 .75 .75h1.25a1 1 0 0 0 1 -1v-1a1 1 0 0 0 -1 -1h-1a1 1 0 0 1 -1 -1v-1a1 1 0 0 1 1 -1h1.25a.75 .75 0 0 1 .75 .75"}),N("path",{d:"M10 15l2 6l2 -6"}),N("path",{d:"M20 15h-1a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h1v-3"})]}),ct),The=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M14 3v4a1 1 0 0 0 1 1h4"}),N("path",{d:"M5 12v-7a2 2 0 0 1 2 -2h7l5 5v4"}),N("path",{d:"M20 15h-1a2 2 0 0 0 -2 2v2a2 2 0 0 0 2 2h1v-3"}),N("path",{d:"M5 18h1.5a1.5 1.5 0 0 0 0 -3h-1.5v6"}),N("path",{d:"M11 21v-6l3 6v-6"})]}),ct),Yhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4 13v-8a2 2 0 0 1 2 -2h1a2 2 0 0 1 2 2v8a2 2 0 0 0 6 0v-8a2 2 0 0 1 2 -2h1a2 2 0 0 1 2 2v8a8 8 0 0 1 -16 0"}),N("path",{d:"M4 8l5 0"}),N("path",{d:"M15 8l4 0"})]}),ct),Hhe=ge(cA("g",{strokeWidth:1.25,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 14c.83 .642 2.077 1.017 3.5 1c1.423 .017 2.67 -.358 3.5 -1c.83 -.642 2.077 -1.017 3.5 -1c1.423 -.017 2.67 .358 3.5 1"}),N("path",{d:"M8 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2"}),N("path",{d:"M12 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2"}),N("path",{d:"M3 10h14v5a6 6 0 0 1 -6 6h-2a6 6 0 0 1 -6 -6v-5z"}),N("path",{d:"M16.746 16.726a3 3 0 1 0 .252 -5.555"})]}),ct),Khe=ge(cA("g",{stroke:"currentColor",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 5a1 1 0 0 1 1-1h16a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1h-16a1 1 0 0 1-1-1v-10zM7 20h10M9 16v4M15 16v4"})]}),{...ct,strokeWidth:1.5}),Lyi=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M15 8v-2a2 2 0 0 0 -2 -2h-7a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h7a2 2 0 0 0 2 -2v-2"}),N("path",{d:"M21 12h-13l3 -3"}),N("path",{d:"M11 15l-3 -3"})]}),ct),Jhe=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M2 8a4 4 0 0 1 4 -4h12a4 4 0 0 1 4 4v8a4 4 0 0 1 -4 4h-12a4 4 0 0 1 -4 -4v-8z"}),N("path",{d:"M10 9l5 3l-5 3z"})]}),ct),Ohe=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M3 6h18"}),N("path",{d:"M3 12h18"}),N("path",{d:"M3 18h18"}),N("path",{d:"M6 3v18"}),N("path",{d:"M12 3v18"}),N("path",{d:"M18 3v18"})]}),ct),Phe=ge(cA("g",{strokeWidth:1.5,children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M17 3m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z"}),N("path",{d:"M3 17m0 1a1 1 0 0 1 1 -1h2a1 1 0 0 1 1 1v2a1 1 0 0 1 -1 1h-2a1 1 0 0 1 -1 -1z"}),N("path",{d:"M17 5c-6.627 0 -12 5.373 -12 12"})]}),ct),_he=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M6 18l12 -12"}),N("path",{d:"M18 10v-4h-4"})]}),ct),Whe=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M4,19L10,19C11.097,19 12,18.097 12,17L12,9C12,7.903 12.903,7 14,7L21,7"}),N("path",{d:"M18 4l3 3l-3 3"})]}),ct),qhe=ge(cA("g",{children:[N("path",{d:"M16,12L20,9L16,6"}),N("path",{d:"M6 20c0 -6.075 4.925 -11 11 -11h3"})]}),ct),ghA=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M6 9l6 6l6 -6"})]}),ct),zhe=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M6 15l6 -6l6 6"})]}),ct),Zhe=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M6 15l6 -6l6 6"})]}),ct),chA=ge(cA("g",{strokeWidth:"1.25",children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M8 5v10a1 1 0 0 0 1 1h10"}),N("path",{d:"M5 8h10a1 1 0 0 1 1 1v10"})]}),ct),ChA=ge(cA("g",{children:[N("path",{stroke:"none",d:"M0 0h24v24H0z",fill:"none"}),N("path",{d:"M5 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),N("path",{d:"M19 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),N("path",{d:"M5 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),N("path",{d:"M19 19m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"}),N("path",{d:"M5 7l0 10"}),N("path",{d:"M7 5l10 0"}),N("path",{d:"M7 19l10 0"}),N("path",{d:"M19 7l0 10"})]}),ct),D_={[aa.Excalifont]:{metrics:{unitsPerEm:1000,ascender:886,descender:-374,lineHeight:1.25},icon:g9},[aa.Nunito]:{metrics:{unitsPerEm:1000,ascender:1011,descender:-353,lineHeight:1.35},icon:m8},[aa["Lilita One"]]:{metrics:{unitsPerEm:1000,ascender:923,descender:-220,lineHeight:1.15},icon:v$t},[aa["Comic Shanns"]]:{metrics:{unitsPerEm:1000,ascender:750,descender:-250,lineHeight:1.25},icon:m_},[aa.Virgil]:{metrics:{unitsPerEm:1000,ascender:886,descender:-374,lineHeight:1.25},icon:g9,deprecated:!0},[aa.Helvetica]:{metrics:{unitsPerEm:2048,ascender:1577,descender:-471,lineHeight:1.15},icon:m8,deprecated:!0,local:!0},[aa.Cascadia]:{metrics:{unitsPerEm:2048,ascender:1900,descender:-480,lineHeight:1.2},icon:m_,deprecated:!0},[aa["Liberation Sans"]]:{metrics:{unitsPerEm:2048,ascender:1854,descender:-434,lineHeight:1.15},serverSide:!0},[i9.Xiaolai]:{metrics:{unitsPerEm:1000,ascender:880,descender:-144,lineHeight:1.15},fallback:!0},[i9["Segoe UI Emoji"]]:{metrics:{unitsPerEm:1000,ascender:886,descender:-374,lineHeight:1.25},local:!0,fallback:!0}},Tm={LATIN:"U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD",LATIN_EXT:"U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF",CYRILIC_EXT:"U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F",CYRILIC:"U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116",VIETNAMESE:"U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB"},k$t=class extends Error{constructor(A="Couldn't export canvas.",e="CANVAS_ERROR"){super(),this.name=e,this.message=A}},z8=class extends DOMException{constructor(A="Request Aborted"){super(A,"AbortError")}},F1=class extends Error{constructor(A="Image Scene Data Error",e="IMAGE_SCENE_DATA_ERROR"){super(A);GA(this,"code"),this.name="EncodingError",this.code=e}},F$t=class extends Error{constructor(){super(...arguments);GA(this,"code","ELEMENT_HAS_INVALID_INDEX")}},Vhe=class extends Error{constructor(A="Worker URL is not defined!",e="WORKER_URL_NOT_DEFINED"){super(A);GA(this,"code"),this.name="WorkerUrlNotDefinedError",this.code=e}},jhe=class extends Error{constructor(A="Worker has to be in a separate chunk!",e="WORKER_IN_THE_MAIN_CHUNK"){super(A);GA(this,"code"),this.name="WorkerInTheMainChunkError",this.code=e}},BEe=class extends Error{constructor(A){super(A),this.name="ExcalidrawError"}},EEe=typeof Worker<"u";GA(Xhe,"ASSETS_FALLBACK_URL",`https://esm.sh/${fr.PKG_NAME?`${fr.PKG_NAME}@${fr.PKG_VERSION}`:"@excalidraw/excalidraw"}/dist/prod/`);U$t=Xhe,T$t=[{uri:M$t}],O$t=[{uri:Y$t,descriptors:{unicodeRange:"U+20-7e,U+a1-a6,U+a8,U+ab-ac,U+af-b1,U+b4,U+b8,U+bb-bc,U+bf-cf,U+d1-d7,U+d9-de,U+e0-ef,U+f1-f7,U+f9-ff,U+131,U+152-153,U+2c6,U+2da,U+2dc,U+2013-2014,U+2018-201a,U+201c-201d,U+2020-2022,U+2026,U+2039-203a,U+2044,U+20ac,U+2191,U+2193,U+2212"}},{uri:H$t,descriptors:{unicodeRange:"U+100-10f,U+112-125,U+128-130,U+134-137,U+139-13c,U+141-148,U+14c-151,U+154-161,U+164-165,U+168-17f,U+1bf,U+1f7,U+218-21b,U+237,U+1e80-1e85,U+1ef2-1ef3,U+a75b"}},{uri:K$t,descriptors:{unicodeRange:"U+2c7,U+2d8-2d9,U+2db,U+2dd,U+315,U+2190,U+2192,U+2200,U+2203-2204,U+2264-2265,U+f6c3"}},{uri:J$t,descriptors:{unicodeRange:"U+3bb"}}],P$t=[{uri:BhA}],X$t=[{uri:_$t,descriptors:{unicodeRange:"U+20-7e,U+a0-a3,U+a5-a6,U+a8-ab,U+ad-b1,U+b4,U+b6-b8,U+ba-ff,U+131,U+152-153,U+2bc,U+2c6,U+2da,U+2dc,U+304,U+308,U+2013-2014,U+2018-201a,U+201c-201e,U+2020,U+2022,U+2024-2026,U+2030,U+2039-203a,U+20ac,U+2122,U+2212"}},{uri:W$t,descriptors:{unicodeRange:"U+100-130,U+132-137,U+139-149,U+14c-151,U+154-17e,U+192,U+1fc-1ff,U+218-21b,U+237,U+1e80-1e85,U+1ef2-1ef3,U+2113"}},{uri:q$t,descriptors:{unicodeRange:"U+400-45f,U+490-491,U+2116"}},{uri:z$t,descriptors:{unicodeRange:"U+37e,U+384-38a,U+38c,U+38e-393,U+395-3a1,U+3a3-3a8,U+3aa-3cf,U+3d7"}},{uri:Z$t,descriptors:{unicodeRange:"U+2c7,U+2d8-2d9,U+2db,U+2dd,U+302,U+306-307,U+30a-30c,U+326-328,U+212e,U+2211,U+fb01-fb02"}},{uri:V$t,descriptors:{unicodeRange:"U+462-463,U+472-475,U+4d8-4d9,U+4e2-4e3,U+4e6-4e9,U+4ee-4ef"}},{uri:j$t,descriptors:{unicodeRange:"U+300-301,U+303"}}],$$t=[{uri:BhA}],eAr=[{uri:AAr}],iAr=[{uri:rAr,descriptors:{unicodeRange:Tm.LATIN_EXT}},{uri:tAr,descriptors:{unicodeRange:Tm.LATIN}}],lAr=[{uri:oAr,descriptors:{unicodeRange:Tm.CYRILIC_EXT,weight:"500"}},{uri:nAr,descriptors:{unicodeRange:Tm.CYRILIC,weight:"500"}},{uri:sAr,descriptors:{unicodeRange:Tm.VIETNAMESE,weight:"500"}},{uri:aAr,descriptors:{unicodeRange:Tm.LATIN_EXT,weight:"500"}},{uri:uAr,descriptors:{unicodeRange:Tm.LATIN,weight:"500"}}],cAr=[{uri:gAr}],air=[{uri:CAr,descriptors:{unicodeRange:"U+f9b8-fa6d,U+fe32,U+fe45-fe4f,U+ff02-ff0b,U+ff0d-ff1e,U+ff20-ff2a"}},{uri:BAr,descriptors:{unicodeRange:"U+20dd-20de,U+25ef,U+ff2b-ffbe,U+ffc2-ffc7,U+ffca-ffcf,U+ffd2-ffd7,U+ffda-ffdc,U+ffe0-ffe6,U+ffe8-ffee"}},{uri:EAr,descriptors:{unicodeRange:"U+d7eb-d7fb,U+f900-f9b7"}},{uri:dAr,descriptors:{unicodeRange:"U+d6f2-d7a3,U+d7b0-d7c6,U+d7cb-d7ea"}},{uri:IAr,descriptors:{unicodeRange:"U+d609-d6f1"}},{uri:hAr,descriptors:{unicodeRange:"U+d520-d608"}},{uri:QAr,descriptors:{unicodeRange:"U+d437-d51f"}},{uri:pAr,descriptors:{unicodeRange:"U+d34e-d436"}},{uri:fAr,descriptors:{unicodeRange:"U+d265-d34d"}},{uri:mAr,descriptors:{unicodeRange:"U+d17c-d264"}},{uri:DAr,descriptors:{unicodeRange:"U+d093-d17b"}},{uri:yAr,descriptors:{unicodeRange:"U+cfaa-d092"}},{uri:wAr,descriptors:{unicodeRange:"U+cec1-cfa9"}},{uri:bAr,descriptors:{unicodeRange:"U+cdd8-cec0"}},{uri:vAr,descriptors:{unicodeRange:"U+ccf1-cdd7"}},{uri:kAr,descriptors:{unicodeRange:"U+cc08-ccf0"}},{uri:FAr,descriptors:{unicodeRange:"U+cb43-cc07"}},{uri:xAr,descriptors:{unicodeRange:"U+ca83-cb42"}},{uri:SAr,descriptors:{unicodeRange:"U+c9a1-ca82"}},{uri:LAr,descriptors:{unicodeRange:"U+c8b8-c9a0"}},{uri:RAr,descriptors:{unicodeRange:"U+c7cf-c8b7"}},{uri:NAr,descriptors:{unicodeRange:"U+c6e6-c7ce"}},{uri:GAr,descriptors:{unicodeRange:"U+c5fd-c6e5"}},{uri:UAr,descriptors:{unicodeRange:"U+c514-c5fc"}},{uri:MAr,descriptors:{unicodeRange:"U+c42b-c513"}},{uri:TAr,descriptors:{unicodeRange:"U+c341-c34e,U+c350-c42a"}},{uri:YAr,descriptors:{unicodeRange:"U+c258-c340"}},{uri:HAr,descriptors:{unicodeRange:"U+c16f-c257"}},{uri:KAr,descriptors:{unicodeRange:"U+c086-c16e"}},{uri:JAr,descriptors:{unicodeRange:"U+bf9d-c085"}},{uri:OAr,descriptors:{unicodeRange:"U+beb4-bf9c"}},{uri:PAr,descriptors:{unicodeRange:"U+bdcb-beb3"}},{uri:_Ar,descriptors:{unicodeRange:"U+bce2-bdca"}},{uri:WAr,descriptors:{unicodeRange:"U+bbf9-bce1"}},{uri:qAr,descriptors:{unicodeRange:"U+bb10-bbf8"}},{uri:zAr,descriptors:{unicodeRange:"U+ba27-bb0f"}},{uri:ZAr,descriptors:{unicodeRange:"U+b93e-ba26"}},{uri:VAr,descriptors:{unicodeRange:"U+b855-b93d"}},{uri:jAr,descriptors:{unicodeRange:"U+b76c-b854"}},{uri:XAr,descriptors:{unicodeRange:"U+b683-b76b"}},{uri:$Ar,descriptors:{unicodeRange:"U+b59a-b682"}},{uri:Aer,descriptors:{unicodeRange:"U+b4b1-b599"}},{uri:eer,descriptors:{unicodeRange:"U+11fb-11ff,U+b3cd-b4b0"}},{uri:ter,descriptors:{unicodeRange:"U+11e6-11fa,U+b2f9-b3cc"}},{uri:rer,descriptors:{unicodeRange:"U+11d1-11e5,U+b225-b2f8"}},{uri:ier,descriptors:{unicodeRange:"U+11bc-11d0,U+b151-b224"}},{uri:uer,descriptors:{unicodeRange:"U+11a7-11bb,U+b07d-b150"}},{uri:aer,descriptors:{unicodeRange:"U+1191-11a6,U+afaa-b07c"}},{uri:ner,descriptors:{unicodeRange:"U+117c-1190,U+aed6-afa9"}},{uri:oer,descriptors:{unicodeRange:"U+1167-117b,U+ae02-aed5"}},{uri:ser,descriptors:{unicodeRange:"U+1152-115e,U+1160-1166,U+ad2d-ae01"}},{uri:ler,descriptors:{unicodeRange:"U+113d-1151,U+ac59-ad2c"}},{uri:ger,descriptors:{unicodeRange:"U+1100-113c,U+9f95-9f98,U+9f9c-9f9e,U+9fa1-9fce,U+9fd0,U+a960-a97c,U+ac00-ac58"}},{uri:cer,descriptors:{unicodeRange:"U+9771-9772,U+9775,U+9777-977b,U+977d-9784,U+9786-978a,U+978c,U+978e-9790,U+9793,U+9795-9797,U+9799-979f,U+97a1-97a2,U+97a4-97aa,U+97ac,U+97ae,U+97b0-97b1,U+97b3,U+97b5-97e5,U+97e8,U+97ee-97f2,U+97f4,U+97f7-982d"}},{uri:Cer,descriptors:{unicodeRange:"U+9491,U+9496,U+9498,U+94c7,U+94cf,U+94d3-94d4,U+94da,U+94e6,U+94fb,U+951c,U+9520,U+9527,U+9533,U+953d,U+9543,U+9548,U+954b,U+9555,U+955a,U+9560,U+956e,U+9574-9575,U+9577-957e,U+9580-95e7,U+95ec,U+95ff,U+9607,U+9613,U+9618,U+961b,U+961e,U+9620,U+9623-9629,U+962b-962d,U+962f-9630,U+9637-963a,U+963e,U+9641,U+9643,U+964a,U+964e-964f,U+9651-9653,U+9656-965a,U+965c-965e,U+9660,U+9663,U+9665-9666,U+966b,U+966d-9671,U+9673,U+9678-9684,U+9687,U+9689-968a,U+968c,U+968e,U+9691-9693"}},{uri:Ber,descriptors:{unicodeRange:"U+923c-9273,U+9275-928d,U+928f-92ad,U+92af-92c7,U+92c9-92ee"}},{uri:Eer,descriptors:{unicodeRange:"U+9159,U+915b-915c,U+915f-9160,U+9166-9168,U+916b,U+916d,U+9173,U+917a-917c,U+9180-9184,U+9186,U+9188,U+918a,U+918e-918f,U+9193-9199,U+919c-91a1,U+91a4-91a9,U+91ab-91ac,U+91b0-91b3,U+91b6-91b9,U+91bb-91c6,U+91c8,U+91cb,U+91d0,U+91d2-91db,U+91dd-923b"}},{uri:der,descriptors:{unicodeRange:"U+902b-902c,U+9030-9034,U+9037,U+9039-903a,U+903d,U+903f-9040,U+9043,U+9045-9046,U+9048-904c,U+904e,U+9054-9056,U+9059-905a,U+905c-9061,U+9064,U+9066-9067,U+9069-906c,U+906f-9073,U+9076-907c,U+907e,U+9081,U+9084-9087,U+9089-908a,U+908c-9090,U+9092,U+9094,U+9096,U+9098,U+909a,U+909c,U+909e-90a0,U+90a4-90a5,U+90a7-90a9,U+90ab,U+90ad,U+90b2,U+90b7,U+90bc-90bd,U+90bf-90c0,U+90c2-90c3,U+90c6,U+90c8-90c9,U+90cb-90cd,U+90d2,U+90d4-90d6,U+90d8-90da,U+90de-90e0,U+90e3-90e5,U+90e9-90ea,U+90ec,U+90ee,U+90f0-90f3,U+90f5-90f7,U+90f9-90fc,U+90ff-9101,U+9103,U+9105-9118,U+911a-911d,U+911f-9121,U+9124-912e,U+9130,U+9132-9138,U+913a-9142,U+9144-9145,U+9147-9148,U+9151,U+9153-9156,U+9158"}},{uri:Ier,descriptors:{unicodeRange:"U+8f03-8f65,U+8f6a,U+8f80,U+8f8c,U+8f92,U+8f9d,U+8fa0-8fa2,U+8fa4-8fa7,U+8faa,U+8fac-8faf,U+8fb2-8fb5,U+8fb7-8fb8,U+8fba-8fbc,U+8fbf-8fc0,U+8fc3,U+8fc6,U+8fc9-8fcd,U+8fcf,U+8fd2,U+8fd6-8fd7,U+8fda,U+8fe0-8fe1,U+8fe3,U+8fe7,U+8fec,U+8fef,U+8ff1-8ff2,U+8ff4-8ff6,U+8ffa-8ffc,U+8ffe-8fff,U+9007-9008,U+900c,U+900e,U+9013,U+9015,U+9018-9019,U+901c,U+9023-9025,U+9027-902a"}},{uri:her,descriptors:{unicodeRange:"U+8d03-8d1c,U+8d20,U+8d51-8d52,U+8d57,U+8d5f,U+8d65,U+8d68-8d6a,U+8d6c,U+8d6e-8d6f,U+8d71-8d72,U+8d78-8d80,U+8d82-8d83,U+8d86-8d89,U+8d8c-8d90,U+8d92-8d93,U+8d95-8d9e,U+8da0-8da2,U+8da4-8db0,U+8db2,U+8db6-8db7,U+8db9,U+8dbb,U+8dbd,U+8dc0-8dc2,U+8dc5,U+8dc7-8dca,U+8dcd,U+8dd0,U+8dd2-8dd5,U+8dd8-8dd9,U+8ddc,U+8de0-8de2,U+8de5-8de7,U+8de9,U+8ded-8dee,U+8df0-8df2,U+8df4,U+8df6,U+8dfc,U+8dfe-8e04,U+8e06-8e08,U+8e0b,U+8e0d-8e0e,U+8e10-8e13,U+8e15-8e1c,U+8e20-8e21,U+8e24-8e28,U+8e2b,U+8e2d,U+8e30,U+8e32-8e34,U+8e36-8e38,U+8e3b-8e3c,U+8e3e-8e3f,U+8e43,U+8e45-8e46"}},{uri:Qer,descriptors:{unicodeRange:"U+8bea,U+8c09,U+8c1e,U+8c38-8c40,U+8c42-8c45,U+8c48,U+8c4a-8c4b,U+8c4d-8c54,U+8c56-8c59,U+8c5b-8c60,U+8c63-8c69,U+8c6c-8c72,U+8c74-8c77,U+8c7b-8c81,U+8c83-8c84,U+8c86-8c88,U+8c8b,U+8c8d-8c93,U+8c95-8c97,U+8c99-8d02"}},{uri:per,descriptors:{unicodeRange:"U+8a64-8a78,U+8a7a-8a88,U+8a8b-8a92,U+8a94-8b06,U+8b08-8b1b"}},{uri:fer,descriptors:{unicodeRange:"U+8987-89c0,U+89c3,U+89cd,U+89d3-89d5,U+89d7-89d9,U+89db,U+89dd,U+89df-89e2,U+89e4,U+89e7-89ea,U+89ec-89ee,U+89f0-89f2,U+89f4-89ff,U+8a01-8a06,U+8a08-8a3d,U+8a3f-8a47,U+8a49-8a63"}},{uri:mer,descriptors:{unicodeRange:"U+87e3-87e4,U+87e6-87e9,U+87eb-87ed,U+87ef-87f8,U+87fa-87fd,U+87ff-8802,U+8804-8809,U+880b-8812,U+8814,U+8817-881a,U+881c-8820,U+8823-8831,U+8833-8838,U+883a-883b,U+883d-883f,U+8841-8843,U+8846-884b,U+884e-8853,U+8855-8856,U+8858,U+885a-8860,U+8866-8867,U+886a,U+886d,U+886f,U+8871,U+8873-8876,U+8878-887c,U+8880,U+8883,U+8886-8887,U+8889-888a,U+888c,U+888e-8891,U+8893-8895,U+8897-889b,U+889d-88a1,U+88a3,U+88a5-88aa,U+88ac,U+88ae-88b0,U+88b2-88b6,U+88b8-88bb"}},{uri:Der,descriptors:{unicodeRange:"U+86e7-86e8,U+86ea-86ec,U+86ef,U+86f5-86f7,U+86fa-86fd,U+86ff,U+8701,U+8704-8706,U+870b-870c,U+870e-8711,U+8714,U+8716,U+8719,U+871b,U+871d,U+871f-8720,U+8724,U+8726-8728,U+872a-872d,U+872f-8730,U+8732-8733,U+8735-8736,U+8738-873a,U+873c-873d,U+8740-8746,U+874a-874b,U+874d,U+874f-8752,U+8754-8756,U+8758,U+875a-875f,U+8761-8762,U+8766-876d,U+876f,U+8771-8773,U+8775,U+8777-877a,U+877f-8781,U+8784,U+8786-8787,U+8789-878a,U+878c,U+878e-8792,U+8794-8796,U+8798-879e,U+87a0-87a7,U+87a9-87aa,U+87ae,U+87b0-87b2,U+87b4,U+87b6-87b9,U+87bb-87bc,U+87be-87bf,U+87c1-87c5,U+87c7-87c9,U+87cc-87d0,U+87d4-87da,U+87dc-87df,U+87e1-87e2"}},{uri:yer,descriptors:{unicodeRange:"U+8604,U+8606-8610,U+8612-8615,U+8617-8626,U+8628,U+862a-8637,U+8639-863b,U+863d-864c,U+8652-8653,U+8655-8659,U+865b-865d,U+865f-8661,U+8663-866a,U+866d,U+866f-8670,U+8672-8678,U+8683-8689,U+868e-8692,U+8694,U+8696-869b,U+869e-86a2,U+86a5-86a6,U+86ab,U+86ad-86ae,U+86b2-86b3,U+86b7-86b9,U+86bb-86bf,U+86c1-86c3,U+86c5,U+86c8,U+86cc-86cd,U+86d2-86d3,U+86d5-86d7,U+86da,U+86dc-86dd,U+86e0-86e3,U+86e5-86e6"}},{uri:wer,descriptors:{unicodeRange:"U+8456,U+8458,U+845d-8460,U+8462,U+8464-8468,U+846a,U+846e-8470,U+8472,U+8474,U+8477,U+8479,U+847b-8481,U+8483-8486,U+848a,U+848d,U+848f-8496,U+8498,U+849a-849b,U+849d-84a0,U+84a2-84ae,U+84b0-84b1,U+84b3,U+84b5-84b7,U+84bb-84bc,U+84be,U+84c0,U+84c2-84c3,U+84c5-84c8,U+84cb-84cc,U+84ce-84cf,U+84d2,U+84d4-84d5,U+84d7-84dc,U+84de,U+84e1-84e2,U+84e4,U+84e7-84eb,U+84ed-84ef,U+84f1-84fb,U+84fd-84fe,U+8500-850b,U+850d-8510,U+8512,U+8514-8516,U+8518-8519,U+851b-851e,U+8520,U+8522-852a,U+852d-8536,U+853e-8542,U+8544-8547,U+854b-854f"}},{uri:ber,descriptors:{unicodeRange:"U+82c2-82c3,U+82c5-82c6,U+82c9,U+82d0,U+82d6,U+82d9-82da,U+82dd,U+82e2,U+82e7-82ea,U+82ec-82ee,U+82f0,U+82f2-82f3,U+82f5-82f6,U+82f8,U+82fa,U+82fc-8300,U+830a-830b,U+830d,U+8310,U+8312-8313,U+8316,U+8318-8319,U+831d-8326,U+8329-832a,U+832e,U+8330,U+8332,U+8337,U+833b,U+833d-833f,U+8341-8342,U+8344-8345,U+8348,U+834a-834e,U+8353,U+8355-8359,U+835d,U+8362,U+8370-8376,U+8379-837a,U+837e-8384,U+8387-8388,U+838a-838d,U+838f-8391,U+8394-8397,U+8399-839a,U+839d,U+839f,U+83a1-83a7,U+83ac-83af,U+83b5,U+83bb,U+83be-83bf,U+83c2-83c4,U+83c6,U+83c8-83c9,U+83cb,U+83cd-83ce,U+83d0-83d3,U+83d5,U+83d7,U+83d9-83db,U+83de,U+83e2-83e4,U+83e6-83e8,U+83eb-83ef,U+83f3-83f7,U+83fa-83fc,U+83fe-8400,U+8402,U+8405,U+8407-840a,U+8410,U+8412-8417,U+8419-841b,U+841e-8423,U+8429-8430,U+8432-8437,U+8439-843b,U+843e-8445,U+8447-8450,U+8452-8455"}},{uri:ver,descriptors:{unicodeRange:"U+81a4-81a5,U+81a7,U+81a9,U+81ab-81b2,U+81b4-81b9,U+81bc-81bf,U+81c4-81c5,U+81c7-81c9,U+81cb,U+81cd-81e2,U+81e4-81e6,U+81e8-81e9,U+81eb,U+81ee-81f2,U+81f5-81fa,U+81fd,U+81ff,U+8203,U+8207-820b,U+820e-820f,U+8211,U+8213,U+8215-821a,U+821d,U+8220,U+8224-8227,U+8229,U+822e,U+8232,U+823a,U+823c-823d,U+823f-8243,U+8245-8246,U+8248,U+824a,U+824c-824e,U+8250-8257,U+8259,U+825b-825e,U+8260-8267,U+8269-826d,U+8271,U+8275-8278,U+827b-827c,U+8280-8281,U+8283,U+8285-8287,U+8289,U+828c,U+8290,U+8293-8296,U+829a-829b,U+829e,U+82a0,U+82a2-82a3,U+82a7,U+82b2,U+82b5-82b6,U+82ba-82bc,U+82bf-82c0"}},{uri:ker,descriptors:{unicodeRange:"U+8059,U+805b-8068,U+806b-8070,U+8072-807e,U+8081-8082,U+8085,U+8088,U+808a,U+808d-8092,U+8094-8095,U+8097,U+8099,U+809e,U+80a3,U+80a6-80a8,U+80ac,U+80b0,U+80b3,U+80b5-80b6,U+80b8-80b9,U+80bb,U+80c5,U+80c7-80cb,U+80cf-80d5,U+80d8,U+80df-80e0,U+80e2-80e3,U+80e6,U+80ee,U+80f5,U+80f7,U+80f9,U+80fb,U+80fe-8101,U+8103-8105,U+8107-8108,U+810b-810c,U+8115,U+8117,U+8119,U+811b-811d,U+811f-812b,U+812d-812e,U+8130,U+8133-8135,U+8137,U+8139-813d,U+813f-8145,U+8147,U+8149,U+814d-814f,U+8152,U+8156-8158,U+815b-815f,U+8161-8164,U+8166,U+8168,U+816a-816c,U+816f,U+8172-8173,U+8175-8178,U+8181,U+8183-8187,U+8189,U+818b-818e,U+8190,U+8192-8197,U+8199-819a,U+819e-81a2"}},{uri:Fer,descriptors:{unicodeRange:"U+7f3c-7f41,U+7f43,U+7f46-7f4f,U+7f52-7f53,U+7f56,U+7f59,U+7f5b-7f5e,U+7f60,U+7f63-7f67,U+7f6b-7f6d,U+7f6f-7f70,U+7f73,U+7f75-7f78,U+7f7a-7f7d,U+7f7f-7f80,U+7f82-7f89,U+7f8b,U+7f8d,U+7f8f-7f93,U+7f95-7f99,U+7f9b-7f9c,U+7fa0,U+7fa2-7fa3,U+7fa5-7fa6,U+7fa8-7fae,U+7fb1,U+7fb3-7fb7,U+7fba-7fbb,U+7fbe,U+7fc0,U+7fc2-7fc4,U+7fc6-7fc9,U+7fcb,U+7fcd,U+7fcf-7fd3,U+7fd6-7fd7,U+7fd9-7fde,U+7fe2-7fe4,U+7fe7-7fe8,U+7fea-7fed,U+7fef,U+7ff2,U+7ff4-7ffa,U+7ffd-7fff,U+8002,U+8007-800a,U+800e-800f,U+8011,U+8013,U+801a-801b,U+801d-801f,U+8021,U+8023-8024,U+802b-8030,U+8032,U+8034,U+8039-803a,U+803c,U+803e,U+8040-8041,U+8044-8045,U+8047-8049,U+804e-8051,U+8053,U+8055-8057"}},{uri:xer,descriptors:{unicodeRange:"U+7cd8,U+7cda-7cdb,U+7cdd-7cde,U+7ce1-7ce7,U+7ce9-7cee,U+7cf0-7cf7,U+7cf9-7cfa,U+7cfc-7d09,U+7d0b-7d1f,U+7d21,U+7d23-7d26,U+7d28-7d2a,U+7d2c-7d2e,U+7d30-7d6d,U+7d6f-7d76,U+7d78-7d94"}},{uri:Ser,descriptors:{unicodeRange:"U+7afe,U+7b00-7b02,U+7b05,U+7b07,U+7b09,U+7b0c-7b0e,U+7b10,U+7b12-7b13,U+7b16-7b18,U+7b1a,U+7b1c-7b1d,U+7b1f,U+7b21-7b23,U+7b27,U+7b29,U+7b2d,U+7b2f-7b30,U+7b32,U+7b34-7b37,U+7b39,U+7b3b,U+7b3d,U+7b3f-7b44,U+7b46,U+7b48,U+7b4a,U+7b4d-7b4e,U+7b53,U+7b55,U+7b57,U+7b59,U+7b5c,U+7b5e-7b5f,U+7b61,U+7b63-7b6d,U+7b6f-7b70,U+7b73-7b74,U+7b76,U+7b78,U+7b7a,U+7b7c-7b7d,U+7b7f,U+7b81-7b84,U+7b86-7b8c,U+7b8e-7b8f,U+7b91-7b93,U+7b96,U+7b98-7b9b,U+7b9e-7ba0,U+7ba3-7ba5,U+7bae-7bb0,U+7bb2-7bb3,U+7bb5-7bb7,U+7bb9-7bc0,U+7bc2-7bc5,U+7bc8-7bcb,U+7bcd-7bd0,U+7bd2,U+7bd4-7bd8,U+7bdb-7bdc,U+7bde-7be0,U+7be2-7be4,U+7be7-7be9,U+7beb-7bed,U+7bef-7bf0,U+7bf2-7bf6,U+7bf8-7bfb,U+7bfd,U+7bff-7c06,U+7c08-7c0a,U+7c0d-7c0e,U+7c10-7c13"}},{uri:Ler,descriptors:{unicodeRange:"U+7a10-7a13,U+7a15-7a16,U+7a18-7a19,U+7a1b-7a1d,U+7a1f,U+7a21-7a22,U+7a24-7a32,U+7a34-7a36,U+7a38,U+7a3a,U+7a3e,U+7a40-7a45,U+7a47-7a50,U+7a52-7a56,U+7a58-7a6f,U+7a71-7a73,U+7a75,U+7a7b-7a7e,U+7a82,U+7a85,U+7a87,U+7a89-7a8c,U+7a8e-7a90,U+7a93-7a94,U+7a99-7a9b,U+7a9e,U+7aa1-7aa4,U+7aa7,U+7aa9-7aab,U+7aae-7ab2,U+7ab4-7abe,U+7ac0-7aca,U+7acc-7ad5,U+7ad7-7ad8,U+7ada-7add,U+7ae1-7ae2,U+7ae4,U+7ae7-7aec,U+7aee,U+7af0-7af8,U+7afb-7afc"}},{uri:Rer,descriptors:{unicodeRange:"U+790d-7912,U+7914-791d,U+791f-7923,U+7925-7933,U+7935-7939,U+793d,U+793f,U+7942-7945,U+7947,U+794a-7952,U+7954-7955,U+7958-7959,U+7961,U+7963-7964,U+7966,U+7969-796c,U+796e,U+7970-7976,U+7979,U+797b-797f,U+7982-7983,U+7986-7989,U+798b-798e,U+7990-7999,U+799b-79a6,U+79a8-79b2,U+79b4-79b8,U+79bc,U+79bf,U+79c2,U+79c4-79c5,U+79c7-79c8,U+79ca,U+79cc,U+79ce-79d0,U+79d3-79d4,U+79d6-79d7,U+79d9-79de,U+79e0-79e2,U+79e5,U+79e8,U+79ea,U+79ec,U+79ee,U+79f1-79f7,U+79f9-79fa,U+79fc,U+79fe-79ff,U+7a01,U+7a04-7a05,U+7a07-7a0a,U+7a0c,U+7a0f"}},{uri:Ner,descriptors:{unicodeRange:"U+77d8-77da,U+77dd-77e1,U+77e4,U+77e6,U+77e8,U+77ea,U+77ef-77f2,U+77f4-77f5,U+77f7,U+77f9-77fc,U+7803-7808,U+780a-780b,U+780e-7810,U+7813,U+7815,U+7819,U+781b,U+781e,U+7820-7822,U+7824,U+7828,U+782a-782b,U+782e-782f,U+7831-7833,U+7835-7836,U+783d,U+783f,U+7841-7844,U+7846,U+7848-784b,U+784d,U+784f,U+7851,U+7853-7854,U+7858-785c,U+785e-7869,U+786f-7876,U+7878-787b,U+787d-7886,U+7888,U+788a-788b,U+788f-7890,U+7892,U+7894-7896,U+7899,U+789d-789e,U+78a0,U+78a2,U+78a4,U+78a6,U+78a8-78af,U+78b5-78b8,U+78ba-78bd,U+78bf-78c0,U+78c2-78c4,U+78c6-78c8,U+78cc-78cf,U+78d1-78d3,U+78d6-78d8,U+78da-78e7,U+78e9-78eb,U+78ed-78f1,U+78f3,U+78f5-78f6,U+78f8-78f9,U+78fb-7900,U+7902-7904,U+7906-790c"}},{uri:Ger,descriptors:{unicodeRange:"U+76af-76b0,U+76b3,U+76b5-76be,U+76c0-76c1,U+76c3-76c4,U+76c7,U+76c9,U+76cb-76cc,U+76d3,U+76d5,U+76d9-76da,U+76dc-76de,U+76e0-76e4,U+76e6-76ed,U+76f0,U+76f3,U+76f5-76f7,U+76fa-76fb,U+76fd,U+76ff-7703,U+7705-7706,U+770a,U+770c,U+770e-7718,U+771b-771e,U+7721,U+7723-7725,U+7727,U+772a-772c,U+772e,U+7730-7734,U+7739,U+773b,U+773d-773f,U+7742,U+7744-7746,U+7748-774f,U+7752-7759,U+775c-7760,U+7764,U+7767,U+7769-776a,U+776d-7778,U+777a-777c,U+7781-7783,U+7786-778b,U+778f-7790,U+7793-779e,U+77a1,U+77a3-77a4,U+77a6,U+77a8,U+77ab,U+77ad-77af,U+77b1-77b2,U+77b4,U+77b6-77ba,U+77bc,U+77be,U+77c0-77cc,U+77ce-77d6"}},{uri:Uer,descriptors:{unicodeRange:"U+7589-758a,U+758c-758e,U+7590,U+7593,U+7595,U+7598,U+759b-759c,U+759e,U+75a2,U+75a6-75aa,U+75ad,U+75b6-75b7,U+75ba-75bb,U+75bf-75c1,U+75c6,U+75cb-75cc,U+75ce-75d1,U+75d3,U+75d7,U+75d9-75da,U+75dc-75dd,U+75df-75e1,U+75e5,U+75e9,U+75ec-75ef,U+75f2-75f3,U+75f5-75f8,U+75fa-75fb,U+75fd-75fe,U+7602,U+7604,U+7606-7609,U+760b,U+760d-760f,U+7611-7614,U+7616,U+761a,U+761c-761e,U+7621,U+7623,U+7627-7628,U+762c,U+762e-762f,U+7631-7632,U+7636-7637,U+7639-763b,U+763d,U+7641-7642,U+7644-764b,U+764e-7653,U+7655,U+7657-765b,U+765d,U+765f-7662,U+7664-766a,U+766c-766e,U+7670-7677,U+7679-767a,U+767c,U+767f-7681,U+7683,U+7685,U+7689-768a,U+768c-768d,U+768f-7690,U+7692,U+7694-7695,U+7697-7698,U+769a-76a3,U+76a5-76ad"}},{uri:Mer,descriptors:{unicodeRange:"U+7492-749b,U+749d,U+749f-74a6,U+74aa-74b9,U+74bb-74d1,U+74d3-74db,U+74dd,U+74df,U+74e1,U+74e5,U+74e7-74ed,U+74f0-74f3,U+74f5,U+74f8-74fe,U+7500-7503,U+7505-750c,U+750e,U+7510,U+7512,U+7514-7517,U+751b,U+751d-751e,U+7520-7524,U+7526-7527,U+752a,U+752e,U+7534,U+7536,U+7539,U+753c-753d,U+753f,U+7541-7544,U+7546-7547,U+7549-754a,U+754d,U+7550-7553,U+7555-7558,U+755d-7564,U+7567-7569,U+756b-7571,U+7573,U+7575-7577,U+757a-757e,U+7580-7582,U+7584-7585,U+7587-7588"}},{uri:Ter,descriptors:{unicodeRange:"U+7372-737d,U+737f-7383,U+7385-7386,U+7388,U+738a,U+738c-738d,U+738f-7390,U+7392-7395,U+7397-739a,U+739c-739e,U+73a0-73a1,U+73a3-73a8,U+73aa,U+73ac-73ad,U+73b1,U+73b4-73b6,U+73b8-73b9,U+73bc-73bf,U+73c1,U+73c3-73c7,U+73cb-73cc,U+73ce,U+73d2-73d8,U+73da-73dd,U+73df,U+73e1-73e4,U+73e6,U+73e8,U+73ea-73ec,U+73ee-73f1,U+73f3-7402,U+7404,U+7407-7408,U+740b-740e,U+7411-7419,U+741c-7421,U+7423-7424,U+7427,U+7429,U+742b,U+742d,U+742f,U+7431-7432,U+7437-743b,U+743d-7440,U+7442-7454,U+7456,U+7458,U+745d,U+7460-746c,U+746e-746f,U+7471-7475,U+7478-747d,U+747f,U+7482,U+7484-7486,U+7488-748a,U+748c-748d,U+748f,U+7491"}},{uri:Yer,descriptors:{unicodeRange:"U+7054-705d,U+705f-706a,U+706e,U+7071-7074,U+7077,U+7079-707b,U+707d,U+7081-7084,U+7086-7088,U+708b-708d,U+708f-7091,U+7093,U+7097-7098,U+709a-709b,U+709e-70aa,U+70b0,U+70b2,U+70b4-70b6,U+70ba,U+70be-70bf,U+70c4-70c7,U+70c9,U+70cb-70d7,U+70da,U+70dc-70de,U+70e0-70e3,U+70e5,U+70ea,U+70ee,U+70f0-70f6,U+70f8,U+70fa-70fc,U+70fe-7108,U+710b-710f,U+7111-7112,U+7114,U+7117,U+711b-7125,U+7127-712e,U+7132-7135,U+7137-7144,U+7146-7149,U+714b,U+714d,U+714f-715b,U+715d,U+715f-7163,U+7165,U+7169-716d,U+716f-7171,U+7174-7177"}},{uri:Her,descriptors:{unicodeRange:"U+722e-722f,U+7232-7234,U+723a,U+723c,U+723e,U+7240-7246,U+7249-724b,U+724e-7251,U+7253-7255,U+7257-7258,U+725a,U+725c,U+725e,U+7260,U+7263-7265,U+7268,U+726a-726d,U+7270-7271,U+7273-7274,U+7276-7278,U+727b-727d,U+7282-7283,U+7285-7289,U+728c,U+728e,U+7290-7291,U+7293-729e,U+72a0-72ab,U+72ae,U+72b1-72b3,U+72b5,U+72ba-72c0,U+72c5-72c7,U+72c9-72cc,U+72cf,U+72d1,U+72d3-72d6,U+72d8,U+72da-72dd,U+72df,U+72e2-72e7,U+72ea-72eb,U+72f5-72f6,U+72f9,U+72fd-7300,U+7302,U+7304-7309,U+730b-730d,U+730f-7312,U+7314,U+7318-731a,U+731f-7320,U+7323-7324,U+7326-7328,U+732d,U+732f-7330,U+7332-7333,U+7335-7336,U+733a-733d,U+7340-734c,U+734e-734f,U+7351,U+7353-7356,U+7358-735f,U+7361-736b,U+736e,U+7370-7371"}},{uri:Ker,descriptors:{unicodeRange:"U+6ec5-6ec6,U+6ec8-6eca,U+6ecc-6ece,U+6ed0,U+6ed2,U+6ed6,U+6ed8-6ed9,U+6edb-6edd,U+6ee3,U+6ee7,U+6eea-6ef3,U+6ef5-6ef8,U+6efa-6f01,U+6f03-6f05,U+6f07-6f08,U+6f0a-6f0e,U+6f10-6f12,U+6f16-6f1f,U+6f21-6f23,U+6f25-6f28,U+6f2c,U+6f2e,U+6f30,U+6f32,U+6f34-6f35,U+6f37-6f3d,U+6f3f-6f45,U+6f48-6f4a,U+6f4c,U+6f4e-6f57,U+6f59-6f5b,U+6f5d,U+6f5f-6f61,U+6f63-6f65,U+6f67-6f6c,U+6f6f-6f71,U+6f73,U+6f75-6f77,U+6f79,U+6f7b,U+6f7d-6f83,U+6f85-6f87,U+6f8a-6f8b,U+6f8f-6f9b,U+6f9d-6fa0,U+6fa2-6fa6,U+6fa8-6fb1"}},{uri:Jer,descriptors:{unicodeRange:"U+6d73,U+6d75-6d76,U+6d79-6d7b,U+6d7d-6d81,U+6d83-6d84,U+6d86-6d87,U+6d8a-6d8b,U+6d8d,U+6d8f-6d90,U+6d92,U+6d96-6d9a,U+6d9c,U+6da2,U+6da5,U+6dac-6dad,U+6db0-6db1,U+6db3-6db4,U+6db6-6db7,U+6db9-6dbe,U+6dc1-6dc3,U+6dc8-6dca,U+6dcd-6dd0,U+6dd2-6dd5,U+6dd7,U+6dda-6ddc,U+6ddf,U+6de2-6de3,U+6de5,U+6de7-6dea,U+6ded,U+6def-6df0,U+6df2,U+6df4-6df6,U+6df8,U+6dfa,U+6dfd-6e04,U+6e06-6e09,U+6e0b,U+6e0f,U+6e12-6e13,U+6e15,U+6e18-6e19,U+6e1b-6e1c,U+6e1e-6e1f,U+6e22,U+6e26-6e28,U+6e2a,U+6e2c,U+6e2e,U+6e30-6e31,U+6e33,U+6e35-6e37,U+6e39,U+6e3b-6e42,U+6e45-6e4c,U+6e4f-6e52,U+6e55,U+6e57,U+6e59-6e5a,U+6e5c-6e5e,U+6e60-6e6a,U+6e6c-6e6d,U+6e6f-6e7d,U+6e80-6e82,U+6e84,U+6e87-6e88,U+6e8a-6e8e,U+6e91-6e97,U+6e99-6e9b,U+6e9d-6e9e,U+6ea0-6ea1,U+6ea3-6ea4,U+6ea6,U+6ea8-6ea9,U+6eab-6eae,U+6eb0,U+6eb3,U+6eb5,U+6eb8-6eb9,U+6ebc,U+6ebe-6ec0,U+6ec3-6ec4"}},{uri:Oer,descriptors:{unicodeRange:"U+6bbb-6bbe,U+6bc0,U+6bc3-6bc4,U+6bc6-6bca,U+6bcc,U+6bce,U+6bd0-6bd1,U+6bd8,U+6bda,U+6bdc-6be0,U+6be2-6be9,U+6bec-6bee,U+6bf0-6bf2,U+6bf4,U+6bf6-6bf8,U+6bfa-6bfc,U+6bfe-6c04,U+6c08-6c0c,U+6c0e,U+6c12,U+6c17,U+6c1c-6c1e,U+6c20,U+6c23,U+6c25,U+6c2b-6c2d,U+6c31,U+6c33,U+6c36-6c37,U+6c39-6c3c,U+6c3e-6c3f,U+6c43-6c45,U+6c48,U+6c4b-6c4f,U+6c51-6c53,U+6c56,U+6c58-6c5a,U+6c62-6c63,U+6c65-6c67,U+6c6b-6c6f,U+6c71,U+6c73,U+6c75,U+6c77-6c78,U+6c7a-6c7c,U+6c7f-6c80,U+6c84,U+6c87,U+6c8a-6c8b,U+6c8d-6c8e,U+6c91-6c92,U+6c95-6c98,U+6c9a,U+6c9c-6c9e,U+6ca0,U+6ca2,U+6ca8,U+6cac,U+6caf-6cb0,U+6cb4-6cb7,U+6cba,U+6cc0-6cc3,U+6cc6-6cc8,U+6ccb,U+6ccd-6ccf,U+6cd1-6cd2,U+6cd8-6cda,U+6cdc-6cdd,U+6cdf,U+6ce4,U+6ce6-6ce7,U+6ce9,U+6cec-6ced,U+6cf2,U+6cf4,U+6cf9,U+6cff-6d00,U+6d02-6d03,U+6d05-6d06,U+6d08-6d0a,U+6d0d,U+6d0f-6d11,U+6d13-6d16,U+6d18,U+6d1c-6d1d,U+6d1f-6d24,U+6d26,U+6d28-6d29,U+6d2c-6d2d,U+6d2f-6d30,U+6d34,U+6d36-6d38,U+6d3a,U+6d3f-6d40,U+6d42,U+6d44,U+6d49,U+6d4c,U+6d50,U+6d55-6d58,U+6d5b,U+6d5d,U+6d5f,U+6d61-6d62,U+6d64-6d65,U+6d67-6d68,U+6d6b-6d6d,U+6d70-6d72"}},{uri:Per,descriptors:{unicodeRange:"U+6967-696a,U+696c-696d,U+696f-6970,U+6972-6976,U+697a-697b,U+697d-697f,U+6981,U+6983,U+6985,U+698a-698c,U+698e-6993,U+6996-6997,U+6999-699a,U+699d-69a6,U+69a9-69aa,U+69ac,U+69ae-69b0,U+69b2-69b3,U+69b5-69b6,U+69b8-69ba,U+69bc-69c0,U+69c2-69c9,U+69cb,U+69cd,U+69cf,U+69d1-69d3,U+69d5-69da,U+69dc-69de,U+69e1-69ec,U+69ee-69f1,U+69f3-69fc,U+69fe,U+6a00-6a09,U+6a0b-6a16,U+6a19-6a1e,U+6a20,U+6a22-6a27,U+6a29,U+6a2b-6a2e,U+6a30,U+6a32-6a34,U+6a36-6a3c,U+6a3f-6a43,U+6a45-6a46,U+6a48-6a4a"}},{uri:_er,descriptors:{unicodeRange:"U+6830-6831,U+6834-6836,U+683a-683b,U+683f,U+6847,U+684b,U+684d,U+684f,U+6852,U+6856-685f,U+686a,U+686c-6873,U+6875,U+6878-6880,U+6882,U+6884,U+6887-688e,U+6890-6892,U+6894-6896,U+6898-68a1,U+68a3-68a5,U+68a9-68ac,U+68ae,U+68b1-68b2,U+68b4,U+68b6-68bf,U+68c1,U+68c3-68c8,U+68ca,U+68cc,U+68ce-68d1,U+68d3-68d4,U+68d6-68d7,U+68d9,U+68db-68df,U+68e1-68e2,U+68e4-68ed,U+68ef,U+68f2-68f4,U+68f6-68f8,U+68fb,U+68fd-6900,U+6902-6904,U+6906-690a,U+690c,U+690f,U+6911,U+6913-691e,U+6921-6923,U+6925-692c,U+692e-692f,U+6931-6933,U+6935-6938,U+693a-693c,U+693e,U+6940-6941,U+6943-6953,U+6955-6956,U+6958-6959,U+695b-695c,U+695f,U+6961-6962,U+6964-6965"}},{uri:Wer,descriptors:{unicodeRange:"U+66b8,U+66ba-66bd,U+66bf-66d8,U+66da,U+66de-66e5,U+66e7-66e8,U+66ea-66ef,U+66f1,U+66f5-66f6,U+66f8,U+66fa-66fb,U+66fd,U+6701-6707,U+670c,U+670e-670f,U+6711-6713,U+6716,U+6718-671a,U+671c,U+671e,U+6720-6725,U+6727,U+6729,U+672e,U+6730,U+6732-6733,U+6736-6739,U+673b-673c,U+673e-673f,U+6741,U+6744-6745,U+6747,U+674a-674b,U+674d,U+6752,U+6754-6755,U+6757-675b,U+675d,U+6762-6764,U+6766-6767,U+676b-676c,U+676e,U+6771,U+6774,U+6776,U+6778-677b,U+677d,U+6780,U+6782-6783,U+6785-6786,U+6788,U+678a,U+678c-678f,U+6791-6794,U+6796,U+6799,U+679b,U+679f-67a1,U+67a4,U+67a6,U+67a9,U+67ac,U+67ae,U+67b1-67b2,U+67b4,U+67b9-67c0,U+67c2,U+67c5-67ce,U+67d5-67d7,U+67db,U+67df,U+67e1,U+67e3-67e4,U+67e6-67e8,U+67ea-67eb,U+67ed-67ee,U+67f2,U+67f5-67fc,U+67fe,U+6801-6804,U+6806,U+680d,U+6810,U+6812,U+6814-6815,U+6818-681c,U+681e-6820,U+6822-6828,U+682b-682f"}},{uri:qer,descriptors:{unicodeRange:"U+6569-656a,U+656d-656f,U+6571,U+6573,U+6575-6576,U+6578-6586,U+6588-658a,U+658d-658f,U+6592,U+6594-6596,U+6598,U+659a,U+659d-659e,U+65a0,U+65a2-65a3,U+65a6,U+65a8,U+65aa,U+65ac,U+65ae,U+65b1-65b8,U+65ba-65bb,U+65be-65c0,U+65c2,U+65c7-65ca,U+65cd,U+65d0-65d1,U+65d3-65d5,U+65d8-65df,U+65e1,U+65e3-65e4,U+65ea-65eb,U+65f2-65f5,U+65f8-65f9,U+65fb-65ff,U+6601,U+6604-6605,U+6607-6609,U+660b,U+660d,U+6610-6612,U+6616-6618,U+661a-661c,U+661e,U+6621-6624,U+6626,U+6629-662c,U+662e,U+6630,U+6632-6633,U+6637-663b,U+663d,U+663f-6640,U+6642,U+6644-664a,U+664d-664e,U+6650-6651,U+6658-6659,U+665b-665e,U+6660,U+6662-6663,U+6665,U+6667,U+6669-666d,U+6671-6673,U+6675,U+6678-6679,U+667b-667d,U+667f-6681,U+6683,U+6685-6686,U+6688-668b,U+668d-6690,U+6692-6695,U+6698-669c,U+669e-66a6,U+66a9-66ad,U+66af-66b3,U+66b5-66b7"}},{uri:zer,descriptors:{unicodeRange:"U+5f30,U+5f32-5f38,U+5f3b,U+5f3d-5f3f,U+5f41-5f4f,U+5f51,U+5f54,U+5f59-5f5c,U+5f5e-5f60,U+5f63,U+5f65,U+5f67-5f68,U+5f6b,U+5f6e-5f6f,U+5f72,U+5f74-5f76,U+5f78,U+5f7a,U+5f7d-5f7f,U+5f83,U+5f86,U+5f8d-5f8f,U+5f91,U+5f93-5f94,U+5f96,U+5f9a-5f9b,U+5f9d-5fa0,U+5fa2-5fa7,U+5fa9,U+5fab-5fac,U+5faf-5fb4,U+5fb6,U+5fb8-5fbb,U+5fbe-5fc2,U+5fc7-5fc8,U+5fca-5fcb,U+5fce,U+5fd3-5fd5,U+5fda-5fdc,U+5fde-5fdf,U+5fe2-5fe3,U+5fe5-5fe6,U+5fe8-5fe9,U+5fec,U+5fef-5ff0,U+5ff2-5ff4,U+5ff6-5ff7,U+5ff9-5ffa,U+5ffc,U+6007-6009,U+600b-600c,U+6010-6011,U+6013,U+6017-6018,U+601a,U+601e-601f,U+6022-6024,U+602c-602e,U+6030-6034,U+6036-603a,U+603d-603e,U+6040,U+6044-604a,U+604c,U+604e-604f,U+6051,U+6053-6054,U+6056-6058,U+605b-605c,U+605e-6061,U+6065-6066,U+606e,U+6071-6072,U+6074-6075,U+6077,U+607e,U+6080-6082,U+6085-6088,U+608a-608b,U+608e-6091,U+6093,U+6095,U+6097-6099,U+609c,U+609e,U+60a1-60a2,U+60a4-60a5,U+60a7,U+60a9-60aa,U+60ae,U+60b0,U+60b3,U+60b5-60b7,U+60b9-60ba,U+60bd-60c4,U+60c7-60c9,U+60cc"}},{uri:Zer,descriptors:{unicodeRange:"U+635a-635d,U+6360,U+6364-6366,U+6368,U+636a-636c,U+636f-6370,U+6372-6375,U+6378-6379,U+637c-637f,U+6381,U+6383-6386,U+638b,U+638d,U+6391,U+6393-6395,U+6397,U+6399-639f,U+63a1,U+63a4,U+63a6,U+63ab,U+63af,U+63b1-63b2,U+63b5-63b6,U+63b9,U+63bb,U+63bd,U+63bf-63c3,U+63c5,U+63c7-63c8,U+63ca-63cc,U+63d1,U+63d3-63d5,U+63d7-63dd,U+63df,U+63e2,U+63e4-63e8,U+63eb-63ec,U+63ee-63f1,U+63f3,U+63f5,U+63f7,U+63f9-63fc,U+63fe,U+6403-6404,U+6406-640a,U+640d-640e,U+6411-6412,U+6415-641a,U+641d,U+641f,U+6422-6425,U+6427-6429,U+642b,U+642e-6433,U+6435-6439,U+643b-643c,U+643e,U+6440,U+6442-6443,U+6449,U+644b-6451,U+6453,U+6455-6457,U+6459-645d,U+645f-6466,U+6468,U+646a-646c,U+646e-6477,U+647b-6481,U+6483,U+6486,U+6488-648f"}},{uri:Ver,descriptors:{unicodeRange:"U+61c5-61c7,U+61c9,U+61cc-61d0,U+61d3,U+61d5-61e5,U+61e7-61f4,U+61f6-61fe,U+6200-6205,U+6207,U+6209,U+6213-6214,U+6219,U+621c-621e,U+6220,U+6223,U+6226-6229,U+622b,U+622d,U+622f-6232,U+6235-6236,U+6238-623c,U+6242,U+6244-6246,U+624a,U+624f-6250,U+6255-6257,U+6259-625a,U+625c-6262,U+6264-6265,U+6268,U+6271-6272,U+6274-6275,U+6277-6278,U+627a-627b,U+627d,U+6281-6283,U+6285-6288,U+628b-6290,U+6294,U+6299,U+629c-629e,U+62a3,U+62a6-62a7,U+62a9-62aa,U+62ad-62b0,U+62b2-62b4,U+62b6-62b8,U+62ba,U+62be,U+62c0-62c1,U+62c3,U+62cb,U+62cf,U+62d1,U+62d5,U+62dd-62de,U+62e0-62e1,U+62e4,U+62ea-62eb,U+62f0,U+62f2,U+62f5,U+62f8-62fb,U+6300,U+6303-6306,U+630a-630d,U+630f-6310,U+6312-6315,U+6317-6319,U+631c,U+6326-6327,U+6329,U+632c-632e,U+6330-6331,U+6333-6338,U+633b-633c,U+633e-6341,U+6344,U+6347-6348,U+634a,U+6351-6354,U+6356-6359"}},{uri:jer,descriptors:{unicodeRange:"U+5dd0-5dda,U+5ddc,U+5ddf-5de0,U+5de3-5de4,U+5dea,U+5dec-5ded,U+5df0,U+5df5-5df6,U+5df8-5dfc,U+5dff-5e00,U+5e04,U+5e07,U+5e09-5e0b,U+5e0d-5e0e,U+5e12-5e13,U+5e17,U+5e1e-5e25,U+5e28-5e2c,U+5e2f-5e30,U+5e32-5e36,U+5e39-5e3a,U+5e3e-5e41,U+5e43,U+5e46-5e4b,U+5e4d-5e53,U+5e56-5e5a,U+5e5c-5e5d,U+5e5f-5e60,U+5e63-5e71,U+5e75,U+5e77,U+5e79,U+5e7e,U+5e81-5e83,U+5e85,U+5e88-5e89,U+5e8c-5e8e,U+5e92,U+5e98,U+5e9b,U+5e9d,U+5ea1-5ea4,U+5ea8-5eac,U+5eae-5eb2,U+5eb4,U+5eba-5ebd,U+5ebf-5ec8,U+5ecb-5ed0,U+5ed4-5ed5,U+5ed7-5eda,U+5edc-5ee7,U+5ee9,U+5eeb-5ef3,U+5ef5,U+5ef8-5ef9,U+5efb-5efd,U+5f05-5f07,U+5f09,U+5f0c-5f0e,U+5f10,U+5f12,U+5f14,U+5f16,U+5f19-5f1a,U+5f1c-5f1e,U+5f21-5f24,U+5f28,U+5f2b-5f2c,U+5f2e"}},{uri:Xer,descriptors:{unicodeRange:"U+60cd-60d0,U+60d2-60d4,U+60d6-60d7,U+60d9,U+60db,U+60de,U+60e1-60e5,U+60ea,U+60f1-60f2,U+60f5,U+60f7-60f8,U+60fb-60ff,U+6102-6105,U+6107,U+610a-610c,U+6110-6114,U+6116-6119,U+611b-611e,U+6121-6122,U+6125,U+6128-612a,U+612c-613e,U+6140-6147,U+6149,U+614b,U+614d,U+614f-6150,U+6152-6154,U+6156-615c,U+615e-6161,U+6163-6166,U+6169-616f,U+6171-6174,U+6176,U+6178-618a,U+618c-618d,U+618f-6193,U+6195-619c,U+619e-61a6,U+61aa-61ab,U+61ad-61b6,U+61b8-61bd,U+61bf-61c1,U+61c3-61c4"}},{uri:$er,descriptors:{unicodeRange:"U+5cf4-5cfa,U+5cfc-5d01,U+5d04-5d05,U+5d08-5d0d,U+5d0f-5d13,U+5d15,U+5d17-5d1a,U+5d1c-5d1d,U+5d1f-5d23,U+5d25,U+5d28,U+5d2a-5d2c,U+5d2f-5d33,U+5d35-5d3c,U+5d3f-5d46,U+5d48-5d49,U+5d4d-5d57,U+5d59-5d5a,U+5d5c,U+5d5e-5d68,U+5d6a,U+5d6d-5d6e,U+5d70-5d73,U+5d75-5d81,U+5d83-5d98,U+5d9a-5d9c,U+5d9e-5db6,U+5db8-5dc4,U+5dc6-5dcc,U+5dce-5dcf"}},{uri:Atr,descriptors:{unicodeRange:"U+5b52,U+5b56,U+5b5e,U+5b60-5b61,U+5b67-5b68,U+5b6b,U+5b6d-5b6f,U+5b72,U+5b74,U+5b76-5b79,U+5b7b-5b7c,U+5b7e-5b7f,U+5b82,U+5b86,U+5b8a,U+5b8d-5b8e,U+5b90-5b92,U+5b94,U+5b96,U+5b9f,U+5ba7-5ba9,U+5bac-5baf,U+5bb1-5bb2,U+5bb7,U+5bba-5bbc,U+5bc0-5bc1,U+5bc3,U+5bc8-5bcb,U+5bcd-5bcf,U+5bd1,U+5bd4-5bdc,U+5be0,U+5be2-5be3,U+5be6-5be7,U+5be9-5bed,U+5bef,U+5bf1-5bf7,U+5bfd-5bfe,U+5c00,U+5c02-5c03,U+5c05,U+5c07-5c08,U+5c0b-5c0e,U+5c10,U+5c12-5c13,U+5c17,U+5c19,U+5c1b,U+5c1e-5c21,U+5c23,U+5c26,U+5c28-5c2b,U+5c2d-5c30,U+5c32-5c33,U+5c35-5c37,U+5c43-5c44,U+5c46-5c47,U+5c4c-5c4d,U+5c52-5c54,U+5c56-5c58,U+5c5a-5c5d,U+5c5f,U+5c62,U+5c64,U+5c67-5c6d,U+5c70,U+5c72-5c78,U+5c7b-5c7e,U+5c80,U+5c83-5c87,U+5c89-5c8b,U+5c8e-5c8f,U+5c92-5c93,U+5c95,U+5c9d-5ca1,U+5ca4-5ca8,U+5caa,U+5cae-5cb0,U+5cb2,U+5cb4,U+5cb6,U+5cb9-5cbc,U+5cbe,U+5cc0,U+5cc2-5cc3,U+5cc5-5cca,U+5ccc-5cd1,U+5cd3-5cd8,U+5cda-5ce0,U+5ce2-5ce3,U+5ce7,U+5ce9,U+5ceb-5cec,U+5cee-5cef,U+5cf1-5cf3"}},{uri:etr,descriptors:{unicodeRange:"U+593b,U+593d-5940,U+5943,U+5945-5946,U+594a,U+594c-594d,U+5950,U+5952-5953,U+5959,U+595b-595f,U+5961,U+5963-5964,U+5966-5972,U+5975,U+5977,U+597a-597c,U+597e-5980,U+5985,U+5989,U+598b-598c,U+598e-5991,U+5994-5995,U+5998,U+599a-599d,U+599f-59a2,U+59a6-59a7,U+59ac-59ad,U+59b0-59b1,U+59b3-59b8,U+59ba,U+59bc-59bd,U+59bf-59c5,U+59c7-59c9,U+59cc-59cf,U+59d5-59d6,U+59d9,U+59db,U+59de-59e2,U+59e4,U+59e6-59e7,U+59e9-59eb,U+59ed-59f8,U+59fa,U+59fc-59fe,U+5a00,U+5a02,U+5a0a-5a0b,U+5a0d-5a10,U+5a12,U+5a14-5a17,U+5a19-5a1b,U+5a1d-5a1e,U+5a21-5a22,U+5a24,U+5a26-5a28,U+5a2a-5a30,U+5a33,U+5a35,U+5a37-5a3b,U+5a3d-5a3f,U+5a41-5a45,U+5a47-5a48,U+5a4b-5a54,U+5a56-5a59,U+5a5b-5a61,U+5a63-5a66,U+5a68-5a69,U+5a6b-5a73,U+5a78-5a79,U+5a7b-5a7e,U+5a80-5a90"}},{uri:ttr,descriptors:{unicodeRange:"U+5a91,U+5a93-5a99,U+5a9c-5aa9,U+5aab-5ab1,U+5ab4,U+5ab6-5ab7,U+5ab9-5abd,U+5abf-5ac0,U+5ac3-5ac8,U+5aca-5acb,U+5acd-5ad1,U+5ad3,U+5ad5,U+5ad7,U+5ad9-5adb,U+5add-5adf,U+5ae2,U+5ae4-5ae5,U+5ae7-5ae8,U+5aea,U+5aec-5af0,U+5af2-5b08,U+5b0a-5b15,U+5b18-5b31,U+5b33,U+5b35-5b36,U+5b38-5b3f,U+5b41-5b4f"}},{uri:rtr,descriptors:{unicodeRange:"U+5843,U+5845-584b,U+584e-5850,U+5852-5853,U+5855-5857,U+5859-585d,U+585f-5864,U+5866-586a,U+586d-587d,U+587f,U+5882,U+5884,U+5886-5888,U+588a-5891,U+5894-5898,U+589b-589d,U+58a0-58a7,U+58aa-58bb,U+58bd-58c0,U+58c2-58c4,U+58c6-58d0,U+58d2-58d4,U+58d6-58e3,U+58e5-58ea,U+58ed,U+58ef,U+58f1-58f2,U+58f4-58f5,U+58f7-58f8,U+58fa-5901,U+5903,U+5905-5906,U+5908-590c,U+590e,U+5910-5913,U+5917-5918,U+591b,U+591d-591e,U+5920-5923,U+5926,U+5928,U+592c,U+5930,U+5932-5933,U+5935-5936"}},{uri:itr,descriptors:{unicodeRange:"U+56d0-56d3,U+56d5-56d6,U+56d8-56d9,U+56dc,U+56e3,U+56e5-56ea,U+56ec,U+56ee-56ef,U+56f2-56f3,U+56f6-56f8,U+56fb-56fc,U+5700-5702,U+5705,U+5707,U+570b-571b,U+571d-571e,U+5720-5722,U+5724-5727,U+572b,U+5731-5732,U+5734-5738,U+573c-573d,U+573f,U+5741,U+5743-5746,U+5748-5749,U+574b,U+5752-5756,U+5758-5759,U+5762-5763,U+5765,U+5767,U+576c,U+576e,U+5770-5772,U+5774-5775,U+5778-577a,U+577d-5781,U+5787-578a,U+578d-5791,U+5794-579a,U+579c-579f,U+57a5,U+57a8,U+57aa,U+57ac,U+57af-57b1,U+57b3,U+57b5-57b7,U+57b9-57c1,U+57c4-57ca,U+57cc-57cd,U+57d0-57d1,U+57d3,U+57d6-57d7,U+57db-57dc,U+57de,U+57e1-57e3,U+57e5-57ec,U+57ee,U+57f0-57f3,U+57f5-57f7,U+57fb-57fc,U+57fe-57ff,U+5801,U+5803-5805,U+5808-580a,U+580c,U+580e-5810,U+5812-5814,U+5816-5818,U+581a-581d,U+581f,U+5822-5823,U+5825-5829,U+582b-582f,U+5831-5834,U+5836-5842"}},{uri:utr,descriptors:{unicodeRange:"U+55f9-55fc,U+55ff,U+5602-5607,U+560a-560b,U+560d,U+5610-5617,U+5619-561a,U+561c-561d,U+5620-5622,U+5625-5626,U+5628-562b,U+562e-5630,U+5633,U+5635,U+5637-5638,U+563a,U+563c-563e,U+5640-564b,U+564f-5653,U+5655-5656,U+565a-565b,U+565d-5661,U+5663,U+5665-5667,U+566d-5670,U+5672-5675,U+5677-567a,U+567d-5684,U+5687-568d,U+5690-5692,U+5694-56a2,U+56a4-56ae,U+56b0-56b6,U+56b8-56bb,U+56bd-56c9,U+56cb-56cf"}},{uri:atr,descriptors:{unicodeRange:"U+5286-5287,U+5289-528f,U+5291-5292,U+5294-529a,U+529c,U+52a4-52a7,U+52ae-52b0,U+52b4-52bd,U+52c0-52c2,U+52c4-52c6,U+52c8,U+52ca,U+52cc-52cf,U+52d1,U+52d3-52d5,U+52d7,U+52d9-52de,U+52e0-52e3,U+52e5-52ef,U+52f1-52f8,U+52fb-52fd,U+5301-5304,U+5307,U+5309-530c,U+530e,U+5311-5314,U+5318,U+531b-531c,U+531e-531f,U+5322,U+5324-5325,U+5327-5329,U+532b-532d,U+532f-5338,U+533c-533d,U+5340,U+5342,U+5344,U+5346,U+534b-534d,U+5350,U+5354,U+5358-5359,U+535b,U+535d,U+5365,U+5368,U+536a,U+536c-536d,U+5372,U+5376,U+5379,U+537b-537e,U+5380-5381,U+5383,U+5387-5388,U+538a,U+538e-5394,U+5396-5397,U+5399,U+539b-539c,U+539e,U+53a0-53a1,U+53a4,U+53a7,U+53aa-53ad,U+53af-53b5,U+53b7-53ba,U+53bc-53be,U+53c0,U+53c3-53c7,U+53ce-53d0,U+53d2-53d3,U+53d5,U+53da,U+53dc-53de,U+53e1-53e2,U+53e7,U+53f4,U+53fa,U+53fe-5400,U+5402,U+5405,U+5407,U+540b,U+5414,U+5418-541a,U+541c,U+5422,U+5424-5425,U+542a,U+5430,U+5433,U+5436-5437,U+543a"}},{uri:ntr,descriptors:{unicodeRange:"U+5101-5105,U+5108-510a,U+510c-5111,U+5113-5120,U+5122-513e,U+5142,U+5147,U+514a,U+514c,U+514e-5150,U+5152-5153,U+5157-5159,U+515b,U+515d-5161,U+5163-5164,U+5166-5167,U+5169-516a,U+516f,U+5172,U+517a,U+517e-517f,U+5183-5184,U+5186-5187,U+518a-518b,U+518e-5191,U+5193-5194,U+5198,U+519a,U+519d-519f,U+51a1,U+51a3,U+51a6-51aa,U+51ad-51ae,U+51b4,U+51b8-51ba,U+51be-51bf,U+51c1-51c3,U+51c5,U+51c8,U+51ca,U+51cd-51ce,U+51d0,U+51d2-51da,U+51dc,U+51de-51df,U+51e2-51e3,U+51e5-51ea,U+51ec,U+51ee,U+51f1-51f2,U+51f4,U+51f7,U+51fe,U+5204-5205,U+5209,U+520b-520c,U+520f-5210,U+5213-5215,U+521c,U+521e-521f,U+5221-5223,U+5225-5227,U+522a,U+522c,U+522f,U+5231-5232,U+5234-5235,U+523c,U+523e,U+5244-5249,U+524b,U+524e-524f,U+5252-5253,U+5255,U+5257-525b,U+525d,U+525f-5260,U+5262-5264,U+5266,U+5268,U+526b-526e,U+5270-5271,U+5273-527c,U+527e,U+5280,U+5283-5285"}},{uri:otr,descriptors:{unicodeRange:"U+543d,U+543f,U+5441-5442,U+5444-5445,U+5447,U+5449,U+544c-544f,U+5451,U+545a,U+545d-5461,U+5463,U+5465,U+5467,U+5469-5470,U+5474,U+5479-547a,U+547e-547f,U+5481,U+5483,U+5485,U+5487-548a,U+548d,U+5491,U+5493,U+5497-5498,U+549c,U+549e-54a2,U+54a5,U+54ae,U+54b0,U+54b2,U+54b5-54b7,U+54b9-54ba,U+54bc,U+54be,U+54c3,U+54c5,U+54ca-54cb,U+54d6,U+54d8,U+54db,U+54e0-54e4,U+54eb-54ec,U+54ef-54f1,U+54f4-54f9,U+54fb,U+54fe,U+5500,U+5502-5505,U+5508,U+550a-550e,U+5512-5513,U+5515-551a,U+551c-551f,U+5521,U+5525-5526,U+5528-5529,U+552b,U+552d,U+5532,U+5534-5536,U+5538-553b,U+553d,U+5540,U+5542,U+5545,U+5547-5548,U+554b-554f,U+5551-5554,U+5557-555b,U+555d-5560,U+5562-5563,U+5568-5569,U+556b,U+556f-5574,U+5579-557a,U+557d,U+557f,U+5585-5586,U+558c-558e,U+5590,U+5592-5593,U+5595-5597,U+559a-559b,U+559e,U+55a0-55a6,U+55a8-55b0,U+55b2,U+55b4,U+55b6,U+55b8,U+55ba,U+55bc,U+55bf-55c3,U+55c6-55c8,U+55ca-55cb,U+55ce-55d0,U+55d5,U+55d7-55db,U+55de,U+55e0,U+55e2,U+55e7,U+55e9,U+55ed-55ee,U+55f0-55f1,U+55f4,U+55f6,U+55f8"}},{uri:str,descriptors:{unicodeRange:"U+4fe0,U+4fe2,U+4fe4-4fe5,U+4fe7,U+4feb-4fec,U+4ff0,U+4ff2,U+4ff4-4ff7,U+4ff9,U+4ffb-4ffd,U+4fff-500b,U+500e,U+5010-5011,U+5013,U+5015-5017,U+501b,U+501d-501e,U+5020,U+5022-5024,U+5027,U+502b,U+502f-5039,U+503b,U+503d,U+503f-5042,U+5044-5046,U+5049-504b,U+504d,U+5050-5054,U+5056-5059,U+505b,U+505d-5064,U+5066-506b,U+506d-5075,U+5078-507a,U+507c-507d,U+5081-5084,U+5086-5087,U+5089-508c,U+508e-50a2,U+50a4,U+50a6,U+50aa-50ab,U+50ad-50b1,U+50b3-50b9,U+50bc-50ce,U+50d0-50d5,U+50d7-50d9,U+50db-50e5,U+50e8-50eb,U+50ef-50f2,U+50f4,U+50f6-50fa,U+50fc-5100"}},{uri:ltr,descriptors:{unicodeRange:"U+49d5-4a77"}},{uri:gtr,descriptors:{unicodeRange:"U+4dac-4dad,U+4daf-4db5,U+4e02,U+4e04-4e06,U+4e0f,U+4e12,U+4e17,U+4e1f-4e21,U+4e23,U+4e26,U+4e29,U+4e2e-4e2f,U+4e31,U+4e33,U+4e35,U+4e37,U+4e3c,U+4e40-4e42,U+4e44,U+4e46,U+4e4a,U+4e51,U+4e55,U+4e57,U+4e5a-4e5b,U+4e62-4e65,U+4e67-4e68,U+4e6a-4e6f,U+4e72,U+4e74-4e7d,U+4e7f-4e85,U+4e87,U+4e8a,U+4e90,U+4e96-4e97,U+4e99,U+4e9c-4e9e,U+4ea3,U+4eaa,U+4eaf-4eb1,U+4eb4,U+4eb6-4eb9,U+4ebc-4ebe,U+4ec8,U+4ecc,U+4ecf-4ed0,U+4ed2,U+4eda-4edc,U+4ee0,U+4ee2,U+4ee6-4ee7,U+4ee9,U+4eed-4eef,U+4ef1,U+4ef4,U+4ef8-4efa,U+4efc,U+4efe,U+4f00,U+4f02-4f08,U+4f0b-4f0c,U+4f12-4f16,U+4f1c-4f1d,U+4f21,U+4f23,U+4f28-4f29,U+4f2c-4f2e,U+4f31,U+4f33,U+4f35,U+4f37,U+4f39,U+4f3b,U+4f3e-4f42,U+4f44-4f45,U+4f47-4f4c,U+4f52,U+4f54,U+4f56,U+4f61-4f62,U+4f66,U+4f68,U+4f6a-4f6b,U+4f6d-4f6e,U+4f71-4f72,U+4f75,U+4f77-4f7a,U+4f7d,U+4f80-4f82,U+4f85-4f87,U+4f8a,U+4f8c,U+4f8e,U+4f90,U+4f92-4f93,U+4f95-4f96,U+4f98-4f9a,U+4f9c,U+4f9e-4f9f,U+4fa1-4fa2,U+4fa4,U+4fab,U+4fad,U+4fb0-4fb4,U+4fb6-4fbe,U+4fc0-4fc2,U+4fc6-4fc9,U+4fcb-4fcd,U+4fd2-4fd6,U+4fd9,U+4fdb"}},{uri:ctr,descriptors:{unicodeRange:"U+4933-49d4"}},{uri:Ctr,descriptors:{unicodeRange:"U+487a-4932"}},{uri:Btr,descriptors:{unicodeRange:"U+47d2-4879,U+2ce7c,U+2ce88,U+2ce93"}},{uri:Etr,descriptors:{unicodeRange:"U+4756-47d1,U+2ca02,U+2ca0e,U+2ca7d,U+2caa9,U+2cb29,U+2cb2e,U+2cb31,U+2cb38-2cb39,U+2cb3f,U+2cb41,U+2cb4e,U+2cb5a,U+2cb64,U+2cb69,U+2cb6c,U+2cb6f,U+2cb76,U+2cb78,U+2cb7c,U+2cbb1,U+2cbbf-2cbc0,U+2cbce,U+2cc5f,U+2ccf5-2ccf6,U+2ccfd,U+2ccff,U+2cd02-2cd03,U+2cd0a,U+2cd8b,U+2cd8d,U+2cd8f-2cd90,U+2cd9f-2cda0,U+2cda8,U+2cdad-2cdae,U+2cdd5,U+2ce18,U+2ce1a,U+2ce23,U+2ce26,U+2ce2a"}},{uri:dtr,descriptors:{unicodeRange:"U+46c3-4755,U+2c488,U+2c494,U+2c497,U+2c542,U+2c613,U+2c618,U+2c621,U+2c629,U+2c62b-2c62d,U+2c62f,U+2c642,U+2c64a-2c64b,U+2c72c,U+2c72f,U+2c79f,U+2c7c1,U+2c7fd,U+2c8d9,U+2c8de,U+2c8e1,U+2c8f3,U+2c907,U+2c90a,U+2c91d"}},{uri:Itr,descriptors:{unicodeRange:"U+4629-46c2,U+2bdf7,U+2be29,U+2c029-2c02a,U+2c0a9,U+2c0ca,U+2c1d5,U+2c1d9,U+2c1f9,U+2c27c,U+2c288,U+2c2a4,U+2c317,U+2c35b,U+2c361,U+2c364"}},{uri:htr,descriptors:{unicodeRange:"U+458e-4628,U+2b7a9,U+2b7c5,U+2b7e6,U+2b7f9,U+2b806,U+2b80a,U+2b81c,U+2b8b8,U+2bac7,U+2bb5f,U+2bb62,U+2bb7c,U+2bb83,U+2bc1b,U+2bd77,U+2bd87"}},{uri:Qtr,descriptors:{unicodeRange:"U+4449-4511,U+2afa2,U+2b127-2b128,U+2b137-2b138,U+2b1ed"}},{uri:ptr,descriptors:{unicodeRange:"U+439b-4448,U+2a437,U+2a5f1,U+2a602,U+2a61a,U+2a6b2,U+2a7dd,U+2a8fb,U+2a917,U+2aa30,U+2aa36,U+2aa58"}},{uri:ftr,descriptors:{unicodeRange:"U+4275-430d,U+298c6,U+29a72,U+29d98,U+29ddb,U+29e15,U+29e3d,U+29e49"}},{uri:mtr,descriptors:{unicodeRange:"U+4132-41de,U+28bef,U+28c47,U+28c4f,U+28c51,U+28c54,U+28d10,U+28d71,U+28dfb,U+28e1f,U+28e36,U+28e89,U+28e99,U+28eeb,U+28f32,U+28ff8,U+292a0"}},{uri:Dtr,descriptors:{unicodeRange:"U+41df-4274,U+292b1,U+29490,U+295cf,U+2967f,U+296f0,U+29719,U+29750"}},{uri:ytr,descriptors:{unicodeRange:"U+408e-4131,U+285c8-285c9,U+28678,U+28695,U+286d7,U+286fa,U+287e0,U+28946,U+28949,U+2896b,U+28987-28988,U+289ba-289bb,U+28a1e,U+28a29,U+28a43,U+28a71,U+28a99,U+28acd,U+28add,U+28ae4,U+28b49,U+28bc1"}},{uri:wtr,descriptors:{unicodeRange:"U+3e83-3f2f,U+27139,U+273da-273db,U+273fe,U+27410,U+27449,U+27614-27615,U+27631,U+27684,U+27693,U+2770e,U+27723,U+27752"}},{uri:btr,descriptors:{unicodeRange:"U+3f30-3fdb,U+27985,U+27a84,U+27bb3,U+27bbe,U+27bc7,U+27cb8,U+27da0,U+27e10"}},{uri:vtr,descriptors:{unicodeRange:"U+3fdc-408d,U+27fb7,U+27ff9,U+2808a,U+280bb,U+2815d,U+28277,U+28282,U+282e2,U+282f3,U+283cd,U+28408,U+2840c,U+28455,U+28468,U+2856b"}},{uri:ktr,descriptors:{unicodeRange:"U+3dd2-3e82,U+26a58,U+26a8c,U+26ab7,U+26aff,U+26b5c,U+26c21,U+26c29,U+26c73,U+26cdd,U+26e40,U+26e65,U+26f94,U+26ff6-26ff8,U+270f4,U+2710d"}},{uri:Ftr,descriptors:{unicodeRange:"U+3d34-3dd1,U+2648d,U+26676,U+2667e,U+266b0,U+2671d,U+2677c,U+267cc,U+268dd,U+268ea,U+26951,U+2696f,U+269dd,U+269fa,U+26a1e"}},{uri:xtr,descriptors:{unicodeRange:"U+3c76-3d33,U+25d0a,U+25da1,U+25e2e,U+25e56,U+25e62,U+25e65,U+25ec2,U+25ed7-25ed8,U+25ee8,U+25f23,U+25f5c,U+25fd4,U+25fe0,U+25ffb,U+2600c,U+26017,U+26060,U+260ed,U+26221,U+26270,U+26286,U+2634c,U+26402"}},{uri:Str,descriptors:{unicodeRange:"U+3bda-3c75,U+25771,U+257a9,U+257b4,U+259c4,U+259d4,U+25ae3-25ae4,U+25af1,U+25bb2,U+25c14,U+25c4b,U+25c64"}},{uri:Ltr,descriptors:{unicodeRange:"U+3b25-3bd9,U+2504a,U+25055,U+25122,U+2512b,U+251a9,U+251cd,U+251e5,U+2521e,U+2524c,U+2542e,U+2548e,U+254d9,U+2550e,U+25532,U+25562,U+255a7-255a8"}},{uri:Rtr,descriptors:{unicodeRange:"U+3a6b-3b24,U+24896,U+249db,U+24a4d,U+24a7d,U+24ac9,U+24b56,U+24b6f,U+24c16,U+24d14,U+24dea,U+24e0e,U+24e37,U+24e6a,U+24e8b,U+24eaa"}},{uri:Ntr,descriptors:{unicodeRange:"U+39a9-3a6a,U+24096,U+24103,U+241ac,U+241c6,U+241fe,U+243bc,U+243f8,U+244d3,U+24629,U+246a5,U+247f1"}},{uri:Gtr,descriptors:{unicodeRange:"U+38e3-39a8,U+23a98,U+23c7f,U+23c97-23c98,U+23cfe,U+23d00,U+23d0e,U+23d40,U+23dd3,U+23df9-23dfa,U+23e23,U+23f7e"}},{uri:Utr,descriptors:{unicodeRange:"U+3760-382a,U+22ab8,U+22b43,U+22b46,U+22b4f-22b50,U+22ba6,U+22bca,U+22c1d,U+22c24,U+22c55,U+22d4c,U+22de1"}},{uri:Mtr,descriptors:{unicodeRange:"U+382b-38e2,U+231b6,U+231c3-231c4,U+231f5,U+23350,U+23372,U+233d0,U+233d2-233d3,U+233d5,U+233da,U+233df,U+233e4,U+2344a-2344b,U+23451,U+23465,U+234e4,U+2355a,U+23594,U+235c4,U+235cb,U+23638-2363a,U+23647,U+2370c,U+2371c,U+2373f,U+23763-23764,U+237e7,U+237ff,U+23824,U+2383d"}},{uri:Ttr,descriptors:{unicodeRange:"U+3698-375f,U+22218,U+2231e,U+223ad,U+224dc,U+226f3,U+2285b,U+228ab,U+2298f"}},{uri:Ytr,descriptors:{unicodeRange:"U+35e6-3697,U+21c56,U+21cde,U+21d2d,U+21d45,U+21d62,U+21d78,U+21d92,U+21d9c,U+21da1,U+21db7,U+21de0,U+21e33-21e34,U+21f1e,U+21f76,U+21ffa,U+2217b"}},{uri:Htr,descriptors:{unicodeRange:"U+3444-350e,U+20ad3,U+20b1d,U+20b9f,U+20c41,U+20cbf,U+20cd0,U+20d45,U+20de1,U+20e64,U+20e6d,U+20e95,U+20e9d,U+20ea2,U+20f5f,U+210c1,U+21201,U+2123d,U+21255,U+21274,U+2127b"}},{uri:Ktr,descriptors:{unicodeRange:"U+350f-35e5,U+212d7,U+212e4,U+212fd,U+2131b,U+21336,U+21344,U+2139a,U+213c4,U+21413,U+2146d-2146e,U+215d7,U+21647,U+216b4,U+21706,U+21742,U+218bd,U+219c3"}},{uri:Jtr,descriptors:{unicodeRange:"U+336d-3443,U+2032b,U+20371,U+20381,U+203f9,U+2044a,U+20509,U+20547,U+205d6,U+20628,U+20676,U+2074f,U+20779,U+20807,U+2083a,U+20895,U+208b9,U+2097c,U+2099d"}},{uri:Otr,descriptors:{unicodeRange:"U+328b-336c,U+2000b,U+20089,U+200a2,U+200a4,U+20164,U+201a2,U+20213"}},{uri:Ptr,descriptors:{unicodeRange:"U+3192-31ba,U+31c0-31e3,U+31f0-321e,U+3220-328a,U+1f250-1f251"}},{uri:_tr,descriptors:{unicodeRange:"U+2f74-2fd5,U+3000,U+3003-3007,U+3012-3013,U+3018-301c,U+3020-3029,U+302f-303f,U+3041-3096,U+3099-30a1"}},{uri:Wtr,descriptors:{unicodeRange:"U+30a2-30ff,U+3105-312f,U+3131-318e,U+3190-3191"}},{uri:qtr,descriptors:{unicodeRange:"U+4e36,U+4ea0,U+4f74,U+4f91,U+4f94,U+4fc5,U+507e,U+50ed,U+5182,U+51f5,U+525e,U+5282,U+52f9,U+5326,U+537a,U+53a3,U+5423,U+5459,U+54b4,U+54d9,U+55c9,U+57f4,U+580b,U+5902,U+5925,U+5a08,U+5ab5,U+5b84,U+5be4,U+5c22,U+5cb5,U+5cbd,U+5d3e,U+5e31,U+5e5e,U+5e80,U+5ee8,U+5f82,U+5fc9,U+5fed,U+600a,U+605d,U+609b,U+609d,U+60dd,U+6243,U+6322,U+63ce,U+640c,U+643f,U+6445,U+64d7,U+6534,U+6549,U+656b,U+6603,U+674c,U+680a,U+6864,U+69d4,U+6a65,U+6c2a,U+6c46,U+6c5c,U+6d0e,U+6d48,U+6e2b,U+6eb2,U+6eb7,U+6f89,U+706c,U+70b1,U+7113,U+71d4,U+727f,U+72f3,U+7303,U+7321,U+736c,U+736f,U+74a9,U+74de,U+750d,U+7513,U+7592,U+75c4,U+7605,U+760a,U+761b,U+7625,U+762d,U+7643,U+7707,U+7747,U+77b5,U+7839,U+784e,U+78a5,U+7924,U+793b,U+798a,U+7a03,U+7a06,U+7a78,U+7a80,U+7aad,U+7ba8,U+7be5,U+7cc8,U+7ec1,U+7f0b,U+7f0f,U+7f12,U+7f68,U+7f9d,U+8025,U+809c,U+80ad,U+80b7,U+80e8,U+811e,U+8204,U+8223,U+822d,U+823b,U+824b,U+825a,U+827d,U+827f,U+828f,U+82c8,U+8307,U+831b,U+8347,U+837d,U+839b,U+83a9,U+83f9,U+84b9,U+8579,U+864d,U+867f,U+86b0,U+86d1,U+86d8,U+86f2,U+8764,U+8770,U+8788,U+8797,U+87ac-87ad,U+87b5,U+881b,U+8844,U+88bc,U+88fc,U+8930,U+89cf,U+89d6,U+8ba0,U+8bd4,U+8c02,U+8c2b,U+8c85,U+8e23,U+8f81-8f82,U+8fd5,U+90b6,U+90db,U+914e,U+9164,U+91ad,U+943e,U+94b7-94b8,U+94eb,U+950d,U+9514,U+9516,U+9518,U+9529,U+9538,U+953f,U+954e,U+955f,U+95fc,U+9667,U+96b3,U+9792,U+97b2,U+98a1,U+9969,U+9987,U+9998,U+9a80,U+9a92,U+9a96,U+9adf,U+9cb4,U+9cbd,U+9cd0,U+9cd4,U+9e31,U+9e3a,U+9e71,U+9ee5,U+9eea,U+9ef9,U+9fa0"}},{uri:ztr,descriptors:{unicodeRange:"U+4e0c,U+4e28,U+4e3f,U+4ec2,U+502e,U+50ba,U+5155,U+5181,U+522d,U+5281,U+5290,U+5369,U+53b6,U+54d5,U+54dc,U+54ff,U+552a,U+553c,U+5588,U+55b5,U+5686,U+570a,U+5776,U+5786,U+57a4,U+5820,U+5865,U+58bc,U+5b32,U+5b65,U+5c1c,U+5c66,U+5c6e,U+5c8d,U+5ddb,U+5f2a,U+5f50,U+5f61,U+6067,U+614a,U+615d,U+619d,U+61d4,U+620b,U+6224-6225,U+6343,U+63ad,U+63f2,U+640b,U+6420,U+6434,U+6496,U+64d0,U+6509,U+652e,U+67a8,U+6833,U+6844,U+684a,U+6920,U+6957,U+6971,U+6a8e,U+6a91,U+6aa0,U+6b43,U+6bea,U+6bf5,U+6c15,U+6cd0,U+6ee0,U+6f24,U+6f2d,U+70c0,U+721d,U+728b,U+72c3,U+72e8,U+730a,U+7338-7339,U+734d,U+746d,U+752f,U+754e,U+770d,U+7735,U+778d,U+77a2,U+77e7,U+7857,U+786d,U+78c9,U+78f2,U+791e,U+7953,U+7b58,U+7b9d,U+7bda,U+7cd7,U+7f32-7f33,U+8022,U+8028-8029,U+8035,U+804d,U+8080,U+80c2,U+80e9,U+80ec,U+80f2,U+810e,U+8221,U+8274,U+82b0,U+82e0,U+83b0,U+8487-8488,U+848e,U+84cd,U+84d0,U+8539,U+857a,U+85a8,U+85b7,U+867c,U+871e,U+8723,U+877e,U+878b,U+8793,U+8803,U+88d2,U+8966,U+89cc,U+89eb,U+8b26,U+8c8a,U+8c98,U+8d33,U+8d47,U+8d55,U+8dbc,U+8e40,U+8e94,U+8f77,U+8f79,U+9058,U+91a2,U+91b5,U+928e,U+9494,U+94b6,U+94de,U+94f4,U+94f9,U+950a,U+950e,U+951e,U+952b,U+953c,U+953e,U+9544,U+9561,U+9564,U+9569,U+95f6,U+9603,U+960d,U+963d,U+9674,U+9794,U+97ab,U+98a5,U+9a9f,U+9ab1,U+9ad1,U+9b0f,U+9b2f,U+9c92,U+9c95,U+9cba,U+9cbc,U+9cc6,U+9ccb,U+9cd8,U+9e32,U+9e38,U+9e5b,U+9e7e,U+9eb4,U+9efb-9efc,U+9f3d"}},{uri:Ztr,descriptors:{unicodeRange:"U+2e3b,U+2e80-2e99,U+2e9b-2ef3,U+2f00-2f73,U+ffffd"}},{uri:Vtr,descriptors:{unicodeRange:"U+4e69,U+4f1b,U+4f67,U+4f7e,U+4fdc,U+50e6,U+5196,U+5202,U+5233,U+523f,U+52a2,U+536e,U+5476,U+54ad,U+54cf,U+5537,U+561e,U+56dd,U+56df,U+5709,U+572c,U+57cf,U+57f8,U+580d,U+5881,U+589a,U+5941,U+59b2,U+5c25,U+5d24,U+5d74,U+5e42,U+5e8b,U+5eb3,U+5ed2,U+5fad,U+6003,U+603c,U+6083,U+6100,U+6126,U+6206,U+62ca,U+638e,U+63b4,U+6426,U+646d,U+6535,U+65c4,U+66db,U+6715,U+6769,U+6798,U+67c3,U+6861,U+698d,U+69ca,U+69ed,U+69f2,U+69ff,U+6a18,U+6b39,U+6bb3,U+6c0d,U+6cb2,U+6cd6,U+6cf7,U+6cfa,U+6d33,U+6e16,U+6e53-6e54,U+6ebb,U+6fb6,U+709d,U+72ad,U+72f7,U+72fb,U+7313,U+739f,U+74ba,U+754b,U+755b,U+758b,U+75ac,U+75d6,U+7617,U+7635,U+7640,U+76a4,U+76b2,U+775a,U+77bd,U+781f,U+79b3,U+7b2b,U+7b31,U+7b3e,U+7b6e,U+7b9c,U+7c0b,U+7c9e,U+7cc1,U+7ce8,U+7ea5,U+7f21,U+7f27,U+7f74,U+7fb0,U+8031,U+8071,U+80ea,U+8114,U+8160,U+81a6,U+81c1,U+829f,U+82a4,U+82fb,U+831a,U+8333,U+836c,U+83b6,U+83f8,U+8411,U+841c,U+8489,U+848c,U+85a4,U+8627,U+8629,U+866e,U+86b5,U+872e,U+8731,U+877b,U+877d,U+87ea,U+8813,U+8816,U+8864,U+88ce,U+88e5,U+897b,U+89cb,U+89f3,U+8bfc,U+8c35,U+8d46,U+8d4d,U+8dba,U+8e3a,U+8f75,U+8f7e,U+8fd3,U+9161,U+9179,U+917e,U+91a3,U+94ac,U+94d7,U+94e5,U+952a,U+952c,U+9545,U+9565,U+9568,U+956a,U+961d,U+96e0,U+972a,U+9730,U+989f,U+98e7,U+990d,U+9967,U+9993,U+9aa3,U+9ac0,U+9ae1,U+9aeb,U+9af9,U+9c86,U+9c8b,U+9ca0-9ca1,U+9ca3,U+9ce2,U+9e48,U+9e6a,U+9e87,U+9ee2,U+9ee9,U+9f17,U+9f19,U+9f2c,U+9f80"}},{uri:jtr,descriptors:{unicodeRange:"U+4ef3,U+50d6,U+50ec,U+51ab,U+51b1,U+52d6,U+54a9,U+54da,U+55be,U+55cd,U+564d,U+572f,U+574c,U+576b,U+57d8,U+57fd,U+5844,U+59d2,U+5ae0,U+5b16,U+5b37,U+5b5b,U+5b80,U+5d1e,U+5d6b,U+5efe,U+5f11,U+5f56,U+5f58,U+5f73,U+5f8c,U+5fc4,U+5fe4,U+602b,U+6106,U+610d,U+63de,U+63f8,U+641b,U+64e4,U+6634,U+676a,U+67b5,U+681d,U+6883,U+69b1,U+69e0,U+6b37,U+6b9b,U+6d7c,U+6ed7,U+6f36,U+6f72,U+6f8c,U+7035,U+7039,U+7173,U+7178,U+7228,U+728f,U+72b4,U+72ef,U+72f4,U+7331,U+7481,U+74e0,U+7540,U+75c3,U+75e6,U+763c,U+764d,U+76cd,U+7704,U+7743,U+7780,U+7847,U+786a,U+78b9,U+7962,U+7a02,U+7aac,U+7ab3,U+7b0a,U+7b4c,U+7b7b,U+7bfc,U+7c0f,U+7c16,U+7c40,U+7ca2,U+7cc7,U+7cf8,U+7d77,U+7e3b,U+7ea1,U+7ea9,U+7ef2,U+7f02,U+7f07,U+7f0c,U+7f23,U+7f2f,U+7fbc,U+8016,U+8020,U+812c,U+8136,U+8182,U+822f,U+8233,U+825f,U+8268,U+8284,U+8288,U+8291,U+8308,U+8311,U+835b,U+836d,U+83dd,U+8406,U+840f,U+845c,U+84b4,U+84e3,U+850c,U+855e,U+863c,U+86ba,U+86c4,U+86de,U+86f1,U+873e,U+87bd,U+87db,U+880a,U+883c,U+887f,U+88f0,U+890a,U+892b,U+895e,U+89ef,U+8a48,U+8bdc,U+8c18,U+8c33,U+8c94,U+8db1,U+8dcf,U+8dd6,U+8de3,U+8e6f,U+8e90,U+8f7a,U+8fb6,U+902d,U+90be,U+91af,U+936a,U+948b,U+94d8,U+9513,U+953a,U+956c,U+963c,U+9654,U+966c,U+9688,U+97b4,U+996b,U+9a75,U+9a7a,U+9aba,U+9aed,U+9b08,U+9b43,U+9c8e,U+9c94,U+9c9a,U+9e2b,U+9e36,U+9e4b,U+9e4e,U+9e55,U+9e63,U+9e68-9e69,U+9ebd,U+9ec9,U+9f0d,U+9f37,U+9f51"}},{uri:Xtr,descriptors:{unicodeRange:"U+50a7,U+5240,U+5261,U+52ac,U+531a,U+5363,U+5432,U+5452,U+5456,U+5472,U+5478,U+553f,U+5575,U+5581,U+55cc,U+55fe,U+5601,U+572e,U+57d2,U+57ef,U+581e,U+5924,U+5981,U+5997,U+59a3,U+5aaa,U+5ab8,U+5b34,U+5d5d,U+5def,U+5e11,U+5e91,U+5ed1,U+5ef4,U+5f40,U+600d,U+6019,U+601b,U+605a,U+6092,U+60ab,U+6217,U+623d,U+6369,U+65d2,U+6661,U+670a,U+6753,U+67a7,U+6855,U+68f9,U+6939,U+696e,U+6980,U+6a7c,U+6aab,U+6b82,U+6bf3,U+6bf9,U+6c05,U+6c19-6c1a,U+6ca9,U+6cf6,U+6d1a,U+6dab,U+6f74,U+7085,U+7198,U+71b5,U+7256,U+725d,U+727e,U+72fa,U+7322,U+738e,U+73e5,U+750f,U+755a,U+7594,U+75b3,U+760c,U+7615,U+7630,U+763f,U+77ec,U+7817,U+78a1,U+78d9,U+7905,U+7b2a,U+7b2e,U+7b62,U+7b85,U+7bcc,U+7bea,U+7c26,U+7c74,U+7c9c-7c9d,U+7e47,U+7e9b,U+7e9f,U+7ee0,U+7ee8,U+7ef1,U+7f01,U+7f11,U+7f17,U+7f36,U+7f7e,U+7fee,U+802a,U+80cd,U+8112,U+8169,U+8234,U+8279,U+8298,U+82ca,U+82d8,U+82e1,U+83c0,U+83d4,U+83df,U+8401,U+8451,U+845a,U+8476,U+8478,U+84ba,U+84bd,U+84e0,U+851f,U+8548,U+8556,U+8585,U+868d,U+86e9,U+86f4,U+86f8,U+8765,U+8785,U+87ab,U+87ee,U+8832,U+8872,U+88b7,U+88e2-88e3,U+89da,U+8bce,U+8bd3,U+8bd6,U+8bf9,U+8c16,U+8c73,U+8d5c,U+8dde,U+8f6d,U+8f94,U+8fe8,U+9011,U+915e,U+9185,U+918c,U+94ab,U+94d1,U+94f3,U+9515,U+951d,U+9558,U+9567,U+96ce,U+96e9,U+9785,U+9878,U+987c,U+9883,U+98d1,U+9954,U+9963,U+9a93,U+9ac1,U+9acc,U+9b1f,U+9b49,U+9b4d,U+9b51,U+9ca7,U+9cae,U+9cce,U+9cd3,U+9e37,U+9e39,U+9e41,U+9e46,U+9f22,U+9f2f,U+9f39,U+9f85"}},{uri:$tr,descriptors:{unicodeRange:"U+4e5c,U+4edf,U+4f25,U+4f32,U+4f5e,U+4f76,U+4faa,U+4fe6,U+5028,U+5048,U+5250,U+535f,U+538d,U+53c1,U+5412,U+5443,U+54d4,U+54dd,U+5541,U+5550,U+5577,U+55dd,U+55f3,U+560f,U+562c,U+5657-5658,U+5664,U+56af,U+575c,U+577c,U+57b2,U+57da,U+5800,U+5a62,U+5aeb,U+5c3b,U+5ca3,U+5d26,U+5d9d,U+5f01,U+5fb5,U+5fdd,U+5ff8,U+6029,U+6041,U+6079,U+60b1,U+6222,U+629f,U+6332,U+63bc,U+63e0,U+6485,U+65ab,U+65c3,U+65c6,U+668c,U+669d,U+66be,U+67fd,U+6800,U+68fc,U+690b,U+6924,U+6978,U+69a7,U+6a3e,U+6a50,U+6a5b,U+6a97,U+6b24,U+6b8d,U+6baa,U+6c10,U+6c54,U+6ceb,U+6d04,U+6d4d,U+6eb1,U+6ebd,U+7110,U+71b3,U+71f9,U+7230,U+728d,U+7292,U+72b8,U+72d2,U+7360,U+73a2,U+7511,U+75a0,U+75c8,U+779f,U+7826,U+7877,U+7a39,U+7aa8,U+7ae6,U+7b04,U+7b0f,U+7baa,U+7bac,U+7c1f,U+7ccd,U+7ecb,U+7ed4,U+7ed7,U+7efb,U+7f0d,U+7f5f,U+7faf,U+7fd5,U+7fe5,U+8027,U+80bc,U+80dd,U+80fc,U+8132,U+815a,U+8167,U+816d,U+81ca,U+8228,U+82a1,U+82a9,U+82ab,U+82cc,U+8351,U+8368,U+83b8,U+83d8,U+83ea,U+83f0,U+8497,U+84c1,U+858f,U+85ff,U+867b,U+86a8-86a9,U+870a,U+8722,U+876e,U+877c,U+87e5,U+8888,U+88df,U+8919,U+8bcc,U+8bdf,U+8be8,U+8bee,U+8c20,U+8c2f,U+8d36,U+8df8,U+8e05,U+8e2f,U+8f9a,U+9021,U+908b,U+90b4,U+90ba,U+90d0,U+90eb,U+90fe,U+91aa,U+933e,U+9486-9487,U+948d,U+9490,U+94ad,U+94bd,U+94d6,U+94d9,U+9507,U+9546,U+955e,U+956b,U+95e9,U+9604,U+960b,U+9612,U+9615,U+9617,U+96b9,U+989a-989b,U+989e,U+9a78,U+9a7d,U+9aa0,U+9aa2,U+9ac2,U+9b23,U+9b3b,U+9c82,U+9cca,U+9cd9,U+9e28,U+9e5a,U+9e5e,U+9e6c,U+9efe,U+9f0b"}},{uri:Arr,descriptors:{unicodeRange:"U+4e47,U+4e8d,U+4f65,U+4f89,U+50ee,U+520e,U+5416,U+5454,U+54bb,U+54c2,U+54d3,U+54de,U+5591,U+55e5,U+560c,U+566b,U+5769,U+578c,U+5793,U+57e4,U+5889,U+593c,U+59ab,U+5ad4,U+5ad8,U+5af1,U+5b53,U+5ba5,U+5c59,U+5c63,U+5d5b,U+5e0f,U+5e14,U+5edb,U+5fbc,U+6004,U+60ad,U+610e,U+61b7,U+624c,U+634c,U+647a,U+64ba,U+65f0,U+6600,U+66f7,U+67e2,U+67f0,U+680c,U+686b,U+6874,U+691f,U+6989,U+6a17,U+6b81,U+6b84,U+6c06-6c07,U+6c3d,U+6d07,U+6d27,U+6d2b,U+6d91,U+6e6b,U+6e8f,U+6fde,U+70bb,U+723b,U+726e,U+72b0,U+72ce,U+72f2,U+7301,U+731e,U+737e,U+7477,U+748e,U+74ff,U+7633,U+7654,U+771a,U+7726,U+7765,U+7768,U+781c,U+7829,U+78d4,U+7913,U+7957,U+79d5,U+79eb,U+7a70,U+7a86,U+7b25,U+7b38,U+7b47,U+7b72,U+7ba6-7ba7,U+7dae,U+7ee1,U+7efe,U+7f26,U+7f31,U+7f35,U+801c,U+8043,U+809f,U+80ab,U+80d7,U+8118,U+8188,U+81cc,U+823e,U+8244,U+824f,U+82b4,U+82c1,U+82e4,U+82f4,U+8306,U+833a,U+835c,U+839c,U+83b3,U+83bc,U+846d,U+867a,U+868b,U+8734,U+87ca,U+886e,U+887e,U+88a2,U+88c9,U+8921,U+8bb5,U+8bf3,U+8c04,U+8c17,U+8c1d,U+8c25,U+8c36,U+8c55,U+8c78,U+8d3d,U+8d40,U+8d59,U+8d67,U+8d91,U+8dbf,U+8deb-8dec,U+8dfd,U+8e14,U+8e41,U+8f8e,U+900b,U+9044,U+9062,U+90cf,U+9123,U+9146,U+9162,U+9172,U+918d,U+9190,U+92c8,U+93ca,U+948c,U+94aa,U+94b2,U+94c8,U+94ca,U+94d5,U+94df,U+94e9-94ea,U+94f7,U+94fc-94fd,U+951b,U+954f,U+9554,U+9559,U+9566,U+9571-9572,U+95f1,U+9608,U+960f,U+97af,U+988f,U+98d5,U+992e,U+9955,U+9ab0,U+9b32,U+9c90,U+9c9e,U+9ca5,U+9ca9,U+9cad,U+9cb1,U+9cc3,U+9e47,U+9ee7,U+9f87"}},{uri:err,descriptors:{unicodeRange:"U+4e93,U+4ec4,U+4ef5,U+4f27,U+4f7b,U+4fe3,U+5080,U+5121,U+51eb,U+5208,U+52f0,U+53f5,U+5453,U+5466,U+54a6,U+54bf,U+54d0,U+5533,U+5549,U+5556,U+556d,U+558f,U+55f2,U+55f5,U+5627,U+567b,U+56d4,U+571c,U+5739,U+57b4,U+5807,U+58c5,U+59a4,U+59af,U+59d8,U+5a09,U+5a0c,U+5a4a,U+5ad2,U+5b6c,U+5ca2,U+5cac,U+5d03,U+5d6c,U+5db7,U+5ebe,U+5f2d,U+5fea,U+6042,U+6120,U+6175,U+6221,U+623e,U+6339,U+638a,U+643d,U+64b8,U+64e2,U+66e9,U+67b3,U+67c1,U+67d2,U+6832,U+6877,U+68f0,U+6934,U+6966,U+6987,U+6998,U+69c1,U+69ce,U+6a3d,U+6a84,U+6aa9,U+6b87,U+6bd6,U+6c16,U+6c18,U+6cd4,U+6cee,U+6de0,U+6e0c,U+6ecf,U+6f4b,U+70b7,U+7168,U+72d9,U+7352,U+73b3,U+73d0,U+7441,U+74d2,U+75a5,U+75e7-75e8,U+7610,U+7619,U+765e,U+772d,U+7812,U+782c,U+784c,U+7850,U+7856,U+789b,U+78f4,U+7a51,U+7b15,U+7b1e,U+7b24,U+7b5a,U+7bb8,U+7bc1,U+7bd9,U+7ed0,U+7ee6,U+7efa,U+7f1b,U+7f1f,U+7f22,U+7f45,U+7f71,U+7fa7,U+7fbf,U+7ff3,U+8052,U+80b1,U+80db,U+80f4,U+81bb,U+81ec,U+8202,U+8210,U+8249,U+828a,U+828e,U+82e3,U+8315,U+8369,U+8378,U+83a8,U+83aa,U+83b4,U+83e1,U+84fc,U+8538,U+853b,U+859c,U+85ae,U+86b4,U+86c9,U+86cf,U+8725,U+879f,U+87b3,U+887d,U+88fe,U+8a8a,U+8ba7,U+8c07,U+8c14,U+8c30,U+8c47,U+8db5,U+8dd7,U+8e1f,U+8e69,U+8e70,U+8e85,U+8f78,U+8f87,U+8f8b,U+8f8f,U+90c4,U+9143,U+917d,U+948f,U+94cd,U+94d2,U+94ef,U+954a,U+9609-960a,U+96d2,U+9708,U+9765,U+97ea,U+9880,U+98a7,U+996c,U+9980,U+9991,U+9a88,U+9ab6,U+9afb,U+9b47,U+9c87,U+9c9b,U+9cb5,U+9cc7,U+9e2c,U+9e42,U+9e58,U+9ecd,U+9ecf,U+9f8a,U+9f8c"}},{uri:trr,descriptors:{unicodeRange:"U+4ebb,U+4edd,U+4fa9,U+502c,U+50a5,U+51c7,U+51fc,U+523d,U+5241,U+530f,U+5464,U+549d,U+54a3,U+5514,U+5527,U+555c,U+556e,U+5576,U+55b1,U+55b9,U+55eb,U+5624,U+564c,U+5671,U+5685,U+568f,U+56d7,U+56e1,U+57a1,U+57d9,U+5942,U+5a67,U+5c50,U+5c7a,U+5c98,U+5d06,U+5d27,U+5d6f,U+5df3,U+5dfd,U+5e19,U+5ea0,U+5eb9,U+5eea,U+5ffe,U+600f,U+606b,U+6215,U+622c,U+6266,U+62bb,U+62bf,U+6308,U+6387,U+63b8,U+63c4,U+63c6,U+63f6,U+6441,U+6555,U+659b,U+6677,U+66a7,U+6775,U+678b,U+679e,U+6840,U+6849,U+6860,U+68c2,U+6910,U+6a28,U+6a2f,U+6a79,U+6b92-6b93,U+6bc2,U+6bfd,U+6c29,U+6c32,U+6c86,U+6cc5,U+6d0c,U+6d60,U+6da0,U+6ddd,U+6e86,U+6ed3,U+6edf,U+6fb9,U+6fd1,U+6fef,U+7023,U+7080,U+70ca,U+712f,U+7145,U+7284,U+732c,U+73c8,U+73d9,U+740a,U+7457,U+7596,U+759d,U+75a3,U+75d8,U+75e3-75e4,U+75ff,U+7622,U+7688,U+76b4,U+76e5,U+7818,U+7887,U+789a,U+78b2,U+7b08,U+7b33,U+7c2a,U+7ccc,U+7ea8,U+7ec0,U+7fe6,U+8012,U+8084,U+8093,U+80e4,U+80ef,U+8297,U+82a8,U+82be,U+8331,U+8366,U+83c5,U+83fd,U+8473,U+84a1,U+84ca,U+84d1,U+857b,U+85c1,U+85d3,U+8605,U+8662,U+86aa,U+86b1,U+86d4,U+86ed,U+86f3,U+8709,U+8748,U+874c,U+8763,U+89c7,U+89de,U+89e5,U+8a3e,U+8ba6,U+8c00,U+8c21,U+8c49,U+8c7a,U+8d30,U+8df9,U+8e51,U+8e59,U+8f6b,U+8f73,U+8ff3,U+9016,U+9026,U+902f,U+9099,U+909b,U+90c7,U+914a,U+91ae,U+91ba,U+9495,U+94a3,U+94af,U+94ba,U+94bf,U+94cc,U+94e1,U+94f0,U+9531,U+955d,U+95f3,U+9697,U+96bc,U+975b,U+977c,U+98a2,U+998a,U+9994-9995,U+9a9b,U+9ab7,U+9ac5,U+9c91,U+9ccf,U+9cd5,U+9e29,U+9edc,U+9edf,U+9f83,U+9f88-9f89"}},{uri:rrr,descriptors:{unicodeRange:"U+4ee8,U+4f22,U+4f43,U+4f57,U+4f5d,U+4f6f,U+4ff8,U+502d,U+507b,U+5345,U+53df,U+53fb,U+544b,U+5482,U+54a7,U+54cc,U+550f,U+5544,U+5555,U+5594,U+55e8,U+55ec,U+55ef,U+564e,U+56f9,U+5704,U+576d,U+5785,U+57ad,U+5914,U+5958,U+599e,U+59aa,U+59be,U+5a06,U+5abe,U+5ae1,U+5b40,U+5bee,U+5cbf,U+5cc4,U+5ccb,U+5d47,U+603f,U+6078,U+607d,U+607f,U+608c,U+609a,U+60fa,U+61ff,U+621b,U+622e,U+626a,U+6371,U+63ae,U+63cd,U+63d6,U+6410,U+6414,U+6421,U+6448,U+64d8,U+6710,U+6748,U+6772,U+680e,U+6954,U+69ab,U+6c68,U+6c8f,U+6ca4,U+6d2e,U+6e4e,U+6e98,U+6fe0,U+7094,U+70e9,U+7116,U+7119,U+723f,U+73c9,U+74e4,U+753e,U+7548,U+75bd,U+75cd,U+7618,U+7634,U+76c5,U+76f1,U+7708,U+7719,U+777e,U+7791,U+77b3,U+7823,U+7827,U+7830,U+7889,U+7893,U+7949,U+795c,U+79e3,U+7a14,U+7a88,U+7a95,U+7aa0,U+7afd,U+7b90,U+7bd1,U+7bfe,U+7da6,U+7ec2,U+7eef,U+7f03-7f04,U+7f08,U+7f58,U+7f61,U+7f9f,U+8174,U+8200,U+828d,U+82c4,U+82d5,U+82dc,U+82f7,U+832d,U+835a,U+840b,U+8438,U+852b,U+869d,U+86ac,U+86d0,U+86f0,U+8782,U+87a8,U+87d1-87d2,U+87e0,U+8839,U+8913,U+891b,U+8934,U+8941,U+89ca,U+89ce,U+8a07,U+8ba3,U+8bc5,U+8bcb,U+8bdb,U+8c11,U+8c15,U+8c29,U+8c32,U+8dc4,U+8dce,U+8ddb,U+8dfa,U+8e09,U+8e1d,U+8e39,U+8e42,U+8e49,U+8e4b,U+8e8f,U+8f71-8f72,U+9004,U+9036,U+9097,U+90dc,U+90e2,U+90e6,U+90ef,U+9104,U+919a,U+91b4,U+938f,U+9497,U+950f,U+9557,U+9562-9563,U+9573,U+9606,U+9649,U+972d,U+973e,U+97a3,U+97eb,U+988c,U+9894,U+98a6,U+9974,U+9977,U+997d,U+9a90,U+9a9d,U+9aef,U+9ca2,U+9ccd,U+9cdf,U+9e20,U+9e4c,U+9e6b,U+9f3e"}},{uri:irr,descriptors:{unicodeRange:"U+4ede,U+4ee1,U+4eeb,U+4fda,U+4ffe,U+5025,U+506c,U+50f3,U+5106,U+520d,U+525c,U+52ad,U+530d,U+5310,U+539d,U+53a9,U+53fc,U+5421,U+5477,U+54e7,U+551b,U+5530,U+557e,U+5599,U+55c4,U+55d1,U+55d4,U+55df,U+55e4,U+55ea,U+5623,U+562d,U+5654,U+56eb,U+56f5,U+57a7,U+57d5,U+57dd,U+584d,U+5880,U+58ec,U+59dd,U+5a32,U+5a55,U+5a75,U+5b51,U+5b71,U+5b73,U+5cd2,U+5ce4,U+5e5b,U+5e96,U+5fd2,U+607b,U+61d1,U+634b,U+636d,U+63b3,U+63ff,U+64c0,U+661d,U+6657,U+66dc,U+67a5,U+6841,U+6867,U+6901,U+699b,U+6a47,U+6b46,U+6c21,U+6c24,U+6c35,U+6c4a,U+6c94,U+6ca3,U+6d39,U+6d63,U+6d6f,U+6d94,U+705e,U+71e7,U+726f,U+72cd,U+72de,U+72f0,U+7325,U+7350,U+7391,U+741a,U+757f,U+7583,U+75b1,U+75b4,U+75b8,U+75c2,U+75f1,U+766f,U+7699,U+7751,U+789c,U+7a17,U+7be6,U+7cb2,U+7ea3,U+7eb0,U+7ebe,U+7eeb,U+7f25,U+7f2c,U+7fb8,U+8026,U+8037,U+8153,U+8171,U+8191,U+8214,U+821b,U+8222,U+826e,U+82eb,U+830c,U+8314,U+8334,U+83d6,U+8418,U+843c,U+84ff,U+8564,U+8572,U+8616,U+866c,U+8693,U+86a3,U+86a7,U+86af,U+86b6,U+86c6,U+86ca,U+8708,U+870d,U+8759,U+8760,U+87af,U+87c6,U+8869,U+88c6,U+89d0,U+8b07,U+8baa-8bab,U+8bc2,U+8be4,U+8bf0,U+8c2a,U+8c62,U+8c89,U+8d49,U+8d6d,U+8d84,U+8d94,U+8db8,U+8dc6,U+8e2e,U+8e3d,U+8e47,U+8e7f,U+9005,U+9051,U+907d,U+9082,U+9088,U+90b0,U+90d3,U+9150,U+949c,U+94a4,U+94b9,U+94cb,U+94e0,U+9509,U+9512,U+951f,U+9534,U+9552-9553,U+965f,U+96b0,U+9791,U+9889,U+9990,U+9a9c,U+9aa7,U+9c88,U+9cb2-9cb3,U+9cb6-9cb7,U+9cc5,U+9cdc,U+9e22,U+9e2a,U+9e57,U+9e67,U+9e73,U+9e82,U+9eb8,U+9ee0,U+9f9b"}},{uri:urr,descriptors:{unicodeRange:"U+4eb5,U+4f09,U+4f5a,U+4f8f,U+4fce,U+4fdf,U+4fea,U+4ff3,U+500c,U+500f,U+504e,U+5088,U+52be,U+5420,U+5457,U+5499,U+549b,U+54c6,U+54d2,U+558b,U+559f,U+55bd,U+55d6,U+565c,U+567c,U+568e,U+5768,U+577b,U+57a9,U+57ed,U+59f9,U+5a11,U+5a40,U+5ae6,U+5b6a,U+5b93,U+5bb8,U+5c15,U+5c99,U+5c9c,U+5cc1,U+5d2e,U+5d4b,U+5d99,U+5e54,U+5e61,U+5fcf-5fd1,U+6002,U+6006,U+6014,U+60af,U+60c6,U+60da,U+60f4,U+621f,U+62c8,U+631b,U+631e,U+63e9,U+64b5,U+655d,U+6619,U+6635,U+6641,U+67ad,U+67b0,U+67b7,U+67e9,U+684e,U+688f,U+695d,U+696b,U+69b7,U+6a58,U+6c26,U+6d35,U+6d43,U+6d9e,U+6dd9,U+6dec,U+6e11,U+6e6e,U+6e9f,U+6ec2,U+6ee2,U+6ef9,U+6f09,U+6f66,U+6f8d,U+6fc2,U+6fc9,U+729f,U+72c8,U+73de,U+7430,U+7566,U+7579,U+75c9,U+75e2,U+75fc,U+762a,U+7638,U+7678,U+76c2,U+76f9,U+778c,U+77cd,U+77dc,U+7800,U+781d,U+782d,U+783b-783c,U+78a3,U+78ec,U+7980,U+7a23,U+7b95,U+7bdd,U+7c0c,U+7c41,U+7c91,U+7cb3,U+7cc5,U+7ecc,U+7f19,U+7fca,U+8006,U+8069,U+807f,U+80bd,U+80ed,U+814b,U+8198,U+82cb,U+82d2,U+834f,U+8360,U+847a,U+84d6,U+84e5,U+8537,U+85d0,U+8671,U+86a4,U+86ce,U+86f9,U+8703,U+8707,U+8737,U+873b,U+8815,U+8936,U+8bc3,U+8bcf,U+8bd2,U+8bd8,U+8be9,U+8c0c,U+8c0f,U+8c4c,U+8d45,U+8d5d,U+8d73,U+8e31,U+8e6d,U+8e76,U+8fe4,U+9041,U+90d7,U+9169,U+92ae,U+94a1,U+94c4,U+94c9,U+94db,U+94e7,U+9503,U+9506,U+9517,U+9528,U+9537,U+9542,U+9549,U+95fe,U+9616,U+961a,U+96c9,U+96f3,U+9701,U+970e,U+9739,U+9753,U+9798,U+98d2-98d3,U+98d9-98da,U+9968,U+996f,U+9984,U+9997,U+9acb,U+9b03,U+9c85,U+9ca8,U+9cab,U+9e49,U+9e51,U+9e66,U+9f10"}},{uri:arr,descriptors:{unicodeRange:"U+4e15,U+4e1e,U+4e2b,U+4eb3,U+4ec9,U+4f0e,U+4f64,U+501c,U+50a9,U+510b,U+51a2,U+51bc,U+527d,U+52d0,U+53fd,U+5429,U+542e,U+5486,U+54af,U+5506,U+5511,U+5522,U+552c,U+556c,U+55b3,U+55d2,U+55e6,U+55fd,U+561f,U+5639,U+5659,U+5662,U+5693,U+572a,U+5892,U+598a,U+5992,U+59a9,U+5a20,U+5ae3,U+5b17,U+5b7d,U+5d34,U+5d3d,U+5d4a,U+5d82,U+5e1a-5e1b,U+5ea5,U+5f0b,U+5f77,U+5fd6,U+5fff,U+6026,U+6035,U+6063,U+60b4,U+60bb,U+60ee,U+612b,U+6194,U+61ca,U+61e6,U+61f5,U+620a,U+6248,U+62a1,U+62d7,U+6376,U+637b,U+652b,U+65bc,U+65cc,U+65ce,U+65d6,U+664c,U+665f,U+6666,U+6684,U+66b9,U+6773,U+6777,U+6787,U+67de,U+6845,U+693d,U+6994,U+6a35,U+6d54,U+6d5c,U+6d8e,U+6dd6,U+6eb4,U+6f2a,U+6f78,U+704f,U+70ec,U+7118,U+714a,U+7172,U+71b9,U+724d,U+728a,U+7337,U+733e,U+7396,U+73b7,U+73cf,U+7428,U+742c,U+742e,U+74ee,U+74f4,U+7525,U+753a,U+7572,U+75d4,U+765c,U+768e,U+7762,U+777d,U+77fd,U+7825,U+7837,U+78b4,U+795f,U+79ed,U+7a1e,U+7b06,U+7b20,U+7ba9,U+7bab,U+7c7c,U+7cbd,U+7cdc,U+7ec9,U+7ef6,U+7f30,U+7f42,U+7f44,U+7f54,U+7f94,U+8004,U+800b,U+8019,U+809b,U+80ae,U+80c4,U+80f1,U+8146,U+816e,U+817c,U+81c0,U+81fc,U+81fe,U+822b,U+830f,U+832f,U+8340,U+8365,U+8385,U+8392,U+83a0,U+8424,U+84af,U+869c,U+8713,U+8717-8718,U+87c0,U+87cb,U+87fe,U+8821,U+8902,U+89d1,U+8bb9,U+8c12,U+8d32,U+8d53,U+8df7,U+8e7c,U+8f7c,U+8f95,U+8fab,U+9052,U+905b,U+9095,U+909d,U+90c5,U+911e,U+9122,U+916a,U+919b,U+948e,U+9492,U+949a,U+94b5,U+94bc,U+94c6,U+94f1,U+9502,U+9511,U+9536,U+956f-9570,U+9602,U+9621,U+9631,U+998b,U+99a5,U+9a81,U+9a9e,U+9ebe,U+9f8b"}},{uri:nrr,descriptors:{unicodeRange:"U+4f2b,U+4f3d,U+4fac,U+5043,U+5055,U+5140,U+5156,U+51cb,U+5243,U+531d,U+536f,U+53a5,U+53ae,U+53f1,U+541d,U+5431,U+547b,U+5492,U+5494,U+54a4,U+54aa,U+54ce,U+54fd,U+5509,U+5520,U+553e,U+557b,U+55c5,U+55e1,U+55f7,U+5608,U+5636,U+563b,U+5773,U+57a0,U+5811,U+587e,U+58d5,U+59e3,U+5a29,U+5a6a,U+5a76,U+5a7a,U+5ac9,U+5b62,U+5b95,U+5c49,U+5c8c,U+5cab,U+5cb7,U+5d02,U+5d58,U+5e44,U+5e7a,U+5eff,U+5f29,U+5f89,U+5f9c,U+5fa8,U+6005,U+6043,U+60b8,U+60d8,U+60ec,U+60f0,U+6115,U+618e,U+630e,U+637a,U+6390,U+63ac,U+63b0,U+64de,U+6525,U+6538,U+65ee-65ef,U+6631,U+6636,U+6654,U+677c,U+67b8,U+67d8,U+683e,U+6886,U+68b5,U+692d,U+6963,U+6979,U+6988,U+6b59,U+6b9a,U+6c69,U+6c74,U+6cae,U+6ce0,U+6cef,U+6d95,U+6dc5,U+6dde,U+6de6,U+6dfc,U+6ea7,U+6f15,U+6f29,U+7096,U+70c3,U+7131,U+715c,U+7166,U+7266,U+7317,U+731d,U+7329,U+73e9,U+7425,U+7455,U+7490,U+74ef,U+7519,U+75b5,U+75b9,U+75de,U+7656,U+7663,U+7691,U+7729,U+77fe,U+783e,U+787c,U+795a,U+7a79,U+7abf,U+7b3a,U+7b4f,U+7b60,U+7b75,U+7b8d,U+7bb4,U+7bd3,U+7be1,U+7cbc,U+7edb,U+7f1c,U+7f8c,U+7fb2,U+7fb9,U+7fce,U+7ff1,U+810d,U+81c6,U+82a5,U+82aa,U+82de,U+8317,U+8343,U+835e,U+8364,U+836a,U+853a,U+8543,U+854a,U+8559,U+8568,U+85b0,U+85b9,U+864f,U+86e4,U+8715,U+8845,U+8884,U+88e8,U+88f1,U+8983,U+8be1,U+8c1f,U+8c27,U+8c5a,U+8c82,U+8d58,U+8dbe,U+8f98,U+9035,U+9074,U+90a1,U+9149,U+9157,U+93d6,U+949d,U+94c2,U+94e3-94e4,U+95eb,U+95f0,U+9611,U+9619,U+9642,U+968d,U+9706,U+970f,U+97ed,U+988a,U+9893,U+98e8,U+9a77,U+9a87,U+9aa1,U+9abc,U+9cdd,U+9e2f,U+9e33,U+9e44,U+9e5c,U+9e9d,U+9edd"}},{uri:orr,descriptors:{unicodeRange:"U+4f58,U+4f6c,U+4f70,U+4fd0,U+5014,U+51bd,U+524c,U+5315,U+5323,U+535e,U+540f,U+542d,U+545b,U+548e,U+549a,U+54ab,U+54fc,U+5567,U+556a,U+5600,U+5618,U+563f,U+5669,U+56f1,U+56ff,U+573b,U+574d,U+579b,U+57b8,U+57c2,U+586c,U+58f9,U+595a,U+598d,U+5993,U+5996,U+59d7,U+5b7a,U+5ba6,U+5c4e,U+5c96,U+5ce5,U+5eb6,U+5f08,U+5f99,U+602f,U+6059,U+606c,U+607a,U+60ed,U+61a9,U+620c,U+6249,U+62a8,U+62c4,U+62ed,U+62fd,U+6342,U+6345,U+6396,U+63a3,U+6402,U+6413,U+642a,U+6487,U+64a9,U+64ac,U+64ae,U+64b7,U+659f,U+65a1,U+667e,U+66f3,U+67e0,U+69db,U+69df,U+6aac,U+6b86,U+6c50,U+6c5e,U+6c76,U+6c85,U+6c8c,U+6cde,U+6d19,U+6d52,U+6da7,U+6db8,U+6e1a,U+6e25,U+6e4d,U+6e5f,U+6ec1,U+6f31,U+6f7a,U+6fa7,U+6fe1,U+701b,U+70ab,U+70f7,U+717d,U+71a8,U+7252,U+72c4,U+72e1,U+7315,U+736d,U+73ae,U+73c0,U+73c2,U+740f,U+75a4,U+7600-7601,U+768b,U+76bf,U+76d4,U+7728,U+772f,U+776c,U+77a0,U+77b0,U+77f8,U+783a,U+78d0,U+78fa,U+7977,U+7a37,U+7a92,U+7afa,U+7b71,U+7b94,U+7cef,U+7f28,U+7fe1,U+808b,U+80e5,U+80eb,U+8110,U+8113,U+812f,U+814c,U+81c3,U+8235,U+82d4,U+8309,U+83c1,U+8431,U+8469,U+84bf,U+84d3,U+84df,U+84e6,U+8511,U+8638,U+86c0,U+86db,U+86fe,U+8757,U+8822,U+8882,U+8885,U+8892,U+88f3,U+892a,U+8ba5,U+8bd9,U+8be0,U+8be7,U+8bfd,U+8c1a,U+8d4a,U+8d4e,U+8d66,U+8dda,U+8e0c,U+8e52,U+8e74,U+8e87,U+8f76,U+8fc2,U+8fe6,U+900d,U+9068,U+90ac,U+90b3,U+90b8,U+90e7,U+9119,U+9131,U+915a,U+916e,U+94b4,U+94d0,U+94e2,U+94ec,U+94ff,U+9522,U+9535,U+9556,U+965b,U+96f9,U+9774,U+9981,U+998d,U+998f,U+9a6e,U+9a7f,U+9a8a,U+9b13,U+9c9f,U+9e3e,U+9e43,U+9e6d,U+9e8b,U+9e92,U+9edb,U+9eef"}},{uri:srr,descriptors:{unicodeRange:"U+4e10,U+4e56,U+4e98,U+4ec3,U+4f3a,U+4f5f,U+4f88,U+4f97,U+4fa5,U+4fe8,U+504c,U+5197,U+52fa,U+5364,U+53e8,U+5406,U+543c,U+545c,U+5471,U+5480,U+5495,U+54b3,U+54df,U+54e6,U+54ee,U+557c,U+5583,U+55dc,U+55e3,U+566c,U+592f,U+5944,U+5983,U+59ca,U+59e5,U+5a13,U+5a7f,U+5b09,U+5bd0,U+5e4c,U+5eb5,U+5f1b,U+5f3c,U+608d,U+60cb,U+61a7,U+61ac,U+61cb,U+6233,U+62a0,U+62e7,U+62ee,U+62f4,U+62f7,U+634e,U+6382,U+63c9,U+63ea,U+6400,U+645e,U+6482,U+6556,U+6593,U+6615,U+664f,U+66e6,U+672d,U+675e,U+67da,U+6805,U+6808,U+6868,U+68a2,U+695e,U+69ad,U+6a80,U+6a90,U+6b83,U+6be1,U+6c30,U+6cad,U+6cb1,U+6cf1,U+6d31,U+6d93,U+6dae,U+6dbf,U+6dc6-6dc7,U+6e0d,U+6e32,U+6e3a,U+6e85,U+6eba,U+6f3e,U+6f5e,U+6f7c,U+6fee,U+71ee,U+722a,U+72b7,U+72e9,U+73ba,U+73d1,U+7409,U+7435-7436,U+7459-745a,U+747e,U+7487,U+74e2,U+7504,U+752c-752d,U+7599,U+759f,U+75a1,U+75ca,U+75f0,U+761f,U+7629,U+777f,U+7785,U+77a5,U+77bf,U+78d5,U+7934,U+7940,U+79a7,U+7b19,U+7c38,U+7c95,U+7cb1,U+7ce0,U+7eca,U+7ef7,U+7f2b,U+7f81,U+7fcc,U+8046,U+8148,U+8165,U+819b,U+81ba,U+828b,U+82ae,U+82b7,U+82d3,U+8301,U+830e,U+831c,U+8338,U+837c,U+8393,U+8398,U+83ba,U+83e0,U+83e9,U+853c,U+8654,U+86df,U+8712,U+873f,U+874e,U+8783,U+8859,U+88a4,U+8925,U+8bb7,U+8bff,U+8c19,U+8c1b,U+8c24,U+8c2c,U+8d61,U+8db4,U+8e6c,U+8f8a,U+8fe5,U+8ff8,U+901e,U+90f4,U+912f,U+9163,U+9170,U+91dc,U+949b,U+94a8,U+94b3,U+94c0,U+94e8,U+9525,U+9530,U+9539,U+954c-954d,U+9550,U+955b,U+962a,U+9685,U+96cc,U+9776,U+988d,U+9975,U+9985,U+9a6f,U+9aa5,U+9ab8,U+9c7f,U+9ca4,U+9cb8,U+9e25,U+9e35,U+9e4a"}},{uri:lrr,descriptors:{unicodeRange:"U+4ea2,U+4ea5,U+4f36,U+4f84,U+4f8d,U+501a,U+5029,U+516e,U+51a5,U+51c4,U+51f8,U+5201,U+527f,U+5321,U+5352,U+5366,U+53e9,U+54c7,U+5632,U+5676,U+56b7,U+56bc,U+56da,U+56e4,U+5703,U+5729,U+5742,U+57a2-57a3,U+5815,U+58d1,U+5919,U+592d,U+5955,U+5a05,U+5a25,U+5a34,U+5b70,U+5b75,U+5bdd,U+5bf0,U+5c41,U+5c79,U+5c91,U+5c94,U+5ce6,U+5ced,U+5d69,U+5dc5,U+5e16,U+5e27,U+5f27,U+5f95,U+5ffb,U+6020,U+604d,U+6055,U+60e6,U+60eb,U+6123,U+618b,U+61a8,U+620d,U+62c7,U+62ce,U+62d9,U+631f,U+634d,U+6452,U+6479,U+64ce,U+64d2,U+655b,U+660a,U+6726,U+67c4,U+6809,U+6853,U+68e3,U+68f1,U+68fa,U+693f,U+6942,U+6995,U+69a8,U+69b4,U+6a71,U+6b89,U+6bcb,U+6bd3,U+6bd9,U+6c40,U+6cf8,U+6cfe,U+6d85,U+6da3,U+6daa,U+6e0e,U+6e43-6e44,U+6f88,U+7078,U+7099,U+70bd,U+70d9,U+70fd,U+7109,U+7184,U+7239,U+733f,U+73f2,U+748b,U+749c,U+749e,U+759a,U+75d2,U+75eb,U+7620,U+766b,U+7693,U+76cf,U+7738,U+773a,U+776b,U+778e,U+77aa,U+7852,U+78be,U+7948,U+795b,U+7960,U+796f,U+79ba,U+7a20,U+7a96,U+7aa5,U+7b03,U+7b28,U+7b50,U+7b77,U+7bc6,U+7bf1,U+7c27,U+7d0a,U+7ead,U+7ec5,U+7ee2,U+7ef0,U+7efd,U+7f0e,U+7f2e,U+7f79,U+7f9a,U+8098,U+80da,U+80e7,U+80f0,U+80f3,U+80fa,U+818a,U+81e7,U+8237-8238,U+8299,U+82b8,U+82ce,U+837b,U+83bd,U+83cf,U+8426,U+8475,U+85c9,U+85d5,U+85dc,U+85e9,U+871a,U+8747,U+8749,U+888d,U+8910,U+891a,U+8bb4,U+8be3,U+8bec,U+8bf2,U+8c06,U+8c0d,U+8d31,U+8d48,U+8de4,U+8e1e,U+8e4a,U+8e66,U+8f84,U+8f97,U+9083,U+90e1,U+9165,U+91c9,U+94b0,U+94f5,U+9504,U+9532,U+956d,U+95f5,U+95fa,U+9668,U+9698,U+96bd,U+9704,U+9773,U+9890,U+996a,U+997a,U+9a74,U+9a8b,U+9cc4,U+9ccc"}},{uri:grr,descriptors:{unicodeRange:"U+4ea8,U+4f1e,U+4f51,U+4f63,U+4f7c,U+4f83,U+4fa0,U+4fd1,U+4ffa,U+5018,U+5026,U+508d,U+50bb,U+50f5,U+50fb,U+5162,U+5319,U+5320,U+538c,U+5413,U+541f,U+5475,U+54bd,U+54d1,U+5589,U+5598,U+575f,U+57ae,U+57e0,U+5937,U+5974,U+5978,U+59ae,U+5a1f,U+5a49,U+5ab3,U+5b99,U+5b9b,U+5ba0,U+5be1,U+5be5,U+5c09,U+5c27,U+5de2,U+5e9a,U+5f26,U+5f8a,U+5f98,U+6021,U+606d,U+60bc,U+60d5,U+60e7,U+611a,U+614c,U+6254,U+626f,U+6292,U+6296,U+62b9,U+62e2,U+631a,U+631d,U+6320,U+6346,U+63ba,U+6467,U+64bc,U+658b,U+663c,U+6643,U+6652,U+6656,U+6687,U+66d9,U+66dd,U+66f0,U+673d,U+67ab,U+6816-6817,U+68a7,U+68ad,U+68cd,U+68e0,U+6986,U+69fd,U+6b47,U+6bd7,U+6c1f,U+6c2e-6c2f,U+6cbe,U+6de4,U+6e1d,U+6e83,U+6e9c,U+6ed4-6ed5,U+6f4d,U+70f9,U+7130,U+716e,U+718f,U+71ac,U+71e5,U+72fc,U+731c,U+7334,U+73ca,U+7422,U+7426,U+745f,U+7470,U+75af,U+75f4,U+762b,U+763e,U+7696,U+7737,U+7741,U+77a7,U+77bb,U+77ee,U+785d,U+788c,U+78ca,U+7901,U+796d,U+7985,U+79fd,U+7a3c,U+7a57,U+7a74,U+7b5b,U+7caa,U+7cb9,U+7cd5,U+7eac,U+7eb6,U+7ed1,U+7ee5,U+7f20,U+7f2a,U+7f38,U+7f69,U+7fa1,U+8018,U+8038,U+803f,U+804b,U+80a2,U+80be,U+80d6,U+817a,U+81fb,U+820c,U+82ad,U+82af,U+82bd,U+8327,U+8354,U+835f,U+8367,U+836b,U+840c,U+841d,U+8471,U+849c,U+84b2,U+84c9,U+8517,U+851a,U+8549,U+8681,U+8721,U+8776,U+88d9,U+88f9,U+89c5,U+8c1c,U+8c34,U+8d81,U+8d9f,U+8e0a,U+8e72,U+8eb2,U+8fed,U+901b,U+902e,U+906e,U+9091,U+90aa,U+90af,U+915d,U+9171,U+946b,U+9489,U+9499,U+94a5,U+9508,U+9524,U+952d,U+9551,U+9576,U+95f7,U+9600,U+96b6,U+96c0,U+9756,U+97f6,U+98a0,U+98a4,U+997f,U+9a73,U+9a86,U+9ad3,U+9e3d,U+9ed4"}},{uri:crr,descriptors:{unicodeRange:"U+4e4d,U+4e5e,U+4ec7,U+4ed5,U+50da,U+50e7,U+515c,U+51a4,U+51ff,U+5203,U+5254,U+5300,U+533e,U+5375,U+53ee,U+5435,U+543b,U+5455,U+548b,U+548f,U+54d7,U+54fa,U+5578,U+5587,U+55a7,U+560e,U+5760,U+576f,U+5777,U+5830,U+58a9,U+5962,U+59e8,U+5a07,U+5a23,U+5a3c,U+5b5a,U+5bb5,U+5bc5,U+5bde,U+5c7f,U+5cb1,U+5ce8,U+5cea,U+5d29,U+5d4c,U+5e18,U+5f57,U+5f5d,U+5f87,U+5ff1,U+6016,U+601c,U+6064,U+6177,U+61d2,U+625b,U+62e3,U+62f1,U+634f,U+63a0,U+6401,U+6405,U+6495,U+64c2,U+6512,U+6577,U+6590,U+65a7,U+65a9,U+65f7,U+6627,U+6655,U+6714,U+6795,U+67d1,U+67ff,U+68b3,U+68d5,U+68d8,U+6930,U+6960,U+6977,U+69bb,U+69d0,U+6a31,U+6b7c,U+6bb4,U+6c22,U+6c72,U+6c79,U+6c7e,U+6c81,U+6c93,U+6ca5,U+6cbc,U+6ce3,U+6cfb,U+6d3c,U+6da9,U+6df3,U+6e2d,U+6eaf,U+6ec7,U+6f13,U+6f33,U+6f62,U+6fa1,U+7011,U+707c,U+708a,U+70c1,U+70d8,U+70eb,U+711a,U+7194,U+7281,U+7316,U+7357,U+7384,U+7405,U+742a,U+745b,U+7574,U+7578,U+75ea,U+7682,U+7792,U+77d7,U+77e9,U+77eb,U+77f6,U+780c,U+78c5,U+7941,U+79e4,U+7a1a,U+7a9c,U+7ad6,U+7b5d,U+7bf7,U+7c07,U+7c3f,U+7c9f,U+7ca5,U+7cdf,U+7e82,U+7eab,U+7ece,U+7eda,U+7f09,U+7f15,U+7f9e,U+7fdf,U+7fe9,U+803b,U+803d,U+80aa,U+80b4,U+813e,U+8155,U+817b,U+819d,U+821c,U+82b9,U+82df,U+82ef,U+8304,U+83b9,U+8446,U+853d,U+85af,U+85fb,U+8650,U+865e,U+86d9,U+86ee,U+8700,U+8862,U+889c,U+88d4,U+88f8,U+895f,U+8a79,U+8bb3,U+8bb6,U+8bc0,U+8beb,U+8bf5,U+8c23,U+8c79,U+8d1e,U+8dcb,U+8e29,U+8e44,U+8e81,U+8eac,U+8eaf,U+8f8d,U+9050,U+90f8,U+914b,U+948a,U+94be,U+94ee,U+950c,U+9540,U+962e,U+9647,U+9661,U+9699,U+96cf,U+9716,U+9761,U+97a0,U+97e7,U+9a7c,U+9a8f,U+9ae6,U+9cd6,U+9e26"}},{uri:Crr,descriptors:{unicodeRange:"U+4fa3,U+4fae,U+4fd8,U+4fef,U+50a3,U+5189,U+5195,U+51db,U+51f3,U+51f9,U+5220,U+5228,U+5288,U+52ff,U+532e,U+533f,U+5351,U+53db,U+53ed,U+5450,U+5484,U+5490,U+54c9,U+54e9,U+5501,U+5507,U+5543,U+55d3,U+56a3,U+575e,U+589f,U+5984,U+59ec,U+5a04,U+5a36,U+5a77,U+5a9a-5a9b,U+5ab2,U+5ac2,U+5ad6,U+5bc7,U+5c2c,U+5c34,U+5c51,U+5cd9,U+5d0e,U+5deb,U+5e3c,U+5e87,U+5ed3,U+5f13,U+5f64,U+5fe1,U+606a,U+6096,U+60df,U+60f6,U+60f9,U+6151,U+620e,U+6241,U+6252,U+6273,U+627c,U+6289,U+62c2,U+62cc,U+62ef,U+6361,U+6363,U+63b7,U+63e3,U+6518,U+66ae,U+6756,U+6789,U+6813,U+6829,U+6862,U+6866,U+6893,U+6897,U+690e,U+6984,U+69cc,U+6a1f,U+6a44,U+6a59,U+6ba1,U+6c13,U+6c90,U+6ca6,U+6cbd,U+6ccc,U+6cd3,U+6cd7,U+6d4a,U+6d4f,U+6d5a,U+6d9f,U+6da1,U+6dcc,U+6ea5,U+6ee4,U+6ee6,U+6f2f,U+6f8e,U+701a,U+7095,U+709c,U+70af,U+70db,U+70e8,U+714e,U+715e,U+71a0,U+71ce,U+7235,U+7280,U+72d0,U+72f8,U+73ab,U+7410,U+745c,U+7480,U+74a7-74a8,U+74e3,U+75ae,U+75f9,U+76b1,U+76ce,U+7736,U+77e2-77e3,U+781a,U+789f,U+797a,U+79be,U+79c3,U+79c6,U+79f8,U+7a8d,U+7a98,U+7aa6,U+7aff,U+7b1b,U+7cd9,U+7d6e,U+7ede,U+7eee,U+7f00,U+7f24,U+7f2d,U+7fd8,U+800d,U+8116,U+8151,U+81b3,U+8205,U+82c7,U+82db,U+832c,U+8335,U+8339,U+8386,U+846b,U+8587,U+8611,U+8682,U+868a,U+868c,U+8774,U+88d8,U+88f4,U+8912,U+8b6c,U+8bbd,U+8c0e,U+8c41,U+8d26,U+8d3b-8d3c,U+8d50,U+8dea,U+8e35,U+8f99,U+8fe2,U+8fe9,U+9017,U+914c,U+916f,U+9175-9176,U+918b,U+94a0,U+94ae,U+94ce,U+94f2,U+951a,U+952f,U+9541,U+9640,U+9672,U+968b,U+96cd,U+96ef,U+9713,U+97ec,U+9885,U+9992,U+9a6d,U+9a79,U+9a85,U+9cbb,U+9cd7,U+9cde,U+9e93,U+9f9f"}},{uri:Brr,descriptors:{unicodeRange:"U+4e11,U+4ed7,U+4fcf,U+4fe9,U+4fed,U+50ac,U+50b2,U+5112,U+5180,U+5188,U+51f6,U+522e,U+5265,U+52cb,U+52df,U+5349,U+5367,U+5378,U+537f,U+5395,U+5398,U+53d4,U+543e,U+5440,U+5446,U+54b8,U+5565-5566,U+5580,U+55bb,U+56ca,U+572d,U+573e,U+574e,U+5782-5784,U+58f3,U+5938-5939,U+5948,U+594e,U+5a1c,U+5a74,U+5ae9,U+5b55,U+5b5c,U+5bb0,U+5bd3,U+5bf8,U+5c3f,U+5d14,U+5d2d,U+5df7,U+5dfe,U+5e05-5e06,U+5e1c,U+5e62,U+5e7b,U+5e7d,U+5ed6,U+5f2f,U+5f66,U+5f6c,U+5fa1,U+604b,U+609f,U+60a6,U+60e8,U+6101,U+6124,U+6127,U+6148,U+61be,U+6247,U+62d8,U+62da,U+633d,U+635e,U+6367,U+6380,U+638f,U+63a9,U+63fd,U+641c,U+64e6,U+655e,U+6572,U+6591,U+65a5,U+6691,U+6735,U+67a2-67a3,U+67ef,U+680b,U+6876,U+6905,U+6a0a,U+6a61,U+6b79,U+6bb7,U+6bbf,U+6c41,U+6c55,U+6c83,U+6c9b,U+6ca7,U+6cfc,U+6d46,U+6d51,U+6d74,U+6d9d,U+6daf,U+6dc0,U+6deb,U+6e17,U+6e24,U+6e89,U+6ea2,U+6ef4,U+6f6d,U+707f,U+70b3,U+70e4,U+70ef,U+710a,U+722c,U+725f,U+7261,U+72ee,U+72f1,U+730e,U+732b,U+7433,U+7538,U+75bc,U+7624,U+7709,U+7750,U+7779,U+7802,U+7898,U+78a7,U+78b1,U+78cb,U+78f7,U+7984,U+7a83,U+7aed,U+7b3c,U+7b4b,U+7c92,U+7c98,U+7ca4,U+7eb9,U+7ee3,U+7ef3,U+7ef5,U+7f05,U+7f55,U+7f62,U+7fc1,U+7fd4,U+7fe0,U+8042,U+806a,U+80a0,U+80a4,U+80c3,U+8102,U+8106,U+814a,U+8154,U+8247,U+8258,U+82cd,U+8328,U+832b,U+8389,U+83ca,U+845b,U+846c,U+84b8,U+8574,U+859b,U+8680,U+8695,U+86c7,U+8702,U+886c,U+8896,U+88b1,U+88e4,U+8bc8,U+8c10,U+8c26,U+8c28,U+8c2d,U+8d4c,U+8d63,U+8f67,U+8f74,U+8fc4,U+9006,U+9063,U+90a2,U+90b1,U+90c1,U+9177,U+9189,U+9493,U+949e,U+94fe,U+9610,U+961c,U+96a7,U+96fe,U+978d,U+97f5,U+9888,U+997c,U+9a84,U+9b3c,U+9b44-9b45,U+9b54,U+9e64,U+9f0e,U+9f9a"}},{uri:Err,descriptors:{unicodeRange:"U+4e19,U+4e38,U+4e53,U+4e7e,U+4e9f,U+4ec6,U+4f50,U+4fde,U+502a,U+5154,U+517d,U+51d1,U+51f0,U+5239,U+5256,U+52c9,U+52fe,U+5308,U+532a,U+535c,U+5384,U+53a2,U+53a8,U+53c9,U+53e0,U+5496,U+54ac,U+54c0,U+54c4,U+54e8,U+5561,U+5582,U+561b,U+5631,U+566a,U+5764,U+576a,U+5792,U+57ab,U+584c,U+5885,U+58f6,U+59a8,U+5acc,U+5bc2,U+5c38-5c39,U+5c60,U+5c6f,U+5c82,U+5c90,U+5d16,U+5dcd,U+5e37,U+5e90,U+5eb8,U+5f6a,U+5fcc,U+6012,U+6068,U+6073,U+607c,U+6094,U+6109,U+621a,U+626e,U+6284,U+62d0,U+62e6,U+62fe,U+6321,U+6328,U+632b,U+6349,U+6454,U+65ed,U+660f,U+6674,U+66a8,U+6749,U+674f,U+6760,U+67af,U+6850,U+6854,U+6869,U+68a8,U+68d2,U+68f5,U+6912,U+6b49,U+6b6a,U+6bef,U+6c28,U+6c5d,U+6c82,U+6cab,U+6cb8,U+6cc4,U+6cf5,U+6d47,U+6d78,U+6da4,U+6dc4,U+6dcb,U+6df9,U+6e0a,U+6e23,U+6e5b,U+6eb6,U+6f06,U+6f47,U+6f84,U+6f9c,U+6fd2,U+7076,U+70ac,U+7199,U+723d,U+72ac,U+72ed,U+7476,U+7529,U+752b,U+754f,U+7554,U+75d5,U+7626,U+76ef,U+7720,U+7766,U+7784,U+77ac,U+780d,U+7838,U+7845,U+786b,U+78b3,U+7978,U+79b9,U+79c9,U+79e7,U+7a3d,U+7a84,U+7a9f,U+7b0b,U+7b52,U+7c7d,U+7f1a,U+7fc5,U+7ff0,U+804a,U+8086-8087,U+808c,U+809a,U+80ba,U+810a,U+8180,U+818f,U+81c2,U+81ed,U+8231,U+8292,U+829c,U+82a6,U+82d1,U+8346,U+838e,U+839e,U+83c7,U+83f1,U+8403,U+840e,U+8513,U+857e,U+85e4,U+867e,U+871c,U+87ba,U+87f9,U+884d,U+8944,U+8a93,U+8c05,U+8d2c,U+8d2e,U+8d42-8d43,U+8dfb,U+8e22,U+8eba,U+8f69,U+8f9c,U+8fa3,U+8fa8,U+8fb1,U+900a,U+9038,U+903b,U+9042,U+904f,U+90b5,U+90dd,U+9102,U+9187,U+94a7,U+94c5,U+9523,U+95f8,U+95fd,U+960e,U+964b-964c,U+96c1,U+9709,U+971c,U+97ad,U+9882,U+9965,U+9976,U+9988,U+99a8,U+9a82,U+9a9a,U+9b41,U+9c8d,U+9e45,U+9e70,U+9e9f,U+9f3b,U+9f7f"}},{uri:drr,descriptors:{unicodeRange:"U+4e08,U+4e18,U+4e1b,U+4e22,U+4e27,U+4e32,U+4e52,U+4e73,U+4ead,U+4ed4,U+4ed9,U+4ef0,U+4fa6,U+5076,U+5179,U+51bb,U+51c9,U+51ef,U+51fd,U+524a,U+526a,U+529d,U+52ab,U+5306,U+5339,U+53d9,U+540a,U+5410,U+541e,U+5439,U+54b1,U+54ed,U+5564,U+558a,U+55b7,U+5634,U+574a,U+5751,U+57a6,U+57cb,U+57d4,U+5824,U+582a,U+5835,U+5858,U+5893,U+58e4,U+5951,U+5986,U+59da,U+59fb,U+59ff,U+5a03,U+5a46,U+5ac1,U+5b5d,U+5bfa,U+5c18,U+5c3a,U+5c48,U+5c4f,U+5c61,U+5cb3,U+5d1b,U+5e15,U+5e3d,U+5e99,U+5e9e,U+5eca,U+5f0a,U+5f17-5f18,U+5f25,U+5f7c,U+5fcd,U+6028,U+60a0,U+60ac,U+60d1,U+614e,U+6155,U+6168,U+61c8,U+6208,U+6212,U+6251,U+629a-629b,U+62ab-62ac,U+62fc,U+6323,U+632a,U+63d2,U+643a,U+6491-6492,U+649e,U+64b0,U+64c5,U+659c,U+6614,U+662d,U+6664,U+6670,U+6676,U+6746,U+67cf,U+67d4,U+682a,U+6843,U+6846,U+68da,U+6b3a,U+6b67,U+6c27,U+6c5b,U+6c64,U+6c70,U+6caa,U+6cca,U+6ce1,U+6d12,U+6d45,U+6dd1,U+6dd8,U+6e34,U+6e7f,U+6ee5,U+6f02,U+7092,U+70c2,U+70e6,U+7115,U+7237,U+7272,U+727a,U+72c2,U+739b,U+73b2,U+743c,U+751c,U+758f,U+75b2,U+7686,U+76c6,U+76d2,U+76fc,U+775b,U+77a9,U+7816,U+788e,U+7897,U+78b0,U+79bd,U+7a0d,U+7a91,U+7a9d,U+7ae3,U+7bad,U+7cca,U+7d2b,U+7eb1,U+7f06,U+7f14,U+7f1d,U+7f50,U+7ffc,U+8036,U+80bf,U+80c1,U+80ce,U+80f8,U+8109,U+810f,U+8170,U+8179,U+819c,U+821f,U+8230,U+8236,U+8273,U+829d,U+82f9,U+8305,U+8350,U+83b2,U+83cc,U+8404,U+840d,U+8427,U+8482,U+8679,U+8854,U+886b,U+8bbc,U+8be6,U+8c31,U+8c6b,U+8d4b,U+8dcc,U+8e2a,U+8e48,U+8f90,U+8fb0,U+9022,U+903c,U+903e,U+9065,U+916c,U+917f,U+94a9,U+94c3,U+94dd,U+94ed,U+9510,U+953b,U+96c7,U+970d,U+9738,U+9877,U+987d,U+989c,U+98d8,U+9a70,U+9a91,U+9aa4,U+9b42,U+9b4f,U+9e2d,U+9e3f,U+9e7f,U+9f20"}},{uri:Irr,descriptors:{unicodeRange:"U+4e59,U+4ed3,U+4f0f,U+4f38,U+4f69,U+4fa7,U+4faf,U+4ff1,U+5077,U+5085,U+5144,U+5151,U+51af,U+51b6,U+51cc,U+523a,U+5251,U+5269,U+5272,U+52d8,U+5353,U+5389,U+53f9,U+5401,U+5415,U+541b,U+54f2,U+5524,U+554a,U+559d,U+5609,U+5740,U+575d,U+5806,U+5821,U+586b,U+5915,U+594f,U+5960,U+5999,U+59a5,U+59b9,U+59c6,U+59d1,U+59dc,U+5b5f,U+5b64,U+5b87,U+5bb4,U+5bbf,U+5c16,U+5c1d,U+5c3e,U+5c9a,U+5ca9,U+5cad,U+5cfb,U+5de1,U+5de7,U+5de9,U+5ef7,U+5f04,U+5f70,U+5f79,U+5fc6,U+602a,U+6050,U+6052,U+6070,U+6084,U+60b2,U+60dc,U+60e9,U+6167,U+6170,U+61c2,U+6270,U+6291,U+62b1,U+62bc,U+62dc,U+62df,U+62f3,U+6324,U+633a,U+6377,U+6398,U+63cf,U+640f,U+642c-642d,U+6458,U+6478,U+6500,U+654c,U+6566,U+658c,U+65c1,U+65cb,U+65e8,U+65ec,U+6696-6697,U+6734,U+679a,U+679d,U+67dc,U+67f3-67f4,U+680f,U+683d,U+684c,U+68af,U+699c,U+6bc1,U+6c0f,U+6c1b,U+6c57,U+6c6a,U+6d3d,U+6d6e,U+6d82,U+6db5,U+6dee,U+6e58,U+6eaa,U+6ecb,U+6ede,U+6ee9,U+6f0f,U+6f20,U+6f58,U+704c,U+7070,U+70b8,U+718a,U+7238,U+7262,U+7275,U+72b9,U+72d7,U+72e0,U+741b,U+7434,U+7483,U+74f6-74f7,U+75ab,U+764c,U+7761,U+7855,U+7891,U+78c1,U+79d2,U+7a00,U+7a3b,U+7c97,U+7ea4,U+7eb2,U+7ed2,U+7eea,U+7ef8,U+7f18,U+7fbd,U+8000,U+8010,U+8096,U+809d,U+80a9,U+817f,U+81e3,U+8206,U+8212,U+82ac,U+8302,U+8361,U+8377,U+83f2,U+8461,U+848b,U+84ec,U+8521,U+85aa,U+8870,U+8877,U+8881,U+888b,U+88ad,U+88c2,U+8986,U+8bd1,U+8bf1,U+8d24,U+8d2a,U+8d3e-8d3f,U+8d41,U+8d56,U+8d64,U+8d6b,U+8e0f,U+8f70,U+8f85,U+8f88,U+8fa9,U+9003,U+901d,U+90b9,U+90ce,U+94a6,U+94f8,U+9505,U+95ea,U+95ef,U+95f2,U+95f9,U+9601,U+9605,U+9634,U+966a,U+9677,U+9690,U+9694,U+96d5,U+971e,U+9896-9897,U+9972,U+9a71,U+9a76,U+9a7e,U+9e1f,U+9e23"}},{uri:hrr,descriptors:{unicodeRange:"U+4e01,U+4e43,U+4ea6,U+4ef2,U+4eff,U+4f26,U+4f2a,U+4f2f,U+4f5b,U+4fa8,U+4fca,U+4fd7,U+5021,U+504f,U+5141,U+51c0,U+51dd,U+51e4,U+51ed,U+5200,U+5237,U+5427,U+5448,U+54a8,U+5706,U+5708,U+5723,U+575b,U+57c3,U+5899,U+58a8,U+58c1,U+5976,U+5988,U+59bb,U+59d0,U+59d3,U+5a18,U+5a31,U+5a92,U+5b54,U+5b85,U+5baa-5bab,U+5bc4,U+5bd2,U+5be8,U+5bff,U+5c65,U+5d07,U+5e1d,U+5e78,U+5e7c,U+5f03,U+5f1f,U+5f39,U+5f6d,U+5f92,U+5faa,U+5fbd,U+5fe7,U+5ffd,U+60a8,U+60ef,U+6108,U+6162,U+622a,U+6234,U+626b,U+626d,U+62c6,U+62d2,U+62d4,U+62d6,U+62e8,U+6316,U+6355,U+63ed,U+6447,U+64a4,U+65f1,U+6606,U+6628,U+664b,U+6668,U+6682,U+66f9,U+66fc,U+66ff,U+6717,U+6740,U+676d,U+67aa,U+67ec,U+67f1,U+6842,U+6851,U+695a,U+6982,U+6a2a,U+6b20,U+6b23,U+6b32,U+6b96,U+6bc5,U+6beb,U+6c60,U+6c9f,U+6cea,U+6cf3,U+6d1e,U+6d53,U+6d66,U+6d69,U+6d8c,U+6d9b,U+6db2,U+6de1,U+6dfb,U+6e14,U+6ed1,U+6eda,U+6ee8,U+6f2b,U+706d,U+7089,U+708e,U+70ad-70ae,U+70e7,U+7126,U+714c,U+71c3,U+71d5,U+7206,U+7259,U+731b,U+73a9,U+73bb,U+74dc,U+7532,U+7545,U+755c,U+75c7,U+7687,U+76d7,U+76f2,U+788d,U+78e8,U+79e6,U+79e9,U+7a3f,U+7a46,U+7a97,U+7af9,U+7bee,U+7c4d,U+7c89,U+7cd6,U+7eb5,U+7ebd,U+7ed8,U+8017,U+8033,U+80c0,U+80de,U+80f6,U+8138,U+817e,U+81a8,U+820d,U+827e,U+82b3,U+82d7,U+83b1,U+84c4,U+84dd,U+8584,U+864e,U+865a,U+866b,U+86cb,U+88d5,U+89e6,U+8bca,U+8bde,U+8bfa,U+8c0a,U+8c37,U+8c46,U+8c6a,U+8c8c,U+8d1d,U+8d29,U+8d4f,U+8d54,U+8d5a,U+8d60,U+8d62,U+8f7f,U+8f96,U+8f9e-8f9f,U+8fc1,U+8fdf,U+8fea,U+8ff7,U+9012,U+906d,U+9075,U+90a6,U+90bb,U+90ca,U+9178,U+9192,U+91ca,U+94bb,U+94dc,U+94fa,U+9501,U+950b,U+9521,U+955c,U+963b,U+9655,U+9675-9676,U+9887,U+9891,U+9971,U+9a97,U+9ece,U+9ed8"}},{uri:Qrr,descriptors:{unicodeRange:"U+4e1d,U+4e39,U+4e4c,U+4e4f,U+4e54,U+4e58,U+4e95,U+4ea1,U+4eab,U+4eae,U+4ec1,U+4f10,U+4f19,U+4f30,U+4f34,U+4fb5,U+503e,U+518c,U+5192,U+51a0,U+51ac,U+51b0,U+51e1,U+5211,U+5242,U+52a3,U+52b2,U+52c3,U+52c7,U+52d2,U+52e4,U+5377,U+539a,U+53a6,U+53e5,U+5417,U+5510,U+552f,U+5531,U+574f-5750,U+5761,U+5851,U+5854,U+58ee,U+593a,U+5949,U+5954,U+5a5a,U+5b8b,U+5bbd,U+5c04,U+5c0a,U+5c4b,U+5ce1,U+5cf0,U+5e10,U+5e8a,U+5e9f,U+5ec9,U+5f31,U+5f84,U+5fd8-5fd9,U+5fe0,U+6015,U+6062,U+6069,U+6076,U+6089,U+60a3,U+60ca,U+620f,U+624e,U+6263,U+6298,U+62a2,U+62bd,U+6311,U+6350,U+6389,U+638c,U+63f4,U+6446,U+644a,U+6469,U+64cd,U+654f,U+6562,U+656c,U+65d7,U+65e6,U+65fa,U+660c,U+6653,U+66b4,U+670b,U+672b,U+676f-6770,U+6881,U+6885,U+68a6,U+68cb,U+68ee,U+6b8a,U+6c88-6c89,U+6cc9,U+6ce5,U+6d01,U+6d17,U+6d1b,U+6d59,U+6d6a,U+6da8,U+6df7,U+6e10,U+6e20-6e21,U+6f5c,U+706f,U+70bc,U+719f,U+7267,U+732a,U+73cd,U+7518,U+756a,U+7586,U+7591,U+75db,U+76c8,U+76d0,U+76d6,U+76d8,U+76df,U+76fe,U+77db,U+7801,U+786c,U+795d,U+7965,U+79cb,U+7a77,U+7a7f,U+7aef,U+7b11,U+7bb1,U+7bc7,U+7ea0,U+7eaf,U+7ed5,U+7edc,U+7f13,U+7f29,U+7f34,U+7f8a,U+7ffb,U+8015,U+8058,U+805a,U+8083,U+80af,U+80c6,U+80cc,U+811a,U+8150,U+82e5,U+8336,U+8352,U+83ab,U+8428,U+8463,U+852c,U+8861,U+89c8,U+8bcd,U+8bd7,U+8bda,U+8be2,U+8bef,U+8bf8,U+8c0b,U+8c13,U+8d34,U+8d3a,U+8d74,U+8d76,U+8da3,U+8dd1,U+8ddd,U+8ddf,U+8df3,U+8f68,U+8f6f,U+8f7d,U+8f91,U+8f9b,U+8fbd,U+8fc8,U+8fd4,U+8feb,U+8ff9,U+900f,U+9057,U+907f-9080,U+90d1,U+90ed,U+91ce,U+9519,U+9526,U+95ed,U+9614,U+9635,U+9644,U+9686,U+96c5,U+96ea,U+9707,U+9732,U+9759,U+978b,U+9876,U+9881,U+9910,U+996e,U+9970,U+9c81,U+9e21,U+9ebb,U+9f84"}},{uri:prr,descriptors:{unicodeRange:"U+4e3d,U+4e4e,U+4e71,U+4e8f,U+4ed8,U+4eea,U+4f0a,U+4f0d,U+4f11,U+4f1f,U+4f24,U+4f3c,U+4f73,U+4fc4,U+500d,U+5012,U+501f,U+503a,U+505c,U+507f,U+50a8,U+514d,U+5178,U+517c,U+51b2,U+51b7,U+520a,U+5238,U+523b,U+52b1,U+535a,U+5371,U+5385,U+53eb-53ec,U+53f3,U+53f6,U+5409,U+542b,U+542f,U+5434,U+5462,U+5473,U+547c,U+54c8,U+54ea,U+56fa,U+5733,U+5757,U+5766,U+5802,U+585e,U+590f,U+591c,U+591f,U+5947,U+594b,U+5987,U+5a01,U+5b59,U+5b63,U+5b88,U+5b97,U+5b9c,U+5bbe,U+5bfb,U+5c01,U+5c1a,U+5c24,U+5c3c,U+5c97,U+5c9b,U+5cb8,U+5de6,U+5e01,U+5e2e,U+5e45,U+5e55,U+5e84,U+5ef6,U+5f02,U+5f52,U+5f69,U+5f7b,U+5f90,U+5fae,U+6000,U+600e,U+6025,U+60e0,U+6276,U+6297,U+62b5,U+62cd,U+62d3,U+62e5,U+62e9,U+62ff,U+6302,U+632f,U+63e1,U+6444,U+64ad,U+653b,U+6551,U+6563,U+65a4,U+65e7,U+6620,U+667a,U+66f2,U+671d,U+6731,U+6742,U+675f,U+6768,U+677e-677f,U+6790,U+67b6,U+67d3,U+6863,U+68b0,U+68c9,U+690d,U+6b8b,U+6bcd,U+6bd2,U+6bd5,U+6c38,U+6c61,U+6cbf,U+6cdb,U+6cf0,U+6d2a,U+6d89,U+6da6,U+6f6e,U+6fb3,U+7075,U+707e,U+70df,U+7164,U+7236,U+725b,U+7389,U+73e0,U+745e,U+74e6,U+751a,U+7537,U+75be,U+76ae,U+76db,U+793c,U+7956,U+7981,U+79d8,U+79df,U+79fb,U+7adf,U+7ae5,U+7b14,U+7b26,U+7b54,U+7b79,U+7d2f,U+7eb8,U+7eba,U+7ec6,U+7ee9,U+7eff,U+7f5a,U+7f6a,U+7f72,U+8089,U+80a5,U+80e1,U+8111,U+8131,U+821e,U+822c,U+8270,U+8499,U+8651,U+867d,U+8840,U+8857,U+8863,U+88c1,U+89c9,U+89d2,U+8a89,U+8bed,U+8bfe,U+8c01,U+8c22,U+8d21,U+8d25,U+8d2f,U+8d5e,U+8d75,U+8d8b,U+8dc3,U+8de8,U+8df5,U+8f6e,U+8f86,U+8f89,U+8fc5,U+8ff0,U+8ffd,U+9014,U+904d,U+90ae,U+9274,U+949f,U+952e,U+969c,U+96c4,U+96e8,U+96f6-96f7,U+97e9,U+987f,U+996d,U+9a7b,U+9aa8,U+9c7c,U+9c9c,U+9e4f,U+9f13,U+9f50"}},{uri:frr,descriptors:{unicodeRange:"U+4e13,U+4e16,U+4e1c,U+4e24,U+4e3e,U+4e49,U+4e61,U+4e66,U+4e89,U+4e8c,U+4e94,U+4e9b,U+4ea4,U+4eac,U+4ebf,U+4eca,U+4ef6-4ef7,U+4efb,U+4f18,U+4f20,U+4f46,U+4f7f,U+4fe1,U+503c,U+505a,U+5146,U+5148,U+515a,U+5171,U+5177,U+519b,U+51b3,U+51c6,U+51e0,U+5212,U+521b,U+522b,U+529e,U+52bf,U+534e-534f,U+5355,U+5357,U+5382,U+539f,U+53bb,U+53bf,U+53c2,U+53c8,U+53ca,U+53d6-53d8,U+53e3,U+53ea,U+53f0,U+540d,U+5411,U+56db,U+56de,U+56e0,U+56e2,U+578b,U+57ce,U+57fa,U+589e,U+5904,U+5934,U+5982,U+5b89,U+5b8c,U+5bfc,U+5c06,U+5c11,U+5c40,U+5c71,U+5e38,U+5e72,U+5e76,U+5e7f,U+5e94,U+5e9c,U+5f0f,U+5f15,U+5f20,U+5f3a,U+5f62,U+5f88,U+5fc5,U+5fd7,U+5feb,U+601d,U+6027,U+60c5,U+60f3,U+610f,U+6216,U+6218,U+624b,U+624d,U+6279,U+628a,U+6295,U+6301,U+6307,U+636e,U+63a5,U+63a8,U+652f,U+6536,U+653e,U+6548,U+6559,U+6570,U+65bd,U+65e0,U+6602,U+660e,U+6613,U+66f4,U+6700,U+670d,U+671f,U+672f,U+6743,U+674e,U+6751,U+6761,U+6784,U+6797,U+679c,U+67e5,U+6807,U+6837,U+683c,U+6b21,U+6b63-6b65,U+6bcf,U+6bd4,U+6c42,U+6c5f,U+6ca1,U+6cbb,U+6d3b,U+6d41,U+6d88,U+6df1,U+70b9,U+7136,U+7269,U+7279,U+7531,U+754c,U+767e,U+76ca,U+76f8,U+770b,U+7740,U+7814,U+79ef,U+7a0b,U+7a0e,U+7a76,U+7b80,U+7cbe,U+7cfb,U+7e41,U+7ea7,U+7ec4,U+7ec7,U+7ed3,U+7ed9,U+7edf,U+7f8e,U+8001,U+804c,U+8054,U+80b2,U+81f3,U+8425,U+8868,U+88ab,U+897f,U+89c1-89c2,U+89c4,U+89c6,U+89e3,U+8ba1,U+8ba4,U+8bae,U+8bb0,U+8bba,U+8bc1,U+8c03,U+8d28,U+8d39,U+8def,U+8f66,U+8f6c,U+8fd0-8fd1,U+9020,U+9053,U+90a3,U+90fd,U+91cc,U+9500,U+9547,U+95e8,U+95f4,U+961f,U+9645,U+9662,U+96be,U+96c6,U+9700,U+9769,U+97e6,U+9875,U+9879,U+9886,U+9898,U+98ce,U+9996,U+2b5af,U+2cc56,U+2e9f5,U+30edd-30ede"}},{uri:mrr,descriptors:{unicodeRange:"U+4e03,U+4e30,U+4e34,U+4e45,U+4e60,U+4e70,U+4e88,U+4e91-4e92,U+4ea9,U+4eb2,U+4ec0,U+4ecb,U+4ecd,U+4ee4,U+4fee,U+5019,U+5047,U+50cf,U+5145,U+516d,U+5170,U+5175,U+5199,U+51cf,U+51fb,U+521a,U+5224,U+5267,U+52aa,U+5347-5348,U+534a,U+5356,U+5361,U+536b,U+5370,U+538b,U+53e4,U+53e6,U+5403,U+5426,U+5428,U+542c,U+5438,U+5668,U+56ed,U+56f4,U+56fe,U+57df,U+592a,U+5957,U+5b69,U+5b81,U+5b8f,U+5b98,U+5b9d,U+5ba1,U+5ba4,U+5bb3,U+5bc6,U+5bdf,U+5c3d,U+5c5e,U+5c81,U+5ddd,U+5de8,U+5dee,U+5e0c,U+5e86,U+5e8f,U+5e93,U+5e95,U+5e97,U+5ea7,U+5ead,U+5eb7,U+5f55,U+5f81,U+5f85,U+5ff5,U+6001,U+613f,U+6258,U+6267,U+6269,U+626c,U+627e,U+62db,U+62ec,U+6325,U+635f,U+6362,U+6388,U+6392,U+63a2,U+63a7,U+63aa,U+641e,U+6545,U+6597,U+65e2,U+65e9,U+661f,U+665a,U+666e-666f,U+66fe,U+6728,U+67d0,U+6811,U+6838,U+6865,U+697c,U+6b22,U+6b27,U+6b4c,U+6b62,U+6b66,U+6b7b,U+6bdb,U+6c47,U+6c49,U+6c7d,U+6c99,U+6cfd,U+6d0b,U+6d25,U+6d32,U+6d3e,U+6d4b,U+6e29,U+6e56,U+6e7e,U+6f14,U+6fc0,U+706b,U+70c8,U+7247,U+72af,U+72b6,U+72ec,U+732e,U+73ed,U+7403,U+7533,U+753b,U+7559,U+7565,U+7597,U+767b,U+773c,U+7763,U+77ed,U+77ff,U+7968,U+798f,U+79bb,U+79c0-79c1,U+7ad9,U+7ae0,U+7b51,U+7b7e,U+7cae,U+7d22,U+7ea2,U+7eb3,U+7eb7,U+7ec3,U+7ec8,U+7ecd,U+7edd,U+7efc,U+7f16,U+7f3a,U+7f51,U+7f57,U+7f6e,U+80dc,U+822a,U+8239,U+826f,U+82cf,U+82e6,U+8349,U+8363,U+83dc,U+8457,U+85cf,U+878d,U+8865,U+8a00,U+8b66,U+8ba2,U+8ba8,U+8bad,U+8bb2,U+8bc9,U+8bd5,U+8bfb,U+8d2b,U+8d35,U+8d37,U+8f7b,U+8f93,U+8fce,U+8fdd,U+9000-9002,U+9010,U+9047,U+9093,U+9152,U+9488,U+94a2,U+9633,U+9636,U+963f,U+9646,U+9648,U+964d,U+9664,U+9669,U+9760,U+97f3,U+987a,U+987e,U+9884,U+98de,U+9986,U+9ed1"}},{uri:Drr,descriptors:{unicodeRange:"U+4e14,U+4e25,U+4e48,U+4e50,U+4e5d,U+4e9a,U+4ec5,U+4efd,U+4f17,U+4f4e-4f4f,U+4f55,U+4f59,U+4f60,U+4f8b,U+4f9b,U+4f9d,U+4fbf,U+4fc3,U+5065,U+513f,U+5149,U+514b,U+516b,U+5174,U+517b,U+518d,U+51b5,U+5207,U+5217-5219,U+521d,U+526f,U+529f,U+52a9,U+52b3,U+5305,U+533b,U+5343,U+5360,U+5373-5374,U+5386,U+53cb-53cd,U+53f2,U+53f7,U+544a,U+5468,U+547d,U+54cd,U+552e,U+5584,U+56f0,U+571f,U+5747,U+575a,U+57f9,U+5883,U+58eb,U+58f0,U+5907,U+590d,U+592e,U+5931,U+5956,U+5965,U+5973,U+5979,U+59cb,U+5b57-5b58,U+5b83,U+5ba2-5ba3,U+5bb9,U+5bcc,U+5c42,U+5c45,U+5c4a,U+5dde,U+5df1,U+5df4,U+5e03,U+5e08,U+5e26,U+5e2d,U+5f71,U+5f80,U+5f8b,U+5fb7,U+606f,U+611f,U+6237,U+623f,U+6253,U+627f,U+6293,U+62a4,U+62c5,U+62c9,U+6309,U+6574,U+6599,U+65ad,U+65af,U+65c5,U+65cf,U+6625,U+663e,U+671b,U+672a,U+6750,U+6781,U+6821,U+6839,U+6848,U+68c0,U+6a21,U+6b3e,U+6bb5,U+6c14,U+6cb3,U+6cb9,U+6ce8,U+6e05,U+6e2f,U+6e38,U+6e90,U+6ee1,U+70ed,U+7167,U+7231,U+7248,U+724c,U+7387,U+738b,U+73af,U+7530,U+75c5,U+767d,U+76d1,U+76f4,U+771f,U+77e5,U+77f3,U+7834,U+7840,U+786e,U+793a,U+795e,U+79f0,U+7a33,U+7a7a,U+7a81,U+7ade,U+7b56,U+7b97,U+7c73,U+7c7b,U+7d20,U+7d27,U+7ea6,U+7eaa,U+7ebf,U+7ee7,U+7eed,U+7ef4,U+7fa4,U+8003,U+80a1,U+81f4,U+8272,U+827a,U+8282,U+82b1,U+82f1,U+8303,U+836f,U+83b7,U+843d,U+88c5,U+8ba9,U+8baf,U+8bb8,U+8bbf,U+8bc4,U+8bc6,U+8bdd,U+8be5,U+8bf7,U+8c08,U+8c61,U+8d1f,U+8d22-8d23,U+8d27,U+8d2d,U+8d38,U+8d5b,U+8d70,U+8d85,U+8d8a,U+8db3,U+8eab,U+8f83,U+8fb9,U+8fdc,U+8fde,U+9009,U+901f,U+914d,U+91c7,U+94b1,U+94c1,U+94f6,U+95fb,U+9632,U+9650,U+968f,U+9752,U+975e,U+987b,U+989d,U+98df,U+9999,U+9a6c,U+9a8c,U+9ec4,U+9feb-9fec"}},{uri:yrr,descriptors:{unicodeRange:"U+98fb-990c,U+990e-990f,U+9911-992d,U+992f-9953,U+9956-9962,U+9964,U+9966,U+9973,U+9978-9979,U+997b,U+997e,U+9982-9983,U+9989,U+998c,U+998e,U+999a-99a4,U+99a6-99a7,U+99a9-99c8"}},{uri:wrr,descriptors:{unicodeRange:"U+8e4c-8e50,U+8e53-8e58,U+8e5a-8e65,U+8e67-8e68,U+8e6a-8e6b,U+8e6e,U+8e71,U+8e73,U+8e75,U+8e77-8e7b,U+8e7d-8e7e,U+8e80,U+8e82-8e84,U+8e86,U+8e88-8e8e,U+8e91-8e93,U+8e95-8e9b,U+8e9d,U+8e9f-8eaa,U+8ead-8eae,U+8eb0-8eb1,U+8eb3-8eb9,U+8ebb-8ecd,U+8ecf-8f02"}},{uri:brr,descriptors:{unicodeRange:"U+2e3a,U+3001-3002,U+3008-3011,U+3014-3017,U+301d-301f,U+4dae,U+4e00,U+4e07,U+4e09-4e0b,U+4e0d-4e0e,U+4e1a,U+4e2a,U+4e2d,U+4e3a-4e3b,U+4e4b,U+4e5f,U+4e86,U+4e8b,U+4e8e,U+4ea7,U+4eba,U+4ece,U+4ed1,U+4ed6,U+4ee3,U+4ee5,U+4eec,U+4f01,U+4f1a,U+4f4d,U+4f53,U+4f5c,U+4fdd,U+5143,U+5165,U+5168,U+516c,U+5173,U+5176,U+5185,U+519c,U+51fa,U+5206,U+5229,U+5230,U+5236,U+524d,U+529b,U+52a0-52a1,U+52a8,U+5316-5317,U+533a,U+5341,U+5362,U+53d1,U+53ef,U+53f8,U+5404,U+5408,U+540c,U+540e,U+5458,U+548c,U+54c1,U+54e5,U+5546,U+559c,U+56fd,U+5728,U+5730,U+573a,U+5916,U+591a,U+5927,U+5929,U+592b,U+597d,U+59d4,U+5b50,U+5b66,U+5b9a,U+5b9e,U+5bb6,U+5bf9,U+5c0f,U+5c14,U+5c31,U+5c55,U+5de5,U+5df2,U+5e02,U+5e73-5e74,U+5ea6,U+5efa,U+5f00,U+5f53,U+5f97,U+5fc3,U+603b,U+6210-6211,U+6240,U+6280,U+62a5,U+63d0,U+6539,U+653f,U+6587,U+65b0,U+65b9,U+65e5,U+65f6,U+662f,U+6708-6709,U+672c,U+673a,U+675c,U+6765,U+6c11,U+6c34,U+6cd5,U+6ce2,U+6d4e,U+6d77,U+73b0,U+7406,U+751f,U+7528,U+7535,U+7684,U+76ee,U+793e,U+79cd,U+79d1,U+7acb,U+7b2c,U+7b49,U+7ba1,U+7ecf,U+8005,U+800c,U+80fd,U+81ea,U+884c,U+8981,U+8bbe,U+8bf4,U+8d44,U+8d77,U+8fbe,U+8fc7,U+8fd8-8fd9,U+8fdb,U+901a,U+90e8,U+91cd,U+91cf,U+91d1,U+9485,U+957f,U+95ee,U+9762,U+9ad8,U+9ea6,U+9f99,U+9fcf,U+9fd4,U+9fed,U+fe10-fe19,U+fe30-fe31,U+fe33-fe44,U+ff01,U+ff0c,U+ff1f,U+2b4e7,U+2b7f7,U+2b7fc,U+2cb2d,U+2cb3b,U+2cb4a,U+2cb5b,U+2cb73"}},{uri:vrr,descriptors:{unicodeRange:"U+6490,U+6493-6494,U+6497-6498,U+649a-649d,U+649f-64a3,U+64a5-64a8,U+64aa-64ab,U+64af,U+64b1-64b4,U+64b6,U+64b9,U+64bb,U+64bd-64bf,U+64c1,U+64c3-64c4,U+64c6-64cc,U+64cf,U+64d1,U+64d3-64d6,U+64d9-64dd,U+64df-64e1,U+64e3,U+64e5,U+64e7-64ff,U+6501-6508,U+650a-6511,U+6513-6517,U+6519-6524,U+6526-652a,U+652c-652d,U+6530-6533,U+6537,U+653a,U+653c-653d,U+6540-6544,U+6546-6547,U+654a-654b,U+654d-654e,U+6550,U+6552-6554,U+6557-6558,U+655a,U+655c,U+655f-6561,U+6564-6565,U+6567-6568"}},{uri:krr,descriptors:{unicodeRange:"U+9695-9696,U+969a-969b,U+969d-96a6,U+96a8-96af,U+96b1-96b2,U+96b4-96b5,U+96b7-96b8,U+96ba-96bb,U+96bf,U+96c2-96c3,U+96c8,U+96ca-96cb,U+96d0-96d1,U+96d3-96d4,U+96d6-96df,U+96e1-96e7,U+96eb-96ee,U+96f0-96f2,U+96f4-96f5,U+96f8,U+96fa-96fd,U+96ff,U+9702-9703,U+9705,U+970a-970c,U+9710-9712,U+9714-9715,U+9717-971b,U+971d,U+971f-9729,U+972b-972c,U+972e-972f,U+9731,U+9733-9737,U+973a-973d,U+973f-9751,U+9754-9755,U+9757-9758,U+975a,U+975c-975d,U+975f,U+9763-9764,U+9766-9768,U+976a-9770"}},{uri:Frr,descriptors:{unicodeRange:"U+6af0-6b1f,U+6b25-6b26,U+6b28-6b31,U+6b33-6b36,U+6b38,U+6b3b-6b3d,U+6b3f-6b42,U+6b44-6b45,U+6b48,U+6b4a-6b4b,U+6b4d-6b58,U+6b5a-6b61,U+6b68-6b69,U+6b6b-6b78,U+6b7a,U+6b7d-6b80,U+6b85,U+6b88,U+6b8c,U+6b8e-6b91,U+6b94-6b95,U+6b97-6b99,U+6b9c-6ba0,U+6ba2-6ba9,U+6bab-6bb2,U+6bb6,U+6bb8-6bba"}},{uri:xrr,descriptors:{unicodeRange:"U+430e-439a,U+29e8a,U+29ec4,U+29edb,U+29ee9,U+29f7e,U+29f83,U+29f8c,U+29fce,U+2a01a,U+2a02f,U+2a082,U+2a0f9,U+2a190,U+2a38c"}},{uri:Srr,descriptors:{unicodeRange:"U+92ef-933d,U+933f-9369,U+936b-9388"}},{uri:Lrr,descriptors:{unicodeRange:"U+4512-458d,U+2b300,U+2b363,U+2b36f,U+2b372,U+2b37d,U+2b404,U+2b410,U+2b413,U+2b461,U+2b4ef,U+2b4f6,U+2b4f9,U+2b50d-2b50e,U+2b536,U+2b5ae,U+2b5b3,U+2b5e7,U+2b5f4,U+2b61c-2b61d,U+2b626-2b628,U+2b62a,U+2b62c,U+2b695-2b696,U+2b6ad,U+2b6ed"}},{uri:Rrr,descriptors:{unicodeRange:"U+88bd-88c0,U+88c3-88c4,U+88c7-88c8,U+88ca-88cd,U+88cf-88d1,U+88d3,U+88d6-88d7,U+88da-88de,U+88e0-88e1,U+88e6-88e7,U+88e9-88ef,U+88f2,U+88f5-88f7,U+88fa-88fb,U+88fd,U+88ff-8901,U+8903-8909,U+890b-890f,U+8911,U+8914-8918,U+891c-8920,U+8922-8924,U+8926-8929,U+892c-892f,U+8931-8933,U+8935,U+8937-8940,U+8942-8943,U+8945-895d,U+8960-8965,U+8967-897a,U+897c-897e,U+8980,U+8982,U+8984-8985"}},{uri:Nrr,descriptors:{unicodeRange:"U+4b0b-4ba0"}},{uri:Grr,descriptors:{unicodeRange:"U+7179,U+717b-717c,U+717e-7183,U+7185-7189,U+718b-718e,U+7190-7193,U+7195-7197,U+719a-719e,U+71a1-71a7,U+71a9-71ab,U+71ad-71b2,U+71b4,U+71b6-71b8,U+71ba-71c2,U+71c4-71cd,U+71cf-71d3,U+71d6-71df,U+71e1-71e4,U+71e6,U+71e8-71ed,U+71ef-71f8,U+71fa-7205,U+7207-721c,U+721e-7227,U+7229,U+722b,U+722d"}},{uri:Urr,descriptors:{unicodeRange:"U+982e-9874,U+988b,U+988e,U+9892,U+9895,U+9899,U+98a3,U+98a8-98cd,U+98cf-98d0,U+98d4,U+98d6-98d7,U+98db-98dd,U+98e0-98e6,U+98e9-98fa"}},{uri:Mrr,descriptors:{unicodeRange:"U+7c14-7c15,U+7c17-7c1e,U+7c20-7c25,U+7c28-7c29,U+7c2b-7c37,U+7c39-7c3e,U+7c42-7c4c,U+7c4e-7c72,U+7c75-7c7a,U+7c7e-7c88,U+7c8a-7c90,U+7c93-7c94,U+7c96,U+7c99-7c9b,U+7ca0-7ca1,U+7ca3,U+7ca6-7ca9,U+7cab-7cad,U+7caf-7cb0,U+7cb4-7cb8,U+7cba-7cbb,U+7cbf-7cc0,U+7cc2-7cc4,U+7cc6,U+7cc9,U+7ccb,U+7cce-7cd4"}},{uri:Trr,descriptors:{unicodeRange:"U+7d95-7da5,U+7da7-7dad,U+7daf-7e2a"}},{uri:Yrr,descriptors:{unicodeRange:"U+4a78-4b0a"}},{uri:Hrr,descriptors:{unicodeRange:"U+9b30-9b31,U+9b33-9b3a,U+9b3d-9b40,U+9b46,U+9b4a-9b4c,U+9b4e,U+9b50,U+9b52-9b53,U+9b55-9bcf"}},{uri:Krr,descriptors:{unicodeRange:"U+6a4b-6a4f,U+6a51-6a57,U+6a5a,U+6a5c-6a60,U+6a62-6a64,U+6a66-6a70,U+6a72-6a78,U+6a7a-6a7b,U+6a7d-6a7f,U+6a81-6a83,U+6a85-6a8d,U+6a8f,U+6a92-6a96,U+6a98-6a9f,U+6aa1-6aa8,U+6aaa,U+6aad-6aef"}},{uri:Jrr,descriptors:{unicodeRange:"U+99c9-9a53"}},{uri:Orr,descriptors:{unicodeRange:"U+8550-8555,U+8557-8558,U+855a-855d,U+855f-8563,U+8565-8567,U+8569-8571,U+8573,U+8575-8578,U+857c-857d,U+857f-8583,U+8586,U+8588-858e,U+8590-859a,U+859d-85a3,U+85a5-85a7,U+85a9,U+85ab-85ad,U+85b1-85b6,U+85b8,U+85ba-85c0,U+85c2-85c8,U+85ca-85ce,U+85d1-85d2,U+85d4,U+85d6-85db,U+85dd-85e3,U+85e5-85e8,U+85ea-85fa,U+85fc-85fe,U+8600-8603"}},{uri:Prr,descriptors:{unicodeRange:"U+6fb2,U+6fb4-6fb5,U+6fb7-6fb8,U+6fba-6fbf,U+6fc1,U+6fc3-6fc8,U+6fca-6fd0,U+6fd3-6fdd,U+6fdf,U+6fe2-6fed,U+6ff0-7010,U+7012-7019,U+701c-7022,U+7024-7034,U+7036-7038,U+703a-704b,U+704d-704e,U+7050-7053"}},{uri:_rr,descriptors:{unicodeRange:"U+4ba1-4c2c"}},{uri:Wrr,descriptors:{unicodeRange:"U+9a54-9a6b,U+9a72,U+9a83,U+9a89,U+9a8d-9a8e,U+9a94-9a95,U+9a99,U+9aa6,U+9aa9-9aaf,U+9ab2-9ab5,U+9ab9,U+9abb,U+9abd-9abf,U+9ac3-9ac4,U+9ac6-9aca,U+9acd-9ad0,U+9ad2,U+9ad4-9ad7,U+9ad9-9ade,U+9ae0,U+9ae2-9ae5,U+9ae7-9aea,U+9aec,U+9aee,U+9af0-9af8,U+9afa,U+9afc-9b02,U+9b04-9b07,U+9b09-9b0e,U+9b10-9b12,U+9b14-9b1e,U+9b20-9b22,U+9b24-9b2e"}},{uri:qrr,descriptors:{unicodeRange:"U+9d1a-9da1"}},{uri:zrr,descriptors:{unicodeRange:"U+9e13-9e1e,U+9e24,U+9e27,U+9e2e,U+9e30,U+9e34,U+9e3b-9e3c,U+9e40,U+9e4d,U+9e50,U+9e52-9e54,U+9e56,U+9e59,U+9e5d,U+9e5f-9e62,U+9e65,U+9e6e-9e6f,U+9e72,U+9e74-9e7d,U+9e80-9e81,U+9e83-9e86,U+9e89-9e8a,U+9e8c-9e91,U+9e94-9e9c,U+9e9e,U+9ea0-9ea5,U+9ea7-9eb3,U+9eb5-9eb7,U+9eb9-9eba,U+9ebc,U+9ebf-9ec3,U+9ec5-9ec8,U+9eca-9ecc,U+9ed0,U+9ed2-9ed3,U+9ed5-9ed7,U+9ed9-9eda,U+9ede,U+9ee1,U+9ee3-9ee4,U+9ee6,U+9ee8,U+9eeb-9eee,U+9ef0-9ef8"}},{uri:Zrr,descriptors:{unicodeRange:"U+8b1c-8b25,U+8b27-8b65,U+8b67-8b6b,U+8b6d-8b9f,U+8bac,U+8bb1,U+8bbb,U+8bc7,U+8bd0"}},{uri:Vrr,descriptors:{unicodeRange:"U+4cad-4d2f"}},{uri:jrr,descriptors:{unicodeRange:"U+9c4b-9c7b,U+9c7d-9c7e,U+9c80,U+9c83-9c84,U+9c89-9c8a,U+9c8c,U+9c8f,U+9c93,U+9c96-9c99,U+9c9d,U+9caa,U+9cac,U+9caf,U+9cb9,U+9cbe-9cc2,U+9cc8-9cc9,U+9cd1-9cd2,U+9cda-9cdb,U+9ce0-9ce1,U+9ce3-9d19"}},{uri:Xrr,descriptors:{unicodeRange:"U+9389-938e,U+9390-93c9,U+93cb-93d5,U+93d7-9410"}},{uri:$rr,descriptors:{unicodeRange:"U+20a0-20b5,U+20b9-20ba,U+20bc-20bd,U+4e2c,U+5107,U+5216,U+5293,U+54f3,U+5523,U+5819,U+5adc,U+5c88,U+5e3b,U+5fee,U+62f6,U+63be,U+6484,U+6499,U+67d9,U+67dd,U+6d5e,U+6f46,U+717a,U+71e0,U+72c1,U+73e7,U+75b0,U+7603,U+7722,U+7809,U+7811,U+7946,U+7967,U+799a,U+7b45,U+7ba2,U+8014,U+80d9,U+8159,U+817d,U+81a3,U+81aa,U+8201,U+833c,U+836e,U+83e5,U+8459,U+84f0,U+8729,U+8753,U+87d3,U+89dc,U+8bf6,U+8c2e,U+8e2c,U+8e9c,U+8e9e,U+8ece,U+8fee,U+9139,U+914f,U+9174,U+9191,U+960c,U+9622,U+9a98,U+9b48,U+9ca6,U+9cb0,U+9da2-9e12,U+9e88,U+9f44,U+9f86"}},{uri:Air,descriptors:{unicodeRange:"U+9bd0-9c4a"}},{uri:eir,descriptors:{unicodeRange:"U+4c2d-4cac"}},{uri:tir,descriptors:{unicodeRange:"U+4d30-4dab"}},{uri:rir,descriptors:{unicodeRange:"U+9411-943d,U+943f-946a,U+946c-9484"}},{uri:iir,descriptors:{unicodeRange:"U+9efa,U+9efd,U+9eff-9f0a,U+9f0c,U+9f0f,U+9f11-9f12,U+9f14-9f16,U+9f18,U+9f1a-9f1f,U+9f21,U+9f23-9f2b,U+9f2d-9f2e,U+9f30-9f36,U+9f38,U+9f3a,U+9f3c,U+9f3f-9f43,U+9f45-9f4f,U+9f52-9f7e,U+9f81-9f82,U+9f8d-9f94"}},{uri:uir,descriptors:{unicodeRange:"U+7e2b-7e3a,U+7e3c-7e40,U+7e42-7e46,U+7e48-7e81,U+7e83-7e9a,U+7e9c-7e9e,U+7eae,U+7eb4,U+7ebb-7ebc,U+7ed6,U+7ee4,U+7eec,U+7ef9,U+7f0a,U+7f10,U+7f1e,U+7f37,U+7f39,U+7f3b"}}];GA(w1,"loadedFontsCache",new Set),GA(w1,"_registered"),GA(w1,"_initialized",!1),GA(w1,"loadElementsFonts",async(A)=>{let e=w1.getUniqueFamilies(A),t=w1.getCharsPerFamily(A);return w1.loadFontFaces(e,t)});Ed=w1;hi={EQUAL:"Equal",MINUS:"Minus",NUM_ADD:"NumpadAdd",NUM_SUBTRACT:"NumpadSubtract",NUM_ZERO:"Numpad0",BRACKET_RIGHT:"BracketRight",BRACKET_LEFT:"BracketLeft",ONE:"Digit1",TWO:"Digit2",THREE:"Digit3",NINE:"Digit9",QUOTE:"Quote",ZERO:"Digit0",SLASH:"Slash",C:"KeyC",D:"KeyD",H:"KeyH",V:"KeyV",Z:"KeyZ",Y:"KeyY",R:"KeyR",S:"KeyS"},PA={ARROW_DOWN:"ArrowDown",ARROW_LEFT:"ArrowLeft",ARROW_RIGHT:"ArrowRight",ARROW_UP:"ArrowUp",PAGE_UP:"PageUp",PAGE_DOWN:"PageDown",BACKSPACE:"Backspace",ALT:"Alt",CTRL_OR_CMD:rB?"metaKey":"ctrlKey",DELETE:"Delete",ENTER:"Enter",ESCAPE:"Escape",QUESTION_MARK:"?",SPACE:" ",TAB:"Tab",CHEVRON_LEFT:"<",CHEVRON_RIGHT:">",PERIOD:".",COMMA:",",SUBTRACT:"-",SLASH:"/",A:"a",C:"c",D:"d",E:"e",F:"f",G:"g",H:"h",I:"i",L:"l",O:"o",P:"p",Q:"q",R:"r",S:"s",T:"t",V:"v",X:"x",Y:"y",Z:"z",K:"k",W:"w",0:"0",1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9"},Dir=new Map([[PA.Z,hi.Z],[PA.Y,hi.Y]]),uW=[{icon:Q$t,value:"selection",key:PA.V,numericKey:PA[1],fillable:!0},{icon:p$t,value:"rectangle",key:PA.R,numericKey:PA[2],fillable:!0},{icon:f$t,value:"diamond",key:PA.D,numericKey:PA[3],fillable:!0},{icon:m$t,value:"ellipse",key:PA.O,numericKey:PA[4],fillable:!0},{icon:D$t,value:"arrow",key:PA.A,numericKey:PA[5],fillable:!0},{icon:y$t,value:"line",key:PA.L,numericKey:PA[6],fillable:!0},{icon:g9,value:"freedraw",key:[PA.P,PA.X],numericKey:PA[7],fillable:!1},{icon:RIA,value:"text",key:PA.T,numericKey:PA[8],fillable:!1},{icon:w$t,value:"image",key:null,numericKey:PA[9],fillable:!1},{icon:b$t,value:"eraser",key:PA.E,numericKey:PA[0],fillable:!1}],Sir=iB(),QQe=document.createElement("img");QQe.src=`data:${jt.svg},${encodeURIComponent('<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="image" class="svg-inline--fa fa-image fa-w-16" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="#888" d="M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56zM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48z"></path></svg>')}`;pQe=document.createElement("img");pQe.src=`data:${jt.svg},${encodeURIComponent('<svg viewBox="0 0 668 668" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2"><path d="M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48ZM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56ZM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48Z" style="fill:#888;fill-rule:nonzero" transform="matrix(.81709 0 0 .81709 124.825 145.825)"/><path d="M256 8C119.034 8 8 119.033 8 256c0 136.967 111.034 248 248 248s248-111.034 248-248S392.967 8 256 8Zm130.108 117.892c65.448 65.448 70 165.481 20.677 235.637L150.47 105.216c70.204-49.356 170.226-44.735 235.638 20.676ZM125.892 386.108c-65.448-65.448-70-165.481-20.677-235.637L361.53 406.784c-70.203 49.356-170.226 44.736-235.638-20.676Z" style="fill:#888;fill-rule:nonzero" transform="matrix(.30366 0 0 .30366 506.822 60.065)"/></svg>')}`;qdA=new WeakMap,mQe=new WeakMap([]);Mir=/(\s?[A-Z]?,?-?[0-9]*\.[0-9]{0,2})(([0-9]|e|-)*)/g;wa=[1,0],fo=[0,1],Ms=[-1,0],Ts=[0,-1];GA(wQe,"boundsCache",new WeakMap);Oir=wQe,pur=new Set(["boundElements","frameId","containerId","startBinding","endBinding"]);GA(a9,"rebindAffected",(A,e,t)=>{!e||e.isDeleted||dW(A,e,(r,i)=>{if(!r||r.isDeleted){t(e,{[i]:null});return}i!=="frameId"&&(r.boundElements?.find((u)=>u.id===e.id)||(Jr(e)&&t(r,{boundElements:w8(r.boundElements,new Set,Array(e))}),Bt(e)&&(r.boundElements?.find((u)=>u.type==="text")?t(e,{[i]:null}):t(r,{boundElements:w8(r.boundElements,new Set,Array(e))}))))})});GA(n9,"rebindAffected",(A,e,t)=>{!e||e.isDeleted||EW(A,e,(r,i,u)=>{if(!r||r.isDeleted){t(e,{boundElements:w8(e.boundElements,new Set([u]))});return}Bt(r)&&((e.boundElements?.slice()??[]).reverse().find((a)=>a.type==="text")?.id===r.id?r.containerId!==e.id&&t(r,{containerId:e.id}):(r.containerId!==null&&t(r,{containerId:null}),t(e,{boundElements:w8(e.boundElements,new Set([r.id]))})))})});Z0=function(){let A=null,e=null,t=null,r=(u,a,n,o)=>{if(t!==void 0&&a===e&&u===A&&n.editingGroupId===t?.editingGroupId)return t;let s={};for(let C of u){let B=C.groupIds;if(n.editingGroupId){let E=B.indexOf(n.editingGroupId);E>-1&&(B=B.slice(0,E))}if(B.length>0){let E=B[B.length-1];s[E]=!0}}let l={},g=a.reduce((C,B)=>{if(B.isDeleted)return C;let E=B.groupIds.find((d)=>s[d]);return E&&(C[B.id]=!0,Array.isArray(l[E])?l[E].push(B.id):l[E]=[B.id]),C},{});for(let C of Object.keys(l))l[C].length<2&&s[C]&&(s[C]=!1);return e=a,A=u,t={editingGroupId:n.editingGroupId,selectedGroupIds:s,selectedElementIds:Gi({...n.selectedElementIds,...g},o)},t},i=(u,a,n,o)=>{let s=o?o.scene.getSelectedElements({selectedElementIds:u.selectedElementIds,elements:a}):Or(a,u);return s.length?r(s,a,u,n):{selectedGroupIds:{},editingGroupId:null,selectedElementIds:Gi(u.selectedElementIds,n)}};return i.clearCache=()=>{e=null,A=null,t=null},i}();GA(Ll,"referenceSnapPoints",null),GA(Ll,"visibleGaps",null),GA(Ll,"setReferenceSnapPoints",(A)=>{Ll.referenceSnapPoints=A}),GA(Ll,"getReferenceSnapPoints",()=>Ll.referenceSnapPoints),GA(Ll,"setVisibleGaps",(A)=>{Ll.visibleGaps=A}),GA(Ll,"getVisibleGaps",()=>Ll.visibleGaps),GA(Ll,"destroy",()=>{Ll.referenceSnapPoints=null,Ll.visibleGaps=null});Id=Ll,m1={version:null,points:[],zoom:null};GA($a,"POINT_HANDLE_SIZE",10),GA($a,"getEditorMidPoints",(A,e,t)=>{let r=Ur(A,e);return!pt(A)&&!t.editingLinearElement&&A.points.length>2&&!r?[]:(m1.version===A.version&&m1.zoom===t.zoom.value||$a.updateEditorMidPointsCache(A,e,t),m1.points)}),GA($a,"updateEditorMidPointsCache",(A,e,t)=>{let r=$a.getPointsGlobalCoordinates(A,e),i=0,u=[];for(;i<r.length-1;){if($a.isSegmentTooShort(A,A.points[i],A.points[i+1],i,t.zoom)){u.push(null),i++;continue}let a=$a.getSegmentMidPoint(A,r[i],r[i+1],i+1,e);u.push(a),i++}m1.points=u,m1.version=A.version,m1.zoom=t.zoom.value}),GA($a,"getSegmentMidpointHitCoords",(A,e,t,r)=>{let{elementId:i}=A,u=$a.getElement(i,r);if(!u)return null;let a=$a.getPointIndexUnderCursor(u,r,t.zoom,e.x,e.y);if(!pt(u)&&a>=0||$a.getPointsGlobalCoordinates(u,r).length>=3&&!t.editingLinearElement&&!pt(u))return null;let n=($a.POINT_HANDLE_SIZE+1)/t.zoom.value,o=A.segmentMidPointHoveredCoords;if(o&&Ri(X(o[0],o[1]),X(e.x,e.y))<=n)return o;let s=0,l=$a.getEditorMidPoints(u,r,t);for(;s<l.length;){if(l[s]!==null&&Ri(l[s],X(e.x,e.y))<=n)return l[s];s++}return null}),GA($a,"getBoundTextElementPosition",(A,e,t)=>{let r=$a.getPointsGlobalCoordinates(A,t);r.length<2&&xe(e,{isDeleted:!0});let i=0,u=0;if(A.points.length%2===1){let a=Math.floor(A.points.length/2),n=$a.getPointGlobalCoordinates(A,A.points[a],t);i=n[0]-e.width/2,u=n[1]-e.height/2}else{let a=A.points.length/2-1,n=m1.points[a];A.points.length===2&&(n=U8(r[0],r[1])),(!n||m1.version!==A.version)&&(n=$a.getSegmentMidPoint(A,r[a],r[a+1],a+1,t)),i=n[0]-e.width/2,u=n[1]-e.height/2}return{x:i,y:u}}),GA($a,"getMinMaxXYWithBoundText",(A,e,t,r)=>{let[i,u,a,n]=t,o=(i+a)/2,s=(u+n)/2,{x:l,y:g}=$a.getBoundTextElementPosition(A,r,e),C=l+r.width,B=g+r.height,E=X(o,s),d=De(X(i,u),E,A.angle),I=De(X(a,u),E,A.angle),h=De(X(l,g),E,-A.angle),Q=De(X(C,g),E,-A.angle),p=De(X(l,B),E,-A.angle),m=De(X(C,B),E,-A.angle);return d[0]<I[0]&&d[1]>=I[1]?(i=Math.min(i,p[0]),a=Math.max(a,Math.max(Q[0],m[0])),u=Math.min(u,h[1]),n=Math.max(n,m[1])):d[0]>=I[0]&&d[1]>I[1]?(i=Math.min(i,m[0]),a=Math.max(a,Math.max(h[0],Q[0])),u=Math.min(u,p[1]),n=Math.max(n,Q[1])):d[0]>=I[0]?(i=Math.min(i,Q[0]),a=Math.max(a,p[0]),u=Math.min(u,m[1]),n=Math.max(n,h[1])):d[1]<=I[1]&&(i=Math.min(i,Math.min(Q[0],h[0])),a=Math.max(a,m[0]),u=Math.min(u,Q[1]),n=Math.max(n,p[1])),[i,u,a,n,o,s]}),GA($a,"getElementAbsoluteCoords",(A,e,t=!1)=>{let r,i,u,a,n;if(A.points.length<2||!na.get(A)){let{minX:g,minY:C,maxX:B,maxY:E}=A.points.reduce((d,[I,h])=>(d.minY=Math.min(d.minY,h),d.minX=Math.min(d.minX,I),d.maxX=Math.max(d.maxX,I),d.maxY=Math.max(d.maxY,h),d),{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0});i=g+A.x,u=C+A.y,a=B+A.x,n=E+A.y}else{let g=na.generateElementShape(A,null),C=Z1(g[0]),[B,E,d,I]=sW(C);i=B+A.x,u=E+A.y,a=d+A.x,n=I+A.y}let o=(i+a)/2,s=(u+n)/2;if(r=[i,u,a,n,o,s],!t)return r;let l=Ur(A,e);return l&&(r=$a.getMinMaxXYWithBoundText(A,e,[i,u,a,n],l)),r});It=$a,qm={},Lur=new Set(["rectangle","ellipse","diamond","arrow"]),w_=[],Nur=`data:${jt.svg},${encodeURIComponent(`${XQe}${$Qe}</svg>`)}`,Gur=`data:${jt.svg},${encodeURIComponent(`${XQe}${Rur}${$Qe}</svg>`)}`,Uur=new z7(Date.now());GA(b1,"satisfiesAddition",({deleted:A,inserted:e})=>A.isDeleted===!0&&!e.isDeleted),GA(b1,"satisfiesRemoval",({deleted:A,inserted:e})=>!A.isDeleted&&e.isDeleted===!0),GA(b1,"satisfiesUpdate",({deleted:A,inserted:e})=>!!A.isDeleted==!!e.isDeleted),GA(b1,"createApplier",(A,e,t)=>{let r=b1.createGetter(A,e,t);return(i)=>Array.from(i.entries()).reduce((u,[a,n])=>{let o=r(a,n.inserted);if(o){let s=b1.applyDelta(o,n,t);A.set(s.id,s),u.set(s.id,s)}return u},new Map)}),GA(b1,"createGetter",(A,e,t)=>(r,i)=>{let u=A.get(r);return u||(u=e.get(r),u&&(t.containsZindexDifference=!0,(i.isDeleted===!1||i.isDeleted!==!0&&u.isDeleted===!1)&&(t.containsVisibleDifference=!0))),u});NEe=b1,be={IMMEDIATELY:"IMMEDIATELY",NEVER:"NEVER",EVENTUALLY:"EVENTUALLY"},ad=new Map,Pur=/^(?:http(?:s)?:\/\/)?(?:www\.)?youtu(?:be\.com|\.be)\/(embed\/|watch\?v=|shorts\/|playlist\?list=|embed\/videoseries\?list=)?([a-zA-Z0-9_-]+)(?:\?t=|&t=|\?start=|&start=)?([a-zA-Z0-9_-]+)?[^\s]*$/,_ur=/^(?:http(?:s)?:\/\/)?(?:(?:w){3}\.)?(?:player\.)?vimeo\.com\/(?:video\/)?([^?\s]+)(?:\?.*)?$/,Wur=/^https:\/\/(?:www\.)?figma\.com/,UEe=/^https:\/\/gist\.github\.com\/([\w_-]+)\/([\w_-]+)/,qur=/^<script[\s\S]*?\ssrc=["'](https:\/\/gist\.github\.com\/.*?)\.js["']/i,MEe=/(?:https?:\/\/)?(?:(?:w){3}\.)?(?:twitter|x)\.com\/[^/]+\/status\/(\d+)/,zur=/^<blockquote[\s\S]*?\shref=["'](https?:\/\/(?:twitter|x)\.com\/[^"']*)/i,Zur=/^https:\/\/(?:www\.)?val\.town\/(v|embed)\/[a-zA-Z_$][0-9a-zA-Z_$]+\.[a-zA-Z_$][0-9a-zA-Z_$]+/,Vur=/^<(?:iframe|blockquote)[\s\S]*?\s(?:src|href)=["']([^"']*)["'][\s\S]*?>$/i,TEe=/giphy.com\/(?:clips|embed|gifs)\/[a-zA-Z0-9]*?-?([a-zA-Z0-9]+)(?:[^a-zA-Z0-9]|$)/,YEe=/^(?:http(?:s)?:\/\/)?(?:www\.)?reddit\.com\/r\/([a-zA-Z0-9_]+)\/comments\/([a-zA-Z0-9_]+)\/([a-zA-Z0-9_]+)\/?(?:\?[^#\s]*)?(?:#[^\s]*)?$/,jur=/^<blockquote[\s\S]*?\shref=["'](https?:\/\/(?:www\.)?reddit\.com\/[^"']*)/i,VdA=new Set(["youtube.com","youtu.be","vimeo.com","player.vimeo.com","figma.com","link.excalidraw.com","gist.github.com","twitter.com","x.com","*.simplepdf.eu","stackblitz.com","val.town","giphy.com","reddit.com"]),HEe=new Set(["youtube.com","youtu.be","vimeo.com","player.vimeo.com","figma.com","twitter.com","x.com","*.simplepdf.eu","stackblitz.com","reddit.com"]),Hyi=at({name:"setEmbeddableAsActiveTool",trackEvent:{category:"toolbar"},target:"Tool",label:"toolBar.embeddable",perform:(A,e,t,r)=>{let i=en(e,{type:"embeddable"});return nB(r.canvas,{...e,activeTool:i}),{elements:A,appState:{...e,activeTool:en(e,{type:"embeddable"})},captureUpdate:be.EVENTUALLY}}}),C4e=document.createElement("img");C4e.src=`data:${jt.svg}, ${encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#1971c2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-external-link"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line></svg>')}`;B4e=document.createElement("img");B4e.src=`data:${jt.svg}, ${encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#1971c2" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-arrow-big-right-line"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M12 9v-3.586a1 1 0 0 1 1.707 -.707l6.586 6.586a1 1 0 0 1 0 1.414l-6.586 6.586a1 1 0 0 1 -1.707 -.707v-3.586h-6v-6h6z" /><path d="M3 9v6" /></svg>')}`;o_={Bold:"#dddddd",Regular:"#e5e5e5"},OEe={regularLink:null,elementLink:null},rQA=M8((A)=>{d4e(A)},{trailing:!0}),Qar={selection:!0,text:!0,rectangle:!0,diamond:!0,ellipse:!0,line:!0,image:!0,arrow:!0,freedraw:!0,eraser:!1,custom:!0,frame:!0,embeddable:!0,hand:!0,laser:!1,magicframe:!1},VEe={isSidebarDocked:(A,e)=>["defaultSidebarDockedPreference",A.isSidebarDocked??war("defaultSidebarDockedPreference",A,e)]},F_=wXt(yXt),xc={fillStyle:"hachure",fontFamily:Lh,fontSize:cd,opacity:100,roughness:1,strokeColor:Zr.black,roundness:null,strokeStyle:"solid",strokeWidth:1,verticalAlign:Rl.MIDDLE,locked:!1},Jyi="clipboard"in navigator&&"readText"in navigator.clipboard,NW="clipboard"in navigator&&"writeText"in navigator.clipboard,GW="clipboard"in navigator&&"write"in navigator.clipboard&&"ClipboardItem"in window&&"toBlob"in HTMLCanvasElement.prototype;yn=function(){let A=null,e=null,t=null,r=(i,u)=>(t!=null&&i===A&&u.selectedElementIds===e||(t=i.some((a)=>u.selectedElementIds[a.id]),A=i,e=u.selectedElementIds),t);return r.clearCache=()=>{A=null,e=null,t=null},r}(),War=Jde.default((A)=>{(fr.DEV||fr.MODE===Ys.TEST||window?.DEBUG_FRACTIONAL_INDICES)&&DW(A,{shouldThrow:fr.DEV||fr.MODE===Ys.TEST,includeBoundTextValidation:!0})},60000,{leading:!0,trailing:!1});GA(AIA,"sceneMapByElement",new WeakMap),GA(AIA,"sceneMapById",new Map);zar=AIA,gd=zar,nde={mouse:8,pen:16,touch:28},H4e={e:!0,s:!0,n:!0,w:!0},ode={e:!0,s:!0,n:!0,w:!0,nw:!0,se:!0},KdA={e:!0,s:!0,n:!0,w:!0},JdA=["ns","nesw","ew","nwse"]});var YQA,HQA,KQA,JQA,OQA,PQA,_QA,WQA,qQA,zQA,ZQA,VQA,jQA,XQA,$QA,A4A,e4A,t4A,r4A,i4A,u4A,a4A,n4A,o4A,s4A,l4A,g4A,c4A,C4A,B4A,E4A,d4A,I4A,h4A,Q4A,BS;var p4A=_(()=>{YQA={paste:"Paste",pasteAsPlaintext:"Paste as plaintext",pasteCharts:"Paste charts",selectAll:"Select all",multiSelect:"Add element to selection",moveCanvas:"Move canvas",cut:"Cut",copy:"Copy",copyAsPng:"Copy to clipboard as PNG",copyAsSvg:"Copy to clipboard as SVG",copyText:"Copy to clipboard as text",copySource:"Copy source to clipboard",convertToCode:"Convert to code",bringForward:"Bring forward",sendToBack:"Send to back",bringToFront:"Bring to front",sendBackward:"Send backward",delete:"Delete",copyStyles:"Copy styles",pasteStyles:"Paste styles",stroke:"Stroke",changeStroke:"Change stroke color",background:"Background",changeBackground:"Change background color",fill:"Fill",strokeWidth:"Stroke width",strokeStyle:"Stroke style",strokeStyle_solid:"Solid",strokeStyle_dashed:"Dashed",strokeStyle_dotted:"Dotted",sloppiness:"Sloppiness",opacity:"Opacity",textAlign:"Text align",edges:"Edges",sharp:"Sharp",round:"Round",arrowheads:"Arrowheads",arrowhead_none:"None",arrowhead_arrow:"Arrow",arrowhead_bar:"Bar",arrowhead_circle:"Circle",arrowhead_circle_outline:"Circle (outline)",arrowhead_triangle:"Triangle",arrowhead_triangle_outline:"Triangle (outline)",arrowhead_diamond:"Diamond",arrowhead_diamond_outline:"Diamond (outline)",arrowhead_crowfoot_many:"Crow's foot (many)",arrowhead_crowfoot_one:"Crow's foot (one)",arrowhead_crowfoot_one_or_many:"Crow's foot (one or many)",more_options:"More options",arrowtypes:"Arrow type",arrowtype_sharp:"Sharp arrow",arrowtype_round:"Curved arrow",arrowtype_elbowed:"Elbow arrow",fontSize:"Font size",fontFamily:"Font family",addWatermark:'Add "Made with Excalidraw"',handDrawn:"Hand-drawn",normal:"Normal",code:"Code",small:"Small",medium:"Medium",large:"Large",veryLarge:"Very large",solid:"Solid",hachure:"Hachure",zigzag:"Zigzag",crossHatch:"Cross-hatch",thin:"Thin",bold:"Bold",left:"Left",center:"Center",right:"Right",extraBold:"Extra bold",architect:"Architect",artist:"Artist",cartoonist:"Cartoonist",fileTitle:"File name",colorPicker:"Color picker",canvasColors:"Used on canvas",canvasBackground:"Canvas background",drawingCanvas:"Drawing canvas",clearCanvas:"Clear canvas",layers:"Layers",actions:"Actions",language:"Language",liveCollaboration:"Live collaboration...",duplicateSelection:"Duplicate",untitled:"Untitled",name:"Name",yourName:"Your name",madeWithExcalidraw:"Made with Excalidraw",group:"Group selection",ungroup:"Ungroup selection",collaborators:"Collaborators",toggleGrid:"Toggle grid",addToLibrary:"Add to library",removeFromLibrary:"Remove from library",libraryLoadingMessage:"Loading library…",libraries:"Browse libraries",loadingScene:"Loading scene…",loadScene:"Load scene from file",align:"Align",alignTop:"Align top",alignBottom:"Align bottom",alignLeft:"Align left",alignRight:"Align right",centerVertically:"Center vertically",centerHorizontally:"Center horizontally",distributeHorizontally:"Distribute horizontally",distributeVertically:"Distribute vertically",flipHorizontal:"Flip horizontal",flipVertical:"Flip vertical",viewMode:"View mode",share:"Share",showStroke:"Show stroke color picker",showBackground:"Show background color picker",showFonts:"Show font picker",toggleTheme:"Toggle light/dark theme",theme:"Theme",personalLib:"Personal Library",excalidrawLib:"Excalidraw Library",decreaseFontSize:"Decrease font size",increaseFontSize:"Increase font size",unbindText:"Unbind text",bindText:"Bind text to the container",createContainerFromText:"Wrap text in a container",link:{edit:"Edit link",editEmbed:"Edit embeddable link",create:"Add link",label:"Link",labelEmbed:"Link & embed",empty:"No link is set",hint:"Type or paste your link here",goToElement:"Go to target element"},lineEditor:{edit:"Edit line",editArrow:"Edit arrow"},elementLock:{lock:"Lock",unlock:"Unlock",lockAll:"Lock all",unlockAll:"Unlock all"},statusPublished:"Published",sidebarLock:"Keep sidebar open",selectAllElementsInFrame:"Select all elements in frame",removeAllElementsFromFrame:"Remove all elements from frame",eyeDropper:"Pick color from canvas",textToDiagram:"Text to diagram",prompt:"Prompt",followUs:"Follow us",discordChat:"Discord chat",zoomToFitViewport:"Zoom to fit in viewport",zoomToFitSelection:"Zoom to fit selection",zoomToFit:"Zoom to fit all elements",installPWA:"Install Excalidraw locally (PWA)",autoResize:"Enable text auto-resizing",imageCropping:"Image cropping",unCroppedDimension:"Uncropped dimension",copyElementLink:"Copy link to object",linkToElement:"Link to object",wrapSelectionInFrame:"Wrap selection in frame"},HQA={title:"Link to object",desc:"Click on a shape on canvas or paste a link.",notFound:"Linked object wasn't found on canvas."},KQA={noItems:"No items added yet...",hint_emptyLibrary:"Select an item on canvas to add it here, or install a library from the public repository, below.",hint_emptyPrivateLibrary:"Select an item on canvas to add it here."},JQA={title:"Find on canvas",noMatch:"No matches found...",singleResult:"result",multipleResults:"results",placeholder:"Find text on canvas..."},OQA={clearReset:"Reset the canvas",exportJSON:"Export to file",exportImage:"Export image...",export:"Save to...",copyToClipboard:"Copy to clipboard",copyLink:"Copy link",save:"Save to current file",saveAs:"Save as",load:"Open",getShareableLink:"Get shareable link",close:"Close",selectLanguage:"Select language",scrollBackToContent:"Scroll back to content",zoomIn:"Zoom in",zoomOut:"Zoom out",resetZoom:"Reset zoom",menu:"Menu",done:"Done",edit:"Edit",undo:"Undo",redo:"Redo",resetLibrary:"Reset library",createNewRoom:"Create new room",fullScreen:"Full screen",darkMode:"Dark mode",lightMode:"Light mode",systemMode:"System mode",zenMode:"Zen mode",objectsSnapMode:"Snap to objects",exitZenMode:"Exit zen mode",cancel:"Cancel",clear:"Clear",remove:"Remove",embed:"Toggle embedding",publishLibrary:"Publish",submit:"Submit",confirm:"Confirm",embeddableInteractionButton:"Click to interact"},PQA={clearReset:"This will clear the whole canvas. Are you sure?",couldNotCreateShareableLink:"Couldn't create shareable link.",couldNotCreateShareableLinkTooBig:"Couldn't create shareable link: the scene is too big",couldNotLoadInvalidFile:"Couldn't load invalid file",importBackendFailed:"Importing from backend failed.",cannotExportEmptyCanvas:"Cannot export empty canvas.",couldNotCopyToClipboard:"Couldn't copy to clipboard.",decryptFailed:"Couldn't decrypt data.",uploadedSecurly:"The upload has been secured with end-to-end encryption, which means that Excalidraw server and third parties can't read the content.",loadSceneOverridePrompt:"Loading external drawing will replace your existing content. Do you wish to continue?",collabStopOverridePrompt:`Stopping the session will overwrite your previous, locally stored drawing. Are you sure?
(If you want to keep your local drawing, simply close the browser tab instead.)`,errorAddingToLibrary:"Couldn't add item to the library",errorRemovingFromLibrary:"Couldn't remove item from the library",confirmAddLibrary:"This will add {{numShapes}} shape(s) to your library. Are you sure?",imageDoesNotContainScene:"This image does not seem to contain any scene data. Have you enabled scene embedding during export?",cannotRestoreFromImage:"Scene couldn't be restored from this image file",invalidSceneUrl:"Couldn't import scene from the supplied URL. It's either malformed, or doesn't contain valid Excalidraw JSON data.",resetLibrary:"This will clear your library. Are you sure?",removeItemsFromsLibrary:"Delete {{count}} item(s) from library?",invalidEncryptionKey:"Encryption key must be of 22 characters. Live collaboration is disabled.",collabOfflineWarning:`No internet connection available.
Your changes will not be saved!`},_QA={unsupportedFileType:"Unsupported file type.",imageInsertError:"Couldn't insert image. Try again later...",fileTooBig:"File is too big. Maximum allowed size is {{maxSize}}.",svgImageInsertError:"Couldn't insert SVG image. The SVG markup looks invalid.",failedToFetchImage:"Failed to fetch image.",cannotResolveCollabServer:"Couldn't connect to the collab server. Please reload the page and try again.",importLibraryError:"Couldn't load library",saveLibraryError:"Couldn't save library to storage. Please save your library to a file locally to make sure you don't lose changes.",collabSaveFailed:"Couldn't save to the backend database. If problems persist, you should save your file locally to ensure you don't lose your work.",collabSaveFailed_sizeExceeded:"Couldn't save to the backend database, the canvas seems to be too big. You should save the file locally to ensure you don't lose your work.",imageToolNotSupported:"Images are disabled.",brave_measure_text_error:{line1:"Looks like you are using Brave browser with the <bold>Aggressively Block Fingerprinting</bold> setting enabled.",line2:"This could result in breaking the <bold>Text Elements</bold> in your drawings.",line3:"We strongly recommend disabling this setting. You can follow <link>these steps</link> on how to do so.",line4:"If disabling this setting doesn't fix the display of text elements, please open an <issueLink>issue</issueLink> on our GitHub, or write us on <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Embeddable elements cannot be added to the library.",iframe:"IFrame elements cannot be added to the library.",image:"Support for adding images to the library coming soon!"},asyncPasteFailedOnRead:"Couldn't paste (couldn't read from system clipboard).",asyncPasteFailedOnParse:"Couldn't paste.",copyToSystemClipboardFailed:"Couldn't copy to clipboard."},WQA={selection:"Selection",image:"Insert image",rectangle:"Rectangle",diamond:"Diamond",ellipse:"Ellipse",arrow:"Arrow",line:"Line",freedraw:"Draw",text:"Text",library:"Library",lock:"Keep selected tool active after drawing",penMode:"Pen mode - prevent touch",link:"Add / Update link for a selected shape",eraser:"Eraser",frame:"Frame tool",magicframe:"Wireframe to code",embeddable:"Web Embed",laser:"Laser pointer",hand:"Hand (panning tool)",extraTools:"More tools",mermaidToExcalidraw:"Mermaid to Excalidraw"},qQA={rectangle:"Rectangle",diamond:"Diamond",ellipse:"Ellipse",arrow:"Arrow",line:"Line",freedraw:"Freedraw",text:"Text",image:"Image",group:"Group",frame:"Frame",magicframe:"Wireframe to code",embeddable:"Web Embed",selection:"Selection",iframe:"IFrame"},zQA={canvasActions:"Canvas actions",selectedShapeActions:"Selected shape actions",shapes:"Shapes"},ZQA={dismissSearch:"Escape to dismiss search",canvasPanning:"To move canvas, hold mouse wheel or spacebar while dragging, or use the hand tool",linearElement:"Click to start multiple points, drag for single line",arrowTool:"Click to start multiple points, drag for single line. Press {{arrowShortcut}} again to change arrow type.",freeDraw:"Click and drag, release when you're finished",text:"Tip: you can also add text by double-clicking anywhere with the selection tool",embeddable:"Click-drag to create a website embed",text_selected:"Double-click or press ENTER to edit text",text_editing:"Press Escape or CtrlOrCmd+ENTER to finish editing",linearElementMulti:"Click on last point or press Escape or Enter to finish",lockAngle:"You can constrain angle by holding SHIFT",resize:`You can constrain proportions by holding SHIFT while resizing,
hold ALT to resize from the center`,resizeImage:`You can resize freely by holding SHIFT,
hold ALT to resize from the center`,rotate:"You can constrain angles by holding SHIFT while rotating",lineEditor_info:"Hold CtrlOrCmd and Double-click or press CtrlOrCmd + Enter to edit points",lineEditor_pointSelected:`Press Delete to remove point(s),
CtrlOrCmd+D to duplicate, or drag to move`,lineEditor_nothingSelected:`Select a point to edit (hold SHIFT to select multiple),
or hold Alt and click to add new points`,placeImage:"Click to place the image, or click and drag to set its size manually",publishLibrary:"Publish your own library",bindTextToElement:"Press enter to add text",createFlowchart:"Hold CtrlOrCmd and Arrow key to create a flowchart",deepBoxSelect:"Hold CtrlOrCmd to deep select, and to prevent dragging",eraserRevert:"Hold Alt to revert the elements marked for deletion",firefox_clipboard_write:'This feature can likely be enabled by setting the "dom.events.asyncClipboard.clipboardItem" flag to "true". To change the browser flags in Firefox, visit the "about:config" page.',disableSnapping:"Hold CtrlOrCmd to disable snapping",enterCropEditor:"Double click the image or press ENTER to crop the image",leaveCropEditor:"Click outside the image or press ENTER or ESCAPE to finish cropping"},VQA={cannotShowPreview:"Cannot show preview",canvasTooBig:"The canvas may be too big.",canvasTooBigTip:"Tip: try moving the farthest elements a bit closer together."},jQA={headingMain:"Encountered an error. Try <button>reloading the page</button>.",clearCanvasMessage:"If reloading doesn't work, try <button>clearing the canvas</button>.",clearCanvasCaveat:" This will result in loss of work ",trackedToSentry:"The error with identifier {{eventId}} was tracked on our system.",openIssueMessage:"We were very cautious not to include your scene information on the error. If your scene is not private, please consider following up on our <button>bug tracker</button>. Please include information below by copying and pasting into the GitHub issue.",sceneContent:"Scene content:"},XQA={or:"Or"},$QA={desc_intro:"Invite people to collaborate on your drawing.",desc_privacy:"Don't worry, the session is end-to-end encrypted, and fully private. Not even our server can see what you draw.",button_startSession:"Start session",button_stopSession:"Stop session",desc_inProgressIntro:"Live-collaboration session is now in progress.",desc_shareLink:"Share this link with anyone you want to collaborate with:",desc_exitSession:"Stopping the session will disconnect you from the room, but you'll be able to continue working with the scene, locally. Note that this won't affect other people, and they'll still be able to collaborate on their version.",shareTitle:"Join a live collaboration session on Excalidraw"},A4A={title:"Error"},e4A={disk_title:"Save to disk",disk_details:"Export the scene data to a file from which you can import later.",disk_button:"Save to file",link_title:"Shareable link",link_details:"Export as a read-only link.",link_button:"Export to Link",excalidrawplus_description:"Save the scene to your Excalidraw+ workspace.",excalidrawplus_button:"Export",excalidrawplus_exportError:"Couldn't export to Excalidraw+ at this moment..."},t4A={blog:"Read our blog",click:"click",deepSelect:"Deep select",deepBoxSelect:"Deep select within box, and prevent dragging",createFlowchart:"Create a flowchart from a generic element",navigateFlowchart:"Navigate a flowchart",curvedArrow:"Curved arrow",curvedLine:"Curved line",documentation:"Documentation",doubleClick:"double-click",drag:"drag",editor:"Editor",editLineArrowPoints:"Edit line/arrow points",editText:"Edit text / add label",github:"Found an issue? Submit",howto:"Follow our guides",or:"or",preventBinding:"Prevent arrow binding",tools:"Tools",shortcuts:"Keyboard shortcuts",textFinish:"Finish editing (text editor)",textNewLine:"Add new line (text editor)",title:"Help",view:"View",zoomToFit:"Zoom to fit all elements",zoomToSelection:"Zoom to selection",toggleElementLock:"Lock/unlock selection",movePageUpDown:"Move page up/down",movePageLeftRight:"Move page left/right",cropStart:"Crop image",cropFinish:"Finish image cropping"},r4A={title:"Clear canvas"},i4A={title:"Publish library",itemName:"Item name",authorName:"Author name",githubUsername:"GitHub username",twitterUsername:"Twitter username",libraryName:"Library name",libraryDesc:"Library description",website:"Website",placeholder:{authorName:"Your name or username",libraryName:"Name of your library",libraryDesc:"Description of your library to help people understand its usage",githubHandle:"GitHub handle (optional), so you can edit the library once submitted for review",twitterHandle:"Twitter username (optional), so we know who to credit when promoting over Twitter",website:"Link to your personal website or elsewhere (optional)"},errors:{required:"Required",website:"Enter a valid URL"},noteDescription:"Submit your library to be included in the <link>public library repository</link> for other people to use in their drawings.",noteGuidelines:"The library needs to be manually approved first. Please read the <link>guidelines</link> before submitting. You will need a GitHub account to communicate and make changes if requested, but it is not strictly required.",noteLicense:"By submitting, you agree the library will be published under the <link>MIT License</link>, which in short means anyone can use them without restrictions.",noteItems:"Each library item must have its own name so it's filterable. The following library items will be included:",atleastOneLibItem:"Please select at least one library item to get started",republishWarning:"Note: some of the selected items are marked as already published/submitted. You should only resubmit items when updating an existing library or submission."},u4A={title:"Library submitted",content:"Thank you {{authorName}}. Your library has been submitted for review. You can track the status <link>here</link>"},a4A={resetLibrary:"Reset library",removeItemsFromLib:"Remove selected items from library"},n4A={header:"Export image",label:{withBackground:"Background",onlySelected:"Only selected",darkMode:"Dark mode",embedScene:"Embed scene",scale:"Scale",padding:"Padding"},tooltip:{embedScene:`Scene data will be saved into the exported PNG/SVG file so that the scene can be restored from it.
Will increase exported file size.`},title:{exportToPng:"Export to PNG",exportToSvg:"Export to SVG",copyPngToClipboard:"Copy PNG to clipboard"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copy to clipboard"}},o4A={tooltip:"Your drawings are end-to-end encrypted so Excalidraw's servers will never see them.",link:"Blog post on end-to-end encryption in Excalidraw"},s4A={angle:"Angle",shapes:"Shapes",height:"Height",scene:"Scene",selected:"Selected",storage:"Storage",fullTitle:"Canvas & Shape properties",title:"Properties",generalStats:"General",elementProperties:"Shape properties",total:"Total",version:"Version",versionCopy:"Click to copy",versionNotAvailable:"Version not available",width:"Width"},l4A={addedToLibrary:"Added to library",copyStyles:"Copied styles.",copyToClipboard:"Copied to clipboard.",copyToClipboardAsPng:`Copied {{exportSelection}} to clipboard as PNG
({{exportColorScheme}})`,copyToClipboardAsSvg:`Copied {{exportSelection}} to clipboard as SVG
({{exportColorScheme}})`,fileSaved:"File saved.",fileSavedToFilename:"Saved to {filename}",canvas:"canvas",selection:"selection",pasteAsSingleElement:`Use {{shortcut}} to paste as a single element,
or paste into an existing text editor`,unableToEmbed:"Embedding this url is currently not allowed. Raise an issue on GitHub to request the url whitelisted",unrecognizedLinkFormat:"The link you embedded does not match the expected format. Please try to paste the 'embed' string provided by the source site",elementLinkCopied:"Link copied to clipboard"},g4A={transparent:"Transparent",black:"Black",white:"White",red:"Red",pink:"Pink",grape:"Grape",violet:"Violet",gray:"Gray",blue:"Blue",cyan:"Cyan",teal:"Teal",green:"Green",yellow:"Yellow",orange:"Orange",bronze:"Bronze"},c4A={app:{center_heading:"All your data is saved locally in your browser.",center_heading_plus:"Did you want to go to the Excalidraw+ instead?",menuHint:"Export, preferences, languages, ..."},defaults:{menuHint:"Export, preferences, and more...",center_heading:"Diagrams. Made. Simple.",toolbarHint:"Pick a tool & Start drawing!",helpHint:"Shortcuts & help"}},C4A={mostUsedCustomColors:"Most used custom colors",colors:"Colors",shades:"Shades",hexCode:"Hex code",noShades:"No shades available for this color"},B4A={action:{exportToImage:{title:"Export as image",button:"Export as image",description:"Export the scene data as an image from which you can import later."},saveToDisk:{title:"Save to disk",button:"Save to disk",description:"Export the scene data to a file from which you can import later."},excalidrawPlus:{title:"Excalidraw+",button:"Export to Excalidraw+",description:"Save the scene to your Excalidraw+ workspace."}},modal:{loadFromFile:{title:"Load from file",button:"Load from file",description:"Loading from a file will <bold>replace your existing content</bold>.<br></br>You can back up your drawing first using one of the options below."},shareableLink:{title:"Load from link",button:"Replace my content",description:"Loading external drawing will <bold>replace your existing content</bold>.<br></br>You can back up your drawing first by using one of the options below."}}},E4A={title:"Mermaid to Excalidraw",button:"Insert",description:"Currently only <flowchartLink>Flowchart</flowchartLink>,<sequenceLink> Sequence, </sequenceLink> and <classLink>Class </classLink>Diagrams are supported. The other types will be rendered as image in Excalidraw.",syntax:"Mermaid Syntax",preview:"Preview"},d4A={placeholder:"Quick search"},I4A={badge:{old:"old"},sceneFonts:"In this scene",availableFonts:"Available fonts",empty:"No fonts found"},h4A={empty:"No users found",hint:{text:"Click on user to follow",followStatus:"You're currently following this user",inCall:"User is in a voice call",micMuted:"User's microphone is muted",isSpeaking:"User is speaking"}},Q4A={title:"Command palette",shortcuts:{select:"Select",confirm:"Confirm",close:"Close"},recents:"Recently used",search:{placeholder:"Search menus, commands, and discover hidden gems",noMatch:"No matching commands..."},itemNotAvailable:"Command is not available...",shortcutHint:"For Command palette, use {{shortcut}}"},BS={labels:YQA,elementLink:HQA,library:KQA,search:JQA,buttons:OQA,alerts:PQA,errors:_QA,toolBar:WQA,element:qQA,headings:zQA,hints:ZQA,canvasError:VQA,errorSplash:jQA,shareDialog:XQA,roomDialog:$QA,errorDialog:A4A,exportDialog:e4A,helpDialog:t4A,clearCanvasDialog:r4A,publishDialog:i4A,publishSuccessDialog:u4A,confirmDialog:a4A,imageExportDialog:n4A,encrypted:o4A,stats:s4A,toast:l4A,colors:g4A,welcomeScreen:c4A,colorPicker:C4A,overwriteConfirm:B4A,mermaid:E4A,quickSearch:d4A,fontList:I4A,userList:h4A,commandPalette:Q4A}});var f4A=100,m4A=36,jW;var D4A=_(()=>{jW={"ar-SA":94,"az-AZ":17,"bg-BG":71,"bn-BD":52,"ca-ES":83,"cs-CZ":86,"da-DK":61,"de-DE":100,"el-GR":80,en:f4A,"es-ES":96,"eu-ES":97,"fa-IR":84,"fi-FI":76,"fr-FR":99,"gl-ES":86,"he-IL":77,"hi-IN":76,"hu-HU":76,"id-ID":91,"it-IT":98,"ja-JP":90,kaa:m4A,"kab-KAB":76,"kk-KZ":18,"km-KH":83,"ko-KR":100,"ku-TR":87,"lt-LT":48,"lv-LV":77,"mr-IN":98,"my-MM":35,"nb-NO":93,"nl-NL":75,"nn-NO":67,"oc-FR":92,"pa-IN":78,"pl-PL":99,"pt-BR":91,"pt-PT":83,"ro-RO":99,"ru-RU":92,"si-LK":7,"sk-SK":100,"sl-SI":100,"sv-SE":100,"ta-IN":81,"th-TH":44,"tr-TR":87,"uk-UA":93,"vi-VN":49,"zh-CN":100,"zh-HK":22,"zh-TW":100}});var F1e=wu(function(_9){function R4A(A,e){var t=A.length;A.push(e);A:for(;0<t;){var r=t-1>>>1,i=A[r];if(0<tq(i,e))A[r]=e,A[t]=i,t=r;else break A}}function cB(A){return A.length===0?null:A[0]}function aq(A){if(A.length===0)return null;var e=A[0],t=A.pop();if(t!==e){A[0]=t;A:for(var r=0,i=A.length,u=i>>>1;r<u;){var a=2*(r+1)-1,n=A[a],o=a+1,s=A[o];if(0>tq(n,t))o<i&&0>tq(s,n)?(A[r]=s,A[o]=t,r=o):(A[r]=n,A[a]=t,r=a);else if(o<i&&0>tq(s,t))A[r]=s,A[o]=t,r=o;else break A}}return e}function tq(A,e){var t=A.sortIndex-e.sortIndex;return t!==0?t:A.id-e.id}if(typeof performance==="object"&&typeof performance.now==="function")N4A=performance,_9.unstable_now=function(){return N4A.now()};else rq=Date,G4A=rq.now(),_9.unstable_now=function(){return rq.now()-G4A};var N4A,rq,G4A,Qd=[],$1=[],pnr=1,Tc=null,j0=3,nq=!1,C2=!1,QS=!1,y1e=typeof setTimeout==="function"?setTimeout:null,w1e=typeof clearTimeout==="function"?clearTimeout:null,D1e=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function U4A(A){for(var e=cB($1);e!==null;){if(e.callback===null)aq($1);else if(e.startTime<=A)aq($1),e.sortIndex=e.expirationTime,R4A(Qd,e);else break;e=cB($1)}}function T4A(A){if(QS=!1,U4A(A),!C2)if(cB(Qd)!==null)C2=!0,H4A(Y4A);else{var e=cB($1);e!==null&&K4A(T4A,e.startTime-A)}}function Y4A(A,e){C2=!1,QS&&(QS=!1,w1e(pS),pS=-1),nq=!0;var t=j0;try{U4A(e);for(Tc=cB(Qd);Tc!==null&&(!(Tc.expirationTime>e)||A&&!k1e());){var r=Tc.callback;if(typeof r==="function"){Tc.callback=null,j0=Tc.priorityLevel;var i=r(Tc.expirationTime<=e);e=_9.unstable_now(),typeof i==="function"?Tc.callback=i:Tc===cB(Qd)&&aq(Qd),U4A(e)}else aq(Qd);Tc=cB(Qd)}if(Tc!==null)var u=!0;else{var a=cB($1);a!==null&&K4A(T4A,a.startTime-e),u=!1}return u}finally{Tc=null,j0=t,nq=!1}}var oq=!1,iq=null,pS=-1,b1e=5,v1e=-1;function k1e(){return _9.unstable_now()-v1e<b1e?!1:!0}function L4A(){if(iq!==null){var A=_9.unstable_now();v1e=A;var e=!0;try{e=iq(!0,A)}finally{e?hS():(oq=!1,iq=null)}}else oq=!1}var hS;if(typeof D1e==="function")hS=function(){D1e(L4A)};else if(typeof MessageChannel<"u")uq=new MessageChannel,M4A=uq.port2,uq.port1.onmessage=L4A,hS=function(){M4A.postMessage(null)};else hS=function(){y1e(L4A,0)};var uq,M4A;function H4A(A){iq=A,oq||(oq=!0,hS())}function K4A(A,e){pS=y1e(function(){A(_9.unstable_now())},e)}_9.unstable_IdlePriority=5;_9.unstable_ImmediatePriority=1;_9.unstable_LowPriority=4;_9.unstable_NormalPriority=3;_9.unstable_Profiling=null;_9.unstable_UserBlockingPriority=2;_9.unstable_cancelCallback=function(A){A.callback=null};_9.unstable_continueExecution=function(){C2||nq||(C2=!0,H4A(Y4A))};_9.unstable_forceFrameRate=function(A){0>A||125<A?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):b1e=0<A?Math.floor(1000/A):5};_9.unstable_getCurrentPriorityLevel=function(){return j0};_9.unstable_getFirstCallbackNode=function(){return cB(Qd)};_9.unstable_next=function(A){switch(j0){case 1:case 2:case 3:var e=3;break;default:e=j0}var t=j0;j0=e;try{return A()}finally{j0=t}};_9.unstable_pauseExecution=function(){};_9.unstable_requestPaint=function(){};_9.unstable_runWithPriority=function(A,e){switch(A){case 1:case 2:case 3:case 4:case 5:break;default:A=3}var t=j0;j0=A;try{return e()}finally{j0=t}};_9.unstable_scheduleCallback=function(A,e,t){var r=_9.unstable_now();switch(typeof t==="object"&&t!==null?(t=t.delay,t=typeof t==="number"&&0<t?r+t:r):t=r,A){case 1:var i=-1;break;case 2:i=250;break;case 5:i=1073741823;break;case 4:i=1e4;break;default:i=5000}return i=t+i,A={id:pnr++,callback:e,priorityLevel:A,startTime:t,expirationTime:i,sortIndex:-1},t>r?(A.sortIndex=t,R4A($1,A),cB(Qd)===null&&A===cB($1)&&(QS?(w1e(pS),pS=-1):QS=!0,K4A(T4A,t-r))):(A.sortIndex=i,R4A(Qd,A),C2||nq||(C2=!0,H4A(Y4A))),A};_9.unstable_shouldYield=k1e;_9.unstable_wrapCallback=function(A){var e=j0;return function(){var t=j0;j0=e;try{return A.apply(this,arguments)}finally{j0=t}}}});var L2e=wu(function(x2e,S2e){(function(){var A=this,e={};if(typeof x2e<"u")S2e.exports=e;else A.fuzzy=e;e.simpleFilter=function(t,r){return r.filter(function(i){return e.test(t,i)})},e.test=function(t,r){return e.match(t,r)!==null},e.match=function(t,r,i){i=i||{};var u=0,a=[],n=r.length,o=0,s=0,l=i.pre||"",g=i.post||"",C=i.caseSensitive&&r||r.toLowerCase(),B;t=i.caseSensitive&&t||t.toLowerCase();for(var E=0;E<n;E++){if(B=r[E],C[E]===t[u])B=l+B+g,u+=1,s+=1+s;else s=0;o+=s,a[a.length]=B}if(u===t.length)return o=C===t?1/0:o,{rendered:a.join(""),score:o};return null},e.filter=function(t,r,i){if(!r||r.length===0)return[];if(typeof t!=="string")return r;return i=i||{},r.reduce(function(u,a,n,o){var s=a;if(i.extract)s=i.extract(a);var l=e.match(t,s,i);if(l!=null)u[u.length]={string:l.rendered,score:l.score,index:n,original:a};return u},[]).sort(function(u,a){var n=a.score-u.score;if(n)return n;return u.index-a.index})}})()});var G2e=wu(function(Ylr){fe();function xlr(A,e){return A===e&&(A!==0||1/A===1/e)||A!==A&&e!==e}var Slr=typeof Object.is==="function"?Object.is:xlr,Llr=we,Rlr=le,Nlr=Ii,Glr=p1;function Ulr(A,e){var t=e(),r=Llr({inst:{value:t,getSnapshot:e}}),i=r[0].inst,u=r[1];return Nlr(function(){i.value=t,i.getSnapshot=e,FfA(i)&&u({inst:i})},[A,t,e]),Rlr(function(){return FfA(i)&&u({inst:i}),A(function(){FfA(i)&&u({inst:i})})},[A]),Glr(t),t}function FfA(A){var e=A.getSnapshot;A=A.value;try{var t=e();return!Slr(A,t)}catch(r){return!0}}function Mlr(A,e){return e()}var Tlr=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?Mlr:Ulr;Ylr.useSyncExternalStore=n8!==void 0?n8:Tlr});var CDe=wu(function(xvi,cDe){var Zgr="Expected a function",lDe=NaN,Vgr="[object Symbol]",jgr=/^\s+|\s+$/g,Xgr=/^[-+]0x[0-9a-f]+$/i,$gr=/^0b[01]+$/i,Acr=/^0o[0-7]+$/i,ecr=parseInt,tcr=typeof global=="object"&&global&&global.Object===Object&&global,rcr=typeof self=="object"&&self&&self.Object===Object&&self,icr=tcr||rcr||Function("return this")(),ucr=Object.prototype,acr=ucr.toString,{max:ncr,min:ocr}=Math,zfA=function(){return icr.Date.now()};function scr(A,e,t){var r,i,u,a,n,o,s=0,l=!1,g=!1,C=!0;if(typeof A!="function")throw TypeError(Zgr);if(e=gDe(e)||0,ZfA(t))l=!!t.leading,g="maxWait"in t,u=g?ncr(gDe(t.maxWait)||0,e):u,C="trailing"in t?!!t.trailing:C;function B(D){var w=r,b=i;return r=i=void 0,s=D,a=A.apply(b,w),a}function E(D){return s=D,n=setTimeout(h,e),l?B(D):a}function d(D){var w=D-o,b=D-s,k=e-w;return g?ocr(k,u-b):k}function I(D){var w=D-o,b=D-s;return o===void 0||w>=e||w<0||g&&b>=u}function h(){var D=zfA();if(I(D))return Q(D);n=setTimeout(h,d(D))}function Q(D){if(n=void 0,C&&r)return B(D);return r=i=void 0,a}function p(){if(n!==void 0)clearTimeout(n);s=0,r=o=i=n=void 0}function m(){return n===void 0?a:Q(zfA())}function f(){var D=zfA(),w=I(D);if(r=arguments,i=this,o=D,w){if(n===void 0)return E(o);if(g)return n=setTimeout(h,e),B(o)}if(n===void 0)n=setTimeout(h,e);return a}return f.cancel=p,f.flush=m,f}function ZfA(A){var e=typeof A;return!!A&&(e=="object"||e=="function")}function lcr(A){return!!A&&typeof A=="object"}function gcr(A){return typeof A=="symbol"||lcr(A)&&acr.call(A)==Vgr}function gDe(A){if(typeof A=="number")return A;if(gcr(A))return lDe;if(ZfA(A)){var e=typeof A.valueOf=="function"?A.valueOf():A;A=ZfA(e)?e+"":e}if(typeof A!="string")return A===0?A:+A;A=A.replace(jgr,"");var t=$gr.test(A);return t||Acr.test(A)?ecr(A.slice(2),t?2:8):Xgr.test(A)?lDe:+A}cDe.exports=scr});var PDe={};Dt(PDe,{alerts:()=>pDe,buttons:()=>QDe,canvasError:()=>wDe,clearCanvasDialog:()=>SDe,colorPicker:()=>KDe,colors:()=>YDe,confirmDialog:()=>NDe,default:()=>hcr,encrypted:()=>UDe,errorDialog:()=>kDe,errorSplash:()=>bDe,errors:()=>fDe,exportDialog:()=>FDe,headings:()=>DDe,helpDialog:()=>xDe,hints:()=>yDe,imageExportDialog:()=>GDe,labels:()=>IDe,library:()=>hDe,mermaid:()=>ODe,overwriteConfirm:()=>JDe,publishDialog:()=>LDe,publishSuccessDialog:()=>RDe,roomDialog:()=>vDe,stats:()=>MDe,toast:()=>TDe,toolBar:()=>mDe,welcomeScreen:()=>HDe});var IDe,hDe,QDe,pDe,fDe,mDe,DDe,yDe,wDe,bDe,vDe,kDe,FDe,xDe,SDe,LDe,RDe,NDe,GDe,UDe,MDe,TDe,YDe,HDe,KDe,JDe,ODe,hcr;var _De=_(()=>{zt();IDe={paste:"لصق",pasteAsPlaintext:"اللصق كنص عادي",pasteCharts:"لصق الرسوم البيانية",selectAll:"تحديد الكل",multiSelect:"إضافة عنصر للتحديد",moveCanvas:"نقل لوح الرسم",cut:"قص",copy:"نسخ",copyAsPng:"نسخ إلى الحافظة بصيغة PNG",copyAsSvg:"نسخ إلى الحافظة بصيغة SVG",copyText:"نسخ إلى الحافظة كنص",copySource:"",convertToCode:"",bringForward:"جلب للأمام",sendToBack:"أرسل للخلف",bringToFront:"أحضر للأمام",sendBackward:"أرسل للخلف",delete:"حذف",copyStyles:"نسخ الأنماط",pasteStyles:"لصق الأنماط",stroke:"الخط",background:"الخلفية",fill:"التعبئة",strokeWidth:"سُمك الخط",strokeStyle:"نمط الخط",strokeStyle_solid:"متصل",strokeStyle_dashed:"متقطع",strokeStyle_dotted:"منقط",sloppiness:"الإمالة",opacity:"الشفافية",textAlign:"محاذاة النص",edges:"الحواف",sharp:"حادة",round:"دائرية",arrowheads:"رؤوس الأسهم",arrowhead_none:"لا شيء",arrowhead_arrow:"سهم",arrowhead_bar:"شريط",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"مثلث",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"حجم الخط",fontFamily:"نوع الخط",addWatermark:'إضافة "مصنوعة بواسطة Excalidraw"',handDrawn:"رسم باليد",normal:"عادي",code:"رمز",small:"صغير",medium:"متوسط",large:"كبير",veryLarge:"كبير جدا",solid:"كامل",hachure:"خطوط",zigzag:"متعرج",crossHatch:"خطوط متقطعة",thin:"نحيف",bold:"داكن",left:"الـيسار",center:"وسط",right:"يمين",extraBold:"عريض",architect:"معماري",artist:"رسام",cartoonist:"كرتوني",fileTitle:"إسم الملف",colorPicker:"منتقي اللون",canvasColors:"تستخدم على القماش",canvasBackground:"خلفية اللوحة",drawingCanvas:"لوحة الرسم",layers:"الطبقات",actions:"الإجراءات",language:"اللغة",liveCollaboration:"التعاون المباشر...",duplicateSelection:"تكرار",untitled:"غير معنون",name:"الاسم",yourName:"اسمك",madeWithExcalidraw:"مصنوعة بواسطة Excalidraw",group:"تحديد مجموعة",ungroup:"إلغاء تحديد مجموعة",collaborators:"المتعاونون",showGrid:"إظهار الشبكة",addToLibrary:"أضف إلى المكتبة",removeFromLibrary:"حذف من المكتبة",libraryLoadingMessage:"جارٍ تحميل المكتبة…",libraries:"تصفح المكتبات",loadingScene:"جاري تحميل المشهد…",align:"محاذاة",alignTop:"محاذاة إلى اﻷعلى",alignBottom:"محاذاة إلى اﻷسفل",alignLeft:"محاذاة إلى اليسار",alignRight:"محاذاة إلى اليمين",centerVertically:"توسيط عمودي",centerHorizontally:"توسيط أفقي",distributeHorizontally:"التوزيع الأفقي",distributeVertically:"التوزيع عمودياً",flipHorizontal:"قلب عامودي",flipVertical:"قلب أفقي",viewMode:"نمط العرض",share:"مشاركة",showStroke:"إظهار منتقي لون الخط",showBackground:"إظهار منتقي لون الخلفية",toggleTheme:"غير النمط",personalLib:"المكتبة الشخصية",excalidrawLib:"مكتبتنا",decreaseFontSize:"تصغير حجم الخط",increaseFontSize:"تكبير حجم الخط",unbindText:"فك ربط النص",bindText:"ربط النص بالحاوية",createContainerFromText:"نص مغلف في حاوية",link:{edit:"تعديل الرابط",editEmbed:"تحرير الرابط وإدراجه",create:"إنشاء رابط",createEmbed:"إنشاء رابط و إدراجه",label:"رابط",labelEmbed:"رابط و إدراج",empty:"لم يتم تعيين رابط"},lineEditor:{edit:"تحرير السطر",exit:"الخروج من المُحرر"},elementLock:{lock:"قفل",unlock:"فتح",lockAll:"قفل الكل",unlockAll:"فتح الكل"},statusPublished:"نُشر",sidebarLock:"إبقاء الشريط الجانبي مفتوح",selectAllElementsInFrame:"تحديد جميع العناصر في الإطار",removeAllElementsFromFrame:"إزالة جميع العناصر من الإطار",eyeDropper:"اختيار اللون من القماش",textToDiagram:"",prompt:""},hDe={noItems:"لا توجد عناصر أضيفت بعد...",hint_emptyLibrary:"حدد عنصر على القماش لإضافته هنا، أو تثبيت مكتبة من المستودع العام أدناه.",hint_emptyPrivateLibrary:"حدد عنصر على القماش لإضافته هنا."},QDe={clearReset:"إعادة تعيين اللوحة",exportJSON:"صدر الملف",exportImage:"تصدير الصورة...",export:"حفظ إلى...",copyToClipboard:"نسخ إلى الحافظة",save:"احفظ للملف الحالي",saveAs:"حفظ كـ",load:"فتح",getShareableLink:"احصل على رابط المشاركة",close:"غلق",selectLanguage:"اختر اللغة",scrollBackToContent:"الرجوع إلى المحتوى",zoomIn:"تكبير",zoomOut:"تصغير",resetZoom:"إعادة تعيين الشاشة",menu:"القائمة",done:"تم",edit:"تعديل",undo:"تراجع",redo:"إعادة تنفيذ",resetLibrary:"إعادة ضبط المكتبة",createNewRoom:"إنشاء غرفة جديدة",fullScreen:"شاشة كاملة",darkMode:"الوضع المظلم",lightMode:"الوضع المضيء",zenMode:"وضع التأمل",objectsSnapMode:"التقط إلى العناصر",exitZenMode:"إلغاء الوضع الليلى",cancel:"إلغاء",clear:"مسح",remove:"إزالة",embed:"تبديل الإدراج",publishLibrary:"انشر",submit:"أرسل",confirm:"تأكيد",embeddableInteractionButton:"اضغط للتفاعل"},pDe={clearReset:"هذا سيُزيل كامل اللوحة. هل أنت متأكد؟",couldNotCreateShareableLink:"تعذر إنشاء رابطة المشاركة.",couldNotCreateShareableLinkTooBig:"تعذر إنشاء رابط قابل للمشاركة: المشهد كبير جدًا",couldNotLoadInvalidFile:"تعذر التحميل، الملف غير صالح",importBackendFailed:"فشل الاستيراد من الخادوم.",cannotExportEmptyCanvas:"لا يمكن تصدير لوحة فارغة.",couldNotCopyToClipboard:"تعذر النسخ إلى الحافظة.",decryptFailed:"تعذر فك تشفير البيانات.",uploadedSecurly:"تم تأمين التحميل بتشفير النهاية إلى النهاية، مما يعني أن خادوم Excalidraw والأطراف الثالثة لا يمكنها قراءة المحتوى.",loadSceneOverridePrompt:"تحميل الرسم الخارجي سيحل محل المحتوى الموجود لديك. هل ترغب في المتابعة؟",collabStopOverridePrompt:`إيقاف الجلسة سيؤدي إلى الكتابة فوق رسومك السابقة المخزنة داخليا. هل أنت متأكد؟
(إذا كنت ترغب في الاحتفاظ برسمك المخزن داخليا، ببساطة أغلق علامة تبويب المتصفح بدلاً من ذلك.)`,errorAddingToLibrary:"تعذر إضافة العنصر للمكتبة",errorRemovingFromLibrary:"تعذر إزالة العنصر من المكتبة",confirmAddLibrary:"هذا سيضيف {{numShapes}} شكل إلى مكتبتك. هل أنت متأكد؟",imageDoesNotContainScene:"يبدو أن هذه الصورة لا تحتوي على أي بيانات مشهد. هل قمت بتمكين تضمين المشهد أثناء التصدير؟",cannotRestoreFromImage:"تعذر استعادة المشهد من ملف الصورة",invalidSceneUrl:"تعذر استيراد المشهد من عنوان URL المتوفر. إما أنها مشوهة، أو لا تحتوي على بيانات Excalidraw JSON صالحة.",resetLibrary:"هذا سوف يمسح مكتبتك. هل أنت متأكد؟",removeItemsFromsLibrary:"حذف {{count}} عنصر (عناصر) من المكتبة؟",invalidEncryptionKey:"مفتاح التشفير يجب أن يكون من 22 حرفاً. التعاون المباشر معطل.",collabOfflineWarning:`لا يوجد اتصال بالانترنت.
لن يتم حفظ التغييرات التي قمت بها!`},fDe={unsupportedFileType:"نوع الملف غير مدعوم.",imageInsertError:"تعذر إدراج الصورة. حاول مرة أخرى لاحقاً...",fileTooBig:"الملف كبير جداً. الحد الأقصى المسموح به للحجم هو {{maxSize}}.",svgImageInsertError:"تعذر إدراج صورة SVG. يبدو أن ترميز SVG غير صحيح.",failedToFetchImage:"",invalidSVGString:"SVG غير صالح.",cannotResolveCollabServer:"تعذر الاتصال بخادم التعاون. الرجاء إعادة تحميل الصفحة والمحاولة مرة أخرى.",importLibraryError:"تعذر تحميل المكتبة",collabSaveFailed:"تعذر الحفظ في قاعدة البيانات. إذا استمرت المشاكل، يفضل أن تحفظ ملفك محليا كي لا تفقد عملك.",collabSaveFailed_sizeExceeded:"تعذر الحفظ في قاعدة البيانات، يبدو أن القماش كبير للغاية، يفضّل حفظ الملف محليا كي لا تفقد عملك.",imageToolNotSupported:"",brave_measure_text_error:{line1:"يبدو أنك تستخدم متصفح Brave مع إعداد <bold>حظر صارم لتتبع البصمة</bold>.",line2:"قد يؤدي هذا إلى كسر <bold>عناصر النص</bold> في الرسومات الخاصة بك.",line3:"من المستحسن إلغاء تفعيل هذا الإعداد. يمكنك اتباع <link>هذه الخطوات</link> لفعل ذلك.",line4:"إذا لم يصلح تعطيل هذا الإعداد طريقة عرض النصوص، الرجاء كتابة <issueLink>بلاغ</issueLink> على حسابنا في GitHub، أو راسلنا على <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"لا يمكن إضافة العناصر القابلة للتضمين في المكتبة.",iframe:"",image:"سوف يتم دعم إضافة صور إلى المكتبة قريباً!"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},mDe={selection:"تحديد",image:"إدراج صورة",rectangle:"مستطيل",diamond:"مضلع",ellipse:"دائرة",arrow:"سهم",line:"خط",freedraw:"رسم",text:"نص",library:"مكتبة",lock:"الحفاظ على أداة التحديد نشطة بعد الرسم",penMode:"وضع القلم - امنع اللمس",link:"إضافة/تحديث الرابط للشكل المحدد",eraser:"ممحاة",frame:"أداة الإطار",magicframe:"",embeddable:"تضمين ويب",laser:"مؤشر ليزر",hand:"يد (أداة الإزاحة)",extraTools:"المزيد من أﻷدوات",mermaidToExcalidraw:"",magicSettings:""},DDe={canvasActions:"إجراءات اللوحة",selectedShapeActions:"إجراءات الشكل المحدد",shapes:"الأشكال"},yDe={canvasPanning:"لتحريك القماش، اضغط على عجلة الفأرة أو مفتاح المسافة أثناء السحب، أو استخدم أداة اليد",linearElement:"انقر لبدء نقاط متعددة، اسحب لخط واحد",freeDraw:"انقر واسحب، افرج عند الانتهاء",text:"نصيحة: يمكنك أيضًا إضافة نص بالنقر المزدوج في أي مكان بأداة الاختيار",embeddable:"اضغط مع السحب لإنشاء موقع ويب مضمّن",text_selected:"انقر نقراً مزدوجاً أو اضغط ادخال لتعديل النص",text_editing:"اضغط على Esc أو (Ctrl أو Cmd) + Enter لإنهاء التعديل",linearElementMulti:"انقر فوق النقطة الأخيرة أو اضغط على Esc أو Enter للإنهاء",lockAngle:"يمكنك تقييد الزاوية بالضغط على SHIFT",resize:`يمكنك تقييد النسب بالضغط على SHIFT أثناء تغيير الحجم،
اضغط على ALT لتغيير الحجم من المركز`,resizeImage:`يمكنك تغيير الحجم بحرية بالضغط بأستمرار على SHIFT،
اضغط بأستمرار على ALT أيضا لتغيير الحجم من المركز`,rotate:"يمكنك تقييد الزوايا من خلال الضغط على SHIFT أثناء الدوران",lineEditor_info:"اضغط على مفتاح (Ctrl أو Cmd) و انقر بشكل مزدوج، أو اضغط على مفتاحي (Ctrl أو Cmd) و (Enter) لتعديل النقاط",lineEditor_pointSelected:"اضغط على حذف لإزالة النقطة (النِّقَاط)، Ctrl/Cmd+D للتكرار، أو اسحب للانتقال",lineEditor_nothingSelected:`اختر نقطة لتعديلها (اضغط على SHIFT لتحديد عدة نِقَاط),
أو اضغط على ALT و انقر بالفأرة لإضافة نِقَاط جديدة`,placeImage:"انقر لوضع الصورة، أو انقر واسحب لتعيين حجمها يدوياً",publishLibrary:"نشر مكتبتك",bindTextToElement:"اضغط على إدخال لإضافة نص",deepBoxSelect:"اضغط على Ctrl\\Cmd للاختيار العميق، ولمنع السحب",eraserRevert:"اضغط على Alt لاستعادة العناصر المعلَّمة للحذف",firefox_clipboard_write:'يمكن على الأرجح تمكين هذه الميزة عن طريق تعيين علم "dom.events.asyncClipboard.clipboardItem" إلى "true". لتغيير أعلام المتصفح في Firefox، قم بزيارة صفحة "about:config".',disableSnapping:"اضغط على Ctrl أو Cmd لتعطيل الالتقاط"},wDe={cannotShowPreview:"تعذر عرض المعاينة",canvasTooBig:"قد تكون اللوحة كبيرة جداً.",canvasTooBigTip:"نصيحة: حاول تحريك العناصر البعيدة بشكل أقرب قليلاً."},bDe={headingMain:"حدث خطأ. حاول <button>تحديث الصفحة</button>.",clearCanvasMessage:"إذا لم تعمل إعادة التحميل، حاول مرة أخرى ",clearCanvasCaveat:" هذا سيؤدي إلى فقدان العمل ",trackedToSentry:"تم تتبع الخطأ في المعرف {{eventId}} على نظامنا.",openIssueMessage:"حرصنا على عدم إضافة معلومات المشهد في بلاغ الخطأ. في حال كون مشهدك لا يحمل أي معلومات خاصة نرجو المتابعة على <button>نظام تتبع الأخطاء</button>. نرجو إضافة المعلومات أدناه بنسخها ولصقها في محتوى البلاغ على GitHub.",sceneContent:"محتوى المشهد:"},vDe={desc_intro:"يمكنك دعوة الآخرين لمشاركتك نفس الجلسة التي تعمل عليها.",desc_privacy:"لا تقلق، الجلسة تستخدم التشفير من النهاية إلى النهاية، لذلك فإن أي شيء ترسمه سيبقى خاصاً. لن يتمكن حتى الخادوم الخاص بنا من رؤية ما توصلت إليه.",button_startSession:"بدء الجلسة",button_stopSession:"إيقاف الجلسة",desc_inProgressIntro:"تجري الآن المشاركة الحية.",desc_shareLink:"شارك هذا الرابط مع أي شخص تريده أن يشاركك الجلسة:",desc_exitSession:"إيقاف الجلسة سيؤدي إلى قطع الاتصال الخاص بك من الغرفة، ولكن ستتمكن من مواصلة العمل مع المشهد، محليا. لاحظ أن هذا لن يؤثر على الأشخاص الآخرين، و سيظلون قادرين على التعاون في إصدارهم.",shareTitle:"الانضمام إلى جلسة تعاون حية على Excalidraw"},kDe={title:"خطأ"},FDe={disk_title:"حفظ الملف للجهاز",disk_details:"تصدير بيانات المشهد إلى ملف يمكنك الاستيراد منه لاحقاً.",disk_button:"إحفظ لملف",link_title:"رابط قابل للمشاركة",link_details:"صدر الملف للمشاهدة فقط.",link_button:"التصدير كرابط",excalidrawplus_description:"حفظ المشهد إلى مساحة العمل +Excalidraw الخاصة بك.",excalidrawplus_button:"تصدير",excalidrawplus_exportError:"تعذر التصدير إلى +Excalidraw في الوقت الحالي..."},xDe={blog:"اقرأ مدونتنا",click:"انقر",deepSelect:"تحديد عميق",deepBoxSelect:"تحديد عميق داخل المربع، ومنع السحب",curvedArrow:"سهم مائل",curvedLine:"خط مائل",documentation:"دليل الاستخدام",doubleClick:"انقر مرتين",drag:"اسحب",editor:"المحرر",editLineArrowPoints:"تحرير سطر/نقاط سهم",editText:"تعديل النص / إضافة تسمية",github:"عثرت على مشكلة؟ إرسال",howto:"اتبع التعليمات",or:"أو",preventBinding:"منع ارتبط السهم",tools:"الأدوات",shortcuts:"اختصارات لوحة المفاتيح",textFinish:"إنهاء التعديل (محرر النص)",textNewLine:"أضف سطر جديد (محرر نص)",title:"المساعدة",view:"عرض",zoomToFit:"تكبير للملائمة",zoomToSelection:"تكبير للعنصر المحدد",toggleElementLock:"إغلاق/فتح المحدد",movePageUpDown:"نقل الصفحة أعلى/أسفل",movePageLeftRight:"نقل الصفحة يسار/يمين"},SDe={title:"مسح اللوحة"},LDe={title:"نشر المكتبة",itemName:"إسم العنصر",authorName:"إسم المؤلف",githubUsername:"اسم المستخدم في جيت هب",twitterUsername:"اسم المستخدم في تويتر",libraryName:"اسم المكتبة",libraryDesc:"وصف المكتبة",website:"الموقع",placeholder:{authorName:"اسمك أو اسم المستخدم",libraryName:"اسم مكتبتك",libraryDesc:"وصف مكتبتك لمساعدة الناس على فهم استخدامها",githubHandle:"معالج GitHub (اختياري)، حتى تتمكن من تحرير المكتبة عند إرسالها للمراجعة",twitterHandle:"اسم مستخدم تويتر (اختياري)، حتى نعرف من الذي سيتم الإشارة إليه عند الترويج عبر تويتر",website:"رابط إلى موقعك الشخصي أو في مكان آخر (اختياري)"},errors:{required:"مطلوب",website:"أدخل عنوان URL صالح"},noteDescription:"تقديم مكتبتك لتضمينها في مستودع المكتبة العامة <link></link> لأشخاص آخرين لاستخدامها في رسومهم.",noteGuidelines:"تحتاج المكتبة إلى الموافقة أولا. يرجى قراءة <link>المعايير</link> قبل تقديمها. سوف تحتاج إلى حساب GitHub للتواصل وإجراء التغييرات عند الطلب، ولكن ليس مطلوبا بشكل صارم.",noteLicense:"تقديمك يعني موافقتك على نشر المكتبة المقدمة تحت <link>MIT ترخيص</link>، ما يعني أن لأي أحد الحق في استخدامها دون قيود.",noteItems:"يجب أن يكون لكل عنصر مكتبة اسمه الخاص حتى يكون قابلاً للتصفية. سيتم تضمين عناصر المكتبة التالية:",atleastOneLibItem:"يرجى تحديد عنصر مكتبة واحد على الأقل للبدء",republishWarning:"ملاحظة: بعض العناصر المحددة معينة على أنه نشرها أو تقديمها من قبل. يجب عليك فقط إعادة إرسال العناصر عند تحديث مكتبة موجودة أو إرسالها."},RDe={title:"تم إرسال المكتبة",content:"شكرا لك {{authorName}}. لقد تم إرسال مكتبتك للمراجعة. يمكنك تتبع الحالة"},NDe={resetLibrary:"إعادة ضبط المكتبة",removeItemsFromLib:"إزالة العناصر المحددة من المكتبة"},GDe={header:"تصدير الصورة",label:{withBackground:"الخلفية",onlySelected:"المحدد فقط",darkMode:"الوضع الداكن",embedScene:"تضمين المشهد",scale:"الحجم",padding:"الهوامش"},tooltip:{embedScene:`سيتم حفظ بيانات المشهد في ملف PNG/SVG المصدّر بحيث يمكن استعادة المشهد منه.
سيزيد حجم الملف المصدر.`},title:{exportToPng:"تصدير بصيغة PNG",exportToSvg:"تصدير بصيغة SVG",copyPngToClipboard:"نسخ الـ PNG إلى الحافظة"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"نسخ إلى الحافظة"}},UDe={tooltip:"رسوماتك مشفرة من النهاية إلى النهاية حتى أن خوادم Excalidraw لن تراها أبدا.",link:"مشاركة المدونة في التشفير من النهاية إلى النهاية في Excalidraw"},MDe={angle:"الزاوية",element:"عنصر",elements:"العناصر",height:"الارتفاع",scene:"المشهد",selected:"المحدد",storage:"التخزين",title:"إحصائيات للمهووسين",total:"المجموع",version:"الإصدار",versionCopy:"انقر للنسخ",versionNotAvailable:"الإصدار غير متوفر",width:"العرض"},TDe={addedToLibrary:"تمت الاضافة الى المكتبة!",copyStyles:"نسخت الانماط.",copyToClipboard:"نسخ إلى الحافظة.",copyToClipboardAsPng:`تم نسخ {{exportSelection}} إلى الحافظة بصيغة PNG
({{exportColorScheme}})`,fileSaved:"تم حفظ الملف.",fileSavedToFilename:"حفظ باسم {filename}",canvas:"لوحة الرسم",selection:"العنصر المحدد",pasteAsSingleElement:`استخدم {{shortcut}} للصق كعنصر واحد،
أو لصق في محرر نص موجود`,unableToEmbed:"تضمين هذا الرابط غير مسموح حاليًا. افتح بلاغاً على GitHub لطلب عنوان Url القائمة البيضاء",unrecognizedLinkFormat:"الرابط الذي ضمنته لا يتطابق مع التنسيق المتوقع. الرجاء محاولة لصق النص 'المضمن' المُزوَد من موقع المصدر"},YDe={transparent:"شفاف",black:"أسود",white:"أبيض",red:"أحمر",pink:"وردي",grape:"عنبي",violet:"بنفسجي",gray:"رمادي",blue:"أزرق",cyan:"سماوي",teal:"أزرق مخضر",green:"أخضر",yellow:"أصفر",orange:"برتقالي",bronze:"برونزي"},HDe={app:{center_heading:"جميع بياناتك محفوظة محليا في المتصفح الخاص بك.",center_heading_plus:"هل تريد الذهاب إلى Excalidraw+ بدلاً من ذلك؟",menuHint:"التصدير والتفضيلات واللغات ..."},defaults:{menuHint:"التصدير والتفضيلات وغيرها...",center_heading:"الرسم البياني التصويري. بشكل مبسط.",toolbarHint:"اختر أداة و ابدأ الرسم!",helpHint:"الاختصارات و المساعدة"}},KDe={mostUsedCustomColors:"الألوان المخصصة الأكثر استخداما",colors:"الألوان",shades:"الدرجات",hexCode:"رمز Hex",noShades:"لا تتوفر درجات لهذا اللون"},JDe={action:{exportToImage:{title:"تصدير كصورة",button:"تصدير كصورة",description:"تصدير بيانات المشهد إلى ملف يمكنك الاستيراد منه لاحقاً."},saveToDisk:{title:"حفظ الملف للجهاز",button:"حفظ الملف للجهاز",description:"تصدير بيانات المشهد إلى ملف يمكنك الاستيراد منه لاحقاً."},excalidrawPlus:{title:"Excalidraw+",button:"تصدير إلى Excalidraw+",description:"حفظ المشهد إلى مساحة العمل +Excalidraw الخاصة بك."}},modal:{loadFromFile:{title:"تحميل من ملف",button:"تحميل من ملف",description:"سيتم التحميل من الملف <bold>استبدال المحتوى الموجود</bold>.<br></br>يمكنك النسخ الاحتياطي لرسمك أولاً باستخدام أحد الخيارات أدناه."},shareableLink:{title:"تحميل من رابط",button:"استبدال محتواي",description:"سيتسبب تحميل رسمة خارجية <bold>باستبدال محتواك الموجود حالياً</bold>.<br></br>بإمكانك إجراء النسخ الاحتياطي لرسمتك الحالية باستخدام أحد الخيارات أدناه."}}},ODe={title:"",button:"",description:"",syntax:"",preview:""},hcr={labels:IDe,library:hDe,buttons:QDe,alerts:pDe,errors:fDe,toolBar:mDe,headings:DDe,hints:yDe,canvasError:wDe,errorSplash:bDe,roomDialog:vDe,errorDialog:kDe,exportDialog:FDe,helpDialog:xDe,clearCanvasDialog:SDe,publishDialog:LDe,publishSuccessDialog:RDe,confirmDialog:NDe,imageExportDialog:GDe,encrypted:UDe,stats:MDe,toast:TDe,colors:YDe,welcomeScreen:HDe,colorPicker:KDe,overwriteConfirm:JDe,mermaid:ODe}});var Qye={};Dt(Qye,{alerts:()=>ZDe,buttons:()=>zDe,canvasError:()=>Aye,clearCanvasDialog:()=>aye,colorPicker:()=>dye,colors:()=>Bye,confirmDialog:()=>sye,default:()=>Qcr,encrypted:()=>gye,errorDialog:()=>rye,errorSplash:()=>eye,errors:()=>VDe,exportDialog:()=>iye,headings:()=>XDe,helpDialog:()=>uye,hints:()=>$De,imageExportDialog:()=>lye,labels:()=>WDe,library:()=>qDe,mermaid:()=>hye,overwriteConfirm:()=>Iye,publishDialog:()=>nye,publishSuccessDialog:()=>oye,roomDialog:()=>tye,stats:()=>cye,toast:()=>Cye,toolBar:()=>jDe,welcomeScreen:()=>Eye});var WDe,qDe,zDe,ZDe,VDe,jDe,XDe,$De,Aye,eye,tye,rye,iye,uye,aye,nye,oye,sye,lye,gye,cye,Cye,Bye,Eye,dye,Iye,hye,Qcr;var pye=_(()=>{zt();WDe={paste:"Yapışdır",pasteAsPlaintext:"Düz mətn kimi yapışdırın",pasteCharts:"Diaqramları yapışdırın",selectAll:"Hamısını seç",multiSelect:"Seçimə element əlavə edin",moveCanvas:"Kanvası köçürün",cut:"Kəs",copy:"Kopyala",copyAsPng:"PNG olaraq panoya kopyala",copyAsSvg:"SVG olaraq panoya kopyala",copyText:"Mətn olaraq panoya kopyala",copySource:"",convertToCode:"",bringForward:"Önə daşı",sendToBack:"Geriyə göndərin",bringToFront:"Önə gətirin",sendBackward:"Geriyə göndərin",delete:"Sil",copyStyles:"Stilləri kopyalayın",pasteStyles:"Stilləri yapışdırın",stroke:"Strok rəngi",background:"Arxa fon",fill:"Doldur",strokeWidth:"Strok eni",strokeStyle:"Strok stili",strokeStyle_solid:"Solid",strokeStyle_dashed:"Kəsik",strokeStyle_dotted:"Nöqtəli",sloppiness:"Səliqəsizlik",opacity:"Şəffaflıq",textAlign:"Mətni uyğunlaşdır",edges:"Kənarlar",sharp:"Kəskin",round:"Dəyirmi",arrowheads:"Ox ucları",arrowhead_none:"Heç biri",arrowhead_arrow:"Ox",arrowhead_bar:"Çubuq",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Üçbucaq",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Şrift ölçüsü",fontFamily:"Şrift qrupu",addWatermark:'"Made with Excalidraw" əlavə et',handDrawn:"Əllə çəkilmiş",normal:"Normal",code:"Kod",small:"Kiçik",medium:"Orta",large:"Böyük",veryLarge:"Çox böyük",solid:"Solid",hachure:"Ştrix",zigzag:"Ziqzaq",crossHatch:"Çarpaz dəlik",thin:"İncə",bold:"Qalın",left:"Sol",center:"Mərkəz",right:"Sağ",extraBold:"Ekstra qalın",architect:"Memar",artist:"Rəssam",cartoonist:"Karikaturaçı",fileTitle:"Fayl adı",colorPicker:"Rəng seçən",canvasColors:"Kanvas üzərində istifadə olunur",canvasBackground:"Kanvas arxa fonu",drawingCanvas:"Kanvas çəkmək",layers:"Qatlar",actions:"Hərəkətlər",language:"Dil",liveCollaboration:"Canlı əməkdaşlıq...",duplicateSelection:"Dublikat",untitled:"Başlıqsız",name:"Ad",yourName:"Adınız",madeWithExcalidraw:"Excalidraw ilə hazırlanmışdır",group:"Qrup şəklində seçim",ungroup:"Qrupsuz seçim",collaborators:"",showGrid:"",addToLibrary:"",removeFromLibrary:"",libraryLoadingMessage:"",libraries:"",loadingScene:"",align:"",alignTop:"",alignBottom:"",alignLeft:"",alignRight:"",centerVertically:"",centerHorizontally:"",distributeHorizontally:"",distributeVertically:"",flipHorizontal:"",flipVertical:"",viewMode:"",share:"",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},qDe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},zDe={clearReset:"",exportJSON:"",exportImage:"",export:"",copyToClipboard:"",save:"",saveAs:"",load:"",getShareableLink:"",close:"",selectLanguage:"",scrollBackToContent:"",zoomIn:"",zoomOut:"",resetZoom:"",menu:"",done:"",edit:"",undo:"",redo:"",resetLibrary:"",createNewRoom:"",fullScreen:"",darkMode:"",lightMode:"",zenMode:"",objectsSnapMode:"",exitZenMode:"",cancel:"",clear:"",remove:"",embed:"",publishLibrary:"",submit:"",confirm:"",embeddableInteractionButton:""},ZDe={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},VDe={unsupportedFileType:"",imageInsertError:"",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},jDe={selection:"",image:"",rectangle:"",diamond:"",ellipse:"",arrow:"",line:"",freedraw:"",text:"",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},XDe={canvasActions:"",selectedShapeActions:"",shapes:""},$De={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},Aye={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},eye={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},tye={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},rye={title:""},iye={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},uye={blog:"",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},aye={title:""},nye={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},oye={title:"",content:""},sye={resetLibrary:"",removeItemsFromLib:""},lye={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},gye={tooltip:"",link:""},cye={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},Cye={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},Bye={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},Eye={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},dye={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},Iye={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},hye={title:"",button:"",description:"",syntax:"",preview:""},Qcr={labels:WDe,library:qDe,buttons:zDe,alerts:ZDe,errors:VDe,toolBar:jDe,headings:XDe,hints:$De,canvasError:Aye,errorSplash:eye,roomDialog:tye,errorDialog:rye,exportDialog:iye,helpDialog:uye,clearCanvasDialog:aye,publishDialog:nye,publishSuccessDialog:oye,confirmDialog:sye,imageExportDialog:lye,encrypted:gye,stats:cye,toast:Cye,colors:Bye,welcomeScreen:Eye,colorPicker:dye,overwriteConfirm:Iye,mermaid:hye}});var zye={};Dt(zye,{alerts:()=>yye,buttons:()=>Dye,canvasError:()=>Fye,clearCanvasDialog:()=>Gye,colorPicker:()=>_ye,colors:()=>Oye,confirmDialog:()=>Tye,default:()=>pcr,encrypted:()=>Hye,errorDialog:()=>Lye,errorSplash:()=>xye,errors:()=>wye,exportDialog:()=>Rye,headings:()=>vye,helpDialog:()=>Nye,hints:()=>kye,imageExportDialog:()=>Yye,labels:()=>fye,library:()=>mye,mermaid:()=>qye,overwriteConfirm:()=>Wye,publishDialog:()=>Uye,publishSuccessDialog:()=>Mye,roomDialog:()=>Sye,stats:()=>Kye,toast:()=>Jye,toolBar:()=>bye,welcomeScreen:()=>Pye});var fye,mye,Dye,yye,wye,bye,vye,kye,Fye,xye,Sye,Lye,Rye,Nye,Gye,Uye,Mye,Tye,Yye,Hye,Kye,Jye,Oye,Pye,_ye,Wye,qye,pcr;var Zye=_(()=>{zt();fye={paste:"Постави",pasteAsPlaintext:"Постави като обикновен текст",pasteCharts:"Постави графики",selectAll:"Маркирай всичко",multiSelect:"Добави елемент към селекция",moveCanvas:"Премести платно",cut:"Изрежи",copy:"Копирай",copyAsPng:"Копиране в клипборда",copyAsSvg:"Копирано в клипборда като SVG",copyText:"",copySource:"",convertToCode:"",bringForward:"Преместване напред",sendToBack:"Изнасяне назад",bringToFront:"Изнасяне отпред",sendBackward:"Изпрати отзад",delete:"Изтрий",copyStyles:"Копирайте стилове",pasteStyles:"Постави стилове",stroke:"Щрих",background:"Фон",fill:"Наситеност",strokeWidth:"Ширина на щриха",strokeStyle:"Стил на линия",strokeStyle_solid:"Плътен",strokeStyle_dashed:"Пунктир",strokeStyle_dotted:"Пунктирано",sloppiness:"Небрежност",opacity:"Прозрачност",textAlign:"Подравняване на текста",edges:"Крайща",sharp:"Остър",round:"Закръглено",arrowheads:"Стрелки",arrowhead_none:"Без",arrowhead_arrow:"Стрелка",arrowhead_bar:"Връх на стрелката",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Триъгълник",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Размер на шрифта",fontFamily:"Семейство шрифтове",addWatermark:'Добави "Направено с Excalidraw"',handDrawn:"Нарисувано на ръка",normal:"Нормален",code:"Код",small:"Малък",medium:"Среден",large:"Голям",veryLarge:"Много голям",solid:"Солиден",hachure:"Хералдика",zigzag:"Зигзаг",crossHatch:"Двойно-пресечено",thin:"Тънък",bold:"Ясно очертан",left:"Ляво",center:"Център",right:"Дясно",extraBold:"Много ясно очертан",architect:"Архитект",artist:"Художник",cartoonist:"Карикатурист",fileTitle:"Име на файл",colorPicker:"Избор на цвят",canvasColors:"Използван на платно",canvasBackground:"Фон на платно",drawingCanvas:"Платно за рисуване",layers:"Слоеве",actions:"Действия",language:"Език",liveCollaboration:"",duplicateSelection:"Дублирай",untitled:"Неозаглавено",name:"Име",yourName:"Вашето име",madeWithExcalidraw:"Направено с Excalidraw",group:"Групирай селекцията",ungroup:"Спри групирането на селекцията",collaborators:"Сътрудници",showGrid:"Показване на мрежа",addToLibrary:"Добавяне към библиотеката",removeFromLibrary:"Премахване от библиотеката",libraryLoadingMessage:"Зареждане на библиотеката…",libraries:"Разглеждане на библиотеките",loadingScene:"Зареждане на сцена…",align:"Подравняване",alignTop:"Подравняване отгоре",alignBottom:"Подравняване отдолу",alignLeft:"Подравняване отляво",alignRight:"Подравняване отдясно",centerVertically:"Центрирай вертикално",centerHorizontally:"Центрирай хоризонтално",distributeHorizontally:"Разпредели хоризонтално",distributeVertically:"Разпредели вертикално",flipHorizontal:"Хоризонтално обръщане",flipVertical:"Вертикално обръщане",viewMode:"Изглед",share:"Сподели",showStroke:"",showBackground:"",toggleTheme:"Включи тема",personalLib:"Лична Библиотека",excalidrawLib:"Excalidraw Библиотека",decreaseFontSize:"Намали размера на шрифта",increaseFontSize:"Увеличи размера на шрифта",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"Редактирай линк",editEmbed:"",create:"",createEmbed:"",label:"Линк",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"Заключи",unlock:"Отключи",lockAll:"Заключи всички",unlockAll:"Отключи всички"},statusPublished:"Публикувани",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"Избери цвят от платното",textToDiagram:"",prompt:""},mye={noItems:"Няма добавени неща все още...",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},Dye={clearReset:"Нулиране на платно",exportJSON:"",exportImage:"",export:"Запази на...",copyToClipboard:"Копиране в клипборда",save:"Запази към текущ файл",saveAs:"Запиши като",load:"Отвори",getShareableLink:"Получаване на връзка за споделяне",close:"Затвори",selectLanguage:"Избор на език",scrollBackToContent:"Превъртете обратно към съдържанието",zoomIn:"Приближаване",zoomOut:"Отдалечаване",resetZoom:"Стандартен мащаб",menu:"Меню",done:"Завършено",edit:"Редактиране",undo:"Отмяна",redo:"Повтори",resetLibrary:"Нулиране на библиотеката",createNewRoom:"Създай нова стая",fullScreen:"На цял екран",darkMode:"Тъмен режим",lightMode:"Светъл режим",zenMode:"Режим Zen",objectsSnapMode:"",exitZenMode:"Спиране на Zen режим",cancel:"Отмени",clear:"Изчисти",remove:"Премахване",embed:"",publishLibrary:"Публикувай",submit:"Изпрати",confirm:"Потвърждаване",embeddableInteractionButton:""},yye={clearReset:"Това ще изчисти цялото платно. Сигурни ли сте?",couldNotCreateShareableLink:"Връзката не може да бъде създадена.",couldNotCreateShareableLinkTooBig:"Не може да се създаде връзка за споделяне: сцената е твърде голяма",couldNotLoadInvalidFile:"Невалиден файл не може да се зареди",importBackendFailed:"Импортирането от бекенд не беше успешно.",cannotExportEmptyCanvas:"Не може да се експортира празно платно.",couldNotCopyToClipboard:"Не можем да копираме в клипбоарда.",decryptFailed:"Данните не можаха да се дешифрират.",uploadedSecurly:"Качването е защитено с криптиране от край до край, което означава, че сървърът Excalidraw и трети страни не могат да четат съдържанието.",loadSceneOverridePrompt:"Зареждането на външна рисунка ще презапише настоящото ви съдържание. Желаете ли да продължите?",collabStopOverridePrompt:`Прекратяването на сесията ще презапише предишната, локално запазена, рисунка. Сигурни ли сте?
(Ако искате да продължите с локалната рисунка, просто затворете таба на браузъра.)`,errorAddingToLibrary:"Не можем да заредим от библиотеката",errorRemovingFromLibrary:"Не можем да премахнем елемент от библиотеката",confirmAddLibrary:"Ще се добавят {{numShapes}} фигура(и) във вашата библиотека. Сигурни ли сте?",imageDoesNotContainScene:"",cannotRestoreFromImage:"Не може да бъде възстановена сцена от този файл",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"Изтрий {{count}} елемент(а) от библиотеката?",invalidEncryptionKey:"",collabOfflineWarning:""},wye={unsupportedFileType:"Този файлов формат не се поддържа.",imageInsertError:"",fileTooBig:"Файлът е твърде голям. Максималния допустим размер е {{maxSize}}.",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"Невалиден SVG.",cannotResolveCollabServer:"",importLibraryError:"Не можем да заредим библиотеката",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"Силно препоръчваме да изключите тази настройка. Можете да следвате <link>тези стъпки</link> за това как да го направите.",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},bye={selection:"Селекция",image:"Вмъкване на изображение",rectangle:"Правоъгълник",diamond:"Диамант",ellipse:"Елипс",arrow:"Стрелка",line:"Линия",freedraw:"Рисуване",text:"Текст",library:"Библиотека",lock:"Поддържайте избрания инструмент активен след рисуване",penMode:"",link:"",eraser:"Гума",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"Още инструменти",mermaidToExcalidraw:"",magicSettings:""},vye={canvasActions:"Действия по платното",selectedShapeActions:"Избрани действия",shapes:"Фигури"},kye={canvasPanning:"",linearElement:"Кликнете, за да стартирате няколко точки, плъзнете за една линия",freeDraw:"Натиснете и влачете, пуснете като сте готови",text:"Подсказка: Можете също да добавите текст като натиснете някъде два път с инструмента за селекция",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"Кликнете върху последната точка или натиснете Escape или Enter, за да завършите",lockAngle:"Можете да ограничите ъгъла, като задържите SHIFT",resize:`Може да ограничите при преоразмеряване като задържите SHIFT,
задръжте ALT за преоразмерите през центъра`,resizeImage:"",rotate:"Можете да ограничите ъглите, като държите SHIFT, докато се въртите",lineEditor_info:"",lineEditor_pointSelected:"Натиснете Delete за да изтриете точка(и), CtrlOrCmd+D за дуплициране, или извлачете за да преместите",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"Натиснете Enter, за да добавите",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},Fye={cannotShowPreview:"Невъзможност за показване на preview",canvasTooBig:"Платното е твърде голямо.",canvasTooBigTip:"Подсказка: пробвайте да приближите далечните елементи по-близко."},xye={headingMain:"Среща грешка. Опитайте <button>презареждане на страницата.</button>",clearCanvasMessage:"Ако презареждането не работи, опитайте <button>изчистване на платното.</button>",clearCanvasCaveat:" Това ще доведе до загуба на работа ",trackedToSentry:"Грешката с идентификатор {{eventId}} беше проследен в нашата система.",openIssueMessage:"Бяхме много предпазливи да не включите информацията за вашата сцена при грешката. Ако сцената ви не е частна, моля, помислете за последващи действия на нашата <button>тракер за грешки.</button> Моля, включете информация по-долу, като я копирате и добавите в GitHub.",sceneContent:"Съдържание на сцената:"},Sye={desc_intro:"Можете да поканите хора на текущата си сцена да си сътрудничат с вас.",desc_privacy:"Не се притеснявайте, сесията използва криптиране от край до край, така че каквото нарисувате ще остане частно. Дори нашият сървър няма да може да види какво предлагате.",button_startSession:"Стартирайте сесията",button_stopSession:"Стоп на сесията",desc_inProgressIntro:"Сесията за сътрудничество на живо е в ход.",desc_shareLink:"Споделете тази връзка с всеки, с когото искате да си сътрудничите:",desc_exitSession:"Спирането на сесията ще ви изключи от стаята, но ще можете да продължите да работите със сцената, локално. Имайте предвид, че това няма да засегне други хора и те все още ще могат да си сътрудничат с тяхната версия.",shareTitle:""},Lye={title:"Грешка"},Rye={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"Експорт",excalidrawplus_exportError:""},Nye={blog:"Прочетете нашия блог",click:"клик",deepSelect:"",deepBoxSelect:"",curvedArrow:"Извита стрелка",curvedLine:"Извита линия",documentation:"Документация",doubleClick:"двойно-щракване",drag:"плъзнете",editor:"Редактор",editLineArrowPoints:"",editText:"",github:"Намерихте проблем? Изпратете",howto:"Следвайте нашите ръководства",or:"или",preventBinding:"Спри прилепяне на стрелките",tools:"Инструменти",shortcuts:"Клавиши за бърз достъп",textFinish:"Завърши редактиране (текстов редактор)",textNewLine:"Добави нова линия (текстов редактор)",title:"Помощ",view:"Преглед",zoomToFit:"Приближи докато се виждат всички елементи",zoomToSelection:"Приближи селекцията",toggleElementLock:"Заключи/Отключи селекция",movePageUpDown:"Премести страница нагоре/надолу",movePageLeftRight:"Премести страница наляво/надясно"},Gye={title:"Изчисти платното"},Uye={title:"Публикувай библиотека",itemName:"Име",authorName:"Авторско име",githubUsername:"GitHub потребителско име",twitterUsername:"Twitter потребителско име",libraryName:"Име на библиотеката",libraryDesc:"Описание на библиотеката",website:"Уебсайт",placeholder:{authorName:"Името или потребителското Ви име",libraryName:"Име на библиотеката Ви",libraryDesc:"Описание на библиотеката ви, за да помогнете на хората да разберат приложенията ѝ",githubHandle:"",twitterHandle:"",website:""},errors:{required:"Задължително",website:"Въведете валиден URL адрес"},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},Mye={title:"",content:""},Tye={resetLibrary:"Нулирай библиотека",removeItemsFromLib:""},Yye={header:"",label:{withBackground:"Фон",onlySelected:"Само избраното",darkMode:"Тъмен режим",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"Изнасяне в PNG",exportToSvg:"Изнасяне в SVG",copyPngToClipboard:"Копирай PNG в клипборда"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Копиране в клипборда"}},Hye={tooltip:"Вашите рисунки са криптирани от край до край, така че сървърите на Excalidraw няма да могат да ги виждат.",link:""},Kye={angle:"Ъгъл",element:"Елемент",elements:"Елементи",height:"Височина",scene:"Сцена",selected:"Селектирано",storage:"Съхранение на данни",title:"Статистика за хакери",total:"Общо",version:"Версия",versionCopy:"Настисни за да копираш",versionNotAvailable:"Версията не е налична",width:"Широчина"},Jye={addedToLibrary:"Добавена към библиотеката",copyStyles:"Копирани стилове.",copyToClipboard:"Копирано в клипборда.",copyToClipboardAsPng:`Копира {{exportSelection}} в клипборда като PNG
({{exportColorScheme}})`,fileSaved:"Файлът е запазен.",fileSavedToFilename:"Запазен към {filename}",canvas:"платно",selection:"селекция",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},Oye={transparent:"Прозрачен",black:"Черен",white:"Бял",red:"Червен",pink:"Розов",grape:"Грозде",violet:"Виолетово",gray:"Сив",blue:"Син",cyan:"Синьозелено",teal:"Тъмно синьо-зелено",green:"Зелено",yellow:"Жълто",orange:"Оранжево",bronze:"Бронзово"},Pye={app:{center_heading:"Всичките Ви данни са запазени локално в браузъра Ви.",center_heading_plus:"",menuHint:"Експорт, предпочитания, езици, ..."},defaults:{menuHint:"Експорт, предпочитания, и още...",center_heading:"Диаграми. Направени. Просто.",toolbarHint:"Изберете инструмент & Започнете да рисувате!",helpHint:"Преки пътища & помощ"}},_ye={mostUsedCustomColors:"Най-често използвани цветове",colors:"Цветове",shades:"Нюанси",hexCode:"Шестнадесетичен код",noShades:""},Wye={action:{exportToImage:{title:"Изнеси като изображение",button:"Изнеси като изображение",description:""},saveToDisk:{title:"Запази към диск",button:"Запази към диск",description:""},excalidrawPlus:{title:"Excalidraw+",button:"Експортирай към Excalidraw+",description:"Запази сцената към Excalidraw+ работното място."}},modal:{loadFromFile:{title:"Зареди от файл",button:"Зареди от файл",description:""},shareableLink:{title:"Зареди от линк",button:"Замени моето съдържание",description:""}}},qye={title:"",button:"",description:"",syntax:"",preview:""},pcr={labels:fye,library:mye,buttons:Dye,alerts:yye,errors:wye,toolBar:bye,headings:vye,hints:kye,canvasError:Fye,errorSplash:xye,roomDialog:Sye,errorDialog:Lye,exportDialog:Rye,helpDialog:Nye,clearCanvasDialog:Gye,publishDialog:Uye,publishSuccessDialog:Mye,confirmDialog:Tye,imageExportDialog:Yye,encrypted:Hye,stats:Kye,toast:Jye,colors:Oye,welcomeScreen:Pye,colorPicker:_ye,overwriteConfirm:Wye,mermaid:qye}});var Dwe={};Dt(Dwe,{alerts:()=>$ye,buttons:()=>Xye,canvasError:()=>iwe,clearCanvasDialog:()=>lwe,colorPicker:()=>pwe,colors:()=>hwe,confirmDialog:()=>Cwe,default:()=>fcr,encrypted:()=>Ewe,errorDialog:()=>nwe,errorSplash:()=>uwe,errors:()=>Awe,exportDialog:()=>owe,headings:()=>twe,helpDialog:()=>swe,hints:()=>rwe,imageExportDialog:()=>Bwe,labels:()=>Vye,library:()=>jye,mermaid:()=>mwe,overwriteConfirm:()=>fwe,publishDialog:()=>gwe,publishSuccessDialog:()=>cwe,roomDialog:()=>awe,stats:()=>dwe,toast:()=>Iwe,toolBar:()=>ewe,welcomeScreen:()=>Qwe});var Vye,jye,Xye,$ye,Awe,ewe,twe,rwe,iwe,uwe,awe,nwe,owe,swe,lwe,gwe,cwe,Cwe,Bwe,Ewe,dwe,Iwe,hwe,Qwe,pwe,fwe,mwe,fcr;var ywe=_(()=>{zt();Vye={paste:"পেস্ট করুন",pasteAsPlaintext:"প্লেইনটেক্সট হিসাবে পেস্ট করুন",pasteCharts:"চার্ট পেস্ট করুন",selectAll:"সবটা সিলেক্ট করুন",multiSelect:"একাধিক সিলেক্ট করুন",moveCanvas:"ক্যানভাস সরান",cut:"কাট করুন",copy:"কপি করুন",copyAsPng:"পীএনজী ছবির মতন কপি করুন",copyAsSvg:"এসভীজী ছবির মতন কপি করুন",copyText:"লিখিত তথ্যের মতন কপি করুন",copySource:"",convertToCode:"",bringForward:"অধিকতর সামনে আনুন",sendToBack:"অধিকতর পিছনে নিয়ে যান",bringToFront:"সবার সামনে আনুন",sendBackward:"সবার পিছনে নিয়ে যান",delete:"মুছা",copyStyles:"ডিজাইন কপি করুন",pasteStyles:"ডিজাইন পেস্ট করুন",stroke:"রেখাংশ",background:"পটভূমি",fill:"রং",strokeWidth:"রেখাংশের বেধ",strokeStyle:"রেখাংশের ডিজাইন",strokeStyle_solid:"পুরু",strokeStyle_dashed:"পাতলা",strokeStyle_dotted:"বিন্দুবিন্দু",sloppiness:"ভ্রান্তি",opacity:"দৃশ্যমানতা",textAlign:"লেখ অনুভূমি",edges:"কোণ",sharp:"তীক্ষ্ণ",round:"গোল",arrowheads:"তীরের শীর্ষভাগ",arrowhead_none:"কিছু না",arrowhead_arrow:"তীর",arrowhead_bar:"রেখাংশ",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"ত্রিভূজ",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"লেখনীর মাত্রা",fontFamily:"লেখনীর হরফ",addWatermark:"এক্সক্যালিড্র দ্বারা প্রস্তুত",handDrawn:"হাতে আঁকা",normal:"স্বাভাবিক",code:"কোড",small:"ছোট",medium:"মাঝারি",large:"বড়",veryLarge:"অনেক বড়",solid:"দৃঢ়",hachure:"ভ্রুলেখা",zigzag:"আঁকাবাঁকা",crossHatch:"ক্রস হ্যাচ",thin:"পাতলা",bold:"পুরু",left:"বাম",center:"কেন্দ্র",right:"ডান",extraBold:"অতি পুরু",architect:"স্থপতি",artist:"শিল্পী",cartoonist:"চিত্রকার",fileTitle:"ফাইলের নাম",colorPicker:"রং পছন্দ করুন",canvasColors:"ক্যানভাসের রং",canvasBackground:"ক্যানভাসের পটভূমি",drawingCanvas:"ব্যবহৃত ক্যানভাস",layers:"মাত্রা",actions:"ক্রিয়া",language:"ভাষা",liveCollaboration:"সরাসরি পারস্পরিক সহযোগিতা...",duplicateSelection:"সদৃশ সিলেক্ট",untitled:"অনামী",name:"নাম",yourName:"আপনার নাম",madeWithExcalidraw:"এক্সক্যালিড্র দ্বারা তৈরি",group:"দল গঠন করুন",ungroup:"দল বিভেদ করুন",collaborators:"সহযোগী",showGrid:"গ্রিড দেখান",addToLibrary:"সংগ্রহে যোগ করুন",removeFromLibrary:"সংগ্রহ থেকে বের করুন",libraryLoadingMessage:"সংগ্রহ তৈরি হচ্ছে",libraries:"সংগ্রহ দেখুন",loadingScene:"দৃশ্য তৈরি হচ্ছে",align:"পংক্তিবিন্যাস",alignTop:"উপর পংক্তি",alignBottom:"নিম্ন পংক্তি",alignLeft:"বাম পংক্তি",alignRight:"ডান পংক্তি",centerVertically:"উলম্ব কেন্দ্রিত",centerHorizontally:"অনুভূমিক কেন্দ্রিত",distributeHorizontally:"অনুভূমিকভাবে বিতরণ করুন",distributeVertically:"উল্লম্বভাবে বিতরণ করুন",flipHorizontal:"অনুভূমিক আবর্তন",flipVertical:"উলম্ব আবর্তন",viewMode:"দৃশ্য",share:"ভাগ করুন",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"লেখনীর মাত্রা কমান",increaseFontSize:"লেখনীর মাত্রা বাড়ান",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"লিঙ্ক সংশোধন",editEmbed:"",create:"লিঙ্ক তৈরী",createEmbed:"",label:"লিঙ্ক নামকরণ",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"আবদ্ধ করুন",unlock:"বিচ্ছিন্ন করুন",lockAll:"সব আবদ্ধ করুন",unlockAll:"সব বিচ্ছিন্ন করুন"},statusPublished:"প্রকাশিত",sidebarLock:"লক",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},jye={noItems:"সংগ্রহে কিছু যোগ করা হয়নি",hint_emptyLibrary:"এখানে যোগ করার জন্য ক্যানভাসে একটি বস্তু নির্বাচন করুন, অথবা নীচে, প্রকাশ্য সংগ্রহশালা থেকে একটি সংগ্রহ ইনস্টল করুন৷",hint_emptyPrivateLibrary:"এখানে যোগ করার জন্য ক্যানভাসে একটি বস্তু নির্বাচন করুন"},Xye={clearReset:"ক্যানভাস সাফ করুন",exportJSON:"জেসন নিবদ্ধ করুন",exportImage:"",export:"",copyToClipboard:"ক্লিপবোর্ডে কপি করুন",save:"জমা করুন",saveAs:"অন্যভাবে জমা করুন",load:"",getShareableLink:"ভাগযোগ্য লিঙ্ক পান",close:"বন্ধ করুন",selectLanguage:"ভাষা চিহ্নিত করুন",scrollBackToContent:"বিষয়বস্তুতে ফেরত যান",zoomIn:"বড় করুন",zoomOut:"ছোট করুন",resetZoom:"স্বাভাবিক করুন",menu:"তালিকা",done:"সম্পন্ন",edit:"সংশোধন করুন",undo:"ফেরত যান",redo:"পুনরায় করুন",resetLibrary:"সংগ্রহ সাফ করুন",createNewRoom:"নতুন রুম বানান",fullScreen:"পূর্ণস্ক্রীন",darkMode:"ডার্ক মোড",lightMode:"লাইট মোড",zenMode:"জেন মোড",objectsSnapMode:"",exitZenMode:"জেন মোড বন্ধ করুন",cancel:"বাতিল",clear:"সাফ",remove:"বিয়োগ",embed:"",publishLibrary:"সংগ্রহ প্রকাশ করুন",submit:"জমা করুন",confirm:"নিশ্চিত করুন",embeddableInteractionButton:""},$ye={clearReset:"এটি পুরো ক্যানভাস সাফ করবে। আপনি কি নিশ্চিত?",couldNotCreateShareableLink:"ভাগ করা যায় এমন লিঙ্ক তৈরি করা যায়নি।",couldNotCreateShareableLinkTooBig:"ভাগ করা যায় এমন লিঙ্ক তৈরি করা যায়নি: দৃশ্যটি খুব বড়",couldNotLoadInvalidFile:"অবৈধ ফাইল লোড করা যায়নি",importBackendFailed:"ব্যাকেন্ড থেকে আপলোড ব্যর্থ হয়েছে।",cannotExportEmptyCanvas:"খালি ক্যানভাস নিবদ্ধ করা যাবে না।",couldNotCopyToClipboard:"ক্লিপবোর্ডে কপি করা যায়নি।",decryptFailed:"তথ্য ডিক্রিপ্ট করা যায়নি।",uploadedSecurly:"আপলোডটি এন্ড-টু-এন্ড এনক্রিপশনের মাধ্যমে সুরক্ষিত করা হয়েছে, যার অর্থ হল এক্সক্যালিড্র সার্ভার এবং তৃতীয় পক্ষের দ্বারা পড়তে পারা সম্ভব নয়।",loadSceneOverridePrompt:"বাহ্যিক অঙ্কন লোড করা আপনার বিদ্যমান দৃশ্য প্রতিস্থাপন করবে। আপনি কি অবিরত করতে চান?",collabStopOverridePrompt:`অধিবেশন বন্ধ করা আপনার পূর্ববর্তী, স্থানীয়ভাবে সঞ্চিত অঙ্কন ওভাররাইট করবে। আপনি কি নিশ্চিত?
(যদি আপনি আপনার স্থানীয় অঙ্কন রাখতে চান, তাহলে শুধু ব্রাউজার ট্যাবটি বন্ধ করুন।)`,errorAddingToLibrary:"বস্তুটি সংগ্রহে যোগ করা যায়নি",errorRemovingFromLibrary:"বস্তুটি সংগ্রহ থেকে বিয়োগ করা যায়নি",confirmAddLibrary:"এটি আপনার সংগ্রহে {{numShapes}} আকার(গুলি) যোগ করবে। আপনি কি নিশ্চিত?",imageDoesNotContainScene:"এই ছবিতে কোনো দৃশ্যের তথ্য আছে বলে মনে হয় না৷ আপনি কি নিবদ্ধ করার সময় দৃশ্য এমবেডিং করতে সক্ষম?",cannotRestoreFromImage:"এই ফাইল থেকে দৃশ্য পুনরুদ্ধার করা যায়নি",invalidSceneUrl:"সরবরাহ করা লিঙ্ক থেকে দৃশ্য লোড করা যায়নি৷ এটি হয় বিকৃত, অথবা বৈধ এক্সক্যালিড্র জেসন তথ্য নেই৷",resetLibrary:"এটি আপনার সংগ্রহ পরিষ্কার করবে। আপনি কি নিশ্চিত?",removeItemsFromsLibrary:"সংগ্রহ থেকে {{count}} বস্তু বিয়োগ করা হবে। আপনি কি নিশ্চিত?",invalidEncryptionKey:"অবৈধ এনক্রীপশন কী।",collabOfflineWarning:""},Awe={unsupportedFileType:"অসমর্থিত ফাইল।",imageInsertError:"ছবি সন্নিবেশ করা যায়নি। পরে আবার চেষ্টা করুন...",fileTooBig:"ফাইলটি খুব বড়। সর্বাধিক অনুমোদিত আকার হল {{maxSize}}৷",svgImageInsertError:"এসভীজী ছবি সন্নিবেশ করা যায়নি। এসভীজী মার্কআপটি অবৈধ মনে হচ্ছে৷",failedToFetchImage:"",invalidSVGString:"এসভীজী মার্কআপটি অবৈধ মনে হচ্ছে৷",cannotResolveCollabServer:"কোল্যাব সার্ভারের সাথে সংযোগ করা যায়নি। পৃষ্ঠাটি পুনরায় লোড করে আবার চেষ্টা করুন।",importLibraryError:"সংগ্রহ লোড করা যায়নি",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},ewe={selection:"বাছাই",image:"চিত্র সন্নিবেশ",rectangle:"আয়তক্ষেত্র",diamond:"রুহিতন",ellipse:"উপবৃত্ত",arrow:"তীর",line:"রেখা",freedraw:"কলম",text:"লেখা",library:"সংগ্রহ",lock:"আঁকার পরে নির্বাচিত টুল সক্রিয় রাখুন",penMode:"",link:"একটি নির্বাচিত আকৃতির জন্য লিঙ্ক যোগ বা আপডেট করুন",eraser:"ঝাড়ন",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},twe={canvasActions:"ক্যানভাস কার্যকলাপ",selectedShapeActions:"বাছাই করা আকার(গুলি)র কার্যকলাপ",shapes:"আকার(গুলি)"},rwe={canvasPanning:"",linearElement:"একাধিক বিন্দু শুরু করতে ক্লিক করুন, একক লাইনের জন্য টেনে আনুন",freeDraw:"ক্লিক করুন এবং টেনে আনুন, আপনার কাজ শেষ হলে ছেড়ে দিন",text:"বিশেষ্য: আপনি নির্বাচন টুলের সাথে যে কোনো জায়গায় ডাবল-ক্লিক করে পাঠ্য যোগ করতে পারেন",embeddable:"",text_selected:"লেখা সম্পাদনা করতে ডাবল-ক্লিক করুন বা এন্টার টিপুন",text_editing:"লেখা সম্পাদনা শেষ করতে এসকেপ বা কন্ট্রোল/কম্যান্ড যোগে এন্টার টিপুন",linearElementMulti:"শেষ বিন্দুতে ক্লিক করুন অথবা শেষ করতে এসকেপ বা এন্টার টিপুন",lockAngle:"ঘোরানোর সময় আপনি শিফ্ট ধরে রেখে কোণ সীমাবদ্ধ করতে পারেন",resize:`আপনি আকার পরিবর্তন করার সময় শিফ্ট ধরে রেখে অনুপাতকে সীমাবদ্ধ করতে পারেন,
কেন্দ্র থেকে আকার পরিবর্তন করতে অল্ট ধরে রাখুন`,resizeImage:"আপনি শিফ্ট ধরে রেখে অবাধে আকার পরিবর্তন করতে পারেন, কেন্দ্র থেকে আকার পরিবর্তন করতে অল্ট ধরুন",rotate:"আপনি ঘোরানোর সময় শিফ্ট ধরে রেখে কোণগুলিকে সীমাবদ্ধ করতে পারেন",lineEditor_info:"",lineEditor_pointSelected:"বিন্দু(গুলি) মুছতে ডিলিট টিপুন, কন্ট্রোল/কম্যান্ড যোগে ডি টিপুন নকল করতে অথবা সরানোর জন্য টানুন",lineEditor_nothingSelected:`সম্পাদনা করার জন্য একটি বিন্দু নির্বাচন করুন (একাধিক নির্বাচন করতে শিফ্ট ধরে রাখুন),
অথবা অল্ট ধরে রাখুন এবং নতুন বিন্দু যোগ করতে ক্লিক করুন`,placeImage:"ছবিটি স্থাপন করতে ক্লিক করুন, অথবা নিজে আকার সেট করতে ক্লিক করুন এবং টেনে আনুন",publishLibrary:"আপনার নিজস্ব সংগ্রহ প্রকাশ করুন",bindTextToElement:"লেখা যোগ করতে এন্টার টিপুন",deepBoxSelect:"",eraserRevert:"মুছে ফেলার জন্য চিহ্নিত উপাদানগুলিকে ফিরিয়ে আনতে অল্ট ধরে রাখুন",firefox_clipboard_write:"",disableSnapping:""},iwe={cannotShowPreview:"প্রিভিউ দেখাতে অপারগ",canvasTooBig:"ক্যানভাস অনেক বড়।",canvasTooBigTip:"বিশেষ্য: দূরতম উপাদানগুলোকে একটু কাছাকাছি নিয়ে যাওয়ার চেষ্টা করুন।"},uwe={headingMain:"একটি ত্রুটির সম্মুখীন হয়েছে৷ চেষ্টা করুন <button>পৃষ্ঠাটি পুনরায় লোড করার।</button>",clearCanvasMessage:"যদি পুনরায় লোড করা কাজ না করে, চেষ্টা করুন <button>ক্যানভাস পরিষ্কার করার।</button>",clearCanvasCaveat:" এর ফলে কাজের ক্ষতি হবে ",trackedToSentry:"ত্রুটি {{eventId}} আমাদের সিস্টেমে ট্র্যাক করা হয়েছিল।",openIssueMessage:"আমরা ত্রুটিতে আপনার দৃশ্যের তথ্য অন্তর্ভুক্ত না করার জন্য খুব সতর্ক ছিলাম। আপনার দৃশ্য ব্যক্তিগত না হলে, আমাদের অনুসরণ করার কথা বিবেচনা করুন <button>ত্রুটি ইতিবৃত্ত।</button> অনুগ্রহ করে GitHub ইস্যুতে অনুলিপি এবং পেস্ট করে নীচের তথ্য অন্তর্ভুক্ত করুন।",sceneContent:"দৃশ্য বিষয়বস্তু:"},awe={desc_intro:"আপনি আপনার সাথে সহযোগিতা করার জন্য আপনার বর্তমান দৃশ্যে লোকেদের আমন্ত্রণ জানাতে পারেন৷",desc_privacy:"চিন্তা করবেন না, সেশনটি এন্ড-টু-এন্ড এনক্রিপশন ব্যবহার করে, তাই আপনি যা আঁকবেন তা গোপন থাকবে। এমনকি আমাদের সার্ভার আপনি যা নিয়ে এসেছেন তা দেখতে সক্ষম হবে না।",button_startSession:"সেশন শুরু করুন",button_stopSession:"সেশন বন্ধ করুন",desc_inProgressIntro:"লাইভ-সহযোগীতার সেশন এখন চলছে।",desc_shareLink:"আপনি যার সাথে সহযোগিতা করতে চান তাদের সাথে এই লিঙ্কটি ভাগ করুন: ",desc_exitSession:"অধিবেশন বন্ধ করা আপনাকে রুম থেকে সংযোগ বিচ্ছিন্ন করবে, কিন্তু আপনি স্থানীয়ভাবে দৃশ্যের সাথে কাজ চালিয়ে যেতে সক্ষম হবেন। মনে রাখবেন যে এটি অন্য লোকেদের প্রভাবিত করবে না এবং তারা এখনও তাদের সংস্করণে সহযোগিতা করতে সক্ষম হবে।",shareTitle:"এক্সক্যালিড্র লাইভ সহযোগিতা সেশনে যোগ দিন"},nwe={title:"ত্রুটি"},owe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"নিবদ্ধ",excalidrawplus_exportError:""},swe={blog:"",click:"ক্লিক",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"অথবা",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},lwe={title:""},gwe={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},cwe={title:"",content:""},Cwe={resetLibrary:"",removeItemsFromLib:""},Bwe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},Ewe={tooltip:"",link:""},dwe={angle:"কোণ",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:"প্রস্থ"},Iwe={addedToLibrary:"সংগ্রহশালায় যুক্ত হয়েছে",copyStyles:"",copyToClipboard:"ক্লিপবোর্ডে কপি করা হয়েছে।",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"বাছাই",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},hwe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},Qwe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},pwe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},fwe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},mwe={title:"",button:"",description:"",syntax:"",preview:""},fcr={labels:Vye,library:jye,buttons:Xye,alerts:$ye,errors:Awe,toolBar:ewe,headings:twe,hints:rwe,canvasError:iwe,errorSplash:uwe,roomDialog:awe,errorDialog:nwe,exportDialog:owe,helpDialog:swe,clearCanvasDialog:lwe,publishDialog:gwe,publishSuccessDialog:cwe,confirmDialog:Cwe,imageExportDialog:Bwe,encrypted:Ewe,stats:dwe,toast:Iwe,colors:hwe,welcomeScreen:Qwe,colorPicker:pwe,overwriteConfirm:fwe,mermaid:mwe}});var Xwe={};Dt(Xwe,{alerts:()=>kwe,buttons:()=>vwe,canvasError:()=>Rwe,clearCanvasDialog:()=>Ywe,colorPicker:()=>Zwe,colors:()=>qwe,confirmDialog:()=>Jwe,default:()=>mcr,encrypted:()=>Pwe,errorDialog:()=>Uwe,errorSplash:()=>Nwe,errors:()=>Fwe,exportDialog:()=>Mwe,headings:()=>Swe,helpDialog:()=>Twe,hints:()=>Lwe,imageExportDialog:()=>Owe,labels:()=>wwe,library:()=>bwe,mermaid:()=>jwe,overwriteConfirm:()=>Vwe,publishDialog:()=>Hwe,publishSuccessDialog:()=>Kwe,roomDialog:()=>Gwe,stats:()=>_we,toast:()=>Wwe,toolBar:()=>xwe,welcomeScreen:()=>zwe});var wwe,bwe,vwe,kwe,Fwe,xwe,Swe,Lwe,Rwe,Nwe,Gwe,Uwe,Mwe,Twe,Ywe,Hwe,Kwe,Jwe,Owe,Pwe,_we,Wwe,qwe,zwe,Zwe,Vwe,jwe,mcr;var $we=_(()=>{zt();wwe={paste:"Enganxa",pasteAsPlaintext:"Enganxar com a text pla",pasteCharts:"Enganxa els diagrames",selectAll:"Selecciona-ho tot",multiSelect:"Afegeix un element a la selecció",moveCanvas:"Mou el llenç",cut:"Retalla",copy:"Copia",copyAsPng:"Copia al porta-retalls com a PNG",copyAsSvg:"Copia al porta-retalls com a SVG",copyText:"Copia al porta-retalls com a text",copySource:"Copia l'origen al porta-retalls",convertToCode:"",bringForward:"Porta endavant",sendToBack:"Envia enrere",bringToFront:"Porta al davant",sendBackward:"Envia al fons",delete:"Elimina",copyStyles:"Copia els estils",pasteStyles:"Enganxa els estils",stroke:"Color del traç",background:"Color del fons",fill:"Estil del fons",strokeWidth:"Amplada del traç",strokeStyle:"Estil del traç",strokeStyle_solid:"Sòlid",strokeStyle_dashed:"Guions",strokeStyle_dotted:"Punts",sloppiness:"Estil del traç",opacity:"Opacitat",textAlign:"Alineació del text",edges:"Vores",sharp:"Agut",round:"Arrodonit",arrowheads:"Puntes de fletxa",arrowhead_none:"Cap",arrowhead_arrow:"Fletxa",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Triangle",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Mida de lletra",fontFamily:"Tipus de lletra",addWatermark:"Afegeix-hi «Fet amb Excalidraw»",handDrawn:"Dibuixat a mà",normal:"Normal",code:"Codi",small:"Petit",medium:"Mitjà",large:"Gran",veryLarge:"Molt gran",solid:"Sòlid",hachure:"Ratlletes",zigzag:"",crossHatch:"Ratlletes creuades",thin:"Fi",bold:"Negreta",left:"Esquerra",center:"Centre",right:"Dreta",extraBold:"Extra negreta",architect:"Arquitecte",artist:"Artista",cartoonist:"Dibuixant",fileTitle:"Nom del fitxer",colorPicker:"Selector de colors",canvasColors:"Usat al llenç",canvasBackground:"Fons del llenç",drawingCanvas:"Llenç de dibuix",layers:"Capes",actions:"Accions",language:"Llengua",liveCollaboration:"Col·laboració en directe...",duplicateSelection:"Duplica",untitled:"Sense títol",name:"Nom",yourName:"El vostre nom",madeWithExcalidraw:"Fet amb Excalidraw",group:"Agrupa la selecció",ungroup:"Desagrupa la selecció",collaborators:"Col·laboradors",showGrid:"Mostra la graella",addToLibrary:"Afegir a la biblioteca",removeFromLibrary:"Eliminar de la biblioteca",libraryLoadingMessage:"S'està carregant la biblioteca…",libraries:"Explora les biblioteques",loadingScene:"S'està carregant l'escena…",align:"Alinea",alignTop:"Alinea a la part superior",alignBottom:"Alinea a la part inferior",alignLeft:"Alinea a l’esquerra",alignRight:"Alinea a la dreta",centerVertically:"Centra verticalment",centerHorizontally:"Centra horitzontalment",distributeHorizontally:"Distribueix horitzontalment",distributeVertically:"Distribueix verticalment",flipHorizontal:"Capgira horitzontalment",flipVertical:"Capgira verticalment",viewMode:"Mode de visualització",share:"Comparteix",showStroke:"Mostra el selector de color del traç",showBackground:"Mostra el selector de color de fons",toggleTheme:"Activa o desactiva el tema",personalLib:"Biblioteca personal",excalidrawLib:"Biblioteca d'Excalidraw",decreaseFontSize:"Redueix la mida de la lletra",increaseFontSize:"Augmenta la mida de la lletra",unbindText:"Desvincular el text",bindText:"Ajusta el text al contenidor",createContainerFromText:"",link:{edit:"Edita l'enllaç",editEmbed:"Edita l'enllaç i incrusta-ho",create:"Crea un enllaç",createEmbed:"",label:"Enllaç",labelEmbed:"",empty:"No s'ha definit cap enllaç"},lineEditor:{edit:"Editar línia",exit:"Sortir de l'editor de línia"},elementLock:{lock:"Bloca",unlock:"Desbloca",lockAll:"Bloca-ho tot",unlockAll:"Desbloca-ho tot"},statusPublished:"Publicat",sidebarLock:"Manté la barra lateral oberta",selectAllElementsInFrame:"Selecciona tots els elements del marc",removeAllElementsFromFrame:"Eliminat tots els elements del marc",eyeDropper:"",textToDiagram:"",prompt:""},bwe={noItems:"Encara no s'hi han afegit elements...",hint_emptyLibrary:"Trieu un element o un llenç per a afegir-lo aquí, o instal·leu una biblioteca del repositori públic, més avall.",hint_emptyPrivateLibrary:"Trieu un element o un llenç per a afegir-lo aquí."},vwe={clearReset:"Neteja el llenç",exportJSON:"Exporta a un fitxer",exportImage:"Exporta la imatge...",export:"Guardar a...",copyToClipboard:"Copia al porta-retalls",save:"Desa al fitxer actual",saveAs:"Anomena i desa",load:"Obrir",getShareableLink:"Obté l'enllaç per a compartir",close:"Tanca",selectLanguage:"Trieu la llengua",scrollBackToContent:"Torna al contingut",zoomIn:"Apropa't",zoomOut:"Allunya't",resetZoom:"Restableix el zoom",menu:"Menú",done:"Fet",edit:"Edita",undo:"Desfés",redo:"Refés",resetLibrary:"Restableix la biblioteca",createNewRoom:"Crea una sala nova",fullScreen:"Pantalla completa",darkMode:"Mode fosc",lightMode:"Mode clar",zenMode:"Mode zen",objectsSnapMode:"",exitZenMode:"Surt de mode zen",cancel:"Cancel·la",clear:"Neteja",remove:"Suprimeix",embed:"",publishLibrary:"Publica",submit:"Envia",confirm:"Confirma",embeddableInteractionButton:"Feu clic per interactuar"},kwe={clearReset:"S'esborrarà tot el llenç. N'esteu segur?",couldNotCreateShareableLink:"No s'ha pogut crear un enllaç per a compartir.",couldNotCreateShareableLinkTooBig:"No s’ha pogut crear un enllaç per a compartir: l’escena és massa gran",couldNotLoadInvalidFile:"No s'ha pogut carregar un fitxer no vàlid",importBackendFailed:"Importació fallida.",cannotExportEmptyCanvas:"No es pot exportar un llenç buit.",couldNotCopyToClipboard:"No s'ha pogut copiar al porta-retalls.",decryptFailed:"No s'ha pogut desencriptar.",uploadedSecurly:"La càrrega s'ha assegurat amb xifratge punta a punta, cosa que significa que el servidor Excalidraw i tercers no poden llegir el contingut.",loadSceneOverridePrompt:"Si carregas aquest dibuix extern, substituirá el que tens. Vols continuar?",collabStopOverridePrompt:`Aturar la sessió provocarà la sobreescriptura del dibuix previ, que hi ha desat en l'emmagatzematge local. N'esteu segur?
(Si voleu conservar el dibuix local, tanqueu la pentanya del navegador en comptes d'aturar la sessió).`,errorAddingToLibrary:"No s'ha pogut afegir l'element a la biblioteca",errorRemovingFromLibrary:"No s'ha pogut eliminar l'element de la biblioteca",confirmAddLibrary:"Això afegirà {{numShapes}} forma(es) a la vostra biblioteca. Estàs segur?",imageDoesNotContainScene:"Aquesta imatge no sembla contenir cap dada d'escena. Heu activat l'incrustació de l'escena durant l'exportació?",cannotRestoreFromImage:"L’escena no s’ha pogut restaurar des d’aquest fitxer d’imatge",invalidSceneUrl:"No s'ha pogut importar l'escena des de l'adreça URL proporcionada. Està malformada o no conté dades Excalidraw JSON vàlides.",resetLibrary:"Això buidarà la biblioteca. N'esteu segur?",removeItemsFromsLibrary:"Suprimir {{count}} element(s) de la biblioteca?",invalidEncryptionKey:"La clau d'encriptació ha de tenir 22 caràcters. La col·laboració en directe està desactivada.",collabOfflineWarning:`Sense connexió a internet disponible.
Els vostres canvis no seran guardats!`},Fwe={unsupportedFileType:"Tipus de fitxer no suportat.",imageInsertError:"No s'ha pogut insertar la imatge, torneu-ho a provar més tard...",fileTooBig:"El fitxer és massa gros. La mida màxima permesa és {{maxSize}}.",svgImageInsertError:"No ha estat possible inserir la imatge SVG. Les marques SVG semblen invàlides.",failedToFetchImage:"",invalidSVGString:"SVG no vàlid.",cannotResolveCollabServer:"No ha estat possible connectar amb el servidor collab. Si us plau recarregueu la pàgina i torneu a provar.",importLibraryError:"No s'ha pogut carregar la biblioteca",collabSaveFailed:"No s'ha pogut desar a la base de dades de fons. Si els problemes persisteixen, hauríeu de desar el fitxer localment per assegurar-vos que no perdeu el vostre treball.",collabSaveFailed_sizeExceeded:"No s'ha pogut desar a la base de dades de fons, sembla que el llenç és massa gran. Hauríeu de desar el fitxer localment per assegurar-vos que no perdeu el vostre treball.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"No s'ha pogut enganxar.",copyToSystemClipboardFailed:""},xwe={selection:"Selecció",image:"Insereix imatge",rectangle:"Rectangle",diamond:"Rombe",ellipse:"El·lipse",arrow:"Fletxa",line:"Línia",freedraw:"Dibuix",text:"Text",library:"Biblioteca",lock:"Mantenir activa l'eina seleccionada desprès de dibuixar",penMode:"Mode de llapis - evita tocar",link:"Afegeix / actualitza l'enllaç per a la forma seleccionada",eraser:"Esborrador",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Mà (eina de desplaçament)",extraTools:"",mermaidToExcalidraw:"De Mermaid a Excalidraw",magicSettings:"Preferències d'IA"},Swe={canvasActions:"Accions del llenç",selectedShapeActions:"Accions per a les formes seleccionades",shapes:"Formes"},Lwe={canvasPanning:"Per moure el llenç, manteniu premuda la roda del ratolí o la barra espaiadora mentre arrossegueu o utilitzeu l'eina manual",linearElement:"Feu clic per a dibuixar múltiples punts; arrossegueu per a una sola línia",freeDraw:"Feu clic i arrossegueu, deixeu anar per a finalitzar",text:"Consell: també podeu afegir text fent doble clic en qualsevol lloc amb l'eina de selecció",embeddable:"",text_selected:"Feu doble clic o premeu Retorn per a editar el text",text_editing:"Premeu Escapada o Ctrl+Retorn (o Ordre+Retorn) per a finalitzar l'edició",linearElementMulti:"Feu clic a l'ultim punt, o pitgeu Esc o Retorn per a finalitzar",lockAngle:"Per restringir els angles, mantenir premut el majúscul (SHIFT)",resize:"Per restringir les proporcions mentres es canvia la mida, mantenir premut el majúscul (SHIFT); per canviar la mida des del centre, mantenir premut ALT",resizeImage:`Podeu redimensionar lliurement prement MAJÚSCULA;
per a redimensionar des del centre, premeu ALT`,rotate:"Per restringir els angles mentre gira, mantenir premut el majúscul (SHIFT)",lineEditor_info:"Mantingueu premut Ctrl o Cmd i feu doble clic o premeu Ctrl o Cmd + Retorn per editar els punts",lineEditor_pointSelected:"Premeu Suprimir per a eliminar el(s) punt(s), CtrlOrCmd+D per a duplicar-lo, o arrossegueu-lo per a moure'l",lineEditor_nothingSelected:`Seleccioneu un punt per a editar-lo (premeu SHIFT si voleu
selecció múltiple), o manteniu Alt i feu clic per a afegir més punts`,placeImage:"Feu clic per a col·locar la imatge o clic i arrossegar per a establir-ne la mida manualment",publishLibrary:"Publiqueu la vostra pròpia llibreria",bindTextToElement:"Premeu enter per a afegir-hi text",deepBoxSelect:"Manteniu CtrlOrCmd per a selecció profunda, i per a evitar l'arrossegament",eraserRevert:"Mantingueu premuda Alt per a revertir els elements seleccionats per a esborrar",firefox_clipboard_write:'És probable que aquesta funció es pugui activar posant la marca "dom.events.asyncClipboard.clipboardItem" a "true". Per canviar les marques del navegador al Firefox, visiteu la pàgina "about:config".',disableSnapping:""},Rwe={cannotShowPreview:"No es pot mostrar la previsualització",canvasTooBig:"Pot ser que el llenç sigui massa gran.",canvasTooBigTip:"Consell: proveu d’acostar una mica els elements més allunyats."},Nwe={headingMain:"S'ha produït un error. Proveu <button>recarregar la pàgina.</button>",clearCanvasMessage:"Si la recàrrega no funciona, proveu <button>esborrar el llenç.</button>",clearCanvasCaveat:" Això resultarà en la pèrdua de feina ",trackedToSentry:"L'error amb l'identificador {{eventId}} s'ha rastrejat en el nostre sistema.",openIssueMessage:"Anàvem amb molta cura de no incloure la informació de la vostra escena en l'error. Si l'escena no és privada, podeu fer-ne el seguiment al nostre <button>rastrejador d'errors.</button> Incloeu la informació a continuació copiant i enganxant a GitHub Issues.",sceneContent:"Contingut de l'escena:"},Gwe={desc_intro:"Podeu convidar persones a la vostra escena actual a col·laborar amb vós.",desc_privacy:"No us preocupeu, la sessió utilitza el xifratge de punta a punta, de manera que qualsevol cosa que dibuixeu romandrà privada. Ni tan sols el nostre servidor podrà veure què feu.",button_startSession:"Inicia la sessió",button_stopSession:"Atura la sessió",desc_inProgressIntro:"La sessió de col·laboració en directe està en marxa.",desc_shareLink:"Comparteix aquest enllaç amb qualsevol persona amb qui vulgueu col·laborar:",desc_exitSession:"Si atureu la sessió, us desconectareu de la sala, però podreu continuar treballant amb el dibuix localment. Tingues en compte que això no afectarà a altres persones, i encara podran col·laborar en la seva versió.",shareTitle:"Uniu-vos a una sessió de col·laboració en directe a Excalidraw"},Uwe={title:"Error"},Mwe={disk_title:"Desa al disc",disk_details:"Exporta les dades de l'escena a un fitxer que després podreu importar.",disk_button:"Desa en un fitxer",link_title:"Enllaç per a compartir",link_details:"Exporta com a un enllaç de només lectura.",link_button:"Exporta a un enllaç",excalidrawplus_description:"Desa l'escena en el vostre espai de treball Excalidraw+.",excalidrawplus_button:"Exporta",excalidrawplus_exportError:"No és possible exportar a Excalidraw+ ara mateix..."},Twe={blog:"Llegiu el nostre blog",click:"clic",deepSelect:"Selecció profunda",deepBoxSelect:"Seleccioneu profundament dins del quadre i eviteu arrossegar",curvedArrow:"Fletxa corba",curvedLine:"Línia corba",documentation:"Documentació",doubleClick:"doble clic",drag:"arrossega",editor:"Editor",editLineArrowPoints:"",editText:"",github:"Hi heu trobat un problema? Informeu-ne",howto:"Seguiu les nostres guies",or:"o",preventBinding:"Prevenir vinculació de la fletxa",tools:"Eines",shortcuts:"Dreceres de teclat",textFinish:"Finalitza l'edició (editor de text)",textNewLine:"Afegeix una línia nova (editor de text)",title:"Ajuda",view:"Visualització",zoomToFit:"Zoom per veure tots els elements",zoomToSelection:"Zoom per veure la selecció",toggleElementLock:"Blocar/desblocar la selecció",movePageUpDown:"Mou la pàgina cap amunt/a baix",movePageLeftRight:"Mou la pàgina cap a l'esquerra/dreta"},Ywe={title:"Neteja el llenç"},Hwe={title:"Publica la biblioteca",itemName:"Nom de l'element",authorName:"Nom de l'autor/a",githubUsername:"Nom d'usuari de GitHub",twitterUsername:"Nom d'usuari de Twitter",libraryName:"Nom de la biblioteca",libraryDesc:"Descripció de la biblioteca",website:"Lloc web",placeholder:{authorName:"Nom o usuari",libraryName:"Nom de la vostra biblioteca",libraryDesc:"Descripció de la biblioteca per a ajudar a la gent a entendre'n el funcionament",githubHandle:"Identificador de GitHub (opcional), per tal que pugueu editar la biblioteca una vegada enviada per a ser revisada",twitterHandle:"Usuari de twitter (opcional), per tal que puguem donar-vos crèdit quan fem la promoció a Twitter",website:"Enllaç al vostre lloc web personal o a qualsevol altre (opcional)"},errors:{required:"Requerit",website:"Introduïu una URL vàlida"},noteDescription:"Envieu la vostra biblioteca perquè sigui inclosa al <link>repositori públic</link>per tal que altres persones puguin fer-ne ús en els seus dibuixos.",noteGuidelines:"La biblioteca ha de ser aprovada manualment. Si us plau, llegiu les <link>directrius</link> abans d'enviar-hi res. Necessitareu un compte de GitHub per a comunicar i fer-hi canvis si cal, però no és requisit imprescindible.",noteLicense:"Quan l'envieu, accepteu que la biblioteca sigui publicada sota la <link>llicència MIT, </link>que, en resum, vol dir que qualsevol persona pot fer-ne ús sense restriccions.",noteItems:"Cada element de la biblioteca ha de tenir el seu propi nom per tal que sigui filtrable. S'hi inclouran els elements següents:",atleastOneLibItem:"Si us plau, seleccioneu si més no un element de la biblioteca per a començar",republishWarning:"Nota: alguns dels elements seleccionats s'han marcat com a publicats/enviats. Només hauríeu de reenviar elements quan actualitzeu una biblioteca existent."},Kwe={title:"Biblioteca enviada",content:"Gràcies, {{authorName}}. La vostra biblioteca ha estat enviada per a ser revisada. Podeu comprovar-ne l'estat<link>aquí</link>"},Jwe={resetLibrary:"Restableix la biblioteca",removeItemsFromLib:"Suprimeix els elements seleccionats de la llibreria"},Owe={header:"",label:{withBackground:"",onlySelected:"Només els seleccionats",darkMode:"Mode fosc",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"Exporta a PNG",exportToSvg:"Exporta a SVG",copyPngToClipboard:"Copia el PNG al porta-retalls"},button:{exportToPng:"PNG",exportToSvg:"",copyPngToClipboard:""}},Pwe={tooltip:"Els vostres dibuixos estan xifrats de punta a punta de manera que els servidors d’Excalidraw no els veuran mai.",link:"Article del blog sobre encriptació d'extrem a extrem a Excalidraw"},_we={angle:"Angle",element:"Element",elements:"Elements",height:"Altura",scene:"Escena",selected:"Seleccionat",storage:"Emmagatzematge",title:"Estadístiques per nerds",total:"Total",version:"Versió",versionCopy:"Feu clic per a copiar",versionNotAvailable:"Versió no disponible",width:"Amplada"},Wwe={addedToLibrary:"Afegit a la biblioteca",copyStyles:"S'han copiat els estils.",copyToClipboard:"S'ha copiat al porta-retalls.",copyToClipboardAsPng:`S'ha copiat {{exportSelection}} al porta-retalls en format PNG
({{exportColorScheme}})`,fileSaved:"S'ha desat el fitxer.",fileSavedToFilename:"S'ha desat a {filename}",canvas:"el llenç",selection:"la selecció",pasteAsSingleElement:`Fer servir {{shortcut}} per enganxar com un sol element,
o enganxeu-lo en un editor de text existent`,unableToEmbed:"",unrecognizedLinkFormat:""},qwe={transparent:"Transparent",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"Verd",yellow:"Groc",orange:"Taronja",bronze:"Bronze"},zwe={app:{center_heading:"Totes les vostres dades es guarden localment al vostre navegador.",center_heading_plus:"Vols anar a Excalidraw+ en comptes?",menuHint:"Exportar, preferències, llenguatges..."},defaults:{menuHint:"Exportar, preferències i més...",center_heading:"Diagrames. Fer. Simple.",toolbarHint:"Selecciona una eina i comença a dibuixar!",helpHint:"Dreceres i ajuda"}},Zwe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},Vwe={action:{exportToImage:{title:"Exporta com a imatge",button:"Exporta com a imatge",description:""},saveToDisk:{title:"Desa al disc",button:"Desa al disc",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"Carrega des d'un fitxer",button:"Carrega des d'un fitxer",description:""},shareableLink:{title:"Carrega des d'un enllaç",button:"",description:""}}},jwe={title:"De Mermaid a Excalidraw",button:"Insereix",description:"",syntax:"Sintaxi de Mermaid",preview:"Previsualització"},mcr={labels:wwe,library:bwe,buttons:vwe,alerts:kwe,errors:Fwe,toolBar:xwe,headings:Swe,hints:Lwe,canvasError:Rwe,errorSplash:Nwe,roomDialog:Gwe,errorDialog:Uwe,exportDialog:Mwe,helpDialog:Twe,clearCanvasDialog:Ywe,publishDialog:Hwe,publishSuccessDialog:Kwe,confirmDialog:Jwe,imageExportDialog:Owe,encrypted:Pwe,stats:_we,toast:Wwe,colors:qwe,welcomeScreen:zwe,colorPicker:Zwe,overwriteConfirm:Vwe,mermaid:jwe}});var v6e={};Dt(v6e,{alerts:()=>r6e,buttons:()=>t6e,canvasError:()=>o6e,clearCanvasDialog:()=>B6e,colorPicker:()=>y6e,colors:()=>m6e,confirmDialog:()=>I6e,default:()=>Dcr,encrypted:()=>Q6e,errorDialog:()=>g6e,errorSplash:()=>s6e,errors:()=>i6e,exportDialog:()=>c6e,headings:()=>a6e,helpDialog:()=>C6e,hints:()=>n6e,imageExportDialog:()=>h6e,labels:()=>A6e,library:()=>e6e,mermaid:()=>b6e,overwriteConfirm:()=>w6e,publishDialog:()=>E6e,publishSuccessDialog:()=>d6e,roomDialog:()=>l6e,stats:()=>p6e,toast:()=>f6e,toolBar:()=>u6e,welcomeScreen:()=>D6e});var A6e,e6e,t6e,r6e,i6e,u6e,a6e,n6e,o6e,s6e,l6e,g6e,c6e,C6e,B6e,E6e,d6e,I6e,h6e,Q6e,p6e,f6e,m6e,D6e,y6e,w6e,b6e,Dcr;var k6e=_(()=>{zt();A6e={paste:"Vložit",pasteAsPlaintext:"Vložit jako prostý text",pasteCharts:"Vložit grafy",selectAll:"Vybrat vše",multiSelect:"Přidat prvek do výběru",moveCanvas:"Posunout plátno",cut:"Vyjmout",copy:"Kopírovat",copyAsPng:"Zkopírovat do schránky jako PNG",copyAsSvg:"Zkopírovat do schránky jako SVG",copyText:"Zkopírovat do schránky jako text",copySource:"",convertToCode:"",bringForward:"Přenést blíž",sendToBack:"Přenést do pozadí",bringToFront:"Přenést do popředí",sendBackward:"Přenést dál",delete:"Smazat",copyStyles:"Kopírovat styly",pasteStyles:"Vložit styly",stroke:"Obrys",background:"Pozadí",fill:"Výplň",strokeWidth:"Tloušťka tahu",strokeStyle:"Styl tahu",strokeStyle_solid:"Plný",strokeStyle_dashed:"Čárkovaný",strokeStyle_dotted:"Tečkovaný",sloppiness:"Stylizace",opacity:"Průhlednost",textAlign:"Zarovnání textu",edges:"Hrany",sharp:"Ostré",round:"Zaoblené",arrowheads:"Styl šipky",arrowhead_none:"Žádný",arrowhead_arrow:"Šipka",arrowhead_bar:"Kóta",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trojúhelník",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Velikost písma",fontFamily:"Písmo",addWatermark:'Přidat "Vyrobeno s Excalidraw"',handDrawn:"Od ruky",normal:"Normální",code:"Kód",small:"Malé",medium:"Střední",large:"Velké",veryLarge:"Velmi velké",solid:"Plný",hachure:"Hachure",zigzag:"Klikatě",crossHatch:"Křížový šrafování",thin:"Tenký",bold:"Tlustý",left:"Vlevo",center:"Na střed",right:"Vpravo",extraBold:"Extra tlustý",architect:"Architekt",artist:"Umělec",cartoonist:"Kartoonista",fileTitle:"Název souboru",colorPicker:"Výběr barvy",canvasColors:"Použito na plátně",canvasBackground:"Pozadí plátna",drawingCanvas:"Kreslicí plátno",layers:"Vrstvy",actions:"Akce",language:"Jazyk",liveCollaboration:"Živá spolupráce...",duplicateSelection:"Duplikovat",untitled:"Bez názvu",name:"Název",yourName:"Vaše jméno",madeWithExcalidraw:"Vytvořeno v Excalidraw",group:"Sloučit výběr do skupiny",ungroup:"Zrušit sloučení skupiny",collaborators:"Spolupracovníci",showGrid:"Zobrazit mřížku",addToLibrary:"Přidat do knihovny",removeFromLibrary:"Odebrat z knihovny",libraryLoadingMessage:"Načítání knihovny…",libraries:"Procházet knihovny",loadingScene:"Načítání scény…",align:"Zarovnání",alignTop:"Zarovnat nahoru",alignBottom:"Zarovnat dolů",alignLeft:"Zarovnat vlevo",alignRight:"Zarovnejte vpravo",centerVertically:"Vycentrovat svisle",centerHorizontally:"Vycentrovat vodorovně",distributeHorizontally:"Rozložit horizontálně",distributeVertically:"Rozložit svisle",flipHorizontal:"Převrátit vodorovně",flipVertical:"Převrátit svisle",viewMode:"Náhled",share:"Sdílet",showStroke:"Zobrazit výběr barvy",showBackground:"Zobrazit výběr barev pozadí",toggleTheme:"Přepnout tmavý řežim",personalLib:"Osobní knihovna",excalidrawLib:"Exkalidraw knihovna",decreaseFontSize:"Zmenšit písmo",increaseFontSize:"Zvětšit písmo",unbindText:"Zrušit vazbu textu",bindText:"Vázat text s kontejnerem",createContainerFromText:"Zabalit text do kontejneru",link:{edit:"Upravit odkaz",editEmbed:"",create:"Vytvořit odkaz",createEmbed:"",label:"Odkaz",labelEmbed:"",empty:""},lineEditor:{edit:"Upravit čáru",exit:"Ukončit editor řádků"},elementLock:{lock:"Uzamknout",unlock:"Odemknout",lockAll:"Uzamknout vše",unlockAll:"Odemknout vše"},statusPublished:"Zveřejněno",sidebarLock:"Ponechat postranní panel otevřený",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"Vyberte barvu z plátna",textToDiagram:"",prompt:""},e6e={noItems:"Dosud neexistují žádné položky...",hint_emptyLibrary:"Vyberte položku na plátně a přidejte ji sem nebo nainstalujte knihovnu z veřejného úložiště níže.",hint_emptyPrivateLibrary:"Vyberte položku na plátně a přidejte ji sem."},t6e={clearReset:"Resetovat plátno",exportJSON:"Exportovat do souboru",exportImage:"Exportovat obrázek...",export:"Uložit jako...",copyToClipboard:"Kopírovat do schránky",save:"Uložit do aktuálního souboru",saveAs:"Uložit jako",load:"Otevřít",getShareableLink:"Získat odkaz pro sdílení",close:"Zavřít",selectLanguage:"Zvolit jazyk",scrollBackToContent:"Přejít zpět na obsah",zoomIn:"Přiblížit",zoomOut:"Oddálit",resetZoom:"Resetovat přiblížení",menu:"Menu",done:"Hotovo",edit:"Upravit",undo:"Zpět",redo:"Znovu",resetLibrary:"Obnovit knihovnu",createNewRoom:"Vytvořit novou místnost",fullScreen:"Celá obrazovka",darkMode:"Tmavý režim",lightMode:"Světlý režim",zenMode:"Zen mód",objectsSnapMode:"",exitZenMode:"Opustit zen mód",cancel:"Zrušit",clear:"Vyčistit",remove:"Odstranit",embed:"",publishLibrary:"Zveřejnit",submit:"Odeslat",confirm:"Potvrdit",embeddableInteractionButton:""},r6e={clearReset:"Toto vymaže celé plátno. Jste si jisti?",couldNotCreateShareableLink:"Nepodařilo se vytvořit sdílitelný odkaz.",couldNotCreateShareableLinkTooBig:"Nepodařilo se vytvořit sdílený odkaz: scéna je příliš velká",couldNotLoadInvalidFile:"Nepodařilo se načíst neplatný soubor",importBackendFailed:"Import z backendu se nezdařil.",cannotExportEmptyCanvas:"Nelze exportovat prázdné plátno.",couldNotCopyToClipboard:"Nelze zkopírovat do schránky.",decryptFailed:"Nelze dešifrovat data.",uploadedSecurly:"Nahrávání je zabezpečeno koncovým šifrováním, což znamená, že server Excalidraw ani třetí strany nemohou obsah přečíst.",loadSceneOverridePrompt:"Načítání externího výkresu nahradí váš existující obsah. Přejete si pokračovat?",collabStopOverridePrompt:`Zastavení relace přepíše vaše předchozí, lokálně uložené kresby. Jste si jisti?
(Pokud chcete zachovat místní kresbu, jednoduše zavřete kartu prohlížeče)`,errorAddingToLibrary:"Položku nelze přidat do knihovny",errorRemovingFromLibrary:"Položku nelze odstranit z knihovny",confirmAddLibrary:"Tímto přidáte {{numShapes}} tvarů do tvé knihovny. Jste si jisti?",imageDoesNotContainScene:"Zdá se, že tento obrázek neobsahuje žádná data o scéně. Zapnuli jste při exportu vkládání scény?",cannotRestoreFromImage:"Scénu nelze obnovit z tohoto souboru obrázku",invalidSceneUrl:"Nelze importovat scénu z zadané URL. Je buď poškozená, nebo neobsahuje platná JSON data Excalidraw.",resetLibrary:"Tímto vymažete vaši knihovnu. Jste si jisti?",removeItemsFromsLibrary:"Smazat {{count}} položek z knihovny?",invalidEncryptionKey:"Šifrovací klíč musí mít 22 znaků. Live spolupráce je zakázána.",collabOfflineWarning:`Není k dispozici žádné internetové připojení.
Vaše změny nebudou uloženy!`},i6e={unsupportedFileType:"Nepodporovaný typ souboru.",imageInsertError:"Nelze vložit obrázek. Zkuste to později...",fileTooBig:"Soubor je příliš velký. Maximální povolená velikost je {{maxSize}}.",svgImageInsertError:"Nelze vložit SVG obrázek. Značení SVG je neplatné.",failedToFetchImage:"",invalidSVGString:"Neplatný SVG.",cannotResolveCollabServer:"Nelze se připojit ke sdílenému serveru. Prosím obnovte stránku a zkuste to znovu.",importLibraryError:"Nelze načíst knihovnu",collabSaveFailed:"Nelze uložit do databáze na serveru. Pokud problémy přetrvávají, měli byste uložit soubor lokálně, abyste se ujistili, že neztratíte svou práci.",collabSaveFailed_sizeExceeded:"Nelze uložit do databáze na serveru, plátno se zdá být příliš velké. Měli byste uložit soubor lokálně, abyste se ujistili, že neztratíte svou práci.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Vypadá to, že používáte Brave prohlížeč s povoleným nastavením <bold>Aggressively Block Fingerprinting</bold>.",line2:"To by mohlo vést k narušení <bold>Textových elementů</bold> ve vašich výkresech.",line3:"Důrazně doporučujeme zakázat toto nastavení. Můžete sledovat <link>tyto kroky</link> jak to udělat.",line4:"Pokud vypnutí tohoto nastavení neopravuje zobrazení textových prvků, prosím, otevřete <issueLink>problém</issueLink> na našem GitHubu, nebo nám napište na <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},u6e={selection:"Výběr",image:"Vložit obrázek",rectangle:"Obdélník",diamond:"Diamant",ellipse:"Elipsa",arrow:"Šipka",line:"Čára",freedraw:"Kreslení",text:"Text",library:"Knihovna",lock:"Po kreslení ponechat vybraný nástroj aktivní",penMode:"Režim Pera - zabránit dotyku",link:"Přidat/aktualizovat odkaz pro vybraný tvar",eraser:"Guma",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Ruka (nástroj pro posouvání)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},a6e={canvasActions:"Akce plátna",selectedShapeActions:"Akce vybraného tvaru",shapes:"Tvary"},n6e={canvasPanning:"Chcete-li přesunout plátno, podržte kolečko nebo mezerník při tažení nebo použijte nástroj Ruka",linearElement:"Kliknutím pro více bodů, táhnutím pro jednu čáru",freeDraw:"Klikněte a táhněte, pro ukončení pusťte",text:"Tip: Text můžete také přidat dvojitým kliknutím kdekoli pomocí nástroje pro výběr",embeddable:"",text_selected:"Dvojklikem nebo stisknutím klávesy ENTER upravíte text",text_editing:"Stiskněte Escape nebo Ctrl/Cmd+ENTER pro dokončení úprav",linearElementMulti:"Klikněte na poslední bod nebo stiskněte Escape anebo Enter pro dokončení",lockAngle:"Úhel můžete omezit podržením SHIFT",resize:`Můžete omezit proporce podržením SHIFT při změně velikosti,
podržte ALT pro změnu velikosti od středu`,resizeImage:`Můžete volně změnit velikost podržením SHIFT,
podržením klávesy ALT změníte velikosti od středu`,rotate:"Úhly můžete omezit podržením SHIFT při otáčení",lineEditor_info:"Podržte Ctrl/Cmd a dvakrát klikněte nebo stiskněte Ctrl/Cmd + Enter pro úpravu bodů",lineEditor_pointSelected:`Stisknutím tlačítka Delete odstraňte bod(y),
Ctrl/Cmd+D pro duplicitu nebo táhnutím pro přesun`,lineEditor_nothingSelected:`Vyberte bod, který chcete upravit (podržením klávesy SHIFT vyberete více položek),
nebo podržením klávesy Alt a kliknutím přidáte nové body`,placeImage:"Kliknutím umístěte obrázek, nebo klepnutím a přetažením ručně nastavíte jeho velikost",publishLibrary:"Publikovat vlastní knihovnu",bindTextToElement:"Stiskněte Enter pro přidání textu",deepBoxSelect:"Podržte Ctrl/Cmd pro hluboký výběr a pro zabránění táhnutí",eraserRevert:"Podržením klávesy Alt vrátíte prvky označené pro smazání",firefox_clipboard_write:'Tato funkce může být povolena nastavením vlajky "dom.events.asyncClipboard.clipboardItem" na "true". Chcete-li změnit vlajky prohlížeče ve Firefoxu, navštivte stránku "about:config".',disableSnapping:""},o6e={cannotShowPreview:"Náhled nelze zobrazit",canvasTooBig:"Plátno je možná příliš velké.",canvasTooBigTip:"Tip: zkus posunout nejvzdálenější prvky trochu blíže k sobě."},s6e={headingMain:"Chyba. Zkuste <button>znovu načíst stránku</button>.",clearCanvasMessage:"Pokud opětovné načtení nefunguje, zkuste <button>vymazat plátno</button>.",clearCanvasCaveat:" To povede ke ztrátě dat ",trackedToSentry:"Chyba identifikátoru {{eventId}} byl zaznamenán v našem systému.",openIssueMessage:"Byli jsme velmi opatrní, abychom neuváděli informace o Vaší scéně. Pokud vaše scéna není soukromá, zvažte prosím sledování na našem <button>bug trackeru</button>. Uveďte prosím níže uvedené informace kopírováním a vložením do problému na GitHubu.",sceneContent:"Obsah scény:"},l6e={desc_intro:"Můžete pozvat lidi na vaši aktuální scénu ke spolupráci s vámi.",desc_privacy:"Nebojte se, relace používá end-to-end šifrování, takže cokoliv nakreslíte zůstane soukromé. Ani náš server nebude schopen vidět, s čím budete pracovat.",button_startSession:"Zahájit relaci",button_stopSession:"Ukončit relaci",desc_inProgressIntro:"Živá spolupráce právě probíhá.",desc_shareLink:"Sdílejte tento odkaz s každým, s kým chcete spolupracovat:",desc_exitSession:"Zastavením relace se odpojíte od místnosti, ale budete moci pokračovat v práci s touto scénou lokálně. Všimněte si, že to nebude mít vliv na ostatní lidi a budou stále moci spolupracovat na jejich verzi.",shareTitle:"Připojte se k aktivní spolupráci na Excalidraw"},g6e={title:"Chyba"},c6e={disk_title:"Uložit na disk",disk_details:"Exportovat data scény do souboru, ze kterého můžete importovat později.",disk_button:"Uložit do souboru",link_title:"Odkaz pro sdílení",link_details:"Exportovat jako odkaz pouze pro čtení.",link_button:"Exportovat do odkazu",excalidrawplus_description:"Uložit scénu do vašeho pracovního prostoru Excalidraw+.",excalidrawplus_button:"Exportovat",excalidrawplus_exportError:"Export do Excalidraw+ se v tuto chvíli nezdařil..."},C6e={blog:"Přečtěte si náš blog",click:"kliknutí",deepSelect:"Hluboký výběr",deepBoxSelect:"Hluboký výběr uvnitř boxu a zabránění táhnnutí",curvedArrow:"Zakřivená šipka",curvedLine:"Zakřivená čára",documentation:"Dokumentace",doubleClick:"dvojklik",drag:"tažení",editor:"Editor",editLineArrowPoints:"Upravit body linií/šipek",editText:"Upravit text / přidat popis",github:"Našel jsi problém? Nahlaš ho",howto:"Sledujte naše návody",or:"nebo",preventBinding:"Zabránit vázání šipky",tools:"Nástroje",shortcuts:"Klávesové zkratky",textFinish:"Dokončit úpravy (textový editor)",textNewLine:"Přidat nový řádek (textový editor)",title:"Nápověda",view:"Zobrazení",zoomToFit:"Přiblížit na zobrazení všech prvků",zoomToSelection:"Přiblížit na výběr",toggleElementLock:"Zamknout/odemknout výběr",movePageUpDown:"Posunout stránku nahoru/dolů",movePageLeftRight:"Přesunout stránku doleva/doprava"},B6e={title:"Vymazat plátno"},E6e={title:"Publikovat knihovnu",itemName:"Název položky",authorName:"Jméno autora",githubUsername:"GitHub uživatelské jméno",twitterUsername:"Twitter uživatelské jméno",libraryName:"Název knihovny",libraryDesc:"Popis knihovny",website:"Webová stránka",placeholder:{authorName:"Jméno nebo uživatelské jméno",libraryName:"Název vaší knihovny",libraryDesc:"Popis Vaší knihovny, který pomůže lidem pochopit její využití",githubHandle:"Github uživatelské jméno (nepovinné), abyste mohli upravovat knihovnu poté co je odeslána ke kontrole",twitterHandle:"Twitter uživatelské jméno (nepovinné), abychom věděli koho označit při propagaci na Twitteru",website:"Odkaz na Vaši osobní webovou stránku nebo jinam (nepovinné)"},errors:{required:"Povinné",website:"Zadejte platnou URL adresu"},noteDescription:"Odešlete svou knihovnu, pro zařazení do <link>veřejného úložiště knihoven</link>, odkud ji budou moci při kreslení využít i ostatní uživatelé.",noteGuidelines:"Knihovna musí být nejdříve ručně schválena. Přečtěte si prosím <link>pokyny</link>",noteLicense:"Odesláním souhlasíte s tím, že knihovna bude zveřejněna pod <link>MIT licencí</link>, stručně řečeno, kdokoli ji může používat bez omezení.",noteItems:"Každá položka knihovny musí mít svůj vlastní název, aby byla filtrovatelná. Následující položky knihovny budou zahrnuty:",atleastOneLibItem:"Vyberte alespoň jednu položku knihovny, kterou chcete začít",republishWarning:"Poznámka: některé z vybraných položek jsou označeny jako již zveřejněné/odeslané. Položky byste měli znovu odeslat pouze při aktualizaci existující knihovny nebo podání."},d6e={title:"Knihovna byla odeslána",content:"Děkujeme vám {{authorName}}. Vaše knihovna byla odeslána k posouzení. Stav můžete sledovat <link>zde</link>"},I6e={resetLibrary:"Resetovat knihovnu",removeItemsFromLib:"Odstranit vybrané položky z knihovny"},h6e={header:"Exportovat obrázek",label:{withBackground:"Pozadí",onlySelected:"Pouze vybrané",darkMode:"Tmavý režim",embedScene:"Vložit scénu",scale:"Měřítko",padding:"Odsazení"},tooltip:{embedScene:`Data scény budou uložena do exportovaného souboru PNG/SVG tak, aby z něj mohla být scéna obnovena.
Zvýší se velikost exportovaného souboru.`},title:{exportToPng:"Exportovat do PNG",exportToSvg:"Exportovat do SVG",copyPngToClipboard:"Kopírovat PNG do schránky"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopírovat do schránky"}},Q6e={tooltip:"Vaše kresby jsou end-to-end šifrované, takže servery Excalidraw je nikdy neuvidí.",link:"Blog příspěvek na end-to-end šifrování v Excalidraw"},p6e={angle:"Úhel",element:"Prvek",elements:"Prvky",height:"Výška",scene:"Scéna",selected:"Vybráno",storage:"Úložiště",title:"Statistika pro nerdy",total:"Celkem",version:"Verze",versionCopy:"Kliknutím zkopírujete",versionNotAvailable:"Verze není k dispozici",width:"Šířka"},f6e={addedToLibrary:"Přidáno do knihovny",copyStyles:"Styly byly zkopírovány.",copyToClipboard:"Zkopírováno do schránky.",copyToClipboardAsPng:`{{exportSelection}} zkopírován do schránky jako PNG
({{exportColorScheme}})`,fileSaved:"Soubor byl uložen.",fileSavedToFilename:"Uloženo do {filename}",canvas:"plátno",selection:"výběr",pasteAsSingleElement:`Pomocí {{shortcut}} vložte jako jeden prvek,
nebo vložte do existujícího textového editoru`,unableToEmbed:"",unrecognizedLinkFormat:""},m6e={transparent:"Průhledná",black:"Černá",white:"Bílá",red:"Červená",pink:"Růžová",grape:"Vínová",violet:"Fialová",gray:"Šedá",blue:"Modrá",cyan:"Azurová",teal:"Modrozelená",green:"Zelená",yellow:"Žlutá",orange:"Oranžová",bronze:"Bronzová"},D6e={app:{center_heading:"Všechna vaše data jsou uložena lokálně ve vašem prohlížeči.",center_heading_plus:"Chcete místo toho přejít na Excalidraw+?",menuHint:"Export, nastavení, jazyky, ..."},defaults:{menuHint:"Export, nastavení a další...",center_heading:"Diagramy. Vytvořeny. Jednoduše.",toolbarHint:"Vyberte nástroj a začněte kreslit!",helpHint:"Zkratky a pomoc"}},y6e={mostUsedCustomColors:"Nejpoužívanější vlastní barvy",colors:"Barvy",shades:"Stíny",hexCode:"Hex kód",noShades:"Pro tuto barvu nejsou k dispozici žádné odstíny"},w6e={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},b6e={title:"",button:"",description:"",syntax:"",preview:""},Dcr={labels:A6e,library:e6e,buttons:t6e,alerts:r6e,errors:i6e,toolBar:u6e,headings:a6e,hints:n6e,canvasError:o6e,errorSplash:s6e,roomDialog:l6e,errorDialog:g6e,exportDialog:c6e,helpDialog:C6e,clearCanvasDialog:B6e,publishDialog:E6e,publishSuccessDialog:d6e,confirmDialog:I6e,imageExportDialog:h6e,encrypted:Q6e,stats:p6e,toast:f6e,colors:m6e,welcomeScreen:D6e,colorPicker:y6e,overwriteConfirm:w6e,mermaid:b6e}});var t9e={};Dt(t9e,{alerts:()=>L6e,buttons:()=>S6e,canvasError:()=>M6e,clearCanvasDialog:()=>O6e,colorPicker:()=>$6e,colors:()=>j6e,confirmDialog:()=>W6e,default:()=>ycr,encrypted:()=>z6e,errorDialog:()=>H6e,errorSplash:()=>T6e,errors:()=>R6e,exportDialog:()=>K6e,headings:()=>G6e,helpDialog:()=>J6e,hints:()=>U6e,imageExportDialog:()=>q6e,labels:()=>F6e,library:()=>x6e,mermaid:()=>e9e,overwriteConfirm:()=>A9e,publishDialog:()=>P6e,publishSuccessDialog:()=>_6e,roomDialog:()=>Y6e,stats:()=>Z6e,toast:()=>V6e,toolBar:()=>N6e,welcomeScreen:()=>X6e});var F6e,x6e,S6e,L6e,R6e,N6e,G6e,U6e,M6e,T6e,Y6e,H6e,K6e,J6e,O6e,P6e,_6e,W6e,q6e,z6e,Z6e,V6e,j6e,X6e,$6e,A9e,e9e,ycr;var r9e=_(()=>{zt();F6e={paste:"Indsæt",pasteAsPlaintext:"Indsæt som klartekst",pasteCharts:"Indsæt diagrammer",selectAll:"Marker alle",multiSelect:"Tilføj element til markering",moveCanvas:"Flyt lærred",cut:"Klip",copy:"Kopier",copyAsPng:"Kopier til klippebord som PNG",copyAsSvg:"Kopier til klippebord som SVG",copyText:"Kopiér til udklipsholder som tekst",copySource:"Kopiér kilde til udklipsholder",convertToCode:"Konvertér til kode",bringForward:"Flyt fremad",sendToBack:"Placer bagest",bringToFront:"Placer forrest",sendBackward:"Send bagud",delete:"Fjern",copyStyles:"Kopier stil",pasteStyles:"Indsæt stil",stroke:"Linje",background:"Baggrund",fill:"Udfyld",strokeWidth:"Linjebredde",strokeStyle:"Linjeform",strokeStyle_solid:"Solid",strokeStyle_dashed:"Stiplet",strokeStyle_dotted:"Prikket",sloppiness:"Sjuskethed",opacity:"Gennemsigtighed",textAlign:"Tekstjustering",edges:"Kanter",sharp:"Skarp",round:"Rund",arrowheads:"Pilehoveder",arrowhead_none:"Ingen",arrowhead_arrow:"Pil",arrowhead_bar:"Bjælke",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trekant",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Skriftstørrelse",fontFamily:"Skrifttypefamilie",addWatermark:'Tilføj "Lavet med Excalidraw"',handDrawn:"Hånd-tegnet",normal:"Normal",code:"Kode",small:"Lille",medium:"Mellem",large:"Stor",veryLarge:"Meget stor",solid:"Solid",hachure:"Skravering",zigzag:"Zigzag",crossHatch:"Krydsskravering",thin:"Tynd",bold:"Fed",left:"Venstre",center:"Centrere",right:"Højre",extraBold:"Extra fed",architect:"Arkitekt",artist:"Kunstner",cartoonist:"Tegneserietegner",fileTitle:"Filnavn",colorPicker:"Farvevælger",canvasColors:"Brugt på lærred",canvasBackground:"Lærredsbaggrund",drawingCanvas:"Tegnelærred",layers:"Lag",actions:"Handlinger",language:"Sprog",liveCollaboration:"Live samarbejde...",duplicateSelection:"Duplikér",untitled:"Unavngivet",name:"Navn",yourName:"Dit navn",madeWithExcalidraw:"Fremstillet med Excalidraw",group:"Grupper valgte",ungroup:"Opløs gruppe",collaborators:"Deltagere",showGrid:"Vis gitter",addToLibrary:"Føj til Bibliotek",removeFromLibrary:"Fjern fra biblioteket",libraryLoadingMessage:"Indlæser bibliotek…",libraries:"Gennemse biblioteker",loadingScene:"Indlæser scene…",align:"Justér",alignTop:"Juster til top",alignBottom:"Juster til bund",alignLeft:"Venstrejusteret",alignRight:"Juster højre",centerVertically:"Center vertikalt",centerHorizontally:"Vandret centreret",distributeHorizontally:"Distribuer vandret",distributeVertically:"Distribuer lodret",flipHorizontal:"Spejlvend horisontalt",flipVertical:"Vend lodret",viewMode:"Visningstilstand",share:"Del",showStroke:"Vis stregfarve-vælger",showBackground:"Vis baggrundsfarve-vælger",toggleTheme:"Skift tema",personalLib:"Personligt bibliotek",excalidrawLib:"Excalidraw Bibliotek",decreaseFontSize:"Gør skriften mindre",increaseFontSize:"Gør skriften større",unbindText:"Frigør tekst",bindText:"Bind tekst til beholderen",createContainerFromText:"Ombryd tekst i en beholder",link:{edit:"Redigér link",editEmbed:"Redigér link & indlejret",create:"Link oprettet",createEmbed:"Opret link & indlejret",label:"Links",labelEmbed:"Link & indlejret",empty:"Intet link angivet"},lineEditor:{edit:"Rediger Linje",exit:"Afslut linjeeditor"},elementLock:{lock:"Lås",unlock:"Lås op",lockAll:"Lås alle",unlockAll:"Lås alle op"},statusPublished:"Udgiver",sidebarLock:"Hold sidepanel åben",selectAllElementsInFrame:"Vælg alle elementer i rammen",removeAllElementsFromFrame:"Fjern alle elementer fra ramme",eyeDropper:"Vælg farve fra lærred",textToDiagram:"Tekst til diagram",prompt:"Prompt"},x6e={noItems:"Ingen varer tilføjet endnu...",hint_emptyLibrary:"Vælg et element på lærred for at tilføje det her, eller installer et bibliotek fra det offentlige arkiv, nedenfor.",hint_emptyPrivateLibrary:"Vælg et element på lærred for at tilføje det her."},S6e={clearReset:"Nulstil lærredet",exportJSON:"Eksportér til fil",exportImage:"Eksporter billede...",export:"Gem til...",copyToClipboard:"Kopier til klippebord",save:"Gem til nuværende fil",saveAs:"Gem som",load:"Åbn",getShareableLink:"Lav et delbart link",close:"Luk",selectLanguage:"Vælg sprog",scrollBackToContent:"Scroll tilbage til indhold",zoomIn:"Zoom ind",zoomOut:"Zoom ud",resetZoom:"Nulstil zoom",menu:"Menu",done:"Færdig",edit:"Rediger",undo:"Fortryd",redo:"Gendan",resetLibrary:"Nulstil bibliotek",createNewRoom:"Opret nyt rum",fullScreen:"Fuld skærm",darkMode:"Mørk tilstand",lightMode:"Lys baggrund",zenMode:"Zentilstand",objectsSnapMode:"Fastgør til objekter",exitZenMode:"Stop zentilstand",cancel:"Annuller",clear:"Ryd",remove:"Fjern",embed:"Slå indlejring til/fra",publishLibrary:"Publicér",submit:"Gem",confirm:"Bekræft",embeddableInteractionButton:"Klik for at interagere"},L6e={clearReset:"Dette vil rydde hele lærredet. Er du sikker?",couldNotCreateShareableLink:"Kunne ikke oprette delbart link.",couldNotCreateShareableLinkTooBig:"Kunne ikke oprette delbart link: scenen er for stor",couldNotLoadInvalidFile:"Kunne ikke indlæse ugyldig fil",importBackendFailed:"Import fra backend mislykkedes.",cannotExportEmptyCanvas:"Kan ikke eksportere tomt lærred.",couldNotCopyToClipboard:"Kunne ikke kopiere til udklipsholderen.",decryptFailed:"Kunne ikke dekryptere data.",uploadedSecurly:"Upload er blevet sikret med ende-til-ende kryptering, hvilket betyder, at Excalidraw server og tredjeparter ikke kan læse indholdet.",loadSceneOverridePrompt:"Indlæsning af ekstern tegning erstatter dit eksisterende indhold. Ønsker du at fortsætte?",collabStopOverridePrompt:`Stopper sessionen vil overskrive din tidligere, lokalt gemte tegning. Er du sikker?
(Hvis du ønsker at beholde din lokale tegning, skal du blot lukke browserfanen i stedet.)`,errorAddingToLibrary:"Kunne ikke tilføje element til biblioteket",errorRemovingFromLibrary:"Kunne ikke fjerne element fra biblioteket",confirmAddLibrary:"Dette vil tilføje {{numShapes}} form(er) til dit bibliotek. Er du sikker?",imageDoesNotContainScene:"Dette billede synes ikke at indeholde scene data. Har du aktiveret scene indlejring under eksport?",cannotRestoreFromImage:"Scene kunne ikke gendannes fra denne billedfil",invalidSceneUrl:"Kunne ikke importere scene fra den angivne URL. Det er enten misdannet eller indeholder ikke gyldige Excalidraw JSON data.",resetLibrary:"Dette vil rydde hele lærredet. Er du sikker?",removeItemsFromsLibrary:"Slet {{count}} vare(r) fra biblioteket?",invalidEncryptionKey:"Krypteringsnøglen skal være på 22 tegn. Live-samarbejde er deaktiveret.",collabOfflineWarning:`Ingen internetforbindelse tilgængelig.
Dine ændringer vil ikke blive gemt!`},R6e={unsupportedFileType:"Filtypen er ikke understøttet.",imageInsertError:"Billedet kunne ikke indsættes. Prøv igen senere...",fileTooBig:"Filen er for stor. Maksimal tilladt størrelse er {{maxSize}}.",svgImageInsertError:"Kunne ikke indsætte SVG-billede. SVG-markup'en ser ugyldig ud.",failedToFetchImage:"Dataene blev ikke hentet.",invalidSVGString:"Ugyldig SVG.",cannotResolveCollabServer:"Kunne ikke oprette forbindelse til samarbejdsserveren. Genindlæs siden og prøv igen.",importLibraryError:"Biblioteket kunne ikke indlæses",collabSaveFailed:"Kunne ikke gemme i databasen. Hvis problemerne fortsætter, bør du gemme din fil lokalt for at sikre, at du ikke mister dit arbejde.",collabSaveFailed_sizeExceeded:"Kunne ikke gemme i databasen, lærredet lader til at være for stort. Du bør gemme filen lokalt for at sikre, at du ikke mister dit arbejde.",imageToolNotSupported:"Billeder er deaktiveret.",brave_measure_text_error:{line1:"Det ser ud til, at du bruger Brave browser med indstillingen <bold>Aggressively Block Fingerprinting</bold> aktiveret.",line2:"Dette kan resultere i brud på <bold>tekstelementerne</bold> i dine tegninger.",line3:"Vi anbefaler kraftigt at deaktivere denne indstilling. Du kan følge <link>disse trin</link> om, hvordan du gør det.",line4:"Hvis deaktivering af denne indstilling ikke løser visning af tekstelementer, åbn venligst et <issueLink>issue</issueLink> på vores GitHub, eller skriv os på <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Indlejringselementer kan ikke tilføjes til biblioteket.",iframe:"IFrame elementer kan ikke tilføjes til biblioteket.",image:"Understøttelse af at tilføje billeder til biblioteket kommer snart!"},asyncPasteFailedOnRead:"Kunne ikke indsætte (kan ikke læse fra systemets udklipsholder).",asyncPasteFailedOnParse:"Kunne ikke indsætte.",copyToSystemClipboardFailed:"Kunne ikke kopiere til udklipsholderen."},N6e={selection:"&Udvalg",image:"Indsæt billeder",rectangle:"Rektangler",diamond:"Diamanter",ellipse:"Ellipser",arrow:"Pile",line:"Linje",freedraw:"Tegn",text:"Tekster",library:"~Bibliotek",lock:"Behold valgte værktøj aktiv efter tegning",penMode:"Pen-tilstand - forhindrer berøring",link:"Tilføj/ Opdater link for en valgt form",eraser:"Slet",frame:"Rammeværktøj",magicframe:"Wireframe til kode",embeddable:"Web-indlejring",laser:"Lasermarkør",hand:"Hånd (panorering værktøj)",extraTools:"Flere værktøjer",mermaidToExcalidraw:"Mermaid til Excalidraw",magicSettings:"AI indstillinger"},G6e={canvasActions:"Lærred handlinger",selectedShapeActions:"Valgte figurhandlinger",shapes:"Former"},U6e={canvasPanning:"For at flytte lærred, hold musehjulet eller mellemrumstasten mens du trækker, eller brug håndværktøjet",linearElement:"Klik for at starte flere punkter, træk for enkelt linje",freeDraw:"Klik og træk, slip når du er færdig",text:"Tip: du kan også tilføje tekst ved at dobbeltklikke hvor som helst med det valgte værktøj",embeddable:"Klik på træk for at oprette en hjemmeside indlejret",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},M6e={cannotShowPreview:"Kan ikke vise forhåndsvisning",canvasTooBig:"Lærredet kan være for stort.",canvasTooBigTip:"Tip: Prøv at flytte de fjerneste elementer lidt tættere sammen."},T6e={headingMain:"Der opstod en fejl. Prøv <button>at genindlæse siden</button>.",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"<button></button> Kopiere og indsæt venligst oplysningerne nedenfor i et GitHub problem.",sceneContent:"Scene indhold:"},Y6e={desc_intro:"Du kan invitere folk til din nuværende scene, så de kan samarbejde med dig.",desc_privacy:"Bare rolig, sessionen bruger end-to-end kryptering, så uanset hvad du tegner vil det forblive privat. Ikke engang vores server vil kunne se, hvad du kommer op med.",button_startSession:"Start session",button_stopSession:"Stop session",desc_inProgressIntro:"Live-samarbejde session er nu begyndt.",desc_shareLink:"Del dette link med enhver, du ønsker at samarbejde med:",desc_exitSession:"",shareTitle:""},H6e={title:"Fejl"},K6e={disk_title:"Gem til disk",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},J6e={blog:"Læs vores blog",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},O6e={title:""},P6e={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},_6e={title:"",content:""},W6e={resetLibrary:"",removeItemsFromLib:""},q6e={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},z6e={tooltip:"",link:""},Z6e={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"Statistik for nørder",total:"",version:"",versionCopy:"Klik for at kopiere",versionNotAvailable:"",width:"Bredde"},V6e={addedToLibrary:"",copyStyles:"Kopieret stilarter.",copyToClipboard:"Kopieret til klippebord.",copyToClipboardAsPng:`Kopieret {{exportSelection}} til klippebord som PNG
({{exportColorScheme}})`,fileSaved:"Fil gemt.",fileSavedToFilename:"Gemt som {filename}",canvas:"canvas",selection:"markering",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},j6e={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},X6e={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},$6e={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},A9e={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},e9e={title:"",button:"",description:"",syntax:"",preview:""},ycr={labels:F6e,library:x6e,buttons:S6e,alerts:L6e,errors:R6e,toolBar:N6e,headings:G6e,hints:U6e,canvasError:M6e,errorSplash:T6e,roomDialog:Y6e,errorDialog:H6e,exportDialog:K6e,helpDialog:J6e,clearCanvasDialog:O6e,publishDialog:P6e,publishSuccessDialog:_6e,confirmDialog:W6e,imageExportDialog:q6e,encrypted:z6e,stats:Z6e,toast:V6e,colors:j6e,welcomeScreen:X6e,colorPicker:$6e,overwriteConfirm:A9e,mermaid:e9e}});var S9e={};Dt(S9e,{alerts:()=>n9e,buttons:()=>a9e,canvasError:()=>c9e,clearCanvasDialog:()=>h9e,colorPicker:()=>k9e,colors:()=>b9e,confirmDialog:()=>f9e,default:()=>wcr,encrypted:()=>D9e,errorDialog:()=>E9e,errorSplash:()=>C9e,errors:()=>o9e,exportDialog:()=>d9e,headings:()=>l9e,helpDialog:()=>I9e,hints:()=>g9e,imageExportDialog:()=>m9e,labels:()=>i9e,library:()=>u9e,mermaid:()=>x9e,overwriteConfirm:()=>F9e,publishDialog:()=>Q9e,publishSuccessDialog:()=>p9e,roomDialog:()=>B9e,stats:()=>y9e,toast:()=>w9e,toolBar:()=>s9e,welcomeScreen:()=>v9e});var i9e,u9e,a9e,n9e,o9e,s9e,l9e,g9e,c9e,C9e,B9e,E9e,d9e,I9e,h9e,Q9e,p9e,f9e,m9e,D9e,y9e,w9e,b9e,v9e,k9e,F9e,x9e,wcr;var L9e=_(()=>{zt();i9e={paste:"Einfügen",pasteAsPlaintext:"Als reinen Text einfügen",pasteCharts:"Diagramme einfügen",selectAll:"Alle auswählen",multiSelect:"Element zur Auswahl hinzufügen",moveCanvas:"Leinwand verschieben",cut:"Ausschneiden",copy:"Kopieren",copyAsPng:"In Zwischenablage kopieren (PNG)",copyAsSvg:"In Zwischenablage kopieren (SVG)",copyText:"In die Zwischenablage als Text kopieren",copySource:"Quelle in Zwischenablage kopieren",convertToCode:"In Code konvertieren",bringForward:"Nach vorne",sendToBack:"In den Hintergrund",bringToFront:"In den Vordergrund",sendBackward:"Nach hinten",delete:"Löschen",copyStyles:"Formatierung kopieren",pasteStyles:"Formatierung übernehmen",stroke:"Strich",background:"Hintergrund",fill:"Füllung",strokeWidth:"Strichstärke",strokeStyle:"Konturstil",strokeStyle_solid:"Durchgezogen",strokeStyle_dashed:"Gestrichelt",strokeStyle_dotted:"Gepunktet",sloppiness:"Sauberkeit",opacity:"Deckkraft",textAlign:"Textausrichtung",edges:"Kanten",sharp:"Scharf",round:"Rund",arrowheads:"Pfeilspitzen",arrowhead_none:"Keine",arrowhead_arrow:"Pfeil",arrowhead_bar:"Balken",arrowhead_circle:"Kreis",arrowhead_circle_outline:"Kreis (Umrandung)",arrowhead_triangle:"Dreieck",arrowhead_triangle_outline:"Dreieck (Umrandung)",arrowhead_diamond:"Raute",arrowhead_diamond_outline:"Raute (Umrandung)",fontSize:"Schriftgröße",fontFamily:"Schriftfamilie",addWatermark:'"Made with Excalidraw" hinzufügen',handDrawn:"Handgezeichnet",normal:"Normal",code:"Code",small:"Klein",medium:"Mittel",large:"Groß",veryLarge:"Sehr groß",solid:"Deckend",hachure:"Schraffiert",zigzag:"Zickzack",crossHatch:"Kreuzschraffiert",thin:"Dünn",bold:"Fett",left:"Links",center:"Zentriert",right:"Rechts",extraBold:"Extra Fett",architect:"Architekt",artist:"Künstler",cartoonist:"Karikaturist",fileTitle:"Dateiname",colorPicker:"Farbauswähler",canvasColors:"Auf Leinwand verwendet",canvasBackground:"Zeichenflächenhintergrund",drawingCanvas:"Leinwand",layers:"Ebenen",actions:"Aktionen",language:"Sprache",liveCollaboration:"Live-Zusammenarbeit...",duplicateSelection:"Duplizieren",untitled:"Unbenannt",name:"Name",yourName:"Dein Name",madeWithExcalidraw:"Made with Excalidraw",group:"Auswahl gruppieren",ungroup:"Gruppierung aufheben",collaborators:"Mitarbeitende",showGrid:"Raster anzeigen",addToLibrary:"Zur Bibliothek hinzufügen",removeFromLibrary:"Aus Bibliothek entfernen",libraryLoadingMessage:"Lade Bibliothek…",libraries:"Bibliotheken durchsuchen",loadingScene:"Lade Zeichnung…",align:"Ausrichten",alignTop:"Obere Kanten",alignBottom:"Untere Kanten",alignLeft:"Linke Kanten",alignRight:"Rechte Kanten",centerVertically:"Vertikal zentrieren",centerHorizontally:"Horizontal zentrieren",distributeHorizontally:"Horizontal verteilen",distributeVertically:"Vertikal verteilen",flipHorizontal:"Horizontal spiegeln",flipVertical:"Vertikal spiegeln",viewMode:"Ansichtsmodus",share:"Teilen",showStroke:"Auswahl für Strichfarbe anzeigen",showBackground:"Hintergrundfarbe auswählen",toggleTheme:"Design umschalten",personalLib:"Persönliche Bibliothek",excalidrawLib:"Excalidraw Bibliothek",decreaseFontSize:"Schriftgröße verkleinern",increaseFontSize:"Schrift vergrößern",unbindText:"Text lösen",bindText:"Text an Container binden",createContainerFromText:"Text in Container einbetten",link:{edit:"Link bearbeiten",editEmbed:"Link bearbeiten & einbetten",create:"Link erstellen",createEmbed:"Link erstellen & einbetten",label:"Link",labelEmbed:"Verlinken & einbetten",empty:"Kein Link festgelegt"},lineEditor:{edit:"Linie bearbeiten",exit:"Linieneditor verlassen"},elementLock:{lock:"Sperren",unlock:"Entsperren",lockAll:"Alle sperren",unlockAll:"Alle entsperren"},statusPublished:"Veröffentlicht",sidebarLock:"Seitenleiste offen lassen",selectAllElementsInFrame:"Alle Elemente im Rahmen auswählen",removeAllElementsFromFrame:"Alle Elemente aus dem Rahmen entfernen",eyeDropper:"Farbe von der Zeichenfläche auswählen",textToDiagram:"Text zu Diagramm",prompt:"Eingabe"},u9e={noItems:"Noch keine Elemente hinzugefügt...",hint_emptyLibrary:"Wähle ein Element auf der Zeichenfläche, um es hier hinzuzufügen. Oder installiere eine Bibliothek aus dem öffentlichen Verzeichnis.",hint_emptyPrivateLibrary:"Wähle ein Element von der Zeichenfläche, um es hier hinzuzufügen."},a9e={clearReset:"Zeichenfläche löschen & Hintergrundfarbe zurücksetzen",exportJSON:"In Datei exportieren",exportImage:"Exportiere Bild...",export:"Speichern als...",copyToClipboard:"In Zwischenablage kopieren",save:"In aktueller Datei speichern",saveAs:"Speichern unter",load:"Öffnen",getShareableLink:"Teilbaren Link erhalten",close:"Schließen",selectLanguage:"Sprache auswählen",scrollBackToContent:"Zurück zum Inhalt",zoomIn:"Vergrößern",zoomOut:"Verkleinern",resetZoom:"Zoom zurücksetzen",menu:"Menü",done:"Fertig",edit:"Bearbeiten",undo:"Rückgängig machen",redo:"Wiederholen",resetLibrary:"Bibliothek zurücksetzen",createNewRoom:"Neuen Raum erstellen",fullScreen:"Vollbildanzeige",darkMode:"Dunkles Design",lightMode:"Helles Design",zenMode:"Zen-Modus",objectsSnapMode:"Einrasten an Objekten",exitZenMode:"Zen-Modus verlassen",cancel:"Abbrechen",clear:"Löschen",remove:"Entfernen",embed:"Einbettung umschalten",publishLibrary:"Veröffentlichen",submit:"Absenden",confirm:"Bestätigen",embeddableInteractionButton:"Klicken, um zu interagieren"},n9e={clearReset:"Dies wird die ganze Zeichenfläche löschen. Bist du dir sicher?",couldNotCreateShareableLink:"Konnte keinen teilbaren Link erstellen.",couldNotCreateShareableLinkTooBig:"Konnte keinen teilbaren Link erstellen: Die Zeichnung ist zu groß",couldNotLoadInvalidFile:"Ungültige Datei konnte nicht geladen werden",importBackendFailed:"Import vom Server ist fehlgeschlagen.",cannotExportEmptyCanvas:"Leere Zeichenfläche kann nicht exportiert werden.",couldNotCopyToClipboard:"Kopieren in die Zwischenablage fehlgeschlagen.",decryptFailed:"Daten konnten nicht entschlüsselt werden.",uploadedSecurly:"Der Upload wurde mit Ende-zu-Ende-Verschlüsselung gespeichert. Weder Excalidraw noch Dritte können den Inhalt einsehen.",loadSceneOverridePrompt:"Das Laden einer externen Zeichnung ersetzt den vorhandenen Inhalt. Möchtest du fortfahren?",collabStopOverridePrompt:`Das Stoppen der Sitzung wird deine vorherige, lokal gespeicherte Zeichnung überschreiben. Bist du dir sicher?
(Wenn du deine lokale Zeichnung behalten möchtest, schließe stattdessen den Browser-Tab.)`,errorAddingToLibrary:"Das Element konnte nicht zur Bibliothek hinzugefügt werden",errorRemovingFromLibrary:"Das Element konnte nicht aus der Bibliothek entfernt werden",confirmAddLibrary:"Dies fügt {{numShapes}} Form(en) zu deiner Bibliothek hinzu. Bist du dir sicher?",imageDoesNotContainScene:"Dieses Bild scheint keine Szenendaten zu enthalten. Hast Du das Einbetten der Szene während des Exports aktiviert?",cannotRestoreFromImage:"Die Zeichnung konnte aus dieser Bilddatei nicht wiederhergestellt werden",invalidSceneUrl:"Die Szene konnte nicht von der angegebenen URL importiert werden. Sie ist entweder fehlerhaft oder enthält keine gültigen Excalidraw JSON-Daten.",resetLibrary:"Dieses löscht deine Bibliothek. Bist du sicher?",removeItemsFromsLibrary:"{{count}} Element(e) aus der Bibliothek löschen?",invalidEncryptionKey:"Verschlüsselungsschlüssel muss 22 Zeichen lang sein. Die Live-Zusammenarbeit ist deaktiviert.",collabOfflineWarning:`Keine Internetverbindung verfügbar.
Deine Änderungen werden nicht gespeichert!`},o9e={unsupportedFileType:"Nicht unterstützter Dateityp.",imageInsertError:"Das Bild konnte nicht eingefügt werden. Versuche es später erneut...",fileTooBig:"Die Datei ist zu groß. Die maximal zulässige Größe ist {{maxSize}}.",svgImageInsertError:"SVG-Bild konnte nicht eingefügt werden. Das SVG-Markup sieht ungültig aus.",failedToFetchImage:"Bild konnte nicht abgerufen werden.",invalidSVGString:"Ungültige SVG.",cannotResolveCollabServer:"Konnte keine Verbindung zum Collab-Server herstellen. Bitte lade die Seite neu und versuche es erneut.",importLibraryError:"Bibliothek konnte nicht geladen werden",collabSaveFailed:"Keine Speicherung in der Backend-Datenbank möglich. Wenn die Probleme weiterhin bestehen, solltest Du Deine Datei lokal speichern, um sicherzustellen, dass Du Deine Arbeit nicht verlierst.",collabSaveFailed_sizeExceeded:"Keine Speicherung in der Backend-Datenbank möglich, die Zeichenfläche scheint zu groß zu sein. Du solltest Deine Datei lokal speichern, um sicherzustellen, dass Du Deine Arbeit nicht verlierst.",imageToolNotSupported:"Bilder sind deaktiviert.",brave_measure_text_error:{line1:"Sieht so aus, als ob Du den Brave-Browser verwendest und die <bold>aggressive Blockierung von Fingerabdrücken</bold> aktiviert hast.",line2:"Dies könnte dazu führen, dass die <bold>Textelemente</bold> in Ihren Zeichnungen zerstört werden.",line3:"Wir empfehlen dringend, diese Einstellung zu deaktivieren. Dazu kannst Du <link>diesen Schritten</link> folgen.",line4:"Wenn die Deaktivierung dieser Einstellung die fehlerhafte Anzeige von Textelementen nicht behebt, öffne bitte ein <issueLink>Ticket</issueLink> auf unserem GitHub oder schreibe uns auf <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Einbettbare Elemente können der Bibliothek nicht hinzugefügt werden.",iframe:"IFrame-Elemente können nicht zur Bibliothek hinzugefügt werden.",image:"Unterstützung für das Hinzufügen von Bildern in die Bibliothek kommt bald!"},asyncPasteFailedOnRead:"Einfügen fehlgeschlagen (konnte aus der Zwischenablage des Systems nicht gelesen werden).",asyncPasteFailedOnParse:"Einfügen fehlgeschlagen.",copyToSystemClipboardFailed:"Kopieren in die Zwischenablage fehlgeschlagen."},s9e={selection:"Auswahl",image:"Bild einfügen",rectangle:"Rechteck",diamond:"Raute",ellipse:"Ellipse",arrow:"Pfeil",line:"Linie",freedraw:"Zeichnen",text:"Text",library:"Bibliothek",lock:"Ausgewähltes Werkzeug nach Zeichnen aktiv lassen",penMode:"Stift-Modus - Berührung verhindern",link:"Link für ausgewählte Form hinzufügen / aktualisieren",eraser:"Radierer",frame:"Rahmenwerkzeug",magicframe:"Wireframe zu Code",embeddable:"Web-Einbettung",laser:"Laserpointer",hand:"Hand (Schwenkwerkzeug)",extraTools:"Weitere Werkzeuge",mermaidToExcalidraw:"Mermaid zu Excalidraw",magicSettings:"KI-Einstellungen"},l9e={canvasActions:"Aktionen für Zeichenfläche",selectedShapeActions:"Aktionen für Auswahl",shapes:"Formen"},g9e={canvasPanning:"Um die Zeichenfläche zu verschieben, halte das Mausrad oder die Leertaste während des Ziehens, oder verwende das Hand-Werkzeug",linearElement:"Klicken für Linie mit mehreren Punkten, Ziehen für einzelne Linie",freeDraw:"Klicke und ziehe. Lass los, wenn du fertig bist",text:"Tipp: Du kannst auch Text hinzufügen, indem du mit dem Auswahlwerkzeug auf eine beliebige Stelle doppelklickst",embeddable:"Klicken und ziehen, um eine Webseiten-Einbettung zu erstellen",text_selected:"Doppelklicken oder Eingabetaste drücken, um Text zu bearbeiten",text_editing:"Drücke Escape oder CtrlOrCmd+Eingabetaste, um die Bearbeitung abzuschließen",linearElementMulti:"Zum Beenden auf den letzten Punkt klicken oder Escape oder Eingabe drücken",lockAngle:"Du kannst Winkel einschränken, indem du SHIFT gedrückt hältst",resize:"Du kannst die Proportionen einschränken, indem du SHIFT während der Größenänderung gedrückt hältst. Halte ALT gedrückt, um die Größe vom Zentrum aus zu ändern",resizeImage:"Du kannst die Größe frei ändern, indem du SHIFT gedrückt hältst; halte ALT, um die Größe vom Zentrum aus zu ändern",rotate:"Du kannst Winkel einschränken, indem du SHIFT während der Drehung gedrückt hältst",lineEditor_info:"CtrlOrCmd halten und Doppelklick oder CtrlOrCmd + Eingabe drücken, um Punkte zu bearbeiten",lineEditor_pointSelected:"Drücke Löschen, um Punkt(e) zu entfernen, CtrlOrCmd+D zum Duplizieren oder ziehe zum Verschieben",lineEditor_nothingSelected:`Wähle einen zu bearbeitenden Punkt (halte SHIFT gedrückt um mehrere Punkte auszuwählen),
oder halte Alt gedrückt und klicke um neue Punkte hinzuzufügen`,placeImage:"Klicken, um das Bild zu platzieren oder klicken und ziehen um seine Größe manuell zu setzen",publishLibrary:"Veröffentliche deine eigene Bibliothek",bindTextToElement:"Zum Hinzufügen Eingabetaste drücken",deepBoxSelect:"Halte CtrlOrCmd gedrückt, um innerhalb der Gruppe auszuwählen, und um Ziehen zu vermeiden",eraserRevert:"Halte Alt gedrückt, um die zum Löschen markierten Elemente zurückzusetzen",firefox_clipboard_write:'Diese Funktion kann wahrscheinlich aktiviert werden, indem die Einstellung "dom.events.asyncClipboard.clipboardItem" auf "true" gesetzt wird. Um die Browsereinstellungen in Firefox zu ändern, besuche die Seite "about:config".',disableSnapping:"Halte CtrlOrCmd gedrückt, um das Einrasten zu deaktivieren"},c9e={cannotShowPreview:"Vorschau kann nicht angezeigt werden",canvasTooBig:"Die Leinwand ist möglicherweise zu groß.",canvasTooBigTip:"Tipp: Schiebe die am weitesten entfernten Elemente ein wenig näher zusammen."},C9e={headingMain:"Es ist ein Fehler aufgetreten. Versuche <button>die Seite neu zu laden.</button>",clearCanvasMessage:"Wenn das Neuladen nicht funktioniert, versuche <button>die Zeichenfläche zu löschen.</button>",clearCanvasCaveat:" Dies wird zum Verlust von Daten führen ",trackedToSentry:"Der Fehler mit der Kennung {{eventId}} wurde in unserem System registriert.",openIssueMessage:"Wir waren sehr vorsichtig und haben deine Zeichnungsinformationen nicht in die Fehlerinformationen aufgenommen. Wenn deine Zeichnung nicht privat ist, unterstütze uns bitte über unseren <button>Bug-Tracker</button>. Bitte teile die unten stehenden Informationen mit uns im GitHub Issue (Kopieren und Einfügen).",sceneContent:"Zeichnungsinhalt:"},B9e={desc_intro:"Du kannst Leute zu deiner aktuellen Zeichnung einladen um mit ihnen zusammenzuarbeiten.",desc_privacy:"Keine Sorge, die Sitzung nutzt eine Ende-zu-Ende-Verschlüsselung. Alles was du zeichnest, bleibt privat. Auch unser Server sieht nicht, was du dir einfallen lässt.",button_startSession:"Sitzung starten",button_stopSession:"Sitzung beenden",desc_inProgressIntro:"Die Live-Sitzung wird nun ausgeführt.",desc_shareLink:"Teile diesen Link mit allen, mit denen du zusammenarbeiten möchtest:",desc_exitSession:"Wenn du die Sitzung beendest, wird deine Verbindung zum Raum getrennt. Du kannst jedoch lokal weiter an der Zeichnung arbeiten. Beachte, dass dies keine Auswirkungen auf andere hat und diese weiterhin gemeinsam an ihrer Version arbeiten können.",shareTitle:"An einer Live-Kollaborationssitzung auf Excalidraw teilnehmen"},E9e={title:"Fehler"},d9e={disk_title:"Auf Festplatte speichern",disk_details:"Exportiere die Zeichnungsdaten in eine Datei, die Du später importieren kannst.",disk_button:"Als Datei speichern",link_title:"Teilbarer Link",link_details:"Als schreibgeschützten Link exportieren.",link_button:"Als Link exportieren",excalidrawplus_description:"Speichere die Szene in deinem Excalidraw+ Arbeitsbereich.",excalidrawplus_button:"Exportieren",excalidrawplus_exportError:"Konnte nicht nach Excalidraw+ exportieren..."},I9e={blog:"Lies unseren Blog",click:"klicken",deepSelect:"Auswahl innerhalb der Gruppe",deepBoxSelect:"Auswahl innerhalb der Gruppe, und Ziehen vermeiden",curvedArrow:"Gebogener Pfeil",curvedLine:"Gebogene Linie",documentation:"Dokumentation",doubleClick:"doppelklicken",drag:"ziehen",editor:"Editor",editLineArrowPoints:"Linien-/Pfeil-Punkte bearbeiten",editText:"Text bearbeiten / Label hinzufügen",github:"Ein Problem gefunden? Informiere uns",howto:"Folge unseren Anleitungen",or:"oder",preventBinding:"Pfeil-Bindung verhindern",tools:"Werkzeuge",shortcuts:"Tastaturkürzel",textFinish:"Bearbeitung beenden (Texteditor)",textNewLine:"Neue Zeile hinzufügen (Texteditor)",title:"Hilfe",view:"Ansicht",zoomToFit:"Zoomen um alle Elemente einzupassen",zoomToSelection:"Auf Auswahl zoomen",toggleElementLock:"Auswahl sperren/entsperren",movePageUpDown:"Seite nach oben/unten verschieben",movePageLeftRight:"Seite nach links/rechts verschieben"},h9e={title:"Zeichenfläche löschen"},Q9e={title:"Bibliothek veröffentlichen",itemName:"Elementname",authorName:"Name des Autors",githubUsername:"GitHub-Benutzername",twitterUsername:"Twitter-Benutzername",libraryName:"Name der Bibliothek",libraryDesc:"Beschreibung der Bibliothek",website:"Webseite",placeholder:{authorName:"Dein Name oder Benutzername",libraryName:"Name deiner Bibliothek",libraryDesc:"Beschreibung deiner Bibliothek, um anderen Nutzern bei der Verwendung zu helfen",githubHandle:"GitHub-Handle (optional), damit du die Bibliothek bearbeiten kannst, wenn sie zur Überprüfung eingereicht wurde",twitterHandle:"Twitter-Benutzername (optional), damit wir wissen, wen wir bei Werbung über Twitter nennen können",website:"Link zu deiner persönlichen Webseite oder zu anderer Seite (optional)"},errors:{required:"Erforderlich",website:"Gültige URL eingeben"},noteDescription:"Sende deine Bibliothek ein, um in die <link>öffentliche Bibliotheks-Repository aufgenommen zu werden</link>damit andere Nutzer sie in ihren Zeichnungen verwenden können.",noteGuidelines:"Die Bibliothek muss zuerst manuell freigegeben werden. Bitte lies die <link>Richtlinien</link> vor dem Absenden. Du benötigst ein GitHub-Konto, um zu kommunizieren und Änderungen vorzunehmen, falls erforderlich, aber es ist nicht unbedingt erforderlich.",noteLicense:"Mit dem Absenden stimmst du zu, dass die Bibliothek unter der <link>MIT-Lizenz, </link>die zusammengefasst beinhaltet, dass jeder sie ohne Einschränkungen nutzen kann.",noteItems:"Jedes Bibliothekselement muss einen eigenen Namen haben, damit es gefiltert werden kann. Die folgenden Bibliothekselemente werden hinzugefügt:",atleastOneLibItem:"Bitte wähle mindestens ein Bibliothekselement aus, um zu beginnen",republishWarning:"Hinweis: Einige der ausgewählten Elemente sind bereits als veröffentlicht/eingereicht markiert. Du solltest Elemente nur erneut einreichen, wenn Du eine existierende Bibliothek oder Einreichung aktualisierst."},p9e={title:"Bibliothek übermittelt",content:"Vielen Dank {{authorName}}. Deine Bibliothek wurde zur Überprüfung eingereicht. Du kannst den Status verfolgen<link>hier</link>"},f9e={resetLibrary:"Bibliothek zurücksetzen",removeItemsFromLib:"Ausgewählte Elemente aus der Bibliothek entfernen"},m9e={header:"Bild exportieren",label:{withBackground:"Hintergrund",onlySelected:"Nur ausgewählte",darkMode:"Dunkler Modus",embedScene:"Szene einbetten",scale:"Skalierung",padding:"Abstand"},tooltip:{embedScene:`Die Zeichnungsdaten werden in der exportierten PNG/SVG-Datei gespeichert, sodass das Dokument später weiter bearbeitet werden kann.
Dieses wird die exportierte Datei vergrößern.`},title:{exportToPng:"Als PNG exportieren",exportToSvg:"Als SVG exportieren",copyPngToClipboard:"PNG in die Zwischenablage kopieren"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"In Zwischenablage kopieren"}},D9e={tooltip:"Da deine Zeichnungen Ende-zu-Ende verschlüsselt werden, sehen auch unsere Excalidraw-Server sie niemals.",link:"Blogbeitrag über Ende-zu-Ende-Verschlüsselung in Excalidraw"},y9e={angle:"Winkel",element:"Element",elements:"Elemente",height:"Höhe",scene:"Zeichnung",selected:"Ausgewählt",storage:"Speicher",title:"Statistiken für Nerds",total:"Gesamt",version:"Version",versionCopy:"Zum Kopieren klicken",versionNotAvailable:"Version nicht verfügbar",width:"Breite"},w9e={addedToLibrary:"Zur Bibliothek hinzugefügt",copyStyles:"Formatierungen kopiert.",copyToClipboard:"In die Zwischenablage kopiert.",copyToClipboardAsPng:`{{exportSelection}} als PNG in die Zwischenablage kopiert
({{exportColorScheme}})`,fileSaved:"Datei gespeichert.",fileSavedToFilename:"Als {filename} gespeichert",canvas:"Zeichenfläche",selection:"Auswahl",pasteAsSingleElement:`Verwende {{shortcut}} , um als einzelnes Element
einzufügen oder in einen existierenden Texteditor einzufügen`,unableToEmbed:"Einbetten dieser URL ist derzeit nicht zulässig. Erstelle einen Issue auf GitHub, um die URL freigeben zu lassen",unrecognizedLinkFormat:"Der Link, den Du eingebettet hast, stimmt nicht mit dem erwarteten Format überein. Bitte versuche den 'embed' String einzufügen, der von der Quellseite zur Verfügung gestellt wird"},b9e={transparent:"Transparent",black:"Schwarz",white:"Weiß",red:"Rot",pink:"Pink",grape:"Traube",violet:"Violett",gray:"Grau",blue:"Blau",cyan:"Cyan",teal:"Blaugrün",green:"Grün",yellow:"Gelb",orange:"Orange",bronze:"Bronze"},v9e={app:{center_heading:"Alle Daten werden lokal in Deinem Browser gespeichert.",center_heading_plus:"Möchtest du stattdessen zu Excalidraw+ gehen?",menuHint:"Exportieren, Einstellungen, Sprachen, ..."},defaults:{menuHint:"Exportieren, Einstellungen und mehr...",center_heading:"Diagramme. Einfach. Gemacht.",toolbarHint:"Wähle ein Werkzeug & beginne zu zeichnen!",helpHint:"Kurzbefehle & Hilfe"}},k9e={mostUsedCustomColors:"Beliebteste benutzerdefinierte Farben",colors:"Farben",shades:"Schattierungen",hexCode:"Hex-Code",noShades:"Keine Schattierungen für diese Farbe verfügbar"},F9e={action:{exportToImage:{title:"Als Bild exportieren",button:"Als Bild exportieren",description:"Exportiere die Zeichnungsdaten als ein Bild, von dem Du später importieren kannst."},saveToDisk:{title:"Auf Festplatte speichern",button:"Auf Festplatte speichern",description:"Exportiere die Zeichnungsdaten in eine Datei, von der Du später importieren kannst."},excalidrawPlus:{title:"Excalidraw+",button:"Export nach Excalidraw+",description:"Speichere die Szene in deinem Excalidraw+-Arbeitsbereich."}},modal:{loadFromFile:{title:"Aus Datei laden",button:"Aus Datei laden",description:"Das Laden aus einer Datei wird <bold>Deinen vorhandenen Inhalt ersetzen</bold>.<br></br>Du kannst Deine Zeichnung zuerst mit einer der folgenden Optionen sichern."},shareableLink:{title:"Aus Link laden",button:"Meinen Inhalt ersetzen",description:"Das Laden einer externen Zeichnung wird <bold>Deinen vorhandenen Inhalt ersetzen</bold>.<br></br>Du kannst Deine Zeichnung zuerst mit einer der folgenden Optionen sichern."}}},x9e={title:"Mermaid zu Excalidraw",button:"Einfügen",description:"Derzeit werden nur <flowchartLink>Flussdiagramme</flowchartLink>, <sequenceLink>Sequenzdiagramme</sequenceLink> und <classLink>Klassendiagramme</classLink> unterstützt. Die anderen Typen werden als Bild in Excalidraw dargestellt.",syntax:"Mermaid-Syntax",preview:"Vorschau"},wcr={labels:i9e,library:u9e,buttons:a9e,alerts:n9e,errors:o9e,toolBar:s9e,headings:l9e,hints:g9e,canvasError:c9e,errorSplash:C9e,roomDialog:B9e,errorDialog:E9e,exportDialog:d9e,helpDialog:I9e,clearCanvasDialog:h9e,publishDialog:Q9e,publishSuccessDialog:p9e,confirmDialog:f9e,imageExportDialog:m9e,encrypted:D9e,stats:y9e,toast:w9e,colors:b9e,welcomeScreen:v9e,colorPicker:k9e,overwriteConfirm:F9e,mermaid:x9e}});var a5e={};Dt(a5e,{alerts:()=>U9e,buttons:()=>G9e,canvasError:()=>K9e,clearCanvasDialog:()=>q9e,colorPicker:()=>r5e,colors:()=>e5e,confirmDialog:()=>V9e,default:()=>bcr,encrypted:()=>X9e,errorDialog:()=>P9e,errorSplash:()=>J9e,errors:()=>M9e,exportDialog:()=>_9e,headings:()=>Y9e,helpDialog:()=>W9e,hints:()=>H9e,imageExportDialog:()=>j9e,labels:()=>R9e,library:()=>N9e,mermaid:()=>u5e,overwriteConfirm:()=>i5e,publishDialog:()=>z9e,publishSuccessDialog:()=>Z9e,roomDialog:()=>O9e,stats:()=>$9e,toast:()=>A5e,toolBar:()=>T9e,welcomeScreen:()=>t5e});var R9e,N9e,G9e,U9e,M9e,T9e,Y9e,H9e,K9e,J9e,O9e,P9e,_9e,W9e,q9e,z9e,Z9e,V9e,j9e,X9e,$9e,A5e,e5e,t5e,r5e,i5e,u5e,bcr;var n5e=_(()=>{zt();R9e={paste:"Επικόλληση",pasteAsPlaintext:"Επικόλληση ως απλό κείμενο",pasteCharts:"Επικόλληση γραφημάτων",selectAll:"Επιλογή όλων",multiSelect:"Προσθέστε το στοιχείο στην επιλογή",moveCanvas:"Μετακίνηση καμβά",cut:"Αποκοπή",copy:"Αντιγραφή",copyAsPng:"Αντιγραφή στο πρόχειρο ως PNG",copyAsSvg:"Αντιγραφή στο πρόχειρο ως SVG",copyText:"Αντιγραφή στο πρόχειρο ως κείμενο",copySource:"",convertToCode:"",bringForward:"Στο προσκήνιο",sendToBack:"Ένα επίπεδο πίσω",bringToFront:"Ένα επίπεδο μπροστά",sendBackward:"Στο παρασκήνιο",delete:"Διαγραφή",copyStyles:"Αντιγραφή εμφάνισης",pasteStyles:"Επικόλληση εμφάνισης",stroke:"Μολυβιά",background:"Φόντο",fill:"Γέμισμα",strokeWidth:"Πάχος μολυβιάς",strokeStyle:"Στυλ περιγράμματος",strokeStyle_solid:"Συμπαγής",strokeStyle_dashed:"Διακεκομμένη με παύλες",strokeStyle_dotted:"Διακεκομμένη με τελείες",sloppiness:"Ακαταστασία",opacity:"Διαφάνεια",textAlign:"Στοίχιση κειμένου",edges:"Άκρες",sharp:"Οξύ",round:"Στρογγυλό",arrowheads:"Σύμβολα βελών",arrowhead_none:"Κανένα",arrowhead_arrow:"Βέλος",arrowhead_bar:"Μπάρα",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Τρίγωνο",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Μέγεθος γραμματοσειράς",fontFamily:"Γραμματοσειρά",addWatermark:'Προσθήκη "Φτιαγμένο με Excalidraw"',handDrawn:"Σχεδιασμένο στο χέρι",normal:"Κανονική",code:"Κώδικας",small:"Μικρό",medium:"Μεσαίο",large:"Μεγάλο",veryLarge:"Πολύ μεγάλο",solid:"Συμπαγής",hachure:"Εκκόλαψη",zigzag:"",crossHatch:"Διασταυρούμενη εκκόλαψη",thin:"Λεπτή",bold:"Έντονη",left:"Αριστερά",center:"Κέντρο",right:"Δεξιά",extraBold:"Πολύ έντονη",architect:"Αρχιτέκτονας",artist:"Καλλιτέχνης",cartoonist:"Σκιτσογράφος",fileTitle:"Όνομα αρχείου",colorPicker:"Επιλογή Χρώματος",canvasColors:"Χρησιμοποείται στον καμβά",canvasBackground:"Φόντο καμβά",drawingCanvas:"Σχεδίαση καμβά",layers:"Στρώματα",actions:"Ενέργειες",language:"Γλώσσα",liveCollaboration:"Live συνεργασία...",duplicateSelection:"Δημιουργία αντιγράφου",untitled:"Χωρίς τίτλο",name:"Όνομα",yourName:"Το όνομά σου",madeWithExcalidraw:"Φτιαγμένο με Excalidraw",group:"Δημιουργία ομάδας από επιλογή",ungroup:"Κατάργηση ομάδας από επιλογή",collaborators:"Συνεργάτες",showGrid:"Προβολή πλέγματος",addToLibrary:"Προσθήκη στη βιβλιοθήκη",removeFromLibrary:"Αφαίρεση από τη βιβλιοθήκη",libraryLoadingMessage:"Φόρτωση βιβλιοθήκης…",libraries:"Άλλες βιβλιοθήκες",loadingScene:"Φόρτωση σκηνής…",align:"Στοίχιση",alignTop:"Στοίχιση πάνω",alignBottom:"Στοίχιση κάτω",alignLeft:"Στοίχιση αριστερά",alignRight:"Στοίχιση δεξιά",centerVertically:"Κέντρο κάθετα",centerHorizontally:"Κέντρο οριζόντια",distributeHorizontally:"Οριζόντια κατανομή",distributeVertically:"Κατακόρυφη κατανομή",flipHorizontal:"Οριζόντια αναστροφή",flipVertical:"Κατακόρυφη αναστροφή",viewMode:"Λειτουργία προβολής",share:"Κοινοποίηση",showStroke:"Εμφάνιση επιλογέα χρωμάτων πινελιάς",showBackground:"Εμφάνιση επιλογέα χρώματος φόντου",toggleTheme:"Εναλλαγή θέματος",personalLib:"Προσωπική Βιβλιοθήκη",excalidrawLib:"Βιβλιοθήκη Excalidraw",decreaseFontSize:"Μείωση μεγέθους γραμματοσειράς",increaseFontSize:"Αύξηση μεγέθους γραμματοσειράς",unbindText:"Αποσύνδεση κειμένου",bindText:"Δέσμευση κειμένου στο δοχείο",createContainerFromText:"",link:{edit:"Επεξεργασία συνδέσμου",editEmbed:"",create:"Δημιουργία συνδέσμου",createEmbed:"",label:"Σύνδεσμος",labelEmbed:"",empty:""},lineEditor:{edit:"Επεξεργασία γραμμής",exit:"Έξοδος επεξεργαστή κειμένου"},elementLock:{lock:"Κλείδωμα",unlock:"Ξεκλείδωμα",lockAll:"Κλείδωμα όλων",unlockAll:"Ξεκλείδωμα όλων"},statusPublished:"Δημοσιευμένο",sidebarLock:"Κρατήστε την πλαϊνή μπάρα ανοιχτή",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},N9e={noItems:"Δεν έχουν προστεθεί αντικείμενα ακόμη...",hint_emptyLibrary:"Επιλέξτε ένα στοιχείο στον καμβά για να το προσθέσετε εδώ, ή εγκαταστήστε μια βιβλιοθήκη από το δημόσιο αποθετήριο, παρακάτω.",hint_emptyPrivateLibrary:"Επιλέξτε ένα στοιχείο στον καμβά για να το προσθέσετε εδώ."},G9e={clearReset:"Επαναφορά του καμβά",exportJSON:"Εξαγωγή σε αρχείο",exportImage:"Εξαγωγή εικόνας...",export:"Αποθήκευση ως...",copyToClipboard:"Αντιγραφή στο πρόχειρο",save:"Αποθήκευση στο τρέχον αρχείο",saveAs:"Αποθήκευση ως",load:"Άνοιγμα",getShareableLink:"Δημόσιος σύνδεσμος",close:"Κλείσιμο",selectLanguage:"Επιλογή γλώσσας",scrollBackToContent:"Μετακινηθείτε πίσω στο περιεχόμενο",zoomIn:"Μεγέθυνση",zoomOut:"Σμίκρυνση",resetZoom:"Επαναφορά μεγέθυνσης",menu:"Μενού",done:"Τέλος",edit:"Επεξεργασία",undo:"Αναίρεση",redo:"Επαναφορά",resetLibrary:"Καθαρισμός βιβλιοθήκης",createNewRoom:"Δημιουργία νέου χώρου",fullScreen:"Πλήρης οθόνη",darkMode:"Σκοτεινή λειτουργία",lightMode:"Φωτεινή λειτουργία",zenMode:"Λειτουργία Zεν",objectsSnapMode:"",exitZenMode:"Έξοδος από την λειτουργία Zen",cancel:"Ακύρωση",clear:"Καθαρισμός",remove:"Κατάργηση",embed:"",publishLibrary:"Δημοσίευση",submit:"Υποβολή",confirm:"Επιβεβαίωση",embeddableInteractionButton:""},U9e={clearReset:"Αυτό θα σβήσει ολόκληρο τον καμβά. Είσαι σίγουρος;",couldNotCreateShareableLink:"Δεν ήταν δυνατή η δημιουργία συνδέσμου κοινής χρήσης.",couldNotCreateShareableLinkTooBig:"Δεν ήταν δυνατή η δημιουργία κοινόχρηστου συνδέσμου: η σκηνή είναι πολύ μεγάλη",couldNotLoadInvalidFile:"Δεν μπόρεσε να ανοίξει εσφαλμένο αρχείο",importBackendFailed:"Η εισαγωγή από το backend απέτυχε.",cannotExportEmptyCanvas:"Δεν είναι δυνατή η εξαγωγή κενού καμβά.",couldNotCopyToClipboard:"Αδυναμία αντιγραφής στο πρόχειρο.",decryptFailed:"Δεν ήταν δυνατή η αποκρυπτογράφηση δεδομένων.",uploadedSecurly:"Η μεταφόρτωση έχει εξασφαλιστεί με κρυπτογράφηση από άκρο σε άκρο, πράγμα που σημαίνει ότι ο διακομιστής Excalidraw και τρίτα μέρη δεν μπορούν να διαβάσουν το περιεχόμενο.",loadSceneOverridePrompt:"Η φόρτωση εξωτερικού σχεδίου θα αντικαταστήσει το υπάρχον περιεχόμενο. Επιθυμείτε να συνεχίσετε;",collabStopOverridePrompt:`Η διακοπή της συνεδρίας θα αντικαταστήσει το προηγούμενο, τοπικά αποθηκευμένο σχέδιο. Είστε σίγουροι?
(Αν θέλετε να διατηρήσετε το τοπικό σας σχέδιο, απλά κλείστε την καρτέλα του προγράμματος περιήγησης.)`,errorAddingToLibrary:"Αδυναμία προσθήκης αντικειμένου στη βιβλιοθήκη",errorRemovingFromLibrary:"Αδυναμία αφαίρεσης αντικειμένου από τη βιβλιοθήκη",confirmAddLibrary:"Αυτό θα προσθέσει {{numShapes}} σχήμα(τα) στη βιβλιοθήκη σας. Είστε σίγουροι;",imageDoesNotContainScene:"Αυτή η εικόνα δεν φαίνεται να περιέχει δεδομένα σκηνής. Έχετε ενεργοποιήσει την ενσωμάτωση σκηνής κατά την εξαγωγή;",cannotRestoreFromImage:"Η σκηνή δεν ήταν δυνατό να αποκατασταθεί από αυτό το αρχείο εικόνας",invalidSceneUrl:"Δεν ήταν δυνατή η εισαγωγή σκηνής από το URL που δώσατε. Είτε έχει λάθος μορφή, είτε δεν περιέχει έγκυρα δεδομένα JSON Excalidraw.",resetLibrary:"Αυτό θα καθαρίσει τη βιβλιοθήκη σας. Είστε σίγουροι;",removeItemsFromsLibrary:"Διαγραφή {{count}} αντικειμένου(ων) από τη βιβλιοθήκη;",invalidEncryptionKey:"Το κλειδί κρυπτογράφησης πρέπει να είναι 22 χαρακτήρες. Η ζωντανή συνεργασία είναι απενεργοποιημένη.",collabOfflineWarning:`Δεν υπάρχει διαθέσιμη σύνδεση στο internet.
Οι αλλαγές σας δεν θα αποθηκευτούν!`},M9e={unsupportedFileType:"Μη υποστηριζόμενος τύπος αρχείου.",imageInsertError:"Αδυναμία εισαγωγής εικόνας. Προσπαθήστε ξανά αργότερα...",fileTooBig:"Το αρχείο είναι πολύ μεγάλο. Το μέγιστο επιτρεπόμενο μέγεθος είναι {{maxSize}}.",svgImageInsertError:"Αδυναμία εισαγωγής εικόνας SVG. Η σήμανση της SVG δεν φαίνεται έγκυρη.",failedToFetchImage:"",invalidSVGString:"Μη έγκυρο SVG.",cannotResolveCollabServer:"Αδυναμία σύνδεσης με τον διακομιστή συνεργασίας. Παρακαλώ ανανεώστε τη σελίδα και προσπαθήστε ξανά.",importLibraryError:"Αδυναμία φόρτωσης βιβλιοθήκης",collabSaveFailed:"Η αποθήκευση στη βάση δεδομένων δεν ήταν δυνατή. Αν το προβλήματα παραμείνει, θα πρέπει να αποθηκεύσετε το αρχείο σας τοπικά για να βεβαιωθείτε ότι δεν χάνετε την εργασία σας.",collabSaveFailed_sizeExceeded:"Η αποθήκευση στη βάση δεδομένων δεν ήταν δυνατή, ο καμβάς φαίνεται να είναι πολύ μεγάλος. Θα πρέπει να αποθηκεύσετε το αρχείο τοπικά για να βεβαιωθείτε ότι δεν θα χάσετε την εργασία σας.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},T9e={selection:"Επιλογή",image:"Εισαγωγή εικόνας",rectangle:"Ορθογώνιο",diamond:"Ρόμβος",ellipse:"Έλλειψη",arrow:"Βέλος",line:"Γραμμή",freedraw:"Σχεδίαση",text:"Κείμενο",library:"Βιβλιοθήκη",lock:"Κράτησε επιλεγμένο το εργαλείο μετά το σχέδιο",penMode:"Λειτουργία μολυβιού - αποτροπή αφής",link:"Προσθήκη/ Ενημέρωση συνδέσμου για ένα επιλεγμένο σχήμα",eraser:"Γόμα",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},Y9e={canvasActions:"Ενέργειες καμβά",selectedShapeActions:"Επιλεγμένες ενέργειες σχήματος",shapes:"Σχήματα"},H9e={canvasPanning:"",linearElement:"Κάνε κλικ για να ξεκινήσεις πολλαπλά σημεία, σύρε για μια γραμμή",freeDraw:"Κάντε κλικ και σύρτε, απελευθερώσατε όταν έχετε τελειώσει",text:"Tip: μπορείτε επίσης να προσθέστε κείμενο με διπλό-κλικ οπουδήποτε με το εργαλείο επιλογών",embeddable:"",text_selected:"Κάντε διπλό κλικ ή πατήστε ENTER για να επεξεργαστείτε το κείμενο",text_editing:"Πατήστε Escape ή CtrlOrCmd+ENTER για να ολοκληρώσετε την επεξεργασία",linearElementMulti:"Κάνε κλικ στο τελευταίο σημείο ή πάτησε Escape ή Enter για να τελειώσεις",lockAngle:"Μπορείτε να περιορίσετε τη γωνία κρατώντας πατημένο το SHIFT",resize:`Μπορείς να περιορίσεις τις αναλογίες κρατώντας το SHIFT ενώ αλλάζεις μέγεθος,
κράτησε πατημένο το ALT για αλλαγή μεγέθους από το κέντρο`,resizeImage:`Μπορείτε να αλλάξετε το μέγεθος ελεύθερα κρατώντας πατημένο το SHIFT,
κρατήστε πατημένο το ALT για να αλλάξετε το μέγεθος από το κέντρο`,rotate:"Μπορείς να περιορίσεις τις γωνίες κρατώντας πατημένο το πλήκτρο SHIFT κατά την περιστροφή",lineEditor_info:"Κρατήστε πατημένο Ctrl ή Cmd και πατήστε το πλήκτρο Ctrl ή Cmd + Enter για επεξεργασία σημείων",lineEditor_pointSelected:`Πατήστε Διαγραφή για αφαίρεση σημείου(ων),
CtrlOrCmd+D για αντιγραφή, ή σύρετε για μετακίνηση`,lineEditor_nothingSelected:`Επιλέξτε ένα σημείο για να επεξεργαστείτε (κρατήστε πατημένο το SHIFT για να επιλέξετε πολλαπλά),
ή κρατήστε πατημένο το Alt και κάντε κλικ για να προσθέσετε νέα σημεία`,placeImage:"Κάντε κλικ για να τοποθετήσετε την εικόνα ή κάντε κλικ και σύρετε για να ορίσετε το μέγεθός της χειροκίνητα",publishLibrary:"Δημοσιεύστε τη δική σας βιβλιοθήκη",bindTextToElement:"Πατήστε Enter για προσθήκη κειμένου",deepBoxSelect:"Κρατήστε πατημένο το CtrlOrCmd για να επιλέξετε βαθιά, και να αποτρέψετε τη μεταφορά",eraserRevert:"Κρατήστε πατημένο το Alt για να επαναφέρετε τα στοιχεία που σημειώθηκαν για διαγραφή",firefox_clipboard_write:'Αυτή η επιλογή μπορεί πιθανώς να ενεργοποιηθεί αλλάζοντας την ρύθμιση "dom.events.asyncClipboard.clipboardItem" σε "true". Για να αλλάξετε τις ρυθμίσεις του προγράμματος περιήγησης στο Firefox, επισκεφθείτε τη σελίδα "about:config".',disableSnapping:""},K9e={cannotShowPreview:"Αδυναμία εμφάνισης προεπισκόπησης",canvasTooBig:"Ο καμβάς μπορεί να είναι μεγάλος.",canvasTooBigTip:"Συμβουλή: προσπαθήστε να μετακινήσετε τα πιο απομακρυσμένα στοιχεία λίγο πιο κοντά μαζί."},J9e={headingMain:"Συνέβη κάποιο σφάλμα. Προσπάθησε <button>φόρτωσε ξανά την σελίδα.</button>",clearCanvasMessage:"Εάν το παραπάνω δεν δουλέψει, προσπάθησε <button>καθαρίσετε τον κανβά.</button>",clearCanvasCaveat:" Αυτό θα προκαλέσει απώλεια της δουλειάς σου ",trackedToSentry:"Το σφάλμα με αναγνωριστικό {{eventId}} παρακολουθήθηκε στο σύστημά μας.",openIssueMessage:"Ήμασταν πολύ προσεκτικοί για να μην συμπεριλάβουμε τις πληροφορίες της σκηνής σου στο σφάλμα. Αν η σκηνή σου δεν είναι ιδιωτική, παρακαλώ σκέψου να ακολουθήσεις το δικό μας <button>ανιχνευτής σφαλμάτων.</button> Παρακαλώ να συμπεριλάβετε τις παρακάτω πληροφορίες, αντιγράφοντας και επικολλώντας το ζήτημα στο GitHub.",sceneContent:"Περιεχόμενο σκηνής:"},O9e={desc_intro:"Μπορείς να προσκαλέσεις άλλους να δουλέψουν μαζί σου.",desc_privacy:"Μην ανησυχείς, η συνεδρία χρησιμοποιεί κρυπτογράφηση από σημείο σε σημείο, άρα οτιδήποτε κάνεις θα παραμείνει ανοιχτό μόνο σε εσένα. Ούτε οι μηχανές μας μπορούν να δουν τι κάνεις.",button_startSession:"Έναρξη Συνεδρίας",button_stopSession:"Τερματισμός Συνεδρίας",desc_inProgressIntro:"Η ζωντανή συνεργασία με άλλους είναι σε ενεργή.",desc_shareLink:"Μοιραστείτε τον σύνδεσμο με όποιον θέλετε να δουλέψετε μαζί:",desc_exitSession:"Η διακοπή θα σας αποσυνδέσει από το δωμάτιο, αλλά θα μπορείτε να συνεχίσετε να δουλεύετε στον πίνακα, τοπικά. Σημειώσατε ότι αυτό δεν θα επηρεάσει τον πίνακα άλλων, και θα μπορούν ακόμα να συνεισφέρουν στην δική τους έκδοση.",shareTitle:"Συμμετάσχετε σε μια ζωντανή συνεδρία συνεργασίας για το Excalidraw"},P9e={title:"Σφάλμα"},_9e={disk_title:"Αποθήκευση στο δίσκο",disk_details:"Εξαγωγή δεδομένων σκηνής σε ένα αρχείο από το οποίο μπορείτε να εισάγετε αργότερα.",disk_button:"Αποθήκευση σε αρχείο",link_title:"Κοινόχρηστος σύνδεσμος",link_details:"Εξαγωγή ως σύνδεσμο μόνο για ανάγνωση.",link_button:"Εξαγωγή σε Σύνδεση",excalidrawplus_description:"Αποθηκεύστε τη σκηνή στο χώρο εργασίας σας Excalidraw+.",excalidrawplus_button:"Εξαγωγή",excalidrawplus_exportError:"Δεν ήταν δυνατή η εξαγωγή στο Excalidraw+ αυτή τη στιγμή..."},W9e={blog:"Διαβάστε το Blog μας",click:"κλικ",deepSelect:"Βαθιά επιλογή",deepBoxSelect:"Βαθιά επιλογή μέσα στο πλαίσιο και αποτροπή συρσίματος",curvedArrow:"Κυρτό βέλος",curvedLine:"Κυρτή γραμμή",documentation:"Εγχειρίδιο",doubleClick:"διπλό κλικ",drag:"σύρε",editor:"Επεξεργαστής",editLineArrowPoints:"",editText:"",github:"Βρήκατε πρόβλημα; Υποβάλετε το",howto:"Ακολουθήστε τους οδηγούς μας",or:"ή",preventBinding:"Αποτροπή δέσμευσης βέλων",tools:"Εργαλεία",shortcuts:"Συντομεύσεις πληκτρολογίου",textFinish:"Ολοκλήρωση επεξεργασίας (επεξεργαστής κειμένου)",textNewLine:"Προσθήκη νέας γραμμής (επεξεργαστής κειμένου)",title:"Βοήθεια",view:"Προβολή",zoomToFit:"Zoom ώστε να χωρέσουν όλα τα στοιχεία",zoomToSelection:"Ζουμ στην επιλογή",toggleElementLock:"Κλείδωμα/Ξεκλείδωμα επιλογής",movePageUpDown:"Μετακίνηση σελίδας πάνω/κάτω",movePageLeftRight:"Μετακίνηση σελίδας αριστερά/δεξιά"},q9e={title:"Καθαρισμός καμβά"},z9e={title:"Δημοσίευση βιβλιοθήκης",itemName:"Όνομα αντικειμένου",authorName:"Όνομα δημιουργού",githubUsername:"GitHub username",twitterUsername:"Twitter username",libraryName:"Όνομα βιβλιοθήκης",libraryDesc:"Περιγραφή βιβλιοθήκης",website:"Ιστοσελίδα",placeholder:{authorName:"Όνομα ή όνομα χρήστη",libraryName:"Όνομα της βιβλιοθήκης σας",libraryDesc:"Περιγραφή της βιβλιοθήκης σας ώστε να βοηθήσει το κοινό να κατανοήσει τη χρήση της",githubHandle:"Όνομα χρήστη στο GitHub (προαιρετικό), ώστε να μπορείτε να επεξεργαστείτε τη βιβλιοθήκη αφού υποβληθεί για αξιολόγηση",twitterHandle:"Όνομα χρήστη Twitter (προαιρετικό), ώστε να γνωρίζουμε σε ποιον/η να δώσουμε εύσημα κατά την προώθηση μέσω Twitter",website:"Σύνδεσμος για την προσωπική σας ιστοσελίδα ή αλλού (προαιρετικό)"},errors:{required:"Απαιτείται",website:"Εισάγετε μια έγκυρη διεύθυνση URL"},noteDescription:"Υποβάλετε τη βιβλιοθήκη σας για να συμπεριληφθεί στο <link>δημόσιο αποθετήριο βιβλιοθήκης</link>ώστε να χρησιμοποιηθεί από άλλα άτομα στα σχέδιά τους.",noteGuidelines:"Η βιβλιοθήκη πρέπει πρώτα να εγκριθεί χειροκίνητα. Παρακαλώ διαβάστε τους <link>οδηγίες</link> πριν την υποβολή. Θα χρειαστείτε έναν λογαριασμό GitHub για την επικοινωνία και για να προβείτε σε αλλαγές εφ' όσον χρειαστεί, αλλά δεν είναι αυστηρή απαίτηση.",noteLicense:"Με την υποβολή, συμφωνείτε ότι η βιβλιοθήκη θα δημοσιευθεί υπό την <link>Άδεια MIT, </link>που εν συντομία σημαίνει ότι ο καθένας μπορεί να τα χρησιμοποιήσει χωρίς περιορισμούς.",noteItems:"Κάθε αντικείμενο της βιβλιοθήκης πρέπει να έχει το δικό του όνομα ώστε να μπορεί να φιλτραριστεί. Θα συμπεριληφθούν τα ακόλουθα αντικείμενα βιβλιοθήκης:",atleastOneLibItem:"Παρακαλώ επιλέξτε τουλάχιστον ένα αντικείμενο βιβλιοθήκης για να ξεκινήσετε",republishWarning:"Σημείωση: μερικά από τα επιλεγμένα αντικέιμενα έχουν ήδη επισημανθεί ως δημοσιευμένα/υποβεβλημένα. Θα πρέπει να υποβάλετε αντικείμενα εκ νέου μόνο για να ενημερώσετε μία ήδη υπάρχουσα βιβλιοθήκη ή υποβολή."},Z9e={title:"Η βιβλιοθήκη υποβλήθηκε",content:"Ευχαριστούμε {{authorName}}. Η βιβλιοθήκη σας έχει υποβληθεί για αξιολόγηση. Μπορείτε να παρακολουθείτε τη διαδικασία<link>εδώ</link>"},V9e={resetLibrary:"Καθαρισμός βιβλιοθήκης",removeItemsFromLib:"Αφαίρεση επιλεγμένων αντικειμένων από τη βιβλιοθήκη"},j9e={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},X9e={tooltip:"Τα σχέδιά σου είναι κρυπτογραφημένα από άκρο σε άκρο, έτσι δεν θα είναι ποτέ ορατά μέσα από τους διακομιστές του Excalidraw.",link:"Blog post στην κρυπτογράφηση end-to-end στο Excalidraw"},$9e={angle:"Γωνία",element:"Στοιχείο",elements:"Στοιχεία",height:"Ύψος",scene:"Σκηνή",selected:"Επιλεγμένα",storage:"Χώρος",title:"Στατιστικά για σπασίκλες",total:"Σύνολο ",version:"Έκδοση",versionCopy:"Κάνε κλικ για αντιγραφή",versionNotAvailable:"Έκδοση μη διαθέσιμη",width:"Πλάτος"},A5e={addedToLibrary:"Προστέθηκε στη βιβλιοθήκη",copyStyles:"Αντιγράφηκαν στυλ.",copyToClipboard:"Αντιγράφηκε στο πρόχειρο.",copyToClipboardAsPng:`Αντιγράφηκε {{exportSelection}} στο πρόχειρο ως PNG
({{exportColorScheme}})`,fileSaved:"Το αρχείο αποθηκεύτηκε.",fileSavedToFilename:"Αποθηκεύτηκε στο {filename}",canvas:"καμβάς",selection:"επιλογή",pasteAsSingleElement:`Χρησιμοποίησε το {{shortcut}} για να επικολλήσεις ως ένα μόνο στοιχείο,
ή να επικολλήσεις σε έναν υπάρχοντα επεξεργαστή κειμένου`,unableToEmbed:"",unrecognizedLinkFormat:""},e5e={transparent:"Διαφανές",black:"Μαύρο",white:"Λευκό",red:"Κόκκινο",pink:"Ροζ",grape:"Σταφυλί",violet:"Βιολετί",gray:"Γκρι",blue:"Μπλε",cyan:"Κυανό",teal:"Τιρκουάζ",green:"Πράσινο",yellow:"Κίτρινο",orange:"Πορτοκαλί",bronze:"Χαλκινο"},t5e={app:{center_heading:"Όλα τα δεδομένα σας αποθηκεύονται τοπικά στο πρόγραμμα περιήγησης.",center_heading_plus:"Μήπως θέλατε να πάτε στο Excalidraw+;",menuHint:"Εξαγωγή, προτιμήσεις, γλώσσες, ..."},defaults:{menuHint:"Εξαγωγή, προτιμήσεις και άλλες επιλογές...",center_heading:"Διαγράμματα. Εύκολα. Γρήγορα.",toolbarHint:"Επιλέξτε ένα εργαλείο και ξεκινήστε να σχεδιάζεται!",helpHint:"Συντομεύσεις και βοήθεια"}},r5e={mostUsedCustomColors:"Πιο χρησιμοποιούμενα χρώματα",colors:"Χρώματα",shades:"Αποχρώσεις",hexCode:"Κωδικός Hex",noShades:"Δεν υπάρχουν διαθέσιμες αποχρώσεις για αυτό το χρώμα"},i5e={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},u5e={title:"",button:"",description:"",syntax:"",preview:""},bcr={labels:R9e,library:N9e,buttons:G9e,alerts:U9e,errors:M9e,toolBar:T9e,headings:Y9e,hints:H9e,canvasError:K9e,errorSplash:J9e,roomDialog:O9e,errorDialog:P9e,exportDialog:_9e,helpDialog:W9e,clearCanvasDialog:q9e,publishDialog:z9e,publishSuccessDialog:Z9e,confirmDialog:V9e,imageExportDialog:j9e,encrypted:X9e,stats:$9e,toast:A5e,colors:e5e,welcomeScreen:t5e,colorPicker:r5e,overwriteConfirm:i5e,mermaid:u5e}});var o5e={};Dt(o5e,{alerts:()=>PQA,buttons:()=>OQA,canvasError:()=>VQA,clearCanvasDialog:()=>r4A,colorPicker:()=>C4A,colors:()=>g4A,commandPalette:()=>Q4A,confirmDialog:()=>a4A,default:()=>BS,element:()=>qQA,elementLink:()=>HQA,encrypted:()=>o4A,errorDialog:()=>A4A,errorSplash:()=>jQA,errors:()=>_QA,exportDialog:()=>e4A,fontList:()=>I4A,headings:()=>zQA,helpDialog:()=>t4A,hints:()=>ZQA,imageExportDialog:()=>n4A,labels:()=>YQA,library:()=>KQA,mermaid:()=>E4A,overwriteConfirm:()=>B4A,publishDialog:()=>i4A,publishSuccessDialog:()=>u4A,quickSearch:()=>d4A,roomDialog:()=>$QA,search:()=>JQA,shareDialog:()=>XQA,stats:()=>s4A,toast:()=>l4A,toolBar:()=>WQA,userList:()=>h4A,welcomeScreen:()=>c4A});var s5e=_(()=>{p4A();zt()});var M5e={};Dt(M5e,{alerts:()=>C5e,buttons:()=>c5e,canvasError:()=>h5e,clearCanvasDialog:()=>y5e,colorPicker:()=>N5e,colors:()=>L5e,confirmDialog:()=>v5e,default:()=>vcr,encrypted:()=>F5e,errorDialog:()=>f5e,errorSplash:()=>Q5e,errors:()=>B5e,exportDialog:()=>m5e,headings:()=>d5e,helpDialog:()=>D5e,hints:()=>I5e,imageExportDialog:()=>k5e,labels:()=>l5e,library:()=>g5e,mermaid:()=>U5e,overwriteConfirm:()=>G5e,publishDialog:()=>w5e,publishSuccessDialog:()=>b5e,roomDialog:()=>p5e,stats:()=>x5e,toast:()=>S5e,toolBar:()=>E5e,welcomeScreen:()=>R5e});var l5e,g5e,c5e,C5e,B5e,E5e,d5e,I5e,h5e,Q5e,p5e,f5e,m5e,D5e,y5e,w5e,b5e,v5e,k5e,F5e,x5e,S5e,L5e,R5e,N5e,G5e,U5e,vcr;var T5e=_(()=>{zt();l5e={paste:"Pegar",pasteAsPlaintext:"Pegar como texto sin formato",pasteCharts:"Pegar gráficos",selectAll:"Seleccionar todo",multiSelect:"Añadir elemento a la selección",moveCanvas:"Mover el lienzo",cut:"Cortar",copy:"Copiar",copyAsPng:"Copiar al portapapeles como PNG",copyAsSvg:"Copiar al portapapeles como SVG",copyText:"Copiar al portapapeles como texto",copySource:"Copiar fuente al portapapeles",convertToCode:"Convertir a código",bringForward:"Traer hacia delante",sendToBack:"Enviar al fondo",bringToFront:"Traer al frente",sendBackward:"Enviar atrás",delete:"Borrar",copyStyles:"Copiar estilos",pasteStyles:"Pegar estilos",stroke:"Trazo",background:"Fondo",fill:"Rellenar",strokeWidth:"Grosor del trazo",strokeStyle:"Estilo del trazo",strokeStyle_solid:"Sólido",strokeStyle_dashed:"Discontinua",strokeStyle_dotted:"Punteado",sloppiness:"Estilo de trazo",opacity:"Opacidad",textAlign:"Alineado de texto",edges:"Bordes",sharp:"Afilado",round:"Redondo",arrowheads:"Puntas de flecha",arrowhead_none:"Ninguna",arrowhead_arrow:"Flecha",arrowhead_bar:"Barra",arrowhead_circle:"Círculo",arrowhead_circle_outline:"Círculo (contorno)",arrowhead_triangle:"Triángulo",arrowhead_triangle_outline:"Triángulo (contorno)",arrowhead_diamond:"Diamante",arrowhead_diamond_outline:"Diamante (contorno)",fontSize:"Tamaño de la fuente",fontFamily:"Tipo de fuente",addWatermark:'Agregar "Hecho con Excalidraw"',handDrawn:"Dibujado a mano",normal:"Normal",code:"Código",small:"Pequeña",medium:"Mediana",large:"Grande",veryLarge:"Muy grande",solid:"Sólido",hachure:"Folleto",zigzag:"Zigzag",crossHatch:"Rayado transversal",thin:"Fino",bold:"Grueso",left:"Izquierda",center:"Centrado",right:"Derecha",extraBold:"Extra negrita",architect:"Arquitecto",artist:"Artista",cartoonist:"Caricatura",fileTitle:"Nombre del archivo",colorPicker:"Selector de color",canvasColors:"Usado en lienzo",canvasBackground:"Fondo del lienzo",drawingCanvas:"Lienzo de dibujo",layers:"Capas",actions:"Acciones",language:"Idioma",liveCollaboration:"Colaboración en directo...",duplicateSelection:"Duplicar",untitled:"Sin título",name:"Nombre",yourName:"Tu nombre",madeWithExcalidraw:"Hecho con Excalidraw",group:"Agrupar selección",ungroup:"Desagrupar selección",collaborators:"Colaboradores",showGrid:"Mostrar cuadrícula",addToLibrary:"Añadir a la biblioteca",removeFromLibrary:"Eliminar de la biblioteca",libraryLoadingMessage:"Cargando biblioteca…",libraries:"Explorar bibliotecas",loadingScene:"Cargando escena…",align:"Alinear",alignTop:"Alineación superior",alignBottom:"Alineación inferior",alignLeft:"Alinear a la izquierda",alignRight:"Alinear a la derecha",centerVertically:"Centrar verticalmente",centerHorizontally:"Centrar horizontalmente",distributeHorizontally:"Distribuir horizontalmente",distributeVertically:"Distribuir verticalmente",flipHorizontal:"Girar horizontalmente",flipVertical:"Girar verticalmente",viewMode:"Modo presentación",share:"Compartir",showStroke:"Mostrar selector de color de trazo",showBackground:"Mostrar el selector de color de fondo",toggleTheme:"Cambiar tema",personalLib:"Biblioteca personal",excalidrawLib:"Biblioteca Excalidraw",decreaseFontSize:"Disminuir tamaño de letra",increaseFontSize:"Aumentar el tamaño de letra",unbindText:"Desvincular texto",bindText:"Vincular texto al contenedor",createContainerFromText:"Envolver el texto en un contenedor",link:{edit:"Editar enlace",editEmbed:"Editar enlace e incrustar",create:"Crear enlace",createEmbed:"Crear enlace e incrustar",label:"Enlace",labelEmbed:"Enlazar e incrustar",empty:"No se ha establecido un enlace"},lineEditor:{edit:"Editar línea",exit:"Salir del editor en línea"},elementLock:{lock:"Bloquear",unlock:"Desbloquear",lockAll:"Bloquear todo",unlockAll:"Desbloquear todo"},statusPublished:"Publicado",sidebarLock:"Mantener barra lateral abierta",selectAllElementsInFrame:"Seleccionar todos los elementos en el marco",removeAllElementsFromFrame:"Eliminar todos los elementos del marco",eyeDropper:"Seleccionar un color del lienzo",textToDiagram:"Texto a diagrama",prompt:"Sugerencia"},g5e={noItems:"No hay elementos añadidos todavía...",hint_emptyLibrary:"Seleccione un elemento en el lienzo para añadirlo aquí, o instale una biblioteca del repositorio público, a continuación.",hint_emptyPrivateLibrary:"Seleccione un elemento del lienzo para añadirlo aquí."},c5e={clearReset:"Limpiar lienzo y reiniciar el color de fondo",exportJSON:"Exportar a archivo",exportImage:"Exportar imagen...",export:"Guardar en...",copyToClipboard:"Copiar al portapapeles",save:"Guardar en archivo actual",saveAs:"Guardar como",load:"Abrir",getShareableLink:"Obtener enlace para compartir",close:"Cerrar",selectLanguage:"Elegir idioma",scrollBackToContent:"Volver al contenido",zoomIn:"Acercarse",zoomOut:"Alejarse",resetZoom:"Restablecer zoom",menu:"Menú",done:"Hecho",edit:"Editar",undo:"Deshacer",redo:"Rehacer",resetLibrary:"Reiniciar biblioteca",createNewRoom:"Crear nueva sala",fullScreen:"Pantalla completa",darkMode:"Modo oscuro",lightMode:"Modo claro",zenMode:"Modo Zen",objectsSnapMode:"Ajustar a los objetos",exitZenMode:"Salir del modo Zen",cancel:"Cancelar",clear:"Borrar",remove:"Eliminar",embed:"",publishLibrary:"Publicar",submit:"Enviar",confirm:"Confirmar",embeddableInteractionButton:"Pulsa para interactuar"},C5e={clearReset:"Esto limpiará todo el lienzo. Estás seguro?",couldNotCreateShareableLink:"No se pudo crear un enlace para compartir.",couldNotCreateShareableLinkTooBig:"No se pudo crear el enlace para compartir: la escena es demasiado grande",couldNotLoadInvalidFile:"No se pudo cargar el archivo no válido",importBackendFailed:"La importación falló.",cannotExportEmptyCanvas:"No se puede exportar un lienzo vació",couldNotCopyToClipboard:"No se pudo copiar al portapapeles.",decryptFailed:"No se pudieron descifrar los datos.",uploadedSecurly:"La carga ha sido asegurada con cifrado de principio a fin, lo que significa que el servidor de Excalidraw y terceros no pueden leer el contenido.",loadSceneOverridePrompt:"Si carga este dibujo externo, reemplazará el que tiene. ¿Desea continuar?",collabStopOverridePrompt:`Detener la sesión sobrescribirá su dibujo anterior almacenado localmente. ¿Está seguro?
(Si desea mantener su dibujo local, simplemente cierre la pestaña del navegador.)`,errorAddingToLibrary:"No se pudo agregar el elemento a la biblioteca",errorRemovingFromLibrary:"No se pudo quitar el elemento de la biblioteca",confirmAddLibrary:"Esto añadirá {{numShapes}} forma(s) a tu biblioteca. ¿Estás seguro?",imageDoesNotContainScene:"Esta imagen no parece contener datos de escena. ¿Ha habilitado la inserción de la escena durante la exportación?",cannotRestoreFromImage:"No se pudo restaurar la escena desde este archivo de imagen",invalidSceneUrl:"No se ha podido importar la escena desde la URL proporcionada. Está mal formada, o no contiene datos de Excalidraw JSON válidos.",resetLibrary:"Esto borrará tu biblioteca. ¿Estás seguro?",removeItemsFromsLibrary:"¿Eliminar {{count}} elemento(s) de la biblioteca?",invalidEncryptionKey:"La clave de cifrado debe tener 22 caracteres. La colaboración en vivo está deshabilitada.",collabOfflineWarning:`No hay conexión a internet disponible.
¡No se guardarán los cambios!`},B5e={unsupportedFileType:"Tipo de archivo no admitido.",imageInsertError:"No se pudo insertar la imagen. Inténtelo de nuevo más tarde...",fileTooBig:"Archivo demasiado grande. El tamaño máximo permitido es {{maxSize}}.",svgImageInsertError:"No se pudo insertar la imagen SVG. El código SVG parece inválido.",failedToFetchImage:"Error al obtener la imagen.",invalidSVGString:"SVG no válido.",cannotResolveCollabServer:"No se pudo conectar al servidor colaborador. Por favor, vuelva a cargar la página y vuelva a intentarlo.",importLibraryError:"No se pudo cargar la librería",collabSaveFailed:"No se pudo guardar en la base de datos del backend. Si los problemas persisten, debería guardar su archivo localmente para asegurarse de que no pierde su trabajo.",collabSaveFailed_sizeExceeded:"No se pudo guardar en la base de datos del backend, el lienzo parece ser demasiado grande. Debería guardar el archivo localmente para asegurarse de que no pierde su trabajo.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Parece que estás usando el navegador Brave con el ajuste <bold>Forzar el bloqueo de huellas digitales</bold> habilitado.",line2:"Esto podría resultar en errores en los <bold>Elementos de Texto</bold> en tus dibujos.",line3:"Recomendamos fuertemente deshabilitar esta configuración. Puedes seguir <link>estos pasos</link> sobre cómo hacerlo.",line4:""},libraryElementTypeError:{embeddable:"",iframe:"Los elementos IFrame no se pueden agregar a la biblioteca.",image:""},asyncPasteFailedOnRead:"No se pudo pegar (no se pudo leer desde el portapapeles del sistema).",asyncPasteFailedOnParse:"No se pudo pegar.",copyToSystemClipboardFailed:"No se pudo copiar al portapapeles."},E5e={selection:"Selección",image:"Insertar imagen",rectangle:"Rectángulo",diamond:"Diamante",ellipse:"Elipse",arrow:"Flecha",line:"Línea",freedraw:"Dibujar",text:"Texto",library:"Biblioteca",lock:"Mantener la herramienta seleccionada activa después de dibujar",penMode:"Modo Lápiz - previene toque",link:"Añadir/Actualizar enlace para una forma seleccionada",eraser:"Borrar",frame:"",magicframe:"Esquema a código",embeddable:"Incrustar Web",laser:"Puntero láser",hand:"Mano (herramienta de panoramización)",extraTools:"Más herramientas",mermaidToExcalidraw:"Mermaid a Excalidraw",magicSettings:"Ajustes AI"},d5e={canvasActions:"Acciones del lienzo",selectedShapeActions:"Acciones de la forma seleccionada",shapes:"Formas"},I5e={canvasPanning:"Para mover el lienzo, mantenga la rueda del ratón o la barra espaciadora mientras arrastra o utilice la herramienta de mano",linearElement:"Haz clic para dibujar múltiples puntos, arrastrar para solo una línea",freeDraw:"Haz clic y arrastra, suelta al terminar",text:"Consejo: también puedes añadir texto haciendo doble clic en cualquier lugar con la herramienta de selección",embeddable:"Haga clic y arrastre para crear un sitio web incrustado",text_selected:"Doble clic o pulse ENTER para editar el texto",text_editing:"Pulse Escape o Ctrl/Cmd + ENTER para terminar de editar",linearElementMulti:"Haz clic en el último punto o presiona Escape o Enter para finalizar",lockAngle:"Puedes restringir el ángulo manteniendo presionado el botón SHIFT",resize:`Para mantener las proporciones mantén SHIFT presionado mientras modificas el tamaño,
mantén presionado ALT para modificar el tamaño desde el centro`,resizeImage:`Puede redimensionar libremente pulsando SHIFT,
pulse ALT para redimensionar desde el centro`,rotate:"Puedes restringir los ángulos manteniendo presionado SHIFT mientras giras",lineEditor_info:"Mantenga pulsado CtrlOrCmd y haga doble click o presione CtrlOrCmd + Enter para editar puntos",lineEditor_pointSelected:"Presione Suprimir para eliminar el/los punto(s), CtrlOrCmd+D para duplicarlo, o arrástrelo para moverlo",lineEditor_nothingSelected:`Seleccione un punto a editar (mantenga MAYÚSCULAS para seleccionar múltiples),
o mantenga pulsado Alt y haga click para añadir nuevos puntos`,placeImage:"Haga clic para colocar la imagen o haga click y arrastre para establecer su tamaño manualmente",publishLibrary:"Publica tu propia biblioteca",bindTextToElement:"Presione Entrar para agregar",deepBoxSelect:"Mantén CtrlOrCmd para seleccionar en profundidad, y para evitar arrastrar",eraserRevert:"Mantenga pulsado Alt para revertir los elementos marcados para su eliminación",firefox_clipboard_write:'Esta característica puede ser habilitada estableciendo la bandera "dom.events.asyncClipboard.clipboardItem" a "true". Para cambiar las banderas del navegador en Firefox, visite la página "about:config".',disableSnapping:"Mantén pulsado CtrlOrCmd para desactivar el ajuste"},h5e={cannotShowPreview:"No se puede mostrar la vista previa",canvasTooBig:"El lienzo podría ser demasiado grande.",canvasTooBigTip:"Sugerencia: intenta acercar un poco más los elementos más lejanos."},Q5e={headingMain:"Se encontró un error. Intente <button>recargando la página.</button>",clearCanvasMessage:"Si la recarga no funciona, intente <button>limpiando el lienzo.</button>",clearCanvasCaveat:" Esto provocará la pérdida de su trabajo ",trackedToSentry:"El error con el identificador {{eventId}} fue rastreado en nuestro sistema.",openIssueMessage:"Fuimos muy cautelosos de no incluir la información de tu escena en el error. Si tu escena no es privada, por favor considera seguir nuestro <button>rastreador de errores.</button> Por favor, incluya la siguiente información copiándola y pegándola en el issue de GitHub.",sceneContent:"Contenido de la escena:"},p5e={desc_intro:"Puede invitar a otras personas a tu actual escena para que colaboren contigo.",desc_privacy:"No te preocupes, la sesión usa encriptación de punta a punta, por lo que todo lo que se dibuje se mantendrá privadamente. Ni siquiera nuestro servidor podrá ver lo que haces.",button_startSession:"Iniciar sesión",button_stopSession:"Detener sesión",desc_inProgressIntro:"La sesión de colaboración en vivo está ahora en progreso.",desc_shareLink:"Comparte este enlace con cualquier persona con quien quieras colaborar:",desc_exitSession:"Detener la sesión te desconectará de la sala, pero podrás seguir trabajando con la escena en su computadora, esto es de modo local. Ten en cuenta que esto no afectará a otras personas, y que las mismas seguirán siendo capaces de colaborar en tu escena.",shareTitle:"Únase a una sesión colaborativa en vivo en Excalidraw"},f5e={title:"Error"},m5e={disk_title:"Guardar en disco",disk_details:"Exportar los datos de la escena a un archivo desde el cual pueda importar más tarde.",disk_button:"Guardar en archivo",link_title:"Enlace para compartir",link_details:"Exportar como enlace de sólo lectura.",link_button:"Exportar a Link",excalidrawplus_description:"Guarde la escena en su espacio de trabajo de Excalidraw+.",excalidrawplus_button:"Exportar",excalidrawplus_exportError:"No se pudo exportar a Excalidraw+ en este momento..."},D5e={blog:"Lea nuestro blog",click:"click",deepSelect:"Selección profunda",deepBoxSelect:"Seleccione en profundidad dentro de la caja, y evite arrastrar",curvedArrow:"Flecha curva",curvedLine:"Línea curva",documentation:"Documentación",doubleClick:"doble clic",drag:"arrastrar",editor:"Editor",editLineArrowPoints:"Editar puntos de línea/flecha",editText:"Editar texto / añadir etiqueta",github:"¿Ha encontrado un problema? Envíelo",howto:"Siga nuestras guías",or:"o",preventBinding:"Evitar enlace de flechas",tools:"Herramientas",shortcuts:"Atajos del teclado",textFinish:"Finalizar edición (editor de texto)",textNewLine:"Añadir nueva linea (editor de texto)",title:"Ayuda",view:"Vista",zoomToFit:"Ajustar la vista para mostrar todos los elementos",zoomToSelection:"Ampliar selección",toggleElementLock:"Bloquear/desbloquear selección",movePageUpDown:"Mover página hacia arriba/abajo",movePageLeftRight:"Mover página hacia la izquierda/derecha"},y5e={title:"Borrar lienzo"},w5e={title:"Publicar biblioteca",itemName:"Nombre del artículo",authorName:"Nombre del autor",githubUsername:"Nombre de usuario de GitHub",twitterUsername:"Nombre de usuario de Twitter",libraryName:"Nombre de la biblioteca",libraryDesc:"Descripción de la biblioteca",website:"Sitio Web",placeholder:{authorName:"Nombre o nombre de usuario",libraryName:"Nombre de tu biblioteca",libraryDesc:"Descripción de su biblioteca para ayudar a la gente a entender su uso",githubHandle:"Nombre de usuario de GitHub (opcional), así podrá editar la biblioteca una vez enviada para su revisión",twitterHandle:"Nombre de usuario de Twitter (opcional), así sabemos a quién acreditar cuando se promociona en Twitter",website:"Enlace a su sitio web personal o en cualquier otro lugar (opcional)"},errors:{required:"Requerido",website:"Introduce una URL válida"},noteDescription:"Envía tu biblioteca para ser incluida en el <link>repositorio de librería pública</link>para que otras personas utilicen en sus dibujos.",noteGuidelines:"La biblioteca debe ser aprobada manualmente primero. Por favor, lea la <link>pautas</link> antes de enviar. Necesitará una cuenta de GitHub para comunicarse y hacer cambios si se solicita, pero no es estrictamente necesario.",noteLicense:"Al enviar, usted acepta que la biblioteca se publicará bajo el <link>Licencia MIT </link>que en breve significa que cualquiera puede utilizarlos sin restricciones.",noteItems:"Cada elemento de la biblioteca debe tener su propio nombre para que sea filtrable. Los siguientes elementos de la biblioteca serán incluidos:",atleastOneLibItem:"Por favor, seleccione al menos un elemento de la biblioteca para empezar",republishWarning:"Nota: algunos de los elementos seleccionados están marcados como ya publicados/enviados. Sólo debería volver a enviar elementos cuando se actualice una biblioteca o envío."},b5e={title:"Biblioteca enviada",content:"Gracias {{authorName}}. Su biblioteca ha sido enviada para ser revisada. Puede seguir el estado<link>aquí</link>"},v5e={resetLibrary:"Reiniciar biblioteca",removeItemsFromLib:"Eliminar elementos seleccionados de la biblioteca"},k5e={header:"Exportar imagen",label:{withBackground:"Fondo",onlySelected:"Sólo seleccionados",darkMode:"Modo oscuro",embedScene:"Incrustar escena",scale:"Escalar",padding:"Espaciado"},tooltip:{embedScene:""},title:{exportToPng:"Exportar a PNG",exportToSvg:"Exportar a SVG",copyPngToClipboard:"Copiar PNG al portapapeles"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copiar al portapapeles"}},F5e={tooltip:"Tus dibujos están cifrados de punto a punto, por lo que los servidores de Excalidraw nunca los verán.",link:"Entrada en el blog sobre cifrado de extremo a extremo"},x5e={angle:"Ángulo",element:"Elemento",elements:"Elementos",height:"Alto",scene:"Escena",selected:"Seleccionado",storage:"Almacenamiento",title:"Estadísticas para nerds",total:"Total",version:"Versión",versionCopy:"Click para copiar",versionNotAvailable:"Versión no disponible",width:"Ancho"},S5e={addedToLibrary:"Añadido a la biblioteca",copyStyles:"Estilos copiados.",copyToClipboard:"Copiado en el portapapeles.",copyToClipboardAsPng:`Copiado {{exportSelection}} al portapapeles como PNG
({{exportColorScheme}})`,fileSaved:"Archivo guardado.",fileSavedToFilename:"Guardado en {filename}",canvas:"lienzo",selection:"selección",pasteAsSingleElement:`Usa {{shortcut}} para pegar como un solo elemento,
o pegar en un editor de texto existente`,unableToEmbed:"",unrecognizedLinkFormat:""},L5e={transparent:"Transparente",black:"Negro",white:"Blanco",red:"Rojo",pink:"Rosa",grape:"Uva",violet:"Violeta",gray:"Gris",blue:"Azul",cyan:"Cian",teal:"Turquesa",green:"Verde",yellow:"Amarillo",orange:"Naranja",bronze:"Bronce"},R5e={app:{center_heading:"Toda su información es guardada localmente en su navegador.",center_heading_plus:"¿Quieres ir a Excalidraw+?",menuHint:"Exportar, preferencias, idiomas, ..."},defaults:{menuHint:"Exportar, preferencias y más...",center_heading:"Diagramas. Hecho. Simplemente.",toolbarHint:"¡Elige una herramienta y empieza a dibujar!",helpHint:"Atajos y ayuda"}},N5e={mostUsedCustomColors:"Colores personalizados más utilizados",colors:"Colores",shades:"",hexCode:"Código Hexadecimal",noShades:""},G5e={action:{exportToImage:{title:"Exportar como imagen",button:"Exportar como imagen",description:""},saveToDisk:{title:"Guardar en el disco",button:"Guardar en el disco",description:"Exporta los datos de la escena a un archivo desde el cual podrás importar más tarde."},excalidrawPlus:{title:"",button:"Exportar a Excalidraw+",description:""}},modal:{loadFromFile:{title:"Cargar desde un archivo",button:"Cargar desde un archivo",description:""},shareableLink:{title:"Cargar desde un enlace",button:"Reemplazar mi contenido",description:"Cargar un dibujo externo <bold>reemplazará tu contenido existente</bold>.<br></br>Puedes primero hacer una copia de seguridad de tu dibujo usando una de las opciones de abajo."}}},U5e={title:"Mermaid a Excalidraw",button:"Insertar",description:"Actualmente sólo <flowchartLink>Flowchart</flowchartLink>,<sequenceLink> Secuencia, </sequenceLink> y <classLink>Class </classLink>Diagramas son soportados. Los otros tipos se renderizarán como imagen en Excalidraw.",syntax:"Sintaxis Mermaid",preview:"Vista previa"},vcr={labels:l5e,library:g5e,buttons:c5e,alerts:C5e,errors:B5e,toolBar:E5e,headings:d5e,hints:I5e,canvasError:h5e,errorSplash:Q5e,roomDialog:p5e,errorDialog:f5e,exportDialog:m5e,helpDialog:D5e,clearCanvasDialog:y5e,publishDialog:w5e,publishSuccessDialog:b5e,confirmDialog:v5e,imageExportDialog:k5e,encrypted:F5e,stats:x5e,toast:S5e,colors:L5e,welcomeScreen:R5e,colorPicker:N5e,overwriteConfirm:G5e,mermaid:U5e}});var cbe={};Dt(cbe,{alerts:()=>J5e,buttons:()=>K5e,canvasError:()=>q5e,clearCanvasDialog:()=>$5e,colorPicker:()=>sbe,colors:()=>nbe,confirmDialog:()=>tbe,default:()=>kcr,encrypted:()=>ibe,errorDialog:()=>V5e,errorSplash:()=>z5e,errors:()=>O5e,exportDialog:()=>j5e,headings:()=>_5e,helpDialog:()=>X5e,hints:()=>W5e,imageExportDialog:()=>rbe,labels:()=>Y5e,library:()=>H5e,mermaid:()=>gbe,overwriteConfirm:()=>lbe,publishDialog:()=>Abe,publishSuccessDialog:()=>ebe,roomDialog:()=>Z5e,stats:()=>ube,toast:()=>abe,toolBar:()=>P5e,welcomeScreen:()=>obe});var Y5e,H5e,K5e,J5e,O5e,P5e,_5e,W5e,q5e,z5e,Z5e,V5e,j5e,X5e,$5e,Abe,ebe,tbe,rbe,ibe,ube,abe,nbe,obe,sbe,lbe,gbe,kcr;var Cbe=_(()=>{zt();Y5e={paste:"Itsatsi",pasteAsPlaintext:"Itsatsi testu arrunt gisa",pasteCharts:"Itsatsi grafikoak",selectAll:"Hautatu dena",multiSelect:"Gehitu elementua hautapenera",moveCanvas:"Mugitu oihala",cut:"Ebaki",copy:"Kopiatu",copyAsPng:"Kopiatu arbelera PNG gisa",copyAsSvg:"Kopiatu arbelera SVG gisa",copyText:"Kopiatu arbelera testu gisa",copySource:"Kopiatu iturria arbelean",convertToCode:"Bihurtu kodea",bringForward:"Ekarri aurrerago",sendToBack:"Eraman atzera",bringToFront:"Ekarri aurrera",sendBackward:"Eraman atzerago",delete:"Ezabatu",copyStyles:"Kopiatu estiloak",pasteStyles:"Itsatsi estiloak",stroke:"Marra",background:"Atzeko planoa",fill:"Bete",strokeWidth:"Marraren zabalera",strokeStyle:"Marraren estiloa",strokeStyle_solid:"Solidoa",strokeStyle_dashed:"Marratua",strokeStyle_dotted:"Puntukatua",sloppiness:"Marraren trazoa",opacity:"Opakotasuna",textAlign:"Testuaren lerrokapena",edges:"Ertzak",sharp:"Ertz bizia",round:"Borobildua",arrowheads:"Gezi-puntak",arrowhead_none:"Bat ere ez",arrowhead_arrow:"Gezia",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Hirukia",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Letra-tamaina",fontFamily:"Letra-tipoa",addWatermark:'Gehitu "Excalidraw bidez egina"',handDrawn:"Eskuz marraztua",normal:"Normala",code:"Kodea",small:"Txikia",medium:"Ertaina",large:"Handia",veryLarge:"Oso handia",solid:"Solidoa",hachure:"Itzalduna",zigzag:"Sigi-saga",crossHatch:"Marraduna",thin:"Mehea",bold:"Lodia",left:"Ezkerrean",center:"Erdian",right:"Eskuinean",extraBold:"Oso lodia",architect:"Arkitektoa",artist:"Artista",cartoonist:"Marrazkilaria",fileTitle:"Fitxategi izena",colorPicker:"Kolore-hautatzailea",canvasColors:"Oihalean erabilita",canvasBackground:"Oihalaren atzeko planoa",drawingCanvas:"Marrazteko oihala",layers:"Geruzak",actions:"Ekintzak",language:"Hizkuntza",liveCollaboration:"Zuzeneko elkarlana...",duplicateSelection:"Bikoiztu",untitled:"Izengabea",name:"Izena",yourName:"Zure izena",madeWithExcalidraw:"Excalidraw bidez egina",group:"Hautapena taldea bihurtu",ungroup:"Desegin hautapenaren taldea",collaborators:"Kolaboratzaileak",showGrid:"Erakutsi sareta",addToLibrary:"Gehitu liburutegira",removeFromLibrary:"Kendu liburutegitik",libraryLoadingMessage:"Liburutegia kargatzen…",libraries:"Arakatu liburutegiak",loadingScene:"Eszena kargatzen…",align:"Lerrokatu",alignTop:"Lerrokatu goian",alignBottom:"Lerrokatu behean",alignLeft:"Lerrokatu ezkerrean",alignRight:"Lerrokatu eskuinean",centerVertically:"Erdiratu bertikalki",centerHorizontally:"Erdiratu horizontalki",distributeHorizontally:"Banandu horizontalki",distributeVertically:"Banandu bertikalki",flipHorizontal:"Irauli horizontalki",flipVertical:"Irauli bertikalki",viewMode:"Ikuspegia",share:"Partekatu",showStroke:"Erakutsi marraren kolore-hautatzailea",showBackground:"Erakutsi atzeko planoaren kolore-hautatzailea",toggleTheme:"Aldatu gaia",personalLib:"Liburutegi pertsonala",excalidrawLib:"Excalidraw liburutegia",decreaseFontSize:"Txikitu letra tamaina",increaseFontSize:"Handitu letra tamaina",unbindText:"Askatu testua",bindText:"Lotu testua edukiontziari",createContainerFromText:"Bilatu testua edukiontzi batean",link:{edit:"Editatu esteka",editEmbed:"Editatu esteka eta kapsulatu",create:"Sortu esteka",createEmbed:"Sortu esteka eta kapsulatu",label:"Esteka",labelEmbed:"Esteka eta kapsula",empty:"Ez da estekarik ezarri"},lineEditor:{edit:"Editatu lerroa",exit:"Irten lerro-editoretik"},elementLock:{lock:"Blokeatu",unlock:"Desblokeatu",lockAll:"Blokeatu guztiak",unlockAll:"Desblokeatu guztiak"},statusPublished:"Argitaratua",sidebarLock:"Mantendu alboko barra irekita",selectAllElementsInFrame:"Hautatu markoko elementu guztiak",removeAllElementsFromFrame:"Kendu markoko elementu guztiak",eyeDropper:"Aukeratu kolorea oihaletik",textToDiagram:"Testutik diagramara",prompt:""},H5e={noItems:"Oraindik ez da elementurik gehitu...",hint_emptyLibrary:"Hautatu oihaleko elementu bat hemen gehitzeko, edo instalatu liburutegi bat beheko biltegi publikotik.",hint_emptyPrivateLibrary:"Hautatu oihaleko elementu bat hemen gehitzeko."},K5e={clearReset:"Garbitu oihala",exportJSON:"Esportatu fitxategira",exportImage:"Esportatu irudia...",export:"Gorde hemen...",copyToClipboard:"Kopiatu arbelera",save:"Gorde uneko fitxategian",saveAs:"Gorde honela",load:"Ireki",getShareableLink:"Lortu partekatzeko esteka",close:"Itxi",selectLanguage:"Hautatu hizkuntza",scrollBackToContent:"Joan atzera edukira",zoomIn:"Handiagotu",zoomOut:"Txikiagotu",resetZoom:"Leheneratu zooma",menu:"Menua",done:"Egina",edit:"Editatu",undo:"Desegin",redo:"Berregin",resetLibrary:"Leheneratu liburutegia",createNewRoom:"Sortu gela berria",fullScreen:"Pantaila osoa",darkMode:"Modu iluna",lightMode:"Modu argia",zenMode:"Zen modua",objectsSnapMode:"Atxiki objektuei",exitZenMode:"Irten Zen modutik",cancel:"Utzi",clear:"Garbitu",remove:"Kendu",embed:"Aldatu kapsulatzea",publishLibrary:"Argitaratu",submit:"Bidali",confirm:"Bai",embeddableInteractionButton:"Egin klik elkar eragiteko"},J5e={clearReset:"Honek oihal osoa garbituko du. Ziur zaude?",couldNotCreateShareableLink:"Ezin izan da partekatzeko estekarik sortu.",couldNotCreateShareableLinkTooBig:"Ezin izan da partekatzeko estekarik sortu: eszena handiegia da",couldNotLoadInvalidFile:"Ezin izan da kargatu, fitxategiak ez du balio",importBackendFailed:"Inportazioak huts egin du.",cannotExportEmptyCanvas:"Ezin izan da oihal hutsa esportatu.",couldNotCopyToClipboard:"Ezin izan da arbelean kopiatu.",decryptFailed:"Ezin izan da deszifratu.",uploadedSecurly:"Kargatzea muturretik muturrerako zifratze bidez ziurtatu da, hau da, Excalidraw zerbitzariak eta hirugarrenek ezin dutela edukia irakurri.",loadSceneOverridePrompt:"Kanpoko marrazkia kargatzeak lehendik duzun edukia ordezkatuko du. Jarraitu nahi duzu?",collabStopOverridePrompt:`Saioa gelditzeak lokalean gordetako zure aurreko marrazkia gainidatziko du. Ziur zaude?
(Zure marrazki lokala mantendu nahi baduzu, itxi arakatzailearen fitxa.)`,errorAddingToLibrary:"Ezin izan da elementua liburutegian gehitu",errorRemovingFromLibrary:"Ezin izan da elementua liburutegitik kendu",confirmAddLibrary:"Honek {{numShapes}} forma gehituko ditu zure liburutegian. Ziur zaude?",imageDoesNotContainScene:"Irudi honek ez dirudi eszena daturik duenik. Eszena kapsulatzea gaitu al duzu esportazioan?",cannotRestoreFromImage:"Ezin izan da eszena leheneratu irudi fitxategi honetatik",invalidSceneUrl:"Ezin izan da eszena inportatu emandako URLtik. Gaizki eratuta dago edo ez du baliozko Excalidraw JSON daturik.",resetLibrary:"Honek zure liburutegia garbituko du. Ziur zaude?",removeItemsFromsLibrary:"Liburutegitik {{count}} elementu ezabatu?",invalidEncryptionKey:"Enkriptazio-gakoak 22 karaktere izan behar ditu. Zuzeneko lankidetza desgaituta dago.",collabOfflineWarning:`Ez dago Interneteko konexiorik.
Zure aldaketak ez dira gordeko!`},O5e={unsupportedFileType:"Onartu gabeko fitxategi mota.",imageInsertError:"Ezin izan da irudia txertatu. Saiatu berriro geroago...",fileTooBig:"Fitxategia handiegia da. Onartutako gehienezko tamaina {{maxSize}} da.",svgImageInsertError:"Ezin izan da SVG irudia txertatu. SVG markak baliogabea dirudi.",failedToFetchImage:"Ezin izan da irudia eskuratu.",invalidSVGString:"SVG baliogabea.",cannotResolveCollabServer:"Ezin izan da elkarlaneko zerbitzarira konektatu. Mesedez, berriro kargatu orria eta saiatu berriro.",importLibraryError:"Ezin izan da liburutegia kargatu",collabSaveFailed:"Ezin izan da backend datu-basean gorde. Arazoak jarraitzen badu, zure fitxategia lokalean gorde beharko zenuke zure lana ez duzula galtzen ziurtatzeko.",collabSaveFailed_sizeExceeded:"Ezin izan da backend datu-basean gorde, ohiala handiegia dela dirudi. Fitxategia lokalean gorde beharko zenuke zure lana galtzen ez duzula ziurtatzeko.",imageToolNotSupported:"Irudiak desgaituta daude.",brave_measure_text_error:{line1:"Brave arakatzailea erabiltzen ari zarela dirudi <bold>Blokeatu hatz-markak erasokorki</bold> ezarpena gaituta.",line2:"Honek zure marrazkietako <bold>Testu-elementuak</bold> hautsi ditzake.",line3:"Ezarpen hau desgaitzea gomendatzen dugu. <link>urrats hauek</link> jarrai ditzakezu hori nola egin jakiteko.",line4:"Ezarpen hau desgaituz gero, testu-elementuen bistaratzea konpontzen ez bada, ireki <issueLink>arazo</issueLink> gure GitHub-en edo idatzi iezaguzu <discordLink>Discord</discordLink> helbidera"},libraryElementTypeError:{embeddable:"Kapsulatutako elementuak ezin dira liburutegira gehitu.",iframe:"IFrame elementuak ezin dira liburutegira gehitu.",image:"Laster egongo da irudiak liburutegian gehitzeko laguntza!"},asyncPasteFailedOnRead:"Ezin izan da itsatsi (ezin izan da sistemaren arbeletik irakurri).",asyncPasteFailedOnParse:"Ezin izan da itsatsi.",copyToSystemClipboardFailed:"Ezin izan da arbelean kopiatu."},P5e={selection:"Hautapena",image:"Txertatu irudia",rectangle:"Laukizuzena",diamond:"Diamantea",ellipse:"Elipsea",arrow:"Gezia",line:"Lerroa",freedraw:"Marraztu",text:"Testua",library:"Liburutegia",lock:"Mantendu aktibo hautatutako tresna marraztu ondoren",penMode:"Luma modua - ukipena saihestu",link:"Gehitu / Eguneratu esteka hautatutako forma baterako",eraser:"Borragoma",frame:"Marko tresna",magicframe:"Wireframe kodetzeko",embeddable:"Web kapsulatzea",laser:"Laser punteroa",hand:"Eskua (panoratze tresna)",extraTools:"Tresna gehiago",mermaidToExcalidraw:"",magicSettings:"AI ezarpenak"},_5e={canvasActions:"Canvas ekintzak",selectedShapeActions:"Hautatutako formaren ekintzak",shapes:"Formak"},W5e={canvasPanning:"Oihala mugitzeko, eutsi saguaren gurpila edo zuriune-barra arrastatzean, edo erabili esku tresna",linearElement:"Egin klik hainbat puntu hasteko, arrastatu lerro bakarrerako",freeDraw:"Egin klik eta arrastatu, askatu amaitutakoan",text:"Aholkua: testua gehitu dezakezu edozein lekutan klik bikoitza eginez hautapen tresnarekin",embeddable:"Egin klik eta arrastatu webgunea kapsulatzeko",text_selected:"Egin klik bikoitza edo sakatu SARTU testua editatzeko",text_editing:"Sakatu Esc edo Ctrl+SARTU editatzen amaitzeko",linearElementMulti:"Egin klik azken puntuan edo sakatu Esc edo Sartu amaitzeko",lockAngle:"SHIFT sakatuta angelua mantendu dezakezu",resize:`Proportzioak mantendu ditzakezu SHIFT sakatuta tamaina aldatzen duzun bitartean.
sakatu ALT erditik tamaina aldatzeko`,resizeImage:`Tamaina libreki alda dezakezu SHIFT sakatuta,
sakatu ALT erditik tamaina aldatzeko`,rotate:"Angeluak mantendu ditzakezu SHIFT sakatuta biratzen duzun bitartean",lineEditor_info:"Eutsi sakatuta Ctrl edo Cmd eta egin klik bikoitza edo sakatu Ctrl edo Cmd + Sartu puntuak editatzeko",lineEditor_pointSelected:`Sakatu Ezabatu puntuak kentzeko,
Ktrl+D bikoizteko, edo arrastatu mugitzeko`,lineEditor_nothingSelected:`Hautatu editatzeko puntu bat (SHIFT sakatuta anitz hautatzeko),
edo eduki Alt sakatuta eta egin klik puntu berriak gehitzeko`,placeImage:"Egin klik irudia kokatzeko, edo egin klik eta arrastatu bere tamaina eskuz ezartzeko",publishLibrary:"Argitaratu zure liburutegia",bindTextToElement:"Sakatu Sartu testua gehitzeko",deepBoxSelect:"Eutsi Ctrl edo Cmd sakatuta aukeraketa sakona egiteko eta arrastatzea saihesteko",eraserRevert:"Eduki Alt sakatuta ezabatzeko markatutako elementuak leheneratzeko",firefox_clipboard_write:'Ezaugarri hau "dom.events.asyncClipboard.clipboardItem" marka "true" gisa ezarrita gaitu daiteke. Firefox-en arakatzailearen banderak aldatzeko, bisitatu "about:config" orrialdera.',disableSnapping:"Eduki sakatuta Ctrl edo Cmd tekla atxikipena desgaitzeko"},q5e={cannotShowPreview:"Ezin da oihala aurreikusi",canvasTooBig:"Agian oihala handiegia da.",canvasTooBigTip:"Aholkua: saiatu urrunen dauden elementuak pixka bat hurbiltzen."},z5e={headingMain:"Errore bat aurkitu da. Saiatu <button>orria birkargatzen.</button>",clearCanvasMessage:"Birkargatzea ez bada burutzen, saiatu <button>oihala garbitzen.</button>",clearCanvasCaveat:" Honen ondorioz lana galduko da ",trackedToSentry:"Identifikatzailearen errorea {{eventId}} gure sistemak behatu du.",openIssueMessage:"Oso kontuz ibili gara zure eszenaren informazioa errorean ez sartzeko. Zure eszena pribatua ez bada, kontuan hartu gure <button>erroreen jarraipena egitea.</button> Sartu beheko informazioa kopiatu eta itsatsi bidez GitHub issue-n.",sceneContent:"Eszenaren edukia:"},Z5e={desc_intro:"Jendea zure uneko eszenara gonbida dezakezu zurekin elkarlanean aritzeko.",desc_privacy:"Ez kezkatu, saioak muturretik muturrerako enkriptatzea erabiltzen du, beraz, marrazten duzuna pribatua izango da. Gure zerbitzariak ere ezingo du ikusi zer egiten duzun.",button_startSession:"Hasi saioa",button_stopSession:"Itxi saioa",desc_inProgressIntro:"Zuzeneko lankidetza saioa abian da.",desc_shareLink:"Partekatu esteka hau elkarlanean aritu nahi duzun edonorekin:",desc_exitSession:"Saioa ixteak aretotik deskonektatuko zaitu, baina eszenarekin lanean jarraitu ahal izango duzu lokalean. Kontuan izan honek ez diela beste pertsonei eragingo, eta euren bertsioan elkarlanean aritu ahal izango dira.",shareTitle:"Sartu Excalidraw-en zuzeneko lankidetza-saio batean"},V5e={title:"Errorea"},j5e={disk_title:"Gorde diskoan",disk_details:"Esportatu eszenaren datuak geroago inportatu ahal izango duzun fitxategi batan.",disk_button:"Gorde fitxategian",link_title:"Partekatzeko esteka",link_details:"Esportatu irakurtzeko soilik moduko esteka.",link_button:"Esportatu esteka",excalidrawplus_description:"Gorde eszena zure Excalidraw+ laneko areara.",excalidrawplus_button:"Esportatu",excalidrawplus_exportError:"Une honetan ezin izan da esportatu Excalidraw+era..."},X5e={blog:"Irakurri gure bloga",click:"sakatu",deepSelect:"Hautapen sakona",deepBoxSelect:"Hautapen sakona egin laukizuzen bidez, eta saihestu arrastatzea",curvedArrow:"Gezi kurbatua",curvedLine:"Lerro kurbatua",documentation:"Dokumentazioa",doubleClick:"klik bikoitza",drag:"arrastatu",editor:"Editorea",editLineArrowPoints:"Editatu lerroak/gezi-puntuak",editText:"Editatu testua / gehitu etiketa",github:"Arazorik izan al duzu? Eman horren berri",howto:"Jarraitu gure gidak",or:"edo",preventBinding:"Saihestu gezien gainjartzea",tools:"Tresnak",shortcuts:"Laster-teklak",textFinish:"Bukatu edizioa (testu editorea)",textNewLine:"Gehitu lerro berri bat (testu editorea)",title:"Laguntza",view:"Bistaratu",zoomToFit:"Egin zoom elementu guztiak ikusteko",zoomToSelection:"Zooma hautapenera",toggleElementLock:"Blokeatu/desbloketatu hautapena",movePageUpDown:"Mugitu orria gora/behera",movePageLeftRight:"Mugitu orria ezker/eskuin"},$5e={title:"Garbitu oihala"},Abe={title:"Argitaratu liburutegia",itemName:"Elementuaren izena",authorName:"Egilearen izena",githubUsername:"GitHub-eko erabiltzaile-izena",twitterUsername:"Twitter-eko erabiltzaile-izena",libraryName:"Liburutegiaren izena",libraryDesc:"Liburutegiaren deskripzioa",website:"Webgunea",placeholder:{authorName:"Zure izena edo erabiltzaile-izena",libraryName:"Zure liburutegiaren izena",libraryDesc:"Zure liburutegiaren deskripzioa laguntzeko jendeari ulertzen haren erabilpena",githubHandle:"GitHub heldulekua (aukerakoa), liburutegia editatu ahal izateko berrikustera bidalitakoan",twitterHandle:"Twitter-eko erabiltzaile-izena (aukerakoa), badakigu nori kreditatu behar dugun Twitter bidez sustatzeko",website:"Estekatu zure webgunera edo nahi duzun tokira (aukerakoa)"},errors:{required:"Beharrezkoa",website:"Sartu baliozko URL bat"},noteDescription:"Bidali zure liburutegira sartu ahal izateko <link>zure liburutegiko biltegian</link>beste jendeak bere marrazkietan erabili ahal izateko.",noteGuidelines:"Liburutegia eskuz onartu behar da. Irakurri <link>gidalerroak</link> bidali aurretik. GitHub kontu bat edukitzea komeni da komunikatzeko eta aldaketak egin ahal izateko, baina ez da guztiz beharrezkoa.",noteLicense:"Bidaltzen baduzu, onartzen duzu liburutegia <link>MIT lizentziarekin argitaratuko dela, </link>zeinak, laburbilduz, esan nahi du edozeinek erabiltzen ahal duela murrizketarik gabe.",noteItems:"Liburutegiko elementu bakoitzak bere izena eduki behar du iragazi ahal izateko. Liburutegiko hurrengo elementuak barne daude:",atleastOneLibItem:"Hautatu gutxienez liburutegiko elementu bat gutxienez hasi ahal izateko",republishWarning:"Oharra: hautatutako elementu batzuk dagoeneko argitaratuta/bidalita bezala markatuta daude. Elementuak berriro bidali behar dituzu lehendik dagoen liburutegi edo bidalketa eguneratzen duzunean."},ebe={title:"Liburutegia bidali da",content:"Eskerrik asko {{authorName}}. Zure liburutegia bidali da berrikustera. Jarraitu dezakezu haren egoera<link>hemen</link>"},tbe={resetLibrary:"Leheneratu liburutegia",removeItemsFromLib:"Kendu hautatutako elementuak liburutegitik"},rbe={header:"Esportatu irudia",label:{withBackground:"Atzeko planoa",onlySelected:"Hautapena soilik",darkMode:"Modu iluna",embedScene:"Txertatu eszena",scale:"Eskala",padding:"Betegarria"},tooltip:{embedScene:`Eszenaren datuak esportatutako PNG/SVG fitxategian gordeko dira, eszena bertatik berrezartzeko.
Esportatutako fitxategien tamaina handituko da.`},title:{exportToPng:"Esportatu PNG gisa",exportToSvg:"Esportatu SVG gisa",copyPngToClipboard:"Kopiatu PNG arbelera"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopiatu arbelean"}},ibe={tooltip:"Zure marrazkiak muturretik muturrera enkriptatu dira, beraz Excalidraw-ren zerbitzariek ezingo dituzte ikusi.",link:"Excalidraw-ren muturretik muturrerako enkriptatzearen gaineko mezua blogean"},ube={angle:"Angelua",element:"Elementua",elements:"Elementuak",height:"Altuera",scene:"Eszena",selected:"Hautatua",storage:"Biltegia",title:"Datuak",total:"Guztira",version:"Bertsioa",versionCopy:"Klikatu kopiatzeko",versionNotAvailable:"Bertsio ez eskuragarria",width:"Zabalera"},abe={addedToLibrary:"Liburutegira gehitu da",copyStyles:"Estiloak kopiatu dira.",copyToClipboard:"Arbelean kopiatu da.",copyToClipboardAsPng:`{{exportSelection}} kopiatu da arbelean PNG gisa
({{exportColorScheme}})`,fileSaved:"Fitxategia gorde da.",fileSavedToFilename:"{filename}-n gorde da",canvas:"oihala",selection:"hautapena",pasteAsSingleElement:`Erabili {{shortcut}} elementu bakar gisa itsasteko,
edo itsatsi lehendik dagoen testu-editore batean`,unableToEmbed:"Url hau txertatzea ez da une honetan onartzen. Sortu issue bat GitHub-en Urla zerrenda zurian sartzea eskatzeko",unrecognizedLinkFormat:"Kapsulatu duzun esteka ez dator bat espero den formatuarekin. Mesedez, saiatu iturburu-guneak emandako 'kapsulatu' katea itsasten"},nbe={transparent:"Gardena",black:"Beltza",white:"Zuria",red:"Gorria",pink:"Arrosa",grape:"Mahats kolorea",violet:"Bioleta",gray:"Grisa",blue:"Urdina",cyan:"Ziana",teal:"Berde urdinxka",green:"Berdea",yellow:"Horia",orange:"Laranja",bronze:"Brontzea"},obe={app:{center_heading:"Zure datu guztiak lokalean gordetzen dira zure nabigatzailean.",center_heading_plus:"Horren ordez Excalidraw+-era joan nahi al zenuen?",menuHint:"Esportatu, hobespenak, hizkuntzak..."},defaults:{menuHint:"Esportatu, hobespenak eta gehiago...",center_heading:"Diagramak. Egina. Sinplea.",toolbarHint:"Aukeratu tresna bat eta hasi marrazten!",helpHint:"Lasterbideak eta laguntza"}},sbe={mostUsedCustomColors:"Gehien erabilitako kolore pertsonalizatuak",colors:"Koloreak",shades:"Ñabardurak",hexCode:"Hez kodea",noShades:"Kolore honetarako ez dago ñabardurarik eskuragarri"},lbe={action:{exportToImage:{title:"Esportatu irudi gisa",button:"Esportatu irudi gisa",description:"Esportatu eszenaren datuak geroago inportatu ahal izango duzun irudi gisa."},saveToDisk:{title:"Gorde diskoan",button:"Gorde diskoan",description:"Esportatu eszenaren datuak geroago inportatu ahal izango duzun fitxategi batan."},excalidrawPlus:{title:"Excalidraw+",button:"Esportatu Excalidraw+ra",description:"Gorde eszena zure Excalidraw+ laneko areara."}},modal:{loadFromFile:{title:"Fitxategitik kargatu",button:"Fitxategitik kargatu",description:"Fitxategi batetik kargatzeak <bold>lehendik duzun edukia ordezkatuko du</bold>.<br></br>Lehenengo marrazkiaren babeskopia egin dezakezu beheko aukeretako bat erabiliz."},shareableLink:{title:"Estekatik kargatu",button:"Ordeztu nire edukia",description:"Kanpoko irudi bat kargatzeak <bold>lehendik duzun edukia ordezkatuko du</bold>.<br></br>. Zure marrazkiaren babeskopia egin dezakezu lehenik beheko aukeretako bat erabiliz."}}},gbe={title:"",button:"Txertatu",description:"",syntax:"",preview:"Aurrebista"},kcr={labels:Y5e,library:H5e,buttons:K5e,alerts:J5e,errors:O5e,toolBar:P5e,headings:_5e,hints:W5e,canvasError:q5e,errorSplash:z5e,roomDialog:Z5e,errorDialog:V5e,exportDialog:j5e,helpDialog:X5e,clearCanvasDialog:$5e,publishDialog:Abe,publishSuccessDialog:ebe,confirmDialog:tbe,imageExportDialog:rbe,encrypted:ibe,stats:ube,toast:abe,colors:nbe,welcomeScreen:obe,colorPicker:sbe,overwriteConfirm:lbe,mermaid:gbe}});var Kbe={};Dt(Kbe,{alerts:()=>Ibe,buttons:()=>dbe,canvasError:()=>mbe,clearCanvasDialog:()=>kbe,colorPicker:()=>Tbe,colors:()=>Ube,confirmDialog:()=>Sbe,default:()=>Fcr,encrypted:()=>Rbe,errorDialog:()=>wbe,errorSplash:()=>Dbe,errors:()=>hbe,exportDialog:()=>bbe,headings:()=>pbe,helpDialog:()=>vbe,hints:()=>fbe,imageExportDialog:()=>Lbe,labels:()=>Bbe,library:()=>Ebe,mermaid:()=>Hbe,overwriteConfirm:()=>Ybe,publishDialog:()=>Fbe,publishSuccessDialog:()=>xbe,roomDialog:()=>ybe,stats:()=>Nbe,toast:()=>Gbe,toolBar:()=>Qbe,welcomeScreen:()=>Mbe});var Bbe,Ebe,dbe,Ibe,hbe,Qbe,pbe,fbe,mbe,Dbe,ybe,wbe,bbe,vbe,kbe,Fbe,xbe,Sbe,Lbe,Rbe,Nbe,Gbe,Ube,Mbe,Tbe,Ybe,Hbe,Fcr;var Jbe=_(()=>{zt();Bbe={paste:"جای گذاری",pasteAsPlaintext:"جای‌گذاری به عنوان متن ساده",pasteCharts:"قراردادن نمودارها",selectAll:"انتخاب همه",multiSelect:"یک ایتم به انتخاب شده ها اضافه کنید.",moveCanvas:"جابجایی بوم",cut:"بریدن",copy:"کپی",copyAsPng:"کپی در حافطه موقت به صورت PNG",copyAsSvg:"کپی در حافطه موقت به صورت SVG",copyText:"کپی در حافطه موقت به صورت متن",copySource:"",convertToCode:"",bringForward:"جلو آوردن",sendToBack:"پس فرستادن",bringToFront:"جلو آوردن",sendBackward:"پس فرستادن",delete:"حذف",copyStyles:"کپی سبک",pasteStyles:"جای گذاری سبک",stroke:"حاشیه",background:"پس زمینه",fill:"رنگ آمیزی",strokeWidth:"ضخامت حاشیه",strokeStyle:"استایل حاشیه",strokeStyle_solid:"یکدست",strokeStyle_dashed:"خط چین",strokeStyle_dotted:"نقطه چین",sloppiness:"دقت",opacity:"شفافیت",textAlign:"چیدمان متن",edges:"لبه ها",sharp:"تیز",round:"دور",arrowheads:"سر پیکان",arrowhead_none:"هیچ کدام",arrowhead_arrow:"پیکان",arrowhead_bar:"میله ای",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"مثلث",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"اندازه قلم",fontFamily:"نوع قلم",addWatermark:'"ساخته شده با Excalidraw" را اضافه کن',handDrawn:"دست نویس",normal:"عادی",code:"کد",small:"کوچک",medium:"متوسط",large:"بزرگ",veryLarge:"بسیار بزرگ",solid:"توپر",hachure:"هاشور",zigzag:"زیگزاگ",crossHatch:"هاشور متقاطع",thin:"نازک",bold:"ضخیم",left:"چپ",center:"وسط",right:"راست",extraBold:"خیلی ضخیم",architect:"معمار",artist:"هنرمند",cartoonist:"کارتونیست",fileTitle:"نام فایل",colorPicker:"انتخابگر رنگ",canvasColors:"رنگ های بوم",canvasBackground:"بوم",drawingCanvas:"بوم نقاشی",layers:"لایه ها",actions:"عملیات",language:"زبان",liveCollaboration:"همکاری آنلاین...",duplicateSelection:"تکرار",untitled:"بدون عنوان",name:"نام",yourName:"نام شما",madeWithExcalidraw:"ساخته شده با Excalidraw",group:"گروهبندی انتخابها",ungroup:"حذف گروهبندی انتخابها",collaborators:"همکاران",showGrid:"نمایش گرید",addToLibrary:"افزودن به کتابخانه",removeFromLibrary:"حذف از کتابخانه",libraryLoadingMessage:"بارگذاری کتابخانه…",libraries:"مرور کردن کتابخانه ها",loadingScene:"باگذاری صحنه…",align:"تراز",alignTop:"تراز به بالا",alignBottom:"تراز به پایین",alignLeft:"تراز به چپ",alignRight:"تراز به راست",centerVertically:"وسط قرار دادن به صورت عمودی",centerHorizontally:"وسط قرار دادن به صورت افقی",distributeHorizontally:"توزیع کردن به صورت افقی",distributeVertically:"توزیع کردن به صورت عمودی",flipHorizontal:"چرخش افقی",flipVertical:"چرخش عمودی",viewMode:"حالت نمایش",share:"اشتراک‌گذاری",showStroke:"نمایش انتخاب کننده رنگ حاشیه",showBackground:"نمایش انتخاب کننده رنگ پس زمینه",toggleTheme:"تغییر تم",personalLib:"کتابخانه شخصی",excalidrawLib:"کتابخانه",decreaseFontSize:"کاهش اندازه فونت",increaseFontSize:"افزایش دادن اندازه فونت",unbindText:"بازکردن نوشته",bindText:"بستن نوشته",createContainerFromText:"متن را در یک جایگاه بپیچید",link:{edit:"ویرایش لینک",editEmbed:"",create:"ایجاد پیوند",createEmbed:"",label:"لینک",labelEmbed:"",empty:""},lineEditor:{edit:"ویرایش لینک",exit:"خروج از ویرایشگر"},elementLock:{lock:"قفل",unlock:"باز کردن",lockAll:"قفل همه",unlockAll:"باز کردن قفل همه"},statusPublished:"منتشر شده",sidebarLock:"باز نگه داشتن سایدبار",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"انتخاب رنگ از کرباس",textToDiagram:"",prompt:""},Ebe={noItems:"آیتمی به اینجا اضافه نشده...",hint_emptyLibrary:"یک آیتم روی بوم را برای اضافه شده به اینجا انتخاب کنید، یا یک کتابخانه از مخزن عمومی در بخش پایین را نصب کنید.",hint_emptyPrivateLibrary:"یک آیتم روی بوم را برای اضافه شدن به اینجا انتخاب کنید."},dbe={clearReset:"پاکسازی بوم نقاشی",exportJSON:"خروجی در فایل",exportImage:"خروجی گرفتن از تصویر...",export:"ذخیره در...",copyToClipboard:"کپی در حافظه موقت",save:"ذخیره در همین فایل",saveAs:"ذخیره با نام",load:"باز کردن",getShareableLink:"دریافت لینک قابل اشتراک",close:"بستن",selectLanguage:"انتخاب زبان",scrollBackToContent:"به محتوا بروید",zoomIn:"بزرگ نمایی",zoomOut:"کوچک نمایی",resetZoom:"اندازه اصلی",menu:"فهرست",done:"انجام شد",edit:"ویرایش",undo:"بازگرد",redo:"از سر",resetLibrary:"تنظیم مجدد کتابخانه",createNewRoom:"ایجاد یک اتاق جدید",fullScreen:"تمام‌صفحه",darkMode:"حالت تیره",lightMode:"حالت روشن",zenMode:"حالت ذن",objectsSnapMode:"",exitZenMode:"خروج از حالت تمرکز",cancel:"لغو",clear:"پاک کردن",remove:"پاک کردن",embed:"",publishLibrary:"انتشار",submit:"ارسال",confirm:"تایید",embeddableInteractionButton:""},Ibe={clearReset:"این کار کل صفحه را پاک میکند. آیا مطمئنید؟",couldNotCreateShareableLink:"عدم توانایی در ساخت یک لینک قابل اشتراک.",couldNotCreateShareableLinkTooBig:"لینک قابل اشتراک گذاری ایجاد نشد: محتوای صحنه بسیار بزرگ است",couldNotLoadInvalidFile:"عدم توانایی در بازگذاری فایل نامعتبر",importBackendFailed:"بارگیری از پشت صحنه با شکست مواجه شد.",cannotExportEmptyCanvas:"بوم خالی قابل تبدیل نیست.",couldNotCopyToClipboard:"به کلیپ بورد کپی نشد.",decryptFailed:"رمزگشایی داده ها امکان پذیر نیست.",uploadedSecurly:"آپلود با رمزگذاری دو طرفه انجام میشود، به این معنی که سرور Excalidraw و اشخاص ثالث نمی توانند مطالب شما را بخوانند.",loadSceneOverridePrompt:"بارگزاری یک طرح خارجی محتوای فعلی رو از بین میبرد. آیا میخواهید ادامه دهید؟",collabStopOverridePrompt:`با توقف بوم نقاشی، نقشه قبلی و ذخیره شده محلی شما را بازنویسی می کند. مطمئنی؟
(اگر می خواهید نقاشی محلی خود را حفظ کنید، به سادگی برگه مرورگر را ببندید.)`,errorAddingToLibrary:"مورد به کتابخانه اضافه نشد",errorRemovingFromLibrary:"مورد از کتابخانه حذف نشد",confirmAddLibrary:"{{numShapes}} از اشکال به کتابخانه شما اضافه خواهد شد. مطمئن هستید؟",imageDoesNotContainScene:"به نظر نمی رسد این تصویر حاوی داده های بوم نقاشی باشد. آیا جاسازی صحنه را در حین خروجی فعال کرده اید?",cannotRestoreFromImage:"صحنه را نمی توان از این فایل تصویری بازیابی کرد",invalidSceneUrl:"بوم نقاشی از آدرس ارائه شده وارد نشد. این یا نادرست است، یا حاوی داده Excalidraw JSON معتبر نیست.",resetLibrary:"ین کار کل صفحه را پاک میکند. آیا مطمئنید?",removeItemsFromsLibrary:"حذف {{count}} آیتم(ها) از کتابخانه?",invalidEncryptionKey:"کلید رمزگذاری باید 22 کاراکتر باشد. همکاری زنده غیرفعال است.",collabOfflineWarning:`اتصال به اینترنت در دسترس نیست.
تغییرات شما ذخیره نمی شود!`},hbe={unsupportedFileType:"نوع فایل پشتیبانی نشده.",imageInsertError:"عکس ارسال نشد. بعداً دوباره تلاش کنید...",fileTooBig:"فایل خیلی بزرگ است حداکثر اندازه مجاز {{maxSize}}.",svgImageInsertError:"تصویر SVG وارد نشد. نشانه گذاری SVG نامعتبر به نظر می رسد.",failedToFetchImage:"",invalidSVGString:"SVG نادرست.",cannotResolveCollabServer:"به سرور collab متصل نشد. لطفا صفحه را مجددا بارگذاری کنید و دوباره تلاش کنید.",importLibraryError:"داده‌ها بارگذاری نشدند",collabSaveFailed:"در پایگاه داده باطن ذخیره نشد. اگر مشکلات همچنان ادامه داشت، باید فایل خود را به صورت محلی ذخیره کنید تا مطمئن شوید کار خود را از دست نمی دهید.",collabSaveFailed_sizeExceeded:"در پایگاه داده بکند ذخیره نشد. اگر مشکلات همچنان ادامه داشت، باید فایل خود را به صورت محلی ذخیره کنید تا مطمئن شوید کار خود را از دست نمی دهید.",imageToolNotSupported:"",brave_measure_text_error:{line1:"به نظر می‌رسد از مرورگر Brave با تنظیم <bold> مسدود کردن شدید اثرانگشت</bold> استفاده می‌کنید.",line2:"این می تواند منجر به شکستن <bold>عناصر متن</bold> در نقاشی های شما شود.",line3:"اکیداً توصیه می کنیم این تنظیم را غیرفعال کنید. برای نحوه انجام این کار می‌توانید <link>این مراحل</link> را دنبال کنید.",line4:"اگر غیرفعال کردن این تنظیم نمایش عناصر متنی را برطرف نکرد، لطفاً یک <issueLink>مشکل</issueLink> را در GitHub ما باز کنید یا برای ما در <discordLink>Discord</discordLink> بنویسید."},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},Qbe={selection:"گزینش",image:"وارد کردن تصویر",rectangle:"مستطیل",diamond:"لوزی",ellipse:"بیضی",arrow:"پیکان",line:"خط",freedraw:"کشیدن",text:"متن",library:"کتابخانه",lock:"ابزار انتخاب شده را بعد از کشیدن نگه دار",penMode:"حالت قلم - جلوگیری از تماس",link:"افزودن/به‌روزرسانی پیوند برای شکل انتخابی",eraser:"پاک کن",frame:"",magicframe:"",embeddable:"",laser:"",hand:"دست (ابزار پانینگ)",extraTools:"ابزارهای بیشتر",mermaidToExcalidraw:"",magicSettings:""},pbe={canvasActions:"عملیات روی بوم",selectedShapeActions:"عملیات روی شکل انتخاب شده",shapes:"شکل‌ها"},fbe={canvasPanning:"برای حرکت دادن بوم، چرخ ماوس یا فاصله را در حین کشیدن نگه دارید یا از ابزار دستی استفاده کنید",linearElement:"برای چند نقطه کلیک و برای یک خط بکشید",freeDraw:"کلیک کنید و بکشید و وقتی کار تمام شد رها کنید",text:"نکته: با برنامه انتخاب شده شما میتوانید با دوبار کلیک کردن هرکجا میخواید متن اظاف کنید",embeddable:"",text_selected:"دوبار کلیک کنید یا Enter را فشار دهید تا نقاط را ویرایش کنید",text_editing:"Escape یا CtrlOrCmd+ENTER را فشار دهید تا ویرایش تمام شود",linearElementMulti:"روی آخرین نقطه کلیک کنید یا کلید ESC را بزنید یا کلید Enter را بزنید برای اتمام کار",lockAngle:"با نگه داشتن SHIFT هنگام چرخش می توانید زاویه ها را محدود کنید",resize:"می توانید با نگه داشتن SHIFT در هنگام تغییر اندازه، نسبت ها را محدود کنید،ALT را برای تغییر اندازه از مرکز نگه دارید",resizeImage:`با نگه داشتن SHIFT می توانید آزادانه اندازه را تغییر دهید،
برای تغییر اندازه از مرکز، ALT را نگه دارید`,rotate:"با نگه داشتن SHIFT هنگام چرخش می توانید زاویه ها را محدود کنید",lineEditor_info:"CtrlOrCmd را نگه دارید و دوبار کلیک کنید یا CtrlOrCmd + Enter را فشار دهید تا نقاط را ویرایش کنید.",lineEditor_pointSelected:"برای حذف نقطه Delete برای کپی زدن Ctrl یا Cmd+D را بزنید و یا برای جابجایی بکشید",lineEditor_nothingSelected:`یک نقطه را برای ویرایش انتخاب کنید (SHIFT را برای انتخاب چندگانه نگه دارید)،
یا Alt را نگه دارید و برای افزودن نقاط جدید کلیک کنید`,placeImage:"برای قرار دادن تصویر کلیک کنید، یا کلیک کنید و بکشید تا اندازه آن به صورت دستی تنظیم شود",publishLibrary:"کتابخانه خود را منتشر کنید",bindTextToElement:"برای افزودن اینتر را بزنید",deepBoxSelect:"CtrlOrCmd را برای انتخاب عمیق و جلوگیری از کشیدن نگه دارید",eraserRevert:"Alt را نگه دارید تا عناصر علامت گذاری شده برای حذف برگردند",firefox_clipboard_write:'احتمالاً می‌توان این ویژگی را با تنظیم پرچم «dom.events.asyncClipboard.clipboardItem» روی «true» فعال کرد. برای تغییر پرچم های مرورگر در فایرفاکس، از صفحه "about:config" دیدن کنید.',disableSnapping:""},mbe={cannotShowPreview:"پیش نمایش نشان داده نمی شود",canvasTooBig:"بوم نقاشی بسیار بزرگ است.",canvasTooBigTip:"نکته: سعی کنید دورترین عناصر را کمی به همدیگر نزدیک کنید."},Dbe={headingMain:"",clearCanvasMessage:"اگر بازنشانی صفحه مشکل را حل نکرد این را امتحان کنید ",clearCanvasCaveat:" این باعث میشود کارهای شما ذخیره نشود ",trackedToSentry:"",openIssueMessage:"",sceneContent:"محتوای صحنه:"},ybe={desc_intro:"می توانید افرادی را به صحنه فعلی خود دعوت کنید تا با شما همکاری کنند.",desc_privacy:"نگران نباشید، این جلسه از رمزگذاری دوطرفه استفاده می کند، پس هر چیزی بکشید خصوصی خواهد ماند. حتی سرور ما نمیتواند ببیند چیزی که شما طراحی میکنید.",button_startSession:"شروع جلسه",button_stopSession:"پایان جلسه",desc_inProgressIntro:"جلسه همکاری آنلاین در حال انجام است.",desc_shareLink:"این لینک را با هر کسی که می خواهید با او همکاری کنید به اشتراک بگذارید:",desc_exitSession:"با پایان دادن جلسه، شما از اتاق حذف میکند، اما می توانید به صورت محلی کار خود را با بوم ادامه دهید. توجه داشته باشید که این مورد بر سایر افراد تأثیر نمی گذارد و همچنان می توانند در نسخه خود همکاری کنند.",shareTitle:"به یک جلسه همکاری زنده در Excalidraw بپیوندید"},wbe={title:"خطا"},bbe={disk_title:"ذخیره در دیسک",disk_details:"داده های صحنه را به فایلی که بعداً می توانید از آن وارد کنید صادر کنید.",disk_button:"ذخیره در فایل",link_title:"لینک قابل اشتراک‌گذاری",link_details:"خروجی به عنوان یک پیوند فقط خواندنی.",link_button:"خروجی در فایل",excalidrawplus_description:"صحنه را در فضای کاری Excalidraw+ خود ذخیره کنید.",excalidrawplus_button:"خروجی گرفتن",excalidrawplus_exportError:"در حال حاضر نمی‌توان به Excalidraw+ صادر کرد..."},vbe={blog:"بلاگ ما را بخوانید",click:"کلیک",deepSelect:"انتخاب عمیق",deepBoxSelect:"انتخاب عمیق در کادر، و جلوگیری از کشیدن",curvedArrow:"فلش خمیده",curvedLine:"منحنی",documentation:"مستندات",doubleClick:"دابل کلیک",drag:"کشیدن",editor:"ویرایشگر",editLineArrowPoints:"نقاط خط/پیکان را ویرایش کنید",editText:"ویرایش متن / افزودن برچسب",github:"اشکالی می بینید؟ گزارش دهید",howto:"راهنمای ما را دنبال کنید",or:"یا",preventBinding:"مانع شدن از چسبیدن فلش ها",tools:"ابزار",shortcuts:"میانبرهای صفحه کلید",textFinish:"پایان ویرایش (ویرایشگر متن)",textNewLine:"افزودن خط جدید (ویرایشگر متن)",title:"راهنما",view:"مشاهده",zoomToFit:"بزرگنمایی برای دیدن تمام آیتم ها",zoomToSelection:"بزرگنمایی قسمت انتخاب شده",toggleElementLock:"قفل/بازکردن انتخاب شده ها",movePageUpDown:"حرکت صفحه به بالا/پایین",movePageLeftRight:"حرکت صفحه به چپ/راست"},kbe={title:"پاک کردن بوم"},Fbe={title:"انتشار کتابخانه",itemName:"نام آیتم",authorName:"نام نویسنده",githubUsername:"نام کاربری گیت هاب",twitterUsername:"نام کاربری توییتر",libraryName:"نام کتابخانه",libraryDesc:"توضیحات کتابخانه",website:"تارنما",placeholder:{authorName:"نام یا نام کاربری شما",libraryName:"اسم کتابخانه",libraryDesc:"شرحی از کتابخانه شما برای کمک به مردم برای درک استفاده از آن",githubHandle:"دسته GitHub (اختیاری)، بنابراین می توانید پس از ارسال برای بررسی، کتابخانه را ویرایش کنید",twitterHandle:"نام کاربری توییتر (اختیاری)، بنابراین می دانیم هنگام تبلیغ در توییتر به چه کسی اعتبار دهیم",website:"پیوند به وب سایت شخصی شما یا هر جای دیگر (اختیاری)"},errors:{required:"لازم",website:"وارد کردن آدرس درست"},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"هر مورد کتابخانه باید نام خاص خود را داشته باشد تا قابل فیلتر باشد. اقلام کتابخانه زیر شامل خواهد شد:",atleastOneLibItem:"لطفاً حداقل یک مورد از کتابخانه را برای شروع انتخاب کنید",republishWarning:"توجه: برخی از موارد انتخاب شده به عنوان قبلاً منتشر شده/ارسال شده علامت گذاری شده اند. شما فقط باید هنگام به‌روزرسانی یک کتابخانه موجود یا ارسال، موارد را دوباره ارسال کنید."},xbe={title:"کتابخانه ارسال شد",content:"تشکر از شما {{authorName}}. کتابخانه شما برای بررسی ارسال شده است. می توانید وضعیت را پیگیری کنید"},Sbe={resetLibrary:"تنظیم مجدد کتابخانه",removeItemsFromLib:"موارد انتخاب شده از موارد پسندیده حذف شوند"},Lbe={header:"",label:{withBackground:"پس زمینه",onlySelected:"",darkMode:"حالت تیره",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"کپی در کلیپ‌بورد"}},Rbe={tooltip:"شما در یک محیط رمزگزاری شده دو طرفه در حال طراحی هستید پس Excalidraw هرگز طرح های شما را نمیبند.",link:"پست وبلاگ در مورد رمزگذاری سرتاسر در Excalidraw"},Nbe={angle:"زاویه",element:"اِلمان",elements:"اِلمان ها",height:"ارتفاع",scene:"صحنه",selected:"انتخاب شده",storage:"حافظه",title:"آمار برای نردها",total:"مجموع",version:"نسخه",versionCopy:"برای کپی کردن کلیک کنید",versionNotAvailable:"نسخه غیرقابل دسترس",width:"عرض"},Gbe={addedToLibrary:"به مجموعه اضافه شد",copyStyles:"کپی سبک.",copyToClipboard:"در کلیپ‌بورد کپی شد.",copyToClipboardAsPng:`کپی {{exportSelection}} در کلیپبورد به عنوان PNG
({{exportColorScheme}})`,fileSaved:"فایل ذخیره شد.",fileSavedToFilename:"ذخیره در {filename}",canvas:"بوم",selection:"انتخاب",pasteAsSingleElement:`از {{shortcut}} برای چسباندن به عنوان یک عنصر استفاده کنید،
یا در یک ویرایشگر متن موجود جایگذاری کنید`,unableToEmbed:"",unrecognizedLinkFormat:""},Ube={transparent:"شفاف",black:"سیاه",white:"سفید",red:"قرمز",pink:"صورتی",grape:"یاقوتی",violet:"بنفش",gray:"خاکستری",blue:"آبی",cyan:"فیروزه‌ای",teal:"سبزآبی",green:"سبز",yellow:"زرد",orange:"نارنجی",bronze:"برنزی"},Mbe={app:{center_heading:"تمام داده های شما به صورت محلی در مرورگر شما ذخیره می شود.",center_heading_plus:"آیا می‌خواهید به جای آن به Excalidraw+ بروید؟",menuHint:"خروجی، ترجیحات، زبان ها، ..."},defaults:{menuHint:"خروجی، ترجیحات، وبیشتر ...",center_heading:"نمودارها .ساخته شده. ساده.",toolbarHint:"ابزاری را انتخاب کنید و نقاشی را شروع کنید!",helpHint:"میانبرها و راهنما"}},Tbe={mostUsedCustomColors:"",colors:"رنگ‌ها",shades:"جلوه‌ها",hexCode:"کدِ هگز",noShades:""},Ybe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"ذخیره در دیسک",button:"ذخیره در دیسک",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"بارگذاری از فایل",button:"بارگذاری از فایل",description:""},shareableLink:{title:"",button:"",description:""}}},Hbe={title:"",button:"",description:"",syntax:"",preview:"پیش‌نمایش"},Fcr={labels:Bbe,library:Ebe,buttons:dbe,alerts:Ibe,errors:hbe,toolBar:Qbe,headings:pbe,hints:fbe,canvasError:mbe,errorSplash:Dbe,roomDialog:ybe,errorDialog:wbe,exportDialog:bbe,helpDialog:vbe,clearCanvasDialog:kbe,publishDialog:Fbe,publishSuccessDialog:xbe,confirmDialog:Sbe,imageExportDialog:Lbe,encrypted:Rbe,stats:Nbe,toast:Gbe,colors:Ube,welcomeScreen:Mbe,colorPicker:Tbe,overwriteConfirm:Ybe,mermaid:Hbe}});var dve={};Dt(dve,{alerts:()=>Wbe,buttons:()=>_be,canvasError:()=>jbe,clearCanvasDialog:()=>rve,colorPicker:()=>Cve,colors:()=>gve,confirmDialog:()=>ave,default:()=>xcr,encrypted:()=>ove,errorDialog:()=>Ave,errorSplash:()=>Xbe,errors:()=>qbe,exportDialog:()=>eve,headings:()=>Zbe,helpDialog:()=>tve,hints:()=>Vbe,imageExportDialog:()=>nve,labels:()=>Obe,library:()=>Pbe,mermaid:()=>Eve,overwriteConfirm:()=>Bve,publishDialog:()=>ive,publishSuccessDialog:()=>uve,roomDialog:()=>$be,stats:()=>sve,toast:()=>lve,toolBar:()=>zbe,welcomeScreen:()=>cve});var Obe,Pbe,_be,Wbe,qbe,zbe,Zbe,Vbe,jbe,Xbe,$be,Ave,eve,tve,rve,ive,uve,ave,nve,ove,sve,lve,gve,cve,Cve,Bve,Eve,xcr;var Ive=_(()=>{zt();Obe={paste:"Liitä",pasteAsPlaintext:"Liitä pelkkänä tekstinä",pasteCharts:"Liitä kaaviot",selectAll:"Valitse kaikki",multiSelect:"Lisää kohde valintaan",moveCanvas:"Siirrä piirtoaluetta",cut:"Leikkaa",copy:"Kopioi",copyAsPng:"Kopioi leikepöydälle PNG-tiedostona",copyAsSvg:"Kopioi leikepöydälle SVG-tiedostona",copyText:"Kopioi tekstinä",copySource:"",convertToCode:"",bringForward:"Tuo eteenpäin",sendToBack:"Vie taakse",bringToFront:"Tuo eteen",sendBackward:"Vie taaksepäin",delete:"Poista",copyStyles:"Kopioi tyyli",pasteStyles:"Liitä tyyli",stroke:"Piirto",background:"Tausta",fill:"Täyttö",strokeWidth:"Viivan leveys",strokeStyle:"Viivan tyyli",strokeStyle_solid:"Yhtenäinen",strokeStyle_dashed:"Katkoviiva",strokeStyle_dotted:"Pisteviiva",sloppiness:"Viivan tarkkuus",opacity:"Peittävyys",textAlign:"Tekstin tasaus",edges:"Reunat",sharp:"Terävä",round:"Pyöristetty",arrowheads:"Nuolenkärjet",arrowhead_none:"Ei mitään",arrowhead_arrow:"Nuoli",arrowhead_bar:"Tasapää",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Kolmio",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Kirjasinkoko",fontFamily:"Kirjasintyyppi",addWatermark:'Lisää "Tehty Excalidrawilla"',handDrawn:"Käsinpiirretty",normal:"Tavallinen",code:"Koodi",small:"Pieni",medium:"Keskikoko",large:"Suuri",veryLarge:"Erittäin suuri",solid:"Yhtenäinen",hachure:"Vinoviivoitus",zigzag:"",crossHatch:"Ristiviivoitus",thin:"Ohut",bold:"Lihavoitu",left:"Vasen",center:"Keskitä",right:"Oikea",extraBold:"Erittäin lihavoitu",architect:"Arkkitehti",artist:"Taiteilija",cartoonist:"Sarjakuva",fileTitle:"Tiedostonimi",colorPicker:"Värin valinta",canvasColors:"Käytössä piirtoalueella",canvasBackground:"Piirtoalueen tausta",drawingCanvas:"Piirtoalue",layers:"Tasot",actions:"Toiminnot",language:"Kieli",liveCollaboration:"Live Yhteistyö...",duplicateSelection:"Monista",untitled:"Nimetön",name:"Nimi",yourName:"Nimesi",madeWithExcalidraw:"Tehty Excalidrawilla",group:"Ryhmitä valinta",ungroup:"Pura valittu ryhmä",collaborators:"Yhteistyökumppanit",showGrid:"Näytä ruudukko",addToLibrary:"Lisää kirjastoon",removeFromLibrary:"Poista kirjastosta",libraryLoadingMessage:"Ladataan kirjastoa…",libraries:"Selaa kirjastoja",loadingScene:"Ladataan työtä…",align:"Tasaa",alignTop:"Tasaa ylös",alignBottom:"Tasaa alas",alignLeft:"Tasaa vasemmalle",alignRight:"Tasaa oikealle",centerVertically:"Keskitä pystysuunnassa",centerHorizontally:"Keskitä vaakasuunnassa",distributeHorizontally:"Jaa vaakasuunnassa",distributeVertically:"Jaa pystysuunnassa",flipHorizontal:"Käännä vaakasuunnassa",flipVertical:"Käännä pystysuunnassa",viewMode:"Katselutila",share:"Jaa",showStroke:"Näytä viivan värin valitsin",showBackground:"Näytä taustavärin valitsin",toggleTheme:"Vaihda teema",personalLib:"Oma kirjasto",excalidrawLib:"Excalidraw kirjasto",decreaseFontSize:"Pienennä kirjasinkokoa",increaseFontSize:"Kasvata kirjasinkokoa",unbindText:"Irroita teksti",bindText:"Kiinnitä teksti säiliöön",createContainerFromText:"",link:{edit:"Muokkaa linkkiä",editEmbed:"",create:"Luo linkki",createEmbed:"",label:"Linkki",labelEmbed:"",empty:""},lineEditor:{edit:"Muokkaa riviä",exit:"Poistu rivieditorista"},elementLock:{lock:"Lukitse",unlock:"Poista lukitus",lockAll:"Lukitse kaikki",unlockAll:"Poista lukitus kaikista"},statusPublished:"Julkaistu",sidebarLock:"Pidä sivupalkki avoinna",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},Pbe={noItems:"Kirjastossa ei ole vielä yhtään kohdetta...",hint_emptyLibrary:"Valitse lisättävä kohde piirtoalueelta, tai asenna alta julkinen kirjasto.",hint_emptyPrivateLibrary:"Valitse lisättävä kohde piirtoalueelta."},_be={clearReset:"Tyhjennä piirtoalue",exportJSON:"Vie tiedostoon",exportImage:"Vie kuva...",export:"Tallenna nimellä...",copyToClipboard:"Kopioi leikepöydälle",save:"Tallenna nykyiseen tiedostoon",saveAs:"Tallenna nimellä",load:"Avaa",getShareableLink:"Hae jaettava linkki",close:"Sulje",selectLanguage:"Valitse kieli",scrollBackToContent:"Näytä sisältö",zoomIn:"Lähennä",zoomOut:"Loitonna",resetZoom:"Nollaa suurennuksen taso",menu:"Valikko",done:"Valmis",edit:"Muokkaa",undo:"Kumoa",redo:"Tee uudelleen",resetLibrary:"Tyhjennä kirjasto",createNewRoom:"Luo huone",fullScreen:"Koko näyttö",darkMode:"Tumma tila",lightMode:"Vaalea tila",zenMode:"Zen-tila",objectsSnapMode:"",exitZenMode:"Poistu zen-tilasta",cancel:"Peruuta",clear:"Pyyhi",remove:"Poista",embed:"",publishLibrary:"Julkaise",submit:"Lähetä",confirm:"Vahvista",embeddableInteractionButton:""},Wbe={clearReset:"Tämä tyhjentää koko piirtoalueen. Jatketaanko?",couldNotCreateShareableLink:"Jaettavan linkin luominen epäonnistui.",couldNotCreateShareableLinkTooBig:"Jaettavaa linkkiä ei voitu luoda: teos on liian suuri",couldNotLoadInvalidFile:"Virheellistä tiedostoa ei voitu avata",importBackendFailed:"Palvelimelta tuonti epäonnistui.",cannotExportEmptyCanvas:"Tyhjää piirtoaluetta ei voi viedä.",couldNotCopyToClipboard:"Leikepöydälle vieminen epäonnistui.",decryptFailed:"Salauksen purkaminen epäonnistui.",uploadedSecurly:"Lähetys on turvattu päästä-päähän-salauksella. Excalidrawin palvelin ja kolmannet osapuolet eivät voi lukea sisältöä.",loadSceneOverridePrompt:"Ulkopuolisen piirroksen lataaminen korvaa nykyisen sisältösi. Jatketaanko?",collabStopOverridePrompt:`Istunnon lopettaminen korvaa aiemman, paikallisesti tallennetun piirustuksen. Jatketaanko?
(Jos haluat säilyttää paikallisesti tallennetun piirustuksen, sulje selaimen välilehti lopettamisen sijaan.)`,errorAddingToLibrary:"Kohdetta ei voitu lisätä kirjastoon",errorRemovingFromLibrary:"Kohdetta ei voitu poistaa kirjastosta",confirmAddLibrary:"Tämä lisää {{numShapes}} muotoa kirjastoosi. Jatketaanko?",imageDoesNotContainScene:"Tämä kuva ei näytä sisältävän piirrostietoja. Oletko ottanut käyttöön piirroksen tallennuksen viennin aikana?",cannotRestoreFromImage:"Teosta ei voitu palauttaa tästä kuvatiedostosta",invalidSceneUrl:"Teosta ei voitu tuoda annetusta URL-osoitteesta. Tallenne on vioittunut, tai osoitteessa ei ole Excalidraw JSON-dataa.",resetLibrary:"Tämä tyhjentää kirjastosi. Jatketaanko?",removeItemsFromsLibrary:"Poista {{count}} kohdetta kirjastosta?",invalidEncryptionKey:"Salausavaimen on oltava 22 merkkiä pitkä. Live-yhteistyö ei ole käytössä.",collabOfflineWarning:`Internet-yhteyttä ei ole saatavilla.
Muutoksiasi ei tallenneta!`},qbe={unsupportedFileType:"Tiedostotyyppiä ei tueta.",imageInsertError:"Kuvan lisääminen epäonnistui. Yritä myöhemmin uudelleen...",fileTooBig:"Tiedosto on liian suuri. Suurin sallittu koko on {{maxSize}}.",svgImageInsertError:"SVG- kuvaa ei voitu lisätä. Tiedoston SVG-sisältö näyttää virheelliseltä.",failedToFetchImage:"",invalidSVGString:"Virheellinen SVG.",cannotResolveCollabServer:"Yhteyden muodostaminen collab-palvelimeen epäonnistui. Virkistä sivu ja yritä uudelleen.",importLibraryError:"Kokoelman lataaminen epäonnistui",collabSaveFailed:"Ei voitu tallentaan palvelimen tietokantaan. Jos ongelmia esiintyy, sinun kannatta tallentaa tallentaa tiedosto paikallisesti varmistaaksesi, että et menetä työtäsi.",collabSaveFailed_sizeExceeded:"Ei voitu tallentaan palvelimen tietokantaan. Jos ongelmia esiintyy, sinun kannatta tallentaa tallentaa tiedosto paikallisesti varmistaaksesi, että et menetä työtäsi.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},zbe={selection:"Valinta",image:"Lisää kuva",rectangle:"Suorakulmio",diamond:"Vinoneliö",ellipse:"Soikio",arrow:"Nuoli",line:"Viiva",freedraw:"Piirrä",text:"Teksti",library:"Kirjasto",lock:"Pidä valittu työkalu aktiivisena piirron jälkeen",penMode:"Kynätila - estä kosketus",link:"Lisää/päivitä linkki valitulle muodolle",eraser:"Poistotyökalu",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Käsi (panning-työkalu)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},Zbe={canvasActions:"Piirtoalueen toiminnot",selectedShapeActions:"Valitun muodon toiminnot",shapes:"Muodot"},Vbe={canvasPanning:"Piirtoalueen liikuttamiseksi pidä hiiren pyörää tai välilyöntiä pohjassa tai käytä käsityökalua",linearElement:"Klikkaa piirtääksesi useampi piste, raahaa piirtääksesi yksittäinen viiva",freeDraw:"Paina ja raahaa, päästä irti kun olet valmis",text:"Vinkki: voit myös lisätä tekstiä kaksoisnapsauttamalla mihin tahansa valintatyökalulla",embeddable:"",text_selected:"Kaksoisnapsauta tai paina ENTER muokataksesi tekstiä",text_editing:"Paina Escape tai CtrlOrCmd+ENTER lopettaaksesi muokkaamisen",linearElementMulti:"Lopeta klikkaamalla viimeistä pistettä, painamalla Escape- tai Enter-näppäintä",lockAngle:"Voit rajoittaa kulmaa pitämällä SHIFT-näppäintä alaspainettuna",resize:"Voit rajoittaa mittasuhteet pitämällä SHIFT-näppäintä alaspainettuna kun muutat kokoa, pidä ALT-näppäintä alaspainettuna muuttaaksesi kokoa keskipisteen suhteen",resizeImage:"Voit muuttaa kokoa vapaasti pitämällä SHIFTiä pohjassa, pidä ALT pohjassa muuttaaksesi kokoa keskipisteen ympäri",rotate:"Voit rajoittaa kulman pitämällä SHIFT pohjassa pyörittäessäsi",lineEditor_info:"Pidä CtrlOrCmd pohjassa ja kaksoisnapsauta tai paina CtrlOrCmd + Enter muokataksesi pisteitä",lineEditor_pointSelected:"Poista piste(et) painamalla delete, monista painamalla CtrlOrCmd+D, tai liikuta raahaamalla",lineEditor_nothingSelected:"Valitse muokattava piste (monivalinta pitämällä SHIFT pohjassa), tai paina Alt ja klikkaa lisätäksesi uusia pisteitä",placeImage:"Klikkaa asettaaksesi kuvan, tai klikkaa ja raahaa asettaaksesi sen koon manuaalisesti",publishLibrary:"Julkaise oma kirjasto",bindTextToElement:"Lisää tekstiä painamalla enter",deepBoxSelect:"Käytä syvävalintaa ja estä raahaus painamalla CtrlOrCmd",eraserRevert:"Pidä Alt alaspainettuna, kumotaksesi merkittyjen elementtien poistamisen",firefox_clipboard_write:'Tämä ominaisuus voidaan todennäköisesti ottaa käyttöön asettamalla "dom.events.asyncClipboard.clipboardItem" kohta "true":ksi. Vaihtaaksesi selaimen kohdan Firefoxissa, käy "about:config" sivulla.',disableSnapping:""},jbe={cannotShowPreview:"Esikatselua ei voitu näyttää",canvasTooBig:"Piirtoalue saattaa olla liian suuri.",canvasTooBigTip:"Vinkki: yritä siirtää kaukaisimpia elementtejä hieman lähemmäs toisiaan."},Xbe={headingMain:"Tapahtui virhe. Yritä <button>sivun lataamista uudelleen.</button>",clearCanvasMessage:"Mikäli sivun lataaminen uudelleen ei auta, yritä <button>tyhjentää piirtoalue.</button>",clearCanvasCaveat:" Tämä johtaa työn menetykseen ",trackedToSentry:"Virhe tunnisteella {{eventId}} tallennettiin järjestelmäämme.",openIssueMessage:"Olimme varovaisia emmekä sisällyttäneet tietoa piirroksestasi virheeseen. Mikäli piirroksesi ei ole yksityinen, harkitsethan kertovasi meille <button>virheenseurantajärjestelmässämme.</button> Sisällytä alla olevat tiedot kopioimalla ne GitHub-ongelmaan.",sceneContent:"Piirroksen tiedot:"},$be={desc_intro:"Voit kutsua ihmisiä piirrokseesi tekemään yhteistyötä kanssasi.",desc_privacy:"Älä huoli, istunto käyttää päästä-päähän-salausta, joten mitä tahansa piirrätkin, se pysyy salassa. Edes palvelimemme eivät näe mitä keksit.",button_startSession:"Aloita istunto",button_stopSession:"Lopeta istunto",desc_inProgressIntro:"Jaettu istunto on nyt käynnissä.",desc_shareLink:"Jaa tämä linkki kenelle tahansa, jonka kanssa haluat tehdä yhteistyötä:",desc_exitSession:"Istunnon pysäyttäminen katkaisee yhteyden huoneeseen, mutta voit vielä jatkaa työskentelyä paikallisesti. Huomaa, että tämä ei vaikuta muihin käyttäjiin ja he voivat jatkaa oman versionsa parissa työskentelyä.",shareTitle:"Liity Excalidraw live-yhteistyöistuntoon"},Ave={title:"Virhe"},eve={disk_title:"Tallenna levylle",disk_details:"Vie työn tiedot tiedostoon, josta sen voi tuoda myöhemmin.",disk_button:"Tallenna tiedostoon",link_title:"Jaettava linkki",link_details:"Vie vain luku -linkkinä.",link_button:"Vie linkkinä",excalidrawplus_description:"Tallenna teos Excalidraw+ tilaan.",excalidrawplus_button:"Vie",excalidrawplus_exportError:"Ei voitu viedä Excalidraw+-palveluun tällä hetkellä..."},tve={blog:"Lue blogiamme",click:"klikkaa",deepSelect:"Syvävalinta",deepBoxSelect:"Käytä syvävalintaa ja estä raahaus",curvedArrow:"Kaareva nuoli",curvedLine:"Kaareva viiva",documentation:"Käyttöohjeet",doubleClick:"kaksoisnapsautus",drag:"vedä",editor:"Muokkausohjelma",editLineArrowPoints:"",editText:"",github:"Löysitkö ongelman? Kerro meille",howto:"Seuraa oppaitamme",or:"tai",preventBinding:"Estä nuolten kiinnitys",tools:"Työkalut",shortcuts:"Pikanäppäimet",textFinish:"Lopeta muokkaus (tekstieditori)",textNewLine:"Lisää uusi rivi (tekstieditori)",title:"Ohjeet",view:"Näkymä",zoomToFit:"Näytä kaikki elementit",zoomToSelection:"Näytä valinta",toggleElementLock:"Lukitse / poista lukitus valinta",movePageUpDown:"Siirrä sivua ylös/alas",movePageLeftRight:"Siirrä sivua vasemmalle/oikealle"},rve={title:"Pyyhi piirtoalue"},ive={title:"Julkaise kirjasto",itemName:"Kohteen nimi",authorName:"Tekijän nimi",githubUsername:"GitHub-käyttäjätunnus",twitterUsername:"Twitter-käyttäjätunnus",libraryName:"Kirjaston nimi",libraryDesc:"Kirjaston kuvaus",website:"Verkkosivu",placeholder:{authorName:"Nimesi tai käyttäjänimesi",libraryName:"Kirjastosi nimi",libraryDesc:"Kirjaston kuvaus, joka auttaa ihmisiä ymmärtämään sen käyttötarkoitukset",githubHandle:"GitHub-tunnuksesi (valinnainen), jotta voit muokata kirjastoa sen jälkeen kun se on lähetetty tarkastettavaksi",twitterHandle:"Twitter-tunnus (valinnainen), jotta tiedämme ketä kiittää kun viestimme Twitterissä",website:"Linkki henkilökohtaiselle verkkosivustollesi tai muualle (valinnainen)"},errors:{required:"Pakollinen",website:"Syötä oikeamuotoinen URL-osoite"},noteDescription:"Lähetä kirjastosi, jotta se voidaan sisällyttää <link>julkisessa kirjastolistauksessa</link>muiden käyttöön omissa piirrustuksissaan.",noteGuidelines:"Kirjasto on ensin hyväksyttävä manuaalisesti. Ole hyvä ja lue <link>ohjeet</link> ennen lähettämistä. Tarvitset GitHub-tilin, jotta voit viestiä ja tehdä muutoksia pyydettäessä, mutta se ei ole ehdottoman välttämätöntä.",noteLicense:"Lähettämällä hyväksyt että kirjasto julkaistaan <link>MIT-lisenssin </link>alla, mikä lyhyesti antaa muiden käyttää sitä ilman rajoituksia.",noteItems:"Jokaisella kirjaston kohteella on oltava oma nimensä suodatusta varten. Seuraavat kirjaston kohteet sisältyvät:",atleastOneLibItem:"Valitse vähintään yksi kirjaston kohde aloittaaksesi",republishWarning:"Huom! Osa valituista kohteista on merkitty jo julkaistu/lähetetyiksi. Lähetä kohteita uudelleen vain päivitettäessä olemassa olevaa kirjastoa tai ehdotusta."},uve={title:"Kirjasto lähetetty",content:"Kiitos {{authorName}}. Kirjastosi on lähetetty tarkistettavaksi. Voit seurata sen tilaa<link>täällä</link>"},ave={resetLibrary:"Tyhjennä kirjasto",removeItemsFromLib:"Poista valitut kohteet kirjastosta"},nve={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},ove={tooltip:"Piirroksesi ovat päästä-päähän-salattuja, joten Excalidrawin palvelimet eivät koskaan näe niitä.",link:"Blogiartikkeli päästä päähän -salauksesta Excalidraw:ssa"},sve={angle:"Kulma",element:"Elementti",elements:"Elementit",height:"Korkeus",scene:"Teos",selected:"Valitut",storage:"Tallennustila",title:"Tilastoja nörteille",total:"Yhteensä",version:"Versio",versionCopy:"Klikkaa kopioidaksesi",versionNotAvailable:"Versio ei saatavilla",width:"Leveys"},lve={addedToLibrary:"Lisätty kirjastoon",copyStyles:"Tyylit kopioitiin.",copyToClipboard:"Kopioitiin leikepöydälle.",copyToClipboardAsPng:`Kopioitiin {{exportSelection}} leikepöydälle PNG:nä
({{exportColorScheme}})`,fileSaved:"Tiedosto tallennettu.",fileSavedToFilename:"Tallennettiin kohteeseen {filename}",canvas:"piirtoalue",selection:"valinta",pasteAsSingleElement:`Käytä {{shortcut}} liittääksesi yhtenä elementtinä,
tai liittääksesi olemassa olevaan tekstieditoriin`,unableToEmbed:"",unrecognizedLinkFormat:""},gve={transparent:"Läpinäkyvä",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},cve={app:{center_heading:"Kaikki tietosi on tallennettu paikallisesti selaimellesi.",center_heading_plus:"Haluatko sen sijaan mennä Excalidraw+:aan?",menuHint:"Vie, asetukset, kielet, ..."},defaults:{menuHint:"Vie, asetukset ja lisää...",center_heading:"Kaaviot. Tehty. Yksinkertaiseksi.",toolbarHint:"Valitse työkalu ja aloita piirtäminen!",helpHint:"Pikanäppäimet & ohje"}},Cve={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},Bve={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},Eve={title:"",button:"",description:"",syntax:"",preview:""},xcr={labels:Obe,library:Pbe,buttons:_be,alerts:Wbe,errors:qbe,toolBar:zbe,headings:Zbe,hints:Vbe,canvasError:jbe,errorSplash:Xbe,roomDialog:$be,errorDialog:Ave,exportDialog:eve,helpDialog:tve,clearCanvasDialog:rve,publishDialog:ive,publishSuccessDialog:uve,confirmDialog:ave,imageExportDialog:nve,encrypted:ove,stats:sve,toast:lve,colors:gve,welcomeScreen:cve,colorPicker:Cve,overwriteConfirm:Bve,mermaid:Eve}});var _ve={};Dt(_ve,{alerts:()=>fve,buttons:()=>pve,canvasError:()=>bve,clearCanvasDialog:()=>Lve,colorPicker:()=>Jve,colors:()=>Hve,confirmDialog:()=>Gve,default:()=>Scr,encrypted:()=>Mve,errorDialog:()=>Fve,errorSplash:()=>vve,errors:()=>mve,exportDialog:()=>xve,headings:()=>yve,helpDialog:()=>Sve,hints:()=>wve,imageExportDialog:()=>Uve,labels:()=>hve,library:()=>Qve,mermaid:()=>Pve,overwriteConfirm:()=>Ove,publishDialog:()=>Rve,publishSuccessDialog:()=>Nve,roomDialog:()=>kve,stats:()=>Tve,toast:()=>Yve,toolBar:()=>Dve,welcomeScreen:()=>Kve});var hve,Qve,pve,fve,mve,Dve,yve,wve,bve,vve,kve,Fve,xve,Sve,Lve,Rve,Nve,Gve,Uve,Mve,Tve,Yve,Hve,Kve,Jve,Ove,Pve,Scr;var Wve=_(()=>{zt();hve={paste:"Coller",pasteAsPlaintext:"Coller comme texte brut",pasteCharts:"Coller les graphiques",selectAll:"Tout sélectionner",multiSelect:"Ajouter l'élément à la sélection",moveCanvas:"Déplacer le canevas",cut:"Couper",copy:"Copier",copyAsPng:"Copier dans le presse-papier en PNG",copyAsSvg:"Copier dans le presse-papier en SVG",copyText:"Copier dans le presse-papier en tant que texte",copySource:"Copier la source dans le presse-papiers",convertToCode:"Convertir en code",bringForward:"Envoyer vers l'avant",sendToBack:"Déplacer à l'arrière-plan",bringToFront:"Mettre au premier plan",sendBackward:"Reculer d'un plan",delete:"Supprimer",copyStyles:"Copier les styles",pasteStyles:"Coller les styles",stroke:"Trait",background:"Arrière-plan",fill:"Remplissage",strokeWidth:"Largeur du contour",strokeStyle:"Style du trait",strokeStyle_solid:"Continu",strokeStyle_dashed:"Tirets",strokeStyle_dotted:"Pointillés",sloppiness:"Style de tracé",opacity:"Transparence",textAlign:"Alignement du texte",edges:"Angles",sharp:"Pointus",round:"Arrondis",arrowheads:"Extrémités",arrowhead_none:"Sans",arrowhead_arrow:"Flèche",arrowhead_bar:"Barre",arrowhead_circle:"Cercle",arrowhead_circle_outline:"Contour du cercle",arrowhead_triangle:"Triangle",arrowhead_triangle_outline:"Triangle (contour)",arrowhead_diamond:"Losange",arrowhead_diamond_outline:"",fontSize:"Taille de la police",fontFamily:"Police",addWatermark:'Ajouter "Réalisé avec Excalidraw"',handDrawn:"À main levée",normal:"Normale",code:"Code",small:"Petite",medium:"Moyenne",large:"Grande",veryLarge:"Très grande",solid:"Solide",hachure:"Hachures",zigzag:"Zigzag",crossHatch:"Hachures croisées",thin:"Fine",bold:"Épaisse",left:"À gauche",center:"Au centre",right:"À droite",extraBold:"Très épaisse",architect:"Architecte",artist:"Artiste",cartoonist:"Caricaturiste",fileTitle:"Nom du fichier",colorPicker:"Sélecteur de couleur",canvasColors:"Utilisé sur la zone de dessin",canvasBackground:"Arrière-plan du canevas",drawingCanvas:"Zone de dessin",layers:"Disposition",actions:"Actions",language:"Langue",liveCollaboration:"Collaboration en direct...",duplicateSelection:"Dupliquer",untitled:"Sans-titre",name:"Nom",yourName:"Votre nom",madeWithExcalidraw:"Fait avec Excalidraw",group:"Grouper la sélection",ungroup:"Dégrouper la sélection",collaborators:"Collaborateurs",showGrid:"Afficher la grille",addToLibrary:"Ajouter à la bibliothèque",removeFromLibrary:"Supprimer de la bibliothèque",libraryLoadingMessage:"Chargement de la bibliothèque…",libraries:"Parcourir les bibliothèques",loadingScene:"Chargement de la scène…",align:"Alignement",alignTop:"Aligner en haut",alignBottom:"Aligner en bas",alignLeft:"Aligner à gauche",alignRight:"Aligner à droite",centerVertically:"Centrer verticalement",centerHorizontally:"Centrer horizontalement",distributeHorizontally:"Répartir horizontalement",distributeVertically:"Répartir verticalement",flipHorizontal:"Retourner horizontalement",flipVertical:"Retourner verticalement",viewMode:"Mode présentation",share:"Partager",showStroke:"Afficher le sélecteur de couleur de trait",showBackground:"Afficher le sélecteur de couleur de fond",toggleTheme:"Changer le thème",personalLib:"Bibliothèque personnelle",excalidrawLib:"Bibliothèque Excalidraw",decreaseFontSize:"Diminuer la taille de police",increaseFontSize:"Augmenter la taille de la police",unbindText:"Dissocier le texte",bindText:"Associer le texte au conteneur",createContainerFromText:"Encadrer le texte dans un conteneur",link:{edit:"Modifier le lien",editEmbed:"Éditer le lien & intégrer",create:"Ajouter un lien",createEmbed:"Créer un lien & intégrer",label:"Lien",labelEmbed:"Lier & intégrer",empty:"Aucun lien défini"},lineEditor:{edit:"Modifier la ligne",exit:"Quitter l'éditeur de ligne"},elementLock:{lock:"Verrouiller",unlock:"Déverrouiller",lockAll:"Tout verrouiller",unlockAll:"Tout déverrouiller"},statusPublished:"Publié",sidebarLock:"Maintenir la barre latérale ouverte",selectAllElementsInFrame:"Sélectionner tous les éléments du cadre",removeAllElementsFromFrame:"Supprimer tous les éléments du cadre",eyeDropper:"Choisir la couleur depuis la toile",textToDiagram:"Texte vers Diagramme",prompt:"Consignes"},Qve={noItems:"Aucun élément n'a encore été ajouté ...",hint_emptyLibrary:"Sélectionnez un élément sur le canevas pour l'ajouter ici ou installez une bibliothèque depuis le dépôt public, ci-dessous.",hint_emptyPrivateLibrary:"Sélectionnez un élément sur le canevas pour l'ajouter ici."},pve={clearReset:"Réinitialiser le canevas",exportJSON:"Exporter comme fichier",exportImage:"Exporter l'image...",export:"Enregistrer sous...",copyToClipboard:"Copier dans le presse-papier",save:"Enregistrer dans le fichier actuel",saveAs:"Enregistrer sous",load:"Ouvrir",getShareableLink:"Obtenir un lien de partage",close:"Fermer",selectLanguage:"Choisir une langue",scrollBackToContent:"Revenir au contenu",zoomIn:"Zoomer",zoomOut:"Dézoomer",resetZoom:"Réinitialiser le zoom",menu:"Menu",done:"Terminé",edit:"Modifier",undo:"Annuler",redo:"Rétablir",resetLibrary:"Réinitialiser la bibliothèque",createNewRoom:"Créer une nouvelle salle",fullScreen:"Plein écran",darkMode:"Mode sombre",lightMode:"Mode clair",zenMode:"Mode zen",objectsSnapMode:"Aimanter aux objets",exitZenMode:"Quitter le mode zen",cancel:"Annuler",clear:"Effacer",remove:"Supprimer",embed:"Activer/Désactiver l'intégration",publishLibrary:"Publier",submit:"Envoyer",confirm:"Confirmer",embeddableInteractionButton:"Cliquez pour interagir"},fve={clearReset:"L'intégralité du canevas va être effacée. Êtes-vous sûr ?",couldNotCreateShareableLink:"Impossible de créer un lien de partage.",couldNotCreateShareableLinkTooBig:"Impossible de créer un lien de partage : la scène est trop volumineuse",couldNotLoadInvalidFile:"Impossible de charger un fichier invalide",importBackendFailed:"L'importation depuis le serveur a échoué.",cannotExportEmptyCanvas:"Impossible d'exporter un canevas vide.",couldNotCopyToClipboard:"Impossible de copier dans le presse-papiers.",decryptFailed:"Les données n'ont pas pu être déchiffrées.",uploadedSecurly:"Le téléchargement a été sécurisé avec un chiffrement de bout en bout, ce qui signifie que ni Excalidraw ni personne d'autre ne peut en lire le contenu.",loadSceneOverridePrompt:"Le chargement d'un dessin externe remplacera votre contenu actuel. Souhaitez-vous continuer ?",collabStopOverridePrompt:`Arrêter la session écrasera votre précédent dessin stocké localement. Êtes-vous sûr·e ?
(Si vous voulez garder votre dessin local, fermez simplement l'onglet du navigateur à la place.)`,errorAddingToLibrary:"Impossible d'ajouter l'élément à la bibliothèque",errorRemovingFromLibrary:"Impossible de retirer l'élément de la bibliothèque",confirmAddLibrary:"Cela va ajouter {{numShapes}} forme(s) à votre bibliothèque. Êtes-vous sûr·e ?",imageDoesNotContainScene:"Cette image ne semble pas contenir de données de scène. Avez-vous activé l'intégration de scène lors de l'exportation ?",cannotRestoreFromImage:"Impossible de restaurer la scène depuis ce fichier image",invalidSceneUrl:"Impossible d'importer la scène depuis l'URL fournie. Elle est soit incorrecte, soit ne contient pas de données JSON Excalidraw valides.",resetLibrary:"Cela va effacer votre bibliothèque. Êtes-vous sûr·e ?",removeItemsFromsLibrary:"Supprimer {{count}} élément(s) de la bibliothèque ?",invalidEncryptionKey:"La clé de chiffrement doit comporter 22 caractères. La collaboration en direct est désactivée.",collabOfflineWarning:`Aucune connexion internet disponible.
Vos modifications ne seront pas enregistrées !`},mve={unsupportedFileType:"Type de fichier non supporté.",imageInsertError:"Impossible d'insérer l'image. Réessayez plus tard...",fileTooBig:"Le fichier est trop volumineux. La taille maximale autorisée est de {{maxSize}}.",svgImageInsertError:"Impossible d'insérer l'image SVG. Le balisage SVG semble invalide.",failedToFetchImage:"Échec de récupération de l'image.",invalidSVGString:"SVG invalide.",cannotResolveCollabServer:"Impossible de se connecter au serveur collaboratif. Veuillez recharger la page et réessayer.",importLibraryError:"Impossible de charger la bibliothèque",collabSaveFailed:"Impossible d'enregistrer dans la base de données en arrière-plan. Si des problèmes persistent, vous devriez enregistrer votre fichier localement pour vous assurer de ne pas perdre votre travail.",collabSaveFailed_sizeExceeded:"Impossible d'enregistrer dans la base de données en arrière-plan, le tableau semble trop grand. Vous devriez enregistrer le fichier localement pour vous assurer de ne pas perdre votre travail.",imageToolNotSupported:"Les images sont désactivées.",brave_measure_text_error:{line1:"On dirait que vous utilisez le navigateur Brave avec l'option <bold>Bloquer agressivement le fichage</bold> activée.",line2:"Cela pourrait entraîner des problèmes avec les <bold>Éléments Textuels</bold> dans vos dessins.",line3:"Nous recommandons fortement de désactiver cette option. Vous pouvez suivre <link>ces instructions</link> pour savoir comment faire.",line4:"Si désactiver cette option de résout pas le problème d'affichage des éléments textuels, veuillez ouvrir un <issueLink>ticket</issueLink> sur notre GitHub, ou écrivez-nous sur notre <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Les éléments intégrés ne peuvent pas être ajoutés à la librairie.",iframe:"",image:"Le support pour l'ajout d'images à la librairie arrive bientôt !"},asyncPasteFailedOnRead:"Impossible de coller (impossible de lire le presse-papiers système).",asyncPasteFailedOnParse:"Impossible de coller.",copyToSystemClipboardFailed:"Échec de la copie dans le presse-papiers."},Dve={selection:"Sélection",image:"Insérer une image",rectangle:"Rectangle",diamond:"Losange",ellipse:"Ellipse",arrow:"Flèche",line:"Ligne",freedraw:"Dessiner",text:"Texte",library:"Bibliothèque",lock:"Garder l'outil sélectionné actif après le dessin",penMode:"Mode stylo - évite le toucher",link:"Ajouter/mettre à jour le lien pour une forme sélectionnée",eraser:"Gomme",frame:"Outil de cadre",magicframe:"",embeddable:"Intégration Web",laser:"Pointeur laser",hand:"Mains (outil de déplacement de la vue)",extraTools:"Plus d'outils",mermaidToExcalidraw:"De Mermaid à Excalidraw",magicSettings:"Paramètres IA"},yve={canvasActions:"Actions du canevas",selectedShapeActions:"Actions pour la forme sélectionnée",shapes:"Formes"},wve={canvasPanning:"Pour déplacer la zone de dessin, maintenez la molette de la souris enfoncée ou la barre d'espace tout en faisant glisser, ou utiliser l'outil main.",linearElement:"Cliquez pour démarrer plusieurs points, faites glisser pour une seule ligne",freeDraw:"Cliquez et faites glissez, relâchez quand vous avez terminé",text:"Astuce : vous pouvez aussi ajouter du texte en double-cliquant n'importe où avec l'outil de sélection",embeddable:"Cliquez et glissez pour créer une intégration de site web",text_selected:"Double-cliquez ou appuyez sur ENTRÉE pour modifier le texte",text_editing:"Appuyez sur ÉCHAP ou Ctrl/Cmd+ENTRÉE pour terminer l'édition",linearElementMulti:"Cliquez sur le dernier point ou appuyez sur Échap ou Entrée pour terminer",lockAngle:"Vous pouvez restreindre l'angle en maintenant MAJ",resize:"Vous pouvez conserver les proportions en maintenant la touche MAJ pendant le redimensionnement, maintenez la touche ALT pour redimensionner par rapport au centre",resizeImage:`Vous pouvez redimensionner librement en maintenant SHIFT,
maintenez ALT pour redimensionner depuis le centre`,rotate:"Vous pouvez restreindre les angles en maintenant MAJ pendant la rotation",lineEditor_info:"Maintenez CtrlOrCmd et Double-cliquez ou appuyez sur CtrlOrCmd + Entrée pour modifier les points",lineEditor_pointSelected:"Appuyer sur Suppr. pour supprimer des points, Ctrl ou Cmd+D pour dupliquer, ou faire glisser pour déplacer",lineEditor_nothingSelected:`Sélectionner un point pour éditer (maintenir la touche MAJ pour en sélectionner plusieurs),
ou maintenir la touche Alt enfoncée et cliquer pour ajouter de nouveaux points`,placeImage:"Cliquez pour placer l'image, ou cliquez et faites glisser pour définir sa taille manuellement",publishLibrary:"Publier votre propre bibliothèque",bindTextToElement:"Appuyer sur Entrée pour ajouter du texte",deepBoxSelect:"Maintenir Ctrl ou Cmd pour sélectionner dans les groupes et empêcher le déplacement",eraserRevert:"Maintenez Alt enfoncé pour annuler les éléments marqués pour suppression",firefox_clipboard_write:`Cette fonctionnalité devrait pouvoir être activée en définissant l'option "dom.events.asyncClipboard.clipboard.clipboardItem" à "true". Pour modifier les paramètres du navigateur dans Firefox, visitez la page "about:config".`,disableSnapping:"Maintenez CtrlOuCmd pour désactiver l'aimantation"},bve={cannotShowPreview:"Impossible d’afficher l’aperçu",canvasTooBig:"Le canevas est peut-être trop grand.",canvasTooBigTip:"Astuce : essayez de rapprocher un peu les éléments les plus éloignés."},vve={headingMain:"Une erreur est survenue. Essayez <button>de recharger la page.</button>",clearCanvasMessage:"Si le rechargement ne résout pas l'erreur, essayez <button>effacement du canevas.</button>",clearCanvasCaveat:" Cela entraînera une perte du travail ",trackedToSentry:"L'erreur avec l'identifiant {{eventId}} a été enregistrée dans notre système.",openIssueMessage:"Nous avons fait très attention à ne pas inclure les informations de votre scène dans l'erreur. Si votre scène n'est pas privée, veuillez envisager de poursuivre sur notre <button>outil de suivi des bugs.</button> Veuillez inclure les informations ci-dessous en les copiant-collant dans le ticket GitHub.",sceneContent:"Contenu de la scène :"},kve={desc_intro:"Vous pouvez inviter des personnes à collaborer avec vous sur votre scène actuelle.",desc_privacy:"Pas d'inquiétude, la session utilise le chiffrement de bout en bout, donc tout ce que vous dessinez restera privé. Même notre serveur ne pourra voir ce que vous faites.",button_startSession:"Démarrer la session",button_stopSession:"Arrêter la session",desc_inProgressIntro:"La session de collaboration en direct est maintenant en cours.",desc_shareLink:"Partagez ce lien avec les personnes avec lesquelles vous souhaitez collaborer :",desc_exitSession:"Arrêter la session vous déconnectera de la salle, mais vous pourrez continuer à travailler avec la scène, localement. Notez que cela n'affectera pas les autres personnes, et ils pourront toujours collaborer sur leur version.",shareTitle:"Rejoindre une session de collaboration en direct sur Excalidraw"},Fve={title:"Erreur"},xve={disk_title:"Enregistrer sur le disque",disk_details:"Exporter les données de la scène comme un fichier que vous pourrez importer ultérieurement.",disk_button:"Enregistrer comme fichier",link_title:"Lien partageable",link_details:"Exporter comme un lien en lecture seule.",link_button:"Exporter comme lien",excalidrawplus_description:"Enregistrer la scène dans votre espace de travail Excalidraw+.",excalidrawplus_button:"Exporter",excalidrawplus_exportError:"Impossible d'exporter vers Excalidraw+ pour le moment..."},Sve={blog:"Lire notre blog",click:"clic",deepSelect:"Sélection dans les groupes",deepBoxSelect:"Sélectionner dans les groupes, et empêcher le déplacement",curvedArrow:"Flèche courbée",curvedLine:"Ligne courbée",documentation:"Documentation",doubleClick:"double-clic",drag:"glisser",editor:"Éditeur",editLineArrowPoints:"Modifier les points de ligne/flèche",editText:"Modifier le texte / ajouter un libellé",github:"Problème trouvé ? Soumettre",howto:"Suivez nos guides",or:"ou",preventBinding:"Empêcher la liaison de flèche",tools:"Outils",shortcuts:"Raccourcis clavier",textFinish:"Terminer l'édition (éditeur de texte)",textNewLine:"Ajouter une nouvelle ligne (éditeur de texte)",title:"Aide",view:"Affichage",zoomToFit:"Zoomer pour voir tous les éléments",zoomToSelection:"Zoomer sur la sélection",toggleElementLock:"Verrouiller/déverrouiller la sélection",movePageUpDown:"Déplacer la page vers le haut/bas",movePageLeftRight:"Déplacer la page vers la gauche/droite"},Lve={title:"Effacer la zone de dessin"},Rve={title:"Publier la bibliothèque",itemName:"Nom de l’élément",authorName:"Nom de l'auteur",githubUsername:"Nom d'utilisateur GitHub",twitterUsername:"Nom d'utilisateur Twitter",libraryName:"Nom de la bibliothèque",libraryDesc:"Description de la bibliothèque",website:"Site web",placeholder:{authorName:"Votre nom ou nom d'utilisateur",libraryName:"Nom de votre bibliothèque",libraryDesc:"Description de votre bibliothèque pour aider les gens à comprendre son usage",githubHandle:"Nom d'utilisateur GitHub (optionnel), pour que tu puisses modifier la bibliothèque une fois soumise pour vérification",twitterHandle:"Nom d'utilisateur Twitter (optionnel), pour savoir qui créditer lors de la promotion sur Twitter",website:"Lien vers votre site web personnel ou autre (optionnel)"},errors:{required:"Requis",website:"Entrer une URL valide"},noteDescription:"Soumets ta bibliothèque pour l'inclure au <link>dépôt de bibliothèque publique</link>pour permettre son utilisation par autrui dans leurs dessins.",noteGuidelines:"La bibliothèque doit d'abord être approuvée manuellement. Veuillez lire les <link>lignes directrices</link> avant de la soumettre. Vous aurez besoin d'un compte GitHub pour communiquer et apporter des modifications si demandé, mais ce n'est pas obligatoire.",noteLicense:"En soumettant, vous acceptez que la bibliothèque soit publiée sous la <link>Licence MIT, </link>ce qui en gros signifie que tout le monde peut l'utiliser sans restrictions.",noteItems:"Chaque élément de la bibliothèque doit avoir son propre nom afin qu'il soit filtrable. Les éléments de bibliothèque suivants seront inclus :",atleastOneLibItem:"Veuillez sélectionner au moins un élément de bibliothèque pour commencer",republishWarning:"Remarque : certains des éléments sélectionnés sont marqués comme étant déjà publiés/soumis. Vous devez uniquement resoumettre des éléments lors de la mise à jour d'une bibliothèque ou d'une soumission existante."},Nve={title:"Bibliothèque soumise",content:"Merci {{authorName}}. Votre bibliothèque a été soumise pour examen. Vous pouvez suivre le statut<link>ici</link>"},Gve={resetLibrary:"Réinitialiser la bibliothèque",removeItemsFromLib:"Enlever les éléments sélectionnés de la bibliothèque"},Uve={header:"Exporter l'image",label:{withBackground:"Fond",onlySelected:"Uniquement la sélection",darkMode:"Mode sombre",embedScene:"Intégrer la scène",scale:"Échelle",padding:"Marge interne"},tooltip:{embedScene:`Les données de la scène seront sauvegardées dans le fichier PNG/SVG exporté afin que la scène puisse être restaurée depuis celui-ci.
Cela augmentera la taille du fichier exporté.`},title:{exportToPng:"Exporter en PNG",exportToSvg:"Exporter en SVG",copyPngToClipboard:"Copier le PNG dans le presse-papier"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copier dans le presse-papier"}},Mve={tooltip:"Vos dessins sont chiffrés de bout en bout, les serveurs d'Excalidraw ne les verront jamais.",link:"Article de blog sur le chiffrement de bout en bout dans Excalidraw"},Tve={angle:"Angle",element:"Élément",elements:"Éléments",height:"Hauteur",scene:"Scène",selected:"Sélection",storage:"Stockage",title:"Stats pour les nerds",total:"Total",version:"Version",versionCopy:"Cliquer pour copier",versionNotAvailable:"Version non disponible",width:"Largeur"},Yve={addedToLibrary:"Ajouté à la bibliothèque",copyStyles:"Styles copiés.",copyToClipboard:"Copié dans le presse-papier.",copyToClipboardAsPng:`{{exportSelection}} copié dans le presse-papier en PNG
({{exportColorScheme}})`,fileSaved:"Fichier enregistré.",fileSavedToFilename:"Enregistré sous {filename}",canvas:"canevas",selection:"sélection",pasteAsSingleElement:`Utiliser {{shortcut}} pour coller comme un seul élément,
ou coller dans un éditeur de texte existant`,unableToEmbed:"Intégrer cet URL n'est actuellement pas autorisé. Ouvrez un ticket sur GitHub pour demander son ajout à la liste blanche",unrecognizedLinkFormat:"Le lien que vous avez intégré ne correspond pas au format attendu. Veuillez essayer de coller la chaîne d'intégration fournie par le site source"},Hve={transparent:"Transparent",black:"Noir",white:"Blanc",red:"Rouge",pink:"Rose",grape:"Mauve",violet:"Violet",gray:"Gris",blue:"Bleu",cyan:"Cyan",teal:"Turquoise",green:"Vert",yellow:"Jaune",orange:"Orange",bronze:"Bronze"},Kve={app:{center_heading:"Toutes vos données sont sauvegardées en local dans votre navigateur.",center_heading_plus:"Vouliez-vous plutôt aller à Excalidraw+ à la place ?",menuHint:"Exportation, préférences, langues, ..."},defaults:{menuHint:"Exportation, préférences et plus...",center_heading:"Diagrammes. Rendus. Simples.",toolbarHint:"Choisissez un outil et commencez à dessiner !",helpHint:"Raccourcis et aide"}},Jve={mostUsedCustomColors:"Couleurs personnalisées les plus fréquemment utilisées",colors:"Couleurs",shades:"Nuances",hexCode:"Code hex",noShades:"Aucune nuance disponible pour cette couleur"},Ove={action:{exportToImage:{title:"Exporter en image",button:"Exporter en image",description:"Exporter les données de la scène comme une image que vous pourrez importer ultérieurement."},saveToDisk:{title:"Sauvegarder sur le disque",button:"Sauvegarder sur le disque",description:"Exporter les données de la scène comme un fichier que vous pourrez importer ultérieurement."},excalidrawPlus:{title:"Excalidraw+",button:"Exporter vers Excalidraw+",description:"Enregistrer la scène dans votre espace de travail Excalidraw+."}},modal:{loadFromFile:{title:"Charger depuis un fichier",button:"Charger depuis un fichier",description:"Charger depuis un fichier va <bold>remplacer votre contenu existant</bold>.<br></br>Vous pouvez d'abord sauvegarder votre dessin en utilisant l'une des options ci-dessous."},shareableLink:{title:"Charger depuis un lien",button:"Remplacer mon contenu",description:"Charger un dessin externe va <bold>remplacer votre contenu existant</bold>.<br></br>Vous pouvez d'abord sauvegarder votre dessin en utilisant l'une des options ci-dessous."}}},Pve={title:"De Mermaid à Excalidraw",button:"Insérer",description:"",syntax:"Syntaxe Mermaid",preview:"Prévisualisation"},Scr={labels:hve,library:Qve,buttons:pve,alerts:fve,errors:mve,toolBar:Dve,headings:yve,hints:wve,canvasError:bve,errorSplash:vve,roomDialog:kve,errorDialog:Fve,exportDialog:xve,helpDialog:Sve,clearCanvasDialog:Lve,publishDialog:Rve,publishSuccessDialog:Nve,confirmDialog:Gve,imageExportDialog:Uve,encrypted:Mve,stats:Tve,toast:Yve,colors:Hve,welcomeScreen:Kve,colorPicker:Jve,overwriteConfirm:Ove,mermaid:Pve}});var pke={};Dt(pke,{alerts:()=>Vve,buttons:()=>Zve,canvasError:()=>eke,clearCanvasDialog:()=>nke,colorPicker:()=>Ike,colors:()=>Eke,confirmDialog:()=>lke,default:()=>Lcr,encrypted:()=>cke,errorDialog:()=>ike,errorSplash:()=>tke,errors:()=>jve,exportDialog:()=>uke,headings:()=>$ve,helpDialog:()=>ake,hints:()=>Ake,imageExportDialog:()=>gke,labels:()=>qve,library:()=>zve,mermaid:()=>Qke,overwriteConfirm:()=>hke,publishDialog:()=>oke,publishSuccessDialog:()=>ske,roomDialog:()=>rke,stats:()=>Cke,toast:()=>Bke,toolBar:()=>Xve,welcomeScreen:()=>dke});var qve,zve,Zve,Vve,jve,Xve,$ve,Ake,eke,tke,rke,ike,uke,ake,nke,oke,ske,lke,gke,cke,Cke,Bke,Eke,dke,Ike,hke,Qke,Lcr;var fke=_(()=>{zt();qve={paste:"Pegar",pasteAsPlaintext:"Pegar coma texto sen formato",pasteCharts:"Pegar gráficos",selectAll:"Seleccionar todo",multiSelect:"Engadir elemento á selección",moveCanvas:"Mover o lenzo",cut:"Cortar",copy:"Copiar",copyAsPng:"Copiar no portapapeis como PNG",copyAsSvg:"Copiar no portapapeis como SVG",copyText:"Copia no portapapeis como texto",copySource:"",convertToCode:"",bringForward:"Traer cara adiante",sendToBack:"Enviar cara atrás",bringToFront:"Traer á fronte",sendBackward:"Enviar ao fondo",delete:"Borrar",copyStyles:"Copiar estilo",pasteStyles:"Pegar estilo",stroke:"Trazo",background:"Fondo",fill:"Recheo",strokeWidth:"Largo do trazo",strokeStyle:"Estilo do trazo",strokeStyle_solid:"Sólido",strokeStyle_dashed:"Liña de trazos",strokeStyle_dotted:"Liña de puntos",sloppiness:"Estilo de trazo",opacity:"Opacidade",textAlign:"Aliñar texto",edges:"Bordos",sharp:"Agudo",round:"Redondo",arrowheads:"Puntas de frecha",arrowhead_none:"Ningunha",arrowhead_arrow:"Frecha",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Triángulo",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Tamaño da fonte",fontFamily:"Tipo de fonte",addWatermark:'Engadir "Feito con Excalidraw"',handDrawn:"Debuxado a man",normal:"Normal",code:"Código",small:"Pequeno",medium:"Mediano",large:"Grande",veryLarge:"Moi grande",solid:"Sólido",hachure:"Folleto",zigzag:"Zigzag",crossHatch:"Raiado transversal",thin:"Estreito",bold:"Groso",left:"Esquerda",center:"Centrado",right:"Dereita",extraBold:"Moi groso",architect:"Arquitecto",artist:"Artista",cartoonist:"Caricatura",fileTitle:"Nome do arquivo",colorPicker:"Selector de cor",canvasColors:"Usado en lenzo",canvasBackground:"Fondo do lenzo",drawingCanvas:"Lenzo de debuxo",layers:"Capas",actions:"Accións",language:"Idioma",liveCollaboration:"Colaboración en directo...",duplicateSelection:"Duplicar",untitled:"Sen título",name:"Nome",yourName:"O teu nome",madeWithExcalidraw:"Feito con Excalidraw",group:"Agrupar selección",ungroup:"Desagrupar selección",collaborators:"Colaboradores",showGrid:"Mostrar cuadrícula",addToLibrary:"Engadir á biblioteca",removeFromLibrary:"Eliminar da biblioteca",libraryLoadingMessage:"Cargando biblioteca…",libraries:"Explorar bibliotecas",loadingScene:"Cargando escena…",align:"Aliñamento",alignTop:"Aliñamento superior",alignBottom:"Aliñamento inferior",alignLeft:"Aliñar a esquerda",alignRight:"Aliñar a dereita",centerVertically:"Centrar verticalmente",centerHorizontally:"Centrar horizontalmente",distributeHorizontally:"Distribuír horizontalmente",distributeVertically:"Distribuír verticalmente",flipHorizontal:"Virar horizontalmente",flipVertical:"Virar verticalmente",viewMode:"Modo de visualización",share:"Compartir",showStroke:"Mostrar selector de cores do trazo",showBackground:"Mostrar selector de cores do fondo",toggleTheme:"Alternar tema",personalLib:"Biblioteca Persoal",excalidrawLib:"Biblioteca Excalidraw",decreaseFontSize:"Diminuír tamaño da fonte",increaseFontSize:"Aumentar o tamaño da fonte",unbindText:"Desvincular texto",bindText:"Ligar o texto ao contedor",createContainerFromText:"Envolver o texto nun contedor",link:{edit:"Editar ligazón",editEmbed:"",create:"Crear ligazón",createEmbed:"",label:"Ligazón",labelEmbed:"",empty:""},lineEditor:{edit:"Editar liña",exit:"Saír do editor de liñas"},elementLock:{lock:"Bloquear",unlock:"Desbloquear",lockAll:"Bloquear todo",unlockAll:"Desbloquear todo"},statusPublished:"Publicado",sidebarLock:"Manter a barra lateral aberta",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},zve={noItems:"Aínda non hai elementos engadidos...",hint_emptyLibrary:"Seleccione un elemento no lenzo para engadilo aquí, ou instale unha biblioteca dende o repositorio público, como se detalla a continuación.",hint_emptyPrivateLibrary:"Seleccione un elemento do lenzo para engadilo aquí."},Zve={clearReset:"Limpar o lenzo",exportJSON:"Exportar a arquivo",exportImage:"Exportar imaxe...",export:"Gardar en...",copyToClipboard:"Copiar ao portapapeis",save:"Gardar no ficheiro actual",saveAs:"Gardar como",load:"Abrir",getShareableLink:"Obter unha ligazón que se poida compartir",close:"Pechar",selectLanguage:"Seleccionar idioma",scrollBackToContent:"Volver ao contido",zoomIn:"Ampliar",zoomOut:"Reducir",resetZoom:"Reiniciar zoom",menu:"Menú",done:"Feito",edit:"Editar",undo:"Desfacer",redo:"Refacer",resetLibrary:"Reiniciar biblioteca",createNewRoom:"Crear nova sala",fullScreen:"Pantalla completa",darkMode:"Modo escuro",lightMode:"Modo claro",zenMode:"Modo zen",objectsSnapMode:"",exitZenMode:"Saír do modo zen",cancel:"Cancelar",clear:"Limpar",remove:"Eliminar",embed:"",publishLibrary:"Publicar",submit:"Enviar",confirm:"Confirmar",embeddableInteractionButton:"Faga clic para interactuar"},Vve={clearReset:"Isto limpará todo o lenzo. Estás seguro?",couldNotCreateShareableLink:"Non se puido crear unha ligazón para compartir.",couldNotCreateShareableLinkTooBig:"Non se puido crear a ligazón para compartir: a escena é demasiado grande",couldNotLoadInvalidFile:"Non se puido cargar o ficheiro non válido",importBackendFailed:"A importación dende o backend fallou.",cannotExportEmptyCanvas:"Non se pode exportar un lenzo baleiro.",couldNotCopyToClipboard:"Non se puido copiar ao portapapeis.",decryptFailed:"Non se poideron descifrar os datos.",uploadedSecurly:"A carga foi asegurada con cifrado de extremo a extremo, o que significa que o servidor de Excalidraw e terceiros non poden ler o contido.",loadSceneOverridePrompt:"A carga dun debuxo externo substituirá o contido existente. Desexa continuar?",collabStopOverridePrompt:`Deter a sesión, sobrescribirá o seu debuxo local previamente almacenado. Está seguro?
(Se quere manter o seu debuxo local, simplemente peche a lapela do navegador.)`,errorAddingToLibrary:"Non se puido engadir o elemento á biblioteca",errorRemovingFromLibrary:"Non se puido eliminar o elemento da biblioteca",confirmAddLibrary:"Isto engadirá {{numShapes}} forma(s) a túa biblioteca. Estás seguro?",imageDoesNotContainScene:"Esta imaxe non parece conter ningún dato da escena. Activou a inserción de escenas durante a exportación?",cannotRestoreFromImage:"Non se puido restaurar a escena dende este arquivo de imaxe",invalidSceneUrl:"Non se puido importar a escena dende a URL proporcionada. Ou ben está malformada ou non contén un JSON con información válida para Excalidraw.",resetLibrary:"Isto limpará a súa biblioteca. Está seguro?",removeItemsFromsLibrary:"Eliminar {{count}} elemento(s) da biblioteca?",invalidEncryptionKey:"A clave de cifrado debe ter 22 caracteres. A colaboración en directo está desactivada.",collabOfflineWarning:`Non hai conexión a Internet dispoñible.
Os teus cambios non serán gardados!`},jve={unsupportedFileType:"Tipo de ficheiro non soportado.",imageInsertError:"Non se puido inserir a imaxe. Probe de novo máis tarde...",fileTooBig:"O ficheiro é demasiado grande. O tamaño máximo permitido é {{maxSize}}.",svgImageInsertError:"Non se puido inserir como imaxe SVG. O marcado SVG semella inválido.",failedToFetchImage:"",invalidSVGString:"SVG inválido.",cannotResolveCollabServer:"Non se puido conectar ao servidor de colaboración. Por favor recargue a páxina e probe de novo.",importLibraryError:"Non se puido cargar a biblioteca",collabSaveFailed:"Non se puido gardar na base de datos. Se o problema persiste, deberías gardar o teu arquivo de maneira local para asegurarte de non perdelo teu traballo.",collabSaveFailed_sizeExceeded:"Non se puido gardar na base de datos, o lenzo semella demasiado grande. Deberías gardar o teu arquivo de maneira local para asegurarte de non perdelo teu traballo.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},Xve={selection:"Selección",image:"Inserir imaxe",rectangle:"Rectángulo",diamond:"Diamante",ellipse:"Elipse",arrow:"Frecha",line:"Liña",freedraw:"Debuxar",text:"Texto",library:"Biblioteca",lock:"Manter a ferramenta seleccionada activa despois de debuxar",penMode:"Modo lapis - evitar o contacto",link:"Engadir/ Actualizar ligazón para a forma seleccionada",eraser:"Goma de borrar",frame:"",magicframe:"",embeddable:"Inserir na web",laser:"Punteiro láser",hand:"Man (ferramenta de desprazamento)",extraTools:"Máis ferramentas",mermaidToExcalidraw:"",magicSettings:""},$ve={canvasActions:"Accións do lenzo",selectedShapeActions:"Accións da forma seleccionada",shapes:"Formas"},Ake={canvasPanning:"Para mover o lenzo, manteña pulsada a roda do rato ou a barra de espazo mentres arrastra, ou utilice a ferramenta da man",linearElement:"Faga clic para iniciar varios puntos, arrastre para unha sola liña",freeDraw:"Fai clic e arrastra, solta cando acabes",text:"Consello: tamén podes engadir texto facendo dobre-clic en calquera lugar coa ferramenta de selección",embeddable:"Faga clic e arrastre para crear un sitio web embebido",text_selected:"Dobre-clic ou prema ENTER para editar o texto",text_editing:"Prema Escape ou CtrlOrCmd+ENTER para finalizar a edición",linearElementMulti:"Faga clic no último punto ou prema Escape ou Enter para rematar",lockAngle:"Pode reducir o ángulo mantendo SHIFT",resize:`Pode reducir as proporcións mantendo SHIFT mentres axusta o tamaño,
manteña ALT para axustalo dende o centro`,resizeImage:`Pode axustar o tamaño libremente mantendo SHIFT,
manteña ALT para axustalo dende o centro`,rotate:"Podes reducir os ángulos mantendo SHIFT mentres os rotas",lineEditor_info:"Manteña pulsado CtrlOrCmd e faga dobre clic ou prema CtrlOrCmd + Enter para editar puntos",lineEditor_pointSelected:`Prema Suprimir para eliminar o(s) punto(s)
CtrlOrCmd+D para duplicalos, ou arrastre para movelos`,lineEditor_nothingSelected:`Seleccione un punto para editar (manteña pulsado SHIFT para selección múltiple),
ou manteña pulsado Alt e faga clic para engadir novos puntos`,placeImage:"Faga clic para colocar a imaxe, ou faga clic e arrastre para establecer o seu tamaño manualmente",publishLibrary:"Publica a túa propia biblioteca",bindTextToElement:"Prema a tecla enter para engadir texto",deepBoxSelect:"Manteña pulsado CtrlOrCmd para seleccionar en profundidade e evitar o arrastre",eraserRevert:"Manteña pulsado Alt para reverter os elementos marcados para a súa eliminación",firefox_clipboard_write:'Esta función pódese activar establecendo a opción "dom.events.asyncClipboard.clipboardItem" a "true". Para cambiar as opcións do navegador en Firefox, visita a páxina "about:config".',disableSnapping:""},eke={cannotShowPreview:"Non se pode mostrar a vista previa",canvasTooBig:"Pode que o lenzo sexa demasiado grande.",canvasTooBigTip:"Consello: Probe a acercar un pouco os elementos máis afastados."},tke={headingMain:"Atopouse un erro. Probe <button>recargando a páxina.</button>",clearCanvasMessage:"Se recargar non funcionou, probe <button>limpando o lenzo.</button>",clearCanvasCaveat:" Isto resultará nunha perda do seu traballo ",trackedToSentry:"O erro con identificador {{eventId}} foi rastrexado no noso sistema.",openIssueMessage:"Fomos moi cautelosos de non incluír a información da súa escena no erro. Se a súa escena non é privada, por favor, considere o seguimento do noso <button>rastrexador de erros.</button> Por favor inclúa a seguinte información copiándoa e pegándoa na issue de Github.",sceneContent:"Contido da escena:"},rke={desc_intro:"Podes invitar xente a colaborar contigo na túa escena actual.",desc_privacy:"Non te preocupes, a sesión usa cifrado de punto a punto, polo que calquera cousa que debuxes mantense privada. Nin tan sequera o noso servidor será capaz de ver o que fas.",button_startSession:"Comezar sesión",button_stopSession:"Rematar sesión",desc_inProgressIntro:"A sesión de colaboración en directo está agora en progreso.",desc_shareLink:"Comparte esta ligazón con calquera que queiras colaborar:",desc_exitSession:"Deter a sesión desconectarao da sala, pero poderá seguir traballando coa escena de maneira local. Teña en conta que isto non afectará a outras persoas, que poderán seguir colaborando na súa versión.",shareTitle:"Únase a unha sesión de colaboración en directo en Excalidraw"},ike={title:"Erro"},uke={disk_title:"Gardar no disco",disk_details:"Exporte os datos da escena a un ficheiro que poderás importar máis tarde.",disk_button:"Gardar nun ficheiro",link_title:"Ligazón para compartir",link_details:"Exportar como unha ligazón de só lectura.",link_button:"Exportar a unha ligazón",excalidrawplus_description:"Garde a escena no seu espazo de traballo en Excalidraw+.",excalidrawplus_button:"Exportar",excalidrawplus_exportError:"Non se puido exportar a Excalidraw+ neste momento..."},ake={blog:"Le o noso blog",click:"clic",deepSelect:"Selección en profundidade",deepBoxSelect:"Selección en profundidade dentro da caixa, evitando o arrastre",curvedArrow:"Frecha curva",curvedLine:"Liña curva",documentation:"Documentación",doubleClick:"dobre-clic",drag:"arrastrar",editor:"Editor",editLineArrowPoints:"",editText:"",github:"Encontrou un problema? Envíeo",howto:"Sigue as nosas normas",or:"ou",preventBinding:"Evitar a unión de frechas",tools:"Ferramentas",shortcuts:"Atallos de teclado",textFinish:"Rematar de editar (editor de texto)",textNewLine:"Engadir unha nova liña (editor de texto)",title:"Axuda",view:"Vista",zoomToFit:"Zoom que se axuste a todos os elementos",zoomToSelection:"Zoom á selección",toggleElementLock:"Bloquear/desbloquear selección",movePageUpDown:"Mover páxina cara enriba/abaixo",movePageLeftRight:"Mover páxina cara a esquerda/dereita"},nke={title:"Limpar lenzo"},oke={title:"Publicar biblioteca",itemName:"Nome do elemento",authorName:"Nome do autor",githubUsername:"Nome de usuario en Github",twitterUsername:"Nome de usuario en Twitter",libraryName:"Nome da biblioteca",libraryDesc:"Descrición da biblioteca",website:"Páxina web",placeholder:{authorName:"O seu nome ou nome de usuario",libraryName:"Nome da súa biblioteca",libraryDesc:"Descrición da súa biblioteca para axudar a xente a entender o seu uso",githubHandle:"Nome de usuario de GitHub (opcional), así poderás editar a biblioteca unha vez enviada para a súa revisión",twitterHandle:"Nome de usuario en Twitter(opcional), así sabemos a quen darlle crédito cando se lle de promoción a través de Twitter",website:"Ligazón ao teu sitio web persoal ou a outro sitio (opcional)"},errors:{required:"Obrigatorio",website:"Introduza unha URL válida"},noteDescription:"Envíe a súa biblioteca para que sexa incluída no <link>repositorio público de bibliotecas</link>para que outra xente a poida usar nos seus debuxos.",noteGuidelines:"A biblioteca necesita ser aprobada manualmente primeiro. Por favor, lea as <link>normas</link> antes de ser enviado. Necesitarás unha conta de GitHub para comunicarte ou facer cambios se se solicitan, pero non é estritamente necesario.",noteLicense:"Ao enviar, estás de acordo con que a biblioteca sexa publicada baixo a <link>Licenza MIT, </link>o cal significa que, en resumo, calquera pode usalo sen restricións.",noteItems:"Cada elemento da biblioteca debe ter o seu nome propio para que se poida filtrar. Os seguintes elementos da biblioteca serán incluídos:",atleastOneLibItem:"Por favor seleccione polo menos un elemento da biblioteca para comezar",republishWarning:"Nota: algúns dos elementos seleccionados están marcados como xa publicados/enviados. Só deberías reenviar elementos cando se actualice unha biblioteca ou envío."},ske={title:"Biblioteca enviada",content:"Grazas {{authorName}}. A súa biblioteca foi enviada para ser revisada. Pode seguir o estado<link>aquí</link>"},lke={resetLibrary:"Restablecer biblioteca",removeItemsFromLib:"Eliminar os elementos seleccionados da biblioteca"},gke={header:"Exportar imaxe",label:{withBackground:"Fondo",onlySelected:"",darkMode:"Modo escuro",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"Exportar a PNG",exportToSvg:"Exportar a SVG",copyPngToClipboard:"Copiar PNG ao portapapeis"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copiar ao portapapeis"}},cke={tooltip:"Os teus debuxos están cifrados de punto a punto, polo que os servidores de Excalidraw nunca os verán.",link:"Entrada do blog acerca do cifrado de punto a punto en Excalidraw"},Cke={angle:"Ángulo",element:"Elemento",elements:"Elementos",height:"Alto",scene:"Escena",selected:"Seleccionado",storage:"Almacenamento",title:"Estadísticas para nerds",total:"Total",version:"Versión",versionCopy:"Faga clic para copiar",versionNotAvailable:"Versión non dispoñible",width:"Ancho"},Bke={addedToLibrary:"Engadido á biblioteca",copyStyles:"Estilos copiados.",copyToClipboard:"Copiado ao portapapeis.",copyToClipboardAsPng:`Copiar {{exportSelection}} ao portapapeis como PNG
({{exportColorScheme}})`,fileSaved:"Ficheiro gardado.",fileSavedToFilename:"Gardado en {filename}",canvas:"lenzo",selection:"selección",pasteAsSingleElement:`Usa {{shortcut}} para pegar como un único elemento
ou pega nun editor de texto existente`,unableToEmbed:"",unrecognizedLinkFormat:""},Eke={transparent:"Transparente",black:"Negro",white:"Branco",red:"Vermello",pink:"Rosa",grape:"Uva",violet:"Violeta",gray:"Gris",blue:"Azul",cyan:"",teal:"",green:"Verde",yellow:"Marelo",orange:"Laranxa",bronze:"Bronce"},dke={app:{center_heading:"Toda a información é gardada de maneira local no seu navegador.",center_heading_plus:"Queres ir a Excalidraw+ no seu lugar?",menuHint:"Exportar, preferencias, idiomas, ..."},defaults:{menuHint:"Exportar, preferencias, e máis...",center_heading:"Diagramas. Feito. Sinxelo.",toolbarHint:"Escolle unha ferramenta & Comeza a debuxar!",helpHint:"Atallos & axuda"}},Ike={mostUsedCustomColors:"",colors:"Cores",shades:"",hexCode:"",noShades:""},hke={action:{exportToImage:{title:"Exportar como imaxe",button:"Exportar como imaxe",description:""},saveToDisk:{title:"Gardar no disco",button:"Gardar no disco",description:""},excalidrawPlus:{title:"Excalidraw+",button:"Exportar a Excalidraw+",description:""}},modal:{loadFromFile:{title:"Cargar dende arquivo",button:"Cargar dende arquivo",description:""},shareableLink:{title:"Cargar dende un enlace",button:"Substituír o meu contido",description:""}}},Qke={title:"",button:"",description:"",syntax:"",preview:""},Lcr={labels:qve,library:zve,buttons:Zve,alerts:Vve,errors:jve,toolBar:Xve,headings:$ve,hints:Ake,canvasError:eke,errorSplash:tke,roomDialog:rke,errorDialog:ike,exportDialog:uke,helpDialog:ake,clearCanvasDialog:nke,publishDialog:oke,publishSuccessDialog:ske,confirmDialog:lke,imageExportDialog:gke,encrypted:cke,stats:Cke,toast:Bke,colors:Eke,welcomeScreen:dke,colorPicker:Ike,overwriteConfirm:hke,mermaid:Qke}});var Zke={};Dt(Zke,{alerts:()=>wke,buttons:()=>yke,canvasError:()=>xke,clearCanvasDialog:()=>Uke,colorPicker:()=>Wke,colors:()=>Pke,confirmDialog:()=>Yke,default:()=>Rcr,encrypted:()=>Kke,errorDialog:()=>Rke,errorSplash:()=>Ske,errors:()=>bke,exportDialog:()=>Nke,headings:()=>kke,helpDialog:()=>Gke,hints:()=>Fke,imageExportDialog:()=>Hke,labels:()=>mke,library:()=>Dke,mermaid:()=>zke,overwriteConfirm:()=>qke,publishDialog:()=>Mke,publishSuccessDialog:()=>Tke,roomDialog:()=>Lke,stats:()=>Jke,toast:()=>Oke,toolBar:()=>vke,welcomeScreen:()=>_ke});var mke,Dke,yke,wke,bke,vke,kke,Fke,xke,Ske,Lke,Rke,Nke,Gke,Uke,Mke,Tke,Yke,Hke,Kke,Jke,Oke,Pke,_ke,Wke,qke,zke,Rcr;var Vke=_(()=>{zt();mke={paste:"הדבק",pasteAsPlaintext:"הדבק ללא עיצוב",pasteCharts:"הדבק גרפים",selectAll:"בחר הכל",multiSelect:"הוסף רכיב לבחירה",moveCanvas:"הזז את הקנבס",cut:"גזור",copy:"העתק",copyAsPng:"העתק ללוח כ PNG",copyAsSvg:"העתק ללוח כ SVG",copyText:"העתק ללוח כטקסט",copySource:"",convertToCode:"",bringForward:"הבא שכבה קדימה",sendToBack:"שלח אחורה",bringToFront:"העבר לחזית",sendBackward:"העבר שכבה אחורה",delete:"מחק",copyStyles:"העתק סגנון",pasteStyles:"הדבק סגנון",stroke:"קו מתאר",background:"רקע",fill:"מילוי",strokeWidth:"עובי קו מתאר",strokeStyle:"סגנון קו המתאר",strokeStyle_solid:"מלא",strokeStyle_dashed:"מקווקו",strokeStyle_dotted:"מנוקד",sloppiness:"רישול",opacity:"אטימות",textAlign:"יישור טקסט",edges:"קצוות",sharp:"חד",round:"עגול",arrowheads:"ראשי חצים",arrowhead_none:"ללא",arrowhead_arrow:"חץ",arrowhead_bar:"קצה אנכי",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"משולש",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"גודל גופן",fontFamily:"גופן",addWatermark:'הוסף "נוצר באמצעות Excalidraw"',handDrawn:"ציור יד",normal:"רגיל",code:"קוד",small:"קטן",medium:"בינוני",large:"גדול",veryLarge:"גדול מאוד",solid:"מוצק",hachure:"קווים מקבילים קצרים להצגת כיוון וחדות שיפוע במפה",zigzag:"זיגזג",crossHatch:"קווים מוצלבים שתי וערב",thin:"דק",bold:"מודגש",left:"שמאל",center:"מרכז",right:"ימין",extraBold:"מודגש במיוחד",architect:"ארכיטקט",artist:"אמן",cartoonist:"קריקטוריסט",fileTitle:"שם קובץ",colorPicker:"בוחר צבעים",canvasColors:"בשימוש בקנבס",canvasBackground:"רקע קנבס",drawingCanvas:"קנבס ציור",layers:"שכבות",actions:"פעולות",language:"שפה",liveCollaboration:"התחל שיתוף חי...",duplicateSelection:"שכפל",untitled:"ללא כותרת",name:"שם",yourName:"שמך",madeWithExcalidraw:"נוצר באמצעות Excalidraw",group:"קבץ",ungroup:"פרק קבוצה",collaborators:"שותפים",showGrid:"הצג רשת",addToLibrary:"הוסף לספריה",removeFromLibrary:"הסר מספריה",libraryLoadingMessage:"טוען ספריה…",libraries:"עיין בספריות",loadingScene:"טוען תצוגה…",align:"יישר",alignTop:"יישר למעלה",alignBottom:"יישר למטה",alignLeft:"יישר לשמאל",alignRight:"יישר לימין",centerVertically:"מרכז אנכית",centerHorizontally:"מרכז אופקית",distributeHorizontally:"חלוקה אופקית",distributeVertically:"חלוקה אנכית",flipHorizontal:"הפוך אופקית",flipVertical:"הפוך אנכית",viewMode:"מצב תצוגה",share:"שתף",showStroke:"הצג בוחר צבע מברשת",showBackground:"הצג בוחר צבע רקע",toggleTheme:"שינוי ערכת העיצוב",personalLib:"ספריה פרטית",excalidrawLib:"הספריה של Excalidraw",decreaseFontSize:"הקטן את גודל הגופן",increaseFontSize:"הגדל את גודל הגופן",unbindText:"ביטול קיבוע הטקסט",bindText:"קיבוע הטקסט למיכל",createContainerFromText:"ארוז טקסט במיכל",link:{edit:"עריכת קישור",editEmbed:"ערוך קישור ושבץ",create:"יצירת קישור",createEmbed:"צור קישור ושבץ",label:"קישור",labelEmbed:"קשר ושבץ",empty:"לא נקבע קישור"},lineEditor:{edit:"ערוך קו",exit:"צא מעורך הקו"},elementLock:{lock:"נעילה",unlock:"ביטול נעילה",lockAll:"לנעול הכל",unlockAll:"שחרור הכול"},statusPublished:"פורסם",sidebarLock:"שמור את סרגל הצד פתוח",selectAllElementsInFrame:"בחר את כל האלמנטים במסגרת",removeAllElementsFromFrame:"הסר את כל האלמנטים שבמסגרת",eyeDropper:"",textToDiagram:"",prompt:""},Dke={noItems:"עוד לא הוספת דברים...",hint_emptyLibrary:"בחר משהו בקנבס כדי להוסיף אותו לכאן, או שתתקין ספריה מהספריה הציבורית מטה.",hint_emptyPrivateLibrary:"בחר משהו בקנבס כדי להוסיף אותו לכאן."},yke={clearReset:"אפס את הקנבאס",exportJSON:"ייצא לקובץ",exportImage:"ייצוא התמונה...",export:"שמור ל...",copyToClipboard:"העתק ללוח",save:"שמור לקובץ נוכחי",saveAs:"שמירה בשם",load:"פתח",getShareableLink:"קבל קישור לשיתוף",close:"סגור",selectLanguage:"בחר שפה",scrollBackToContent:"גלול בחזרה לתוכן",zoomIn:"הגדל",zoomOut:"הקטן",resetZoom:"איפוס זום",menu:"תפריט",done:"בוצע",edit:"ערוך",undo:"בטל",redo:"בצע מחדש",resetLibrary:"איפוס ספריה",createNewRoom:"צור חדר חדש",fullScreen:"מסך מלא",darkMode:"מצב כהה",lightMode:"מצב בהיר",zenMode:"מצב זן",objectsSnapMode:"",exitZenMode:"צא ממצב זן",cancel:"ביטול",clear:"ניקוי",remove:"הסר",embed:"",publishLibrary:"פרסום",submit:"שליחה",confirm:"אשר",embeddableInteractionButton:""},wke={clearReset:"פעולה זו תנקה את כל הקנבס. אתה בטוח?",couldNotCreateShareableLink:"יצירת קישור לשיתוף נכשל.",couldNotCreateShareableLinkTooBig:"יצירת קישור לשיתוף נכשל: התצוגה גדולה מדי",couldNotLoadInvalidFile:"טעינת קובץ לא תקין נכשלה",importBackendFailed:"ייבוא מהשרת נכשל.",cannotExportEmptyCanvas:"לא ניתן לייצא קנבאס ריק.",couldNotCopyToClipboard:"לא ניתן היה להעתיק ללוח.",decryptFailed:"פיענוח ההצפנה של המידע נכשל.",uploadedSecurly:"ההעלאה אובטחה באמצעות הצפנה מקצה לקצה, פירוש הדבר שהשרת של Excalidraw וגורמי צד ג׳ לא יכולים לקרוא את התוכן.",loadSceneOverridePrompt:"טעינה של ציור חיצוני תחליף את התוכן הקיים שלך. האם תרצה להמשיך?",collabStopOverridePrompt:`עצירת השיתוף תוביל למחיקת הציור הקודם ששמור מקומית בדפדפן. האם אתה בטוח?
(אם תרצה לשמור את הציור המקומי, סגור את הטאב של הדפדפן במקום.)`,errorAddingToLibrary:"לא ניתן להוסיף פריט לספרייה",errorRemovingFromLibrary:"לא ניתן להסיר פריט מהספריה",confirmAddLibrary:"זה יוסיף {{numShapes}} צורה(ות) לספריה שלך. האם אתה בטוח?",imageDoesNotContainScene:"נראה שהתמונה לא מכילה מידע על הסצינה. האם אפשרת הטמעת מידע הסצינה בעת השמירה?",cannotRestoreFromImage:"לא הצלחנו לשחזר את הסצנה מקובץ התמונה",invalidSceneUrl:"ייבוא מידע סצנה מהקישור שסופק כשל. או שהוא משובש, או שאינו מכיל מידע של Excalidraw בפורמט JSON.",resetLibrary:"פעולה זו תנקה את כל הספריה שלך. אתה בטוח?",removeItemsFromsLibrary:"מחק {{count}} פריט(ים) מהספריה?",invalidEncryptionKey:"מפתח ההצפנה חייב להיות בן 22 תוים. השיתוף החי מנוטרל.",collabOfflineWarning:`אין חיבור זמין לאינטרנט.
השינויים שלך לא ישמרו!`},bke={unsupportedFileType:"סוג הקובץ אינו נתמך.",imageInsertError:"לא ניתן היה להוסיף את התמונה. אנא נסה שוב מאוחר יותר...",fileTooBig:"הקובץ גדול מדי. הגודל המירבי המותר הינו {{maxSize}}.",svgImageInsertError:"לא ניתן היה להוסיף את תמונת ה-SVG. הסימונים בתוך קובץ ה-SVG עשויים להיות שגויים.",failedToFetchImage:"",invalidSVGString:"SVG שגוי.",cannotResolveCollabServer:"לא הצלחתי להתחבר לשרת השיתוף. אנא רענן את הדף ונסה שוב.",importLibraryError:"לא ניתן היה לטעון את הספריה",collabSaveFailed:"לא הצלחתי להתחבר למסד הנתונים האחורי. אם הבעיה ממשיכה, כדאי שתשמור את הקובץ מקומית כדי לוודא שלא תאבד את העבודה שלך.",collabSaveFailed_sizeExceeded:"לא הצלחתי לשמור למסד הנתונים האחורי, נראה שהקנבס שלך גדול מדי. כדאי שתשמור את הקובץ מקומית כדי לוודא שלא תאבד את העבודה שלך.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},vke={selection:"בחירה",image:"הוספת תמונה",rectangle:"מלבן",diamond:"יהלום",ellipse:"אליפסה",arrow:"חץ",line:"קו",freedraw:"צייר",text:"טקסט",library:"ספריה",lock:"השאר את הכלי הנבחר פעיל גם לאחר סיום הציור",penMode:"מצב עט - מנע נגיעה",link:"הוספה/עדכון קישור של הצורה שנבחרה",eraser:"מחק",frame:"",magicframe:"",embeddable:"",laser:"",hand:"יד (כלי הזזה)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},kke={canvasActions:"פעולות קנבאס",selectedShapeActions:"פעולות על הצורות שנבחרו",shapes:"צורות"},Fke={canvasPanning:"כדי להזיז את הקנבס, החזק את גלגל העכבר לחוץ או את מקש הרווח לחוץ תוך כדי גרירה, או השתמש בכלי היד",linearElement:"לחץ להתחלת מספר נקודות, גרור לקו יחיד",freeDraw:"לחץ וגרור, שחרר כשסיימת",text:"טיפ: אפשר להוסיף טקסט על ידי לחיצה כפולה בכל מקום עם כלי הבחירה",embeddable:"",text_selected:"לחץ לחיצה כפולה או הקש על אנטר לעריכת הטקסט",text_editing:"כדי לסיים את העריכה לחץ על מקש Escape או על Ctrl (Cmd במחשבי אפל) ומקש Enter",linearElementMulti:"הקלק על הנקודה האחרונה או הקש Escape או Enter לסיום",lockAngle:"ניתן להגביל את הזוויות על ידי החזקה של מקש ה- SHIFT",resize:`ניתן להגביל פרופורציות על ידי לחיצה על SHIFT תוך כדי שינוי גודל,
החזק ALT בשביל לשנות גודל ביחס למרכז`,resizeImage:`אתה יכול לשנות את הגודל בחופשיות על ידי החזקת מקש SHIFT,
החזק את מקש ALT כדי לבצע שינוי גודל מהמרכז`,rotate:"ניתן להגביל זוויות על ידי לחיצה על SHIFT תוך כדי סיבוב",lineEditor_info:"החזק Ctrl / Cmd ובצע לחיצה כפולה או לחץ Ctrl / Cmd + Enter לעריכת נקודות",lineEditor_pointSelected:`לחץ Delete למחיקת נקודה/ות,
Ctrl / Cmd + D לשכפול, או גרור להזזה`,lineEditor_nothingSelected:`בחר נקודה כדי לערוך (החזק SHIFT לבחירת כמה),
או החזק Alt והקלק להוספת נקודות חדשות`,placeImage:"הקלק להנחת התמונה, או הקלק וגרור להגדרת הגודל שלו ידנית",publishLibrary:"פרסם ספריה משלך",bindTextToElement:"הקש Enter כדי להוספת טקסט",deepBoxSelect:"החזק Ctrl / Cmd לבחירה עמוקה ולמניעת גרירה",eraserRevert:"החזק Alt להחזרת רכיבים מסומנים למחיקה",firefox_clipboard_write:'יכולות זה ניתנת להפעלה על ידי שינוי הדגל של "dom.events.asyncClipboard.clipboardItem" למצב "true". כדי לשנות את הדגל בדפדפן Firefox, בקר בעמוד ״about:config״.',disableSnapping:""},xke={cannotShowPreview:"לא ניתן להראות תצוגה מקדימה",canvasTooBig:"הקנבס עלול להיות גדול מדי.",canvasTooBigTip:"טיפ: נסה להזיז את הרכיבים הרחוקים ביותר מעט קרוב יותר האחד לשני."},Ske={headingMain:"",clearCanvasMessage:"אם טעינה מחדש לא עובדת, נסה ",clearCanvasCaveat:" זה יגרום לאובדן העבודה ",trackedToSentry:"",openIssueMessage:"",sceneContent:"תוכן הקנבאס:"},Lke={desc_intro:"אתה יכול להזמין אנשים לקנבאס הנוכחי שלך לעבודה משותפת.",desc_privacy:"אל דאגה, השיתוף מוצפן מקצה לקצה, כך שכל מה שתצייר ישאר פרטי. אפילו השרתים שלנו לא יוכלו לראות את מה שאתה ממציא.",button_startSession:"התחל שיתוף",button_stopSession:"הפסק שיתוף",desc_inProgressIntro:"שיתוף חי פעיל כרגע.",desc_shareLink:"שתף את הקישור עם כל מי שאתה מעוניין לעבוד אתו:",desc_exitSession:"עצירת השיתוף תנתק אותך מהחדר, אבל עדיין תוכל להמשיך לעבוד על הקנבאס, מקומית. שים לב שזה לא ישפיע על אנשים אחרים, והם עדיין יוכלו לבצע שיתוף עם הגרסה שלהם.",shareTitle:"הצטרף לשיתוף לעבודה משותפת חיה, בזמן אמת, על גבי Excalidraw"},Rke={title:"שגיאה"},Nke={disk_title:"שמור לכונן",disk_details:"ייצא מידע של הקנבאס לקובץ שתוכל לייבא אחר כך.",disk_button:"שמירה לקובץ",link_title:"קבל קישור לשיתוף",link_details:"ייצוא כקישור לקריאה בלבד.",link_button:"ייצוא לקישור",excalidrawplus_description:"שמור את הקנבאס לסביבת העבודה שלך ב- +Excalidraw.",excalidrawplus_button:"ייצוא",excalidrawplus_exportError:"לא הצלחתי לייצא ל- +Excalidraw כרגע..."},Gke={blog:"קרא את הבלוג שלנו",click:"קליק",deepSelect:"בחירה עמוקה",deepBoxSelect:"בחירה עמוקה בתוך קופסה ומניעת גרירה",curvedArrow:"חץ מעוגל",curvedLine:"קו מעוגל",documentation:"תיעוד",doubleClick:"לחיצה כפולה",drag:"גרור",editor:"עורך",editLineArrowPoints:"",editText:"",github:"מצאת בעיה? דווח",howto:"עקוב אחר המדריכים שלנו",or:"או",preventBinding:"למנוע נעיצת חיצים",tools:"כלים",shortcuts:"קיצורי מקלדת",textFinish:"סיים עריכה (עורך טקסט)",textNewLine:"הוסף שורה חדשה (עורך טקסט)",title:"עזרה",view:"תצוגה",zoomToFit:"זום להתאמת כל האלמנטים למסך",zoomToSelection:"התמקד בבחירה",toggleElementLock:"נעילה/ביטול הנעילה של הרכיבים הנבחרים",movePageUpDown:"זוז עמוד למעלה/למטה",movePageLeftRight:"זוז עמוד שמאלה/ימינה"},Uke={title:"ניקוי הקנבס"},Mke={title:"פרסם ספריה",itemName:"שם הפריט",authorName:"שם היוצר",githubUsername:"שם המשתמש שלך ב-GitHub",twitterUsername:"שם המשתמש שלך ב-Twitter",libraryName:"שם הספריה",libraryDesc:"תיאור הספריה",website:"אתר",placeholder:{authorName:"שמך או שם המשתמש שלך",libraryName:"תנו שם לספריה",libraryDesc:"תיאור של הספריה שלך כדי לסייע למשתמשים להבין את השימוש בה",githubHandle:"כינוי GitHub (לא חובה), כדי שתוכל לערוך את הספרית לאחר שנשלחה לבדיקה",twitterHandle:"שם משתמש טוויטר (לא חובה), כדי שנדע למי לתת קרדיט כשאנחנו מפרסמים בטוויטר",website:"קישור לאתר הפרטי שלך או לכל מקום אחר (אופציונאלי)"},errors:{required:"נדרש",website:"הזינו כתובת URL תקינה"},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"לכל פריט בסיפריה חייב להיות שם כדי שאפשר יהיה לסנן. הפריטי סיפריה הבאים יהיו כלולים:",atleastOneLibItem:"אנא בחר לפחות פריט אחד מספריה כדי להתחיל",republishWarning:"הערה: חלק מהפריטים שבחרת מסומנים ככאלו שכבר פורסמו/נשלחו. אתה צריך לשלוח פריטים מחדש כאשר אתה מעדכן ספריה או הגשה קיימים."},Tke={title:"הספריה הוגשה",content:"תודה {{authorName}}. הספריה שלך נשלחה לבחינה. תוכל לעקוב אחרי סטטוס הפרסום"},Yke={resetLibrary:"איפוס ספריה",removeItemsFromLib:"הסר את הפריטים הנבחרים מהספריה"},Hke={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},Kke={tooltip:"הציורים שלך מוצפנים מקצה לקצה כך שהשרתים של Excalidraw לא יראו אותם לעולם.",link:"פוסט בבלוג על הצפנה מקצה לקצב ב-Excalidraw"},Jke={angle:"זווית",element:"רכיב",elements:"רכיבים",height:"גובה",scene:"תצוגה",selected:"נבחר",storage:"אחסון",title:"סטטיסטיקות לחנונים",total:"סה״כ",version:"גרסה",versionCopy:"לחץ להעתקה",versionNotAvailable:"הגרסה אינה זמינה",width:"רוחב"},Oke={addedToLibrary:"נוסף לספריה",copyStyles:"סגנונות הועתקו.",copyToClipboard:"הועתק ללוח.",copyToClipboardAsPng:`{{exportSelection}} הועתקה ללוח כ-PNG
({{exportColorScheme}})`,fileSaved:"קובץ נשמר.",fileSavedToFilename:"נשמר לקובץ {filename}",canvas:"קנבאס",selection:"בחירה",pasteAsSingleElement:`השתמש ב- {{shortcut}} כדי להדביק כפריט יחיד,
או הדבק לתוך עורך טקסט קיים`,unableToEmbed:"",unrecognizedLinkFormat:""},Pke={transparent:"שקוף",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},_ke={app:{center_heading:"כל המידע שלח נשמר מקומית בדפדפן.",center_heading_plus:"אתה רוצה ללכת אל Excalidraw+ במקום?",menuHint:"ייצוא, העדפות, שפות, ..."},defaults:{menuHint:"ייצוא, העדפות, ועוד...",center_heading:"איורים. נעשים. פשוטים.",toolbarHint:"בחר כלי & והתחל לצייר!",helpHint:"קיצורים & עזרה"}},Wke={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},qke={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},zke={title:"",button:"",description:"",syntax:"",preview:""},Rcr={labels:mke,library:Dke,buttons:yke,alerts:wke,errors:bke,toolBar:vke,headings:kke,hints:Fke,canvasError:xke,errorSplash:Ske,roomDialog:Lke,errorDialog:Rke,exportDialog:Nke,helpDialog:Gke,clearCanvasDialog:Uke,publishDialog:Mke,publishSuccessDialog:Tke,confirmDialog:Yke,imageExportDialog:Hke,encrypted:Kke,stats:Jke,toast:Oke,colors:Pke,welcomeScreen:_ke,colorPicker:Wke,overwriteConfirm:qke,mermaid:zke}});var yFe={};Dt(yFe,{alerts:()=>AFe,buttons:()=>$ke,canvasError:()=>uFe,clearCanvasDialog:()=>gFe,colorPicker:()=>fFe,colors:()=>QFe,confirmDialog:()=>BFe,default:()=>Ncr,encrypted:()=>dFe,errorDialog:()=>oFe,errorSplash:()=>aFe,errors:()=>eFe,exportDialog:()=>sFe,headings:()=>rFe,helpDialog:()=>lFe,hints:()=>iFe,imageExportDialog:()=>EFe,labels:()=>jke,library:()=>Xke,mermaid:()=>DFe,overwriteConfirm:()=>mFe,publishDialog:()=>cFe,publishSuccessDialog:()=>CFe,roomDialog:()=>nFe,stats:()=>IFe,toast:()=>hFe,toolBar:()=>tFe,welcomeScreen:()=>pFe});var jke,Xke,$ke,AFe,eFe,tFe,rFe,iFe,uFe,aFe,nFe,oFe,sFe,lFe,gFe,cFe,CFe,BFe,EFe,dFe,IFe,hFe,QFe,pFe,fFe,mFe,DFe,Ncr;var wFe=_(()=>{zt();jke={paste:"चिपकाएँ",pasteAsPlaintext:"सादे पाठ के रूप में चिपकाएं",pasteCharts:"चार्ट चिपकाएँ",selectAll:"सभी चुनें",multiSelect:"आकार को चयन में जोड़ें",moveCanvas:"कैनवास को स्थानांतरित करें",cut:"काटें",copy:"प्रतिलिपि",copyAsPng:"क्लिपबोर्ड पर कॉपी करें ,पीएनजी के रूप में",copyAsSvg:"क्लिपबोर्ड पर कॉपी करें,एसवीजी के रूप में",copyText:"लेखन के रूप में पटल पर कॉपी करें",copySource:"स्त्रोत को प्रति-फलक पे प्रतिलिपित करे.",convertToCode:"सांकेतिक लिपि में परिवर्तित करे",bringForward:"सामने लाएं",sendToBack:"पीछे भेजें",bringToFront:"सामने लाएँ",sendBackward:"पीचे भीजे",delete:"मिटाए",copyStyles:"कॉपी स्टाइल",pasteStyles:"स्टाइल पेस्ट करें",stroke:"रेखा",background:"पृष्ठभूमि",fill:"भरें",strokeWidth:"रेखा की चौड़ाई",strokeStyle:"स्ट्रोक का आकार",strokeStyle_solid:"ठोस",strokeStyle_dashed:"डैश",strokeStyle_dotted:"बिंदीदार",sloppiness:"बेढ़ंगापन",opacity:"अपारदर्शिता",textAlign:"टेक्स्ट संरेखन",edges:"किनारा",sharp:"नुकीला",round:"गोल",arrowheads:"तीर शीर्ष",arrowhead_none:"कोई भी नहीं",arrowhead_arrow:"तीर",arrowhead_bar:"बार",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"त्रिकोण",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"फ़ॉन्ट का आकार",fontFamily:"फ़ॉन्ट का परिवार",addWatermark:'ऐड "मेड विथ एक्सकैलिडराव"',handDrawn:"हाथ से बनाया हुआ",normal:"साधारण",code:"कोड",small:"छोटा",medium:"मध्यम",large:"बड़ा",veryLarge:"बहुत बड़ा",solid:"दृढ़",hachure:"हैशूर",zigzag:"तेढ़ी मेढ़ी",crossHatch:"क्रॉस हैच",thin:"पतला",bold:"मोटा",left:"बाएं",center:"मध्य",right:"दाएँ",extraBold:"बहुत मोटा",architect:"वास्तुकार",artist:"कलाकार",cartoonist:"व्यंग्य चित्रकार",fileTitle:"फ़ाइल का नाम",colorPicker:"रंग चयन",canvasColors:"कॅनवास पर प्रयोगित",canvasBackground:"कैनवास बैकग्राउंड",drawingCanvas:"कैनवास बना रहे हैं",layers:"परतें",actions:"कार्रवाई",language:"भाषा",liveCollaboration:"जीवंत सहयोग...",duplicateSelection:"डुप्लिकेट",untitled:"अशीर्षित",name:"नाम",yourName:"आपका नाम",madeWithExcalidraw:"मेड विथ एक्सकैलिडराव",group:"समूह चयन",ungroup:"समूह चयन असमूहीकृत करें",collaborators:"सहयोगी",showGrid:"ग्रिड दिखाएं",addToLibrary:"लाइब्रेरी से जोड़ें",removeFromLibrary:"लाइब्रेरी से निकालें",libraryLoadingMessage:"लाइब्रेरी खुल रही है",libraries:"लाइब्रेरी ब्राउज़ करें",loadingScene:"दृश्य खुल रहा है",align:"संरेखित करें",alignTop:"ऊपर संरेखित करें",alignBottom:"नीचे संरेखित करें",alignLeft:"बायें संरेखित करें",alignRight:"दायें संरेखित करें",centerVertically:"लंबवत केन्द्रित",centerHorizontally:"क्षैतिज केन्द्रित",distributeHorizontally:"क्षैतिज रूप से वितरित करें",distributeVertically:"खड़ी रूप से वितरित करें",flipHorizontal:"दायें बायें पलटे",flipVertical:"ऊपर नीचे पलटे",viewMode:"अलग अलग देखें",share:"शेयर करें",showStroke:"",showBackground:"पृष्ठभूमि रंग वरक़ दिखाये",toggleTheme:"",personalLib:"वैयक्तिक समूहकोष",excalidrawLib:"एक्सकेलीड्रॉ समूहकोष",decreaseFontSize:"आकार घटाइऐ",increaseFontSize:"फ़ॉन्ट आकार बढ़ाएँ",unbindText:"लिपि को बंधमुक्त करें",bindText:"लेखन को कोश से जोड़े",createContainerFromText:"मूलपाठ कंटेनर में मोड के दिखाए",link:{edit:"कड़ी संपादित करे",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"रेखा संपादित करे",exit:"रेखा संपादक के बाहर"},elementLock:{lock:"ताले में रखें",unlock:"ताले से बाहर",lockAll:"सब ताले के अंदर रखे",unlockAll:"सब ताले के बाहर निकाले"},statusPublished:"प्रकाशित",sidebarLock:"साइडबार खुला रखे.",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"चित्रफलक से रंग चुने",textToDiagram:"",prompt:""},Xke={noItems:"अभी तक कोई आइटम जोडा नहीं गया.",hint_emptyLibrary:"यहाँ जोड़ने के लिए पटल से एक वस्तु चुने, अथवा जन कोष से एक संग्रह नीचे स्थापित करें.",hint_emptyPrivateLibrary:"यहाँ जोड़ने के लिए पटल से एक वस्तु चुने."},$ke={clearReset:"कैनवास रीसेट करें",exportJSON:"",exportImage:"प्रतिमा निर्यात करे...",export:"यंहा सुरक्षित करे...",copyToClipboard:"क्लिपबोर्ड पर प्रतिलिपि बनाएँ",save:"",saveAs:"सेव करे इस तरह",load:"खोलें",getShareableLink:"साझा करने योग्य लिंक प्राप्त करें",close:"बंद करें",selectLanguage:"भाषा चुनें",scrollBackToContent:"सामग्री पर वापस स्क्रॉल करें",zoomIn:"बड़ा करें",zoomOut:"छोटा करें",resetZoom:"ज़ूम रीसेट करें",menu:"मेन्यू",done:"समाप्त",edit:"संशोधन करें",undo:"पूर्ववत् करें",redo:"फिर से करें",resetLibrary:"",createNewRoom:"एक नया कमरा बनाएं",fullScreen:"पूरी स्क्रीन",darkMode:"डार्क मोड",lightMode:"लाइट मोड",zenMode:"ज़ेन मोड",objectsSnapMode:"वस्तुओं से पकड़े",exitZenMode:"जेन मोड से बाहर निकलें",cancel:"",clear:"साफ़ करे",remove:"हटाएं",embed:"",publishLibrary:"प्रकाशित करें",submit:"प्रस्तुत करे",confirm:"पुष्टि करें",embeddableInteractionButton:""},AFe={clearReset:"इससे पूरा कैनवास साफ हो जाएगा। क्या आपको यकीन है?",couldNotCreateShareableLink:"साझा करने योग्य लिंक नहीं बनाया जा सका।",couldNotCreateShareableLinkTooBig:"लिंक शेयर नहीं कर सकता: दृश्य बहुत बड़ा",couldNotLoadInvalidFile:"अमान्य फ़ाइल लोड नहीं की जा सकी",importBackendFailed:"बैकएंड से आयात करना विफल रहा।",cannotExportEmptyCanvas:"खाली कैनवास निर्यात नहीं कर सकता।",couldNotCopyToClipboard:"क्लिपबोर्ड पर कॉपी नहीं किया जा सका",decryptFailed:"डेटा को डिक्रिप्ट नहीं किया जा सका।",uploadedSecurly:"अपलोड को एंड-टू-एंड एन्क्रिप्शन के साथ सुरक्षित किया गया है, जिसका मतलब है कि एक्सक्लूसिव सर्वर और थर्ड पार्टी कंटेंट नहीं पढ़ सकते हैं।",loadSceneOverridePrompt:"लोड हो रहा है बाहरी ड्राइंग आपके मौजूदा सामग्री को बदल देगा। क्या आप जारी रखना चाहते हैं?",collabStopOverridePrompt:"चालू सत्र समाप्ति से आपका संग्रहित पूर्व स्थानीय अधिलेखन नष्ट होकर पुनः अधिलेखित होगा, क्या आपको यक़ीन हैं? ( यदी आपको पूर्व स्थापित अधिलेखन सुरक्षित चाहिये तो बस ब्राउज़र टैब बंद करे)",errorAddingToLibrary:"संग्रह में जोडा न जा सका",errorRemovingFromLibrary:"संग्रह से हटाया नहीं जा सका",confirmAddLibrary:"लाइब्रेरी जोड़ें पुष्‍टि करें आकार संख्या",imageDoesNotContainScene:"ऐसा लगता है कि इस छवि में कोई दृश्य डेटा नहीं है। क्या आपने निर्यात के दौरान दृश्य एम्बेडिंग अनुमतित की है?",cannotRestoreFromImage:"छवि फ़ाइल बहाल दृश्य नहीं है",invalidSceneUrl:"दिये गये युआरेल से दृश्य आयात नहीं किया जा सका. यह या तो अनुचित है, या इसमें उचित Excalidraw JSON डेटा नहीं है।",resetLibrary:"यह पूरा संग्रह रिक्त करेगा. क्या आपको यक़ीन हैं?",removeItemsFromsLibrary:"{{count}} वस्तु(यें) संग्रह से हटायें?",invalidEncryptionKey:"कूटलेखन कुंजी 22 अक्षरों की होनी चाहिये, इसलिये जीवंत सहयोग अक्षम हैं",collabOfflineWarning:`कोई इंटरनेट कनेक्शन उपलब्ध नहीं है।
आपके बदलाव सहेजे नहीं जाएंगे!`},eFe={unsupportedFileType:"असमर्थित फाइल प्रकार",imageInsertError:"छवि सम्मिलित नहीं की जा सकी. पुनः प्रयत्न करे...",fileTooBig:"फ़ाइल ज़रूरत से ज़्यादा बड़ी हैं. अधिकतम अनुमित परिमाण {{maxSize}} हैं",svgImageInsertError:"एसवीजी छवि सम्मिलित नहीं कर सके, एसवीजी रचना अनुचित हैं",failedToFetchImage:"",invalidSVGString:"अनुचित SVG",cannotResolveCollabServer:"कॉलेब सर्वर से कनेक्शन नहीं हो पा रहा. कृपया पृष्ठ को पुनः लाने का प्रयास करे.",importLibraryError:"संग्रह प्रतिष्ठापित नहीं किया जा सका",collabSaveFailed:"किसी कारण वश अंदरूनी डेटाबेस में सहेजा नहीं जा सका। यदि समस्या बनी रहती है, तो किये काम को खोने न देने के लिये अपनी फ़ाइल को स्थानीय रूप से सहेजे।",collabSaveFailed_sizeExceeded:"लगता है कि पृष्ठ तल काफ़ी बड़ा है, इस्कारण अंदरूनी डेटाबेस में सहेजा नहीं जा सका। किये काम को खोने न देने के लिये अपनी फ़ाइल को स्थानीय रूप से सहेजे।",imageToolNotSupported:"प्रतिमायें अक्षम की गयी हैं",brave_measure_text_error:{line1:"लगता है कि आप Brave ब्राउज़र का उपयोग कर रहे और साथ में <bold>आक्रामक उँगलियो के छाप </bold> का चयन किया हुवा है",line2:"यह आपके चित्रों के <bold>पाठ तत्वों</bold>को खंडित कर सकता हैं",line3:"हमें आपसे ठोस आग्रह है की आप सेट्टिंग में इस विकल्प का चयन ना करे.<link> इस अनुक्रम </link> का पालन करके इसका पता लगा सकते हैं",line4:"यदि इस सेटिंग्स को अक्षम करने पर भी पृष्ठ ठीक नहीं दिखता हो तो, हमारे GitHub पर एक <issueLink>मुद्दा प्रस्तुत</issueLink> करे, या हमें <discordLink>डिस्कोर्ड</discordLink> पर लिखित सम्पर्क करें"},libraryElementTypeError:{embeddable:"",iframe:"आयफ़्रेम तत्व समूहकोष में जोडा नहीं जा सका.",image:""},asyncPasteFailedOnRead:"चिपकाया नहीं जा सका (सिस्टम क्लिपबोर्ड से पढ़ा नहीं जा सका).",asyncPasteFailedOnParse:"चिपकाया नहीं जा सका.",copyToSystemClipboardFailed:"क्लिपबोर्ड पर प्रतिलिपि नहीं बनाई जा सकी."},tFe={selection:"चयन",image:"छवि सम्मिलित करें",rectangle:"आयात",diamond:"तिर्यग्वर्ग",ellipse:"दीर्घवृत्त",arrow:"तीर",line:"रेखा",freedraw:"चित्रांतित करे",text:"पाठ",library:"लाइब्रेरी",lock:"ड्राइंग के बाद चयनित टूल को सक्रिय रखें",penMode:"पेन का मोड - स्पर्श टाले",link:"",eraser:"रबड़",frame:"",magicframe:"तारिक ढाँचें को सांकेतिक लिपि में",embeddable:"",laser:"लेसर टॉर्च",hand:"हाथ ( खिसकाने का औज़ार)",extraTools:"",mermaidToExcalidraw:"मर्मेड से एक्सकाली में",magicSettings:"कृतिम बुद्धिमत्ता सेटिंग्स"},rFe={canvasActions:"कैनवास क्रिया",selectedShapeActions:"चयनित आकृति क्रियाएं",shapes:"आकृतियाँ"},iFe={canvasPanning:"कैनवास को सरकाने के लिए, ड्रैग करते समय माउस व्हील को पकड़े रखे या स्पेसबार को दबाए रखे, अथवा हाथ वाले औज़ार का उपयोग करें",linearElement:"कई बिंदुओं को शुरू करने के लिए क्लिक करें, सिंगल लाइन के लिए खींचें",freeDraw:"क्लिक करें और खींचें। समाप्त करने के लिए, छोड़ो",text:"आप चयन टूल से कहीं भी डबल-क्लिक करके टेक्स्ट जोड़ सकते हैं",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"अंतिम बिंदु पर क्लिक करें या समाप्त होने के लिए एस्केप या एंटर दबाएं",lockAngle:"आप घूर्णन करते समय SHIFT पकड़कर कोणों को मोड़ सकते हैं",resize:`आकार बदलते समय आप SHIFT को पकड़ कर अनुपात में कमी कर सकते हैं,
केंद्र से आकार बदलने के लिए ALT दबाए रखें`,resizeImage:"",rotate:"आप घूर्णन करते समय SHIFT पकड़कर कोणों को विवश कर सकते हैं",lineEditor_info:"बिंदुओं को सम्पादित करने के लिए CtrlOrCmd को दबायें रखते हुये डबल क्लिक करे, अथवा CtrlOrCmd + Enter साथ दबाये",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"मिटाने के लिए चुने हुए चीजों को ना चुनने के लिए Alt साथ में दबाए",firefox_clipboard_write:'"dom.events.asyncClipboard.clipboardItem" फ़्लैग को "true" पर सेट करके इस सुविधा को संभवतः सक्षम किया जा सकता है। Firefox में ब्राउज़र फ़्लैग बदलने के लिए, "about:config" पृष्ठ पर जाएँ।',disableSnapping:"स्नैपिंग को निष्क्रिय करने के लिए CtrlOrCmd दबाए रखें"},uFe={cannotShowPreview:"पूर्वावलोकन नहीं दिखा सकते हैं",canvasTooBig:"कैनवास बहुत बड़ा",canvasTooBigTip:"कैनवास बहुत बड़ा टिप"},aFe={headingMain:"एक त्रुटि का सामना करना पड़ा। प्रयत्न <button>इस पृष्ठ को पुनः लोड करें</button>",clearCanvasMessage:"यदि पुनः लोड करना काम नहीं करता है, तो प्रयास करें <button>कैनवास साफ करना।</button>",clearCanvasCaveat:" इससे काम का नुकसान होगा ",trackedToSentry:"पहचानकर्ता के साथ त्रुटि {{eventId}} हमारे सिस्टम पर नज़र रखी गई थी।",openIssueMessage:"हम बहुत सतर्क थे कि त्रुटि पर आपकी दृश्य जानकारी शामिल न करें। यदि आपका दृश्य निजी नहीं है, तो कृपया हमारे बारे में विचार करें <button>बग ट्रैकर</button> कृपया GitHub मुद्दे को कॉपी और पेस्ट करके नीचे दी गई जानकारी शामिल करें।",sceneContent:"दृश्य सामग्री:"},nFe={desc_intro:"आप अपने वर्तमान दृश्य के लोगों को अपने साथ सहयोग करने के लिए आमंत्रित कर सकते हैं।",desc_privacy:"चिंता न करें, सत्र अंत-से-अंत एन्क्रिप्शन का उपयोग करता है, इसलिए आप जो भी ड्रा करेंगे वह निजी रहेगा। यहां तक कि हमारा सर्वर भी नहीं देख पाएगा कि आप क्या कर रहे हैं।",button_startSession:"सत्र प्रारंभ करें",button_stopSession:"सत्र रुकें",desc_inProgressIntro:"लाइव सहयोग सत्र अब जारी है।",desc_shareLink:"इस लिंक को आप जिस किसी के साथ भी सहयोग करना चाहते हैं, उसके साथ साझा करें",desc_exitSession:"सत्र रोकना आपको रूम से बाहर कर देगा, लेकिन आप स्थानीय स्तर पर दृश्य के साथ काम करना जारी रख पाएंगे। ध्यान दें कि यह अन्य लोगों को प्रभावित नहीं करेगा, और वे अभी भी अपने संस्करण पर सहयोग करने में सक्षम होंगे।",shareTitle:""},oFe={title:"गलती"},sFe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},lFe={blog:"हमारा ब्लॉग पढे",click:"क्लिक करें",deepSelect:"",deepBoxSelect:"",curvedArrow:"वक्र तीर",curvedLine:"वक्र रेखा",documentation:"",doubleClick:"",drag:"खींचें",editor:"संपादक",editLineArrowPoints:"रेखा/तीर बिंदु सम्पादित करे",editText:"पाठ्य सम्पादित करे/ लेबल जोड़े",github:"मुद्दा मिला? प्रस्तुत करें",howto:"हमारे गाइड का पालन करें",or:"या",preventBinding:"तीर बंधन रोकें",tools:"औज़ार",shortcuts:"कीबोर्ड के शॉर्टकट्स",textFinish:"",textNewLine:"",title:"मदद",view:"दृश्य",zoomToFit:"सभी तत्वों को फिट करने के लिए ज़ूम करें",zoomToSelection:"चयन तक ज़ूम करे",toggleElementLock:"ताले के अंदर/बाहर चुनाव",movePageUpDown:"पृष्ठ ऊपर/नीचे करे",movePageLeftRight:"पृष्ठ बायी/दायी तरफ करे"},gFe={title:""},cFe={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:"मान्य URL प्रविष्ट करें"},noteDescription:"संग्रह सम्मिलित करने हेतु प्रस्तुत करें <link>सार्वजनिक संग्रहालय</link>अन्य वक्तियों को उनके चित्रकारी में उपयोग के लिये",noteGuidelines:"संग्रह को पहले स्वीकृति आवश्यक कृपया यह पढ़ें <link>दिशा-निर्देश</link>",noteLicense:"जमा करके, आप सहमत हैं कि संग्रहण को <link>MIT लाइसेंस</link> के तहत प्रकाशित किया जाएगा, जिसका संक्षिप्त अर्थ है कि कोई भी बिना किसी प्रतिबंध के उनका उपयोग कर सकता है।",noteItems:"",atleastOneLibItem:"",republishWarning:"टिप्पणी: कुछ चुने हुवे आइटम पहले ही प्रकाशित/प्रस्तुत किए जा चुके हैं। किसी प्रकाशित संग्रह को अद्यतन करते समय या पहले से प्रस्तुत आइटम को पुन्हा प्रस्तुत करते समय, आप बस उसे केवल अद्यतन करें ।"},CFe={title:"",content:"{{authorName}} धन्यवाद. आपका संग्रहण समीक्षा के लिए दर्ज हो चुका है. समीक्षा स्थिति <link>यहाँ</link>जान सकते हैं."},BFe={resetLibrary:"",removeItemsFromLib:""},EFe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},dFe={tooltip:"आपके चित्र अंत-से-अंत एन्क्रिप्टेड हैं, इसलिए एक्सक्लूसिव्रॉव के सर्वर उन्हें कभी नहीं देखेंगे।",link:""},IFe={angle:"कोण",element:"एलिमेंट",elements:"एलिमेंट",height:"ऊंचाई",scene:"दृश्य",selected:"चयनित",storage:"संग्रह",title:"बेवकूफ के लिए आँकड़े",total:"कुल",version:"संस्करण",versionCopy:"काॅपी करने के लिए क्लिक करें",versionNotAvailable:"संस्करण उपलब्ध नहीं है",width:"चौड़ाई"},hFe={addedToLibrary:"",copyStyles:"काॅपी कीए स्टाइल",copyToClipboard:"क्लिपबोर्ड में कॉपी कीए",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:`एक अवयव के रूप में चिपकाने के लिए {{shortcut}} का उपयोग करें,
या किसी मौजूदा पाठ संपादक में चिपकायें`,unableToEmbed:"",unrecognizedLinkFormat:""},QFe={transparent:"",black:"काला",white:"सफ़ेद",red:"लाल",pink:"गुलाबी",grape:"अंगूरी",violet:"जामुनी",gray:"गहरा",blue:"नीला",cyan:"आसमानी",teal:"हरा-नीला",green:"हरा",yellow:"पीला",orange:"नारंगी",bronze:"कांस्य"},pFe={app:{center_heading:"आपका सर्व डेटा ब्राउज़र के भीतर स्थानिक जगह पे सुरक्षित किया गया.",center_heading_plus:"बजाय आपको Excalidraw+ पर जाना है?",menuHint:"निर्यात, पसंद, भाषायें, ..."},defaults:{menuHint:"निर्यात, पसंद, और भी...",center_heading:"चित्रांकन। बनाया गया। सरल।",toolbarHint:"एक औजार चुने और चित्रकारी प्रारंभ करे!",helpHint:"शॉर्ट्कट और सहाय्य"}},fFe={mostUsedCustomColors:"अधिकांश उपयोगित रंग",colors:"रंग",shades:"छाया",hexCode:"हेक्स कोड",noShades:"इस रंग की कोई छाया उपलब्ध नहीं हैं"},mFe={action:{exportToImage:{title:"छवि स्वरूप में निर्यात करे",button:"छवि स्वरूप निर्यात करे",description:"दृष्य डेटा छवि स्वरूप में निर्यात करे, उस स्वरूप से आप उसे पुनः आयात कर सकते हो"},saveToDisk:{title:"डिस्क में सम्हाले",button:"डिस्क में सम्हाले",description:"दृष्य डेटा बाहरी फ़ाइल में निर्यात करे, जहाँसे आप उसे पुनः आयात कर सकते हो"},excalidrawPlus:{title:"एक्षकालीड्रॉ+",button:"एक्षकालीड्रॉ+ में निर्यात करे",description:"दृष्य को आपके एक्षकालीड्रॉ+ के कर्यस्थल में सम्हाले"}},modal:{loadFromFile:{title:"फ़ाइल से लोड करें:",button:"फ़ाइल से लोड करें:",description:"फ़ाइल से लोड करने पर <bold>यह आपके कार्य की जगह लेलेगा </bold><br></br>आपकी ड्रॉइंग निम्न दर्शित विकल्पो में से एक चुनके और उपयोग करके सम्हाल सकते हैं"},shareableLink:{title:"लिंक से लोड करें:",button:"इस जगह प्रतिस्थापित करे",description:"बाहर का चित्र लोड करने पर <bold>यह आपके कार्य की जगह लेलेगा </bold><br></br>आप आपकी ड्रॉइंग पहले निम्न दर्शित विकल्पो में से एक चुनके और उपयोग करके सम्हाल सकते हों."}}},DFe={title:"मर्मेड से एक्सकाली में",button:"अंदर डाले",description:"",syntax:"मर्मेड संरचना नियम",preview:"पूर्वावलोकन"},Ncr={labels:jke,library:Xke,buttons:$ke,alerts:AFe,errors:eFe,toolBar:tFe,headings:rFe,hints:iFe,canvasError:uFe,errorSplash:aFe,roomDialog:nFe,errorDialog:oFe,exportDialog:sFe,helpDialog:lFe,clearCanvasDialog:gFe,publishDialog:cFe,publishSuccessDialog:CFe,confirmDialog:BFe,imageExportDialog:EFe,encrypted:dFe,stats:IFe,toast:hFe,colors:QFe,welcomeScreen:pFe,colorPicker:fFe,overwriteConfirm:mFe,mermaid:DFe}});var $Fe={};Dt($Fe,{alerts:()=>FFe,buttons:()=>kFe,canvasError:()=>NFe,clearCanvasDialog:()=>HFe,colorPicker:()=>VFe,colors:()=>zFe,confirmDialog:()=>OFe,default:()=>Gcr,encrypted:()=>_Fe,errorDialog:()=>MFe,errorSplash:()=>GFe,errors:()=>xFe,exportDialog:()=>TFe,headings:()=>LFe,helpDialog:()=>YFe,hints:()=>RFe,imageExportDialog:()=>PFe,labels:()=>bFe,library:()=>vFe,mermaid:()=>XFe,overwriteConfirm:()=>jFe,publishDialog:()=>KFe,publishSuccessDialog:()=>JFe,roomDialog:()=>UFe,stats:()=>WFe,toast:()=>qFe,toolBar:()=>SFe,welcomeScreen:()=>ZFe});var bFe,vFe,kFe,FFe,xFe,SFe,LFe,RFe,NFe,GFe,UFe,MFe,TFe,YFe,HFe,KFe,JFe,OFe,PFe,_Fe,WFe,qFe,zFe,ZFe,VFe,jFe,XFe,Gcr;var Axe=_(()=>{zt();bFe={paste:"Beillesztés",pasteAsPlaintext:"Beillesztés formázatlan szövegként",pasteCharts:"Grafikon beillesztése",selectAll:"Összes kijelölése",multiSelect:"Elem hozzáadása a kijelöléshez",moveCanvas:"Vászon mozgatása",cut:"Kivágás",copy:"Másolás",copyAsPng:"Vágólapra másolás mint PNG",copyAsSvg:"Vágólapra másolás mint SVG",copyText:"Vágólapra másolás szövegként",copySource:"",convertToCode:"",bringForward:"Előrébb hozás",sendToBack:"Hátraküldés",bringToFront:"Előrehozás",sendBackward:"Hátrébb küldés",delete:"Törlés",copyStyles:"Stílus másolása",pasteStyles:"Stílus beillesztése",stroke:"Körvonal",background:"Háttér",fill:"Kitöltés",strokeWidth:"Körvonal vastagsága",strokeStyle:"Körvonal stílusa",strokeStyle_solid:"Kitöltött",strokeStyle_dashed:"Szaggatott",strokeStyle_dotted:"Pontozott",sloppiness:"Stílus",opacity:"Áttetszőség",textAlign:"Szöveg igazítása",edges:"Szélek",sharp:"Éles",round:"Kerek",arrowheads:"Nyílhegyek",arrowhead_none:"Nincs",arrowhead_arrow:"Nyíl",arrowhead_bar:"Oszlop",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Háromszög",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Betűméret",fontFamily:"Betűkészlet család",addWatermark:'Add hozzá, hogy "Excalidraw-val készült"',handDrawn:"Kézzel rajzolt",normal:"Normál",code:"Kód",small:"Kicsi",medium:"Közepes",large:"Nagy",veryLarge:"Nagyon nagy",solid:"Kitöltött",hachure:"Vonalkázott",zigzag:"Cikkcakk",crossHatch:"Keresztcsíkozott",thin:"Vékony",bold:"Félkövér",left:"Bal",center:"Közép",right:"Jobb",extraBold:"Extra Félkövér",architect:"Tervezői",artist:"Művészi",cartoonist:"Karikatúrás",fileTitle:"Fájlnév",colorPicker:"Színválasztó",canvasColors:"Rajzvászonon használt",canvasBackground:"Vászon háttérszíne",drawingCanvas:"Rajzvászon",layers:"Rétegek",actions:"Műveletek",language:"Nyelv",liveCollaboration:"Élő együttműködés...",duplicateSelection:"Duplikálás",untitled:"Névtelen",name:"Név",yourName:"Neved",madeWithExcalidraw:"Excalidraw-val készült",group:"Csoportosítás",ungroup:"Csoportbontás",collaborators:"Közreműködők",showGrid:"Rács megjelenítése",addToLibrary:"Hozzáadás a könyvtárhoz",removeFromLibrary:"Eltávólítás a könyvtárból",libraryLoadingMessage:"Könyvtár betöltése…",libraries:"Könyvtárak böngészése",loadingScene:"Jelenet betöltése…",align:"Igazítás",alignTop:"Felülre igazítás",alignBottom:"Alulra igazítás",alignLeft:"Balra igazítás",alignRight:"Jobbra igazítás",centerVertically:"Függőlegesen középre igazított",centerHorizontally:"Vízszintesen középre igazított",distributeHorizontally:"Vízszintes elosztás",distributeVertically:"Függőleges elosztás",flipHorizontal:"Vízszintes tükrözés",flipVertical:"Függőleges tükrözés",viewMode:"Nézet",share:"Megosztás",showStroke:"Körvonal színválasztó megjelenítése",showBackground:"Háttérszín-választó megjelenítése",toggleTheme:"Téma váltása",personalLib:"Személyes könyvtár",excalidrawLib:"Excalidraw könyvtár",decreaseFontSize:"Betűméret csökkentése",increaseFontSize:"Betűméret növelése",unbindText:"Szövegkötés feloldása",bindText:"",createContainerFromText:"Szöveg bekeretezése",link:{edit:"Hivatkozás szerkesztése",editEmbed:"Link szerkesztése / beágyazása",create:"Hivatkozás létrehozása",createEmbed:"Link létrehozása / beágyazása",label:"Hivatkozás",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"Rögzítés",unlock:"Rögzítés feloldása",lockAll:"Összes rögzítése",unlockAll:"Összes feloldása"},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},vFe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},kFe={clearReset:"Vászon törlése",exportJSON:"Exportálás fájlba",exportImage:"Kép exportálása...",export:"Mentés másként...",copyToClipboard:"Vágólapra másolás",save:"Mentés az aktuális fájlba",saveAs:"Mentés másként",load:"Megnyitás",getShareableLink:"Megosztható link létrehozása",close:"Bezárás",selectLanguage:"Nyelv kiválasztása",scrollBackToContent:"Visszagörgetés a tartalomhoz",zoomIn:"Nagyítás",zoomOut:"Kicsinyítés",resetZoom:"Nagyítás alaphelyzetbe",menu:"Menü",done:"Kész",edit:"Szerkesztés",undo:"Vissza",redo:"Újra",resetLibrary:"Könyvtár alaphelyzetbe állítása",createNewRoom:"Új szoba létrehozása",fullScreen:"Teljes képernyő",darkMode:"Sötét mód",lightMode:"Világos mód",zenMode:"Letisztult mód",objectsSnapMode:"",exitZenMode:"Kilépés a letisztult módból",cancel:"Mégsem",clear:"Kiűrítés",remove:"Eltávolítás",embed:"",publishLibrary:"Közzététel",submit:"Elküldés",confirm:"Megerősítés",embeddableInteractionButton:""},FFe={clearReset:"Ez a művelet törli a vászont. Biztos benne?",couldNotCreateShareableLink:"Nem sikerült megosztható linket létrehozni.",couldNotCreateShareableLinkTooBig:"Nem sikerült megosztható linket látrehozni: túl nagy a jelenet",couldNotLoadInvalidFile:"Nem sikerült betölteni a helytelen fájlt",importBackendFailed:"Nem sikerült betölteni a szerverről.",cannotExportEmptyCanvas:"Üres vászont nem lehet exportálni.",couldNotCopyToClipboard:"",decryptFailed:"Nem sikerült visszafejteni a titkosított adatot.",uploadedSecurly:"A feltöltést végpontok közötti titkosítással biztosítottuk, ami azt jelenti, hogy egy harmadik fél nem tudja megnézni a tartalmát, beleértve az Excalidraw szervereit is.",loadSceneOverridePrompt:"A betöltött külső rajz felül fogja írnia meglévőt. Szeretnéd folytatni?",collabStopOverridePrompt:`A munkamenet leállítása felül fogja írni az előzőleg helyben tárolt rajzot. Biztosan ezt akarod?
(Ha meg akarod tartani a helyben tárolt rajzot, egyszerűen csak zárd be a böngésző fület)`,errorAddingToLibrary:"A tétel nem addható hozzá a könyvtárhoz",errorRemovingFromLibrary:"A tétel nem távolítható el a könyvtárból",confirmAddLibrary:"Ez a művelet {{numShapes}} formát fog hozzáadni a könyvtáradhoz. Biztos vagy benne?",imageDoesNotContainScene:"Úgy tűnik, hogy ez a kép nem tartalmaz jelenetadatokat. Engedélyezted a jelenetbeágyazást az exportálás során?",cannotRestoreFromImage:"A jelenet visszaállítása nem sikerült ebből a kép fájlból",invalidSceneUrl:"Nem sikerült importálni a jelenetet a megadott URL-ről. Rossz formátumú, vagy nem tartalmaz érvényes Excalidraw JSON-adatokat.",resetLibrary:"Ezzel törlöd a könyvtárát. biztos vagy ebben?",removeItemsFromsLibrary:"{{count}} elemet törölsz a könyvtárból?",invalidEncryptionKey:"A titkosítási kulcsnak 22 karakterből kell állnia. Az élő együttműködés le van tiltva.",collabOfflineWarning:""},xFe={unsupportedFileType:"Nem támogatott fájltípus.",imageInsertError:"Nem sikerült beszúrni a képet. Próbáld újra később...",fileTooBig:"A fájl túl nagy. A megengedett maximális méret {{maxSize}}.",svgImageInsertError:"Nem sikerült beszúrni az SVG-képet. Az SVG szintaktika érvénytelennek tűnik.",failedToFetchImage:"",invalidSVGString:"Érvénytelen SVG.",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},SFe={selection:"Kijelölés",image:"Kép beszúrása",rectangle:"Téglalap",diamond:"Rombusz",ellipse:"Ellipszis",arrow:"Nyíl",line:"Vonal",freedraw:"Rajzolás",text:"Szöveg",library:"Könyvtár",lock:"Rajzolás után az aktív eszközt tartsa kijelölve",penMode:"",link:"Hivatkozás hozzáadása/frissítése a kiválasztott alakzathoz",eraser:"Radír",frame:"",magicframe:"",embeddable:"Weblap beágyazása",laser:"Lézermutató",hand:"",extraTools:"További eszközök",mermaidToExcalidraw:"",magicSettings:""},LFe={canvasActions:"Vászon műveletek",selectedShapeActions:"Kijelölt forma műveletei",shapes:"Alakzatok"},RFe={canvasPanning:"",linearElement:"Kattintással görbe, az eger húzásával pedig egyenes nyilat rajzolhatsz",freeDraw:"Kattints és húzd, majd engedd el, amikor végeztél",text:"Tipp: A kijelölés eszközzel a dupla kattintás új szöveget hoz létre",embeddable:"",text_selected:"Kattints duplán, vagy nyomj entert a szöveg szerkesztéséhez",text_editing:"Nyomjd meg az Escape vagy a Ctrl/Cmd+ENTER billentyűkombinációt a szerkesztés befejezéséhez",linearElementMulti:"Kattints a következő ív pozíciójára, vagy fejezd be a nyilat az Escape vagy Enter megnyomásával",lockAngle:"A SHIFT billentyű lenyomva tartásával korlátozhatja forgatás szögét",resize:`A SHIFT billentyű lenyomva tartásával az átméretezés megtartja az arányokat,
az ALT lenyomva tartásával pedig a középpont egy helyben marad`,resizeImage:`A SHIFT billentyű lenyomva tartásával szabadon átméretezheted,
tartsd lenyomva az ALT billentyűt a középről való átméretezéshez`,rotate:"A SHIFT billentyű lenyomva tartásával korlátozhatja a szögek illesztését",lineEditor_info:"",lineEditor_pointSelected:`Nyomd meg a Törlés gombot a pont(ok) eltávolításához,
A Ctrl/Cmd+D a többszörözéshez, vagy húzással mozgathatja`,lineEditor_nothingSelected:`Válaszd ki a szerkeszteni kívánt pontot (több kijelöléséhez tartsd lenyomva a SHIFT billentyűt),
vagy Alt, és kattintson az új pontok hozzáadásához`,placeImage:"Kattints a kép elhelyezéséhez, vagy kattints és méretezd manuálisan",publishLibrary:"Tedd közzé saját könyvtáradat",bindTextToElement:"Nyomd meg az Entert szöveg hozzáadáshoz",deepBoxSelect:"Tartsd lenyomva a Ctrl/Cmd billentyűt a mély kijelöléshez és a húzás megakadályozásához",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},NFe={cannotShowPreview:"Előnézet nem jeleníthető meg",canvasTooBig:"A vászon talán túl nagy.",canvasTooBigTip:"Tipp: próbáld meg a legtávolabbi elemeket közelebb hozni egy máshoz."},GFe={headingMain:"Hiba történt. Próbáld <button>újratölteni az oldalt.</button>",clearCanvasMessage:"Ha az újratöltés nem működik, próbáld <button>letörölni a vászont.</button>",clearCanvasCaveat:" Ezzel az eddigi munka elveszik ",trackedToSentry:"A hibakód azonosítóval {{eventId}} nyomon van követve a rendszerünkben.",openIssueMessage:"Vigyáztunk arra, hogy a jelenthez tartozó információ ne jelenjen meg a hibaüzenetben. Ha a jeleneted nem bizalmas, kérjük add hozzá a <button>hibakövető rendszerünkhöz.</button> Kérjük, másolja be az alábbi információkat a GitHub problémába.",sceneContent:"Jelenet tartalma:"},UFe={desc_intro:"Meghívhat embereket a jelenlegi jelenetbe, hogy együttműködjenek önnel.",desc_privacy:"Ne aggódj, a munkamenet végpontok közötti titkosítást használ, tehát bármit rajzolsz, privát marad. Még a szerverünkről se lehet belenézni.",button_startSession:"Munkamenet indítása",button_stopSession:"Munkamenet leállítása",desc_inProgressIntro:"Az élő együttműködési munkamenet folyamatban van.",desc_shareLink:"Ossza meg ezt a linket bárkivel, akivel együtt szeretne működni:",desc_exitSession:"Az munkamenet leállítása kilépteti önt a szobából, de folytathatja a munkát a saját gépén. Vegye figyelembe, hogy ez nem érinti más emberek munkáját és ők továbbra is együttműködhetnek a saját változatukon.",shareTitle:"Csatlakozás egy élő együttműködési munkamenethez az Excalidraw-ban"},MFe={title:"Hiba"},TFe={disk_title:"Mentés lemezre",disk_details:"Exportálja a jelenetadatokat egy fájlba, amelyből később importálhatja.",disk_button:"Mentés fájlba",link_title:"Megosztható hivatkozás",link_details:"Exportálás csak olvasható hivatkozásként.",link_button:"Exportálás hivatkozásba",excalidrawplus_description:"Mentse el a jelenetet az Excalidraw+ munkaterületére.",excalidrawplus_button:"Exportálás",excalidrawplus_exportError:"Jelenleg nem lehet exportálni az Excalidraw+-ba..."},YFe={blog:"Olvasd a blogunkat",click:"kattintás",deepSelect:"Mély kijelölés",deepBoxSelect:"Mély kijelölés a dobozon belül, és a húzás megakadályozása",curvedArrow:"Ívelt nyíl",curvedLine:"Ívelt vonal",documentation:"Dokumentáció",doubleClick:"dupla kattintás",drag:"vonszolás",editor:"Szerkesztő",editLineArrowPoints:"",editText:"",github:"Hibát találtál? Küld be",howto:"Kövesd az útmutatóinkat",or:"vagy",preventBinding:"A nyíl ne ragadjon",tools:"",shortcuts:"Gyorsbillentyűk",textFinish:"Szerkesztés befejezése (szöveg)",textNewLine:"Új sor hozzáadása (szöveg)",title:"Segítség",view:"Nézet",zoomToFit:"Az összes elem látótérbe hozása",zoomToSelection:"Kijelölésre nagyítás",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},HFe={title:"Rajzvászon alaphelyzetbe"},KFe={title:"Könyvtár közzététele",itemName:"Tétel neve",authorName:"Szerző neve",githubUsername:"GitHub felhasználónév",twitterUsername:"Twitter felhasználónév",libraryName:"Könyvtár neve",libraryDesc:"Könyvtár leírása",website:"Weboldal",placeholder:{authorName:"Neved vagy felhasználóneved",libraryName:"A könyvtárad neve",libraryDesc:"A könyvtárad használatát segítő leírás",githubHandle:"GitHub-handle(opcionális), így szerkesztheted a könyvtárat, miután elküldted ellenőrzésre",twitterHandle:"Twitter-felhasználónév (opcionális), így tudjuk, kinek kell jóváírni a Twitteren keresztüli reklámozást",website:"Hivatkozás személyes webhelyedre vagy máshová (nem kötelező)"},errors:{required:"Kötelező",website:"Adj meg egy érvényes URL-t"},noteDescription:"Küld be könyvtáradat, hogy bekerüljön a <link>nyilvános könyvtár tárolóba</link>hogy mások is felhasználhassák a rajzaikban.",noteGuidelines:"A könyvtárat először manuálisan kell jóváhagyni. Kérjük, olvassa el a <link>segédletet</link> benyújtása előtt. Szüksége lesz egy GitHub-fiókra a kommunikációhoz és a módosításokhoz, ha kérik, de ez nem feltétlenül szükséges.",noteLicense:"A beküldéssel elfogadja, hogy a könyvtár a következő alatt kerül közzétételre <link>MIT Licensz </link>ami röviden azt jelenti, hogy bárki korlátozás nélkül használhatja őket.",noteItems:"Minden könyvtárelemnek saját nevével kell rendelkeznie, hogy szűrhető legyen. A következő könyvtári tételek kerülnek bele:",atleastOneLibItem:"A kezdéshez válassz ki legalább egy könyvtári elemet",republishWarning:""},JFe={title:"A könyvtár beküldve",content:"Köszönjük {{authorName}}. Könyvtáradat elküldtük felülvizsgálatra. Nyomon követheted az állapotot<link>itt</link>"},OFe={resetLibrary:"Könyvtár alaphelyzetbe állítása",removeItemsFromLib:"A kiválasztott elemek eltávolítása a könyvtárból"},PFe={header:"Kép exportálása",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Vágólapra másolás"}},_Fe={tooltip:"A rajzaidat végpontok közötti titkosítással tároljuk, tehát az Excalidraw szervereiről se tud más belenézni.",link:"Blogbejegyzés a végpontok közötti titkosításról az Excalidraw-ban"},WFe={angle:"Szög",element:"Elem",elements:"Elemek",height:"Magasság",scene:"Jelenet",selected:"Kijelölt",storage:"Tárhely",title:"Statisztikák",total:"Összesen",version:"Verzió",versionCopy:"Kattints a másoláshoz",versionNotAvailable:"A verzió nem elérhető",width:"Szélesség"},qFe={addedToLibrary:"Könyvtárhoz adva",copyStyles:"Másolt stílusok.",copyToClipboard:"Vágólapra másolva.",copyToClipboardAsPng:`Az {{exportSelection}} PNG formátumban a vágólapra másolva
({{exportColorScheme}})`,fileSaved:"Fájl elmentve.",fileSavedToFilename:"Mentve mint {filename}",canvas:"rajzvászon",selection:"kijelölés",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},zFe={transparent:"Átlátszó",black:"Fekete",white:"Fehér",red:"Piros",pink:"Rózsaszín",grape:"",violet:"Ibolya",gray:"Szürke",blue:"Kék",cyan:"Cián",teal:"Kékes-zöld",green:"Zöld",yellow:"Sárga",orange:"Narancssárga",bronze:"Bronz"},ZFe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},VFe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"Hexadecimális kód",noShades:""},jFe={action:{exportToImage:{title:"Exportálás képként",button:"Exportálás képként",description:""},saveToDisk:{title:"Mentés a lemezre",button:"Mentés a lemezre",description:""},excalidrawPlus:{title:"Excalidraw+",button:"",description:""}},modal:{loadFromFile:{title:"Betöltés fájlból",button:"Betöltés fájlból",description:""},shareableLink:{title:"Feltöltás linkből",button:"",description:""}}},XFe={title:"",button:"",description:"",syntax:"",preview:""},Gcr={labels:bFe,library:vFe,buttons:kFe,alerts:FFe,errors:xFe,toolBar:SFe,headings:LFe,hints:RFe,canvasError:NFe,errorSplash:GFe,roomDialog:UFe,errorDialog:MFe,exportDialog:TFe,helpDialog:YFe,clearCanvasDialog:HFe,publishDialog:KFe,publishSuccessDialog:JFe,confirmDialog:OFe,imageExportDialog:PFe,encrypted:_Fe,stats:WFe,toast:qFe,colors:zFe,welcomeScreen:ZFe,colorPicker:VFe,overwriteConfirm:jFe,mermaid:XFe}});var kxe={};Dt(kxe,{alerts:()=>ixe,buttons:()=>rxe,canvasError:()=>sxe,clearCanvasDialog:()=>Exe,colorPicker:()=>wxe,colors:()=>Dxe,confirmDialog:()=>hxe,default:()=>Ucr,encrypted:()=>pxe,errorDialog:()=>cxe,errorSplash:()=>lxe,errors:()=>uxe,exportDialog:()=>Cxe,headings:()=>nxe,helpDialog:()=>Bxe,hints:()=>oxe,imageExportDialog:()=>Qxe,labels:()=>exe,library:()=>txe,mermaid:()=>vxe,overwriteConfirm:()=>bxe,publishDialog:()=>dxe,publishSuccessDialog:()=>Ixe,roomDialog:()=>gxe,stats:()=>fxe,toast:()=>mxe,toolBar:()=>axe,welcomeScreen:()=>yxe});var exe,txe,rxe,ixe,uxe,axe,nxe,oxe,sxe,lxe,gxe,cxe,Cxe,Bxe,Exe,dxe,Ixe,hxe,Qxe,pxe,fxe,mxe,Dxe,yxe,wxe,bxe,vxe,Ucr;var Fxe=_(()=>{zt();exe={paste:"Tempel",pasteAsPlaintext:"Tempel sebagai teks biasa",pasteCharts:"Tempel diagram",selectAll:"Pilih semua",multiSelect:"Tambahkan elemen ke pilihan",moveCanvas:"Pindahkan kanvas",cut:"Potong",copy:"Salin",copyAsPng:"Salin ke papan klip sebagai PNG",copyAsSvg:"Salin ke papan klip sebagai SVG",copyText:"Salin ke papan klip sebagai teks",copySource:"",convertToCode:"",bringForward:"Bawa maju",sendToBack:"Kirim ke belakang",bringToFront:"Bawa ke depan",sendBackward:"Kirim mundur",delete:"Hapus",copyStyles:"Salin gaya",pasteStyles:"Tempelkan gaya",stroke:"Guratan",background:"Latar",fill:"Isian",strokeWidth:"Lebar guratan",strokeStyle:"Gaya guratan",strokeStyle_solid:"Padat",strokeStyle_dashed:"Putus-putus",strokeStyle_dotted:"Titik-titik",sloppiness:"Kecerobohan",opacity:"Keburaman",textAlign:"Perataan teks",edges:"Tepi",sharp:"Tajam",round:"Bulat",arrowheads:"Mata panah",arrowhead_none:"Tidak ada",arrowhead_arrow:"Panah",arrowhead_bar:"Batang",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Segitiga",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Ukuran font",fontFamily:"Jenis font",addWatermark:'Tambahkan "Dibuat dengan Excalidraw"',handDrawn:"Tulisan tangan",normal:"Normal",code:"Kode",small:"Kecil",medium:"Sedang",large:"Besar",veryLarge:"Sangat besar",solid:"Padat",hachure:"Garis-garis",zigzag:"Zigzag",crossHatch:"Asiran silang",thin:"Lembut",bold:"Tebal",left:"Kiri",center:"Tengah",right:"Kanan",extraBold:"Sangat tebal",architect:"Arsitek",artist:"Artis",cartoonist:"Kartunis",fileTitle:"Nama file",colorPicker:"Pilihan Warna",canvasColors:"Digunakan di kanvas",canvasBackground:"Latar Kanvas",drawingCanvas:"Kanvas",layers:"Lapisan",actions:"Aksi",language:"Bahasa",liveCollaboration:"Kolaborasi langsung...",duplicateSelection:"Duplikat",untitled:"Tanpa judul",name:"Nama",yourName:"Nama Anda",madeWithExcalidraw:"Dibuat dengan Excalidraw",group:"Kelompokan pilihan",ungroup:"Pisahkan pilihan",collaborators:"Kolaborator",showGrid:"Tampilkan grid",addToLibrary:"Tambahkan ke pustaka",removeFromLibrary:"Hapus dari pustaka",libraryLoadingMessage:"Memuat pustaka…",libraries:"Telusur pustaka",loadingScene:"Memuat pemandangan…",align:"Perataan",alignTop:"Rata atas",alignBottom:"Rata bawah",alignLeft:"Rata kiri",alignRight:"Rata kanan",centerVertically:"Pusatkan secara vertikal",centerHorizontally:"Pusatkan secara horizontal",distributeHorizontally:"Distribusikan horizontal",distributeVertically:"Distribusikan vertikal",flipHorizontal:"Balikkan horizontal",flipVertical:"Balikkan vertikal",viewMode:"Mode tampilan",share:"Bagikan",showStroke:"Tampilkan garis pengambil warna",showBackground:"Tampilkan latar pengambil warna",toggleTheme:"Ubah tema",personalLib:"Pustaka Pribadi",excalidrawLib:"Pustaka Excalidraw",decreaseFontSize:"Kecilkan ukuran font",increaseFontSize:"Besarkan ukuran font",unbindText:"Lepas teks",bindText:"Kunci teks ke kontainer",createContainerFromText:"Bungkus teks dalam kontainer",link:{edit:"Edit tautan",editEmbed:"",create:"Buat tautan",createEmbed:"",label:"Tautan",labelEmbed:"",empty:""},lineEditor:{edit:"Edit tautan",exit:"Keluar editor garis"},elementLock:{lock:"Kunci",unlock:"Lepas",lockAll:"Kunci semua",unlockAll:"Lepas semua"},statusPublished:"Telah terbit",sidebarLock:"Biarkan sidebar tetap terbuka",selectAllElementsInFrame:"Pilih semua elemen di bingkai",removeAllElementsFromFrame:"Hapus semua elemen dari bingkai",eyeDropper:"Ambil warna dari kanvas",textToDiagram:"",prompt:""},txe={noItems:"Belum ada item yang ditambahkan...",hint_emptyLibrary:"Pilih item pada kanvas untuk menambahkan nya di sini, atau pasang pustaka dari gudang di bawah ini.",hint_emptyPrivateLibrary:"Pilih item pada kanvas untuk menambahkan nya di sini."},rxe={clearReset:"Setel Ulang Kanvas",exportJSON:"Ekspor ke file",exportImage:"Ekspor gambar...",export:"Simpan ke...",copyToClipboard:"Salin ke Papan Klip",save:"Simpan ke file sekarang",saveAs:"Simpan sebagai",load:"Buka",getShareableLink:"Buat Tautan yang Bisa Dibagian",close:"Tutup",selectLanguage:"Pilih bahasa",scrollBackToContent:"Gulir kembali ke konten",zoomIn:"Besarkan",zoomOut:"Kecilkan",resetZoom:"Reset Pembesaran",menu:"Menu",done:"Selesai",edit:"Edit",undo:"Urungkan",redo:"Ulangi",resetLibrary:"Reset pustaka",createNewRoom:"Buat ruang baru",fullScreen:"Layar penuh",darkMode:"Mode gelap",lightMode:"Mode terang",zenMode:"Mode zen",objectsSnapMode:"",exitZenMode:"Keluar dari mode zen",cancel:"Batal",clear:"Hapus",remove:"Hapus",embed:"",publishLibrary:"Terbitkan",submit:"Kirimkan",confirm:"Konfirmasi",embeddableInteractionButton:""},ixe={clearReset:"Ini akan menghapus semua yang ada dikanvas. Apakah kamu yakin ?",couldNotCreateShareableLink:"Tidak bisa membuat tautan yang bisa dibagikan",couldNotCreateShareableLinkTooBig:"Tidak dapat membuat tautan yang dapat dibagikan: pemandangan terlalu besar",couldNotLoadInvalidFile:"Tidak dapat memuat berkas yang tidak valid",importBackendFailed:"Gagal mengimpor dari backend",cannotExportEmptyCanvas:"Tidak bisa mengekspor kanvas kosong",couldNotCopyToClipboard:"Tidak bisa menyalin ke papan klip.",decryptFailed:"Tidak dapat mengdekripsi data.",uploadedSecurly:"Pengunggahan ini telah diamankan menggunakan enkripsi end-to-end, artinya server Excalidraw dan pihak ketiga tidak data membaca nya",loadSceneOverridePrompt:"Memuat gambar external akan mengganti konten Anda yang ada. Apakah Anda ingin melanjutkan?",collabStopOverridePrompt:`Menghentikan sesi akan menimpa gambar Anda yang tersimpan secara lokal. Anda yakin?
(Jika Anda ingin menyimpan gambar lokal Anda, gantinya cukup tutup tab browser.)`,errorAddingToLibrary:"Tidak dapat menambahkan item ke pustaka",errorRemovingFromLibrary:"Tidak dapat membuang item dari pustaka",confirmAddLibrary:"Ini akan menambahkan {{numShapes}} bentuk ke pustaka Anda. Anda yakin?",imageDoesNotContainScene:"Gambar ini sepertinya tidak terdapat data pemandangan. Sudahkah Anda mengaktifkan penyematan pemandangan ketika ekspor?",cannotRestoreFromImage:"Pemandangan tidak dapat dipulihkan dari file gambar ini",invalidSceneUrl:"Tidak dapat impor pemandangan dari URL. Kemungkinan URL itu rusak atau tidak berisi data JSON Excalidraw yang valid.",resetLibrary:"Ini akan menghapus pustaka Anda. Anda yakin?",removeItemsFromsLibrary:"Hapus {{count}} item dari pustaka?",invalidEncryptionKey:"Sandi enkripsi harus 22 karakter. Kolaborasi langsung dinonaktifkan.",collabOfflineWarning:`Tidak ada koneksi internet.
Perubahan tidak akan disimpan!`},uxe={unsupportedFileType:"Tipe file tidak didukung.",imageInsertError:"Tidak dapat menyisipkan gambar. Coba lagi nanti...",fileTooBig:"File terlalu besar. Ukuran maksimum yang dibolehkan {{maxSize}}.",svgImageInsertError:"Tidak dapat menyisipkan gambar SVG. Markup SVG sepertinya tidak valid.",failedToFetchImage:"",invalidSVGString:"SVG tidak valid.",cannotResolveCollabServer:"Tidak dapat terhubung ke server kolab. Muat ulang laman dan coba lagi.",importLibraryError:"Tidak dapat memuat pustaka",collabSaveFailed:"Tidak dapat menyimpan ke dalam basis data server. Jika masih berlanjut, Anda sebaiknya simpan berkas Anda secara lokal untuk memastikan pekerjaan Anda tidak hilang.",collabSaveFailed_sizeExceeded:"Tidak dapat menyimpan ke dalam basis data server, tampaknya ukuran kanvas terlalu besar. Anda sebaiknya simpan berkas Anda secara lokal untuk memastikan pekerjaan Anda tidak hilang.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Sepertinya Anda menggunkan peramban Brave dengan pengaturan <bold>Blokir Fingerprinting yang Agresif</bold> diaktifkan.",line2:"Ini dapat membuat <bold>Elemen Teks</bold> dalam gambar mu.",line3:"Kami sangat menyarankan mematikan pengaturan ini. Anda dapat mengikuti <link>langkah-langkah ini</link> untuk melakukannya.",line4:`Jika mematikan pengaturan ini tidak membenarkan tampilan elemen teks, mohon buka
<issueLink>isu</issueLink> di GitHub kami, atau chat kami di <discordLink>Discord</discordLink>`},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},axe={selection:"Pilihan",image:"Sisipkan gambar",rectangle:"Persegi",diamond:"Berlian",ellipse:"Elips",arrow:"Panah",line:"Garis",freedraw:"Gambar",text:"Teks",library:"Pustaka",lock:"Biarkan alat yang dipilih aktif setelah menggambar",penMode:"Mode pena - mencegah sentuhan",link:"Tambah/Perbarui tautan untuk bentuk yang dipilih",eraser:"Penghapus",frame:"Alat bingkai",magicframe:"",embeddable:"",laser:"",hand:"Tangan (alat panning)",extraTools:"Alat-alat lain",mermaidToExcalidraw:"",magicSettings:""},nxe={canvasActions:"Opsi Kanvas",selectedShapeActions:"Opsi bentuk yang dipilih",shapes:"Bentuk"},oxe={canvasPanning:"Untuk memindahkan kanvas, tekan roda mouse atau spacebar sambil menyeret, atau menggunakan alat tangan",linearElement:"Klik untuk memulai banyak poin, seret untuk satu baris",freeDraw:"Klik dan seret, lepaskan jika Anda selesai",text:"Tip: Anda juga dapat menambahkan teks dengan klik ganda di mana saja dengan alat pemilihan",embeddable:"",text_selected:"Klik ganda atau tekan ENTER untuk edit teks",text_editing:"Tekan Escape atau CtrlAtauCmd+ENTER untuk selesai mengedit",linearElementMulti:"Klik pada titik akhir atau tekan Escape atau Enter untuk menyelesaikan",lockAngle:"Anda dapat menjaga sudut dengan menahan SHIFT",resize:`Anda dapat menjaga proposi dengan menekan SHIFT sambil mengubah ukuran,
tekan AlT untuk mengubah ukuran dari tengah`,resizeImage:`Anda dapat mengubah secara bebas dengan menekan SHIFT,
Tekan ALT untuk mengubah dari tengah`,rotate:"Anda dapat menjaga sudut dengan menahan SHIFT sambil memutar",lineEditor_info:"Tekan Ctrl/Cmd dan Dobel-klik atau tekan Ctrl/Cmd +Enter untuk mengedit poin",lineEditor_pointSelected:"Tekan Delete untuk menghapus titik, Ctrl/Cmd + D untuk menduplikasi, atau seret untuk memindahkan",lineEditor_nothingSelected:"Pilih titik untuk mengedit (tekan SHIFT untuk pilih banyak), atau tekan Alt dan klik untuk tambahkan titik baru",placeImage:"Klik untuk tempatkan gambar, atau klik dan jatuhkan untuk tetapkan ukuran secara manual",publishLibrary:"Terbitkan pustaka Anda",bindTextToElement:"Tekan enter untuk tambahkan teks",deepBoxSelect:"Tekan Ctrl atau Cmd untuk memilih yang di dalam, dan mencegah penggeseran",eraserRevert:"Tahan Alt untuk mengembalikan elemen yang ditandai untuk dihapus",firefox_clipboard_write:'Fitur ini dapat diaktifkan melalui pengaturan flag "dom.events.asyncClipboard.clipboardItem" ke "true". Untuk mengganti flag di Firefox, pergi ke laman "about:config".',disableSnapping:""},sxe={cannotShowPreview:"Tidak dapat menampilkan pratinjau",canvasTooBig:"Kanvas mungkin terlalu besar.",canvasTooBigTip:"Tip: coba pindahkan elemen-terjauh lebih dekat bersama."},lxe={headingMain:"Mengalami sebuah kesalahan. Cobalah <button>muat ulang halaman.</button>",clearCanvasMessage:"Jika memuat ulang tidak bekerja, cobalah <button>bersihkan canvas.</button>",clearCanvasCaveat:" Ini akan menghasilkan hilangnya pekerjaan ",trackedToSentry:"Kesalahan dengan pengidentifikasi {{eventId}} dilacak di sistem kami.",openIssueMessage:"Kami sangat berhati-hati untuk tidak menyertakan informasi pemandangan Anda pada kesalahan. Jika pemandangan Anda tidak bersifat pribadi, mohon pertimbangkan menindak lanjut pada <button>pelacak bug.</button> Mohon sertakan informasi dibawah ini dengan menyalin dan menempelkan di Github issue.",sceneContent:"Pemandangan konten:"},gxe={desc_intro:"Anda dapat mengundang orang ke pemandangan Anda saat ini untuk berkolaborasi dengan Anda.",desc_privacy:"Jangan khawatir, sesi menggunakan enkripsi end-to-end, sehingga apa pun yang Anda gambar akan tetap bersifat pribadi. Bahkan server kami tidak dapat melihat apa yang Anda lakukan.",button_startSession:"Mulai sesi",button_stopSession:"Hentikan sesi",desc_inProgressIntro:"Sesi kolaborasi sedang berlangsung sekarang.",desc_shareLink:"Bagikan tautan ini dengan siapa pun yang Anda inginkan untuk kolaborasi bersama:",desc_exitSession:"Menghentikan sesi akan memutuskan hubungan Anda dari ruangan, tetapi Anda dapat melanjutkan bekerja dengan pemandangan Anda secara lokal. Perhatikan bahwa ini tidak memengaruhi orang lain, dan mereka masih dapat berkolaborasi pada versi mereka.",shareTitle:"Gabung sesi kolaborasi langsung di Excalidraw"},cxe={title:"Kesalahan"},Cxe={disk_title:"Simpan ke disk",disk_details:"Ekspor data pemandangan ke file yang mana Anda dapat impor nanti.",disk_button:"Simpan ke file",link_title:"Tautan",link_details:"Ekspor sebagai tautan yang hanya dibaca.",link_button:"Ekspor ke tautan",excalidrawplus_description:"Simpan pemandangan ke ruang kerja Excalidraw+ Anda.",excalidrawplus_button:"Ekspor",excalidrawplus_exportError:"Tidak dapat ekspor ke Excalidraw+ saat ini..."},Bxe={blog:"Baca blog kami",click:"klik",deepSelect:"Pilih dalam",deepBoxSelect:"Pilih dalam kotak, dan cegah penggeseran",curvedArrow:"Panah lengkung",curvedLine:"Garis lengkung",documentation:"Dokumentasi",doubleClick:"klik-ganda",drag:"seret",editor:"Editor",editLineArrowPoints:"Edit titik garis/panah",editText:"Edit teks / tambah label",github:"Menemukan masalah? Kirimkan",howto:"Ikuti panduan kami",or:"atau",preventBinding:"Cegah pengikatan panah",tools:"Alat",shortcuts:"Pintasan keyboard",textFinish:"Selesai mengedit (editor teks)",textNewLine:"Tambahkan garis baru (editor teks)",title:"Bantuan",view:"Tampilan",zoomToFit:"Perbesar agar sesuai dengan semua elemen",zoomToSelection:"Perbesar ke seleksi",toggleElementLock:"Kunci/lepas seleksi",movePageUpDown:"Pindah halaman keatas/kebawah",movePageLeftRight:"Pindah halaman kebawah/keatas"},Exe={title:"Hapus kanvas"},dxe={title:"Terbitkan pustaka",itemName:"Nama item",authorName:"Nama pembuat",githubUsername:"Nama pengguna github",twitterUsername:"Nama pengguna Twitter",libraryName:"Nama Pustaka",libraryDesc:"Deskripsi pustaka",website:"Situs Web",placeholder:{authorName:"Nama atau nama pengguna Anda",libraryName:"Nama dari pustaka Anda",libraryDesc:"Deskripsi pustaka Anda untuk membantu orang mengerti penggunaannya",githubHandle:"Akun GitHub (opsional), jadi Anda dapat mengubah pustaka ketika diserahkan untuk review",twitterHandle:"Nama pengguna Twitter (opsional), jadi kami tahu siapa dipuji ketika mempromosikannya melalui Twitter",website:"Hubungkan ke situs personal Anda atau lainnya (opsional)"},errors:{required:"Dibutuhkan",website:"Masukkan URL valid"},noteDescription:"Kirimkan pustaka Anda untuk disertakan di <link>repositori pustaka publik</link>untuk orang lain menggunakannya dalam gambar mereka.",noteGuidelines:"Pustaka butuh disetujui secara manual terlebih dahulu. Baca <link>pedoman</link> sebelum mengirim. Anda butuh akun GitHub untuk berkomunikasi dan membuat perubahan jika dibutuhkan, tetapi tidak wajib dibutukan.",noteLicense:"Dengan mengkirimkannya, Anda setuju pustaka akan diterbitkan dibawah <link>Lisensi MIT, </link>yang artinya siapa pun dapat menggunakannya tanpa batasan.",noteItems:"Setiap item pustaka harus memiliki nama, sehingga bisa disortir. Item pustaka di bawah ini akan dimasukan:",atleastOneLibItem:"Pilih setidaknya satu item pustaka untuk mulai",republishWarning:"Catatan: beberapa item yang dipilih telah ditandai sebagai sudah dipublikasikan/diserahkan. Anda hanya dapat menyerahkan kembali item-item ketika memperbarui pustaka atau pengumpulan."},Ixe={title:"Pustaka telah dikirm",content:"Terima kasih {{authorName}}. pustaka Anda telah diserahkan untuk ditinjau ulang. Anda dapat cek statusnya<link>di sini</link>"},hxe={resetLibrary:"Reset pustaka",removeItemsFromLib:"Hapus item yang dipilih dari pustaka"},Qxe={header:"Ekspor gambar",label:{withBackground:"Latar",onlySelected:"Hanya yang dipilih",darkMode:"Mode gelap",embedScene:"Sematkan pemandangan",scale:"Skala",padding:"Lapisan"},tooltip:{embedScene:`Data pemandangan akan disimpan dalam file PNG/SVG yang diekspor sehingga pemandangan itu dapat dipulihkan darinya.
Akan membesarkan ukuran file yang diekspor.`},title:{exportToPng:"Ekspor ke PNG",exportToSvg:"Ekspor ke SVG",copyPngToClipboard:"Salin PNG ke papan klip"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Salin ke papan klip"}},pxe={tooltip:"Gambar anda terenkripsi end-to-end sehingga server Excalidraw tidak akan pernah dapat melihatnya.",link:"Pos blog tentang enkripsi ujung ke ujung di Excalidraw"},fxe={angle:"Sudut",element:"Elemen",elements:"Elemen",height:"Tinggi",scene:"Pemandangan",selected:"Terpilih",storage:"Penyimpanan",title:"Statistik untuk nerd",total:"Total",version:"Versi",versionCopy:"Klik untuk salin",versionNotAvailable:"Versi tidak tersedia",width:"Lebar"},mxe={addedToLibrary:"Tambahkan ke pustaka",copyStyles:"Gaya tersalin.",copyToClipboard:"Tersalin ke papan klip.",copyToClipboardAsPng:`Tersalin {{exportSelection}} ke clipboard sebagai PNG
({{exportColorScheme}})`,fileSaved:"File tersimpan.",fileSavedToFilename:"Disimpan ke {filename}",canvas:"kanvas",selection:"pilihan",pasteAsSingleElement:`Gunakan {{shortcut}} untuk menempelkan sebagai satu elemen,
atau tempelkan ke teks editor yang ada`,unableToEmbed:"",unrecognizedLinkFormat:""},Dxe={transparent:"Transparan",black:"Hitam",white:"Putih",red:"Merah",pink:"Pink",grape:"Ungu",violet:"Violet",gray:"Abu-abu",blue:"Biru",cyan:"Cyan",teal:"Teal",green:"Hijau",yellow:"Kuning",orange:"Jingga",bronze:"Tembaga"},yxe={app:{center_heading:"Semua data Anda disimpan secara lokal di peramban Anda.",center_heading_plus:"Apa Anda ingin berpindah ke Excalidraw+?",menuHint:"Ekspor, preferensi, bahasa, ..."},defaults:{menuHint:"Ekspor, preferensi, dan selebihnya...",center_heading:"Diagram. Menjadi. Mudah.",toolbarHint:"Pilih alat & mulai menggambar!",helpHint:"Pintasan & bantuan"}},wxe={mostUsedCustomColors:"Warna yang sering dipakai",colors:"Warna",shades:"Nuansa",hexCode:"Kode hexa",noShades:"Tidak ada nuansa untuk warna ini"},bxe={action:{exportToImage:{title:"Ekspor sebagai gambar",button:"Ekspor sebagai gambar",description:"Ekspor data pemandangan sebagai gambar yang dapat anda impor nanti."},saveToDisk:{title:"Simpan ke disk",button:"Simpan ke disk",description:"Ekspor data pemandangan ke file yang dapat Anda dapat impor nanti."},excalidrawPlus:{title:"Excalidraw+",button:"Ekspor ke Excalidraw+",description:"Simpan pemandangan ke ruang kerja Excalidraw+ Anda."}},modal:{loadFromFile:{title:"Muat dari file",button:"Muat dari file",description:"Memuat dari file yang akan <bold>menggantikan konten Anda sekarang</bold>.<br></br>Anda dapat mencadangkan gambar anda dulu menggunakan opsi-opsi ini."},shareableLink:{title:"Muat dari link",button:"Ganti konten saya",description:"Memuat dari file yang akan <bold>menggantikan konten Anda sekarang</bold>.<br></br>Anda dapat mencadangkan gambar anda dulu menggunakan opsi-opsi ini."}}},vxe={title:"",button:"",description:"",syntax:"",preview:""},Ucr={labels:exe,library:txe,buttons:rxe,alerts:ixe,errors:uxe,toolBar:axe,headings:nxe,hints:oxe,canvasError:sxe,errorSplash:lxe,roomDialog:gxe,errorDialog:cxe,exportDialog:Cxe,helpDialog:Bxe,clearCanvasDialog:Exe,publishDialog:dxe,publishSuccessDialog:Ixe,confirmDialog:hxe,imageExportDialog:Qxe,encrypted:pxe,stats:fxe,toast:mxe,colors:Dxe,welcomeScreen:yxe,colorPicker:wxe,overwriteConfirm:bxe,mermaid:vxe}});var r7e={};Dt(r7e,{alerts:()=>Rxe,buttons:()=>Lxe,canvasError:()=>Txe,clearCanvasDialog:()=>Pxe,colorPicker:()=>A7e,colors:()=>Xxe,confirmDialog:()=>qxe,default:()=>Mcr,encrypted:()=>Zxe,errorDialog:()=>Kxe,errorSplash:()=>Yxe,errors:()=>Nxe,exportDialog:()=>Jxe,headings:()=>Uxe,helpDialog:()=>Oxe,hints:()=>Mxe,imageExportDialog:()=>zxe,labels:()=>xxe,library:()=>Sxe,mermaid:()=>t7e,overwriteConfirm:()=>e7e,publishDialog:()=>_xe,publishSuccessDialog:()=>Wxe,roomDialog:()=>Hxe,stats:()=>Vxe,toast:()=>jxe,toolBar:()=>Gxe,welcomeScreen:()=>$xe});var xxe,Sxe,Lxe,Rxe,Nxe,Gxe,Uxe,Mxe,Txe,Yxe,Hxe,Kxe,Jxe,Oxe,Pxe,_xe,Wxe,qxe,zxe,Zxe,Vxe,jxe,Xxe,$xe,A7e,e7e,t7e,Mcr;var i7e=_(()=>{zt();xxe={paste:"Incolla",pasteAsPlaintext:"Incolla come testo normale",pasteCharts:"Incolla grafici",selectAll:"Seleziona tutto",multiSelect:"Aggiungi elemento alla selezione",moveCanvas:"Sposta tela",cut:"Taglia",copy:"Copia",copyAsPng:"Copia negli appunti come PNG",copyAsSvg:"Copia negli appunti come SVG",copyText:"Copia negli appunti come testo",copySource:"Copia sorgente negli appunti",convertToCode:"Converti in codice",bringForward:"Porta avanti",sendToBack:"Manda in fondo",bringToFront:"Porta in cima",sendBackward:"Manda dietro",delete:"Elimina",copyStyles:"Copia stili",pasteStyles:"Incolla stili",stroke:"Tratto",background:"Sfondo",fill:"Riempimento",strokeWidth:"Spessore del tratto",strokeStyle:"Stile del tratto",strokeStyle_solid:"Pieno",strokeStyle_dashed:"Tratteggiato",strokeStyle_dotted:"Punteggiato",sloppiness:"Imprecisione",opacity:"Opacità",textAlign:"Allineamento del testo",edges:"Bordi",sharp:"Acuto",round:"Rotondo",arrowheads:"Punta della freccia",arrowhead_none:"Nessuno",arrowhead_arrow:"Freccia",arrowhead_bar:"Barra",arrowhead_circle:"Cerchio",arrowhead_circle_outline:"Cerchio (contorno)",arrowhead_triangle:"Triangolo",arrowhead_triangle_outline:"Triangolo (contorno)",arrowhead_diamond:"Diamante",arrowhead_diamond_outline:"Diamante (contorno)",fontSize:"Dimensione carattere",fontFamily:"Carattere",addWatermark:'Aggiungi "Creato con Excalidraw"',handDrawn:"A mano libera",normal:"Normale",code:"Codice",small:"Piccolo",medium:"Medio",large:"Grande",veryLarge:"Molto grande",solid:"Pieno",hachure:"Tratteggio obliquo",zigzag:"Zig zag",crossHatch:"Tratteggio incrociato",thin:"Sottile",bold:"Grassetto",left:"Sinistra",center:"Centro",right:"Destra",extraBold:"Extra Grassetto",architect:"Architetto",artist:"Artista",cartoonist:"Fumettista",fileTitle:"Nome del file",colorPicker:"Selettore colore",canvasColors:"Usato su tela",canvasBackground:"Sfondo tela",drawingCanvas:"Area di disegno",layers:"Livelli",actions:"Azioni",language:"Lingua",liveCollaboration:"Collaborazione dal vivo...",duplicateSelection:"Duplica",untitled:"Senza titolo",name:"Nome",yourName:"Il vostro nome",madeWithExcalidraw:"Creato con Excalidraw",group:"Crea gruppo da selezione",ungroup:"Dividi gruppo da selezione",collaborators:"Collaboratori",showGrid:"Visualizza griglia",addToLibrary:"Aggiungi alla libreria",removeFromLibrary:"Rimuovi dalla libreria",libraryLoadingMessage:"Caricamento libreria…",libraries:"Sfoglia librerie",loadingScene:"Caricamento della scena…",align:"Allinea",alignTop:"Allinea in alto",alignBottom:"Allinea in basso",alignLeft:"Allinea a sinistra",alignRight:"Allinea a destra",centerVertically:"Centra Verticalmente",centerHorizontally:"Centra orizzontalmente",distributeHorizontally:"Distribuisci orizzontalmente",distributeVertically:"Distribuisci verticalmente",flipHorizontal:"Capovolgi orizzontalmente",flipVertical:"Capovolgi verticalmente",viewMode:"Modalità visualizzazione",share:"Condividi",showStroke:"Mostra selettore colore del tratto",showBackground:"Mostra selettore colore di sfondo",toggleTheme:"Cambia tema",personalLib:"Libreria Personale",excalidrawLib:"Libreria di Excalidraw",decreaseFontSize:"Riduci dimensione dei caratteri",increaseFontSize:"Aumenta la dimensione dei caratteri",unbindText:"Scollega testo",bindText:"Associa il testo al container",createContainerFromText:"Avvolgi il testo in un container",link:{edit:"Modifica link",editEmbed:"Modifica collegamento e incorpora",create:"Crea link",createEmbed:"Crea collegamento e incorpora",label:"Link",labelEmbed:"Collega & incorpora",empty:"Nessun collegamento impostato"},lineEditor:{edit:"Modifica linea",exit:"Esci dall'editor di linea"},elementLock:{lock:"Blocca",unlock:"Sblocca",lockAll:"Blocca tutto",unlockAll:"Sblocca tutto"},statusPublished:"Pubblicato",sidebarLock:"Mantieni aperta la barra laterale",selectAllElementsInFrame:"Seleziona tutti gli elementi nel riquadro",removeAllElementsFromFrame:"Rimuovi tutti gli elementi dal riquadro",eyeDropper:"Scegli il colore della tela",textToDiagram:"Testo a diagramma",prompt:"Prompt"},Sxe={noItems:"Nessun elemento ancora aggiunto...",hint_emptyLibrary:"Seleziona un elemento sulla tela per aggiungerlo qui, o installa una libreria dal repository pubblico qui sotto.",hint_emptyPrivateLibrary:"Seleziona un elemento sulla tela per aggiungerlo qui."},Lxe={clearReset:"Svuota la tela",exportJSON:"Esporta su file",exportImage:"Esporta immagine...",export:"Salva in...",copyToClipboard:"Copia negli appunti",save:"Salva sul file corrente",saveAs:"Salva con nome",load:"Apri",getShareableLink:"Ottieni link condivisibile",close:"Chiudi",selectLanguage:"Seleziona lingua",scrollBackToContent:"Scorri indietro fino al contenuto",zoomIn:"Aumenta ingrandimento",zoomOut:"Riduci ingrandimento",resetZoom:"Ripristina ingrandimento",menu:"Menù",done:"Fatto",edit:"Modifica",undo:"Annulla",redo:"Ripeti",resetLibrary:"Ripristina libreria",createNewRoom:"Crea nuova stanza",fullScreen:"Schermo intero",darkMode:"Tema scuro",lightMode:"Tema chiaro",zenMode:"Modalità Zen",objectsSnapMode:"Aggancia agli oggetti",exitZenMode:"Uscire dalla modalità zen",cancel:"Annulla",clear:"Cancella",remove:"Rimuovi",embed:"Attiva/disattiva incorporamento",publishLibrary:"Pubblica",submit:"Invia",confirm:"Conferma",embeddableInteractionButton:"Clicca per interagire"},Rxe={clearReset:"Questa azione cancellerà l'intera tela. Sei sicuro?",couldNotCreateShareableLink:"Non riesco a creare un link condivisibile.",couldNotCreateShareableLinkTooBig:"Impossibile creare il link condivisibile: la scena è troppo grande",couldNotLoadInvalidFile:"Impossibile caricare un file no valido",importBackendFailed:"Importazione dal server fallita.",cannotExportEmptyCanvas:"Non è possibile esportare una tela vuota.",couldNotCopyToClipboard:"Impossibile copiare negli appunti.",decryptFailed:"Impossibile decriptare i dati.",uploadedSecurly:"L'upload è stato protetto con la crittografia end-to-end, il che significa che il server Excalidraw e terze parti non possono leggere il contenuto.",loadSceneOverridePrompt:"Se carichi questo disegno esterno, sostituirà quello che hai. Vuoi continuare?",collabStopOverridePrompt:`Interrompere la sessione sovrascriverà il precedente disegno memorizzato localmente. Sei sicuro?
(Se vuoi mantenere il tuo disegno locale, chiudi semplicemente la scheda del browser.)`,errorAddingToLibrary:"Impossibile aggiungere l'elemento alla libreria",errorRemovingFromLibrary:"Impossibile rimuovere l'elemento dalla libreria",confirmAddLibrary:"Questo aggiungerà {{numShapes}} forma(e) alla tua libreria. Sei sicuro?",imageDoesNotContainScene:"Questa immagine pare non contenere alcuna scena. Avevi incluso la scena durante l'esportazione?",cannotRestoreFromImage:"Impossibile ripristinare la scena da questo file immagine",invalidSceneUrl:"Impossibile importare la scena dall'URL fornito. Potrebbe essere malformato o non contenere dati JSON Excalidraw validi.",resetLibrary:"Questa azione cancellerà l'intera libreria. Sei sicuro?",removeItemsFromsLibrary:"Eliminare {{count}} elementi dalla libreria?",invalidEncryptionKey:"La chiave di cifratura deve essere composta da 22 caratteri. La collaborazione live è disabilitata.",collabOfflineWarning:`Nessuna connessione internet disponibile.
Le tue modifiche non verranno salvate!`},Nxe={unsupportedFileType:"Tipo di file non supportato.",imageInsertError:"Non è stato possibile inserire l'immagine. Riprova più tardi...",fileTooBig:"Il file è troppo grande. La dimensione massima consentita è {{maxSize}}.",svgImageInsertError:"Impossibile inserire l'immagine SVG. Il markup SVG non sembra corretto.",failedToFetchImage:"Impossibile recuperare l'immagine.",invalidSVGString:"SVG non valido.",cannotResolveCollabServer:"Impossibile connettersi al server di collab. Ricarica la pagina e riprova.",importLibraryError:"Impossibile caricare la libreria",collabSaveFailed:"Impossibile salvare nel database di backend. Se i problemi persistono, dovresti salvare il tuo file localmente per assicurarti di non perdere il tuo lavoro.",collabSaveFailed_sizeExceeded:"Impossibile salvare nel database di backend, la tela sembra essere troppo grande. Dovresti salvare il file localmente per assicurarti di non perdere il tuo lavoro.",imageToolNotSupported:"Le immagini sono disabilitate.",brave_measure_text_error:{line1:"Sembra che tu stia utilizzando il browser Brave con l'impostazione <bold>Blocco aggressivo delle impronte digitali</bold> abilitata.",line2:"Ciò potrebbe causare la rottura degli <bold>Elementi di testo</bold> nei tuoi disegni.",line3:"Consigliamo vivamente di disabilitare questa impostazione. Puoi seguire <link>questi passaggi</link> su come farlo.",line4:"Se la disattivazione di questa impostazione non risolve la visualizzazione degli elementi di testo, apri un <issueLink>problema</issueLink> sul nostro GitHub o scrivici su <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Gli elementi incorporabili non possono essere aggiunti alla libreria.",iframe:"Gli elementi IFrame non possono essere aggiunti alla libreria.",image:"Il supporto per l'aggiunta d'immagini alla libreria verrà aggiunto a breve!"},asyncPasteFailedOnRead:"Impossibile incollare (non è possibile leggere dagli appunti di sistema).",asyncPasteFailedOnParse:"Impossibile incollare.",copyToSystemClipboardFailed:"Impossibile copiare negli appunti."},Gxe={selection:"Selezione",image:"Inserisci immagine",rectangle:"Rettangolo",diamond:"Rombo",ellipse:"Ellisse",arrow:"Freccia",line:"Linea",freedraw:"Disegno",text:"Testo",library:"Libreria",lock:"Mantieni lo strumento selezionato attivo dopo aver disegnato",penMode:"Modalità penna - previene il tocco",link:"Aggiungi/ aggiorna il link per una forma selezionata",eraser:"Gomma",frame:"Strumento riquadro",magicframe:"",embeddable:"Incorporamento Web",laser:"Puntatore laser",hand:"Mano (strumento di panoramica)",extraTools:"Altri strumenti",mermaidToExcalidraw:"",magicSettings:"Impostazioni di IA"},Uxe={canvasActions:"Azioni sulla Tela",selectedShapeActions:"Impostazioni della forma selezionata",shapes:"Forme"},Mxe={canvasPanning:"Per spostare la tela, tieni premuta la rotellina del mouse o la barra spaziatrice mentre trascini oppure usa lo strumento mano",linearElement:"Clicca per iniziare una linea in più punti, trascina per singola linea",freeDraw:"Clicca e trascina, rilascia quando avrai finito",text:"Suggerimento: puoi anche aggiungere del testo facendo doppio clic ovunque con lo strumento di selezione",embeddable:"Fare click e trascina per creare un incorporamento web",text_selected:"Fai doppio click o premi INVIO per modificare il testo",text_editing:"Premi ESC o CtrlOCmd+INVIO per completare le modifiche",linearElementMulti:"Clicca sull'ultimo punto o premi Esc o Invio per finire",lockAngle:"Puoi limitare l'angolo tenendo premuto SHIFT",resize:`Per vincolare le proporzioni, tieni premuto MAIUSC durante il ridimensionamento;
per ridimensionare dal centro, tieni premuto ALT`,resizeImage:`Puoi ridimensionare liberamente tenendo premuto SHIFT,
tieni premuto ALT per ridimensionare dal centro`,rotate:"Puoi mantenere gli angoli tenendo premuto SHIFT durante la rotazione",lineEditor_info:"Tieni premuto Ctrl o Cmd e doppio clic oppure premi Ctrl o Cmd + Invio per modificare i punti",lineEditor_pointSelected:`Premi Elimina per rimuovere il punto(i),
CtrlOCmd+D per duplicare o trascinare per spostare`,lineEditor_nothingSelected:`Seleziona un punto da modificare (tieni premuto MAIUSC per selezionare più punti),
oppure tieni premuto Alt e fai clic per aggiungere nuovi punti`,placeImage:"Fai click per posizionare l'immagine, o click e trascina per impostarne la dimensione manualmente",publishLibrary:"Pubblica la tua libreria",bindTextToElement:"Premi invio per aggiungere il testo",deepBoxSelect:"Tieni premuto CtrlOCmd per selezionare in profondità e per impedire il trascinamento",eraserRevert:"Tieni premuto Alt per ripristinare gli elementi contrassegnati per l'eliminazione",firefox_clipboard_write:'Questa funzione può essere abilitata impostando il flag "dom.events.asyncClipboard.clipboardItem" su "true". Per modificare i flag del browser in Firefox, visitare la pagina "about:config".',disableSnapping:"Tieni premuto Ctrl o Cmd per disabilitare lo snap"},Txe={cannotShowPreview:"Impossibile visualizzare l'anteprima",canvasTooBig:"La tela potrebbe essere troppo grande.",canvasTooBigTip:"Suggerimento: prova a spostare gli elementi più lontani più vicini tra loro."},Yxe={headingMain:"Si è verificato un errore. Provare <button>ricaricando la pagina.</button>",clearCanvasMessage:"Se ricaricare non funziona, prova <button>pulire la tela.</button>",clearCanvasCaveat:" Questo risulterà nella perdita del lavoro ",trackedToSentry:"L'errore con identificativo {{eventId}} è stato tracciato nel nostro sistema.",openIssueMessage:"Siamo stati molto cauti nel non includere informazioni della scena nell'errore. Se la tua scena non è privata, ti preghiamo di considerare la sua inclusione nel nostro <button>bug tracker.</button> Per favore includi le informazioni riportate qui sotto copiandole e incollandole nella issue di GitHub.",sceneContent:"Contenuto della scena:"},Hxe={desc_intro:"Puoi invitare persone nella tua scena attuale per collaborare con te.",desc_privacy:"Non preoccuparti, la sessione utilizza la crittografia end-to-end, quindi qualsiasi cosa disegni rimarrà privata. Nemmeno il nostro server sarà in grado di vedere cosa hai creato.",button_startSession:"Avvia sessione",button_stopSession:"Termina sessione",desc_inProgressIntro:"La sessione di collaborazione è attualmente in corso.",desc_shareLink:"Condividi questo link con chiunque desideri collaborare:",desc_exitSession:"Interrompere la sessione scollegherà la tua stanza ma potrai continuare a lavorare con la scena, localmente. Tieni presente che questo non influirà sulle altre persone, e che saranno ancora in grado di collaborare alla loro versione.",shareTitle:"Partecipa a una sessione di collaborazione live su Excalidraw"},Kxe={title:"Errore"},Jxe={disk_title:"Salva su disco",disk_details:"Esporta i dati della scena su file, dal quale potrai importare in seguito.",disk_button:"Salva su file",link_title:"Link condivisibile",link_details:"Esporta come link di sola lettura.",link_button:"Esporta come Link",excalidrawplus_description:"Salva la scena nel tuo spazio di lavoro Excalidraw+.",excalidrawplus_button:"Esporta",excalidrawplus_exportError:"Non è stato possibile esportare su Excalidraw+ al questo momento..."},Oxe={blog:"Leggi il nostro blog",click:"click",deepSelect:"Selezione profonda",deepBoxSelect:"Seleziona in profondità all'interno della casella e previene il trascinamento",curvedArrow:"Freccia curva",curvedLine:"Linea curva",documentation:"Documentazione",doubleClick:"doppio-click",drag:"trascina",editor:"Editor",editLineArrowPoints:"Modifica punti linea/freccia",editText:"Modifica testo / aggiungi etichetta",github:"Trovato un problema? Segnalalo",howto:"Segui le nostre guide",or:"oppure",preventBinding:"Impedisci legame della freccia",tools:"Stumenti",shortcuts:"Scorciatoie da tastiera",textFinish:"Completa la modifica (editor di testo)",textNewLine:"Aggiungi nuova riga (editor di testo)",title:"Guida",view:"Vista",zoomToFit:"Adatta zoom per mostrare tutti gli elementi",zoomToSelection:"Zoom alla selezione",toggleElementLock:"Blocca/sblocca selezione",movePageUpDown:"Sposta la pagina su/giù",movePageLeftRight:"Sposta la pagina a sinistra/destra"},Pxe={title:"Svuota la tela"},_xe={title:"Pubblica la libreria",itemName:"Nome dell'elemento",authorName:"Nome dell'autore",githubUsername:"Nome utente di GitHub",twitterUsername:"Nome utente di Twitter",libraryName:"Nome della libreria",libraryDesc:"Descrizione della libreria",website:"Sito Web",placeholder:{authorName:"Il tuo nome o nome utente",libraryName:"Nome della tua libreria",libraryDesc:"Descrizione della tua libreria per aiutare le persone a comprenderne lo scopo",githubHandle:"Handle di GitHub (opzionale), così che tu possa modificare la libreria una volta inviata per la revisione",twitterHandle:"Nome utente di Twitter (opzionale), così che sappiamo chi accreditare promuovendo su Twitter",website:"Link al tuo sito web personale o altro (opzionale)"},errors:{required:"Obbligatorio",website:"Inserisci un URL valido"},noteDescription:"Invia la tua libreria da includere nella <link>repository della libreria pubblica</link>perché sia usata da altri nei loro disegni.",noteGuidelines:"La libreria dev'esser prima approvata manualmente. Sei pregato di leggere le <link>linee guida</link> prima di inviarla. Necessiterai di un profilo di GitHub per comunicare ed effettuare modifiche se richiesto, ma non è strettamente necessario.",noteLicense:"Inviando, acconsenti che la libreria sarà pubblicata sotto la <link>Licenza MIT, </link>che in breve significa che chiunque possa usarla senza restrizioni.",noteItems:"Ogni elemento della libreria deve avere il proprio nome, così che sia filtrabile. Gli elementi della seguente libreria saranno inclusi:",atleastOneLibItem:"Sei pregato di selezionare almeno un elemento della libreria per iniziare",republishWarning:"Nota: alcuni degli elementi selezionati sono contrassegnati come già pubblicati/presentati. È necessario reinviare gli elementi solo quando si aggiorna una libreria o una presentazione esistente."},Wxe={title:"Libreria inviata",content:"Grazie {{authorName}}. La tua libreria è stata inviata per la revisione. Puoi monitorarne lo stato<link>qui</link>"},qxe={resetLibrary:"Ripristina la libreria",removeItemsFromLib:"Rimuovi gli elementi selezionati dalla libreria"},zxe={header:"Esporta immagine",label:{withBackground:"Sfondo",onlySelected:"Solo selezionato",darkMode:"Tema scuro",embedScene:"Includi scena",scale:"Scala",padding:"Rientro"},tooltip:{embedScene:`I dati della scena saranno salvati nel file PNG/SVG esportato in modo che la scena possa essere ripristinata da esso.
Questo aumenterà la dimensione del file esportato.`},title:{exportToPng:"Esporta come PNG",exportToSvg:"Esporta come SVG",copyPngToClipboard:"Copia PNG negli appunti"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copia negli appunti"}},Zxe={tooltip:"I tuoi disegni sono crittografati end-to-end in modo che i server di Excalidraw non li possano mai vedere.",link:"Articolo del blog sulla crittografia end-to-end di Excalidraw"},Vxe={angle:"Angolo",element:"Elemento",elements:"Elementi",height:"Altezza",scene:"Scena",selected:"Selezionato",storage:"Memoria",title:"Statistiche per nerd",total:"Totale",version:"Versione",versionCopy:"Clicca per copiare",versionNotAvailable:"Versione non disponibile",width:"Larghezza"},jxe={addedToLibrary:"Aggiunto alla libreria",copyStyles:"Stili copiati.",copyToClipboard:"Copiato negli appunti.",copyToClipboardAsPng:`{{exportSelection}} copiato negli appunti come PNG
({{exportColorScheme}})`,fileSaved:"File salvato.",fileSavedToFilename:"Salvato in {filename}",canvas:"tela",selection:"selezione",pasteAsSingleElement:`Usa {{shortcut}} per incollare come un singolo elemento,
o incollare in un editor di testo esistente`,unableToEmbed:"Incorporare questo url non è permesso. Crea una issue su GitHub per richiedere che l'url sia autorizzato",unrecognizedLinkFormat:"Il link che hai incorporato non corrisponde al formato previsto. Prova a incollare la stringa 'embed' fornita dal sito di origine"},Xxe={transparent:"Trasparente",black:"Nero",white:"Bianco",red:"Rosso",pink:"Rosa",grape:"Uva",violet:"Viola",gray:"Grigio",blue:"Blu",cyan:"Ciano",teal:"Verde acqua",green:"Verde",yellow:"Giallo",orange:"Arancio",bronze:"Bronzo"},$xe={app:{center_heading:"Tutti i tuoi dati sono salvati localmente nel browser.",center_heading_plus:"Volevi invece andare su Excalidraw+?",menuHint:"Esporta, preferenze, lingue, ..."},defaults:{menuHint:"Esporta, preferenze, e altro...",center_heading:"Diagrammi. Fatto. Semplice.",toolbarHint:"Scegli uno strumento & Inizia a disegnare!",helpHint:"Scorciatoie & aiuto"}},A7e={mostUsedCustomColors:"Colori personalizzati più utilizzati",colors:"Colori",shades:"Sfumature",hexCode:"Codice esadecimale",noShades:"Nessuna sfumatura disponibile per questo colore"},e7e={action:{exportToImage:{title:"Esporta come immagine",button:"Esporta come immagine",description:"Esporta i dati della scena come immagine, che potrai importare in seguito."},saveToDisk:{title:"Salva su disco",button:"Salva su disco",description:"Esporta i dati della scena su file, che potrai importare in seguito."},excalidrawPlus:{title:"Excalidraw+",button:"Esporta su Excalidraw+",description:"Salva la scena sul tuo spazio di lavoro Excalidraw+."}},modal:{loadFromFile:{title:"Carica da file",button:"Carica da file",description:"Il caricamento da file sostituirà <bold>il contenuto esistente</bold>.<br></br>Puoi salvare il tuo disegno prima usando una delle opzioni qui sotto."},shareableLink:{title:"Carica da link",button:"Sostituisci il mio contenuto",description:"Il caricamento da file sostituirà <bold>il contenuto esistente</bold>.<br></br>Puoi salvare il tuo disegno prima usando una delle opzioni qui sotto."}}},t7e={title:"",button:"Inserisci",description:"",syntax:"",preview:"Anteprima"},Mcr={labels:xxe,library:Sxe,buttons:Lxe,alerts:Rxe,errors:Nxe,toolBar:Gxe,headings:Uxe,hints:Mxe,canvasError:Txe,errorSplash:Yxe,roomDialog:Hxe,errorDialog:Kxe,exportDialog:Jxe,helpDialog:Oxe,clearCanvasDialog:Pxe,publishDialog:_xe,publishSuccessDialog:Wxe,confirmDialog:qxe,imageExportDialog:zxe,encrypted:Zxe,stats:Vxe,toast:jxe,colors:Xxe,welcomeScreen:$xe,colorPicker:A7e,overwriteConfirm:e7e,mermaid:t7e}});var L7e={};Dt(L7e,{alerts:()=>o7e,buttons:()=>n7e,canvasError:()=>C7e,clearCanvasDialog:()=>Q7e,colorPicker:()=>F7e,colors:()=>v7e,confirmDialog:()=>m7e,default:()=>Tcr,encrypted:()=>y7e,errorDialog:()=>d7e,errorSplash:()=>B7e,errors:()=>s7e,exportDialog:()=>I7e,headings:()=>g7e,helpDialog:()=>h7e,hints:()=>c7e,imageExportDialog:()=>D7e,labels:()=>u7e,library:()=>a7e,mermaid:()=>S7e,overwriteConfirm:()=>x7e,publishDialog:()=>p7e,publishSuccessDialog:()=>f7e,roomDialog:()=>E7e,stats:()=>w7e,toast:()=>b7e,toolBar:()=>l7e,welcomeScreen:()=>k7e});var u7e,a7e,n7e,o7e,s7e,l7e,g7e,c7e,C7e,B7e,E7e,d7e,I7e,h7e,Q7e,p7e,f7e,m7e,D7e,y7e,w7e,b7e,v7e,k7e,F7e,x7e,S7e,Tcr;var R7e=_(()=>{zt();u7e={paste:"貼り付け",pasteAsPlaintext:"書式なしテキストとして貼り付け",pasteCharts:"チャートの貼り付け",selectAll:"すべて選択",multiSelect:"複数選択",moveCanvas:"キャンバスを移動",cut:"切り取り",copy:"コピー",copyAsPng:"PNGとしてクリップボードへコピー",copyAsSvg:"SVGとしてクリップボードへコピー",copyText:"テキストとしてクリップボードにコピー",copySource:"",convertToCode:"",bringForward:"前面に移動",sendToBack:"最背面に移動",bringToFront:"最前面に移動",sendBackward:"背面に移動",delete:"削除",copyStyles:"スタイルのコピー",pasteStyles:"スタイルの貼り付け",stroke:"線",background:"背景",fill:"塗りつぶし",strokeWidth:"線の太さ",strokeStyle:"線の種類",strokeStyle_solid:"実線",strokeStyle_dashed:"破線",strokeStyle_dotted:"点線",sloppiness:"ばらつき加減",opacity:"透明度",textAlign:"文字の配置",edges:"角",sharp:"四角",round:"丸",arrowheads:"線の終点",arrowhead_none:"なし",arrowhead_arrow:"矢印",arrowhead_bar:"バー",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"三角",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"フォントの大きさ",fontFamily:"フォントの種類",addWatermark:'"Made with Excalidraw"と表示',handDrawn:"手描き風",normal:"普通",code:"コード",small:"小",medium:"中",large:"大",veryLarge:"特大",solid:"ベタ塗り",hachure:"斜線",zigzag:"ジグザグ",crossHatch:"網掛け",thin:"細",bold:"太字",left:"左寄せ",center:"中央寄せ",right:"右寄せ",extraBold:"極太",architect:"正確",artist:"アート",cartoonist:"漫画風",fileTitle:"ファイル名",colorPicker:"色選択",canvasColors:"キャンバス上で使用",canvasBackground:"キャンバスの背景",drawingCanvas:"キャンバスの描画",layers:"レイヤー",actions:"操作",language:"言語",liveCollaboration:"共同編集...",duplicateSelection:"複製",untitled:"無題",name:"名前",yourName:"あなたの名前",madeWithExcalidraw:"Excalidrawで作成",group:"グループ化",ungroup:"グループ化を解除",collaborators:"共同編集者",showGrid:"グリッドを表示",addToLibrary:"ライブラリに追加",removeFromLibrary:"ライブラリから削除",libraryLoadingMessage:"ライブラリを読み込み中…",libraries:"ライブラリを参照する",loadingScene:"シーンを読み込み中…",align:"配置",alignTop:"上揃え",alignBottom:"下揃え",alignLeft:"左揃え",alignRight:"右揃え",centerVertically:"縦方向に中央揃え",centerHorizontally:"横方向に中央揃え",distributeHorizontally:"水平方向に分散配置",distributeVertically:"垂直方向に分散配置",flipHorizontal:"水平方向に反転",flipVertical:"垂直方向に反転",viewMode:"閲覧モード",share:"共有",showStroke:"ストロークカラーピッカーを表示",showBackground:"背景色ピッカーを表示",toggleTheme:"テーマの切り替え",personalLib:"個人ライブラリ",excalidrawLib:"Excalidrawライブラリ",decreaseFontSize:"フォントサイズを縮小",increaseFontSize:"フォントサイズを拡大",unbindText:"テキストのバインド解除",bindText:"テキストをコンテナにバインド",createContainerFromText:"コンテナ内でテキストを折り返す",link:{edit:"リンクを編集",editEmbed:"リンクの編集と埋め込み",create:"リンクを作成",createEmbed:"リンクの作成と埋め込み",label:"リンク",labelEmbed:"リンクと埋め込み",empty:"リンクが設定されていません"},lineEditor:{edit:"行を編集",exit:"行エディタを終了"},elementLock:{lock:"ロック",unlock:"ロック解除",lockAll:"すべてロック",unlockAll:"すべてのロックを解除"},statusPublished:"公開済み",sidebarLock:"サイドバーを開いたままにする",selectAllElementsInFrame:"フレーム内のすべての要素を選択",removeAllElementsFromFrame:"フレーム内のすべての要素を削除",eyeDropper:"キャンバスから色を選択",textToDiagram:"",prompt:""},a7e={noItems:"まだアイテムが追加されていません…",hint_emptyLibrary:"キャンバス上のアイテムを選択してここに追加するか、以下の公開リポジトリからライブラリをインストールしてください。",hint_emptyPrivateLibrary:"キャンバス上のアイテムを選択すると、ここに追加されます。"},n7e={clearReset:"キャンバスのリセット",exportJSON:"ファイルへエクスポート",exportImage:"画像のエクスポート...",export:"名前を付けて保存...",copyToClipboard:"クリップボードにコピー",save:"現在のファイルに保存",saveAs:"名前を付けて保存",load:"開く",getShareableLink:"共有URLの取得",close:"閉じる",selectLanguage:"言語の選択",scrollBackToContent:"コンテンツまでスクロールで戻る",zoomIn:"拡大",zoomOut:"縮小",resetZoom:"拡大/縮小をリセット",menu:"メニュー",done:"完了",edit:"編集",undo:"元に戻す",redo:"やり直し",resetLibrary:"ライブラリをリセット",createNewRoom:"新しい部屋を作成する",fullScreen:"フルスクリーン",darkMode:"ダークモード",lightMode:"ライトモード",zenMode:"Zenモード",objectsSnapMode:"",exitZenMode:"集中モードをやめる",cancel:"キャンセル",clear:"消去",remove:"削除",embed:"埋め込みの切り替え",publishLibrary:"公開",submit:"送信",confirm:"確認",embeddableInteractionButton:""},o7e={clearReset:"この操作によってキャンバス全体が消えます。よろしいですか?",couldNotCreateShareableLink:"共有URLを作成できませんでした。",couldNotCreateShareableLinkTooBig:"共有可能なリンクを作成できませんでした: シーンが大きすぎます",couldNotLoadInvalidFile:"無効なファイルを読み込めませんでした。",importBackendFailed:"サーバーからの読み込みに失敗しました。",cannotExportEmptyCanvas:"空のキャンバスはエクスポートできません。",couldNotCopyToClipboard:"クリップボードにコピーできませんでした。",decryptFailed:"データを復号できませんでした。",uploadedSecurly:"データのアップロードはエンドツーエンド暗号化によって保護されています。Excalidrawサーバーと第三者はデータの内容を見ることができません。",loadSceneOverridePrompt:"外部図面を読み込むと、既存のコンテンツが置き換わります。続行しますか?",collabStopOverridePrompt:`セッションを停止すると、ローカルに保存されている図が上書きされます。 本当によろしいですか?
(ローカルの図を保持したい場合は、セッションを停止せずにブラウザタブを閉じてください。)`,errorAddingToLibrary:"アイテムをライブラリに追加できませんでした",errorRemovingFromLibrary:"ライブラリからアイテムを削除できませんでした",confirmAddLibrary:"{{numShapes}} 個の図形をライブラリに追加します。よろしいですか?",imageDoesNotContainScene:"この画像にはシーンデータが含まれていないようです。エクスポート時にシーンの埋め込みを有効にしましたか?",cannotRestoreFromImage:"このイメージファイルからシーンを復元できませんでした",invalidSceneUrl:"指定された URL からシーンをインポートできませんでした。不正な形式であるか、有効な Excalidraw JSON データが含まれていません。",resetLibrary:"ライブラリを消去します。本当によろしいですか?",removeItemsFromsLibrary:"{{count}} 個のアイテムをライブラリから削除しますか?",invalidEncryptionKey:"暗号化キーは22文字でなければなりません。ライブコラボレーションは無効化されています。",collabOfflineWarning:`インターネットに接続されていません。
変更は保存されません!`},s7e={unsupportedFileType:"サポートされていないファイル形式です。",imageInsertError:"画像を挿入できませんでした。後でもう一度お試しください...",fileTooBig:"ファイルが大きすぎます。許可される最大サイズは {{maxSize}} です。",svgImageInsertError:"SVGイメージを挿入できませんでした。SVGマークアップは無効に見えます。",failedToFetchImage:"",invalidSVGString:"無効なSVGです。",cannotResolveCollabServer:"コラボレーションサーバに接続できませんでした。ページを再読み込みして、もう一度お試しください。",importLibraryError:"ライブラリを読み込めませんでした。",collabSaveFailed:"バックエンドデータベースに保存できませんでした。問題が解決しない場合は、作業を失わないようにローカルにファイルを保存してください。",collabSaveFailed_sizeExceeded:"キャンバスが大きすぎるため、バックエンドデータベースに保存できませんでした。問題が解決しない場合は、作業を失わないようにローカルにファイルを保存してください。",imageToolNotSupported:"",brave_measure_text_error:{line1:"<bold>Aggressly Block Fingerprinting</bold> の設定が有効なBraveブラウザを使用しているようです。",line2:"これにより、図面の <bold>テキスト要素</bold> が壊れる可能性があります。",line3:"この設定を無効にすることを強く推奨します。 <link>設定手順</link> をこちらから確認できます。",line4:"この設定を無効にすると、テキスト要素の表示が修正されません。 GitHub で <issueLink>Issue</issueLink> を開くか、 <discordLink>Discord</discordLink> にご記入ください"},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},l7e={selection:"選択",image:"画像を挿入",rectangle:"矩形",diamond:"ひし形",ellipse:"楕円",arrow:"矢印",line:"直線",freedraw:"描画",text:"テキスト",library:"ライブラリ",lock:"描画後も使用中のツールを選択したままにする",penMode:"ペンモード - タッチ防止",link:"選択した図形のリンクを追加/更新",eraser:"消しゴム",frame:"フレームツール",magicframe:"",embeddable:"Web埋め込み",laser:"",hand:"手 (パンニングツール)",extraTools:"その他のツール",mermaidToExcalidraw:"",magicSettings:""},g7e={canvasActions:"キャンバス操作",selectedShapeActions:"選択された図形に対する操作",shapes:"図形"},c7e={canvasPanning:"キャンバスを移動するには、マウスホイールまたはスペースバーを押しながらドラッグするか、手ツールを使用します",linearElement:"クリックすると複数の頂点からなる曲線を開始、ドラッグすると直線",freeDraw:"クリックしてドラッグします。離すと終了します",text:"ヒント: 選択ツールを使用して任意の場所をダブルクリックしてテキストを追加することもできます",embeddable:"",text_selected:"テキストを編集するには、ダブルクリックまたはEnterキーを押します",text_editing:"Esc キーまたは CtrlOrCmd+ENTER キーを押して編集を終了します",linearElementMulti:"最後のポイントをクリックするか、エスケープまたはEnterを押して終了します",lockAngle:"SHIFTを押したままにすると、角度を制限することができます",resize:"サイズを変更中にSHIFTを押すと縦横比を固定できます。Altを押すと中央からサイズを変更できます",resizeImage:`SHIFTを長押しすると自由にサイズを変更できます。
中央からサイズを変更するにはALTを長押しします`,rotate:"回転中にSHIFT キーを押すと角度を制限することができます",lineEditor_info:"CtrlOrCmd を押したままダブルクリックするか、CtrlOrCmd + Enter を押して点を編集します",lineEditor_pointSelected:"Deleteキーを押すと点を削除、CtrlOrCmd+Dで複製、マウスドラッグで移動",lineEditor_nothingSelected:`編集する点を選択(SHIFTを押したままで複数選択)、
Altキーを押しながらクリックすると新しい点を追加`,placeImage:"クリックして画像を配置するか、クリックしてドラッグしてサイズを手動で設定します",publishLibrary:"自分のライブラリを公開",bindTextToElement:"Enterを押してテキストを追加",deepBoxSelect:"CtrlOrCmd を押し続けることでドラッグを抑止し、深い選択を行います",eraserRevert:"Alt を押し続けることで削除マークされた要素を元に戻す",firefox_clipboard_write:'この機能は、"dom.events.asyncClipboard.clipboardItem" フラグを "true" に設定することで有効になる可能性があります。Firefox でブラウザーの設定を変更するには、"about:config" ページを参照してください。',disableSnapping:""},C7e={cannotShowPreview:"プレビューを表示できません",canvasTooBig:"キャンバスが大きすぎます。",canvasTooBigTip:"ヒント: 最も遠い要素をもう少し近づけてみてください。"},B7e={headingMain:"エラーが発生しました。もう一度やり直してください。 <button>ページを再読み込みする。</button>",clearCanvasMessage:"再読み込みがうまくいかない場合は、 <button>キャンバスを消去しています</button>",clearCanvasCaveat:" これにより作業が失われます ",trackedToSentry:"識別子のエラー {{eventId}} が我々のシステムで追跡されました。",openIssueMessage:"エラーに関するシーン情報を含めないように非常に慎重に設定しました。もしあなたのシーンがプライベートでない場合は、私たちのフォローアップを検討してください。 <button>バグ報告</button> GitHub のIssueに以下の情報をコピーして貼り付けてください。",sceneContent:"シーンの内容:"},E7e={desc_intro:"他の人を編集中のあなたの画面に招待して共同編集することができます。",desc_privacy:"このセッションはエンドツーエンド暗号化されており、描画内容は保護されています。運営サーバーからも内容は見えません。",button_startSession:"セッションを開始する",button_stopSession:"セッションを終了する",desc_inProgressIntro:"共同編集セッションが有効になっています。",desc_shareLink:"下記URLを共同編集したい人に共有してください:",desc_exitSession:"セッションを終了するとあなたはルームから切断されますが、ローカルで作業を続けることができます。セッションを終了しても他のメンバには影響はなく、引き続き共同作業を行うことができます。",shareTitle:"Excalidrawの共同編集セッションに参加する"},d7e={title:"エラー"},I7e={disk_title:"ディスクに保存",disk_details:"シーンデータを後からインポートできるファイルにエクスポートします。",disk_button:"ファイルへ保存",link_title:"共有可能なリンク",link_details:"読み取り専用リンクとしてエクスポート",link_button:"リンクとしてエクスポート",excalidrawplus_description:"Excalidraw+ ワークスペースにシーンを保存します。",excalidrawplus_button:"エクスポート",excalidrawplus_exportError:"Excalidraw+ にエクスポートできませんでした..."},h7e={blog:"公式ブログを読む",click:"クリック",deepSelect:"深い選択",deepBoxSelect:"ボックス内の深い選択、およびドラッグの抑止",curvedArrow:"カーブした矢印",curvedLine:"曲線",documentation:"ドキュメント",doubleClick:"ダブルクリック",drag:"ドラッグ",editor:"エディタ",editLineArrowPoints:"",editText:"テキストの編集 / ラベルの追加",github:"不具合報告はこちら",howto:"ヘルプ・マニュアル",or:"または",preventBinding:"矢印を結合しない",tools:"ツール",shortcuts:"キーボードショートカット",textFinish:"編集を終了 (テキストエディタ)",textNewLine:"新しい行を追加 (テキスト)",title:"ヘルプ",view:"表示",zoomToFit:"すべての要素が収まるようにズーム",zoomToSelection:"選択要素にズーム",toggleElementLock:"選択したアイテムをロック/ロック解除",movePageUpDown:"ページを上下に移動",movePageLeftRight:"ページを左右に移動"},Q7e={title:"キャンバスを消去"},p7e={title:"ライブラリを公開",itemName:"アイテム名",authorName:"作成者名",githubUsername:"GitHub ユーザ名",twitterUsername:"Twitter ユーザ名",libraryName:"ライブラリ名",libraryDesc:"ライブラリの説明",website:"Webサイト",placeholder:{authorName:"お名前またはユーザー名",libraryName:"あなたのライブラリ名",libraryDesc:"ライブラリの使い方を理解するための説明",githubHandle:"GitHubハンドル(任意)。一度レビューのために送信されると、ライブラリを編集できます",twitterHandle:"Twitterのユーザー名 (任意)。Twitterでプロモーションする際にクレジットする人を知っておくためのものです",website:"個人のウェブサイトまたは他のサイトへのリンク (任意)"},errors:{required:"必須項目",website:"有効な URL を入力してください"},noteDescription:"以下に含めるライブラリを提出してください <link>公開ライブラリのリポジトリ</link>他の人が作図に使えるようにするためです",noteGuidelines:"最初にライブラリを手動で承認する必要があります。次をお読みください <link>ガイドライン</link> 送信する前に、GitHubアカウントが必要になりますが、必須ではありません。",noteLicense:"提出することにより、ライブラリが次の下で公開されることに同意します: <link>MIT ライセンス </link>つまり誰でも制限なく使えるということです",noteItems:"各ライブラリ項目は、フィルタリングのために独自の名前を持つ必要があります。以下のライブラリアイテムが含まれます:",atleastOneLibItem:"開始するには少なくとも1つのライブラリ項目を選択してください",republishWarning:"注意: 選択された項目の中には、すでに公開/投稿済みと表示されているものがあります。既存のライブラリや投稿を更新する場合のみ、アイテムを再投稿してください。"},f7e={title:"ライブラリを送信しました",content:"{{authorName}} さん、ありがとうございます。あなたのライブラリはレビューのために提出されました。状況を追跡できます。<link>こちら</link>"},m7e={resetLibrary:"ライブラリをリセット",removeItemsFromLib:"選択したアイテムをライブラリから削除"},D7e={header:"画像をエクスポート",label:{withBackground:"背景",onlySelected:"",darkMode:"ダークモード",embedScene:"",scale:"スケール",padding:"余白"},tooltip:{embedScene:""},title:{exportToPng:"PNG にエクスポート",exportToSvg:"SVG にエクスポート",copyPngToClipboard:"クリップボードにPNGをコピー"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"クリップボードにコピー"}},y7e={tooltip:"描画内容はエンドツーエンド暗号化が施されており、Excalidrawサーバーが内容を見ることはできません。",link:"Excalidrawのエンドツーエンド暗号化に関するブログ記事"},w7e={angle:"角度",element:"要素",elements:"要素",height:"高さ",scene:"シーン",selected:"選択済み",storage:"ストレージ",title:"詳細統計情報",total:"合計",version:"バージョン",versionCopy:"クリックしてコピー",versionNotAvailable:"利用できないバージョン",width:"幅"},b7e={addedToLibrary:"ライブラリに追加しました",copyStyles:"スタイルをコピーしました。",copyToClipboard:"クリップボードにコピー",copyToClipboardAsPng:`{{exportSelection}} を PNG 形式でクリップボードにコピーしました
({{exportColorScheme}})`,fileSaved:"ファイルを保存しました",fileSavedToFilename:"{filename} に保存しました",canvas:"キャンバス",selection:"選択",pasteAsSingleElement:`{{shortcut}} を使用して単一の要素として貼り付けるか、
既存のテキストエディタに貼り付け`,unableToEmbed:"",unrecognizedLinkFormat:""},v7e={transparent:"透明",black:"黒",white:"白",red:"赤",pink:"ピンク",grape:"グレープ",violet:"バイオレット",gray:"灰色",blue:"青",cyan:"シアン",teal:"ティール",green:"緑",yellow:"黄",orange:"オレンジ",bronze:"ブロンズ"},k7e={app:{center_heading:"すべてのデータはブラウザにローカル保存されます。",center_heading_plus:"代わりにExcalidraw+を開きますか?",menuHint:"エクスポート、設定、言語..."},defaults:{menuHint:"エクスポート、設定、その他...",center_heading:"ダイアグラムを簡単に。",toolbarHint:"ツールを選んで描き始めよう!",helpHint:"ショートカットとヘルプ"}},F7e={mostUsedCustomColors:"最も使用されているカスタム色",colors:"色",shades:"影",hexCode:"Hexコード",noShades:""},x7e={action:{exportToImage:{title:"画像としてエクスポート",button:"画像としてエクスポート",description:""},saveToDisk:{title:"ディスクに保存",button:"ディスクに保存",description:""},excalidrawPlus:{title:"Excalidraw+",button:"Excalidraw+にエクスポート",description:"Excalidraw+ ワークスペースにシーンを保存します。"}},modal:{loadFromFile:{title:"ファイルからロード",button:"ファイルからロード",description:""},shareableLink:{title:"リンクからロード",button:"",description:""}}},S7e={title:"",button:"",description:"",syntax:"",preview:""},Tcr={labels:u7e,library:a7e,buttons:n7e,alerts:o7e,errors:s7e,toolBar:l7e,headings:g7e,hints:c7e,canvasError:C7e,errorSplash:B7e,roomDialog:E7e,errorDialog:d7e,exportDialog:I7e,helpDialog:h7e,clearCanvasDialog:Q7e,publishDialog:p7e,publishSuccessDialog:f7e,confirmDialog:m7e,imageExportDialog:D7e,encrypted:y7e,stats:w7e,toast:b7e,colors:v7e,welcomeScreen:k7e,colorPicker:F7e,overwriteConfirm:x7e,mermaid:S7e}});var n8e={};Dt(n8e,{alerts:()=>M7e,buttons:()=>U7e,canvasError:()=>J7e,clearCanvasDialog:()=>z7e,colorPicker:()=>i8e,colors:()=>t8e,confirmDialog:()=>j7e,default:()=>Ycr,encrypted:()=>$7e,errorDialog:()=>_7e,errorSplash:()=>O7e,errors:()=>T7e,exportDialog:()=>W7e,headings:()=>H7e,helpDialog:()=>q7e,hints:()=>K7e,imageExportDialog:()=>X7e,labels:()=>N7e,library:()=>G7e,mermaid:()=>a8e,overwriteConfirm:()=>u8e,publishDialog:()=>Z7e,publishSuccessDialog:()=>V7e,roomDialog:()=>P7e,stats:()=>A8e,toast:()=>e8e,toolBar:()=>Y7e,welcomeScreen:()=>r8e});var N7e,G7e,U7e,M7e,T7e,Y7e,H7e,K7e,J7e,O7e,P7e,_7e,W7e,q7e,z7e,Z7e,V7e,j7e,X7e,$7e,A8e,e8e,t8e,r8e,i8e,u8e,a8e,Ycr;var o8e=_(()=>{zt();N7e={paste:"Qoyıw",pasteAsPlaintext:"Ápiwayı tekst retinde qoyıw",pasteCharts:"Diagrammalardı qoyıw",selectAll:"Barlıǵın tańlaw",multiSelect:"",moveCanvas:"",cut:"Qıyıw",copy:"Kóshirip alıw",copyAsPng:"Almasıw buferine PNG retinde kóshirip alıw",copyAsSvg:"Almasıw buferine SVG retinde kóshirip alıw",copyText:"Almasıw buferine tekst retinde kóshirip alıw",copySource:"",convertToCode:"",bringForward:"",sendToBack:"",bringToFront:"",sendBackward:"",delete:"Óshiriw",copyStyles:"",pasteStyles:"",stroke:"Jiyek",background:"Fon",fill:"",strokeWidth:"",strokeStyle:"",strokeStyle_solid:"",strokeStyle_dashed:"",strokeStyle_dotted:"",sloppiness:"",opacity:"",textAlign:"",edges:"Qırlar",sharp:"",round:"",arrowheads:"",arrowhead_none:"Joq",arrowhead_arrow:"Jebe",arrowhead_bar:"",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Shrift ólshemi",fontFamily:"Shrift toplamı",addWatermark:"",handDrawn:"",normal:"",code:"Kod",small:"",medium:"Ortasha",large:"Úlken",veryLarge:"Júdá úlken",solid:"",hachure:"",zigzag:"Zigzag",crossHatch:"",thin:"Jińishke",bold:"Qalıń",left:"",center:"",right:"",extraBold:"",architect:"",artist:"Súwretshi",cartoonist:"",fileTitle:"Fayl ataması",colorPicker:"Reńdi tańlaw",canvasColors:"",canvasBackground:"",drawingCanvas:"",layers:"Qatlamlar",actions:"Háreketler",language:"Til",liveCollaboration:"",duplicateSelection:"Nusqa",untitled:"Atamasız",name:"Ataması",yourName:"Atıńız",madeWithExcalidraw:"Excalidraw járdeminde islengen",group:"",ungroup:"",collaborators:"Qatnasıwshılar",showGrid:"",addToLibrary:"Kitapxanaǵa qosıw",removeFromLibrary:"Kitapxanadan alıp taslaw",libraryLoadingMessage:"Kitapxana júklenbekte…",libraries:"Kitapxanalardı kóriw",loadingScene:"Saxna júklenbekte…",align:"",alignTop:"",alignBottom:"",alignLeft:"",alignRight:"",centerVertically:"",centerHorizontally:"",distributeHorizontally:"",distributeVertically:"",flipHorizontal:"",flipVertical:"",viewMode:"Kóriw rejimi",share:"Bólisiw",showStroke:"",showBackground:"",toggleTheme:"Temanı ózgertiw",personalLib:"Jeke kitapxana",excalidrawLib:"Excalidraw kitapxanası",decreaseFontSize:"Shrift ólshemin kishireytiw",increaseFontSize:"Shrift ólshemin úlkeytiw",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"Siltemeni ózgertiw",editEmbed:"",create:"Siltemeni jaratıw",createEmbed:"",label:"Silteme",labelEmbed:"",empty:""},lineEditor:{edit:"Qatardı ózgertiw",exit:"Qatardı ózgertiw redaktorınan shıǵıw"},elementLock:{lock:"Qulıplaw",unlock:"Qulıptan shıǵarıw",lockAll:"Barlıǵın qulıplaw",unlockAll:"Barlıǵın qulıptan shıǵarıw"},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},G7e={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},U7e={clearReset:"",exportJSON:"",exportImage:"Súwretti eksportlaw...",export:"Retinde saqlaw...",copyToClipboard:"Almasıw buferine kóshirip alındı",save:"Ámeldegi faylǵa saqlaw",saveAs:"Retinde saqlaw",load:"Ashıw",getShareableLink:"",close:"Jabıw",selectLanguage:"Tildi tańlaw",scrollBackToContent:"",zoomIn:"",zoomOut:"",resetZoom:"",menu:"Menyu",done:"Tayın",edit:"Ózgertiw",undo:"",redo:"",resetLibrary:"",createNewRoom:"",fullScreen:"Tolıq ekran",darkMode:"Qarańǵı tema",lightMode:"Jaqtı tema",zenMode:"",objectsSnapMode:"",exitZenMode:"",cancel:"Biykarlaw",clear:"Tazalaw",remove:"Óshiriw",embed:"",publishLibrary:"Jariyalaw",submit:"Jiberiw",confirm:"Tastıyıqlaw",embeddableInteractionButton:""},M7e={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"Almasıw buferine kóshirip alıw ámelge aspadı.",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},T7e={unsupportedFileType:"",imageInsertError:"",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"Jaramsız SVG.",cannotResolveCollabServer:"",importLibraryError:"Kitapxananı júklew ámelge aspadı",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},Y7e={selection:"",image:"Súwret qoyıw",rectangle:"Tórt múyeshlik",diamond:"",ellipse:"",arrow:"",line:"Sızıq",freedraw:"Sızıw",text:"Tekst",library:"Kitapxana",lock:"",penMode:"",link:"",eraser:"Óshirgish",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},H7e={canvasActions:"",selectedShapeActions:"",shapes:"Figuralar"},K7e={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"Tekst qosıw ushın Enter túymesin basıń",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},J7e={cannotShowPreview:"Aldınnan kóriwdi kórsetiw múmkin emes",canvasTooBig:"",canvasTooBigTip:""},O7e={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},P7e={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},_7e={title:"Qátelik"},W7e={disk_title:"Diskke saqlaw",disk_details:"",disk_button:"Faylǵa saqlaw",link_title:"",link_details:"",link_button:"Siltemege eksportlaw",excalidrawplus_description:"",excalidrawplus_button:"Eksportlaw",excalidrawplus_exportError:""},q7e={blog:"Biziń blogtı oqıń",click:"basıw",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"Hújjetshilik",doubleClick:"",drag:"",editor:"Redaktor",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"yamasa",preventBinding:"",tools:"Ásbaplar",shortcuts:"",textFinish:"",textNewLine:"",title:"Járdem",view:"Kóriw",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},z7e={title:""},Z7e={title:"",itemName:"",authorName:"Avtor atı",githubUsername:"GitHub paydalanıwshı atı",twitterUsername:"Twitter paydalanıwshı atı",libraryName:"Kitapxana ataması",libraryDesc:"",website:"Veb-sayt",placeholder:{authorName:"Atıńız yamasa paydalanıwshı atı",libraryName:"Kitapxanańız ataması",libraryDesc:"",githubHandle:"",twitterHandle:"",website:"Jeke veb-saytıńız yamasa basqa saytqa silteme (májbúriy emes)"},errors:{required:"Májbúriy",website:"Jaramlı URL mánzil kirgiziń"},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},V7e={title:"Kitapxana jiberildi",content:""},j7e={resetLibrary:"Kitapxananı qayta ornatıw",removeItemsFromLib:""},X7e={header:"Súwretti eksportlaw",label:{withBackground:"Fon",onlySelected:"",darkMode:"Qarańǵı tema",embedScene:"",scale:"Kólem",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Almasıw buferine kóshirip alıw"}},$7e={tooltip:"",link:""},A8e={angle:"",element:"Element",elements:"Elementler",height:"",scene:"Saxna",selected:"Tańlandı",storage:"",title:"",total:"",version:"Versiya",versionCopy:"Kóshirip alıw ushın basıń",versionNotAvailable:"",width:"Eni"},e8e={addedToLibrary:"Kitapxanaǵa qosıldı",copyStyles:"",copyToClipboard:"Almasıw buferine kóshirip alındı.",copyToClipboardAsPng:"",fileSaved:"Fayl saqlandı.",fileSavedToFilename:"{filename} saqlandı",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},t8e={transparent:"",black:"Qara",white:"Aq",red:"Qızıl",pink:"Qızǵılt",grape:"",violet:"Qızǵılt kók",gray:"",blue:"Kók",cyan:"Kók aspan",teal:"Piruza",green:"Jasıl",yellow:"Sarı",orange:"Qızǵılt sarı",bronze:""},r8e={app:{center_heading:"",center_heading_plus:"Excalidraw+ ge ótiwdi qáleysiz be?",menuHint:"Eksportlaw, sazlawlar, tiller, ..."},defaults:{menuHint:"Eksportlaw, sazlawlar hám basqa...",center_heading:"Diagrammalar. Ápiwayı.",toolbarHint:"",helpHint:""}},i8e={mostUsedCustomColors:"Kóp qollanılatuǵın arnawlı reńler",colors:"Reńler",shades:"",hexCode:"",noShades:""},u8e={action:{exportToImage:{title:"Súwret retinde eksportlaw",button:"Súwret retinde eksportlaw",description:""},saveToDisk:{title:"Diskke saqlaw",button:"Diskke saqlaw",description:""},excalidrawPlus:{title:"Excalidraw+",button:"",description:""}},modal:{loadFromFile:{title:"Fayldan júklew",button:"Fayldan júklew",description:""},shareableLink:{title:"Siltemeden júklew",button:"",description:""}}},a8e={title:"",button:"",description:"",syntax:"",preview:""},Ycr={labels:N7e,library:G7e,buttons:U7e,alerts:M7e,errors:T7e,toolBar:Y7e,headings:H7e,hints:K7e,canvasError:J7e,errorSplash:O7e,roomDialog:P7e,errorDialog:_7e,exportDialog:W7e,helpDialog:q7e,clearCanvasDialog:z7e,publishDialog:Z7e,publishSuccessDialog:V7e,confirmDialog:j7e,imageExportDialog:X7e,encrypted:$7e,stats:A8e,toast:e8e,colors:t8e,welcomeScreen:r8e,colorPicker:i8e,overwriteConfirm:u8e,mermaid:a8e}});var U8e={};Dt(U8e,{alerts:()=>c8e,buttons:()=>g8e,canvasError:()=>I8e,clearCanvasDialog:()=>D8e,colorPicker:()=>R8e,colors:()=>S8e,confirmDialog:()=>b8e,default:()=>Hcr,encrypted:()=>k8e,errorDialog:()=>p8e,errorSplash:()=>h8e,errors:()=>C8e,exportDialog:()=>f8e,headings:()=>E8e,helpDialog:()=>m8e,hints:()=>d8e,imageExportDialog:()=>v8e,labels:()=>s8e,library:()=>l8e,mermaid:()=>G8e,overwriteConfirm:()=>N8e,publishDialog:()=>y8e,publishSuccessDialog:()=>w8e,roomDialog:()=>Q8e,stats:()=>F8e,toast:()=>x8e,toolBar:()=>B8e,welcomeScreen:()=>L8e});var s8e,l8e,g8e,c8e,C8e,B8e,E8e,d8e,I8e,h8e,Q8e,p8e,f8e,m8e,D8e,y8e,w8e,b8e,v8e,k8e,F8e,x8e,S8e,L8e,R8e,N8e,G8e,Hcr;var M8e=_(()=>{zt();s8e={paste:"Senṭeḍ",pasteAsPlaintext:"",pasteCharts:"Senṭeḍ udlifen",selectAll:"Fren akk",multiSelect:"Rnu aferdis ɣer tefrayt",moveCanvas:"Smutti taɣzut n usuneɣ",cut:"Gzem",copy:"Nɣel",copyAsPng:"Nɣel ɣer tecfawit am PNG",copyAsSvg:"Nɣel ɣer tecfawit am SVG",copyText:"Nɣel ɣer tecfawit am uḍris",copySource:"",convertToCode:"",bringForward:"Awi ɣer sdat",sendToBack:"Awi s agilal",bringToFront:"Err ɣer deffir",sendBackward:"Awi ɣer deffir",delete:"Kkes",copyStyles:"Nɣel iɣunab",pasteStyles:"Senṭeḍ iɣunab",stroke:"Azizdew",background:"Agilal",fill:"Taččart",strokeWidth:"Tehri n yizirig",strokeStyle:"Aɣanib n tizirig",strokeStyle_solid:"Aččuran",strokeStyle_dashed:"S tjerriḍin",strokeStyle_dotted:"S tenqiḍin",sloppiness:"Astehzi",opacity:"Tiḍullest",textAlign:"Areyyec n uḍris",edges:"Leryuf",sharp:"Yemsed",round:"Imdewer",arrowheads:"Ixfawen n tenccabt",arrowhead_none:"Ulac",arrowhead_arrow:"Taneccabt",arrowhead_bar:"Afeggag",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Akerdis",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Tiddi n tsefsit",fontFamily:"Tawacult n tsefsiyin",addWatermark:'Seddu "Yettwaxdem s Excalidraw"',handDrawn:"Asuneɣ s ufus",normal:"Amagnu",code:"Tangalt",small:"Meẓẓi",medium:"Alemmas",large:"Ameqran",veryLarge:"Meqqer aṭas",solid:"Aččuran",hachure:"Azerreg",zigzag:"",crossHatch:"Azerreg anmidag",thin:"Arqaq",bold:"Azuran",left:"Azelmaḍ",center:"Talemmast",right:"Ayfus",extraBold:"Azuran aṭas",architect:"Amasdag",artist:"Anaẓur",cartoonist:"Amefɣul",fileTitle:"Isem n ufaylu",colorPicker:"Amafran n yini",canvasColors:"Yettwaseqdec di teɣzut n usuneɣ",canvasBackground:"Agilal n teɣzut n usuneɣ",drawingCanvas:"Taɣzut n usuneɣ",layers:"Tissiyin",actions:"Tigawin",language:"Tutlayt",liveCollaboration:"Amɛiwen s srid...",duplicateSelection:"Sisleg",untitled:"War azwel",name:"Isem",yourName:"Isem-ik (im)",madeWithExcalidraw:"Yettwaxdem s Excalidraw",group:"Segrew tafrayt",ungroup:"Kkess asegrew i tefrayt",collaborators:"Imɛiwnen",showGrid:"Beqqeḍ aferrug",addToLibrary:"Rnu ɣer temkarḍit",removeFromLibrary:"Kkes si temkarḍit",libraryLoadingMessage:"Asali n temkarḍit…",libraries:"Snirem timkarḍiyin",loadingScene:"Asali n usayes…",align:"Reyyec",alignTop:"Areyyec uksawen",alignBottom:"Areyyec ukessar",alignLeft:"Reyyec s azelmaḍ",alignRight:"Areyyec s ayfus",centerVertically:"Di tlemmast s ibeddi",centerHorizontally:"Di tlemmast s uglawi",distributeHorizontally:"Freq s uglawi",distributeVertically:"Freq s yibeddi",flipHorizontal:"Tuttya taglawant",flipVertical:"Tuttya tubdidt",viewMode:"Askar n tmuɣli",share:"Bḍu",showStroke:"Beqqeḍ amelqaḍ n yini n yizirig",showBackground:"Beqqeḍ amelqaḍ n yini n ugilal",toggleTheme:"Snifel asentel",personalLib:"Tamkarḍit tudmawant",excalidrawLib:"Tamkarḍit n Excalidraw",decreaseFontSize:"Senqes tiddi n tsefsit",increaseFontSize:"Sali tiddi n tsefsit",unbindText:"Serreḥ iweḍris",bindText:"Arez aḍris s anagbar",createContainerFromText:"",link:{edit:"Ẓreg aseɣwen",editEmbed:"",create:"Snulfu-d aseɣwen",createEmbed:"",label:"Aseɣwen",labelEmbed:"",empty:""},lineEditor:{edit:"Ẓreg izirig",exit:"Ffeɣ seg umaẓrag n yizirig"},elementLock:{lock:"Sekkeṛ",unlock:"Serreḥ",lockAll:"Sekkeṛ akk",unlockAll:"Serreḥ akk"},statusPublished:"Yeffeɣ-d",sidebarLock:"Eǧǧ afeggag n yidis yeldi",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},l8e={noItems:"Ulac iferdisen yettwarnan yakan...",hint_emptyLibrary:"Fren aferdis di teɣzut nusuneɣ akken at-ternuḍ dagi, neɣ sbedd tamkarḍit seg usarsay azayez, ukessar-agi.",hint_emptyPrivateLibrary:"Fren aferdis di teɣzut nusuneɣ akken at-ternuḍ dagi."},g8e={clearReset:"Ales awennez n teɣzut n usuneɣ",exportJSON:"Sifeḍ afaylu",exportImage:"Sifeḍ tugna...",export:"Sekles di...",copyToClipboard:"Nɣel ɣer tecfawit",save:"Sekles deg ufaylu amiran",saveAs:"Sekles am",load:"Ldi",getShareableLink:"Awi-d aseɣwen n beṭṭu",close:"Mdel",selectLanguage:"Fren tutlayt",scrollBackToContent:"Uɣal s agbur",zoomIn:"Simɣur",zoomOut:"Simẓi",resetZoom:"Ales awennez n usemɣer",menu:"Umuɣ",done:"Ifukk",edit:"Ẓreg",undo:"Sefsex",redo:"Err-d",resetLibrary:"Ales awennez n temkarḍit",createNewRoom:"Snulfu-d taxxamt tamaynutt",fullScreen:"Agdil aččuran",darkMode:"Askar imsulles",lightMode:"Askar afaw",zenMode:"Askar Zen",objectsSnapMode:"",exitZenMode:"Ffeɣ seg uskar Zen",cancel:"Sefsex",clear:"Sfeḍ",remove:"Kkes",embed:"",publishLibrary:"Ẓreg",submit:"Azen",confirm:"Sentem",embeddableInteractionButton:""},c8e={clearReset:"Ayagi ad isfeḍ akk taɣzut n usuneɣ. Tetḥeqqeḍ?",couldNotCreateShareableLink:"D awezɣi asnulfu n useɣwen n beṭṭu.",couldNotCreateShareableLinkTooBig:"D awezɣi asnulfu n useɣwen n beṭṭu. Asayes ɣezzif aṭas",couldNotLoadInvalidFile:"D awezɣi asali n ufaylu armeɣtu",importBackendFailed:"Takterḍ seg uɣawas n deffir ur teddi ara.",cannotExportEmptyCanvas:"D awezɣi asifeḍ n teɣzut n usuneɣ tilemt.",couldNotCopyToClipboard:"Ulamek anɣal ɣer tecfawit.",decryptFailed:"D awezɣi tukksa n uwgelhen i yisefka.",uploadedSecurly:"Asili yettwasɣelles s uwgelhen ixef s ixef, ayagi yebɣa ad d-yini belli aqeddac n Excalidraw akked medden ur zmiren ara ad ɣren agbur.",loadSceneOverridePrompt:"Asali n wunuɣ uffiɣ ad isemselsi agbur-inek (m) yellan. Tebɣiḍ ad tkemmeleḍ?",collabStopOverridePrompt:`Aḥbas n tɣimit ad yesefsex unuɣ-inek (m) yettwaḥerzen yakan s wudem adigan. Tetḥeqqeḍ?
(Ma tebɣiḍ ad teǧǧeḍ unuɣ-inek (m) adigan, mdel iccer n yiminig, deg umḍiq.)`,errorAddingToLibrary:"Ulamek ara yettwarnu uferdis ɣer temkarḍit",errorRemovingFromLibrary:"Ulamek ara yettwakkes uferdis si temkarḍit",confirmAddLibrary:"Ayagi adirnu talɣa (win) {{numShapes}} ɣer temkarḍit-inek (m). Tetḥeqqeḍ?",imageDoesNotContainScene:"Tugna-agi tettban-d ur tesɛi ara isefka n usayes. Tesremdeḍ aseddu n usayes deg usifeḍ?",cannotRestoreFromImage:"Asayes ulamek ara d-yettwarr seg ufaylu-agi n tugna",invalidSceneUrl:"Ulamek taktert n usayes seg URL i d-ittunefken. Ahat mačči d tameɣtut neɣ ur tegbir ara isefka JSON n Excalidraw.",resetLibrary:"Ayagi ad isfeḍ tamkarḍit-inek•m. Tetḥeqqeḍ?",removeItemsFromsLibrary:"Ad tekkseḍ {{count}} n uferdis (en) si temkarḍit?",invalidEncryptionKey:"Tasarut n uwgelhen isefk ad tesɛu 22 n yiekkilen. Amɛiwen srid yensa.",collabOfflineWarning:`Ulac tuqqna n internet.
Ibedilen-ik ur ttwaklasen ara!`},C8e={unsupportedFileType:"Anaw n ufaylu ur yettwasefrak ara.",imageInsertError:"D awezɣi tugra n tugna. Eɛreḍ tikkelt-nniḍen ardeqqal...",fileTooBig:"Afaylu meqqer aṭas. Tiddi tafellayt yurgen d {{maxSize}}.",svgImageInsertError:"D awezɣi tugra n tugna SVG. Acraḍ SVG yettban-d d armeɣtu.",failedToFetchImage:"",invalidSVGString:"SVG armeɣtu.",cannotResolveCollabServer:"Ulamek tuqqna s aqeddac n umyalel. Ma ulac uɣilif ales asali n usebter sakin eɛreḍ tikkelt-nniḍen.",importLibraryError:"Ur d-ssalay ara tamkarḍit",collabSaveFailed:"Ulamek asekles deg uzadur n yisefka deg ugilal. Ma ikemmel wugur, isefk ad teskelseḍ afaylu s wudem adigan akken ad tetḥeqqeḍ ur tesruḥuyeḍ ara amahil-inek•inem.",collabSaveFailed_sizeExceeded:"Ulamek asekles deg uzadur n yisefka deg ugilal, taɣzut n usuneɣ tettban-d temqer aṭas. Isefk ad teskelseḍ afaylu s wudem adigan akken ad tetḥeqqeḍ ur tesruḥuyeḍ ara amahil-inek•inem.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"Ayagi yezmer ad d-iglu s truẓi n<bold>Iferdisen n uḍris</bold>deg wunuɣen-inek.",line3:"Ad k-nsemter ad tsexsiḍ aɣewwar-agi. Tzemreḍ ad tḍefreḍ<link>isurifen-agi</link> ɣef wamek ara txedmeḍ.",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},B8e={selection:"Tafrayt",image:"Ger tugna",rectangle:"Asrem",diamond:"Ameɣṛun",ellipse:"Taglayt",arrow:"Taneccabt",line:"Izirig",freedraw:"Suneɣ",text:"Aḍris",library:"Tamkarḍit",lock:"Eǧǧ afecku n tefrayt yermed mbaɛd asuneɣ",penMode:"Askar n yimru - gdel tanalit",link:"Rnu/leqqem aseɣwen i talɣa yettwafernen",eraser:"Sfeḍ",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Afus (afecku n usmutti n tmuɣli)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},E8e={canvasActions:"Tigawin n teɣzut n usuneɣ",selectedShapeActions:"Tigawin n talɣa yettwafernen",shapes:"Talɣiwin"},d8e={canvasPanning:"Akken ad tesmuttiḍ taɣzut n usuneɣ, ṭṭef ṛṛuda n umumed, neɣ seqdec afecku Afus",linearElement:"Ssit akken ad tebduḍ aṭas n tenqiḍin, zuɣer i yiwen n yizirig",freeDraw:"Ssit yerna zuɣer, serreḥ ticki tfukeḍ",text:"Tixidest: tzemreḍ daɣen ad ternuḍ aḍris s usiti snat n tikkal anida tebɣiḍ s ufecku n tefrayt",embeddable:"",text_selected:"Ssit snat n tikkal neɣ ssed taqeffalt Kcem akken ad tẓergeḍ aḍris",text_editing:"Ssit Escape neɣ CtrlOrCmd+ENTER akken ad tfakkeḍ asiẓreg",linearElementMulti:"Ssit ɣef tenqiḍt taneggarut neɣ ssed taqeffalt Escape neɣ taqeffalt Kcem akken ad tfakkeḍ",lockAngle:"Tzemreḍ ad tḥettmeḍ tiɣmert s tuṭṭfa n tqeffalt SHIFT",resize:`Tzemreḍ ad tḥettemeḍ assaɣ s tuṭṭfa n tqeffalt SHIFT mi ara tettbeddileḍ tiddi,
ma teṭṭfeḍ ALT abeddel n tiddi ad yili si tlemmast`,resizeImage:`Tzemreḍ ad talseḍ tiddi s tilelli s tuṭṭfa n SHIFT,
ṭṭef ALT akken ad talseḍ tiddi si tlemmast`,rotate:"Tzemreḍ ad tḥettemeḍ tiɣemmar s tuṭṭfa n SHIFT di tuzzya",lineEditor_info:"Ssed ɣef CtrlOrCmd yerna ssit snat n tikkal neɣ ssed ɣef CtrlOrCmd + Kcem akken ad tẓergeḍ tineqqiḍin",lineEditor_pointSelected:`Ssed taqeffalt kkes akken ad tekkseḍ tanqiḍ (tinqiḍin),
CtrlOrCmd+D akken ad tsiselgeḍ, neɣ zuɣer akken ad tesmuttiḍ`,lineEditor_nothingSelected:`Fren tanqiḍt akken ad tẓergeḍ (ṭṭef SHIFT akken ad tferneḍ aṭas),
neɣ ṭṭef Alt akken ad ternuḍ tinqiḍin timaynutin`,placeImage:"Ssit akken ad tserseḍ tugna, neɣ ssit u zuɣer akken ad tesbaduḍ tiddi-ines s ufus",publishLibrary:"Siẓreg tamkarḍit-inek•inem",bindTextToElement:"Ssed ɣef kcem akken ad ternuḍ aḍris",deepBoxSelect:"Ṭṭef CtrlOrCmd akken ad tferneḍ s telqey, yerna ad trewleḍ i uzuɣer",eraserRevert:"Ssed Alt akken ad tsefsxeḍ iferdisen yettwacerḍen i tukksa",firefox_clipboard_write:"",disableSnapping:""},I8e={cannotShowPreview:"Ulamek abeqqeḍ n teskant",canvasTooBig:"Taɣzut n usuneɣ tezmer ad tili temeqqer aṭas.",canvasTooBigTip:"Tixidest: eɛreḍ ad tesqerbeḍ ciṭ iferdisen yembaɛaden."},h8e={headingMain:"Teḍra-d tuccḍa. Eɛreḍ <button>asali n usebter tikkelt-nniḍen.</button>",clearCanvasMessage:"Ma yella tulsa n usali ur tefri ara ugur, eɛreḍ <button>asfaḍ n teɣzut n usuneɣ.</button>",clearCanvasCaveat:" Ayagi ad d-iglu s usṛuḥu n umahil ",trackedToSentry:"Tuccḍa akked umesmagi {{eventId}} tettwasekles deg unagraw-nneɣ.",openIssueMessage:"Nḥuder aṭas akken ur nseddu ara talɣut n usayes-inek (m) di tuccḍa. Ma yella asayes-inek (m) mačči d amaẓlay, ttxil-k (m) xemmem ad ḍefreḍ <button>afecku n weḍfar n yibugen.</button> Ma ulac uɣilif seddu talɣut ukessar-agi s wenɣal akked usenṭeḍ di GitHub issue.",sceneContent:"Agbur n usayes:"},Q8e={desc_intro:"Tzemreḍ ad d-teɛerḍeḍ medden ɣer usayes-inek (m) amiran akken ad ttekkin yid-k.",desc_privacy:"Ur tqelliq ara, tiɣimit tsseqdac awgelhen ixef s ixef, dɣa ayen ara tsunɣeḍ ad iqqim d amaẓlay. Ula d aqeddac-nneɣ ur yezmir ara ad iwali acu txeddemeḍ.",button_startSession:"Bdu tiɣimit",button_stopSession:"Ḥbes tiɣimit",desc_inProgressIntro:"Tiɣimit n umɛawen s srid tetteddu akka tura.",desc_shareLink:"Bḍu aseɣwen-agi akked medden ukud tebɣiḍ ad temɛawaneḍ:",desc_exitSession:"Aḥbas n tɣimit ad k (m) yesenser si texxamt, maca ad tizmireḍ ad tkemmeleḍ amahil s usayes, s wudem adigan. Ẓer belli ayagi ur yettḥaz ara imdanen-nniḍen, yerna ad izmiren ad kemmelen ad mɛawanen di tsuffeɣt-nnsen.",shareTitle:"Rnu ɣer tɣimit n umɛiwen s srid n Excalidraw"},p8e={title:"Tuccḍa"},f8e={disk_title:"Sekles deg uḍebsi",disk_details:"Sekles isefka n usayes deg ufaylu ansi ara tizmireḍ ad d-tketreḍ areḍqal.",disk_button:"Sekles deg ufaylu",link_title:"Aseɣwen n beṭṭu",link_details:"Sifeḍ am useɣwen n tɣuri kan.",link_button:"Sifeḍ deg useɣwen",excalidrawplus_description:"Sekles asayes-inek•inem di tallunt n umahil Excalidraw+.",excalidrawplus_button:"Sifeḍ",excalidrawplus_exportError:"Ulamek asifeḍ ɣer Excalidraw+ akka tura..."},m8e={blog:"Ɣeṛ ablug-nneɣ",click:"ssit",deepSelect:"Afran s telqey",deepBoxSelect:"Afran s telqey s tnaka, yerna ad tyrewleḍ i uzuɣer",curvedArrow:"Taneccabt izelgen",curvedLine:"Izirig izelgen",documentation:"Tasemlit",doubleClick:"ssit snat n tikkal",drag:"zuɣer",editor:"Amaẓrag",editLineArrowPoints:"Ẓreg tinqiḍin n yizirig/taneccabt",editText:"Ẓreg aḍris/rnu tabzimt",github:"Tufiḍ-d ugur? Azen-aɣ-d",howto:"Ḍfer imniren-nneɣ",or:"neɣ",preventBinding:"Seḥbes tuqqna n tneccabin",tools:"Ifecka",shortcuts:"Inegzumen n unasiw",textFinish:"Fak asiẓreg (amaẓrag n uḍris)",textNewLine:"Rnu ajerriḍ amaynut (amaẓrag n uḍris)",title:"Tallelt",view:"Tamuɣli",zoomToFit:"Simɣur akken ad twliḍ akk iferdisen",zoomToSelection:"Simɣur ɣer tefrayt",toggleElementLock:"Sekkeṛ/kkes asekker i tefrayt",movePageUpDown:"Smutti asebter d asawen/akessar",movePageLeftRight:"Smutti asebter s azelmaḍ/ayfus"},D8e={title:"Sfeḍ taɣzut n usuneɣ"},y8e={title:"Suffeɣ-d tamkarḍit",itemName:"Isem n uferdis",authorName:"Isem n umeskar",githubUsername:"Isem n useqdac n GitHub",twitterUsername:"Isem n useqdac n Twitter",libraryName:"Isem n temkarḍit",libraryDesc:"Aglam n temkarḍit",website:"Asmel n web",placeholder:{authorName:"Isem neɣ isem n useqdac inek•inem",libraryName:"Isem n temkarḍit-inek•inem",libraryDesc:"Aglam n temkarḍit-inek•inem akken ad tɛiwneḍ medden ad fehmen aseqdec-inec",githubHandle:"Isem n useqdac n GitHub ( d anefrunan) akken ad tizmireḍ ad tisẓrigeḍ tamkarḍit ticki tuzneḍ-tt i uselken",twitterHandle:"Isem n useqdac n Twitter (d anefrunan) akken ad nẓer anwa ara nsenmer deg udellel di Twitter",website:"Aseɣwen ɣer usmel-inek•inem neɣ wayeḍ (d anefrunan)"},errors:{required:"Yettwasra",website:"Sekcem URL ameɣtu"},noteDescription:"Azen tamkarḍit-inek•inem akken ad teddu di <link>akaram azayez n temkarḍit</link>i yimdanen-nniḍen ara isqedcen deg wunuɣen-nnsen.",noteGuidelines:"Tamkarḍit teḥwaǧ ad tettwaqbel s ufus qbel. Ma ulac uɣilif ɣer <link>iwellihen</link> send ad tazneḍ. Tesriḍ amiḍan n GitHub akken ad tmmeslayeḍ yerna ad tgeḍ ibeddilen ma yelaq, maca mačči d ayen yettwaḥetmen.",noteLicense:"Mi tuzneḍ ad tqebleḍ akken tamkarḍit ad d-teffeɣ s <link>Turagt MIT, </link>ayen yebɣan ad d-yini belli yal yiwen izmer ad ten-iseqdec war tilist.",noteItems:"Yal aferdis n temkarḍit isefk ad isɛu isem-is i yiman-is akken ad yili wamek ara yettusizdeg. Iferdisen-agi n temkarḍit ad ddun:",atleastOneLibItem:"Ma ulac uɣilif fern ma drus yiwen n uferdis n temkarḍit akken ad tebduḍ",republishWarning:"Tamawt: kra n yiferdisen yettwafernen ttwacerḍen ffeɣen-d/ttwaznen. Isefk ad talseḍ tuzzna n yiferdisen anagar mi ara tleqqemeḍ tamkarḍit neɣ tuzzna yellan."},w8e={title:"Tamkarḍit tettwazen",content:"Tanemmirt-ik•im {{authorName}}. Tamkarḍit-inek•inem tettwazen i weselken. Tzemreḍ ad tḍefreḍ aẓayer<link>dagi</link>"},b8e={resetLibrary:"Ales awennez n temkarḍit",removeItemsFromLib:"Kkes iferdisen yettafernen si temkarḍit"},v8e={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},k8e={tooltip:"Unuɣen-inek (m) ttuwgelhnen seg yixef s ixef dɣa iqeddacen n Excalidraw werǧin ad ten-walin. ",link:"Amagrad ɣef uwgelhen ixef s ixef di Excalidraw"},F8e={angle:"Tiɣmeṛt",element:"Aferdis",elements:"Iferdisen",height:"Tattayt",scene:"Asayes",selected:"Yettwafren",storage:"Aḥraz",title:"",total:"Aɣrud",version:"Alqem",versionCopy:"Sit ad tneɣleḍ",versionNotAvailable:"Ur inuḥ ulqem",width:"Tehri"},x8e={addedToLibrary:"Yettwarna ɣer temkarḍit",copyStyles:"Iɣunab yettwaneɣlen.",copyToClipboard:"Yettwaɣel ɣer tecfawit.",copyToClipboardAsPng:`{{exportSelection}} yettwanɣel ɣer tecfawit am PNG
({{exportColorScheme}})`,fileSaved:"Afaylu yettwasekles.",fileSavedToFilename:"Yettwasekles di {filename}",canvas:"taɣzut n usuneɣ",selection:"tafrayt",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},S8e={transparent:"Afrawan",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},L8e={app:{center_heading:"Akk isefka-inek•inem ttwakelsen s wudem adigan deg yiminig-inek•inem.",center_heading_plus:"Tebɣiḍ ad tedduḍ ɣer Excalidraw+ deg umḍiq?",menuHint:"Asifeḍ, ismenyifen, tutlayin, ..."},defaults:{menuHint:"Asifeḍ, ismenyifen, d wayen-nniḍen...",center_heading:"",toolbarHint:"Fren afecku tebduḍ asuneɣ!",helpHint:"Inegzumen akked tallelt"}},R8e={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},N8e={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},G8e={title:"",button:"",description:"",syntax:"",preview:""},Hcr={labels:s8e,library:l8e,buttons:g8e,alerts:c8e,errors:C8e,toolBar:B8e,headings:E8e,hints:d8e,canvasError:I8e,errorSplash:h8e,roomDialog:Q8e,errorDialog:p8e,exportDialog:f8e,helpDialog:m8e,clearCanvasDialog:D8e,publishDialog:y8e,publishSuccessDialog:w8e,confirmDialog:b8e,imageExportDialog:v8e,encrypted:k8e,stats:F8e,toast:x8e,colors:S8e,welcomeScreen:L8e,colorPicker:R8e,overwriteConfirm:N8e,mermaid:G8e}});var gSe={};Dt(gSe,{alerts:()=>K8e,buttons:()=>H8e,canvasError:()=>W8e,clearCanvasDialog:()=>X8e,colorPicker:()=>oSe,colors:()=>aSe,confirmDialog:()=>eSe,default:()=>Kcr,encrypted:()=>rSe,errorDialog:()=>Z8e,errorSplash:()=>q8e,errors:()=>J8e,exportDialog:()=>V8e,headings:()=>P8e,helpDialog:()=>j8e,hints:()=>_8e,imageExportDialog:()=>tSe,labels:()=>T8e,library:()=>Y8e,mermaid:()=>lSe,overwriteConfirm:()=>sSe,publishDialog:()=>$8e,publishSuccessDialog:()=>ASe,roomDialog:()=>z8e,stats:()=>iSe,toast:()=>uSe,toolBar:()=>O8e,welcomeScreen:()=>nSe});var T8e,Y8e,H8e,K8e,J8e,O8e,P8e,_8e,W8e,q8e,z8e,Z8e,V8e,j8e,X8e,$8e,ASe,eSe,tSe,rSe,iSe,uSe,aSe,nSe,oSe,sSe,lSe,Kcr;var cSe=_(()=>{zt();T8e={paste:"Қою",pasteAsPlaintext:"",pasteCharts:"Диаграммаларды қою",selectAll:"Бәрін таңдау",multiSelect:"",moveCanvas:"",cut:"Қию",copy:"Көшіру",copyAsPng:"",copyAsSvg:"",copyText:"",copySource:"",convertToCode:"",bringForward:"",sendToBack:"",bringToFront:"",sendBackward:"",delete:"Жою",copyStyles:"Стильдерді көшіру",pasteStyles:"Стильдерді қою",stroke:"",background:"",fill:"",strokeWidth:"",strokeStyle:"",strokeStyle_solid:"",strokeStyle_dashed:"",strokeStyle_dotted:"",sloppiness:"",opacity:"",textAlign:"",edges:"",sharp:"",round:"",arrowheads:"Нұсқар ұштары",arrowhead_none:"Жоқ",arrowhead_arrow:"Нұсқар",arrowhead_bar:"Тосқауыл",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Қаріп өлшемі",fontFamily:"Қаріп тобы",addWatermark:"",handDrawn:"",normal:"Қалыпты",code:"",small:"Кіші",medium:"Орта",large:"Үлкен",veryLarge:"Өте үлкен",solid:"",hachure:"",zigzag:"",crossHatch:"",thin:"",bold:"",left:"Солға",center:"Ортаға",right:"Оңға",extraBold:"",architect:"",artist:"",cartoonist:"",fileTitle:"Файл атауы",colorPicker:"",canvasColors:"",canvasBackground:"",drawingCanvas:"",layers:"",actions:"",language:"Тіл",liveCollaboration:"",duplicateSelection:"Көшірме",untitled:"Атауысыз",name:"",yourName:"",madeWithExcalidraw:"",group:"",ungroup:"",collaborators:"",showGrid:"",addToLibrary:"",removeFromLibrary:"",libraryLoadingMessage:"",libraries:"",loadingScene:"",align:"",alignTop:"",alignBottom:"",alignLeft:"",alignRight:"",centerVertically:"",centerHorizontally:"",distributeHorizontally:"",distributeVertically:"",flipHorizontal:"",flipVertical:"",viewMode:"",share:"",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},Y8e={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},H8e={clearReset:"",exportJSON:"",exportImage:"",export:"",copyToClipboard:"",save:"",saveAs:"",load:"",getShareableLink:"",close:"Жабу",selectLanguage:"Тілді таңдау",scrollBackToContent:"",zoomIn:"",zoomOut:"",resetZoom:"",menu:"Mәзір",done:"Дайын",edit:"",undo:"",redo:"",resetLibrary:"",createNewRoom:"",fullScreen:"",darkMode:"",lightMode:"",zenMode:"",objectsSnapMode:"",exitZenMode:"",cancel:"",clear:"",remove:"",embed:"",publishLibrary:"",submit:"",confirm:"",embeddableInteractionButton:""},K8e={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},J8e={unsupportedFileType:"",imageInsertError:"Суретті жүктеу мүмкін болмады. Кейінірек қайталап көріңіз...",fileTooBig:"Файл өте үлкен. Максималды рұқсат етілген көлем {{maxSize}}.",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},O8e={selection:"",image:"Суретті қою",rectangle:"",diamond:"",ellipse:"",arrow:"Нұсқар",line:"",freedraw:"",text:"Мәтін",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},P8e={canvasActions:"",selectedShapeActions:"",shapes:""},_8e={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},W8e={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},q8e={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},z8e={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},Z8e={title:"Қате"},V8e={disk_title:"",disk_details:"Сахна деректерін кейін қайта импорттауға болатын файлға экспорттаңыз.",disk_button:"Файлға сақтау",link_title:"Ортақ сілтеме",link_details:"Тек оқуға арналған сілтеме ретінде экспорттау.",link_button:"Сілтемеге экспорттау",excalidrawplus_description:"Сахнаны өзіңіздің Excalidraw+ жұмыс кеңістігінде сақтаңыз.",excalidrawplus_button:"Экспорт",excalidrawplus_exportError:"Қазіргі уақытта Excalidraw+ үшін экспорттау мүмкін емес..."},j8e={blog:"Біздің блогты оқу",click:"шерту",deepSelect:"",deepBoxSelect:"",curvedArrow:"Майысқан нұсқар",curvedLine:"Майысқан сызық",documentation:"Құжаттама",doubleClick:"қос шерту",drag:"апару",editor:"Өңдеу",editLineArrowPoints:"",editText:"",github:"Қате таптыңыз ба? Жолдаңыз",howto:"Біздің нұсқаулықтарды орындаңыз",or:"немесе",preventBinding:"Нұсқарды байланыстыруға жол бермеу",tools:"",shortcuts:"Пернетақта пәрмендері",textFinish:"Өңдеуді аяқтау (мәтіндік редактор)",textNewLine:"Жаңа жолға көшу (мәтіндік редактор)",title:"Көмек",view:"Көру",zoomToFit:"Барлық элементтердің көлеміне сәйкес үлкейту",zoomToSelection:"Таңдалғанды үлкейту",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},X8e={title:""},$8e={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},ASe={title:"",content:""},eSe={resetLibrary:"",removeItemsFromLib:""},tSe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},rSe={tooltip:"Сіздің сызбаларыңыз өтпелі шифрлеу арқылы шифрланған, сондықтан Excalidraw серверлері оларды ешқашан көрмейді.",link:"Excalidraw қолданатын өтпелі шифрлеу туралы блог жазбасы"},iSe={angle:"Бұрыш",element:"Элемент",elements:"Элементтер",height:"Биіктігі",scene:"Сахна",selected:"Таңдалды",storage:"Сақтау көлемі",title:"",total:"Барлығы",version:"Нұсқа",versionCopy:"Көшіру үшін басыңыз",versionNotAvailable:"Бұл нұсқа қолжетімсіз",width:"Ені"},uSe={addedToLibrary:"",copyStyles:"Стильдер көшірілді.",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"Файл сақталды.",fileSavedToFilename:"{filename} сақталды",canvas:"",selection:"таңдау",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},aSe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},nSe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},oSe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},sSe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},lSe={title:"",button:"",description:"",syntax:"",preview:""},Kcr={labels:T8e,library:Y8e,buttons:H8e,alerts:K8e,errors:J8e,toolBar:O8e,headings:P8e,hints:_8e,canvasError:W8e,errorSplash:q8e,roomDialog:z8e,errorDialog:Z8e,exportDialog:V8e,helpDialog:j8e,clearCanvasDialog:X8e,publishDialog:$8e,publishSuccessDialog:ASe,confirmDialog:eSe,imageExportDialog:tSe,encrypted:rSe,stats:iSe,toast:uSe,colors:aSe,welcomeScreen:nSe,colorPicker:oSe,overwriteConfirm:sSe,mermaid:lSe}});var HSe={};Dt(HSe,{alerts:()=>dSe,buttons:()=>ESe,canvasError:()=>fSe,clearCanvasDialog:()=>vSe,colorPicker:()=>MSe,colors:()=>GSe,confirmDialog:()=>xSe,default:()=>Jcr,encrypted:()=>LSe,errorDialog:()=>ySe,errorSplash:()=>mSe,errors:()=>ISe,exportDialog:()=>wSe,headings:()=>QSe,helpDialog:()=>bSe,hints:()=>pSe,imageExportDialog:()=>SSe,labels:()=>CSe,library:()=>BSe,mermaid:()=>YSe,overwriteConfirm:()=>TSe,publishDialog:()=>kSe,publishSuccessDialog:()=>FSe,roomDialog:()=>DSe,stats:()=>RSe,toast:()=>NSe,toolBar:()=>hSe,welcomeScreen:()=>USe});var CSe,BSe,ESe,dSe,ISe,hSe,QSe,pSe,fSe,mSe,DSe,ySe,wSe,bSe,vSe,kSe,FSe,xSe,SSe,LSe,RSe,NSe,GSe,USe,MSe,TSe,YSe,Jcr;var KSe=_(()=>{zt();CSe={paste:"បិទភ្ជាប់",pasteAsPlaintext:"បិទភ្ជាប់ជាអត្ថបទធម្មតា",pasteCharts:"បិទភ្ជាប់តារាង",selectAll:"ជ្រើសរើស​ទាំងអស់",multiSelect:"បន្ថែមធាតុទៅលើការជ្រើសរើស",moveCanvas:"ផ្លាស់ទីបាវ",cut:"កាត់",copy:"ចម្លង",copyAsPng:"ចម្លងទៅក្តារតម្បៀតខ្ទាស់ជា​ PNG",copyAsSvg:"ចម្លងទៅក្តារតម្បៀតខ្ទាស់ជា​ SVG",copyText:"ចម្លងទៅក្តារតម្បៀតខ្ទាស់ជា​អត្ថបទ",copySource:"",convertToCode:"",bringForward:"នាំយកទៅលើ",sendToBack:"នាំយកទៅក្រោយបង្អស់",bringToFront:"នាំយកទៅលើបង្អស់",sendBackward:"នាំយកទៅក្រោយ",delete:"លុប",copyStyles:"ចម្លងរចនាប័ទ្ម",pasteStyles:"បិទភ្ជាប់រចនាប័ទ្ម",stroke:"ខ្វាច់",background:"ផ្ទៃខាងក្រោយ",fill:"បំពេញ",strokeWidth:"ទទឹងខ្វាច់",strokeStyle:"រចនាប័ទ្មរបស់ខ្វាច់",strokeStyle_solid:"តាន់",strokeStyle_dashed:"ដាច់ៗ",strokeStyle_dotted:"ចំណុចៗ",sloppiness:"រចនាប័ទ្មបន្ទាត់",opacity:"ភាពច្បាស់",textAlign:"តម្រឹមអត្ថបទ",edges:"គែម",sharp:"មុត",round:"រាងមូល",arrowheads:"ក្បាលព្រួញ",arrowhead_none:"គ្មាន",arrowhead_arrow:"ព្រួញ",arrowhead_bar:"របារ",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"ត្រីកោណ",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"ទំហំពុម្ពអក្សរ",fontFamily:"ក្រុម​ពុម្ពអក្សរ",addWatermark:'បន្ថែមវ៉ាត់ធើម៉ាក "Made with Excalidraw"',handDrawn:"គូរដោយដៃ",normal:"ធម្មតា",code:"កូដ",small:"តូច",medium:"មធ្យម",large:"ធំ",veryLarge:"ធំខ្លាំង",solid:"តាន់",hachure:"Hachure",zigzag:"Zigzag",crossHatch:"បន្ទាត់ឆ្នូតៗ",thin:"ស្តើង",bold:"ដឹត",left:"ខាងឆ្វេង",center:"កណ្ដាល",right:"នៅខាងស្ដាំ",extraBold:"ដិតបន្ថែម",architect:"ស្ថាបត្យករ",artist:"សិល្បៈករ",cartoonist:"អ្នកគំនូរជីវចល",fileTitle:"ឈ្មោះ​ឯកសារ",colorPicker:"ឧបករណ៍​ជ្រើស​ពណ៌",canvasColors:"ប្រើលើបាវ",canvasBackground:"ផ្ទៃខាងក្រោយបាវ",drawingCanvas:"តំបន់គំនូរ",layers:"ស្រទាប់",actions:"សកម្មភាព",language:"ភាសា",liveCollaboration:"សហការគ្នាផ្ទាល់...",duplicateSelection:"ចម្លង",untitled:"គ្មានឈ្មោះ",name:"ឈ្មោះ",yourName:"ឈ្មោះ​របស់​អ្នក",madeWithExcalidraw:"បង្កើតជាមួយ Excalidraw",group:"ការជ្រើសរើសជាក្រុម",ungroup:"បំបែកក្រុមការជ្រើសរើសជាក្រុម",collaborators:"អ្នកសហការ",showGrid:"បង្ហាញក្រឡាចត្រង្គ",addToLibrary:"បន្ថែមទៅបណ្ណាល័យ",removeFromLibrary:"លុបចេញពីបណ្ណាល័យ",libraryLoadingMessage:"កំពុងផ្ទុកបណ្ណាល័យ...",libraries:"រកមើលបណ្ណាល័យ",loadingScene:"កំពុង​ផ្ទុក​ស៊ីន...",align:"តម្រឹម",alignTop:"តម្រឹមផ្នែកខាងលើ",alignBottom:"តម្រឹមផ្នែកខាងក្រោម",alignLeft:"​តម្រឹម​ឆ្វេង",alignRight:"តម្រឹម​ស្តាំ",centerVertically:"កណ្តាល​បញ្ឈរ",centerHorizontally:"កណ្តាល​ផ្ដេក",distributeHorizontally:"ចែកចាយផ្ដេក",distributeVertically:"ចែកចាយបញ្ឈរ",flipHorizontal:"ត្រឡប់​ដោយ​ផ្ដេក",flipVertical:"ត្រឡប់​ដោយ​បញ្ឈរ",viewMode:"ម៉ូដ​បង្ហាញ",share:"ចែករំលែក",showStroke:"បង្ហាញឧបករណ៍ជ្រើសរើសពណ៌ខ្វាច់",showBackground:"បង្ហាញឧបករណ៍ជ្រើសរើសពណ៌ផ្ទៃខាងក្រោយ",toggleTheme:"បិទ/បើកប្រធានបទ",personalLib:"បណ្ណាល័យផ្ទាល់ខ្លួន",excalidrawLib:"បណ្ណាល័យ Excalidraw",decreaseFontSize:"បន្ថយទំហំពុម្ពអក្សរ",increaseFontSize:"បង្កើនទំហំពុម្ពអក្សរ",unbindText:"ស្រាយអត្ថបទ",bindText:"ភ្ជាប់អត្ថបទទៅប្រអប់",createContainerFromText:"រុំអត្ថបទក្នុងប្រអប់មួយ",link:{edit:"កែតំណភ្ជាប់",editEmbed:"",create:"បង្កើតតំណភ្ជាប់",createEmbed:"",label:"តំណ",labelEmbed:"",empty:""},lineEditor:{edit:"កែសម្រួលបន្ទាត់",exit:"ចាកចេញពីការកែសម្រួលបន្ទាត់"},elementLock:{lock:"ចាក់សោ",unlock:"ដោះសោ",lockAll:"ចាក់សោទាំងអស់",unlockAll:"ដោះសោទាំងអស់"},statusPublished:"ត្រូវបានបោះពុម្ពផ្សាយ",sidebarLock:"ទុករបារចំហៀងបើក",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},BSe={noItems:"មិនទាន់មានធាតុបន្ថែមទេ...",hint_emptyLibrary:"ជ្រើសរើសធាតុនៅលើបាវដើម្បីបន្ថែមវានៅទីនេះ ឬដំឡើងបណ្ណាល័យពីឃ្លាំងសាធារណៈខាងក្រោម។",hint_emptyPrivateLibrary:"ជ្រើសរើសធាតុនៅលើបាវដើម្បីបន្ថែមវានៅទីនេះ"},ESe={clearReset:"កំណត់បាវឡើងវិញ",exportJSON:"នាំចេញជាឯកសារ",exportImage:"នាំរូបភាពចេញ",export:"រក្សាទុក​នៅ...",copyToClipboard:"ចម្លងទៅក្តារតម្បៀតខ្ទាស់",save:"រក្សាទុកទៅឯកសារបច្ចុប្បន្ន",saveAs:"រក្សាទុក​ជា",load:"បើក",getShareableLink:"យកតំណដែលអាចចែករំលែកបាន",close:"បិទ",selectLanguage:"រើសភាសា",scrollBackToContent:"រំកិលត្រឡប់ទៅមាតិកាវិញ",zoomIn:"ពង្រីក",zoomOut:"បង្រួម",resetZoom:"កំណត់ការពង្រីកឡើងវិញ",menu:"ម៉ឺនុយ",done:"រួចរាល់",edit:"កែ",undo:"ត្រឡប់វិញ",redo:"ធ្វើ​វិញ",resetLibrary:"កំណត់បណ្ណាល័យឡើងវិញ",createNewRoom:"បង្កើតបន្ទប់ថ្មី",fullScreen:"ពេញ​អេក្រង់",darkMode:"ម៉ូដងងឹត",lightMode:"ម៉ូដភ្លឺ",zenMode:"ម៉ូត Zen",objectsSnapMode:"",exitZenMode:"ចេញពី zen​ ម៉ូត",cancel:"បោះបង់",clear:"សម្អាត",remove:"ដកចេញ",embed:"",publishLibrary:"បោះពុម្ពផ្សាយ",submit:"ដាក់​ស្នើ",confirm:"បញ្ជាក់",embeddableInteractionButton:""},dSe={clearReset:"វានឹងសម្អាតបាវទាំងមូល។ តើ​អ្នក​ប្រាកដ​ឬ​អត់?",couldNotCreateShareableLink:"មិនអាចបង្កើតតំណដែលអាចចែករំលែកបានទេ។",couldNotCreateShareableLinkTooBig:"មិន​អាច​បង្កើត​តំណ​ដែល​អាច​ចែក​រំលែក​បាន៖ ស៊ីន​ធំ​ពេក",couldNotLoadInvalidFile:"មិនអាចផ្ទុកឯកសារមិនត្រឹមត្រូវបានទេ។",importBackendFailed:"ការនាំចូលពីម៉ាស៊ីនមេបានបរាជ័យ។",cannotExportEmptyCanvas:"មិនអាចនាំចេញបាវទទេបានទេ។",couldNotCopyToClipboard:"មិនអាចចម្លងទៅក្ដារតម្បៀតខ្ទាស់បានទេ។",decryptFailed:"មិនអាចឌិគ្រីបទិន្នន័យបានទេ។",uploadedSecurly:"ការបង្ហោះត្រូវបានការពារដោយការអ៊ិនគ្រីបពីចុងដល់ចប់ មានន័យថា ទាំងម៉ាស៊ីនមេរបស់ Excalidraw ឬភាគីទីបីមិនអាចអានខ្លឹមសារបានទេ។",loadSceneOverridePrompt:"ការផ្ទុកគំនូរខាងក្រៅនឹងជំនួសមាតិកាដែលមានស្រាប់របស់អ្នក។ តើអ្នកចង់បន្តទេ?",collabStopOverridePrompt:`ការបញ្ឈប់សម័យនឹងសរសេរជាន់លើគំនូរដែលបានរក្សាទុកនៅលើកុំព្យូទ័ររបស់អ្នកពីមុន។ តើ​អ្នក​ប្រាកដ​ឬ​អត់?
(ប្រសិនបើអ្នកចង់រក្សាគំនូរដែលនៅលើកុំព្យូទ័ររបស់អ្នក គ្រាន់តែបិទផ្ទាំងកម្មវិធីរុករក។)`,errorAddingToLibrary:"មិនអាចបន្ថែមធាតុទៅបណ្ណាល័យបានទេ",errorRemovingFromLibrary:"មិនអាចលុបធាតុចេញពីបណ្ណាល័យបានទេ",confirmAddLibrary:"វានឹងបន្ថែមរូបរាង {{numShapes}} ទៅបណ្ណាល័យរបស់អ្នក។ តើ​អ្នក​ប្រាកដ​ឬ​អត់?",imageDoesNotContainScene:"រូបភាពនេះហាក់ដូចជាមិនមានទិន្នន័យស៊ីនណាមួយទេ។ តើអ្នកបានបើកការបង្កប់ស៊ីននៅពេលនាំចេញទេ?",cannotRestoreFromImage:"មិនអាចស្ដារស៊ីនពីឯកសាររូបភាពនេះបានទេ",invalidSceneUrl:"មិន​អាច​នាំចូល​ស៊ីន​ពី URL ដែល​បាន​ផ្តល់​ឱ្យ​ទេ។ វាមានទម្រង់ខុស ឬមិនមានទិន្នន័យ Excalidraw JSON ដែលត្រឹមត្រូវ។",resetLibrary:"វានឹងសម្អាតបាវទាំងមូល។ តើ​អ្នក​ប្រាកដ​ឬ​អត់?",removeItemsFromsLibrary:"តើអ្នកប្រាកដថាចង់លុប {{count}} ធាតុចេញពីបណ្ណាល័យទេ?",invalidEncryptionKey:"សោអ៊ីនគ្រីបត្រូវតែមាន 22 តួអក្សរ។ ការសហការផ្ទាល់ត្រូវបានបិទ។",collabOfflineWarning:`គ្មានការតភ្ជាប់អ៊ីនធឺណិត។
ការផ្លាស់ប្តូររបស់អ្នកនឹងមិនត្រូវបានរក្សាទុកទេ!`},ISe={unsupportedFileType:"ប្រភេទឯកសារមិនត្រូវបានគាំទ្រទេ។",imageInsertError:"មិនអាចបញ្ចូលរូបភាពបានទេ។ សូម​ព្យាយាម​ម្តង​ទៀត​នៅ​ពេល​ក្រោយ……",fileTooBig:"ឯកសារធំពេក។ ទំហំអតិបរមាដែលអនុញ្ញាតគឺ {{maxSize}}។",svgImageInsertError:"មិនអាចបញ្ចូលរូបភាព SVG បានទេ។ ស្លាក SVG ហាក់ដូចជាមិនត្រឹមត្រូវ។",failedToFetchImage:"",invalidSVGString:"SVG មិន​ត្រឹមត្រូវ។",cannotResolveCollabServer:"មិនអាចភ្ជាប់ទៅម៉ាស៊ីនមេសហការផ្ទាល់បានទេ។ សូមផ្ទុកទំព័រឡើងវិញ ហើយព្យាយាមម្តងទៀត។",importLibraryError:"មិនអាចផ្ទុកបណ្ណាល័យបានទេ។",collabSaveFailed:"មិនអាចរក្សាទុកទៅម៉ាស៊ីនមេបានទេ។ ប្រសិនបើបញ្ហានៅតែបន្តកើតមាន​ អ្នកគួរតែរក្សាទុកឯកសាររបស់អ្នកនៅលើកុំព្យូទ័ររបស់អ្នកសិន ដើម្បីធានាថាការងាររបស់អ្នកមិនបាត់បង់។",collabSaveFailed_sizeExceeded:"មិនអាចរក្សាទុកទៅម៉ាស៊ីនមេបានទេ, ផ្ទាំងបាវហាក់ដូចជាធំពេក។ អ្នកគួរតែរក្សាទុកឯកសាររបស់អ្នកនៅលើកុំព្យូទ័ររបស់អ្នកសិន ដើម្បីធានាថាការងាររបស់អ្នកមិនបាត់បង់។",imageToolNotSupported:"",brave_measure_text_error:{line1:"អ្នកហាក់ដូចជាកំពុងប្រើប្រាស់កម្មវិធីរុករកតាមអ៊ីនធឺណិត Brave ជាមួយនឹងការកំណត់ <bold>ការពារស្នាមម្រាមដៃយ៉ាងធ្ងន់ធ្ងរ</bold> ត្រូវបានបើក។",line2:"វាអាចបណ្តាលឱ្យមានការបំបែក <bold>ធាតុអត្ថបទ</bold> នៅក្នុងគំនូររបស់អ្នក។",line3:"យើងណែនាំយ៉ាងមុតមាំឱ្យបិទការកំណត់នេះ។ អ្នកអាចអនុវត្តតាម <link>ជំហានទាំងនេះ</link> ដើម្បីបិទការកំណត់នេះ។",line4:"ប្រសិនបើការបិទការកំណត់នេះមិនបានជួសជុលការបង្ហាញធាតុអត្ថបទទេ សូមដាក់ <issueLink>issue</issueLink> នៅលើ GitHub ឬរាយការណ៍នៅលើ <discordLink>Discord</discordLink> របស់យើង"},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},hSe={selection:"ការជ្រើសរើស",image:"បញ្ចូលរូបភាព",rectangle:"ចតុ​កោណ​កែង​",diamond:"ពេជ្រ",ellipse:"ពងក្រពើ",arrow:"ព្រួញ",line:"បន្ទាត់",freedraw:"គូរ",text:"អត្ថបទ",library:"បណ្ណាល័យ",lock:"រក្សារឧបករណ៍ដែលបានជ្រើសរើសបន្ទាប់ពីគូររួច",penMode:"របៀបប៊ិច - ជៀសវាងការប៉ះ",link:"បន្ថែម/ធ្វើបច្ចុប្បន្នភាពតំណភ្ជាប់សម្រាប់រូបរាងដែលបានជ្រើសរើស",eraser:"ជ័រលុប",frame:"",magicframe:"",embeddable:"",laser:"",hand:"ដៃ (panning tool)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},QSe={canvasActions:"សកម្មភាពបាវ",selectedShapeActions:"សកម្មភាពរបស់រាងដែលបានជ្រើសរើស",shapes:"រាង"},pSe={canvasPanning:"ដើម្បីផ្លាស់ទីបាវ សូមសង្កត់កង់កណ្ដុរឬគ្រាប់ចុចspacebarខណៈពេលកំពុងអូស ឬប្រើឧបករណ៍ដៃ។",linearElement:"ចុចដើម្បីបង្កើតចំណុចច្រើន អូសដើម្បីបង្កើតបន្ទាត់មួយ",freeDraw:"ចុច​ហើយ​អូស លែង​ពេល​រួចរាល់",text:"គន្លឹះ៖ អ្នកក៏អាចបន្ថែមអត្ថបទដោយចុចពីរដងនៅកន្លែងណាមួយដោយប្រើឧបករណ៍ជ្រើសរើស",embeddable:"",text_selected:"ចុចពីរដង ឬចុច ENTER ដើម្បីកែសម្រួលអត្ថបទ",text_editing:"ចុច Escape ឬ CtrlOrCmd +ENTER ដើម្បីបញ្ចប់ការកែសម្រួល",linearElementMulti:"ចុចលើចំណុចចុងក្រោយ ឬចុច Esc/Enter ដើម្បីបញ្ចប់",lockAngle:"អ្នកអាចសង្កត់ Shift ដើម្បីកំណត់មុំ",resize:`អ្នកអាចសង្កត់ SHIFT ដើម្បីបងំ្ខឲមានសមាមាត្រ ខណៈពេលដែលប្តូរទំហំ
សង្កត់ ALT ដើម្បីប្តូរទំហំពីកណ្តាល`,resizeImage:`អ្នកអាចប្តូរទំហំរូបភាពដោយសេរីដោយសង្កត់ SHIFT,
សង្កត់ ALT ដើម្បីប្តូរទំហំពីកណ្តាល`,rotate:"អ្នកអាចសង្កត់ Shift ខណៈពេលកំពុងបង្វិល ដើម្បីកម្រិតមុំ",lineEditor_info:"សង្កត់ CtrlOrCmd ហើយចុចពីរដង ឬចុច CtrlOrCmd + Enter ដើម្បីកែសម្រួលចំណុច",lineEditor_pointSelected:`ចុច Delete ដើម្បីលុបចំណុច(ច្រើន)
CtrlOrCmd+D ដើម្បីចម្លង, ឬអូសដើម្បីផ្លាស់ទី`,lineEditor_nothingSelected:`ជ្រើសរើសចំណុចដែលត្រូវកែសម្រួល (សង្កត់ SHIFT ដើម្បីជ្រើសរើសច្រើនចំណុច)
ឬ សង្កត់ Alt ហើយចុចដើម្បីបន្ថែមចំណុចថ្មី។`,placeImage:"ចុចដើម្បីដាក់រូបភាព ឬចុចហើយអូសដើម្បីកំណត់ទំហំរបស់រូបភាពដោយដៃ",publishLibrary:"បោះពុម្ពផ្សាយបណ្ណាល័យផ្ទាល់ខ្លួនរបស់អ្នក",bindTextToElement:"ចុច Enter ដើម្បីបន្ថែមអត្ថបទ",deepBoxSelect:"សង្កត់ CtrlOrCmd ដើម្បីជ្រើសរើសយ៉ាងជ្រៅ និងជៀសវាងការអូស",eraserRevert:"សង្កត់ Alt ដើម្បីដកការជ្រើសរើសធាតុដែលត្រូវបានសម្គាល់សម្រាប់ការលុប",firefox_clipboard_write:`បើកមុខងារនេះដោយកំណត់ទង់ "dom.events.asyncClipboard.clipboardItem" ទៅ "true"
ដើម្បីផ្លាស់ប្តូរទង់កម្មវិធីរុករកនៅក្នុង Firefox សូមចូលទៅកាន់ទំព័រ "about:config"។`,disableSnapping:""},fSe={cannotShowPreview:"មិនអាចបង្ហាញការមើលជាមុនបាន",canvasTooBig:"បាវអាចមានទំហំធំពេក។",canvasTooBigTip:"គន្លឹះ៖ ព្យាយាមផ្លាស់ទីធាតុដែលឆ្ងាយបំផុតឱ្យទៅជិតគ្នាបន្តិច។"},mSe={headingMain:"បានជួបប្រទះកំហុសមួយ។ សូមព្យាយាម <button>ផ្ទុកទំព័រឡើងវិញ</button>។",clearCanvasMessage:"ប្រសិនបើការផ្ទុកឡើងវិញមិនអាចដោះស្រាយកំហុសបានទេ សូមសាកល្បង <button>សម្អាតបាវ។</button>",clearCanvasCaveat:" នេះនឹងបណ្តាលឱ្យបាត់បង់ការងារ ",trackedToSentry:"កំហុសជាមួយលេខសម្គាល់ {{eventId}} ត្រូវបានតាមដាននៅលើប្រព័ន្ធរបស់យើង។",openIssueMessage:"យើងមានការប្រុងប្រយ័ត្នខ្លាំងណាស់ក្នុងការមិនបញ្ចូលព័ត៌មានរបស់ស៊ីនរបស់អ្នកទៅលើកំហុស។ ប្រសិនបើស៊ីនរបស់អ្នកមិនមានលក្ខណៈឯកជនទេ សូមពិចារណាបន្តទៅកាន់ <button>កម្មវិធីតាមដានកំហុសរបស់យើង។</button> សូមបញ្ចូលព័ត៌មានខាងក្រោមដោយចម្លង និងបិទភ្ជាប់វាទៅក្នុងបញ្ហារបស់ GitHub។",sceneContent:"មាតិកាបាវ៖"},DSe={desc_intro:"អ្នកអាចអញ្ជើញអ្នកដទៃឱ្យសហការជាមួយអ្នកនៅលើស៊ីនបច្ចុប្បន្ន។",desc_privacy:"កុំបារម្ភ វគ្គប្រើការអ៊ិនគ្រីបពីចុងដល់ចប់ ដូច្នេះអ្វីដែលអ្នកគូរនឹងនៅតែជាឯកជន។ សូម្បីតែម៉ាស៊ីនមេរបស់យើងក៏នឹងមិនអាចមើលឃើញអ្វីដែលអ្នកកំពុងធ្វើដែរ។",button_startSession:"ចាប់ផ្តើមវគ្គ",button_stopSession:"បញ្ឈប់វគ្គ",desc_inProgressIntro:"វគ្គសហការផ្ទាល់ឥឡូវនេះកំពុងដំណើរការ។",desc_shareLink:"ចែករំលែកតំណនេះជាមួយអ្នកដែលអ្នកចង់សហការជាមួយ៖",desc_exitSession:"ការបញ្ឈប់វគ្គនេះនឹងផ្តាច់អ្នកចេញពីបន្ទប់ ប៉ុន្តែអ្នកនឹងនៅតែអាចបន្តប្រើបាវនៅលើកុំព្យូទ័ររបស់អ្នក។ សូមចំណាំថាវានឹងមិនប៉ះពាល់ដល់អ្នកប្រើប្រាស់ផ្សេងទៀតទេ​ ហើយពួកគេនឹងនៅតែអាចបន្តសហការលើកំណែរបស់ពួកគេ។",shareTitle:"ចូលរួមវគ្គសហការផ្ទាល់នៅលើ Excalidraw"},ySe={title:"មានកំហុស"},wSe={disk_title:"រក្សាទុកទៅថាស",disk_details:"នាំចេញទិន្នន័យរបស់ស៊ីនជាឯកសារដែលអ្នកអាចនាំចូលនៅពេលក្រោយ។",disk_button:"រក្សាទុកក្នុងឯកសារ",link_title:"តំណដែលអាចចែករំលែកបាន",link_details:"នាំចេញជាតំណបានតែមើលឬអាន។",link_button:"នាំចេញជាតំណ",excalidrawplus_description:"រក្សាទុកស៊ីនទៅកន្លែងធ្វើការ Excalidraw+ របស់អ្នក។",excalidrawplus_button:"នាំចេញ",excalidrawplus_exportError:"មិនអាចនាំចេញទៅ Excalidraw+ បានទេនៅពេលនេះ..."},bSe={blog:"អានប្លក់របស់យើង",click:"ចុច",deepSelect:"ការជ្រើសរើសជាក្រុម",deepBoxSelect:"ជ្រើសរើសជាក្រុម និង ជៀសវាងការអូសទាញផ្លាស់ទី",curvedArrow:"ព្រួញកោង",curvedLine:"ព្រួញកោង",documentation:"ឯកសារ",doubleClick:"ចុច​ពីរ​ដង",drag:"អូស",editor:"កម្មវិធីនិពន្ធ",editLineArrowPoints:"កែសម្រួលចំណុចនៃបន្ទាត់ ឬព្រួញ",editText:"បន្ថែម ឬកែសម្រួលអត្ថបទ",github:"រកឃើញបញ្ហា? ដាក់ស្នើ",howto:"ឯកសារជំនួយ",or:"ឬ",preventBinding:"ទប់ស្កាត់ការចងព្រួញ",tools:"ឧបករណ៍",shortcuts:"ផ្លូវកាត់ក្តារចុច",textFinish:"បញ្ចប់ការកែសម្រួល (កម្មវិធីនិពន្ធអត្ថបទ)",textNewLine:"ចុះបន្ទាត់ (កម្មវិធីនិពន្ធអត្ថបទ)",title:"ជំនួយ",view:"បង្ហាញ",zoomToFit:"ធ្វើមាត្រដ្ឋានឱ្យសមនឹងធាតុទាំងអស់។",zoomToSelection:"ពង្រីកទៅការជ្រើសរើស",toggleElementLock:"ចាក់សោ/ដោះសោការជ្រើសរើស",movePageUpDown:"ផ្លាស់ទីទំព័រឡើងលើ/ចុះក្រោម",movePageLeftRight:"ផ្លាស់ទីទំព័រទៅឆ្វេង/ស្ដាំ"},vSe={title:"សម្អាតបាវ"},kSe={title:"បោះពុម្ពបណ្ណាល័យ",itemName:"ឈ្មោះ​ធាតុ",authorName:"ឈ្មោះអ្នកនិពន្ធ",githubUsername:"ឈ្មោះអ្នកប្រើ GitHub",twitterUsername:"ឈ្មោះអ្នកប្រើ Twitter",libraryName:"ឈ្មោះបណ្ណាល័យ",libraryDesc:"ការពិពណ៌នាអំពីបណ្ណាល័យ",website:"គេហទំព័រ",placeholder:{authorName:"ឈ្មោះរបស់អ្នក ឬឈ្មោះអ្នកប្រើប្រាស់",libraryName:"ឈ្មោះបណ្ណាល័យរបស់អ្នក",libraryDesc:"ការពិពណ៌នាអំពីបណ្ណាល័យរបស់អ្នក នឹងអនុញ្ញាតឱ្យអ្នក​ផ្សេងយល់ពីការប្រើប្រាស់របស់វា។",githubHandle:"ឈ្មោះអ្នកប្រើ GitHub (ជាជម្រើស) ដូច្នេះអ្នកអាចកែសម្រួលបណ្ណាល័យបាននៅពេលដាក់ស្នើសម្រាប់ការពិនិត្យ",twitterHandle:"ឈ្មោះអ្នកប្រើប្រាស់ Twitter (ជាជម្រើស) ដូច្នេះយើងដឹងថាអ្នកណាដែលត្រូវផ្តល់ក្រេឌីតនៅពេលផ្សព្វផ្សាយតាម Twitter",website:"ភ្ជាប់ទៅគេហទំព័រផ្ទាល់ខ្លួនរបស់អ្នក ឬគេហទំព័រផ្សេងទៀត (ជាជម្រើស)"},errors:{required:"ត្រូវបានទាមទារ",website:"សូមវាយបញ្ចូល URL ​ដែលត្រឹមត្រូវ"},noteDescription:"ដាក់ស្នើបណ្ណាល័យរបស់អ្នកដើម្បីដាក់បញ្ចូលក្នុង <link>ឃ្លាំងបណ្ណាល័យសាធារណៈ</link> សម្រាប់ឲ្យអ្នកផ្សេងប្រើក្នុងគំនូររបស់ពួកគេ។",noteGuidelines:"បណ្ណាល័យត្រូវតែអនុម័តដោយដៃជាមុនសិន។ សូមអាន <link>ការណែនាំ</link> មុនពេលដាក់ស្នើ។ ការប្រាស្រ័យទាក់ទងជាបន្តបន្ទាប់ និងការផ្លាស់ប្តូរបណ្ណាល័យទាមទារឱ្យអ្នកមានគណនី GitHub ប៉ុន្តែមិនត្រូវបានទាមទារយ៉ាងតឹងរ៉ឹងទេ។",noteLicense:"តាមរយៈការដាក់ស្នើ អ្នកយល់ព្រមថាបណ្ណាល័យនឹងត្រូវបានបោះពុម្ពផ្សាយក្រោម <link>អាជ្ញាប័ណ្ណ MIT</link> ដែលមានន័យយ៉ាងខ្លី អ្នកណាក៏អាចប្រើប្រាស់វាបានដោយគ្មានការរឹតត្បិត។",noteItems:"ធាតុនីមួយៗនៅក្នុងបណ្ណាល័យត្រូវតែមានឈ្មោះផ្ទាល់ខ្លួនដើម្បីយើងអាចត្រងវាបាន។ ធាតុខាងក្រោមនឹងត្រូវបានរួមបញ្ចូល:",atleastOneLibItem:"សូមជ្រើសរើសយ៉ាងហោចណាស់ធាតុបណ្ណាល័យមួយដើម្បីចាប់ផ្តើម",republishWarning:"ចំណាំ៖ ធាតុដែលត្រូវបានជ្រើសរើសមួយចំនួនត្រូវបានសម្គាល់ថាបានបោះពុម្ព/បញ្ជូនរួចរាល់ហើយ។ អ្នកគួរតែបញ្ជូនធាតុឡើងវិញនៅពេលដែលធ្វើបច្ចុប្បន្នភាពបណ្ណាល័យដែលមានស្រាប់ ឬការបញ្ជូន។"},FSe={title:"បណ្ណាល័យត្រូវបានដាក់ស្នើ",content:"សូមអរគុណ {{authorName}}។ បណ្ណាល័យរបស់អ្នកត្រូវបានបញ្ជូនមកពិនិត្យ។ សូមចុច <link>ទីនេះ</link> ដើម្បីតាមដានស្ថានភាពនៃការដាក់ស្នើនេះ។"},xSe={resetLibrary:"កំណត់បណ្ណាល័យឡើងវិញ",removeItemsFromLib:"លុបធាតុដែលបានជ្រើសរើសចេញពីបណ្ណាល័យ"},SSe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},LSe={tooltip:"គំនូររបស់អ្នកត្រូវបានអ៊ិនគ្រីបពីចុងដល់ចប់ ដូច្នេះម៉ាស៊ីនមេរបស់ Excalidraw នឹងមិនឃើញពួកវាទេ។",link:"ប្លក់ផុសលើការអ៊ិនគ្រីបពីចុងដល់ចុងក្នុង Excalidraw"},RSe={angle:"មុំ",element:"ធាតុ",elements:"ធាតុច្រើន",height:"កម្ពស់",scene:"ស៊ីន",selected:"បានជ្រើសរើស",storage:"ការផ្ទុក",title:"ស្ថិតិសម្រាប់ nerds",total:"សរុប",version:"ជំនាន់:",versionCopy:"ចុចដើម្បីចម្លង",versionNotAvailable:"កំណែមិនអាចប្រើបាន",width:"ទទឹង​"},NSe={addedToLibrary:"បានបន្ថែមទៅបណ្ណាល័យ",copyStyles:"រចនាប័ទ្មត្រូវបានចម្លង។",copyToClipboard:"បានចម្លងទៅក្ដារតម្បៀតខ្ទាស់។",copyToClipboardAsPng:`បានចម្លង {{exportSelection}} ទៅក្ដារតម្បៀតខ្ទាស់ជា PNG
({{exportColorScheme}})`,fileSaved:"ឯកសារត្រូវបានរក្សាទុក។",fileSavedToFilename:"បានរក្សាទុកនៅក្នុង {filename}",canvas:"តំបន់គំនូរ",selection:"ការជ្រើសរើស",pasteAsSingleElement:`ប្រើ {{shortcut}} ដើម្បីបិទភ្ជាប់ជាធាតុតែមួយ,
ឬបិទភ្ជាប់ទៅក្នុងកម្មវិធីនិពន្ធអត្ថបទដែលមានស្រាប់`,unableToEmbed:"",unrecognizedLinkFormat:""},GSe={transparent:"ថ្លាមើលធ្លុះ",black:"ពណ៍ខ្មៅ",white:"ពណ៌ស",red:"ពណ៌ក្រហម",pink:"ពណ៌ផ្កាឈូក",grape:"ពណ៌ទំពាំងបាយជូរ",violet:"ពណ៌ស្វាយ",gray:"ពណ៌ប្រផេះ",blue:"ពណ៌ខៀវ",cyan:"ពណ៌ផ្ទៃមេឃ",teal:"ពណ៌​ខៀវបៃតង",green:"ពណ៌បៃតង",yellow:"ពណ៌លឿង",orange:"ពណ៌ទឹកក្រូច",bronze:"ពណ៌សំរិទ្ធ"},USe={app:{center_heading:"ទិន្នន័យទាំងអស់របស់អ្នក ត្រូវបានរក្សាទុកនៅក្នុង browser របស់អ្នក ។",center_heading_plus:"តើ​អ្នក​ចង់​ទៅ Excalidraw+ ​វិញ ឬ មែន?",menuHint:"នាំចេញ ចំណូលចិត្ត ភាសា ..."},defaults:{menuHint:"ការនាំចេញ ចំណូលចិត្ត និង ច្រើនទៀត...",center_heading:"ងាយស្រួល ។ ធ្វើ ។​ ដ្យាក្រាម ។",toolbarHint:"ជ្រើសរើសឧបករណ៍មួយ និង ចាប់ផ្តើមគូរ!",helpHint:"ផ្លូវកាត់ &​ ជំនួយ"}},MSe={mostUsedCustomColors:"ពណ៌ផ្ទាល់ខ្លួនដែលប្រើច្រើនបំផុត",colors:"ពណ៌",shades:"ស្រមោល",hexCode:"លេខកូដ hex",noShades:"មិនមានស្រមោលសម្រាប់ពណ៌នេះទេ"},TSe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},YSe={title:"",button:"",description:"",syntax:"",preview:""},Jcr={labels:CSe,library:BSe,buttons:ESe,alerts:dSe,errors:ISe,toolBar:hSe,headings:QSe,hints:pSe,canvasError:fSe,errorSplash:mSe,roomDialog:DSe,errorDialog:ySe,exportDialog:wSe,helpDialog:bSe,clearCanvasDialog:vSe,publishDialog:kSe,publishSuccessDialog:FSe,confirmDialog:xSe,imageExportDialog:SSe,encrypted:LSe,stats:RSe,toast:NSe,colors:GSe,welcomeScreen:USe,colorPicker:MSe,overwriteConfirm:TSe,mermaid:YSe}});var ELe={};Dt(ELe,{alerts:()=>_Se,buttons:()=>PSe,canvasError:()=>VSe,clearCanvasDialog:()=>tLe,colorPicker:()=>cLe,colors:()=>lLe,confirmDialog:()=>uLe,default:()=>Ocr,encrypted:()=>nLe,errorDialog:()=>$Se,errorSplash:()=>jSe,errors:()=>WSe,exportDialog:()=>ALe,headings:()=>zSe,helpDialog:()=>eLe,hints:()=>ZSe,imageExportDialog:()=>aLe,labels:()=>JSe,library:()=>OSe,mermaid:()=>BLe,overwriteConfirm:()=>CLe,publishDialog:()=>rLe,publishSuccessDialog:()=>iLe,roomDialog:()=>XSe,stats:()=>oLe,toast:()=>sLe,toolBar:()=>qSe,welcomeScreen:()=>gLe});var JSe,OSe,PSe,_Se,WSe,qSe,zSe,ZSe,VSe,jSe,XSe,$Se,ALe,eLe,tLe,rLe,iLe,uLe,aLe,nLe,oLe,sLe,lLe,gLe,cLe,CLe,BLe,Ocr;var dLe=_(()=>{zt();JSe={paste:"붙여넣기",pasteAsPlaintext:"일반 텍스트로 붙여넣기",pasteCharts:"차트 붙여넣기",selectAll:"전체 선택",multiSelect:"선택 영역에 추가하기",moveCanvas:"캔버스 이동",cut:"잘라내기",copy:"복사",copyAsPng:"클립보드로 PNG 이미지 복사",copyAsSvg:"클립보드로 SVG 이미지 복사",copyText:"클립보드로 텍스트 복사",copySource:"소스코드를 클립보드로 복사",convertToCode:"코드로 변환",bringForward:"앞으로 가져오기",sendToBack:"맨 뒤로 보내기",bringToFront:"맨 앞으로 가져오기",sendBackward:"뒤로 보내기",delete:"삭제",copyStyles:"스타일 복사하기",pasteStyles:"스타일 붙여넣기",stroke:"선 색상",background:"배경색",fill:"채우기",strokeWidth:"선 굵기",strokeStyle:"선",strokeStyle_solid:"실선",strokeStyle_dashed:"파선",strokeStyle_dotted:"점선",sloppiness:"대충 긋기",opacity:"불투명도",textAlign:"텍스트 정렬",edges:"가장자리",sharp:"뾰족하게",round:"둥글게",arrowheads:"화살촉",arrowhead_none:"없음",arrowhead_arrow:"화살표",arrowhead_bar:"막대",arrowhead_circle:"원",arrowhead_circle_outline:"원 (외곽선)",arrowhead_triangle:"삼각형",arrowhead_triangle_outline:"삼각형 (외곽선)",arrowhead_diamond:"마름모",arrowhead_diamond_outline:"마름모 (외곽선)",fontSize:"글자 크기",fontFamily:"글꼴",addWatermark:'"Made with Excalidraw" 추가',handDrawn:"손글씨",normal:"일반",code:"코드",small:"작게",medium:"보통",large:"크게",veryLarge:"매우 크게",solid:"단색",hachure:"평행선",zigzag:"지그재그",crossHatch:"교차선",thin:"얇게",bold:"굵게",left:"왼쪽",center:"가운데",right:"오른쪽",extraBold:"매우 굵게",architect:"건축가",artist:"예술가",cartoonist:"만화가",fileTitle:"파일 이름",colorPicker:"색상 선택기",canvasColors:"캔버스에서 사용되었음",canvasBackground:"캔버스 배경",drawingCanvas:"캔버스 그리기",layers:"레이어",actions:"동작",language:"언어",liveCollaboration:"실시간 협업...",duplicateSelection:"복제",untitled:"제목 없음",name:"이름",yourName:"이름 입력",madeWithExcalidraw:"Made with Excalidraw",group:"그룹 생성",ungroup:"그룹 해제",collaborators:"공동 작업자",showGrid:"그리드 보기",addToLibrary:"라이브러리에 추가",removeFromLibrary:"라이브러리에서 제거",libraryLoadingMessage:"라이브러리 불러오는 중…",libraries:"라이브러리 찾기",loadingScene:"화면 불러오는 중…",align:"정렬",alignTop:"상단 정렬",alignBottom:"하단 정렬",alignLeft:"왼쪽 정렬",alignRight:"오른쪽 정렬",centerVertically:"수직으로 중앙 정렬",centerHorizontally:"수평으로 중앙 정렬",distributeHorizontally:"수평으로 분배",distributeVertically:"수직으로 분배",flipHorizontal:"좌우반전",flipVertical:"상하반전",viewMode:"보기 모드",share:"공유",showStroke:"윤곽선 색상 선택기 열기",showBackground:"배경 색상 선택기 열기",toggleTheme:"테마 전환",personalLib:"개인 라이브러리",excalidrawLib:"Excalidraw 라이브러리",decreaseFontSize:"폰트 사이즈 줄이기",increaseFontSize:"폰트 사이즈 키우기",unbindText:"텍스트 분리",bindText:"텍스트를 컨테이너에 결합",createContainerFromText:"텍스트를 컨테이너에 담기",link:{edit:"링크 수정하기",editEmbed:"링크 & 임베드 수정하기",create:"링크 만들기",createEmbed:"링크 & 임베드 만들기",label:"링크",labelEmbed:"링크 & 임베드",empty:"링크를 지정하지 않았습니다"},lineEditor:{edit:"선 수정하기",exit:"선 편집기 종료"},elementLock:{lock:"잠금",unlock:"잠금 해제",lockAll:"모두 잠금",unlockAll:"모두 잠금 해제"},statusPublished:"게시됨",sidebarLock:"사이드바 유지",selectAllElementsInFrame:"프레임의 모든 요소 선택",removeAllElementsFromFrame:"프레임의 모든 요소 삭제",eyeDropper:"캔버스에서 색상 고르기",textToDiagram:"텍스트를 다이어그램으로",prompt:"프롬프트"},OSe={noItems:"추가된 아이템 없음",hint_emptyLibrary:"캔버스 위에서 아이템을 선택하여 여기에 추가를 하거나, 아래의 공용 저장소에서 라이브러리를 설치하세요.",hint_emptyPrivateLibrary:"캔버스 위에서 아이템을 선택하여 여기 추가하세요."},PSe={clearReset:"캔버스 초기화",exportJSON:"파일로 내보내기",exportImage:"이미지 내보내기",export:"다른 이름으로 저장...",copyToClipboard:"클립보드로 복사",save:"현재 파일에 저장",saveAs:"다른 이름으로 저장",load:"열기",getShareableLink:"공유 가능한 링크 생성",close:"닫기",selectLanguage:"언어 선택",scrollBackToContent:"콘텐츠 영역으로 스크롤하기",zoomIn:"확대",zoomOut:"축소",resetZoom:"확대/축소 초기화",menu:"메뉴",done:"완료",edit:"수정",undo:"실행 취소",redo:"다시 실행",resetLibrary:"라이브러리 리셋",createNewRoom:"방 만들기",fullScreen:"전체화면",darkMode:"다크 모드",lightMode:"밝은 모드",zenMode:"젠 모드",objectsSnapMode:"다른 요소들에 정렬시키기",exitZenMode:"젠 모드 종료하기",cancel:"취소",clear:"지우기",remove:"삭제",embed:"임베딩 토글",publishLibrary:"게시하기",submit:"제출",confirm:"확인",embeddableInteractionButton:"클릭하여 상호작용"},_Se={clearReset:"모든 작업 내용이 초기화됩니다. 계속하시겠습니까?",couldNotCreateShareableLink:"공유 가능한 링크를 생성할 수 없습니다.",couldNotCreateShareableLinkTooBig:"공유 가능한 링크를 생성할 수 없습니다: 화면이 너무 큽니다.",couldNotLoadInvalidFile:"유효하지 않은 파일입니다.",importBackendFailed:"서버로부터 불러 오지 못했습니다.",cannotExportEmptyCanvas:"빈 캔버스를 내보낼 수 없습니다.",couldNotCopyToClipboard:"클립보드로 복사하지 못했습니다.",decryptFailed:"데이터를 복호화하지 못했습니다.",uploadedSecurly:"업로드는 종단 간 암호화로 보호되므로 Excalidraw 서버 및 타사가 콘텐츠를 읽을 수 없습니다.",loadSceneOverridePrompt:"외부 파일을 불러 오면 기존 콘텐츠가 대체됩니다. 계속 진행할까요?",collabStopOverridePrompt:`협업 세션을 종료하면 로컬 저장소에 있는 그림이 협업 세션의 그림으로 대체됩니다. 진행하겠습니까?
(로컬 저장소에 있는 그림을 유지하려면 현재 브라우저 탭을 닫아주세요.)`,errorAddingToLibrary:"아이템을 라이브러리에 추가 할수 없습니다",errorRemovingFromLibrary:"라이브러리에서 아이템을 삭제할수 없습니다",confirmAddLibrary:"{{numShapes}}개의 모양이 라이브러리에 추가됩니다. 계속하시겠어요?",imageDoesNotContainScene:"이 이미지는 화면 데이터를 포함하고 있지 않은 것 같습니다. 내보낼 때 화면을 첨부하도록 설정하셨나요?",cannotRestoreFromImage:"이미지 파일에서 화면을 복구할 수 없었습니다",invalidSceneUrl:"제공된 URL에서 화면을 가져오는데 실패했습니다. 주소가 잘못되거나, 유효한 Excalidraw JSON 데이터를 포함하고 있지 않은 것일 수 있습니다.",resetLibrary:"당신의 라이브러리를 초기화 합니다. 계속하시겠습니까?",removeItemsFromsLibrary:"{{count}}개의 아이템을 라이브러리에서 삭제하시겠습니까?",invalidEncryptionKey:"암호화 키는 반드시 22글자여야 합니다. 실시간 협업이 비활성화됩니다.",collabOfflineWarning:`인터넷에 연결되어 있지 않습니다.
변경 사항들이 저장되지 않습니다!`},WSe={unsupportedFileType:"지원하지 않는 파일 형식 입니다.",imageInsertError:"이미지를 삽입할 수 없습니다. 나중에 다시 시도 하십시오",fileTooBig:"파일이 너무 큽니다. 최대 크기는 {{maxSize}} 입니다.",svgImageInsertError:"SVG 이미지를 삽입하지 못했습니다. SVG 문법이 유효하지 않은 것 같습니다.",failedToFetchImage:"이미지를 가져오는데 실패했습니다.",invalidSVGString:"유효하지 않은 SVG입니다.",cannotResolveCollabServer:"협업 서버에 접속하는데 실패했습니다. 페이지를 새로고침하고 다시 시도해보세요.",importLibraryError:"라이브러리를 불러오지 못했습니다.",collabSaveFailed:"데이터베이스에 저장하지 못했습니다. 문제가 계속 된다면, 작업 내용을 잃지 않도록 로컬 저장소에 저장해 주세요.",collabSaveFailed_sizeExceeded:"데이터베이스에 저장하지 못했습니다. 캔버스가 너무 큰 거 같습니다. 문제가 계속 된다면, 작업 내용을 잃지 않도록 로컬 저장소에 저장해 주세요.",imageToolNotSupported:"이미지가 비활성화 되었습니다.",brave_measure_text_error:{line1:"귀하께서는 <bold>강력한 지문 차단 설정</bold>이 활성화된 Brave browser를 사용하고 계신 것 같습니다.",line2:"이 기능으로 인해 화이트보드의 <bold>텍스트 요소들</bold>이 손상될 수 있습니다.",line3:"저희는 해당 기능을 비활성화하는 것을 강력히 권장 드립니다. 비활성화 방법에 대해서는 <link>이 게시글</link>을 참고해주세요.",line4:"만약 이 설정을 껐음에도 텍스트 요소들이 올바르게 표시되지 않는다면, 저희 Github에 <issueLink>이슈</issueLink>를 올려주시거나 <discordLink>Discord</discordLink>로 알려주세요."},libraryElementTypeError:{embeddable:"임베드 요소들은 라이브러리에 추가할 수 없습니다.",iframe:"IFrame 요소들은 라이브러리에 추가할 수 없습니다.",image:"라이브러리에 이미지 삽입 기능은 곧 지원될 예정입니다!"},asyncPasteFailedOnRead:"붙여넣는데 실패했습니다. (시스템 클립보드를 읽는데 실패했습니다)",asyncPasteFailedOnParse:"붙여넣는데 실패했습니다.",copyToSystemClipboardFailed:"클립보드로 복사하는데 실패했습니다."},qSe={selection:"선택",image:"이미지 삽입",rectangle:"사각형",diamond:"다이아몬드",ellipse:"타원",arrow:"화살표",line:"선",freedraw:"그리기",text:"텍스트",library:"라이브러리",lock:"선택된 도구 유지하기",penMode:"펜 모드 - 터치 방지",link:"선택한 도형에 대해서 링크를 추가/업데이트",eraser:"지우개",frame:"프레임 도구",magicframe:"와이어프레임을 코드로",embeddable:"웹 임베드",laser:"레이저 포인터",hand:"손 (패닝 도구)",extraTools:"다른 도구",mermaidToExcalidraw:"Mermaid에서 불러오기",magicSettings:"AI 설정"},zSe={canvasActions:"캔버스 동작",selectedShapeActions:"선택된 모양 동작",shapes:"모양"},ZSe={canvasPanning:"캔버스를 옮기려면 마우스 휠이나 스페이스바를 누르고 드래그하거나, 손 도구를 사용하기",linearElement:"여러 점을 연결하려면 클릭하고, 직선을 그리려면 바로 드래그하세요.",freeDraw:"클릭 후 드래그하세요. 완료되면 놓으세요.",text:"팁: 선택 툴로 아무 곳이나 더블 클릭해 텍스트를 추가할 수도 있습니다.",embeddable:"클릭 및 드래그하여 웹사이트 임베드 만들기",text_selected:"더블 클릭 또는 ENTER를 눌러서 텍스트 수정",text_editing:"ESC나 CtrlOrCmd+ENTER를 눌러서 수정을 종료하기",linearElementMulti:"마지막 지점을 클릭하거나 Esc 또는 Enter 키를 눌러 완료하세요.",lockAngle:"SHIFT 키를 누르면서 회전하면 각도를 제한할 수 있습니다.",resize:`SHIFT 키를 누르면서 조정하면 크기의 비율이 제한됩니다.
ALT를 누르면서 조정하면 중앙을 기준으로 크기를 조정합니다.`,resizeImage:`SHIFT를 눌러서 자유롭게 크기를 변경하거나,
ALT를 눌러서 중앙을 고정하고 크기를 변경하기`,rotate:"SHIFT 키를 누르면서 회전하면 각도를 제한할 수 있습니다.",lineEditor_info:"꼭짓점을 수정하려면 CtrlOrCmd 키를 누르고 더블 클릭을 하거나 CtrlOrCmd + Enter를 누르세요.",lineEditor_pointSelected:`Delete 키로 꼭짓점을 제거하거나,
CtrlOrCmd+D 로 복제하거나, 드래그 해서 이동시키기`,lineEditor_nothingSelected:`꼭짓점을 선택해서 수정하거나 (SHIFT를 눌러서 여러개 선택),
Alt를 누르고 클릭해서 새로운 꼭짓점 추가하기`,placeImage:"클릭해서 이미지를 배치하거나, 클릭하고 드래그해서 사이즈를 조정하기",publishLibrary:"당신만의 라이브러리를 게시하기",bindTextToElement:"Enter 키를 눌러서 텍스트 추가하기",deepBoxSelect:"CtrlOrCmd 키를 눌러서 깊게 선택하고, 드래그하지 않도록 하기",eraserRevert:"Alt를 눌러서 삭제하도록 지정된 요소를 되돌리기",firefox_clipboard_write:'이 기능은 설정에서 "dom.events.asyncClipboard.clipboardItem" 플래그를 "true"로 설정하여 활성화할 수 있습니다. Firefox에서 브라우저 플래그를 수정하려면, "about:config" 페이지에 접속하세요.',disableSnapping:"CtrlOrCmd 키를 눌러서 다른 요소와의 정렬 무시하기"},VSe={cannotShowPreview:"미리보기를 볼 수 없습니다",canvasTooBig:"캔버스가 너무 큽니다.",canvasTooBigTip:"팁: 멀리 있는 요소들을 좀 더 가까이로 붙여 보세요."},jSe={headingMain:"오류가 발생했습니다. <button>페이지 새로고침</button>",clearCanvasMessage:"새로고침으로 해결되지 않을 경우, <button>캔버스 비우기</button>",clearCanvasCaveat:" 작업 내용을 잃게 됩니다 ",trackedToSentry:"오류 {{eventId}} 가 시스템에서 발견되었습니다.",openIssueMessage:"저희는 화면 정보를 오류에 포함하지 않도록 매우 주의하고 있습니다. 혹시 화면에 민감한 내용이 없다면 이곳에 업로드를 고려해주세요.<button>버그 트래커</button> 아래 정보를 GitHub 이슈에 복사 및 붙여넣기해 주세요.",sceneContent:"화면 내용:"},XSe={desc_intro:"현재 화면에 공동 작업자를 초대해 협업할 수 있습니다.",desc_privacy:"안심하세요, 세션은 종단 간 암호화를 사용하므로 당신의 작업은 비공개로 유지되며 서버조차도 작업 내용을 알 수 없습니다.",button_startSession:"세션 시작",button_stopSession:"세션 중단",desc_inProgressIntro:"실시간 협업 세션이 진행 중입니다.",desc_shareLink:"공동 작업자에게 이 링크를 공유하세요.",desc_exitSession:"세션을 중단하면 연결은 끊어지나 작업을 이어갈 수 있습니다. 이 작업은 다른 작업자에게 영향을 미치지 않으며 각자의 공동 작업은 계속 유지됩니다.",shareTitle:"Excalidraw의 실시간 협업 세션에 참가하기"},$Se={title:"오류"},ALe={disk_title:"디스크에 저장",disk_details:"나중에 다시 불러올 수 있도록 화면 데이터를 내보냅니다.",disk_button:"파일로 저장",link_title:"공유 가능한 링크 생성",link_details:"읽기 전용 링크로 내보냅니다.",link_button:"링크로 내보내기",excalidrawplus_description:"화면을 당신의 Excalidraw+ 작업 공간으로 저장합니다.",excalidrawplus_button:"내보내기",excalidrawplus_exportError:"지금은 Excalidraw+로 내보낼 수 없습니다..."},eLe={blog:"블로그 읽어보기",click:"클릭",deepSelect:"깊게 선택",deepBoxSelect:"영역을 깊게 선택하고, 드래그하지 않도록 하기",curvedArrow:"곡선 화살표",curvedLine:"곡선",documentation:"설명서",doubleClick:"더블 클릭",drag:"드래그",editor:"에디터",editLineArrowPoints:"직선 / 화살표 꼭짓점 수정",editText:"텍스트 수정 / 라벨 추가",github:"문제 제보하기",howto:"가이드 참고하기",or:"또는",preventBinding:"화살표가 붙지 않게 하기",tools:"도구",shortcuts:"키보드 단축키",textFinish:"편집 완료 (텍스트 에디터)",textNewLine:"줄바꿈(텍스트 에디터)",title:"도움말",view:"보기",zoomToFit:"모든 요소가 보이도록 확대/축소",zoomToSelection:"선택 영역으로 확대/축소",toggleElementLock:"선택한 항목을 잠금/잠금 해제",movePageUpDown:"페이지 움직이기 위/아래",movePageLeftRight:"페이지 움직이기 좌/우"},tLe={title:"캔버스 지우기"},rLe={title:"라이브러리 게시하기",itemName:"아이템 이름",authorName:"저자명",githubUsername:"깃허브 사용자이름",twitterUsername:"트위터 사용자이름",libraryName:"라이브러리 이름",libraryDesc:"라이브러리 설명",website:"웹사이트",placeholder:{authorName:"이름 또는 사용자명",libraryName:"당신의 라이브러리 이름",libraryDesc:"사람들에게 라이브러리의 용도를 알기 쉽게 설명해주세요",githubHandle:"GitHub 사용자명 (선택), 제출한 뒤에도 심사를 위해서 라이브러리를 수정할 때 사용됩니다",twitterHandle:"Twitter 사용자명 (선택), Twitter를 통해서 홍보할 때 제작자를 밝히기 위해 사용됩니다",website:"개인 웹사이트나 다른 어딘가의 링크 (선택)"},errors:{required:"필수사항",website:"유효한 URL을 입력하세요"},noteDescription:"당신의 라이브러리를 제출하여 <link>공개 라이브러리 저장소</link>에서 다른 사람들의 그림에 사용할 수 있도록 하세요.",noteGuidelines:"라이브러리는 먼저 수동으로 승인되어야 합니다. 제출하기 전에 <link>가이드라인</link>을 먼저 읽어보세요. 의견을 공유하거나 변경사항을 만들기 위해선 GitHub 계정이 필요하지만, 반드시 필요하진 않습니다.",noteLicense:"제출함으로써, 당신은 라이브러리가 <link>MIT 라이선스 </link>하에 배포됨을, 즉 아무나 제약 없이 사용할 수 있음에 동의합니다.",noteItems:"각각의 라이브러리는 분류할 수 있도록 고유한 이름을 가져야 합니다. 다음의 라이브러리 항목이 포함됩니다:",atleastOneLibItem:"최소한 하나의 라이브러리를 선택해주세요",republishWarning:"참고: 선택된 항목의 일부는 이미 제출/게시되었습니다. 기존의 라이브러리나 제출물을 업데이트하는 경우에만 제출하세요."},iLe={title:"라이브러리 제출됨",content:"{{authorName}}님 감사합니다. 당신의 라이브러리가 심사를 위해 제출되었습니다. 진행 상황을<link>여기에서 확인하실 수 있습니다.</link>"},uLe={resetLibrary:"라이브러리 리셋",removeItemsFromLib:"선택한 항목을 라이브러리에서 제거"},aLe={header:"이미지 내보내기",label:{withBackground:"배경",onlySelected:"선택한 항목만",darkMode:"다크 모드",embedScene:"화면을 담기",scale:"크기",padding:"여백"},tooltip:{embedScene:"화면 정보가 내보내는 PNG/SVG 파일에 저장되어 이후에 파일에서 화면을 복구할 수 있습니다. 파일 크기가 증가합니다."},title:{exportToPng:"PNG로 내보내기",exportToSvg:"SVG로 내보내기",copyPngToClipboard:"클립보드로 PNG 복사"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"클립보드로 복사"}},nLe={tooltip:"그림은 종단 간 암호화되므로 Excalidraw의 서버는 절대로 내용을 알 수 없습니다.",link:"Excalidraw의 종단 간 암호화에 대한 블로그 포스트"},oLe={angle:"각도",element:"요소",elements:"요소",height:"높이",scene:"화면",selected:"선택됨",storage:"저장공간",title:"덕후들을 위한 통계",total:"합계",version:"버전",versionCopy:"복사하려면 클릭",versionNotAvailable:"해당 버전 사용 불가능",width:"너비"},sLe={addedToLibrary:"라이브러리에 추가되었습니다",copyStyles:"스타일 복사.",copyToClipboard:"클립보드로 복사.",copyToClipboardAsPng:`{{exportSelection}}를 클립보드에 PNG로 복사했습니다
({{exportColorScheme}})`,fileSaved:"파일이 저장되었습니다.",fileSavedToFilename:"{filename} 로 저장되었습니다",canvas:"캔버스",selection:"선택한 요소",pasteAsSingleElement:"단일 요소로 붙여넣거나, 기존 텍스트 에디터에 붙여넣으려면 {{shortcut}} 을 사용하세요.",unableToEmbed:"이 URL의 임베딩이 허용되지 않았습니다. GitHub에 이슈를 남겨서 이 URL이 화이트리스트에 등재될 수 있도록 요청하세요",unrecognizedLinkFormat:'임베딩하려는 링크의 형식이 잘못된 것 같습니다. 원본 사이트에서 제공하는 "임베딩" 텍스트를 그대로 붙여 넣어 주세요'},lLe={transparent:"투명",black:"블랙",white:"화이트",red:"레드",pink:"핑크",grape:"그레이프",violet:"바이올렛",gray:"그레이",blue:"블루",cyan:"시안",teal:"틸",green:"그린",yellow:"옐로우",orange:"오렌지",bronze:"브론즈"},gLe={app:{center_heading:"모든 데이터는 브라우저에 안전하게 저장됩니다.",center_heading_plus:"대신 Excalidraw+로 이동하시겠습니까?",menuHint:"내보내기, 설정, 언어, ..."},defaults:{menuHint:"내보내기, 설정, 등등...",center_heading:"간단하게 만드는 다이어그램.",toolbarHint:"도구를 선택하고, 그리세요!",helpHint:"단축키 & 도움말"}},cLe={mostUsedCustomColors:"가장 많이 사용된 색상들",colors:"색상",shades:"색조",hexCode:"Hex 코드",noShades:"사용할 수 있는 색조가 없음"},CLe={action:{exportToImage:{title:"이미지로 내보내기",button:"이미지로 내보내기",description:"나중에 다시 불러올 수 있도록 화면 데이터를 이미지로 내보냅니다."},saveToDisk:{title:"디스크에 저장",button:"디스크에 저장",description:"나중에 다시 불러올 수 있도록 화면 데이터를 내보냅니다."},excalidrawPlus:{title:"Excalidraw+",button:"Excalidraw+로 내보내기",description:"화면을 당신의 Excalidraw+ 작업 공간으로 저장합니다."}},modal:{loadFromFile:{title:"파일에서 불러오기",button:"파일에서 불러오기",description:"파일을 불러오면 <bold>현재 작성된 데이터를 덮어쓰게 됩니다</bold>.<br></br>다음 옵션 중 하나를 선택하여 작업물을 백업해 둘 수 있습니다."},shareableLink:{title:"주소에서 불러오기",button:"컨텐츠를 덮어쓰기",description:"외부 작업물을 불러오면 <bold>현재 작성된 데이터를 덮어쓰게 됩니다</bold>.<br></br>다음 옵션 중 하나를 선택하여 작업물을 백업해 둘 수 있습니다."}}},BLe={title:"Mermaid에서 불러오기",button:"삽입하기",description:"지금은 <flowchartLink>순서도</flowchartLink>,<sequenceLink> 시퀀스</sequenceLink>, <classLink>클래스 </classLink>다이어그램만 지원합니다. 다른 형식들은 Excalidraw에서는 이미지로 표시됩니다.",syntax:"Mermaid 구문",preview:"미리보기"},Ocr={labels:JSe,library:OSe,buttons:PSe,alerts:_Se,errors:WSe,toolBar:qSe,headings:zSe,hints:ZSe,canvasError:VSe,errorSplash:jSe,roomDialog:XSe,errorDialog:$Se,exportDialog:ALe,helpDialog:eLe,clearCanvasDialog:tLe,publishDialog:rLe,publishSuccessDialog:iLe,confirmDialog:uLe,imageExportDialog:aLe,encrypted:nLe,stats:oLe,toast:sLe,colors:lLe,welcomeScreen:gLe,colorPicker:cLe,overwriteConfirm:CLe,mermaid:BLe}});var PLe={};Dt(PLe,{alerts:()=>pLe,buttons:()=>QLe,canvasError:()=>wLe,clearCanvasDialog:()=>SLe,colorPicker:()=>KLe,colors:()=>YLe,confirmDialog:()=>NLe,default:()=>Pcr,encrypted:()=>ULe,errorDialog:()=>kLe,errorSplash:()=>bLe,errors:()=>fLe,exportDialog:()=>FLe,headings:()=>DLe,helpDialog:()=>xLe,hints:()=>yLe,imageExportDialog:()=>GLe,labels:()=>ILe,library:()=>hLe,mermaid:()=>OLe,overwriteConfirm:()=>JLe,publishDialog:()=>LLe,publishSuccessDialog:()=>RLe,roomDialog:()=>vLe,stats:()=>MLe,toast:()=>TLe,toolBar:()=>mLe,welcomeScreen:()=>HLe});var ILe,hLe,QLe,pLe,fLe,mLe,DLe,yLe,wLe,bLe,vLe,kLe,FLe,xLe,SLe,LLe,RLe,NLe,GLe,ULe,MLe,TLe,YLe,HLe,KLe,JLe,OLe,Pcr;var _Le=_(()=>{zt();ILe={paste:"دانانەوە",pasteAsPlaintext:"دایبنێ وەک دەقی سادە",pasteCharts:"دانانەوەی خشتەکان",selectAll:"دیاریکردنی هەموو",multiSelect:"زیادکردنی بۆ دیاریکراوەکان",moveCanvas:"تابلۆ بجوڵێنە",cut:"بڕین",copy:"لەبەرگرتنەوە",copyAsPng:"PNGلەبەرگرتنەوە بۆ تەختەنووس وەک",copyAsSvg:"SVGلەبەرگرتنەوە بۆ تەختەنووس وەک",copyText:"لەبەرگرتنەوە بۆ تەختەنووس وەک نوسین",copySource:"",convertToCode:"",bringForward:"بهێنە پێشتر",sendToBack:"بنێرە دواوە",bringToFront:"بهێنە پێشەوە",sendBackward:"بنێرە دواتر",delete:"سڕینەوە",copyStyles:"لەبەرگرتنەوەی ستایل",pasteStyles:"دانانەوەی ستایل",stroke:"هێڵکار",background:"پاشبنەما",fill:"پڕکردنەوە",strokeWidth:"پانی هێڵکاری",strokeStyle:"ستایلی هێڵکاری",strokeStyle_solid:"سادە",strokeStyle_dashed:"پچڕ پچڕ",strokeStyle_dotted:"خاڵدار",sloppiness:"لێژی",opacity:"ڕوونی",textAlign:"ڕێکخستنی دەق",edges:"لێوارەکان",sharp:"تیژ",round:"چەماوە",arrowheads:"سەرەتیر",arrowhead_none:"هیچیان",arrowhead_arrow:"تیر",arrowhead_bar:"هێڵ",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"سێگۆشە",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"قەبارەی فۆنت",fontFamily:"خێزانی فۆنت",addWatermark:'زیادبکە "Made with Excalidraw"',handDrawn:"دەست کێشراو",normal:"ئاسایی",code:"کۆد",small:"بچووک",medium:"ناوەند",large:"گه‌وره‌",veryLarge:"زۆر گه‌وره‌",solid:"سادە",hachure:"هاچور",zigzag:"زیگزاگ",crossHatch:"کرۆس هاتچ",thin:"تەنک",bold:"تۆخ",left:"چەپ",center:"ناوه‌ند",right:"ڕاست",extraBold:"زۆر تۆخ",architect:"تەلارساز",artist:"هونەرمەند",cartoonist:"کارتۆنی",fileTitle:"ناوی فایل",colorPicker:"ڕەنگ هەڵگر",canvasColors:"بەکارهاتووە لەسەر تابلۆ",canvasBackground:"پاشبنەمای تابلۆ",drawingCanvas:"کێشانی تابلۆ",layers:"چینەکان",actions:"کردارەکان",language:"زمان",liveCollaboration:"هاوکاریکردنی زیندو...",duplicateSelection:"لەبەرگرتنەوە",untitled:"بێ ناونیشان",name:"ناو",yourName:"ناوەکەت",madeWithExcalidraw:"دروستکراوە بە Excalidraw",group:"دیاریکردنی گروپ",ungroup:"گروپی دیاریکراوەکان لابەرە",collaborators:"هاوکارەکان",showGrid:"گرید نیشانبدە",addToLibrary:"زیادکردن بۆ کتێبخانە",removeFromLibrary:"لابردن لە کتێبخانە",libraryLoadingMessage:"...بارکردنی کتێبخانە",libraries:"گەڕانی کتێبخانە",loadingScene:"...بارکردنی دیمەنەکە",align:"لاچەنکردن",alignTop:"لاچەنکردن بۆ سەرەوە",alignBottom:"لاچەنکردن بۆ خوارەوە",alignLeft:"لاچەنکردن بۆ چەپ",alignRight:"لاچەنکردن بۆ ڕاست",centerVertically:"بە ستونی ناوەند بکە",centerHorizontally:"بە ئاسۆی ناوەند بکە",distributeHorizontally:"بە ئاسۆی دابەشی بکە",distributeVertically:"بە ستونی دابەشی بکە",flipHorizontal:"هەڵگەڕانەوەی ئاسۆیی",flipVertical:"هەڵگەڕانەوەی ستونی",viewMode:"دۆخی بینین",share:"هاوبەشی پێکردن",showStroke:"ڕەنگهەڵگری هێڵکار نیشانبدە",showBackground:"ڕەنگهەڵگری باکگراوند نیشانبدە",toggleTheme:"دۆخی ڕوکار بگۆڕە",personalLib:"کتێبخانەی کەسی",excalidrawLib:"کتێبخانەی Excalidraw",decreaseFontSize:"کەمکردنەوەی قەبارەی فۆنت",increaseFontSize:"زایدکردنی قەبارەی فۆنت",unbindText:"دەقەکە جیابکەرەوە",bindText:"دەقەکە ببەستەوە بە کۆنتەینەرەکەوە",createContainerFromText:"دەق لە چوارچێوەیەکدا بپێچە",link:{edit:"دەستکاریکردنی بەستەر",editEmbed:"",create:"دروستکردنی بەستەر",createEmbed:"",label:"بەستەر",labelEmbed:"",empty:""},lineEditor:{edit:"دەستکاری کردنی دێڕ",exit:"دەرچوون لە دەستکاریکەری دێڕ"},elementLock:{lock:"قفڵکردن",unlock:"کردنەوە",lockAll:"قفڵکردنی هەموو",unlockAll:"کردنەوەی قفلی هەمووی"},statusPublished:"بڵاوکراوەتەوە",sidebarLock:"هێشتنەوەی شریتی لا بە کراوەیی",selectAllElementsInFrame:"هەموو توخمەکانی ناو چوارچێوەکە دیاری بکە",removeAllElementsFromFrame:"هەموو توخمەکانی ناو چوارچێوەکە لابەرە",eyeDropper:"ڕەنگێک لەسەر تابلۆکە هەڵبژێرە",textToDiagram:"",prompt:""},hLe={noItems:"هێشتا هیچ بڕگەیەک زیاد نەکراوە...",hint_emptyLibrary:"شتێک لەسەر تابلۆ هەڵبژێرە بۆ ئەوەی لێرە زیادی بکەیت، یان کتێبخانەیەک لە کۆگا گشتیەکەوە دابمەزرێنە، لە خوارەوە.",hint_emptyPrivateLibrary:"شتێک لەسەر تابلۆ هەڵبژێرە بۆ ئەوەی لێرە زیادی بکەیت."},QLe={clearReset:"تابلۆکە وەک سەرەتا لێبکەوە",exportJSON:"هەناردەکردن بۆ فایل",exportImage:"وێنە هەناردە بکە...",export:"پاشەکەوت بکە بۆ...",copyToClipboard:"له‌به‌ری بگره‌وه‌ بۆ ته‌خته‌نووس",save:"پاشەکەوت بکە بۆ فایلی بەردەست",saveAs:"پاشەکەوتکردن وەک",load:"بکەرەوە",getShareableLink:"بەستەری هاوبەشیپێکردن بەدەستبهێنە",close:"داخستن",selectLanguage:"دیاریکردنی زمان",scrollBackToContent:"گەڕاندنەوە بۆ ناوەڕۆک",zoomIn:"نزیک خستنەوە",zoomOut:"دوورخستنەوە",resetZoom:"ڕێستکردنی زووم",menu:"پێڕست",done:"تەواو",edit:"دەستکاری کردن",undo:"گه‌ڕانه‌وه‌ بۆ پێشوو",redo:"گه‌ڕانه‌وه‌ بۆ داهاتوو",resetLibrary:"ڕێکخستنەوەی کتێبخانە",createNewRoom:"ژوورێکی نوێ دروست بکە",fullScreen:"پڕ بە شاشە",darkMode:"دۆخی تاریک",lightMode:"دۆخی ڕووناک",zenMode:"دۆخی زێن",objectsSnapMode:"",exitZenMode:"بەجێهێشتنی دۆخی زێن",cancel:"هەڵوەشاندنەوە",clear:"خاوێنکردنەوە",remove:"لابردن",embed:"",publishLibrary:"بڵاوکردنەوە",submit:"پێشکەشکردن",confirm:"دوپاتکردنەوە",embeddableInteractionButton:""},pLe={clearReset:"ئەمە هەموو تابلۆکە خاوێن دەکاتەوە، دڵنیایت؟",couldNotCreateShareableLink:"نەتوانرا بەستەری هاوبەشیپێکردن دروستبکرێت",couldNotCreateShareableLinkTooBig:"نەتوانرا بەستەری هاوبەشیپێکردن دروستبکرێت: دیمەنەکە زۆر گەورەیە",couldNotLoadInvalidFile:"ناتوانرا باربکرێت، فایلەکە دروستنییە",importBackendFailed:"هاوردەکردن لە پاشکۆکە سەرکەوتوو نەبوو.",cannotExportEmptyCanvas:"ناتوانرێت تابلۆی بەتاڵ هەناردەبکرێت.",couldNotCopyToClipboard:"ناتوانرا لەبەربگیرێتەوە بۆ تەختەنوس",decryptFailed:"ناتوانرا داتاکان شیبکرێتەوە",uploadedSecurly:"بارکردنەکە بە کۆدکردنی کۆتایی بۆ کۆتایی پارێزراوە، ئەمەش واتە سێرڤەری Excalidraw و لایەنی سێیەم ناتوانن ناوەڕۆکەکە بخوێننەوە.",loadSceneOverridePrompt:"بارکردنی وێنەکێشانی دەرەکی جێگەی ناوەڕۆکی بەردەستت دەگرێتەوە. دەتەوێت بەردەوام بیت؟",collabStopOverridePrompt:`وەستاندنی دانیشتنەکە وێنەکێشانی پێشووت دەنووسێتەوە کە لە ناوخۆدا هەڵگیراوە. ئایا دڵنیایت?
(ئەگەر دەتەوێت وێنەکێشانی ناوخۆیی خۆت بهێڵیتەوە، لەبری ئەوە تەنها تابی وێبگەڕەکە دابخە).`,errorAddingToLibrary:"نەیتوانی بڕگە زیاد بکات بۆ کتێبخانە",errorRemovingFromLibrary:"نەیتوانی بڕگە لە کتێبخانە بسڕێتەوە",confirmAddLibrary:"ئەمە {{numShapes}} شێوە(ەکان) زیاد دەکات بۆ کتێبخانەکەت. ئایا دڵنیایت?",imageDoesNotContainScene:"وادیارە ئەم وێنەیە هیچ داتایەکی دیمەنی تێدا نییە. ئایا دیمەنی چەسپاندنت لە کاتی هەناردەدا چالاک کردووە؟",cannotRestoreFromImage:"ناتوانرێت دیمەنەکە بگەڕێندرێتەوە لەم فایلە وێنەیە",invalidSceneUrl:'ناتوانێت دیمەنەکە هاوردە بکات لە URL ی دابینکراو. یان نادروستە، یان داتای "ئێکسکالیدراو" JSON ی دروستی تێدا نییە.',resetLibrary:"ئەمە کتێبخانەکەت خاوێن دەکاتەوە. ئایا دڵنیایت?",removeItemsFromsLibrary:"سڕینەوەی {{count}} ئایتم(ەکان) لە کتێبخانە؟",invalidEncryptionKey:"کلیلی رەمزاندن دەبێت لە 22 پیت بێت. هاوکاری ڕاستەوخۆ لە کارخراوە.",collabOfflineWarning:`هێڵی ئینتەرنێت بەردەست نییە.
گۆڕانکارییەکانت سەیڤ ناکرێن!`},fLe={unsupportedFileType:"جۆری فایلی پشتگیری نەکراو.",imageInsertError:"نەیتوانی وێنە داخڵ بکات. دواتر هەوڵ بدە",fileTooBig:"فایلەکە زۆر گەورەیە. زۆرترین قەبارەی ڕێگەپێدراو {{maxSize}}}.",svgImageInsertError:"نەیتوانی وێنەی SVG داخڵ بکات. نیشانەی ئێس ڤی جی نادروست دیارە.",failedToFetchImage:"",invalidSVGString:"ئێس ڤی جی نادروستە.",cannotResolveCollabServer:"ناتوانێت پەیوەندی بکات بە سێرڤەری کۆلاب. تکایە لاپەڕەکە دووبارە باربکەوە و دووبارە هەوڵ بدەوە.",importLibraryError:"نەیتوانی کتێبخانە بار بکات",collabSaveFailed:"نەتوانرا لە بنکەدراوەی ڕاژەدا پاشەکەوت بکرێت. ئەگەر کێشەکان بەردەوام بوون، پێویستە فایلەکەت لە ناوخۆدا هەڵبگریت بۆ ئەوەی دڵنیا بیت کە کارەکانت لەدەست نادەیت.",collabSaveFailed_sizeExceeded:"نەتوانرا لە بنکەدراوەی ڕاژەدا پاشەکەوت بکرێت، پێدەچێت تابلۆکە زۆر گەورە بێت. پێویستە فایلەکە لە ناوخۆدا هەڵبگریت بۆ ئەوەی دڵنیا بیت کە کارەکانت لەدەست نادەیت.",imageToolNotSupported:"",brave_measure_text_error:{line1:"وادیارە وێبگەڕی Brave بەکاردەهێنیت و ڕێکخستنی <bold>Aggressively Block Fingerprinting</bold> ـت چالاک کردووە.",line2:"ئەمە ئەکرێ ببێتە هۆی تێکدانی <bold>دانە دەقییەکان</bold> لە وێنەکێشانەکانتدا.",line3:"ئێمە بە توندی پێشنیاری لەکارخستنی ئەم ڕێکخستنە دەکەین. بۆ لە کارخستنی دەتوانیت بەم <link>هەنگاوانە</link>دا بڕۆیت.",line4:"ئەگەر لەکارخستنی ئەم ڕێکخستنە نەبوە هۆی چاککردنەوەی پێشاندانی دانە دەقییەکان، تکایە <issueLink>کێشە</issueLink>یەک بکەرەوە لەسەر گیتهەبەکەمان، یان بۆمان بنوسە لەسەر <discordLink>دیسکۆرد</discordLink>"},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},mLe={selection:"دەستنیشانکردن",image:"داخڵکردنی وێنە",rectangle:"لاکێشە",diamond:"ئەڵماس",ellipse:"هێلکەیی",arrow:"تیر",line:"هێڵ",freedraw:"کێشان",text:"دەق",library:"کتێبخانە",lock:"ئامێرە دیاریکراوەکان چالاک بهێڵەوە دوای وێنەکێشان",penMode:"شێوازی قەڵەم - دەست لێدان ڕابگرە",link:"زیادکردن/ نوێکردنەوەی لینک بۆ شێوەی دیاریکراو",eraser:"سڕەر",frame:"ئامرازی چوارچێوە",magicframe:"",embeddable:"",laser:"",hand:"دەست (ئامرازی پانکردن)",extraTools:"ئامرازی زیاتر",mermaidToExcalidraw:"",magicSettings:""},DLe={canvasActions:"کردارەکانی تابلۆ",selectedShapeActions:"کردارەکانی شێوەی دەستنیشانکراو",shapes:"شێوەکان"},yLe={canvasPanning:"بۆ جوڵاندنی تابلۆ، ویلی ماوسەکەت یان دوگمەی سپەیس بگرە لەکاتی ڕاکێشاندە، یانیش ئامرازی دەستەکە بەکاربهێنە",linearElement:"کرتە بکە بۆ دەستپێکردنی چەند خاڵێک، ڕایبکێشە بۆ یەک هێڵ",freeDraw:"کرتە بکە و ڕایبکێشە، کاتێک تەواو بوویت دەست هەڵگرە",text:"زانیاری: هەروەها دەتوانیت دەق زیادبکەیت بە دوو کرتەکردن لە هەر شوێنێک لەگەڵ ئامڕازی دەستنیشانکردن",embeddable:"",text_selected:"دووجار کلیک بکە یان ENTER بکە بۆ دەستکاریکردنی دەق",text_editing:"بۆ تەواوکردنی دەستکاریکردنەکە Escape یان Ctrl/Cmd+ENTER بکە",linearElementMulti:"کلیک لەسەر کۆتا خاڵ بکە یان Escape یان Enter بکە بۆ تەواوکردن",lockAngle:"دەتوانیت گۆشە سنووردار بکەیت بە ڕاگرتنی SHIFT",resize:`دەتوانیت ڕێژەکان سنووردار بکەیت بە ڕاگرتنی SHIFT لەکاتی گۆڕینی قەبارەدا،
ALT ڕابگرە بۆ گۆڕینی قەبارە لە ناوەندەوە`,resizeImage:`دەتوانیت بە ئازادی قەبارە بگۆڕیت بە ڕاگرتنی SHIFT،
ALT ڕابگرە بۆ گۆڕینی قەبارە لە ناوەندەوە`,rotate:"دەتوانیت گۆشەکان سنووردار بکەیت بە ڕاگرتنی SHIFT لەکاتی سوڕانەوەدا",lineEditor_info:"یان Ctrl یان Cmd بگرە و دوانە کلیک بکە یانیش پەنجە بنێ بە Ctrl یان Cmd + ئینتەر بۆ دەستکاریکردنی خاڵەکان",lineEditor_pointSelected:"بۆ لابردنی خاڵەکان Delete دابگرە، Ctrl Cmd+D بکە بۆ لەبەرگرتنەوە، یان بۆ جووڵە ڕاکێشان بکە",lineEditor_nothingSelected:`خاڵێک هەڵبژێرە بۆ دەستکاریکردن (SHIFT ڕابگرە بۆ هەڵبژاردنی چەندین)،
یان Alt ڕابگرە و کلیک بکە بۆ زیادکردنی خاڵە نوێیەکان`,placeImage:"کلیک بکە بۆ دانانی وێنەکە، یان کلیک بکە و ڕایبکێشە بۆ ئەوەی قەبارەکەی بە دەستی دابنێیت",publishLibrary:"کتێبخانەی تایبەت بە خۆت بڵاوبکەرەوە",bindTextToElement:"بۆ زیادکردنی دەق enter بکە",deepBoxSelect:"CtrlOrCmd ڕابگرە بۆ هەڵبژاردنی قووڵ، و بۆ ڕێگریکردن لە ڕاکێشان",eraserRevert:"بۆ گەڕاندنەوەی ئەو توخمانەی کە بۆ سڕینەوە نیشانە کراون، Alt ڕابگرە",firefox_clipboard_write:'ئەم تایبەتمەندییە بە ئەگەرێکی زۆرەوە دەتوانرێت چالاک بکرێت بە ڕێکخستنی ئاڵای "dom.events.asyncClipboard.clipboardItem" بۆ "true". بۆ گۆڕینی ئاڵاکانی وێبگەڕ لە فایەرفۆکسدا، سەردانی لاپەڕەی "about:config" بکە.',disableSnapping:""},wLe={cannotShowPreview:"ناتوانرێ پێشبینین پیشان بدرێت",canvasTooBig:"تابلۆکە لەوانەیە زۆر گەورەبێت.",canvasTooBigTip:"زانیاری: هەوڵ بدە دوورترین توخمەکان کەمێک لە یەکتر نزیک بکەوە."},bLe={headingMain:"تووشی هەڵەیەک بوو. هەوڵ بدە <button>دووبارە بارکردنی لاپەڕەکە.</button>",clearCanvasMessage:"ئەگەر دووبارە بارکردنەوە کار ناکات، هەوڵبدە <button>خاوێنکردنەوەی تابلۆکە.</button>",clearCanvasCaveat:" ئەمە دەبێتە هۆی لەدەستدانی ئەوەی کە کردوتە ",trackedToSentry:"هەڵەکە لەگەڵ ناسێنەری {{eventId}} لەسەر سیستەمەکەمان بەدواداچوونی بۆ کرا.",openIssueMessage:"ئێمە زۆر وریا بووین کە زانیارییەکانی دیمەنەکەت لەسەر هەڵەکە نەخەینەڕوو. ئەگەر دیمەنەکەت تایبەت نییە، تکایە بیر لە بەدواداچوون بکەنەوە بۆ ئێمە <button>شوێنپێهەڵگری هەڵە.</button> تکایە ئەم زانیارییانەی خوارەوە کۆپی بکە و لە بەشی کێشەکانی Github دایبنێ.",sceneContent:"پێکهاتەی ناو دیمەنەکە:"},vLe={desc_intro:"دەتوانیت خەڵک بانگهێشت بکەیت بۆ دیمەنی ئێستات بۆ هاوکاری کردن لەگەڵت.",desc_privacy:"نیگەران مەبە، دانیشتنەکە کۆدکردنی کۆتایی بە کۆتایی بەکاردەهێنێت، بۆیە هەرچییەک بکێشیت بە تایبەتی دەمێنێتەوە. تەنانەت سێرڤەرەکەمان ناتوانێت بزانێت کە تۆ چیت دروستکردووە.",button_startSession:"دەستپێکردنی دانیشتن",button_stopSession:"وەستاندنی دانیشتن",desc_inProgressIntro:"دانیشتنی هاوکاری ڕاستەوخۆ ئێستا لە ئارادایە.",desc_shareLink:"هاوبەشکردنی ئەم لینکە لەگەڵ هەر کەسێک کە دەتەوێت هاوکاری بکەیت لەگەڵ:",desc_exitSession:"وەستاندنی دانیشتنەکە پەیوەندیت لەگەڵ ژوورەکە دەپچڕێنێت، بەڵام تۆ دەتوانیت بەردەوام بیت لە کارکردن لەگەڵ دیمەنەکە، لە ناوخۆدا. تێبینی بکە کە ئەمە کاریگەری لەسەر کەسانی تر نابێت، وە ئەوان هێشتا دەتوانن هاوکاری بکەن لەسەر وەشانەکەیان.",shareTitle:"بەشداری بکە لە دانیشتنی هاریکاری ڕاستەوخۆ لە ئێکسکالیدراو"},kLe={title:"هه‌ڵه‌ ڕوویدا"},FLe={disk_title:"پاشەکەوت بکە لە دیسک",disk_details:"هەناردەکردنی داتای دیمەنەکە بۆ فایلێک کە دواتر دەتوانیت لێی هاوردە بکەیت.",disk_button:"پاشەکەوت بکە بۆ فایل",link_title:"بەستەری هاوبەشیپێکردن",link_details:"ناردن وەک بەستەری تەنها-خوێندنەوە.",link_button:"هەناردەکردن بۆ بەستەر",excalidrawplus_description:"دیمەنەکە لە شوێنی کارکردنی Excalidraw+ هەڵبگرە.",excalidrawplus_button:"هەناردەکردن",excalidrawplus_exportError:"لەم ساتەدا نەتوانرا هەناردە بکرێت بۆ Excalidrow+..."},xLe={blog:"بلۆگەکەمان بخوێنەوە",click:"گرتە",deepSelect:"دەستنیشانکردنی قوڵ",deepBoxSelect:"لەناو بۆکسەکەدا بە قووڵی هەڵبژێرە، و ڕێگری لە ڕاکێشان بکە",curvedArrow:"تیری نوشتاوە",curvedLine:"هێڵی نوشتاوە",documentation:"دۆکیومێنتەیشن",doubleClick:"دوو گرتە",drag:"راکێشان",editor:"دەستکاریکەر",editLineArrowPoints:"دەستکاری خاڵەکانی هێڵ/تیر بکە",editText:"دەستکاری دەق بکە / لەیبڵێک زیاد بکە",github:"کێشەیەکت دۆزیەوە؟ پێشکەشکردن",howto:"شوێن ڕینماییەکانمان بکەوە",or:"یان",preventBinding:"ڕێگریبکە لە نوشتاناوەی تیر",tools:"ئامرازەکان",shortcuts:"کورتکراوەکانی تەختەکلیل",textFinish:"تەواوکردنی دەستکاریکردن (دەستکاریکەری دەق)",textNewLine:"زیادکردنی دێڕی نوێ (دەستکاریکەری دەق)",title:"یارماتی",view:"دیمەن",zoomToFit:"زووم بکە بۆ ئەوەی لەگەڵ هەموو توخمەکاندا بگونجێت",zoomToSelection:"زووم بکە بۆ دەستنیشانکراوەکان",toggleElementLock:"قفڵ/کردنەوەی دەستنیشانکراوەکان",movePageUpDown:"لاپەڕەکە بجوڵێنە بۆ سەرەوە/خوارەوە",movePageLeftRight:"لاپەڕەکە بجوڵێنە بۆ چەپ/ڕاست"},SLe={title:"تابلۆکە خاوێن بکەرەوە"},LLe={title:"پێشکەشکردنی کتێبخانە",itemName:"ناوی بڕگە",authorName:"ناوی نوسەر",githubUsername:"ناوی بەکارهێنەری Github",twitterUsername:"ناوی بەکارهێنەری Twitter",libraryName:"ناوی کتێبخانە",libraryDesc:"وەسفی کتێبخانە",website:"ماڵپەڕ",placeholder:{authorName:"ناوەکات یاخود ناوی بەکارهێنەر",libraryName:"ناوی کتێبخانەکەت",libraryDesc:"وەسفی کتێبخانەکەت بۆ یارمەتیدانی خەڵک بۆ تێگەیشتن لە بەکارهێنانی",githubHandle:"ناوی GitHub (ئارەزوومەندانە)، بۆیە دەتوانیت دەستکاری کتێبخانەکە بکەیت کاتێک پێشکەش دەکرێت بۆ پێداچوونەوە",twitterHandle:"ناوی بەکارهێنەری تویتەر (ئارەزوومەندانە)، بۆیە بزانین لەکاتی بانگەشەکردن لە ڕێگەی تویتەرەوە کریدت بۆ کێ بکەین",website:"لینکی ماڵپەڕی تایبەتی خۆت یان شوێنێکی تر (ئارەزومەندانە)"},errors:{required:"داواکراوە",website:"URLێکی دروست تێبنووسە"},noteDescription:"کتێبخانەکەت بنێرە بۆ ئەوەی بخرێتە ناو <link>کۆگای کتێبخانەی گشتی</link>بۆ ئەوەی کەسانی تر لە وێنەکێشانەکانیاندا بەکاری بهێنن.",noteGuidelines:"کتێبخانەکە پێویستە سەرەتا بە دەست پەسەند بکرێت. تکایە بفەرمو بە خوێندنەوەی <link>ڕێنماییەکان</link> پێش پێشکەشکردن. پێویستت بە ئەژمێری GitHub دەبێت بۆ پەیوەندیکردن و گۆڕانکاری ئەگەر داوای لێکرا، بەڵام بە توندی پێویست نییە.",noteLicense:"بە پێشکەشکردن، تۆ ڕەزامەندیت لەسەر بڵاوکردنەوەی کتێبخانەکە بەپێی <link>مۆڵەتی MIT، </link>کە بە کورتی مانای ئەوەیە کە هەرکەسێک دەتوانێت بە بێ سنوور بەکاری بهێنێت",noteItems:"هەر شتێکی کتێبخانە دەبێت ناوی تایبەتی خۆی هەبێت بۆ ئەوەی بتوانرێت فلتەر بکرێت. ئەم بابەتانەی کتێبخانانەی خوارەوە لەخۆدەگرێت:",atleastOneLibItem:"تکایە بەلایەنی کەمەوە یەک بڕگەی کتێبخانە دیاریبکە بۆ دەستپێکردن",republishWarning:"تێبینی: هەندێک لە ئایتمە دیاریکراوەکان نیشانکراون وەک ئەوەی پێشتر بڵاوکراونەتەوە/نێردراون. تەنها پێویستە شتەکان دووبارە پێشکەش بکەیتەوە لە کاتی نوێکردنەوەی کتێبخانەیەکی هەبوو یان پێشکەشکردن."},RLe={title:"کتێبخانە پێشکەش کرا",content:"سوپاس {{authorName}}. کتێبخانەکەت پێشکەش کراوە بۆ پێداچوونەوە. دەتوانیت بەدواداچوون بۆ دۆخەکە بکەیت<link>لێرە</link>"},NLe={resetLibrary:"ڕێکخستنەوەی کتێبخانە",removeItemsFromLib:"لابردنی ئایتمە دیاریکراوەکان لە کتێبخانە"},GLe={header:"وێنە هەناردە بکە",label:{withBackground:"پاشبنەما",onlySelected:"تەنها دیاریکراوەکان",darkMode:"دۆخی تاریک",embedScene:"دیمەنەکە بەکاربهێنەرەوە",scale:"قەبارە",padding:"بۆشایی"},tooltip:{embedScene:`داتاکانی دیمەنەکە لە فایلە هەناردەکراوەکەی PNG/SVG هەڵدەگیرێن بۆ ئەوەی دیمەنەکە لێیەوە بگەڕێتەوە.
قەبارەی پەڕگەی هەناردەکراو زیاد دەکات.`},title:{exportToPng:"هەناردە بکە وەک PNG",exportToSvg:"هەناردە بکە وەک SVG",copyPngToClipboard:"لەبەربگرەوە بۆ سەر تەختەنوس"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"له‌به‌ری بگره‌وه‌ بۆ ته‌خته‌نووس"}},ULe={tooltip:"وێنەکێشانەکانت لە کۆتاییەوە بۆ کۆتایی کۆد کراون بۆیە سێرڤەرەکانی ئێکسکالیدرا هەرگیز نایانبینن.",link:"بلۆگ پۆست لەسەر کۆدکردنی کۆتای بۆ کۆتای لە ئێکسکالیدرەو"},MLe={angle:"گۆشە",element:"توخم",elements:"توخمەکان",height:"بەرزی",scene:"دیمەنەکە",selected:"دەستنیشانکراوەکان",storage:"بیرگە",title:"ئامار بۆ نێردەکان",total:"گشتی",version:"وەشان",versionCopy:"کلیک بۆ لەبەرگرتنەوە",versionNotAvailable:"وەشان بەردەست نییە",width:"پانی"},TLe={addedToLibrary:"زیادکرا بۆ کتێبخانە",copyStyles:"ستایلی کۆپیکراو.",copyToClipboard:"لەبەرگیرایەوە بۆ تەختەنوس.",copyToClipboardAsPng:`کۆپی کراوە {{exportSelection}} بۆ کلیپبۆرد وەک PNG
({{exportColorScheme}})`,fileSaved:"فایل هەڵگیرا.",fileSavedToFilename:"هەڵگیراوە بۆ {filename}",canvas:"تابلۆ",selection:"دەستنیشانکراوەکان",pasteAsSingleElement:"بۆ دانانەوە وەکو یەک توخم یان دانانەوە بۆ نێو دەسکاریکەرێکی دەق کە بوونی هەیە {{shortcut}} بەکاربهێنە",unableToEmbed:"",unrecognizedLinkFormat:""},YLe={transparent:"ڕوون",black:"ڕەش",white:"سپی",red:"سور",pink:"پەمەیی",grape:"مێوژی",violet:"مۆری کاڵ",gray:"خۆڵەمێشی",blue:"شین",cyan:"شینی ئاسمانی",teal:"شەدری",green:"سه‌وز",yellow:"زەرد",orange:"پرتەقاڵی",bronze:"برۆنزی"},HLe={app:{center_heading:"هەموو داتاکانت لە ناوخۆی وێنگەڕەکەتدا پاشەکەوت کراوە.",center_heading_plus:"ویستت بڕۆیت بۆ Excalidraw+?",menuHint:"هەناردەکردن، ڕێکخستنەکان، زمانەکان، ..."},defaults:{menuHint:"هەناردەکردن، ڕێکخستنەکان، و زیاتر...",center_heading:"دایاگرامەکان. ئاسان. کراون.",toolbarHint:"ئامرازێک هەڵبگرە و دەستبکە بە کێشان!",helpHint:"قەدبڕەکان و یارمەتی"}},KLe={mostUsedCustomColors:"زۆرترین ڕەنگە باوە بەکارهاتووەکان",colors:"ڕەنگەکان",shades:"سێبەرەکان",hexCode:"کۆدی هێکس",noShades:"هیچ سێبەرێک بۆ ئەم ڕەنگە بەردەست نییە"},JLe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},OLe={title:"",button:"",description:"",syntax:"",preview:""},Pcr={labels:ILe,library:hLe,buttons:QLe,alerts:pLe,errors:fLe,toolBar:mLe,headings:DLe,hints:yLe,canvasError:wLe,errorSplash:bLe,roomDialog:vLe,errorDialog:kLe,exportDialog:FLe,helpDialog:xLe,clearCanvasDialog:SLe,publishDialog:LLe,publishSuccessDialog:RLe,confirmDialog:NLe,imageExportDialog:GLe,encrypted:ULe,stats:MLe,toast:TLe,colors:YLe,welcomeScreen:HLe,colorPicker:KLe,overwriteConfirm:JLe,mermaid:OLe}});var QRe={};Dt(QRe,{alerts:()=>ZLe,buttons:()=>zLe,canvasError:()=>ARe,clearCanvasDialog:()=>aRe,colorPicker:()=>dRe,colors:()=>BRe,confirmDialog:()=>sRe,default:()=>_cr,encrypted:()=>gRe,errorDialog:()=>rRe,errorSplash:()=>eRe,errors:()=>VLe,exportDialog:()=>iRe,headings:()=>XLe,helpDialog:()=>uRe,hints:()=>$Le,imageExportDialog:()=>lRe,labels:()=>WLe,library:()=>qLe,mermaid:()=>hRe,overwriteConfirm:()=>IRe,publishDialog:()=>nRe,publishSuccessDialog:()=>oRe,roomDialog:()=>tRe,stats:()=>cRe,toast:()=>CRe,toolBar:()=>jLe,welcomeScreen:()=>ERe});var WLe,qLe,zLe,ZLe,VLe,jLe,XLe,$Le,ARe,eRe,tRe,rRe,iRe,uRe,aRe,nRe,oRe,sRe,lRe,gRe,cRe,CRe,BRe,ERe,dRe,IRe,hRe,_cr;var pRe=_(()=>{zt();WLe={paste:"Įklijuoti",pasteAsPlaintext:"Įklijuoti kaip paprastą tekstą",pasteCharts:"Įklijuoti diagramas",selectAll:"Pažymėti viską",multiSelect:"Pridėkite elementą prie pasirinktų",moveCanvas:"Judinti drobę",cut:"Iškirpti",copy:"Kopijuoti",copyAsPng:"Kopijuoti į iškarpinę kaip PNG",copyAsSvg:"Kopijuoti į iškarpinę kaip SVG",copyText:"Kopijuoti į iškarpinę kaip tekstą",copySource:"",convertToCode:"",bringForward:"Kelti priekio link",sendToBack:"Nustumti į užnugarį",bringToFront:"Iškelti į priekį",sendBackward:"Nustumti link užnugario",delete:"Ištrinti",copyStyles:"Kopijuoti stilius",pasteStyles:"Įklijuoti stilius",stroke:"Linija",background:"Fonas",fill:"Užpildymas",strokeWidth:"Linijos storis",strokeStyle:"Linijos stilius",strokeStyle_solid:"Ištisinė",strokeStyle_dashed:"Brūkšniuota",strokeStyle_dotted:"Taškuota",sloppiness:"Netvarkingumas",opacity:"Nepermatomumas",textAlign:"Teksto lygiavimas",edges:"Kraštai",sharp:"Aštrus",round:"Užapvalintas",arrowheads:"Rodyklės viršūnės",arrowhead_none:"Jokios",arrowhead_arrow:"Rodyklė",arrowhead_bar:"Brukšnys",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trikampis",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Šrifto dydis",fontFamily:"Šriftas",addWatermark:"Sukurta su Excalidraw",handDrawn:"Ranka rašytas",normal:"Normalus",code:"Kodas",small:"Mažas",medium:"Vidutinis",large:"Didelis",veryLarge:"Labai didelis",solid:"",hachure:"",zigzag:"",crossHatch:"",thin:"Plonas",bold:"Pastorintas",left:"Kairėje",center:"Centre",right:"Dešinėje",extraBold:"Labiau pastorintas",architect:"Architektas",artist:"Menininkas",cartoonist:"Karikatūristas",fileTitle:"Failo pavadinimas",colorPicker:"Spalvos parinkiklis",canvasColors:"",canvasBackground:"Drobės fonas",drawingCanvas:"",layers:"Sluoksniai",actions:"Veiksmai",language:"Kalba",liveCollaboration:"Bendradarbiavimas gyvai...",duplicateSelection:"",untitled:"",name:"",yourName:"Jūsų vardas",madeWithExcalidraw:"Sukurta su Excalidraw",group:"Grupuoti pasirinkimą",ungroup:"Išgrupuoti pasirinkimą",collaborators:"Bendradarbiautojai",showGrid:"Rodyti tinklelį",addToLibrary:"Pridėti į biblioteką",removeFromLibrary:"Pašalinti iš bibliotekos",libraryLoadingMessage:"",libraries:"Naršyti bibliotekas",loadingScene:"",align:"Lygiuoti",alignTop:"Lygiuoti viršuje",alignBottom:"Lygiuoti apačioje",alignLeft:"Lygiuoti kairėje",alignRight:"Lygiuoti dešinėje",centerVertically:"Centruoti vertikaliai",centerHorizontally:"Centruoti horizontaliai",distributeHorizontally:"",distributeVertically:"",flipHorizontal:"Apversti horizontaliai",flipVertical:"Apversti vertikaliai",viewMode:"",share:"Dalintis",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"Asmeninė biblioteka",excalidrawLib:"Exaclidraw biblioteka",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"Redeguoti nuorodą",editEmbed:"",create:"Sukurti nuorodą",createEmbed:"",label:"Nuoroda",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"Užrakinti",unlock:"Atrakinti",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},qLe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},zLe={clearReset:"",exportJSON:"Eksportuoti į failą",exportImage:"",export:"",copyToClipboard:"Kopijuoti į iškarpinę",save:"",saveAs:"Išsaugoti kaip",load:"",getShareableLink:"Gauti nuorodą dalinimuisi",close:"Uždaryti",selectLanguage:"Pasirinkite kalbą",scrollBackToContent:"",zoomIn:"Priartinti",zoomOut:"Nutolinti",resetZoom:"",menu:"Meniu",done:"",edit:"Redaguoti",undo:"Anuliuoti",redo:"",resetLibrary:"Atstatyti biblioteką",createNewRoom:"Sukurti naują kambarį",fullScreen:"Visas ekranas",darkMode:"Tamsus režimas",lightMode:"Šviesus režimas",zenMode:"„Zen“ režimas",objectsSnapMode:"",exitZenMode:"Išeiti iš „Zen“ režimo",cancel:"Atšaukti",clear:"Išvalyti",remove:"Pašalinti",embed:"",publishLibrary:"Paskelbti",submit:"Pateikti",confirm:"Patvirtinti",embeddableInteractionButton:""},ZLe={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:`Sesijos nutraukimas perrašys ankstesnį, lokaliai išsaugotą piešinį. Ar tikrai to nori?
(Jei nori išlaikyti lokalų piešinį, tiesiog uždaryk naršyklės skirtuką.)`,errorAddingToLibrary:"Nepavyko įtraukti elemento į biblioteką",errorRemovingFromLibrary:"Nepavyko pašalinti elemento iš bibliotekos",confirmAddLibrary:"Tai įtrauks {{numShapes}} figūrą/-as į tavo biblioteką. Ar tikrai to nori?",imageDoesNotContainScene:"Panašu, jog šis paveiksliukas neturi scenos duomenų. Ar yra įjuntas scenos įtraukimas ekportavimo metu?",cannotRestoreFromImage:"Nepavyko atstatyti scenos iš šio nuotraukos failo",invalidSceneUrl:"Nepavyko suimportuoti scenos iš pateiktos nuorodos (URL). Ji arba blogai suformatuota, arba savyje neturi teisingų Excalidraw JSON duomenų.",resetLibrary:"Tai išvalys tavo biblioteką. Ar tikrai to nori?",removeItemsFromsLibrary:"Ištrinti {{count}} elementą/-us iš bibliotekos?",invalidEncryptionKey:"Šifravimo raktas turi būti iš 22 simbolių. Redagavimas gyvai yra išjungtas.",collabOfflineWarning:""},VLe={unsupportedFileType:"Nepalaikomas failo tipas.",imageInsertError:"Nepyko įkelti paveiksliuko. Pabandyk vėliau...",fileTooBig:"Per didelis failas. Didžiausias leidžiamas dydis yra {{maxSize}}.",svgImageInsertError:"Nepavyko įtraukti SVG paveiksliuko. Panašu, jog SVG yra nevalidus.",failedToFetchImage:"",invalidSVGString:"Nevalidus SVG.",cannotResolveCollabServer:"Nepavyko prisijungti prie serverio bendradarbiavimui. Perkrauk puslapį ir pabandyk prisijungti dar kartą.",importLibraryError:"Nepavyko įkelti bibliotekos",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},jLe={selection:"Žymėjimas",image:"Įkelti paveiksliuką",rectangle:"Stačiakampis",diamond:"Deimantas",ellipse:"Elipsė",arrow:"Rodyklė",line:"Linija",freedraw:"Piešti",text:"Tekstas",library:"Biblioteka",lock:"Baigus piešti, išlaikyti pasirinktą įrankį",penMode:"Rašyklio režimas - neleisti prisilietimų",link:"Pridėti / Atnaujinti pasirinktos figūros nuorodą",eraser:"Trintukas",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},XLe={canvasActions:"Veiksmai su drobe",selectedShapeActions:"Veiksmai su pasirinkta figūra",shapes:"Figūros"},$Le={canvasPanning:"",linearElement:"Paspaudimai sukurs papildomus taškus, nepertraukiamas tempimas sukurs liniją",freeDraw:"Spausk ir tempk, paleisk kai norėsi pabaigti",text:"Užuomina: tekstą taip pat galima pridėti bet kur su dvigubu pelės paspaudimu, kol parinkas žymėjimo įrankis",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},ARe={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},eRe={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},tRe={desc_intro:"",desc_privacy:"",button_startSession:"Pradėti seansą",button_stopSession:"Sustabdyti seansą",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},rRe={title:"Klaida"},iRe={disk_title:"Įrašyti į diską",disk_details:"",disk_button:"Įrašyti į failą",link_title:"Nuoroda dalinimuisi",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"Eksportuoti",excalidrawplus_exportError:""},uRe={blog:"",click:"paspaudimas",deepSelect:"",deepBoxSelect:"",curvedArrow:"Banguota rodyklė",curvedLine:"Banguota linija",documentation:"Dokumentacija",doubleClick:"dvigubas paspaudimas",drag:"vilkti",editor:"Redaktorius",editLineArrowPoints:"",editText:"",github:"Radai klaidą? Pateik",howto:"Vadovaukis mūsų gidu",or:"arba",preventBinding:"",tools:"Įrankiai",shortcuts:"Spartieji klavišai",textFinish:"Baigti redagavimą (teksto redaktoriuje)",textNewLine:"Pridėti naują eilutę (tekto redaktoriuje)",title:"Pagalba",view:"",zoomToFit:"",zoomToSelection:"Priartinti iki pažymėtos vietos",toggleElementLock:"",movePageUpDown:"Pajudinti puslapį aukštyn/žemyn",movePageLeftRight:"Pajudinti puslapį kairėn/dešinėn"},aRe={title:"Išvalyti drobę"},nRe={title:"Paviešinti biblioteką",itemName:"Elemento pavadinimas",authorName:"Autoriaus vardas",githubUsername:"Github spalyvardis",twitterUsername:"Twitter slapyvardis",libraryName:"Bibliotekos pavadinimas",libraryDesc:"Bibliotekos aprašas",website:"Tinklalapis",placeholder:{authorName:"Tavo vardas arba spalyvardis",libraryName:"Tavo bibliotekos pavadinimas",libraryDesc:"Tavo bibliotekos aprašas, padėti žmonėms geriau suprasti jos paskirtį",githubHandle:"",twitterHandle:"",website:""},errors:{required:"Privalomas",website:"Įveskite teisingą nuorodą (URL)"},noteDescription:"Pateik savo biblioteką, jog ji galėtų būti įtraukta į <link></link>jog kiti žmonės galėtų tai naudoti savo piešiniuose.",noteGuidelines:"Visų pirma, biblioteka turi būti rankiniu būdu patvirtinta. Prašome paskaityti <link>gairės</link>",noteLicense:"<link>MIT licencija, </link>",noteItems:"",atleastOneLibItem:"",republishWarning:""},oRe={title:"Biblioteka pateikta",content:"Ačiū {{authorName}}. Tavo biblioteka buvo pateikta peržiūrai. Gali sekti būseną<link>čia</link>"},sRe={resetLibrary:"Atstatyti biblioteką",removeItemsFromLib:"Pašalinti pasirinktus elementus iš bibliotekos"},lRe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},gRe={tooltip:"",link:""},cRe={angle:"",element:"Elementas",elements:"Elementai",height:"Aukštis",scene:"Scena",selected:"Pasirinkta",storage:"Saugykla",title:"Informacija moksliukams",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:"Plotis"},CRe={addedToLibrary:"Pridėta į biblioteką",copyStyles:"",copyToClipboard:"Nukopijuota į iškarpinę.",copyToClipboardAsPng:"",fileSaved:"Failas išsaugotas.",fileSavedToFilename:"Išsaugota į {filename}",canvas:"drobė",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},BRe={transparent:"Permatoma",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},ERe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},dRe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},IRe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},hRe={title:"",button:"",description:"",syntax:"",preview:""},_cr={labels:WLe,library:qLe,buttons:zLe,alerts:ZLe,errors:VLe,toolBar:jLe,headings:XLe,hints:$Le,canvasError:ARe,errorSplash:eRe,roomDialog:tRe,errorDialog:rRe,exportDialog:iRe,helpDialog:uRe,clearCanvasDialog:aRe,publishDialog:nRe,publishSuccessDialog:oRe,confirmDialog:sRe,imageExportDialog:lRe,encrypted:gRe,stats:cRe,toast:CRe,colors:BRe,welcomeScreen:ERe,colorPicker:dRe,overwriteConfirm:IRe,mermaid:hRe}});var zRe={};Dt(zRe,{alerts:()=>yRe,buttons:()=>DRe,canvasError:()=>FRe,clearCanvasDialog:()=>GRe,colorPicker:()=>_Re,colors:()=>ORe,confirmDialog:()=>TRe,default:()=>Wcr,encrypted:()=>HRe,errorDialog:()=>LRe,errorSplash:()=>xRe,errors:()=>wRe,exportDialog:()=>RRe,headings:()=>vRe,helpDialog:()=>NRe,hints:()=>kRe,imageExportDialog:()=>YRe,labels:()=>fRe,library:()=>mRe,mermaid:()=>qRe,overwriteConfirm:()=>WRe,publishDialog:()=>URe,publishSuccessDialog:()=>MRe,roomDialog:()=>SRe,stats:()=>KRe,toast:()=>JRe,toolBar:()=>bRe,welcomeScreen:()=>PRe});var fRe,mRe,DRe,yRe,wRe,bRe,vRe,kRe,FRe,xRe,SRe,LRe,RRe,NRe,GRe,URe,MRe,TRe,YRe,HRe,KRe,JRe,ORe,PRe,_Re,WRe,qRe,Wcr;var ZRe=_(()=>{zt();fRe={paste:"Ielīmēt",pasteAsPlaintext:"Ielīmēt kā vienkāršu tekstu",pasteCharts:"Ielīmēt grafikus",selectAll:"Atlasīt visu",multiSelect:"Pievienot elementu atlasei",moveCanvas:"Pārvietot tāfeli",cut:"Izgriezt",copy:"Kopēt",copyAsPng:"Kopēt starpliktuvē kā PNG",copyAsSvg:"Kopēt starpliktuvē kā SVG",copyText:"Kopēt starpliktuvē kā tekstu",copySource:"",convertToCode:"",bringForward:"Pārvietot vienu slāni augstāk",sendToBack:"Pārvietot uz zemāko slāni",bringToFront:"Pārvietot uz virsējo slāni",sendBackward:"Pārvietot par vienu slāni zemāk",delete:"Dzēst",copyStyles:"Kopēt stilus",pasteStyles:"Ielīmēt stilus",stroke:"Svītras krāsa",background:"Fona krāsa",fill:"Aizpildījums",strokeWidth:"Svītras platums",strokeStyle:"Svītras stils",strokeStyle_solid:"Vienlaidu",strokeStyle_dashed:"Raustīta līnija",strokeStyle_dotted:"Punktota līnija",sloppiness:"Precizitāte",opacity:"Necaurspīdīgums",textAlign:"Teksta līdzināšana",edges:"Malas",sharp:"Asas",round:"Apaļas",arrowheads:"Bultas",arrowhead_none:"Nekādas",arrowhead_arrow:"Bulta",arrowhead_bar:"Svītra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trijstūris",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Teksta lielums",fontFamily:"Fontu saime",addWatermark:'Pievienot "Radīts ar Excalidraw"',handDrawn:"Rokraksts",normal:"Parasts",code:"Kods",small:"Mazs",medium:"Vidējs",large:"Liels",veryLarge:"Ļoti liels",solid:"Pilns",hachure:"Svītrots",zigzag:"Zigzaglīnija",crossHatch:"Šķērssvītrots",thin:"Šaurs",bold:"Trekns",left:"Pa kreisi",center:"Vidū",right:"Pa labi",extraBold:"Īpaši trekns",architect:"Arhitekts",artist:"Mākslinieks",cartoonist:"Karikatūrists",fileTitle:"Datnes nosaukums",colorPicker:"Krāsu atlasītājs",canvasColors:"Izmantots tāfelei",canvasBackground:"Ainas fons",drawingCanvas:"Tāfele",layers:"Slāņi",actions:"Darbības",language:"Valoda",liveCollaboration:"Sadarbība tiešsaistē...",duplicateSelection:"Izveidot kopiju",untitled:"Bez nosaukuma",name:"Vārds",yourName:"Jūsu vārds",madeWithExcalidraw:"Radīts ar Excalidraw",group:"Grupēt atlasīto",ungroup:"Atgrupēt atlasīto",collaborators:"Dalībnieki",showGrid:"Rādīt režģi",addToLibrary:"Pievienot bibliotēkai",removeFromLibrary:"Izņemt no bibliotēkas",libraryLoadingMessage:"Ielādē bibliotēku…",libraries:"Apskatīt bibliotēkas",loadingScene:"Ielādē ainu…",align:"Līdzināt",alignTop:"Līdzināt augšpusē",alignBottom:"Līdzināt lejā",alignLeft:"Līdzināt pa kreisi",alignRight:"Līdzināt pa labi",centerVertically:"Centrēt vertikāli",centerHorizontally:"Centrēt horizontāli",distributeHorizontally:"Izdalīt horizontāli",distributeVertically:"Izdalīt vertikāli",flipHorizontal:"Apmest horizontāli",flipVertical:"Apmest vertikāli",viewMode:"Skata režīms",share:"Kopīgot",showStroke:"Rādīt svītras krāsas atlasītāju",showBackground:"Rādīt fona krāsas atlasītāju",toggleTheme:"Pārslēgt krāsu tēmu",personalLib:"Personīgā bibliotēka",excalidrawLib:"Excalidraw bibliotēka",decreaseFontSize:"Samazināt fonta izmēru",increaseFontSize:"Palielināt fonta izmēru",unbindText:"Atdalīt tekstu",bindText:"Piesaistīt tekstu figūrai",createContainerFromText:"Ietilpināt tekstu figurā",link:{edit:"Rediģēt saiti",editEmbed:"",create:"Izveidot saiti",createEmbed:"",label:"Saite",labelEmbed:"",empty:""},lineEditor:{edit:"Rediģēt līniju",exit:"Aizvērt līnijas redaktoru"},elementLock:{lock:"Fiksēt",unlock:"Atbrīvot",lockAll:"Fiksēt visu",unlockAll:"Atbrīvot visu"},statusPublished:"Publicēts",sidebarLock:"Paturēt atvērtu sānjoslu",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},mRe={noItems:"Neviena vienība vēl nav pievienota...",hint_emptyLibrary:"Atlasiet objektu tāfelē, lai to šeit pievienotu, vai pievienojiet publisku bibliotēku zemāk.",hint_emptyPrivateLibrary:"Atlasiet objektu tāfelē, lai to šeit pievienotu."},DRe={clearReset:"Atiestatīt tāfeli",exportJSON:"Eksportēt kā failu",exportImage:"Eksportēt attēlu...",export:"Saglabāt uz...",copyToClipboard:"Kopēt starpliktuvē",save:"Saglabāt pašreizējo datni",saveAs:"Saglabāt kā",load:"Atvērt",getShareableLink:"Iegūt kopīgošanas saiti",close:"Aizvērt",selectLanguage:"Izvēlieties valodu",scrollBackToContent:"Atgriezties pie satura",zoomIn:"Tuvināt",zoomOut:"Tālināt",resetZoom:"Atiestatīt tuvinājumu",menu:"Izvēlne",done:"Gatavs",edit:"Rediģēt",undo:"Atsaukt",redo:"Atcelt atsaukšanu",resetLibrary:"Atiestatīt bibliotēku",createNewRoom:"Izveidot jaunu telpu",fullScreen:"Pilnekrāna režīms",darkMode:"Tumšais režīms",lightMode:"Gaišais režīms",zenMode:"Zen režīms",objectsSnapMode:"",exitZenMode:"Pamest Zen režīmu",cancel:"Atcelt",clear:"Notīrīt",remove:"Noņemt",embed:"",publishLibrary:"Publicēt",submit:"Iesniegt",confirm:"Apstiprināt",embeddableInteractionButton:""},yRe={clearReset:"Šī funkcija notīrīs visu tāfeli. Vai turpināt?",couldNotCreateShareableLink:"Nevarēja izveidot kopīgojamo saiti.",couldNotCreateShareableLinkTooBig:"Nevarēja izveidot kopīgojamo saiti – aina ir par lielu",couldNotLoadInvalidFile:"Nevarēja ielādēt nederīgu datni",importBackendFailed:"Ielāde no krātuves neizdevās.",cannotExportEmptyCanvas:"Nevar eksportēt tukšu tāfeli.",couldNotCopyToClipboard:"Nevarēja nokopēt starpliktuvē.",decryptFailed:"Nevarēja atšifrēt datus.",uploadedSecurly:"Augšuplāde nodrošināta ar šifrēšanu no gala līdz galam, kas nozīmē, ka Excalidraw serveri un trešās puses nevar lasīt saturu.",loadSceneOverridePrompt:"Ārēja satura ielāde aizstās jūsu pašreizējo saturu. Vai vēlaties turpināt?",collabStopOverridePrompt:`Sesijas pārtraukšana pārrakstīs jūsu iepriekšējo zīmējumu, kas saglabāts jūsu pārlūkā. Vai turpināt?
(Ja vēlaties paturēt zīmējumu, kas saglabāts jūsu pārlūkā, vienkārši aizveriet pārlūka cilni.)`,errorAddingToLibrary:"Nevarēja pievienot vienumu bibliotēkai",errorRemovingFromLibrary:"Nevarēja izņemt vienumu no bibliotēkas",confirmAddLibrary:"Šī funkcija pievienos {{numShapes}} formu(-as) jūsu bibliotēkai. Vai turpināt?",imageDoesNotContainScene:"Šķiet, ka attēls nesatur ainas datus. Vai iespējojāt ainas iegulšanu, kad eksportējāt?",cannotRestoreFromImage:"Ainu nevarēja atgūt no attēla datnes",invalidSceneUrl:"Nevarēja importēt ainu no norādītā URL. Vai nu tas ir nederīgs, vai nesatur derīgus Excalidraw JSON datus.",resetLibrary:"Šī funkcija iztukšos bibliotēku. Vai turpināt?",removeItemsFromsLibrary:"Vai izņemt {{count}} vienumu(s) no bibliotēkas?",invalidEncryptionKey:"Šifrēšanas atslēgai jābūt 22 simbolus garai. Tiešsaistes sadarbība ir izslēgta.",collabOfflineWarning:`Nav pieejams interneta pieslēgums.
Jūsu izmaiņas netiks saglabātas!`},wRe={unsupportedFileType:"Neatbalstīts datnes veids.",imageInsertError:"Nevarēja ievietot attēlu. Mēģiniet vēlāk...",fileTooBig:"Datne ir par lielu. Lielākais atļautais izmērs ir {{maxSize}}.",svgImageInsertError:"Nevarēja ievietot SVG attēlu. Šķiet, ka SVG marķējums nav derīgs.",failedToFetchImage:"",invalidSVGString:"Nederīgs SVG.",cannotResolveCollabServer:"Nevarēja savienoties ar sadarbošanās serveri. Lūdzu, pārlādējiet lapu un mēģiniet vēlreiz.",importLibraryError:"Nevarēja ielādēt bibliotēku",collabSaveFailed:"Darbs nav saglabāts datubāzē. Ja problēma turpinās, saglabājiet datni lokālajā krātuvē, lai nodrošinātos pret darba pazaudēšanu.",collabSaveFailed_sizeExceeded:"Darbs nav saglabāts datubāzē, šķiet, ka tāfele ir pārāk liela. Saglabājiet datni lokālajā krātuvē, lai nodrošinātos pret darba pazaudēšanu.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},bRe={selection:"Atlase",image:"Ievietot attēlu",rectangle:"Taisnstūris",diamond:"Rombs",ellipse:"Elipse",arrow:"Bulta",line:"Līnija",freedraw:"Zīmēt",text:"Teksts",library:"Bibliotēka",lock:"Paturēt izvēlēto rīku pēc darbības",penMode:"Pildspalvas režīms – novērst pieskaršanos",link:"Pievienot/rediģēt atlasītās figūras saiti",eraser:"Dzēšgumija",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Roka (panoramēšanas rīks)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},vRe={canvasActions:"Tāfeles darbības",selectedShapeActions:"Izvēlētās formas darbības",shapes:"Formas"},kRe={canvasPanning:"Lai bīdītu tāfeli, turiet nospiestu ritināšanas vai atstarpes taustiņu, vai izmanto rokas rīku",linearElement:"Klikšķiniet, lai sāktu zīmēt vairākus punktus; velciet, lai zīmētu līniju",freeDraw:"Spiediet un velciet; atlaidiet, kad pabeidzat",text:"Ieteikums: lai pievienotu tekstu, varat arī jebkur dubultklikšķināt ar atlases rīku",embeddable:"",text_selected:"Dubultklikšķiniet vai spiediet ievades taustiņu, lai rediģētu tekstu",text_editing:"Spiediet iziešanas taustiņu vai CtrlOrCmd+ENTER, lai beigtu rediģēt",linearElementMulti:"Klikšķiniet uz pēdējā punkta vai spiediet izejas vai ievades taustiņu, lai pabeigtu",lockAngle:"Varat ierobežot leņķi, turot nospiestu SHIFT",resize:`Kad maināt izmēru, varat ierobežot proporcijas, turot nospiestu SHIFT,
vai arī ALT, lai mainītu izmēru ap centru`,resizeImage:`Varat brīvi mainīt izmēru, turot nospiestu SHIFT;
turiet nospiestu ALT, lai mainītu izmēru ap centru`,rotate:"Rotējot varat ierobežot leņķi, turot nospiestu SHIFT",lineEditor_info:"Turiet CtrlOrCmd un dubultklikšķiniet, vai spiediet CtrlOrCmd + Enter, lai rediģētu punktus",lineEditor_pointSelected:"Spiediet dzēšanas taustiņu, lai noņemtu punktus, – CtrlOrCmd+D, lai to kopētu, vai velciet, lai pārvietotu",lineEditor_nothingSelected:`Atlasiet punktu, lai labotu (turiet nospiestu SHIFT, lai atlasītu vairākus),
vai turiet Alt un clikšķiniet, lai pievienotu jaunus punktus`,placeImage:"Klikšķiniet, lai novietotu attēlu, vai spiediet un velciet, lai iestatītu tā izmēru",publishLibrary:"Publicēt savu bibliotēku",bindTextToElement:"Spiediet ievades taustiņu, lai pievienotu tekstu",deepBoxSelect:"Turient nospiestu Ctrl vai Cmd, lai atlasītu dziļumā un lai nepieļautu objektu pavilkšanu",eraserRevert:"Turiet Alt, lai noņemtu elementus no dzēsšanas atlases",firefox_clipboard_write:'Šis iestatījums var tikt ieslēgts ar "dom.events.asyncClipboard.clipboardItem" marķieri pārslēgtu uz "true". Lai mainītu pārlūka marķierus Firefox, apmeklē "about:config" lapu.',disableSnapping:""},FRe={cannotShowPreview:"Nevar rādīt priekšskatījumu",canvasTooBig:"Iespējams, tāfele ir par lielu.",canvasTooBigTip:"Ieteikums: mēģiniet satuvināt pašus tālākos elementus."},xRe={headingMain:"Notikusi kļūda. Mēģiniet <button>pārlādēt lapu.</button>",clearCanvasMessage:"Ja pārlādēšana nestrādā, mēģiniet <button>notīrot tāfeli.</button>",clearCanvasCaveat:" Tas novedīs pie darba zaudēšanas ",trackedToSentry:"Kļūda ar kodu {{eventId}} tika noteikta mūsu sistēmā.",openIssueMessage:"Mēs uzmanījāmies, lai neiekļautu jūsu ainas informāciju šajā kļūdā. Ja jūsu aina nav privāta, lūdzu ziņojiet par šo kļūdu mūsu <button>kļūdu uzskaitē.</button> Lūdzu, miniet sekojošo informāciju to kopējot un ielīmējot jūsu ziņojumā platformā GitHub.",sceneContent:"Ainas saturs:"},SRe={desc_intro:"Varat ielūgt cilvēkus pašreizējajā ainā, lai sadarbotos ar tiem.",desc_privacy:"Neuztraucieties, sesija izmanto šifrēšanu no gala līdz galam, tātad jūsu zīmējums paliks privāts. Pat mūsu serveri nevarēs redzēt, ar ko esat nācis klajā.",button_startSession:"Sākt sesiju",button_stopSession:"Beigt sesiju",desc_inProgressIntro:"Notiek tiešsaistes sadarbības sesija.",desc_shareLink:"Dalieties ar šo saiti ar jebkuru, ar ko vēlaties sadarboties:",desc_exitSession:"Sesijas beigšana jūs atvienos no sadarbošanās, bet jūs vēl joprojām varēsiet strādāt ar ainu savā datorā. Ievērojiet, ka šis neietekmēs citus dalībniekus, un viņi vēl joprojām varēs sadarboties savā ainas versijā.",shareTitle:"Pievienoties tiešsaistes sadarbībai programmā Excalidraw"},LRe={title:"Kļūda"},RRe={disk_title:"Saglabāt diskā",disk_details:"Eksportēt ainas datus datnē, ko vēlāk varēsiet importēt.",disk_button:"Saglabāt datnē",link_title:"Kopīgošanas saite",link_details:"Eksportēt kā tikai lasāmu saiti.",link_button:"Eksportēt kā saiti",excalidrawplus_description:"Saglabāt ainu savā Excalidraw+ darbvietā.",excalidrawplus_button:"Eksportēt",excalidrawplus_exportError:"Pašreiz nevarēja eksportēt uz Excalidraw+..."},NRe={blog:"Lasīt mūsu blogu",click:"klikšķis",deepSelect:"Atlasīt dziļumā",deepBoxSelect:"Atlasīt dziļumā kastes ietvaros, un nepieļaut pavilkšanu",curvedArrow:"Liekta bulta",curvedLine:"Liekta līnija",documentation:"Dokumentācija",doubleClick:"dubultklikšķis",drag:"vilkt",editor:"Redaktors",editLineArrowPoints:"Rediģēt līniju/bultu punktus",editText:"Rediģēt tekstu/pievienot birku",github:"Sastapāt kļūdu? Ziņot",howto:"Sekojiet mūsu instrukcijām",or:"vai",preventBinding:"Novērst bultu piesaistīšanos",tools:"Rīki",shortcuts:"Tastatūras saīsnes",textFinish:"Pabeigt rediģēšanu (teksta redaktorā)",textNewLine:"Nākamā rindiņa (teksta redaktorā)",title:"Palīdzība",view:"Skatīt",zoomToFit:"Iestatīt mērogu, kas iekļauj visus elementus",zoomToSelection:"Iestatīt mērogu, lai rādītu atlasi",toggleElementLock:"Fiksēt/atbrīvot atlasīto",movePageUpDown:"Pārvietot lapu augšup/lejup",movePageLeftRight:"Pārvietot lapu pa labi/kreisi"},GRe={title:"Notīrīt tāfeli"},URe={title:"Publicēt bibliotēku",itemName:"Vienuma nosaukums",authorName:"Autora vārds",githubUsername:"GitHub lietotājvārds",twitterUsername:"Twitter lietotājvārds",libraryName:"Bibliotēkas nosaukums",libraryDesc:"Bibliotēkas apraksts",website:"Mājaslapa",placeholder:{authorName:"Jūsu vārds vai lietotājvārds",libraryName:"Jūsu bibliotēkas nosaukums",libraryDesc:"Bibliotēkas apraksts, kas palīdzēs citiem saprast tās pielietojumu",githubHandle:"GitHub lietotājvārds (neobligāts), lai jūs varētu rediģēt bibliotēku pēc tās iesniegšanas izskatīšanai",twitterHandle:"Twitter lietotājvārds (neobligāts), lai mēs varētu jūs pieminēt kā autoru, kad reklamēsim bibliotēku platformā Twitter",website:"Saikne uz jūsu personīgo mājaslapu vai kādu citu lapu (neobligāta)"},errors:{required:"Obligāts",website:"Ievadiet derīgu URL"},noteDescription:"Iesniegt savu bibliotēku iekļaušanai <link>publiskajā bibliotēku datubāzē</link>, lai citi to varētu izmantot savos zīmējumos.",noteGuidelines:"Šai bibliotēkai vispirms jātiek manuāli apstiprinātai. Lūdzu, izlasiet <link>norādījumus</link> pirms iesniegšanas. Jums vajadzēs GitHub kontu, lai sazinātos un veiktu izmaiņas, ja tādas būs pieprasītas, bet tas nav absolūti nepieciešams.",noteLicense:"Iesniedzot bibliotēku, jūs piekrītat tās publicēšanai saskaņā ar <link>MIT Licenci, </link>kas īsumā nozīmē, ka jebkurš to varēs izmantot bez ierobežojumiem.",noteItems:"Katram bibliotēkas vienumam jābūt savam nosaukumam, lai to varētu atrast filtrējot. Tiks iekļauti sekojošie bibliotēkas vienumi:",atleastOneLibItem:"Lūdzu, atlasiet vismaz vienu bibliotēkas vienumu, lai sāktu darbu",republishWarning:"Ievēro: daži no atzīmētajiem objektiem jau atzīmēti kā publicēti vai iesniegti publicēšanai. Tos vajadzētu atkārtoti iesniegt tikai tad, ja vēlies labot esošo bibliotēku."},MRe={title:"Bibliotēka iesniegta",content:"Paldies, {{authorName}}! Jūsu bibliotēka iesniegta izskatīšanai. Jūs varat izsekot iesnieguma statusam<link>šeit</link>"},TRe={resetLibrary:"Atiestatīt bibliotēku",removeItemsFromLib:"Noņemt atlasītos vienumus no bibliotēkas"},YRe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},HRe={tooltip:"Jūsu zīmējumi ir šifrēti no gala līdz galam; līdz ar to Excalidraw serveri tos nekad neredzēs.",link:"Ieraksts par šifrēšanu no gala līdz galam Excalidraw blogā"},KRe={angle:"Leņķis",element:"Elements",elements:"Elementi",height:"Augstums",scene:"Aina",selected:"Atlasīti",storage:"Krātuve",title:"Statistika entuziastiem",total:"Kopā",version:"Versija",versionCopy:"Klikšķiniet, lai nokopētu",versionNotAvailable:"Versija nav pieejama",width:"Platums"},JRe={addedToLibrary:"Pievienots bibliotēkai",copyStyles:"Nokopēja stilus.",copyToClipboard:"Nokopēja starpliktuvē.",copyToClipboardAsPng:"Nokopēja {{exportSelection}} starpliktuvē kā PNG ({{exportColorScheme}})",fileSaved:"Datne saglabāta.",fileSavedToFilename:"Saglabāts kā {filename}",canvas:"tāfeli",selection:"atlasi",pasteAsSingleElement:"Izmantojiet {{shortcut}}, lai ielīmētu kā jaunu elementu, vai ielīmētu esošā teksta lauciņā",unableToEmbed:"",unrecognizedLinkFormat:""},ORe={transparent:"Caurspīdīgs",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},PRe={app:{center_heading:"Visi jūsu dati tiek glabāti uz vietas jūsu pārlūkā.",center_heading_plus:"Vai tā vietā vēlies doties uz Excalidraw+?",menuHint:"Eksportēšana, iestatījumi, valodas..."},defaults:{menuHint:"Eksportēšana, iestatījumi un vēl...",center_heading:"Diagrammas. Izveidotas. Vienkārši.",toolbarHint:"Izvēlies rīku un sāc zīmēt!",helpHint:"Īsceļi un palīdzība"}},_Re={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},WRe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},qRe={title:"",button:"",description:"",syntax:"",preview:""},Wcr={labels:fRe,library:mRe,buttons:DRe,alerts:yRe,errors:wRe,toolBar:bRe,headings:vRe,hints:kRe,canvasError:FRe,errorSplash:xRe,roomDialog:SRe,errorDialog:LRe,exportDialog:RRe,helpDialog:NRe,clearCanvasDialog:GRe,publishDialog:URe,publishSuccessDialog:MRe,confirmDialog:TRe,imageExportDialog:YRe,encrypted:HRe,stats:KRe,toast:JRe,colors:ORe,welcomeScreen:PRe,colorPicker:_Re,overwriteConfirm:WRe,mermaid:qRe}});var DNe={};Dt(DNe,{alerts:()=>$Re,buttons:()=>XRe,canvasError:()=>iNe,clearCanvasDialog:()=>lNe,colorPicker:()=>pNe,colors:()=>hNe,confirmDialog:()=>CNe,default:()=>qcr,encrypted:()=>ENe,errorDialog:()=>nNe,errorSplash:()=>uNe,errors:()=>ANe,exportDialog:()=>oNe,headings:()=>tNe,helpDialog:()=>sNe,hints:()=>rNe,imageExportDialog:()=>BNe,labels:()=>VRe,library:()=>jRe,mermaid:()=>mNe,overwriteConfirm:()=>fNe,publishDialog:()=>gNe,publishSuccessDialog:()=>cNe,roomDialog:()=>aNe,stats:()=>dNe,toast:()=>INe,toolBar:()=>eNe,welcomeScreen:()=>QNe});var VRe,jRe,XRe,$Re,ANe,eNe,tNe,rNe,iNe,uNe,aNe,nNe,oNe,sNe,lNe,gNe,cNe,CNe,BNe,ENe,dNe,INe,hNe,QNe,pNe,fNe,mNe,qcr;var yNe=_(()=>{zt();VRe={paste:"चिटकवा",pasteAsPlaintext:"साधा मजकूर च्या रुपात पेस्ट करा",pasteCharts:"चार्ट चिकटवा",selectAll:"समस्त निवडा",multiSelect:"निवडित तत्व जोडा",moveCanvas:"पटल हलवा",cut:"कापा",copy:"प्रतिलिपी",copyAsPng:"PNG रूपे फळी वर कॉपी करा",copyAsSvg:"SVG रूपे फळी वर कॉपी करा",copyText:"लिखित रूपे फळी वर कॉपी करा",copySource:"स्त्रोत फळी वर कॉपी करा",convertToCode:"सांकेतिक लिपित रूपांतरित करा",bringForward:"पुढे पुढे आणा",sendToBack:"सर्वात मागे करा",bringToFront:"सर्वात पुढे आणा",sendBackward:"मागे मागे करा",delete:"हटवा",copyStyles:"शैली कॉपी करा",pasteStyles:"कॉपी केलेली शैली वापरा",stroke:"रेघे चा रंग",background:"पार्श्वभूमी",fill:"भरा",strokeWidth:"रेघ रुंदी",strokeStyle:"रेघ शैली",strokeStyle_solid:"भरीव",strokeStyle_dashed:"तुटित तुटित",strokeStyle_dotted:"ठिपके ठिपके",sloppiness:"गबाळेपणा",opacity:"अपारदर्शक्ता",textAlign:"मजकूर संरेखन",edges:"किनारी",sharp:"टोचरं",round:"गोलाकार",arrowheads:"बाण टोक",arrowhead_none:"कुठलाहि नाही",arrowhead_arrow:"बाण",arrowhead_bar:"दांडुक",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"त्रिकोण",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"अक्षर आकार",fontFamily:"अक्षर समूह",addWatermark:'"एक्सकेलीड्रॉ ने बनवलेलं" जोडा',handDrawn:"हातानी बनवलेलं",normal:"सामान्य",code:"सांकेतिक लिपि",small:"छोटे",medium:"मध्यम",large:"मोठं",veryLarge:"फार मोठं",solid:"भरीव",hachure:"हैशूर रेखांकन",zigzag:"वाकडी तिकड़ी",crossHatch:"आडव्या रेघा",thin:"पातळ",bold:"जाड",left:"डावं",center:"मधे",right:"उजवं",extraBold:"जास्त जाड",architect:"वास्तुविद्याविशारद",artist:"कलाकार",cartoonist:"व्यंग्य चित्रकार",fileTitle:"फाईलचे नाव",colorPicker:"रंग निवडक",canvasColors:"कॅनवास वर वापरलेले",canvasBackground:"पटल पार्श्वभूमि",drawingCanvas:"चित्र पटल",layers:"स्तर",actions:"क्रिया",language:"भाषा",liveCollaboration:"ज्वलंत सहयोग...",duplicateSelection:"प्रतिलिपि",untitled:"अशीर्षकांकित",name:"नाव",yourName:"तुमचे नाव",madeWithExcalidraw:"एक्सकेलीड्रॉ ने बनवलेलं",group:"समूह निवड",ungroup:"समूह निवड ला रद्द करा",collaborators:"Sahayog",showGrid:"ग्रिड दाखवा",addToLibrary:"संग्रह मधे सम्मिलित करा",removeFromLibrary:"संग्रहातून काढ़ा",libraryLoadingMessage:"संग्रह लोड होत आहे…",libraries:"संग्रह देखे",loadingScene:"दृश्य लोड होत आहे…",align:"संरेखित करा",alignTop:"वर संरेखित करा",alignBottom:"खाली संरेखित करा",alignLeft:"डावा बाजूला संरेखित करा",alignRight:"उजव्या बाजूला संरेखित करा",centerVertically:"मधल्या मधे उभं संरेखित करा",centerHorizontally:"मधल्या मधे आडवं संरेखित करा",distributeHorizontally:"आडवं वितरित करा",distributeVertically:"उभं वितरित करा",flipHorizontal:"आडवं फ्लिप करा",flipVertical:"उभं फ्लिप करा",viewMode:"पहायची पद्धत",share:"सामायिक करा",showStroke:"रेघ रंग निवड यंत्र दाखवा",showBackground:"पार्श्वभूमि: रंग निवड यंत्र दाखवा",toggleTheme:"शैली बदला",personalLib:"वैयक्तिक संग्रह",excalidrawLib:"एक्सकेलीड्रॉ संग्रह",decreaseFontSize:"अक्षर आकार छोटा करा",increaseFontSize:"अक्षर आकार मोठा करा",unbindText:"लेखन संबंध संपवा",bindText:"शब्द समूह ला पात्रात घ्या",createContainerFromText:"मजकूर कंटेनर मधे मोडून दाखवा",link:{edit:"दुवा संपादन",editEmbed:"कड़ी सम्पादित करा आणि रुतवा",create:"दुवा तयार करा",createEmbed:"नवीन कड़ी बनवा आणि रुतवा",label:"दुवा",labelEmbed:"कड़ी आणि रूतवणे",empty:"कुठलिही कड़ी दिली नाही"},lineEditor:{edit:"रेघ संपादन",exit:"रेघ संपादकाबाहेर"},elementLock:{lock:"कुलूपात ठेवा",unlock:"कुलूपातून बाहेर",lockAll:"सर्व कुलूपात ठेवा",unlockAll:"सर्व कुलूपातून बाहेर"},statusPublished:"प्रकाशित करा",sidebarLock:"साइडबार उघडं ठेवा",selectAllElementsInFrame:"चौकटीतले सर्व तत्वांचे चयन करा",removeAllElementsFromFrame:"चौकटीतून सर्व काढून टाका",eyeDropper:"चित्रफलकातून रंग निवडा",textToDiagram:"",prompt:""},jRe={noItems:"अजून कोणतेही आइटम जोडलेले नाही...",hint_emptyLibrary:"पटल वर एक वस्तु निवडुन एथे जोडा, किव्हा एक संग्रह जन कोष कडुन खाली स्थापित करा.",hint_emptyPrivateLibrary:"ईथे जोडण्या साठी पटल वरून एक वस्तु निवडा."},XRe={clearReset:"पटल पुसा",exportJSON:"फ़ाइलमधे बाहेर ठेवा",exportImage:"प्रतिमा निर्यात करा...",export:"येथे सुरक्षित करा...",copyToClipboard:"फळी वर कॉपी करा",save:"वर्तमान फ़ाइल मधे जतन करा",saveAs:"ह्या नावाने जतन करा",load:"उघडा",getShareableLink:"सामायिके साठी दुवा प्राप्त करा",close:"बंद करा",selectLanguage:"भाषा निवड करा",scrollBackToContent:"पहलेचा मजकुर वर मागे स्क्रॉल करा",zoomIn:"मोठं करून पहा",zoomOut:"छोटं करून पहा",resetZoom:"छोटं मोठं करणं बंद करा",menu:"यादि",done:"झालं",edit:"संपादित करा",undo:"पूर्ववत करा",redo:"पुन्हा करा(&R)",resetLibrary:"संग्रह पुनर्स्थित करा",createNewRoom:"एक नवी खोली बनवा",fullScreen:"पूर्ण दृश्यपटल",darkMode:"अंधार स्थिथि",lightMode:"उजेड स्थिति",zenMode:"ध्यानग्र स्थिति",objectsSnapMode:"वस्तूंपासून पकड़ा",exitZenMode:"ध्यानग्र स्थितितून बाहेर",cancel:"रद्द",clear:"स्वछ",remove:"हटवा",embed:"रुतवणे उलटे करा",publishLibrary:"प्रकाशित करा",submit:"जमा करा",confirm:"पुष्टि करा",embeddableInteractionButton:"संवादा साठी क्लिक करा"},$Re={clearReset:"पटल स्वच्छ होणार, तुम्हाला खात्री आहे का?",couldNotCreateShareableLink:"सामायी करण करण्या योग्य दुवा नाही बनवता आला.",couldNotCreateShareableLinkTooBig:"सामायी करण करण्या योग्य दुवा नाही बनवता आला: दृश्य फार मोठं आहे",couldNotLoadInvalidFile:"अवैध फ़ाइल लोड करता आली नाही",importBackendFailed:"बैकएंड हून मागवणे विफल झाले.",cannotExportEmptyCanvas:"रिकामा पटल जतन करता येत नाही.",couldNotCopyToClipboard:"पटल वर कॉपी नाही झाली.",decryptFailed:"डीक्रिप्ट करता आले नाही.",uploadedSecurly:"अपलोड या टोकापासून त्या टोकापर्यंत कूटबद्धित करून सुरक्षित केले गेले आहे, हयाचा अर्थ असा की एक्सकेलीड्रॉ सर्व्हर आणि तृतीय पक्ष मजकूर वाचू शकत नाहीत.",loadSceneOverridePrompt:"बाह्य रेखाचित्र लोड केल्याने तुमची तुमचा विद्यमान मजकूर बदलेल. हे काम तुम्हाला चालू ठेवायचे आहे का?",collabStopOverridePrompt:`सत्र थांबवल्याने तुमचे पूर्वीचे, स्थानिकरित्या संग्रहित रेखाचित्र अधिलिखित होईल. तुला खात्री आहे?
(तुम्हाला तुमचे स्थानिक रेखाचित्र ठेवायचे असल्यास, त्याऐवजी फक्त ब्राउझर टॅब बंद करा.)`,errorAddingToLibrary:"संग्रहात तत्व जोडू शकलो नाही",errorRemovingFromLibrary:"संग्रहातून तत्व काढू शकलो नाही",confirmAddLibrary:"हे तुमच्या संग्राहात {{numShapes}} आकार (एक किव्हा अनेक) जोडेल. तुला खात्री आहे?",imageDoesNotContainScene:"या प्रतिमेमध्ये कोणताही दृश्य डेटा असल्याचे दिसत नाही. बाहेर जतन करताना तुम्ही दृश्य रुतवले होते का?",cannotRestoreFromImage:"प्रतिमा फ़ाइल पासून दृश्य पुनः रचित नाही झाला",invalidSceneUrl:"दिलेल्या यू-आर-एल पासून दृश्य आणू शकलो नाही. तो एकतर बरोबार नाही आहे किंवा त्यात वैध एक्सकेलीड्रॉ जेसन डेटा नाही.",resetLibrary:"पटल स्वच्छ होणार, तुम्हाला खात्री आहे का?",removeItemsFromsLibrary:"संग्रहातून {{count}} तत्व (एक किव्हा अनेक) काढू?",invalidEncryptionKey:"कूटबद्धन कुंजी 22 अक्षरांची असणे आवश्यक आहे. थेट सहयोग अक्षम केले आहे.",collabOfflineWarning:`इंटरनेट कनेक्शन उपलब्ध नाही.
तुमचे बदल जतन केले जाणार नाहीत!`},ANe={unsupportedFileType:"असमर्थित फाइल प्रकार.",imageInsertError:"प्रतिमा आत घालता येत नाही. नंतर पुन्हा प्रयत्न करा...",fileTooBig:"फाइल फार मोठी आहे. आकाराची कमाल परवानगी {{maxSize}} आहे.",svgImageInsertError:"एस-वी-जी प्रतिमा आत घालवू शकलो नाही. एस-वी-जी-मार्क-अप यंत्र अयोग्य आहे.",failedToFetchImage:"प्रतिमा आणणे नाही जमले.",invalidSVGString:"अयोग्य एस-वी-जी.",cannotResolveCollabServer:"कॉलेब-सर्वर हे पोहोचत नाही आहे. पान परत लोड करायचा प्रयत्न करावे.",importLibraryError:"संग्रह प्रतिस्थापित नाही करता आला",collabSaveFailed:"काही कारणा निमित्त आतल्या डेटाबेसमध्ये जतन करू शकत नाही। समस्या तशिस राहिल्यास, तुम्ही तुमचे काम गमावणार नाही याची खात्री करण्यासाठी तुम्ही तुमची फाइल स्थानिक जतन करावी.",collabSaveFailed_sizeExceeded:`लगता है कि पृष्ठ तल काफ़ी बड़ा है, इस्कारण अंदरूनी डेटाबेस में सहेजा नहीं जा सका। किये काम को खोने न देने के लिये अपनी फ़ाइल को स्थानीय रूप से सहेजे।
बॅकएंड डेटाबेसमध्ये जतन करू शकत नाही, कॅनव्हास खूप मोठा असल्याचे दिसते. तुम्ही तुमचे काम गमावणार नाही याची खात्री करण्यासाठी तुम्ही फाइल स्थानिक पातळीवर जतन करावी.`,imageToolNotSupported:"प्रतिमां अक्षम केली गेली आहेत.",brave_measure_text_error:{line1:"असं वाटते की तुम्हीं Brave ब्राउज़र वापरतात आहात आणि त्या बरोबार <bold>आक्रामक पद्धति चें बोटांचे ठसे </bold> हां सेटिंग्स चा विकल्प चयन केलेला आहे.",line2:"हे तुमच्या चित्रांच्या <bold>पाठ तत्वांनां </bold> खंडित करू शकतात.",line3:"तुम्हाला आमच्या कड़ून खूप आग्रह आहे की हे सेटिंग्स मधले चयन नका करु. <link>हे अनुक्रम </link> हे कसे करावे हे दाखवु शकते.",line4:"ही सेटिंग अक्षम करूनही पृष्ठ योग्यरित्या प्रदर्शित होत नसल्यास, आमच्या GitHub वर <issueLink>समस्या</issueLink> सबमिट करा, किव्हा <discordLink>डिस्कॉर्ड</discordLink> वर आम्हाला लिहा"},libraryElementTypeError:{embeddable:"रुतलेले तत्व समूह कोषात जोडले जाऊ शकत नाही.",iframe:"आयफ़्रेम तत्व समूहकोषात जोडला जाऊ शकत नाही.",image:"प्रतिमा समूह कोषात जोड़ायचे लवकरच येत आहेत!"},asyncPasteFailedOnRead:"चिटकवता नाही जमले ( सिस्टम क्लिप्बॉर्ड पासून वाचणे नाही जमले).",asyncPasteFailedOnParse:"चिटकवता नाही जमले.",copyToSystemClipboardFailed:"क्लिपबोर्ड वर प्रतिलिपि करणे नाही जमले."},eNe={selection:"निवड",image:"प्रतिमा आत घाला",rectangle:"आयत",diamond:"चौकोन आकाराचा",ellipse:"अंडाकार",arrow:"बाण",line:"रेखा",freedraw:"रेखांकित करा",text:"टेक्स्ट",library:"संग्रह",lock:"निवडलेले यंत्र चित्रकरण झाल्या नंतर ही सक्रिय ठेवा",penMode:"पेन चा मोड - स्पर्श टाळा",link:"निवडलेल्या आकारासाठी दुवा जोडा/बदल करा",eraser:"खोड रबर",frame:"चौकट यंत्र",magicframe:"वायरफ़्रेम पासून सांकेतिक लिपि",embeddable:"वेब रुतवा",laser:"लेसर टॉर्च",hand:"हात ( सरकवण्या चे उपकरण)",extraTools:"आणिक यंत्रे",mermaidToExcalidraw:"मर्मेड पासून एक्सकाली मधे",magicSettings:"कृतिम बुद्दिवत्ता सेटिंग्स"},tNe={canvasActions:"पटल क्रिया",selectedShapeActions:"निवडित आकार क्रिया",shapes:"आकार"},rNe={canvasPanning:"कॅनव्हास सरकवण्या साठी, ड्रॅग करताना माउस व्हील धरा किंवा स्पेसबार दाबून ठेवा अथवा हात वालं उपकरण वापरा",linearElement:"अनेक बिंदु साठी क्लिक करा, रेघे साठी ड्रैग करा",freeDraw:"क्लिक आणि ड्रैग करा, झालं तेव्हा सोडा",text:"टीप: तुम्हीं निवड यंत्रानी कोठेही दुहेरी क्लिक करून टेक्स्ट जोडू शकता",embeddable:"वेबसाइट रुतोण्या साठी दाबून-खेचा (क्लिक-ड्रैग करा)",text_selected:"लेखन संपादन साठी दुहेरी क्लिक करा किव्हा एंटर दाबा",text_editing:"संपादन संपवायचं असल्यास एस्केप दाबा किव्हा कंट्रोल या कम्मांड बरोबार एंटर दाबा",linearElementMulti:"शेवटच्या बिंदु वर क्लिक करा किव्हा एस्केप या एंटर दाबा",lockAngle:"शिफ्ट धरून तुम्ही कोन मर्यादित करू शकता",resize:`आकार छोटा मोठा करताना SHIFT धरून तुम्ही प्रमाण मर्यादित करू शकता,
केंद्रापासून आकार छोटा मोठा करण्यासाठी ALT धरून ठेवा`,resizeImage:`SHIFT धरून तुम्ही मुक्तपणे आकार मोठा छोटा करु शकता,
केंद्रापासून आकार मोठा छोटा करण्यासाठी ALT धरून ठेवा`,rotate:"फिरवत असताना शिफ्ट धरून तुम्ही कोन मर्यादित करू शकता",lineEditor_info:"पॉइंट संपादित करण्यासाठी CtrlOrCmd दाबून ठेवुन डबल-क्लिक करा किंवा CtrlOrCmd + Enter बरोबर दाबा",lineEditor_pointSelected:`बिंदु (एक किव्हा अनेक) काढ़ण्या साठी डिलीट की दाबा,
CtrlOrCmd बरोबार D प्रति साठी,
किव्हा ड्रेग हलवण्या साठी`,lineEditor_nothingSelected:`संपादित करण्यासाठी एक बिंदू निवडा (अनेक निवडण्यासाठी SHIFT धरून ठेवा),
किंवा Alt धरून ठेवा आणि नवीन बिंदू जोडण्यासाठी क्लिक करा`,placeImage:"प्रतिमा ठेवण्यासाठी क्लिक करा, किंवा त्याचा आकार बदलण्या साठी क्लिक करा आणि ड्रॅग करा",publishLibrary:"आपला खाजगी संग्रह प्रकाशित करा",bindTextToElement:"मजकूर जोडण्यासाठी एंटर की दाबा",deepBoxSelect:"खोल निवड ह्या साठी कंट्रोल किव्हा कमांड दाबून ठेवा, आणि बाहेर खेचणे वाचवण्या साठी पण",eraserRevert:"खोडण्या साठी घेतलेल्या वस्तु ना घेण्या साठी Alt दाबून ठेवावे",firefox_clipboard_write:'हे वैशिष्ट्य "dom.events.asyncClipboard.clipboardItem" फ्लॅग "सत्य" वर सेट करून शक्यतो सक्षम केले जाऊ शकते. Firefox मध्ये ब्राउझर फ्लॅग बदलण्यासाठी, "about:config" पृष्ठावर जा.',disableSnapping:"स्नैपिंग अक्षम करण्या साठी CtrlOrCmd दाबून ठेवा"},iNe={cannotShowPreview:"पूर्वावलोकन दाखवू शकत नाही",canvasTooBig:"पटल खूप जास्त मोठा असू शकतो.",canvasTooBigTip:"टीप: दूर चा तत्व थोडं जवळ आणण्याचा प्रयत्न करावा."},uNe={headingMain:"त्रुटि आली. परत प्रयत्न करा <button>ह्या पानाला पुनः लोड करा.</button>",clearCanvasMessage:"रीलोडिंग होत नसल्यास, परत प्रयत्न करा <button>पटल स्वच्छ करित आहे.</button>",clearCanvasCaveat:" त्यामुळे केलेल्या कामाचे नुकसान होईल ",trackedToSentry:"त्रुटि क्रमांक के साथ त्रुटि {{eventId}} आमच्या प्रणाली नी निरीक्षण केले होते.",openIssueMessage:"त्रुटीत तुमची दृश्य माहिती समाविष्ट न करण्यासाठी आम्ही खूप सावध होतो. तुमचा सीन खाजगी नसल्यास, कृपया आम्हाला पुढ च्या कारवाई साठी सम्पर्क साधा <button>त्रुटि व्यवस्थापन.</button> कृपया गिटहब समस्येमध्ये कॉपी आणि पेस्ट करून खालिल माहिती समाविष्ट करा.",sceneContent:"दृश्य विषय:"},aNe={desc_intro:"तुम्‍ही तुमच्‍या सध्‍याच्‍या दृश्यासाठी लोकांना आपल्‍यासह सहयोग करण्‍यासाठी आमंत्रित करू शकता.",desc_privacy:"काळजी करू नका, सत्र या टोकापासून त्या टोकापर्यंत कूटबद्धता वापरते, त्यामुळे तुम्ही जे काही काढाल ते खाजगी राहील. तुम्ही काय घेऊन आला आहात हे आमचा सर्व्हर ही देखील पाहू शकत नाही.",button_startSession:"सत्र सुरु करा",button_stopSession:"सत्र थाम्बवा",desc_inProgressIntro:"थेट सहयोग सत्र चालू आहे.",desc_shareLink:"तुम्ही ज्यांच्याशी सहयोग करू इच्छिता त्यांच्याशी ही दुवा सामायिक करा:",desc_exitSession:"सत्र थांबवल्याने तुम्हीं खोली तून बाहेर याल, तरिही तुम्ही स्थानिक पातळीवर दृश्यासह काम करु शकाल. लक्षात ठेवा की याचा इतर लोकांवर परिणाम होणार नाही आणि ते त्यांच्या आवृत्तीवर सहयोग करित राहातील.",shareTitle:"एक्सकेलीड्रॉ वर थेट सहयोग सत्रात सामील व्हा"},nNe={title:"त्रुटि"},oNe={disk_title:"डिस्क मधे जतन करा",disk_details:"सीन डेटा बाहेर एक फ़ाइल मधे जतन करा, त्या फ़ाइल मधुम तो डेटा नंतर परत आणु शकता.",disk_button:"फ़ाइल मधे जतन करा",link_title:"सामायिके साठी दुवा",link_details:"नुसतं वाचु देणारा दुवा चा स्वरूपे बाहेर ठेवा.",link_button:"दुवा स्वरूपे बाहेर ठेवा",excalidrawplus_description:"दृश्य तुमच्या एक्सकेलीड्रॉ कार्यक्षेत्र मधे जतन करा.",excalidrawplus_button:"बाहेर ठेवा",excalidrawplus_exportError:"एक्सकेलीड्रॉ मधे बाहेर ठेवता नाही येत..."},sNe={blog:"आमचा ब्लॉग वाचा",click:"क्लिक करा",deepSelect:"खोल निवड",deepBoxSelect:"चौकट मधे खोल निवड करा आणि बाहेर ओढणे वाचवा",curvedArrow:"वक्र बाण",curvedLine:"वक्र रेघ",documentation:"कागदपत्रे",doubleClick:"दुहेरी क्लिक",drag:"ओढा",editor:"संपादक",editLineArrowPoints:"रेघ/तीर बिंदु सम्पादित करा",editText:"पाठ्य सम्पादित करा/ लेबल जोडा",github:"समस्या मिळाली? प्रस्तुत करा",howto:"आमच्या मार्गदर्शकाचे अनुसरण करा",or:"किंवा",preventBinding:"बाण बंधन होणं टाळा",tools:"अवजार",shortcuts:"कीबोर्ड शॉर्टकट",textFinish:"संपादन संपले (मजकूर संपादन)",textNewLine:"नवी ओळ जोडा (मजकूर संपादक)",title:"मदत",view:"दृश्य",zoomToFit:"सर्व तत्व दिसतील असे दृश्यरूप आकार करा",zoomToSelection:"निवडी प्रयंत दृश्यरूप आकार करा",toggleElementLock:"कुलूपातून आत/बाहेर निवड",movePageUpDown:"पान वर/खाली करा",movePageLeftRight:"पान डावी/उजवी कडे करा"},lNe={title:"पटल स्वच्छ करा"},gNe={title:"संग्रह प्रकाशित करा",itemName:"वस्तु चे नाव",authorName:"लेखक चे नाव",githubUsername:"गिटहब वापरकर्तानाव",twitterUsername:"ट्विटर वापरकर्तानाव",libraryName:"संग्रहाचे नाव",libraryDesc:"संग्रहाचे वर्णन",website:"वेबसाइट",placeholder:{authorName:"तुमचे नाव किव्हा वापरकर्तानाव",libraryName:"तुमचा संग्रहाचे नाव",libraryDesc:"तुमचा संग्रहाचे वर्णन लोकांना संग्रहा बद्दल जाणकारी देतील",githubHandle:"गिटहब हैंडल (वैकल्पिक), एकदा संग्रह पुनरावलोकना साठी जमा केल्या नंतर ही तुम्हीं सम्पादित करु शकता",twitterHandle:"ट्विटर वापरकार्यक नाव (वैकल्पिक), त्यामुळे ट्विटर वर ज़हीरांति साठी कोणाला गुण द्यायचे हे आम्हाला समजेल",website:"दुवा तुमच्या वैयक्तिक वेब-साइट किव्हा कुठे दूसरिकडे (ऐच्छिक) करावा"},errors:{required:"आवश्यक आहे",website:"वैध यू-आर-एल द्या"},noteDescription:"समाविष्ट करण्या साठी तुमचा संग्रह ह्याचात जमा करा <link>सार्वजनिक संग्रहाचे कोठार</link>इतर लोकांना त्यांच्या रेखाचित्रांमधे वापरण्यासाठी.",noteGuidelines:"संग्रहाला आधी स्वहस्ते स्वीकृती मिळणे आवश्यक आहे. कृपया हे वाचा <link>मार्गदर्शक तत्त्वे</link> जमा करण्या पूर्वी, तुमच्या जवळ एक गिटहब खाते असणे आवश्यक आहे जे संवादा साठी आणिक बदल करण्या साठी लागेल, तरी हे सर्व अगदी आवश्यक नाही आहे.",noteLicense:"जमा करताना तुम्हीं सहमति दाखवतात आहे की संग्रह ह्याचा खाली प्रकाशित होईल <link>एम-आइ-टी परवाना, </link>ज्याचा थोडक्यात अर्थ कोणीही निर्बंधांशिवाय वापरू शकतो.",noteItems:"प्रतैक संग्रहाचे नाव, नीट शोधनासाठी, असणे आवश्यक आहे. खाली दिलेल्या वस्तु समाविष्ट केल्या जातील:",atleastOneLibItem:"सुरु करण्यासाठी, कृपया करून, कमित कमी एक वस्तु तरी निवडा",republishWarning:"टीप: काही निवडक आयटम आधीच प्रकाशित/प्रस्तुत केलेले आहेत. विद्यमान लायब्ररी किंवा प्रस्तुतित आयटम अद्यावित करताना तुम्ही फक्त तो पुन्हा प्रस्तुत करा."},cNe={title:"संग्रह जमा केला",content:"धन्यवाद {{authorName}}. आपला संग्रह पुनरावलोकना साठी जमा झाला आहे. तुम्हीं स्थिति सारखी तपासू सकता<link>इकडे</link>"},CNe={resetLibrary:"संग्रह पुनर्स्थित करा",removeItemsFromLib:"निवडलेले आयटम्स संग्रहातून काढा"},BNe={header:"प्रतिमा निर्यात करा",label:{withBackground:"पार्श्वभूमि",onlySelected:"फक्त चयन केलेले",darkMode:"अंधारमय स्थिति",embedScene:"दृश्य रुतवा",scale:"क़िती पट",padding:"ग़ादी"},tooltip:{embedScene:"दृश्य डेटा निर्यात केलेल्या पी-एन-जी किव्हा एस-वी-जी फ़ाईल मधे सुरक्षीत केला जाईल, त्याने दृश्य पुनः परत आणता येईल. निर्यात केलेली फ़ाईल चा आकार त्याने वाढेल."},title:{exportToPng:"पी-एन-जी स्वरूपात बाहेर ठेवा",exportToSvg:"एस-वी-जी स्वरूपात बाहेर ठेवा",copyPngToClipboard:"पी-एन-जी रूपे फळी वर कॉपी करा"},button:{exportToPng:"पीएनजी",exportToSvg:"एसविज़ी",copyPngToClipboard:"फळी वर कॉपी करा"}},ENe={tooltip:"तुमचे चित्रे या टोकापासून त्या टोकापर्यंत कूटबद्धतित आहेत, त्या कारणांनी ऐक्सकैलिड्रॉ सर्वर्स ह्यानां ते पहाणं कधीच जमणार नाही.",link:"ब्लॉग पोस्ट ऐक्सकैलिड्रॉ मधे या टोकापासून त्या टोकापर्यंत कूटबद्धतित आहेत"},dNe={angle:"कोण",element:"वस्तु",elements:"वस्तु",height:"उंची",scene:"दृश्य",selected:"निवडलेले",storage:"साठवण",title:"अभ्यासू लोगो के लिये आंकडे",total:"योग",version:"आवृत्ती",versionCopy:"कॉपी करायला क्लिक करा",versionNotAvailable:"आवृति उपलब्ध नाही",width:"रुंदी"},INe={addedToLibrary:"संग्रह मधे सम्मिलित",copyStyles:"कॉपी केलेली शैली.",copyToClipboard:"फळी वर कॉपी झाली.",copyToClipboardAsPng:`{{exportSelection}} फळी वर पी-एन-जी स्वरूपात कॉपी झाली
({{exportColorScheme}})`,fileSaved:"फ़ाइल जतन झाली.",fileSavedToFilename:"{filename} मधे जतन झाली",canvas:"पटल",selection:"निवड",pasteAsSingleElement:`एक घटक म्हणून चिपकावण्या साठी {{shortcut}} वापरा,
किंवा विद्यमान मजकूर संपादकात चिपकवा`,unableToEmbed:"युआरेल रूतवणे प्रतिबंधित आहेत. आपली युआरेल श्वेतसूचित आणण्या साठी कृपया एक मुद्दा ग़िटहब वर उठवा",unrecognizedLinkFormat:"जी युआरेल तुम्हीं रतवली आहे, ती आपेक्षित प्रकारे नाही आहे. कृपया स्त्रोत साइट नी 'रूतवण्या साठी दिलेलि लिपि' चिपकावण्याचा प्रयास करा"},hNe={transparent:"पारदर्शक",black:"काळा",white:"पांढरा",red:"लाल",pink:"गुलाबी",grape:"अंगूरी",violet:"जांभळा",gray:"राखाडी",blue:"निळा",cyan:"आकाशी",teal:"हिरवट निळा",green:"हिरवा",yellow:"पिवळा",orange:"केशरी",bronze:"कांस्य"},QNe={app:{center_heading:"तुमचा सर्व डेटा तुमच्या ब्राउझरमध्ये स्थानिक पातळीवर जतन केला जातो.",center_heading_plus:"त्याऐवजी तुम्हाला Excalidraw+ वर जायचे आहे का?",menuHint:"निर्यात, आवड़ी-निवडी, भाषा, ..."},defaults:{menuHint:"निर्यात, आवड़ी निवडी आणि आणकिही...",center_heading:"आकृत्या. काढणे. सोपे.",toolbarHint:"एक साधन निवडा आणि चित्रीकरण सुरु करा!",helpHint:"शॉर्टकट आणि सहाय्य"}},pNe={mostUsedCustomColors:"सर्वात जास्त वापरणीस रंग",colors:"रंग",shades:"रंगछटा",hexCode:"हेक्स कोड",noShades:"ह्या रंगाच्या छटा उपलब्ध नाहित"},fNe={action:{exportToImage:{title:"छवि स्वरूपे निर्यात करा",button:"छवि स्वरूपे निर्यात करा",description:"सीन डेटा बाहेर एक फ़ाइल मधे जतन करा, त्या फ़ाइल मधुन तो डेटा नंतर परत आणु शकता."},saveToDisk:{title:"डिस्क मधे जतन करा",button:"डिस्क मधे जतन करा",description:"सीन डेटा बाहेर एक फ़ाइल मधे जतन करा, त्या फ़ाइल मधुन तो डेटा नंतर परत आणु शकता."},excalidrawPlus:{title:"एक्षकालीड्रॉ +",button:"एक्षकाली ड्रॉ+ मधे निर्यात करा",description:"दृष्य तुमच्या एक्षकालीड्रॉ+ चा कार्यस्थल मधे जतन करा."}},modal:{loadFromFile:{title:"फ़ाइल मधुन लोड करा",button:"फ़ाइल मधुन लोड करा",description:"फ़ाइल मधुन लोड केल्या वर ते <bold>तुमचा सध्याचा कामा ठिकाणि एईल </bold><br></br> तुम्हीं तुमचं चित्र एकाधं खाली दिलेलं विकल्प निवडुन पहले सुरक्षीत करु शकता."},shareableLink:{title:"लिंक पासून लोड करा",button:"माझ सध्याचे कार्य बदला",description:"बाहरी चित्र लोड केल्या वर ते <bold>तुमचा सध्याचा कामा ठिकाणि एईल </bold><br></br> तुम्हीं तुमचं चित्र एकाधं खाली दिलेलं विकल्प निवडुन पहले सुरक्षीत करु शकता."}}},mNe={title:"मर्मेड पासून एक्सकाली मधे",button:"शिरवा",description:"",syntax:"मर्मेड संरचना नियम",preview:"पूर्वावलोकन"},qcr={labels:VRe,library:jRe,buttons:XRe,alerts:$Re,errors:ANe,toolBar:eNe,headings:tNe,hints:rNe,canvasError:iNe,errorSplash:uNe,roomDialog:aNe,errorDialog:nNe,exportDialog:oNe,helpDialog:sNe,clearCanvasDialog:lNe,publishDialog:gNe,publishSuccessDialog:cNe,confirmDialog:CNe,imageExportDialog:BNe,encrypted:ENe,stats:dNe,toast:INe,colors:hNe,welcomeScreen:QNe,colorPicker:pNe,overwriteConfirm:fNe,mermaid:mNe}});var XNe={};Dt(XNe,{alerts:()=>kNe,buttons:()=>vNe,canvasError:()=>RNe,clearCanvasDialog:()=>YNe,colorPicker:()=>ZNe,colors:()=>qNe,confirmDialog:()=>JNe,default:()=>zcr,encrypted:()=>PNe,errorDialog:()=>UNe,errorSplash:()=>NNe,errors:()=>FNe,exportDialog:()=>MNe,headings:()=>SNe,helpDialog:()=>TNe,hints:()=>LNe,imageExportDialog:()=>ONe,labels:()=>wNe,library:()=>bNe,mermaid:()=>jNe,overwriteConfirm:()=>VNe,publishDialog:()=>HNe,publishSuccessDialog:()=>KNe,roomDialog:()=>GNe,stats:()=>_Ne,toast:()=>WNe,toolBar:()=>xNe,welcomeScreen:()=>zNe});var wNe,bNe,vNe,kNe,FNe,xNe,SNe,LNe,RNe,NNe,GNe,UNe,MNe,TNe,YNe,HNe,KNe,JNe,ONe,PNe,_Ne,WNe,qNe,zNe,ZNe,VNe,jNe,zcr;var $Ne=_(()=>{zt();wNe={paste:"ထား",pasteAsPlaintext:"",pasteCharts:"",selectAll:"အကုန်ရွေး",multiSelect:"ရွေးထားသည့်ထဲပုံထည့်",moveCanvas:"ကားချပ်ရွှေ့",cut:"",copy:"ကူး",copyAsPng:"PNG အနေဖြင့်ကူး",copyAsSvg:"SVG အနေဖြင့်ကူး",copyText:"",copySource:"",convertToCode:"",bringForward:"ရှေ့ပို့",sendToBack:"နောက်ဆုံးထား",bringToFront:"ရှေ့ဆုံးထား",sendBackward:"နောက်ပို့",delete:"ဖျက်",copyStyles:"ပုံစံကူး",pasteStyles:"ပုံစံထား",stroke:"မျဉ်း",background:"နောက်ခံ",fill:"ဖြည့်",strokeWidth:"မျဉ်းအထူ",strokeStyle:"မျဉ်းပုံစံ",strokeStyle_solid:"အပြည့်",strokeStyle_dashed:"မျဉ်းပြတ်",strokeStyle_dotted:"မျဉ်းစက်",sloppiness:"သေသပ်မှု",opacity:"ထင်ရှားမှု",textAlign:"စာသားညှိ",edges:"အစွန်း",sharp:"ထောင့်ချွန်",round:"ထောင့်ဝိုင်း",arrowheads:"မြှားခေါင်း",arrowhead_none:"ဘာမျှမရှိ",arrowhead_arrow:"မြှား",arrowhead_bar:"",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"စာလုံးအရွယ်",fontFamily:"စာလုံးပုံစံ",addWatermark:'"Excalidraw ဖြင့်ဖန်တီးသည်။" စာသားထည့်',handDrawn:"လက်ရေး",normal:"ပုံမှန်",code:"ကုဒ်",small:"အသေး",medium:"အလတ်",large:"အကြီး",veryLarge:"ပိုကြီး",solid:"အပြည့်",hachure:"မျဉ်းစောင်း",zigzag:"",crossHatch:"ဇကာကွက်",thin:"ပါး",bold:"ထူ",left:"ဘယ်",center:"အလယ်",right:"ညာ",extraBold:"ပိုထူ",architect:"ဗိသုကာ",artist:"ပန်းချီ",cartoonist:"ကာတွန်း",fileTitle:"",colorPicker:"အရောင်ရွေး",canvasColors:"",canvasBackground:"ကားချပ်နောက်ခံ",drawingCanvas:"ပုံဆွဲကားချပ်",layers:"အလွှာများ",actions:"လုပ်ဆောင်ချက်များ",language:"ဘာသာစကား",liveCollaboration:"",duplicateSelection:"ပွား",untitled:"အမည်မရှိ",name:"အမည်",yourName:"သင့်အမည်",madeWithExcalidraw:"Excalidraw ဖြင့်ဖန်တီးသည်။",group:"အုပ်စုဖွဲ့",ungroup:"အုပ်စုဖျက်သိမ်း",collaborators:"ပူးပေါင်းပါဝင်သူများ",showGrid:"",addToLibrary:"မှတ်တမ်းတင်",removeFromLibrary:"မှတ်တမ်းမှထုတ်",libraryLoadingMessage:"မှတ်တမ်းအား တင်သွင်းနေသည်…",libraries:"စာကြည့်တိုက်တွင်ရှာဖွေပါ",loadingScene:"မြင်ကွင်းဖော်နေသည်…",align:"ချိန်ညှိ",alignTop:"ထိပ်ညှိ",alignBottom:"အခြေညှိ",alignLeft:"ဘယ်ညှိ",alignRight:"ညာညှိ",centerVertically:"ဒေါင်လိုက်အလယ်ညှိ",centerHorizontally:"အလျားလိုက်အလယ်ညှိ",distributeHorizontally:"အလျားလိုက်",distributeVertically:"ထောင်လိုက်",flipHorizontal:"",flipVertical:"",viewMode:"",share:"",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},bNe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},vNe={clearReset:"ကားချပ်ရှင်းလင်း",exportJSON:"",exportImage:"",export:"",copyToClipboard:"ကူးယူ",save:"",saveAs:"ပြောင်းသိမ်း",load:"",getShareableLink:"မျှဝေရန် လင့်ခ်ရယူ",close:"ပိတ်",selectLanguage:"ဘာသာစကားရွေးပါ",scrollBackToContent:"ကားချပ်ပြန်တည်",zoomIn:"ချဲ့",zoomOut:"ချုံ့",resetZoom:"ပုံမှန်ပြန်ထား",menu:"မီနူး",done:"ပြီးပြီ",edit:"ပြင်ဆင်",undo:"ပြန်ထား",redo:"ထပ်လုပ်",resetLibrary:"",createNewRoom:"အခန်းသစ်ဖွဲ့",fullScreen:"",darkMode:"",lightMode:"",zenMode:"",objectsSnapMode:"",exitZenMode:"ဇင်မြင်ကွင်းမှထွက်",cancel:"",clear:"",remove:"",embed:"",publishLibrary:"",submit:"",confirm:"",embeddableInteractionButton:""},kNe={clearReset:"ကားချပ်တစ်ခုလုံးရှင်းလင်းပါတော့မည်။ အတည်ပြုပါ။",couldNotCreateShareableLink:"မျှဝေရန် လင့်ခ်မရယူနိုင်သေးပါ။",couldNotCreateShareableLinkTooBig:"မြင်ကွင်းအရမ်းကြီးနေသဖြင့် မျှဝေရန် လင့်ခ်မရယူနိုင်သေးပါ။",couldNotLoadInvalidFile:"လွဲမှားနေသောဖိုင်အား တင်၍မရပါ။",importBackendFailed:"Backend မှမလုပ်ဆောင်နိုင်သေးပါ။",cannotExportEmptyCanvas:"ကားချပ်အလွတ်အားထုတ်ယူ၍မရပါ။",couldNotCopyToClipboard:"",decryptFailed:"အချက်အလက်ဖော်ယူ၍မရပါ။",uploadedSecurly:"တင်သွင်းအချက်အလက်များအား နှစ်ဘက်စွန်းတိုင်လျှို့ဝှက်စနစ်အသုံးပြု၍လုံခြုံစွာထိန်းသိမ်းထားပါသဖြင့် Excalidraw ဆာဗာနှင့်ဆက်စပ်အဖွဲ့အစည်းများပင်လျှင်မဖတ်ရှုနိုင်ပါ။",loadSceneOverridePrompt:"လက်ရှိရေးဆွဲထားသမျှအား ပြင်ပမှတင်သွင်းသောပုံနှင့်အစားထိုးပါမည်။ ဆက်လက်ဆောင်ရွက်လိုပါသလား။",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"{{numShapes}} ခုသောပုံသဏ္ဌာန်အားမှတ်တမ်းတင်ပါမည်။ အတည်ပြုပါ။",imageDoesNotContainScene:"",cannotRestoreFromImage:"ဤပုံဖြင့်မြင်ကွင်းပြန်လည်မရယူနိုင်ပါ။",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},FNe={unsupportedFileType:"",imageInsertError:"",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},xNe={selection:"ရွေးချယ်",image:"",rectangle:"စတုဂံ",diamond:"စိန်",ellipse:"အဝိုင်း",arrow:"မြှား",line:"မျဉ်း",freedraw:"",text:"စာသား",library:"မှတ်တမ်း",lock:"ရွေးချယ်ထားသောကိရိယာကိုသာဆက်သုံး",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},SNe={canvasActions:"ကားချပ်လုပ်ဆောင်ချက်",selectedShapeActions:"ပုံသဏ္ဌာန်လုပ်ဆောင်ချက်",shapes:"ပုံသဏ္ဌာန်များ"},LNe={canvasPanning:"",linearElement:"အမှတ်များချမှတ်ရေးဆွဲရန်ကလစ်နှိပ်ပါ၊ မျဉ်းတစ်ကြောင်းတည်းအတွက် တရွတ်ဆွဲပါ။",freeDraw:"ကလစ်နှိပ်၍ တရွတ်ဆွဲပါ၊ ပြီးလျှင်လွှတ်ပါ။",text:"မှတ်ချက်။ ။မည်သည့်ကိရိယာရွေးထားသည်ဖြစ်စေ ကလစ်နှစ်ချက်နှိပ်၍စာသားထည့်နိုင်သည်",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"နောက်ဆုံးအမှတ်ပေါ်တွင်ကလစ်နှိပ်ခြင်း၊ Escape (သို့) Enter နှိပ်ခြင်းတို့ဖြင့်အဆုံးသတ်နိုင်",lockAngle:"",resize:"အချိုးအစားကန့်သတ်ရန် Shift နှင့် ဗဟိုမှချိန်ညှိရန် Alt တို့ကိုနှိပ်ထားနိုင်သည်",resizeImage:"",rotate:"Shift ကိုနှိပ်ထားခြင်းဖြင့် ထောင့်အလိုက်လှည့်နိုင်သည်",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},RNe={cannotShowPreview:"နမူနာမပြသနိုင်ပါ",canvasTooBig:"ကားချပ်အလွန်ကြီးကောင်းကြီးနေနိုင်သည်။",canvasTooBigTip:"မှတ်ချက်။ ။ဝေးကွာနေသော ပုံများ၊ စာများအား ပိုမိုနီးကပ်အောင်ရွှေ့ကြည့်ပါ။"},NNe={headingMain:"ချို့ယွင်းမှုဖြစ်ပေါ်ခဲ့သဖြင့် ထပ်မံကြိုးစားကြည့်ရန် <button>စာမျက်နှာအား အသစ်ပြန်လည်ရယူပါ။</button>",clearCanvasMessage:"အသစ်ပြန်လည်မရယူနိုင်ပါက ထပ်မံကြိုးစားကြည့်ရန်<button>ကားချပ်အား ရှင်းလင်းပါ။</button>",clearCanvasCaveat:" ရေးဆွဲထားသည်များ ဆုံးရှုံးနိုင်သည် ",trackedToSentry:"ချို့ယွင်းမှုသတ်မှတ်ချက် {{eventId}} အားစနစ်အတွင်းခြေရာကောက်ပြီးပါပြီ။",openIssueMessage:"ချို့ယွင်းမှုမှတ်တမ်းတွင် အရေးကြီးအချက်အလက်များပါဝင်မှုမရှိစေရန်အထူးသတိပြုပါသည်။ မပါဝင်ပါက ဆက်လက်ဆောင်ရွက်ရန် <button>ချို့ယွင်းမှုအားခြေရာကောက်ပါ။</button> အောက်ပါအချက်အလက်များအား Github တွင် Issue အနေဖြင့်ဖြည့်သွင်းဖော်ပြပေးပါ။",sceneContent:"မြင်ကွင်းပါအချက်အလက်။ ။"},GNe={desc_intro:"လက်ရှိမြင်ကွင်းတွင်ပူးပေါင်းရေးဆွဲရန် အခြားသူများအား ဖိတ်ကြားနိုင်သည်။",desc_privacy:"နှစ်ဘက်စွန်းတိုင်လျှို့ဝှက်ထားသဖြင့်ရေးဆွဲသမျှအား ဆာဗာပေါ်မှပင်လျှင်ကြည့်ရှုနိုင်မည်မဟုတ်ပါ။ မစိုးရိမ်ပါနှင့်။",button_startSession:"ပူးပေါင်းမှုစတင်",button_stopSession:"ပူးပေါင်းမှုအဆုံးသတ်",desc_inProgressIntro:"တိုက်ရိုက်ပူးပေါင်းရေးဆွဲမှုများပြုလုပ်နေပါသည်။",desc_shareLink:"ဤလင့်ခ်အား ပူးပေါင်းရေးဆွဲလိုသူများထံပေးပို့ပါ။ ။ ",desc_exitSession:"ပူးပေါင်းမှုရပ်တန့်ပါက အဖွဲ့အတွင်းမှထွက်ခွာသွားမည်ဖြစ်သော်လည်း မိမိမြင်ကွင်းတွင်ဆက်လက်ရေးဆွဲနိုင်ပါမည်။ အဖွဲ့အတွင်းကျန်ရှိနေခဲ့သောအခြားပါဝင်သူများသည်လည်း ဆက်လက်ပူးပေါင်းရေးဆွဲနေနိုင်ပါလိမ့်မည်။",shareTitle:""},UNe={title:"ချို့ယွင်းချက်"},MNe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},TNe={blog:"",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},YNe={title:""},HNe={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},KNe={title:"",content:""},JNe={resetLibrary:"",removeItemsFromLib:""},ONe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},PNe={tooltip:"ရေးဆွဲထားသောပုံများအား နှစ်ဘက်စွန်းတိုင်လျှို့ဝှက်ထားသဖြင့် Excalidraw ၏ဆာဗာများပင်လျှင်မြင်တွေ့ရမည်မဟုတ်ပါ။",link:""},_Ne={angle:"ထောင့်",element:"",elements:"",height:"အမြင့်",scene:"မြင်ကွင်း",selected:"ရွေးချယ်သည်",storage:"သိုလှောင်ခန်း",title:"အက္ခရာများအတွက်အချက်အလက်များ",total:"စုစုပေါင်း",version:"",versionCopy:"",versionNotAvailable:"",width:"အကျယ်"},WNe={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},qNe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},zNe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},ZNe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},VNe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},jNe={title:"",button:"",description:"",syntax:"",preview:""},zcr={labels:wNe,library:bNe,buttons:vNe,alerts:kNe,errors:FNe,toolBar:xNe,headings:SNe,hints:LNe,canvasError:RNe,errorSplash:NNe,roomDialog:GNe,errorDialog:UNe,exportDialog:MNe,helpDialog:TNe,clearCanvasDialog:YNe,publishDialog:HNe,publishSuccessDialog:KNe,confirmDialog:JNe,imageExportDialog:ONe,encrypted:PNe,stats:_Ne,toast:WNe,colors:qNe,welcomeScreen:zNe,colorPicker:ZNe,overwriteConfirm:VNe,mermaid:jNe}});var vGe={};Dt(vGe,{alerts:()=>rGe,buttons:()=>tGe,canvasError:()=>oGe,clearCanvasDialog:()=>BGe,colorPicker:()=>yGe,colors:()=>mGe,confirmDialog:()=>IGe,default:()=>Zcr,encrypted:()=>QGe,errorDialog:()=>gGe,errorSplash:()=>sGe,errors:()=>iGe,exportDialog:()=>cGe,headings:()=>aGe,helpDialog:()=>CGe,hints:()=>nGe,imageExportDialog:()=>hGe,labels:()=>AGe,library:()=>eGe,mermaid:()=>bGe,overwriteConfirm:()=>wGe,publishDialog:()=>EGe,publishSuccessDialog:()=>dGe,roomDialog:()=>lGe,stats:()=>pGe,toast:()=>fGe,toolBar:()=>uGe,welcomeScreen:()=>DGe});var AGe,eGe,tGe,rGe,iGe,uGe,aGe,nGe,oGe,sGe,lGe,gGe,cGe,CGe,BGe,EGe,dGe,IGe,hGe,QGe,pGe,fGe,mGe,DGe,yGe,wGe,bGe,Zcr;var kGe=_(()=>{zt();AGe={paste:"Lim inn",pasteAsPlaintext:"Lim inn som klartekst",pasteCharts:"Lim inn diagrammer",selectAll:"Velg alt",multiSelect:"Legg til element i utvalg",moveCanvas:"Flytt lerretet",cut:"Klipp ut",copy:"Kopier",copyAsPng:"Kopier til PNG",copyAsSvg:"Kopier til utklippstavlen som SVG",copyText:"Kopier til utklippstavlen som tekst",copySource:"",convertToCode:"",bringForward:"Flytt framover",sendToBack:"Send bakerst",bringToFront:"Flytt forrest",sendBackward:"Send bakover",delete:"Slett",copyStyles:"Kopier stiler",pasteStyles:"Lim inn stiler",stroke:"Strek",background:"Bakgrunn",fill:"Fyll",strokeWidth:"Strektykkelse",strokeStyle:"Strekstil",strokeStyle_solid:"Heltrukket",strokeStyle_dashed:"Stiplet",strokeStyle_dotted:"Prikket",sloppiness:"Ujevnhet",opacity:"Synlighet",textAlign:"Tekstjustering",edges:"Kanter",sharp:"Skarp",round:"Rund",arrowheads:"Pilspisser",arrowhead_none:"Ingen",arrowhead_arrow:"Pil",arrowhead_bar:"Søyle",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trekant",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Skriftstørrelse",fontFamily:"Fontfamilie",addWatermark:'Legg til "Laget med Excalidraw"',handDrawn:"Håndtegnet",normal:"Normal",code:"Kode",small:"Liten",medium:"Medium",large:"Stor",veryLarge:"Svært stor",solid:"Helfarge",hachure:"Skravert",zigzag:"Sikk-sakk",crossHatch:"Krysskravert",thin:"Tynn",bold:"Tykk",left:"Venstre",center:"Midtstill",right:"Høyre",extraBold:"Ekstra tykk",architect:"Arkitekt",artist:"Kunstner",cartoonist:"Tegner",fileTitle:"Filnavn",colorPicker:"Fargevelger",canvasColors:"Brukes på lerretet",canvasBackground:"Lerretsbakgrunn",drawingCanvas:"Lerret",layers:"Lag",actions:"Handlinger",language:"Språk",liveCollaboration:"Sanntids-samarbeid...",duplicateSelection:"Dupliser",untitled:"Uten navn",name:"Navn",yourName:"Ditt navn",madeWithExcalidraw:"Laget med Excalidraw",group:"Gruppér utvalg",ungroup:"Avgruppér utvalg",collaborators:"Samarbeidspartnere",showGrid:"Vis rutenett",addToLibrary:"Legg til i bibliotek",removeFromLibrary:"Fjern fra bibliotek",libraryLoadingMessage:"Laster bibliotek…",libraries:"Bla gjennom biblioteker",loadingScene:"Laster inn scene…",align:"Juster",alignTop:"Juster øverst",alignBottom:"Juster nederst",alignLeft:"Juster venstre",alignRight:"Juster høyre",centerVertically:"Midtstill vertikalt",centerHorizontally:"Midtstill horisontalt",distributeHorizontally:"Distribuer horisontalt",distributeVertically:"Distribuer vertikalt",flipHorizontal:"Snu horisontalt",flipVertical:"Snu vertikalt",viewMode:"Visningsmodus",share:"Del",showStroke:"Vis fargevelger for kantfarge",showBackground:"Vis fargevelger for bakgrunnsfarge",toggleTheme:"Veksle tema",personalLib:"Personlig bibliotek",excalidrawLib:"Excalidraw-bibliotek",decreaseFontSize:"Reduser skriftstørrelse",increaseFontSize:"Øk skriftstørrelse",unbindText:"Avbind tekst",bindText:"Bind tekst til beholderen",createContainerFromText:"La tekst flyte i en beholder",link:{edit:"Rediger lenke",editEmbed:"Rediger lenke og bygg inn",create:"Opprett lenke",createEmbed:"Opprett lenke og bygg inn",label:"Lenke",labelEmbed:"Lenk & bygg inn",empty:"Ingen lenke er valgt"},lineEditor:{edit:"Rediger linje",exit:"Avslutt linjeredigering"},elementLock:{lock:"Lås",unlock:"Lås opp",lockAll:"Lås alle",unlockAll:"Lås opp alle"},statusPublished:"Publisert",sidebarLock:"Holde sidemenyen åpen",selectAllElementsInFrame:"Velg alle elementene i rammen",removeAllElementsFromFrame:"Fjern alle elementer fra rammen",eyeDropper:"Velg farge fra lerretet",textToDiagram:"",prompt:""},eGe={noItems:"Ingen elementer lagt til ennå...",hint_emptyLibrary:"Velg et objekt på lerretet for å legge det til her, eller installer et bibliotek fra den offentlige samlingen under.",hint_emptyPrivateLibrary:"Velg et objekt på lerretet for å legge det til her."},tGe={clearReset:"Tøm lerretet og tilbakestill bakgrunnsfargen",exportJSON:"Eksporter til fil",exportImage:"Eksporter bilde...",export:"Lagre som...",copyToClipboard:"Kopier til utklippstavle",save:"Lagre til aktiv fil",saveAs:"Lagre som",load:"Åpne",getShareableLink:"Få delingslenke",close:"Lukk",selectLanguage:"Velg språk",scrollBackToContent:"Skroll tilbake til innhold",zoomIn:"Zoom inn",zoomOut:"Zoom ut",resetZoom:"Nullstill zoom",menu:"Meny",done:"Ferdig",edit:"Rediger",undo:"Angre",redo:"Gjør om",resetLibrary:"Nullstill bibliotek",createNewRoom:"Opprett et nytt rom",fullScreen:"Fullskjerm",darkMode:"Mørk modus",lightMode:"Lys modus",zenMode:"Zen-modus",objectsSnapMode:"",exitZenMode:"Avslutt zen-modus",cancel:"Avbryt",clear:"Tøm",remove:"Fjern",embed:"Slå av/på innebygging",publishLibrary:"Publiser",submit:"Send inn",confirm:"Bekreft",embeddableInteractionButton:"Klikk for å samhandle"},rGe={clearReset:"Dette vil tømme lerretet. Er du sikker?",couldNotCreateShareableLink:"Kunne ikke lage delbar lenke.",couldNotCreateShareableLinkTooBig:"Kunne ikke opprette lenke til deling: scenen er for stor",couldNotLoadInvalidFile:"Kunne ikke laste inn ugyldig fil",importBackendFailed:"Importering av backend feilet.",cannotExportEmptyCanvas:"Kan ikke eksportere et tomt lerret.",couldNotCopyToClipboard:"Kunne ikke kopiere til utklippstavlen.",decryptFailed:"Kunne ikke dekryptere data.",uploadedSecurly:"Opplastingen er kryptert og kan ikke leses av Excalidraw-serveren eller tredjeparter.",loadSceneOverridePrompt:"Å laste inn ekstern tegning vil erstatte det eksisterende innholdet. Ønsker du å fortsette?",collabStopOverridePrompt:`Hvis du slutter økten, overskrives din forrige, lokalt lagrede tegning. Er du sikker?
(Hvis du ønsker å beholde din lokale tegning, bare lukk nettleserfanen i stedet.)`,errorAddingToLibrary:"Kunne ikke legge element i biblioteket",errorRemovingFromLibrary:"Kunne ikke fjerne element fra biblioteket",confirmAddLibrary:"Dette vil legge til {{numShapes}} figur(er) i biblioteket ditt. Er du sikker?",imageDoesNotContainScene:"Det ser ikke ut til at dette bildet inneholder noen scenedata. Har du aktivert innebygging av scene under eksporten?",cannotRestoreFromImage:"Scenen kunne ikke gjenopprettes fra denne bildefilen",invalidSceneUrl:"Kunne ikke importere scene fra den oppgitte URL-en. Den er enten ødelagt, eller inneholder ikke gyldig Excalidraw JSON-data.",resetLibrary:"Dette vil tømme biblioteket ditt. Er du sikker?",removeItemsFromsLibrary:"Slett {{count}} element(er) fra biblioteket?",invalidEncryptionKey:"Krypteringsnøkkel må ha 22 tegn. Live-samarbeid er deaktivert.",collabOfflineWarning:`Ingen Internett-tilkobling tilgjengelig.
Endringer dine vil ikke bli lagret!`},iGe={unsupportedFileType:"Filtypen støttes ikke.",imageInsertError:"Kunne ikke sette inn bildet. Prøv igjen senere...",fileTooBig:"Filen er for stor. Maksimal tillatt størrelse er {{maxSize}}.",svgImageInsertError:"Kunne ikke sette inn SVG-bilde. SVG-koden ser ugyldig ut.",failedToFetchImage:"",invalidSVGString:"Ugyldig SVG.",cannotResolveCollabServer:"Kunne ikke koble til samarbeidsserveren. Vennligst oppdater siden og prøv på nytt.",importLibraryError:"Kunne ikke laste bibliotek",collabSaveFailed:"Kan ikke lagre i backend-databasen. Hvis problemer vedvarer, bør du lagre filen lokalt for å sikre at du ikke mister arbeidet.",collabSaveFailed_sizeExceeded:"Kunne ikke lagre til backend-databasen, lerretet ser ut til å være for stort. Du bør lagre filen lokalt for å sikre at du ikke mister arbeidet ditt.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Ser ut som om du bruker Brave nettleser med <bold>Aggressivt Block Finger</bold> -innstillingen aktivert.",line2:"Dette kan resultere i å bryte <bold>tekst-elementene</bold> i tegningene.",line3:"Vi anbefaler på det sterkeste å deaktivere denne innstillingen. Du kan følge <link>disse trinnene</link> om hvordan du gjør det.",line4:"Hvis deaktivering av denne innstillingen ikke fikser visningen av tekstelementer, vennligst åpne en <issueLink>sak</issueLink> på vår GitHub, eller skriv oss på <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Innebygde elementer kan ikke legges til i biblioteket.",iframe:"",image:"Støtte for å legge til bilder i biblioteket kommer snart!"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},uGe={selection:"Velg",image:"Sett inn bilde",rectangle:"Rektangel",diamond:"Diamant",ellipse:"Ellipse",arrow:"Pil",line:"Linje",freedraw:"Tegn",text:"Tekst",library:"Bibliotek",lock:"Behold merket verktøy som aktivt",penMode:"Pennemodus - forhindre berøring",link:"Legg til / oppdater link for en valgt figur",eraser:"Viskelær",frame:"Rammeverktøy",magicframe:"",embeddable:"Nettinnbygging",laser:"",hand:"Hånd (panoreringsverktøy)",extraTools:"Flere verktøy",mermaidToExcalidraw:"",magicSettings:""},aGe={canvasActions:"Handlinger: lerret",selectedShapeActions:"Handlinger: valgt objekt",shapes:"Former"},nGe={canvasPanning:"For å flytte lerretet, hold musehjulet eller mellomromstasten mens du drar, eller bruk hånd-verktøyet",linearElement:"Klikk for å starte linje med flere punkter, eller dra for en enkel linje",freeDraw:"Klikk og dra, slipp når du er ferdig",text:"Tips: du kan også legge til tekst ved å dobbeltklikke hvor som helst med utvalgsverktøyet",embeddable:"Klikk og dra for å opprette en nettside innebygd",text_selected:"Dobbeltklikk eller trykk ENTER for å redigere tekst",text_editing:"Trykk Escape eller Ctrl/Cmd+Enter for å fullføre redigering",linearElementMulti:"Klikk på siste punkt eller trykk Escape eller Enter for å fullføre",lockAngle:"Du kan låse vinkelen ved å holde nede SHIFT",resize:`Du kan beholde forholdet ved å trykke SHIFT mens du endrer størrelse,
trykk ALT for å endre størrelsen fra midten`,resizeImage:`Du kan endre størrelse fritt ved å holde SHIFT,
hold ALT for å endre størrelse fra midten`,rotate:"Du kan låse vinklene ved å holde SHIFT mens du roterer",lineEditor_info:"Hold Ctrl/Cmd og dobbelklikk eller trykk Ctrl/Cmd + Enter for å endre punkter",lineEditor_pointSelected:"Trykk på Slett for å fjerne punktet, Ctrl / Cmd+D for å duplisere, eller dra for å flytte",lineEditor_nothingSelected:`Velg et punkt å redigere (hold SHIFT for å velge flere),
eller hold Alt og klikk for å legge til nye punkter`,placeImage:"Klikk for å plassere bildet, eller klikk og dra for å angi størrelsen manuelt",publishLibrary:"Publiser ditt eget bibliotek",bindTextToElement:"Trykk Enter for å legge til tekst",deepBoxSelect:"Hold CTRL/CMD for å markere dypt og forhindre flytting",eraserRevert:"Hold Alt for å reversere elementene merket for sletting",firefox_clipboard_write:'Denne funksjonen kan sannsynligvis aktiveres ved å sette "dom.events.asyncClipboard.clipboardItem" flagget til "true". For å endre nettleserens flagg i Firefox, besøk "about:config"-siden.',disableSnapping:""},oGe={cannotShowPreview:"Kan ikke vise forhåndsvisning",canvasTooBig:"Lerretet kan være for stort.",canvasTooBigTip:"Tips: Prøv å flytte de ytterste elementene litt tettere sammen."},sGe={headingMain:"En feil oppsto. Prøv <button>å laste siden på nytt.</button>",clearCanvasMessage:"Om ny sidelasting ikke fungerer, prøv <button>å tømme lerretet.</button>",clearCanvasCaveat:" Dette vil føre til tap av arbeid ",trackedToSentry:"Feilen med identifikator {{eventId}} ble logget i vårt system.",openIssueMessage:"Vi er veldig nøye med å ikke inkludere dine scene-opplysninger i feilen. Hvis din scene ikke er privat, vurder å følge opp i vårt <button>feilrapporteringssystem.</button> Ta med opplysningene nedenfor ved å kopiere og lime inn i GitHub-saken.",sceneContent:"Scene-innhold:"},lGe={desc_intro:"Du kan invitere personer til scenen din for å samarbeide med deg.",desc_privacy:"Ta det med ro, sesjonen bruker ende-til-ende-kryptering, så alt du tegner forblir privat. Ikke en gang serveren vår kan se hva du lager.",button_startSession:"Start økt",button_stopSession:"Stopp sesjon",desc_inProgressIntro:"Sanntids-samarbeidsøkt er nå i gang.",desc_shareLink:"Del denne linken med de du vil samarbeide med:",desc_exitSession:"Dersom du avslutter sesjonen blir du frakoblet rommet, men du kan fortsette å arbeide med scenen lokalt. Vær oppmerksom på at dette ikke vil påvirke andre personer, og de vil fortsatt ha mulighet til å samarbeide på deres versjon.",shareTitle:"Bli med i en live samarbeidsøkt på Excalidraw"},gGe={title:"Feil"},cGe={disk_title:"Lagre til disk",disk_details:"Eksporter scene-dataene til en fil som du kan importere fra senere.",disk_button:"Lagre til fil",link_title:"Delbar lenke",link_details:"Eksporter som en skrivebeskyttet lenke.",link_button:"Eksporter til lenke",excalidrawplus_description:"Lagre scenen til ditt Excalidraw+ arbeidsområde.",excalidrawplus_button:"Eksporter",excalidrawplus_exportError:"Kunne ikke eksportere til Excalidraw+ for øyeblikket..."},CGe={blog:"Les bloggen vår",click:"klikk",deepSelect:"Marker dypt",deepBoxSelect:"Marker dypt innad i boks og forhindre flytting",curvedArrow:"Buet pil",curvedLine:"Buet linje",documentation:"Dokumentasjon",doubleClick:"dobbeltklikk",drag:"dra",editor:"Redigeringsvisning",editLineArrowPoints:"Rediger linje/pilpunkter",editText:"Rediger tekst / legg til etikett",github:"Funnet et problem? Send inn",howto:"Følg våre veiledninger",or:"eller",preventBinding:"Forhindre pilbinding",tools:"Verktøy",shortcuts:"Tastatursnarveier",textFinish:"Fullfør redigering (teksteditor)",textNewLine:"Legg til ny linje (teksteditor)",title:"Hjelp",view:"Vis",zoomToFit:"Zoom for å se alle elementer",zoomToSelection:"Zoom til utvalg",toggleElementLock:"Lås/lås opp utvalg",movePageUpDown:"Flytt side opp/ned",movePageLeftRight:"Flytt siden til venstre/høyre"},BGe={title:"Tøm lerret"},EGe={title:"Publiser bibliotek",itemName:"Elementnavn",authorName:"Forfatterens navn",githubUsername:"GitHub-brukernavnet",twitterUsername:"Twitter-brukernavn",libraryName:"Biblioteknavn",libraryDesc:"Beskrivelse av bibliotek",website:"Nettsted",placeholder:{authorName:"Ditt navn eller brukernavn",libraryName:"Navnet på biblioteket ditt",libraryDesc:"Beskrivelse av biblioteket ditt for å hjelpe folk med å forstå bruken",githubHandle:"Github-brukernavn (valgfritt), slik at du kan redigere biblioteket når du har sendt inn for gjennomgang",twitterHandle:"Twitter-brukernavn (valgfritt), slik at vi vet hvem vi skal kreditere når promotert på Twitter",website:"Lenke til din personlige nettside eller et annet sted (valgfritt)"},errors:{required:"Påkrevd",website:"Angi en gyldig nettadresse"},noteDescription:"Send inn biblioteket ditt som skal inkluderes i <link>kildekode for offentlig bibliotek</link>for andre å bruke dem i tegninger.",noteGuidelines:"Biblioteket må godkjennes manuelt først. Les <link>retningslinjene</link> før innsending. Du vil trenge en GitHub-konto for å kommunisere og gjøre endringer hvis ønsket, men det er ikke påkrevd.",noteLicense:"Ved å sende inn godtar du at biblioteket blir publisert under <link>MIT-lisens, </link>som kortfattet betyr at andre kan bruke dem uten begrensninger.",noteItems:"Hvert bibliotek må ha sitt eget navn, så det er filtrerbart. Følgende bibliotekselementer vil bli inkludert:",atleastOneLibItem:"Vennligst velg minst ett bibliotek for å komme i gang",republishWarning:"Merk: noen av de valgte elementene er merket som allerede publisert/sendt. Du bør kun sende inn elementer på nytt når du oppdaterer et eksisterende bibliotek eller innlevering."},dGe={title:"Bibliotek innsendt",content:"Takk {{authorName}}. Ditt bibliotek har blitt sendt inn for gjennomgang. Du kan spore statusen<link>her</link>"},IGe={resetLibrary:"Nullstill bibliotek",removeItemsFromLib:"Fjern valgte elementer fra bibliotek"},hGe={header:"Eksporter bilde",label:{withBackground:"Bakgrunn",onlySelected:"Kun valgte",darkMode:"Mørk modus",embedScene:"Bygg inn scene",scale:"Skalering",padding:"Avstand"},tooltip:{embedScene:`Scenedata vil bli lagret i den eksporterte PNG/SVG-filen, slik at scenen kan gjenopprettes fra den.
Det vil øke den eksporterte filstørrelsen.`},title:{exportToPng:"Eksporter til PNG",exportToSvg:"Eksporter til SVG",copyPngToClipboard:"Kopier PNG til utklippstavlen"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopier til utklippstavle"}},QGe={tooltip:"Dine tegninger er ende-til-ende-krypterte slik at Excalidraw sine servere aldri vil se dem.",link:"Blogginnlegg om ende-til-ende-kryptering i Excalidraw"},pGe={angle:"Vinkel",element:"Element",elements:"Elementer",height:"Høyde",scene:"Scene",selected:"Valgt",storage:"Lagring",title:"Statistikk for nerder",total:"Totalt",version:"Versjon",versionCopy:"Klikk for å kopiere",versionNotAvailable:"Versjon ikke tilgjengelig",width:"Bredde"},fGe={addedToLibrary:"Lagt til i biblioteket",copyStyles:"Kopierte stiler.",copyToClipboard:"Kopiert til utklippstavlen.",copyToClipboardAsPng:`Kopierte {{exportSelection}} til utklippstavlen som PNG
({{exportColorScheme}})`,fileSaved:"Fil lagret.",fileSavedToFilename:"Lagret til {filename}",canvas:"lerret",selection:"utvalg",pasteAsSingleElement:`Bruk {{shortcut}} for å lime inn som ett enkelt element,
eller lim inn i en eksisterende tekstbehandler`,unableToEmbed:"Innbygging av denne nettadressen er ikke tillatt. Oppret en sak på GitHub for å be om url-hvitelisting",unrecognizedLinkFormat:'Linken du bygget inn samsvarer ikke med det forventede formatet. Prøv å lime inn "bygg inn"-strengen fra kildesiden'},mGe={transparent:"Gjennomsiktig",black:"Svart",white:"Hvit",red:"Rød",pink:"Rosa",grape:"Drue",violet:"Fiolett",gray:"Grå",blue:"Blå",cyan:"Turkis",teal:"Blågrønn",green:"Grønn",yellow:"Gul",orange:"Oransje",bronze:"Bronse"},DGe={app:{center_heading:"Alle dine data lagres lokalt i din nettleser.",center_heading_plus:"Ønsker du å gå til Excalidraw+ i stedet?",menuHint:"Eksporter, innstillinger, språk, ..."},defaults:{menuHint:"Eksporter, innstillinger og mer...",center_heading:"Diagrammer. Gjort. Enkelt.",toolbarHint:"Velg et verktøy og start å tegne!",helpHint:"Snarveier & hjelp"}},yGe={mostUsedCustomColors:"Mest brukte egendefinerte farger",colors:"Farger",shades:"Toner",hexCode:"Heksadesimal kode",noShades:"Ingen toner tilgjengelig for denne fargen"},wGe={action:{exportToImage:{title:"Eksporter som bilde",button:"Eksporter som bilde",description:"Eksporter scene-dataene til en fil som du kan importere fra senere."},saveToDisk:{title:"Lagre til disk",button:"Lagre til disk",description:"Eksporter scene-dataene til en fil som du kan importere fra senere."},excalidrawPlus:{title:"Excalidraw+",button:"Eksporter til Excalidraw+",description:"Lagre scenen til ditt Excalidraw+-arbeidsområde."}},modal:{loadFromFile:{title:"Last inn fra fil",button:"Last inn fra fil",description:"Å laste fra en fil vil <bold>erstatte ditt eksisterende innhold</bold>.<br></br>Du kan sikkerhetskopiere tegningen din først ved å bruke en av valgene under."},shareableLink:{title:"Last inn fra lenke",button:"Erstatt innholdet mitt",description:"Lasting av ekstern tegning vil <bold>erstatte ditt eksisterende innhold</bold>.<br></br>Du kan sikkerhetskopiere tegningen din først ved å bruke en av valgene nedenfor."}}},bGe={title:"",button:"",description:"",syntax:"",preview:""},Zcr={labels:AGe,library:eGe,buttons:tGe,alerts:rGe,errors:iGe,toolBar:uGe,headings:aGe,hints:nGe,canvasError:oGe,errorSplash:sGe,roomDialog:lGe,errorDialog:gGe,exportDialog:cGe,helpDialog:CGe,clearCanvasDialog:BGe,publishDialog:EGe,publishSuccessDialog:dGe,confirmDialog:IGe,imageExportDialog:hGe,encrypted:QGe,stats:pGe,toast:fGe,colors:mGe,welcomeScreen:DGe,colorPicker:yGe,overwriteConfirm:wGe,mermaid:bGe}});var tUe={};Dt(tUe,{alerts:()=>LGe,buttons:()=>SGe,canvasError:()=>MGe,clearCanvasDialog:()=>OGe,colorPicker:()=>$Ge,colors:()=>jGe,confirmDialog:()=>WGe,default:()=>Vcr,encrypted:()=>zGe,errorDialog:()=>HGe,errorSplash:()=>TGe,errors:()=>RGe,exportDialog:()=>KGe,headings:()=>GGe,helpDialog:()=>JGe,hints:()=>UGe,imageExportDialog:()=>qGe,labels:()=>FGe,library:()=>xGe,mermaid:()=>eUe,overwriteConfirm:()=>AUe,publishDialog:()=>PGe,publishSuccessDialog:()=>_Ge,roomDialog:()=>YGe,stats:()=>ZGe,toast:()=>VGe,toolBar:()=>NGe,welcomeScreen:()=>XGe});var FGe,xGe,SGe,LGe,RGe,NGe,GGe,UGe,MGe,TGe,YGe,HGe,KGe,JGe,OGe,PGe,_Ge,WGe,qGe,zGe,ZGe,VGe,jGe,XGe,$Ge,AUe,eUe,Vcr;var rUe=_(()=>{zt();FGe={paste:"Plakken",pasteAsPlaintext:"Plakken als platte tekst",pasteCharts:"Plak grafieken",selectAll:"Alles selecteren",multiSelect:"Voeg element toe aan selectie",moveCanvas:"Canvas verplaatsen",cut:"Knip",copy:"Kopiëren",copyAsPng:"Kopieer als PNG",copyAsSvg:"Kopieer naar klembord als SVG",copyText:"Kopieer naar klembord als tekst",copySource:"",convertToCode:"",bringForward:"Breng naar voren",sendToBack:"Stuur naar achtergrond",bringToFront:"Breng naar voorgrond",sendBackward:"Breng naar achter",delete:"Verwijderen",copyStyles:"Kopieer opmaak",pasteStyles:"Plak opmaak",stroke:"Lijn",background:"Achtergrond",fill:"Invulling",strokeWidth:"Lijnbreedte",strokeStyle:"Lijnstijl",strokeStyle_solid:"Ononderbroken",strokeStyle_dashed:"Gestreept",strokeStyle_dotted:"Gestippeld",sloppiness:"Slordigheid",opacity:"Doorzichtigheid",textAlign:"Uitlijning",edges:"Randen",sharp:"Hoekig",round:"Rond",arrowheads:"Pijlpunten",arrowhead_none:"Geen",arrowhead_arrow:"Pijl",arrowhead_bar:"Balk",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Driehoek",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Tekstgrootte",fontFamily:"Lettertype",addWatermark:'Voeg "Gemaakt met Excalidraw" toe',handDrawn:"Handgetekend",normal:"Normaal",code:"Code",small:"Klein",medium:"Medium",large:"Groot",veryLarge:"Zeer groot",solid:"Ingekleurd",hachure:"Arcering",zigzag:"",crossHatch:"Tweemaal gearceerd",thin:"Dun",bold:"Vet",left:"Links",center:"Midden",right:"Rechts",extraBold:"Zwaar",architect:"Architect",artist:"Artiest",cartoonist:"Cartoonist",fileTitle:"Bestandsnaam",colorPicker:"Kleurenkiezer",canvasColors:"Gebruikt op canvas",canvasBackground:"Canvas achtergrond",drawingCanvas:"Canvas",layers:"Lagen",actions:"Acties",language:"Taal",liveCollaboration:"Live Samenwerking...",duplicateSelection:"Dupliceer",untitled:"Naamloos",name:"Naam",yourName:"Jouw naam",madeWithExcalidraw:"Gemaakt met Excalidraw",group:"Groeperen",ungroup:"Groep opheffen",collaborators:"Deelnemers",showGrid:"Raster weergeven",addToLibrary:"Voeg toe aan bibliotheek",removeFromLibrary:"Verwijder uit bibliotheek",libraryLoadingMessage:"Bibliotheek laden…",libraries:"Blader door bibliotheken",loadingScene:"Scène laden…",align:"Uitlijnen",alignTop:"Boven uitlijnen",alignBottom:"Onder uitlijnen",alignLeft:"Links uitlijnen",alignRight:"Rechts uitlijnen",centerVertically:"Verticaal Centreren",centerHorizontally:"Horizontaal Centreren",distributeHorizontally:"Horizontaal verspreiden",distributeVertically:"Verticaal distribueren",flipHorizontal:"Horizontaal spiegelen",flipVertical:"Verticaal spiegelen",viewMode:"Weergavemodus",share:"Deel",showStroke:"Toon lijn kleur kiezer",showBackground:"Toon achtergrondkleur kiezer",toggleTheme:"Thema aan/uit",personalLib:"Persoonlijke bibliotheek",excalidrawLib:"Excalidraw bibliotheek",decreaseFontSize:"Letters verkleinen",increaseFontSize:"Letters vergroten",unbindText:"Ontkoppel tekst",bindText:"Koppel tekst aan de container",createContainerFromText:"",link:{edit:"Wijzig link",editEmbed:"Link bewerken & insluiten",create:"Maak link",createEmbed:"Link maken en insluiten",label:"Link",labelEmbed:"Link toevoegen & insluiten",empty:"Er is geen link ingesteld"},lineEditor:{edit:"Bewerk regel",exit:"Verlaat regel-editor"},elementLock:{lock:"Vergrendel",unlock:"Ontgrendel",lockAll:"Vergrendel alles",unlockAll:"Ontgrendel alles"},statusPublished:"Gepubliceerd",sidebarLock:"Zijbalk open houden",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},xGe={noItems:"Nog geen items toegevoegd...",hint_emptyLibrary:"Selecteer een item op het canvas om het hier toe te voegen of installeer een bibliotheek uit de openbare repository, hieronder.",hint_emptyPrivateLibrary:"Selecteer een item op het canvas om het hier toe te voegen."},SGe={clearReset:"Canvas opnieuw instellen",exportJSON:"Exporteren naar bestand",exportImage:"Exporteer afbeelding...",export:"Sla op...",copyToClipboard:"Kopieer",save:"Opslaan naar huidige bestand",saveAs:"Opslaan als",load:"Open",getShareableLink:"Maak een deelbare link",close:"Sluiten",selectLanguage:"Taal selecteren",scrollBackToContent:"Scroll terug naar inhoud",zoomIn:"Inzoomen",zoomOut:"Uitzoomen",resetZoom:"Zoom terugzetten",menu:"Menu",done:"Klaar",edit:"Bewerken",undo:"Ongedaan maken",redo:"Herstel ongedaan maken",resetLibrary:"Bibliotheek Resetten",createNewRoom:"Creëer live-samenwerkingssessie",fullScreen:"Volledig scherm",darkMode:"Donkere modus",lightMode:"Lichte modus",zenMode:"Zen modus",objectsSnapMode:"",exitZenMode:"Verlaat zen modus",cancel:"Annuleren",clear:"Wissen",remove:"Verwijderen",embed:"Insluiten in-/uitschakelen",publishLibrary:"Publiceren",submit:"Versturen",confirm:"Bevestigen",embeddableInteractionButton:"Klik voor interactie"},LGe={clearReset:"Dit zal het hele canvas verwijderen. Weet je het zeker?",couldNotCreateShareableLink:"Kon geen deelbare link aanmaken.",couldNotCreateShareableLinkTooBig:"Kan geen deelbare link aanmaken: de scène is te groot",couldNotLoadInvalidFile:"Kan ongeldig bestand niet laden",importBackendFailed:"Importeren vanuit backend mislukt.",cannotExportEmptyCanvas:"Kan geen leeg canvas exporteren.",couldNotCopyToClipboard:"Kon niet naar klembord kopiëren.",decryptFailed:"Kan gegevens niet decoderen.",uploadedSecurly:"De upload is beveiligd met end-to-end encryptie, wat betekent dat de Excalidraw server en derden de inhoud niet kunnen lezen.",loadSceneOverridePrompt:"Het inladen van een externe tekening zal je bestaande inhoud vervangen. Wil je verdergaan?",collabStopOverridePrompt:`Wanneer de sessie wordt gestopt, overschrijft u de eerdere, lokaal opgeslagen tekening. Weet je het zeker?
(Als je de lokale tekening wilt behouden, sluit je in plaats daarvan het browsertabblad)`,errorAddingToLibrary:"Kan item niet toevoegen aan de bibliotheek",errorRemovingFromLibrary:"Kan item niet uit de bibliotheek verwijderen",confirmAddLibrary:"Dit zal {{numShapes}} vorm(en) toevoegen aan je bibliotheek. Weet je het zeker?",imageDoesNotContainScene:"Deze afbeelding lijkt geen scène gegevens te bevatten. Heb je scène embedding tijdens het exporteren ingeschakeld?",cannotRestoreFromImage:"Scène kan niet worden hersteld vanuit dit afbeeldingsbestand",invalidSceneUrl:"Kan scène niet importeren vanuit de opgegeven URL. Het is onjuist of bevat geen geldige Excalidraw JSON-gegevens.",resetLibrary:"Dit zal je bibliotheek wissen. Weet je het zeker?",removeItemsFromsLibrary:"Verwijder {{count}} item(s) uit bibliotheek?",invalidEncryptionKey:"Encryptiesleutel moet 22 tekens zijn. Live samenwerking is uitgeschakeld.",collabOfflineWarning:`Geen internetverbinding beschikbaar.
Je wijzigingen worden niet opgeslagen!`},RGe={unsupportedFileType:"Niet-ondersteund bestandstype.",imageInsertError:"Afbeelding invoegen mislukt. Probeer het later opnieuw...",fileTooBig:"Bestand is te groot. Maximale grootte is {{maxSize}}.",svgImageInsertError:"Kon geen SVG-afbeelding invoegen. De SVG-opmaak ziet er niet geldig uit.",failedToFetchImage:"",invalidSVGString:"Ongeldige SVG.",cannotResolveCollabServer:"Kan geen verbinding maken met de collab server. Herlaad de pagina en probeer het opnieuw.",importLibraryError:"Kon bibliotheek niet laden",collabSaveFailed:"Kan niet opslaan in de backend database. Als de problemen blijven bestaan, moet u het bestand lokaal opslaan om ervoor te zorgen dat u uw werk niet verliest.",collabSaveFailed_sizeExceeded:"Kan de backend database niet opslaan, het canvas lijkt te groot te zijn. U moet het bestand lokaal opslaan om ervoor te zorgen dat u uw werk niet verliest.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"Ingesloten elementen kunnen niet worden toegevoegd aan de bibliotheek.",iframe:"",image:"Ondersteuning voor het toevoegen van afbeeldingen aan de bibliotheek komt binnenkort!"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},NGe={selection:"Selectie",image:"Voeg afbeelding in",rectangle:"Rechthoek",diamond:"Ruit",ellipse:"Ovaal",arrow:"Pijl",line:"Lijn",freedraw:"Teken",text:"Tekst",library:"Bibliotheek",lock:"Geselecteerde tool actief houden na tekenen",penMode:"Pen modus - Blokkeer aanraken",link:"Link toevoegen / bijwerken voor een geselecteerde vorm",eraser:"Gum",frame:"",magicframe:"",embeddable:"Web insluiten",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},GGe={canvasActions:"Canvasacties",selectedShapeActions:"Acties van geselecteerde vorm",shapes:"Vormen"},UGe={canvasPanning:"Om de canvas te verplaatsen, houd muiswiel of spatiebalk ingedrukt tijdens slepen, of gebruik het handgereedschap",linearElement:"Klik om meerdere punten te starten, sleep voor één lijn",freeDraw:"Klik en sleep, laat los als je klaar bent",text:"Tip: je kunt tekst toevoegen door ergens dubbel te klikken met de selectietool",embeddable:"Klink-sleep om een website-insluiting te maken",text_selected:"Dubbelklik of druk op ENTER om tekst te bewerken",text_editing:"Druk op Escape of CtrlOrCmd+ENTER om het bewerken te voltooien",linearElementMulti:"Klik op het laatste punt of druk op Escape of Enter om te stoppen",lockAngle:"Je kunt de hoek beperken door SHIFT ingedrukt te houden",resize:`Houd tijdens het vergroten SHIFT ingedrukt om verhoudingen te behouden,
gebruik ALT om vanuit het midden te vergroten/verkleinen`,resizeImage:"",rotate:"Je kan hoeken beperken door SHIFT ingedrukt te houden wanneer je draait",lineEditor_info:"Houd CtrlOrCmd en Dubbelklik of druk op CtrlOrCmd + Enter om punten te bewerken",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"Publiceer je eigen bibliotheek",bindTextToElement:"Druk op enter om tekst toe te voegen",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},MGe={cannotShowPreview:"Kan voorbeeld niet tonen",canvasTooBig:"Het canvas is mogelijk te groot.",canvasTooBigTip:"Tip: beweeg de verste elementen iets dichter bij elkaar."},TGe={headingMain:"Fout opgetreden. Probeer <button>de pagina opnieuw laden.</button>",clearCanvasMessage:"Als herladen niet werkt, probeer <button>het canvas te wissen.</button>",clearCanvasCaveat:" Dit zal leiden tot verlies van je werk ",trackedToSentry:"De fout met ID {{eventId}} was gevolgd op ons systeem.",openIssueMessage:"We waren voorzichtig om je scène-informatie niet in de fout toe te voegen. Als je scène niet privé is, overweeg dan alstublieft het opvolgen op onze <button>bugtracker.</button> Kopieer de informatie hieronder naar de GitHub issue.",sceneContent:"Scène-inhoud:"},YGe={desc_intro:"Je kunt mensen uitnodigen om met je samen te werken.",desc_privacy:"Geen zorgen, de sessie gebruikt end-to-end encryptie, dus wat je tekent blijft privé. Zelfs onze server zal niet kunnen zien wat je tekent.",button_startSession:"Start sessie",button_stopSession:"Stop sessie",desc_inProgressIntro:"De live-samenwerkingssessie is nu gestart.",desc_shareLink:"Deel deze link met iedereen waarmee je wil samenwerken:",desc_exitSession:`Het stoppen van de sessie zal je loskoppelen van de kamer, maar je kunt lokaal doorwerken met de scène.
Pas op: dit heeft geen invloed op andere mensen en dat zij nog steeds in staat zullen zijn om samen te werken aan hun versie.`,shareTitle:"Neem deel aan een live samenwerkingssessie op Excalidraw"},HGe={title:"Fout"},KGe={disk_title:"Opslaan op schijf",disk_details:"De scènegegevens exporteren naar een bestand waaruit u later kunt importeren.",disk_button:"Opslaan naar bestand",link_title:"Deelbare link",link_details:"Exporteren als een alleen-lezen link.",link_button:"Exporteer naar link",excalidrawplus_description:"Sla de scène op in je Excalidraw+ werkruimte.",excalidrawplus_button:"Exporteer",excalidrawplus_exportError:"Kan op dit moment niet exporteren naar Excalidraw+..."},JGe={blog:"Lees onze blog",click:"klik",deepSelect:"Deep selecteer",deepBoxSelect:"",curvedArrow:"Gebogen pijl",curvedLine:"Kromme lijn",documentation:"Documentatie",doubleClick:"dubbelklikken",drag:"slepen",editor:"Editor",editLineArrowPoints:"",editText:"",github:"Probleem gevonden? Verzenden",howto:"Volg onze handleidingen",or:"of",preventBinding:"Pijlbinding voorkomen",tools:"Tools",shortcuts:"Sneltoetsen",textFinish:"Voltooi het bewerken (teksteditor)",textNewLine:"Nieuwe regel toevoegen (teksteditor)",title:"Help",view:"Weergave",zoomToFit:"Zoom in op alle elementen",zoomToSelection:"Inzoomen op selectie",toggleElementLock:"",movePageUpDown:"Pagina omhoog/omlaag",movePageLeftRight:"Verplaats pagina links/rechts"},OGe={title:"Wis canvas"},PGe={title:"Publiceer bibliotheek",itemName:"Itemnaam",authorName:"Naam auteur",githubUsername:"GitHub gebruikersnaam",twitterUsername:"Twitter gebruikersnaam",libraryName:"Naam bibliotheek",libraryDesc:"Beschrijving van de bibliotheek",website:"Website",placeholder:{authorName:"Je naam of gebruikersnaam",libraryName:"Naam van je bibliotheek",libraryDesc:"Beschrijving van je bibliotheek om mensen te helpen het gebruik ervan te begrijpen",githubHandle:"",twitterHandle:"",website:"Link naar je persoonlijke website of elders (optioneel)"},errors:{required:"Vereist",website:"Vul een geldige URL in"},noteDescription:"<link>openbare repository</link>",noteGuidelines:"<link>richtlijnen</link>",noteLicense:"<link>MIT-licentie, </link>",noteItems:"",atleastOneLibItem:"",republishWarning:""},_Ge={title:"Bibliotheek ingediend",content:"<link>Hier</link>"},WGe={resetLibrary:"Reset bibliotheek",removeItemsFromLib:"Verwijder geselecteerde items uit bibliotheek"},qGe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},zGe={tooltip:"Je tekeningen zijn beveiligd met end-to-end encryptie, dus Excalidraw's servers zullen nooit zien wat je tekent.",link:"Blog post over end-to-end versleuteling in Excalidraw"},ZGe={angle:"Hoek",element:"Element",elements:"Elementen",height:"Hoogte",scene:"Scene",selected:"Geselecteerd",storage:"Opslag",title:"Statistieken voor nerds",total:"Totaal",version:"Versie",versionCopy:"Klik om te kopiëren",versionNotAvailable:"Versie niet beschikbaar",width:"Breedte"},VGe={addedToLibrary:"Toegevoegd aan bibliotheek",copyStyles:"Stijlen gekopieerd.",copyToClipboard:"Gekopieerd naar het klembord.",copyToClipboardAsPng:`{{exportSelection}} naar klembord gekopieerd als PNG
({{exportColorScheme}})`,fileSaved:"Bestand opgeslagen.",fileSavedToFilename:"Opgeslagen als {filename}",canvas:"canvas",selection:"selectie",pasteAsSingleElement:`Gebruik {{shortcut}} om te plakken als een enkel element,
of plak in een bestaande teksteditor`,unableToEmbed:"Het insluiten van deze url is momenteel niet toegestaan. Zet een probleem op GitHub om de URL op de whitelist te zetten",unrecognizedLinkFormat:"De link die u hebt ingesloten komt niet overeen met het verwachte formaat. Probeer de 'embed' string van de bronsite te plakken"},jGe={transparent:"Transparant",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},XGe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"Exporteren, voorkeuren en meer...",center_heading:"Diagrammen. Eenvoudig. Gemaakt.",toolbarHint:"Kies een tool & begin met tekenen!",helpHint:"Snelkoppelingen en hulp"}},$Ge={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},AUe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},eUe={title:"",button:"",description:"",syntax:"",preview:""},Vcr={labels:FGe,library:xGe,buttons:SGe,alerts:LGe,errors:RGe,toolBar:NGe,headings:GGe,hints:UGe,canvasError:MGe,errorSplash:TGe,roomDialog:YGe,errorDialog:HGe,exportDialog:KGe,helpDialog:JGe,clearCanvasDialog:OGe,publishDialog:PGe,publishSuccessDialog:_Ge,confirmDialog:WGe,imageExportDialog:qGe,encrypted:zGe,stats:ZGe,toast:VGe,colors:jGe,welcomeScreen:XGe,colorPicker:$Ge,overwriteConfirm:AUe,mermaid:eUe}});var SUe={};Dt(SUe,{alerts:()=>nUe,buttons:()=>aUe,canvasError:()=>cUe,clearCanvasDialog:()=>hUe,colorPicker:()=>kUe,colors:()=>bUe,confirmDialog:()=>fUe,default:()=>jcr,encrypted:()=>DUe,errorDialog:()=>EUe,errorSplash:()=>CUe,errors:()=>oUe,exportDialog:()=>dUe,headings:()=>lUe,helpDialog:()=>IUe,hints:()=>gUe,imageExportDialog:()=>mUe,labels:()=>iUe,library:()=>uUe,mermaid:()=>xUe,overwriteConfirm:()=>FUe,publishDialog:()=>QUe,publishSuccessDialog:()=>pUe,roomDialog:()=>BUe,stats:()=>yUe,toast:()=>wUe,toolBar:()=>sUe,welcomeScreen:()=>vUe});var iUe,uUe,aUe,nUe,oUe,sUe,lUe,gUe,cUe,CUe,BUe,EUe,dUe,IUe,hUe,QUe,pUe,fUe,mUe,DUe,yUe,wUe,bUe,vUe,kUe,FUe,xUe,jcr;var LUe=_(()=>{zt();iUe={paste:"Lim inn",pasteAsPlaintext:"",pasteCharts:"Lim inn diagram",selectAll:"Vel alt",multiSelect:"Legg til element i utval",moveCanvas:"Flytt lerretet",cut:"Klipp ut",copy:"Kopier",copyAsPng:"Kopier til utklippstavla som PNG",copyAsSvg:"Kopier til utklippstavla som SVG",copyText:"",copySource:"",convertToCode:"",bringForward:"Flytt framover",sendToBack:"Send heilt bak",bringToFront:"Flytt heilt fram",sendBackward:"Send bakover",delete:"Slett",copyStyles:"Kopier stilar",pasteStyles:"Lim inn stilar",stroke:"Strek",background:"Bakgrunn",fill:"Fyll",strokeWidth:"Strekbreidd",strokeStyle:"Strekstil",strokeStyle_solid:"Solid",strokeStyle_dashed:"Stipla",strokeStyle_dotted:"Prikka",sloppiness:"Ujamnheit",opacity:"Synlegheit",textAlign:"Tekstjustering",edges:"Kanter",sharp:"Skarp",round:"Rund",arrowheads:"Pilhovud",arrowhead_none:"Ingen",arrowhead_arrow:"Pil",arrowhead_bar:"Stolpe",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Trekant",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Skriftstorleik",fontFamily:"Skrifttype",addWatermark:"Legg til «Laga med Excalidraw»",handDrawn:"Handteikna",normal:"Normal",code:"Kode",small:"Liten",medium:"Medium",large:"Stor",veryLarge:"Svært stor",solid:"Solid",hachure:"Skravert",zigzag:"",crossHatch:"Krysskravert",thin:"Tynn",bold:"Tjukk",left:"Venstre",center:"Midstill",right:"Høgre",extraBold:"Ekstra tjukk",architect:"Arkitekt",artist:"Kunstnar",cartoonist:"Teiknar",fileTitle:"Filnamn",colorPicker:"Fargeveljar",canvasColors:"Brukt på lerretet",canvasBackground:"Lerretsbakgrunn",drawingCanvas:"Lerret",layers:"Lag",actions:"Handlingar",language:"Språk",liveCollaboration:"",duplicateSelection:"Dupliser",untitled:"Utan namn",name:"Namn",yourName:"Namnet ditt",madeWithExcalidraw:"Laga med Excalidraw",group:"Grupper utval",ungroup:"Avgrupper utval",collaborators:"Samarbeidarar",showGrid:"Vis rutenett",addToLibrary:"Legg til i bibliotek",removeFromLibrary:"Fjern frå bibliotek",libraryLoadingMessage:"Laster bibliotek…",libraries:"Blad gjennom bibliotek",loadingScene:"Laster scene…",align:"Juster",alignTop:"Juster til topp",alignBottom:"Juster til botn",alignLeft:"Juster til venstre",alignRight:"Juster til høgre",centerVertically:"Midtstill vertikalt",centerHorizontally:"Midtstill horisontalt",distributeHorizontally:"Sprei horisontalt",distributeVertically:"Sprei vertikalt",flipHorizontal:"Vipp vassrett",flipVertical:"Vipp loddrett",viewMode:"Visningsmodus",share:"Del",showStroke:"Vis fargeveljar for linjer",showBackground:"Vis fargeveljar for bakgrunn",toggleTheme:"Veksle tema",personalLib:"Personleg bibliotek",excalidrawLib:"Excalidraw-bibliotek",decreaseFontSize:"Gjer skriftstorleik mindre",increaseFontSize:"Gjer skriftstorleik større",unbindText:"Avbind tekst",bindText:"",createContainerFromText:"",link:{edit:"Rediger lenke",editEmbed:"",create:"Lag lenke",createEmbed:"",label:"Lenke",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},uUe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},aUe={clearReset:"Tilbakestill lerretet",exportJSON:"Eksporter til fil",exportImage:"",export:"",copyToClipboard:"Kopier til utklippstavla",save:"Lagre til noverande fil",saveAs:"Lagre som",load:"",getShareableLink:"Hent delingslenke",close:"Lukk",selectLanguage:"Vel språk",scrollBackToContent:"Skroll tilbake til innhald",zoomIn:"Zoom inn",zoomOut:"Zoom ut",resetZoom:"Nullstill zoom",menu:"Meny",done:"Ferdig",edit:"Rediger",undo:"Angre",redo:"Gjer om",resetLibrary:"Nullstill bibliotek",createNewRoom:"Lag nytt rom",fullScreen:"Fullskjerm",darkMode:"Mørk modus",lightMode:"Lys modus",zenMode:"Zen-modus",objectsSnapMode:"",exitZenMode:"Avslutt zen-modus",cancel:"Avbryt",clear:"Tøm",remove:"Fjern",embed:"",publishLibrary:"Publiser",submit:"Send inn",confirm:"Stadfest",embeddableInteractionButton:""},nUe={clearReset:"Dette vil tømme lerretet. Er du sikker?",couldNotCreateShareableLink:"Kunne ikkje lage delingslenke.",couldNotCreateShareableLinkTooBig:"Kunne ikkje opprette deleleg lenke: scena er for stor",couldNotLoadInvalidFile:"Kunne ikkje laste inn ugyldig fil",importBackendFailed:"Importering av backend feila.",cannotExportEmptyCanvas:"Kan ikkje eksportere eit tomt lerret.",couldNotCopyToClipboard:"",decryptFailed:"Kunne ikkje dekryptere data.",uploadedSecurly:"Opplastinga er kryptert og er ikkje mogleg å lese av Excalidraw-serveren eller tredjepartar.",loadSceneOverridePrompt:"Innlasting av ekstern teikning erstattar ditt eksisterande innhald. Ynskjer du å fortsette?",collabStopOverridePrompt:`Viss du avsluttar økta overskriv du den førre, lokalt lagra teikninga di. Er du sikker?
(Ønsker du å halde fram med denne? Då er det berre å lukke denne fana.)`,errorAddingToLibrary:"Kunne ikkje legge elementet i biblioteket",errorRemovingFromLibrary:"Kunne ikkje fjerne elementet frå biblioteket",confirmAddLibrary:"Dette vil legge til {{numShapes}} form(er) i biblioteket ditt. Er du sikker?",imageDoesNotContainScene:"Dette biletet ser ikkje ut til å ha noko scenedata. Har du skrutt på innbygging av scene medan eksporteringa heldt på?",cannotRestoreFromImage:"Scena kunne ikkje gjenopprettast frå denne biletfila",invalidSceneUrl:"Kunne ikkje hente noko scene frå den URL-en. Ho er anten øydelagd eller inneheld ikkje gyldig Excalidraw JSON-data.",resetLibrary:"Dette vil fjerne alt innhald frå biblioteket. Er du sikker?",removeItemsFromsLibrary:"Slette {{count}} element frå biblioteket?",invalidEncryptionKey:"Krypteringsnøkkelen må ha 22 teikn. Sanntidssamarbeid er deaktivert.",collabOfflineWarning:""},oUe={unsupportedFileType:"Filtypen er ikkje støtta.",imageInsertError:"Kunne ikkje sette inn biletet. Prøv igjen seinare...",fileTooBig:"Fila er for stor. Maksimal tillate storleik er {{maxSize}}.",svgImageInsertError:"Kunne ikkje sette inn SVG-biletet. SVG-koden ser ugyldig ut.",failedToFetchImage:"",invalidSVGString:"Ugyldig SVG.",cannotResolveCollabServer:"Kunne ikkje kople til samarbeidsserveren. Ver vennleg å oppdatere inn sida og prøv på nytt.",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},sUe={selection:"Vel",image:"Sett in bilete",rectangle:"Rektangel",diamond:"Diamant",ellipse:"Ellipse",arrow:"Pil",line:"Linje",freedraw:"Teikn",text:"Tekst",library:"Bibliotek",lock:"Hald fram med valt verktøy",penMode:"",link:"Legg til/ oppdater lenke til valt figur",eraser:"Viskelêr",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},lUe={canvasActions:"Handlingar: lerret",selectedShapeActions:"Handlingar: valt objekt",shapes:"Formar"},gUe={canvasPanning:"",linearElement:"Klikk for å starte linje med fleire punkt, eller drag for ei enkel linje",freeDraw:"Klikk og drag, slepp når du er ferdig",text:"Tips: du kan òg leggje til tekst ved å dobbeltklikke kor som helst med utvalgsverktyet",embeddable:"",text_selected:"Dobbelklikk eller trykk ENTER for å redigere teksta",text_editing:"Trykk Escape eller CtrlOrCmd+ENTER for å fullføre redigeringa",linearElementMulti:"Klikk på siste punkt eller trykk Escape eller Enter for å fullføre",lockAngle:"Du kan begrense vinkelen ved å holde nede SKIFT",resize:`Du kan halde fram med forholdet ved å trykke SHIFT medan du endrar storleik,
trykk ALT for å endre storleiken frå midten`,resizeImage:`Du kan endre storleiken fritt ved å halde inne SHIFT,
hald ALT for å endre storleik frå sentrum`,rotate:"Du kan låse vinklane ved å halde SHIFT medan du roterer",lineEditor_info:"",lineEditor_pointSelected:`Trykk på Slett for å fjerne punkt(a),
Ctrl / Cmd+D for å duplisere, eller drag for å flytte`,lineEditor_nothingSelected:`Vel eit punkt å redigere (hald inne SHIFT for å velje fleire),
eller hald inne Alt og klikk for å legge til nye punkt`,placeImage:"Klikk for å plassere biletet, eller klikk og drag for å velje storleik manuelt",publishLibrary:"Publiser ditt eige bibliotek",bindTextToElement:"Trykk på enter for å legge til tekst",deepBoxSelect:"Hald inne Ctrl / Cmd for å velje djupt, og forhindre flytting",eraserRevert:"Hald inne Alt for å reversere markering av element for sletting",firefox_clipboard_write:"",disableSnapping:""},cUe={cannotShowPreview:"Kan ikkje vise førehandsvising",canvasTooBig:"Lerretet er mogleg for stort.",canvasTooBigTip:"Tips: prøv å flytte elementa som er lengst frå kvarandre, litt nærare kvarandre."},CUe={headingMain:"Ein feil oppstod. Prøv <button>å laste sida på nytt.</button>",clearCanvasMessage:"Om ny sidelasting ikkje fungerer, prøv <button>å tømme lerretet.</button>",clearCanvasCaveat:" Dette vil føre til tap av arbeid ",trackedToSentry:"Feilen med identifikator {{eventId}} vart logga i systemet vårt.",openIssueMessage:"Vi er veldig nøye med å ikkje inkludere scene-opplysingane dine i feilmeldinga. Viss scena di ikkje er privat kan du vurdere å følge opp i <button>feilrapporteringssystemet vårt.</button> Ta med opplysingane nedanfor ved å kopiere og lime inn i GitHub-saka.",sceneContent:"Scene-innhald:"},BUe={desc_intro:"Du kan invitere personar til scena di for å samarbeide med deg.",desc_privacy:"Ta det med ro; økta brukar ende-til-ende-kryptering, så alt du teiknar held fram med å vere privat. Ikkje ein gong serveren vår kan sjå kva du lagar.",button_startSession:"Start økt",button_stopSession:"Stopp økt",desc_inProgressIntro:"Sanntids-samarbeidsøkt er no i gang.",desc_shareLink:"Del denne lenka med dei du vil samarbeide med:",desc_exitSession:"Dersom du avsluttar økta blir du kopla frå rommet, men du kan halde fram med å arbeide med scena lokalt. Ver merksam på at dette ikkje vil påverke andre personar, og desse vil framleis ha moglegheit til å samarbeide på deira eigen versjon.",shareTitle:"Bli med på eit sanntidssamarbeid på Excalidraw"},EUe={title:"Feil"},dUe={disk_title:"Lagre til disk",disk_details:"Eksporter scenedataa til ei fil du kan importere seinare.",disk_button:"Lagre til fil",link_title:"Deleleg lenke",link_details:"Eksporter som skrivebeskytta lenke.",link_button:"Eksporter til lenke",excalidrawplus_description:"Lagre scena til Excalidraw+-arbeidsområdet ditt.",excalidrawplus_button:"Eksporter",excalidrawplus_exportError:"Kunne ikkje eksportere til Excalidraw+ akkurat no..."},IUe={blog:"Les bloggen vår",click:"klikk",deepSelect:"Marker djupt",deepBoxSelect:"Marker djupt inni boksen og forhindr flytting",curvedArrow:"Boga pil",curvedLine:"Boga linje",documentation:"Dokumentasjon",doubleClick:"dobbelklikk",drag:"drag",editor:"Redigering",editLineArrowPoints:"",editText:"",github:"Funne eit problem? Send inn",howto:"Følg vegleiinga vår",or:"eller",preventBinding:"Hindre pilkopling",tools:"",shortcuts:"Tastatursnarvegar",textFinish:"Fullfør redigering (teksthandsamar)",textNewLine:"Legg til ny linje (teksthandsamar)",title:"Hjelp",view:"Vising",zoomToFit:"Zoom for å sjå alle elementa",zoomToSelection:"Zoom til utval",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},hUe={title:"Tøm lerretet"},QUe={title:"Publiser bibliotek",itemName:"Elementnamn",authorName:"Eigaren sitt namn",githubUsername:"GitHub-brukarnamn",twitterUsername:"Twitter-brukarnamn",libraryName:"Biblioteknamn",libraryDesc:"Bibliotekskildring",website:"Nettstad",placeholder:{authorName:"Namnet eller brukarnamnet ditt",libraryName:"Namnet på biblioteket ditt",libraryDesc:"Skildring av biblioteket ditt sånn at andre forstår bruken av det",githubHandle:"GitHub-brukarnamn (valfritt), slik at du kan redigere bibiloteket når det er sendt inn til vurdering",twitterHandle:"Twitter-brukarnamn (valfritt), så vi veit kven vi skal kreditere på Twitter",website:"Lenke til den personlege nettstaden din eller ein anna stad (valfritt)"},errors:{required:"Kravt",website:"Fyll inn ein gyldig URL"},noteDescription:"Send inn biblioteket ditt til inkludering i <link>den offentlege bibliotek-kjeldekoda</link>slik at andre kan bruke det i teikningane deira.",noteGuidelines:"Biblioteket må godkjennast manuelt fyrst. Ver vennleg å lese <link>retningslinjene</link> før du sender inn. Du kjem til å trenge ein GitHub-konto for å kommunisere og gjere endringar dersom kravt, men det er ikkje strengt naudsynt.",noteLicense:"Ved å sende inn godkjenner du at biblioteket vert publisert under <link>MIT-lisensen, </link>som kort sagt betyr at kven som helst kan bruke det utan avgrensingar.",noteItems:"Kvart bibliotekselement må ha eit eige namn, slik at det er mogleg å filtrere. Dei følgande bibliotekselementa blir inkludert:",atleastOneLibItem:"Ver vennleg å markere minst eitt bibliotekselement for å starte",republishWarning:""},pUe={title:"Bibliotek innsendt",content:"Tusen takk {{authorName}}! Biblioteket ditt har blitt sendt inn til gjennomgang. Du kan halde styr på status<link>her</link>"},fUe={resetLibrary:"Tilbakestill bibliotek",removeItemsFromLib:"Fjern valde element frå biblioteket"},mUe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},DUe={tooltip:"Teikningane dine er ende-til-ende-krypterte slik at Excalidraw sine serverar aldri får sjå dei.",link:"Blogginnlegg om ende-til-ende-kryptering i Excalidraw"},yUe={angle:"Vinkel",element:"Element",elements:"Element",height:"Høgde",scene:"Scene",selected:"Valde",storage:"Lagring",title:"Statistikk for nerdar",total:"Totalt",version:"Versjon",versionCopy:"Klikk for å kopiere",versionNotAvailable:"Versjonen er ikkje tilgjengeleg",width:"Breidde"},wUe={addedToLibrary:"Lagt til i bibliotek",copyStyles:"Kopierte stilane.",copyToClipboard:"Kopiert til utklippstavla.",copyToClipboardAsPng:`Kopierte {{exportSelection}} til utklippstavla som PNG
({{exportColorScheme}})`,fileSaved:"Fila er lagra.",fileSavedToFilename:"Lagra som {filename}",canvas:"lerret",selection:"val",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},bUe={transparent:"Gjennomsiktig",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},vUe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},kUe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},FUe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},xUe={title:"",button:"",description:"",syntax:"",preview:""},jcr={labels:iUe,library:uUe,buttons:aUe,alerts:nUe,errors:oUe,toolBar:sUe,headings:lUe,hints:gUe,canvasError:cUe,errorSplash:CUe,roomDialog:BUe,errorDialog:EUe,exportDialog:dUe,helpDialog:IUe,clearCanvasDialog:hUe,publishDialog:QUe,publishSuccessDialog:pUe,confirmDialog:fUe,imageExportDialog:mUe,encrypted:DUe,stats:yUe,toast:wUe,colors:bUe,welcomeScreen:vUe,colorPicker:kUe,overwriteConfirm:FUe,mermaid:xUe}});var aMe={};Dt(aMe,{alerts:()=>UUe,buttons:()=>GUe,canvasError:()=>KUe,clearCanvasDialog:()=>qUe,colorPicker:()=>rMe,colors:()=>eMe,confirmDialog:()=>VUe,default:()=>Xcr,encrypted:()=>XUe,errorDialog:()=>PUe,errorSplash:()=>JUe,errors:()=>MUe,exportDialog:()=>_Ue,headings:()=>YUe,helpDialog:()=>WUe,hints:()=>HUe,imageExportDialog:()=>jUe,labels:()=>RUe,library:()=>NUe,mermaid:()=>uMe,overwriteConfirm:()=>iMe,publishDialog:()=>zUe,publishSuccessDialog:()=>ZUe,roomDialog:()=>OUe,stats:()=>$Ue,toast:()=>AMe,toolBar:()=>TUe,welcomeScreen:()=>tMe});var RUe,NUe,GUe,UUe,MUe,TUe,YUe,HUe,KUe,JUe,OUe,PUe,_Ue,WUe,qUe,zUe,ZUe,VUe,jUe,XUe,$Ue,AMe,eMe,tMe,rMe,iMe,uMe,Xcr;var nMe=_(()=>{zt();RUe={paste:"Pegar",pasteAsPlaintext:"Pegar en tèxt brut",pasteCharts:"Pegar los grafics",selectAll:"Tot seleccionar",multiSelect:"Apondre un element a la seleccion",moveCanvas:"Desplaçar lo canabàs",cut:"Talhar",copy:"Copiar",copyAsPng:"Copiar al quichapapièrs coma PNG",copyAsSvg:"Copiar al quichapapièrs coma SVG",copyText:"Copiar al quichapapièrs coma tèxt",copySource:"",convertToCode:"",bringForward:"En avant",sendToBack:"En arrièr",bringToFront:"A l’endavant",sendBackward:"Endarrièr",delete:"Suprimir",copyStyles:"Copiar los estiles",pasteStyles:"Pegar los estils",stroke:"Contorn",background:"Rèireplan",fill:"Empliment",strokeWidth:"Largor de contorn",strokeStyle:"Estil de contorn",strokeStyle_solid:"Solide",strokeStyle_dashed:"Tiret",strokeStyle_dotted:"Puntilhat",sloppiness:"Estil de traça",opacity:"Opacitat",textAlign:"Alinhament tèxt",edges:"Angles",sharp:"Ponchut",round:"Arredonit",arrowheads:"Cap de la flècha",arrowhead_none:"Cap",arrowhead_arrow:"Sageta",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Triangle",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Talha polissa",fontFamily:"Familha de polissa",addWatermark:"Apondre « Fabricat amb Excalidraw »",handDrawn:"A la man levada",normal:"Normala",code:"Còdi",small:"Pichona",medium:"Mejana",large:"Granda",veryLarge:"Gradassa",solid:"Solide",hachure:"Raia",zigzag:"Zigzag",crossHatch:"Raia crosada",thin:"Fin",bold:"Espés",left:"Esquèrra",center:"Centre",right:"Drecha",extraBold:"Espesàs",architect:"Arquitècte",artist:"Artista",cartoonist:"Dessenhaire",fileTitle:"Nom del fichièr",colorPicker:"Selector de color",canvasColors:"Utilizada suls canabassses",canvasBackground:"Rèireplan del canabàs",drawingCanvas:"Zòna de dessenh",layers:"Calques",actions:"Accions",language:"Lenga",liveCollaboration:"Collaboracion en dirèct...",duplicateSelection:"Duplicar",untitled:"Sens títol",name:"Nom",yourName:"Vòstre nom",madeWithExcalidraw:"Fabricat amb Excalidraw",group:"Gropar la seleccion",ungroup:"Desunir la seleccion",collaborators:"Collaborators",showGrid:"Afichar la gresilha",addToLibrary:"Apondre a la bibliotèca",removeFromLibrary:"Suprimir de la bibliotèca",libraryLoadingMessage:"Cargament de la bibliotèca…",libraries:"Percórrer las bibliotècas",loadingScene:"Cargament de la scèna…",align:"Alinhament",alignTop:"Alinhar ennaut",alignBottom:"Alinhar enbàs",alignLeft:"Alinhar a esquèrra",alignRight:"Alinhar a drecha",centerVertically:"Centrar verticalament",centerHorizontally:"Centrar orizontalament",distributeHorizontally:"Distribuir orizontalament",distributeVertically:"Distribuir verticalament",flipHorizontal:"Virar orizontalament",flipVertical:"Virar verticalament",viewMode:"Mòde de vista",share:"Partejar",showStroke:"Mostrar lo selector de color de contorn",showBackground:"Mostrar lo selector de color de fons",toggleTheme:"Alternar tèma",personalLib:"Bibliotèca personala",excalidrawLib:"Bibliotèca Excalidraw",decreaseFontSize:"Reduire talha polissa",increaseFontSize:"Aumentar talha polissa",unbindText:"Dessociar lo tèxte",bindText:"Ligar lo tèxt al contenidor",createContainerFromText:"Envelopar lo tèxte dins un contenedor",link:{edit:"Modificar lo ligam",editEmbed:"Modificar lo ligam e l’integracion",create:"Crear un ligam",createEmbed:"Crear un ligam e son integracion",label:"Ligam",labelEmbed:"Ligam e integracion",empty:"Cap de ligam pas definit"},lineEditor:{edit:"Modificar la linha",exit:"Sortir de l’editor de linha"},elementLock:{lock:"Verrolhar",unlock:"Desverrolhar",lockAll:"Tot verrolhar",unlockAll:"Tot desverrolhar"},statusPublished:"Publicat",sidebarLock:"Gardar la barra laterala dobèrta",selectAllElementsInFrame:"Seleccionar totes los elements del quadre",removeAllElementsFromFrame:"Tirar totes los elements d’al quadre",eyeDropper:"Prendre la color a partir d’un canabàs",textToDiagram:"",prompt:""},NUe={noItems:"Cap d’element pas encara apondut...",hint_emptyLibrary:"Seleccionatz un element d’apondre aquí, o installatz una bibliotèca del depaus public, çai-jos.",hint_emptyPrivateLibrary:"Seleccionatz un element d’apondre aquí pel canabàs."},GUe={clearReset:"Reïnicializar lo canabàs",exportJSON:"Exportar en fichièr",exportImage:"Exportar imatges...",export:"Enregistrar dins...",copyToClipboard:"Copiar al quichapapièrs",save:"Salvar al fichièr actual",saveAs:"Enregistrar jos",load:"Dobrir",getShareableLink:"Obténer lo ligam de partatge",close:"Tampar",selectLanguage:"Causir una lenga",scrollBackToContent:"Tornar al contengut",zoomIn:"Zoom avant",zoomOut:"Zoom arrièr",resetZoom:"Tirar lo zoom",menu:"Menú",done:"Acabat",edit:"Modificar",undo:"Anullar",redo:"Restablir",resetLibrary:"Reïnicializar la bibliotèca",createNewRoom:"Crear sala novèla",fullScreen:"Ecran complèt",darkMode:"Mòde escur",lightMode:"Mòde clar",zenMode:"Mòde escur",objectsSnapMode:"Ancorar als objèctes",exitZenMode:"Sortir del mòde zen",cancel:"Anullar",clear:"Escafar",remove:"Tirar",embed:"Alternar l’integracion",publishLibrary:"Publicar",submit:"Enviar",confirm:"Confirmar",embeddableInteractionButton:"Clicar per interagir"},UUe={clearReset:"Aquò suprimirà lo canabàs complèt. O volètz vertadièrament ?",couldNotCreateShareableLink:"Creacion impossibla del ligam de partatge.",couldNotCreateShareableLinkTooBig:"Creacion impossibla del ligam de partatge : la scèna es tròp granda",couldNotLoadInvalidFile:"Cargament impossible d’un fichièr invalid",importBackendFailed:"Importacion fracassada.",cannotExportEmptyCanvas:"Impossible d’exportar los canabasses voids.",couldNotCopyToClipboard:"Còpia impossibla al quichapapièrs.",decryptFailed:"Deschiframent impossible de las donadas.",uploadedSecurly:"Lo telecargament es estat securizat amb un chiframent del cap a la fin, significa que los servidors d’Excalidraw o que quina tèrça part que siá pòdon pas legir lo contengut.",loadSceneOverridePrompt:"Cargar un dessenh extèrn remplaçarà vòstre contengut existent. Volètz contunhar ?",collabStopOverridePrompt:`Arrestar la session remplaçarà vòstre precedent dessenh gardat localament. O volètz vertadièrament ?
(Se volètz gardar vòstre dessenh local, tampatz simplament l’onglet del navegador a la plaça)`,errorAddingToLibrary:"Apondon impossible de l’element a la bibliotèca",errorRemovingFromLibrary:"Supression impossibla de l’element a la bibliotèca",confirmAddLibrary:"Apondrà {{numShapes}} forma(s) a vòstra bibliotèca. Confirmatz ?",imageDoesNotContainScene:"Aqueste imatge sembla pas conténer cap de donadas de scèna. Avètz activat l’integracion de scèna pendent l’exportacion ?",cannotRestoreFromImage:"Restauracion impossibla de la scèna a partir del fichièr imatge",invalidSceneUrl:"Importacion impossibla de la scèna a partir de l’URL provesida. Es siá mal formatada o siá conten pas cap de donada JSON Excalidraw valida.",resetLibrary:"Aquò suprimirà vòstra bibliotèca. O volètz vertadièrament ?",removeItemsFromsLibrary:"Suprimir {{count}} element(s) de la bibliotèca ?",invalidEncryptionKey:"La clau de chiframent deu conténer 22 caractèrs. La collaboracion en dirèct es desactivada.",collabOfflineWarning:`Cap de connexion pas disponibla.
Vòstras modificacions seràn pas salvadas !`},MUe={unsupportedFileType:"Tipe de fichièr pas pres en carga.",imageInsertError:"Insercion d’imatge impossibla. Tornatz ensajar mai tard...",fileTooBig:"Fichièr tròp pesuc. La talha maximala autorizada es {{maxSize}}.",svgImageInsertError:"Insercion d’imatge SVG impossibla. Las balisas SVG semblan invalidas.",failedToFetchImage:"Fracàs de la recuperacion de l’imatge.",invalidSVGString:"SVG invalid.",cannotResolveCollabServer:"Connexion impossibla al servidor collab. Mercés de recargar la pagina e tornar ensajar.",importLibraryError:"Impossible de cargar la bibliotèca",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"Empegatge impossible (lectura impossibla a partir del quichapapièrs).",asyncPasteFailedOnParse:"Empegatge impossible.",copyToSystemClipboardFailed:"Còpia impossibla al quichapapièrs."},TUe={selection:"Seleccion",image:"Inserir imatge",rectangle:"Rectangle",diamond:"Lausange",ellipse:"Ellipsa",arrow:"Sageta",line:"Linha",freedraw:"Dessenhar",text:"Tèxt",library:"Bibliotèca",lock:"Mantenir activa l’aisina aprèp dessenhar",penMode:"Mòde estilo - empachar lo contact",link:"Apondre/Actualizar lo ligam per una fòrma seleccionada",eraser:"Goma",frame:"Esplech quadre",magicframe:"",embeddable:"Integracion Web",laser:"Puntador laser",hand:"Man (aisina de desplaçament de la vista)",extraTools:"Mai d’aisinas",mermaidToExcalidraw:"De Mermaid cap a Excalidraw",magicSettings:""},YUe={canvasActions:"Accions del canabàs",selectedShapeActions:"Accions per la forma seleccionada",shapes:"Formas"},HUe={canvasPanning:"",linearElement:"Clicatz per començar mantun punt, lisatz per una sola linha",freeDraw:"Clicatz e lisatz, relargatz un còp acabat",text:"Astúcia : podètz tanben apondre de tèxt en doble clicant ont que siá amb l’aisina de seleccion",embeddable:"",text_selected:"Clicatz dos còps o quichatz ENTRADA per modificar lo tèxt",text_editing:"Quichatz ESCAPAR o CtrlOrCmd+ENTRADA per acabar la modificacion",linearElementMulti:"Clicatz sul darrièr punt o quichatz Ecap o Entrada per acabar",lockAngle:"Podètz restrénger l’angle en mantenent MAJ",resize:`Podètz servar las proporcions en mantenent la tòca MAJ pendent lo redimensionament,
mantenètz la tòca ALT per redimensionar a partir del centre`,resizeImage:`Podètz retalhar liurament en quichant CTRL,
quichatz ALT per retalhar a partir del centre`,rotate:"Podètz restrénger los angles en mantenent MAJ pendent la rotacion",lineEditor_info:"Tenètz quichat Ctrl o Cmd e doble clic o quichatz Ctrl o Cmd + Entrada per modificar los ponches",lineEditor_pointSelected:`Quichar Suprimir per tirar lo(s) punt(s),
CtrlOCmd+D per duplicar, o lisatz per desplaçar`,lineEditor_nothingSelected:`Seleccionar un punt d’editar (manténer Maj. per ne seleccionar mantun),
o manténer Alt e clicar per n’apondre de novèls`,placeImage:"Clicatz per plaçar l’imatge, o clicatz e lisatz per definir sa talha manualament",publishLibrary:"Publicar vòstra pròpria bibliotèca",bindTextToElement:"Quichatz Entrada per apondre de tèxte",deepBoxSelect:"Gardar CtrlOCmd per una seleccion gropada e empachar lo desplaçament",eraserRevert:"Tenètz quichat Alt per anullar los elements marcats per supression",firefox_clipboard_write:"",disableSnapping:""},KUe={cannotShowPreview:"Afichatge impossible de l’apercebut",canvasTooBig:"Lo canabàs pòt èsser tròp grand.",canvasTooBigTip:"Astúcia : ensajatz de sarrar los elements mai alonhats."},JUe={headingMain:"Una error s’es producha. Ensajatz <button>recargament de la pagina.</button>",clearCanvasMessage:"Se recargar fonciona pas, ensajatz <button>d’escafar los canabasses.</button>",clearCanvasCaveat:" Menarà a una pèrda del trabalh ",trackedToSentry:"Error amb l’identificant {{eventId}} es estada enregistrada sus nòstre sistèma.",openIssueMessage:"Èrem plan prudents per inclure pas d’informacions de la scèna vòstra sus l’error. Se vòstra scèna es pas privada, volgatz considerar de perseguir sus nòstre <button>traçadors d’avarias.</button> Volgatz inclure las informacions çai-jos en las copiant e pegant a l’issue GitHub.",sceneContent:"Contengut de la scèna :"},OUe={desc_intro:"Podètz convidar lo monde a vòstra scèna actuala per participar amb vos.",desc_privacy:"Vos en fagatz pas, la session utiliza lo chiframent del cap a la fin, çò que dessenetz demorarà privat. Mai nòstres servidors poiràn pas veire vòstra creacion.",button_startSession:"Començar la session",button_stopSession:"Arrestar la session",desc_inProgressIntro:"La session de collaboracion es ara en cors.",desc_shareLink:"Partejatz aqueste ligam amb lo monde amb qui volètz collaborar :",desc_exitSession:"Arrestar la session vos desconnectarà de la sala, mas poiretz contunhar de trabalhar a la scèna, en local. Notatz qu’aquò afectarà pas los autres, e poiràn collaborar a lor version.",shareTitle:"Rejonhètz una session collaborativa sus Excalidraw"},PUe={title:"Error"},_Ue={disk_title:"Salvar al disc",disk_details:"Exportar las donadas de la scèna cap a un fichièr que podètz importar mai tard.",disk_button:"Salvar al fichièr",link_title:"Ligam de partejar",link_details:"Exportar coma un ligam de lectura sola.",link_button:"Exportar en ligam",excalidrawplus_description:"Enregistrar la scèna dins vòstre espaci de trabalh Excalidraw+.",excalidrawplus_button:"Exportar",excalidrawplus_exportError:"Export impossibla cap a Excalidraw+ pel moment..."},WUe={blog:"Legir nòstre blog",click:"clic",deepSelect:"Seleccion prigonda",deepBoxSelect:"Seleccionar demest un grop e empacha lo desplaçament",curvedArrow:"Sageta corba",curvedLine:"Linha corba",documentation:"Documentacion",doubleClick:"doble clic",drag:"lisar",editor:"Editor",editLineArrowPoints:"",editText:"Modificar lo tèxte / apondre etiqueta",github:"Problèma trobat ? Senhalatz-lo",howto:"Seguissètz nòstras guidas",or:"o",preventBinding:"Empachar la fixacion de sagetas",tools:"Aisinas",shortcuts:"Acorchis clavièr",textFinish:"Terminar l’edicion (editor de tèxt)",textNewLine:"Apondre linha novèl (editor de tèxt)",title:"Ajuda",view:"Vista",zoomToFit:"Zoomar per veire totes los elements",zoomToSelection:"Zoomar la seleccion",toggleElementLock:"Verrolhar/Desverrolhar la seleccion",movePageUpDown:"Desplaçar la pagina ennaut/enbàs",movePageLeftRight:"Desplaçar la pagina a esquèrra/drecha"},qUe={title:"Escafar canabàs"},zUe={title:"Publicar la bibliotèca",itemName:"Nom de l’element",authorName:"Nom de l’autor",githubUsername:"Nom d’utilizaire GitHub",twitterUsername:"Nom d’utilizaire Twitter",libraryName:"Nom de la bibliotèca",libraryDesc:"Descripcion de la bibliotèca",website:"Site web",placeholder:{authorName:"Vòstre nom o nom d’utilizaire",libraryName:"Nom de vòstra bibliotèca",libraryDesc:"Descripcion de vòstra bibliotèca per ajudar lo monde a comprendre son utilizacion",githubHandle:"GitHub handle(opcional), per poder modificar la bibliotèca un còp enviada per repassa",twitterHandle:"Nom d’utilizaire Twitter (opcional), per saber qual mercejar quand ne parlam sus Twitter",website:"Ligam cap a vòstre site web personal o endacòm mai (opcional)"},errors:{required:"Requerit",website:"Picatz una URL valida"},noteDescription:"Enviatz vòstra bibliotèca per èsser compresa al <link>repertòri public de bibliotèca</link>per que los autres l’utilizen dins lor dessenhs.",noteGuidelines:"Qualqu’un deu aprovar la bibliotèca manualament per començar. Volgatz legir las <link>linhas directrises</link> abans de sometre. Vos farà mestièr un compte GitHub per comunicar e realizar de modificacions se demandadas, mas es pas complètament obligatòri.",noteLicense:"En sometent, acceptatz que la bibliotèca siá publicada sota la <link>Licéncia MIT, </link>que significa en brèu que qual que siá pòt l’utilizar sens cap de restriccion.",noteItems:"Cada element de bibliotèca deu aver un nom pròpri per èsser filtrable. Los elements de bibliotèca seguentas seràn incluses :",atleastOneLibItem:"Volgatz seleccionar almens un element de bibliotèca per començar",republishWarning:"Nòta : d’unes elements seleccionats son marcats ja coma publicats/enviats. Deuriatz sonque tornar enviar los elements pendent l’actualizacion d’una bibliotèca existenta o un mandadís."},ZUe={title:"Bibliotèca somesa",content:"Mercés {{authorName}}. Vòstre bibliotèca es estada somesa per repassa. Podètz seguir l’avançament<link>aquí</link>"},VUe={resetLibrary:"Reïnicializar la bibliotèca",removeItemsFromLib:"Tirar los elements seleccionats de la bibliotèca"},jUe={header:"Exportar imatges",label:{withBackground:"Rèireplan",onlySelected:"Seleccion sonque",darkMode:"Mòde escur",embedScene:"Embarcar la scèna",scale:"Escala",padding:"Espaçament"},tooltip:{embedScene:""},title:{exportToPng:"Exportar en PNG",exportToSvg:"Exportar en SVG",copyPngToClipboard:"Copiar PNG al quichapapièrs"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copiar al quichapapièrs"}},XUe={tooltip:"Vòstres dessenhs son chifrats del cap a la fin en consequéncia los servidors d’Excalidraw los veiràn pas jamai.",link:"Article de blòg sul chiframent del cap a la fin dins Excalidraw"},$Ue={angle:"Angle",element:"Element",elements:"Elements",height:"Nautor",scene:"Scèna",selected:"Seleccionat",storage:"Emmagazinatge",title:"Estatisticas pels nerds",total:"Total",version:"Version",versionCopy:"Clicar per copiar",versionNotAvailable:"Version pas disponibla",width:"Largor"},AMe={addedToLibrary:"Apondut a la bibliotèca",copyStyles:"Estiles copiats.",copyToClipboard:"Copiats al quichapapièrs.",copyToClipboardAsPng:"{{exportSelection}} copiat coma PNG ({{exportColorScheme}})",fileSaved:"Fichièr enregistrat.",fileSavedToFilename:"Enregistrat jos {filename}",canvas:"canabàs",selection:"seleccion",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},eMe={transparent:"Transparéncia",black:"Negre",white:"Blanc",red:"Roge",pink:"Ròse",grape:"Bordèu",violet:"Violet",gray:"Gris",blue:"Blau",cyan:"Cian",teal:"Sarcèla",green:"Verd",yellow:"Jaune",orange:"Irange",bronze:"Bronze"},tMe={app:{center_heading:"Totas las donadas son enregistradas dins vòstre navegador.",center_heading_plus:"Voliatz puslèu utilizar Excalidraw+ a la plaça ?",menuHint:"Exportar, preferéncias, lengas, ..."},defaults:{menuHint:"Exportar, preferéncias, e mai...",center_heading:"Diagram. Tot. Simplament.",toolbarHint:"Prenètz un esplech e començatz de dessenhar !",helpHint:"Acorchis e ajuda"}},rMe={mostUsedCustomColors:"Colors personalizadas mai utilizadas",colors:"Colors",shades:"Nuanças",hexCode:"Còdi exadecimal",noShades:"Cap de nuança pas disponibla per aquesta color"},iMe={action:{exportToImage:{title:"Exportar coma imatge",button:"Exportar coma imatge",description:""},saveToDisk:{title:"Salvar al disc",button:"Salvar al disc",description:"Exportar las donadas de la scèna cap a un fichièr que podètz importar mai tard."},excalidrawPlus:{title:"Excalidraw+",button:"Exportar dins Excalidraw+",description:"Enregistrar la scèna dins vòstre espaci de trabalh Excalidraw+."}},modal:{loadFromFile:{title:"Cargar d’un fichièr",button:"Cargar d’un fichièr",description:""},shareableLink:{title:"Cargar d’un ligam",button:"Remplaçar mon contengut",description:""}}},uMe={title:"De Mermaid cap a Excalidraw",button:"Inserir",description:"",syntax:"Sintaxi Mermaid",preview:"Apercebut"},Xcr={labels:RUe,library:NUe,buttons:GUe,alerts:UUe,errors:MUe,toolBar:TUe,headings:YUe,hints:HUe,canvasError:KUe,errorSplash:JUe,roomDialog:OUe,errorDialog:PUe,exportDialog:_Ue,helpDialog:WUe,clearCanvasDialog:qUe,publishDialog:zUe,publishSuccessDialog:ZUe,confirmDialog:VUe,imageExportDialog:jUe,encrypted:XUe,stats:$Ue,toast:AMe,colors:eMe,welcomeScreen:tMe,colorPicker:rMe,overwriteConfirm:iMe,mermaid:uMe}});var GMe={};Dt(GMe,{alerts:()=>gMe,buttons:()=>lMe,canvasError:()=>dMe,clearCanvasDialog:()=>mMe,colorPicker:()=>LMe,colors:()=>xMe,confirmDialog:()=>wMe,default:()=>$cr,encrypted:()=>vMe,errorDialog:()=>QMe,errorSplash:()=>IMe,errors:()=>cMe,exportDialog:()=>pMe,headings:()=>BMe,helpDialog:()=>fMe,hints:()=>EMe,imageExportDialog:()=>bMe,labels:()=>oMe,library:()=>sMe,mermaid:()=>NMe,overwriteConfirm:()=>RMe,publishDialog:()=>DMe,publishSuccessDialog:()=>yMe,roomDialog:()=>hMe,stats:()=>kMe,toast:()=>FMe,toolBar:()=>CMe,welcomeScreen:()=>SMe});var oMe,sMe,lMe,gMe,cMe,CMe,BMe,EMe,dMe,IMe,hMe,QMe,pMe,fMe,mMe,DMe,yMe,wMe,bMe,vMe,kMe,FMe,xMe,SMe,LMe,RMe,NMe,$cr;var UMe=_(()=>{zt();oMe={paste:"ਪੇਸਟ ਕਰੋ",pasteAsPlaintext:"ਸਾਦੇ ਪਾਠ ਵਜੋਂ ਪੇਸਟ ਕਰੋ",pasteCharts:"ਚਾਰਟ ਪੇਸਟ ਕਰੋ",selectAll:"ਸਾਰੇ ਚੁਣੋ",multiSelect:"ਐਲੀਮੈਂਟ ਨੂੰ ਚੋਣ ਵਿੱਚ ਜੋੜੋ",moveCanvas:"ਕੈਨਵਸ ਹਿਲਾਓ",cut:"ਕੱਟੋ",copy:"ਕਾਪੀ ਕਰੋ",copyAsPng:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ PNG ਵਜੋਂ ਕਾਪੀ ਕਰੋ",copyAsSvg:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ SVG ਵਜੋਂ ਕਾਪੀ ਕਰੋ",copyText:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਪਾਠ ਵਜੋਂ ਕਾਪੀ ਕਰੋ",copySource:"",convertToCode:"",bringForward:"ਅੱਗੇ ਲਿਆਓ",sendToBack:"ਸਭ ਤੋਂ ਪਿੱਛੇ ਭੇਜੋ",bringToFront:"ਸਭ ਤੋਂ ਅੱਗੇ ਲਿਆਓ",sendBackward:"ਪਿੱਛੇ ਭੇਜੋ",delete:"ਮਿਟਾਓ",copyStyles:"ਸਟਾਇਲ ਕਾਪੀ ਕਰੋ",pasteStyles:"ਸਟਾਇਲ ਪੇਸਟ ਕਰੋ",stroke:"ਰੇਖਾ",background:"ਬੈਕਗਰਾਉਂਡ",fill:"ਭਰਨਾ",strokeWidth:"ਰੇਖਾ ਦੀ ਚੌੜਾਈ",strokeStyle:"ਰੇਖਾ ਦਾ ਸਟਾਇਲ",strokeStyle_solid:"ਠੋਸ",strokeStyle_dashed:"ਡੈਸ਼ ਵਾਲੀ",strokeStyle_dotted:"ਬਿੰਦੀਆਂ ਵਾਲੀ",sloppiness:"ਬੇਤਰਤੀਬੀ",opacity:"ਅਪਾਰਦਰਸ਼ਤਾ",textAlign:"ਲਿਖਤ ਇਕਸਾਰਤਾ",edges:"ਕਿਨਾਰੇ",sharp:"ਤਿੱਖੇ",round:"ਗੋਲ",arrowheads:"ਤੀਰ ਦੇ ਸਿਰੇ",arrowhead_none:"ਕੋਈ ਨਹੀਂ",arrowhead_arrow:"ਤੀਰ",arrowhead_bar:"ਡੰਡੀ",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"ਤਿਕੋਣ",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"ਫੌਂਟ ਅਕਾਰ",fontFamily:"ਫੌਂਟ ਪਰਿਵਾਰ",addWatermark:'"Excalidraw ਨਾਲ ਬਣਾਇਆ" ਜੋੜੋ',handDrawn:"ਹੱਥਲਿਖਤ",normal:"ਆਮ",code:"ਕੋਡ",small:"ਛੋਟਾ",medium:"ਮੱਧਮ",large:"ਵੱਡਾ",veryLarge:"ਬਹੁਤ ਵੱਡਾ",solid:"ਠੋਸ",hachure:"ਤਿਰਛੀਆਂ ਗਰਿੱਲਾਂ",zigzag:"ਵਿੰਗ-ਤੜਿੰਗ",crossHatch:"ਜਾਲੀ",thin:"ਪਤਲੀ",bold:"ਮੋਟੀ",left:"ਖੱਬੇ",center:"ਵਿਚਕਾਰ",right:"ਸੱਜੇ",extraBold:"ਬਹੁਤ ਮੋਟੀ",architect:"ਭਵਨ ਨਿਰਮਾਣਕਾਰੀ",artist:"ਕਲਾਕਾਰ",cartoonist:"ਕਾਰਟੂਨਿਸਟ",fileTitle:"ਫਾਈਲ ਦਾ ਨਾਂ",colorPicker:"ਰੰਗ ਚੋਣਕਾਰ",canvasColors:"ਕੈਨਵਸ 'ਤੇ ਵਰਤਿਆ",canvasBackground:"ਕੈਨਵਸ ਦਾ ਬੈਕਗਰਾਉਂਡ",drawingCanvas:"ਡਰਾਇੰਗ ਕੈਨਵਸ",layers:"ਪਰਤਾਂ",actions:"ਕਾਰਵਾਈਆਂ",language:"ਭਾਸ਼ਾ",liveCollaboration:"ਲਾਇਵ ਸਹਿਯੋਗ...",duplicateSelection:"ਡੁਪਲੀਕੇਟ ਬਣਾਓ",untitled:"ਬੇ-ਸਿਰਨਾਵਾਂ",name:"ਨਾਂ",yourName:"ਤੁਹਾਡਾ ਨਾਂ",madeWithExcalidraw:"Excalidraw ਨਾਲ ਬਣਾਇਆ",group:"ਚੋਣ ਦਾ ਗਰੁੱਪ ਬਣਾਓ",ungroup:"ਚੋਣ ਦਾ ਗਰੁੱਪ ਤੋੜੋ",collaborators:"ਸਹਿਯੋਗੀ",showGrid:"ਜਾਲੀ ਦਿਖਾਓ",addToLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚ ਜੋੜੋ",removeFromLibrary:"ਲਾਇਬ੍ਰੇਰੀ 'ਚੋਂ ਹਟਾਓ",libraryLoadingMessage:"ਲਾਇਬ੍ਰੇਰੀ ਲੋਡ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ…",libraries:"ਲਾਇਬ੍ਰੇਰੀਆਂ ਬਰਾਉਜ਼ ਕਰੋ",loadingScene:"ਦ੍ਰਿਸ਼ ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ…",align:"ਇਕਸਾਰ",alignTop:"ਉੱਪਰ ਇਕਸਾਰ ਕਰੋ",alignBottom:"ਹੇਠਾਂ ਇਕਸਾਰ ਕਰੋ",alignLeft:"ਖੱਬੇ ਇਕਸਾਰ ਕਰੋ",alignRight:"ਸੱਜੇ ਇਕਸਾਰ ਕਰੋ",centerVertically:"ਲੇਟਵੇਂ ਵਿਚਕਾਰ ਕਰੋ",centerHorizontally:"ਖੜ੍ਹਵੇਂ ਵਿਚਕਾਰ ਕਰੋ",distributeHorizontally:"ਖੜ੍ਹਵੇਂ ਇਕਸਾਰ ਵੰਡੋ",distributeVertically:"ਲੇਟਵੇਂ ਇਕਸਾਰ ਵੰਡੋ",flipHorizontal:"ਲੇਟਵੇਂ ਪਾਸੇ ਪਲਟੋ",flipVertical:"ਖੜ੍ਹਵੇਂ ਪਾਸੇ ਪਲਟੋ",viewMode:"ਦੇਖਣ ਵਾਲਾ ਮੋਡ",share:"ਸਾਂਝਾ ਕਰੋ",showStroke:"ਰੇਖਾ ਦਾ ਰੰਗ ਚੋਣਕਾਰ ਦਿਖਾਓ",showBackground:"ਬੈਕਗਰਾਉਂਡ ਦਾ ਰੰਗ ਚੋਣਕਾਰ ਦਿਖਾਓ",toggleTheme:"ਥੀਮ ਬਦਲੋ",personalLib:"ਨਿੱਜੀ ਲਾਇਬ੍ਰੇਰੀ",excalidrawLib:"ਐਕਸਕਲੀਡਰਾਅ ਲਾਇਬ੍ਰੇਰੀ",decreaseFontSize:"ਫੌਂਟ ਦਾ ਅਕਾਰ ਘਟਾਓ",increaseFontSize:"ਫੌਂਟ ਦਾ ਅਕਾਰ ਵਧਾਓ",unbindText:"ਪਾਠ ਨੂੰ ਵੱਖ ਕਰੋ",bindText:"ਪਾਠ ਨੂੰ ਕੰਟੇਨਰ ਨਾਲ ਬੰਨ੍ਹੋ",createContainerFromText:"ਪਾਠ ਨੂੰ ਕੰਟੇਨਰ ਵਿੱਚ ਇਕੱਠਾ ਕਰੋ",link:{edit:"ਕੜੀ ਸੋਧੋ",editEmbed:"",create:"ਕੜੀ ਬਣਾਓ",createEmbed:"",label:"ਕੜੀ",labelEmbed:"",empty:""},lineEditor:{edit:"ਪੰਕਤੀ ਸੋਧੋ",exit:"ਪੰਕਤੀ ਸੋਧਕ 'ਤੋਂ ਬਾਹਰ ਨਿਕਲੋ"},elementLock:{lock:"ਲਾਕ ਕਰੋ",unlock:"ਅਨਲਾਕ ਕਰੋ",lockAll:"ਸਭ ਲਾਕ ਕਰੋ",unlockAll:"ਸਭ ਅਨਲਾਕ ਕਰੋ"},statusPublished:"ਪ੍ਰਕਾਸ਼ਤ ਹੈ",sidebarLock:"ਸਾਈਡਬਾਰ ਨੂੰ ਖੁੱਲ੍ਹਾ ਰੱਖੋ",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},sMe={noItems:"ਹਾਲੇ ਤੱਕ ਕੋਈ ਚੀਜ ਜੋੜੀ ਨਹੀਂ ਗਈ...",hint_emptyLibrary:"ਇੱਥੇ ਆਈਟਮ ਜੋੜਨ ਲਈ ਉਸਨੂੰ ਕੈਨਵਸ ‘ਤੇ ਚੁਣੋ, ਜਾਂ ਹੇਠਾਂ ਪਬਲਿਕ ਰਿਪਾਜ਼ੀਟਰੀ ‘ਚੋਂ ਲਾਇਬ੍ਰੇਰੀ ਸਥਾਪਤ ਕਰੋ।",hint_emptyPrivateLibrary:"ਇੱਥੇ ਆਈਟਮ ਜੋੜਨ ਲਈ ਉਸਨੂੰ ਕੈਨਵਸ ‘ਤੇ ਚੁਣੋ।"},lMe={clearReset:"ਕੈਨਵਸ ਰੀਸੈੱਟ ਕਰੋ",exportJSON:"ਫਾਈਲ ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ",exportImage:"ਤਸਵੀਰ ਨਿਰਯਾਤ ਕਰੋ...",export:"ਇਸ ਵਿੱਚ ਸਾਂਭੋ...",copyToClipboard:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਕਾਪੀ ਕਰੋ",save:"ਮੌਜੂਦਾ ਫਾਈਲ ਵਿੱਚ ਸਾਂਭੋ",saveAs:"ਇਸ ਵਜੋਂ ਸਾਂਭੋ",load:"ਖੋਲ੍ਹੋ",getShareableLink:"ਸਾਂਝੀ ਕਰਨ ਵਾਲੀ ਲਿੰਕ ਲਵੋ",close:"ਬੰਦ ਕਰੋ",selectLanguage:"ਭਾਸ਼ਾ ਚੁਣੋ",scrollBackToContent:"ਸਮੱਗਰੀ 'ਤੇ ਵਾਪਸ ਸਕਰੋਲ ਕਰੋ",zoomIn:"ਜ਼ੂਮ ਵਧਾਓ",zoomOut:"ਜ਼ੂਮ ਘਟਾਓ",resetZoom:"ਜ਼ੂਮ ਰੀਸੈੱਟ ਕਰੋ",menu:"ਮੇਨੂ",done:"ਹੋ ਗਿਆ",edit:"ਸੋਧੋ",undo:"ਅਣਕੀਤਾ ਕਰੋ",redo:"ਮੁੜ-ਕਰੋ",resetLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਰੀਸੈੱਟ ਕਰੋ",createNewRoom:"ਨਵਾਂ ਕਮਰਾ ਬਣਾਓ",fullScreen:"ਪੂਰੀ ਸਕਰੀਨ",darkMode:"ਡਾਰਕ ਮੋਡ",lightMode:"ਲਾਇਟ ਮੋਡ",zenMode:"ਜ਼ੈੱਨ ਮੋਡ",objectsSnapMode:"",exitZenMode:"ਜ਼ੈੱਨ ਮੋਡ 'ਚੋਂ ਬਾਹਰ ਨਿਕਲੋ",cancel:"ਰੱਦ ਕਰੋ",clear:"ਸਾਫ਼ ਕਰੋ",remove:"ਹਟਾਓ",embed:"",publishLibrary:"ਪ੍ਰਕਾਸ਼ਤ ਕਰੋ",submit:"ਜਮ੍ਹਾ ਕਰਵਾਓ",confirm:"ਪੁਸ਼ਟੀ ਕਰੋ",embeddableInteractionButton:""},gMe={clearReset:"ਇਹ ਸਾਰਾ ਕੈਨਵਸ ਸਾਫ ਕਰ ਦੇਵੇਗਾ। ਕੀ ਤੁਸੀਂ ਪੱਕਾ ਇੰਝ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?",couldNotCreateShareableLink:"ਸਾਂਝੀ ਕਰਨ ਵਾਲੀ ਲਿੰਕ ਨਹੀਂ ਬਣਾ ਸਕੇ।",couldNotCreateShareableLinkTooBig:"ਸਾਂਝੀ ਕਰਨ ਵਾਲੀ ਲਿੰਕ ਨਹੀਂ ਬਣਾ ਸਕੇ: ਦ੍ਰਿਸ਼ ਬਹੁਤ ਵੱਡਾ ਹੈ",couldNotLoadInvalidFile:"ਨਜਾਇਜ਼ ਫਾਈਲ ਲੋਡ ਨਹੀਂ ਕਰ ਸਕੇ",importBackendFailed:"ਬੈਕਐੱਨਡ ਤੋਂ ਆਯਾਤ ਕਰਨ ਵਿੱਚ ਅਸਫਲ ਰਹੇ।",cannotExportEmptyCanvas:"ਖਾਲੀ ਕੈਨਵਸ ਨੂੰ ਨਿਰਯਾਤ ਨਹੀਂ ਕਰ ਸਕਦੇ।",couldNotCopyToClipboard:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਕਾਪੀ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ।",decryptFailed:"ਡਾਟਾ ਡੀਕਰਿਪਟ ਨਹੀਂ ਕਰ ਸਕੇ।",uploadedSecurly:"ਅੱਪਲੋਡ ਸਿਰੇ-ਤੋਂ-ਸਿਰੇ ਤੱਕ ਇਨਕਰਿਪਸ਼ਨ ਨਾਲ ਸੁਰੱਖਿਅਤ ਕੀਤੀ ਹੋਈ ਹੈ, ਜਿਸਦਾ ਮਤਲਬ ਇਹ ਹੈ ਕਿ Excalidraw ਸਰਵਰ ਅਤੇ ਤੀਜੀ ਧਿਰ ਦੇ ਬੰਦੇ ਸਮੱਗਰੀ ਨੂੰ ਪੜ੍ਹ ਨਹੀਂ ਸਕਦੇ।",loadSceneOverridePrompt:"ਬਾਹਰੀ ਡਰਾਇੰਗ ਨੂੰ ਲੋਡ ਕਰਨਾ ਤੁਹਾਡੀ ਮੌਜੂਦਾ ਸਮੱਗਰੀ ਦੀ ਥਾਂ ਲੈ ਲਵੇਗਾ। ਕੀ ਤੁਸੀਂ ਜਾਰੀ ਰੱਖਣਾ ਚਾਹੁੰਦੇ ਹੋ?",collabStopOverridePrompt:`ਇਜਲਾਸ ਨੂੰ ਰੋਕਣਾ ਪਿਛਲੀ ਲੋਕਲ ਸਾਂਭੀ ਡਰਾਇੰਗ ਦੀ ਥਾਂ ਲੈ ਲਵੇਗਾ। ਪੱਕਾ ਇੰਝ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?
(ਜੇ ਤੁਸੀਂ ਆਪਣੀ ਲੋਕਲ ਡਰਾਇੰਗ ਨੂੰ ਬਰਕਰਾਰ ਰੱਖਣਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ਇਹ ਕਰਨ ਦੀ ਬਜਾਏ ਬੱਸ ਆਪਣਾ ਟੈਬ ਬੰਦ ਕਰ ਦਿਉ।)`,errorAddingToLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚ ਸਮੱਗਰੀ ਨਹੀਂ ਜੋੜ ਸਕੇ",errorRemovingFromLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚੋਂ ਸਮੱਗਰੀ ਨਹੀਂ ਹਟਾ ਸਕੇ",confirmAddLibrary:"ਇਹ ਤੁਹਾਡੀ ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚ {{numShapes}} ਆਕ੍ਰਿਤੀ(ਆਂ) ਨੂੰ ਜੋੜ ਦੇਵੇਗਾ। ਕੀ ਤੁਸੀਂ ਪੱਕਾ ਇੰਝ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?",imageDoesNotContainScene:"ਇਸ ਤਸਵੀਰ ਵਿੱਚ ਦ੍ਰਿਸ਼ ਦਾ ਕੋਈ ਵੀ ਡਾਟਾ ਨਜ਼ਰ ਨਹੀਂ ਆ ਰਿਹਾ। ਕੀ ਤੁਸੀਂ ਨਿਰਯਾਤ ਕਰਦੇ ਸਮੇਂ ਦ੍ਰਿਸ਼ ਨੂੰ ਮੜ੍ਹਣਾ ਸਮਰੱਥ ਕੀਤਾ ਸੀ?",cannotRestoreFromImage:"ਇਸ ਤਸਵੀਰ ਫਾਈਲ ਤੋਂ ਦ੍ਰਿਸ਼ ਬਹਾਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ",invalidSceneUrl:"ਦਿੱਤੀ ਗਈ URL 'ਚੋਂ ਦ੍ਰਿਸ਼ ਨੂੰ ਆਯਾਤ ਨਹੀਂ ਕਰ ਸਕੇ। ਇਹ ਜਾਂ ਤਾਂ ਖਰਾਬ ਹੈ, ਜਾਂ ਇਸ ਵਿੱਚ ਜਾਇਜ਼ Excalidraw JSON ਡਾਟਾ ਸ਼ਾਮਲ ਨਹੀਂ ਹੈ।",resetLibrary:"ਇਹ ਤੁਹਾਡੀ ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਸਾਫ ਕਰ ਦੇਵੇਗਾ। ਕੀ ਤੁਸੀਂ ਪੱਕਾ ਇੰਝ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?",removeItemsFromsLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚੋਂ {{count}} ਚੀਜ਼(-ਜ਼ਾਂ) ਮਿਟਾਉਣੀਆਂ ਹਨ?",invalidEncryptionKey:"ਇਨਕਰਿਪਸ਼ਨ ਕੁੰਜੀ ‌‌22 ਅੱਖਰਾਂ ਦੀ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ। ਲਾਇਵ ਸਹਿਯੋਗ ਬੰਦ ਹੈ।",collabOfflineWarning:`ਕੋਈ ਇੰਟਰਨੈੱਟ ਕਨੈਕਸ਼ਨ ਨਹੀਂ ਹੈ
ਤੁਹਾਡੀਆਂ ਤਬਦੀਲੀਆਂ ਸਾਂਭੀਆਂ ਨਹੀਂ ਜਾਣਗੀਆਂ।`},cMe={unsupportedFileType:"ਫਾਈਲ ਦੀ ਕਿਸਮ ਦਾ ਸਮਰਥਨ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ।",imageInsertError:"ਚਿੱਤਰ ਸ਼ਾਮਲ ਨਹੀਂ ਜਾ ਸਕਿਆ, ਬਾਅਦ ਵਿੱਚ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ...",fileTooBig:"ਫਾਈਲ ਬਹੁਤ ਜ਼ਿਆਦਾ ਵੱਡੀ ਹੈ। ਵੱਧ-ਤੋਂ-ਵੱਧ ਪ੍ਰਵਾਨਤ ਅਕਾਰ {{maxSize}} ਹੈ।",svgImageInsertError:"SVG ਤਸਵੀਰ ਸ਼ਾਮਲ ਨਹੀਂ ਕਰ ਸਕੇ। SVG ਮਾਰਕ-ਅੱਪ ਨਜਾਇਜ਼ ਲੱਗ ਰਿਹਾ ਹੈ।",failedToFetchImage:"",invalidSVGString:"SVG ਨਜਾਇਜ਼ ਹੈ।",cannotResolveCollabServer:"",importLibraryError:"ਲਾਇਬ੍ਰੇਰੀ ਲੋਡ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},CMe={selection:"ਚੋਣਕਾਰ",image:"ਤਸਵੀਰ ਸ਼ਾਮਲ ਕਰੋ",rectangle:"ਆਇਤ",diamond:"ਹੀਰਾ",ellipse:"ਅੰਡਾਕਾਰ",arrow:"ਤੀਰ",line:"ਲਕੀਰ",freedraw:"ਵਾਹੋ",text:"ਪਾਠ",library:"ਲਾਇਬ੍ਰੇਰੀ",lock:"ਡਰਾਇੰਗ ਤੋਂ ਬਾਅਦ ਵੀ ਚੁਣੇ ਹੋਏ ਸੰਦ ਨੂੰ ਸਰਗਰਮ ਰੱਖੋ ",penMode:"ਪੈੱਨ ਮੋਡ - ਟੱਚ ਤੋਂ ਬਚਾਉਂਦਾ ਹੈ",link:"",eraser:"ਰਬੜ",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},BMe={canvasActions:"ਕੈਨਵਸ ਦੀਆਂ ਕਾਰਵਾਈਆਂ",selectedShapeActions:"ਚੁਣੀ ਆਕ੍ਰਿਤੀ ਦੀਆਂ ਕਾਰਵਾਈਆਂ",shapes:"ਆਕ੍ਰਿਤੀਆਂ"},EMe={canvasPanning:"",linearElement:"ਇੱਕ ਤੋਂ ਜ਼ਿਆਦਾ ਬਿੰਦੂਆਂ ਲਈ ਕਲਿੱਕ ਕਰਕੇ ਸ਼ੁਰੂਆਤ ਕਰੋ, ਇਕਹਿਰੀ ਲਕੀਰ ਲਈ ਘਸੀਟੋ",freeDraw:"ਕਲਿੱਕ ਕਰਕੇ ਘਸੀਟੋ, ਪੂਰਾ ਹੋਣ 'ਤੇ ਛੱਡ ਦਿਉ",text:"ਨੁਸਖਾ: ਤੁਸੀਂ ਚੋਣਕਾਰ ਸੰਦ ਰਾਹੀਂ ਕਿਤੇ ਵੀ ਡਬਲ-ਕਲਿੱਕ ਕਰਕੇ ਵੀ ਪਾਠ ਜੋੜ ਸਕਦੇ ਹੋ",embeddable:"",text_selected:"ਪਾਠ ਨੂੰ ਸੋਧਣ ਲਈ ਡਬਲ-ਕਲਿੱਕ ਕਰੋ ਜਾਂ ਐਂਟਰ ਦਬਾਓ",text_editing:"ਸੋਧ ਮੁਕੰਮਲ ਕਰਨ ਲਈ ਐਸਕੇਪ (Esc) ਜਾਂ Ctrl-ਜਾਂ-Cmd+ਐਂਟਰ (enter) ਦਬਾਓ",linearElementMulti:"ਮੁਕੰਮਲ ਕਰਨ ਲਈ ਆਖਰੀ ਬਿੰਦੂ 'ਤੇ ਕਲਿੱਕ ਕਰੋ ਜਾਂ ਇਸਕੇਪ ਜਾਂ ਐਂਟਰ ਦਬਾਓ",lockAngle:"ਤੁਸੀਂ SHIFT ਦਬਾਈ ਰੱਖ ਕੇ ਕੋਣਾਂ ਨੂੰ ਕਾਬੂ ਕਰ ਸਕਦੇ ਹੋ",resize:"ਤੁਸੀਂ ਅਕਾਰ ਬਦਲਦੇ ਸਮੇਂ SHIFT ਦਬਾਈ ਰੱਖ ਕੇ ਅਨੁਪਾਤ ਨੂੰ ਕਾਬੂ ਕਰ ਸਕਦੇ ਹੋ, ਵਿਚਕਾਰ ਤੋਂ ਅਕਾਰ ਬਦਲਣ ਲਈ ALT ਦਬਾਓ",resizeImage:"",rotate:"ਤੁਸੀਂ ਘੁਮਾਉਂਦੇ ਹੋਏ SHIFT ਦਬਾਈ ਰੱਖ ਕੇ ਕੋਣਾਂ ਨੂੰ ਕਾਬੂ ਕਰ ਸਕਦੇ ਹੋ",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"ਆਪਣੀ ਲਾਇਬ੍ਰੇਰੀ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰੋ",bindTextToElement:"ਪਾਠ ਜੋੜਨ ਲਈ ਐੰਟਰ ਦਬਾਓ",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},dMe={cannotShowPreview:"ਝਲਕ ਨਹੀਂ ਦਿਖਾ ਸਕਦੇ",canvasTooBig:"ਸ਼ਾਇਦ ਕੈਨਵਸ ਬਹੁਤ ਜ਼ਿਆਦਾ ਵੱਡਾ ਹੈ।",canvasTooBigTip:"ਨੁਸਖਾ: ਸਭ ਤੋਂ ਦੂਰ ਸਥਿੱਤ ਐਲੀਮੈਂਟਾਂ ਨੂੰ ਥੋੜ੍ਹਾ ਜਿਹਾ ਨੇੜੇ ਲਿਆ ਕੇ ਦੇਖੋ।"},IMe={headingMain:"ਕੋਈ ਸਮੱਸਿਆ ਖੜ੍ਹੀ ਹੋਈ। <button>ਪੰਨਾ ਮੁੜ-ਲੋਡ</button> ਕਰਕੇ ਦੇਖੋ।",clearCanvasMessage:"ਜੇ ਮੁੜ-ਲੋਡ ਕਰਨਾ ਕੰਮ ਨਾ ਕਰੇ, ਤਾਂ ਇਹ ਕਰਕੇ ਦੇਖੋ <button>ਕੈਨਵਸ ਸਾਫ ਕਰੋ।</button>",clearCanvasCaveat:" ਇਹ ਸਾਰਾ ਕੰਮ ਗਵਾ ਦੇਵੇਗਾ ",trackedToSentry:"ਸੂਚਕ {{eventId}} ਵਾਲੀ ਸਮੱਸਿਆ ਸਾਡੇ ਸਿਸਟਮ 'ਤੇ ਟਰੈਕ ਕੀਤੀ ਗਈ ਸੀ।",openIssueMessage:"ਅਸੀਂ ਬੜੇ ਸਾਵਧਾਨ ਸੀ ਕਿ ਗਲਤੀ ਵਿੱਚ ਤੁਹਾਡੇ ਦ੍ਰਿਸ਼ ਦੀ ਜਾਣਕਾਰੀ ਸ਼ਾਮਲ ਨਾ ਕਰੀਏ। ਜੇ ਤੁਹਾਡਾ ਦ੍ਰਿਸ਼ ਨਿੱਜੀ ਨਹੀਂ ਹੈ ਤਾਂ ਇਸ 'ਤੇ ਸਾਡੇ ਨਾਲ ਸੰਪਰਕ ਕਰੋ ਜੀ <button>ਬੱਗ ਟਰੈਕਰ।</button>ਹੇਠਾਂ ਦਿੱਤੀ ਜਾਣਕਾਰੀ ਨੂੰ ਕਾਪੀ ਕਰਕੇ ਗਿੱਟਹੱਬ ਮੁੱਦੇ ਵਿੱਚ ਪੇਸਟ ਕਰਕੇ ਸ਼ਾਮਲ ਕਰੋ ਜੀ।",sceneContent:"ਦ੍ਰਿਸ਼ ਦੀ ਸਮੱਗਰੀ:"},hMe={desc_intro:"ਤੁਸੀਂ ਲੋਕਾਂ ਨੂੰ ਆਪਣੇ ਨਾਲ ਮੌਜੂਦਾ ਦ੍ਰਿਸ਼ 'ਤੇ ਸਹਿਯੋਗ ਕਰਨ ਲਈ ਸੱਦਾ ਭੇਜ ਸਕਦੇ ਹੋ।",desc_privacy:"ਫਿਕਰ ਨਾ ਕਰੋ, ਇਜਲਾਸ ਸਿਰੇ-ਤੋਂ-ਸਿਰੇ ਤੱਕ ਇਨਕਰਿਪਸ਼ਨ ਵਰਤਦਾ ਹੈ, ਸੋ ਜੋ ਕੁਝ ਵੀ ਤੁਸੀਂ ਵਾਹੁੰਦੇ ਹੋ ਉਹ ਨਿੱਜੀ ਹੀ ਰਹਿੰਦਾ ਹੈ। ਇੱਥੋਂ ਤੱਕ ਕਿ ਸਾਡੇ ਸਰਵਰ ਵੀ ਨਹੀਂ ਜਾਣ ਸਕਣਗੇ ਕਿ ਤੁਸੀਂ ਕੀ ਬਣਾਇਆ ਹੈ।",button_startSession:"ਇਜਲਾਸ ਸ਼ੁਰੂ ਕਰੋ",button_stopSession:"ਇਜਲਾਸ ਰੋਕੋ",desc_inProgressIntro:"ਲਾਇਵ ਸਹਿਯੋਗ ਇਜਲਾਸ ਹੁਣ ਚੱਲ ਰਿਹਾ ਹੈ।",desc_shareLink:"ਇਸ ਲਿੰਕ ਨੂੰ ਉਹਨਾਂ ਨਾਲ ਸਾਂਝਾ ਕਰੋ ਜਿਹਨਾਂ ਨਾਲ ਤੁਸੀਂ ਸਹਿਯੋਗ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ:",desc_exitSession:"ਇਜਲਾਸ ਨੂੰ ਰੋਕਣਾ ਤੁਹਾਡਾ ਕਮਰੇ ਨਾਲੋਂ ਨਾਤਾ ਤੋੜ ਦੇਵੇਗਾ, ਪਰ ਤੁਸੀਂ ਸਥਾਨਕ ਪੱਧਰ 'ਤੇ ਦ੍ਰਿਸ਼ ਨਾਲ ਕੰਮ ਕਰਨਾ ਜਾਰੀ ਰੱਖ ਸਕੋਗੇ। ਇਹ ਧਿਆਨ 'ਚ ਰੱਖੋ ਕਿ ਇਹ ਬਾਕੀ ਲੋਕਾਂ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਨਹੀਂ ਕਰੇਗਾ , ਅਤੇ ਉਹ ਹਾਲੇ ਵੀ ਆਪਣੇ ਸੰਸਕਰਨ 'ਤੇ ਸਹਿਯੋਗ ਕਰਨ ਦੇ ਕਾਬਲ ਹੋਣਗੇ।",shareTitle:"Excalidraw 'ਤੇ ਲਾਈਵ ਇਜਲਾਸ ਦਾ ਹਿੱਸਾ ਬਣੋ"},QMe={title:"ਗਲਤੀ"},pMe={disk_title:"ਡਿਸਕ ਵਿੱਚ ਸਾਂਭੋ",disk_details:"ਦ੍ਰਿਸ਼ ਦਾ ਡਾਟਾ ਫਾਈਲ ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ ਜਿੱਥੋਂ ਤੁਸੀਂ ਇਸਨੂੰ ਬਾਅਦ ਵਿੱਚ ਆਯਾਤ ਕਰ ਸਕਦੇ ਹੋ।",disk_button:"ਫਾਈਲ ਵਿੱਚ ਸਾਂਭੋ",link_title:"ਸਾਂਝੀ ਕਰਨ ਵਾਲੀ ਲਿੰਕ",link_details:"ਸਿਰਫ ਦੇਖੇ-ਜਾਣ ਵਾਲੀ ਲਿੰਕ ਵਜੋਂ ਨਿਰਯਾਤ ਕਰੋ।",link_button:"ਲਿੰਕ ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ",excalidrawplus_description:"ਆਪਣੇ ਦ੍ਰਿਸ਼ ਦੇ ਡਾਟੇ ਨੂੰ Excalidraw+ ਵਰਕਸਪੇਸ ਵਿੱਚ ਸਾਂਭੋ।",excalidrawplus_button:"ਨਿਰਯਾਤ ਕਰੋ",excalidrawplus_exportError:"ਇਸ ਸਮੇਂ Excalidraw+ ਵਿੱਚ ਨਿਰਯਾਤ ਨਹੀਂ ਕਰ ਸਕੇ..."},fMe={blog:"ਸਾਡਾ ਬਲੌਗ ਪੜ੍ਹੋ",click:"ਕਲਿੱਕ",deepSelect:"",deepBoxSelect:"",curvedArrow:"ਵਿੰਗਾ ਤੀਰ",curvedLine:"ਵਿੰਗੀ ਲਕੀਰ",documentation:"ਕਾਗਜ਼ਾਤ",doubleClick:"ਡਬਲ-ਕਲਿੱਕ",drag:"ਘਸੀਟੋ",editor:"ਸੋਧਕ",editLineArrowPoints:"",editText:"",github:"ਕੋਈ ਸਮੱਸਿਆ ਲੱਭੀ? ਜਮ੍ਹਾਂ ਕਰਵਾਓ",howto:"ਸਾਡੀਆਂ ਗਾਈਡਾਂ ਦੀ ਪਾਲਣਾ ਕਰੋ",or:"ਜਾਂ",preventBinding:"ਤੀਰ ਬੱਝਣਾ ਰੋਕੋ",tools:"ਟੂਲ",shortcuts:"ਕੀਬੋਰਡ ਸ਼ਾਰਟਕੱਟ",textFinish:"ਸੋਧਣਾ ਮੁਕੰਮਲ ਕਰੋ (ਪਾਠ ਸੋਧਕ)",textNewLine:"ਨਵੀਂ ਪੰਕਤੀ ਜੋੜੋ (ਪਾਠ ਸੋਧਕ)",title:"ਮਦਦ",view:"ਦਿੱਖ",zoomToFit:"ਸਾਰੇ ਐਲੀਮੈਂਟਾਂ ਨੂੰ ਫਿੱਟ ਕਰਨ ਲਈ ਜ਼ੂਮ ਕਰੋ",zoomToSelection:"ਚੋਣ ਤੱਕ ਜ਼ੂਮ ਕਰੋ",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},mMe={title:"ਕੈਨਵਸ ਨੂੰ ਸਾਫ਼ ਕਰੋ"},DMe={title:"ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਪ੍ਰਕਾਸ਼ਤ ਕਰੋ",itemName:"ਚੀਜ਼ ਦਾ ਨਾਂ",authorName:"ਲੇਖਕ ਦਾ ਨਾਂ",githubUsername:"ਗਿੱਟਹੱਬ ਵਰਤੋਂਕਾਰ ਨਾਂ",twitterUsername:"ਟਵਿੱਟਰ ਦਾ ਵਰਤੋਂਕਾਰ-ਨਾਂ",libraryName:"ਲਾਇਬ੍ਰੇਰੀ ਦਾ ਨਾਂ",libraryDesc:"ਲਾਇਬ੍ਰੇਰੀ ਦਾ ਵੇਰਵਾ",website:"ਵੈੱਬਸਾਇਟ",placeholder:{authorName:"ਤੁਹਾਡਾ ਨਾਂ ਜਾਂ ਵਰਤੋਂਕਾਰ-ਨਾਂ",libraryName:"ਤੁਹਾਡੀ ਲਾਇਬਰ੍ਰੀ ਦਾ ਨਾਂ",libraryDesc:"ਤੁਹਾਡੀ ਲਾਇਬ੍ਰੇਰੀ ਦਾ ਵੇਰਵਾ ਤਾਂ ਜੋ ਲੋਕਾਂ ਨੂੰ ਇਸ ਤੋੰਂ ਇਸਦੀ ਵਰਤੋਂ ਕਰਨ ਸਬੰਧੀ ਮਦਦ ਮਿਲ ਸਕੇ",githubHandle:"",twitterHandle:"",website:""},errors:{required:"ਲੋੜੀਂਦਾ",website:"ਜਾਇਜ਼ URL ਭਰੋ"},noteDescription:"ਹੋਰ ਲੋਕਾਂ ਵੱਲੋਂ ਤੁਹਾਡੀ ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਵਰਤਣ ਲਈ ਸਕਣ ਇਸ ਲਈ<link>ਜਨਤਕ ਲਾਇਬ੍ਰੇਰੀ ਦੀ ਰਿਪਾਜ਼ੀਟਰੀ</link> ਵਿੱਚ ਆਪਣੀ ਲਾਇਬ੍ਰੇਰੀ ਸ਼ਾਮਲ ਕਰਵਾਉਣ ਲਈ ਜਮ੍ਹਾ ਕਰਵਾਓ",noteGuidelines:"<link>ਦਿਸ਼ਾ ਨਿਰਦੇਸ਼</link>",noteLicense:"<link>MIT ਲਾਇਸੈਂਸ, </link>",noteItems:"",atleastOneLibItem:"",republishWarning:""},yMe={title:"ਲਾਇਬ੍ਰੇਰੀ ਜਮ੍ਹਾਂ ਕਰਵਾਈ",content:"ਧੰਨਵਾਦ {{authorName}} ਜੀਉ। ਤੁਹਾਡੀ ਲਾਇਬ੍ਰੇਰੀ ਨੂੰ ਸਮੀਖਿਆ ਲਈ ਭੇਜ ਦਿੱਤਾ ਗਿਆ ਹੈ। ਤੁਸੀਂ ਉਸਦੀ ਸਥਿਤੀ <link>ਇੱਥੇ</link> ਦੇਖ ਸਕਦੇ ਹੋ।"},wMe={resetLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਰੀਸੈੱਟ ਕਰੋ",removeItemsFromLib:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚੋਂ ਚੁਣੀਆਂ ਹੋਈਆਂ ਆਈਟਮਾਂ ਹਟਾਓ"},bMe={header:"ਤਸਵੀਰ ਨਿਰਯਾਤ ਕਰੋ",label:{withBackground:"ਪਿਛੋਕੜ",onlySelected:"ਸਿਰਫ ਚੁਣੇ ਹੋਏ",darkMode:"ਡਾਰਕ ਮੋਡ",embedScene:"ਦ੍ਰਿਸ਼ ਮੜ੍ਹੋ",scale:"ਸਕੇਲ",padding:"ਪੈਡਿੰਗ"},tooltip:{embedScene:""},title:{exportToPng:"PNG ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ",exportToSvg:"SVG ਵਿੱਚ ਨਿਰਯਾਤ ਕਰੋ",copyPngToClipboard:"PNG ਨੂੰ ਕਲਿੱਪੋਬਰਡ ‘ਤੇ ਕਾਪੀ ਕਰੋ"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"ਗੱਤੇ 'ਤੇ ਕਾਪੀ ਕਰੋ"}},vMe={tooltip:"ਤੁਹਾਡੀ ਡਰਾਇੰਗਾਂ ਸਿਰੇ-ਤੋਂ-ਸਿਰੇ ਤੱਕ ਇਨਕਰਿਪਟ ਕੀਤੀਆਂ ਹੋਈਆਂ ਹਨ, ਇਸ ਲਈ Excalidraw ਦੇ ਸਰਵਰ ਉਹਨਾਂ ਨੂੰ ਕਦੇ ਵੀ ਨਹੀਂ ਦੇਖਣਗੇ।",link:"Excalidraw ਵਿੱਚ ਸਿਰੇ-ਤੋਂ-ਸਿਰੇ ਤੱਕ ਇਨਕ੍ਰਿਪਸ਼ਨ 'ਤੇ ਬਲੌਗ ਸੰਪਾਦਨਾ"},kMe={angle:"ਕੋਣ",element:"ਐਲੀਮੈਂਟ",elements:"ਐਲੀਮੈਂਟ",height:"ਉਚਾਈ",scene:"ਦ੍ਰਿਸ਼",selected:"ਚੁਣੇ",storage:"ਸਟੋਰੇਜ",title:"ਪੜਾਕੂਆਂ ਲਈ ਅੰਕੜੇ",total:"ਕੁੱਲ",version:"ਸੰਸਕਰਨ",versionCopy:"ਕਾਪੀ ਕਰਨ ਲਈ ਕਲਿੱਕ ਕਰੋ",versionNotAvailable:"ਸੰਸਕਰਨ ਉਪਲਬਧ ਨਹੀਂ ਹੈ",width:"ਚੌੜਾਈ"},FMe={addedToLibrary:"ਲਾਇਬ੍ਰੇਰੀ ਵਿੱਚ ਜੋੜਿਆ",copyStyles:"ਕਾਪੀ ਕੀਤੇ ਸਟਾਇਲ।",copyToClipboard:"ਕਲਿੱਪਬੋਰਡ 'ਤੇ ਕਾਪੀ ਕੀਤਾ।",copyToClipboardAsPng:"{{exportSelection}} ਨੂੰ ਕਲਿੱਪਬੋਰਡ 'ਤੇ PNG ਵਜੋਂ ਕਾਪੀ ਕੀਤਾ ({{exportColorScheme}})",fileSaved:"ਫਾਈਲ ਸਾਂਭੀ ਗਈ।",fileSavedToFilename:"{filename} ਵਿੱਚ ਸਾਂਭੀ",canvas:"ਕੈਨਵਸ",selection:"ਚੋਣ",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},xMe={transparent:"ਪਾਰਦਰਸ਼ੀ",black:"ਕਾਲੀ",white:"ਸਫ਼ੈਦ",red:"ਲਾਲ",pink:"ਗੁਲਾਬੀ",grape:"ਅੰਗੂਰੀ",violet:"ਜਾਮਣੀ",gray:"ਸੁਰਮਈ",blue:"ਨੀਲਾ",cyan:"ਫਿਰੋਜੀ",teal:"ਟੀਲ",green:"ਹਰਾ",yellow:"ਪੀਲਾ",orange:"ਸੰਤਰੀ",bronze:"ਕਾਂਸੇਰੰਗਾ"},SMe={app:{center_heading:"ਤੁਹਾਡਾ ਸਾਰਾ ਡਾਟਾ ਤੁਹਾਡੇ ਲੋਕਲ ਬਰਾਉਜ਼ਰ ਵਿੱਚ ਸਾਂਭਿਆ ਹੋਇਆ ਹੈ।",center_heading_plus:"",menuHint:"ਨਿਰਯਾਤ, ਤਰਜੀਹਾਂ, ਭਾਸ਼ਾਵਾਂ, …"},defaults:{menuHint:"ਨਿਰਯਾਤ, ਤਰਜੀਹਾਂ, ਅਤੇ ਹੋਰ ਵੀ ਬਹੁਤ ਕੁਝ…",center_heading:"ਡਾਇਆਗ੍ਰਾਮਾਂ। ਕੀਤੀਆਂ। ਸੁਖਾਲੀਆਂ।",toolbarHint:"",helpHint:"ਸ਼ਾਰਟਕੱਟ ਤੇ ਮਦਦ"}},LMe={mostUsedCustomColors:"ਸਭ ਤੋਂ ਵੱਧ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਕਸਟਮ ਰੰਗ",colors:"ਰੰਗ",shades:"ਸ਼ੇਡਾਂ",hexCode:"ਹੈਕਸ ਕੋਡ",noShades:"ਇਸ ਰੰਗ ਦੀ ਕੋਈ ਸ਼ੇਡ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"},RMe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},NMe={title:"",button:"",description:"",syntax:"",preview:""},$cr={labels:oMe,library:sMe,buttons:lMe,alerts:gMe,errors:cMe,toolBar:CMe,headings:BMe,hints:EMe,canvasError:dMe,errorSplash:IMe,roomDialog:hMe,errorDialog:QMe,exportDialog:pMe,helpDialog:fMe,clearCanvasDialog:mMe,publishDialog:DMe,publishSuccessDialog:yMe,confirmDialog:wMe,imageExportDialog:bMe,encrypted:vMe,stats:kMe,toast:FMe,colors:xMe,welcomeScreen:SMe,colorPicker:LMe,overwriteConfirm:RMe,mermaid:NMe}});var MMe={};Dt(MMe,{default:()=>jW,en:()=>f4A,kaa:()=>m4A});var TMe=_(()=>{D4A();zt()});var cTe={};Dt(cTe,{alerts:()=>JMe,buttons:()=>KMe,canvasError:()=>qMe,clearCanvasDialog:()=>$Me,colorPicker:()=>sTe,colors:()=>nTe,confirmDialog:()=>tTe,default:()=>ACr,encrypted:()=>iTe,errorDialog:()=>VMe,errorSplash:()=>zMe,errors:()=>OMe,exportDialog:()=>jMe,headings:()=>_Me,helpDialog:()=>XMe,hints:()=>WMe,imageExportDialog:()=>rTe,labels:()=>YMe,library:()=>HMe,mermaid:()=>gTe,overwriteConfirm:()=>lTe,publishDialog:()=>ATe,publishSuccessDialog:()=>eTe,roomDialog:()=>ZMe,stats:()=>uTe,toast:()=>aTe,toolBar:()=>PMe,welcomeScreen:()=>oTe});var YMe,HMe,KMe,JMe,OMe,PMe,_Me,WMe,qMe,zMe,ZMe,VMe,jMe,XMe,$Me,ATe,eTe,tTe,rTe,iTe,uTe,aTe,nTe,oTe,sTe,lTe,gTe,ACr;var CTe=_(()=>{zt();YMe={paste:"Wklej",pasteAsPlaintext:"Wklej jako zwykły tekst",pasteCharts:"Wklej wykresy",selectAll:"Zaznacz wszystko",multiSelect:"Dodaj element do zaznaczenia",moveCanvas:"Przesuń obszar roboczy",cut:"Wytnij",copy:"Kopiuj",copyAsPng:"Skopiuj do schowka jako plik PNG",copyAsSvg:"Skopiuj do schowka jako plik SVG",copyText:"Skopiuj do schowka jako tekst",copySource:"Skopiuj źródło do schowka",convertToCode:"Skonwertuj do kodu",bringForward:"Przenieś wyżej",sendToBack:"Przenieś na spód",bringToFront:"Przenieś na wierzch",sendBackward:"Przenieś niżej",delete:"Usuń",copyStyles:"Kopiuj style",pasteStyles:"Wklej style",stroke:"Kolor obramowania",background:"Kolor wypełnienia",fill:"Wypełnienie",strokeWidth:"Grubość obramowania",strokeStyle:"Styl obrysu",strokeStyle_solid:"Pełny",strokeStyle_dashed:"Kreskowany",strokeStyle_dotted:"Kropkowany",sloppiness:"Styl kreski",opacity:"Przeźroczystość",textAlign:"Wyrównanie tekstu",edges:"Krawędzie",sharp:"Ostry",round:"Zaokrąglij",arrowheads:"Groty",arrowhead_none:"Brak",arrowhead_arrow:"Strzałka",arrowhead_bar:"Kreska",arrowhead_circle:"Okrąg",arrowhead_circle_outline:"Okrąg (obrys)",arrowhead_triangle:"Trójkąt",arrowhead_triangle_outline:"Trójkąt (obrys)",arrowhead_diamond:"Romb",arrowhead_diamond_outline:"Romb (obrys)",fontSize:"Rozmiar tekstu",fontFamily:"Krój pisma",addWatermark:'Dodaj "Zrobione w Excalidraw"',handDrawn:"Odręczny",normal:"Normalny",code:"Kod",small:"Mały",medium:"Średni",large:"Duży",veryLarge:"Bardzo duży",solid:"Pełne",hachure:"Linie",zigzag:"Zygzak",crossHatch:"Zakreślone",thin:"Cienkie",bold:"Pogrubione",left:"Do lewej",center:"Do środka",right:"Do prawej",extraBold:"Ekstra pogrubione",architect:"Dokładny",artist:"Artystyczny",cartoonist:"Rysunkowy",fileTitle:"Nazwa pliku",colorPicker:"Paleta kolorów",canvasColors:"Używane na płótnie",canvasBackground:"Kolor dokumentu",drawingCanvas:"Obszar roboczy",layers:"Warstwy",actions:"Akcje",language:"Język",liveCollaboration:"Współpraca w czasie rzeczywistym...",duplicateSelection:"Powiel",untitled:"Bez tytułu",name:"Nazwa",yourName:"Twoje imię",madeWithExcalidraw:"Zrobione w Excalidraw",group:"Zgrupuj wybrane",ungroup:"Rozgrupuj wybrane",collaborators:"Współtwórcy",showGrid:"Pokaż siatkę",addToLibrary:"Dodaj do biblioteki",removeFromLibrary:"Usuń z biblioteki",libraryLoadingMessage:"Wczytywanie biblioteki…",libraries:"Przeglądaj biblioteki",loadingScene:"Wczytywanie sceny…",align:"Wyrównaj",alignTop:"Wyrównaj do góry",alignBottom:"Wyrównaj do dołu",alignLeft:"Wyrównaj do lewej",alignRight:"Wyrównaj do prawej",centerVertically:"Wyśrodkuj w pionie",centerHorizontally:"Wyśrodkuj w poziomie",distributeHorizontally:"Rozłóż poziomo",distributeVertically:"Rozłóż pionowo",flipHorizontal:"Odwróć w poziomie",flipVertical:"Odwróć w pionie",viewMode:"Tryb widoku",share:"Udostępnij",showStroke:"Pokaż próbnik kolorów obrysu",showBackground:"Pokaż próbnik koloru tła",toggleTheme:"Przełącz motyw",personalLib:"Biblioteka prywatna",excalidrawLib:"Biblioteka Excalidraw",decreaseFontSize:"Zmniejsz rozmiar czcionki",increaseFontSize:"Zwiększ rozmiar czcionki",unbindText:"Odłącz tekst od kontenera",bindText:"Połącz tekst z kontenerem",createContainerFromText:"Zawijaj tekst w kontenerze",link:{edit:"Edytuj łącze",editEmbed:"Edytuj i osadź link",create:"Utwórz łącze",createEmbed:"Stwórz i osadź link",label:"Łącze",labelEmbed:"Podlinkuj i osadź",empty:"Nie ustawiono linku"},lineEditor:{edit:"Edytuj linię",exit:"Wyjdź z edytora linii"},elementLock:{lock:"Zablokuj",unlock:"Odblokuj",lockAll:"Zablokuj wszystko",unlockAll:"Odblokuj wszystko"},statusPublished:"Opublikowano",sidebarLock:"Panel boczny zawsze otwarty",selectAllElementsInFrame:"Zaznacz wszystkie elementy w ramce",removeAllElementsFromFrame:"Usuń wszystkie elementy z ramki",eyeDropper:"Wybierz kolor z płótna",textToDiagram:"Tekst do diagramu",prompt:""},HMe={noItems:"Nie dodano jeszcze żadnych elementów...",hint_emptyLibrary:"Wybierz element na płótnie, aby go tutaj dodać, lub zainstaluj bibliotekę z poniższego publicznego repozytorium.",hint_emptyPrivateLibrary:"Wybierz element, aby dodać go tutaj."},KMe={clearReset:"Wyczyść dokument i zresetuj kolor dokumentu",exportJSON:"Eksportuj do pliku",exportImage:"Eksportuj obraz...",export:"Zapisz jako...",copyToClipboard:"Skopiuj do schowka",save:"Zapisz do bieżącego pliku",saveAs:"Zapisz jako",load:"Otwórz",getShareableLink:"Udostępnij",close:"Zamknij",selectLanguage:"Wybierz język",scrollBackToContent:"Wróć do obszaru roboczego",zoomIn:"Powiększ",zoomOut:"Pomniejsz",resetZoom:"Zresetuj powiększenie",menu:"Menu",done:"Gotowe",edit:"Edytuj",undo:"Cofnij",redo:"Przywróć",resetLibrary:"Resetuj bibliotekę",createNewRoom:"Utwórz nowy pokój",fullScreen:"Pełny ekran",darkMode:"Ciemny motyw",lightMode:"Jasny motyw",zenMode:"Tryb Zen",objectsSnapMode:"Przyciąganie do obiektów",exitZenMode:"Wyjdź z trybu Zen",cancel:"Anuluj",clear:"Wyczyść",remove:"Usuń",embed:"Przełącz osadzenie",publishLibrary:"Opublikuj",submit:"Prześlij",confirm:"Zatwierdź",embeddableInteractionButton:"Kliknij, aby wejść w interakcję"},JMe={clearReset:"To spowoduje usunięcie wszystkiego z dokumentu. Czy chcesz kontynuować?",couldNotCreateShareableLink:"Wystąpił błąd przy generowaniu linka do udostępniania.",couldNotCreateShareableLinkTooBig:"Nie można utworzyć linku do udostępnienia: scena jest za duża",couldNotLoadInvalidFile:"Nie udało się otworzyć pliku. Wybrany plik jest nieprawidłowy.",importBackendFailed:"Wystąpił błąd podczas importowania pliku.",cannotExportEmptyCanvas:"Najpierw musisz coś narysować, aby zapisać dokument.",couldNotCopyToClipboard:"Nie udało się skopiować do schowka.",decryptFailed:"Nie udało się odszyfrować danych.",uploadedSecurly:"By zapewnić Ci prywatność, udostępnianie projektu jest zabezpieczone szyfrowaniem end-to-end, co oznacza, że poza tobą i osobą z którą podzielisz się linkiem, nikt nie ma dostępu do tego co udostępniasz.",loadSceneOverridePrompt:"Wczytanie zewnętrznego rysunku zastąpi istniejącą zawartość. Czy chcesz kontynuować?",collabStopOverridePrompt:`Zatrzymanie sesji nadpisze poprzedni, zapisany lokalnie rysunek. Czy jesteś pewien?
(Jeśli chcesz zachować swój lokalny rysunek, po prostu zamknij zakładkę przeglądarki.)`,errorAddingToLibrary:"Nie udało się dodać elementu do biblioteki",errorRemovingFromLibrary:"Nie udało się usunąć elementu z biblioteki",confirmAddLibrary:"To doda {{numShapes}} kształtów do twojej biblioteki. Jesteś pewien?",imageDoesNotContainScene:"Ten obraz nie zawiera żadnych informacji o scenie. Czy włączyłeś osadzanie sceny podczas eksportu?",cannotRestoreFromImage:"Scena nie mogła zostać przywrócona z pliku obrazu",invalidSceneUrl:"Nie udało się zaimportować sceny z podanego adresu URL. Jest ona wadliwa lub nie zawiera poprawnych danych Excalidraw w formacie JSON.",resetLibrary:"To wyczyści twoją bibliotekę. Jesteś pewien?",removeItemsFromsLibrary:"Usunąć {{count}} element(ów) z biblioteki?",invalidEncryptionKey:"Klucz szyfrowania musi składać się z 22 znaków. Współpraca na żywo jest wyłączona.",collabOfflineWarning:`Brak połączenia z Internetem.
Twoje zmiany nie zostaną zapisane!`},OMe={unsupportedFileType:"Nieobsługiwany typ pliku.",imageInsertError:"Nie udało się wstawić obrazu. Spróbuj ponownie później...",fileTooBig:"Plik jest zbyt duży. Maksymalny dozwolony rozmiar to {{maxSize}}.",svgImageInsertError:"Nie udało się wstawić obrazu SVG. Znacznik SVG wygląda na nieprawidłowy.",failedToFetchImage:"Nie udało się załadować obrazu.",invalidSVGString:"Nieprawidłowy SVG.",cannotResolveCollabServer:"Nie można połączyć się z serwerem współpracy w czasie rzeczywistym. Proszę odświeżyć stronę i spróbować ponownie.",importLibraryError:"Wystąpił błąd w trakcie ładowania biblioteki",collabSaveFailed:"Nie udało się zapisać w bazie danych. Jeśli problemy nie ustąpią, zapisz plik lokalnie, aby nie utracić swojej pracy.",collabSaveFailed_sizeExceeded:"Nie udało się zapisać w bazie danych — dokument jest za duży. Zapisz plik lokalnie, aby nie utracić swojej pracy.",imageToolNotSupported:"Dodawanie obrazów jest wyłączone.",brave_measure_text_error:{line1:"Wygląda na to, że używasz przeglądarki Brave z włączonym ustawieniem <bold>Agressively Block Fingerprinting</bold>.",line2:"Może to doprowadzić do złamania <bold>elementów tekstu</bold> na rysunkach.",line3:"Zdecydowanie zalecamy wyłączenie tego ustawienia. Możesz wykonać <link>te kroki</link>, aby to zrobić.",line4:"Jeśli wyłączenie tego ustawienia nie naprawia wyświetlania elementów tekstowych, zgłoś <issueLink>problem</issueLink> na naszym GitHubie lub napisz do nas na <discordLink>Discordzie</discordLink>"},libraryElementTypeError:{embeddable:"Elementy osadzone nie mogą zostać dodane do biblioteki.",iframe:"Elementy IFrame nie mogą zostać dodane do biblioteki.",image:"Dodawania obrazów do biblioteki nadejdzie wkrótce!"},asyncPasteFailedOnRead:"Nie udało się wkleić (nie udało się odczytać ze schowka systemowego).",asyncPasteFailedOnParse:"Nie udało się wkleić.",copyToSystemClipboardFailed:"Nie udało się skopiować do schowka."},PMe={selection:"Zaznaczenie",image:"Wstaw obraz",rectangle:"Prostokąt",diamond:"Romb",ellipse:"Elipsa",arrow:"Strzałka",line:"Linia",freedraw:"Rysuj",text:"Tekst",library:"Biblioteka",lock:"Zablokuj wybrane narzędzie",penMode:"Tryb pióra — zapobiegaj dotknięciom",link:"Dodaj/aktualizuj link dla wybranego kształtu",eraser:"Gumka",frame:"Ramka",magicframe:"Wireframe do kodu",embeddable:"Osadzenie z internetu",laser:"Wskaźnik laserowy",hand:"Ręka (narzędzie do przesuwania)",extraTools:"Więcej narzędzi",mermaidToExcalidraw:"Konwertuj diagram Mermaid do Excalidraw",magicSettings:"Ustawienia AI"},_Me={canvasActions:"Narzędzia",selectedShapeActions:"Wybrane narzędzie",shapes:"Kształty"},WMe={canvasPanning:"Aby przesunąć płótno, przytrzymaj kółko myszy lub spację podczas przeciągania, albo użyj narzędzia ręki",linearElement:"Naciśnij, aby zrobić punkt, przeciągnij, aby narysować linię",freeDraw:"Naciśnij i przeciągnij by rysować, puść kiedy skończysz",text:"Wskazówka: możesz również dodać tekst klikając dwukrotnie gdziekolwiek za pomocą narzędzia zaznaczania",embeddable:"Kliknij i przeciągnij, aby stworzyć osadzenie strony",text_selected:"Kliknij dwukrotnie lub naciśnij ENTER, aby edytować tekst",text_editing:"Naciśnij Escape lub Ctrl (Cmd w macOS) + ENTER, aby zakończyć edycję",linearElementMulti:"Aby zakończyć krzywą, ponownie kliknij w ostatni punkt, bądź naciśnij Esc albo Enter",lockAngle:"Możesz ograniczyć kąt trzymając SHIFT",resize:"Możesz zachować proporcję trzymająć wcisnięty SHIFT, przytrzymaj ALT by zmienić rozmiar względem środka",resizeImage:`Możesz zmienić rozmiar swobodnie trzymając SHIFT,
przytrzymaj ALT, aby przeskalować względem środka obiektu`,rotate:"Możesz obracać element w równych odstępach trzymając wciśnięty SHIFT",lineEditor_info:"Przytrzymaj CtrlOrCmd i kliknij dwukrotnie lub naciśnij CtrlOrCmd + Enter, aby edytować punkty",lineEditor_pointSelected:"Naciśnij przycisk Delete, aby usunąć punkt. Ctrl/Cmd+D, aby go zduplikować. Przeciągnij, aby go przenieść",lineEditor_nothingSelected:`Wybierz punkt do edycji (przytrzymaj SHIFT, aby wybrać wiele),
lub przytrzymaj Alt i kliknij, aby dodać nowe punkty`,placeImage:"Kliknij, aby umieścić obraz, lub kliknij i przeciągnij, aby ustawić jego rozmiar ręcznie",publishLibrary:"Opublikuj własną bibliotekę",bindTextToElement:"Wciśnij enter, aby dodać tekst",deepBoxSelect:"Przytrzymaj CtrlOrCmd, aby wybrać w obrębie grupy i uniknąć przeciągania",eraserRevert:"Przytrzymaj Alt, aby przywrócić elementy oznaczone do usunięcia",firefox_clipboard_write:'Ta funkcja może być włączona poprzez ustawienie flagi "dom.events.asyncClipboard.clipboardItem" na "true". Aby zmienić flagi przeglądarki w Firefox, odwiedź stronę "about:config".',disableSnapping:"Przytrzymaj Ctrl lub Cmd, aby wyłączyć przyciąganie"},qMe={cannotShowPreview:"Nie można wyświetlić podglądu",canvasTooBig:"Obszar roboczy może być za duży.",canvasTooBigTip:"Wskazówka: spróbuj nieco zbliżyć najdalej wysunięte elementy."},zMe={headingMain:"Wystąpił błąd. Spróbuj <button>odświeżyć stronę.</button>",clearCanvasMessage:"Jeśli odświeżenie strony nie zadziałało, spróbuj <button>usunąć wszystko z dokumentu.</button>",clearCanvasCaveat:" Pamiętaj tylko, że spowoduje to utratę całej twojej pracy ",trackedToSentry:"Błąd o identyfikatorze {{eventId}} został zaraportowany w naszym systemie.",openIssueMessage:"Szanujemy twoją prywatność i raport nie zawierał żadnych danych dotyczących tego nad czym pracowałeś, natomiast jeżeli jesteś w stanie podzielić się tym nad czym pracowałeś, prosimy o dodatkowy raport poprzez <button>nasze narzędzie do raportowania błędów.</button> Prosimy o dołączenie poniższej informacji poprzez skopiowanie jej i umieszczenie jej w zgłoszeniu na portalu GitHub.",sceneContent:"Zawartość dokumentu:"},ZMe={desc_intro:"Będziesz w stanie pracować wraz z osobami które zaprosisz do współpracy.",desc_privacy:"By zapewnić Ci prywatność, sesja współpracy na żywo jest zabezpieczona szyfrowaniem end-to-end, co oznacza, że poza tobą i osobami z którymi podzielisz się linkiem, nikt nie ma dostępu do tego co będziecie tworzyć.",button_startSession:"Rozpocznij sesję",button_stopSession:"Zakończ sesję",desc_inProgressIntro:"Sesja współpracy na żywo właśnie się rozpoczęła.",desc_shareLink:"Udostępnij ten link osobom, z którymi chcesz współpracować:",desc_exitSession:"Zakończenie sesji spowoduje odłączenie ciebie od pokoju, ale nadal będziesz mógł lokalnie kontynuować pracę. Zauważ, że osoby z którymi współpracowałeś nadal będą mogły współpracować.",shareTitle:"Dołącz do sesji współpracy na żywo w Excalidraw"},VMe={title:"Wystąpił błąd"},jMe={disk_title:"Zapisz na dysku",disk_details:"Eksportuj dane sceny do pliku, z którego możesz importować później.",disk_button:"Zapisz do pliku",link_title:"Link do udostępnienia",link_details:"Eksportuj jako link tylko do odczytu.",link_button:"Wygeneruj link",excalidrawplus_description:"Zapisz scenę do swojego obszaru roboczego Excalidraw+.",excalidrawplus_button:"Eksportuj",excalidrawplus_exportError:"W tej chwili nie można wyeksportować do Excalidraw+..."},XMe={blog:"Przeczytaj na naszym blogu",click:"kliknięcie",deepSelect:"Wybór w obrębie grupy",deepBoxSelect:"Wybór w obrębie grupy i unikanie przeciągania",curvedArrow:"Zakrzywiona strzałka",curvedLine:"Zakrzywiona linia",documentation:"Dokumentacja",doubleClick:"podwójne kliknięcie",drag:"przeciągnij",editor:"Edytor",editLineArrowPoints:"Edytuj punkty linii/strzałki",editText:"Edytuj tekst/dodaj etykietę",github:"Znalazłeś problem? Prześlij",howto:"Skorzystaj z instrukcji",or:"lub",preventBinding:"Zapobiegaj wiązaniu strzałek",tools:"Narzędzia",shortcuts:"Skróty klawiszowe",textFinish:"Zakończ edycję (edytor tekstu)",textNewLine:"Dodaj nowy wiersz (edytor tekstu)",title:"Pomoc",view:"Widok",zoomToFit:"Powiększ, aby wyświetlić wszystkie elementy",zoomToSelection:"Przybliż do zaznaczenia",toggleElementLock:"Zablokuj/odblokuj zaznaczenie",movePageUpDown:"Przesuń stronę w górę/w dół",movePageLeftRight:"Przenieś stronę w lewo/prawo"},$Me={title:"Wyczyść płótno"},ATe={title:"Opublikuj bibliotekę",itemName:"Nazwa elementu",authorName:"Nazwa autora",githubUsername:"Nazwa użytkownika na GitHubie",twitterUsername:"Nazwa użytkownika Twitter",libraryName:"Nazwa biblioteki",libraryDesc:"Opis biblioteki",website:"Strona internetowa",placeholder:{authorName:"Twoje imię lub nazwa użytkownika",libraryName:"Nazwa twojej biblioteki",libraryDesc:"Opis twojej biblioteki, aby pomóc innym zrozumieć jej działanie",githubHandle:"Uchwyt GitHub (opcjonalny), dzięki czemu możesz edytować bibliotekę po przesłaniu do sprawdzenia",twitterHandle:"Nazwa użytkownika w serwisie Twitter (opcjonalna), aby wiedzieć kogo oznaczyć przy promowaniu na Twitterze",website:"Link do Twojej osobistej strony internetowej lub gdzie indziej (opcjonalnie)"},errors:{required:"Wymagane",website:"Wprowadź prawidłowy adres URL"},noteDescription:"<link></link>dla innych osób do wykorzystania w swoich rysunkach.",noteGuidelines:"Biblioteka musi być najpierw zatwierdzona ręcznie. Przeczytaj <link>wytyczne</link>",noteLicense:"Wysyłając zgadzasz się, że biblioteka zostanie opublikowana pod <link>Licencja MIT, </link>w skrócie, każdy może z nich korzystać bez ograniczeń.",noteItems:"Każdy element biblioteki musi mieć własną nazwę, aby był filtrowalny. Uwzględnione zostaną następujące elementy biblioteki:",atleastOneLibItem:"Proszę wybrać co najmniej jeden element biblioteki, by rozpocząć",republishWarning:"Uwaga: niektóre z wybranych elementów są oznaczone jako już opublikowane/wysłane. Powinieneś ponownie przesłać elementy tylko wtedy, gdy aktualizujesz istniejącą bibliotekę lub zgłoszenie."},eTe={title:"Biblioteka została przesłana",content:"Dziękujemy {{authorName}}. Twoja biblioteka została przesłana do sprawdzenia. Możesz śledzić jej stan<link>tutaj</link>"},tTe={resetLibrary:"Zresetuj Bibliotekę",removeItemsFromLib:"Usuń wybrane elementy z biblioteki"},rTe={header:"Eksportuj obraz",label:{withBackground:"Tło",onlySelected:"Tylko wybrane",darkMode:"Tryb ciemny",embedScene:"Osadź scenę",scale:"Skala",padding:"Dopełnienie"},tooltip:{embedScene:`Dane sceny zostaną zapisane w eksportowanym pliku PNG/SVG tak, aby scena mogła zostać z niego przywrócona.
Zwiększy to rozmiar eksportowanego pliku.`},title:{exportToPng:"Zapisz jako PNG",exportToSvg:"Zapisz jako SVG",copyPngToClipboard:"Skopiuj do schowka jako PNG"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Skopiuj do schowka"}},iTe={tooltip:"Twoje rysunki są zabezpieczone szyfrowaniem end-to-end, tak więc nawet w Excalidraw nie jesteśmy w stanie zobaczyć tego co tworzysz.",link:"Wpis na blogu dotyczący szyfrowania end-to-end w Excalidraw"},uTe={angle:"Kąt",element:"Element",elements:"Elementy",height:"Wysokość",scene:"Scena",selected:"Zaznaczenie",storage:"Pamięć",title:"Statystyki dla nerdów",total:"Łącznie",version:"Wersja",versionCopy:"Kliknij, aby skopiować",versionNotAvailable:"Wersja niedostępna",width:"Szerokość"},aTe={addedToLibrary:"Dodano do biblioteki",copyStyles:"Skopiowano style.",copyToClipboard:"Skopiowano do schowka.",copyToClipboardAsPng:`Skopiowano {{exportSelection}} do schowka jako PNG
({{exportColorScheme}})`,fileSaved:"Zapisano plik.",fileSavedToFilename:"Zapisano jako {filename}",canvas:"płótno",selection:"zaznaczenie",pasteAsSingleElement:`Użyj {{shortcut}}, aby wkleić jako pojedynczy element,
lub wklej do istniejącego edytora tekstu`,unableToEmbed:"Osadzenie tego linku jest obecnie niedozwolone. Zgłoś propozycję na portalu GitHub, aby dodać go do listy dozwolonych wyjątków",unrecognizedLinkFormat:'Osadzony link ma niewłaściwy format. Spróbuj wkleić całą zawartość pola "embed" z oryginalnej strony.'},nTe={transparent:"Przezroczysty",black:"Czarny",white:"Biały",red:"Czerwony",pink:"Różowy",grape:"Winogronowy",violet:"Fioletowy",gray:"Szary",blue:"Niebieski",cyan:"Cyjanowy",teal:"Turkusowy",green:"Zielony",yellow:"Żółty",orange:"Pomarańczowy",bronze:"Brązowy"},oTe={app:{center_heading:"Wszystkie dane są zapisywane lokalnie w przeglądarce.",center_heading_plus:"Czy zamiast tego chcesz przejść do Excalidraw+?",menuHint:"Eksportuj, preferencje, języki..."},defaults:{menuHint:"Eksportuj, preferencje i więcej...",center_heading:"Schematy uproszczone.",toolbarHint:"Wybierz narzędzie i zacznij rysować!",helpHint:"Skróty klawiaturowe i pomoc"}},sTe={mostUsedCustomColors:"Najczęściej używane kolory",colors:"Kolory",shades:"Odcienie",hexCode:"Kod HEX",noShades:"Brak dostępnych odcieni dla tego koloru"},lTe={action:{exportToImage:{title:"Eksportuj jako obraz",button:"Eksportuj jako obraz",description:"Eksportuj zawartość sceny jako obraz z możliwością importowania."},saveToDisk:{title:"Zapisz na dysku",button:"Zapisz na dysku",description:"Eksportuj zawartość sceny jako plik z możliwością importowania."},excalidrawPlus:{title:"Excalidraw+",button:"Eksportuj do Excalidraw+",description:"Zapisz scenę do swojego obszaru roboczego Excalidraw+."}},modal:{loadFromFile:{title:"Wczytaj z pliku",button:"Wczytaj z pliku",description:"Wczytanie z pliku <bold>nadpisze istniejącą zawartość</bold>.<br></br>Możesz najpierw utworzyć kopię zapasową swojego rysunku, używając jednej z poniższych opcji."},shareableLink:{title:"Wczytaj z linku",button:"Nadpisz moją zawartość",description:"Wczytanie zewnętrznego pliku <bold>nadpisze istniejącą zawartość</bold>.<br></br>Możesz najpierw utworzyć kopię zapasową swojego rysunku, używając jednej z poniższych opcji."}}},gTe={title:"Konwertuj diagram Mermaid do Excalidraw",button:"Wstaw",description:"Obecnie wspierane są jedynie <flowchartLink>proste grafy</flowchartLink>, <sequenceLink>sekwencje</sequenceLink> i <classLink>diagramy klas</classLink>. Pozostałe typy będą wyświetlane jako obrazy w Excalidraw.",syntax:"Składnia diagramów Mermaid",preview:"Podgląd"},ACr={labels:YMe,library:HMe,buttons:KMe,alerts:JMe,errors:OMe,toolBar:PMe,headings:_Me,hints:WMe,canvasError:qMe,errorSplash:zMe,roomDialog:ZMe,errorDialog:VMe,exportDialog:jMe,helpDialog:XMe,clearCanvasDialog:$Me,publishDialog:ATe,publishSuccessDialog:eTe,confirmDialog:tTe,imageExportDialog:rTe,encrypted:iTe,stats:uTe,toast:aTe,colors:nTe,welcomeScreen:oTe,colorPicker:sTe,overwriteConfirm:lTe,mermaid:gTe}});var KTe={};Dt(KTe,{alerts:()=>ITe,buttons:()=>dTe,canvasError:()=>mTe,clearCanvasDialog:()=>kTe,colorPicker:()=>TTe,colors:()=>UTe,confirmDialog:()=>STe,default:()=>eCr,encrypted:()=>RTe,errorDialog:()=>wTe,errorSplash:()=>DTe,errors:()=>hTe,exportDialog:()=>bTe,headings:()=>pTe,helpDialog:()=>vTe,hints:()=>fTe,imageExportDialog:()=>LTe,labels:()=>BTe,library:()=>ETe,mermaid:()=>HTe,overwriteConfirm:()=>YTe,publishDialog:()=>FTe,publishSuccessDialog:()=>xTe,roomDialog:()=>yTe,stats:()=>NTe,toast:()=>GTe,toolBar:()=>QTe,welcomeScreen:()=>MTe});var BTe,ETe,dTe,ITe,hTe,QTe,pTe,fTe,mTe,DTe,yTe,wTe,bTe,vTe,kTe,FTe,xTe,STe,LTe,RTe,NTe,GTe,UTe,MTe,TTe,YTe,HTe,eCr;var JTe=_(()=>{zt();BTe={paste:"Colar",pasteAsPlaintext:"Colar como texto sem formatação",pasteCharts:"Colar gráficos",selectAll:"Selecionar tudo",multiSelect:"Adicionar elemento à seleção",moveCanvas:"Mover tela",cut:"Recortar",copy:"Copiar",copyAsPng:"Copiar para a área de transferência como PNG",copyAsSvg:"Copiar para a área de transferência como SVG",copyText:"Copiar para área de transferência como texto",copySource:"",convertToCode:"",bringForward:"Trazer para a frente",sendToBack:"Enviar para o fundo",bringToFront:"Trazer para o primeiro plano",sendBackward:"Enviar para trás",delete:"Apagar",copyStyles:"Copiar os estilos",pasteStyles:"Colar os estilos",stroke:"Contorno",background:"Fundo",fill:"Preenchimento",strokeWidth:"Espessura do traço",strokeStyle:"Estilo de traço",strokeStyle_solid:"Sólido",strokeStyle_dashed:"Tracejado",strokeStyle_dotted:"Pontilhado",sloppiness:"Precisão do traço",opacity:"Opacidade",textAlign:"Alinhamento do texto",edges:"Arestas",sharp:"Pontudo",round:"Arredondado",arrowheads:"Pontas",arrowhead_none:"Nenhuma",arrowhead_arrow:"Flecha",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Triângulo",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Tamanho da fonte",fontFamily:"Família da fonte",addWatermark:'Adicionar "Feito com Excalidraw"',handDrawn:"Manuscrito",normal:"Normal",code:"Código",small:"Pequeno",medium:"Médio",large:"Grande",veryLarge:"Muito grande",solid:"Sólido",hachure:"Hachura",zigzag:"Zigue-zague",crossHatch:"Hachura cruzada",thin:"Fino",bold:"Espesso",left:"Esquerda",center:"Centralizar",right:"Direita",extraBold:"Muito espesso",architect:"Arquiteto",artist:"Artista",cartoonist:"Cartunista",fileTitle:"Nome do arquivo",colorPicker:"Seletor de cores",canvasColors:"Usado na tela",canvasBackground:"Fundo da tela",drawingCanvas:"Tela de desenho",layers:"Camadas",actions:"Ações",language:"Idioma",liveCollaboration:"Colaboração ao vivo...",duplicateSelection:"Duplicar",untitled:"Sem título",name:"Nome",yourName:"Seu nome",madeWithExcalidraw:"Feito com Excalidraw",group:"Agrupar seleção",ungroup:"Desagrupar seleção",collaborators:"Colaboradores",showGrid:"Mostrar grade",addToLibrary:"Adicionar à biblioteca",removeFromLibrary:"Remover da biblioteca",libraryLoadingMessage:"Carregando biblioteca…",libraries:"Procurar bibliotecas",loadingScene:"Carregando cena…",align:"Alinhamento",alignTop:"Alinhar ao topo",alignBottom:"Alinhar embaixo",alignLeft:"Alinhar à esquerda",alignRight:"Alinhar à direita",centerVertically:"Centralizar verticalmente",centerHorizontally:"Centralizar horizontalmente",distributeHorizontally:"Distribuir horizontalmente",distributeVertically:"Distribuir verticalmente",flipHorizontal:"Inverter horizontalmente",flipVertical:"Inverter verticalmente",viewMode:"Modo de visualização",share:"Compartilhar",showStroke:"Exibir seletor de cores do traço",showBackground:"Exibir seletor de cores do fundo",toggleTheme:"Alternar tema",personalLib:"Biblioteca Pessoal",excalidrawLib:"Biblioteca do Excalidraw",decreaseFontSize:"Diminuir o tamanho da fonte",increaseFontSize:"Aumentar o tamanho da fonte",unbindText:"Desvincular texto",bindText:"Vincular texto ao contêiner",createContainerFromText:"Envolver texto em um contêiner",link:{edit:"Editar link",editEmbed:"",create:"Criar link",createEmbed:"",label:"Link",labelEmbed:"",empty:""},lineEditor:{edit:"Editar linha",exit:"Sair do editor de linha"},elementLock:{lock:"Bloquear",unlock:"Desbloquear",lockAll:"Bloquear tudo",unlockAll:"Desbloquear tudo"},statusPublished:"Publicado",sidebarLock:"Manter barra lateral aberta",selectAllElementsInFrame:"Selecionar todos os elementos no quadro",removeAllElementsFromFrame:"Remover todos os elementos do quadro",eyeDropper:"Escolher cor da tela",textToDiagram:"",prompt:""},ETe={noItems:"Nenhum item adicionado ainda...",hint_emptyLibrary:"Selecione um item na tela para adicioná-lo aqui, ou instale uma biblioteca do repositório público, abaixo.",hint_emptyPrivateLibrary:"Selecione um item na tela para adicioná-lo aqui."},dTe={clearReset:"Limpar o canvas e redefinir a cor de fundo",exportJSON:"Exportar arquivo",exportImage:"Exportar imagem...",export:"Salvar como...",copyToClipboard:"Copiar para o clipboard",save:"Salvar para o arquivo atual",saveAs:"Salvar como",load:"Abrir",getShareableLink:"Obter um link de compartilhamento",close:"Fechar",selectLanguage:"Selecionar idioma",scrollBackToContent:"Voltar para o conteúdo",zoomIn:"Aumentar zoom",zoomOut:"Diminuir zoom",resetZoom:"Redefinir zoom",menu:"Menu",done:"Concluído",edit:"Editar",undo:"Desfazer",redo:"Refazer",resetLibrary:"Redefinir biblioteca",createNewRoom:"Criar nova sala",fullScreen:"Tela cheia",darkMode:"Modo escuro",lightMode:"Modo claro",zenMode:"Modo Zen",objectsSnapMode:"",exitZenMode:"Sair do modo zen",cancel:"Cancelar",clear:"Limpar",remove:"Remover",embed:"",publishLibrary:"Publicar",submit:"Enviar",confirm:"Confirmar",embeddableInteractionButton:""},ITe={clearReset:"Isto irá limpar toda a tela. Você tem certeza?",couldNotCreateShareableLink:"Não foi possível criar um link de compartilhamento.",couldNotCreateShareableLinkTooBig:"Não foi possível criar um link compartilhável: a cena é muito grande",couldNotLoadInvalidFile:"Não foi possível carregar o arquivo inválido",importBackendFailed:"A importação do servidor falhou.",cannotExportEmptyCanvas:"Não é possível exportar um canvas vazio.",couldNotCopyToClipboard:"Não foi possível copiar para a área de transferência.",decryptFailed:"Não foi possível descriptografar os dados.",uploadedSecurly:"O upload foi protegido com criptografia de ponta a ponta, o que significa que o servidor do Excalidraw e terceiros não podem ler o conteúdo.",loadSceneOverridePrompt:"Carregar um desenho externo substituirá o seu conteúdo existente. Deseja continuar?",collabStopOverridePrompt:`Ao interromper a sessão, você substituirá seu desenho anterior, armazenado localmente. Você tem certeza?
(Se você deseja manter seu desenho local, simplesmente feche a aba do navegador.)`,errorAddingToLibrary:"Não foi possível adicionar o item à biblioteca",errorRemovingFromLibrary:"Não foi possível remover o item da biblioteca",confirmAddLibrary:"Isso adicionará {{numShapes}} forma(s) à sua biblioteca. Tem certeza?",imageDoesNotContainScene:"Esta imagem parece não conter dados de cenas. Você ativou a incorporação da cena durante a exportação?",cannotRestoreFromImage:"Não foi possível restaurar a cena deste arquivo de imagem",invalidSceneUrl:"Não foi possível importar a cena da URL fornecida. Ela está incompleta ou não contém dados JSON válidos do Excalidraw.",resetLibrary:"Isto limpará a sua biblioteca. Você tem certeza?",removeItemsFromsLibrary:"Excluir {{count}} item(ns) da biblioteca?",invalidEncryptionKey:"A chave de encriptação deve ter 22 caracteres. A colaboração ao vivo está desabilitada.",collabOfflineWarning:`Sem conexão com a internet disponível.
Suas alterações não serão salvas!`},hTe={unsupportedFileType:"Tipo de arquivo não suportado.",imageInsertError:"Não foi possível inserir imagem. Tente novamente mais tarde...",fileTooBig:"O arquivo é muito grande. O tamanho máximo permitido é {{maxSize}}.",svgImageInsertError:"Não foi possível inserir a imagem SVG. A marcação SVG parece inválida.",failedToFetchImage:"",invalidSVGString:"SVG Inválido.",cannotResolveCollabServer:"Não foi possível conectar-se ao servidor colaborativo. Por favor, recarregue a página e tente novamente.",importLibraryError:"Não foi possível carregar a biblioteca",collabSaveFailed:"Não foi possível salvar no banco de dados do servidor. Se os problemas persistirem, salve o arquivo localmente para garantir que não perca o seu trabalho.",collabSaveFailed_sizeExceeded:"Não foi possível salvar no banco de dados do servidor, a tela parece ser muito grande. Se os problemas persistirem, salve o arquivo localmente para garantir que não perca o seu trabalho.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Parece que você está usando o navegador Brave com a configuração <bold>Bloquear Impressões Digitais</bold> no modo agressivo.",line2:"Isso pode acabar quebrando <bold>Elementos de Texto</bold> em seus desenhos.",line3:"Recomendamos fortemente desativar essa configuração. Você pode acessar o <link>passo a passo</link> sobre como fazer isso.",line4:"Se desativar essa configuração não corrigir a exibição de elementos de texto, por favor abra uma <issueLink>issue</issueLink> em nosso GitHub, ou mande uma mensagem em nosso <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},QTe={selection:"Seleção",image:"Inserir imagem",rectangle:"Retângulo",diamond:"Losango",ellipse:"Elipse",arrow:"Flecha",line:"Linha",freedraw:"Desenhar",text:"Texto",library:"Biblioteca",lock:"Manter ativa a ferramenta selecionada após desenhar",penMode:"Modo caneta — impede o toque",link:"Adicionar/Atualizar link para uma forma selecionada",eraser:"Borracha",frame:"Ferramenta de quadro",magicframe:"",embeddable:"",laser:"",hand:"Mão (ferramenta de rolagem)",extraTools:"Mais ferramentas",mermaidToExcalidraw:"",magicSettings:""},pTe={canvasActions:"Ações da tela",selectedShapeActions:"Ações das formas selecionadas",shapes:"Formas"},fTe={canvasPanning:"Para mover a tela, segure a roda do mouse ou a barra de espaço enquanto arrasta ou use a ferramenta de mão",linearElement:"Clique para iniciar vários pontos, arraste para uma única linha",freeDraw:"Toque e arraste, solte quando terminar",text:"Dica: você também pode adicionar texto clicando duas vezes em qualquer lugar com a ferramenta de seleção",embeddable:"",text_selected:"Clique duplo ou tecle ENTER para editar o texto",text_editing:"Pressione Esc ou Ctrl/Cmd+ENTER para encerrar a edição",linearElementMulti:"Clique no último ponto ou pressione Escape ou Enter para terminar",lockAngle:"Você pode restringir o ângulo segurando o SHIFT",resize:`Você pode restringir proporções segurando SHIFT enquanto redimensiona,
segure ALT para redimensionar do centro`,resizeImage:`Você pode redimensionar livremente segurando SHIFT,
segure ALT para redimensionar a partir do centro`,rotate:"Você pode restringir os ângulos segurando SHIFT enquanto gira",lineEditor_info:"Pressione CtrlOuCmd e duplo-clique ou pressione CtrlOuCmd + Enter para editar pontos",lineEditor_pointSelected:`Pressione Delete para remover o(s) ponto(s),
Ctrl/Cmd+D para duplicar ou arraste para mover`,lineEditor_nothingSelected:"Selecione um ponto para editar (segure SHIFT para selecionar vários) ou segure Alt e clique para adicionar novos pontos",placeImage:"Clique para colocar a imagem, ou clique e arraste para definir manualmente o seu tamanho",publishLibrary:"Publicar sua própria biblioteca",bindTextToElement:"Pressione Enter para adicionar o texto",deepBoxSelect:"Segure Ctrl/Cmd para seleção profunda e para evitar arrastar",eraserRevert:"Segure a tecla Alt para inverter os elementos marcados para exclusão",firefox_clipboard_write:'Esse recurso pode ser ativado configurando a opção "dom.events.asyncClipboard.clipboardItem" como "true". Para alterar os sinalizadores do navegador no Firefox, visite a página "about:config".',disableSnapping:""},mTe={cannotShowPreview:"Não é possível mostrar pré-visualização",canvasTooBig:"A tela pode ser muito grande.",canvasTooBigTip:"Dica: tente aproximar um pouco os elementos mais distantes."},DTe={headingMain:"Foi encontrado um erro. Tente <button>recarregar a página.</button>",clearCanvasMessage:"Se recarregar a página não funcionar, tente <button>limpando a tela.</button>",clearCanvasCaveat:" Isso resultará em perda de trabalho ",trackedToSentry:"O erro com o identificador {{eventId}} foi rastreado no nosso sistema.",openIssueMessage:"Fomos muito cautelosos para não incluir suas informações de cena no erro. Se sua cena não for privada, por favor, considere seguir nosso <button>rastreador de bugs.</button> Por favor, inclua informações abaixo, copiando e colando para a issue do GitHub.",sceneContent:"Conteúdo da cena:"},yTe={desc_intro:"Você pode convidar pessoas para sua cena atual para colaborar com você.",desc_privacy:"Não se preocupe, a sessão usa criptografia de ponta a ponta; portanto, o que você desenhar permanecerá privado. Nem mesmo nosso servidor poderá ver o que você cria.",button_startSession:"Iniciar sessão",button_stopSession:"Parar sessão",desc_inProgressIntro:"A sessão de colaboração ao vivo está agora em andamento.",desc_shareLink:"Compartilhe este link com qualquer pessoa com quem você queira colaborar:",desc_exitSession:"Interrompendo a sessão você irá se desconectar da sala, mas você poderá continuar trabalhando com a cena localmente. Observe que isso não afetará outras pessoas, e elas ainda poderão colaborar em suas versões.",shareTitle:"Participe de uma sessão ao vivo de colaboração no Excalidraw"},wTe={title:"Erro"},bTe={disk_title:"Salvar no computador",disk_details:"Exportar os dados da cena para um arquivo que você poderá importar mais tarde.",disk_button:"Salvar em um arquivo",link_title:"Link compartilhável",link_details:"Exportar como link de apenas leitura.",link_button:"Exportar link",excalidrawplus_description:"Salvar a cena na sua área de trabalho Excalidraw+.",excalidrawplus_button:"Exportar",excalidrawplus_exportError:"Não é possível exportar para o Excalidraw+ neste momento..."},vTe={blog:"Leia o nosso blog",click:"clicar",deepSelect:"Seleção profunda",deepBoxSelect:"Use a seleção profunda dentro da caixa para previnir arrastar",curvedArrow:"Seta curva",curvedLine:"Linha curva",documentation:"Documentação",doubleClick:"clique duplo",drag:"arrastar",editor:"Editor",editLineArrowPoints:"Editar linha/ponta da seta",editText:"Editar texto / adicionar etiqueta",github:"Encontrou algum problema? Nos informe",howto:"Siga nossos guias",or:"ou",preventBinding:"Evitar fixação de seta",tools:"Ferramentas",shortcuts:"Atalhos de teclado",textFinish:"Encerrar edição (editor de texto)",textNewLine:"Adicionar nova linha (editor de texto)",title:"Ajudar",view:"Visualizar",zoomToFit:"Ampliar para encaixar todos os elementos",zoomToSelection:"Ampliar a seleção",toggleElementLock:"Bloquear/desbloquear seleção",movePageUpDown:"Mover a página para cima/baixo",movePageLeftRight:"Mover a página para esquerda/direita"},kTe={title:"Limpar a tela"},FTe={title:"Publicar biblioteca",itemName:"Nome do item",authorName:"Nome do autor",githubUsername:"Nome de usuário do GitHub",twitterUsername:"Nome de usuário do Twitter",libraryName:"Nome da Biblioteca",libraryDesc:"Descrição da biblioteca",website:"Site",placeholder:{authorName:"Seu nome ou nome de usuário",libraryName:"Nome da sua biblioteca",libraryDesc:"Descrição para ajudar as pessoas a entenderem o uso da sua da sua biblioteca",githubHandle:"Identificador do GitHub (opcional), para que você possa editar a biblioteca depois de enviar para revisão",twitterHandle:"Nome de usuário do Twitter (opcional), para que saibamos quem deve ser creditado se promovermos no Twitter",website:"Link para o seu site pessoal ou outro lugar (opcional)"},errors:{required:"Obrigatório",website:"Informe uma URL válida"},noteDescription:"Envie sua biblioteca para ser incluída no <link>repositório de biblioteca pública</link>para outras pessoas usarem em seus desenhos.",noteGuidelines:"A biblioteca precisa ser aprovada manualmente primeiro. Por favor leia o <link>orientações</link> antes de enviar. Você precisará de uma conta do GitHub para se comunicar e fazer alterações quando solicitado, mas não é estritamente necessário.",noteLicense:"Ao enviar, você concorda que a biblioteca será publicada sob a <link>Licença MIT, </link>o que, em suma, significa que qualquer pessoa pode utilizá-los sem restrições.",noteItems:"Cada item da biblioteca deve ter seu próprio nome para que seja filtrável. Os seguintes itens da biblioteca serão incluídos:",atleastOneLibItem:"Por favor, selecione pelo menos um item da biblioteca para começar",republishWarning:"Nota: alguns dos itens selecionados estão marcados como já publicado/enviado. Você só deve reenviar itens ao atualizar uma biblioteca existente ou submissão."},xTe={title:"Biblioteca enviada",content:"Obrigado {{authorName}}. Sua biblioteca foi enviada para análise. Você pode acompanhar o status<link>aqui</link>"},STe={resetLibrary:"Redefinir biblioteca",removeItemsFromLib:"Remover itens selecionados da biblioteca"},LTe={header:"Exportar imagem",label:{withBackground:"Fundo",onlySelected:"Somente selecionados",darkMode:"Modo escuro",embedScene:"Incorporar cena",scale:"Escala",padding:"Margem interna"},tooltip:{embedScene:`Os dados da cena serão salvos no arquivo PNG/SVG exportado para que a cena possa ser restaurada a partir dele.
Isso aumentará o tamanho do arquivo exportado.`},title:{exportToPng:"Exportar como PNG",exportToSvg:"Exportar como SVG",copyPngToClipboard:"Copiar PNG para área de transferência"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copiar para a área de transferência"}},RTe={tooltip:"Seus desenhos são criptografados de ponta a ponta, então os servidores do Excalidraw nunca os verão.",link:"Publicação de blog com criptografia de ponta a ponta no Excalidraw"},NTe={angle:"Ângulo",element:"Elemento",elements:"Elementos",height:"Altura",scene:"Cena",selected:"Selecionado",storage:"Armazenamento",title:"Estatísticas para nerds",total:"Total",version:"Versão",versionCopy:"Clique para copiar",versionNotAvailable:"Versão não disponível",width:"Largura"},GTe={addedToLibrary:"Adicionado à biblioteca",copyStyles:"Estilos copiados.",copyToClipboard:"Copiado para área de transferência.",copyToClipboardAsPng:"{{exportSelection}} copiado para a área de transferência como PNG ({{exportColorScheme}})",fileSaved:"Arquivo salvo.",fileSavedToFilename:"Salvo em {filename}",canvas:"tela",selection:"seleção",pasteAsSingleElement:`Use {{shortcut}} para colar como um único elemento,
ou cole em um editor de texto já existente`,unableToEmbed:"",unrecognizedLinkFormat:""},UTe={transparent:"Transparente",black:"Preto",white:"Branco",red:"Vermelho",pink:"Rosa",grape:"Uva",violet:"Violeta",gray:"Cinza",blue:"Azul",cyan:"Ciano",teal:"Verde-azulado",green:"Verde",yellow:"Amarelo",orange:"Laranja",bronze:"Bronze"},MTe={app:{center_heading:"Todos os dados são salvos localmente no seu navegador.",center_heading_plus:"Você queria ir para o Excalidraw+ em vez disso?",menuHint:"Exportar, preferências, idiomas..."},defaults:{menuHint:"Exportar, preferências e mais...",center_heading:"Diagramas, Feito. Simples.",toolbarHint:"Escolha uma ferramenta e comece a desenhar!",helpHint:"Atalhos e ajuda"}},TTe={mostUsedCustomColors:"Cores personalizadas mais usadas",colors:"Cores",shades:"Tons",hexCode:"Código hexadecimal",noShades:"Sem tons disponíveis para essa cor"},YTe={action:{exportToImage:{title:"Exportar como imagem",button:"Exportar como imagem",description:"Exportar os dados da cena para um arquivo que você poderá importar mais tarde."},saveToDisk:{title:"Salvar no computador",button:"Salvar no computador",description:"Exportar os dados da cena para um arquivo que você poderá importar mais tarde."},excalidrawPlus:{title:"Excalidraw+",button:"Exportar para Excalidraw+",description:"Salvar a cena na sua área de trabalho Excalidraw+."}},modal:{loadFromFile:{title:"Carregar de arquivo",button:"Carregar de arquivo",description:"Carregar de um arquivo irá <bold> substituir o conteúdo existente</bold>.<br></br>Você pode salvar seu desenho primeiro usando uma das opções abaixo."},shareableLink:{title:"Carregar de um link",button:"Substituir meu conteúdo",description:"Carregar um desenho externo irá <bold> substituir seu conteúdo existente</bold>.<br></br>Você pode salvar seu desenho antes utilizando uma das opções abaixo."}}},HTe={title:"",button:"",description:"",syntax:"",preview:""},eCr={labels:BTe,library:ETe,buttons:dTe,alerts:ITe,errors:hTe,toolBar:QTe,headings:pTe,hints:fTe,canvasError:mTe,errorSplash:DTe,roomDialog:yTe,errorDialog:wTe,exportDialog:bTe,helpDialog:vTe,clearCanvasDialog:kTe,publishDialog:FTe,publishSuccessDialog:xTe,confirmDialog:STe,imageExportDialog:LTe,encrypted:RTe,stats:NTe,toast:GTe,colors:UTe,welcomeScreen:MTe,colorPicker:TTe,overwriteConfirm:YTe,mermaid:HTe}});var dYe={};Dt(dYe,{alerts:()=>WTe,buttons:()=>_Te,canvasError:()=>jTe,clearCanvasDialog:()=>rYe,colorPicker:()=>CYe,colors:()=>gYe,confirmDialog:()=>aYe,default:()=>tCr,encrypted:()=>oYe,errorDialog:()=>AYe,errorSplash:()=>XTe,errors:()=>qTe,exportDialog:()=>eYe,headings:()=>ZTe,helpDialog:()=>tYe,hints:()=>VTe,imageExportDialog:()=>nYe,labels:()=>OTe,library:()=>PTe,mermaid:()=>EYe,overwriteConfirm:()=>BYe,publishDialog:()=>iYe,publishSuccessDialog:()=>uYe,roomDialog:()=>$Te,stats:()=>sYe,toast:()=>lYe,toolBar:()=>zTe,welcomeScreen:()=>cYe});var OTe,PTe,_Te,WTe,qTe,zTe,ZTe,VTe,jTe,XTe,$Te,AYe,eYe,tYe,rYe,iYe,uYe,aYe,nYe,oYe,sYe,lYe,gYe,cYe,CYe,BYe,EYe,tCr;var IYe=_(()=>{zt();OTe={paste:"Colar",pasteAsPlaintext:"Colar como texto simples",pasteCharts:"Colar gráficos",selectAll:"Selecionar tudo",multiSelect:"Adicionar elemento à seleção",moveCanvas:"Mover tela",cut:"Cortar",copy:"Copiar",copyAsPng:"Copiar para a área de transferência como PNG",copyAsSvg:"Copiar para a área de transferência como SVG",copyText:"Copiar para Área de Transferência como texto",copySource:"",convertToCode:"",bringForward:"Trazer para o primeiro plano",sendToBack:"Enviar para o plano de fundo",bringToFront:"Trazer para o primeiro plano",sendBackward:"Enviar para trás",delete:"Apagar",copyStyles:"Copiar os estilos",pasteStyles:"Colar os estilos",stroke:"Contornos",background:"Fundo",fill:"Preenchimento",strokeWidth:"Espessura do traço",strokeStyle:"Estilo de traço",strokeStyle_solid:"Sólido",strokeStyle_dashed:"Tracejado",strokeStyle_dotted:"Pontilhado",sloppiness:"Desleixo",opacity:"Opacidade",textAlign:"Alinhamento do texto",edges:"Arestas",sharp:"Aguçado",round:"Redondo",arrowheads:"Pontas",arrowhead_none:"Nenhuma",arrowhead_arrow:"Seta",arrowhead_bar:"Barra",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Triângulo",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Tamanho da fonte",fontFamily:"Família da fontes",addWatermark:'Adicionar "Feito com Excalidraw"',handDrawn:"Manuscrito",normal:"Normal",code:"Código",small:"Pequeno",medium:"Médio",large:"Grande",veryLarge:"Muito grande",solid:"Sólido",hachure:"Eclosão",zigzag:"ziguezague",crossHatch:"Sombreado",thin:"Fino",bold:"Espesso",left:"Esquerda",center:"Centralizar",right:"Direita",extraBold:"Muito espesso",architect:"Arquitecto",artist:"Artista",cartoonist:"Caricaturista",fileTitle:"Nome do ficheiro",colorPicker:"Seletor de cores",canvasColors:"Usado na tela",canvasBackground:"Fundo da área de desenho",drawingCanvas:"Área de desenho",layers:"Camadas",actions:"Ações",language:"Idioma",liveCollaboration:"Colaboração ao vivo...",duplicateSelection:"Duplicar",untitled:"Sem título",name:"Nome",yourName:"O seu nome",madeWithExcalidraw:"Feito com Excalidraw",group:"Agrupar seleção",ungroup:"Desagrupar seleção",collaborators:"Colaboradores",showGrid:"Mostrar grelha",addToLibrary:"Adicionar à biblioteca",removeFromLibrary:"Remover da biblioteca",libraryLoadingMessage:"A carregar a biblioteca…",libraries:"Procurar bibliotecas",loadingScene:"A carregar a cena…",align:"Alinhamento",alignTop:"Alinhar ao topo",alignBottom:"Alinhar ao fundo",alignLeft:"Alinhar à esquerda",alignRight:"Alinhar à direita",centerVertically:"Centrar verticalmente",centerHorizontally:"Centrar horizontalmente",distributeHorizontally:"Distribuir horizontalmente",distributeVertically:"Distribuir verticalmente",flipHorizontal:"Inverter horizontalmente",flipVertical:"Inverter verticalmente",viewMode:"Modo de visualização",share:"Partilhar",showStroke:"Mostrar seletor de cores do traço",showBackground:"Mostrar seletor de cores do fundo",toggleTheme:"Alternar tema",personalLib:"Biblioteca pessoal",excalidrawLib:"Biblioteca do Excalidraw",decreaseFontSize:"Reduzir o tamanho do tipo de letra",increaseFontSize:"Aumentar o tamanho do tipo de letra",unbindText:"Desvincular texto",bindText:"Ligar texto ao recipiente",createContainerFromText:"Envolver texto num recipiente",link:{edit:"Editar ligação",editEmbed:"",create:"Criar ligação",createEmbed:"",label:"Ligação",labelEmbed:"",empty:""},lineEditor:{edit:"Editar linha",exit:"Sair do editor de linha"},elementLock:{lock:"Bloquear",unlock:"Desbloquear",lockAll:"Bloquear todos",unlockAll:"Desbloquear todos"},statusPublished:"Publicado",sidebarLock:"Manter a barra lateral aberta",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},PTe={noItems:"Ainda não foram adicionados nenhuns itens...",hint_emptyLibrary:"Seleccione um item na tela para adicioná-lo aqui, ou então instale uma biblioteca do repositório público abaixo.",hint_emptyPrivateLibrary:"Seleccione um item na tela para adicioná-lo aqui."},_Te={clearReset:"Limpar a área de desenho e redefinir a cor de fundo",exportJSON:"Exportar para ficheiro",exportImage:"Exportar imagem...",export:"Guardar para...",copyToClipboard:"Copiar para o clipboard",save:"Guardar no ficheiro atual",saveAs:"Guardar como",load:"Abrir",getShareableLink:"Obter um link de partilha",close:"Fechar",selectLanguage:"Selecionar idioma",scrollBackToContent:"Voltar ao conteúdo",zoomIn:"Aumentar zoom",zoomOut:"Diminuir zoom",resetZoom:"Redefinir zoom",menu:"Menu",done:"Concluído",edit:"Editar",undo:"Desfazer",redo:"Refazer",resetLibrary:"Repor a biblioteca",createNewRoom:"Criar nova sala",fullScreen:"Ecrã inteiro",darkMode:"Modo escuro",lightMode:"Modo claro",zenMode:"Modo zen",objectsSnapMode:"",exitZenMode:"Sair do modo zen",cancel:"Cancelar",clear:"Limpar",remove:"Remover",embed:"",publishLibrary:"Publicar",submit:"Enviar",confirm:"Confirmar",embeddableInteractionButton:""},WTe={clearReset:"Isto irá limpar toda a área de desenho. Tem a certeza?",couldNotCreateShareableLink:"Não foi possível criar um link partilhável.",couldNotCreateShareableLinkTooBig:"Não foi possível criar um link partilhável: a cena é muito grande",couldNotLoadInvalidFile:"Não foi possível carregar o ficheiro inválido",importBackendFailed:"A importação do servidor falhou.",cannotExportEmptyCanvas:"Não é possível exportar uma área de desenho vazia.",couldNotCopyToClipboard:"Não foi possível copiar para a área de transferência.",decryptFailed:"Não foi possível desencriptar os dados.",uploadedSecurly:"O upload foi protegido com criptografia de ponta a ponta, o que significa que o servidor do Excalidraw e terceiros não podem ler o conteúdo.",loadSceneOverridePrompt:"Se carregar um desenho externo substituirá o conteúdo existente. Quer continuar?",collabStopOverridePrompt:`Ao interromper a sessão irá substituir o último desenho guardado. Tem a certeza?
(Caso queira manter o último desenho, simplesmente feche a janela do navegador.)`,errorAddingToLibrary:"Não foi possível adicionar o item à biblioteca",errorRemovingFromLibrary:"Não foi possível remover o item da biblioteca",confirmAddLibrary:"Isso adicionará {{numShapes}} forma(s) à sua biblioteca. Tem a certeza?",imageDoesNotContainScene:"Esta imagem parece não conter dados de cenas. Ativou a incorporação da cena durante a exportação?",cannotRestoreFromImage:"Não foi possível restaurar a cena deste ficheiro de imagem",invalidSceneUrl:"Não foi possível importar a cena a partir do URL fornecido. Ou está mal formado ou não contém dados JSON do Excalidraw válidos.",resetLibrary:"Isto irá limpar a sua biblioteca. Tem a certeza?",removeItemsFromsLibrary:"Apagar {{count}} item(ns) da biblioteca?",invalidEncryptionKey:"Chave de encriptação deve ter 22 caracteres. A colaboração ao vivo está desativada.",collabOfflineWarning:`Sem ligação à internet disponível.
As suas alterações não serão salvas!`},qTe={unsupportedFileType:"Tipo de ficheiro não suportado.",imageInsertError:"Não foi possível inserir a imagem, tente novamente mais tarde...",fileTooBig:"O ficheiro é muito grande. O tamanho máximo permitido é {{maxSize}}.",svgImageInsertError:"Não foi possível inserir a imagem SVG. A marcação SVG parece inválida.",failedToFetchImage:"",invalidSVGString:"SVG inválido.",cannotResolveCollabServer:"Não foi possível fazer a ligação ao servidor colaborativo. Por favor, volte a carregar a página e tente novamente.",importLibraryError:"Não foi possível carregar a biblioteca",collabSaveFailed:"Não foi possível guardar na base de dados de backend. Se os problemas persistirem, guarde o ficheiro localmente para garantir que não perde o seu trabalho.",collabSaveFailed_sizeExceeded:"Não foi possível guardar na base de dados de backend, o ecrã parece estar muito grande. Deve guardar o ficheiro localmente para garantir que não perde o seu trabalho.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},zTe={selection:"Seleção",image:"Inserir imagem",rectangle:"Retângulo",diamond:"Losango",ellipse:"Elipse",arrow:"Flecha",line:"Linha",freedraw:"Desenhar",text:"Texto",library:"Biblioteca",lock:"Manter a ferramenta selecionada ativa após desenhar",penMode:"Modo caneta - impedir toque",link:"Acrescentar/ Adicionar ligação para uma forma seleccionada",eraser:"Borracha",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Mão (ferramenta de movimento da tela)",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},ZTe={canvasActions:"Ações da área de desenho",selectedShapeActions:"Ações das formas selecionadas",shapes:"Formas"},VTe={canvasPanning:"Para mover a tela, carregue na roda do rato ou na barra de espaço enquanto arrasta, ou use a ferramenta da mão",linearElement:"Clique para iniciar vários pontos, arraste para uma única linha",freeDraw:"Clique e arraste, large quando terminar",text:"Dica: também pode adicionar texto clicando duas vezes em qualquer lugar com a ferramenta de seleção",embeddable:"",text_selected:"Clique duas vezes ou pressione a tecla Enter para editar o texto",text_editing:"Pressione a tecla Escape ou CtrlOrCmd+ENTER para terminar a edição",linearElementMulti:"Clique no último ponto ou pressione Escape ou Enter para terminar",lockAngle:"Pode restringir o ângulo mantendo premida a tecla SHIFT",resize:`Pode restringir as proporções mantendo a tecla SHIFT premida enquanto redimensiona,
mantenha a tecla ALT premida para redimensionar a partir do centro`,resizeImage:`Pode redimensionar livremente mantendo pressionada a tecla SHIFT,
mantenha pressionada a tecla ALT para redimensionar do centro`,rotate:"Pode restringir os ângulos mantendo a tecla SHIFT premida enquanto roda",lineEditor_info:"Pressione CtrlOrCmd e faça um duplo-clique ou pressione CtrlOrCmd + Enter para editar pontos",lineEditor_pointSelected:"Carregue na tecla Delete para remover o(s) ponto(s), CtrlOuCmd+D para duplicar, ou arraste para mover",lineEditor_nothingSelected:`Seleccione um ponto para editar (carregue em SHIFT para seleccionar vários),
ou carregue em Alt e clique para acrescentar novos pontos`,placeImage:"Clique para colocar a imagem ou clique e arraste para definir o seu tamanho manualmente",publishLibrary:"Publique a sua própria biblioteca",bindTextToElement:"Carregue Enter para acrescentar texto",deepBoxSelect:"Mantenha a tecla CtrlOrCmd carregada para selecção profunda, impedindo o arrastamento",eraserRevert:"Carregue também em Alt para reverter os elementos marcados para serem apagados",firefox_clipboard_write:'Esta função pode provavelmente ser ativada definindo a opção "dom.events.asyncClipboard.clipboardItem" como "true". Para alterar os sinalizadores do navegador no Firefox, visite a página "about:config".',disableSnapping:""},jTe={cannotShowPreview:"Não é possível mostrar uma pré-visualização",canvasTooBig:"A área de desenho pode ser muito grande.",canvasTooBigTip:"Dica: tente aproximar um pouco os elementos mais distantes."},XTe={headingMain:"Foi encontrado um erro. Tente <button>recarregar a página.</button>",clearCanvasMessage:"Se a recarga não funcionar, tente <button>a limpar a área de desenho.</button>",clearCanvasCaveat:" Isso resultará em perda de trabalho ",trackedToSentry:"O erro com o identificador {{eventId}} foi rastreado no nosso sistema.",openIssueMessage:"Fomos muito cautelosos para não incluir suas informações de cena no erro. Se sua cena não for privada, por favor, considere seguir nosso <button>rastreador de bugs.</button> Por favor, inclua informações abaixo, copiando e colando no relatório de erros no GitHub.",sceneContent:"Conteúdo da cena:"},$Te={desc_intro:"Pode convidar pessoas para colaborarem na sua cena atual.",desc_privacy:"Não se preocupe, a sessão usa criptografia de ponta-a-ponta, por isso o que desenhar permanecerá privado. Nem mesmo o nosso servidor poderá ver o que cria.",button_startSession:"Iniciar sessão",button_stopSession:"Parar sessão",desc_inProgressIntro:"A sessão de colaboração ao vivo está agora em andamento.",desc_shareLink:"Partilhe este link com qualquer pessoa com quem queira colaborar:",desc_exitSession:"Interrompendo a sessão irá desconectar-se da sala, mas poderá continuar a trabalhar com a cena localmente. Note que isso não afetará outras pessoas e elas ainda poderão colaborar nas versões deles.",shareTitle:"Participe numa sessão de colaboração ao vivo no Excalidraw"},AYe={title:"Erro"},eYe={disk_title:"Guardar no disco",disk_details:"Exportar os dados da cena para um ficheiro do qual poderá importar mais tarde.",disk_button:"Guardar num ficheiro",link_title:"Link partilhável",link_details:"Exportar como um link de apenas leitura.",link_button:"Exportar para link",excalidrawplus_description:"Guardar a cena no seu espaço de trabalho Excalidraw+",excalidrawplus_button:"Exportar",excalidrawplus_exportError:"Não foi possível exportar para o Excalidraw+ neste momento..."},tYe={blog:"Leia o nosso blogue",click:"clicar",deepSelect:"Selecção profunda",deepBoxSelect:"Selecção profunda dentro da caixa, impedindo que seja arrastada",curvedArrow:"Seta curva",curvedLine:"Linha curva",documentation:"Documentação",doubleClick:"clique duplo",drag:"arrastar",editor:"Editor",editLineArrowPoints:"Editar pontos de linha/seta",editText:"Editar texto / adicionar etiqueta",github:"Encontrou algum problema? Informe-nos",howto:"Siga os nossos guias",or:"ou",preventBinding:"Prevenir fixação de seta",tools:"Ferramentas",shortcuts:"Atalhos de teclado",textFinish:"Finalizar edição (editor texto)",textNewLine:"Adicionar nova linha (editor de texto)",title:"Ajuda",view:"Visualizar",zoomToFit:"Ajustar para todos os elementos caberem",zoomToSelection:"Ampliar a seleção",toggleElementLock:"Trancar/destrancar selecção",movePageUpDown:"Mover página para cima / baixo",movePageLeftRight:"Mover página para esquerda / direita"},rYe={title:"Apagar tela"},iYe={title:"Publicar biblioteca",itemName:"Nome do item",authorName:"Nome do autor",githubUsername:"Nome de utilizador do GitHub",twitterUsername:"Nome de utilizador no Twitter",libraryName:"Nome da biblioteca",libraryDesc:"Descrição da biblioteca",website:"Página web",placeholder:{authorName:"Introduza o seu nome ou nome de utilizador",libraryName:"Nome da sua biblioteca",libraryDesc:"Descrição da sua biblioteca para ajudar as pessoas a entender a utilização dela",githubHandle:"Identificador do GitHub (opcional), para que possa editar a biblioteca depois desta ser enviada para revisão",twitterHandle:"Nome do Twitter (opcional), para que saibamos quem merece os créditos na promoção via Twitter",website:"Ligação para a sua página pessoal ou qualquer outra (opcional)"},errors:{required:"Obrigatório",website:"Introduza um URL válido"},noteDescription:"Envie a sua biblioteca para ser incluída no <link>repositório de bibliotecas públicas</link>para outras pessoas a poderem usar nos seus próprios desenhos.",noteGuidelines:"A biblioteca precisa ser aprovada manualmente primeiro. Por favor, leia <link>orientações</link> antes de enviar. Vai precisar de uma conta no GitHub para comunicar e fazer alterações se solicitado, mas não é estritamente necessária.",noteLicense:"Ao enviar, concorda que a biblioteca será publicada sob a <link>Licença MIT, </link>o que significa, de forma resumida, que qualquer pessoa pode utilizá-la sem restrições.",noteItems:"Cada item da biblioteca deve ter o seu próprio nome para que este seja pesquisável com filtros. Os seguintes itens da biblioteca serão incluídos:",atleastOneLibItem:"Por favor, seleccione pelo menos um item da biblioteca para começar",republishWarning:"Nota: alguns dos itens seleccionados estão marcados como já publicados/enviados. Só deve reenviar itens ao actualizar uma biblioteca existente ou submissão."},uYe={title:"Biblioteca enviada",content:"Obrigado {{authorName}}. A sua biblioteca foi enviada para análise. Pode acompanhar o status<link>aqui</link>"},aYe={resetLibrary:"Repor a biblioteca",removeItemsFromLib:"Remover os itens seleccionados da biblioteca"},nYe={header:"Exportar imagem",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"Cena embutida",scale:"",padding:"Espaçamento"},tooltip:{embedScene:""},title:{exportToPng:"Exportar em PNG",exportToSvg:"Exportar em SVG",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:""}},oYe={tooltip:"Os seus desenhos são encriptados de ponta-a-ponta, por isso os servidores do Excalidraw nunca os verão.",link:"Publicação de blogue na encriptação ponta-a-ponta no Excalidraw"},sYe={angle:"Ângulo",element:"Elemento",elements:"Elementos",height:"Altura",scene:"Cena",selected:"Selecionado",storage:"Armazenamento",title:"Estatísticas para nerds",total:"Total",version:"Versão",versionCopy:"Clique para copiar",versionNotAvailable:"Versão não disponível",width:"Largura"},lYe={addedToLibrary:"Acrescentado à biblioteca",copyStyles:"Estilos copiados.",copyToClipboard:"Copiado para a área de transferência.",copyToClipboardAsPng:`{{exportSelection}} copiado para a área de transferência como PNG
({{exportColorScheme}})`,fileSaved:"Ficheiro guardado.",fileSavedToFilename:"Guardado como {filename}",canvas:"área de desenho",selection:"seleção",pasteAsSingleElement:`Usar {{shortcut}} para colar como um único elemento,
ou colar num editor de texto existente`,unableToEmbed:"",unrecognizedLinkFormat:""},gYe={transparent:"Transparente",black:"Preto",white:"Branco",red:"Vermelho",pink:"Rosa",grape:"Uva",violet:"Violeta",gray:"Cinza",blue:"Azul",cyan:"",teal:"",green:"Verde",yellow:"Amarelo",orange:"Laranja",bronze:"Bronze"},cYe={app:{center_heading:"Todos os dados são guardados no seu navegador local.",center_heading_plus:"Queria antes ir para o Excalidraw+?",menuHint:"Exportar, preferências, idiomas..."},defaults:{menuHint:"Exportar, preferências e outros...",center_heading:"Diagramas. Feito. Simples.",toolbarHint:"Escolha uma ferramenta e comece a desenhar!",helpHint:"Atalhos e ajuda"}},CYe={mostUsedCustomColors:"",colors:"Cores",shades:"Tons",hexCode:"",noShades:""},BYe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"Guardar no disco",button:"Guardar no disco",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"Carregar a partir de ficheiro",button:"Carregar a partir de ficheiro",description:""},shareableLink:{title:"",button:"",description:""}}},EYe={title:"",button:"",description:"",syntax:"",preview:""},tCr={labels:OTe,library:PTe,buttons:_Te,alerts:WTe,errors:qTe,toolBar:zTe,headings:ZTe,hints:VTe,canvasError:jTe,errorSplash:XTe,roomDialog:$Te,errorDialog:AYe,exportDialog:eYe,helpDialog:tYe,clearCanvasDialog:rYe,publishDialog:iYe,publishSuccessDialog:uYe,confirmDialog:aYe,imageExportDialog:nYe,encrypted:oYe,stats:sYe,toast:lYe,colors:gYe,welcomeScreen:cYe,colorPicker:CYe,overwriteConfirm:BYe,mermaid:EYe}});var _Ye={};Dt(_Ye,{alerts:()=>fYe,buttons:()=>pYe,canvasError:()=>bYe,clearCanvasDialog:()=>LYe,colorPicker:()=>JYe,colors:()=>HYe,confirmDialog:()=>GYe,default:()=>rCr,encrypted:()=>MYe,errorDialog:()=>FYe,errorSplash:()=>vYe,errors:()=>mYe,exportDialog:()=>xYe,headings:()=>yYe,helpDialog:()=>SYe,hints:()=>wYe,imageExportDialog:()=>UYe,labels:()=>hYe,library:()=>QYe,mermaid:()=>PYe,overwriteConfirm:()=>OYe,publishDialog:()=>RYe,publishSuccessDialog:()=>NYe,roomDialog:()=>kYe,stats:()=>TYe,toast:()=>YYe,toolBar:()=>DYe,welcomeScreen:()=>KYe});var hYe,QYe,pYe,fYe,mYe,DYe,yYe,wYe,bYe,vYe,kYe,FYe,xYe,SYe,LYe,RYe,NYe,GYe,UYe,MYe,TYe,YYe,HYe,KYe,JYe,OYe,PYe,rCr;var WYe=_(()=>{zt();hYe={paste:"Lipire",pasteAsPlaintext:"Inserare ca text simplu",pasteCharts:"Lipire diagrame",selectAll:"Selectare totală",multiSelect:"Adaugă element la selecție",moveCanvas:"Mutare pânză",cut:"Decupare",copy:"Copiere",copyAsPng:"Copiere în memoria temporară ca PNG",copyAsSvg:"Copiere în memoria temporară ca SVG",copyText:"Copiere în memoria temporară ca text",copySource:"Copiere sursă în memoria temporară",convertToCode:"Convertire în cod",bringForward:"Aducere în plan apropiat",sendToBack:"Trimitere în ultimul plan",bringToFront:"Aducere în prim plan",sendBackward:"Trimitere în plan secundar",delete:"Ștergere",copyStyles:"Copiere stiluri",pasteStyles:"Lipire stiluri",stroke:"Contur",background:"Fundal",fill:"Umplere",strokeWidth:"Lățimea conturului",strokeStyle:"Stilul conturului",strokeStyle_solid:"Neîntrerupt",strokeStyle_dashed:"Liniuțe",strokeStyle_dotted:"Punctat",sloppiness:"Aspectul trasării",opacity:"Opacitate",textAlign:"Alinierea textului",edges:"Margini",sharp:"Ascuțite",round:"Rotunde",arrowheads:"Vârfuri de săgeată",arrowhead_none:"Niciunul",arrowhead_arrow:"Săgeată",arrowhead_bar:"Bară",arrowhead_circle:"Cerc",arrowhead_circle_outline:"Cerc (contur)",arrowhead_triangle:"Triunghi",arrowhead_triangle_outline:"Triunghi (contur)",arrowhead_diamond:"Romb",arrowhead_diamond_outline:"Romb (contur)",fontSize:"Dimensiune font",fontFamily:"Familia de fonturi",addWatermark:"Adaugă „Realizat cu Excalidraw”",handDrawn:"Scris de mână",normal:"Normal",code:"Cod",small:"Mică",medium:"Medie",large:"Mare",veryLarge:"Foarte mare",solid:"Plină",hachure:"Hașură",zigzag:"Zigzag",crossHatch:"Hașură transversală",thin:"Subțire",bold:"Îngroșată",left:"Stânga",center:"Centru",right:"Dreapta",extraBold:"Extra îngroșată",architect:"Arhitect",artist:"Artist",cartoonist:"Caricaturist",fileTitle:"Nume de fișier",colorPicker:"Selector de culoare",canvasColors:"Folosite pe pânză",canvasBackground:"Fundalul pânzei",drawingCanvas:"Pânză pentru desenat",layers:"Straturi",actions:"Acțiuni",language:"Limbă",liveCollaboration:"Colaborare în direct...",duplicateSelection:"Duplicare",untitled:"Nedenumit",name:"Nume",yourName:"Numele tău",madeWithExcalidraw:"Realizat cu Excalidraw",group:"Grupare selecție",ungroup:"Degrupare selecție",collaborators:"Colaboratori",showGrid:"Afișare grilă",addToLibrary:"Adăugare la bibliotecă",removeFromLibrary:"Eliminare din bibliotecă",libraryLoadingMessage:"Se încarcă biblioteca…",libraries:"Răsfoiește bibliotecile",loadingScene:"Se încarcă scena…",align:"Aliniere",alignTop:"Aliniere sus",alignBottom:"Aliniere jos",alignLeft:"Aliniere la stânga",alignRight:"Aliniere la dreapta",centerVertically:"Centrare verticală",centerHorizontally:"Centrare orizontală",distributeHorizontally:"Distribuie orizontal",distributeVertically:"Distribuie vertical",flipHorizontal:"Răsturnare orizontală",flipVertical:"Răsturnare verticală",viewMode:"Mod de vizualizare",share:"Distribuie",showStroke:"Afișare selector culoare contur",showBackground:"Afișare selector culoare fundal",toggleTheme:"Comutare temă",personalLib:"Biblioteca personală",excalidrawLib:"Biblioteca Excalidraw",decreaseFontSize:"Micșorează dimensiunea fontului",increaseFontSize:"Mărește dimensiunea fontului",unbindText:"Deconectare text",bindText:"Legare text de container",createContainerFromText:"Încadrare text într-un container",link:{edit:"Editare URL",editEmbed:"Editare URL și încorporare",create:"Creare URL",createEmbed:"Creare URL și încorporare",label:"URL",labelEmbed:"URL și încorporare",empty:"Nu este setat niciun URL"},lineEditor:{edit:"Editare linie",exit:"Părăsire editor de linii"},elementLock:{lock:"Blocare",unlock:"Deblocare",lockAll:"Blocare toate",unlockAll:"Deblocare toate"},statusPublished:"Publicat",sidebarLock:"Păstrează deschisă bara laterală",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"Alegere culoare din pânză",textToDiagram:"Text la diagramă",prompt:"Solicitare"},QYe={noItems:"Niciun element adăugat încă...",hint_emptyLibrary:"Selectează un element de pe pânză pentru a-l adăuga aici sau instalează o bibliotecă din depozitul public, de mai jos.",hint_emptyPrivateLibrary:"Selectează un element de pe pânză pentru a-l adăuga aici."},pYe={clearReset:"Resetare pânză",exportJSON:"Exportare la fișiere",exportImage:"Exportare imagine...",export:"Salvare în...",copyToClipboard:"Copiere în memoria temporară",save:"Salvare în fișierul curent",saveAs:"Salvare ca",load:"Deschidere",getShareableLink:"Obține URL partajabil",close:"Închidere",selectLanguage:"Selectare limbă",scrollBackToContent:"Derulare înapoi la conținut",zoomIn:"Apropiere",zoomOut:"Depărtare",resetZoom:"Resetare transfocare",menu:"Meniu",done:"Efectuat",edit:"Edit",undo:"Anulare",redo:"Refacere",resetLibrary:"Resetare bibliotecă",createNewRoom:"Creare cameră nouă",fullScreen:"Ecran complet",darkMode:"Mod întunecat",lightMode:"Mod luminos",zenMode:"Mod zen",objectsSnapMode:"Ancorare la obiecte",exitZenMode:"Ieșire din modul zen",cancel:"Anulare",clear:"Ștergere",remove:"Eliminare",embed:"Comutare încorporare",publishLibrary:"Publicare",submit:"Trimitere",confirm:"Confirmare",embeddableInteractionButton:"Clic pentru interacționare"},fYe={clearReset:"Această opțiune va șterge întreaga pânză. Confirmi?",couldNotCreateShareableLink:"Nu s-a putut crea un URL partajabil.",couldNotCreateShareableLinkTooBig:"Nu s-a putut crea un URL partajabil: scena este prea mare",couldNotLoadInvalidFile:"Fișierul invalid nu a putut fi încărcat",importBackendFailed:"Importarea de la nivel de server a eșuat.",cannotExportEmptyCanvas:"Nu se poate exporta pânza goală.",couldNotCopyToClipboard:"Nu s-a putut copia în memoria temporară.",decryptFailed:"Datele nu au putut fi decriptate.",uploadedSecurly:"Încărcarea a fost securizată prin criptare integrală, însemnând că serverul Excalidraw și terții nu pot citi conținutul.",loadSceneOverridePrompt:"Încărcarea desenului extern va înlocui conținutul existent. Dorești să continui?",collabStopOverridePrompt:`Oprirea sesiunii va suprascrie desenul anterior stocat local. Confirmi alegerea?
(Dacă vrei să păstrezi desenul local, pur și simplu închide fila navigatorului în schimb.)`,errorAddingToLibrary:"Elementul nu a putut fi adăugat în bibliotecă",errorRemovingFromLibrary:"Elementul nu a putut fi eliminat din bibliotecă",confirmAddLibrary:"Această acțiune va adăuga {{numShapes}} formă(e) la biblioteca ta. Confirmi?",imageDoesNotContainScene:"Această imagine nu pare să conțină date de scenă. Ai activat încorporarea scenei în timpul exportului?",cannotRestoreFromImage:"Scena nu a putut fi restaurată din acest fișier de imagine",invalidSceneUrl:"Scena nu a putut fi importată din URL-ul furnizat. Este fie incorect formată, fie nu conține date JSON Excalidraw valide.",resetLibrary:"Această opțiune va elimina conținutul din bibliotecă. Confirmi?",removeItemsFromsLibrary:"Ștergi {{count}} element(e) din bibliotecă?",invalidEncryptionKey:"Cheia de criptare trebuie să aibă 22 de caractere. Colaborarea în direct este dezactivată.",collabOfflineWarning:`Nu este disponibilă nicio conexiune la internet.
Modificările nu vor fi salvate!`},mYe={unsupportedFileType:"Tip de fișier neacceptat.",imageInsertError:"Imaginea nu a putut fi introdusă. Reîncearcă mai târziu...",fileTooBig:"Fișierul este prea mare. Dimensiunea maximă permisă este de {{maxSize}}.",svgImageInsertError:"Imaginea SVG nu a putut fi introdus. Marcajul SVG pare invalid.",failedToFetchImage:"Preluarea imaginii a eșuat.",invalidSVGString:"SVG invalid.",cannotResolveCollabServer:"Nu a putut fi realizată conexiunea la serverul de colaborare. Reîncarcă pagina și încearcă din nou.",importLibraryError:"Biblioteca nu a putut fi încărcată",collabSaveFailed:"Nu s-a putut salva în baza de date la nivel de server. Dacă problemele persistă, ar trebui să salvezi fișierul la nivel local pentru a te asigura că nu îți pierzi munca.",collabSaveFailed_sizeExceeded:"Nu s-a putut salva în baza de date la nivel de server, întrucât se pare că pânza este prea mare. Ar trebui să salvezi fișierul la nivel local pentru a te asigura că nu îți pierzi munca.",imageToolNotSupported:"Imaginile sunt dezactivate.",brave_measure_text_error:{line1:"Se pare că folosești navigatorul Brave cu opțiunea <bold>strictă pentru blocarea amprentării</bold>.",line2:"Acest lucru poate duce la întreruperea <bold>elementelor text</bold> din desene.",line3:"Îți recomandăm ferm să dezactivezi această setare. Poți urma <link>acești pași</link> pentru a face acest lucru.",line4:"Dacă dezactivarea acestei setări nu duce la remedierea afișării elementelor text, deschide un tichet de <issueLink>problemă</issueLink> pe pagina noastră de GitHub sau scrie-ne pe <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Elementele încorporabile nu pot fi adăugate la bibliotecă.",iframe:"Elementele iFrame nu pot fi adăugate la bibliotecă.",image:"În curând vor putea fi adăugate imagini în bibliotecă!"},asyncPasteFailedOnRead:"Lipirea nu a putut fi efectuată (nu s-a putut citit din memoria temporară a sistemului).",asyncPasteFailedOnParse:"Lipirea nu a putut fi efectuată.",copyToSystemClipboardFailed:"Nu s-a putut copia în memoria temporară."},DYe={selection:"Selecție",image:"Introducere imagine",rectangle:"Dreptunghi",diamond:"Romb",ellipse:"Elipsă",arrow:"Săgeată",line:"Linie",freedraw:"Desenare",text:"Text",library:"Bibliotecă",lock:"Menține activ instrumentul selectat după desenare",penMode:"Mod stilou – împiedică atingerea",link:"Adăugare/actualizare URL pentru forma selectată",eraser:"Radieră",frame:"",magicframe:"Structură-de-fire la cod",embeddable:"Încorporare web",laser:"Indicator laser",hand:"Mână (instrument de panoramare)",extraTools:"",mermaidToExcalidraw:"Mermaid la Excalidraw",magicSettings:"Setări IA"},yYe={canvasActions:"Acțiuni pentru pânză",selectedShapeActions:"Acțiuni pentru forma selectată",shapes:"Forme"},wYe={canvasPanning:"Pentru a muta pânză, ține apăsată rotița mausului sau bara de spațiu sau folosește instrumentul în formă de mână",linearElement:"Dă clic pentru a crea mai multe puncte, glisează pentru a forma o singură linie",freeDraw:"Dă clic pe pânză și glisează cursorul, apoi eliberează-l când ai terminat",text:"Sfat: poți adăuga text și dând dublu clic oriunde cu instrumentul de selecție",embeddable:"Dă clic și trage pentru a crea un cod de încorporare de pagină web",text_selected:"Dă dublu clic sau apasă tasta Enter pentru a edita textul",text_editing:"Apasă tasta Escape sau Ctrl sau Cmd + Enter pentru a finaliza editarea",linearElementMulti:"Dă clic pe ultimul punct sau apasă tasta Escape sau tasta Enter pentru a termina",lockAngle:"Poți constrânge unghiul prin ținerea apăsată a tastei SHIFT",resize:`Poți constrânge proporțiile, ținând apăsată tasta SHIFT în timp ce redimensionezi,
ține apăsată tasta ALT pentru a redimensiona de la centru`,resizeImage:`Poți redimensiona liber ținând apăsată tasta SHIFT,
ține apăsată tasta ALT pentru a redimensiona din centru`,rotate:"Poți constrânge unghiurile, ținând apăsată tasta SHIFT în timp ce rotești",lineEditor_info:"Ține apăsată tasta Ctrl sau Cmd și dă dublu clic sau apasă tasta Ctrl sau Cmd + Enter pentru a edita puncte",lineEditor_pointSelected:`Apasă tasta Delete pentru a elimina punctele,
combinația de taste Ctrl sau Cmd + D pentru a le duplica sau glisează-le pentru a le schimba poziția`,lineEditor_nothingSelected:`Selectează un punct pentru a-l edita (ține apăsată tasta SHIFT pentru a selecta mai multe),
sau ține apăsată tasta Alt și dă clic pentru a adăuga puncte noi`,placeImage:"Dă clic pentru a poziționa imaginea sau dă clic și glisează pentru a seta manual dimensiunea imaginii",publishLibrary:"Publică propria bibliotecă",bindTextToElement:"Apasă tasta Enter pentru a adăuga text",deepBoxSelect:"Ține apăsată tasta Ctrl sau Cmd pentru a efectua selectarea de adâncime și pentru a preveni glisarea",eraserRevert:"Ține apăsată tasta Alt pentru a anula elementele marcate pentru ștergere",firefox_clipboard_write:"Această caracteristică poate fi probabil activată prin setarea preferinței „dom.events.asyncClipboard.clipboardItem” ca „true”. Pentru a schimba preferințele navigatorului în Firefox, accesează pagina „about:config”.",disableSnapping:"Ține apăsat CtrlOrCmd pentru a dezactiva ancorarea"},bYe={cannotShowPreview:"Nu se poate afișa previzualizarea",canvasTooBig:"Pânza poate fi prea mare.",canvasTooBigTip:"Sfat: încearcă să apropii puțin mai mult elementele cele mai îndepărtate."},vYe={headingMain:"A apărut o eroare. Încearcă <button>să reîncarci pagina</button>.",clearCanvasMessage:"Dacă reîncărcarea nu funcționează, încearcă <button>să ștergi pânza</button>.",clearCanvasCaveat:" Acest lucru va duce la pierderea progresului ",trackedToSentry:"Eroarea cu identificatorul {{eventId}} a fost urmărită în sistemul nostru.",openIssueMessage:"Am luat măsuri de precauție pentru a nu include informații despre scenă în eroare. Dacă scena nu este privată, oferă-ne mai multe informații în <button>monitorul nostru pentru erori</button>. Include informațiile de mai jos copiindu-le și lipindu-le în tichetul cu problemă de pe GitHub.",sceneContent:"Conținutul scenei:"},kYe={desc_intro:"Poți invita alte persoane pentru a colabora la scena actuală.",desc_privacy:"Nu te îngrijora. Sesiunea utilizează criptarea integrală, astfel încât orice desenezi va rămâne privat. Nici măcar serverul nostru nu va putea vedea pe ce ai lucrat.",button_startSession:"Pornire sesiune",button_stopSession:"Oprire sesiune",desc_inProgressIntro:"Sesiunea de colaborare în direct este în curs de desfășurare.",desc_shareLink:"Distribuie acest URL persoanelor cu care dorești să colaborezi:",desc_exitSession:"Oprirea sesiunii te va deconecta de la sală, însă vei putea lucra în continuare, pe plan local, cu scena. Reține că această opțiune nu va afecta alte persoane, iar acestea vor putea să colaboreze în continuare pe versiunea lor.",shareTitle:"Alătură-te unei sesiuni de colaborare în direct pe Excalidraw"},FYe={title:"Eroare"},xYe={disk_title:"Salvare pe disc",disk_details:"Exportă datele scenei pe un fișier din care poți importa mai târziu.",disk_button:"Salvare în fișier",link_title:"URL partajabil",link_details:"Exportă ca URL doar în citire.",link_button:"Exportare în URL",excalidrawplus_description:"Salvează scena în spațiul de lucru Excalidraw+.",excalidrawplus_button:"Exportare",excalidrawplus_exportError:"Excalidraw+ nu a putut fi exportat în acest moment..."},SYe={blog:"Citește blogul nostru",click:"clic",deepSelect:"Selectare de adâncime",deepBoxSelect:"Selectare de adâncime în casetă și prevenire glisare",curvedArrow:"Săgeată curbată",curvedLine:"Linie curbată",documentation:"Documentație",doubleClick:"dublu clic",drag:"glisare",editor:"Editor",editLineArrowPoints:"Editare puncte de săgeată/rând",editText:"Editare text/adăugare etichetă",github:"Ai întâmpinat o problemă? Trimite un raport",howto:"Urmărește ghidurile noastre",or:"sau",preventBinding:"Împiedică legarea săgeții",tools:"Instrumente",shortcuts:"Comenzi rapide de la tastatură",textFinish:"Finalizează editarea (editor de text)",textNewLine:"Adaugă o linie nouă (editor de text)",title:"Ajutor",view:"Vizualizare",zoomToFit:"Transfocare pentru a cuprinde totul",zoomToSelection:"Transfocare la selecție",toggleElementLock:"Blocare/deblocare selecție",movePageUpDown:"Deplasare pagină sus/jos",movePageLeftRight:"Deplasare pagină stânga/dreapta"},LYe={title:"Ștergere pânză"},RYe={title:"Publicare bibliotecă",itemName:"Denumirea elementului",authorName:"Numele autorului",githubUsername:"Numele de utilizator GitHub",twitterUsername:"Numele de utilizator Twitter",libraryName:"Denumirea bibliotecii",libraryDesc:"Descrierea bibliotecii",website:"Pagină de internet",placeholder:{authorName:"Numele sau numele tău de utilizator",libraryName:"Numele bibliotecii tale",libraryDesc:"Descrierea bibliotecii tale pentru a ajuta oamenii să înțeleagă utilizarea acesteia",githubHandle:"Numele de utilizator GitHub (opțional), pentru a putea edita biblioteca odată ce este trimisă spre revizuire",twitterHandle:"Numele de utilizator Twitter (opțional), pentru a indica sursa la promovarea pe Twitter",website:"Trimitere către pagina ta personală de internet sau altundeva (opțional)"},errors:{required:"Obligatoriu",website:"Introdu un URL valid"},noteDescription:"Trimite-ți biblioteca pentru a fi inclusă în <link>depozitul de biblioteci publice</link> în vederea utilizării de către alte persoane în desenele lor.",noteGuidelines:"Biblioteca trebuie aprobată manual mai întâi. Citește <link>orientările</link> înainte de trimitere. Vei avea nevoie de un cont GitHub pentru a comunica și efectua modificări, dacă este cazul, însă nu este strict necesar.",noteLicense:"Prin trimiterea bibliotecii, ești de acord că aceasta va fi publicată sub <link>Licența MIT, </link>care, pe scurt, înseamnă că oricine o poate folosi fără restricții.",noteItems:"Fiecare element din bibliotecă trebuie să aibă propriul nume astfel încât să fie filtrabil. Următoarele elemente din bibliotecă vor fi incluse:",atleastOneLibItem:"Selectează cel puțin un element din bibliotecă pentru a începe",republishWarning:"Observație: unele dintre elementele selectate sunt marcate ca fiind deja publicate/trimise. Ar trebui să retrimiți elemente numai atunci când actualizezi o trimitere sau o bibliotecă existentă."},NYe={title:"Bibliotecă trimisă",content:"Îți mulțumim, {{authorName}}. Biblioteca a fost trimisă spre revizuire. Poți urmări starea <link>aici</link>"},GYe={resetLibrary:"Resetare bibliotecă",removeItemsFromLib:"Elimină elementele selectate din bibliotecă"},UYe={header:"Exportare imagine",label:{withBackground:"Fundal",onlySelected:"Numai selecția",darkMode:"Mod întunecat",embedScene:"Încorporare scenă",scale:"Scală",padding:"Spațiere"},tooltip:{embedScene:`Datele scenei vor fi salvate în fișierul PNG/SVG exportat, astfel că scena va putea fi restaurată din acesta.
Va crește dimensiunea fișierului exportat.`},title:{exportToPng:"Exportare ca PNG",exportToSvg:"Exportare ca SVG",copyPngToClipboard:"Copiere PNG în memoria temporară"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Copiere în memoria temporară"}},MYe={tooltip:"Desenele tale sunt criptate integral, astfel că serverele Excalidraw nu le vor vedea niciodată.",link:"Articol de blog pe criptarea integrală din Excalidraw"},TYe={angle:"Unghi",element:"Element",elements:"Elemente",height:"Înălțime",scene:"Scenă",selected:"Selectate",storage:"Stocare",title:"Statistici pentru pasionați",total:"Total",version:"Versiune",versionCopy:"Clic pentru copiere",versionNotAvailable:"Versiune indisponibilă",width:"Lățime"},YYe={addedToLibrary:"Adăugat în bibliotecă",copyStyles:"Stiluri copiate.",copyToClipboard:"Copiat în memoria temporară.",copyToClipboardAsPng:`S-a copiat {{exportSelection}} în memoria temporară sub formă de PNG
({{exportColorScheme}})`,fileSaved:"Fișier salvat.",fileSavedToFilename:"Salvat în {filename}",canvas:"pânza",selection:"selecția",pasteAsSingleElement:`Folosește {{shortcut}} pentru a insera ca un singur element
sau insera într-un editor de text existent`,unableToEmbed:"Încorporarea acestui URL nu este permisă momentan. Deschideți un tichet cu probleme pe GitHub pentru a solicita adăugarea acestui URL în lista albă",unrecognizedLinkFormat:"URL-ul pe care l-ai încorporat nu coincide cu formatul așteptat. Încearcă să lipești șirul „de încorporat” furnizat de pagina sursă"},HYe={transparent:"Transparent",black:"Negru",white:"Alb",red:"Roșu",pink:"Roz",grape:"Struguriu",violet:"Violet",gray:"Gri",blue:"Albastru",cyan:"Cyan",teal:"Cyan-verde",green:"Verde",yellow:"Galben",orange:"Portocaliu",bronze:"Bronz"},KYe={app:{center_heading:"Toate datele tale sunt salvate local în navigatorul tău.",center_heading_plus:"Ai vrut să mergi în schimb la Excalidraw+?",menuHint:"Exportare, preferințe, limbi, ..."},defaults:{menuHint:"Exportare, preferințe și mai multe...",center_heading:"Diagrame. Făcute. Simple.",toolbarHint:"Alege un instrument și începe să desenezi!",helpHint:"Comenzi rapide și ajutor"}},JYe={mostUsedCustomColors:"Cele mai utilizate culori personalizate",colors:"Culori",shades:"Nuanțe",hexCode:"Cod hexa",noShades:"Nu este disponibilă nicio nuanță pentru această culoare"},OYe={action:{exportToImage:{title:"Exportare ca imagine",button:"Exportare ca imagine",description:"Exportă datele scenei ca fișier din care poți importa mai târziu."},saveToDisk:{title:"Salvare pe disc",button:"Salvare pe disc",description:"Exportă datele scenei pe un fișier din care poți importa mai târziu."},excalidrawPlus:{title:"Excalidraw+",button:"Exportare în Excalidraw+",description:"Salvează scena în spațiul de lucru Excalidraw+."}},modal:{loadFromFile:{title:"Încărcare din fișier",button:"Încărcare din fișier",description:"Încărcarea dintr-un fișier va <bold>înlocui conținutul existent</bold>.<br></br>Poți face mai întâi o copie de rezervă a desenului folosind una dintre opțiunile de mai jos."},shareableLink:{title:"Încărcare din lnk",button:"Înlocuiește conținutul meu",description:"Încărcarea unui desen extern va <bold>înlocui conținutul existent</bold>.<br></br>Poți face mai întâi o copie de rezervă a desenului folosind una dintre opțiunile de mai jos."}}},PYe={title:"Mermaid la Excalidraw",button:"Introducere",description:"În prezent, numai <flowchartLink>Organigramele</flowchartLink>, <sequenceLink>Diagramele de secvență</sequenceLink> și <classLink>Diagramele de clasă</classLink> sunt acceptate. Celelalte tipuri vor fi redate ca imagine în Excalidraw.",syntax:"Sintaxă Mermaid",preview:"Previzualizare"},rCr={labels:hYe,library:QYe,buttons:pYe,alerts:fYe,errors:mYe,toolBar:DYe,headings:yYe,hints:wYe,canvasError:bYe,errorSplash:vYe,roomDialog:kYe,errorDialog:FYe,exportDialog:xYe,helpDialog:SYe,clearCanvasDialog:LYe,publishDialog:RYe,publishSuccessDialog:NYe,confirmDialog:GYe,imageExportDialog:UYe,encrypted:MYe,stats:TYe,toast:YYe,colors:HYe,welcomeScreen:KYe,colorPicker:JYe,overwriteConfirm:OYe,mermaid:PYe}});var pHe={};Dt(pHe,{alerts:()=>VYe,buttons:()=>ZYe,canvasError:()=>eHe,clearCanvasDialog:()=>nHe,colorPicker:()=>IHe,colors:()=>EHe,confirmDialog:()=>lHe,default:()=>iCr,encrypted:()=>cHe,errorDialog:()=>iHe,errorSplash:()=>tHe,errors:()=>jYe,exportDialog:()=>uHe,headings:()=>$Ye,helpDialog:()=>aHe,hints:()=>AHe,imageExportDialog:()=>gHe,labels:()=>qYe,library:()=>zYe,mermaid:()=>QHe,overwriteConfirm:()=>hHe,publishDialog:()=>oHe,publishSuccessDialog:()=>sHe,roomDialog:()=>rHe,stats:()=>CHe,toast:()=>BHe,toolBar:()=>XYe,welcomeScreen:()=>dHe});var qYe,zYe,ZYe,VYe,jYe,XYe,$Ye,AHe,eHe,tHe,rHe,iHe,uHe,aHe,nHe,oHe,sHe,lHe,gHe,cHe,CHe,BHe,EHe,dHe,IHe,hHe,QHe,iCr;var fHe=_(()=>{zt();qYe={paste:"Вставить",pasteAsPlaintext:"Вставить как обычный текст",pasteCharts:"Вставить диаграммы",selectAll:"Выбрать всё",multiSelect:"Добавить элемент в выделенный фрагмент",moveCanvas:"Переместить холст",cut:"Вырезать",copy:"Копировать",copyAsPng:"Скопировать в буфер обмена как PNG",copyAsSvg:"Скопировать в буфер обмена как SVG",copyText:"Скопировать в буфер обмена как текст",copySource:"Копировать источник в буфер обмена",convertToCode:"Преобразовать в код",bringForward:"Переместить вперед",sendToBack:"На задний план",bringToFront:"На передний план",sendBackward:"Переместить назад",delete:"Удалить",copyStyles:"Скопировать стили",pasteStyles:"Вставить стили",stroke:"Обводка",background:"Фон",fill:"Заливка",strokeWidth:"Толщина штриха",strokeStyle:"Стиль обводки",strokeStyle_solid:"Сплошная",strokeStyle_dashed:"Пунктирная",strokeStyle_dotted:"Точечная",sloppiness:"Стиль обводки",opacity:"Непрозрачность",textAlign:"Выравнивание текста",edges:"Края",sharp:"Острые",round:"Скругленные",arrowheads:"Стрелка",arrowhead_none:"Нет",arrowhead_arrow:"Cтрелка",arrowhead_bar:"Черта",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Треугольник",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Размер шрифта",fontFamily:"Семейство шрифтов",addWatermark:"Добавить «Создано в Excalidraw»",handDrawn:"От руки",normal:"Обычный",code:"Код",small:"Малый",medium:"Средний",large:"Большой",veryLarge:"Очень большой",solid:"Однотонная",hachure:"Штрихованная",zigzag:"Зигзаг",crossHatch:"Перекрестная",thin:"Тонкая",bold:"Жирная",left:"Слева",center:"Центр",right:"Справа",extraBold:"Очень жирная",architect:"Архитектор",artist:"Художник",cartoonist:"Карикатурист",fileTitle:"Имя файла",colorPicker:"Выбор цвета",canvasColors:"Используется на холсте",canvasBackground:"Фон холста",drawingCanvas:"Полотно",layers:"Слои",actions:"Действия",language:"Язык",liveCollaboration:"Онлайн взаимодействие...",duplicateSelection:"Дубликат",untitled:"Безымянный",name:"Имя",yourName:"Ваше имя",madeWithExcalidraw:"Сделано в Excalidraw",group:"Сгруппировать выделение",ungroup:"Разделить выделение",collaborators:"Участники",showGrid:"Показать сетку",addToLibrary:"Добавить в библиотеку",removeFromLibrary:"Удалить из библиотеки",libraryLoadingMessage:"Загрузка библиотеки…",libraries:"Просмотреть библиотеки",loadingScene:"Загрузка сцены…",align:"Выровнять",alignTop:"Выровнять по верхнему краю",alignBottom:"Выровнять по нижнему краю",alignLeft:"Выровнять по левому краю",alignRight:"Выровнять по правому краю",centerVertically:"Центрировать по вертикали",centerHorizontally:"Центрировать по горизонтали",distributeHorizontally:"Распределить по горизонтали",distributeVertically:"Распределить по вертикали",flipHorizontal:"Переворот по горизонтали",flipVertical:"Переворот по вертикали",viewMode:"Вид",share:"Поделиться",showStroke:"Показать выбор цвета обводки",showBackground:"Показать выбор цвета фона",toggleTheme:"Переключить тему",personalLib:"Личная библиотека",excalidrawLib:"Библиотека Excalidraw",decreaseFontSize:"Уменьшить шрифт",increaseFontSize:"Увеличить шрифт",unbindText:"Отвязать текст",bindText:"Привязать текст к контейнеру",createContainerFromText:"Поместить текст в контейнер",link:{edit:"Редактировать ссылку",editEmbed:"",create:"Создать ссылку",createEmbed:"",label:"Ссылка",labelEmbed:"",empty:""},lineEditor:{edit:"Редактирование строки",exit:"Выход из редактора строки"},elementLock:{lock:"Блокировать",unlock:"Разблокировать",lockAll:"Заблокировать все",unlockAll:"Разблокировать все"},statusPublished:"Опубликовано",sidebarLock:"Держать боковую панель открытой",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"Взять образец цвета с холста",textToDiagram:"Текст в диаграмму",prompt:""},zYe={noItems:"Пока ничего не добавлено...",hint_emptyLibrary:"Выберите объект на холсте, чтобы добавить его сюда, или установите библиотеку из публичного репозитория ниже.",hint_emptyPrivateLibrary:"Выберите объект на холсте, чтобы добавить его сюда."},ZYe={clearReset:"Очистить холст и сбросить цвет фона",exportJSON:"Сохранить в",exportImage:"Экспортировать изображение...",export:"Сохранить как...",copyToClipboard:"Скопировать в буфер обмена",save:"Сохранить в текущий файл",saveAs:"Сохранить как",load:"Открыть",getShareableLink:"Получить доступ по ссылке",close:"Закрыть",selectLanguage:"Выбрать язык",scrollBackToContent:"Вернуться к содержимому",zoomIn:"Увеличить",zoomOut:"Уменьшить",resetZoom:"Сбросить масштаб",menu:"Меню",done:"Готово",edit:"Изменить",undo:"Шаг назад",redo:"Шаг вперед",resetLibrary:"Сброс библиотеки",createNewRoom:"Создать новую комнату",fullScreen:"Полный экран",darkMode:"Темная тема",lightMode:"Светлая тема",zenMode:"Режим Дзен",objectsSnapMode:"Привязка к объектам",exitZenMode:"Выключить режим концентрации внимания",cancel:"Отменить",clear:"Очистить",remove:"Удалить",embed:"",publishLibrary:"Опубликовать",submit:"Отправить",confirm:"Подтвердить",embeddableInteractionButton:""},VYe={clearReset:"Это очистит весь холст. Вы уверены?",couldNotCreateShareableLink:"Не удалось создать общедоступную ссылку.",couldNotCreateShareableLinkTooBig:"Нельзя создать ссылку, чтобы поделиться. Сцена слишком большая",couldNotLoadInvalidFile:"Не удалось загрузить недопустимый файл",importBackendFailed:"Не удалось импортировать из бэкэнда.",cannotExportEmptyCanvas:"Не может экспортировать пустой холст.",couldNotCopyToClipboard:"Не удалось скопировать в буфер обмена.",decryptFailed:"Не удалось расшифровать данные.",uploadedSecurly:"Загружаемые данные защищена сквозным шифрованием, что означает, что сервер Excalidraw и третьи стороны не могут прочитать содержимое.",loadSceneOverridePrompt:"Загрузка рисунка приведёт к замене имеющегося содержимого. Вы хотите продолжить?",collabStopOverridePrompt:`Остановка сессии перезапишет ваш предыдущий, локально сохранённый рисунок. Вы уверены?
(Если вы хотите оставить ваш локальный рисунок, просто закройте вкладку браузера)`,errorAddingToLibrary:"Не удалось добавить объект в библиотеку",errorRemovingFromLibrary:"Не удалось удалить объект из библиотеки",confirmAddLibrary:"Будет добавлено {{numShapes}} фигур в вашу библиотеку. Продолжить?",imageDoesNotContainScene:"Это изображение не содержит данных сцены. Вы включили встраивание сцены во время экспорта?",cannotRestoreFromImage:"Сцена не может быть восстановлена из этого изображения",invalidSceneUrl:"Невозможно импортировать сцену с предоставленного URL. Неверный формат, или не содержит верных Excalidraw JSON данных.",resetLibrary:"Это очистит вашу библиотеку. Вы уверены?",removeItemsFromsLibrary:"Удалить {{count}} объект(ов) из библиотеки?",invalidEncryptionKey:"Ключ шифрования должен состоять из 22 символов. Одновременное редактирование отключено.",collabOfflineWarning:`Отсутствует интернет-соединение.
Ваши изменения не будут сохранены!`},jYe={unsupportedFileType:"Неподдерживаемый тип файла.",imageInsertError:"Не удалось вставить изображение. Попробуйте позже...",fileTooBig:"Очень большой файл. Максимально разрешенный размер {{maxSize}}.",svgImageInsertError:"Не удалось вставить изображение SVG. Разметка SVG выглядит недействительной.",failedToFetchImage:"Не удалось получить изображение.",invalidSVGString:"Некорректный SVG.",cannotResolveCollabServer:"Не удалось подключиться к серверу совместного редактирования. Перезагрузите страницу и повторите попытку.",importLibraryError:"Не удалось загрузить библиотеку",collabSaveFailed:"Не удалось сохранить в базу данных. Если проблема повторится, нужно будет сохранить файл локально, чтобы быть уверенным, что вы не потеряете вашу работу.",collabSaveFailed_sizeExceeded:"Не удалось сохранить в базу данных. Похоже, что холст слишком большой. Нужно сохранить файл локально, чтобы быть уверенным, что вы не потеряете вашу работу.",imageToolNotSupported:"Изображения отключены.",brave_measure_text_error:{line1:"Похоже, вы используете браузер Brave с включенной опцией <bold>Агрессивно блокировать отслеживание</bold>.",line2:"Это может привести к поломке <bold>Текстовых объектов</bold> на рисунке.",line3:"Мы настоятельно рекомендуем отключить эту настройку. Для этого нужно выполнить <link>эти шаги</link>.",line4:"Если отключение этой настройки не исправит отображение текстовых объектов, создайте <issueLink>issue</issueLink> на нашем GitHub или напишите нам в <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"",iframe:"Элементы IFrame не могут быть добавлены в библиотеку.",image:""},asyncPasteFailedOnRead:"Не удалось вставить (невозможно прочитать из системного буфера обмена).",asyncPasteFailedOnParse:"Не удалось вставить.",copyToSystemClipboardFailed:"Не удалось скопировать в буфер обмена."},XYe={selection:"Выделение области",image:"Вставить изображение",rectangle:"Прямоугольник",diamond:"Ромб",ellipse:"Эллипс",arrow:"Cтрелка",line:"Линия",freedraw:"Чертить",text:"Текст",library:"Библиотека",lock:"Сохранять выбранный инструмент активным после рисования",penMode:"Режим пера - предотвращение касания",link:"Добавить/обновить ссылку для выбранной фигуры",eraser:"Ластик",frame:"",magicframe:"",embeddable:"",laser:"Лазерная указка",hand:"Рука (перемещение холста)",extraTools:"",mermaidToExcalidraw:"Из Mermaid в Excalidraw",magicSettings:"Параметры AI"},$Ye={canvasActions:"Операции холста",selectedShapeActions:"Операции выбранной фигуры",shapes:"Фигуры"},AHe={canvasPanning:'Чтобы двигать холст, удерживайте колесо мыши или пробел во время перетаскивания, или используйте инструмент "Рука"',linearElement:"Нажмите, чтобы начать несколько точек, перетащите для одной линии",freeDraw:"Нажмите и перетаскивайте, отпустите по завершении",text:"Совет: при выбранном инструменте выделения дважды щёлкните в любом месте, чтобы добавить текст",embeddable:"",text_selected:"Дважды щелкните мышью или нажмите ENTER, чтобы редактировать текст",text_editing:"Нажмите Escape либо Ctrl или Cmd + ENTER для завершения редактирования",linearElementMulti:"Кликните на последней точке или нажмите Escape или Enter чтобы закончить",lockAngle:"Вы можете ограничить угол удерживая SHIFT",resize:`Вы можете ограничить пропорции, удерживая SHIFT во время изменения размеров,
удерживайте ALT чтобы изменить размер из центра`,resizeImage:`Вы можете свободно изменять размеры, удерживая кнопку SHIFT,
удерживайте кнопку ALT, чтобы изменять размер относительно центра`,rotate:"Вы можете ограничить углы, удерживая SHIFT во время вращения",lineEditor_info:"Удерживайте CtrlOrCmd и дважды кликните или нажмите CtrlOrCmd + Enter для редактирования точек",lineEditor_pointSelected:`Нажмите Delete для удаления точки (точек),
Ctrl+D или Cmd+D для дублирования, перетащите для перемещения`,lineEditor_nothingSelected:`Выберите точку для редактирования (удерживайте SHIFT выбора нескольких точек),
или удерживайте Alt и кликните для добавления новых точек`,placeImage:"Щелкните, чтобы разместить изображение, или нажмите и перетащите, чтобы установить его размер вручную",publishLibrary:"Опубликовать свою собственную библиотеку",bindTextToElement:"Нажмите Enter для добавления текста",deepBoxSelect:"Удерживайте Ctrl или Cmd для глубокого выделения, чтобы предотвратить перетаскивание",eraserRevert:"Удерживайте Alt, чтобы вернуть элементы, отмеченные для удаления",firefox_clipboard_write:'Эта функция может быть включена при изменении значения флага "dom.events.asyncClipboard.clipboardItem" на "true". Чтобы изменить флаги браузера в Firefox, посетите страницу "about:config".',disableSnapping:""},eHe={cannotShowPreview:"Не удается отобразить предпросмотр",canvasTooBig:"Сцена слишком большая.",canvasTooBigTip:"Совет: попробуйте сблизить элементы рисунка."},tHe={headingMain:"Возникла ошибка. Попробуйте <button>перезагрузить страницу.</button>",clearCanvasMessage:"Если перезагрузка страницы не помогла, попробуйте <button>очистить холст.</button>",clearCanvasCaveat:" Текущая работа будет утеряна ",trackedToSentry:"Ошибка с идентификатором {{eventId}} отслеживается в нашей системе.",openIssueMessage:"Для безопасности информация о вашей сцене не включена в ошибку. Если в сцене нет ничего конфиденциального, пожалуйста следуйте нашим <button>баг трекере.</button> Пожалуйста, приложите информацию ниже, скопировав и вставив её, в issue GitHub.",sceneContent:"Содержание сцены:"},rHe={desc_intro:"Вы можете пригласить людей в текущую сцену для совместной работы.",desc_privacy:"Не беспокойтесь — во время сеанса используется сквозное шифрование. Всё, что вы нарисуете, останется конфиденциальным и не будет доступно даже нашему серверу.",button_startSession:"Начать сеанс",button_stopSession:"Завершить сеанс",desc_inProgressIntro:"Сеанс совместной работы запущен.",desc_shareLink:"Поделитесь этой ссылкой со всеми участниками:",desc_exitSession:"Завершив сеанс, вы выйдете из комнаты, но сможете продолжить работать с документом локально. Это не повлияет на работу других пользователей — они смогут продолжить совместную работу с их версией документа.",shareTitle:"Присоединиться к активной совместной сессии на Excalidraw"},iHe={title:"Ошибка"},uHe={disk_title:"Сохранить на диск",disk_details:"Экспортировать данные сцены в файл, из которого можно импортировать позже.",disk_button:"Сохранить в файл",link_title:"Поделитесь ссылкой",link_details:"Экспорт ссылки только для чтения.",link_button:"Экспорт в ссылку",excalidrawplus_description:"Сохраните сцену в ваше рабочее пространство Excalidraw+.",excalidrawplus_button:"Экспорт",excalidrawplus_exportError:"Не удалось экспортировать в Excalidraw+ на данный момент..."},aHe={blog:"Прочитайте наш блог",click:"нажать",deepSelect:"Глубокое выделение",deepBoxSelect:"Глубокое выделение рамкой, и предотвращение перетаскивания",curvedArrow:"Изогнутая стрелка",curvedLine:"Изогнутая линия",documentation:"Документация",doubleClick:"двойной клик",drag:"перетащить",editor:"Редактор",editLineArrowPoints:"Редактировать концы линий/стрелок",editText:"Редактировать текст / добавить метку",github:"Нашли проблему? Отправьте",howto:"Следуйте нашим инструкциям",or:"или",preventBinding:"Предотвращать привязку стрелок",tools:"Инструменты",shortcuts:"Горячие клавиши",textFinish:"Закончить редактирование (текстовый редактор)",textNewLine:"Добавить новую строку (текстовый редактор)",title:"Помощь",view:"Просмотр",zoomToFit:"Отмастштабировать, чтобы поместились все элементы",zoomToSelection:"Увеличить до выделенного",toggleElementLock:"Заблокировать/разблокировать выделение",movePageUpDown:"Сдвинуть страницу вверх/вниз",movePageLeftRight:"Сдвинуть страницу вправо/влево"},nHe={title:"Очистить холст"},oHe={title:"Опубликовать библиотеку",itemName:"Название объекта",authorName:"Имя автора",githubUsername:"Имя пользователя GitHub",twitterUsername:"Имя пользователя в Twitter",libraryName:"Название библиотеки",libraryDesc:"Описание библиотеки",website:"Веб-сайт",placeholder:{authorName:"Ваше имя или имя пользователя",libraryName:"Название вашей библиотеки",libraryDesc:"Описание вашей библиотеки, которое поможет людям понять её назначение",githubHandle:"Имя пользователя GitHub (необязательно), чтобы вы смогли редактировать библиотеку после её отправки на проверку",twitterHandle:"Имя пользователя в Twitter (необязательно), чтобы мы знали, кого упомянуть при продвижении в Twitter",website:"Ссылка на ваш личный или какой-то другой сайт (необязательно)"},errors:{required:"Обязательно",website:"Введите допустимый URL-адрес"},noteDescription:"Отправить вашу библиотеку для включения в <link>хранилище публичных библиотек</link>, чтобы другие люди могли использовать объекты из вашей библиотеки в своих рисунках.",noteGuidelines:"Библиотека должна быть подтверждена вручную. Пожалуйста, прочтите <link>рекомендации</link> перед отправкой. Вам понадобится учетная запись GitHub, чтобы общаться и вносить изменения при необходимости, но это не обязательно.",noteLicense:"Выполняя отправку, вы соглашаетесь с тем, что библиотека будет опубликована под <link>лицензией MIT, </link>, что, вкратце, означает, что каждый может использовать её без ограничений.",noteItems:"Каждый объект в библиотеке должен иметь свое собственное имя, чтобы по нему можно было фильтровать. Следующие объекты библиотеки будут включены:",atleastOneLibItem:"Пожалуйста, выберите хотя бы один объект в библиотеке, чтобы начать",republishWarning:"Примечание: некоторые из выбранных элементов помечены как уже опубликованные/отправленные. Вы должны повторно отправить элементы только при обновлении существующей библиотеки или сдаче работы."},sHe={title:"Библиотека отправлена",content:"Благодарим вас, {{authorName}}. Ваша библиотека была отправлена на проверку. Вы можете отслеживать статус<link>здесь</link>"},lHe={resetLibrary:"Сброс библиотеки",removeItemsFromLib:"Удалить выбранные объекты из библиотеки"},gHe={header:"Экспортировать изображение",label:{withBackground:"Фон",onlySelected:"Только выделенное",darkMode:"Темная тема",embedScene:"Встроить сцену",scale:"Масштаб",padding:"Отступ"},tooltip:{embedScene:"Сцена будет сохранена в PNG/SVG файл так, чтобы всю сцену можно будет восстановить из этого файла. Это увеличит размер файла."},title:{exportToPng:"Экспорт в PNG",exportToSvg:"Экспорт в SVG",copyPngToClipboard:"Скопировать PNG в буфер обмена"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Скопировать в буфер обмена"}},cHe={tooltip:"Ваши данные защищены сквозным (End-to-end) шифрованием. Серверы Excalidraw никогда не получат доступ к ним.",link:"Запись блога о сквозном шифровании в Excalidraw"},CHe={angle:"Угол",element:"Элемент",elements:"Элементы",height:"Высота",scene:"Сцены",selected:"Выбран",storage:"Хранилище",title:"Статистика для ботаников",total:"Всего",version:"Версия",versionCopy:"Копировать",versionNotAvailable:"Версия не доступна",width:"Ширина"},BHe={addedToLibrary:"Добавлено в библиотеку",copyStyles:"Скопированы стили.",copyToClipboard:"Скопировано в буфер обмена.",copyToClipboardAsPng:"{{exportSelection}} скопировано как PNG ({{exportColorScheme}})",fileSaved:"Файл сохранён.",fileSavedToFilename:"Сохранено в {filename}",canvas:"холст",selection:"выделение",pasteAsSingleElement:`Используйте {{shortcut}}, чтобы вставить один объект,
или вставьте в существующий текстовый редактор`,unableToEmbed:"",unrecognizedLinkFormat:""},EHe={transparent:"Прозрачный",black:"Чёрный",white:"Белый",red:"Красный",pink:"Розовый",grape:"Виноградный",violet:"Фиолетовый",gray:"Серый",blue:"Синий",cyan:"Голубой",teal:"Бирюзовый",green:"Зелёный",yellow:"Жёлтый",orange:"Оранжевый",bronze:"Бронзовый"},dHe={app:{center_heading:"Все ваши данные сохраняются локально в вашем браузере.",center_heading_plus:"Хотите перейти на Excalidraw+?",menuHint:"Экспорт, настройки, языки, ..."},defaults:{menuHint:"Экспорт, настройки и другое...",center_heading:"Диаграммы. Просто.",toolbarHint:"Выберите инструмент и начните рисовать!",helpHint:"Сочетания клавиш и помощь"}},IHe={mostUsedCustomColors:"Часто используемые пользовательские цвета",colors:"Цвета",shades:"Оттенки",hexCode:"Шестнадцатеричный код",noShades:"Нет доступных оттенков для этого цвета"},hHe={action:{exportToImage:{title:"Экспортировать как изображение",button:"Экспортировать как изображение",description:""},saveToDisk:{title:"Сохранить на диск",button:"Сохранить на диск",description:""},excalidrawPlus:{title:"Excalidraw+",button:"Экспорт в Excalidraw+",description:""}},modal:{loadFromFile:{title:"Загрузить из файла",button:"Загрузить из файла",description:""},shareableLink:{title:"Загрузить по ссылке",button:"",description:""}}},QHe={title:"Из Mermaid в Excalidraw",button:"Вставить",description:"",syntax:"Синтаксис Mermaid",preview:"Предпросмотр"},iCr={labels:qYe,library:zYe,buttons:ZYe,alerts:VYe,errors:jYe,toolBar:XYe,headings:$Ye,hints:AHe,canvasError:eHe,errorSplash:tHe,roomDialog:rHe,errorDialog:iHe,exportDialog:uHe,helpDialog:aHe,clearCanvasDialog:nHe,publishDialog:oHe,publishSuccessDialog:sHe,confirmDialog:lHe,imageExportDialog:gHe,encrypted:cHe,stats:CHe,toast:BHe,colors:EHe,welcomeScreen:dHe,colorPicker:IHe,overwriteConfirm:hHe,mermaid:QHe}});var ZHe={};Dt(ZHe,{alerts:()=>wHe,buttons:()=>yHe,canvasError:()=>xHe,clearCanvasDialog:()=>UHe,colorPicker:()=>WHe,colors:()=>PHe,confirmDialog:()=>YHe,default:()=>uCr,encrypted:()=>KHe,errorDialog:()=>RHe,errorSplash:()=>SHe,errors:()=>bHe,exportDialog:()=>NHe,headings:()=>kHe,helpDialog:()=>GHe,hints:()=>FHe,imageExportDialog:()=>HHe,labels:()=>mHe,library:()=>DHe,mermaid:()=>zHe,overwriteConfirm:()=>qHe,publishDialog:()=>MHe,publishSuccessDialog:()=>THe,roomDialog:()=>LHe,stats:()=>JHe,toast:()=>OHe,toolBar:()=>vHe,welcomeScreen:()=>_He});var mHe,DHe,yHe,wHe,bHe,vHe,kHe,FHe,xHe,SHe,LHe,RHe,NHe,GHe,UHe,MHe,THe,YHe,HHe,KHe,JHe,OHe,PHe,_He,WHe,qHe,zHe,uCr;var VHe=_(()=>{zt();mHe={paste:"අලවන්න",pasteAsPlaintext:"",pasteCharts:"ප්‍රස්ථාරය",selectAll:"සියල්ලම",multiSelect:"තෝරා ගැනීමට අංගය එකතු කරන්න",moveCanvas:"කැන්වසය චලනය කරන්න",cut:"කපන්න",copy:"පිටපත් කරන්න",copyAsPng:"PNG ලෙස පිටපත් කරන්න",copyAsSvg:"SVG ලෙස පිටපත් කරන්න",copyText:"",copySource:"",convertToCode:"",bringForward:"ඉදිරියට ගෙන්න",sendToBack:"පසුපසටම ගෙනියන්න",bringToFront:"ඉදිරියටම ගෙන්න",sendBackward:"පසුපසට ගෙනියන්න",delete:"මකන්න",copyStyles:"",pasteStyles:"",stroke:"",background:"",fill:"",strokeWidth:"",strokeStyle:"",strokeStyle_solid:"",strokeStyle_dashed:"",strokeStyle_dotted:"",sloppiness:"",opacity:"",textAlign:"",edges:"",sharp:"",round:"",arrowheads:"",arrowhead_none:"",arrowhead_arrow:"",arrowhead_bar:"",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"",fontFamily:"",addWatermark:"",handDrawn:"",normal:"",code:"",small:"",medium:"",large:"",veryLarge:"ඉතා විශාල",solid:"විශාල",hachure:"මධ්‍යම",zigzag:"",crossHatch:"",thin:"කෙට්ටු",bold:"තද",left:"වම",center:"මැද",right:"දකුණ",extraBold:"ඉතා තද",architect:"වාස්තුවේදීයා",artist:"කලාකරු",cartoonist:"සැකිලිරූකරු",fileTitle:"ගොනු නාමය",colorPicker:"පාට තෝරකය",canvasColors:"",canvasBackground:"කැන්වස පසුබිම",drawingCanvas:"චිත්‍රක කැන්වසය",layers:"ලේයර",actions:"ක්‍රියාකාරකම",language:"භාෂාව ",liveCollaboration:"",duplicateSelection:"",untitled:"",name:"නම",yourName:"",madeWithExcalidraw:"",group:"",ungroup:"",collaborators:"",showGrid:"",addToLibrary:"",removeFromLibrary:"",libraryLoadingMessage:"",libraries:"",loadingScene:"",align:"",alignTop:"",alignBottom:"",alignLeft:"",alignRight:"",centerVertically:"",centerHorizontally:"",distributeHorizontally:"",distributeVertically:"",flipHorizontal:"",flipVertical:"",viewMode:"",share:"",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},DHe={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},yHe={clearReset:"",exportJSON:"",exportImage:"",export:"",copyToClipboard:"",save:"",saveAs:"",load:"",getShareableLink:"",close:"",selectLanguage:"",scrollBackToContent:"",zoomIn:"",zoomOut:"",resetZoom:"",menu:"",done:"",edit:"",undo:"",redo:"",resetLibrary:"",createNewRoom:"",fullScreen:"",darkMode:"",lightMode:"",zenMode:"",objectsSnapMode:"",exitZenMode:"",cancel:"",clear:"",remove:"",embed:"",publishLibrary:"",submit:"",confirm:"",embeddableInteractionButton:""},wHe={clearReset:"",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},bHe={unsupportedFileType:"",imageInsertError:"",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},vHe={selection:"",image:"",rectangle:"",diamond:"",ellipse:"",arrow:"",line:"",freedraw:"",text:"",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},kHe={canvasActions:"",selectedShapeActions:"",shapes:""},FHe={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},xHe={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},SHe={headingMain:"",clearCanvasMessage:"",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},LHe={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},RHe={title:""},NHe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},GHe={blog:"",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},UHe={title:""},MHe={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},THe={title:"",content:""},YHe={resetLibrary:"",removeItemsFromLib:""},HHe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},KHe={tooltip:"",link:""},JHe={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},OHe={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},PHe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},_He={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},WHe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},qHe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},zHe={title:"",button:"",description:"",syntax:"",preview:""},uCr={labels:mHe,library:DHe,buttons:yHe,alerts:wHe,errors:bHe,toolBar:vHe,headings:kHe,hints:FHe,canvasError:xHe,errorSplash:SHe,roomDialog:LHe,errorDialog:RHe,exportDialog:NHe,helpDialog:GHe,clearCanvasDialog:UHe,publishDialog:MHe,publishSuccessDialog:THe,confirmDialog:YHe,imageExportDialog:HHe,encrypted:KHe,stats:JHe,toast:OHe,colors:PHe,welcomeScreen:_He,colorPicker:WHe,overwriteConfirm:qHe,mermaid:zHe}});var yKe={};Dt(yKe,{alerts:()=>AKe,buttons:()=>$He,canvasError:()=>uKe,clearCanvasDialog:()=>gKe,colorPicker:()=>fKe,colors:()=>QKe,confirmDialog:()=>BKe,default:()=>aCr,encrypted:()=>dKe,errorDialog:()=>oKe,errorSplash:()=>aKe,errors:()=>eKe,exportDialog:()=>sKe,headings:()=>rKe,helpDialog:()=>lKe,hints:()=>iKe,imageExportDialog:()=>EKe,labels:()=>jHe,library:()=>XHe,mermaid:()=>DKe,overwriteConfirm:()=>mKe,publishDialog:()=>cKe,publishSuccessDialog:()=>CKe,roomDialog:()=>nKe,stats:()=>IKe,toast:()=>hKe,toolBar:()=>tKe,welcomeScreen:()=>pKe});var jHe,XHe,$He,AKe,eKe,tKe,rKe,iKe,uKe,aKe,nKe,oKe,sKe,lKe,gKe,cKe,CKe,BKe,EKe,dKe,IKe,hKe,QKe,pKe,fKe,mKe,DKe,aCr;var wKe=_(()=>{zt();jHe={paste:"Vložiť",pasteAsPlaintext:"Vložiť ako obyčajný text",pasteCharts:"Vložiť grafy",selectAll:"Vybrať všetko",multiSelect:"Pridať prvok do výberu",moveCanvas:"Pohyb plátna",cut:"Vystrihnúť",copy:"Kopírovať",copyAsPng:"Kopírovať do schránky ako PNG",copyAsSvg:"Kopírovať do schránky ako SVG",copyText:"Kopírovať do schránky ako text",copySource:"Kopírovať kód do schránky",convertToCode:"Konvertovať na kód",bringForward:"Presunúť o úroveň dopredu",sendToBack:"Presunúť dozadu",bringToFront:"Presunúť dopredu",sendBackward:"Presunúť o úroveň dozadu",delete:"Vymazať",copyStyles:"Kopírovať štýly",pasteStyles:"Vložiť štýly",stroke:"Obrys",background:"Pozadie",fill:"Výplň",strokeWidth:"Hrúbka obrysu",strokeStyle:"Štýl obrysu",strokeStyle_solid:"Plný",strokeStyle_dashed:"Čiarkovaný",strokeStyle_dotted:"Bodkovaný",sloppiness:"Štylizácia",opacity:"Priehľadnosť",textAlign:"Zarovnanie textu",edges:"Okraje",sharp:"Ostré",round:"Zaokrúhlené",arrowheads:"Zakončenie šípky",arrowhead_none:"Žiadne",arrowhead_arrow:"Šípka",arrowhead_bar:"Čiara",arrowhead_circle:"Kruh",arrowhead_circle_outline:"Kruh (obrys)",arrowhead_triangle:"Trojuholník",arrowhead_triangle_outline:"Trojuholník (obrys)",arrowhead_diamond:"Diamant",arrowhead_diamond_outline:"Diamant (obrys)",fontSize:"Veľkosť písma",fontFamily:"Písmo",addWatermark:'Pridať "Vytvorené s Excalidraw"',handDrawn:"Ručne písané",normal:"Normálne",code:"Kód",small:"Malé",medium:"Stredné",large:"Veľké",veryLarge:"Veľmi veľké",solid:"Plná",hachure:"Šrafovaná",zigzag:"Cik-cak",crossHatch:"Mriežkovaná",thin:"Tenká",bold:"Hrubá",left:"Doľava",center:"Na stred",right:"Doprava",extraBold:"Veľmi hrubá",architect:"Architekt",artist:"Umelec",cartoonist:"Ilustrátor",fileTitle:"Názov súboru",colorPicker:"Výber farby",canvasColors:"Použité na plátne",canvasBackground:"Pozadie plátna",drawingCanvas:"Kresliace plátno",layers:"Vrstvy",actions:"Akcie",language:"Jazyk",liveCollaboration:"Živá spolupráca...",duplicateSelection:"Duplikovať",untitled:"Bez názvu",name:"Meno",yourName:"Vaše meno",madeWithExcalidraw:"Vytvorené s Excalidraw",group:"Zoskupiť",ungroup:"Zrušiť zoskupenie",collaborators:"Spolupracovníci",showGrid:"Zobraziť mriežku",addToLibrary:"Pridať do knižnice",removeFromLibrary:"Odstrániť z knižnice",libraryLoadingMessage:"Načítavanie knižnice…",libraries:"Prehliadať knižnice",loadingScene:"Načítavanie scény…",align:"Zarovnanie",alignTop:"Zarovnať nahor",alignBottom:"Zarovnať nadol",alignLeft:"Zarovnať doľava",alignRight:"Zarovnať doprava",centerVertically:"Zarovnať zvislo na stred",centerHorizontally:"Zarovnať vodorovne na stred",distributeHorizontally:"Rozmiestniť vodorovne",distributeVertically:"Rozmiestniť zvisle",flipHorizontal:"Prevrátiť vodorovne",flipVertical:"Prevrátiť zvislo",viewMode:"Režim zobrazenia",share:"Zdieľať",showStroke:"Zobraziť výber farby pre obrys",showBackground:"Zobraziť výber farby pre pozadie",toggleTheme:"Prepnúť tému",personalLib:"Moja knižnica",excalidrawLib:"Excalidraw knižnica",decreaseFontSize:"Zmenšiť veľkosť písma",increaseFontSize:"Zväčšiť veľkosť písma",unbindText:"Zrušiť previazanie textu",bindText:"Previazať text s kontajnerom",createContainerFromText:"Zabaliť text do kontajneru",link:{edit:"Upraviť odkaz",editEmbed:"Editovať a zapustiť odkaz",create:"Vytvoriť odkaz",createEmbed:"Vytvoriť a zapustiť odkaz",label:"Odkaz",labelEmbed:"Zapustiť odkaz",empty:"Nie je nastavený žiaden odkaz"},lineEditor:{edit:"Upraviť čiaru",exit:"Ukončiť editovanie čiary"},elementLock:{lock:"Zamknúť",unlock:"Odomknúť",lockAll:"Zamknúť všetko",unlockAll:"Odomknúť všetko"},statusPublished:"Zverejnené",sidebarLock:"Nechať bočný panel otvorený",selectAllElementsInFrame:"Vybrať všetky prvky v ráme",removeAllElementsFromFrame:"Odstrániť všetky prvky z rámu",eyeDropper:"Vybrať farbu z plátna",textToDiagram:"Text na diagram",prompt:"Inštrukcia"},XHe={noItems:"Zatiaľ neboli pridané žiadne položky...",hint_emptyLibrary:"Vyberte položku z plátna pre jej pridanie do knižnice alebo použite knižnicu z verejného zoznamu knižníc nižšie.",hint_emptyPrivateLibrary:"Vyberte položku z plátna pre jej pridanie do knižnice."},$He={clearReset:"Obnoviť plátno",exportJSON:"Exportovať do súboru",exportImage:"Exportovať obrázok...",export:"Uložiť do...",copyToClipboard:"Kopírovať do schránky",save:"Uložiť do aktuálneho súboru",saveAs:"Uložiť ako",load:"Otvoriť",getShareableLink:"Získať odkaz na zdieľanie",close:"Zavrieť",selectLanguage:"Zvoliť jazyk",scrollBackToContent:"Vrátiť sa späť na obsah",zoomIn:"Priblížiť",zoomOut:"Oddialiť",resetZoom:"Obnoviť priblíženie",menu:"Ponuka",done:"Hotovo",edit:"Upraviť",undo:"Späť",redo:"Znova",resetLibrary:"Obnoviť knižnicu",createNewRoom:"Vytvoriť novú miestnosť",fullScreen:"Celá obrazovka",darkMode:"Tmavý režim",lightMode:"Svetlý režim",zenMode:"Režim zen",objectsSnapMode:"Prichytiť k objektom",exitZenMode:"Zrušiť režim zen",cancel:"Zrušiť",clear:"Vymazať",remove:"Odstrániť",embed:"Prepnúť zapustenie",publishLibrary:"Uverejniť",submit:"Potvrdiť",confirm:"Potvrdiť",embeddableInteractionButton:"Kliknite pre interakciu"},AKe={clearReset:"Týmto sa vyčistí celé plátno. Ste si istí?",couldNotCreateShareableLink:"Nepodarilo sa vytvoriť odkaz na zdieľanie.",couldNotCreateShareableLinkTooBig:"Nepodarilo sa vytvoriť odkaz na zdieľanie: scéna je príliš veľká",couldNotLoadInvalidFile:"Nepodarilo sa načítať nevalidný súbor",importBackendFailed:"Nepdarilo sa importovanie zo serveru.",cannotExportEmptyCanvas:"Nie je možné exportovať prázdne plátno.",couldNotCopyToClipboard:"Kopírovanie do schránky sa nepodarilo.",decryptFailed:"Nepodarilo sa rozšifrovať údaje.",uploadedSecurly:"Nahratie je zabezpečené end-to-end šifrovaním, takže Excalidraw server a tretie strany nedokážu prečítať jeho obsah.",loadSceneOverridePrompt:"Nahratie externej kresby nahradí existujúci obsah. Prajete si pokračovať?",collabStopOverridePrompt:`Ukončenie schôdze nahradí vašu predchádzajúcu lokálne uloženú scénu. Ste si istý?
(Ak si chcete ponechať lokálnu scénu, jednoducho iba zavrite kartu prehliadača.)`,errorAddingToLibrary:"Nepodarilo sa pridať položku do knižnice",errorRemovingFromLibrary:"Nepodarilo sa odstrániť položku z knižnice",confirmAddLibrary:"Týmto sa pridá {{numShapes}} tvar(ov) do vašej knižnice. Ste si istí?",imageDoesNotContainScene:"Tento obrázok neobsahuje žiadne údaje scény. Zvolili ste možnosť zahrnúť scénu počas exportu?",cannotRestoreFromImage:"Nepodarilo sa obnoviť scénu z tohto obrázkového súboru",invalidSceneUrl:"Nepodarilo sa načítať scénu z poskytnutej URL. Je nevalidná alebo neobsahuje žiadne validné Excalidraw JSON dáta.",resetLibrary:"Týmto vyprázdnite vašu knižnicu. Ste si istý?",removeItemsFromsLibrary:"Odstrániť {{count}} položiek z knižnice?",invalidEncryptionKey:"Šifrovací kľúč musí mať 22 znakov. Živá spolupráca je vypnutá.",collabOfflineWarning:`Internetové pripojenie nie je dostupné.
Vaše zmeny nebudú uložené!`},eKe={unsupportedFileType:"Nepodporovaný typ súboru.",imageInsertError:"Nepodarilo sa vložiť obrázok. Skúste to znova neskôr...",fileTooBig:"Súbor je príliš veľký. Maximálna povolená veľkosť je {{maxSize}}.",svgImageInsertError:"Nepodarilo sa vložiť SVG obrázok. SVG formát je pravdepodobne nevalidný.",failedToFetchImage:"Načítanie obrázka zlyhalo.",invalidSVGString:"Nevalidné SVG.",cannotResolveCollabServer:"Nepodarilo sa pripojiť ku kolaboračnému serveru. Prosím obnovte stránku a skúste to znovu.",importLibraryError:"Nepodarilo sa načítať knižnicu",collabSaveFailed:"Uloženie do databázy sa nepodarilo. Ak tento problém pretrváva uložte si váš súbor lokálne aby ste nestratili vašu prácu.",collabSaveFailed_sizeExceeded:"Uloženie do databázy sa nepodarilo, pretože veľkosť plátna je príliš veľká. Uložte si váš súbor lokálne aby ste nestratili vašu prácu.",imageToolNotSupported:"Obrázky sú vypnuté.",brave_measure_text_error:{line1:"Vyzerá to, že používate prehliadač Brave so zapnutým nastavením pre <bold>agresívne blokovanie</bold>.",line2:"To môže spôsobiť nesprávne zobrazenie <bold>textových prvkov</bold> vo vašej kresbe.",line3:"Dôrazne odporúčame vypnutie toho nastavenia. Môžete tak spraviť vykonaním <link>týchto krokov</link>.",line4:"Ak vypnutie toho nastavenia nevyrieši problém so zobrazením textových prvkov, prosím ohláste <issueLink>problém</issueLink> na našom GitHub-e alebo nám napíšte na náš <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Zapustené prvky nie je možné pridať do knižnice.",iframe:"Vložené rámce IFrame nie je možné pridať do knižnice.",image:"Podpora pre pridávanie obrázkov do knižnice bude dostupná už čoskoro!"},asyncPasteFailedOnRead:"Vloženie sa nepodarilo (nebolo možné prečítať obsah schránky).",asyncPasteFailedOnParse:"Vloženie sa nepodarilo.",copyToSystemClipboardFailed:"Kopírovanie do schránky sa nepodarilo."},tKe={selection:"Výber",image:"Vložiť obrázok",rectangle:"Obdĺžnik",diamond:"Diamant",ellipse:"Elipsa",arrow:"Šípka",line:"Čiara",freedraw:"Kresliť",text:"Text",library:"Knižnica",lock:"Nechať zvolený nástroj aktívny po skončení kreslenia",penMode:"Režim pera – zabrániť dotyku",link:"Pridať/ Upraviť odkaz pre vybraný tvar",eraser:"Guma",frame:"Nástroj rám",magicframe:"Drôtený model na kód",embeddable:"Web Embed",laser:"Laserový ukazovateľ",hand:"Ruka (nástroj pre pohyb plátna)",extraTools:"Ďalšie nástroje",mermaidToExcalidraw:"Mermaid do Excalidraw",magicSettings:"AI nastavenia"},rKe={canvasActions:"Akcie plátna",selectedShapeActions:"Akcie tvarov z výberu",shapes:"Tvary"},iKe={canvasPanning:"Pre pohyb plátna podržte koliesko myši alebo medzerník počas ťahania, alebo použite nástroj ruka",linearElement:"Kliknite na vloženie viacerých bodov, potiahnite na vytvorenie jednej priamky",freeDraw:"Kliknite a ťahajte, pustite na ukončenie",text:"Tip: text môžete pridať aj dvojklikom kdekoľvek, ak je zvolený nástroj výber",embeddable:"Kliknite a ťahajte pre zapustenie webovej stránky",text_selected:"Použite dvojklik alebo stlačte Enter na editáciu textu",text_editing:"Stlačte Escape alebo CtrlOrCmd+ENTER na ukončenie editovania",linearElementMulti:"Kliknite na počiatočný bod alebo stlačte Escape alebo Enter na ukončenie",lockAngle:"Počas rotácie obmedzíte uhol podržaním SHIFT",resize:"Počas zmeny veľkosti zachováte proporcie podržaním SHIFT,\\npodržaním ALT meníte veľkosť so zachovaním stredu",resizeImage:"Podržte SHIFT pre voľnú zmenu veľkosti, podržte ALT pre zmenu veľkosti od stredu",rotate:"Počas rotácie obmedzíte uhol podržaním SHIFT",lineEditor_info:"Podržte CtrlOrCmd a kliknite dva krát alebo stlačte CtrlOrCmd + Enter pre editáciu bodov",lineEditor_pointSelected:"Stačte Delete na vymazanie bodu (bodov), CtrlOrCmd+D na duplikovanie, alebo potiahnite na presunutie",lineEditor_nothingSelected:"Zvoľte bod na upravovanie (podržte SHIFT pre zvolenie viacerých bodov) alebo podržte Alt a kliknite na pridanie nového bodu",placeImage:"Kliknite pre umiestnenie obrázka alebo kliknite a ťahajte pre zmenu jeho veľkosti",publishLibrary:"Uverejniť vašu knižnicu",bindTextToElement:"Stlačte enter na pridanie textu",deepBoxSelect:"Podržte CtrlOrCmd na výber v skupine alebo zamedzeniu poťiahnutia",eraserRevert:"Podržte Alt pre prehodenie položiek určených na vymazanie",firefox_clipboard_write:'Táto sa funkcionalita sa dá zapnúť nastavením "dom.events.asyncClipboard.clipboardItem" na "true". Pre zmenu nastavení vo Firefox-e otvorte stránku "about:config".',disableSnapping:"Podržte CtrlOrCmd pre vypnutie prichytávania"},uKe={cannotShowPreview:"Nie je možné zobraziť náhľad plátna",canvasTooBig:"Plátno je možno príliš veľké.",canvasTooBigTip:"Tip: skúste presunúť najvzdialenejšie prvky bližšie k sebe."},aKe={headingMain:"Nastala chyba. Vyskúšajte <button>obnoviť stránku.</button>",clearCanvasMessage:"Ak obnovenie stránky nepomáha, vyskúšajte <button>vyčistiť plátno.</button>",clearCanvasCaveat:" To bude mať za následok stratu práce ",trackedToSentry:"Chyba s identifikátorom {{eventId}} bola zaznamenaná v našom systéme.",openIssueMessage:"Boli sme veľmi opatrní, aby informácie vašej scény neboli v chybe zaznamenané. Ak vaša scéna nie je súkromná, prosím zvážte pokračovanie na naše <button>hlásenie chýb.</button> Prosím zahrňte informácie nižšie pomocou kopírovania a prilepenia do GitHub issue.",sceneContent:"Obsah scény:"},nKe={desc_intro:"Pozvite niekoho do svojej aktuálnej scény a pracujte spoločne.",desc_privacy:"Nemajte obavy, schôdza používa end-to-end šifrovanie, takže všetko čo nakreslíte je súkromné. Dokonca, ani náš server dedokáže prečítať, čo ste vytvorili.",button_startSession:"Začať schôdzu",button_stopSession:"Ukončiť schôdzu",desc_inProgressIntro:"Práve prebieha živá schôdza.",desc_shareLink:"Zdieľajte tento odkaz s osobou, s ktorou chcete spolupracovať:",desc_exitSession:"Ukončenie schôdze vás odpojí z miestnosti, avšak naďalej budete môcť pokračovať v práci na scéne lokálne. Toto neovplyvní ostatných spolupracovníkov a stále budú môcť spolupracovať na ich verzii.",shareTitle:"Pripojiť sa k živej schôdzi na Excalidraw"},oKe={title:"Chyba"},sKe={disk_title:"Uložiť na disk",disk_details:"Exportovať údaje scény do súboru, z ktorého môžu byť neskôr importované.",disk_button:"Uložiť do súboru",link_title:"Odkaz na zdieľanie",link_details:"Exportovať ako odkaz iba na čítanie.",link_button:"Exportovať ako odkaz",excalidrawplus_description:"Uložiť scénu do vášho Excalidraw+ pracovného priestoru.",excalidrawplus_button:"Exportovať",excalidrawplus_exportError:"Nepodarilo sa vykonať export do Excalidraw+..."},lKe={blog:"Prečítajte si náš blog",click:"kliknutie",deepSelect:"Výber v skupine",deepBoxSelect:"Výber v skupine alebo zamedzenie poťiahnutia",curvedArrow:"Zakrivená šípka",curvedLine:"Zakrivená čiara",documentation:"Dokumentácia",doubleClick:"dvojklik",drag:"potiahnutie",editor:"Editovanie",editLineArrowPoints:"Editácia bodov čiary/šípky",editText:"Editácia textu / pridanie štítku",github:"Objavili ste problém? Nahláste ho",howto:"Postupujte podľa naších návodov",or:"alebo",preventBinding:"Zakázať pripájanie šípky",tools:"Nástroje",shortcuts:"Klávesové skratky",textFinish:"Ukončenie editovania (text editor)",textNewLine:"Vložiť nový riadok (text editor)",title:"Pomocník",view:"Zobrazenie",zoomToFit:"Priblížiť aby boli zahrnuté všetky prvky",zoomToSelection:"Priblížiť na výber",toggleElementLock:"Zamknúť/odomknúť vybrané",movePageUpDown:"Posunúť stranu hore/dole",movePageLeftRight:"Posunúť stranu doľava/doprava"},gKe={title:"Vyčistiť plátno"},cKe={title:"Uverejniť knižnicu",itemName:"Názov položky",authorName:"Meno autora",githubUsername:"Github užívateľské meno",twitterUsername:"Twitter užívateľské meno",libraryName:"Názov knižnice",libraryDesc:"Popis knižnice",website:"Webová stránka",placeholder:{authorName:"Vaše meno alebo užívateľské meno",libraryName:"Názov vašej knižnice",libraryDesc:"Popis vašej knižnice, ktorý ostatným pomôže porozumieť jej vhodnému použitiu",githubHandle:"GitHub užívateľské meno (nepovinné), aby ste mohli robiť úpravy po tom, čo bude knižnica uverejnená na schválenie",twitterHandle:"Twitter užívateľské meno (nepovinné), aby sme vedeli komu pripísať zásluhu pri propagovaní cez Twitter",website:"Odkaz na vašu osobnú webovú stránku alebo niekam inam (nepovinné)"},errors:{required:"Povinné",website:"Zadajte platnú adresu URL"},noteDescription:"Uverejnite vašu knižnicu vo <link>verejnom zozname knižníc</link>aby ju aj ostatní mohli použiť v ich náčrtoch.",noteGuidelines:"Knižnica musí byť najprv manuálne schválená. Prosím prečítajte si <link>pokyny</link> pred uverejnením. Budete potrebovať Github účet na komunikáciu a vykonanie zmien, ak budú potrebné, avšak nie je to úplne povinné.",noteLicense:"Potvrdením súhlasíte, že knižnica bude zverejnená s <link>MIT licenciou, </link>čo v skratke znamená, že ju môže použiť hocikto bez obmedzení.",noteItems:"Každá položka v knižnici musí mať svoje vlastné meno, aby sa dala vyhľadať. Súčasťou knižnice budú nasledujúce položky:",atleastOneLibItem:"Začnite prosím zvolením aspoň jednej položky z knižnice",republishWarning:"Poznámka: Niektoré z vybraných položiek sú už označené ako zverejnené. Ich znovu uverejnenie by ste mali vykovať iba vtedy ak aktualizujete už existujúcu knižnicu alebo požiadavku na uverejnenie."},CKe={title:"Knižnica uverejnená",content:"Ďakujeme vám {{authorName}}. Vaša knižnica bola uverejnená na posúdenie. Stav môžete skontrolovať<link>tu</link>"},BKe={resetLibrary:"Obnoviť knižnicu",removeItemsFromLib:"Odstrániť zvolené položky z knižnice"},EKe={header:"Exportovať obrázok",label:{withBackground:"Pozadie",onlySelected:"Iba vybrané",darkMode:"Tmavý režim",embedScene:"Zahrnúť scénu",scale:"Mierka",padding:"Odsadenie"},tooltip:{embedScene:`Údaje scény budú uložené do exportovaného PNG/SVG súboru, takže scéna z neho môže byť opäť obnovená.
Bude to mať za následok zvýšenie veľkosti súboru.`},title:{exportToPng:"Exportovať do PNG",exportToSvg:"Exportovať do SVG",copyPngToClipboard:"Kopírovať PNG do schránky"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopírovať do schránky"}},dKe={tooltip:"Vaše kresby používajú end-to-end šifrovanie, takže ich Excalidraw server nedokáže prečítať.",link:"Blog o end-to-end šifrovaní v Excalidraw"},IKe={angle:"Uhol",element:"Prvok",elements:"Prvky",height:"Výška",scene:"Scéna",selected:"Vybrané",storage:"Úložisko",title:"Štatistiky",total:"Celkom",version:"Verzia",versionCopy:"Kliknutím skopírujete",versionNotAvailable:"Verzia nie je k dispozícii",width:"Šírka"},hKe={addedToLibrary:"Pridané do knižnice",copyStyles:"Štýly skopírované.",copyToClipboard:"Skopírované do schránky.",copyToClipboardAsPng:`Kopírovanie {{exportSelection}} do schránky ako PNG prebehlo úspešne
({{exportColorScheme}})`,fileSaved:"Súbor uložený.",fileSavedToFilename:"Uložený ako {filename}",canvas:"plátna",selection:"výberu",pasteAsSingleElement:"Použitím {{shortcut}} vložte ako samostatný prvok alebo vložte do existujúceho editovaného textu",unableToEmbed:"Zapustenie tejto URL nie je povolené. Vytvorte issue na GitHub-e a požiadajte povolenie tejto URL",unrecognizedLinkFormat:"Odkaz, ktorý sa snažíte zapustiť nie je v očakávanom formáte. Prosím skúste vložiť 'odkaz na zdieľanie' poskytnutý zdrojovou webovou stránkou"},QKe={transparent:"Priehľadná",black:"Čierna",white:"Biela",red:"Červená",pink:"Ružová",grape:"Hroznová fialová",violet:"Fialová",gray:"Sivá",blue:"Modrá",cyan:"Azúrová",teal:"Modrozelená",green:"Zelená",yellow:"Žltá",orange:"Oranžová",bronze:"Bronzová"},pKe={app:{center_heading:"Všetky vaše dáta sú uložené lokálne vo vašom prehliadači.",center_heading_plus:"Chceli ste namiesto toho prejsť do Excalidraw+?",menuHint:"Exportovanie, nastavenia, jazyky, ..."},defaults:{menuHint:"Exportovanie, nastavenia a ďalšie...",center_heading:"Diagramy. Jednoducho.",toolbarHint:"Zvoľte nástroj a začnite kresliť!",helpHint:"Klávesové skratky a pomocník"}},fKe={mostUsedCustomColors:"Najpoužívanejšie vlastné farby",colors:"Farby",shades:"Odtiene",hexCode:"Hex kód",noShades:"Pre túto farbu nie sú dostupné žiadne odtiene"},mKe={action:{exportToImage:{title:"Exportovať ako obrázok",button:"Exportovať ako obrázok",description:"Exportovať údaje scény ako obrázok, z ktorého môžu byť neskôr importované."},saveToDisk:{title:"Uložiť na disk",button:"Uložiť na disk",description:"Exportovať údaje scény do súboru, z ktorého môžu byť neskôr importované."},excalidrawPlus:{title:"Excalidraw+",button:"Exportovať ako Excalidraw+",description:"Uložiť scénu do vášho Excalidraw+ pracovného priestoru."}},modal:{loadFromFile:{title:"Načítať zo súboru",button:"Načítať zo súboru",description:"Načítanie zo súboru <bold>nahradí váš existujúci obsah</bold>.<br></br>Vašu kresbu môžete zálohovať jednou z nižšie uvedených možností."},shareableLink:{title:"Načítať z odkazu",button:"Nahradiť môj obsah",description:"Načítanie externej kresby <bold>nahradí váš existujúci obsah</bold>.<br></br>Vašu kresbu môžete zálohovať jednou z nižšie uvedených možností."}}},DKe={title:"Mermaid do Excalidraw",button:"Vložiť",description:"Aktuálne sú podporované iba <flowchartLink>vývojové diagramy</flowchartLink>, <sequenceLink>sekvenčné diagramy</sequenceLink> a <classLink>diagramy tried</classLink>. Ostatné typy budú v Excalidraw vykreslené ako obrázky.",syntax:"Mermaid syntax",preview:"Ukážka"},aCr={labels:jHe,library:XHe,buttons:$He,alerts:AKe,errors:eKe,toolBar:tKe,headings:rKe,hints:iKe,canvasError:uKe,errorSplash:aKe,roomDialog:nKe,errorDialog:oKe,exportDialog:sKe,helpDialog:lKe,clearCanvasDialog:gKe,publishDialog:cKe,publishSuccessDialog:CKe,confirmDialog:BKe,imageExportDialog:EKe,encrypted:dKe,stats:IKe,toast:hKe,colors:QKe,welcomeScreen:pKe,colorPicker:fKe,overwriteConfirm:mKe,mermaid:DKe}});var $Ke={};Dt($Ke,{alerts:()=>FKe,buttons:()=>kKe,canvasError:()=>NKe,clearCanvasDialog:()=>HKe,colorPicker:()=>VKe,colors:()=>zKe,confirmDialog:()=>OKe,default:()=>nCr,encrypted:()=>_Ke,errorDialog:()=>MKe,errorSplash:()=>GKe,errors:()=>xKe,exportDialog:()=>TKe,headings:()=>LKe,helpDialog:()=>YKe,hints:()=>RKe,imageExportDialog:()=>PKe,labels:()=>bKe,library:()=>vKe,mermaid:()=>XKe,overwriteConfirm:()=>jKe,publishDialog:()=>KKe,publishSuccessDialog:()=>JKe,roomDialog:()=>UKe,stats:()=>WKe,toast:()=>qKe,toolBar:()=>SKe,welcomeScreen:()=>ZKe});var bKe,vKe,kKe,FKe,xKe,SKe,LKe,RKe,NKe,GKe,UKe,MKe,TKe,YKe,HKe,KKe,JKe,OKe,PKe,_Ke,WKe,qKe,zKe,ZKe,VKe,jKe,XKe,nCr;var AJe=_(()=>{zt();bKe={paste:"Prilepi",pasteAsPlaintext:"Prilepi kot navadno besedilo",pasteCharts:"Prilepi grafikone",selectAll:"Izberi vse",multiSelect:"Dodaj element v izbor",moveCanvas:"Premakni platno",cut:"Izreži",copy:"Kopiraj",copyAsPng:"Kopiraj v odložišče kot PNG",copyAsSvg:"Kopiraj v odložišče kot SVG",copyText:"Kopiraj v odložišče kot besedilo",copySource:"Kopiraj vir v odložišče",convertToCode:"Pretvori v kodo",bringForward:"Postavi naprej",sendToBack:"Pomakni v ozadje",bringToFront:"Pomakni v ospredje",sendBackward:"Pošlji nazaj",delete:"Izbriši",copyStyles:"Kopiraj slog",pasteStyles:"Prilepi slog",stroke:"Poteza",background:"Ozadje",fill:"Polnilo",strokeWidth:"Debelina poteze",strokeStyle:"Slog poteze",strokeStyle_solid:"Polna",strokeStyle_dashed:"Črtkana",strokeStyle_dotted:"Pikasta",sloppiness:"Površnost",opacity:"Prekrivnost",textAlign:"Poravnava besedila",edges:"Robovi",sharp:"Ostri",round:"Okrogli",arrowheads:"Puščice",arrowhead_none:"Brez",arrowhead_arrow:"Puščica",arrowhead_bar:"Palica",arrowhead_circle:"Krog",arrowhead_circle_outline:"Krog (oris)",arrowhead_triangle:"Trikotnik",arrowhead_triangle_outline:"Trikotnik (oris)",arrowhead_diamond:"Diamant",arrowhead_diamond_outline:"Diamant (oris)",fontSize:"Velikost pisave",fontFamily:"Družina pisave",addWatermark:'Dodaj "Izdelano z Excalidraw"',handDrawn:"Ročno narisano",normal:"Običajno",code:"Koda",small:"Majhna",medium:"Srednja",large:"Velika",veryLarge:"Zelo velika",solid:"Polno",hachure:"Šrafura",zigzag:"Cikcak",crossHatch:"Križno",thin:"Tanko",bold:"Krepko",left:"Levo",center:"Sredina",right:"Desno",extraBold:"Ekstra krepko",architect:"Arhitekt",artist:"Umetnik",cartoonist:"Risar",fileTitle:"Ime datoteke",colorPicker:"Izbor barve",canvasColors:"Uporabljeno na platnu",canvasBackground:"Ozadje platna",drawingCanvas:"Platno za risanje",layers:"Plasti",actions:"Dejanja",language:"Jezik",liveCollaboration:"Sodelovanje v živo...",duplicateSelection:"Podvoji",untitled:"Neimenovana",name:"Ime",yourName:"Vaše ime",madeWithExcalidraw:"Izdelano z Excalidraw",group:"Združi izbor",ungroup:"Razdruži izbor",collaborators:"Sodelavci",showGrid:"Prikaži mrežo",addToLibrary:"Dodaj v knjižnico",removeFromLibrary:"Odstrani iz knjižnice",libraryLoadingMessage:"Nalaganje knjižnice ...",libraries:"Brskaj po knjižnicah",loadingScene:"Nalaganje scene...",align:"Poravnava",alignTop:"Poravnaj na vrh",alignBottom:"Poravnaj na dno",alignLeft:"Poravnaj levo",alignRight:"Poravnaj desno",centerVertically:"Navpično na sredini",centerHorizontally:"Vodoravno na sredini",distributeHorizontally:"Porazdeli vodoravno",distributeVertically:"Porazdeli navpično",flipHorizontal:"Obrni vodoravno",flipVertical:"Obrni navpično",viewMode:"Način ogleda",share:"Deli",showStroke:"Prikaži izbirnik barv poteze",showBackground:"Prikaži izbirnik barv ozadja",toggleTheme:"Obrni temo",personalLib:"Osebna knjižnica",excalidrawLib:"Knjižnica Excalidraw",decreaseFontSize:"Zmanjšaj velikost pisave",increaseFontSize:"Povečaj velikost pisave",unbindText:"Veži besedilo",bindText:"Veži besedilo na element",createContainerFromText:"Zavij besedilo v vsebnik",link:{edit:"Uredi povezavo",editEmbed:"Uredi povezavo in vdelaj",create:"Ustvari povezavo",createEmbed:"Ustvari povezavo in vdelaj",label:"Povezava",labelEmbed:"Povezava in vdelovanje",empty:"Povezava ni nastavljena"},lineEditor:{edit:"Uredi črto",exit:"Zapri urejanje črte"},elementLock:{lock:"Zakleni",unlock:"Odkleni",lockAll:"Zakleni vse",unlockAll:"Odkleni vse"},statusPublished:"Objavljeno",sidebarLock:"Obdrži stransko vrstico odprto",selectAllElementsInFrame:"Izberi vse elemente v okvirju",removeAllElementsFromFrame:"Izbriši vse elemente v okvirju",eyeDropper:"Izberi barvo s platna",textToDiagram:"Besedilo v diagram",prompt:"Poziv"},vKe={noItems:"Dodan še ni noben element...",hint_emptyLibrary:"Izberite element na platnu, da ga dodate sem, ali namestite knjižnico iz javnega skladišča spodaj.",hint_emptyPrivateLibrary:"Izberite element na platnu, da ga dodate sem."},kKe={clearReset:"Ponastavi platno",exportJSON:"Izvozi v datoteko",exportImage:"Izvozi sliko...",export:"Shrani v...",copyToClipboard:"Kopiraj v odložišče",save:"Shrani v trenutno datoteko",saveAs:"Shrani kot",load:"Odpri",getShareableLink:"Pridobi povezavo za deljenje",close:"Zapri",selectLanguage:"Izberi jezik",scrollBackToContent:"Pomakni se nazaj na vsebino",zoomIn:"Povečaj",zoomOut:"Pomanjšaj",resetZoom:"Ponastavi povečavo",menu:"Meni",done:"Končano",edit:"Uredi",undo:"Razveljavi",redo:"Ponovi",resetLibrary:"Ponastavi knjižnico",createNewRoom:"Ustvari novo sobo",fullScreen:"Celozaslonski način",darkMode:"Temni način",lightMode:"Svetli način",zenMode:"Način Zen",objectsSnapMode:"Pripenjanje na predmete",exitZenMode:"Zapri način Zen",cancel:"Prekliči",clear:"Počisti",remove:"Odstrani",embed:"Preklopi vdelavo",publishLibrary:"Objavi",submit:"Pošlji",confirm:"Potrdi",embeddableInteractionButton:"Kliknite za interakcijo"},FKe={clearReset:"To bo počistilo celotno platno. Ali ste prepričani?",couldNotCreateShareableLink:"Povezave za deljenje ni bilo mogoče ustvariti.",couldNotCreateShareableLinkTooBig:"Povezave za deljenje ni bilo mogoče ustvariti: scena je prevelika",couldNotLoadInvalidFile:"Neveljavne datoteke ni bilo mogoče naložiti",importBackendFailed:"Uvoz iz zaledja ni uspel.",cannotExportEmptyCanvas:"Izvoz prazne scene ni mogoč.",couldNotCopyToClipboard:"Kopiranje v odložišče ni uspelo.",decryptFailed:"Dešifriranje podatkov ni uspelo.",uploadedSecurly:"Nalaganje je bilo zaščiteno s šifriranjem od konca do konca, kar pomeni, da strežnik Excalidraw in tretje osebe ne morejo brati vsebine.",loadSceneOverridePrompt:"Nalaganje zunanje risbe bo nadomestilo vašo obstoječo vsebino. Ali želite nadaljevati?",collabStopOverridePrompt:`Ustavitev seje bo prepisala vašo prejšnjo, lokalno shranjeno risbo. Ali ste prepričani?
(Če želite obdržati lokalno risbo, preprosto zaprite zavihek brskalnika.)`,errorAddingToLibrary:"Elementa ni bilo mogoče dodati v knjižnico",errorRemovingFromLibrary:"Elementa ni bilo mogoče izbrisati iz knjižnice",confirmAddLibrary:"S tem boste v vašo knjižnico dodali oblike ({{numShapes}}). Ali ste prepričani?",imageDoesNotContainScene:"Zdi se, da ta slika ne vsebuje podatkov o sceni. Ali ste med izvozom omogočili vdelavo scene?",cannotRestoreFromImage:"Scene ni bilo mogoče obnoviti iz te slikovne datoteke",invalidSceneUrl:"S priloženega URL-ja ni bilo mogoče uvoziti scene. Je napačno oblikovana ali pa ne vsebuje veljavnih podatkov Excalidraw JSON.",resetLibrary:"To bo počistilo vašo knjižnico. Ali ste prepričani?",removeItemsFromsLibrary:"Izbriši elemente ({{count}}) iz knjižnice?",invalidEncryptionKey:"Ključ za šifriranje mora vsebovati 22 znakov. Sodelovanje v živo je onemogočeno.",collabOfflineWarning:`Internetna povezava ni na voljo.
Vaše spremembe ne bodo shranjene!`},xKe={unsupportedFileType:"Nepodprt tip datoteke.",imageInsertError:"Vstavljanje slike ni bilo uspešno. Poskusite ponovno kasneje...",fileTooBig:"Datoteka je prevelika. Največja dovoljena velikost je {{maxSize}}.",svgImageInsertError:"Vstavljanje slike SVG ni uspelo. Oznake SVG so videti neveljavne.",failedToFetchImage:"Pridobivanje slike ni uspelo.",invalidSVGString:"Neveljaven SVG.",cannotResolveCollabServer:"Povezave s strežnikom za sodelovanje ni bilo mogoče vzpostaviti. Ponovno naložite stran in poskusite znova.",importLibraryError:"Nalaganje knjižnice ni uspelo",collabSaveFailed:"Ni bilo mogoče shraniti v zaledno bazo podatkov. Če se težave nadaljujejo, shranite datoteko lokalno, da ne boste izgubili svojega dela.",collabSaveFailed_sizeExceeded:"Ni bilo mogoče shraniti v zaledno bazo podatkov, zdi se, da je platno preveliko. Datoteko shranite lokalno, da ne izgubite svojega dela.",imageToolNotSupported:"Slike so onemogočene.",brave_measure_text_error:{line1:"Videti je, da uporabljate brskalnik Brave z omogočeno nastavitvijo <bold>Agresivno blokiranje prstnih odtisov</bold>.",line2:"To bi lahko povzročilo motnje v obnašanju <bold>besedilnih elementov</bold> v vaših risbah.",line3:"Močno priporočamo, da onemogočite to nastavitev. Sledite <link>tem korakom</link>, kako to storiti.",line4:"Če onemogočanje te nastavitve ne popravi prikaza besedilnih elementov, odprite <issueLink>vprašanje</issueLink> na našem GitHubu ali nam pišite na <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Vdelani elementi ne morejo biti dodani v knjižnico.",iframe:"Elementov iFrame ni mogoče dodati v knjižnico.",image:"Podpora za dodajanje slik v knjižnico prihaja kmalu!"},asyncPasteFailedOnRead:"Ni bilo mogoče prilepiti (ni bilo mogoče brati iz sistemskega odložišča).",asyncPasteFailedOnParse:"Ni bilo mogoče prilepiti.",copyToSystemClipboardFailed:"Ni bilo mogoče kopirati v odložišče."},SKe={selection:"Izbor",image:"Vstavi sliko",rectangle:"Pravokotnik",diamond:"Diamant",ellipse:"Elipsa",arrow:"Puščica",line:"Črta",freedraw:"Risanje",text:"Besedilo",library:"Knjižnica",lock:"Ohrani izbrano orodje aktivno po risanju",penMode:"Način peresa - prepreči dotik",link:"Dodaj/posodobi povezavo za izbrano obliko",eraser:"Radirka",frame:"Okvir",magicframe:"Žični okvir v kodo",embeddable:"Spletna vdelava",laser:"Laserski kazalec",hand:"Roka (orodje za premikanje)",extraTools:"Več orodij",mermaidToExcalidraw:"Mermaid v Excalidraw",magicSettings:"Nastavitve AI"},LKe={canvasActions:"Dejanja za platno",selectedShapeActions:"Dejanja za izbrane oblike",shapes:"Oblike"},RKe={canvasPanning:"Za premikanje platna med vlečenjem držite kolesce miške ali preslednico ali uporabite orodje roka",linearElement:"Kliknite za začetek več točk, povlecite za posamezno črto",freeDraw:"Kliknite in povlecite, spustite, ko končate",text:"Namig: besedilo lahko dodate tudi z dvoklikom kjer koli z orodjem za izbiro",embeddable:"Kliknite in povlecite, da ustvarite spletno vdelavo",text_selected:"Dvokliknite ali pritisnite tipko Enter, da uredite besedilo",text_editing:"Pritisnite tipko Escape ali CtrlOrCmd+Enter za zaključek urejanja",linearElementMulti:"Kliknite zadnjo točko ali pritisnite Escape ali Enter, da končate",lockAngle:"Kot lahko omejite tako, da držite tipko Shift",resize:"Razmerja lahko omejite tako, da držite tipko Shift med spreminjanjem velikosti. Držite tipko Alt, da spremenite velikost od središča",resizeImage:"Velikost lahko prosto spreminjate tako, da držite tipko Shift. Držite tipko Alt, da spremenite velikost od središča",rotate:"Kote lahko omejite tako, da med vrtenjem držite tipko Shift",lineEditor_info:"Držite CtrlOrCmd in dvokliknite ali pritisnite CtrlOrCmd + Enter za urejanje točk",lineEditor_pointSelected:"Pritisnite tipko Delete, da odstranite točko(e), CtrlOrCmd+D za podvojitev ali povlecite za premikanje",lineEditor_nothingSelected:"Izberite točko za urejanje (pridržite tipko Shift za izbiro več točk), ali držite tipko Alt in kliknite za dodajanje novih točk",placeImage:"Kliknite, da postavite sliko, ali kliknite in povlecite, da ročno nastavite njeno velikost",publishLibrary:"Objavi svojo knjižnico",bindTextToElement:"Pritisnite tipko Enter za dodajanje besedila",deepBoxSelect:"Držite tipko CtrlOrCmd za globoko izbiro in preprečitev vlečenja",eraserRevert:"Pridržite tipko Alt, da razveljavite elemente, označene za brisanje",firefox_clipboard_write:'To funkcijo lahko verjetno omogočite z nastavitvijo zastavice "dom.events.asyncClipboard.clipboardItem" na "true". Če želite spremeniti zastavice brskalnika v Firefoxu, obiščite stran "about:config".',disableSnapping:"Držite CtrlOrCmd, da onemogočite pripenjanje"},NKe={cannotShowPreview:"Predogleda ni bilo mogoče prikazati",canvasTooBig:"Morda je platno preveliko.",canvasTooBigTip:"Nasvet: poskusite premakniti najbolj oddaljene elemente nekoliko bližje skupaj."},GKe={headingMain:"Prišlo je do napake. Poskusite <button>ponovno naložiti stran.</button>",clearCanvasMessage:"Če ponovno nalaganje ne deluje, poskusite <button>počistiti platno.</button>",clearCanvasCaveat:" To bo povzročilo izgubo dela ",trackedToSentry:"Napaka z identifikatorjem {{eventId}} smo zabeležili v naš sistem.",openIssueMessage:"Zelo smo bili previdni, da v podatke o napaki nismo vključili vaših podatkov o sceni. Če vaša scena ni zasebna, vas prosimo, da napišete več podrobnosti na našem <button>sledilniku hroščev.</button> Prosimo, vključite spodnje informacije tako, da jih kopirate in prilepite v GitHub vprašanje.",sceneContent:"Vsebina scene:"},UKe={desc_intro:"Na vašo trenutno sceno lahko povabite osebe, ki bodo sodelovale z vami.",desc_privacy:"Brez skrbi. Seja uporablja šifriranje od konca do konca, tako da bo vse, kar narišete, ostalo zasebno. Niti naš strežnik ne bo mogel videti, kaj si izmislite.",button_startSession:"Začni sejo",button_stopSession:"Ustavi sejo",desc_inProgressIntro:"Seja sodelovanja v živo je v teku.",desc_shareLink:"Delite to povezavo z vsemi, s katerimi želite sodelovati:",desc_exitSession:"Ustavitev seje vas bo odklopila od sobe, vendar boste lahko lokalno nadaljevali delo s sceno. To pa ne bo vplivalo na druge osebe. Druge osebe bodo še vedno lahko sodelovale v svoji različici.",shareTitle:"Pridruži se seji sodelovanja v živo na Excalidraw"},MKe={title:"Napaka"},TKe={disk_title:"Shrani na disk",disk_details:"Izvozite podatke scene v datoteko, iz katere jo lahko pozneje uvozite.",disk_button:"Shrani v datoteko",link_title:"Povezava za deljenje",link_details:"Izvoz kot povezava samo za branje.",link_button:"Izvoz kot povezava",excalidrawplus_description:"Shrani sceno v svoj delovni prostor Excalidraw+.",excalidrawplus_button:"Izvoz",excalidrawplus_exportError:"Trenutno ni bilo mogoče izvoziti v Excalidraw+..."},YKe={blog:"Preberite naš blog",click:"klik",deepSelect:"Globoka izbira",deepBoxSelect:"Globoka izbira znotraj polja in preprečitev vlečenja",curvedArrow:"Ukrivljena puščica",curvedLine:"Ukrivljena črta",documentation:"Dokumentacija",doubleClick:"dvojni klik",drag:"vleci",editor:"Urejevalnik",editLineArrowPoints:"Uredi črto/točke puščice",editText:"Uredi besedilo / dodaj oznako",github:"Ste našli težavo? Pošljite",howto:"Sledite našim vodičem",or:"ali",preventBinding:"Prepreči vezanje puščice",tools:"Orodja",shortcuts:"Bližnjice na tipkovnici",textFinish:"Zaključi urejanje (urejevalnik besedila)",textNewLine:"Dodaj novo vrstico (urejevalnik besedila)",title:"Pomoč",view:"Pogled",zoomToFit:"Približaj na vse elemente",zoomToSelection:"Približaj na izbor",toggleElementLock:"Zakleni/odkleni izbor",movePageUpDown:"Premakni stran gor/dol",movePageLeftRight:"Premakni stran levo/desno"},HKe={title:"Počisti platno"},KKe={title:"Objavi knjižnico",itemName:"Ime elementa",authorName:"Ime avtorja",githubUsername:"GitHub uporabniško ime",twitterUsername:"Twitter uporabniško ime",libraryName:"Ime knjižnice",libraryDesc:"Opis knijžnice",website:"Spletna stran",placeholder:{authorName:"Vaše ime ali uporabniško ime",libraryName:"Ime vaše knjižnice",libraryDesc:"Opis vaše knjižnice, da bodo ljudje lažje razumeli njeno uporabo",githubHandle:"GitHub uporabniško ime (neobvezno), tako da lahko urejate knjižnico potem, ko jo pošljete v pregled",twitterHandle:"Twitter uporabniško ime (neobvezno), tako da vemo, koga omeniti pri promociji prek Twitterja",website:"Povezava na vašo osebno spletno stran ali drugam (neobvezno)"},errors:{required:"Obvezno",website:"Vnesite veljaven URL"},noteDescription:"Predložite svojo knjižnico, da bo vključena v <link>javno skladišče knjižnic,</link>da jih drugi lahko uporabljajo v svojih risbah.",noteGuidelines:"Knjižnica mora biti najprej ročno odobrena. Prosimo vas, da pred oddajanjem preberete naše <link>smernice.</link>Za komunikacijo in spreminjanje po potrebi boste potrebovali račun GitHub, vendar to ni obvezno.",noteLicense:"Z oddajo se strinjate, da bo knjižnica objavljena pod <link>licenco MIT, </link>kar na kratko pomeni, da jo lahko kdorkoli uporablja brez omejitev.",noteItems:"Vsak element knjižnice mora imeti svoje ime, tako da ga je mogoče filtrirati. Vključeni bodo naslednji elementi knjižnice:",atleastOneLibItem:"Za začetek izberite vsaj en element knjižnice",republishWarning:"Opomba: nekateri izbrani predmeti so označeni kot že objavljeni/oddani. Elemente lahko znova oddate samo, ko posodabljate obstoječo knjižnico ali oddajo."},JKe={title:"Knjižnica oddana",content:"{{authorName}}, hvala. Vaša knjižnica je bila poslana v pregled. Stanje lahko spremljate<link>tukaj</link>"},OKe={resetLibrary:"Ponastavi knjižnico",removeItemsFromLib:"Odstran izbrane elemente iz knjižnice"},PKe={header:"Izvozi sliko",label:{withBackground:"Ozadje",onlySelected:"Samo izbor",darkMode:"Temni način",embedScene:"Vdelaj sceno",scale:"Povečava",padding:"Odmik"},tooltip:{embedScene:`Podatki o sceni bodo shranjeni v izvoženo datoteko PNG/SVG, tako da bo sceno mogoče obnoviti iz nje.
To bo povečalo velikost izvožene datoteke.`},title:{exportToPng:"Izvozi v PNG",exportToSvg:"Izvozi v SVG",copyPngToClipboard:"Kopiraj PNG v odložišče"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopiraj v odložišče"}},_Ke={tooltip:"Vaše risbe so šifrirane od konca do konca, tako da jih strežniki Excalidraw nikoli ne bodo videli.",link:"Blog objava o šifriranju od konca do konca v Excalidraw"},WKe={angle:"Kot",element:"Element",elements:"Elementi",height:"Višina",scene:"Scena",selected:"Izbrano",storage:"Shramba",title:"Statistika za napredne uporabnike",total:"Skupaj",version:"Različica",versionCopy:"Kliknite za kopiranje",versionNotAvailable:"Različica ni na voljo",width:"Širina"},qKe={addedToLibrary:"Dodano v knjižnico",copyStyles:"Slogi kopirani.",copyToClipboard:"Kopirano v odložišče.",copyToClipboardAsPng:"Kopirano v odložišče kot PNG ({{exportSelection}}, {{exportColorScheme}})",fileSaved:"Datoteka shranjena.",fileSavedToFilename:"Shranjeno v {filename}",canvas:"platno",selection:"izbor",pasteAsSingleElement:`Uporabite {{shortcut}}, da prilepite kot en element,
ali prilepite v obstoječ urejevalnik besedil`,unableToEmbed:"Vdelava tega URL-ja trenutno ni dovoljena. Ustvarite vprašanje na GitHub-u in prosite za vmestitev URL-ja na seznam dovoljenih",unrecognizedLinkFormat:"Povezava, ki ste jo vdelali, se ne ujema s pričakovano obliko. Poskusite prilepiti niz za vdelavo, ki ste ga prejeli na izvorni strani"},zKe={transparent:"Prosojno",black:"Črna",white:"Bela",red:"Rdeča",pink:"Roza",grape:"Grozdje",violet:"Vijolična",gray:"Siva",blue:"Modra",cyan:"Cijan",teal:"Turkizna",green:"Zelena",yellow:"Rumena",orange:"Oranžna",bronze:"Bronasta"},ZKe={app:{center_heading:"Vsi vaši podatki so shranjeni lokalno v vašem brskalniku.",center_heading_plus:"Ste namesto tega želeli odpreti Excalidraw+?",menuHint:"Izvoz, nastavitve, jeziki, ..."},defaults:{menuHint:"Izvoz, nastavitve in več ...",center_heading:"Diagrami. Enostavno.",toolbarHint:"Izberi orodje in začni z risanjem!",helpHint:"Bližnjice in pomoč"}},VKe={mostUsedCustomColors:"Najpogosteje uporabljene barve po meri",colors:"Barve",shades:"Odtenki",hexCode:"Hex koda",noShades:"Odtenki za to barvo niso na voljo"},jKe={action:{exportToImage:{title:"Izvozi kot sliko",button:"Izvozi kot sliko",description:"Izvozite podatke scene kot sliko, iz katere jo lahko pozneje uvozite."},saveToDisk:{title:"Shrani na disk",button:"Shrani na disk",description:"Izvozite podatke scene v datoteko, iz katere jo lahko pozneje uvozite."},excalidrawPlus:{title:"Excalidraw+",button:"Izvozi v Excalidraw+",description:"Shrani sceno v svoj delovni prostor Excalidraw+."}},modal:{loadFromFile:{title:"Naloži iz datoteke",button:"Naloži iz datoteke",description:"Nalaganje iz datoteke bo <bold>prepisalo vašo obstoječo vsebino</bold>.<br></br>Svojo risbo lahko najprej varnostno kopirate z eno od spodnjih možnosti."},shareableLink:{title:"Naloži iz povezave",button:"Zamenjaj mojo vsebino",description:"Nalaganje zunanje risbe bo <bold>prepisalo vašo obstoječo vsebino</bold>.<br></br>Svojo risbo lahko najprej varnostno kopirate z eno od spodnjih možnosti."}}},XKe={title:"Mermaid v Excalidraw",button:"Vstavi",description:"Trenutno so podprti samo <flowchartLink>diagrami poteka</flowchartLink>, <sequenceLink>diagrami zaporedij</sequenceLink> in <classLink>Razredni diagrami</classLink>. Druge vrste bodo upodobljene kot slike v Excalidraw.",syntax:"Sintaksa Mermaid",preview:"Predogled"},nCr={labels:bKe,library:vKe,buttons:kKe,alerts:FKe,errors:xKe,toolBar:SKe,headings:LKe,hints:RKe,canvasError:NKe,errorSplash:GKe,roomDialog:UKe,errorDialog:MKe,exportDialog:TKe,helpDialog:YKe,clearCanvasDialog:HKe,publishDialog:KKe,publishSuccessDialog:JKe,confirmDialog:OKe,imageExportDialog:PKe,encrypted:_Ke,stats:WKe,toast:qKe,colors:zKe,welcomeScreen:ZKe,colorPicker:VKe,overwriteConfirm:jKe,mermaid:XKe}});var kJe={};Dt(kJe,{alerts:()=>iJe,buttons:()=>rJe,canvasError:()=>sJe,clearCanvasDialog:()=>EJe,colorPicker:()=>wJe,colors:()=>DJe,confirmDialog:()=>hJe,default:()=>oCr,encrypted:()=>pJe,errorDialog:()=>cJe,errorSplash:()=>lJe,errors:()=>uJe,exportDialog:()=>CJe,headings:()=>nJe,helpDialog:()=>BJe,hints:()=>oJe,imageExportDialog:()=>QJe,labels:()=>eJe,library:()=>tJe,mermaid:()=>vJe,overwriteConfirm:()=>bJe,publishDialog:()=>dJe,publishSuccessDialog:()=>IJe,roomDialog:()=>gJe,stats:()=>fJe,toast:()=>mJe,toolBar:()=>aJe,welcomeScreen:()=>yJe});var eJe,tJe,rJe,iJe,uJe,aJe,nJe,oJe,sJe,lJe,gJe,cJe,CJe,BJe,EJe,dJe,IJe,hJe,QJe,pJe,fJe,mJe,DJe,yJe,wJe,bJe,vJe,oCr;var FJe=_(()=>{zt();eJe={paste:"Klistra in",pasteAsPlaintext:"Klistra som oformaterad text",pasteCharts:"Klistra in diagram",selectAll:"Markera alla",multiSelect:"Lägg till element till markering",moveCanvas:"Flytta canvas",cut:"Klipp ut",copy:"Kopiera",copyAsPng:"Kopiera till urklipp som PNG",copyAsSvg:"Kopiera till urklipp som SVG",copyText:"Kopiera till urklipp som text",copySource:"Kopiera källa till urklipp",convertToCode:"Konvertera till kod",bringForward:"Flytta framåt",sendToBack:"Flytta underst",bringToFront:"Flytta främst",sendBackward:"Skicka bakåt",delete:"Ta bort",copyStyles:"Kopiera stil",pasteStyles:"Klistra in stil",stroke:"Linje",background:"Bakgrund",fill:"Fyllnad",strokeWidth:"Linjebredd",strokeStyle:"Linjestil",strokeStyle_solid:"Solid",strokeStyle_dashed:"Streckad",strokeStyle_dotted:"Punktad",sloppiness:"Slarvighet",opacity:"Genomskinlighet",textAlign:"Textjustering",edges:"Kanter",sharp:"Skarp",round:"Rund",arrowheads:"Pilhuvuden",arrowhead_none:"Inga",arrowhead_arrow:"Pil",arrowhead_bar:"Stolpe",arrowhead_circle:"Cirkel",arrowhead_circle_outline:"Cirkel (kontur)",arrowhead_triangle:"Triangel",arrowhead_triangle_outline:"Triangel (kontur)",arrowhead_diamond:"Diamant",arrowhead_diamond_outline:"Diamant (kontur)",fontSize:"Teckenstorlek",fontFamily:"Teckensnitt",addWatermark:'Lägg till "Skapad med Excalidraw"',handDrawn:"Handritad",normal:"Normal",code:"Kod",small:"Liten",medium:"Medium",large:"Stor",veryLarge:"Mycket stor",solid:"Solid",hachure:"Skraffering",zigzag:"Sicksack",crossHatch:"Skraffera med kors",thin:"Tunn",bold:"Fet",left:"Vänster",center:"Centrera",right:"Höger",extraBold:"Extra fet",architect:"Arkitekt",artist:"Artist",cartoonist:"Serietecknare",fileTitle:"Filnamn",colorPicker:"Färgväljare",canvasColors:"Används på canvas",canvasBackground:"Canvas-bakgrund",drawingCanvas:"Ritar canvas",layers:"Lager",actions:"Åtgärder",language:"Språk",liveCollaboration:"Samarbeta live...",duplicateSelection:"Duplicera",untitled:"Namnlös",name:"Namn",yourName:"Ditt namn",madeWithExcalidraw:"Skapad med Excalidraw",group:"Gruppera markering",ungroup:"Avgruppera markering",collaborators:"Medarbetare",showGrid:"Visa rutnät",addToLibrary:"Lägg till i biblioteket",removeFromLibrary:"Ta bort från bibliotek",libraryLoadingMessage:"Laddar bibliotek…",libraries:"Bläddra i bibliotek",loadingScene:"Laddar skiss…",align:"Justera",alignTop:"Justera överkant",alignBottom:"Justera underkant",alignLeft:"Justera vänster",alignRight:"Justera höger",centerVertically:"Centrera vertikalt",centerHorizontally:"Centrera horisontellt",distributeHorizontally:"Fördela horisontellt",distributeVertically:"Fördela vertikalt",flipHorizontal:"Vänd horisontellt",flipVertical:"Vänd vertikalt",viewMode:"Visningsläge",share:"Dela",showStroke:"Visa färgväljare för linjefärg",showBackground:"Visa färgväljare för bakgrundsfärg",toggleTheme:"Växla tema",personalLib:"Personligt bibliotek",excalidrawLib:"Excalidraw bibliotek",decreaseFontSize:"Minska fontstorleken",increaseFontSize:"Öka fontstorleken",unbindText:"Koppla bort text",bindText:"Bind texten till behållaren",createContainerFromText:"Radbryt text i en avgränsad yta",link:{edit:"Redigera länk",editEmbed:"Redigera länk & bädda in",create:"Skapa länk",createEmbed:"Skapa länk & bädda in",label:"Länk",labelEmbed:"Länka & bädda in",empty:"Ingen länk är angiven"},lineEditor:{edit:"Redigera linje",exit:"Avsluta linjeredigerare"},elementLock:{lock:"Lås",unlock:"Lås upp",lockAll:"Lås alla",unlockAll:"Lås upp alla"},statusPublished:"Publicerad",sidebarLock:"Håll sidofältet öppet",selectAllElementsInFrame:"Markera alla element i rutan",removeAllElementsFromFrame:"Ta bort alla element från rutan",eyeDropper:"Välj färg från canvas",textToDiagram:"Text till diagram",prompt:"Fråga"},tJe={noItems:"Inga objekt tillagda ännu...",hint_emptyLibrary:"Välj ett objekt på canvasen för att lägga till det här, eller installera ett bibliotek från det publika arkivet, nedan.",hint_emptyPrivateLibrary:"Välj ett objekt på canvasen för att lägga till det här."},rJe={clearReset:"Återställ canvasen",exportJSON:"Exportera till fil",exportImage:"Exportera bild...",export:"Spara till...",copyToClipboard:"Kopiera till urklipp",save:"Spara till aktuell fil",saveAs:"Spara som",load:"Öppna",getShareableLink:"Hämta delbar länk",close:"Stäng",selectLanguage:"Välj språk",scrollBackToContent:"Bläddra tillbaka till innehållet",zoomIn:"Zooma in",zoomOut:"Zooma ut",resetZoom:"Återställ zoom",menu:"Meny",done:"Klart",edit:"Redigera",undo:"Ångra",redo:"Gör om",resetLibrary:"Återställ bibliotek",createNewRoom:"Skapa ett nytt rum",fullScreen:"Helskärm",darkMode:"Mörkt läge",lightMode:"Ljust läge",zenMode:"Zen-läge",objectsSnapMode:"Fäst mot objekt",exitZenMode:"Gå ur zen-läge",cancel:"Avbryt",clear:"Rensa",remove:"Ta bort",embed:"Växla inbäddning",publishLibrary:"Publicera",submit:"Skicka",confirm:"Bekräfta",embeddableInteractionButton:"Klicka för att interagera"},iJe={clearReset:"Detta rensar hela canvasen. Är du säker?",couldNotCreateShareableLink:"Kunde inte skapa delbar länk.",couldNotCreateShareableLinkTooBig:"Kunde inte skapa delbar länk: skissen är för stor",couldNotLoadInvalidFile:"Kunde inte ladda ogiltig fil",importBackendFailed:"Importering från backend misslyckades.",cannotExportEmptyCanvas:"Kan inte exportera tom canvas.",couldNotCopyToClipboard:"Kunde inte kopiera till urklipp.",decryptFailed:"Kunde inte avkryptera data.",uploadedSecurly:"Uppladdning har säkrats med kryptering från ände till ände. vilket innebär att Excalidraw server och tredje part inte kan läsa innehållet.",loadSceneOverridePrompt:"Laddning av extern skiss kommer att ersätta ditt befintliga innehåll. Vill du fortsätta?",collabStopOverridePrompt:`Att stoppa sessionen kommer att skriva över din föregående, lokalt lagrade skiss. Är du säker?
(Om du vill behålla din lokala skiss, stäng bara webbläsarfliken istället.)`,errorAddingToLibrary:"Kunde inte lägga till objekt i biblioteket",errorRemovingFromLibrary:"Kunde inte ta bort objekt från biblioteket",confirmAddLibrary:"Detta kommer att lägga till {{numShapes}} form(er) till ditt bibliotek. Är du säker?",imageDoesNotContainScene:"Den här bilden verkar inte innehålla någon skissdata. Har du aktiverat inbäddning av skiss under export?",cannotRestoreFromImage:"Skiss kunde inte återställas från denna bildfil",invalidSceneUrl:"Det gick inte att importera skiss från den angivna webbadressen. Antingen har den fel format, eller så innehåller den ingen giltig Excalidraw JSON data.",resetLibrary:"Detta kommer att rensa ditt bibliotek. Är du säker?",removeItemsFromsLibrary:"Ta bort {{count}} objekt från biblioteket?",invalidEncryptionKey:"Krypteringsnyckeln måste vara 22 tecken. Livesamarbetet är inaktiverat.",collabOfflineWarning:`Ingen internetanslutning tillgänglig.
Dina ändringar kommer inte att sparas!`},uJe={unsupportedFileType:"Filtypen stöds inte.",imageInsertError:"Kunde inte infoga bild. Försök igen senare...",fileTooBig:"Filen är för stor. Maximal tillåten storlek är {{maxSize}}.",svgImageInsertError:"Kunde inte infoga SVG-bild. SVG-koden ser ogiltig ut.",failedToFetchImage:"Kunde inte hämta bilden.",invalidSVGString:"Ogiltig SVG.",cannotResolveCollabServer:"Det gick inte att ansluta till samarbets-servern. Ladda om sidan och försök igen.",importLibraryError:"Kunde inte ladda bibliotek",collabSaveFailed:"Det gick inte att spara i backend-databasen. Om problemen kvarstår bör du spara filen lokalt för att se till att du inte förlorar ditt arbete.",collabSaveFailed_sizeExceeded:"Det gick inte att spara till backend-databasen, whiteboarden verkar vara för stor. Du bör spara filen lokalt för att du inte ska förlora ditt arbete.",imageToolNotSupported:"Bilder är inaktiverade.",brave_measure_text_error:{line1:"Det ser ut som om du använder Brave-webbläsaren med <bold>Aggressivt Blockera fingeravtryck</bold> inställningen aktiverad.",line2:"Detta kan resultera i trasiga <bold>Textelement</bold> i dina ritningar.",line3:"Vi rekommenderar starkt att du inaktiverar den här inställningen. Du kan följa <link>dessa steg</link> för att inaktivera den.",line4:"Om inaktivering av denna inställning inte åtgärdar visningen av textelement, öppna ett <issueLink>ärende</issueLink> på vår GitHub, eller skriv till oss på <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Inbäddbara element kan inte läggas till i biblioteket.",iframe:"IFrame-element kan inte läggas till i biblioteket.",image:"Stöd för att lägga till bilder till biblioteket kommer snart!"},asyncPasteFailedOnRead:"Kunde inte klistra in (kunde inte läsa från urklipp).",asyncPasteFailedOnParse:"Kunde inte klistra in.",copyToSystemClipboardFailed:"Kunde inte kopiera till urklipp."},aJe={selection:"Markering",image:"Infoga bild",rectangle:"Rektangel",diamond:"Diamant",ellipse:"Ellips",arrow:"Pil",line:"Linje",freedraw:"Rita",text:"Text",library:"Bibliotek",lock:"Håll valt verktyg aktivt efter ritande",penMode:"Pennläge - förhindra touch",link:"Lägg till / Uppdatera länk för en vald form",eraser:"Radergummi",frame:"Rutverktyg",magicframe:"Trådram till kod",embeddable:"Bädda in (web)",laser:"Laserpekare",hand:"Hand (panoreringsverktyg)",extraTools:"Fler verktyg",mermaidToExcalidraw:"Mermaid till Excalidraw",magicSettings:"AI-inställningar"},nJe={canvasActions:"Canvas-åtgärder",selectedShapeActions:"Valda formåtgärder",shapes:"Former"},oJe={canvasPanning:"För att flytta whiteboarden, håll mushjulet eller mellanslagstangenten medan du drar eller använd handverktyget",linearElement:"Klicka för att starta flera punkter, dra för en linje",freeDraw:"Klicka och dra, släpp när du är klar",text:"Tips: du kan också lägga till text genom att dubbelklicka var som helst med markeringsverktyget",embeddable:"Klicka-dra för att skapa en webbplats-inbäddning",text_selected:"Dubbelklicka eller tryck ENTER för att redigera text",text_editing:"Tryck Escape eller CtrlOrCmd + ENTER för att slutföra redigeringen",linearElementMulti:"Klicka på sista punkten eller tryck Escape eller Enter för att avsluta",lockAngle:"Du kan begränsa vinkeln genom att hålla SKIFT",resize:`Du kan behålla proportioner genom att hålla SHIFT medan du ändrar storlek,
håller du ALT ändras storlek relativt mitten`,resizeImage:`Du kan ändra storlek fritt genom att hålla SHIFT,
håll ALT för att ändra storlek från mitten`,rotate:"Du kan begränsa vinklar genom att hålla SHIFT medan du roterar",lineEditor_info:"Håll Ctrl/Cmd och dubbelklicka eller tryck på Ctrl/Cmd + Enter för att redigera punkter",lineEditor_pointSelected:"Tryck på Ta bort för att ta bort punkt(er), Ctrl + D eller Cmd + D för att duplicera, eller dra för att flytta",lineEditor_nothingSelected:`Välj en punkt att redigera (håll SHIFT för att välja flera),
eller håll ned Alt och klicka för att lägga till nya punkter`,placeImage:"Klicka för att placera bilden, eller klicka och dra för att ställa in dess storlek manuellt",publishLibrary:"Publicera ditt eget bibliotek",bindTextToElement:"Tryck på Enter för att lägga till text",deepBoxSelect:"Håll Ctrl eller Cmd för att djupvälja, och för att förhindra att dra",eraserRevert:"Håll Alt för att återställa de element som är markerade för borttagning",firefox_clipboard_write:'Denna funktion kan sannolikt aktiveras genom att ställa in "dom.events.asyncClipboard.clipboardItem" flaggan till "true". För att ändra webbläsarens flaggor i Firefox, besök "about:config" sidan.',disableSnapping:"Håll Ctrl eller Cmd för att inaktivera fästning"},sJe={cannotShowPreview:"Kan inte visa förhandsgranskning",canvasTooBig:"Canvasen kan vara för stor.",canvasTooBigTip:"Tips: prova att flytta de mest avlägsna elementen lite närmare varandra."},lJe={headingMain:"Ett fel uppstod. Försök <button>med att läsa in sidan på nytt.</button>",clearCanvasMessage:"Om omladdning inte fungerar, försök <button>rensa canvasen.</button>",clearCanvasCaveat:" Detta kommer att leda till förlust av arbete ",trackedToSentry:"Felet med identifieraren {{eventId}} spårades på vårt system.",openIssueMessage:"Vi var mycket försiktiga med att inte inkludera din skissinformation om felet. Om din skiss inte är privat, vänligen överväga att följa upp på vår <button>buggspårare.</button> Vänligen inkludera information nedan genom att kopiera och klistra in i GitHub-problemet.",sceneContent:"Skissinnehåll:"},gJe={desc_intro:"Du kan bjuda in personer till din nuvarande skiss för att samarbeta med dig.",desc_privacy:"Oroa dig inte, sessionen använder kryptering från ände till ände, så vad du än ritar kommer att förbli privat. Inte ens vår server kommer att kunna se vad du skissar.",button_startSession:"Starta sessionen",button_stopSession:"Stoppa session",desc_inProgressIntro:"Nu pågår en live-samarbetssession.",desc_shareLink:"Dela denna länk med någon du vill samarbeta med:",desc_exitSession:"Att avbryta sessionen kommer att koppla bort dig från rummet, men du kommer att kunna fortsätta arbeta med skissen, lokalt. Observera att detta inte påverkar andra människor, och de kommer fortfarande att kunna samarbeta på deras version.",shareTitle:"Delta i en live-samarbetssession på Excalidraw"},cJe={title:"Fel"},CJe={disk_title:"Spara till disk",disk_details:"Exportera skissdata till en fil som du kan importera från senare.",disk_button:"Spara till fil",link_title:"Delbar länk",link_details:"Exportera som en skrivskyddad länk.",link_button:"Exportera till länk",excalidrawplus_description:"Spara skissen till din Excalidraw+ arbetsyta.",excalidrawplus_button:"Exportera",excalidrawplus_exportError:"Det gick inte att exportera till Excalidraw+ just nu..."},BJe={blog:"Läs vår blogg",click:"klicka",deepSelect:"Djupval",deepBoxSelect:"Djupval inom boxen, och förhindra att dra",curvedArrow:"Böjd pil",curvedLine:"Böjd linje",documentation:"Dokumentation",doubleClick:"dubbelklicka",drag:"dra",editor:"Redigerare",editLineArrowPoints:"Redigera linje-/pilpunkter",editText:"Redigera text / lägg till etikett",github:"Hittat ett problem? Rapportera",howto:"Följ våra guider",or:"eller",preventBinding:"Förhindra pilbindning",tools:"Verktyg",shortcuts:"Tangentbordsgenvägar",textFinish:"Slutför redigering (text)",textNewLine:"Lägg till ny rad (text)",title:"Hjälp",view:"Visa",zoomToFit:"Zooma för att rymma alla element",zoomToSelection:"Zooma till markering",toggleElementLock:"Lås/Lås upp valda",movePageUpDown:"Flytta sida upp/ner",movePageLeftRight:"Flytta sida vänster/höger"},EJe={title:"Rensa canvas"},dJe={title:"Publicera bibliotek",itemName:"Objektnamn",authorName:"Upphovsmannens namn",githubUsername:"GitHub-användarnamn",twitterUsername:"Twitter-användarnamn",libraryName:"Biblioteksnamn",libraryDesc:"Biblioteksbeskrivning",website:"Webbplats",placeholder:{authorName:"Ditt namn eller användarnamn",libraryName:"Namn på ditt bibliotek",libraryDesc:"Beskrivning av ditt bibliotek för att hjälpa människor att förstå dess användning",githubHandle:"Github-användarnamn (valfritt), så att du kan redigera biblioteket när du har skickat in det för granskning",twitterHandle:"Twitter-användarnamn (valfritt), så vi vet vem att kreditera när du marknadsför på Twitter",website:"Länk till din personliga webbplats eller någon annan (valfritt)"},errors:{required:"Obligatoriskt",website:"Ange en giltig URL"},noteDescription:"Skicka ditt bibliotek för att inkluderas i <link>det offentliga bibliotekets arkiv</link>för andra människor att använda i sina skisser.",noteGuidelines:"Biblioteket måste godkännas manuellt först. Vänligen läs <link>riktlinjerna</link> innan du skickar in. Du behöver ett GitHub-konto för att kommunicera och göra ändringar om så önskas, men det krävs inte.",noteLicense:"Genom att skicka in godkänner du att biblioteket kommer att publiceras under <link>MIT-licens, </link>vilket kort sagt betyder att vem som helst kan använda det utan restriktioner.",noteItems:"Varje objekt måste ha sitt eget namn så att det är filtrerbart. Följande objekt kommer att inkluderas:",atleastOneLibItem:"Välj minst ett biblioteksobjekt för att komma igång",republishWarning:"Obs: några av de markerade objekten är redan markerade som publicerade/skickade. Du bör endast skicka objekt igen när du uppdaterar ett befintligt bibliotek eller inlämning."},IJe={title:"Bibliotek inskickat",content:"Tack {{authorName}}. Ditt bibliotek har skickats för granskning. Du kan följa status<link>här</link>"},hJe={resetLibrary:"Återställ bibliotek",removeItemsFromLib:"Ta bort markerade objekt från biblioteket"},QJe={header:"Exportera bild",label:{withBackground:"Bakgrund",onlySelected:"Endast markerade",darkMode:"Mörkt läge",embedScene:"Bädda in skiss",scale:"Skala",padding:"Utfyllnad"},tooltip:{embedScene:`Skissdata kommer att sparas i den exporterade PNG/SVG-filen så att skissen kan återställas från den.
Kommer att öka exporterad filstorlek.`},title:{exportToPng:"Exportera till PNG",exportToSvg:"Exportera till SVG",copyPngToClipboard:"Kopiera PNG till urklipp"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Kopiera till urklipp"}},pJe={tooltip:"Dina skisser är krypterade från ände till ände så Excalidraws servrar kommer aldrig att se dem.",link:"Blogginlägg om kryptering från ände till ände i Excalidraw"},fJe={angle:"Vinkel",element:"Element",elements:"Element",height:"Höjd",scene:"Skiss",selected:"Valda",storage:"Lagring",title:"Statistik för nördar",total:"Totalt",version:"Version",versionCopy:"Klicka för att kopiera",versionNotAvailable:"Versionen är inte tillgänglig",width:"Bredd"},mJe={addedToLibrary:"Tillagd i biblioteket",copyStyles:"Kopierade stilar.",copyToClipboard:"Kopierad till urklipp.",copyToClipboardAsPng:`Kopierade {{exportSelection}} till urklipp som PNG
({{exportColorScheme}})`,fileSaved:"Fil sparad.",fileSavedToFilename:"Sparad till {filename}",canvas:"canvas",selection:"markering",pasteAsSingleElement:`Använd {{shortcut}} för att klistra in som ett enda element,
eller klistra in i en befintlig textredigerare`,unableToEmbed:"Att bädda in denna webbadress är för närvarande inte tillåtet. Skapa en problemrapport på GitHub för att begära att webbadressen vitlistas.",unrecognizedLinkFormat:"Länken du bäddade in matchar inte det förväntade formatet. Försök klistra in 'embed'-strängen som tillhandahålls av källwebbplatsen"},DJe={transparent:"Genomskinlig",black:"Svart",white:"Vit",red:"Röd",pink:"Rosa",grape:"Lila",violet:"Violett",gray:"Grå",blue:"Blå",cyan:"Turkos",teal:"Blågrön",green:"Grön",yellow:"Gul",orange:"Orange",bronze:"Brons"},yJe={app:{center_heading:"All data sparas lokalt i din webbläsare.",center_heading_plus:"Ville du gå till Excalidraw+ istället?",menuHint:"Exportera, inställningar, språk, ..."},defaults:{menuHint:"Exportera, inställningar och mer...",center_heading:"Förenklade. Diagram.",toolbarHint:"Välj ett verktyg & börja rita!",helpHint:"Genvägar & hjälp"}},wJe={mostUsedCustomColors:"Mest frekvent använda anpassade färger",colors:"Färger",shades:"Nyanser",hexCode:"Hex-kod",noShades:"Inga nyanser tillgängliga för denna färg"},bJe={action:{exportToImage:{title:"Exportera som bild",button:"Exportera som bild",description:"Exportera scendata som en bild från vilken du kan importera senare."},saveToDisk:{title:"Spara till disk",button:"Spara till disk",description:"Exportera scendata till en fil från vilken du kan importera senare."},excalidrawPlus:{title:"Excalidraw+",button:"Exportera till Excalidraw+",description:"Spara skissen till din Excalidraw+ arbetsyta."}},modal:{loadFromFile:{title:"Läs in från fil",button:"Läs in från fil",description:"Laddar från en fil kommer <bold>ersätta ditt befintliga innehåll</bold>.<br></br>Du kan säkerhetskopiera din ritning först med hjälp av ett av alternativen nedan."},shareableLink:{title:"Läs in från länk",button:"Ersätt mitt innehåll",description:"Inläsning av en extern ritning kommer <bold>ersätta ditt befintliga innehåll</bold>.<br></br>Du kan säkerhetskopiera din ritning först genom att använda ett av alternativen nedan."}}},vJe={title:"Mermaid till Excalidraw",button:"Infoga",description:"För närvarande stöds endast <flowchartLink>Flödesdiagram</flowchartLink>,<sequenceLink> Sekvensdiagram </sequenceLink> och <classLink>Klassdiagram</classLink>. De andra typerna kommer att återges som bild i Excalidraw.",syntax:"Mermaid-syntax",preview:"Förhandsgranska"},oCr={labels:eJe,library:tJe,buttons:rJe,alerts:iJe,errors:uJe,toolBar:aJe,headings:nJe,hints:oJe,canvasError:sJe,errorSplash:lJe,roomDialog:gJe,errorDialog:cJe,exportDialog:CJe,helpDialog:BJe,clearCanvasDialog:EJe,publishDialog:dJe,publishSuccessDialog:IJe,confirmDialog:hJe,imageExportDialog:QJe,encrypted:pJe,stats:fJe,toast:mJe,colors:DJe,welcomeScreen:yJe,colorPicker:wJe,overwriteConfirm:bJe,mermaid:vJe}});var rOe={};Dt(rOe,{alerts:()=>RJe,buttons:()=>LJe,canvasError:()=>TJe,clearCanvasDialog:()=>PJe,colorPicker:()=>AOe,colors:()=>XJe,confirmDialog:()=>qJe,default:()=>sCr,encrypted:()=>ZJe,errorDialog:()=>KJe,errorSplash:()=>YJe,errors:()=>NJe,exportDialog:()=>JJe,headings:()=>UJe,helpDialog:()=>OJe,hints:()=>MJe,imageExportDialog:()=>zJe,labels:()=>xJe,library:()=>SJe,mermaid:()=>tOe,overwriteConfirm:()=>eOe,publishDialog:()=>_Je,publishSuccessDialog:()=>WJe,roomDialog:()=>HJe,stats:()=>VJe,toast:()=>jJe,toolBar:()=>GJe,welcomeScreen:()=>$Je});var xJe,SJe,LJe,RJe,NJe,GJe,UJe,MJe,TJe,YJe,HJe,KJe,JJe,OJe,PJe,_Je,WJe,qJe,zJe,ZJe,VJe,jJe,XJe,$Je,AOe,eOe,tOe,sCr;var iOe=_(()=>{zt();xJe={paste:"ஒட்டு",pasteAsPlaintext:"அலங்காரமின்றி ஒட்டு",pasteCharts:"விளக்கப்படங்களை ஒட்டு",selectAll:"எல்லாம் தேர்ந்தெடு",multiSelect:"உறுப்பைத் தெரிவில் சேர்",moveCanvas:"கித்தானை நகர்த்து",cut:"வெட்டு",copy:"நகலெடு",copyAsPng:"நகலகத்திற்கு PNG ஆக நகலெடு",copyAsSvg:"நகலகத்திற்கு SVG ஆக நகலெடு",copyText:"நகலகத்திற்கு உரையாக நகலெடு",copySource:"",convertToCode:"",bringForward:"முன்நோக்கி கொண்டுவா",sendToBack:"பின்னே அனுப்பு",bringToFront:"முன்னே கொண்டுவா",sendBackward:"பின்நோக்கி அனுப்பு",delete:"அழி",copyStyles:"ஒயில்களை நகலெடு",pasteStyles:"ஒயில்களை ஒட்டு",stroke:"கீறல்",background:"பின்புலம்",fill:"நிரப்பல்",strokeWidth:"கீறல் அகலம்",strokeStyle:"கீறல் ஒயில்",strokeStyle_solid:"திடமான",strokeStyle_dashed:"கோடிட்ட",strokeStyle_dotted:"புள்ளியிட்ட",sloppiness:"அசட்டுத்தனம்",opacity:"ஒளிபுகாவியல்பு",textAlign:"உரைச் சீரமைப்பு",edges:"விளிம்புகள்",sharp:"கூர்மை",round:"வட்டம்",arrowheads:"அம்புத்தலைகள்",arrowhead_none:"ஏதுமில்லை",arrowhead_arrow:"அம்பு",arrowhead_bar:"பட்டை",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"முக்கோணம்",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"எழுத்துரு அளவு",fontFamily:"எழுத்துரு குடும்பம்",addWatermark:'"எக்ஸ்கேலிட்ரா கொண்டு ஆனது"-ஐச் சேர்',handDrawn:"கையால்-வரைந்த",normal:"இயல்பு",code:"குறியீடு",small:"சிறிய",medium:"நடுத்தரமான",large:"பெரிய",veryLarge:"மிகப் பெரிய",solid:"திடமான",hachure:"மலைக்குறிக்கோடு",zigzag:"கோணல்மாணல்",crossHatch:"குறுக்குகதவு",thin:"மெல்லிய",bold:"பட்டை",left:"இடது",center:"மையம்",right:"வலது",extraBold:"கூடுதல் பட்டை",architect:"கட்டடக்கலைஞர்",artist:"கலைஞர்",cartoonist:"கேலிச்சித்திர ஓவியர்",fileTitle:"கோப்புப் பெயர்",colorPicker:"நிறத் தேர்வி",canvasColors:"கித்தானில் பயன்படுத்தப்பட்டது",canvasBackground:"கித்தான் பின்னணி",drawingCanvas:"கித்தான் வரைகிறது",layers:"அடுக்குகள்",actions:"செயல்கள்",language:"மொழி",liveCollaboration:"நேரடி கூட்டுப்பணி...",duplicateSelection:"நகலாக்கு",untitled:"தலைப்பற்றது",name:"பெயர்",yourName:"உங்கள் பெயர்",madeWithExcalidraw:"எக்ஸ்கேலிட்ரா கொண்டு ஆனது",group:"தேர்ந்ததை ஒன்றிணை",ungroup:"தேர்ந்ததைப் பிரி",collaborators:"கூட்டுப்பணியினர்",showGrid:"கட்டதைக் காட்டு",addToLibrary:"நூலகத்தில் சேர்",removeFromLibrary:"நூலகத்திலிருந்து நீக்கு",libraryLoadingMessage:"நூலகத்தை ஏற்றுகிறது…",libraries:"நூலகங்களை உலாவு",loadingScene:"காட்சியை ஏற்றுகிறது…",align:"சீரமை",alignTop:"மேலே சீரமை",alignBottom:"கீழே சீரமை",alignLeft:"இடதில் சீரமை",alignRight:"வலதில் சீரமை",centerVertically:"செங்குத்தாக மையப்படுத்து",centerHorizontally:"கிடைமட்டமாக மையப்படுத்து",distributeHorizontally:"கிடைமட்டமாக விநியோகி",distributeVertically:"செங்குத்தாக விநியோகி",flipHorizontal:"கிடைமட்டமாக புரட்டு",flipVertical:"செங்குத்தாக புரட்டு",viewMode:"பார்வை பயன்முறை",share:"பகிர்",showStroke:"கீறல் நிற எடுப்பானைக் காட்டு",showBackground:"பின்னணி நிற எடுப்பானைக் காட்டு",toggleTheme:"தோற்றத்தை நிலைமாற்று",personalLib:"தனக்குரிய நூலகம்",excalidrawLib:"எக்ஸ்கேலிட்ரா நூலகம்",decreaseFontSize:"எழுத்துரு அளவைக் குறை",increaseFontSize:"எழுத்துரு அளவை அதிகரி",unbindText:"உரையைப் பிணைவவிழ்",bindText:"உரையைக் கொள்கலனுக்குப் பிணை",createContainerFromText:"உரையைக் கொள்கலனுள் சுருட்டு",link:{edit:"தொடுப்பைத் திருத்து",editEmbed:"",create:"தொடுப்பைப் படை",createEmbed:"",label:"தொடுப்பு",labelEmbed:"",empty:""},lineEditor:{edit:"தொடுப்பைத் திருத்து",exit:"வரி திருத்தியிலிருந்து வெளியேறு"},elementLock:{lock:"பூட்டு",unlock:"பூட்டவிழ்",lockAll:"எல்லாம் பூட்டு",unlockAll:"எல்லாம் பூட்டவிழ்"},statusPublished:"வெளியிடப்பட்டது",sidebarLock:"பக்கப்பட்டையைத் திறந்தே வை",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"கித்தானிலிருந்து நிறம் தேர்ந்தெடு",textToDiagram:"",prompt:""},SJe={noItems:"இதுவரை உருப்படிகள் சேரக்கப்படவில்லை...",hint_emptyLibrary:"கித்தானிலுள்ள உருப்படியை இங்குச் சேர்க்க தேர்ந்தெடு, அல்லது கீழுள்ள பொது களஞ்சியத்திலிருந்து நூலகத்தை நிறுவு.",hint_emptyPrivateLibrary:"கித்தானிலுள்ள உருப்படியை இங்குச் சேர்க்க தேர்ந்தெடு."},LJe={clearReset:"கித்தானை அகரமாக்கு",exportJSON:"கோப்புக்கு ஏற்றுமதிசெய்",exportImage:"படத்தை ஏற்றுமதிசெய்...",export:"இதில் சேமி...",copyToClipboard:"நகலகத்திற்கு நகலெடு",save:"தற்போதைய கோப்புக்குச் சேமி",saveAs:"இப்படி சேமி",load:"திற",getShareableLink:"பகிரக்கூடிய தொடுப்பைப் பெறு",close:"மூடு",selectLanguage:"மொழியைத் தேர்ந்தெடு",scrollBackToContent:"உருட்டி உள்ளடக்கத்துக்குத் திரும்பு",zoomIn:"பெரிதாக்கு",zoomOut:"சிறிதாக்கு",resetZoom:"உருவளவை அகரமாக்கு",menu:"சிறுபட்டி",done:"முடிந்தது",edit:"திருத்து",undo:"செயல்தவிர்",redo:"மீண்டும்செய்",resetLibrary:"நூலகத்தை அகரமாக்கு",createNewRoom:"புதிய அறையை உருவாக்கு",fullScreen:"முழுத் திரை",darkMode:"கருமை பயன்முறை",lightMode:"வெளிர்ந்த பயன்முறை",zenMode:"ஜென் பயன்முறை",objectsSnapMode:"",exitZenMode:"ஜென் பயன்முறையை விலகு",cancel:"ரத்துசெய்",clear:"துடை",remove:"நீக்கு",embed:"",publishLibrary:"பிரசுரி",submit:"சமர்ப்பி",confirm:"உறுதிசெய்",embeddableInteractionButton:""},RJe={clearReset:"இது முழு கித்தானையும் துடைக்கும். நீங்கள் உறுதியா?",couldNotCreateShareableLink:"பகிரக்கூடிய தொடுப்பை உருவாக்க முடியவில்லை.",couldNotCreateShareableLinkTooBig:"பகிரக்கூடிய தொடுப்பை உருவாக்க முடியவில்லை: காட்சி மிகப்பெரிதாக உள்ளது",couldNotLoadInvalidFile:"செல்லாத கோப்பை ஏற்ற முடியவில்லை",importBackendFailed:"தேகத்திலிருந்து இறக்குமதி தோல்வி.",cannotExportEmptyCanvas:"காலியான கித்தானை ஏற்றுமதிசெய்ய முடியாது.",couldNotCopyToClipboard:"நகலகத்திற்கு நகலெடுக்க முடியவில்லை.",decryptFailed:"தரவை மறைநீக்க முடியவில்லை.",uploadedSecurly:"பதிவேற்றம் இருமுனை மறையாகத்தால் பாதுகாக்கப்பட்டுள்ளது, எனவே எக்ஸ்கேலிட்ரா சேவையகமும் மூன்றாம் தரப்பினரும் உள்ளடக்கத்தை வாசிக்கமுடியாது.",loadSceneOverridePrompt:"வெளிப்புறச்சித்திரமேற்றல் இருக்கிற உள்ளடக்கத்தை இடங்கொள்ளும். தொடர விருப்பமா?",collabStopOverridePrompt:`அமர்வை நிறுத்துதல் முன்னர் அகமாக தேக்கிய உம் சித்திரத்தை மேலெழுதும். நீங்கள் உறுதியா?
(உம் அக சித்திரத்தை வைக்கவேண்டுமெனில், சும்மா உலாவி தாவலை மூடுக அதற்குபதிலாக.)`,errorAddingToLibrary:"உருப்படியை நூலகத்தில் சேர்க்க இயலா",errorRemovingFromLibrary:"உருப்படியை நூலகத்திலிருந்து நீக்க இயலா",confirmAddLibrary:"இதனால் {{numShapes}} வடிவம்(கள்) உம் நூலகத்தில் சேரும். நீங்கள் உறுதியா?",imageDoesNotContainScene:"இப்படத்தில் காட்சி தரவு ஏதும் இருப்பதுபோல் தெரியவில்லை. ஏற்றுமதியின்போது காட்சி உட்பதிதலை இயக்கினீரா?",cannotRestoreFromImage:"இப்படக்கோப்பிலிருந்து காட்சி மீட்டெடுக்கப்பட முடியாது",invalidSceneUrl:"வழங்கப்பட்ட உரலியிலிருந்து காட்சியை இறக்கவியலா. இது தவறான வடிவத்தில் உள்ளது, அ செல்லத்தக்க எக்ஸ்கேலிட்ரா JSON தரவைக் கொண்டில்லை.",resetLibrary:"இது உங்கள் நுலகத்தைத் துடைக்கும். நீங்கள் உறுதியா?",removeItemsFromsLibrary:"{{count}} உருப்படி(கள்)-ஐ உம் நூலகத்திலிருந்து அழிக்கவா?",invalidEncryptionKey:"மறையாக்க விசை 22 வரியுருக்கள் கொண்டிருக்கவேண்டும். நேரடி கூட்டுப்பணி முடக்கப்பட்டது.",collabOfflineWarning:`இணைய இணைப்பு இல்லை.
உமது மாற்றங்கள் சேமிக்கப்படா!`},NJe={unsupportedFileType:"ஆதரிக்கப்படா கோப்பு வகை.",imageInsertError:"படத்தைப் புகுத்தவியலா. பிறகு மீண்டும் முயலவும்...",fileTooBig:"கோப்பு மிகப்பெரிது. அனுமதிக்கப்பட்ட அதிகபட்ச அளவு {{maxSize}}.",svgImageInsertError:"எஸ்விஜி படத்தைப் புகுத்தவியலா. எஸ்விஜியின் மார்க்அப் செல்லாததாக தெரிகிறது.",failedToFetchImage:"",invalidSVGString:"செல்லாத SVG.",cannotResolveCollabServer:"கூட்டுப்பணிச் சேவையகத்துடன் இணைக்க முடியவில்லை. பக்கத்தை மீளேற்றி மீண்டும் முயலவும்.",importLibraryError:"நூலகத்தை ஏற்ற முடியவில்லை",collabSaveFailed:"பின்முனை தரவுத்தளத்தில் சேமிக்க முடியவில்லை. சிக்கல்கள் நீடித்தால், உமது வேலைகளை இழக்காமலிருப்பதை உறுதிசெய்ய உமது கோப்பை உள்ளகத்தில் சேமிக்க வேண்டும்.",collabSaveFailed_sizeExceeded:"பின்முனை தரவுத்தளத்தில் சேமிக்க முடியவில்லை, கித்தான் மிகப்பெரிதாகத் தெரிகிறது. உமது வேலைகளை இழக்காமலிருப்பதை உறுதிசெய்ய உமது கோப்பை உள்ளகத்தில் சேமிக்க வேண்டும்.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},GJe={selection:"தெரிவு",image:"படத்தைப் புகுத்து",rectangle:"செவ்வகம்",diamond:"வைரம்",ellipse:"நீள்வட்டம்",arrow:"அம்பு",line:"வரி",freedraw:"வரை",text:"உரை",library:"நூலகம்",lock:"தேர்ந்த கருவியை வரைந்த பின்பும் வைத்திரு",penMode:"பேனா - தடுப்பு தொடுதல்",link:"தேர்தெடுத்த வடிவத்திற்குத் தொடுப்பைச் சேர்/ புதுப்பி",eraser:"அழிப்பி",frame:"சட்டகம் கருவி",magicframe:"",embeddable:"",laser:"",hand:"கை (பார்வை நகர்கும் கருவி)",extraTools:"மற்ற கருவிகள்",mermaidToExcalidraw:"",magicSettings:""},UJe={canvasActions:"கித்தான் செயல்கள்",selectedShapeActions:"தேர்ந்த வடிவம் செயல்கள்",shapes:"வடிவங்கள்"},MJe={canvasPanning:"",linearElement:"பல புள்ளிகளைத் துவக்க சொடுக்கு, ஒற்றை வரிக்கு பிடித்திழு",freeDraw:"சொடுக்கி பிடித்திழு, முடித்ததும் விடுவி",text:"துணுக்குதவி: தெரிவு கருவி கொண்டு எங்காவது இரு-சொடுக்கி உரையைச் சேர்க்கலாம்",embeddable:"",text_selected:"உரையைத் திருத்த இரு-சொடுக்கு அ ENTERஐ அழுத்து",text_editing:"திருத்துவதை முடிக்க Escape அ CtrlOrCmd+ENTERஐ அழுத்து",linearElementMulti:"கடைசி புள்ளியில் சொடுக்கு அ முடிக்க Escape அ Enter அழுத்து",lockAngle:"SHIFTஐ அழுத்திப்பிடித்து கோணத்தை வற்புறுத்தலாம்",resize:`மறுஅளவிடுகையில் SHIFTஐ அழுத்திப்பிடித்து விகிதசமத்தை வற்புறுத்தலாம்,
மையத்திலிருந்து மறுஅளவிட ALTஐ அழுத்திப்பிடி`,resizeImage:`SHIFTஐ நீண்டழுத்தி கட்டற்று அளவுமாற்றலாம்,
மையத்திலிருந்து அளவுமாற்ற ALTஐ நீண்டழுத்துக`,rotate:"சுழற்றுகையில் SHIFTஐ அழுத்திப்பிடித்து கோணங்களை வற்புறுத்தலாம்",lineEditor_info:"",lineEditor_pointSelected:`புள்ளி(கள்)ஐ நீக்க Deleteஐ அழுத்து,
நகலாக்க CtrlOrCmd+D, அ நகர்த்த பிடித்திழு`,lineEditor_nothingSelected:`திருத்த புள்ளியைத் தேர்ந்தெடு (பலவற்றை தேர SHIFTஐ அழுத்திப்பிடி),
அ புதிய புள்ளிகளைச் சேர்க்க Altஐ அழுத்திப்பிடித்துச் சொடுக்கு`,placeImage:"படத்தை வைக்கச் சொடுக்கு, அ கைமுறையாக அளவு அமைக்க சொடுக்கி பிடித்திழு",publishLibrary:"உம் சொந்த நூலகத்தைப் பிரசுரி",bindTextToElement:"உரையைச் சேர்க்க enterஐ அழுத்து",deepBoxSelect:"ஆழ்ந்துத் தேரவும் பிடித்திழுத்தலைத் தவிர்க்கவும் CtrlOrCmdஐ அழுத்திப்பிடி",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},TJe={cannotShowPreview:"முன்னோட்டம் காட்ட இயலவில்லை",canvasTooBig:"கித்தான் மிகப்பெரிதாக இருக்கலாம்.",canvasTooBigTip:"துணுக்குதவி: தூரத்திலுள்ள உறுப்புகளைப் நெருக்கமாக நகர்த்தப்பார்."},YJe={headingMain:"பிழையைச் சந்தித்தீரா. முயலவும் <button>பக்கத்தை மீண்டுமேற்றுகிறது.</button>",clearCanvasMessage:"மீண்டுமேற்றல் வேலைசெய்யவிட்டால், முயற்சி <button>கித்தானைத் துடைக்கிறது.</button>",clearCanvasCaveat:" இது வேலையை இழக்கக்கூடும் ",trackedToSentry:"இனங்காணியில் பிழை {{eventId}} எங்கள் இயங்குதளத்தில் தடமறியப்பட்டது.",openIssueMessage:"பிழையில் உம் காட்சி தகவலை உள்ளடக்காமலிருக்க நாங்கள் மிக எச்சரிக்கையாக இருந்தோம். உம் காட்சி தனிப்பட்டதில்லையெனில், பின்தொடர்வதற்கு பரிசீலிக்கவும் எங்கள் <button>பிழை தடமி.</button> கீழுள்ள தகவலை நகலெடுத்து ஒட்டி GitHub சிக்கலுள் உள்ளடக்கவும்.",sceneContent:"காட்சி உள்ளடக்கம்:"},HJe={desc_intro:"உம்முடன் கூட்டுப்பணிசெய்ய மக்களை தற்போதைய காட்சிக்கு அழைப்பிடலாம்.",desc_privacy:"வருந்தாதீர், அமர்வு இருமுனை மறையகத்தைப் பயன்படுத்துகிறது, ஆக நீங்கள் வரைவது எதுவும் தனிப்பட்டதாக இருக்கும். எங்கள் சேவையகத்தால் கூட நீங்கள் என்ன செய்ததைப் பார்க்கவியலாது.",button_startSession:"அமர்வைத் துவக்கு",button_stopSession:"அமர்வை நிறுத்து",desc_inProgressIntro:"நேரடி-கூட்டுப்பணி அமர்வு தற்போது செயலிலுள்ளது.",desc_shareLink:"கூட்டுப்பணிபுரிய விரும்பும் எவருனும் இத்தொடுப்பைப் பகிர்க:",desc_exitSession:"அமர்வை நிறுத்தல் உம்மை அறையிலிருந்து துண்டிக்கும், ஆனால் காட்சியுடன் தொடர்ந்து பணிபுரிய உம்மாலியலும், அகமாக. இது பிற மக்களைப் பாதிக்காதென்பதைக் குறி, மற்றும் அவர்களாலவர்களுடைய பதிப்பில் இன்னும் கூட்டுப்பணிபுரியவியலும்.",shareTitle:"எக்ஸ்கேலிட்ராவில் நேரடி கூட்டுப்பணி அமர்வில் சேர்"},KJe={title:"பிழை"},JJe={disk_title:"வட்டில் சேமி",disk_details:"காட்சித் தரவை நீங்கள் பின்னர் இறக்குமதி செய்யக்கூடிய ஒரு கோப்பிற்கு ஏற்றுமதிசெய்க.",disk_button:"கோப்பில் சேமி",link_title:"பகிரக்கூடிய தொடுப்பு",link_details:"வாசிக்க-மட்டும் தொடுப்பாக ஏற்றுமதிசெய்.",link_button:"தொடுப்புக்கு ஏற்றுமதிசெய்",excalidrawplus_description:"காட்சியை உன் எக்ஸ்கேலிட்ரா பணியிடத்தில் சேமி.",excalidrawplus_button:"ஏற்றுமதி",excalidrawplus_exportError:"இத்தருணத்தில் எக்ஸ்கேலிட்ரா+ க்கு ஏற்றுமதிசெய்ய முடியவில்லை..."},OJe={blog:"எமது வலைப்பூவை வாசி",click:"சொடுக்கு",deepSelect:"ஆழ்ந்துத் தேர்",deepBoxSelect:"பெட்டியினுள் ஆழ்ந்துத் தேர், மற்றும் பிடித்திழுத்தலைத் தவிர்",curvedArrow:"வளைந்த அம்பு",curvedLine:"வளைந்த வரி",documentation:"ஆவணமாக்கல்",doubleClick:"இரு-சொடுக்கு",drag:"பிடித்திழு",editor:"திருத்தி",editLineArrowPoints:"",editText:"",github:"சிக்கலைக் கண்டீரா? சமர்ப்பி",howto:"எங்கள் கையேடுகளைப் பின்பற்றுக",or:"அ",preventBinding:"அம்பு பிணைதலைத் தவிர்",tools:"கருவிகள்",shortcuts:"விசைப்பலகை குறுக்குவழிகள்",textFinish:"திருத்துதலை முடி (உரை திருத்தி)",textNewLine:"புதிய வரியைச் சேர் (உரை திருத்தி)",title:"உதவி",view:"பார்",zoomToFit:"அனைத்துறுப்புகளும் பொருந்தும்படி விரிவாக்கு",zoomToSelection:"தெரிவுக்கு விரிவாக்கு",toggleElementLock:"தேர்ந்தெடுப்பைப் பூட்டு/பூட்டவிழ்",movePageUpDown:"மேலே/கீழே நகர்த்தவும்",movePageLeftRight:"இடது/வலது பக்கம் நகர்த்தவும்"},PJe={title:"கித்தானைத் துடை"},_Je={title:"நூலகத்தைப் பிரசுரி",itemName:"உருப்படியின் பெயர்",authorName:"ஆசிரியர் பெயர்",githubUsername:"GitHub பயனர்பெயர்",twitterUsername:"டுவிட்டர் பயனர்பெயர்",libraryName:"நூலக பெயர்",libraryDesc:"நூலக விவரிப்பு",website:"வலைத்தளம்",placeholder:{authorName:"உம் பெயர் அ பயனர்பெயர்",libraryName:"உம் நூலகத்தின் பெயர்",libraryDesc:"உம் நூலகத்தின் விவரிப்பு இதன் பயன்பாட்டை மக்கள் புரிந்துகொள்ளவுதவ",githubHandle:"GitHub கைப்பிடி (விரும்பினால்), ஆதலால் நீங்கள் நூலகத்தை மதிப்பாய்விற்காக சமர்ப்பித்தவுடன் திருத்தமுடியும்",twitterHandle:"டுவிட்டர் பயனர்பெயர் (விரும்பினால்), ஆதலால் டுவிட்டரில் முன்னிறுத்தும்போது யாமெவரைப் புகழ்வதென்றறிவோம்",website:"உமக்குரிய வலைத்தளத்திற்கு அ வேறெங்கிற்குமான தொடுப்பு (விரும்பினால்)"},errors:{required:"தேவைப்டுகிறது",website:"செல்லத்தக்க உரலியை உள்ளிடு"},noteDescription:"உம் நூலகத்தைச் சமர்ப்பி உள்ளடக்குவதற்கு <link>பொது நூலக களஞ்சியத்தில்</link>பிற மக்களவர்களின் சித்திரங்களில் பயன்படுத்த.",noteGuidelines:"நூலகம் முதலில் கைமுறையாக ஒப்புக்கொள்ளப்படவேண்டும். வாசிக்கவும் <link>வழிகாட்டுதல்களைச்</link> சமர்ப்பிக்கும் முன்பு. கோரப்பட்டால் தொடர்புகொள்ள மற்றும் மாற்றங்கள் செய்ய உமக்கொரு GitHub கணக்கு தேவை, ஆனால் அது கண்டிப்பாக தேவையல்ல.",noteLicense:"சமர்ப்பிப்பதனால், நூலகம் இதனடியில் பிரசரிக்கப்பட ஏற்கிறீர்கள் <link>MIT உரிமம், </link>சுருக்கமாக எவருமிதைப் வரையறையின்றி பயன்படுத்தலாமென குறிக்கிறது.",noteItems:"வடிக்கட்டக்கூடியதாகவிருக்க ஒவ்வொரு நூலகவுருப்படிக்கும் சொந்த பெயர் இருக்கவேண்டும். பின்வரும் நூலகவுருப்படிகள் உள்ளடக்கப்படும்:",atleastOneLibItem:"ஆரம்பிக்க ஒரு நூலக உருப்படியையாவது தேர்ந்தெடுக்கவும்",republishWarning:""},WJe={title:"நூலகம் சமர்ப்பிக்கப்பட்டது",content:"நன்றி {{authorName}}. உமது நூலகம் மதிப்பாய்விற்காக சமர்ப்பிக்கப்பட்டது. நிலையை நீங்கள் தடமறியலாம்<link>இங்கே</link>"},qJe={resetLibrary:"நூலகத்தை அகரமாக்கு",removeItemsFromLib:"நூலகத்திலிருந்து தேர்ந்தெடுத்த உருப்படிகளை நீக்கு"},zJe={header:"படத்தை ஏற்றுமதிதல",label:{withBackground:"பின்னணி",onlySelected:"தேர்ந்ததை மட்டும்",darkMode:"இருள் பயன்முறை",embedScene:"காட்சியை உட்பொதி",scale:"அளவுகோல்",padding:""},tooltip:{embedScene:""},title:{exportToPng:"PNGக்கு ஏற்றுமதிசெய்",exportToSvg:"SVGக்கு ஏற்றுமதிசெய்",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:""}},ZJe={tooltip:"உம் சித்திரங்கள் இருமுனை மறையாக்கம் செய்யப்பட்டவையாதலால் எக்ஸ்கேலிட்ராவின் சேவையகங்கள் அவற்றை ஒருபோதும் பார்க்கா.",link:"எக்ஸ்கேலிட்ராவில் இருமுனை மறையாக்கம் மீதான வலைப்பூ இடுகை"},VJe={angle:"கோணம்",element:"உறுப்பு",elements:"உறுப்புகள்",height:"உயரம்",scene:"காட்சி",selected:"தேர்ந்தவை",storage:"சேமிப்பகம்",title:"மேதாவிகளுக்கான புள்ளிவிவரங்கள்",total:"மொத்தம்",version:"பதிப்பு",versionCopy:"நகலெடுக்க சொடுக்கு",versionNotAvailable:"பதிப்பு கிடைக்கவில்லை",width:"அகலம்"},jJe={addedToLibrary:"நூலகத்தில் சேர்க்கப்பட்டது",copyStyles:"ஒயில்கள் நகலெடுக்கப்பட்டன.",copyToClipboard:"நகலகத்திற்கு நகலெடுக்கப்பட்டது.",copyToClipboardAsPng:`{{exportSelection}}-ஐ நகலகத்திற்கு PNG ஆக நகலெடுத்தது
({{exportColorScheme}})`,fileSaved:"கோப்பு சேமிக்கப்பட்டது.",fileSavedToFilename:"{filename}-க்கு சேமிக்கப்பட்டது",canvas:"கித்தான்",selection:"தெரிவு",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},XJe={transparent:"ஒளிபுகுத்தன்மை",black:"கருப்பு",white:"வெள்ளை",red:"சிவப்பு",pink:"இளஞ்சிவப்பு",grape:"திராட்சை",violet:"ஊதா",gray:"சாம்பல்",blue:"நீலம்",cyan:"மயில்நிறம்",teal:"டீல்",green:"பச்சை",yellow:"மஞ்சள்",orange:"ஆரஞ்சு",bronze:"வெண்கலம்"},$Je={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"எளிமையாக வரைபடங்கள் உருவாக்க!",toolbarHint:"கருவியைத் தேர்ந்தெடு & வரை!",helpHint:"குறுக்குவழிகள் & உதவி"}},AOe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},eOe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},tOe={title:"",button:"",description:"",syntax:"",preview:""},sCr={labels:xJe,library:SJe,buttons:LJe,alerts:RJe,errors:NJe,toolBar:GJe,headings:UJe,hints:MJe,canvasError:TJe,errorSplash:YJe,roomDialog:HJe,errorDialog:KJe,exportDialog:JJe,helpDialog:OJe,clearCanvasDialog:PJe,publishDialog:_Je,publishSuccessDialog:WJe,confirmDialog:qJe,imageExportDialog:zJe,encrypted:ZJe,stats:VJe,toast:jJe,colors:XJe,welcomeScreen:$Je,colorPicker:AOe,overwriteConfirm:eOe,mermaid:tOe}});var LOe={};Dt(LOe,{alerts:()=>oOe,buttons:()=>nOe,canvasError:()=>COe,clearCanvasDialog:()=>QOe,colorPicker:()=>FOe,colors:()=>vOe,confirmDialog:()=>mOe,default:()=>lCr,encrypted:()=>yOe,errorDialog:()=>dOe,errorSplash:()=>BOe,errors:()=>sOe,exportDialog:()=>IOe,headings:()=>gOe,helpDialog:()=>hOe,hints:()=>cOe,imageExportDialog:()=>DOe,labels:()=>uOe,library:()=>aOe,mermaid:()=>SOe,overwriteConfirm:()=>xOe,publishDialog:()=>pOe,publishSuccessDialog:()=>fOe,roomDialog:()=>EOe,stats:()=>wOe,toast:()=>bOe,toolBar:()=>lOe,welcomeScreen:()=>kOe});var uOe,aOe,nOe,oOe,sOe,lOe,gOe,cOe,COe,BOe,EOe,dOe,IOe,hOe,QOe,pOe,fOe,mOe,DOe,yOe,wOe,bOe,vOe,kOe,FOe,xOe,SOe,lCr;var ROe=_(()=>{zt();uOe={paste:"วาง",pasteAsPlaintext:"วางโดยไม่มีการจัดรูปแบบ",pasteCharts:"วางแผนภูมิ",selectAll:"เลือกทั้งหมด",multiSelect:"",moveCanvas:"",cut:"ตัด",copy:"คัดลอก",copyAsPng:"คัดลองไปยังคลิปบอร์ดเป็น PNG",copyAsSvg:"คัดลองไปยังคลิปบอร์ดเป็น SVG",copyText:"คัดลองไปยังคลิปบอร์ดเป็นข้อความ",copySource:"",convertToCode:"",bringForward:"นำขึ้นข้างบน",sendToBack:"ย้ายไปข้างล่าง",bringToFront:"นำขึ้นข้างหน้า",sendBackward:"ย้ายไปข้างหลัง",delete:"ลบ",copyStyles:"คัดลอกรูปแบบ",pasteStyles:"วางรูปแบบ",stroke:"เส้นขอบ",background:"พื้นหลัง",fill:"เติมสี",strokeWidth:"น้ำหนักเส้นขอบ",strokeStyle:"รูปแบบเส้น",strokeStyle_solid:"เส้นทึบ",strokeStyle_dashed:"เส้นประ",strokeStyle_dotted:"จุด",sloppiness:"ความเลอะเทอะ",opacity:"ความทึบแสง",textAlign:"จัดข้อความ",edges:"ขอบ",sharp:"",round:"",arrowheads:"หัวลูกศร",arrowhead_none:"ไม่มี",arrowhead_arrow:"ลูกศร",arrowhead_bar:"แถบ",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"สามเหลี่ยม",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"ขนาดตัวอักษร",fontFamily:"แบบตัวอักษร",addWatermark:'เพิ่มลายน้ำ "สร้างด้วย Excalidraw"',handDrawn:"ลายมือ",normal:"ปกติ",code:"โค้ด",small:"เล็ก",medium:"กลาง",large:"ใหญ่",veryLarge:"ใหญ่มาก",solid:"",hachure:"",zigzag:"",crossHatch:"",thin:"บาง",bold:"หนา",left:"ซ้าย",center:"กลาง",right:"ขวา",extraBold:"หนาพิเศษ",architect:"",artist:"ศิลปิน",cartoonist:"",fileTitle:"ชื่อไฟล์",colorPicker:"เลือกสีที่กำหนดเอง",canvasColors:"",canvasBackground:"",drawingCanvas:"",layers:"",actions:"การกระทำ",language:"ภาษา",liveCollaboration:"",duplicateSelection:"ทำสำเนา",untitled:"ไม่มีชื่อ",name:"ชื่อ",yourName:"ชื่อของคุณ",madeWithExcalidraw:"",group:"จัดกลุ่ม",ungroup:"ยกเลิกการจัดกลุ่ม",collaborators:"",showGrid:"แสดงเส้นตาราง",addToLibrary:"เพิ่มไปในคลัง",removeFromLibrary:"นำออกจากคลัง",libraryLoadingMessage:"กำลังโหลดคลัง...",libraries:"",loadingScene:"กำลังโหลดฉาก",align:"จัดตำแหน่ง",alignTop:"จัดชิดด้านบน",alignBottom:"จัดชิดด้านล่าง",alignLeft:"จัดชิดซ้าย",alignRight:"จัดชิดขวา",centerVertically:"กึ่งกลางแนวตั้ง",centerHorizontally:"กึ่งกลางแนวนอน",distributeHorizontally:"กระจายแนวนอน",distributeVertically:"กระจายแนวตั้ง",flipHorizontal:"พลิกแนวนอน",flipVertical:"พลิกแนวตั้ง",viewMode:"โหมดมุมมอง",share:"แชร์",showStroke:"",showBackground:"",toggleTheme:"สลับธีม",personalLib:"คลังของฉัน",excalidrawLib:"คลังของ Excalidraw",decreaseFontSize:"ลดขนาดตัวอักษร",increaseFontSize:"เพิ่มขนาดตัวอักษร",unbindText:"ยกเลิกการผูกติด",bindText:"",createContainerFromText:"",link:{edit:"แก้ไขลิงก์",editEmbed:"แก้ไขลิงค์และการฝัง",create:"สร้างลิงค์",createEmbed:"สร้างลิงค์และการฝัง",label:"ลิงค์",labelEmbed:"ลิงค์และการฝัง",empty:"ไม่ได้ใส่ลิงค์"},lineEditor:{edit:"แก้ไขเส้น",exit:""},elementLock:{lock:"ล็อก",unlock:"ปลดล็อก",lockAll:"ล็อกทั้งหมด",unlockAll:"ปลดล็อกทั้งหมด"},statusPublished:"เผยแพร่",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},aOe={noItems:"ยังไม่มีรายการที่เพิ่มเข้าไปได้",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},nOe={clearReset:"รีเซ็ทผืนผ้าใบ",exportJSON:"ส่งออกไปยังไฟล์",exportImage:"ส่งออกเป็นรูปภาพ",export:"บันทึกไปยัง",copyToClipboard:"คัดลอกไปยังคลิปบอร์ด",save:"บันทึกเป็นไฟล์ปัจจุบัน",saveAs:"บันทึกเป็น",load:"เปิด",getShareableLink:"สร้างลิงค์ที่แชร์ได้",close:"ปิด",selectLanguage:"เลือกภาษา",scrollBackToContent:"เลื่อนกลับไปด้านบน",zoomIn:"ซูมเข้า",zoomOut:"ซูมออก",resetZoom:"รีเซ็ตการซูม",menu:"เมนู",done:"เสร็จสิ้น",edit:"แก้ไข",undo:"เลิกทำ",redo:"ทำซ้ำ",resetLibrary:"รีเซ็ตคลัง",createNewRoom:"สร้างห้องใหม่",fullScreen:"เต็มหน้าจอ",darkMode:"โหมดกลางคืน",lightMode:"โหมดกลางวัน",zenMode:"โหมด Zen",objectsSnapMode:"",exitZenMode:"ออกจากโหมด Zen",cancel:"ยกเลิก",clear:"เคลียร์",remove:"ลบ",embed:"สลับการฝัง",publishLibrary:"เผยแพร่",submit:"ตกลง",confirm:"ยืนยัน",embeddableInteractionButton:"คลิกเพื่อปฏิสัมพันธ์"},oOe={clearReset:"",couldNotCreateShareableLink:"ไม่สามารถสร้างลิงค์ได้",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"ไม่สามารถโหลดไฟล์ที่ผิดพลาดได้",importBackendFailed:"เกิดข้อผิดพลาดจากการนำเข้าจากระบบหลังบ้าน",cannotExportEmptyCanvas:"ไม่สามารถนำออกจากผืนผ้าใบที่ว่างเปล่าได้",couldNotCopyToClipboard:"ไม่สามารถคัดลอกไปยังคลิปบอร์ดได้",decryptFailed:"ไม่สามารถถอดรหัสข้อมูลได้",uploadedSecurly:"การอัพโหลดได้ถูกเข้ารหัสแบบ end-to-end หมายความว่าเซิร์ฟเวอร์ของ Excalidraw และบุคคลอื่นไม่สามารถอ่านข้อมูลได้",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"ไม่สามารถเพิ่มรายการเข้าไปในคลังได้",errorRemovingFromLibrary:"ไม่สามารถลบรายการนี้ออกจากคลังได้",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},sOe={unsupportedFileType:"ไม่รองรับชนิดของไฟล์นี้",imageInsertError:"ไม่สามารถเพิ่มรูปภาพได้ ลองอีกครั้งในภายหลัง",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"ไฟล์ SVG ผิดพลาด",cannotResolveCollabServer:"ไม่สามารถเชื่อต่อกับ collab เซิร์ฟเวอร์ได้ โปรดลองโหลดหน้านี้ใหม่และลองอีกครั้ง",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"การเพิ่มองค์ประกอบที่ฝังยังไม่สามารถเพิ่มเข้าไปในไลบลารีได้",iframe:"",image:"การสนับสนุนสำหรับเพิ่มรูปภาพลงในไลบลารีจะมาในเร็ว ๆ นี้"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},lOe={selection:"",image:"",rectangle:"สี่เหลี่ยมผืนผ้า",diamond:"",ellipse:"วงรี",arrow:"ลูกศร",line:"",freedraw:"",text:"ข้อความ",library:"คลัง",lock:"",penMode:"",link:"",eraser:"ยางลบ",frame:"",magicframe:"",embeddable:"ฝังเว็บ",laser:"",hand:"",extraTools:"เครื่องมืออื่นๆ",mermaidToExcalidraw:"",magicSettings:""},gOe={canvasActions:"",selectedShapeActions:"",shapes:"รูปร่าง"},cOe={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"คลิกและลากเพื่อสร้างการฝังสำหรับเว็บไซต์",text_selected:"คลิกสองครั้งหรือกด ENTER เพื่อแก้ไขข้อความ",text_editing:"กดปุ่ม Esc หรือกด Ctrl, Cmd + Enter เพื่อเสร็จการแก้ไข",linearElementMulti:"คลิกที่จุดสุดท้ายหรือกด Escape หรือ Enter เพื่อเสร็จสิ้น",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:`กดปุ่ม Delete เพื่อลบจุด
กด Ctrl หรือ Cmd + D เพื่อทำซ้ำหรือลากเพื่อเคลื่อนย้าย`,lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},COe={cannotShowPreview:"",canvasTooBig:"",canvasTooBigTip:""},BOe={headingMain:"<button>กำลังรีโหลดหน้า</button>",clearCanvasMessage:"ถ้าโหลดไม่ได้ ให้ลอง <button>เคลียร์ผืนผ้าใบ</button>",clearCanvasCaveat:"",trackedToSentry:"",openIssueMessage:"",sceneContent:""},EOe={desc_intro:"",desc_privacy:"",button_startSession:"เริ่มเซสชัน",button_stopSession:"หยุดเซสชัน",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},dOe={title:""},IOe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:"ไม่สามารถส่งออกไปที่ Excalidraw+ ได้ในขณะนี้"},hOe={blog:"อ่านบล็อกของพวกเรา",click:"คลิก",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"ดับเบิลคลิก",drag:"ลาก",editor:"",editLineArrowPoints:"",editText:"แก้ไขข้อความ / เพิ่มข้อความ",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"ช่วยเหลือ",view:"ดู",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:"ย้ายหน้าไปด้าน ซ้าย/ขวา"},QOe={title:""},pOe={title:"",itemName:"",authorName:"ชื่อเจ้าของ",githubUsername:"ชื่อผู้ใช้ GitHub",twitterUsername:"ชื่อผู้ใช้ Twitter",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},fOe={title:"",content:""},mOe={resetLibrary:"",removeItemsFromLib:""},DOe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"โหมดกลางคืน",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"ส่งออกไปเป็น SVG",exportToSvg:"ส่งออกไปเป็น SVG",copyPngToClipboard:"คัดลอก PNG ไปยังคลิปบอร์ด"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"คัดลอกไปยังคลิปบอร์ด"}},yOe={tooltip:"",link:""},wOe={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},bOe={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},vOe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"ฟ้าน้ำทะเล",green:"เขียว",yellow:"เหลือง",orange:"ส้ม",bronze:"ทองแดง"},kOe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},FOe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},xOe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},SOe={title:"",button:"",description:"",syntax:"",preview:""},lCr={labels:uOe,library:aOe,buttons:nOe,alerts:oOe,errors:sOe,toolBar:lOe,headings:gOe,hints:cOe,canvasError:COe,errorSplash:BOe,roomDialog:EOe,errorDialog:dOe,exportDialog:IOe,helpDialog:hOe,clearCanvasDialog:QOe,publishDialog:pOe,publishSuccessDialog:fOe,confirmDialog:mOe,imageExportDialog:DOe,encrypted:yOe,stats:wOe,toast:bOe,colors:vOe,welcomeScreen:kOe,colorPicker:FOe,overwriteConfirm:xOe,mermaid:SOe}});var nPe={};Dt(nPe,{alerts:()=>MOe,buttons:()=>UOe,canvasError:()=>JOe,clearCanvasDialog:()=>zOe,colorPicker:()=>iPe,colors:()=>tPe,confirmDialog:()=>jOe,default:()=>gCr,encrypted:()=>$Oe,errorDialog:()=>_Oe,errorSplash:()=>OOe,errors:()=>TOe,exportDialog:()=>WOe,headings:()=>HOe,helpDialog:()=>qOe,hints:()=>KOe,imageExportDialog:()=>XOe,labels:()=>NOe,library:()=>GOe,mermaid:()=>aPe,overwriteConfirm:()=>uPe,publishDialog:()=>ZOe,publishSuccessDialog:()=>VOe,roomDialog:()=>POe,stats:()=>APe,toast:()=>ePe,toolBar:()=>YOe,welcomeScreen:()=>rPe});var NOe,GOe,UOe,MOe,TOe,YOe,HOe,KOe,JOe,OOe,POe,_Oe,WOe,qOe,zOe,ZOe,VOe,jOe,XOe,$Oe,APe,ePe,tPe,rPe,iPe,uPe,aPe,gCr;var oPe=_(()=>{zt();NOe={paste:"Yapıştır",pasteAsPlaintext:"Düz metin olarak yapıştır",pasteCharts:"Grafikleri yapıştır",selectAll:"Tümünü seç",multiSelect:"Seçime öge ekle",moveCanvas:"Tuvali taşı",cut:"Kes",copy:"Kopyala",copyAsPng:"Panoya PNG olarak kopyala",copyAsSvg:"Panoya SVG olarak kopyala",copyText:"Panoya metin olarak kopyala",copySource:"",convertToCode:"",bringForward:"Bir öne getir",sendToBack:"Arkaya gönder",bringToFront:"En öne getir",sendBackward:"Bir geriye gönder",delete:"Sil",copyStyles:"Stilleri kopyala",pasteStyles:"Stilleri yapıştır",stroke:"Vurgu",background:"Arka plan",fill:"Doldur",strokeWidth:"Kontur genişliği",strokeStyle:"Kontur stili",strokeStyle_solid:"Dolu",strokeStyle_dashed:"Kesik çizgili",strokeStyle_dotted:"Noktalı",sloppiness:"Üstün körülük",opacity:"Opaklık",textAlign:"Metin hizala",edges:"Kenarlar",sharp:"Keskin",round:"Yuvarlak",arrowheads:"Ok uçları",arrowhead_none:"Yok",arrowhead_arrow:"Ok",arrowhead_bar:"Çizgi",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Üçgen",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Yazı tipi boyutu",fontFamily:"Yazı tipi ailesi",addWatermark:'"Excalidraw ile yapıldı" yazısını ekle',handDrawn:"El-yazısı",normal:"Normal",code:"Kod",small:"Küçük",medium:"Orta",large:"Büyük",veryLarge:"Çok geniş",solid:"Dolu",hachure:"Taralı",zigzag:"Zikzak",crossHatch:"Çapraz-taralı",thin:"İnce",bold:"Kalın",left:"Sol",center:"Ortala",right:"Sağ",extraBold:"Ekstra kalın",architect:"Mimar",artist:"Sanatçı",cartoonist:"Karikatürist",fileTitle:"Dosya adı",colorPicker:"Renk seçici",canvasColors:"Tuvalin üzerinde kullanıldı",canvasBackground:"Tuval arka planı",drawingCanvas:"Çizim tuvali",layers:"Katmanlar",actions:"Eylemler",language:"Dil",liveCollaboration:"Canlı ortak çalışma alanı...",duplicateSelection:"Çoğalt",untitled:"Adsız",name:"İsim",yourName:"İsminiz",madeWithExcalidraw:"Excalidraw ile yapıldı",group:"Seçimi grup yap",ungroup:"Seçilen grubu dağıt",collaborators:"Ortaklar",showGrid:"Izgarayı göster",addToLibrary:"Kütüphaneye ekle",removeFromLibrary:"Kütüphaneden kaldır",libraryLoadingMessage:"Kütüphane yükleniyor…",libraries:"Kütüphanelere gözat",loadingScene:"Sahne yükleniyor…",align:"Hizala",alignTop:"Yukarı hizala",alignBottom:"Aşağı hizala",alignLeft:"Sola hizala",alignRight:"Sağa hizala",centerVertically:"Dikeyde ortala",centerHorizontally:"Yatayda ortala",distributeHorizontally:"Yatay dağıt",distributeVertically:"Dikey dağıt",flipHorizontal:"Yatay döndür",flipVertical:"Dikey döndür",viewMode:"Görünüm modu",share:"Paylaş",showStroke:"Kontur için renk seçiciyi göster",showBackground:"Arkaplan için renk seçiciyi göster",toggleTheme:"Temayı etkinleştir/devre dışı bırak",personalLib:"Kişisel Kitaplık",excalidrawLib:"Excalidraw Kitaplığı",decreaseFontSize:"Yazı Tipi Boyutunu Küçült",increaseFontSize:"Yazı Tipi Boyutunu Büyült",unbindText:"Metni çöz",bindText:"Metni taşıyıcıya bağla",createContainerFromText:"Metni bileşen içinde sar",link:{edit:"Bağlantıyı düzenle",editEmbed:"Bağlantıyı düzenle & yerleştir",create:"Bağlantı oluştur",createEmbed:"Bağlantı oluştur & yerleştir",label:"Bağlantı",labelEmbed:"Bağlantı & yerleştirme",empty:"Herhangi bir bağlantı oluşturulmadı"},lineEditor:{edit:"Çizgiyi düzenle",exit:"Çizgi düzenlemeden çık"},elementLock:{lock:"Kilitle",unlock:"Kilidi Kaldır",lockAll:"Hepsini kilitle",unlockAll:"Hepsinin kilidini kaldır"},statusPublished:"Yayınlandı",sidebarLock:"Kenar çubuğu açık kalsın",selectAllElementsInFrame:"Çerçevedeki tüm bileşenleri seç",removeAllElementsFromFrame:"Çerçevedeki tüm bileşenleri sil",eyeDropper:"Tuvalden renk seç",textToDiagram:"",prompt:""},GOe={noItems:"Öğe eklenmedi...",hint_emptyLibrary:"Öğelerden birini eklemek için öğeyi seçiniz veya aşağıdaki genel kütüphaneden öğeleri ekleyin.",hint_emptyPrivateLibrary:"Tuvalden bir eleman seçerek sayfaya ekleyin."},UOe={clearReset:"Tuvali sıfırla",exportJSON:"Dosyaya aktar",exportImage:"Resimleri dışa aktar...",export:"Şuraya kaydet...",copyToClipboard:"Panoya kopyala",save:"Geçerli dosyaya kaydet",saveAs:"Farklı kaydet",load:"Aç",getShareableLink:"Paylaşılabilir bağlantı al",close:"Kapat",selectLanguage:"Dil seçin",scrollBackToContent:"İçeriğe geri dön",zoomIn:"Yakınlaştır",zoomOut:"Uzaklaştır",resetZoom:"Yakınlaştırmayı sıfırla",menu:"Menü",done:"Tamam",edit:"Düzenle",undo:"Geri Al",redo:"Yeniden yap",resetLibrary:"Kütüphaneyi sıfırla",createNewRoom:"Yeni oda oluştur",fullScreen:"Tam ekran",darkMode:"Koyu tema",lightMode:"Açık tema",zenMode:"Zen modu",objectsSnapMode:"Nesnelere hizala",exitZenMode:"Zen modundan çık",cancel:"İptal",clear:"Temizle",remove:"Kaldır",embed:"",publishLibrary:"Yayınla",submit:"Gönder",confirm:"Onayla",embeddableInteractionButton:"Etkileşime girmek için tıkla"},MOe={clearReset:"Tuvalin tamamı temizlenecek. Emin misiniz?",couldNotCreateShareableLink:"Paylaşılabilir bağlantı oluşturulamadı.",couldNotCreateShareableLinkTooBig:"Paylaşılabilir bağlantı oluşturulamadı: sahne çok büyük",couldNotLoadInvalidFile:"Bilinmeyen dosya yüklenemiyor",importBackendFailed:"Sunucudan içe aktarma başarısız.",cannotExportEmptyCanvas:"Boş tuval dışarıya aktarılamaz.",couldNotCopyToClipboard:"Panoya kopyalanamıyor.",decryptFailed:"Şifrelenmiş veri çözümlenemedi.",uploadedSecurly:"Yükleme uçtan uca şifreleme ile korunmaktadır. Excalidraw sunucusu ve üçüncül şahıslar içeriği okuyamayacaktır.",loadSceneOverridePrompt:"Harici çizimler yüklemek mevcut olan içeriği değiştirecektir. Devam etmek istiyor musunuz?",collabStopOverridePrompt:`Oturumu sonlandırmak daha önceki, yerel olarak kaydedilmiş çizimin üzerine kaydedilmesine sebep olacak. Emin misiniz?
(Yerel çiziminizi kaybetmemek için tarayıcı sekmesini kapatabilirsiniz.)`,errorAddingToLibrary:"Öğe kütüphaneye eklenemedi",errorRemovingFromLibrary:"Öğe kütüphaneden silinemedi",confirmAddLibrary:"Bu, kitaplığınıza {{numShapes}} tane şekil ekleyecek. Emin misiniz?",imageDoesNotContainScene:"Bu görüntü herhangi bir sahne verisi içermiyor gibi görünüyor. Dışa aktarma sırasında sahne yerleştirmeyi etkinleştirdiniz mi?",cannotRestoreFromImage:"Sahne bu resim dosyasından geri yüklenemedi",invalidSceneUrl:"Verilen bağlantıdan çalışma alanı yüklenemedi. Dosya bozuk olabilir veya geçerli bir Excalidraw JSON verisi bulundurmuyor olabilir.",resetLibrary:"Bu işlem kütüphanenizi sıfırlayacak. Emin misiniz?",removeItemsFromsLibrary:"{{count}} öğe(ler) kitaplıktan kaldırılsın mı?",invalidEncryptionKey:"Şifreleme anahtarı 22 karakter olmalı. Canlı işbirliği devre dışı bırakıldı.",collabOfflineWarning:"İnternet bağlantısı bulunamadı. Değişiklikleriniz kaydedilmeyecek!"},TOe={unsupportedFileType:"Desteklenmeyen dosya türü.",imageInsertError:"Görsel eklenemedi. Daha sonra tekrar deneyin...",fileTooBig:"Dosya çok büyük. İzin verilen maksimum boyut {{maxSize}}.",svgImageInsertError:"SVG resmi eklenemedi. SVG işaretlemesi geçersiz görünüyor.",failedToFetchImage:"",invalidSVGString:"Geçersiz SVG.",cannotResolveCollabServer:"İş birliği sunucusuna bağlanılamıyor. Lütfen sayfayı yenileyip tekrar deneyin.",importLibraryError:"Kütüphane yüklenemedi",collabSaveFailed:"Backend veritabanına kaydedilemedi. Eğer problem devam ederse, çalışmanızı korumak için dosyayı yerel olarak kaydetmelisiniz.",collabSaveFailed_sizeExceeded:"Backend veritabanına kaydedilemedi; tuval çok büyük. Çalışmanızı korumak için dosyayı yerel olarak kaydetmelisiniz.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:"Resimleri kütüphaneye ekleme desteği yakında geliyor!"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},YOe={selection:"Seçme",image:"Görsel ekle",rectangle:"Dikdörtgen",diamond:"Elmas",ellipse:"Elips",arrow:"Ok",line:"Çizgi",freedraw:"Çiz",text:"Yazı",library:"Kütüphane",lock:"Seçilen aracı çizimden sonra aktif tut",penMode:"Kalem modu - dokunmayı engelle",link:"Seçilen şekil için bağlantı Ekle/Güncelle",eraser:"Silgi",frame:"Çerçeve aracı",magicframe:"",embeddable:"Web Yerleştirme",laser:"Lazer işaretçisi",hand:"",extraTools:"Daha fazla araç",mermaidToExcalidraw:"",magicSettings:""},HOe={canvasActions:"Tuval eylemleri",selectedShapeActions:"Seçilen şekil aksiyonları",shapes:"Şekiller"},KOe={canvasPanning:"",linearElement:"Birden fazla nokta için tıklayın, tek çizgi için sürükleyin",freeDraw:"Tıkla ve sürükle, bitirdiğinde serbest bırak",text:"İpucu: seçme aracıyla herhangi bir yere çift tıklayarak da yazı ekleyebilirsin",embeddable:"Web sitesi yerleştirmek için sürükle bırak",text_selected:"Metni düzenlemek için çift tıklayın veya ENTER'a basın",text_editing:"Düzenlemeyi bitirmek için ESC veya Ctrl/Cmd+ENTER tuşlarına basın",linearElementMulti:"Bitirmek için son noktaya tıklayın ya da Escape veya Enter tuşuna basın",lockAngle:"SHIFT tuşuna basılı tutarak açıyı koruyabilirsiniz",resize:`Yeniden boyutlandırırken SHIFT tuşunu basılı tutarak oranları sınırlayabilirsiniz,
merkezden yeniden boyutlandırmak için ALT tuşunu basılı tutun`,resizeImage:"SHIFT'e basılı tutarak serbestçe yeniden boyutlandırabilirsiniz, merkezden yeniden boyutlandırmak için ALT tuşunu basılı tutun",rotate:"Döndürürken SHIFT tuşuna basılı tutarak açıları koruyabilirsiniz",lineEditor_info:"Puanları düzenlemek için ctrl veya cmd tuşuna basılı tutup çift tıklayın veya enter tuşuna basın",lineEditor_pointSelected:`Sil tuşuna basarak noktaları silin,
Ctrl/Cmd + D ile çoğaltın, ya da sürükleyerek taşıyın`,lineEditor_nothingSelected:`Düzenlemek için bir nokta seçin (birden fazla seçmek için SHIFT tuşunu basılı tutun),
veya Alt tuşunu basılı tutun ve yeni noktalar eklemek için tıklayın`,placeImage:"Resmi yerleştirmek için tıklayın ya da boyutunu manuel olarak ayarlamak için tıklayıp sürükleyin",publishLibrary:"Kendi kitaplığınızı yayınlayın",bindTextToElement:"Enter tuşuna basarak metin ekleyin",deepBoxSelect:"Ctrl/Cmd tuşuna basılı tutarak derin seçim yapın ya da sürüklemeyi engelleyin",eraserRevert:"Alt tuşuna basılı tutarak silinme için işaretlenmiş ögeleri tersine çevirin",firefox_clipboard_write:"",disableSnapping:""},JOe={cannotShowPreview:"Önizleme gösterilemiyor",canvasTooBig:"Kanvas çok büyük olabilir.",canvasTooBigTip:"İpucu: En uzaktaki elemanları birbirine yakınlaştırmayı deneyin."},OOe={headingMain:"Hata oluştu. Lütfen <button>sayfayı yenilemeyi deneyin.</button>",clearCanvasMessage:"Yenileme sonrası sorun devam ediyorsa, lütfen <button>çizim alanını temizlemeyi deneyin.</button>",clearCanvasCaveat:" Bu, yaptığınız değişiklikleri sıfırlayacak ",trackedToSentry:"Tanımlayıcı ile ilgili hata {{eventId}} sistemimize yakalandı.",openIssueMessage:"Sahne bilginizi hata mesajına yansıtmamak için oldukça dikkatli davrandık. Eğer sahneniz gizli değilse hatayı lütfen şuradan takip edin <button>hata takibi.</button> Lütfen aşağıya GitHub sorununa kopyalayarak ve yapıştırarak bilgi ekleyin.",sceneContent:"Sahne içeriği:"},POe={desc_intro:"Çalışma alanınıza, sizinle birlikte çalışabilmeleri için başkalarını da ekleyebilirsiniz.",desc_privacy:"Çalışma ortamında yaptıklarınız ve çizimleriniz uçtan uca şifrelemeyle saklanmaktadır. Sunucularımız dahi bu verileri şifrelenmemiş haliyle göremez.",button_startSession:"Oturumu başlat",button_stopSession:"Oturumu sonlandır",desc_inProgressIntro:"Ortak çalışma ortamı oluşturuldu.",desc_shareLink:"Bu bağlantıyı birlikte çalışacağınız kişilerle paylaşabilirsiniz:",desc_exitSession:"Çalışma ortamını kapattığınızda ortak çalışmadan ayrılmış olursunuz ancak kendi versiyonunuzda çalışmaya devam edebilirsiniz. Bu durumda ortak çalıştığınız diğer kişiler etkilenmeyecek, çalışma ortamındaki versiyon üzerinden çalışmaya devam edebilecekler.",shareTitle:"Excalidraw'da canlı ortak calışma oturumuna katıl"},_Oe={title:"Hata"},WOe={disk_title:"Belleğe kaydet",disk_details:"Sahne verilerini daha sonra içe aktarabileceğiniz bir dosyaya aktarın.",disk_button:"Dosyaya kaydet",link_title:"Paylaşılabilir bağlantı",link_details:"Salt okunur bir bağlantı olarak dışa aktarın.",link_button:"Bağlantı olarak dışa aktar",excalidrawplus_description:"Sahneyi Excalidraw+ çalışma alanınıza kaydedin.",excalidrawplus_button:"Dışa aktar",excalidrawplus_exportError:"Şu anda Excalidraw+'a aktarılamadı..."},qOe={blog:"Blog'umuzu okuyun",click:"tıkla",deepSelect:"Derin seçim",deepBoxSelect:"Kutu içerisinde derin seçim yapın, sürüklemeyi engelleyin",curvedArrow:"Eğri ok",curvedLine:"Eğri çizgi",documentation:"Dokümantasyon",doubleClick:"çift-tıklama",drag:"sürükle",editor:"Düzenleyici",editLineArrowPoints:"Çizgi/ok noktalarını düzenle",editText:"Etiket / metin düzenle",github:"Bir hata mı buldun? Bildir",howto:"Rehberlerimizi takip edin",or:"veya",preventBinding:"Ok bağlamayı önleyin",tools:"Araçlar",shortcuts:"Klavye kısayolları",textFinish:"Düzenlemeyi bitir (metin düzenleyici)",textNewLine:"Yeni satır ekle (metin düzenleyici)",title:"Yardım",view:"Görünüm",zoomToFit:"Tüm öğeleri sığdırmak için yakınlaştır",zoomToSelection:"Seçime yakınlaş",toggleElementLock:"Seçimi Kilitle/çöz",movePageUpDown:"Sayfayı yukarı/aşağı kaydır",movePageLeftRight:"Sayfayı sola/sağa kaydır"},zOe={title:"Tuvali temizle"},ZOe={title:"Kitaplığı yayınla",itemName:"Öğe adı",authorName:"Yazar adı",githubUsername:"GıtHub kullanıcı adı",twitterUsername:"Twitter kullanıcı adı",libraryName:"Kitaplık adı",libraryDesc:"Kitaplık açıklaması",website:"Web sitesi",placeholder:{authorName:"Adınız ya da kullanıcı adınız",libraryName:"Kitaplığınızın adı",libraryDesc:"İnsanların kullanımını anlamasına yardımcı olmak için kitaplığınızın açıklaması",githubHandle:"Github bağlantısı ( tercihe bağlı), kütüphane gözden geçirme için onaylandığında düzenleyebiliesiniz diye",twitterHandle:"Twitter kullanıcı adı ( tercihe bağlı), bu sayede Twitter üzerinde paylaşıren çalışmanızı size atfedebiliriz",website:"Kişisel web sayfanızı ya da başka bir yeri bağlayın (tercihe bağlı)"},errors:{required:"Gerekli",website:"Geçerli bir URL girin"},noteDescription:"Submit your library to be included in the <link>genel kütüphane reposu</link>diğer insanlar çizimlerinde kullanabilsin diye.",noteGuidelines:"Önce kütüphane elle onaylanmalı. şunu okuyun <link>yönergeler</link> onaylamadan önce. gerekli olması halinde iletişim kurmak için ve değişiklik için Github hesabı gerekli, ama çok da illaki olmalı değil.",noteLicense:"Bunu onaylayarak, kütüğhanenin şu lisansla yayınlanmasını onaylıyorsunuz <link>MIT Lisans, </link>ki bu kısaca herkesin onu kısıtlama olmaksızın kullanabileceği anlamına gelmektedir.",noteItems:"Her kütüphane kendi ismine sahip olmalı ki tarama yapabilelim. Şu kütüphane ögeleri dahil edilecek:",atleastOneLibItem:"Lütfen başlamak için en az bir tane kütüphane ögesi seçin",republishWarning:"Not: seçilen ögelerden bir kısmı zaten yayınlanmış/gönderilmiş. Yalnızca mevcut kütüphane ve gönderileri güncellerken yeniden gönderme işlemi yapmalısınız."},VOe={title:"Kütüphane gönderildi",content:"Teşekkürler {{authorName}}. Kütüphaneniz gözden geçirme için alındı. Durumu takip edebilirsiniz<link>burada</link>"},jOe={resetLibrary:"Kütüphaneyi sıfırla",removeItemsFromLib:"Seçilen ögeleri kütüphaneden kaldır"},XOe={header:"Resmi dışa aktar",label:{withBackground:"Arka plan",onlySelected:"Sadece seçilen",darkMode:"Karanlık mod",embedScene:"Sahne yerleştir",scale:"Ölçeklendir",padding:"Dış boşluk"},tooltip:{embedScene:"Sahne verisi, sahnenin geri yüklenebilmesi için dışarı aktarılan PNG/SVG dosyasına kaydedilecektir. Bu, dışa aktarılan dosya boyutunu arttıracaktır."},title:{exportToPng:"PNG olarak dışa aktar",exportToSvg:"SVG olarak dışa aktar",copyPngToClipboard:""},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Panoya kopyala"}},$Oe={tooltip:"Çizimleriniz uçtan-uca şifrelenmiştir, Excalidraw'ın sunucuları bile onları göremez.",link:"Excalidraw'da uçtan uca şifreleme hakkında blog yazısı"},APe={angle:"Açı",element:"Bileşen",elements:"Bileşenler",height:"Yükseklik",scene:"Sahne",selected:"Seçili",storage:"Depolama",title:"İnekler için istatistikler",total:"Toplam",version:"Sürüm",versionCopy:"Kopyalamak için tıkla",versionNotAvailable:"Sürüm mevcut değil",width:"Genişlik"},ePe={addedToLibrary:"Kütüphaneye eklendi",copyStyles:"Stiller kopyalandı.",copyToClipboard:"Panoya kopyalandı.",copyToClipboardAsPng:`{{exportSelection}} panoya PNG olarak
({{exportColorScheme}}) kopyalandı`,fileSaved:"Dosya kaydedildi.",fileSavedToFilename:"{filename} kaydedildi",canvas:"tuval",selection:"seçim",pasteAsSingleElement:"Tekil obje olarak yapıştırmak için veya var olan bir metin editörüne yapıştırmak için {{shortcut}} kullanın",unableToEmbed:"",unrecognizedLinkFormat:""},tPe={transparent:"Şeffaf",black:"Siyah",white:"Beyaz",red:"Kırmızı",pink:"Pembe",grape:"Koyu Mor",violet:"Menekşe rengi",gray:"Gri",blue:"Mavi",cyan:"Camgöbeği",teal:"Deniz mavisi",green:"Yeşil",yellow:"Sarı",orange:"Turuncu",bronze:""},rPe={app:{center_heading:"",center_heading_plus:"Ecalidraw+'a mı gitmek istediniz?",menuHint:"Dışa aktar, seçenekler, diller, ..."},defaults:{menuHint:"Dışa aktar, seçenekler, ve daha fazlası...",center_heading:"",toolbarHint:"Bir araç seçin ve çizime başlayın!",helpHint:"Kısayollar & yardım"}},iPe={mostUsedCustomColors:"En çok kullanılan özel renkler",colors:"Renkler",shades:"",hexCode:"Hex kodu",noShades:""},uPe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"Diske Kaydet",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},aPe={title:"",button:"",description:"",syntax:"",preview:""},gCr={labels:NOe,library:GOe,buttons:UOe,alerts:MOe,errors:TOe,toolBar:YOe,headings:HOe,hints:KOe,canvasError:JOe,errorSplash:OOe,roomDialog:POe,errorDialog:_Oe,exportDialog:WOe,helpDialog:qOe,clearCanvasDialog:zOe,publishDialog:ZOe,publishSuccessDialog:VOe,confirmDialog:jOe,imageExportDialog:XOe,encrypted:$Oe,stats:APe,toast:ePe,colors:tPe,welcomeScreen:rPe,colorPicker:iPe,overwriteConfirm:uPe,mermaid:aPe}});var UPe={};Dt(UPe,{alerts:()=>cPe,buttons:()=>gPe,canvasError:()=>IPe,clearCanvasDialog:()=>DPe,colorPicker:()=>RPe,colors:()=>SPe,confirmDialog:()=>bPe,default:()=>cCr,encrypted:()=>kPe,errorDialog:()=>pPe,errorSplash:()=>hPe,errors:()=>CPe,exportDialog:()=>fPe,headings:()=>EPe,helpDialog:()=>mPe,hints:()=>dPe,imageExportDialog:()=>vPe,labels:()=>sPe,library:()=>lPe,mermaid:()=>GPe,overwriteConfirm:()=>NPe,publishDialog:()=>yPe,publishSuccessDialog:()=>wPe,roomDialog:()=>QPe,stats:()=>FPe,toast:()=>xPe,toolBar:()=>BPe,welcomeScreen:()=>LPe});var sPe,lPe,gPe,cPe,CPe,BPe,EPe,dPe,IPe,hPe,QPe,pPe,fPe,mPe,DPe,yPe,wPe,bPe,vPe,kPe,FPe,xPe,SPe,LPe,RPe,NPe,GPe,cCr;var MPe=_(()=>{zt();sPe={paste:"Вставити",pasteAsPlaintext:"Вставити як простий текст",pasteCharts:"Вставити діаграми",selectAll:"Вибрати все",multiSelect:"Додати елемент до вибраного",moveCanvas:"Перемістити полотно",cut:"Вирізати",copy:"Копіювати",copyAsPng:"Копіювати як PNG",copyAsSvg:"Копіювати як SVG",copyText:"Копіювати в буфер обміну як текст",copySource:"",convertToCode:"",bringForward:"Перемістити вперед",sendToBack:"На задній план",bringToFront:"На передній план",sendBackward:"Перемістити назад",delete:"Видалити",copyStyles:"Копіювати стилі",pasteStyles:"Вставити стилі",stroke:"Контур",background:"Тло",fill:"Заповнити",strokeWidth:"Товщина контуру",strokeStyle:"Стиль контуру",strokeStyle_solid:"Суцільний",strokeStyle_dashed:"Пунктир",strokeStyle_dotted:"Крапки",sloppiness:"Охайність",opacity:"Прозорість",textAlign:"Вирівнювання тексту",edges:"Краї",sharp:"Гострі",round:"Круглі",arrowheads:"Закінчення стрілки",arrowhead_none:"Жоден",arrowhead_arrow:"Стрілка",arrowhead_bar:"Колона",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Трикутник",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Розмір шрифту",fontFamily:"Шрифт",addWatermark:"Додати «Накреслене в Excalidraw»",handDrawn:"Ручний апарат",normal:"Звичайний",code:"Код",small:"Малий",medium:"Середній",large:"Великий",veryLarge:"Дуже великий",solid:"Суцільна",hachure:"Штриховка",zigzag:"Зиґзаґ",crossHatch:"Перехресна штриховка",thin:"Тонкий",bold:"Жирний",left:"Зліва",center:"По центру",right:"Справа",extraBold:"Товстий",architect:"Архітектор",artist:"Художник",cartoonist:"Карикатурист",fileTitle:"Назва файла",colorPicker:"Палітра кольорів",canvasColors:"Використовується на полотні",canvasBackground:"Тло полотна",drawingCanvas:"Полотно",layers:"Шари",actions:"Дії",language:"Мова",liveCollaboration:"Спільна робота наживо...",duplicateSelection:"Дублювати",untitled:"Без назви",name:"Ім’я",yourName:"Ваше ім’я",madeWithExcalidraw:"Накреслене в Excalidraw",group:"Групувати виділене",ungroup:"Розгрупувати виділене",collaborators:"Співавтори",showGrid:"Показати сітку",addToLibrary:"Додати до бібліотеки",removeFromLibrary:"Видалити з бібліотеки",libraryLoadingMessage:"Завантажити бібліотеку…",libraries:"Всі бібліотеки",loadingScene:"Завантаження сцени…",align:"Вирівнювання",alignTop:"Вирівняти по верхньому краю",alignBottom:"Вирівняти по нижньому краю",alignLeft:"Вирівняти по лівому краю",alignRight:"Вирівнювання по правому краю",centerVertically:"Центрувати по вертикалі",centerHorizontally:"Центрувати по горизонталі",distributeHorizontally:"Розподілити по горизонталі",distributeVertically:"Розподілити вертикально",flipHorizontal:"Віддзеркалити горизонтально",flipVertical:"Віддзеркалити вертикально",viewMode:"Режим перегляду",share:"Поділитися",showStroke:"Показати палітру для контура",showBackground:"Показати палітру для фону",toggleTheme:"Перемкнути тему",personalLib:"Персональна бібліотека",excalidrawLib:"Бібліотека Excalidraw",decreaseFontSize:"Зменшити розмір шрифту",increaseFontSize:"Збільшити розмір шрифту",unbindText:"Відв'язати текст",bindText:"Прив’язати текст до контейнера",createContainerFromText:"Огорнути текст у контейнер",link:{edit:"Редагування посилання",editEmbed:"Редагування посилання і вкладення",create:"Створити посилання",createEmbed:"Створити посилання і вкладення",label:"Посилання",labelEmbed:"Посилання і вкладення",empty:"Посилання відсутнє"},lineEditor:{edit:"Редагувати лінію",exit:"Закінчити редагування лінії"},elementLock:{lock:"Блокувати",unlock:"Розблокувати",lockAll:"Заблокувати все",unlockAll:"Розблокувати все"},statusPublished:"Опубліковано",sidebarLock:"Не закривати бокове меню",selectAllElementsInFrame:"Обрати всі елементи у фреймі",removeAllElementsFromFrame:"Видалити всі елементи з фрейму",eyeDropper:"Вибрати колір з полотна",textToDiagram:"",prompt:""},lPe={noItems:"Тут поки пусто...",hint_emptyLibrary:"Виберіть об'єкт на полотні, щоб додати його сюди або встановіть бібліотеку з публічного репозиторію, що нижче.",hint_emptyPrivateLibrary:"Виберіть елемент на полотні, щоб додати його сюди."},gPe={clearReset:"Очистити полотно",exportJSON:"Експорт у файл",exportImage:"Експорт зображення...",export:"Зберегти як...",copyToClipboard:"Скопіювати до буферу обміну",save:"Зберегти до поточного файлу",saveAs:"Зберегти як",load:"Відкрити",getShareableLink:"Отримати посилання",close:"Закрити",selectLanguage:"Обрати мову",scrollBackToContent:"Повернутися до вмісту",zoomIn:"Збільшити",zoomOut:"Зменшити",resetZoom:"Скинути масштаб",menu:"Меню",done:"Готово",edit:"Редагувати",undo:"Відмінити",redo:"Повторити",resetLibrary:"Очистити бібліотеку",createNewRoom:"Створити нову кімнату",fullScreen:"Повноекранний режим",darkMode:"Темна тема",lightMode:"Світла тема",zenMode:"Режим Дзен",objectsSnapMode:"",exitZenMode:"Вийти з дзен-режиму",cancel:"Скасувати",clear:"Очистити",remove:"Видалити",embed:"Перемкнути вкладення",publishLibrary:"Опублікувати",submit:"Надіслати",confirm:"Підтвердити",embeddableInteractionButton:"Натисніть для взаємодії"},cPe={clearReset:"Це очистить все полотно. Впевнені?",couldNotCreateShareableLink:"Не вдалося створити посилання.",couldNotCreateShareableLinkTooBig:"Не вдалося створити посилання для обміну: сцена занадто велика",couldNotLoadInvalidFile:"Файл з помилками не відкрився",importBackendFailed:"Імпортування невдале.",cannotExportEmptyCanvas:"Не вийшло експортувати пусте полотно.",couldNotCopyToClipboard:"Не вдалося скопіювати до буфера обміну.",decryptFailed:"Не вдалося розшифрувати дані.",uploadedSecurly:"Це завантаження було захищене наскрізним шифруванням, а це означає що сервер Excalidraw та інші не зможуть прочитати вміст.",loadSceneOverridePrompt:"Завантаження зовнішнього креслення замінить ваш наявний контент. Продовжити?",collabStopOverridePrompt:`Зупинка сесії перезапише ваш попередній, локально збережений малюнок. Ви впевнені?
(Якщо ви хочете зберегти локальний малюнок, просто закрийте замість нього вкладку браузера.)`,errorAddingToLibrary:"Не вдалося додати елемент до бібліотеки",errorRemovingFromLibrary:"Не вдалося видалити елемент з бібліотеки",confirmAddLibrary:"Це призведе до додавання {{numShapes}} фігур до вашої бібліотеки. Ви впевнені?",imageDoesNotContainScene:"Виглядає ніби зображення не містить корисної інформації. Ви увімкнули вбудовування сцени при експорті?",cannotRestoreFromImage:"Сцена не може бути відновлена з цього файлу зображення",invalidSceneUrl:"Не вдалося імпортувати сцену з наданого URL. Він або недоформований, або не містить дійсних даних Excalidraw JSON.",resetLibrary:"Це призведе до очищення бібліотеки. Ви впевнені?",removeItemsFromsLibrary:"Видалити {{count}} елемент(ів) з бібліотеки?",invalidEncryptionKey:"Ключ шифрування повинен бути довжиною до 22 символів. Спільну роботу вимкнено.",collabOfflineWarning:`Немає підключення до Інтернету.
Ваші зміни не будуть збережені!`},CPe={unsupportedFileType:"Непідтримуваний тип файлу.",imageInsertError:"Не вдалося вставити зображення. Повторіть спробу пізніше...",fileTooBig:"Занадто великий розмір файлу, максимальний розмір файлу {{maxSize}}.",svgImageInsertError:"Не вдалося вставити SVG-зображення. Помилка розмітки SVG.",failedToFetchImage:"",invalidSVGString:"Недійсний SVG.",cannotResolveCollabServer:"Не вдалося приєднатися до сервера. Перезавантажте сторінку та повторіть спробу.",importLibraryError:"Не вдалося завантажити бібліотеку",collabSaveFailed:"Не вдалося зберегти у базу даних сервера. Якщо проблеми не зникнуть, Вам слід зберегти файл локально, щоб не втратити роботу.",collabSaveFailed_sizeExceeded:"Полотно завелике! Не вдалося зберегти у базу даних сервера. Вам слід зберегти файл локально, щоб не втратити свою роботу.",imageToolNotSupported:"",brave_measure_text_error:{line1:"Ви використовуєте браузер Brave з увімкненим налаштуванням <bold>Агресивного Блокування Розпізнавання Пристрою</bold>.",line2:"Це може нашкодити <bold>текстовим елементам</bold> у ваших малюнках.",line3:"Ми наполегливо рекомендуємо вимкнути це налаштування. Виконайте наступні <link>кроки</link>, щоб виправити це.",line4:"Якщо вимкнення цього параметра не вирішує показ текстових елементів, тоді створіть, будь ласка, <issueLink>запит на розв'язання проблеми</issueLink> на нашому GitHub або напишіть нам у <discordLink>Discord</discordLink>"},libraryElementTypeError:{embeddable:"Вбудовані елементи не можна додати в бібліотеку.",iframe:"",image:"Підтримка додавання зображень в бібліотеку найближчим часом!"},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},BPe={selection:"Виділення",image:"Вставити зображення",rectangle:"Прямокутник",diamond:"Ромб",ellipse:"Еліпс",arrow:"Стрілка",line:"Лінія",freedraw:"Малювати",text:"Текст",library:"Бібліотека",lock:"Залишити обраний інструмент після креслення",penMode:"Режим пера - запобігання дотику",link:"Додати/Оновити посилання для вибраної форми",eraser:"Очищувач",frame:"Інструмент фрейму",magicframe:"",embeddable:"Веб вкладення",laser:"",hand:"Рука (інструмент для панорамування)",extraTools:"Інші інструменти",mermaidToExcalidraw:"",magicSettings:""},EPe={canvasActions:"Дії з полотном",selectedShapeActions:"Вибрані дії з фігурою",shapes:"Фігури"},dPe={canvasPanning:"Щоб перемістити полотно, утримуйте коліщатко миші або пробіл під час перетягування, або скористайтеся інструментом Рука",linearElement:"Натисніть щоб додати кілька точок. Перетягніть щоб намалювати одну лінію",freeDraw:"Натисніть і потягніть, відпустіть коли завершите",text:"Порада: можна також додати текст, двічі клацнувши по будь-якому місці інструментом вибору",embeddable:"Клікніть та перетягніть для створення вбудованого вебсайту",text_selected:"Подвійний клік або натисніть клавішу ENTER, щоб редагувати текст",text_editing:"Натисніть клавішу Escape або Ctrl/Cmd+ENTER, щоб завершити редагування",linearElementMulti:"Натисніть на останню точку, клацніть Esc або Enter щоб завершити",lockAngle:"Ви можете обмежити кут, утримуюючи SHIFT",resize:`Ви можете зберегти пропорції, утримуючи SHIFT під час зміни розміру,
утримуйте ALT для змінення розміру від центру`,resizeImage:"Ви можете змінювати розміри утримуючи клавішу SHIFT, втримуйте клавішу ALT щоб змінювати розмір відносно центру",rotate:"Ви можете обмежити кути, утримуючи SHIFT під час обертання",lineEditor_info:"Утримуйте CtrlOrCmd і двічі клацніть або натисніть CtrlOrCmd + Enter, щоб редагувати цятки",lineEditor_pointSelected:"Натисніть Delete для видалення точку (точок), або Ctrl/Cmd+D для дублювання, перетаскування працює як звично",lineEditor_nothingSelected:"Виберіть точку для редагування (втримуйте клавішу SHIFT для вибору кількох точок), або клавішу Alt для додавання нових точок",placeImage:"Клацніть, щоб розмістити зображення, або натисніть та потягніть щоб змінити його розмір",publishLibrary:"Опублікувати свою власну бібліотеку",bindTextToElement:"Натисніть Enter, щоб додати текст",deepBoxSelect:"Втримуйте Ctrl/Cmd для глибокого виділення та щоб попередити перетягування",eraserRevert:"Втримуйте клавішу Alt, щоб повернути елементи позначені для видалення",firefox_clipboard_write:'Цю функцію можна ввімкнути, встановивши значення "true" для налаштування "dom.events.asyncClipboard.clipboardItem". Перейдіть на сторінку «about:config», щоб змінити налаштування браузера у Firefox.',disableSnapping:""},IPe={cannotShowPreview:"Не вдається показати попередній перегляд",canvasTooBig:"Полотно може бути завеликим.",canvasTooBigTip:"Порада: спробуйте підсунути найвіддаленіші елементи ближче один до одного."},hPe={headingMain:"Сталася помилка. Спробуйте <button>перезавантажити сторінку.</button>",clearCanvasMessage:"Якщо перезавантаження не допоможе, спробуйте <button>очистити полотно.</button>",clearCanvasCaveat:" Це призведе до втрати роботи ",trackedToSentry:"Помилка з ідентифікатором {{eventId}} було відслідковано в нашій системі.",openIssueMessage:"Ми були дуже обережні, щоб не включати інформацію про ваші сцени в текст помилки. Якщо ваша сцена не була приватна, будь ласка, розгляньте можливість продовження на нашому <button>трекер помилок.</button> Будь ласка, додайте інформацію нижче, скопіюючи і вставляючи у GitHub issue.",sceneContent:"Вміст сцени:"},QPe={desc_intro:"Ви можете запросити людей для спільної роботи.",desc_privacy:"Не хвилюйтеся, сесія захищена наскрізним шифруванням, тому ваше креслення залишиться приватним. Навіть наш сервер не побачить вашу роботу.",button_startSession:"Почати сесію",button_stopSession:"Закрити сесію",desc_inProgressIntro:"Сесія спільної роботи над кресленням триває.",desc_shareLink:"Поділіться цим посиланням з будь-ким для спільної роботи:",desc_exitSession:"Зупинка сесії відключить вас від кімнати, але ви зможете продовжити роботу з полотном локально. Зверніть увагу, що це не вплине на інших людей, і вони все одно зможуть працювати над їх версією.",shareTitle:"Приєднатися до сеансу спільної роботи на Excalidraw"},pPe={title:"Помилка"},fPe={disk_title:"Зберегти на диск",disk_details:"Експорт даних сцени в файл, з якого можна імпортувати пізніше.",disk_button:"Зберегти до файлу",link_title:"Доступ за посиланням",link_details:"Експортувати як посилання тільки для читання.",link_button:"Експортувати у посилання",excalidrawplus_description:"Збережіть сцену у вашому обліковому записі Excalidraw+.",excalidrawplus_button:"Експортувати",excalidrawplus_exportError:"Не вдалося експортувати у Excalidraw+..."},mPe={blog:"Наш блог",click:"натиснути",deepSelect:"Глибокий вибір",deepBoxSelect:"Глибоке виділення в межах рамки, та обмеження перетягування",curvedArrow:"Крива стрілка",curvedLine:"Крива лінія",documentation:"Документація",doubleClick:"подвійний клік",drag:"перетягнути",editor:"Редактор",editLineArrowPoints:"Редагувати лінію/стрілки",editText:"Редагувати текст / додати позначку",github:"Знайшли помилку? Повідомте",howto:"Дотримуйтесь наших інструкцій",or:"або",preventBinding:"Запобігти зв'язування зі стрілками",tools:"Інструменти",shortcuts:"Гарячі клавіші",textFinish:"Завершити редагування (текстовий редактор)",textNewLine:"Додати новий рядок (текстовий редактор)",title:"Допомога",view:"Вигляд",zoomToFit:"Збільшити щоб умістити всі елементи",zoomToSelection:"Наблизити вибране",toggleElementLock:"Заблокувати/розблокувати вибране",movePageUpDown:"Пересунути сторінку вгору/вниз",movePageLeftRight:"Пересунути сторінку вліво/вправо"},DPe={title:"Очистити полотно"},yPe={title:"Опублікувати бібліотеку",itemName:"Назва елементу",authorName:"Ім'я автора",githubUsername:"Ім'я користувача Github",twitterUsername:"Ім'я користувача Твитер",libraryName:"Назва бібліотеки",libraryDesc:"Опис бібліотеки",website:"Вебсайт",placeholder:{authorName:"Ваше ім'я або ім'я користувача",libraryName:"Назва вашої бібліотеки",libraryDesc:"Опис вашої бібліотеки, щоб допомогти людям зрозуміти її використання",githubHandle:"Ім'я користувача в GitHub (необов'язково), щоб ви могли редагувати бібліотеку під час перевірки",twitterHandle:"Ім'я користувача у Twitter (необов'язково), щоб ми могли згадати вас під час промоції у Twitter",website:"Посилання на ваш особистий сайт або інший сайт (опціонально)"},errors:{required:"Обов’язково",website:"Введіть дійсну URL-адресу"},noteDescription:"Подати бібліотеку, щоб вона була включена до <link>публічного репозиторія бібліотек</link>для інших людей, для використання у їхніх полотнах.",noteGuidelines:"Спочатку бібліотека повинна бути підтверджена. Будь ласка, прочитайте <link>настанови</link> перед відправкою. Вам знадобиться обліковий запис на GitHub, щоб колаборувати та вносити зміни, але це не обов'язково.",noteLicense:"Публікуючи, ви погоджуєтеся, що бібліотека буде опублікована під <link>Ліцензія MIT, </link>, простими словами, це означає що нею зможе користуватися будь-хто без обмежень.",noteItems:"Кожен об'єкт в бібліотеці повинен мати назву, це потрібно для пошуку та фільтрування. Наступні об'єкти бібліотеки будуть включені:",atleastOneLibItem:"Будь ласка, виберіть принаймні один елемент бібліотеки, щоб почати",republishWarning:"Зауважте, деякі з вибраних елементів позначені як вже опубліковані/надіслані. Ви повинні повторно надсилати елементи тільки при оновленні вже опублікованої бібліотеки чи при публікації бібліотеки."},wPe={title:"Бібліотека відправлена",content:"Дякуємо, {{authorName}}. Ваша бібліотека була відправлена для розгляду. Ви можете відстежувати статус<link>тут</link>"},bPe={resetLibrary:"Очистити бібліотеку",removeItemsFromLib:"Видалити вибрані елементи з бібліотеки"},vPe={header:"Експортувати зображення",label:{withBackground:"Тло",onlySelected:"Тільки вибране",darkMode:"Темний режим",embedScene:"Вбудована сцена",scale:"Масштабування",padding:"Відступ"},tooltip:{embedScene:"Дані сцени будуть збережені в експортований файл PNG/SVG. Ця сцена може бути відновлена з нього, однак це збільшить розмір експортованого файлу."},title:{exportToPng:"Експортувати в PNG",exportToSvg:"Експортувати у SVG",copyPngToClipboard:"Скопіювати PNG в буфер обміну"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"Копіювати в буфер обміну"}},kPe={tooltip:"Ваші креслення захищені наскрізним шифруванням — сервери Excalidraw ніколи їх не побачать.",link:"Допис у блозі на наскрізному шифруванні в Excalidraw"},FPe={angle:"Кут",element:"Елемент",elements:"Елементи",height:"Висота",scene:"Сцена",selected:"Обрано",storage:"Сховище",title:"Статистика",total:"Всього",version:"Версія",versionCopy:"Натисніть, щоб скопіювати",versionNotAvailable:"Версія недоступна",width:"Ширина"},xPe={addedToLibrary:"Додано до бібліотеки",copyStyles:"Скопійовані стилі.",copyToClipboard:"Скопіювати до буферу обміну.",copyToClipboardAsPng:`Скопійовано {{exportSelection}} до буфера обміну як PNG
({{exportColorScheme}})`,fileSaved:"Файл збережено.",fileSavedToFilename:"Збережено в {filename}",canvas:"полотно",selection:"виділення",pasteAsSingleElement:"Використайте {{shortcut}} для вставки самостійного зразка або використайте в текстовому редакторі",unableToEmbed:"Вбудування цієї url на даний час не допускається. Підніміть питання на GitHub, щоб попросити внести URL-адресу до білого списку",unrecognizedLinkFormat:'Посилання, яке ви вставили, не відповідає очікуваному формату. Будь ласка, спробуйте вставити рядок "embed", наданий сайтом-джерелом'},SPe={transparent:"Прозорий",black:"Чорний",white:"Білий",red:"Червоний",pink:"Рожевий",grape:"Виноградний",violet:"Фіолетовий",gray:"Сірий",blue:"Синій",cyan:"Ціан",teal:"Бірюзовий",green:"Зелений",yellow:"Жовтий",orange:"Помаранчевий",bronze:"Бронзовий"},LPe={app:{center_heading:"Всі ваші дані збережено локально у Вашому браузері.",center_heading_plus:"Чи бажаєте перейти до Excalidraw+?",menuHint:"Експорт, налаштування, мови, ..."},defaults:{menuHint:"Експорт, налаштування та багато іншого...",center_heading:"Діаграми. Робити. Просто.",toolbarHint:"Оберіть інструмент і почніть малювати!",helpHint:"Гарячі клавіші і допомога"}},RPe={mostUsedCustomColors:"Найбільш використовувані користувацькі кольори",colors:"Кольори",shades:"Тіні",hexCode:"Hex-код",noShades:"Немає доступних відтінків цього кольору"},NPe={action:{exportToImage:{title:"Експортувати як зображення",button:"Експортувати як зображення",description:"Експорт даних сцени у вигляді зображення, з якого можна імпортувати пізніше."},saveToDisk:{title:"Зберегти на диск",button:"Зберегти на диск",description:"Експорт даних сцени в файл, з якого можна імпортувати пізніше."},excalidrawPlus:{title:"Excalidraw+",button:"Експортувати до Excalidraw+",description:"Зберегти сцену до робочого простору Excalidraw+."}},modal:{loadFromFile:{title:"Завантажити з файлу",button:"Завантажити з файлу",description:"Завантаження з файлу <bold>замінить наявний вміст</bold>.<br></br>Ви можете спочатку створити резервну копію малюнка, скориставшись одним із наведених нижче способів."},shareableLink:{title:"Завантажити з посилання",button:"Замінити мій контент",description:"Завантаження зовнішнього малюнка <bold>замінить ваш наявний вміст</bold>.<br></br>Ви можете спочатку створити резервну копію малюнка, скориставшись одним із наведених нижче способів."}}},GPe={title:"",button:"",description:"",syntax:"",preview:""},cCr={labels:sPe,library:lPe,buttons:gPe,alerts:cPe,errors:CPe,toolBar:BPe,headings:EPe,hints:dPe,canvasError:IPe,errorSplash:hPe,roomDialog:QPe,errorDialog:pPe,exportDialog:fPe,helpDialog:mPe,clearCanvasDialog:DPe,publishDialog:yPe,publishSuccessDialog:wPe,confirmDialog:bPe,imageExportDialog:vPe,encrypted:kPe,stats:FPe,toast:xPe,colors:SPe,welcomeScreen:LPe,colorPicker:RPe,overwriteConfirm:NPe,mermaid:GPe}});var g_e={};Dt(g_e,{alerts:()=>KPe,buttons:()=>HPe,canvasError:()=>WPe,clearCanvasDialog:()=>XPe,colorPicker:()=>o_e,colors:()=>a_e,confirmDialog:()=>e_e,default:()=>CCr,encrypted:()=>r_e,errorDialog:()=>ZPe,errorSplash:()=>qPe,errors:()=>JPe,exportDialog:()=>VPe,headings:()=>PPe,helpDialog:()=>jPe,hints:()=>_Pe,imageExportDialog:()=>t_e,labels:()=>TPe,library:()=>YPe,mermaid:()=>l_e,overwriteConfirm:()=>s_e,publishDialog:()=>$Pe,publishSuccessDialog:()=>A_e,roomDialog:()=>zPe,stats:()=>i_e,toast:()=>u_e,toolBar:()=>OPe,welcomeScreen:()=>n_e});var TPe,YPe,HPe,KPe,JPe,OPe,PPe,_Pe,WPe,qPe,zPe,ZPe,VPe,jPe,XPe,$Pe,A_e,e_e,t_e,r_e,i_e,u_e,a_e,n_e,o_e,s_e,l_e,CCr;var c_e=_(()=>{zt();TPe={paste:"Dán",pasteAsPlaintext:"Dán kiểu văn bản thuần",pasteCharts:"Dán biểu đồ",selectAll:"Chọn tất cả",multiSelect:"Thêm mới vào Select",moveCanvas:"Di chuyển canvas",cut:"Cắt",copy:"Sao chép",copyAsPng:"Sao chép vào bộ nhớ tạm dưới dạng PNG",copyAsSvg:"Sao chép vào bộ nhớ tạm dưới dạng SVG",copyText:"Sao chép vào bộ nhớ tạm dưới dạng chữ",copySource:"",convertToCode:"",bringForward:"Đưa ra trước",sendToBack:"Hạ xuống dưới",bringToFront:"Đưa ra đầu tiên",sendBackward:"Hạ xuống cuối",delete:"Xóa",copyStyles:"Sao chép định dạng",pasteStyles:"Dán định dạng",stroke:"Nét",background:"Nền",fill:"Fill",strokeWidth:"Độ dày nét",strokeStyle:"Kiểu nét",strokeStyle_solid:"Khối",strokeStyle_dashed:"Gạch ngang",strokeStyle_dotted:"Nhiều chấm",sloppiness:"Hoa văn nét",opacity:"Độ trong suốt",textAlign:"Căn chỉnh văn bản",edges:"Cạnh",sharp:"Nhọn",round:"Tròn",arrowheads:"Đầu mũi tên",arrowhead_none:"Không",arrowhead_arrow:"Mũi tên",arrowhead_bar:"Thanh",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"Tam giác",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"Cỡ chữ",fontFamily:"Phông chữ",addWatermark:'Làm với Excalidraw"',handDrawn:"Vẽ tay",normal:"Bình thường",code:"Mã",small:"Nhỏ",medium:"Vừa",large:"Lớn",veryLarge:"Rất lớn",solid:"Đặc",hachure:"Nét gạch gạch",zigzag:"Zigzag",crossHatch:"Nét gạch chéo",thin:"Mỏng",bold:"In đậm",left:"Trái",center:"Giữa",right:"Phải",extraBold:"Nét siêu đậm",architect:"Kiến trúc sư",artist:"Nghệ sỹ",cartoonist:"Hoạt hình",fileTitle:"Tên tập tin",colorPicker:"Chọn màu",canvasColors:"Đã dùng trên canvas",canvasBackground:"Nền canvas",drawingCanvas:"Canvas vẽ",layers:"Lớp",actions:"Chức năng",language:"Ngôn ngữ",liveCollaboration:"Hợp tác trực tiếp...",duplicateSelection:"Tạo bản sao",untitled:"Không có tiêu đề",name:"Tên",yourName:"Tên của bạn",madeWithExcalidraw:"Làm với Excalidraw",group:"Gộp nhóm lại lựa chọn",ungroup:"Tách nhóm lựa chọn",collaborators:"Cộng tác viên",showGrid:"Hiển thị lưới",addToLibrary:"Thêm vào thư viện",removeFromLibrary:"Xóa khỏi thư viện",libraryLoadingMessage:"Đang tải thư viện…",libraries:"Xem thư viện",loadingScene:"Đang tải về…",align:"Căn chỉnh",alignTop:"Căn trên",alignBottom:"Căn dưới",alignLeft:"Canh trái",alignRight:"Canh phải",centerVertically:"Giữa theo chiều dọc",centerHorizontally:"Giữa theo chiều ngang",distributeHorizontally:"Phân bố theo chiều ngang",distributeVertically:"Phân bố theo chiều dọc",flipHorizontal:"Lật ngang",flipVertical:"Lật dọc",viewMode:"Chế độ xem",share:"Chia sẻ",showStroke:"Hiển thị chọn màu",showBackground:"Hiện thị chọn màu nền",toggleTheme:"",personalLib:"Thư viện cá nhân",excalidrawLib:"Thư viện Excalidraw",decreaseFontSize:"Giảm cỡ chữ",increaseFontSize:"Tăng cỡ chữ",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"Sửa liên kết",editEmbed:"",create:"Tạo liên kết",createEmbed:"",label:"Liên kết",labelEmbed:"",empty:""},lineEditor:{edit:"Điều chỉnh nét",exit:"Thoát chỉnh nét"},elementLock:{lock:"Khoá",unlock:"Mở khoá",lockAll:"Khóa tất cả",unlockAll:"Mở khóa tất cả"},statusPublished:"Đã đăng tải",sidebarLock:"Giữ thanh bên luôn mở",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},YPe={noItems:"Chưa có món nào...",hint_emptyLibrary:"Chọn một món trên canvas để thêm nó vào đây, hoặc cài đặt thư viện từ kho lưu trữ công cộng, ở bên dưới.",hint_emptyPrivateLibrary:"Chọn một món trên canvas để thêm nó vào đây."},HPe={clearReset:"Reset canvas",exportJSON:"Xuất ra tập tin",exportImage:"Xuất file ảnh...",export:"Lưu vào...",copyToClipboard:"Sao chép vào bộ nhớ tạm",save:"Lưu vào tập tin hiện tại",saveAs:"Lưu thành",load:"Mở",getShareableLink:"Tạo liên kết để chia sẻ",close:"Đóng",selectLanguage:"Chọn ngôn ngữ",scrollBackToContent:"Cuộn về nội dung chính",zoomIn:"Phóng to",zoomOut:"Thu nhỏ",resetZoom:"Đặt lại thu phóng",menu:"Bảng chọn",done:"Xong",edit:"Chỉnh sửa",undo:"Hoàn tác",redo:"Làm lại",resetLibrary:"",createNewRoom:"Tạo phòng mới",fullScreen:"Toàn màn hình",darkMode:"Chế độ tối",lightMode:"Chế độ sáng",zenMode:"Chế độ zen",objectsSnapMode:"",exitZenMode:"Thoát chể độ zen",cancel:"Hủy",clear:"Làm sạch",remove:"Xóa",embed:"",publishLibrary:"Đăng tải",submit:"Gửi",confirm:"Xác nhận",embeddableInteractionButton:""},KPe={clearReset:"Điều này sẽ dọn hết canvas. Bạn có chắc không?",couldNotCreateShareableLink:"Không thể tạo đường dẫn chia sẻ.",couldNotCreateShareableLinkTooBig:"Không thể tạo đường dẫn chia sẻ: bản vẽ quá lớn",couldNotLoadInvalidFile:"Không thể load tập tin không hợp lệ",importBackendFailed:"",cannotExportEmptyCanvas:"Không thể xuất canvas trống.",couldNotCopyToClipboard:"",decryptFailed:"Không thể giải mã dữ liệu.",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:`Dừng phiên sẽ ghi đè lên bản vẽ được lưu trữ cục bộ trước đó của bạn. Bạn có chắc không?
(Nếu bạn muốn giữ bản vẽ cục bộ của mình, chỉ cần đóng tab trình duyệt.)`,errorAddingToLibrary:"Không thể thêm món vào thư viện",errorRemovingFromLibrary:"Không thể xoá món khỏi thư viện",confirmAddLibrary:"Hình {{numShapes}} sẽ được thêm vào thư viện. Bạn chắc chứ?",imageDoesNotContainScene:"Hình ảnh này dường như không chứa bất kỳ dữ liệu cảnh nào. Bạn đã bật tính năng nhúng cảnh khi xuất chưa?",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"Xoá {{count}} món từ thư viện?",invalidEncryptionKey:"Khóa mã hóa phải có 22 ký tự. Hợp tác trực tiếp bị vô hiệu hóa.",collabOfflineWarning:`Không có kết nối internet.
Thay đổi của bạn sẽ không được lưu!`},JPe={unsupportedFileType:"Loại tập tin không được hỗ trợ.",imageInsertError:"Không thể thêm ảnh. Hãy thử lại sau...",fileTooBig:"Tệp tin quá lớn. Dung lượng tối đa cho phép là {{maxSize}}.",svgImageInsertError:"Không thể thêm ảnh SVG. Mã SVG có vẻ sai.",failedToFetchImage:"",invalidSVGString:"SVG không hợp lệ.",cannotResolveCollabServer:"Không thể kết nối với máy chủ hợp tác. Hãy tải lại trang và thử lại.",importLibraryError:"Không thể tải thư viện",collabSaveFailed:"Không thể lưu vào cơ sở dữ liệu. Nếu vấn đề tiếp tục xảy ra, bạn nên lưu tệp vào máy để đảm bảo bạn không bị mất công việc.",collabSaveFailed_sizeExceeded:"Không thể lưu vào cơ sở dữ liệu, canvas có vẻ quá lớn. Bạn nên lưu tệp cục bộ để đảm bảo bạn không bị mất công việc.",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},OPe={selection:"Lựa chọn",image:"Chèn ảnh",rectangle:"Hình chữ nhật",diamond:"Kim cương",ellipse:"Hình elíp",arrow:"Mũi tên",line:"Đường kẻ",freedraw:"Vẽ",text:"Văn bản",library:"Thư viện",lock:"Giữ dụng cũ hiện tại sau khi vẽ",penMode:"Chế độ bút vẽ - ngăn ngừa chạm nhầm",link:"Thêm/ Chỉnh sửa liên kết cho hình được chọn",eraser:"Xóa",frame:"",magicframe:"",embeddable:"",laser:"",hand:"Tay kéo",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},PPe={canvasActions:"Hành động canvas",selectedShapeActions:"Các hành động cho hình dạng đã chọn",shapes:"Các hình khối"},_Pe={canvasPanning:"Để di chuyển canvas, giữ con lăn chuột hoặc phím cách trong khi kéo, hoặc sử dụng công cụ cầm tay",linearElement:"Ấn để bắt đầu nhiểm điểm vẽ, kéo để vẽ một đường thẳng",freeDraw:"Ấn bà kéo, thả khi bạn xong",text:"Mẹo: bạn có thể thêm văn bản tại bất cứ đâu bằng cách ấn hai lần bằng tool lựa chọn",embeddable:"",text_selected:"Ấn 2 lần hoặc nhấn ENTER để chỉnh văn bản",text_editing:"Nhấn Escape hoặc Ctrl/Cmd+ENTER để hoàn thành chỉnh sửa",linearElementMulti:"Nhấn vào điểm cuối hoặc nhấn Escape hoặc Enter để kết thúc",lockAngle:"Bạn có thể chỉnh lại góc bằng cách giữ phím SHIFT",resize:`Bạn có thể chỉnh tỷ lệ bằng cách giữ SHIFT khi chỉnh kích cỡ,
giữ ALT để chỉnh kích cỡ từ trung tâm`,resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:'Tính năng này có thể được bật bằng cách đặt cờ "dom.events.asyncClipboard.clipboardItem" thành "true". Để thay đổi cờ trình duyệt trong Firefox, hãy truy cập trang "about:config".',disableSnapping:""},WPe={cannotShowPreview:"Không thể xem trước",canvasTooBig:"Canvas này có thể hơi lớn.",canvasTooBigTip:"Mẹo: hãy thử di chuyển các elements nhất lại gần nhau hơn một chút."},qPe={headingMain:"",clearCanvasMessage:"Nếu không tải lại được, hãy thử <button>dọn canvas.</button>",clearCanvasCaveat:" Điều này sẽ dẫn đến mất dữ liệu bạn đã làm ",trackedToSentry:"",openIssueMessage:"",sceneContent:""},zPe={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},ZPe={title:""},VPe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},jPe={blog:"",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},XPe={title:"Dọn canvas"},$Pe={title:"",itemName:"Tên món",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"Từng món trong thư viện phải có tên riêng để có thể lọc. Các món thư viện sau đây sẽ thêm:",atleastOneLibItem:"Vui lòng chọn ít nhất một món thư viện để bắt đầu",republishWarning:"Lưu ý: một số món đã chọn được đánh dấu là đã xuất bản/đã gửi. Bạn chỉ nên gửi lại các món khi cập nhật thư viện hiện có hoặc gửi."},A_e={title:"",content:""},e_e={resetLibrary:"",removeItemsFromLib:"Xóa món đã chọn khỏi thư viện"},t_e={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},r_e={tooltip:"",link:""},i_e={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},u_e={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"canvas",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},a_e={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},n_e={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},o_e={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},s_e={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},l_e={title:"",button:"",description:"",syntax:"",preview:""},CCr={labels:TPe,library:YPe,buttons:HPe,alerts:KPe,errors:JPe,toolBar:OPe,headings:PPe,hints:_Pe,canvasError:WPe,errorSplash:qPe,roomDialog:zPe,errorDialog:ZPe,exportDialog:VPe,helpDialog:jPe,clearCanvasDialog:XPe,publishDialog:$Pe,publishSuccessDialog:A_e,confirmDialog:e_e,imageExportDialog:t_e,encrypted:r_e,stats:i_e,toast:u_e,colors:a_e,welcomeScreen:n_e,colorPicker:o_e,overwriteConfirm:s_e,mermaid:l_e}});var H_e={};Dt(H_e,{alerts:()=>d_e,buttons:()=>E_e,canvasError:()=>f_e,clearCanvasDialog:()=>v_e,colorPicker:()=>M_e,colors:()=>G_e,confirmDialog:()=>x_e,default:()=>BCr,encrypted:()=>L_e,errorDialog:()=>y_e,errorSplash:()=>m_e,errors:()=>I_e,exportDialog:()=>w_e,headings:()=>Q_e,helpDialog:()=>b_e,hints:()=>p_e,imageExportDialog:()=>S_e,labels:()=>C_e,library:()=>B_e,mermaid:()=>Y_e,overwriteConfirm:()=>T_e,publishDialog:()=>k_e,publishSuccessDialog:()=>F_e,roomDialog:()=>D_e,stats:()=>R_e,toast:()=>N_e,toolBar:()=>h_e,welcomeScreen:()=>U_e});var C_e,B_e,E_e,d_e,I_e,h_e,Q_e,p_e,f_e,m_e,D_e,y_e,w_e,b_e,v_e,k_e,F_e,x_e,S_e,L_e,R_e,N_e,G_e,U_e,M_e,T_e,Y_e,BCr;var K_e=_(()=>{zt();C_e={paste:"粘贴",pasteAsPlaintext:"粘贴为纯文本",pasteCharts:"粘贴图表",selectAll:"全部选中",multiSelect:"添加元素到选区",moveCanvas:"移动画布",cut:"剪切",copy:"拷贝",copyAsPng:"复制为 PNG 到剪贴板",copyAsSvg:"复制为 SVG 到剪贴板",copyText:"复制文本到剪贴板",copySource:"复制源码到剪贴板",convertToCode:"转换成代码",bringForward:"上移一层",sendToBack:"置于底层",bringToFront:"置于顶层",sendBackward:"下移一层",delete:"删除",copyStyles:"拷贝样式",pasteStyles:"粘贴样式",stroke:"描边",background:"背景",fill:"填充",strokeWidth:"描边宽度",strokeStyle:"边框样式",strokeStyle_solid:"实线",strokeStyle_dashed:"虚线",strokeStyle_dotted:"点虚线",sloppiness:"线条风格",opacity:"透明度",textAlign:"文本对齐",edges:"边角",sharp:"尖锐",round:"圆润",arrowheads:"端点",arrowhead_none:"无",arrowhead_arrow:"箭头",arrowhead_bar:"条状",arrowhead_circle:"圆点",arrowhead_circle_outline:"圆点(空心)",arrowhead_triangle:"三角箭头",arrowhead_triangle_outline:"三角箭头(空心)",arrowhead_diamond:"菱形",arrowhead_diamond_outline:"菱形(空心)",fontSize:"字体大小",fontFamily:"字体",addWatermark:"添加 “使用 Excalidraw 创建” 水印",handDrawn:"手写",normal:"普通",code:"代码",small:"小",medium:"中",large:"大",veryLarge:"加大",solid:"实心",hachure:"线条",zigzag:"之字形折线",crossHatch:"交叉线条",thin:"细",bold:"粗",left:"左对齐",center:"居中",right:"右对齐",extraBold:"特粗",architect:"朴素",artist:"艺术",cartoonist:"漫画家",fileTitle:"文件名",colorPicker:"取色器",canvasColors:"画布上的",canvasBackground:"画布背景",drawingCanvas:"绘制 Canvas",layers:"图层",actions:"操作",language:"语言",liveCollaboration:"实时协作...",duplicateSelection:"复制",untitled:"无标题",name:"名字",yourName:"您的姓名",madeWithExcalidraw:"使用 Excalidraw 创建",group:"编组",ungroup:"解除编组",collaborators:"协作者",showGrid:"显示网格",addToLibrary:"添加到素材库中",removeFromLibrary:"从素材库中移除",libraryLoadingMessage:"正在加载素材库…",libraries:"浏览素材库",loadingScene:"正在加载绘图…",align:"对齐",alignTop:"顶部对齐",alignBottom:"底端对齐",alignLeft:"左对齐",alignRight:"右对齐",centerVertically:"垂直居中",centerHorizontally:"水平居中",distributeHorizontally:"水平等距分布",distributeVertically:"垂直等距分布",flipHorizontal:"水平翻转",flipVertical:"垂直翻转",viewMode:"查看模式",share:"分享",showStroke:"显示描边颜色选择器",showBackground:"显示背景颜色选择器",toggleTheme:"切换主题",personalLib:"个人素材库",excalidrawLib:"Excalidraw 素材库",decreaseFontSize:"缩小字体大小",increaseFontSize:"放大字体大小",unbindText:"取消文本绑定",bindText:"将文本绑定到容器",createContainerFromText:"将文本包围在容器中",link:{edit:"编辑链接",editEmbed:"编辑链接与嵌入",create:"新建链接",createEmbed:"创建链接与嵌入",label:"链接",labelEmbed:"链接与嵌入",empty:"未设定链接"},lineEditor:{edit:"编辑线条",exit:"退出线条编辑"},elementLock:{lock:"锁定",unlock:"解除锁定",lockAll:"全部锁定",unlockAll:"全部解锁"},statusPublished:"已发布",sidebarLock:"侧边栏常驻",selectAllElementsInFrame:"选择画框中的所有元素",removeAllElementsFromFrame:"分离出画框中的所有元素",eyeDropper:"从画布上取色",textToDiagram:"文字至图表",prompt:"Prompt"},B_e={noItems:"尚未添加任何项目……",hint_emptyLibrary:"选中画布上的项目添加到此处,或从下方的公共素材库中导入。",hint_emptyPrivateLibrary:"选中画布上的项目添加到此处。"},E_e={clearReset:"重置画布",exportJSON:"导出为文件",exportImage:"导出图片...",export:"保存到...",copyToClipboard:"复制到剪贴板",save:"保存至当前文件",saveAs:"保存为",load:"打开",getShareableLink:"获取共享链接",close:"关闭",selectLanguage:"选择语言",scrollBackToContent:"滚动回到内容",zoomIn:"放大",zoomOut:"缩小",resetZoom:"重置缩放",menu:"菜单",done:"完成",edit:"编辑",undo:"撤销",redo:"重做",resetLibrary:"重置素材库",createNewRoom:"新建会议室",fullScreen:"全屏",darkMode:"深色模式",lightMode:"浅色模式",zenMode:"禅模式",objectsSnapMode:"吸附至对象",exitZenMode:"退出禅模式",cancel:"取消",clear:"清除",remove:"删除",embed:"切换嵌入",publishLibrary:"发布",submit:"提交",confirm:"确定",embeddableInteractionButton:"点击以开始交互"},d_e={clearReset:"这将会清除整个画布。您是否要继续?",couldNotCreateShareableLink:"无法创建共享链接",couldNotCreateShareableLinkTooBig:"无法创建可共享链接:画布过大",couldNotLoadInvalidFile:"无法加载无效的文件",importBackendFailed:"从后端导入失败。",cannotExportEmptyCanvas:"无法导出空白画布。",couldNotCopyToClipboard:"无法复制到剪贴板。",decryptFailed:"无法解密数据。",uploadedSecurly:"上传已被端到端加密保护,这意味着 Excalidraw 的服务器和第三方都无法读取内容。",loadSceneOverridePrompt:"加载外部绘图将取代您现有的内容。您想要继续吗?",collabStopOverridePrompt:`停止会话将覆盖您先前本地存储的绘图。 您确定吗?
(如果您想保持本地绘图,只需关闭浏览器选项卡。)`,errorAddingToLibrary:"无法将项目添加到素材库中",errorRemovingFromLibrary:"无法从素材库中移除项目",confirmAddLibrary:"这将添加 {{numShapes}} 个形状到您的素材库中。您确定吗?",imageDoesNotContainScene:"此图像似乎不包含任何画布数据。您是否在导出时启用了画布嵌入功能?",cannotRestoreFromImage:"无法从此图像文件恢复画布",invalidSceneUrl:"无法从提供的 URL 导入场景。它或者格式不正确,或者不包含有效的 Excalidraw JSON 数据。",resetLibrary:"这将会清除你的素材库。你确定要这么做吗?",removeItemsFromsLibrary:"确定要从素材库中删除 {{count}} 个项目吗?",invalidEncryptionKey:"密钥必须包含22个字符。实时协作已被禁用。",collabOfflineWarning:`无网络连接。
您的改动将不会被保存!`},I_e={unsupportedFileType:"不支持的文件格式。",imageInsertError:"无法插入图像。请稍后再试……",fileTooBig:"文件过大。最大允许的大小为 {{maxSize}}。",svgImageInsertError:"无法插入 SVG 图像。该 SVG 标记似乎是无效的。",failedToFetchImage:"无法获取图片。",invalidSVGString:"无效的 SVG。",cannotResolveCollabServer:"无法连接到实时协作服务器。请重新加载页面并重试。",importLibraryError:"无法加载素材库",collabSaveFailed:"无法保存到后端数据库。如果问题持续存在,您应该保存文件到本地,以确保您的工作不会丢失。",collabSaveFailed_sizeExceeded:"无法保存到后端数据库,画布似乎过大。您应该保存文件到本地,以确保您的工作不会丢失。",imageToolNotSupported:"图片已被禁用。",brave_measure_text_error:{line1:"您似乎正在使用 Brave 浏览器并启用了<bold>积极阻止指纹识别</bold>的设置。",line2:"这可能会破坏绘图中的 <bold>文本元素</bold>。",line3:"我们强烈建议禁用此设置。您可以按照<link>这些步骤</link>来设置。",line4:"如果禁用此设置无法修复文本元素的显示,请在 GitHub 上提交一个 <issueLink>issue</issueLink> ,或者在 <discordLink>Discord</discordLink> 上反馈"},libraryElementTypeError:{embeddable:"嵌入的元素不能被添加到素材库。",iframe:"不能将 IFrame 元素添加到素材库中。",image:"我们不久将支持添加图片到素材库"},asyncPasteFailedOnRead:"无法粘贴(无法读取系统剪贴板)。",asyncPasteFailedOnParse:"无法粘贴。",copyToSystemClipboardFailed:"无法复制到剪贴板。"},h_e={selection:"选择",image:"插入图像",rectangle:"矩形",diamond:"菱形",ellipse:"椭圆",arrow:"箭头",line:"线条",freedraw:"自由书写",text:"文字",library:"素材库",lock:"绘制后保持所选的工具栏状态",penMode:"笔模式 – 避免误触",link:"为选中的形状添加/更新链接",eraser:"橡皮",frame:"画框工具",magicframe:"线框图至代码",embeddable:"嵌入网页",laser:"激光笔",hand:"抓手(平移工具)",extraTools:"更多工具",mermaidToExcalidraw:"Mermaid 至 Excalidraw",magicSettings:"AI 设置"},Q_e={canvasActions:"画布动作",selectedShapeActions:"选定形状操作",shapes:"形状"},p_e={canvasPanning:"要移动画布,请按住鼠标滚轮或空格键同时拖拽鼠标,或使用抓手工具。",linearElement:"点击创建多个点 拖动创建直线",freeDraw:"点击并拖动,完成时松开",text:"提示:您也可以使用选择工具双击任意位置来添加文字",embeddable:"点击并拖动以创建嵌入网页",text_selected:"双击或按回车键以编辑文本",text_editing:"按下 Escape 或 CtrlOrCmd+ENTER 完成编辑",linearElementMulti:"点击最后一个点或按下 Esc/Enter 来完成",lockAngle:"可以按住 Shift 来约束角度",resize:`您可以按住SHIFT来限制比例大小,
按住ALT来调整中心大小`,resizeImage:`按住SHIFT可以自由缩放,
按住ALT可以从中间缩放`,rotate:"旋转时可以按住 Shift 来约束角度",lineEditor_info:"按住 CtrlOrCmd 并双击或按 CtrlOrCmd + Enter 来编辑点",lineEditor_pointSelected:"按下 Delete 移除点,CtrlOrCmd+D 以复制,拖动以移动",lineEditor_nothingSelected:`选择要编辑的点 (按住 SHIFT 选择多个),
或按住 Alt 并点击以添加新点`,placeImage:"点击放置图像,或者点击并拖动以手动设置图像大小",publishLibrary:"发布您自己的素材库",bindTextToElement:"按下 Enter 以添加文本",deepBoxSelect:"按住 CtrlOrCmd 以深度选择,并避免拖拽",eraserRevert:"按住 Alt 以反选被标记删除的元素",firefox_clipboard_write:"将高级配置首选项“dom.events.asyncClipboard.clipboardItem”设置为“true”可以启用此功能。要更改 Firefox 的高级配置首选项,请前往“about:config”页面。",disableSnapping:"按住 Ctrl 或 Cmd 以禁用吸附"},f_e={cannotShowPreview:"无法显示预览",canvasTooBig:"画布可能过大。",canvasTooBigTip:"提示:尝试将最远的元素移动到和其它元素更近一些。"},m_e={headingMain:"遇到异常。请尝试<button>重新加载页面</button>。",clearCanvasMessage:"如果重新加载页面无效,请尝试<button>清除画布</button>。",clearCanvasCaveat:"这会造成当前工作丢失",trackedToSentry:"标识符为{{eventId}}的错误已在我们的系统中被记录",openIssueMessage:"我们非常谨慎地处理错误信息,您的画布内容不会被包含在错误报告中。如果您的画布内容不需要保持私密,请考虑在我们的 <button>bug 跟踪系统</button>上提供更多信息。请复制粘贴以下信息到 GitHub Issue 中。",sceneContent:"画布内容:"},D_e={desc_intro:"你可以邀请其他人到目前的画面中与你协作。",desc_privacy:"别担心,该会话使用端到端加密,无论绘制什么都将保持私密,甚至连我们的服务器也无法查看。",button_startSession:"开始会话",button_stopSession:"结束会话",desc_inProgressIntro:"实时协作会话进行中。",desc_shareLink:"分享此链接给你要协作的用户",desc_exitSession:"停止会话将中断您与房间的连接,但您依然可以在本地继续使用画布。请注意,这不会影响到其他用户,他们仍可以在他们的版本上继续协作。",shareTitle:"加入 Excalidraw 实时协作会话"},y_e={title:"错误"},w_e={disk_title:"保存到本地",disk_details:"将画布数据导出为文件,以便以后导入",disk_button:"保存为文件",link_title:"分享链接",link_details:"导出为只读链接。",link_button:"导出链接",excalidrawplus_description:"将画布保存到您的 Excalidraw+ 工作区。",excalidrawplus_button:"导出",excalidrawplus_exportError:"暂时无法导出到 Excalidraw+ ..."},b_e={blog:"浏览我们的博客",click:"单击",deepSelect:"深度选择",deepBoxSelect:"在方框内深度选择并避免拖拽",curvedArrow:"曲线箭头",curvedLine:"曲线",documentation:"文档",doubleClick:"双击",drag:"拖动",editor:"编辑器",editLineArrowPoints:"编辑线条或箭头的点",editText:"添加或编辑文本",github:"发现问题?提交反馈",howto:"帮助文档",or:"或",preventBinding:"禁用箭头吸附",tools:"工具",shortcuts:"快捷键列表",textFinish:"完成编辑 (文本编辑器)",textNewLine:"添加新行(文本编辑器)",title:"帮助",view:"视图",zoomToFit:"缩放以适应所有元素",zoomToSelection:"缩放到选区",toggleElementLock:"锁定/解锁",movePageUpDown:"上下移动页面",movePageLeftRight:"左右移动页面"},v_e={title:"清除画布"},k_e={title:"发布素材库",itemName:"项目名称",authorName:"作者名",githubUsername:"GitHub 用户名",twitterUsername:"Twitter 用户名",libraryName:"名称",libraryDesc:"简介",website:"网址",placeholder:{authorName:"您的名字或用户名",libraryName:"素材库名称",libraryDesc:"介绍您的素材库,让人们了解其用途",githubHandle:"GitHub 用户名(可选),填写后,您可以编辑已提交待审的素材库",twitterHandle:"Twitter 用户名(可选),填写后,当我们在Twitter发布推广信息时便可提及您",website:"您个人网站的或任意的链接(可选)"},errors:{required:"必填",website:"输入一个有效的URL"},noteDescription:"提交后,您的素材库将被包含在<link>公共素材库广场</link>以供其他人在绘图中使用。",noteGuidelines:"提交的素材库需先经人工审核。在提交之前,请先阅读<link>指南</link> 。后续沟通和对库的修改需要 GitHub 账号,但这不是必须的。",noteLicense:"提交即表明您已同意素材库将遵循 <link>MIT 许可证</link>,简而言之,任何人都可以不受限制地使用它们。",noteItems:"素材库中每个项目都有各自的名称以供筛选。以下项目将被包含:",atleastOneLibItem:"请选择至少一个素材库以开始",republishWarning:"注意:部分选中的项目已经发布或提交。请仅在更新已有或已提交的素材库时重复提交项目。"},F_e={title:"素材库已提交",content:"谢谢你 {{authorName}}。您的素材库已被提交审核。请点击<link>此处</link>跟进此次提交的状态"},x_e={resetLibrary:"重置素材库",removeItemsFromLib:"从素材库中删除选中的项目"},S_e={header:"导出图片",label:{withBackground:"背景",onlySelected:"仅选中",darkMode:"深色模式",embedScene:"包含画布数据",scale:"缩放比例",padding:"内边距"},tooltip:{embedScene:`画布数据将被保存到导出的 PNG/SVG 文件,以便恢复。
将会增加导出文件的大小。`},title:{exportToPng:"导出为 PNG",exportToSvg:"导出为 SVG",copyPngToClipboard:"复制 PNG 到剪切板"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"复制到剪贴板"}},L_e={tooltip:"您的绘图采用端到端加密,其内容对于 Excalidraw 服务器是不可见的。",link:"Excalidraw 中关于端到端加密的博客"},R_e={angle:"角度",element:"元素",elements:"元素",height:"高度",scene:"画布",selected:"选中",storage:"存储",title:"详细统计信息",total:"总计",version:"版本",versionCopy:"点击复制",versionNotAvailable:"版本不可用",width:"宽度"},N_e={addedToLibrary:"添加到素材库中",copyStyles:"样式已拷贝。",copyToClipboard:"已复制到剪切板。",copyToClipboardAsPng:`已将 {{exportSelection}} 作为 PNG 复制到剪贴板
({{exportColorScheme}})`,fileSaved:"文件已保存。",fileSavedToFilename:"保存到 {filename}",canvas:"画布",selection:"所选项",pasteAsSingleElement:`使用 {{shortcut}} 粘贴为单个元素,
或粘贴到现有的文本编辑器里`,unableToEmbed:"目前不允许嵌入此网址。请在 GitHub 上提 issue 请求将此网址加入白名单",unrecognizedLinkFormat:"您嵌入的链接不符合格式要求。请尝试粘贴源网站提供的“嵌入 (embed)”字符串"},G_e={transparent:"透明",black:"黑",white:"白",red:"红",pink:"粉红",grape:"紫红",violet:"蓝紫",gray:"灰",blue:"蓝",cyan:"青",teal:"蓝绿",green:"绿",yellow:"黄",orange:"橙",bronze:"古铜"},U_e={app:{center_heading:"您的所有数据都储存在浏览器本地。",center_heading_plus:"是否前往 Excalidraw+ ?",menuHint:"导出、首选项、语言……"},defaults:{menuHint:"导出、首选项……",center_heading:"图,化繁为简。",toolbarHint:"选择工具并开始绘图!",helpHint:"快捷键和帮助"}},M_e={mostUsedCustomColors:"常用自定义颜色",colors:"颜色",shades:"色调明暗",hexCode:"十六进制值",noShades:"此颜色没有可用的明暗变化"},T_e={action:{exportToImage:{title:"导出为图片",button:"导出为图片",description:"将画布数据导出为图片,以便以后导入。"},saveToDisk:{title:"保存到本地",button:"保存到本地",description:"将画布数据导出为文件,以便以后导入。"},excalidrawPlus:{title:"Excalidraw+",button:"导出到 Excalidraw+",description:"将画布保存到您的 Excalidraw+ 工作区。"}},modal:{loadFromFile:{title:"从文件加载",button:"从文件加载",description:"从文件加载将<bold>替换您现有的内容</bold>。<br></br>您可以先使用下列方式备份您的绘图。"},shareableLink:{title:"从链接加载",button:"替换我的内容",description:"加载外部绘图将<bold>替换您现有的内容</bold>。<br></br>您可以先使用下列方式备份您的绘图。"}}},Y_e={title:"Mermaid 至 Excalidraw",button:"插入",description:"目前仅支持<flowchartLink>流程图</flowchartLink>、<sequenceLink>序列图</sequenceLink>和<classLink>类图</classLink>。其他类型在 Excalidraw 中将以图像呈现。",syntax:"Mermaid 语法",preview:"预览"},BCr={labels:C_e,library:B_e,buttons:E_e,alerts:d_e,errors:I_e,toolBar:h_e,headings:Q_e,hints:p_e,canvasError:f_e,errorSplash:m_e,roomDialog:D_e,errorDialog:y_e,exportDialog:w_e,helpDialog:b_e,clearCanvasDialog:v_e,publishDialog:k_e,publishSuccessDialog:F_e,confirmDialog:x_e,imageExportDialog:S_e,encrypted:L_e,stats:R_e,toast:N_e,colors:G_e,welcomeScreen:U_e,colorPicker:M_e,overwriteConfirm:T_e,mermaid:Y_e}});var EWe={};Dt(EWe,{alerts:()=>__e,buttons:()=>P_e,canvasError:()=>V_e,clearCanvasDialog:()=>tWe,colorPicker:()=>cWe,colors:()=>lWe,confirmDialog:()=>uWe,default:()=>ECr,encrypted:()=>nWe,errorDialog:()=>$_e,errorSplash:()=>j_e,errors:()=>W_e,exportDialog:()=>AWe,headings:()=>z_e,helpDialog:()=>eWe,hints:()=>Z_e,imageExportDialog:()=>aWe,labels:()=>J_e,library:()=>O_e,mermaid:()=>BWe,overwriteConfirm:()=>CWe,publishDialog:()=>rWe,publishSuccessDialog:()=>iWe,roomDialog:()=>X_e,stats:()=>oWe,toast:()=>sWe,toolBar:()=>q_e,welcomeScreen:()=>gWe});var J_e,O_e,P_e,__e,W_e,q_e,z_e,Z_e,V_e,j_e,X_e,$_e,AWe,eWe,tWe,rWe,iWe,uWe,aWe,nWe,oWe,sWe,lWe,gWe,cWe,CWe,BWe,ECr;var dWe=_(()=>{zt();J_e={paste:"貼上",pasteAsPlaintext:"",pasteCharts:"貼上圖表",selectAll:"全選",multiSelect:"多重選取",moveCanvas:"移動畫布",cut:"剪下",copy:"複製",copyAsPng:"以 PNG 格式複製",copyAsSvg:"以 SVG 格式複製",copyText:"",copySource:"",convertToCode:"",bringForward:"往上一層移動",sendToBack:"移到最底層",bringToFront:"移到最上層",sendBackward:"往下一層移動",delete:"刪除",copyStyles:"複製樣式",pasteStyles:"套用樣式",stroke:"筆跡顏色",background:"填充顏色",fill:"背景樣式",strokeWidth:"筆跡寬度",strokeStyle:"筆跡線條",strokeStyle_solid:"實線",strokeStyle_dashed:"虛線(較密)",strokeStyle_dotted:"虛線(較疏)",sloppiness:"筆跡風格",opacity:"透明度",textAlign:"文字對齊",edges:"邊角樣式",sharp:"銳角",round:"圓角",arrowheads:"箭嘴",arrowhead_none:"無箭嘴",arrowhead_arrow:"普通箭嘴",arrowhead_bar:"平頭條狀",arrowhead_circle:"",arrowhead_circle_outline:"",arrowhead_triangle:"三角箭嘴",arrowhead_triangle_outline:"",arrowhead_diamond:"",arrowhead_diamond_outline:"",fontSize:"字型大小",fontFamily:"字體",addWatermark:"加入「使用 Excalidraw 製圖」水印",handDrawn:"手繪體",normal:"電腦字體",code:"等寬體",small:"細",medium:"中",large:"大",veryLarge:"勁大",solid:"實心",hachure:"斜線",zigzag:"",crossHatch:"交叉格仔",thin:"幼",bold:"粗",left:"靠左對齊",center:"置中對齊",right:"靠右對齊",extraBold:"勁粗",architect:"手繪風格",artist:"藝術家風格",cartoonist:"卡通風格",fileTitle:"檔案名稱",colorPicker:"",canvasColors:"",canvasBackground:"畫布背景顏色",drawingCanvas:"畫布",layers:"圖層",actions:"動作",language:"\uD83C\uDF0F 語言",liveCollaboration:"",duplicateSelection:"製作副本",untitled:"未命名的作品",name:"",yourName:"你的名稱",madeWithExcalidraw:"使用 Excalidraw 製圖",group:"建立物件群組",ungroup:"取消物件群組",collaborators:"已連線的協作者",showGrid:"顯示網格",addToLibrary:"加入作品庫",removeFromLibrary:"從作品庫中移除",libraryLoadingMessage:"正在載入作品庫…",libraries:"瀏覽作品庫",loadingScene:"載入畫布中…",align:"物件對齊",alignTop:"水平置頂",alignBottom:"水平置底",alignLeft:"垂直靠左對齊",alignRight:"垂直靠右對齊",centerVertically:"垂直置中",centerHorizontally:"水平置中",distributeHorizontally:"左右等距",distributeVertically:"上下等距",flipHorizontal:"左右反轉",flipVertical:"上下反轉",viewMode:"唯讀模式",share:"",showStroke:"",showBackground:"",toggleTheme:"",personalLib:"",excalidrawLib:"",decreaseFontSize:"",increaseFontSize:"",unbindText:"",bindText:"",createContainerFromText:"",link:{edit:"",editEmbed:"",create:"",createEmbed:"",label:"",labelEmbed:"",empty:""},lineEditor:{edit:"",exit:""},elementLock:{lock:"",unlock:"",lockAll:"",unlockAll:""},statusPublished:"",sidebarLock:"",selectAllElementsInFrame:"",removeAllElementsFromFrame:"",eyeDropper:"",textToDiagram:"",prompt:""},O_e={noItems:"",hint_emptyLibrary:"",hint_emptyPrivateLibrary:""},P_e={clearReset:"清空畫布",exportJSON:"",exportImage:"",export:"",copyToClipboard:"",save:"",saveAs:"",load:"",getShareableLink:"",close:"",selectLanguage:"",scrollBackToContent:"",zoomIn:"",zoomOut:"",resetZoom:"",menu:"",done:"",edit:"",undo:"",redo:"",resetLibrary:"",createNewRoom:"",fullScreen:"",darkMode:"",lightMode:"",zenMode:"",objectsSnapMode:"",exitZenMode:"",cancel:"",clear:"",remove:"",embed:"",publishLibrary:"",submit:"",confirm:"",embeddableInteractionButton:""},__e={clearReset:"【‼️ 警告 ‼️ 無法復原的動作】你確定要清空呢塊畫布嗎?",couldNotCreateShareableLink:"",couldNotCreateShareableLinkTooBig:"",couldNotLoadInvalidFile:"",importBackendFailed:"",cannotExportEmptyCanvas:"無嘢可以匯出喎~畫吓嘢先?",couldNotCopyToClipboard:"",decryptFailed:"",uploadedSecurly:"",loadSceneOverridePrompt:"",collabStopOverridePrompt:"",errorAddingToLibrary:"",errorRemovingFromLibrary:"",confirmAddLibrary:"",imageDoesNotContainScene:"",cannotRestoreFromImage:"",invalidSceneUrl:"",resetLibrary:"",removeItemsFromsLibrary:"",invalidEncryptionKey:"",collabOfflineWarning:""},W_e={unsupportedFileType:"",imageInsertError:"",fileTooBig:"",svgImageInsertError:"",failedToFetchImage:"",invalidSVGString:"",cannotResolveCollabServer:"",importLibraryError:"",collabSaveFailed:"",collabSaveFailed_sizeExceeded:"",imageToolNotSupported:"",brave_measure_text_error:{line1:"",line2:"",line3:"",line4:""},libraryElementTypeError:{embeddable:"",iframe:"",image:""},asyncPasteFailedOnRead:"",asyncPasteFailedOnParse:"",copyToSystemClipboardFailed:""},q_e={selection:"",image:"",rectangle:"",diamond:"",ellipse:"",arrow:"",line:"",freedraw:"",text:"",library:"",lock:"",penMode:"",link:"",eraser:"",frame:"",magicframe:"",embeddable:"",laser:"",hand:"",extraTools:"",mermaidToExcalidraw:"",magicSettings:""},z_e={canvasActions:"畫布動作",selectedShapeActions:"",shapes:""},Z_e={canvasPanning:"",linearElement:"",freeDraw:"",text:"",embeddable:"",text_selected:"",text_editing:"",linearElementMulti:"",lockAngle:"",resize:"",resizeImage:"",rotate:"",lineEditor_info:"",lineEditor_pointSelected:"",lineEditor_nothingSelected:"",placeImage:"",publishLibrary:"",bindTextToElement:"",deepBoxSelect:"",eraserRevert:"",firefox_clipboard_write:"",disableSnapping:""},V_e={cannotShowPreview:"無法顯示預覽",canvasTooBig:"塊畫布太大啦,縮細啲先啦?",canvasTooBigTip:""},j_e={headingMain:"",clearCanvasMessage:"如果重新整理頁面都係睇唔到,你可以<button>清空畫布</button>",clearCanvasCaveat:"(注意:呢個動作會直接丟棄你嘅作品,並且無法復原)",trackedToSentry:"",openIssueMessage:"",sceneContent:""},X_e={desc_intro:"",desc_privacy:"",button_startSession:"",button_stopSession:"",desc_inProgressIntro:"",desc_shareLink:"",desc_exitSession:"",shareTitle:""},$_e={title:""},AWe={disk_title:"",disk_details:"",disk_button:"",link_title:"",link_details:"",link_button:"",excalidrawplus_description:"",excalidrawplus_button:"",excalidrawplus_exportError:""},eWe={blog:"",click:"",deepSelect:"",deepBoxSelect:"",curvedArrow:"",curvedLine:"",documentation:"",doubleClick:"",drag:"",editor:"",editLineArrowPoints:"",editText:"",github:"",howto:"",or:"",preventBinding:"",tools:"",shortcuts:"",textFinish:"",textNewLine:"",title:"",view:"",zoomToFit:"",zoomToSelection:"",toggleElementLock:"",movePageUpDown:"",movePageLeftRight:""},tWe={title:""},rWe={title:"",itemName:"",authorName:"",githubUsername:"",twitterUsername:"",libraryName:"",libraryDesc:"",website:"",placeholder:{authorName:"",libraryName:"",libraryDesc:"",githubHandle:"",twitterHandle:"",website:""},errors:{required:"",website:""},noteDescription:"",noteGuidelines:"",noteLicense:"",noteItems:"",atleastOneLibItem:"",republishWarning:""},iWe={title:"",content:""},uWe={resetLibrary:"",removeItemsFromLib:""},aWe={header:"",label:{withBackground:"",onlySelected:"",darkMode:"",embedScene:"",scale:"",padding:""},tooltip:{embedScene:""},title:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""},button:{exportToPng:"",exportToSvg:"",copyPngToClipboard:""}},nWe={tooltip:"",link:""},oWe={angle:"",element:"",elements:"",height:"",scene:"",selected:"",storage:"",title:"",total:"",version:"",versionCopy:"",versionNotAvailable:"",width:""},sWe={addedToLibrary:"",copyStyles:"",copyToClipboard:"",copyToClipboardAsPng:"",fileSaved:"",fileSavedToFilename:"",canvas:"畫布",selection:"",pasteAsSingleElement:"",unableToEmbed:"",unrecognizedLinkFormat:""},lWe={transparent:"",black:"",white:"",red:"",pink:"",grape:"",violet:"",gray:"",blue:"",cyan:"",teal:"",green:"",yellow:"",orange:"",bronze:""},gWe={app:{center_heading:"",center_heading_plus:"",menuHint:""},defaults:{menuHint:"",center_heading:"",toolbarHint:"",helpHint:""}},cWe={mostUsedCustomColors:"",colors:"",shades:"",hexCode:"",noShades:""},CWe={action:{exportToImage:{title:"",button:"",description:""},saveToDisk:{title:"",button:"",description:""},excalidrawPlus:{title:"",button:"",description:""}},modal:{loadFromFile:{title:"",button:"",description:""},shareableLink:{title:"",button:"",description:""}}},BWe={title:"",button:"",description:"",syntax:"",preview:""},ECr={labels:J_e,library:O_e,buttons:P_e,alerts:__e,errors:W_e,toolBar:q_e,headings:z_e,hints:Z_e,canvasError:V_e,errorSplash:j_e,roomDialog:X_e,errorDialog:$_e,exportDialog:AWe,helpDialog:eWe,clearCanvasDialog:tWe,publishDialog:rWe,publishSuccessDialog:iWe,confirmDialog:uWe,imageExportDialog:aWe,encrypted:nWe,stats:oWe,toast:sWe,colors:lWe,welcomeScreen:gWe,colorPicker:cWe,overwriteConfirm:CWe,mermaid:BWe}});var PWe={};Dt(PWe,{alerts:()=>pWe,buttons:()=>QWe,canvasError:()=>wWe,clearCanvasDialog:()=>SWe,colorPicker:()=>KWe,colors:()=>YWe,confirmDialog:()=>NWe,default:()=>dCr,encrypted:()=>UWe,errorDialog:()=>kWe,errorSplash:()=>bWe,errors:()=>fWe,exportDialog:()=>FWe,headings:()=>DWe,helpDialog:()=>xWe,hints:()=>yWe,imageExportDialog:()=>GWe,labels:()=>IWe,library:()=>hWe,mermaid:()=>OWe,overwriteConfirm:()=>JWe,publishDialog:()=>LWe,publishSuccessDialog:()=>RWe,roomDialog:()=>vWe,stats:()=>MWe,toast:()=>TWe,toolBar:()=>mWe,welcomeScreen:()=>HWe});var IWe,hWe,QWe,pWe,fWe,mWe,DWe,yWe,wWe,bWe,vWe,kWe,FWe,xWe,SWe,LWe,RWe,NWe,GWe,UWe,MWe,TWe,YWe,HWe,KWe,JWe,OWe,dCr;var _We=_(()=>{zt();IWe={paste:"貼上",pasteAsPlaintext:"以純文字貼上",pasteCharts:"貼上圖表",selectAll:"全選",multiSelect:"將物件加入選取範圍",moveCanvas:"移動畫布",cut:"剪下",copy:"複製",copyAsPng:"以PNG格式儲存到剪貼板",copyAsSvg:"以SVG格式複製到剪貼板",copyText:"以文字格式複製至剪貼簿",copySource:"複製來源至剪貼簿",convertToCode:"轉換為程式碼",bringForward:"上移一層",sendToBack:"移到最底層",bringToFront:"置於最頂層",sendBackward:"往後移一層",delete:"刪除",copyStyles:"複製樣式",pasteStyles:"貼上樣式",stroke:"筆畫",background:"背景",fill:"填滿",strokeWidth:"筆跡寬度",strokeStyle:"筆畫樣式",strokeStyle_solid:"實線",strokeStyle_dashed:"虛線",strokeStyle_dotted:"點線",sloppiness:"線條風格",opacity:"透明度",textAlign:"文字對齊",edges:"邊緣",sharp:"尖銳",round:"平滑",arrowheads:"箭頭",arrowhead_none:"無",arrowhead_arrow:"箭頭",arrowhead_bar:"條狀箭頭",arrowhead_circle:"圓形",arrowhead_circle_outline:"圓形(外框)",arrowhead_triangle:"三角形",arrowhead_triangle_outline:"三角形(外框)",arrowhead_diamond:"菱形",arrowhead_diamond_outline:"菱形(外框)",fontSize:"字型大小",fontFamily:"字體集",addWatermark:'加上 "Made with Excalidraw" 浮水印',handDrawn:"手寫",normal:"一般",code:"代碼",small:"小",medium:"中",large:"大",veryLarge:"特大",solid:"實心",hachure:"斜線筆觸",zigzag:"Z字形",crossHatch:"交叉筆觸",thin:"細",bold:"粗",left:"左側",center:"置中",right:"右側",extraBold:"極粗",architect:"精確",artist:"藝術",cartoonist:"卡通",fileTitle:"檔案名稱",colorPicker:"色彩選擇工具",canvasColors:"使用於畫布",canvasBackground:"Canvas 背景",drawingCanvas:"繪圖 canvas",layers:"圖層",actions:"動作",language:"語言",liveCollaboration:"即時協作...",duplicateSelection:"複製",untitled:"無標題",name:"名稱",yourName:"你的名稱",madeWithExcalidraw:"以 Excalidraw 製作",group:"建立群組",ungroup:"取消群組",collaborators:"協作者",showGrid:"顯示格線",addToLibrary:"加入資料庫",removeFromLibrary:"從資料庫中移除",libraryLoadingMessage:"資料庫讀取中…",libraries:"瀏覽資料庫",loadingScene:"場景讀取中…",align:"對齊",alignTop:"對齊頂部",alignBottom:"對齊底部",alignLeft:"對齊左側",alignRight:"對齊右側",centerVertically:"垂直置中",centerHorizontally:"水平置中",distributeHorizontally:"水平分布",distributeVertically:"垂直分布",flipHorizontal:"水平翻轉",flipVertical:"垂直翻轉",viewMode:"檢視模式",share:"共享",showStroke:"顯示線條檢色器",showBackground:"顯示背景檢色器",toggleTheme:"切換主題",personalLib:"個人資料庫",excalidrawLib:"Excalidraw 資料庫",decreaseFontSize:"縮小文字",increaseFontSize:"放大文字",unbindText:"取消綁定文字",bindText:"結合文字至容器",createContainerFromText:"將文字包於容器中",link:{edit:"編輯連結",editEmbed:"編輯連結&嵌入",create:"建立連結",createEmbed:"建立連結&嵌入",label:"連結",labelEmbed:"連結&嵌入",empty:"未設定連結"},lineEditor:{edit:"編輯線條",exit:"結束線條編輯"},elementLock:{lock:"鎖定",unlock:"解鎖",lockAll:"全部鎖定",unlockAll:"全部解鎖"},statusPublished:"已發布",sidebarLock:"側欄維持開啟",selectAllElementsInFrame:"選取框架內的所有元素",removeAllElementsFromFrame:"從框架內移除所有元素",eyeDropper:"從畫布中選取顏色",textToDiagram:"文字轉圖表",prompt:"提示詞"},hWe={noItems:"尚未加入任何物件...",hint_emptyLibrary:"選取畫布上的物件以加入,或從下方的公開 repository 中安裝資料庫",hint_emptyPrivateLibrary:"選擇畫布上的物件以在此加入"},QWe={clearReset:"重置 canvas",exportJSON:"匯出至檔案",exportImage:"匯出圖片",export:"儲存至...",copyToClipboard:"複製至剪貼簿",save:"儲存目前檔案",saveAs:"儲存為",load:"開啟",getShareableLink:"取得共享連結",close:"關閉",selectLanguage:"選擇語言",scrollBackToContent:"捲動回到內容",zoomIn:"放大",zoomOut:"縮小",resetZoom:"重設縮放",menu:"選單",done:"完成",edit:"編輯",undo:"復原",redo:"重做",resetLibrary:"重設資料庫",createNewRoom:"建立新協作會議室",fullScreen:"全螢幕",darkMode:"深色模式",lightMode:"淺色模式",zenMode:"專注模式",objectsSnapMode:"吸附至物件",exitZenMode:"離開專注模式",cancel:"取消",clear:"清除",remove:"刪除",embed:"切換嵌入",publishLibrary:"發布",submit:"送出",confirm:"確認",embeddableInteractionButton:"點擊以互動"},pWe={clearReset:"這將會清除整個 canvas。你確定嗎?",couldNotCreateShareableLink:"無法建立共享連結。",couldNotCreateShareableLinkTooBig:"無法建立共享連結:場景太大",couldNotLoadInvalidFile:"無法讀取失效的檔案。",importBackendFailed:"後端讀取失敗。",cannotExportEmptyCanvas:"無法輸出空白的 canvas。",couldNotCopyToClipboard:"無法複製到剪貼簿",decryptFailed:"無法解密資料。",uploadedSecurly:"上傳已通過 end-to-end 加密,Excalidraw 伺服器和第三方無法皆讀取其內容。",loadSceneOverridePrompt:"讀取外部圖樣將取代目前的內容。是否要繼續?",collabStopOverridePrompt:`停止連線將覆蓋您先前於本機儲存的繪圖進度,是否確認?
(如要保留原有的本機繪圖進度,直接關閉瀏覽器分頁即可。)`,errorAddingToLibrary:"無法於此資料庫加入項目",errorRemovingFromLibrary:"無法由此資料庫移除項目",confirmAddLibrary:"這將會將 {{numShapes}} 個圖形加入你的資料庫,你確定嗎?",imageDoesNotContainScene:"此圖檔中未包含場景資料。輸出檔案時是否有包含場景資料?",cannotRestoreFromImage:"無法由此檔案回復場景。",invalidSceneUrl:"無法由提供的 URL 匯入場景。可能是發生異常,或未包含有效的 Excalidraw JSON 資料。",resetLibrary:"這會清除您的資料庫,是否確定?",removeItemsFromsLibrary:"從資料庫刪除 {{count}} 項?",invalidEncryptionKey:"加密鍵必須為22字元。即時協作已停用。",collabOfflineWarning:`沒有可用的網路連線。
變更無法儲存!`},fWe={unsupportedFileType:"不支援的檔案類型。",imageInsertError:"無法插入圖片。請稍後再試…",fileTooBig:"檔案過大。可接受的最大尺寸為 {{maxSize}} 。",svgImageInsertError:"無法插入 SVG 圖片。此 SVG 檔案有問題。",failedToFetchImage:"無法獲取圖片。",invalidSVGString:"無效的 SVG。",cannotResolveCollabServer:"無法連結至 collab 伺服器。請重新整理後再試一次。",importLibraryError:"無法載入資料庫",collabSaveFailed:"無法儲存至後端資料庫。若此問題持續發生,請將檔案儲存於本機以確保資料不會遺失。",collabSaveFailed_sizeExceeded:"無法儲存至後端資料庫,可能的原因為畫布尺寸過大。請將檔案儲存於本機以確保資料不會遺失。",imageToolNotSupported:"圖片已停用",brave_measure_text_error:{line1:"看起來您開啟了 Brave 瀏覽器的 <bold>Aggressively Block Fingerprinting</bold> 設定。",line2:"這可能造成您畫布中 <bold>文字元素</bold> 的異常。",line3:"我們強烈建議您關閉此設定。您可以依照 <link>這些步驟</link> 來進行。",line4:"若關閉此設定並未修復文字元素的顯示問題,請回報於我們 GitHub 上的 <issueLink>issue</issueLink>,或在 <discordLink>Discord</discordLink> 上告訴我們。"},libraryElementTypeError:{embeddable:"可嵌入元素無法加入資料庫",iframe:"IFrame 元素無法加入資料庫",image:"即將支援加入圖片至資料庫!"},asyncPasteFailedOnRead:"無法貼上(無法由系統剪貼簿讀入)",asyncPasteFailedOnParse:"無法貼上",copyToSystemClipboardFailed:"無法複製至剪貼簿"},mWe={selection:"選取",image:"插入圖片",rectangle:"長方形",diamond:"菱形",ellipse:"橢圓",arrow:"箭頭",line:"線條",freedraw:"繪圖",text:"文字",library:"資料庫",lock:"可連續使用選取的工具",penMode:"筆模式 - 避免觸摸",link:"為所選的形狀增加\b/更新連結",eraser:"橡皮擦",frame:"框架工具",magicframe:"線框稿轉為程式碼",embeddable:"嵌入網站",laser:"雷射筆",hand:"手形(平移工具)",extraTools:"更多工具",mermaidToExcalidraw:"Mermaid 至 Excalidraw",magicSettings:"AI 設定"},DWe={canvasActions:"canvas 動作",selectedShapeActions:"選取圖形動作",shapes:"形狀"},yWe={canvasPanning:"若要移動畫布,請在拖曳時按住滑鼠滾輪或空白鍵,或使用手形工具",linearElement:"點擊以繪製多點曲線;或拖曳以繪製直線",freeDraw:"點擊並拖曳來繪圖,放開即結束",text:"提示:亦可使用選取工具在任何地方雙擊來加入文字",embeddable:"點擊並拖移以建立嵌入網站",text_selected:"雙擊滑鼠或按 Enter 以編輯文字",text_editing:"按跳脫鍵或 Ctrl 或 Cmd + Enter 以結束編輯",linearElementMulti:"按下 Escape 或 Enter 以結束繪製",lockAngle:"按住 SHIFT 可限制旋轉角度",resize:"縮放時按住 Shift 可保持原比例縮放;\\n按住 Alt 可由中心點進行縮放",resizeImage:"按住 SHIFT 可任意縮放,按住 ALT 可由中央縮放。",rotate:"旋轉時按住 Shift 可限制旋轉角度",lineEditor_info:"按住 Ctrl 或 Cmd 並雙擊或按住 Ctrl 或 Cmd + Enter 來編輯控制點",lineEditor_pointSelected:"按下 Delete 可移除錨點;Ctrl 或 Cmd + D 可複製;或可拖曳來移動",lineEditor_nothingSelected:`選擇要編輯的錨點(按住 SHIFT 可多選),
或按住 Alt 並點擊以增加新錨點。`,placeImage:"點擊以放置圖片,或點擊並拖曳以手動調整其尺寸。",publishLibrary:"發布個人資料庫",bindTextToElement:"按下 Enter 以加入文字。",deepBoxSelect:"按住 Ctrl 或 Cmd 以深度選取並避免拖曳",eraserRevert:"按住 Alt 以反選取已標記待刪除的元素",firefox_clipboard_write:`此功能有機會透過將 "dom.events.asyncClipboard.clipboardItem" 設定為 "true" 來開啟。
若要變更 Firefox 瀏覽器的此設定值,請至 "about:config" 頁面。`,disableSnapping:"按住 Ctrl 或 Cmd 以禁用吸附"},wWe={cannotShowPreview:"無法顯示預覽",canvasTooBig:"畫布可能過大",canvasTooBigTip:"提示:可嘗試將最遠的元素移動至較集中的位置"},bWe={headingMain:"發生錯誤,嘗試<button>重新載入頁面。</button>",clearCanvasMessage:"若重新載入仍無法解決問題,嘗試<button>清除 canvas。</button>",clearCanvasCaveat:"此動作將造成目前的作品被移除。",trackedToSentry:"此錯誤與其識別碼{{eventId}}將由系統記錄。",openIssueMessage:"我們將謹慎處理,你的作品內容不會被包含在錯誤報告中。若你的作品不需保持私密,請考慮使用我們的<button>bug tracker。</button>請將下列資訊複製貼上至 GitHub issue 中。",sceneContent:"作品內容:"},vWe={desc_intro:"你可以邀請其他人一起協作目前的作品。",desc_privacy:"連線使用 end-to-end 加密故無須擔心作品的安全性。即使是我們的伺服器也無法取得其內容。",button_startSession:"開始連線",button_stopSession:"停止連線",desc_inProgressIntro:"即時協作連線正在進行中。",desc_shareLink:"將此連結分享給欲協作的對象:",desc_exitSession:"停止連線將中斷你與協作會議室的連結,但你仍可於本機編輯此作品。意指停止連線後你的編輯不會被先前共同協作的人看見,且他們可繼續共同協作另一個版本。",shareTitle:"加入 Excalidraw 上的即時協作會議室"},kWe={title:"錯誤"},FWe={disk_title:"儲存至硬碟",disk_details:"將場景匯出為可供匯入之檔案",disk_button:"儲存至檔案",link_title:"可共享連結",link_details:"匯出為唯讀連結",link_button:"匯出為連結",excalidrawplus_description:"將此場景儲存至你的 Excalidraw+ 工作區",excalidrawplus_button:"輸出",excalidrawplus_exportError:"目前無法輸出至 Excalidraw+"},xWe={blog:"閱讀部落格",click:"點擊",deepSelect:"深度選取",deepBoxSelect:"在容器內深度選取並避免拖曳",curvedArrow:"曲箭頭",curvedLine:"曲線",documentation:"文件",doubleClick:"雙擊",drag:"拖曳",editor:"編輯器",editLineArrowPoints:"編輯線/箭頭控制點",editText:"編輯文字/增加標籤",github:"發現異常?回報問題",howto:"參照我們的說明",or:"或",preventBinding:"避免箭號連結",tools:"工具",shortcuts:"鍵盤快速鍵",textFinish:"完成編輯(文字編輯器)",textNewLine:"換行(文字編輯器)",title:"說明",view:"檢視",zoomToFit:"放大至填滿畫面",zoomToSelection:"縮放至選取區",toggleElementLock:"鎖定/解鎖已選的項目",movePageUpDown:"向上/下移動頁面",movePageLeftRight:"向左/右移動頁面"},SWe={title:"清除畫布"},LWe={title:"發布資料庫",itemName:"項目名稱",authorName:"作者名稱",githubUsername:"GitHub 帳號",twitterUsername:"Twitter 帳號",libraryName:"資料庫名稱",libraryDesc:"資料庫說明",website:"網站",placeholder:{authorName:"您的名稱或帳號",libraryName:"您的資料庫名稱",libraryDesc:"提供您的資料庫說明以利他人理解其用途",githubHandle:"Github handle(選填),填寫後您可編輯已送出待審查的資料庫",twitterHandle:"Twitter 帳號(選填),填寫後若我們在 Twitter 推廣時可提及您",website:"您個人網站或其他網站的連結(選填)"},errors:{required:"必填",website:"請輸入有效的 URL"},noteDescription:"送出您的資料庫後將被包含於<link>公開資料庫 repository</link>以利他人在其繪圖中使用。",noteGuidelines:"資料庫需先經人工審查。請閱讀<link>說明文件</link>再送出。若需溝通與修改時要透過 GitHub 帳號來進行,但並非強制需求。",noteLicense:"送出即代表您同意此資料庫將發布時使用 <link>MIT 授權,</link>簡單來說是指任何人都能不受限制的使用。",noteItems:"每個資料庫項目都有獨立的名稱故可篩選。會包含下列資料庫項目:",atleastOneLibItem:"請選擇至少一項資料庫項目",republishWarning:"注意:部分選取中的物件先前已發布/送出過。建議僅在要更新現存資料庫或已送出的物件時才重新送出這些物件。"},RWe={title:"資料庫已送出",content:"感謝 {{authorName}} 。您的資料庫已送出待審查。您可查看目前狀態<link>在此</link>"},NWe={resetLibrary:"重設資料庫",removeItemsFromLib:"從資料庫移除所選的項目"},GWe={header:"匯出圖片",label:{withBackground:"背景",onlySelected:"僅選取物件",darkMode:"深色模式",embedScene:"嵌入場景",scale:"縮放比例",padding:"內間距"},tooltip:{embedScene:`用於回復場景的場景資料會被包含在輸出的 PNG/SVG 檔案中。
會增加輸出的檔案大小。`},title:{exportToPng:"輸出成 PNG",exportToSvg:"輸出成 SVG",copyPngToClipboard:"複製 PNG 至剪貼簿"},button:{exportToPng:"PNG",exportToSvg:"SVG",copyPngToClipboard:"複製至剪貼簿"}},UWe={tooltip:"你的作品已使用 end-to-end 方式加密,Excalidraw 的伺服器也無法取得其內容。",link:"Excalidraw 端到端加密的相關部落格文章"},MWe={angle:"角度",element:"元素",elements:"元素",height:"高度",scene:"場景",selected:"已選",storage:"儲存",title:"詳細統計",total:"合計",version:"版本",versionCopy:"點擊複製",versionNotAvailable:"無法取得版本",width:"寬度"},TWe={addedToLibrary:"加入資料庫",copyStyles:"已複製樣式",copyToClipboard:"複製至剪貼簿。",copyToClipboardAsPng:`以 PNG 格式將 {{exportSelection}} 複製至剪貼簿
({{exportColorScheme}})`,fileSaved:"已儲存檔案。",fileSavedToFilename:"儲存為 {filename}",canvas:"畫布",selection:"已選項目",pasteAsSingleElement:`使用 {{shortcut}} 以做為單一物件貼上,
或貼上至現有的文字編輯器`,unableToEmbed:"目前不允許嵌入此網址。您可至 GitHub 提出 issue 以要求將此網址加入合格名單。",unrecognizedLinkFormat:"您嵌入的連結格式不符。請嘗試貼入原網站所提供的「嵌入」字串。"},YWe={transparent:"透明",black:"黑",white:"白",red:"紅",pink:"粉紅",grape:"深紫",violet:"藍紫",gray:"灰",blue:"藍",cyan:"青",teal:"藍綠",green:"綠",yellow:"黃",orange:"橘",bronze:"銅"},HWe={app:{center_heading:"所有資料皆已在瀏覽器中儲存於本機",center_heading_plus:"您是否是要前往 Excalidraw+ ?",menuHint:"輸出、偏好設定、語言..."},defaults:{menuHint:"輸出、偏好設定及其他...",center_heading:"圖表。製作。超簡單。",toolbarHint:"選個工具開始畫圖吧!",helpHint:"快速鍵與說明"}},KWe={mostUsedCustomColors:"最常使用的自訂顏色",colors:"顏色",shades:"漸變色",hexCode:"Hex 碼",noShades:"沒有此顏色的漸變色"},JWe={action:{exportToImage:{title:"匯出為圖片",button:"匯出為圖片",description:"將場景匯出為可供匯入的圖片檔案"},saveToDisk:{title:"儲存至硬碟",button:"儲存至硬碟",description:"將場景匯出為可供匯入的檔案"},excalidrawPlus:{title:"Excalidraw+",button:"匯出至 Excalidraw+",description:"將此場景儲存至您的 Excalidraw+ 工作區"}},modal:{loadFromFile:{title:"從檔案載入",button:"從檔案載入",description:"從檔案載入將<bold>取代您目前的內容</bold>。<br></br>可先使用下方的選項備份您的繪圖。"},shareableLink:{title:"從連結載入",button:"取代我的內容",description:"載入外部繪圖將<bold>取代您目前的內容</bold>。<br></br>可先使用下方的選項備份您的繪圖。"}}},OWe={title:"Mermaid 至 Excalidraw",button:"插入",description:"目前僅支援 <flowchartLink>Flowchart</flowchartLink> 、 <sequenceLink>Sequence</sequenceLink> 及 <classLink>Class </classLink> 圖表。其餘檔案類型在 Excalidraw 將會以圖像呈現。",syntax:"Mermaid 語法",preview:"預覽"},dCr={labels:IWe,library:hWe,buttons:QWe,alerts:pWe,errors:fWe,toolBar:mWe,headings:DWe,hints:yWe,canvasError:wWe,errorSplash:bWe,roomDialog:vWe,errorDialog:kWe,exportDialog:FWe,helpDialog:xWe,clearCanvasDialog:SWe,publishDialog:LWe,publishSuccessDialog:RWe,confirmDialog:NWe,imageExportDialog:GWe,encrypted:UWe,stats:MWe,toast:TWe,colors:YWe,welcomeScreen:HWe,colorPicker:KWe,overwriteConfirm:JWe,mermaid:OWe}});var WWe=_(()=>{(()=>{if(Path2D.prototype.roundRect??=A,globalThis.CanvasRenderingContext2D)globalThis.CanvasRenderingContext2D.prototype.roundRect??=A;if(globalThis.OffscreenCanvasRenderingContext2D)globalThis.OffscreenCanvasRenderingContext2D.prototype.roundRect??=A;function A(r,i,u,a,n){if(![r,i,u,a].every((m)=>Number.isFinite(m)))return;n=I(n);let o,s,l,g;if(n.length===4)o=Q(n[0]),s=Q(n[1]),l=Q(n[2]),g=Q(n[3]);else if(n.length===3)o=Q(n[0]),s=Q(n[1]),g=Q(n[1]),l=Q(n[2]);else if(n.length===2)o=Q(n[0]),l=Q(n[0]),s=Q(n[1]),g=Q(n[1]);else if(n.length===1)o=Q(n[0]),s=Q(n[0]),l=Q(n[0]),g=Q(n[0]);else throw RangeError(`${e(this)} ${n.length} is not a valid size for radii sequence.`);let C=[o,s,l,g],B=C.find(({x:m,y:f})=>m<0||f<0),E=B?.x<0?B.x:B?.y;if(C.some(({x:m,y:f})=>!Number.isFinite(m)||!Number.isFinite(f)))return;if(B)throw RangeError(`${e(this)} Radius value ${B} is negative.`);if(p(C),u<0&&a<0)this.moveTo(r-o.x,i),this.ellipse(r+u+s.x,i-s.y,s.x,s.y,0,-Math.PI*1.5,-Math.PI),this.ellipse(r+u+l.x,i+a+l.y,l.x,l.y,0,-Math.PI,-Math.PI/2),this.ellipse(r-g.x,i+a+g.y,g.x,g.y,0,-Math.PI/2,0),this.ellipse(r-o.x,i-o.y,o.x,o.y,0,0,-Math.PI/2);else if(u<0)this.moveTo(r-o.x,i),this.ellipse(r+u+s.x,i+s.y,s.x,s.y,0,-Math.PI/2,-Math.PI,1),this.ellipse(r+u+l.x,i+a-l.y,l.x,l.y,0,-Math.PI,-Math.PI*1.5,1),this.ellipse(r-g.x,i+a-g.y,g.x,g.y,0,Math.PI/2,0,1),this.ellipse(r-o.x,i+o.y,o.x,o.y,0,0,-Math.PI/2,1);else if(a<0)this.moveTo(r+o.x,i),this.ellipse(r+u-s.x,i-s.y,s.x,s.y,0,Math.PI/2,0,1),this.ellipse(r+u-l.x,i+a+l.y,l.x,l.y,0,0,-Math.PI/2,1),this.ellipse(r+g.x,i+a+g.y,g.x,g.y,0,-Math.PI/2,-Math.PI,1),this.ellipse(r+o.x,i-o.y,o.x,o.y,0,-Math.PI,-Math.PI*1.5,1);else this.moveTo(r+o.x,i),this.ellipse(r+u-s.x,i+s.y,s.x,s.y,0,-Math.PI/2,0),this.ellipse(r+u-l.x,i+a-l.y,l.x,l.y,0,0,Math.PI/2),this.ellipse(r+g.x,i+a-g.y,g.x,g.y,0,Math.PI/2,Math.PI),this.ellipse(r+o.x,i+o.y,o.x,o.y,0,Math.PI,Math.PI*1.5);this.closePath(),this.moveTo(r,i);function d(m){let{x:f,y:D,z:w,w:b}=m;return{x:f,y:D,z:w,w:b}}function I(m){let f=typeof m;if(f==="undefined"||m===null)return[0];if(f==="function")return[NaN];if(f==="object"){if(typeof m[Symbol.iterator]==="function")return[...m].map((D)=>{let w=typeof D;if(w==="undefined"||D===null)return 0;if(w==="function")return NaN;if(w==="object")return d(D);return h(D)});return[d(m)]}return[h(m)]}function h(m){return+m}function Q(m){let f=h(m);if(Number.isFinite(f))return{x:f,y:f};if(Object(m)===m)return{x:h(m.x??0),y:h(m.y??0)};return{x:NaN,y:NaN}}function p(m){let[f,D,w,b]=m,k=[Math.abs(u)/(f.x+D.x),Math.abs(a)/(D.y+w.y),Math.abs(u)/(w.x+b.x),Math.abs(a)/(f.y+b.y)],v=Math.min(...k);if(v<=1)for(let S of m)S.x*=v,S.y*=v}}function e(r){return`Failed to execute 'roundRect' on '${t(r)}':`}function t(r){return Object(r)===r&&r instanceof Path2D?"Path2D":r instanceof globalThis?.CanvasRenderingContext2D?"CanvasRenderingContext2D":r instanceof globalThis?.OffscreenCanvasRenderingContext2D?"OffscreenCanvasRenderingContext2D":r?.constructor.name||r}})()});rEA();IP();bdA();T6();p4A();D4A();zt();fe();fe();var snr=0;function On(A,e){let t=`atom${++snr}`,r={toString(){return(import.meta.env?import.meta.env.MODE:void 0)!=="production"&&this.debugLabel?t+":"+this.debugLabel:t}};if(typeof A==="function")r.read=A;else r.init=A,r.read=lnr,r.write=gnr;if(e)r.write=e;return r}function lnr(A){return A(this)}function gnr(A,e,t){return e(this,typeof t==="function"?t(A(this)):t)}var c1e=(A,e)=>A.unstable_is?A.unstable_is(e):e===A,w4A=(A)=>("init"in A),y4A=(A)=>!!A.write,$W=new WeakMap,b4A=(A)=>{var e;return v4A(A)&&!((e=$W.get(A))==null?void 0:e[1])},cnr=(A,e)=>{let t=$W.get(A);if(t)t[1]=!0,t[0].forEach((r)=>r(e));else if((import.meta.env?import.meta.env.MODE:void 0)!=="production")throw Error("[Bug] cancelable promise not found")},Cnr=(A)=>{if($W.has(A))return;let e=[new Set,!1];$W.set(A,e);let t=()=>{e[1]=!0};A.then(t,t),A.onCancel=(r)=>{e[0].add(r)}},v4A=(A)=>typeof(A==null?void 0:A.then)==="function",C1e=(A)=>("v"in A)||("e"in A),XW=(A)=>{if("e"in A)throw A.e;if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!("v"in A))throw Error("[Bug] atom state is not initialized");return A.v},d1e=(A,e,t)=>{if(!t.p.has(A))t.p.add(A),e.then(()=>{t.p.delete(A)},()=>{t.p.delete(A)})},B1e=(A,e,t,r,i)=>{var u;if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&r===e)throw Error("[Bug] atom cannot depend on itself");if(t.d.set(r,i.n),b4A(t.v))d1e(e,t.v,i);if((u=i.m)==null||u.t.add(e),A)Bnr(A,r,e)},ES=()=>({D:new Map,H:new Set,M:new Set,L:new Set}),IS=(A,e,t)=>{A[e].add(t)},E1e=(A,e,t)=>{if(!A.D.has(e))A.D.set(e,new Set),IS(A,"M",()=>{var r;(r=t.m)==null||r.l.forEach((i)=>IS(A,"M",i))})},Bnr=(A,e,t)=>{let r=A.D.get(e);if(r)r.add(t)},Enr=(A,e)=>A.D.get(e),c2=(A)=>{let e,t=!1,r=(i)=>{try{i()}catch(u){if(!t)e=u,t=!0}};while(A.H.size||A.M.size||A.L.size)A.D.clear(),A.H.forEach(r),A.H.clear(),A.M.forEach(r),A.M.clear(),A.L.forEach(r),A.L.clear();if(t)throw e},I1e=(...[A,e,t,r])=>{let i=(h,Q,p)=>{let m="v"in Q,f=Q.v,D=b4A(Q.v)?Q.v:null;if(v4A(p)){Cnr(p);for(let w of Q.d.keys())d1e(h,p,A(w));Q.v=p}else Q.v=p;if(delete Q.e,delete Q.x,!m||!Object.is(f,Q.v)){if(++Q.n,D)cnr(D,p)}},u=(h,Q)=>{var p;let m=A(Q);if(C1e(m)){if(m.m&&!m.x)return m;if(Array.from(m.d).every(([v,S])=>u(h,v).n===S))return m}m.d.clear();let f=!0,D=(v)=>{if(c1e(Q,v)){let x=A(v);if(!C1e(x))if(w4A(v))i(v,x,v.init);else throw Error("no atom init");return XW(x)}let S=u(h,v);try{return XW(S)}finally{if(f)B1e(h,Q,m,v,S);else{let x=ES();B1e(x,Q,m,v,S),g(x,Q,m),c2(x)}}},w,b,k={get signal(){if(!w)w=new AbortController;return w.signal},get setSelf(){if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!y4A(Q))console.warn("setSelf function cannot be used with read-only atom");if(!b&&y4A(Q))b=(...v)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&f)console.warn("setSelf function cannot be called in sync");if(!f)return l(Q,...v)};return b}};try{let v=e(Q,D,k);if(i(Q,m,v),v4A(v)){(p=v.onCancel)==null||p.call(v,()=>w==null?void 0:w.abort());let S=()=>{if(m.m){let x=ES();g(x,Q,m),c2(x)}};v.then(S,S)}return m}catch(v){return delete m.v,m.e=v,delete m.x,++m.n,m}finally{f=!1}},a=(h)=>XW(u(void 0,h)),n=(h,Q,p)=>{var m,f;let D=new Map;for(let w of((m=p.m)==null?void 0:m.t)||[]){let b=A(w);if(b.m)D.set(w,b)}for(let w of p.p)D.set(w,A(w));return(f=Enr(h,Q))==null||f.forEach((w)=>{D.set(w,A(w))}),D},o=(h,Q,p)=>{let m=[],f=new Set,D=new Set,w=[[Q,p]];while(w.length>0){let[b,k]=w[w.length-1];if(D.has(b)){w.pop();continue}if(f.has(b)){m.push([b,k,k.n]),D.add(b),k.x=!0,w.pop();continue}f.add(b);for(let[v,S]of n(h,b,k))if(b!==v&&!f.has(v))w.push([v,S])}IS(h,"H",()=>{let b=new Set([Q]);for(let k=m.length-1;k>=0;--k){let[v,S,x]=m[k],F=!1;for(let T of S.d.keys())if(T!==v&&b.has(T)){F=!0;break}if(F){if(u(h,v),g(h,v,S),x!==S.n)E1e(h,v,S),b.add(v)}delete S.x}})},s=(h,Q,...p)=>{let m=!0,f=(w)=>XW(u(h,w)),D=(w,...b)=>{let k=A(w);try{if(c1e(Q,w)){if(!w4A(w))throw Error("atom not writable");let v=k.n,S=b[0];if(i(w,k,S),g(h,w,k),v!==k.n)E1e(h,w,k),o(h,w,k);return}else return s(h,w,...b)}finally{if(!m)c2(h)}};try{return t(Q,f,D,...p)}finally{m=!1}},l=(h,...Q)=>{let p=ES();try{return s(p,h,...Q)}finally{c2(p)}},g=(h,Q,p)=>{if(p.m&&!b4A(p.v)){for(let m of p.d.keys())if(!p.m.d.has(m))C(h,m,A(m)).t.add(Q),p.m.d.add(m);for(let m of p.m.d||[])if(!p.d.has(m)){p.m.d.delete(m);let f=B(h,m,A(m));f==null||f.t.delete(Q)}}},C=(h,Q,p)=>{if(!p.m){u(h,Q);for(let m of p.d.keys())C(h,m,A(m)).t.add(Q);if(p.m={l:new Set,d:new Set(p.d.keys()),t:new Set},y4A(Q)){let m=p.m,f,D=(w,b)=>{let k=!0;f=(...v)=>{try{return s(w,Q,...v)}finally{if(!k)c2(w)}};try{return b()}finally{k=!1}};IS(h,"L",()=>{let w=D(h,()=>r(Q,(...b)=>f(...b)));if(w)m.u=(b)=>D(b,w)})}}return p.m},B=(h,Q,p)=>{if(p.m&&!p.m.l.size&&!Array.from(p.m.t).some((m)=>{var f;return(f=A(m).m)==null?void 0:f.d.has(Q)})){let m=p.m.u;if(m)IS(h,"L",()=>m(h));delete p.m;for(let f of p.d.keys()){let D=B(h,f,A(f));D==null||D.t.delete(Q)}return}return p.m};return{get:a,set:l,sub:(h,Q)=>{let p=ES(),m=A(h),D=C(p,h,m).l;return D.add(Q),c2(p),()=>{D.delete(Q);let w=ES();B(w,h,m),c2(w)}},unstable_derive:(h)=>I1e(...h(A,e,t,r))}},dnr=(A)=>{let e=new WeakMap,t=new Set,r,i=0,u=A.unstable_derive((o,s,l,g)=>(r=o,[(C)=>{let B=e.get(C);if(!B){let E=o(C);B=new Proxy(E,{set(d,I,h){if(I==="m")t.add(C);return Reflect.set(d,I,h)},deleteProperty(d,I){if(I==="m")t.delete(C);return Reflect.deleteProperty(d,I)}}),e.set(C,B)}return B},s,(C,B,E,...d)=>{if(i)return E(C,...d);return l(C,B,E,...d)},g])),a=u.set;return Object.assign(u,{dev4_get_internal_weak_map:()=>({get:(o)=>{let s=r(o);if(s.n===0)return;return s}}),dev4_get_mounted_atoms:()=>t,dev4_restore_atoms:(o)=>{a({read:()=>null,write:(l,g)=>{++i;try{for(let[C,B]of o)if(w4A(C))g(C,B)}finally{--i}}})}})},K9=()=>{let A=new WeakMap,t=I1e((r)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!r)throw Error("Atom is undefined or null");let i=A.get(r);if(!i)i={d:new Map,p:new Set,n:0},A.set(r,i);return i},(r,...i)=>r.read(...i),(r,...i)=>r.write(...i),(r,...i)=>{var u;return(u=r.onMount)==null?void 0:u.call(r,...i)});if((import.meta.env?import.meta.env.MODE:void 0)!=="production")return dnr(t);return t},dS,h1e=()=>{if(!dS){if(dS=K9(),(import.meta.env?import.meta.env.MODE:void 0)!=="production"){if(globalThis.__JOTAI_DEFAULT_STORE__||(globalThis.__JOTAI_DEFAULT_STORE__=dS),globalThis.__JOTAI_DEFAULT_STORE__!==dS)console.warn("Detected multiple Jotai instances. It may cause unexpected behavior with the default store. https://github.com/pmndrs/jotai/discussions/2044")}}return dS};fe();var Inr=wi(void 0),J9=(A)=>{let e=Li(Inr);return(A==null?void 0:A.store)||e||h1e()};var F4A=(A)=>typeof(A==null?void 0:A.then)==="function",p1e=(A)=>{A.status="pending",A.then((e)=>{A.status="fulfilled",A.value=e},(e)=>{A.status="rejected",A.reason=e})},hnr=bt.use||((A)=>{if(A.status==="pending")throw A;else if(A.status==="fulfilled")return A.value;else if(A.status==="rejected")throw A.reason;else throw p1e(A),A}),k4A=new WeakMap,Q1e=(A)=>{let e=k4A.get(A);if(!e)e=new Promise((t,r)=>{let i=A,u=(o)=>(s)=>{if(i===o)t(s)},a=(o)=>(s)=>{if(i===o)r(s)},n=(o)=>{if("onCancel"in o&&typeof o.onCancel==="function")o.onCancel((s)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&s===o)throw Error("[Bug] p is not updated even after cancelation");if(F4A(s))k4A.set(s,e),i=s,s.then(u(s),a(s)),n(s);else t(s)})};A.then(u(A),a(A)),n(A)}),k4A.set(A,e);return e};function x4A(A,e){let t=J9(e),[[r,i,u],a]=f1((s)=>{let l=t.get(A);if(Object.is(s[0],l)&&s[1]===t&&s[2]===A)return s;return[l,t,A]},void 0,()=>[t.get(A),t,A]),n=r;if(i!==t||u!==A)a(),n=t.get(A);let o=e==null?void 0:e.delay;if(le(()=>{let s=t.sub(A,()=>{if(typeof o==="number"){let l=t.get(A);if(F4A(l))p1e(Q1e(l));setTimeout(a,o);return}a()});return a(),s},[t,A,o]),p1(n),F4A(n)){let s=Q1e(n);return hnr(s)}return n}function Aq(A,e){let t=J9(e);return st((...i)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&!("write"in A))throw Error("not writable atom");return t.set(A,...i)},[t,A])}function S4A(A,e){return[x4A(A,e),Aq(A,e)]}Be();fe();fe();var f1e=new WeakMap;function m1e(A,e){let t=J9(e),r=Qnr(t);for(let[i,u]of A)if(!r.has(i)||(e==null?void 0:e.dangerouslyForceHydrate))r.add(i),t.set(i,u)}var Qnr=(A)=>{let e=f1e.get(A);if(!e)e=new WeakSet,f1e.set(A,e);return e};function O9(){return O9=Object.assign?Object.assign.bind():function(A){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r))A[r]=t[r]}return A},O9.apply(this,arguments)}function eq(){let A=wi(null);function e({store:a,initialValues:n=[],children:o}){let s=Ee(a);if(!s.current)s.current=K9();return m1e(n,{store:s.current}),N(A.Provider,{value:s.current,children:o})}let t=(a)=>{let n=Li(A);if(!n)throw Error("Missing Provider from createIsolation");return J9(O9({store:n},a))};return{Provider:e,useStore:t,useAtom:(a,n)=>{let o=t();return S4A(a,O9({store:o},n))},useAtomValue:(a,n)=>{let o=t();return x4A(a,O9({store:o},n))},useSetAtom:(a,n)=>{let o=t();return Aq(a,O9({store:o},n))}}}var{read:mwi,write:Dwi}=On(null);var ywi=wi({scope:void 0,baseStore:void 0});fe();fe();Be();Be();Be();fe();function k3e(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=="function")return;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(k3e)}catch(A){console.error(A)}}fe();var Fa=yu(F1e());function Et(A){for(var e="https://reactjs.org/docs/error-decoder.html?invariant="+A,t=1;t<arguments.length;t++)e+="&args[]="+encodeURIComponent(arguments[t]);return"Minified React error #"+A+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var Rpe=new Set,WS={};function k2(A,e){g5(A,e),g5(A+"Capture",e)}function g5(A,e){WS[A]=e;for(A=0;A<e.length;A++)Rpe.add(e[A])}var Yh=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),o1A=Object.prototype.hasOwnProperty,Ynr=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,x1e={},S1e={};function Hnr(A){if(o1A.call(S1e,A))return!0;if(o1A.call(x1e,A))return!1;if(Ynr.test(A))return S1e[A]=!0;return x1e[A]=!0,!1}function Knr(A,e,t,r){if(t!==null&&t.type===0)return!1;switch(typeof e){case"function":case"symbol":return!0;case"boolean":if(r)return!1;if(t!==null)return!t.acceptsBooleans;return A=A.toLowerCase().slice(0,5),A!=="data-"&&A!=="aria-";default:return!1}}function Jnr(A,e,t,r){if(e===null||typeof e>"u"||Knr(A,e,t,r))return!0;if(r)return!1;if(t!==null)switch(t.type){case 3:return!e;case 4:return e===!1;case 5:return isNaN(e);case 6:return isNaN(e)||1>e}return!1}function Ps(A,e,t,r,i,u,a){this.acceptsBooleans=e===2||e===3||e===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=t,this.propertyName=A,this.type=e,this.sanitizeURL=u,this.removeEmptyString=a}var v0={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(A){v0[A]=new Ps(A,0,!1,A,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(A){var e=A[0];v0[e]=new Ps(e,1,!1,A[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(A){v0[A]=new Ps(A,2,!1,A.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(A){v0[A]=new Ps(A,2,!1,A,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(A){v0[A]=new Ps(A,3,!1,A.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(A){v0[A]=new Ps(A,3,!0,A,null,!1,!1)});["capture","download"].forEach(function(A){v0[A]=new Ps(A,4,!1,A,null,!1,!1)});["cols","rows","size","span"].forEach(function(A){v0[A]=new Ps(A,6,!1,A,null,!1,!1)});["rowSpan","start"].forEach(function(A){v0[A]=new Ps(A,5,!1,A.toLowerCase(),null,!1,!1)});var tpA=/[\-:]([a-z])/g;function rpA(A){return A[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(A){var e=A.replace(tpA,rpA);v0[e]=new Ps(e,1,!1,A,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(A){var e=A.replace(tpA,rpA);v0[e]=new Ps(e,1,!1,A,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(A){var e=A.replace(tpA,rpA);v0[e]=new Ps(e,1,!1,A,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(A){v0[A]=new Ps(A,1,!1,A.toLowerCase(),null,!1,!1)});v0.xlinkHref=new Ps("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(A){v0[A]=new Ps(A,1,!1,A.toLowerCase(),null,!0,!0)});function ipA(A,e,t,r){var i=v0.hasOwnProperty(e)?v0[e]:null;if(i!==null?i.type!==0:r||!(2<e.length)||e[0]!=="o"&&e[0]!=="O"||e[1]!=="n"&&e[1]!=="N")Jnr(e,t,i,r)&&(t=null),r||i===null?Hnr(e)&&(t===null?A.removeAttribute(e):A.setAttribute(e,""+t)):i.mustUseProperty?A[i.propertyName]=t===null?i.type===3?!1:"":t:(e=i.attributeName,r=i.attributeNamespace,t===null?A.removeAttribute(e):(i=i.type,t=i===3||i===4&&t===!0?"":""+t,r?A.setAttributeNS(r,e,t):A.setAttribute(e,t)))}var Jh=V6,sq=Symbol.for("react.element"),z9=Symbol.for("react.portal"),Z9=Symbol.for("react.fragment"),upA=Symbol.for("react.strict_mode"),s1A=Symbol.for("react.profiler"),Npe=Symbol.for("react.provider"),Gpe=Symbol.for("react.context"),apA=Symbol.for("react.forward_ref"),l1A=Symbol.for("react.suspense"),g1A=Symbol.for("react.suspense_list"),npA=Symbol.for("react.memo"),ep=Symbol.for("react.lazy"),Upe=Symbol.for("react.offscreen"),L1e=Symbol.iterator;function fS(A){if(A===null||typeof A!=="object")return null;return A=L1e&&A[L1e]||A["@@iterator"],typeof A==="function"?A:null}var Ya=Object.assign,J4A;function kS(A){if(J4A===void 0)try{throw Error()}catch(t){var e=t.stack.trim().match(/\n( *(at )?)/);J4A=e&&e[1]||""}return`
`+J4A+A}var O4A=!1;function P4A(A,e){if(!A||O4A)return"";O4A=!0;var t=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(e)if(e=function(){throw Error()},Object.defineProperty(e.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==="object"&&Reflect.construct){try{Reflect.construct(e,[])}catch(s){var r=s}Reflect.construct(A,[],e)}else{try{e.call()}catch(s){r=s}A.call(e.prototype)}else{try{throw Error()}catch(s){r=s}A()}}catch(s){if(s&&r&&typeof s.stack==="string"){for(var i=s.stack.split(`
`),u=r.stack.split(`
`),a=i.length-1,n=u.length-1;1<=a&&0<=n&&i[a]!==u[n];)n--;for(;1<=a&&0<=n;a--,n--)if(i[a]!==u[n]){if(a!==1||n!==1)do if(a--,n--,0>n||i[a]!==u[n]){var o=`
`+i[a].replace(" at new "," at ");return A.displayName&&o.includes("<anonymous>")&&(o=o.replace("<anonymous>",A.displayName)),o}while(1<=a&&0<=n);break}}}finally{O4A=!1,Error.prepareStackTrace=t}return(A=A?A.displayName||A.name:"")?kS(A):""}function Onr(A){switch(A.tag){case 5:return kS(A.type);case 16:return kS("Lazy");case 13:return kS("Suspense");case 19:return kS("SuspenseList");case 0:case 2:case 15:return A=P4A(A.type,!1),A;case 11:return A=P4A(A.type.render,!1),A;case 1:return A=P4A(A.type,!0),A;default:return""}}function c1A(A){if(A==null)return null;if(typeof A==="function")return A.displayName||A.name||null;if(typeof A==="string")return A;switch(A){case Z9:return"Fragment";case z9:return"Portal";case s1A:return"Profiler";case upA:return"StrictMode";case l1A:return"Suspense";case g1A:return"SuspenseList"}if(typeof A==="object")switch(A.$$typeof){case Gpe:return(A.displayName||"Context")+".Consumer";case Npe:return(A._context.displayName||"Context")+".Provider";case apA:var e=A.render;return A=A.displayName,A||(A=e.displayName||e.name||"",A=A!==""?"ForwardRef("+A+")":"ForwardRef"),A;case npA:return e=A.displayName||null,e!==null?e:c1A(A.type)||"Memo";case ep:e=A._payload,A=A._init;try{return c1A(A(e))}catch(t){}}return null}function Pnr(A){var e=A.type;switch(A.tag){case 24:return"Cache";case 9:return(e.displayName||"Context")+".Consumer";case 10:return(e._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return A=e.render,A=A.displayName||A.name||"",e.displayName||(A!==""?"ForwardRef("+A+")":"ForwardRef");case 7:return"Fragment";case 5:return e;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return c1A(e);case 8:return e===upA?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof e==="function")return e.displayName||e.name||null;if(typeof e==="string")return e}return null}function Bp(A){switch(typeof A){case"boolean":case"number":case"string":case"undefined":return A;case"object":return A;default:return""}}function Mpe(A){var e=A.type;return(A=A.nodeName)&&A.toLowerCase()==="input"&&(e==="checkbox"||e==="radio")}function _nr(A){var e=Mpe(A)?"checked":"value",t=Object.getOwnPropertyDescriptor(A.constructor.prototype,e),r=""+A[e];if(!A.hasOwnProperty(e)&&typeof t<"u"&&typeof t.get==="function"&&typeof t.set==="function"){var{get:i,set:u}=t;return Object.defineProperty(A,e,{configurable:!0,get:function(){return i.call(this)},set:function(a){r=""+a,u.call(this,a)}}),Object.defineProperty(A,e,{enumerable:t.enumerable}),{getValue:function(){return r},setValue:function(a){r=""+a},stopTracking:function(){A._valueTracker=null,delete A[e]}}}}function lq(A){A._valueTracker||(A._valueTracker=_nr(A))}function Tpe(A){if(!A)return!1;var e=A._valueTracker;if(!e)return!0;var t=e.getValue(),r="";return A&&(r=Mpe(A)?A.checked?"true":"false":A.value),A=r,A!==t?(e.setValue(A),!0):!1}function Gq(A){if(A=A||(typeof document<"u"?document:void 0),typeof A>"u")return null;try{return A.activeElement||A.body}catch(e){return A.body}}function C1A(A,e){var t=e.checked;return Ya({},e,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:t!=null?t:A._wrapperState.initialChecked})}function R1e(A,e){var t=e.defaultValue==null?"":e.defaultValue,r=e.checked!=null?e.checked:e.defaultChecked;t=Bp(e.value!=null?e.value:t),A._wrapperState={initialChecked:r,initialValue:t,controlled:e.type==="checkbox"||e.type==="radio"?e.checked!=null:e.value!=null}}function Ype(A,e){e=e.checked,e!=null&&ipA(A,"checked",e,!1)}function B1A(A,e){Ype(A,e);var t=Bp(e.value),r=e.type;if(t!=null)if(r==="number"){if(t===0&&A.value===""||A.value!=t)A.value=""+t}else A.value!==""+t&&(A.value=""+t);else if(r==="submit"||r==="reset"){A.removeAttribute("value");return}e.hasOwnProperty("value")?E1A(A,e.type,t):e.hasOwnProperty("defaultValue")&&E1A(A,e.type,Bp(e.defaultValue)),e.checked==null&&e.defaultChecked!=null&&(A.defaultChecked=!!e.defaultChecked)}function N1e(A,e,t){if(e.hasOwnProperty("value")||e.hasOwnProperty("defaultValue")){var r=e.type;if(!(r!=="submit"&&r!=="reset"||e.value!==void 0&&e.value!==null))return;e=""+A._wrapperState.initialValue,t||e===A.value||(A.value=e),A.defaultValue=e}t=A.name,t!==""&&(A.name=""),A.defaultChecked=!!A._wrapperState.initialChecked,t!==""&&(A.name=t)}function E1A(A,e,t){if(e!=="number"||Gq(A.ownerDocument)!==A)t==null?A.defaultValue=""+A._wrapperState.initialValue:A.defaultValue!==""+t&&(A.defaultValue=""+t)}var FS=Array.isArray;function u5(A,e,t,r){if(A=A.options,e){e={};for(var i=0;i<t.length;i++)e["$"+t[i]]=!0;for(t=0;t<A.length;t++)i=e.hasOwnProperty("$"+A[t].value),A[t].selected!==i&&(A[t].selected=i),i&&r&&(A[t].defaultSelected=!0)}else{t=""+Bp(t),e=null;for(i=0;i<A.length;i++){if(A[i].value===t){A[i].selected=!0,r&&(A[i].defaultSelected=!0);return}e!==null||A[i].disabled||(e=A[i])}e!==null&&(e.selected=!0)}}function d1A(A,e){if(e.dangerouslySetInnerHTML!=null)throw Error(Et(91));return Ya({},e,{value:void 0,defaultValue:void 0,children:""+A._wrapperState.initialValue})}function G1e(A,e){var t=e.value;if(t==null){if(t=e.children,e=e.defaultValue,t!=null){if(e!=null)throw Error(Et(92));if(FS(t)){if(1<t.length)throw Error(Et(93));t=t[0]}e=t}e==null&&(e=""),t=e}A._wrapperState={initialValue:Bp(t)}}function Hpe(A,e){var t=Bp(e.value),r=Bp(e.defaultValue);t!=null&&(t=""+t,t!==A.value&&(A.value=t),e.defaultValue==null&&A.defaultValue!==t&&(A.defaultValue=t)),r!=null&&(A.defaultValue=""+r)}function U1e(A){var e=A.textContent;e===A._wrapperState.initialValue&&e!==""&&e!==null&&(A.value=e)}function Kpe(A){switch(A){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function I1A(A,e){return A==null||A==="http://www.w3.org/1999/xhtml"?Kpe(e):A==="http://www.w3.org/2000/svg"&&e==="foreignObject"?"http://www.w3.org/1999/xhtml":A}var gq,Jpe=function(A){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(e,t,r,i){MSApp.execUnsafeLocalFunction(function(){return A(e,t,r,i)})}:A}(function(A,e){if(A.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in A)A.innerHTML=e;else{gq=gq||document.createElement("div"),gq.innerHTML="<svg>"+e.valueOf().toString()+"</svg>";for(e=gq.firstChild;A.firstChild;)A.removeChild(A.firstChild);for(;e.firstChild;)A.appendChild(e.firstChild)}});function qS(A,e){if(e){var t=A.firstChild;if(t&&t===A.lastChild&&t.nodeType===3){t.nodeValue=e;return}}A.textContent=e}var MS={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Wnr=["Webkit","ms","Moz","O"];Object.keys(MS).forEach(function(A){Wnr.forEach(function(e){e=e+A.charAt(0).toUpperCase()+A.substring(1),MS[e]=MS[A]})});function Ope(A,e,t){return e==null||typeof e==="boolean"||e===""?"":t||typeof e!=="number"||e===0||MS.hasOwnProperty(A)&&MS[A]?(""+e).trim():e+"px"}function Ppe(A,e){A=A.style;for(var t in e)if(e.hasOwnProperty(t)){var r=t.indexOf("--")===0,i=Ope(t,e[t],r);t==="float"&&(t="cssFloat"),r?A.setProperty(t,i):A[t]=i}}var qnr=Ya({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function h1A(A,e){if(e){if(qnr[A]&&(e.children!=null||e.dangerouslySetInnerHTML!=null))throw Error(Et(137,A));if(e.dangerouslySetInnerHTML!=null){if(e.children!=null)throw Error(Et(60));if(typeof e.dangerouslySetInnerHTML!=="object"||!("__html"in e.dangerouslySetInnerHTML))throw Error(Et(61))}if(e.style!=null&&typeof e.style!=="object")throw Error(Et(62))}}function Q1A(A,e){if(A.indexOf("-")===-1)return typeof e.is==="string";switch(A){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var p1A=null;function opA(A){return A=A.target||A.srcElement||window,A.correspondingUseElement&&(A=A.correspondingUseElement),A.nodeType===3?A.parentNode:A}var f1A=null,a5=null,n5=null;function M1e(A){if(A=lz(A)){if(typeof f1A!=="function")throw Error(Et(280));var e=A.stateNode;e&&(e=hpA(e),f1A(A.stateNode,A.type,e))}}function znr(A){a5?n5?n5.push(A):n5=[A]:a5=A}function Znr(){if(a5){var A=a5,e=n5;if(n5=a5=null,M1e(A),e)for(A=0;A<e.length;A++)M1e(e[A])}}function _pe(A,e){return A(e)}function Wpe(){}var _4A=!1;function qpe(A,e,t){if(_4A)return A(e,t);_4A=!0;try{return _pe(A,e,t)}finally{if(_4A=!1,a5!==null||n5!==null)Wpe(),Znr()}}function zS(A,e){var t=A.stateNode;if(t===null)return null;var r=hpA(t);if(r===null)return null;t=r[e];A:switch(e){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(A=A.type,r=!(A==="button"||A==="input"||A==="select"||A==="textarea")),A=!r;break A;default:A=!1}if(A)return null;if(t&&typeof t!=="function")throw Error(Et(231,e,typeof t));return t}var m1A=!1;if(Yh)try{B2={},Object.defineProperty(B2,"passive",{get:function(){m1A=!0}}),window.addEventListener("test",B2,B2),window.removeEventListener("test",B2,B2)}catch(A){m1A=!1}var B2;function Vnr(A,e,t,r,i,u,a,n,o){var s=Array.prototype.slice.call(arguments,3);try{e.apply(t,s)}catch(l){this.onError(l)}}var TS=!1,Uq=null,Mq=!1,D1A=null,jnr={onError:function(A){TS=!0,Uq=A}};function Xnr(A,e,t,r,i,u,a,n,o){TS=!1,Uq=null,Vnr.apply(jnr,arguments)}function $nr(A,e,t,r,i,u,a,n,o){if(Xnr.apply(this,arguments),TS){if(TS){var s=Uq;TS=!1,Uq=null}else throw Error(Et(198));Mq||(Mq=!0,D1A=s)}}function F2(A){var e=A,t=A;if(A.alternate)for(;e.return;)e=e.return;else{A=e;do e=A,(e.flags&4098)!==0&&(t=e.return),A=e.return;while(A)}return e.tag===3?t:null}function zpe(A){if(A.tag===13){var e=A.memoizedState;if(e===null&&(A=A.alternate,A!==null&&(e=A.memoizedState)),e!==null)return e.dehydrated}return null}function T1e(A){if(F2(A)!==A)throw Error(Et(188))}function Aor(A){var e=A.alternate;if(!e){if(e=F2(A),e===null)throw Error(Et(188));return e!==A?null:A}for(var t=A,r=e;;){var i=t.return;if(i===null)break;var u=i.alternate;if(u===null){if(r=i.return,r!==null){t=r;continue}break}if(i.child===u.child){for(u=i.child;u;){if(u===t)return T1e(i),A;if(u===r)return T1e(i),e;u=u.sibling}throw Error(Et(188))}if(t.return!==r.return)t=i,r=u;else{for(var a=!1,n=i.child;n;){if(n===t){a=!0,t=i,r=u;break}if(n===r){a=!0,r=i,t=u;break}n=n.sibling}if(!a){for(n=u.child;n;){if(n===t){a=!0,t=u,r=i;break}if(n===r){a=!0,r=u,t=i;break}n=n.sibling}if(!a)throw Error(Et(189))}}if(t.alternate!==r)throw Error(Et(190))}if(t.tag!==3)throw Error(Et(188));return t.stateNode.current===t?A:e}function eor(A){return A=Aor(A),A!==null?Zpe(A):null}function Zpe(A){if(A.tag===5||A.tag===6)return A;for(A=A.child;A!==null;){var e=Zpe(A);if(e!==null)return e;A=A.sibling}return null}var Vpe=Fa.unstable_scheduleCallback,Y1e=Fa.unstable_cancelCallback,tor=Fa.unstable_shouldYield,ror=Fa.unstable_requestPaint,wn=Fa.unstable_now,ior=Fa.unstable_getCurrentPriorityLevel,spA=Fa.unstable_ImmediatePriority,jpe=Fa.unstable_UserBlockingPriority,Tq=Fa.unstable_NormalPriority,uor=Fa.unstable_LowPriority,Xpe=Fa.unstable_IdlePriority,iz=null,Dd=null;function aor(A){if(Dd&&typeof Dd.onCommitFiberRoot==="function")try{Dd.onCommitFiberRoot(iz,A,void 0,(A.current.flags&128)===128)}catch(e){}}var hB=Math.clz32?Math.clz32:sor,{log:nor,LN2:oor}=Math;function sor(A){return A>>>=0,A===0?32:31-(nor(A)/oor|0)|0}var cq=64,Cq=4194304;function xS(A){switch(A&-A){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return A&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return A&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return A}}function Yq(A,e){var t=A.pendingLanes;if(t===0)return 0;var r=0,i=A.suspendedLanes,u=A.pingedLanes,a=t&268435455;if(a!==0){var n=a&~i;n!==0?r=xS(n):(u&=a,u!==0&&(r=xS(u)))}else a=t&~i,a!==0?r=xS(a):u!==0&&(r=xS(u));if(r===0)return 0;if(e!==0&&e!==r&&(e&i)===0&&(i=r&-r,u=e&-e,i>=u||i===16&&(u&4194240)!==0))return e;if((r&4)!==0&&(r|=t&16),e=A.entangledLanes,e!==0)for(A=A.entanglements,e&=r;0<e;)t=31-hB(e),i=1<<t,r|=A[t],e&=~i;return r}function lor(A,e){switch(A){case 1:case 2:case 4:return e+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e+5000;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function gor(A,e){for(var{suspendedLanes:t,pingedLanes:r,expirationTimes:i,pendingLanes:u}=A;0<u;){var a=31-hB(u),n=1<<a,o=i[a];if(o===-1){if((n&t)===0||(n&r)!==0)i[a]=lor(n,e)}else o<=e&&(A.expiredLanes|=n);u&=~n}}function y1A(A){return A=A.pendingLanes&-1073741825,A!==0?A:A&1073741824?1073741824:0}function $pe(){var A=cq;return cq<<=1,(cq&4194240)===0&&(cq=64),A}function uz(A,e,t){A.pendingLanes|=e,e!==536870912&&(A.suspendedLanes=0,A.pingedLanes=0),A=A.eventTimes,e=31-hB(e),A[e]=t}function cor(A,e){var t=A.pendingLanes&~e;A.pendingLanes=e,A.suspendedLanes=0,A.pingedLanes=0,A.expiredLanes&=e,A.mutableReadLanes&=e,A.entangledLanes&=e,e=A.entanglements;var r=A.eventTimes;for(A=A.expirationTimes;0<t;){var i=31-hB(t),u=1<<i;e[i]=0,r[i]=-1,A[i]=-1,t&=~u}}function lpA(A,e){var t=A.entangledLanes|=e;for(A=A.entanglements;t;){var r=31-hB(t),i=1<<r;i&e|A[r]&e&&(A[r]|=e),t&=~i}}var mu=0;function Afe(A){return A&=-A,1<A?4<A?(A&268435455)!==0?16:536870912:4:1}var efe,gpA,tfe,rfe,ife,w1A=!1,Bq=[],np=null,op=null,sp=null,ZS=new Map,VS=new Map,rp=[],Cor="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function H1e(A,e){switch(A){case"focusin":case"focusout":np=null;break;case"dragenter":case"dragleave":op=null;break;case"mouseover":case"mouseout":sp=null;break;case"pointerover":case"pointerout":ZS.delete(e.pointerId);break;case"gotpointercapture":case"lostpointercapture":VS.delete(e.pointerId)}}function mS(A,e,t,r,i,u){if(A===null||A.nativeEvent!==u)return A={blockedOn:e,domEventName:t,eventSystemFlags:r,nativeEvent:u,targetContainers:[i]},e!==null&&(e=lz(e),e!==null&&gpA(e)),A;return A.eventSystemFlags|=r,e=A.targetContainers,i!==null&&e.indexOf(i)===-1&&e.push(i),A}function Bor(A,e,t,r,i){switch(e){case"focusin":return np=mS(np,A,e,t,r,i),!0;case"dragenter":return op=mS(op,A,e,t,r,i),!0;case"mouseover":return sp=mS(sp,A,e,t,r,i),!0;case"pointerover":var u=i.pointerId;return ZS.set(u,mS(ZS.get(u)||null,A,e,t,r,i)),!0;case"gotpointercapture":return u=i.pointerId,VS.set(u,mS(VS.get(u)||null,A,e,t,r,i)),!0}return!1}function ufe(A){var e=I2(A.target);if(e!==null){var t=F2(e);if(t!==null){if(e=t.tag,e===13){if(e=zpe(t),e!==null){A.blockedOn=e,ife(A.priority,function(){tfe(t)});return}}else if(e===3&&t.stateNode.current.memoizedState.isDehydrated){A.blockedOn=t.tag===3?t.stateNode.containerInfo:null;return}}}A.blockedOn=null}function yq(A){if(A.blockedOn!==null)return!1;for(var e=A.targetContainers;0<e.length;){var t=b1A(A.domEventName,A.eventSystemFlags,e[0],A.nativeEvent);if(t===null){t=A.nativeEvent;var r=new t.constructor(t.type,t);p1A=r,t.target.dispatchEvent(r),p1A=null}else return e=lz(t),e!==null&&gpA(e),A.blockedOn=t,!1;e.shift()}return!0}function K1e(A,e,t){yq(A)&&t.delete(e)}function Eor(){w1A=!1,np!==null&&yq(np)&&(np=null),op!==null&&yq(op)&&(op=null),sp!==null&&yq(sp)&&(sp=null),ZS.forEach(K1e),VS.forEach(K1e)}function DS(A,e){A.blockedOn===e&&(A.blockedOn=null,w1A||(w1A=!0,Fa.unstable_scheduleCallback(Fa.unstable_NormalPriority,Eor)))}function jS(A){function e(i){return DS(i,A)}if(0<Bq.length){DS(Bq[0],A);for(var t=1;t<Bq.length;t++){var r=Bq[t];r.blockedOn===A&&(r.blockedOn=null)}}np!==null&&DS(np,A),op!==null&&DS(op,A),sp!==null&&DS(sp,A),ZS.forEach(e),VS.forEach(e);for(t=0;t<rp.length;t++)r=rp[t],r.blockedOn===A&&(r.blockedOn=null);for(;0<rp.length&&(t=rp[0],t.blockedOn===null);)ufe(t),t.blockedOn===null&&rp.shift()}var o5=Jh.ReactCurrentBatchConfig,Hq=!0;function dor(A,e,t,r){var i=mu,u=o5.transition;o5.transition=null;try{mu=1,cpA(A,e,t,r)}finally{mu=i,o5.transition=u}}function Ior(A,e,t,r){var i=mu,u=o5.transition;o5.transition=null;try{mu=4,cpA(A,e,t,r)}finally{mu=i,o5.transition=u}}function cpA(A,e,t,r){if(Hq){var i=b1A(A,e,t,r);if(i===null)j4A(A,e,r,Kq,t),H1e(A,r);else if(Bor(i,A,e,t,r))r.stopPropagation();else if(H1e(A,r),e&4&&-1<Cor.indexOf(A)){for(;i!==null;){var u=lz(i);if(u!==null&&efe(u),u=b1A(A,e,t,r),u===null&&j4A(A,e,r,Kq,t),u===i)break;i=u}i!==null&&r.stopPropagation()}else j4A(A,e,r,null,t)}}var Kq=null;function b1A(A,e,t,r){if(Kq=null,A=opA(r),A=I2(A),A!==null)if(e=F2(A),e===null)A=null;else if(t=e.tag,t===13){if(A=zpe(e),A!==null)return A;A=null}else if(t===3){if(e.stateNode.current.memoizedState.isDehydrated)return e.tag===3?e.stateNode.containerInfo:null;A=null}else e!==A&&(A=null);return Kq=A,null}function afe(A){switch(A){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(ior()){case spA:return 1;case jpe:return 4;case Tq:case uor:return 16;case Xpe:return 536870912;default:return 16}default:return 16}}var up=null,CpA=null,wq=null;function nfe(){if(wq)return wq;var A,e=CpA,t=e.length,r,i="value"in up?up.value:up.textContent,u=i.length;for(A=0;A<t&&e[A]===i[A];A++);var a=t-A;for(r=1;r<=a&&e[t-r]===i[u-r];r++);return wq=i.slice(A,1<r?1-r:void 0)}function bq(A){var e=A.keyCode;return"charCode"in A?(A=A.charCode,A===0&&e===13&&(A=13)):A=e,A===10&&(A=13),32<=A||A===13?A:0}function Eq(){return!0}function J1e(){return!1}function Gg(A){function e(t,r,i,u,a){this._reactName=t,this._targetInst=i,this.type=r,this.nativeEvent=u,this.target=a,this.currentTarget=null;for(var n in A)A.hasOwnProperty(n)&&(t=A[n],this[n]=t?t(u):u[n]);return this.isDefaultPrevented=(u.defaultPrevented!=null?u.defaultPrevented:u.returnValue===!1)?Eq:J1e,this.isPropagationStopped=J1e,this}return Ya(e.prototype,{preventDefault:function(){this.defaultPrevented=!0;var t=this.nativeEvent;t&&(t.preventDefault?t.preventDefault():typeof t.returnValue!=="unknown"&&(t.returnValue=!1),this.isDefaultPrevented=Eq)},stopPropagation:function(){var t=this.nativeEvent;t&&(t.stopPropagation?t.stopPropagation():typeof t.cancelBubble!=="unknown"&&(t.cancelBubble=!0),this.isPropagationStopped=Eq)},persist:function(){},isPersistent:Eq}),e}var h5={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(A){return A.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},BpA=Gg(h5),oL=Ya({},h5,{view:0,detail:0}),hor=Gg(oL),W4A,q4A,yS,az=Ya({},oL,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:EpA,button:0,buttons:0,relatedTarget:function(A){return A.relatedTarget===void 0?A.fromElement===A.srcElement?A.toElement:A.fromElement:A.relatedTarget},movementX:function(A){if("movementX"in A)return A.movementX;return A!==yS&&(yS&&A.type==="mousemove"?(W4A=A.screenX-yS.screenX,q4A=A.screenY-yS.screenY):q4A=W4A=0,yS=A),W4A},movementY:function(A){return"movementY"in A?A.movementY:q4A}}),O1e=Gg(az),Qor=Ya({},az,{dataTransfer:0}),por=Gg(Qor),mor=Ya({},oL,{relatedTarget:0}),z4A=Gg(mor),Dor=Ya({},h5,{animationName:0,elapsedTime:0,pseudoElement:0}),yor=Gg(Dor),wor=Ya({},h5,{clipboardData:function(A){return"clipboardData"in A?A.clipboardData:window.clipboardData}}),bor=Gg(wor),vor=Ya({},h5,{data:0}),P1e=Gg(vor),kor={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},For={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},xor={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Sor(A){var e=this.nativeEvent;return e.getModifierState?e.getModifierState(A):(A=xor[A])?!!e[A]:!1}function EpA(){return Sor}var Lor=Ya({},oL,{key:function(A){if(A.key){var e=kor[A.key]||A.key;if(e!=="Unidentified")return e}return A.type==="keypress"?(A=bq(A),A===13?"Enter":String.fromCharCode(A)):A.type==="keydown"||A.type==="keyup"?For[A.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:EpA,charCode:function(A){return A.type==="keypress"?bq(A):0},keyCode:function(A){return A.type==="keydown"||A.type==="keyup"?A.keyCode:0},which:function(A){return A.type==="keypress"?bq(A):A.type==="keydown"||A.type==="keyup"?A.keyCode:0}}),Ror=Gg(Lor),Nor=Ya({},az,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),_1e=Gg(Nor),Gor=Ya({},oL,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:EpA}),Uor=Gg(Gor),Mor=Ya({},h5,{propertyName:0,elapsedTime:0,pseudoElement:0}),Tor=Gg(Mor),Yor=Ya({},az,{deltaX:function(A){return"deltaX"in A?A.deltaX:("wheelDeltaX"in A)?-A.wheelDeltaX:0},deltaY:function(A){return"deltaY"in A?A.deltaY:("wheelDeltaY"in A)?-A.wheelDeltaY:("wheelDelta"in A)?-A.wheelDelta:0},deltaZ:0,deltaMode:0}),Hor=Gg(Yor),Kor=[9,13,27,32],dpA=Yh&&"CompositionEvent"in window,YS=null;Yh&&"documentMode"in document&&(YS=document.documentMode);var Jor=Yh&&"TextEvent"in window&&!YS,ofe=Yh&&(!dpA||YS&&8<YS&&11>=YS),W1e=String.fromCharCode(32),q1e=!1;function sfe(A,e){switch(A){case"keyup":return Kor.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function lfe(A){return A=A.detail,typeof A==="object"&&"data"in A?A.data:null}var V9=!1;function Oor(A,e){switch(A){case"compositionend":return lfe(e);case"keypress":if(e.which!==32)return null;return q1e=!0,W1e;case"textInput":return A=e.data,A===W1e&&q1e?null:A;default:return null}}function Por(A,e){if(V9)return A==="compositionend"||!dpA&&sfe(A,e)?(A=nfe(),wq=CpA=up=null,V9=!1,A):null;switch(A){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1<e.char.length)return e.char;if(e.which)return String.fromCharCode(e.which)}return null;case"compositionend":return ofe&&e.locale!=="ko"?null:e.data;default:return null}}var _or={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function z1e(A){var e=A&&A.nodeName&&A.nodeName.toLowerCase();return e==="input"?!!_or[A.type]:e==="textarea"?!0:!1}function gfe(A,e,t,r){znr(r),e=Jq(e,"onChange"),0<e.length&&(t=new BpA("onChange","change",null,t,r),A.push({event:t,listeners:e}))}var HS=null,XS=null;function Wor(A){mfe(A,0)}function nz(A){var e=US(A);if(Tpe(e))return A}function qor(A,e){if(A==="change")return e}var cfe=!1;if(Yh){if(Yh){if(LS="oninput"in document,!LS)vq=document.createElement("div"),vq.setAttribute("oninput","return;"),LS=typeof vq.oninput==="function";SS=LS}else SS=!1;cfe=SS&&(!document.documentMode||9<document.documentMode)}var SS,LS,vq;function Z1e(){HS&&(HS.detachEvent("onpropertychange",Cfe),XS=HS=null)}function Cfe(A){if(A.propertyName==="value"&&nz(XS)){var e=[];gfe(e,XS,A,opA(A)),qpe(Wor,e)}}function zor(A,e,t){A==="focusin"?(Z1e(),HS=e,XS=t,HS.attachEvent("onpropertychange",Cfe)):A==="focusout"&&Z1e()}function Zor(A){if(A==="selectionchange"||A==="keyup"||A==="keydown")return nz(XS)}function Vor(A,e){if(A==="click")return nz(e)}function jor(A,e){if(A==="input"||A==="change")return nz(e)}function Xor(A,e){return A===e&&(A!==0||1/A===1/e)||A!==A&&e!==e}var pB=typeof Object.is==="function"?Object.is:Xor;function $S(A,e){if(pB(A,e))return!0;if(typeof A!=="object"||A===null||typeof e!=="object"||e===null)return!1;var t=Object.keys(A),r=Object.keys(e);if(t.length!==r.length)return!1;for(r=0;r<t.length;r++){var i=t[r];if(!o1A.call(e,i)||!pB(A[i],e[i]))return!1}return!0}function V1e(A){for(;A&&A.firstChild;)A=A.firstChild;return A}function j1e(A,e){var t=V1e(A);A=0;for(var r;t;){if(t.nodeType===3){if(r=A+t.textContent.length,A<=e&&r>=e)return{node:t,offset:e-A};A=r}A:{for(;t;){if(t.nextSibling){t=t.nextSibling;break A}t=t.parentNode}t=void 0}t=V1e(t)}}function Bfe(A,e){return A&&e?A===e?!0:A&&A.nodeType===3?!1:e&&e.nodeType===3?Bfe(A,e.parentNode):("contains"in A)?A.contains(e):A.compareDocumentPosition?!!(A.compareDocumentPosition(e)&16):!1:!1}function Efe(){for(var A=window,e=Gq();e instanceof A.HTMLIFrameElement;){try{var t=typeof e.contentWindow.location.href==="string"}catch(r){t=!1}if(t)A=e.contentWindow;else break;e=Gq(A.document)}return e}function IpA(A){var e=A&&A.nodeName&&A.nodeName.toLowerCase();return e&&(e==="input"&&(A.type==="text"||A.type==="search"||A.type==="tel"||A.type==="url"||A.type==="password")||e==="textarea"||A.contentEditable==="true")}function $or(A){var e=Efe(),t=A.focusedElem,r=A.selectionRange;if(e!==t&&t&&t.ownerDocument&&Bfe(t.ownerDocument.documentElement,t)){if(r!==null&&IpA(t)){if(e=r.start,A=r.end,A===void 0&&(A=e),"selectionStart"in t)t.selectionStart=e,t.selectionEnd=Math.min(A,t.value.length);else if(A=(e=t.ownerDocument||document)&&e.defaultView||window,A.getSelection){A=A.getSelection();var i=t.textContent.length,u=Math.min(r.start,i);r=r.end===void 0?u:Math.min(r.end,i),!A.extend&&u>r&&(i=r,r=u,u=i),i=j1e(t,u);var a=j1e(t,r);i&&a&&(A.rangeCount!==1||A.anchorNode!==i.node||A.anchorOffset!==i.offset||A.focusNode!==a.node||A.focusOffset!==a.offset)&&(e=e.createRange(),e.setStart(i.node,i.offset),A.removeAllRanges(),u>r?(A.addRange(e),A.extend(a.node,a.offset)):(e.setEnd(a.node,a.offset),A.addRange(e)))}}e=[];for(A=t;A=A.parentNode;)A.nodeType===1&&e.push({element:A,left:A.scrollLeft,top:A.scrollTop});typeof t.focus==="function"&&t.focus();for(t=0;t<e.length;t++)A=e[t],A.element.scrollLeft=A.left,A.element.scrollTop=A.top}}var A0r=Yh&&"documentMode"in document&&11>=document.documentMode,j9=null,v1A=null,KS=null,k1A=!1;function X1e(A,e,t){var r=t.window===t?t.document:t.nodeType===9?t:t.ownerDocument;k1A||j9==null||j9!==Gq(r)||(r=j9,("selectionStart"in r)&&IpA(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),KS&&$S(KS,r)||(KS=r,r=Jq(v1A,"onSelect"),0<r.length&&(e=new BpA("onSelect","select",null,e,t),A.push({event:e,listeners:r}),e.target=j9)))}function dq(A,e){var t={};return t[A.toLowerCase()]=e.toLowerCase(),t["Webkit"+A]="webkit"+e,t["Moz"+A]="moz"+e,t}var X9={animationend:dq("Animation","AnimationEnd"),animationiteration:dq("Animation","AnimationIteration"),animationstart:dq("Animation","AnimationStart"),transitionend:dq("Transition","TransitionEnd")},Z4A={},dfe={};Yh&&(dfe=document.createElement("div").style,("AnimationEvent"in window)||(delete X9.animationend.animation,delete X9.animationiteration.animation,delete X9.animationstart.animation),("TransitionEvent"in window)||delete X9.transitionend.transition);function oz(A){if(Z4A[A])return Z4A[A];if(!X9[A])return A;var e=X9[A],t;for(t in e)if(e.hasOwnProperty(t)&&t in dfe)return Z4A[A]=e[t];return A}var Ife=oz("animationend"),hfe=oz("animationiteration"),Qfe=oz("animationstart"),pfe=oz("transitionend"),ffe=new Map,$1e="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function dp(A,e){ffe.set(A,e),k2(e,[A])}for(RS=0;RS<$1e.length;RS++)NS=$1e[RS],F1A=NS.toLowerCase(),x1A=NS[0].toUpperCase()+NS.slice(1),dp(F1A,"on"+x1A);var NS,F1A,x1A,RS;dp(Ife,"onAnimationEnd");dp(hfe,"onAnimationIteration");dp(Qfe,"onAnimationStart");dp("dblclick","onDoubleClick");dp("focusin","onFocus");dp("focusout","onBlur");dp(pfe,"onTransitionEnd");g5("onMouseEnter",["mouseout","mouseover"]);g5("onMouseLeave",["mouseout","mouseover"]);g5("onPointerEnter",["pointerout","pointerover"]);g5("onPointerLeave",["pointerout","pointerover"]);k2("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));k2("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));k2("onBeforeInput",["compositionend","keypress","textInput","paste"]);k2("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));k2("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));k2("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var GS="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),e0r=new Set("cancel close invalid load scroll toggle".split(" ").concat(GS));function Ape(A,e,t){var r=A.type||"unknown-event";A.currentTarget=t,$nr(r,e,void 0,A),A.currentTarget=null}function mfe(A,e){e=(e&4)!==0;for(var t=0;t<A.length;t++){var r=A[t],i=r.event;r=r.listeners;A:{var u=void 0;if(e)for(var a=r.length-1;0<=a;a--){var n=r[a],o=n.instance,s=n.currentTarget;if(n=n.listener,o!==u&&i.isPropagationStopped())break A;Ape(i,n,s),u=o}else for(a=0;a<r.length;a++){if(n=r[a],o=n.instance,s=n.currentTarget,n=n.listener,o!==u&&i.isPropagationStopped())break A;Ape(i,n,s),u=o}}}if(Mq)throw A=D1A,Mq=!1,D1A=null,A}function sa(A,e){var t=e[G1A];t===void 0&&(t=e[G1A]=new Set);var r=A+"__bubble";t.has(r)||(Dfe(e,A,2,!1),t.add(r))}function V4A(A,e,t){var r=0;e&&(r|=4),Dfe(t,A,r,e)}var Iq="_reactListening"+Math.random().toString(36).slice(2);function t0r(A){if(!A[Iq]){A[Iq]=!0,Rpe.forEach(function(t){t!=="selectionchange"&&(e0r.has(t)||V4A(t,!1,A),V4A(t,!0,A))});var e=A.nodeType===9?A:A.ownerDocument;e===null||e[Iq]||(e[Iq]=!0,V4A("selectionchange",!1,e))}}function Dfe(A,e,t,r){switch(afe(e)){case 1:var i=dor;break;case 4:i=Ior;break;default:i=cpA}t=i.bind(null,e,t,A),i=void 0,!m1A||e!=="touchstart"&&e!=="touchmove"&&e!=="wheel"||(i=!0),r?i!==void 0?A.addEventListener(e,t,{capture:!0,passive:i}):A.addEventListener(e,t,!0):i!==void 0?A.addEventListener(e,t,{passive:i}):A.addEventListener(e,t,!1)}function j4A(A,e,t,r,i){var u=r;if((e&1)===0&&(e&2)===0&&r!==null)A:for(;;){if(r===null)return;var a=r.tag;if(a===3||a===4){var n=r.stateNode.containerInfo;if(n===i||n.nodeType===8&&n.parentNode===i)break;if(a===4)for(a=r.return;a!==null;){var o=a.tag;if(o===3||o===4){if(o=a.stateNode.containerInfo,o===i||o.nodeType===8&&o.parentNode===i)return}a=a.return}for(;n!==null;){if(a=I2(n),a===null)return;if(o=a.tag,o===5||o===6){r=u=a;continue A}n=n.parentNode}}r=r.return}qpe(function(){var s=u,l=opA(t),g=[];A:{var C=ffe.get(A);if(C!==void 0){var B=BpA,E=A;switch(A){case"keypress":if(bq(t)===0)break A;case"keydown":case"keyup":B=Ror;break;case"focusin":E="focus",B=z4A;break;case"focusout":E="blur",B=z4A;break;case"beforeblur":case"afterblur":B=z4A;break;case"click":if(t.button===2)break A;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":B=O1e;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":B=por;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":B=Uor;break;case Ife:case hfe:case Qfe:B=yor;break;case pfe:B=Tor;break;case"scroll":B=hor;break;case"wheel":B=Hor;break;case"copy":case"cut":case"paste":B=bor;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":B=_1e}var d=(e&4)!==0,I=!d&&A==="scroll",h=d?C!==null?C+"Capture":null:C;d=[];for(var Q=s,p;Q!==null;){p=Q;var m=p.stateNode;if(p.tag===5&&m!==null&&(p=m,h!==null&&(m=zS(Q,h),m!=null&&d.push(AL(Q,m,p)))),I)break;Q=Q.return}0<d.length&&(C=new B(C,E,null,t,l),g.push({event:C,listeners:d}))}}if((e&7)===0){A:{if(C=A==="mouseover"||A==="pointerover",B=A==="mouseout"||A==="pointerout",C&&t!==p1A&&(E=t.relatedTarget||t.fromElement)&&(I2(E)||E[sz]))break A;if(B||C){if(C=l.window===l?l:(C=l.ownerDocument)?C.defaultView||C.parentWindow:window,B){if(E=t.relatedTarget||t.toElement,B=s,E=E?I2(E):null,E!==null&&(I=F2(E),E!==I||E.tag!==5&&E.tag!==6))E=null}else B=null,E=s;if(B!==E){if(d=O1e,m="onMouseLeave",h="onMouseEnter",Q="mouse",A==="pointerout"||A==="pointerover")d=_1e,m="onPointerLeave",h="onPointerEnter",Q="pointer";if(I=B==null?C:US(B),p=E==null?C:US(E),C=new d(m,Q+"leave",B,t,l),C.target=I,C.relatedTarget=p,m=null,I2(l)===s&&(d=new d(h,Q+"enter",E,t,l),d.target=p,d.relatedTarget=I,m=d),I=m,B&&E)e:{d=B,h=E,Q=0;for(p=d;p;p=W9(p))Q++;p=0;for(m=h;m;m=W9(m))p++;for(;0<Q-p;)d=W9(d),Q--;for(;0<p-Q;)h=W9(h),p--;for(;Q--;){if(d===h||h!==null&&d===h.alternate)break e;d=W9(d),h=W9(h)}d=null}else d=null;B!==null&&epe(g,C,B,d,!1),E!==null&&I!==null&&epe(g,I,E,d,!0)}}}A:{if(C=s?US(s):window,B=C.nodeName&&C.nodeName.toLowerCase(),B==="select"||B==="input"&&C.type==="file")var f=qor;else if(z1e(C))if(cfe)f=jor;else{f=Zor;var D=zor}else(B=C.nodeName)&&B.toLowerCase()==="input"&&(C.type==="checkbox"||C.type==="radio")&&(f=Vor);if(f&&(f=f(A,s))){gfe(g,f,t,l);break A}D&&D(A,C,s),A==="focusout"&&(D=C._wrapperState)&&D.controlled&&C.type==="number"&&E1A(C,"number",C.value)}switch(D=s?US(s):window,A){case"focusin":if(z1e(D)||D.contentEditable==="true")j9=D,v1A=s,KS=null;break;case"focusout":KS=v1A=j9=null;break;case"mousedown":k1A=!0;break;case"contextmenu":case"mouseup":case"dragend":k1A=!1,X1e(g,t,l);break;case"selectionchange":if(A0r)break;case"keydown":case"keyup":X1e(g,t,l)}var w;if(dpA)A:{switch(A){case"compositionstart":var b="onCompositionStart";break A;case"compositionend":b="onCompositionEnd";break A;case"compositionupdate":b="onCompositionUpdate";break A}b=void 0}else V9?sfe(A,t)&&(b="onCompositionEnd"):A==="keydown"&&t.keyCode===229&&(b="onCompositionStart");if(b&&(ofe&&t.locale!=="ko"&&(V9||b!=="onCompositionStart"?b==="onCompositionEnd"&&V9&&(w=nfe()):(up=l,CpA=("value"in up)?up.value:up.textContent,V9=!0)),D=Jq(s,b),0<D.length&&(b=new P1e(b,A,null,t,l),g.push({event:b,listeners:D}),w?b.data=w:(w=lfe(t),w!==null&&(b.data=w)))),w=Jor?Oor(A,t):Por(A,t))s=Jq(s,"onBeforeInput"),0<s.length&&(l=new P1e("onBeforeInput","beforeinput",null,t,l),g.push({event:l,listeners:s}),l.data=w)}mfe(g,e)})}function AL(A,e,t){return{instance:A,listener:e,currentTarget:t}}function Jq(A,e){for(var t=e+"Capture",r=[];A!==null;){var i=A,u=i.stateNode;i.tag===5&&u!==null&&(i=u,u=zS(A,t),u!=null&&r.unshift(AL(A,u,i)),u=zS(A,e),u!=null&&r.push(AL(A,u,i))),A=A.return}return r}function W9(A){if(A===null)return null;do A=A.return;while(A&&A.tag!==5);return A?A:null}function epe(A,e,t,r,i){for(var u=e._reactName,a=[];t!==null&&t!==r;){var n=t,o=n.alternate,s=n.stateNode;if(o!==null&&o===r)break;n.tag===5&&s!==null&&(n=s,i?(o=zS(t,u),o!=null&&a.unshift(AL(t,o,n))):i||(o=zS(t,u),o!=null&&a.push(AL(t,o,n)))),t=t.return}a.length!==0&&A.push({event:e,listeners:a})}var r0r=/\r\n?/g,i0r=/\u0000|\uFFFD/g;function tpe(A){return(typeof A==="string"?A:""+A).replace(r0r,`
`).replace(i0r,"")}function hq(A,e,t){if(e=tpe(e),tpe(A)!==e&&t)throw Error(Et(425))}function Oq(){}var S1A=null,L1A=null;function R1A(A,e){return A==="textarea"||A==="noscript"||typeof e.children==="string"||typeof e.children==="number"||typeof e.dangerouslySetInnerHTML==="object"&&e.dangerouslySetInnerHTML!==null&&e.dangerouslySetInnerHTML.__html!=null}var N1A=typeof setTimeout==="function"?setTimeout:void 0,u0r=typeof clearTimeout==="function"?clearTimeout:void 0,rpe=typeof Promise==="function"?Promise:void 0,a0r=typeof queueMicrotask==="function"?queueMicrotask:typeof rpe<"u"?function(A){return rpe.resolve(null).then(A).catch(n0r)}:N1A;function n0r(A){setTimeout(function(){throw A})}function X4A(A,e){var t=e,r=0;do{var i=t.nextSibling;if(A.removeChild(t),i&&i.nodeType===8)if(t=i.data,t==="/$"){if(r===0){A.removeChild(i),jS(e);return}r--}else t!=="$"&&t!=="$?"&&t!=="$!"||r++;t=i}while(t);jS(e)}function lp(A){for(;A!=null;A=A.nextSibling){var e=A.nodeType;if(e===1||e===3)break;if(e===8){if(e=A.data,e==="$"||e==="$!"||e==="$?")break;if(e==="/$")return null}}return A}function ipe(A){A=A.previousSibling;for(var e=0;A;){if(A.nodeType===8){var t=A.data;if(t==="$"||t==="$!"||t==="$?"){if(e===0)return A;e--}else t==="/$"&&e++}A=A.previousSibling}return null}var Q5=Math.random().toString(36).slice(2),md="__reactFiber$"+Q5,eL="__reactProps$"+Q5,sz="__reactContainer$"+Q5,G1A="__reactEvents$"+Q5,o0r="__reactListeners$"+Q5,s0r="__reactHandles$"+Q5;function I2(A){var e=A[md];if(e)return e;for(var t=A.parentNode;t;){if(e=t[sz]||t[md]){if(t=e.alternate,e.child!==null||t!==null&&t.child!==null)for(A=ipe(A);A!==null;){if(t=A[md])return t;A=ipe(A)}return e}A=t,t=A.parentNode}return null}function lz(A){return A=A[md]||A[sz],!A||A.tag!==5&&A.tag!==6&&A.tag!==13&&A.tag!==3?null:A}function US(A){if(A.tag===5||A.tag===6)return A.stateNode;throw Error(Et(33))}function hpA(A){return A[eL]||null}var U1A=[],$9=-1;function Ip(A){return{current:A}}function la(A){0>$9||(A.current=U1A[$9],U1A[$9]=null,$9--)}function Vu(A,e){$9++,U1A[$9]=A.current,A.current=e}var Ep={},es=Ip(Ep),Yl=Ip(!1),y2=Ep;function c5(A,e){var t=A.type.contextTypes;if(!t)return Ep;var r=A.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===e)return r.__reactInternalMemoizedMaskedChildContext;var i={},u;for(u in t)i[u]=e[u];return r&&(A=A.stateNode,A.__reactInternalMemoizedUnmaskedChildContext=e,A.__reactInternalMemoizedMaskedChildContext=i),i}function Hl(A){return A=A.childContextTypes,A!==null&&A!==void 0}function Pq(){la(Yl),la(es)}function upe(A,e,t){if(es.current!==Ep)throw Error(Et(168));Vu(es,e),Vu(Yl,t)}function yfe(A,e,t){var r=A.stateNode;if(e=e.childContextTypes,typeof r.getChildContext!=="function")return t;r=r.getChildContext();for(var i in r)if(!(i in e))throw Error(Et(108,Pnr(A)||"Unknown",i));return Ya({},t,r)}function _q(A){return A=(A=A.stateNode)&&A.__reactInternalMemoizedMergedChildContext||Ep,y2=es.current,Vu(es,A),Vu(Yl,Yl.current),!0}function ape(A,e,t){var r=A.stateNode;if(!r)throw Error(Et(169));t?(A=yfe(A,e,y2),r.__reactInternalMemoizedMergedChildContext=A,la(Yl),la(es),Vu(es,A)):la(Yl),Vu(Yl,t)}var Uh=null,gz=!1,$4A=!1;function wfe(A){Uh===null?Uh=[A]:Uh.push(A)}function l0r(A){gz=!0,wfe(A)}function hp(){if(!$4A&&Uh!==null){$4A=!0;var A=0,e=mu;try{var t=Uh;for(mu=1;A<t.length;A++){var r=t[A];do r=r(!0);while(r!==null)}Uh=null,gz=!1}catch(i){throw Uh!==null&&(Uh=Uh.slice(A+1)),Vpe(spA,hp),i}finally{mu=e,$4A=!1}}return null}var A5=[],e5=0,Wq=null,qq=0,Yc=[],Hc=0,w2=null,Mh=1,Th="";function E2(A,e){A5[e5++]=qq,A5[e5++]=Wq,Wq=A,qq=e}function bfe(A,e,t){Yc[Hc++]=Mh,Yc[Hc++]=Th,Yc[Hc++]=w2,w2=A;var r=Mh;A=Th;var i=32-hB(r)-1;r&=~(1<<i),t+=1;var u=32-hB(e)+i;if(30<u){var a=i-i%5;u=(r&(1<<a)-1).toString(32),r>>=a,i-=a,Mh=1<<32-hB(e)+i|t<<i|r,Th=u+A}else Mh=1<<u|t<<i|r,Th=A}function QpA(A){A.return!==null&&(E2(A,1),bfe(A,1,0))}function ppA(A){for(;A===Wq;)Wq=A5[--e5],A5[e5]=null,qq=A5[--e5],A5[e5]=null;for(;A===w2;)w2=Yc[--Hc],Yc[Hc]=null,Th=Yc[--Hc],Yc[Hc]=null,Mh=Yc[--Hc],Yc[Hc]=null}var Rg=null,Lg=null,ka=!1,dB=null;function vfe(A,e){var t=IB(5,null,null,0);t.elementType="DELETED",t.stateNode=e,t.return=A,e=A.deletions,e===null?(A.deletions=[t],A.flags|=16):e.push(t)}function npe(A,e){switch(A.tag){case 5:var t=A.type;return e=e.nodeType!==1||t.toLowerCase()!==e.nodeName.toLowerCase()?null:e,e!==null?(A.stateNode=e,Rg=A,Lg=lp(e.firstChild),!0):!1;case 6:return e=A.pendingProps===""||e.nodeType!==3?null:e,e!==null?(A.stateNode=e,Rg=A,Lg=null,!0):!1;case 13:return e=e.nodeType!==8?null:e,e!==null?(t=w2!==null?{id:Mh,overflow:Th}:null,A.memoizedState={dehydrated:e,treeContext:t,retryLane:1073741824},t=IB(18,null,null,0),t.stateNode=e,t.return=A,A.child=t,Rg=A,Lg=null,!0):!1;default:return!1}}function M1A(A){return(A.mode&1)!==0&&(A.flags&128)===0}function T1A(A){if(ka){var e=Lg;if(e){var t=e;if(!npe(A,e)){if(M1A(A))throw Error(Et(418));e=lp(t.nextSibling);var r=Rg;e&&npe(A,e)?vfe(r,t):(A.flags=A.flags&-4097|2,ka=!1,Rg=A)}}else{if(M1A(A))throw Error(Et(418));A.flags=A.flags&-4097|2,ka=!1,Rg=A}}}function ope(A){for(A=A.return;A!==null&&A.tag!==5&&A.tag!==3&&A.tag!==13;)A=A.return;Rg=A}function Qq(A){if(A!==Rg)return!1;if(!ka)return ope(A),ka=!0,!1;var e;if((e=A.tag!==3)&&!(e=A.tag!==5)&&(e=A.type,e=e!=="head"&&e!=="body"&&!R1A(A.type,A.memoizedProps)),e&&(e=Lg)){if(M1A(A))throw kfe(),Error(Et(418));for(;e;)vfe(A,e),e=lp(e.nextSibling)}if(ope(A),A.tag===13){if(A=A.memoizedState,A=A!==null?A.dehydrated:null,!A)throw Error(Et(317));A:{A=A.nextSibling;for(e=0;A;){if(A.nodeType===8){var t=A.data;if(t==="/$"){if(e===0){Lg=lp(A.nextSibling);break A}e--}else t!=="$"&&t!=="$!"&&t!=="$?"||e++}A=A.nextSibling}Lg=null}}else Lg=Rg?lp(A.stateNode.nextSibling):null;return!0}function kfe(){for(var A=Lg;A;)A=lp(A.nextSibling)}function C5(){Lg=Rg=null,ka=!1}function fpA(A){dB===null?dB=[A]:dB.push(A)}var g0r=Jh.ReactCurrentBatchConfig;function wS(A,e,t){if(A=t.ref,A!==null&&typeof A!=="function"&&typeof A!=="object"){if(t._owner){if(t=t._owner,t){if(t.tag!==1)throw Error(Et(309));var r=t.stateNode}if(!r)throw Error(Et(147,A));var i=r,u=""+A;if(e!==null&&e.ref!==null&&typeof e.ref==="function"&&e.ref._stringRef===u)return e.ref;return e=function(a){var n=i.refs;a===null?delete n[u]:n[u]=a},e._stringRef=u,e}if(typeof A!=="string")throw Error(Et(284));if(!t._owner)throw Error(Et(290,A))}return A}function pq(A,e){throw A=Object.prototype.toString.call(e),Error(Et(31,A==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":A))}function spe(A){var e=A._init;return e(A._payload)}function Ffe(A){function e(h,Q){if(A){var p=h.deletions;p===null?(h.deletions=[Q],h.flags|=16):p.push(Q)}}function t(h,Q){if(!A)return null;for(;Q!==null;)e(h,Q),Q=Q.sibling;return null}function r(h,Q){for(h=new Map;Q!==null;)Q.key!==null?h.set(Q.key,Q):h.set(Q.index,Q),Q=Q.sibling;return h}function i(h,Q){return h=Cp(h,Q),h.index=0,h.sibling=null,h}function u(h,Q,p){if(h.index=p,!A)return h.flags|=1048576,Q;if(p=h.alternate,p!==null)return p=p.index,p<Q?(h.flags|=2,Q):p;return h.flags|=2,Q}function a(h){return A&&h.alternate===null&&(h.flags|=2),h}function n(h,Q,p,m){if(Q===null||Q.tag!==6)return Q=a1A(p,h.mode,m),Q.return=h,Q;return Q=i(Q,p),Q.return=h,Q}function o(h,Q,p,m){var f=p.type;if(f===Z9)return l(h,Q,p.props.children,m,p.key);if(Q!==null&&(Q.elementType===f||typeof f==="object"&&f!==null&&f.$$typeof===ep&&spe(f)===Q.type))return m=i(Q,p.props),m.ref=wS(h,Q,p),m.return=h,m;return m=Nq(p.type,p.key,p.props,null,h.mode,m),m.ref=wS(h,Q,p),m.return=h,m}function s(h,Q,p,m){if(Q===null||Q.tag!==4||Q.stateNode.containerInfo!==p.containerInfo||Q.stateNode.implementation!==p.implementation)return Q=n1A(p,h.mode,m),Q.return=h,Q;return Q=i(Q,p.children||[]),Q.return=h,Q}function l(h,Q,p,m,f){if(Q===null||Q.tag!==7)return Q=D2(p,h.mode,m,f),Q.return=h,Q;return Q=i(Q,p),Q.return=h,Q}function g(h,Q,p){if(typeof Q==="string"&&Q!==""||typeof Q==="number")return Q=a1A(""+Q,h.mode,p),Q.return=h,Q;if(typeof Q==="object"&&Q!==null){switch(Q.$$typeof){case sq:return p=Nq(Q.type,Q.key,Q.props,null,h.mode,p),p.ref=wS(h,null,Q),p.return=h,p;case z9:return Q=n1A(Q,h.mode,p),Q.return=h,Q;case ep:var m=Q._init;return g(h,m(Q._payload),p)}if(FS(Q)||fS(Q))return Q=D2(Q,h.mode,p,null),Q.return=h,Q;pq(h,Q)}return null}function C(h,Q,p,m){var f=Q!==null?Q.key:null;if(typeof p==="string"&&p!==""||typeof p==="number")return f!==null?null:n(h,Q,""+p,m);if(typeof p==="object"&&p!==null){switch(p.$$typeof){case sq:return p.key===f?o(h,Q,p,m):null;case z9:return p.key===f?s(h,Q,p,m):null;case ep:return f=p._init,C(h,Q,f(p._payload),m)}if(FS(p)||fS(p))return f!==null?null:l(h,Q,p,m,null);pq(h,p)}return null}function B(h,Q,p,m,f){if(typeof m==="string"&&m!==""||typeof m==="number")return h=h.get(p)||null,n(Q,h,""+m,f);if(typeof m==="object"&&m!==null){switch(m.$$typeof){case sq:return h=h.get(m.key===null?p:m.key)||null,o(Q,h,m,f);case z9:return h=h.get(m.key===null?p:m.key)||null,s(Q,h,m,f);case ep:var D=m._init;return B(h,Q,p,D(m._payload),f)}if(FS(m)||fS(m))return h=h.get(p)||null,l(Q,h,m,f,null);pq(Q,m)}return null}function E(h,Q,p,m){for(var f=null,D=null,w=Q,b=Q=0,k=null;w!==null&&b<p.length;b++){w.index>b?(k=w,w=null):k=w.sibling;var v=C(h,w,p[b],m);if(v===null){w===null&&(w=k);break}A&&w&&v.alternate===null&&e(h,w),Q=u(v,Q,b),D===null?f=v:D.sibling=v,D=v,w=k}if(b===p.length)return t(h,w),ka&&E2(h,b),f;if(w===null){for(;b<p.length;b++)w=g(h,p[b],m),w!==null&&(Q=u(w,Q,b),D===null?f=w:D.sibling=w,D=w);return ka&&E2(h,b),f}for(w=r(h,w);b<p.length;b++)k=B(w,h,b,p[b],m),k!==null&&(A&&k.alternate!==null&&w.delete(k.key===null?b:k.key),Q=u(k,Q,b),D===null?f=k:D.sibling=k,D=k);return A&&w.forEach(function(S){return e(h,S)}),ka&&E2(h,b),f}function d(h,Q,p,m){var f=fS(p);if(typeof f!=="function")throw Error(Et(150));if(p=f.call(p),p==null)throw Error(Et(151));for(var D=f=null,w=Q,b=Q=0,k=null,v=p.next();w!==null&&!v.done;b++,v=p.next()){w.index>b?(k=w,w=null):k=w.sibling;var S=C(h,w,v.value,m);if(S===null){w===null&&(w=k);break}A&&w&&S.alternate===null&&e(h,w),Q=u(S,Q,b),D===null?f=S:D.sibling=S,D=S,w=k}if(v.done)return t(h,w),ka&&E2(h,b),f;if(w===null){for(;!v.done;b++,v=p.next())v=g(h,v.value,m),v!==null&&(Q=u(v,Q,b),D===null?f=v:D.sibling=v,D=v);return ka&&E2(h,b),f}for(w=r(h,w);!v.done;b++,v=p.next())v=B(w,h,b,v.value,m),v!==null&&(A&&v.alternate!==null&&w.delete(v.key===null?b:v.key),Q=u(v,Q,b),D===null?f=v:D.sibling=v,D=v);return A&&w.forEach(function(x){return e(h,x)}),ka&&E2(h,b),f}function I(h,Q,p,m){if(typeof p==="object"&&p!==null&&p.type===Z9&&p.key===null&&(p=p.props.children),typeof p==="object"&&p!==null){switch(p.$$typeof){case sq:A:{for(var f=p.key,D=Q;D!==null;){if(D.key===f){if(f=p.type,f===Z9){if(D.tag===7){t(h,D.sibling),Q=i(D,p.props.children),Q.return=h,h=Q;break A}}else if(D.elementType===f||typeof f==="object"&&f!==null&&f.$$typeof===ep&&spe(f)===D.type){t(h,D.sibling),Q=i(D,p.props),Q.ref=wS(h,D,p),Q.return=h,h=Q;break A}t(h,D);break}else e(h,D);D=D.sibling}p.type===Z9?(Q=D2(p.props.children,h.mode,m,p.key),Q.return=h,h=Q):(m=Nq(p.type,p.key,p.props,null,h.mode,m),m.ref=wS(h,Q,p),m.return=h,h=m)}return a(h);case z9:A:{for(D=p.key;Q!==null;){if(Q.key===D)if(Q.tag===4&&Q.stateNode.containerInfo===p.containerInfo&&Q.stateNode.implementation===p.implementation){t(h,Q.sibling),Q=i(Q,p.children||[]),Q.return=h,h=Q;break A}else{t(h,Q);break}else e(h,Q);Q=Q.sibling}Q=n1A(p,h.mode,m),Q.return=h,h=Q}return a(h);case ep:return D=p._init,I(h,Q,D(p._payload),m)}if(FS(p))return E(h,Q,p,m);if(fS(p))return d(h,Q,p,m);pq(h,p)}return typeof p==="string"&&p!==""||typeof p==="number"?(p=""+p,Q!==null&&Q.tag===6?(t(h,Q.sibling),Q=i(Q,p),Q.return=h,h=Q):(t(h,Q),Q=a1A(p,h.mode,m),Q.return=h,h=Q),a(h)):t(h,Q)}return I}var B5=Ffe(!0),xfe=Ffe(!1),zq=Ip(null),Zq=null,t5=null,mpA=null;function DpA(){mpA=t5=Zq=null}function ypA(A){var e=zq.current;la(zq),A._currentValue=e}function Y1A(A,e,t){for(;A!==null;){var r=A.alternate;if((A.childLanes&e)!==e?(A.childLanes|=e,r!==null&&(r.childLanes|=e)):r!==null&&(r.childLanes&e)!==e&&(r.childLanes|=e),A===t)break;A=A.return}}function s5(A,e){Zq=A,mpA=t5=null,A=A.dependencies,A!==null&&A.firstContext!==null&&((A.lanes&e)!==0&&(Tl=!0),A.firstContext=null)}function Jc(A){var e=A._currentValue;if(mpA!==A)if(A={context:A,memoizedValue:e,next:null},t5===null){if(Zq===null)throw Error(Et(308));t5=A,Zq.dependencies={lanes:0,firstContext:A}}else t5=t5.next=A;return e}var h2=null;function wpA(A){h2===null?h2=[A]:h2.push(A)}function Sfe(A,e,t,r){var i=e.interleaved;return i===null?(t.next=t,wpA(e)):(t.next=i.next,i.next=t),e.interleaved=t,Hh(A,r)}function Hh(A,e){A.lanes|=e;var t=A.alternate;t!==null&&(t.lanes|=e),t=A;for(A=A.return;A!==null;)A.childLanes|=e,t=A.alternate,t!==null&&(t.childLanes|=e),t=A,A=A.return;return t.tag===3?t.stateNode:null}var tp=!1;function Lfe(A){A.updateQueue={baseState:A.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Rfe(A,e){A=A.updateQueue,e.updateQueue===A&&(e.updateQueue={baseState:A.baseState,firstBaseUpdate:A.firstBaseUpdate,lastBaseUpdate:A.lastBaseUpdate,shared:A.shared,effects:A.effects})}function gp(A,e){return{eventTime:A,lane:e,tag:0,payload:null,callback:null,next:null}}function p2(A,e,t){var r=A.updateQueue;if(r===null)return null;if(r=r.shared,(_i&2)!==0){var i=r.pending;return i===null?e.next=e:(e.next=i.next,i.next=e),r.pending=e,Hh(A,t)}return i=r.interleaved,i===null?(e.next=e,wpA(r)):(e.next=i.next,i.next=e),r.interleaved=e,Hh(A,t)}function kq(A,e,t){if(e=e.updateQueue,e!==null&&(e=e.shared,(t&4194240)!==0)){var r=e.lanes;r&=A.pendingLanes,t|=r,e.lanes=t,lpA(A,t)}}function lpe(A,e){var t=A.updateQueue,r=A.alternate;if(r!==null&&(r=r.updateQueue,t===r)){var i=null,u=null;if(t=t.firstBaseUpdate,t!==null){do{var a={eventTime:t.eventTime,lane:t.lane,tag:t.tag,payload:t.payload,callback:t.callback,next:null};u===null?i=u=a:u=u.next=a,t=t.next}while(t!==null);u===null?i=u=e:u=u.next=e}else i=u=e;t={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:u,shared:r.shared,effects:r.effects},A.updateQueue=t;return}A=t.lastBaseUpdate,A===null?t.firstBaseUpdate=e:A.next=e,t.lastBaseUpdate=e}function Vq(A,e,t,r){var i=A.updateQueue;tp=!1;var u=i.firstBaseUpdate,a=i.lastBaseUpdate,n=i.shared.pending;if(n!==null){i.shared.pending=null;var o=n,s=o.next;o.next=null,a===null?u=s:a.next=s,a=o;var l=A.alternate;l!==null&&(l=l.updateQueue,n=l.lastBaseUpdate,n!==a&&(n===null?l.firstBaseUpdate=s:n.next=s,l.lastBaseUpdate=o))}if(u!==null){var g=i.baseState;a=0,l=s=o=null,n=u;do{var C=n.lane,B=n.eventTime;if((r&C)===C){l!==null&&(l=l.next={eventTime:B,lane:0,tag:n.tag,payload:n.payload,callback:n.callback,next:null});A:{var E=A,d=n;switch(C=e,B=t,d.tag){case 1:if(E=d.payload,typeof E==="function"){g=E.call(B,g,C);break A}g=E;break A;case 3:E.flags=E.flags&-65537|128;case 0:if(E=d.payload,C=typeof E==="function"?E.call(B,g,C):E,C===null||C===void 0)break A;g=Ya({},g,C);break A;case 2:tp=!0}}n.callback!==null&&n.lane!==0&&(A.flags|=64,C=i.effects,C===null?i.effects=[n]:C.push(n))}else B={eventTime:B,lane:C,tag:n.tag,payload:n.payload,callback:n.callback,next:null},l===null?(s=l=B,o=g):l=l.next=B,a|=C;if(n=n.next,n===null)if(n=i.shared.pending,n===null)break;else C=n,n=C.next,C.next=null,i.lastBaseUpdate=C,i.shared.pending=null}while(1);if(l===null&&(o=g),i.baseState=o,i.firstBaseUpdate=s,i.lastBaseUpdate=l,e=i.shared.interleaved,e!==null){i=e;do a|=i.lane,i=i.next;while(i!==e)}else u===null&&(i.shared.lanes=0);v2|=a,A.lanes=a,A.memoizedState=g}}function gpe(A,e,t){if(A=e.effects,e.effects=null,A!==null)for(e=0;e<A.length;e++){var r=A[e],i=r.callback;if(i!==null){if(r.callback=null,r=t,typeof i!=="function")throw Error(Et(191,i));i.call(r)}}}var sL={},yd=Ip(sL),tL=Ip(sL),rL=Ip(sL);function Q2(A){if(A===sL)throw Error(Et(174));return A}function bpA(A,e){switch(Vu(rL,e),Vu(tL,A),Vu(yd,sL),A=e.nodeType,A){case 9:case 11:e=(e=e.documentElement)?e.namespaceURI:I1A(null,"");break;default:A=A===8?e.parentNode:e,e=A.namespaceURI||null,A=A.tagName,e=I1A(e,A)}la(yd),Vu(yd,e)}function E5(){la(yd),la(tL),la(rL)}function Nfe(A){Q2(rL.current);var e=Q2(yd.current),t=I1A(e,A.type);e!==t&&(Vu(tL,A),Vu(yd,t))}function vpA(A){tL.current===A&&(la(yd),la(tL))}var Ma=Ip(0);function jq(A){for(var e=A;e!==null;){if(e.tag===13){var t=e.memoizedState;if(t!==null&&(t=t.dehydrated,t===null||t.data==="$?"||t.data==="$!"))return e}else if(e.tag===19&&e.memoizedProps.revealOrder!==void 0){if((e.flags&128)!==0)return e}else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===A)break;for(;e.sibling===null;){if(e.return===null||e.return===A)return null;e=e.return}e.sibling.return=e.return,e=e.sibling}return null}var A1A=[];function kpA(){for(var A=0;A<A1A.length;A++)A1A[A]._workInProgressVersionPrimary=null;A1A.length=0}var{ReactCurrentDispatcher:Fq,ReactCurrentBatchConfig:e1A}=Jh,b2=0,Ta=null,yo=null,Zo=null,Xq=!1,JS=!1,iL=0,c0r=0;function X0(){throw Error(Et(321))}function FpA(A,e){if(e===null)return!1;for(var t=0;t<e.length&&t<A.length;t++)if(!pB(A[t],e[t]))return!1;return!0}function xpA(A,e,t,r,i,u){if(b2=u,Ta=e,e.memoizedState=null,e.updateQueue=null,e.lanes=0,Fq.current=A===null||A.memoizedState===null?d0r:I0r,A=t(r,i),JS){u=0;do{if(JS=!1,iL=0,25<=u)throw Error(Et(301));u+=1,Zo=yo=null,e.updateQueue=null,Fq.current=h0r,A=t(r,i)}while(JS)}if(Fq.current=$q,e=yo!==null&&yo.next!==null,b2=0,Zo=yo=Ta=null,Xq=!1,e)throw Error(Et(300));return A}function SpA(){var A=iL!==0;return iL=0,A}function fd(){var A={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Zo===null?Ta.memoizedState=Zo=A:Zo=Zo.next=A,Zo}function Oc(){if(yo===null){var A=Ta.alternate;A=A!==null?A.memoizedState:null}else A=yo.next;var e=Zo===null?Ta.memoizedState:Zo.next;if(e!==null)Zo=e,yo=A;else{if(A===null)throw Error(Et(310));yo=A,A={memoizedState:yo.memoizedState,baseState:yo.baseState,baseQueue:yo.baseQueue,queue:yo.queue,next:null},Zo===null?Ta.memoizedState=Zo=A:Zo=Zo.next=A}return Zo}function uL(A,e){return typeof e==="function"?e(A):e}function t1A(A){var e=Oc(),t=e.queue;if(t===null)throw Error(Et(311));t.lastRenderedReducer=A;var r=yo,i=r.baseQueue,u=t.pending;if(u!==null){if(i!==null){var a=i.next;i.next=u.next,u.next=a}r.baseQueue=i=u,t.pending=null}if(i!==null){u=i.next,r=r.baseState;var n=a=null,o=null,s=u;do{var l=s.lane;if((b2&l)===l)o!==null&&(o=o.next={lane:0,action:s.action,hasEagerState:s.hasEagerState,eagerState:s.eagerState,next:null}),r=s.hasEagerState?s.eagerState:A(r,s.action);else{var g={lane:l,action:s.action,hasEagerState:s.hasEagerState,eagerState:s.eagerState,next:null};o===null?(n=o=g,a=r):o=o.next=g,Ta.lanes|=l,v2|=l}s=s.next}while(s!==null&&s!==u);o===null?a=r:o.next=n,pB(r,e.memoizedState)||(Tl=!0),e.memoizedState=r,e.baseState=a,e.baseQueue=o,t.lastRenderedState=r}if(A=t.interleaved,A!==null){i=A;do u=i.lane,Ta.lanes|=u,v2|=u,i=i.next;while(i!==A)}else i===null&&(t.lanes=0);return[e.memoizedState,t.dispatch]}function r1A(A){var e=Oc(),t=e.queue;if(t===null)throw Error(Et(311));t.lastRenderedReducer=A;var{dispatch:r,pending:i}=t,u=e.memoizedState;if(i!==null){t.pending=null;var a=i=i.next;do u=A(u,a.action),a=a.next;while(a!==i);pB(u,e.memoizedState)||(Tl=!0),e.memoizedState=u,e.baseQueue===null&&(e.baseState=u),t.lastRenderedState=u}return[u,r]}function Gfe(){}function Ufe(A,e){var t=Ta,r=Oc(),i=e(),u=!pB(r.memoizedState,i);if(u&&(r.memoizedState=i,Tl=!0),r=r.queue,LpA(Yfe.bind(null,t,r,A),[A]),r.getSnapshot!==e||u||Zo!==null&&Zo.memoizedState.tag&1){if(t.flags|=2048,aL(9,Tfe.bind(null,t,r,i,e),void 0,null),Vo===null)throw Error(Et(349));(b2&30)!==0||Mfe(t,e,i)}return i}function Mfe(A,e,t){A.flags|=16384,A={getSnapshot:e,value:t},e=Ta.updateQueue,e===null?(e={lastEffect:null,stores:null},Ta.updateQueue=e,e.stores=[A]):(t=e.stores,t===null?e.stores=[A]:t.push(A))}function Tfe(A,e,t,r){e.value=t,e.getSnapshot=r,Hfe(e)&&Kfe(A)}function Yfe(A,e,t){return t(function(){Hfe(e)&&Kfe(A)})}function Hfe(A){var e=A.getSnapshot;A=A.value;try{var t=e();return!pB(A,t)}catch(r){return!0}}function Kfe(A){var e=Hh(A,1);e!==null&&QB(e,A,1,-1)}function cpe(A){var e=fd();return typeof A==="function"&&(A=A()),e.memoizedState=e.baseState=A,A={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:uL,lastRenderedState:A},e.queue=A,A=A.dispatch=E0r.bind(null,Ta,A),[e.memoizedState,A]}function aL(A,e,t,r){return A={tag:A,create:e,destroy:t,deps:r,next:null},e=Ta.updateQueue,e===null?(e={lastEffect:null,stores:null},Ta.updateQueue=e,e.lastEffect=A.next=A):(t=e.lastEffect,t===null?e.lastEffect=A.next=A:(r=t.next,t.next=A,A.next=r,e.lastEffect=A)),A}function Jfe(){return Oc().memoizedState}function xq(A,e,t,r){var i=fd();Ta.flags|=A,i.memoizedState=aL(1|e,t,void 0,r===void 0?null:r)}function cz(A,e,t,r){var i=Oc();r=r===void 0?null:r;var u=void 0;if(yo!==null){var a=yo.memoizedState;if(u=a.destroy,r!==null&&FpA(r,a.deps)){i.memoizedState=aL(e,t,u,r);return}}Ta.flags|=A,i.memoizedState=aL(1|e,t,u,r)}function Cpe(A,e){return xq(8390656,8,A,e)}function LpA(A,e){return cz(2048,8,A,e)}function Ofe(A,e){return cz(4,2,A,e)}function Pfe(A,e){return cz(4,4,A,e)}function _fe(A,e){if(typeof e==="function")return A=A(),e(A),function(){e(null)};if(e!==null&&e!==void 0)return A=A(),e.current=A,function(){e.current=null}}function Wfe(A,e,t){return t=t!==null&&t!==void 0?t.concat([A]):null,cz(4,4,_fe.bind(null,e,A),t)}function RpA(){}function qfe(A,e){var t=Oc();e=e===void 0?null:e;var r=t.memoizedState;if(r!==null&&e!==null&&FpA(e,r[1]))return r[0];return t.memoizedState=[A,e],A}function zfe(A,e){var t=Oc();e=e===void 0?null:e;var r=t.memoizedState;if(r!==null&&e!==null&&FpA(e,r[1]))return r[0];return A=A(),t.memoizedState=[A,e],A}function Zfe(A,e,t){if((b2&21)===0)return A.baseState&&(A.baseState=!1,Tl=!0),A.memoizedState=t;return pB(t,e)||(t=$pe(),Ta.lanes|=t,v2|=t,A.baseState=!0),e}function C0r(A,e){var t=mu;mu=t!==0&&4>t?t:4,A(!0);var r=e1A.transition;e1A.transition={};try{A(!1),e()}finally{mu=t,e1A.transition=r}}function Vfe(){return Oc().memoizedState}function B0r(A,e,t){var r=f2(A);if(t={lane:r,action:t,hasEagerState:!1,eagerState:null,next:null},jfe(A))Xfe(e,t);else if(t=Sfe(A,e,t,r),t!==null){var i=Kl();QB(t,A,r,i),$fe(t,e,r)}}function E0r(A,e,t){var r=f2(A),i={lane:r,action:t,hasEagerState:!1,eagerState:null,next:null};if(jfe(A))Xfe(e,i);else{var u=A.alternate;if(A.lanes===0&&(u===null||u.lanes===0)&&(u=e.lastRenderedReducer,u!==null))try{var a=e.lastRenderedState,n=u(a,t);if(i.hasEagerState=!0,i.eagerState=n,pB(n,a)){var o=e.interleaved;o===null?(i.next=i,wpA(e)):(i.next=o.next,o.next=i),e.interleaved=i;return}}catch(s){}finally{}t=Sfe(A,e,i,r),t!==null&&(i=Kl(),QB(t,A,r,i),$fe(t,e,r))}}function jfe(A){var e=A.alternate;return A===Ta||e!==null&&e===Ta}function Xfe(A,e){JS=Xq=!0;var t=A.pending;t===null?e.next=e:(e.next=t.next,t.next=e),A.pending=e}function $fe(A,e,t){if((t&4194240)!==0){var r=e.lanes;r&=A.pendingLanes,t|=r,e.lanes=t,lpA(A,t)}}var $q={readContext:Jc,useCallback:X0,useContext:X0,useEffect:X0,useImperativeHandle:X0,useInsertionEffect:X0,useLayoutEffect:X0,useMemo:X0,useReducer:X0,useRef:X0,useState:X0,useDebugValue:X0,useDeferredValue:X0,useTransition:X0,useMutableSource:X0,useSyncExternalStore:X0,useId:X0,unstable_isNewReconciler:!1},d0r={readContext:Jc,useCallback:function(A,e){return fd().memoizedState=[A,e===void 0?null:e],A},useContext:Jc,useEffect:Cpe,useImperativeHandle:function(A,e,t){return t=t!==null&&t!==void 0?t.concat([A]):null,xq(4194308,4,_fe.bind(null,e,A),t)},useLayoutEffect:function(A,e){return xq(4194308,4,A,e)},useInsertionEffect:function(A,e){return xq(4,2,A,e)},useMemo:function(A,e){var t=fd();return e=e===void 0?null:e,A=A(),t.memoizedState=[A,e],A},useReducer:function(A,e,t){var r=fd();return e=t!==void 0?t(e):e,r.memoizedState=r.baseState=e,A={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:A,lastRenderedState:e},r.queue=A,A=A.dispatch=B0r.bind(null,Ta,A),[r.memoizedState,A]},useRef:function(A){var e=fd();return A={current:A},e.memoizedState=A},useState:cpe,useDebugValue:RpA,useDeferredValue:function(A){return fd().memoizedState=A},useTransition:function(){var A=cpe(!1),e=A[0];return A=C0r.bind(null,A[1]),fd().memoizedState=A,[e,A]},useMutableSource:function(){},useSyncExternalStore:function(A,e,t){var r=Ta,i=fd();if(ka){if(t===void 0)throw Error(Et(407));t=t()}else{if(t=e(),Vo===null)throw Error(Et(349));(b2&30)!==0||Mfe(r,e,t)}i.memoizedState=t;var u={value:t,getSnapshot:e};return i.queue=u,Cpe(Yfe.bind(null,r,u,A),[A]),r.flags|=2048,aL(9,Tfe.bind(null,r,u,t,e),void 0,null),t},useId:function(){var A=fd(),e=Vo.identifierPrefix;if(ka){var t=Th,r=Mh;t=(r&~(1<<32-hB(r)-1)).toString(32)+t,e=":"+e+"R"+t,t=iL++,0<t&&(e+="H"+t.toString(32)),e+=":"}else t=c0r++,e=":"+e+"r"+t.toString(32)+":";return A.memoizedState=e},unstable_isNewReconciler:!1},I0r={readContext:Jc,useCallback:qfe,useContext:Jc,useEffect:LpA,useImperativeHandle:Wfe,useInsertionEffect:Ofe,useLayoutEffect:Pfe,useMemo:zfe,useReducer:t1A,useRef:Jfe,useState:function(){return t1A(uL)},useDebugValue:RpA,useDeferredValue:function(A){var e=Oc();return Zfe(e,yo.memoizedState,A)},useTransition:function(){var A=t1A(uL)[0],e=Oc().memoizedState;return[A,e]},useMutableSource:Gfe,useSyncExternalStore:Ufe,useId:Vfe,unstable_isNewReconciler:!1},h0r={readContext:Jc,useCallback:qfe,useContext:Jc,useEffect:LpA,useImperativeHandle:Wfe,useInsertionEffect:Ofe,useLayoutEffect:Pfe,useMemo:zfe,useReducer:r1A,useRef:Jfe,useState:function(){return r1A(uL)},useDebugValue:RpA,useDeferredValue:function(A){var e=Oc();return yo===null?e.memoizedState=A:Zfe(e,yo.memoizedState,A)},useTransition:function(){var A=r1A(uL)[0],e=Oc().memoizedState;return[A,e]},useMutableSource:Gfe,useSyncExternalStore:Ufe,useId:Vfe,unstable_isNewReconciler:!1};function BB(A,e){if(A&&A.defaultProps){e=Ya({},e),A=A.defaultProps;for(var t in A)e[t]===void 0&&(e[t]=A[t]);return e}return e}function H1A(A,e,t,r){e=A.memoizedState,t=t(r,e),t=t===null||t===void 0?e:Ya({},e,t),A.memoizedState=t,A.lanes===0&&(A.updateQueue.baseState=t)}var Cz={isMounted:function(A){return(A=A._reactInternals)?F2(A)===A:!1},enqueueSetState:function(A,e,t){A=A._reactInternals;var r=Kl(),i=f2(A),u=gp(r,i);u.payload=e,t!==void 0&&t!==null&&(u.callback=t),e=p2(A,u,i),e!==null&&(QB(e,A,i,r),kq(e,A,i))},enqueueReplaceState:function(A,e,t){A=A._reactInternals;var r=Kl(),i=f2(A),u=gp(r,i);u.tag=1,u.payload=e,t!==void 0&&t!==null&&(u.callback=t),e=p2(A,u,i),e!==null&&(QB(e,A,i,r),kq(e,A,i))},enqueueForceUpdate:function(A,e){A=A._reactInternals;var t=Kl(),r=f2(A),i=gp(t,r);i.tag=2,e!==void 0&&e!==null&&(i.callback=e),e=p2(A,i,r),e!==null&&(QB(e,A,r,t),kq(e,A,r))}};function Bpe(A,e,t,r,i,u,a){return A=A.stateNode,typeof A.shouldComponentUpdate==="function"?A.shouldComponentUpdate(r,u,a):e.prototype&&e.prototype.isPureReactComponent?!$S(t,r)||!$S(i,u):!0}function A3e(A,e,t){var r=!1,i=Ep,u=e.contextType;return typeof u==="object"&&u!==null?u=Jc(u):(i=Hl(e)?y2:es.current,r=e.contextTypes,u=(r=r!==null&&r!==void 0)?c5(A,i):Ep),e=new e(t,u),A.memoizedState=e.state!==null&&e.state!==void 0?e.state:null,e.updater=Cz,A.stateNode=e,e._reactInternals=A,r&&(A=A.stateNode,A.__reactInternalMemoizedUnmaskedChildContext=i,A.__reactInternalMemoizedMaskedChildContext=u),e}function Epe(A,e,t,r){A=e.state,typeof e.componentWillReceiveProps==="function"&&e.componentWillReceiveProps(t,r),typeof e.UNSAFE_componentWillReceiveProps==="function"&&e.UNSAFE_componentWillReceiveProps(t,r),e.state!==A&&Cz.enqueueReplaceState(e,e.state,null)}function K1A(A,e,t,r){var i=A.stateNode;i.props=t,i.state=A.memoizedState,i.refs={},Lfe(A);var u=e.contextType;typeof u==="object"&&u!==null?i.context=Jc(u):(u=Hl(e)?y2:es.current,i.context=c5(A,u)),i.state=A.memoizedState,u=e.getDerivedStateFromProps,typeof u==="function"&&(H1A(A,e,u,t),i.state=A.memoizedState),typeof e.getDerivedStateFromProps==="function"||typeof i.getSnapshotBeforeUpdate==="function"||typeof i.UNSAFE_componentWillMount!=="function"&&typeof i.componentWillMount!=="function"||(e=i.state,typeof i.componentWillMount==="function"&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount==="function"&&i.UNSAFE_componentWillMount(),e!==i.state&&Cz.enqueueReplaceState(i,i.state,null),Vq(A,t,i,r),i.state=A.memoizedState),typeof i.componentDidMount==="function"&&(A.flags|=4194308)}function d5(A,e){try{var t="",r=e;do t+=Onr(r),r=r.return;while(r);var i=t}catch(u){i=`
Error generating stack: `+u.message+`
`+u.stack}return{value:A,source:e,stack:i,digest:null}}function i1A(A,e,t){return{value:A,source:null,stack:t!=null?t:null,digest:e!=null?e:null}}function J1A(A,e){try{console.error(e.value)}catch(t){setTimeout(function(){throw t})}}var Q0r=typeof WeakMap==="function"?WeakMap:Map;function e3e(A,e,t){t=gp(-1,t),t.tag=3,t.payload={element:null};var r=e.value;return t.callback=function(){ez||(ez=!0,X1A=r),J1A(A,e)},t}function t3e(A,e,t){t=gp(-1,t),t.tag=3;var r=A.type.getDerivedStateFromError;if(typeof r==="function"){var i=e.value;t.payload=function(){return r(i)},t.callback=function(){J1A(A,e)}}var u=A.stateNode;return u!==null&&typeof u.componentDidCatch==="function"&&(t.callback=function(){J1A(A,e),typeof r!=="function"&&(cp===null?cp=new Set([this]):cp.add(this));var a=e.stack;this.componentDidCatch(e.value,{componentStack:a!==null?a:""})}),t}function dpe(A,e,t){var r=A.pingCache;if(r===null){r=A.pingCache=new Q0r;var i=new Set;r.set(e,i)}else i=r.get(e),i===void 0&&(i=new Set,r.set(e,i));i.has(t)||(i.add(t),A=R0r.bind(null,A,e,t),e.then(A,A))}function Ipe(A){do{var e;if(e=A.tag===13)e=A.memoizedState,e=e!==null?e.dehydrated!==null?!0:!1:!0;if(e)return A;A=A.return}while(A!==null);return null}function hpe(A,e,t,r,i){if((A.mode&1)===0)return A===e?A.flags|=65536:(A.flags|=128,t.flags|=131072,t.flags&=-52805,t.tag===1&&(t.alternate===null?t.tag=17:(e=gp(-1,1),e.tag=2,p2(t,e,1))),t.lanes|=1),A;return A.flags|=65536,A.lanes=i,A}var p0r=Jh.ReactCurrentOwner,Tl=!1;function Os(A,e,t,r){e.child=A===null?xfe(e,null,t,r):B5(e,A.child,t,r)}function Qpe(A,e,t,r,i){t=t.render;var u=e.ref;if(s5(e,i),r=xpA(A,e,t,r,u,i),t=SpA(),A!==null&&!Tl)return e.updateQueue=A.updateQueue,e.flags&=-2053,A.lanes&=~i,Kh(A,e,i);return ka&&t&&QpA(e),e.flags|=1,Os(A,e,r,i),e.child}function ppe(A,e,t,r,i){if(A===null){var u=t.type;if(typeof u==="function"&&!HpA(u)&&u.defaultProps===void 0&&t.compare===null&&t.defaultProps===void 0)return e.tag=15,e.type=u,r3e(A,e,u,r,i);return A=Nq(t.type,null,r,e,e.mode,i),A.ref=e.ref,A.return=e,e.child=A}if(u=A.child,(A.lanes&i)===0){var a=u.memoizedProps;if(t=t.compare,t=t!==null?t:$S,t(a,r)&&A.ref===e.ref)return Kh(A,e,i)}return e.flags|=1,A=Cp(u,r),A.ref=e.ref,A.return=e,e.child=A}function r3e(A,e,t,r,i){if(A!==null){var u=A.memoizedProps;if($S(u,r)&&A.ref===e.ref)if(Tl=!1,e.pendingProps=r=u,(A.lanes&i)!==0)(A.flags&131072)!==0&&(Tl=!0);else return e.lanes=A.lanes,Kh(A,e,i)}return O1A(A,e,t,r,i)}function i3e(A,e,t){var r=e.pendingProps,i=r.children,u=A!==null?A.memoizedState:null;if(r.mode==="hidden")if((e.mode&1)===0)e.memoizedState={baseLanes:0,cachePool:null,transitions:null},Vu(i5,Sg),Sg|=t;else{if((t&1073741824)===0)return A=u!==null?u.baseLanes|t:t,e.lanes=e.childLanes=1073741824,e.memoizedState={baseLanes:A,cachePool:null,transitions:null},e.updateQueue=null,Vu(i5,Sg),Sg|=A,null;e.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=u!==null?u.baseLanes:t,Vu(i5,Sg),Sg|=r}else u!==null?(r=u.baseLanes|t,e.memoizedState=null):r=t,Vu(i5,Sg),Sg|=r;return Os(A,e,i,t),e.child}function u3e(A,e){var t=e.ref;if(A===null&&t!==null||A!==null&&A.ref!==t)e.flags|=512,e.flags|=2097152}function O1A(A,e,t,r,i){var u=Hl(t)?y2:es.current;if(u=c5(e,u),s5(e,i),t=xpA(A,e,t,r,u,i),r=SpA(),A!==null&&!Tl)return e.updateQueue=A.updateQueue,e.flags&=-2053,A.lanes&=~i,Kh(A,e,i);return ka&&r&&QpA(e),e.flags|=1,Os(A,e,t,i),e.child}function fpe(A,e,t,r,i){if(Hl(t)){var u=!0;_q(e)}else u=!1;if(s5(e,i),e.stateNode===null)Sq(A,e),A3e(e,t,r),K1A(e,t,r,i),r=!0;else if(A===null){var{stateNode:a,memoizedProps:n}=e;a.props=n;var o=a.context,s=t.contextType;typeof s==="object"&&s!==null?s=Jc(s):(s=Hl(t)?y2:es.current,s=c5(e,s));var l=t.getDerivedStateFromProps,g=typeof l==="function"||typeof a.getSnapshotBeforeUpdate==="function";g||typeof a.UNSAFE_componentWillReceiveProps!=="function"&&typeof a.componentWillReceiveProps!=="function"||(n!==r||o!==s)&&Epe(e,a,r,s),tp=!1;var C=e.memoizedState;a.state=C,Vq(e,r,a,i),o=e.memoizedState,n!==r||C!==o||Yl.current||tp?(typeof l==="function"&&(H1A(e,t,l,r),o=e.memoizedState),(n=tp||Bpe(e,t,n,r,C,o,s))?(g||typeof a.UNSAFE_componentWillMount!=="function"&&typeof a.componentWillMount!=="function"||(typeof a.componentWillMount==="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==="function"&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==="function"&&(e.flags|=4194308)):(typeof a.componentDidMount==="function"&&(e.flags|=4194308),e.memoizedProps=r,e.memoizedState=o),a.props=r,a.state=o,a.context=s,r=n):(typeof a.componentDidMount==="function"&&(e.flags|=4194308),r=!1)}else{a=e.stateNode,Rfe(A,e),n=e.memoizedProps,s=e.type===e.elementType?n:BB(e.type,n),a.props=s,g=e.pendingProps,C=a.context,o=t.contextType,typeof o==="object"&&o!==null?o=Jc(o):(o=Hl(t)?y2:es.current,o=c5(e,o));var B=t.getDerivedStateFromProps;(l=typeof B==="function"||typeof a.getSnapshotBeforeUpdate==="function")||typeof a.UNSAFE_componentWillReceiveProps!=="function"&&typeof a.componentWillReceiveProps!=="function"||(n!==g||C!==o)&&Epe(e,a,r,o),tp=!1,C=e.memoizedState,a.state=C,Vq(e,r,a,i);var E=e.memoizedState;n!==g||C!==E||Yl.current||tp?(typeof B==="function"&&(H1A(e,t,B,r),E=e.memoizedState),(s=tp||Bpe(e,t,s,r,C,E,o)||!1)?(l||typeof a.UNSAFE_componentWillUpdate!=="function"&&typeof a.componentWillUpdate!=="function"||(typeof a.componentWillUpdate==="function"&&a.componentWillUpdate(r,E,o),typeof a.UNSAFE_componentWillUpdate==="function"&&a.UNSAFE_componentWillUpdate(r,E,o)),typeof a.componentDidUpdate==="function"&&(e.flags|=4),typeof a.getSnapshotBeforeUpdate==="function"&&(e.flags|=1024)):(typeof a.componentDidUpdate!=="function"||n===A.memoizedProps&&C===A.memoizedState||(e.flags|=4),typeof a.getSnapshotBeforeUpdate!=="function"||n===A.memoizedProps&&C===A.memoizedState||(e.flags|=1024),e.memoizedProps=r,e.memoizedState=E),a.props=r,a.state=E,a.context=o,r=s):(typeof a.componentDidUpdate!=="function"||n===A.memoizedProps&&C===A.memoizedState||(e.flags|=4),typeof a.getSnapshotBeforeUpdate!=="function"||n===A.memoizedProps&&C===A.memoizedState||(e.flags|=1024),r=!1)}return P1A(A,e,t,r,u,i)}function P1A(A,e,t,r,i,u){u3e(A,e);var a=(e.flags&128)!==0;if(!r&&!a)return i&&ape(e,t,!1),Kh(A,e,u);r=e.stateNode,p0r.current=e;var n=a&&typeof t.getDerivedStateFromError!=="function"?null:r.render();return e.flags|=1,A!==null&&a?(e.child=B5(e,A.child,null,u),e.child=B5(e,null,n,u)):Os(A,e,n,u),e.memoizedState=r.state,i&&ape(e,t,!0),e.child}function a3e(A){var e=A.stateNode;e.pendingContext?upe(A,e.pendingContext,e.pendingContext!==e.context):e.context&&upe(A,e.context,!1),bpA(A,e.containerInfo)}function mpe(A,e,t,r,i){return C5(),fpA(i),e.flags|=256,Os(A,e,t,r),e.child}var _1A={dehydrated:null,treeContext:null,retryLane:0};function W1A(A){return{baseLanes:A,cachePool:null,transitions:null}}function n3e(A,e,t){var r=e.pendingProps,i=Ma.current,u=!1,a=(e.flags&128)!==0,n;if((n=a)||(n=A!==null&&A.memoizedState===null?!1:(i&2)!==0),n)u=!0,e.flags&=-129;else if(A===null||A.memoizedState!==null)i|=1;if(Vu(Ma,i&1),A===null){if(T1A(e),A=e.memoizedState,A!==null&&(A=A.dehydrated,A!==null))return(e.mode&1)===0?e.lanes=1:A.data==="$!"?e.lanes=8:e.lanes=1073741824,null;return a=r.children,A=r.fallback,u?(r=e.mode,u=e.child,a={mode:"hidden",children:a},(r&1)===0&&u!==null?(u.childLanes=0,u.pendingProps=a):u=Iz(a,r,0,null),A=D2(A,r,t,null),u.return=e,A.return=e,u.sibling=A,e.child=u,e.child.memoizedState=W1A(t),e.memoizedState=_1A,A):NpA(e,a)}if(i=A.memoizedState,i!==null&&(n=i.dehydrated,n!==null))return f0r(A,e,a,r,n,i,t);if(u){u=r.fallback,a=e.mode,i=A.child,n=i.sibling;var o={mode:"hidden",children:r.children};return(a&1)===0&&e.child!==i?(r=e.child,r.childLanes=0,r.pendingProps=o,e.deletions=null):(r=Cp(i,o),r.subtreeFlags=i.subtreeFlags&14680064),n!==null?u=Cp(n,u):(u=D2(u,a,t,null),u.flags|=2),u.return=e,r.return=e,r.sibling=u,e.child=r,r=u,u=e.child,a=A.child.memoizedState,a=a===null?W1A(t):{baseLanes:a.baseLanes|t,cachePool:null,transitions:a.transitions},u.memoizedState=a,u.childLanes=A.childLanes&~t,e.memoizedState=_1A,r}return u=A.child,A=u.sibling,r=Cp(u,{mode:"visible",children:r.children}),(e.mode&1)===0&&(r.lanes=t),r.return=e,r.sibling=null,A!==null&&(t=e.deletions,t===null?(e.deletions=[A],e.flags|=16):t.push(A)),e.child=r,e.memoizedState=null,r}function NpA(A,e){return e=Iz({mode:"visible",children:e},A.mode,0,null),e.return=A,A.child=e}function fq(A,e,t,r){return r!==null&&fpA(r),B5(e,A.child,null,t),A=NpA(e,e.pendingProps.children),A.flags|=2,e.memoizedState=null,A}function f0r(A,e,t,r,i,u,a){if(t){if(e.flags&256)return e.flags&=-257,r=i1A(Error(Et(422))),fq(A,e,a,r);if(e.memoizedState!==null)return e.child=A.child,e.flags|=128,null;return u=r.fallback,i=e.mode,r=Iz({mode:"visible",children:r.children},i,0,null),u=D2(u,i,a,null),u.flags|=2,r.return=e,u.return=e,r.sibling=u,e.child=r,(e.mode&1)!==0&&B5(e,A.child,null,a),e.child.memoizedState=W1A(a),e.memoizedState=_1A,u}if((e.mode&1)===0)return fq(A,e,a,null);if(i.data==="$!"){if(r=i.nextSibling&&i.nextSibling.dataset,r)var n=r.dgst;return r=n,u=Error(Et(419)),r=i1A(u,r,void 0),fq(A,e,a,r)}if(n=(a&A.childLanes)!==0,Tl||n){if(r=Vo,r!==null){switch(a&-a){case 4:i=2;break;case 16:i=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:i=32;break;case 536870912:i=268435456;break;default:i=0}i=(i&(r.suspendedLanes|a))!==0?0:i,i!==0&&i!==u.retryLane&&(u.retryLane=i,Hh(A,i),QB(r,A,i,-1))}return YpA(),r=i1A(Error(Et(421))),fq(A,e,a,r)}if(i.data==="$?")return e.flags|=128,e.child=A.child,e=N0r.bind(null,A),i._reactRetry=e,null;return A=u.treeContext,Lg=lp(i.nextSibling),Rg=e,ka=!0,dB=null,A!==null&&(Yc[Hc++]=Mh,Yc[Hc++]=Th,Yc[Hc++]=w2,Mh=A.id,Th=A.overflow,w2=e),e=NpA(e,r.children),e.flags|=4096,e}function Dpe(A,e,t){A.lanes|=e;var r=A.alternate;r!==null&&(r.lanes|=e),Y1A(A.return,e,t)}function u1A(A,e,t,r,i){var u=A.memoizedState;u===null?A.memoizedState={isBackwards:e,rendering:null,renderingStartTime:0,last:r,tail:t,tailMode:i}:(u.isBackwards=e,u.rendering=null,u.renderingStartTime=0,u.last=r,u.tail=t,u.tailMode=i)}function o3e(A,e,t){var r=e.pendingProps,i=r.revealOrder,u=r.tail;if(Os(A,e,r.children,t),r=Ma.current,(r&2)!==0)r=r&1|2,e.flags|=128;else{if(A!==null&&(A.flags&128)!==0)A:for(A=e.child;A!==null;){if(A.tag===13)A.memoizedState!==null&&Dpe(A,t,e);else if(A.tag===19)Dpe(A,t,e);else if(A.child!==null){A.child.return=A,A=A.child;continue}if(A===e)break A;for(;A.sibling===null;){if(A.return===null||A.return===e)break A;A=A.return}A.sibling.return=A.return,A=A.sibling}r&=1}if(Vu(Ma,r),(e.mode&1)===0)e.memoizedState=null;else switch(i){case"forwards":t=e.child;for(i=null;t!==null;)A=t.alternate,A!==null&&jq(A)===null&&(i=t),t=t.sibling;t=i,t===null?(i=e.child,e.child=null):(i=t.sibling,t.sibling=null),u1A(e,!1,i,t,u);break;case"backwards":t=null,i=e.child;for(e.child=null;i!==null;){if(A=i.alternate,A!==null&&jq(A)===null){e.child=i;break}A=i.sibling,i.sibling=t,t=i,i=A}u1A(e,!0,t,null,u);break;case"together":u1A(e,!1,null,null,void 0);break;default:e.memoizedState=null}return e.child}function Sq(A,e){(e.mode&1)===0&&A!==null&&(A.alternate=null,e.alternate=null,e.flags|=2)}function Kh(A,e,t){if(A!==null&&(e.dependencies=A.dependencies),v2|=e.lanes,(t&e.childLanes)===0)return null;if(A!==null&&e.child!==A.child)throw Error(Et(153));if(e.child!==null){A=e.child,t=Cp(A,A.pendingProps),e.child=t;for(t.return=e;A.sibling!==null;)A=A.sibling,t=t.sibling=Cp(A,A.pendingProps),t.return=e;t.sibling=null}return e.child}function m0r(A,e,t){switch(e.tag){case 3:a3e(e),C5();break;case 5:Nfe(e);break;case 1:Hl(e.type)&&_q(e);break;case 4:bpA(e,e.stateNode.containerInfo);break;case 10:var r=e.type._context,i=e.memoizedProps.value;Vu(zq,r._currentValue),r._currentValue=i;break;case 13:if(r=e.memoizedState,r!==null){if(r.dehydrated!==null)return Vu(Ma,Ma.current&1),e.flags|=128,null;if((t&e.child.childLanes)!==0)return n3e(A,e,t);return Vu(Ma,Ma.current&1),A=Kh(A,e,t),A!==null?A.sibling:null}Vu(Ma,Ma.current&1);break;case 19:if(r=(t&e.childLanes)!==0,(A.flags&128)!==0){if(r)return o3e(A,e,t);e.flags|=128}if(i=e.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),Vu(Ma,Ma.current),r)break;else return null;case 22:case 23:return e.lanes=0,i3e(A,e,t)}return Kh(A,e,t)}var s3e,q1A,l3e,g3e;s3e=function(A,e){for(var t=e.child;t!==null;){if(t.tag===5||t.tag===6)A.appendChild(t.stateNode);else if(t.tag!==4&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return;t=t.return}t.sibling.return=t.return,t=t.sibling}};q1A=function(){};l3e=function(A,e,t,r){var i=A.memoizedProps;if(i!==r){A=e.stateNode,Q2(yd.current);var u=null;switch(t){case"input":i=C1A(A,i),r=C1A(A,r),u=[];break;case"select":i=Ya({},i,{value:void 0}),r=Ya({},r,{value:void 0}),u=[];break;case"textarea":i=d1A(A,i),r=d1A(A,r),u=[];break;default:typeof i.onClick!=="function"&&typeof r.onClick==="function"&&(A.onclick=Oq)}h1A(t,r);var a;t=null;for(s in i)if(!r.hasOwnProperty(s)&&i.hasOwnProperty(s)&&i[s]!=null)if(s==="style"){var n=i[s];for(a in n)n.hasOwnProperty(a)&&(t||(t={}),t[a]="")}else s!=="dangerouslySetInnerHTML"&&s!=="children"&&s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(WS.hasOwnProperty(s)?u||(u=[]):(u=u||[]).push(s,null));for(s in r){var o=r[s];if(n=i!=null?i[s]:void 0,r.hasOwnProperty(s)&&o!==n&&(o!=null||n!=null))if(s==="style")if(n){for(a in n)!n.hasOwnProperty(a)||o&&o.hasOwnProperty(a)||(t||(t={}),t[a]="");for(a in o)o.hasOwnProperty(a)&&n[a]!==o[a]&&(t||(t={}),t[a]=o[a])}else t||(u||(u=[]),u.push(s,t)),t=o;else s==="dangerouslySetInnerHTML"?(o=o?o.__html:void 0,n=n?n.__html:void 0,o!=null&&n!==o&&(u=u||[]).push(s,o)):s==="children"?typeof o!=="string"&&typeof o!=="number"||(u=u||[]).push(s,""+o):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&(WS.hasOwnProperty(s)?(o!=null&&s==="onScroll"&&sa("scroll",A),u||n===o||(u=[])):(u=u||[]).push(s,o))}t&&(u=u||[]).push("style",t);var s=u;if(e.updateQueue=s)e.flags|=4}};g3e=function(A,e,t,r){t!==r&&(e.flags|=4)};function bS(A,e){if(!ka)switch(A.tailMode){case"hidden":e=A.tail;for(var t=null;e!==null;)e.alternate!==null&&(t=e),e=e.sibling;t===null?A.tail=null:t.sibling=null;break;case"collapsed":t=A.tail;for(var r=null;t!==null;)t.alternate!==null&&(r=t),t=t.sibling;r===null?e||A.tail===null?A.tail=null:A.tail.sibling=null:r.sibling=null}}function $0(A){var e=A.alternate!==null&&A.alternate.child===A.child,t=0,r=0;if(e)for(var i=A.child;i!==null;)t|=i.lanes|i.childLanes,r|=i.subtreeFlags&14680064,r|=i.flags&14680064,i.return=A,i=i.sibling;else for(i=A.child;i!==null;)t|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=A,i=i.sibling;return A.subtreeFlags|=r,A.childLanes=t,e}function D0r(A,e,t){var r=e.pendingProps;switch(ppA(e),e.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return $0(e),null;case 1:return Hl(e.type)&&Pq(),$0(e),null;case 3:if(r=e.stateNode,E5(),la(Yl),la(es),kpA(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),A===null||A.child===null)Qq(e)?e.flags|=4:A===null||A.memoizedState.isDehydrated&&(e.flags&256)===0||(e.flags|=1024,dB!==null&&(epA(dB),dB=null));return q1A(A,e),$0(e),null;case 5:vpA(e);var i=Q2(rL.current);if(t=e.type,A!==null&&e.stateNode!=null)l3e(A,e,t,r,i),A.ref!==e.ref&&(e.flags|=512,e.flags|=2097152);else{if(!r){if(e.stateNode===null)throw Error(Et(166));return $0(e),null}if(A=Q2(yd.current),Qq(e)){r=e.stateNode,t=e.type;var u=e.memoizedProps;switch(r[md]=e,r[eL]=u,A=(e.mode&1)!==0,t){case"dialog":sa("cancel",r),sa("close",r);break;case"iframe":case"object":case"embed":sa("load",r);break;case"video":case"audio":for(i=0;i<GS.length;i++)sa(GS[i],r);break;case"source":sa("error",r);break;case"img":case"image":case"link":sa("error",r),sa("load",r);break;case"details":sa("toggle",r);break;case"input":R1e(r,u),sa("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!u.multiple},sa("invalid",r);break;case"textarea":G1e(r,u),sa("invalid",r)}h1A(t,u),i=null;for(var a in u)if(u.hasOwnProperty(a)){var n=u[a];a==="children"?typeof n==="string"?r.textContent!==n&&(u.suppressHydrationWarning!==!0&&hq(r.textContent,n,A),i=["children",n]):typeof n==="number"&&r.textContent!==""+n&&(u.suppressHydrationWarning!==!0&&hq(r.textContent,n,A),i=["children",""+n]):WS.hasOwnProperty(a)&&n!=null&&a==="onScroll"&&sa("scroll",r)}switch(t){case"input":lq(r),N1e(r,u,!0);break;case"textarea":lq(r),U1e(r);break;case"select":case"option":break;default:typeof u.onClick==="function"&&(r.onclick=Oq)}r=i,e.updateQueue=r,r!==null&&(e.flags|=4)}else{a=i.nodeType===9?i:i.ownerDocument,A==="http://www.w3.org/1999/xhtml"&&(A=Kpe(t)),A==="http://www.w3.org/1999/xhtml"?t==="script"?(A=a.createElement("div"),A.innerHTML="<script><\/script>",A=A.removeChild(A.firstChild)):typeof r.is==="string"?A=a.createElement(t,{is:r.is}):(A=a.createElement(t),t==="select"&&(a=A,r.multiple?a.multiple=!0:r.size&&(a.size=r.size))):A=a.createElementNS(A,t),A[md]=e,A[eL]=r,s3e(A,e,!1,!1),e.stateNode=A;A:{switch(a=Q1A(t,r),t){case"dialog":sa("cancel",A),sa("close",A),i=r;break;case"iframe":case"object":case"embed":sa("load",A),i=r;break;case"video":case"audio":for(i=0;i<GS.length;i++)sa(GS[i],A);i=r;break;case"source":sa("error",A),i=r;break;case"img":case"image":case"link":sa("error",A),sa("load",A),i=r;break;case"details":sa("toggle",A),i=r;break;case"input":R1e(A,r),i=C1A(A,r),sa("invalid",A);break;case"option":i=r;break;case"select":A._wrapperState={wasMultiple:!!r.multiple},i=Ya({},r,{value:void 0}),sa("invalid",A);break;case"textarea":G1e(A,r),i=d1A(A,r),sa("invalid",A);break;default:i=r}h1A(t,i),n=i;for(u in n)if(n.hasOwnProperty(u)){var o=n[u];u==="style"?Ppe(A,o):u==="dangerouslySetInnerHTML"?(o=o?o.__html:void 0,o!=null&&Jpe(A,o)):u==="children"?typeof o==="string"?(t!=="textarea"||o!=="")&&qS(A,o):typeof o==="number"&&qS(A,""+o):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(WS.hasOwnProperty(u)?o!=null&&u==="onScroll"&&sa("scroll",A):o!=null&&ipA(A,u,o,a))}switch(t){case"input":lq(A),N1e(A,r,!1);break;case"textarea":lq(A),U1e(A);break;case"option":r.value!=null&&A.setAttribute("value",""+Bp(r.value));break;case"select":A.multiple=!!r.multiple,u=r.value,u!=null?u5(A,!!r.multiple,u,!1):r.defaultValue!=null&&u5(A,!!r.multiple,r.defaultValue,!0);break;default:typeof i.onClick==="function"&&(A.onclick=Oq)}switch(t){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break A;case"img":r=!0;break A;default:r=!1}}r&&(e.flags|=4)}e.ref!==null&&(e.flags|=512,e.flags|=2097152)}return $0(e),null;case 6:if(A&&e.stateNode!=null)g3e(A,e,A.memoizedProps,r);else{if(typeof r!=="string"&&e.stateNode===null)throw Error(Et(166));if(t=Q2(rL.current),Q2(yd.current),Qq(e)){if(r=e.stateNode,t=e.memoizedProps,r[md]=e,u=r.nodeValue!==t){if(A=Rg,A!==null)switch(A.tag){case 3:hq(r.nodeValue,t,(A.mode&1)!==0);break;case 5:A.memoizedProps.suppressHydrationWarning!==!0&&hq(r.nodeValue,t,(A.mode&1)!==0)}}u&&(e.flags|=4)}else r=(t.nodeType===9?t:t.ownerDocument).createTextNode(r),r[md]=e,e.stateNode=r}return $0(e),null;case 13:if(la(Ma),r=e.memoizedState,A===null||A.memoizedState!==null&&A.memoizedState.dehydrated!==null){if(ka&&Lg!==null&&(e.mode&1)!==0&&(e.flags&128)===0)kfe(),C5(),e.flags|=98560,u=!1;else if(u=Qq(e),r!==null&&r.dehydrated!==null){if(A===null){if(!u)throw Error(Et(318));if(u=e.memoizedState,u=u!==null?u.dehydrated:null,!u)throw Error(Et(317));u[md]=e}else C5(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;$0(e),u=!1}else dB!==null&&(epA(dB),dB=null),u=!0;if(!u)return e.flags&65536?e:null}if((e.flags&128)!==0)return e.lanes=t,e;return r=r!==null,r!==(A!==null&&A.memoizedState!==null)&&r&&(e.child.flags|=8192,(e.mode&1)!==0&&(A===null||(Ma.current&1)!==0?wo===0&&(wo=3):YpA())),e.updateQueue!==null&&(e.flags|=4),$0(e),null;case 4:return E5(),q1A(A,e),A===null&&t0r(e.stateNode.containerInfo),$0(e),null;case 10:return ypA(e.type._context),$0(e),null;case 17:return Hl(e.type)&&Pq(),$0(e),null;case 19:if(la(Ma),u=e.memoizedState,u===null)return $0(e),null;if(r=(e.flags&128)!==0,a=u.rendering,a===null)if(r)bS(u,!1);else{if(wo!==0||A!==null&&(A.flags&128)!==0)for(A=e.child;A!==null;){if(a=jq(A),a!==null){e.flags|=128,bS(u,!1),r=a.updateQueue,r!==null&&(e.updateQueue=r,e.flags|=4),e.subtreeFlags=0,r=t;for(t=e.child;t!==null;)u=t,A=r,u.flags&=14680066,a=u.alternate,a===null?(u.childLanes=0,u.lanes=A,u.child=null,u.subtreeFlags=0,u.memoizedProps=null,u.memoizedState=null,u.updateQueue=null,u.dependencies=null,u.stateNode=null):(u.childLanes=a.childLanes,u.lanes=a.lanes,u.child=a.child,u.subtreeFlags=0,u.deletions=null,u.memoizedProps=a.memoizedProps,u.memoizedState=a.memoizedState,u.updateQueue=a.updateQueue,u.type=a.type,A=a.dependencies,u.dependencies=A===null?null:{lanes:A.lanes,firstContext:A.firstContext}),t=t.sibling;return Vu(Ma,Ma.current&1|2),e.child}A=A.sibling}u.tail!==null&&wn()>I5&&(e.flags|=128,r=!0,bS(u,!1),e.lanes=4194304)}else{if(!r)if(A=jq(a),A!==null){if(e.flags|=128,r=!0,t=A.updateQueue,t!==null&&(e.updateQueue=t,e.flags|=4),bS(u,!0),u.tail===null&&u.tailMode==="hidden"&&!a.alternate&&!ka)return $0(e),null}else 2*wn()-u.renderingStartTime>I5&&t!==1073741824&&(e.flags|=128,r=!0,bS(u,!1),e.lanes=4194304);u.isBackwards?(a.sibling=e.child,e.child=a):(t=u.last,t!==null?t.sibling=a:e.child=a,u.last=a)}if(u.tail!==null)return e=u.tail,u.rendering=e,u.tail=e.sibling,u.renderingStartTime=wn(),e.sibling=null,t=Ma.current,Vu(Ma,r?t&1|2:t&1),e;return $0(e),null;case 22:case 23:return TpA(),r=e.memoizedState!==null,A!==null&&A.memoizedState!==null!==r&&(e.flags|=8192),r&&(e.mode&1)!==0?(Sg&1073741824)!==0&&($0(e),e.subtreeFlags&6&&(e.flags|=8192)):$0(e),null;case 24:return null;case 25:return null}throw Error(Et(156,e.tag))}function y0r(A,e){switch(ppA(e),e.tag){case 1:return Hl(e.type)&&Pq(),A=e.flags,A&65536?(e.flags=A&-65537|128,e):null;case 3:return E5(),la(Yl),la(es),kpA(),A=e.flags,(A&65536)!==0&&(A&128)===0?(e.flags=A&-65537|128,e):null;case 5:return vpA(e),null;case 13:if(la(Ma),A=e.memoizedState,A!==null&&A.dehydrated!==null){if(e.alternate===null)throw Error(Et(340));C5()}return A=e.flags,A&65536?(e.flags=A&-65537|128,e):null;case 19:return la(Ma),null;case 4:return E5(),null;case 10:return ypA(e.type._context),null;case 22:case 23:return TpA(),null;case 24:return null;default:return null}}var mq=!1,As=!1,w0r=typeof WeakSet==="function"?WeakSet:Set,Tt=null;function r5(A,e){var t=A.ref;if(t!==null)if(typeof t==="function")try{t(null)}catch(r){tn(A,e,r)}else t.current=null}function z1A(A,e,t){try{t()}catch(r){tn(A,e,r)}}var ype=!1;function b0r(A,e){if(S1A=Hq,A=Efe(),IpA(A)){if("selectionStart"in A)var t={start:A.selectionStart,end:A.selectionEnd};else A:{t=(t=A.ownerDocument)&&t.defaultView||window;var r=t.getSelection&&t.getSelection();if(r&&r.rangeCount!==0){t=r.anchorNode;var i=r.anchorOffset,u=r.focusNode;r=r.focusOffset;try{t.nodeType,u.nodeType}catch(m){t=null;break A}var a=0,n=-1,o=-1,s=0,l=0,g=A,C=null;e:for(;;){for(var B;;){if(g!==t||i!==0&&g.nodeType!==3||(n=a+i),g!==u||r!==0&&g.nodeType!==3||(o=a+r),g.nodeType===3&&(a+=g.nodeValue.length),(B=g.firstChild)===null)break;C=g,g=B}for(;;){if(g===A)break e;if(C===t&&++s===i&&(n=a),C===u&&++l===r&&(o=a),(B=g.nextSibling)!==null)break;g=C,C=g.parentNode}g=B}t=n===-1||o===-1?null:{start:n,end:o}}else t=null}t=t||{start:0,end:0}}else t=null;L1A={focusedElem:A,selectionRange:t},Hq=!1;for(Tt=e;Tt!==null;)if(e=Tt,A=e.child,(e.subtreeFlags&1028)!==0&&A!==null)A.return=e,Tt=A;else for(;Tt!==null;){e=Tt;try{var E=e.alternate;if((e.flags&1024)!==0)switch(e.tag){case 0:case 11:case 15:break;case 1:if(E!==null){var d=E.memoizedProps,I=E.memoizedState,h=e.stateNode,Q=h.getSnapshotBeforeUpdate(e.elementType===e.type?d:BB(e.type,d),I);h.__reactInternalSnapshotBeforeUpdate=Q}break;case 3:var p=e.stateNode.containerInfo;p.nodeType===1?p.textContent="":p.nodeType===9&&p.documentElement&&p.removeChild(p.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(Et(163))}}catch(m){tn(e,e.return,m)}if(A=e.sibling,A!==null){A.return=e.return,Tt=A;break}Tt=e.return}return E=ype,ype=!1,E}function OS(A,e,t){var r=e.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&A)===A){var u=i.destroy;i.destroy=void 0,u!==void 0&&z1A(e,t,u)}i=i.next}while(i!==r)}}function Bz(A,e){if(e=e.updateQueue,e=e!==null?e.lastEffect:null,e!==null){var t=e=e.next;do{if((t.tag&A)===A){var r=t.create;t.destroy=r()}t=t.next}while(t!==e)}}function Z1A(A){var e=A.ref;if(e!==null){var t=A.stateNode;switch(A.tag){case 5:A=t;break;default:A=t}typeof e==="function"?e(A):e.current=A}}function c3e(A){var e=A.alternate;e!==null&&(A.alternate=null,c3e(e)),A.child=null,A.deletions=null,A.sibling=null,A.tag===5&&(e=A.stateNode,e!==null&&(delete e[md],delete e[eL],delete e[G1A],delete e[o0r],delete e[s0r])),A.stateNode=null,A.return=null,A.dependencies=null,A.memoizedProps=null,A.memoizedState=null,A.pendingProps=null,A.stateNode=null,A.updateQueue=null}function C3e(A){return A.tag===5||A.tag===3||A.tag===4}function wpe(A){A:for(;;){for(;A.sibling===null;){if(A.return===null||C3e(A.return))return null;A=A.return}A.sibling.return=A.return;for(A=A.sibling;A.tag!==5&&A.tag!==6&&A.tag!==18;){if(A.flags&2)continue A;if(A.child===null||A.tag===4)continue A;else A.child.return=A,A=A.child}if(!(A.flags&2))return A.stateNode}}function V1A(A,e,t){var r=A.tag;if(r===5||r===6)A=A.stateNode,e?t.nodeType===8?t.parentNode.insertBefore(A,e):t.insertBefore(A,e):(t.nodeType===8?(e=t.parentNode,e.insertBefore(A,t)):(e=t,e.appendChild(A)),t=t._reactRootContainer,t!==null&&t!==void 0||e.onclick!==null||(e.onclick=Oq));else if(r!==4&&(A=A.child,A!==null))for(V1A(A,e,t),A=A.sibling;A!==null;)V1A(A,e,t),A=A.sibling}function j1A(A,e,t){var r=A.tag;if(r===5||r===6)A=A.stateNode,e?t.insertBefore(A,e):t.appendChild(A);else if(r!==4&&(A=A.child,A!==null))for(j1A(A,e,t),A=A.sibling;A!==null;)j1A(A,e,t),A=A.sibling}var w0=null,EB=!1;function Ap(A,e,t){for(t=t.child;t!==null;)B3e(A,e,t),t=t.sibling}function B3e(A,e,t){if(Dd&&typeof Dd.onCommitFiberUnmount==="function")try{Dd.onCommitFiberUnmount(iz,t)}catch(n){}switch(t.tag){case 5:As||r5(t,e);case 6:var r=w0,i=EB;w0=null,Ap(A,e,t),w0=r,EB=i,w0!==null&&(EB?(A=w0,t=t.stateNode,A.nodeType===8?A.parentNode.removeChild(t):A.removeChild(t)):w0.removeChild(t.stateNode));break;case 18:w0!==null&&(EB?(A=w0,t=t.stateNode,A.nodeType===8?X4A(A.parentNode,t):A.nodeType===1&&X4A(A,t),jS(A)):X4A(w0,t.stateNode));break;case 4:r=w0,i=EB,w0=t.stateNode.containerInfo,EB=!0,Ap(A,e,t),w0=r,EB=i;break;case 0:case 11:case 14:case 15:if(!As&&(r=t.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var u=i,a=u.destroy;u=u.tag,a!==void 0&&((u&2)!==0?z1A(t,e,a):(u&4)!==0&&z1A(t,e,a)),i=i.next}while(i!==r)}Ap(A,e,t);break;case 1:if(!As&&(r5(t,e),r=t.stateNode,typeof r.componentWillUnmount==="function"))try{r.props=t.memoizedProps,r.state=t.memoizedState,r.componentWillUnmount()}catch(n){tn(t,e,n)}Ap(A,e,t);break;case 21:Ap(A,e,t);break;case 22:t.mode&1?(As=(r=As)||t.memoizedState!==null,Ap(A,e,t),As=r):Ap(A,e,t);break;default:Ap(A,e,t)}}function bpe(A){var e=A.updateQueue;if(e!==null){A.updateQueue=null;var t=A.stateNode;t===null&&(t=A.stateNode=new w0r),e.forEach(function(r){var i=G0r.bind(null,A,r);t.has(r)||(t.add(r),r.then(i,i))})}}function CB(A,e){var t=e.deletions;if(t!==null)for(var r=0;r<t.length;r++){var i=t[r];try{var u=A,a=e,n=a;A:for(;n!==null;){switch(n.tag){case 5:w0=n.stateNode,EB=!1;break A;case 3:w0=n.stateNode.containerInfo,EB=!0;break A;case 4:w0=n.stateNode.containerInfo,EB=!0;break A}n=n.return}if(w0===null)throw Error(Et(160));B3e(u,a,i),w0=null,EB=!1;var o=i.alternate;o!==null&&(o.return=null),i.return=null}catch(s){tn(i,e,s)}}if(e.subtreeFlags&12854)for(e=e.child;e!==null;)E3e(e,A),e=e.sibling}function E3e(A,e){var{alternate:t,flags:r}=A;switch(A.tag){case 0:case 11:case 14:case 15:if(CB(e,A),pd(A),r&4){try{OS(3,A,A.return),Bz(3,A)}catch(d){tn(A,A.return,d)}try{OS(5,A,A.return)}catch(d){tn(A,A.return,d)}}break;case 1:CB(e,A),pd(A),r&512&&t!==null&&r5(t,t.return);break;case 5:if(CB(e,A),pd(A),r&512&&t!==null&&r5(t,t.return),A.flags&32){var i=A.stateNode;try{qS(i,"")}catch(d){tn(A,A.return,d)}}if(r&4&&(i=A.stateNode,i!=null)){var u=A.memoizedProps,a=t!==null?t.memoizedProps:u,{type:n,updateQueue:o}=A;if(A.updateQueue=null,o!==null)try{n==="input"&&u.type==="radio"&&u.name!=null&&Ype(i,u),Q1A(n,a);var s=Q1A(n,u);for(a=0;a<o.length;a+=2){var l=o[a],g=o[a+1];l==="style"?Ppe(i,g):l==="dangerouslySetInnerHTML"?Jpe(i,g):l==="children"?qS(i,g):ipA(i,l,g,s)}switch(n){case"input":B1A(i,u);break;case"textarea":Hpe(i,u);break;case"select":var C=i._wrapperState.wasMultiple;i._wrapperState.wasMultiple=!!u.multiple;var B=u.value;B!=null?u5(i,!!u.multiple,B,!1):C!==!!u.multiple&&(u.defaultValue!=null?u5(i,!!u.multiple,u.defaultValue,!0):u5(i,!!u.multiple,u.multiple?[]:"",!1))}i[eL]=u}catch(d){tn(A,A.return,d)}}break;case 6:if(CB(e,A),pd(A),r&4){if(A.stateNode===null)throw Error(Et(162));i=A.stateNode,u=A.memoizedProps;try{i.nodeValue=u}catch(d){tn(A,A.return,d)}}break;case 3:if(CB(e,A),pd(A),r&4&&t!==null&&t.memoizedState.isDehydrated)try{jS(e.containerInfo)}catch(d){tn(A,A.return,d)}break;case 4:CB(e,A),pd(A);break;case 13:CB(e,A),pd(A),i=A.child,i.flags&8192&&(u=i.memoizedState!==null,i.stateNode.isHidden=u,!u||i.alternate!==null&&i.alternate.memoizedState!==null||(MpA=wn())),r&4&&bpe(A);break;case 22:if(l=t!==null&&t.memoizedState!==null,A.mode&1?(As=(s=As)||l,CB(e,A),As=s):CB(e,A),pd(A),r&8192){if(s=A.memoizedState!==null,(A.stateNode.isHidden=s)&&!l&&(A.mode&1)!==0)for(Tt=A,l=A.child;l!==null;){for(g=Tt=l;Tt!==null;){switch(C=Tt,B=C.child,C.tag){case 0:case 11:case 14:case 15:OS(4,C,C.return);break;case 1:r5(C,C.return);var E=C.stateNode;if(typeof E.componentWillUnmount==="function"){r=C,t=C.return;try{e=r,E.props=e.memoizedProps,E.state=e.memoizedState,E.componentWillUnmount()}catch(d){tn(r,t,d)}}break;case 5:r5(C,C.return);break;case 22:if(C.memoizedState!==null){kpe(g);continue}}B!==null?(B.return=C,Tt=B):kpe(g)}l=l.sibling}A:for(l=null,g=A;;){if(g.tag===5){if(l===null){l=g;try{i=g.stateNode,s?(u=i.style,typeof u.setProperty==="function"?u.setProperty("display","none","important"):u.display="none"):(n=g.stateNode,o=g.memoizedProps.style,a=o!==void 0&&o!==null&&o.hasOwnProperty("display")?o.display:null,n.style.display=Ope("display",a))}catch(d){tn(A,A.return,d)}}}else if(g.tag===6){if(l===null)try{g.stateNode.nodeValue=s?"":g.memoizedProps}catch(d){tn(A,A.return,d)}}else if((g.tag!==22&&g.tag!==23||g.memoizedState===null||g===A)&&g.child!==null){g.child.return=g,g=g.child;continue}if(g===A)break A;for(;g.sibling===null;){if(g.return===null||g.return===A)break A;l===g&&(l=null),g=g.return}l===g&&(l=null),g.sibling.return=g.return,g=g.sibling}}break;case 19:CB(e,A),pd(A),r&4&&bpe(A);break;case 21:break;default:CB(e,A),pd(A)}}function pd(A){var e=A.flags;if(e&2){try{A:{for(var t=A.return;t!==null;){if(C3e(t)){var r=t;break A}t=t.return}throw Error(Et(160))}switch(r.tag){case 5:var i=r.stateNode;r.flags&32&&(qS(i,""),r.flags&=-33);var u=wpe(A);j1A(A,u,i);break;case 3:case 4:var a=r.stateNode.containerInfo,n=wpe(A);V1A(A,n,a);break;default:throw Error(Et(161))}}catch(o){tn(A,A.return,o)}A.flags&=-3}e&4096&&(A.flags&=-4097)}function v0r(A,e,t){Tt=A,d3e(A,e,t)}function d3e(A,e,t){for(var r=(A.mode&1)!==0;Tt!==null;){var i=Tt,u=i.child;if(i.tag===22&&r){var a=i.memoizedState!==null||mq;if(!a){var n=i.alternate,o=n!==null&&n.memoizedState!==null||As;n=mq;var s=As;if(mq=a,(As=o)&&!s)for(Tt=i;Tt!==null;)a=Tt,o=a.child,a.tag===22&&a.memoizedState!==null?Fpe(i):o!==null?(o.return=a,Tt=o):Fpe(i);for(;u!==null;)Tt=u,d3e(u,e,t),u=u.sibling;Tt=i,mq=n,As=s}vpe(A,e,t)}else(i.subtreeFlags&8772)!==0&&u!==null?(u.return=i,Tt=u):vpe(A,e,t)}}function vpe(A){for(;Tt!==null;){var e=Tt;if((e.flags&8772)!==0){var t=e.alternate;try{if((e.flags&8772)!==0)switch(e.tag){case 0:case 11:case 15:As||Bz(5,e);break;case 1:var r=e.stateNode;if(e.flags&4&&!As)if(t===null)r.componentDidMount();else{var i=e.elementType===e.type?t.memoizedProps:BB(e.type,t.memoizedProps);r.componentDidUpdate(i,t.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var u=e.updateQueue;u!==null&&gpe(e,u,r);break;case 3:var a=e.updateQueue;if(a!==null){if(t=null,e.child!==null)switch(e.child.tag){case 5:t=e.child.stateNode;break;case 1:t=e.child.stateNode}gpe(e,a,t)}break;case 5:var n=e.stateNode;if(t===null&&e.flags&4){t=n;var o=e.memoizedProps;switch(e.type){case"button":case"input":case"select":case"textarea":o.autoFocus&&t.focus();break;case"img":o.src&&(t.src=o.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(e.memoizedState===null){var s=e.alternate;if(s!==null){var l=s.memoizedState;if(l!==null){var g=l.dehydrated;g!==null&&jS(g)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(Et(163))}As||e.flags&512&&Z1A(e)}catch(C){tn(e,e.return,C)}}if(e===A){Tt=null;break}if(t=e.sibling,t!==null){t.return=e.return,Tt=t;break}Tt=e.return}}function kpe(A){for(;Tt!==null;){var e=Tt;if(e===A){Tt=null;break}var t=e.sibling;if(t!==null){t.return=e.return,Tt=t;break}Tt=e.return}}function Fpe(A){for(;Tt!==null;){var e=Tt;try{switch(e.tag){case 0:case 11:case 15:var t=e.return;try{Bz(4,e)}catch(o){tn(e,t,o)}break;case 1:var r=e.stateNode;if(typeof r.componentDidMount==="function"){var i=e.return;try{r.componentDidMount()}catch(o){tn(e,i,o)}}var u=e.return;try{Z1A(e)}catch(o){tn(e,u,o)}break;case 5:var a=e.return;try{Z1A(e)}catch(o){tn(e,a,o)}}}catch(o){tn(e,e.return,o)}if(e===A){Tt=null;break}var n=e.sibling;if(n!==null){n.return=e.return,Tt=n;break}Tt=e.return}}var k0r=Math.ceil,{ReactCurrentDispatcher:Az,ReactCurrentOwner:GpA,ReactCurrentBatchConfig:Kc}=Jh,_i=0,Vo=null,Pn=null,b0=0,Sg=0,i5=Ip(0),wo=0,nL=null,v2=0,Ez=0,UpA=0,PS=null,Ml=null,MpA=0,I5=1/0,Gh=null,ez=!1,X1A=null,cp=null,Dq=!1,ap=null,tz=0,_S=0,$1A=null,Lq=-1,Rq=0;function Kl(){return(_i&6)!==0?wn():Lq!==-1?Lq:Lq=wn()}function f2(A){if((A.mode&1)===0)return 1;if((_i&2)!==0&&b0!==0)return b0&-b0;if(g0r.transition!==null)return Rq===0&&(Rq=$pe()),Rq;if(A=mu,A!==0)return A;return A=window.event,A=A===void 0?16:afe(A.type),A}function QB(A,e,t,r){if(50<_S)throw _S=0,$1A=null,Error(Et(185));if(uz(A,t,r),(_i&2)===0||A!==Vo)A===Vo&&((_i&2)===0&&(Ez|=t),wo===4&&ip(A,b0)),Ng(A,r),t===1&&_i===0&&(e.mode&1)===0&&(I5=wn()+500,gz&&hp())}function Ng(A,e){var t=A.callbackNode;gor(A,e);var r=Yq(A,A===Vo?b0:0);if(r===0)t!==null&&Y1e(t),A.callbackNode=null,A.callbackPriority=0;else if(e=r&-r,A.callbackPriority!==e){if(t!=null&&Y1e(t),e===1)A.tag===0?l0r(xpe.bind(null,A)):wfe(xpe.bind(null,A)),a0r(function(){(_i&6)===0&&hp()}),t=null;else{switch(Afe(r)){case 1:t=spA;break;case 4:t=jpe;break;case 16:t=Tq;break;case 536870912:t=Xpe;break;default:t=Tq}t=w3e(t,I3e.bind(null,A))}A.callbackPriority=e,A.callbackNode=t}}function I3e(A,e){if(Lq=-1,Rq=0,(_i&6)!==0)throw Error(Et(327));var t=A.callbackNode;if(l5()&&A.callbackNode!==t)return null;var r=Yq(A,A===Vo?b0:0);if(r===0)return null;if((r&30)!==0||(r&A.expiredLanes)!==0||e)e=rz(A,r);else{e=r;var i=_i;_i|=2;var u=p3e();if(Vo!==A||b0!==e)Gh=null,I5=wn()+500,m2(A,e);do try{S0r();break}catch(n){Q3e(A,n)}while(1);DpA(),Az.current=u,_i=i,Pn!==null?e=0:(Vo=null,b0=0,e=wo)}if(e!==0){if(e===2&&(i=y1A(A),i!==0&&(r=i,e=ApA(A,i))),e===1)throw t=nL,m2(A,0),ip(A,r),Ng(A,wn()),t;if(e===6)ip(A,r);else{if(i=A.current.alternate,(r&30)===0&&!F0r(i)&&(e=rz(A,r),e===2&&(u=y1A(A),u!==0&&(r=u,e=ApA(A,u))),e===1))throw t=nL,m2(A,0),ip(A,r),Ng(A,wn()),t;switch(A.finishedWork=i,A.finishedLanes=r,e){case 0:case 1:throw Error(Et(345));case 2:d2(A,Ml,Gh);break;case 3:if(ip(A,r),(r&130023424)===r&&(e=MpA+500-wn(),10<e)){if(Yq(A,0)!==0)break;if(i=A.suspendedLanes,(i&r)!==r){Kl(),A.pingedLanes|=A.suspendedLanes&i;break}A.timeoutHandle=N1A(d2.bind(null,A,Ml,Gh),e);break}d2(A,Ml,Gh);break;case 4:if(ip(A,r),(r&4194240)===r)break;e=A.eventTimes;for(i=-1;0<r;){var a=31-hB(r);u=1<<a,a=e[a],a>i&&(i=a),r&=~u}if(r=i,r=wn()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3000>r?3000:4320>r?4320:1960*k0r(r/1960))-r,10<r){A.timeoutHandle=N1A(d2.bind(null,A,Ml,Gh),r);break}d2(A,Ml,Gh);break;case 5:d2(A,Ml,Gh);break;default:throw Error(Et(329))}}}return Ng(A,wn()),A.callbackNode===t?I3e.bind(null,A):null}function ApA(A,e){var t=PS;return A.current.memoizedState.isDehydrated&&(m2(A,e).flags|=256),A=rz(A,e),A!==2&&(e=Ml,Ml=t,e!==null&&epA(e)),A}function epA(A){Ml===null?Ml=A:Ml.push.apply(Ml,A)}function F0r(A){for(var e=A;;){if(e.flags&16384){var t=e.updateQueue;if(t!==null&&(t=t.stores,t!==null))for(var r=0;r<t.length;r++){var i=t[r],u=i.getSnapshot;i=i.value;try{if(!pB(u(),i))return!1}catch(a){return!1}}}if(t=e.child,e.subtreeFlags&16384&&t!==null)t.return=e,e=t;else{if(e===A)break;for(;e.sibling===null;){if(e.return===null||e.return===A)return!0;e=e.return}e.sibling.return=e.return,e=e.sibling}}return!0}function ip(A,e){e&=~UpA,e&=~Ez,A.suspendedLanes|=e,A.pingedLanes&=~e;for(A=A.expirationTimes;0<e;){var t=31-hB(e),r=1<<t;A[t]=-1,e&=~r}}function xpe(A){if((_i&6)!==0)throw Error(Et(327));l5();var e=Yq(A,0);if((e&1)===0)return Ng(A,wn()),null;var t=rz(A,e);if(A.tag!==0&&t===2){var r=y1A(A);r!==0&&(e=r,t=ApA(A,r))}if(t===1)throw t=nL,m2(A,0),ip(A,e),Ng(A,wn()),t;if(t===6)throw Error(Et(345));return A.finishedWork=A.current.alternate,A.finishedLanes=e,d2(A,Ml,Gh),Ng(A,wn()),null}function h3e(A,e){var t=_i;_i|=1;try{return A(e)}finally{_i=t,_i===0&&(I5=wn()+500,gz&&hp())}}function dz(A){ap!==null&&ap.tag===0&&(_i&6)===0&&l5();var e=_i;_i|=1;var t=Kc.transition,r=mu;try{if(Kc.transition=null,mu=1,A)return A()}finally{mu=r,Kc.transition=t,_i=e,(_i&6)===0&&hp()}}function TpA(){Sg=i5.current,la(i5)}function m2(A,e){A.finishedWork=null,A.finishedLanes=0;var t=A.timeoutHandle;if(t!==-1&&(A.timeoutHandle=-1,u0r(t)),Pn!==null)for(t=Pn.return;t!==null;){var r=t;switch(ppA(r),r.tag){case 1:r=r.type.childContextTypes,r!==null&&r!==void 0&&Pq();break;case 3:E5(),la(Yl),la(es),kpA();break;case 5:vpA(r);break;case 4:E5();break;case 13:la(Ma);break;case 19:la(Ma);break;case 10:ypA(r.type._context);break;case 22:case 23:TpA()}t=t.return}if(Vo=A,Pn=A=Cp(A.current,null),b0=Sg=e,wo=0,nL=null,UpA=Ez=v2=0,Ml=PS=null,h2!==null){for(e=0;e<h2.length;e++)if(t=h2[e],r=t.interleaved,r!==null){t.interleaved=null;var i=r.next,u=t.pending;if(u!==null){var a=u.next;u.next=i,r.next=a}t.pending=r}h2=null}return A}function Q3e(A,e){do{var t=Pn;try{if(DpA(),Fq.current=$q,Xq){for(var r=Ta.memoizedState;r!==null;){var i=r.queue;i!==null&&(i.pending=null),r=r.next}Xq=!1}if(b2=0,Zo=yo=Ta=null,JS=!1,iL=0,GpA.current=null,t===null||t.return===null){wo=1,nL=e,Pn=null;break}A:{var u=A,a=t.return,n=t,o=e;if(e=b0,n.flags|=32768,o!==null&&typeof o==="object"&&typeof o.then==="function"){var s=o,l=n,g=l.tag;if((l.mode&1)===0&&(g===0||g===11||g===15)){var C=l.alternate;C?(l.updateQueue=C.updateQueue,l.memoizedState=C.memoizedState,l.lanes=C.lanes):(l.updateQueue=null,l.memoizedState=null)}var B=Ipe(a);if(B!==null){B.flags&=-257,hpe(B,a,n,u,e),B.mode&1&&dpe(u,s,e),e=B,o=s;var E=e.updateQueue;if(E===null){var d=new Set;d.add(o),e.updateQueue=d}else E.add(o);break A}else{if((e&1)===0){dpe(u,s,e),YpA();break A}o=Error(Et(426))}}else if(ka&&n.mode&1){var I=Ipe(a);if(I!==null){(I.flags&65536)===0&&(I.flags|=256),hpe(I,a,n,u,e),fpA(d5(o,n));break A}}u=o=d5(o,n),wo!==4&&(wo=2),PS===null?PS=[u]:PS.push(u),u=a;do{switch(u.tag){case 3:u.flags|=65536,e&=-e,u.lanes|=e;var h=e3e(u,o,e);lpe(u,h);break A;case 1:n=o;var Q=u.type,p=u.stateNode;if((u.flags&128)===0&&(typeof Q.getDerivedStateFromError==="function"||p!==null&&typeof p.componentDidCatch==="function"&&(cp===null||!cp.has(p)))){u.flags|=65536,e&=-e,u.lanes|=e;var m=t3e(u,n,e);lpe(u,m);break A}}u=u.return}while(u!==null)}m3e(t)}catch(f){e=f,Pn===t&&t!==null&&(Pn=t=t.return);continue}break}while(1)}function p3e(){var A=Az.current;return Az.current=$q,A===null?$q:A}function YpA(){if(wo===0||wo===3||wo===2)wo=4;Vo===null||(v2&268435455)===0&&(Ez&268435455)===0||ip(Vo,b0)}function rz(A,e){var t=_i;_i|=2;var r=p3e();if(Vo!==A||b0!==e)Gh=null,m2(A,e);do try{x0r();break}catch(i){Q3e(A,i)}while(1);if(DpA(),_i=t,Az.current=r,Pn!==null)throw Error(Et(261));return Vo=null,b0=0,wo}function x0r(){for(;Pn!==null;)f3e(Pn)}function S0r(){for(;Pn!==null&&!tor();)f3e(Pn)}function f3e(A){var e=y3e(A.alternate,A,Sg);A.memoizedProps=A.pendingProps,e===null?m3e(A):Pn=e,GpA.current=null}function m3e(A){var e=A;do{var t=e.alternate;if(A=e.return,(e.flags&32768)===0){if(t=D0r(t,e,Sg),t!==null){Pn=t;return}}else{if(t=y0r(t,e),t!==null){t.flags&=32767,Pn=t;return}if(A!==null)A.flags|=32768,A.subtreeFlags=0,A.deletions=null;else{wo=6,Pn=null;return}}if(e=e.sibling,e!==null){Pn=e;return}Pn=e=A}while(e!==null);wo===0&&(wo=5)}function d2(A,e,t){var r=mu,i=Kc.transition;try{Kc.transition=null,mu=1,L0r(A,e,t,r)}finally{Kc.transition=i,mu=r}return null}function L0r(A,e,t,r){do l5();while(ap!==null);if((_i&6)!==0)throw Error(Et(327));t=A.finishedWork;var i=A.finishedLanes;if(t===null)return null;if(A.finishedWork=null,A.finishedLanes=0,t===A.current)throw Error(Et(177));A.callbackNode=null,A.callbackPriority=0;var u=t.lanes|t.childLanes;if(cor(A,u),A===Vo&&(Pn=Vo=null,b0=0),(t.subtreeFlags&2064)===0&&(t.flags&2064)===0||Dq||(Dq=!0,w3e(Tq,function(){return l5(),null})),u=(t.flags&15990)!==0,(t.subtreeFlags&15990)!==0||u){u=Kc.transition,Kc.transition=null;var a=mu;mu=1;var n=_i;_i|=4,GpA.current=null,b0r(A,t),E3e(t,A),$or(L1A),Hq=!!S1A,L1A=S1A=null,A.current=t,v0r(t,A,i),ror(),_i=n,mu=a,Kc.transition=u}else A.current=t;if(Dq&&(Dq=!1,ap=A,tz=i),u=A.pendingLanes,u===0&&(cp=null),aor(t.stateNode,r),Ng(A,wn()),e!==null)for(r=A.onRecoverableError,t=0;t<e.length;t++)i=e[t],r(i.value,{componentStack:i.stack,digest:i.digest});if(ez)throw ez=!1,A=X1A,X1A=null,A;return(tz&1)!==0&&A.tag!==0&&l5(),u=A.pendingLanes,(u&1)!==0?A===$1A?_S++:(_S=0,$1A=A):_S=0,hp(),null}function l5(){if(ap!==null){var A=Afe(tz),e=Kc.transition,t=mu;try{if(Kc.transition=null,mu=16>A?16:A,ap===null)var r=!1;else{if(A=ap,ap=null,tz=0,(_i&6)!==0)throw Error(Et(331));var i=_i;_i|=4;for(Tt=A.current;Tt!==null;){var u=Tt,a=u.child;if((Tt.flags&16)!==0){var n=u.deletions;if(n!==null){for(var o=0;o<n.length;o++){var s=n[o];for(Tt=s;Tt!==null;){var l=Tt;switch(l.tag){case 0:case 11:case 15:OS(8,l,u)}var g=l.child;if(g!==null)g.return=l,Tt=g;else for(;Tt!==null;){l=Tt;var C=l.sibling,B=l.return;if(c3e(l),l===s){Tt=null;break}if(C!==null){C.return=B,Tt=C;break}Tt=B}}}var E=u.alternate;if(E!==null){var d=E.child;if(d!==null){E.child=null;do{var I=d.sibling;d.sibling=null,d=I}while(d!==null)}}Tt=u}}if((u.subtreeFlags&2064)!==0&&a!==null)a.return=u,Tt=a;else A:for(;Tt!==null;){if(u=Tt,(u.flags&2048)!==0)switch(u.tag){case 0:case 11:case 15:OS(9,u,u.return)}var h=u.sibling;if(h!==null){h.return=u.return,Tt=h;break A}Tt=u.return}}var Q=A.current;for(Tt=Q;Tt!==null;){a=Tt;var p=a.child;if((a.subtreeFlags&2064)!==0&&p!==null)p.return=a,Tt=p;else A:for(a=Q;Tt!==null;){if(n=Tt,(n.flags&2048)!==0)try{switch(n.tag){case 0:case 11:case 15:Bz(9,n)}}catch(f){tn(n,n.return,f)}if(n===a){Tt=null;break A}var m=n.sibling;if(m!==null){m.return=n.return,Tt=m;break A}Tt=n.return}}if(_i=i,hp(),Dd&&typeof Dd.onPostCommitFiberRoot==="function")try{Dd.onPostCommitFiberRoot(iz,A)}catch(f){}r=!0}return r}finally{mu=t,Kc.transition=e}}return!1}function Spe(A,e,t){e=d5(t,e),e=e3e(A,e,1),A=p2(A,e,1),e=Kl(),A!==null&&(uz(A,1,e),Ng(A,e))}function tn(A,e,t){if(A.tag===3)Spe(A,A,t);else for(;e!==null;){if(e.tag===3){Spe(e,A,t);break}else if(e.tag===1){var r=e.stateNode;if(typeof e.type.getDerivedStateFromError==="function"||typeof r.componentDidCatch==="function"&&(cp===null||!cp.has(r))){A=d5(t,A),A=t3e(e,A,1),e=p2(e,A,1),A=Kl(),e!==null&&(uz(e,1,A),Ng(e,A));break}}e=e.return}}function R0r(A,e,t){var r=A.pingCache;r!==null&&r.delete(e),e=Kl(),A.pingedLanes|=A.suspendedLanes&t,Vo===A&&(b0&t)===t&&(wo===4||wo===3&&(b0&130023424)===b0&&500>wn()-MpA?m2(A,0):UpA|=t),Ng(A,e)}function D3e(A,e){e===0&&((A.mode&1)===0?e=1:(e=Cq,Cq<<=1,(Cq&130023424)===0&&(Cq=4194304)));var t=Kl();A=Hh(A,e),A!==null&&(uz(A,e,t),Ng(A,t))}function N0r(A){var e=A.memoizedState,t=0;e!==null&&(t=e.retryLane),D3e(A,t)}function G0r(A,e){var t=0;switch(A.tag){case 13:var{stateNode:r,memoizedState:i}=A;i!==null&&(t=i.retryLane);break;case 19:r=A.stateNode;break;default:throw Error(Et(314))}r!==null&&r.delete(e),D3e(A,t)}var y3e;y3e=function(A,e,t){if(A!==null)if(A.memoizedProps!==e.pendingProps||Yl.current)Tl=!0;else{if((A.lanes&t)===0&&(e.flags&128)===0)return Tl=!1,m0r(A,e,t);Tl=(A.flags&131072)!==0?!0:!1}else Tl=!1,ka&&(e.flags&1048576)!==0&&bfe(e,qq,e.index);switch(e.lanes=0,e.tag){case 2:var r=e.type;Sq(A,e),A=e.pendingProps;var i=c5(e,es.current);s5(e,t),i=xpA(null,e,r,A,i,t);var u=SpA();return e.flags|=1,typeof i==="object"&&i!==null&&typeof i.render==="function"&&i.$$typeof===void 0?(e.tag=1,e.memoizedState=null,e.updateQueue=null,Hl(r)?(u=!0,_q(e)):u=!1,e.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,Lfe(e),i.updater=Cz,e.stateNode=i,i._reactInternals=e,K1A(e,r,A,t),e=P1A(null,e,r,!0,u,t)):(e.tag=0,ka&&u&&QpA(e),Os(null,e,i,t),e=e.child),e;case 16:r=e.elementType;A:{switch(Sq(A,e),A=e.pendingProps,i=r._init,r=i(r._payload),e.type=r,i=e.tag=M0r(r),A=BB(r,A),i){case 0:e=O1A(null,e,r,A,t);break A;case 1:e=fpe(null,e,r,A,t);break A;case 11:e=Qpe(null,e,r,A,t);break A;case 14:e=ppe(null,e,r,BB(r.type,A),t);break A}throw Error(Et(306,r,""))}return e;case 0:return r=e.type,i=e.pendingProps,i=e.elementType===r?i:BB(r,i),O1A(A,e,r,i,t);case 1:return r=e.type,i=e.pendingProps,i=e.elementType===r?i:BB(r,i),fpe(A,e,r,i,t);case 3:A:{if(a3e(e),A===null)throw Error(Et(387));r=e.pendingProps,u=e.memoizedState,i=u.element,Rfe(A,e),Vq(e,r,null,t);var a=e.memoizedState;if(r=a.element,u.isDehydrated)if(u={element:r,isDehydrated:!1,cache:a.cache,pendingSuspenseBoundaries:a.pendingSuspenseBoundaries,transitions:a.transitions},e.updateQueue.baseState=u,e.memoizedState=u,e.flags&256){i=d5(Error(Et(423)),e),e=mpe(A,e,r,t,i);break A}else if(r!==i){i=d5(Error(Et(424)),e),e=mpe(A,e,r,t,i);break A}else for(Lg=lp(e.stateNode.containerInfo.firstChild),Rg=e,ka=!0,dB=null,t=xfe(e,null,r,t),e.child=t;t;)t.flags=t.flags&-3|4096,t=t.sibling;else{if(C5(),r===i){e=Kh(A,e,t);break A}Os(A,e,r,t)}e=e.child}return e;case 5:return Nfe(e),A===null&&T1A(e),r=e.type,i=e.pendingProps,u=A!==null?A.memoizedProps:null,a=i.children,R1A(r,i)?a=null:u!==null&&R1A(r,u)&&(e.flags|=32),u3e(A,e),Os(A,e,a,t),e.child;case 6:return A===null&&T1A(e),null;case 13:return n3e(A,e,t);case 4:return bpA(e,e.stateNode.containerInfo),r=e.pendingProps,A===null?e.child=B5(e,null,r,t):Os(A,e,r,t),e.child;case 11:return r=e.type,i=e.pendingProps,i=e.elementType===r?i:BB(r,i),Qpe(A,e,r,i,t);case 7:return Os(A,e,e.pendingProps,t),e.child;case 8:return Os(A,e,e.pendingProps.children,t),e.child;case 12:return Os(A,e,e.pendingProps.children,t),e.child;case 10:A:{if(r=e.type._context,i=e.pendingProps,u=e.memoizedProps,a=i.value,Vu(zq,r._currentValue),r._currentValue=a,u!==null)if(pB(u.value,a)){if(u.children===i.children&&!Yl.current){e=Kh(A,e,t);break A}}else for(u=e.child,u!==null&&(u.return=e);u!==null;){var n=u.dependencies;if(n!==null){a=u.child;for(var o=n.firstContext;o!==null;){if(o.context===r){if(u.tag===1){o=gp(-1,t&-t),o.tag=2;var s=u.updateQueue;if(s!==null){s=s.shared;var l=s.pending;l===null?o.next=o:(o.next=l.next,l.next=o),s.pending=o}}u.lanes|=t,o=u.alternate,o!==null&&(o.lanes|=t),Y1A(u.return,t,e),n.lanes|=t;break}o=o.next}}else if(u.tag===10)a=u.type===e.type?null:u.child;else if(u.tag===18){if(a=u.return,a===null)throw Error(Et(341));a.lanes|=t,n=a.alternate,n!==null&&(n.lanes|=t),Y1A(a,t,e),a=u.sibling}else a=u.child;if(a!==null)a.return=u;else for(a=u;a!==null;){if(a===e){a=null;break}if(u=a.sibling,u!==null){u.return=a.return,a=u;break}a=a.return}u=a}Os(A,e,i.children,t),e=e.child}return e;case 9:return i=e.type,r=e.pendingProps.children,s5(e,t),i=Jc(i),r=r(i),e.flags|=1,Os(A,e,r,t),e.child;case 14:return r=e.type,i=BB(r,e.pendingProps),i=BB(r.type,i),ppe(A,e,r,i,t);case 15:return r3e(A,e,e.type,e.pendingProps,t);case 17:return r=e.type,i=e.pendingProps,i=e.elementType===r?i:BB(r,i),Sq(A,e),e.tag=1,Hl(r)?(A=!0,_q(e)):A=!1,s5(e,t),A3e(e,r,i),K1A(e,r,i,t),P1A(null,e,r,!0,A,t);case 19:return o3e(A,e,t);case 22:return i3e(A,e,t)}throw Error(Et(156,e.tag))};function w3e(A,e){return Vpe(A,e)}function U0r(A,e,t,r){this.tag=A,this.key=t,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function IB(A,e,t,r){return new U0r(A,e,t,r)}function HpA(A){return A=A.prototype,!(!A||!A.isReactComponent)}function M0r(A){if(typeof A==="function")return HpA(A)?1:0;if(A!==void 0&&A!==null){if(A=A.$$typeof,A===apA)return 11;if(A===npA)return 14}return 2}function Cp(A,e){var t=A.alternate;return t===null?(t=IB(A.tag,e,A.key,A.mode),t.elementType=A.elementType,t.type=A.type,t.stateNode=A.stateNode,t.alternate=A,A.alternate=t):(t.pendingProps=e,t.type=A.type,t.flags=0,t.subtreeFlags=0,t.deletions=null),t.flags=A.flags&14680064,t.childLanes=A.childLanes,t.lanes=A.lanes,t.child=A.child,t.memoizedProps=A.memoizedProps,t.memoizedState=A.memoizedState,t.updateQueue=A.updateQueue,e=A.dependencies,t.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext},t.sibling=A.sibling,t.index=A.index,t.ref=A.ref,t}function Nq(A,e,t,r,i,u){var a=2;if(r=A,typeof A==="function")HpA(A)&&(a=1);else if(typeof A==="string")a=5;else A:switch(A){case Z9:return D2(t.children,i,u,e);case upA:a=8,i|=8;break;case s1A:return A=IB(12,t,e,i|2),A.elementType=s1A,A.lanes=u,A;case l1A:return A=IB(13,t,e,i),A.elementType=l1A,A.lanes=u,A;case g1A:return A=IB(19,t,e,i),A.elementType=g1A,A.lanes=u,A;case Upe:return Iz(t,i,u,e);default:if(typeof A==="object"&&A!==null)switch(A.$$typeof){case Npe:a=10;break A;case Gpe:a=9;break A;case apA:a=11;break A;case npA:a=14;break A;case ep:a=16,r=null;break A}throw Error(Et(130,A==null?A:typeof A,""))}return e=IB(a,t,e,i),e.elementType=A,e.type=r,e.lanes=u,e}function D2(A,e,t,r){return A=IB(7,A,r,e),A.lanes=t,A}function Iz(A,e,t,r){return A=IB(22,A,r,e),A.elementType=Upe,A.lanes=t,A.stateNode={isHidden:!1},A}function a1A(A,e,t){return A=IB(6,A,null,e),A.lanes=t,A}function n1A(A,e,t){return e=IB(4,A.children!==null?A.children:[],A.key,e),e.lanes=t,e.stateNode={containerInfo:A.containerInfo,pendingChildren:null,implementation:A.implementation},e}function T0r(A,e,t){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:z9,key:r==null?null:""+r,children:A,containerInfo:e,implementation:t}}function Y0r(A){if(!A)return Ep;A=A._reactInternals;A:{if(F2(A)!==A||A.tag!==1)throw Error(Et(170));var e=A;do{switch(e.tag){case 3:e=e.stateNode.context;break A;case 1:if(Hl(e.type)){e=e.stateNode.__reactInternalMemoizedMergedChildContext;break A}}e=e.return}while(e!==null);throw Error(Et(171))}if(A.tag===1){var t=A.type;if(Hl(t))return yfe(A,t,e)}return e}function b3e(A,e,t,r){var i=e.current,u=Kl(),a=f2(i);return t=Y0r(t),e.context===null?e.context=t:e.pendingContext=t,e=gp(u,a),e.payload={element:A},r=r===void 0?null:r,r!==null&&(e.callback=r),A=p2(i,e,a),A!==null&&(QB(A,i,a,u),kq(A,i,a)),a}function Lpe(A,e){if(A=A.memoizedState,A!==null&&A.dehydrated!==null){var t=A.retryLane;A.retryLane=t!==0&&t<e?t:e}}function KpA(A,e){Lpe(A,e),(A=A.alternate)&&Lpe(A,e)}function H0r(){return null}function v3e(A){this._internalRoot=A}JpA.prototype.render=v3e.prototype.render=function(A){var e=this._internalRoot;if(e===null)throw Error(Et(409));b3e(A,e,null,null)};JpA.prototype.unmount=v3e.prototype.unmount=function(){var A=this._internalRoot;if(A!==null){this._internalRoot=null;var e=A.containerInfo;dz(function(){b3e(null,A,null,null)}),e[sz]=null}};function JpA(A){this._internalRoot=A}JpA.prototype.unstable_scheduleHydration=function(A){if(A){var e=rfe();A={blockedOn:null,target:A,priority:e};for(var t=0;t<rp.length&&e!==0&&e<rp[t].priority;t++);rp.splice(t,0,A),t===0&&ufe(A)}};function K0r(A){return!(!A||A.nodeType!==1&&A.nodeType!==9&&A.nodeType!==11)}efe=function(A){switch(A.tag){case 3:var e=A.stateNode;if(e.current.memoizedState.isDehydrated){var t=xS(e.pendingLanes);t!==0&&(lpA(e,t|1),Ng(e,wn()),(_i&6)===0&&(I5=wn()+500,hp()))}break;case 13:dz(function(){var r=Hh(A,1);if(r!==null){var i=Kl();QB(r,A,1,i)}}),KpA(A,1)}};gpA=function(A){if(A.tag===13){var e=Hh(A,134217728);if(e!==null){var t=Kl();QB(e,A,134217728,t)}KpA(A,134217728)}};tfe=function(A){if(A.tag===13){var e=f2(A),t=Hh(A,e);if(t!==null){var r=Kl();QB(t,A,e,r)}KpA(A,e)}};rfe=function(){return mu};ife=function(A,e){var t=mu;try{return mu=A,e()}finally{mu=t}};f1A=function(A,e,t){switch(e){case"input":if(B1A(A,t),e=t.name,t.type==="radio"&&e!=null){for(t=A;t.parentNode;)t=t.parentNode;t=t.querySelectorAll("input[name="+JSON.stringify(""+e)+'][type="radio"]');for(e=0;e<t.length;e++){var r=t[e];if(r!==A&&r.form===A.form){var i=hpA(r);if(!i)throw Error(Et(90));Tpe(r),B1A(r,i)}}}break;case"textarea":Hpe(A,t);break;case"select":e=t.value,e!=null&&u5(A,!!t.multiple,e,!1)}};_pe=h3e;Wpe=dz;var vS={findFiberByHostInstance:I2,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},J0r={bundleType:vS.bundleType,version:vS.version,rendererPackageName:vS.rendererPackageName,rendererConfig:vS.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Jh.ReactCurrentDispatcher,findHostInstanceByFiber:function(A){return A=eor(A),A===null?null:A.stateNode},findFiberByHostInstance:vS.findFiberByHostInstance||H0r,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){if(q9=__REACT_DEVTOOLS_GLOBAL_HOOK__,!q9.isDisabled&&q9.supportsFiber)try{iz=q9.inject(J0r),Dd=q9}catch(A){}}var q9;var p5=function(A,e){var t=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!K0r(e))throw Error(Et(200));return T0r(A,e,null,t)};var _n=function(A){return dz(A)};var f5=h3e;k3e();t8();zE();fe();Be();Be();Be();Be();fe();fe();Be();Be();Be();Be();fe();fe();Be();Be();fe();Be();fe();Be();Be();Be();fe();function wd(A,e,{checkForDefaultPrevented:t=!0}={}){return function(i){if(A?.(i),t===!1||!i.defaultPrevented)return e?.(i)}}fe();function F3e(A,e){if(typeof A==="function")return A(e);else if(A!==null&&A!==void 0)A.current=e}function PpA(...A){return(e)=>{let t=!1,r=A.map((i)=>{let u=F3e(i,e);if(!t&&typeof u=="function")t=!0;return u});if(t)return()=>{for(let i=0;i<r.length;i++){let u=r[i];if(typeof u=="function")u();else F3e(A[i],null)}}}}function Ug(...A){return st(PpA(...A),A)}fe();Be();function hz(A,e=[]){let t=[];function r(u,a){let n=wi(a),o=t.length;t=[...t,a];let s=(g)=>{let{scope:C,children:B,...E}=g,d=C?.[A]?.[o]||n,I=Ut(()=>E,Object.values(E));return N(d.Provider,{value:I,children:B})};s.displayName=u+"Provider";function l(g,C){let B=C?.[A]?.[o]||n,E=Li(B);if(E)return E;if(a!==void 0)return a;throw Error(`\`${g}\` must be used within \`${u}\``)}return[s,l]}let i=()=>{let u=t.map((a)=>wi(a));return function(n){let o=n?.[A]||u;return Ut(()=>({[`__scope${A}`]:{...n,[A]:o}}),[n,o])}};return i.scopeName=A,[r,O0r(i,...e)]}function O0r(...A){let e=A[0];if(A.length===1)return e;let t=()=>{let r=A.map((i)=>({useScope:i(),scopeName:i.scopeName}));return function(u){let a=r.reduce((n,{useScope:o,scopeName:s})=>{let g=o(u)[`__scope${s}`];return{...n,...g}},{});return Ut(()=>({[`__scope${e.scopeName}`]:a}),[a])}};return t.scopeName=e.scopeName,t}fe();fe();fe();Be();var lL=mt((A,e)=>{let{children:t,...r}=A,i=di.toArray(t),u=i.find(_0r);if(u){let a=u.props.children,n=i.map((o)=>{if(o===u){if(di.count(a)>1)return di.only(null);return Da(a)?a.props.children:null}else return o});return N(_pA,{...r,ref:e,children:Da(a)?Kn(a,void 0,n):null})}return N(_pA,{...r,ref:e,children:t})});lL.displayName="Slot";var _pA=mt((A,e)=>{let{children:t,...r}=A;if(Da(t)){let i=q0r(t),u=W0r(r,t.props);if(t.type!==ho)u.ref=e?PpA(e,i):i;return Kn(t,u)}return di.count(t)>1?di.only(null):null});_pA.displayName="SlotClone";var P0r=({children:A})=>N(At,{children:A});function _0r(A){return Da(A)&&A.type===P0r}function W0r(A,e){let t={...e};for(let r in e){let i=A[r],u=e[r];if(/^on[A-Z]/.test(r)){if(i&&u)t[r]=(...n)=>{u(...n),i(...n)};else if(i)t[r]=i}else if(r==="style")t[r]={...i,...u};else if(r==="className")t[r]=[i,u].filter(Boolean).join(" ")}return{...A,...t}}function q0r(A){let e=Object.getOwnPropertyDescriptor(A.props,"ref")?.get,t=e&&"isReactWarning"in e&&e.isReactWarning;if(t)return A.ref;if(e=Object.getOwnPropertyDescriptor(A,"ref")?.get,t=e&&"isReactWarning"in e&&e.isReactWarning,t)return A.props.ref;return A.props.ref||A.ref}Be();var z0r=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],_s=z0r.reduce((A,e)=>{let t=mt((r,i)=>{let{asChild:u,...a}=r,n=u?lL:e;if(typeof window<"u")window[Symbol.for("radix-ui")]=!0;return N(n,{...a,ref:i})});return t.displayName=`Primitive.${e}`,{...A,[e]:t}},{});function x3e(A,e){if(A)_n(()=>A.dispatchEvent(e))}fe();function Mg(A){let e=Ee(A);return le(()=>{e.current=A}),Ut(()=>(...t)=>e.current?.(...t),[])}fe();function S3e(A,e=globalThis?.document){let t=Mg(A);le(()=>{let r=(i)=>{if(i.key==="Escape")t(i)};return e.addEventListener("keydown",r,{capture:!0}),()=>e.removeEventListener("keydown",r,{capture:!0})},[t,e])}Be();var Z0r="DismissableLayer",WpA="dismissableLayer.update",V0r="dismissableLayer.pointerDownOutside",j0r="dismissableLayer.focusOutside",L3e,N3e=wi({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),qpA=mt((A,e)=>{let{disableOutsidePointerEvents:t=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:u,onInteractOutside:a,onDismiss:n,...o}=A,s=Li(N3e),[l,g]=we(null),C=l?.ownerDocument??globalThis?.document,[,B]=we({}),E=Ug(e,(w)=>g(w)),d=Array.from(s.layers),[I]=[...s.layersWithOutsidePointerEventsDisabled].slice(-1),h=d.indexOf(I),Q=l?d.indexOf(l):-1,p=s.layersWithOutsidePointerEventsDisabled.size>0,m=Q>=h,f=Asr((w)=>{let b=w.target,k=[...s.branches].some((v)=>v.contains(b));if(!m||k)return;if(i?.(w),a?.(w),!w.defaultPrevented)n?.()},C),D=esr((w)=>{let b=w.target;if([...s.branches].some((v)=>v.contains(b)))return;if(u?.(w),a?.(w),!w.defaultPrevented)n?.()},C);return S3e((w)=>{if(Q!==s.layers.size-1)return;if(r?.(w),!w.defaultPrevented&&n)w.preventDefault(),n()},C),le(()=>{if(!l)return;if(t){if(s.layersWithOutsidePointerEventsDisabled.size===0)L3e=C.body.style.pointerEvents,C.body.style.pointerEvents="none";s.layersWithOutsidePointerEventsDisabled.add(l)}return s.layers.add(l),R3e(),()=>{if(t&&s.layersWithOutsidePointerEventsDisabled.size===1)C.body.style.pointerEvents=L3e}},[l,C,t,s]),le(()=>()=>{if(!l)return;s.layers.delete(l),s.layersWithOutsidePointerEventsDisabled.delete(l),R3e()},[l,s]),le(()=>{let w=()=>B({});return document.addEventListener(WpA,w),()=>document.removeEventListener(WpA,w)},[]),N(_s.div,{...o,ref:E,style:{pointerEvents:p?m?"auto":"none":void 0,...A.style},onFocusCapture:wd(A.onFocusCapture,D.onFocusCapture),onBlurCapture:wd(A.onBlurCapture,D.onBlurCapture),onPointerDownCapture:wd(A.onPointerDownCapture,f.onPointerDownCapture)})});qpA.displayName=Z0r;var X0r="DismissableLayerBranch",$0r=mt((A,e)=>{let t=Li(N3e),r=Ee(null),i=Ug(e,r);return le(()=>{let u=r.current;if(u)return t.branches.add(u),()=>{t.branches.delete(u)}},[t.branches]),N(_s.div,{...A,ref:i})});$0r.displayName=X0r;function Asr(A,e=globalThis?.document){let t=Mg(A),r=Ee(!1),i=Ee(()=>{});return le(()=>{let u=(n)=>{if(n.target&&!r.current){let s=function(){G3e(V0r,t,l,{discrete:!0})};var o=s;let l={originalEvent:n};if(n.pointerType==="touch")e.removeEventListener("click",i.current),i.current=s,e.addEventListener("click",i.current,{once:!0});else s()}else e.removeEventListener("click",i.current);r.current=!1},a=window.setTimeout(()=>{e.addEventListener("pointerdown",u)},0);return()=>{window.clearTimeout(a),e.removeEventListener("pointerdown",u),e.removeEventListener("click",i.current)}},[e,t]),{onPointerDownCapture:()=>r.current=!0}}function esr(A,e=globalThis?.document){let t=Mg(A),r=Ee(!1);return le(()=>{let i=(u)=>{if(u.target&&!r.current)G3e(j0r,t,{originalEvent:u},{discrete:!1})};return e.addEventListener("focusin",i),()=>e.removeEventListener("focusin",i)},[e,t]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function R3e(){let A=new CustomEvent(WpA);document.dispatchEvent(A)}function G3e(A,e,t,{discrete:r}){let i=t.originalEvent.target,u=new CustomEvent(A,{bubbles:!1,cancelable:!0,detail:t});if(e)i.addEventListener(A,e,{once:!0});if(r)x3e(i,u);else i.dispatchEvent(u)}fe();var zpA=0;function M3e(){le(()=>{let A=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",A[0]??U3e()),document.body.insertAdjacentElement("beforeend",A[1]??U3e()),zpA++,()=>{if(zpA===1)document.querySelectorAll("[data-radix-focus-guard]").forEach((e)=>e.remove());zpA--}},[])}function U3e(){let A=document.createElement("span");return A.setAttribute("data-radix-focus-guard",""),A.tabIndex=0,A.style.outline="none",A.style.opacity="0",A.style.position="fixed",A.style.pointerEvents="none",A}fe();Be();var ZpA="focusScope.autoFocusOnMount",VpA="focusScope.autoFocusOnUnmount",T3e={bubbles:!1,cancelable:!0},tsr="FocusScope",jpA=mt((A,e)=>{let{loop:t=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:u,...a}=A,[n,o]=we(null),s=Mg(i),l=Mg(u),g=Ee(null),C=Ug(e,(d)=>o(d)),B=Ee({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;le(()=>{if(r){let Q=function(D){if(B.paused||!n)return;let w=D.target;if(n.contains(w))g.current=w;else Qp(g.current,{select:!0})},p=function(D){if(B.paused||!n)return;let w=D.relatedTarget;if(w===null)return;if(!n.contains(w))Qp(g.current,{select:!0})},m=function(D){if(document.activeElement!==document.body)return;for(let b of D)if(b.removedNodes.length>0)Qp(n)};var d=Q,I=p,h=m;document.addEventListener("focusin",Q),document.addEventListener("focusout",p);let f=new MutationObserver(m);if(n)f.observe(n,{childList:!0,subtree:!0});return()=>{document.removeEventListener("focusin",Q),document.removeEventListener("focusout",p),f.disconnect()}}},[r,n,B.paused]),le(()=>{if(n){H3e.add(B);let d=document.activeElement;if(!n.contains(d)){let h=new CustomEvent(ZpA,T3e);if(n.addEventListener(ZpA,s),n.dispatchEvent(h),!h.defaultPrevented){if(rsr(osr(J3e(n)),{select:!0}),document.activeElement===d)Qp(n)}}return()=>{n.removeEventListener(ZpA,s),setTimeout(()=>{let h=new CustomEvent(VpA,T3e);if(n.addEventListener(VpA,l),n.dispatchEvent(h),!h.defaultPrevented)Qp(d??document.body,{select:!0});n.removeEventListener(VpA,l),H3e.remove(B)},0)}}},[n,s,l,B]);let E=st((d)=>{if(!t&&!r)return;if(B.paused)return;let I=d.key==="Tab"&&!d.altKey&&!d.ctrlKey&&!d.metaKey,h=document.activeElement;if(I&&h){let Q=d.currentTarget,[p,m]=isr(Q);if(!(p&&m)){if(h===Q)d.preventDefault()}else if(!d.shiftKey&&h===m){if(d.preventDefault(),t)Qp(p,{select:!0})}else if(d.shiftKey&&h===p){if(d.preventDefault(),t)Qp(m,{select:!0})}}},[t,r,B.paused]);return N(_s.div,{tabIndex:-1,...a,ref:C,onKeyDown:E})});jpA.displayName=tsr;function rsr(A,{select:e=!1}={}){let t=document.activeElement;for(let r of A)if(Qp(r,{select:e}),document.activeElement!==t)return}function isr(A){let e=J3e(A),t=Y3e(e,A),r=Y3e(e.reverse(),A);return[t,r]}function J3e(A){let e=[],t=document.createTreeWalker(A,NodeFilter.SHOW_ELEMENT,{acceptNode:(r)=>{let i=r.tagName==="INPUT"&&r.type==="hidden";if(r.disabled||r.hidden||i)return NodeFilter.FILTER_SKIP;return r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});while(t.nextNode())e.push(t.currentNode);return e}function Y3e(A,e){for(let t of A)if(!usr(t,{upTo:e}))return t}function usr(A,{upTo:e}){if(getComputedStyle(A).visibility==="hidden")return!0;while(A){if(e!==void 0&&A===e)return!1;if(getComputedStyle(A).display==="none")return!0;A=A.parentElement}return!1}function asr(A){return A instanceof HTMLInputElement&&"select"in A}function Qp(A,{select:e=!1}={}){if(A&&A.focus){let t=document.activeElement;if(A.focus({preventScroll:!0}),A!==t&&asr(A)&&e)A.select()}}var H3e=nsr();function nsr(){let A=[];return{add(e){let t=A[0];if(e!==t)t?.pause();A=K3e(A,e),A.unshift(e)},remove(e){A=K3e(A,e),A[0]?.resume()}}}function K3e(A,e){let t=[...A],r=t.indexOf(e);if(r!==-1)t.splice(r,1);return t}function osr(A){return A.filter((e)=>e.tagName!=="A")}fe();fe();var Pc=Boolean(globalThis?.document)?Ii:()=>{};var ssr=bt["useId".toString()]||(()=>{return}),lsr=0;function O3e(A){let[e,t]=we(ssr());return Pc(()=>{if(!A)t((r)=>r??String(lsr++))},[A]),A||(e?`radix-${e}`:"")}fe();var W3e=["top","right","bottom","left"];var{min:bd,max:fB,round:cL,floor:CL}=Math,vd=(A)=>({x:A,y:A}),gsr={left:"right",right:"left",bottom:"top",top:"bottom"};function XpA(A,e,t){return fB(A,bd(e,t))}function kd(A,e){return typeof A==="function"?A(e):A}function Oh(A){return A.split("-")[0]}function x2(A){return A.split("-")[1]}function pz(A){return A==="x"?"y":"x"}function fz(A){return A==="y"?"height":"width"}function mB(A){let e=A[0];return e==="t"||e==="b"?"y":"x"}function mz(A){return pz(mB(A))}function q3e(A,e,t){if(t===void 0)t=!1;let r=x2(A),i=mz(A),u=fz(i),a=i==="x"?r===(t?"end":"start")?"right":"left":r==="start"?"bottom":"top";if(e.reference[u]>e.floating[u])a=gL(a);return[a,gL(a)]}function z3e(A){let e=gL(A);return[Qz(A),e,Qz(e)]}function Qz(A){return A.includes("start")?A.replace("start","end"):A.replace("end","start")}var P3e=["left","right"],_3e=["right","left"],csr=["top","bottom"],Csr=["bottom","top"];function Bsr(A,e,t){switch(A){case"top":case"bottom":if(t)return e?_3e:P3e;return e?P3e:_3e;case"left":case"right":return e?csr:Csr;default:return[]}}function Z3e(A,e,t,r){let i=x2(A),u=Bsr(Oh(A),t==="start",r);if(i){if(u=u.map((a)=>a+"-"+i),e)u=u.concat(u.map(Qz))}return u}function gL(A){let e=Oh(A);return gsr[e]+A.slice(e.length)}function Esr(A){var e,t,r,i;return{top:(e=A.top)!=null?e:0,right:(t=A.right)!=null?t:0,bottom:(r=A.bottom)!=null?r:0,left:(i=A.left)!=null?i:0}}function $pA(A){return typeof A!=="number"?Esr(A):{top:A,right:A,bottom:A,left:A}}function S2(A){let{x:e,y:t,width:r,height:i}=A;return{width:r,height:i,top:t,left:e,right:e+r,bottom:t+i,x:e,y:t}}function V3e(A,e,t){let{reference:r,floating:i}=A,u=mB(e),a=mz(e),n=fz(a),o=Oh(e),s=u==="y",l=r.x+r.width/2-i.width/2,g=r.y+r.height/2-i.height/2,C=r[n]/2-i[n]/2,B;switch(o){case"top":B={x:l,y:r.y-i.height};break;case"bottom":B={x:l,y:r.y+r.height};break;case"right":B={x:r.x+r.width,y:g};break;case"left":B={x:r.x-i.width,y:g};break;default:B={x:r.x,y:r.y}}let E=x2(e);if(E)B[a]+=C*(E==="end"?1:-1)*(t&&s?-1:1);return B}async function $3e(A,e){var t;if(e===void 0)e={};let{x:r,y:i,platform:u,rects:a,elements:n,strategy:o}=A,{boundary:s="clippingAncestors",rootBoundary:l="viewport",elementContext:g="floating",altBoundary:C=!1,padding:B=0}=kd(e,A),E=$pA(B),I=n[C?g==="floating"?"reference":"floating":g],h=S2(await u.getClippingRect({element:((t=await(u.isElement==null?void 0:u.isElement(I)))!=null?t:!0)?I:I.contextElement||await(u.getDocumentElement==null?void 0:u.getDocumentElement(n.floating)),boundary:s,rootBoundary:l,strategy:o})),Q=g==="floating"?{x:r,y:i,width:a.floating.width,height:a.floating.height}:a.reference,p=await(u.getOffsetParent==null?void 0:u.getOffsetParent(n.floating)),m=await(u.isElement==null?void 0:u.isElement(p))&&await(u.getScale==null?void 0:u.getScale(p))||{x:1,y:1},f=S2(u.convertOffsetParentRelativeRectToViewportRelativeRect?await u.convertOffsetParentRelativeRectToViewportRelativeRect({elements:n,rect:Q,offsetParent:p,strategy:o}):Q);return{top:(h.top-f.top+E.top)/m.y,bottom:(f.bottom-h.bottom+E.bottom)/m.y,left:(h.left-f.left+E.left)/m.x,right:(f.right-h.right+E.right)/m.x}}var dsr=50,Ame=async(A,e,t)=>{let{placement:r="bottom",strategy:i="absolute",middleware:u=[],platform:a}=t,n=a.detectOverflow?a:{...a,detectOverflow:$3e},o=await(a.isRTL==null?void 0:a.isRTL(e)),s=await a.getElementRects({reference:A,floating:e,strategy:i}),{x:l,y:g}=V3e(s,r,o),C=r,B=0,E={};for(let d=0;d<u.length;d++){let I=u[d];if(!I)continue;let{name:h,fn:Q}=I,{x:p,y:m,data:f,reset:D}=await Q({x:l,y:g,initialPlacement:r,placement:C,strategy:i,middlewareData:E,rects:s,platform:n,elements:{reference:A,floating:e}});if(l=p!=null?p:l,g=m!=null?m:g,E[h]={...E[h],...f},D&&B<dsr){if(B++,typeof D==="object"){if(D.placement)C=D.placement;if(D.rects)s=D.rects===!0?await a.getElementRects({reference:A,floating:e,strategy:i}):D.rects;({x:l,y:g}=V3e(s,C,o))}d=-1}}return{x:l,y:g,placement:C,strategy:i,middlewareData:E}},eme=(A)=>({name:"arrow",options:A,async fn(e){let{x:t,y:r,placement:i,rects:u,platform:a,elements:n,middlewareData:o}=e,{element:s,padding:l=0}=kd(A,e)||{};if(s==null)return{};let g=$pA(l),C={x:t,y:r},B=mz(i),E=fz(B),d=await a.getDimensions(s),I=B==="y",h=I?"top":"left",Q=I?"bottom":"right",p=I?"clientHeight":"clientWidth",m=u.reference[E]+u.reference[B]-C[B]-u.floating[E],f=C[B]-u.reference[B],D=await(a.getOffsetParent==null?void 0:a.getOffsetParent(s)),w=D?D[p]:0;if(!w||!await(a.isElement==null?void 0:a.isElement(D)))w=n.floating[p]||u.floating[E];let b=m/2-f/2,k=w/2-d[E]/2-1,v=bd(g[h],k),S=bd(g[Q],k),x=w-d[E]-S,F=w/2-d[E]/2+b,T=XpA(v,F,x),R=!o.arrow&&x2(i)!=null&&F!==T&&u.reference[E]/2-(F<v?v:S)-d[E]/2<0,L=R?F<v?F-v:F-x:0;return{[B]:C[B]+L,data:{[B]:T,centerOffset:F-T-L,...R&&{alignmentOffset:L}},reset:R}}});var tme=function(A){if(A===void 0)A={};return{name:"flip",options:A,async fn(e){var t,r;let{placement:i,middlewareData:u,rects:a,initialPlacement:n,platform:o,elements:s}=e,{mainAxis:l=!0,crossAxis:g=!0,fallbackPlacements:C,fallbackStrategy:B="bestFit",fallbackAxisSideDirection:E="none",flipAlignment:d=!0,...I}=kd(A,e);if((t=u.arrow)!=null&&t.alignmentOffset)return{};let h=Oh(i),Q=mB(n),p=Oh(n)===n,m=await(o.isRTL==null?void 0:o.isRTL(s.floating)),f=C||(p||!d?[gL(n)]:z3e(n)),D=E!=="none";if(!C&&D)f.push(...Z3e(n,d,E,m));let w=[n,...f],b=await o.detectOverflow(e,I),k=[],v=((r=u.flip)==null?void 0:r.overflows)||[];if(l)k.push(b[h]);if(g){let T=q3e(i,a,m);k.push(b[T[0]],b[T[1]])}if(v=[...v,{placement:i,overflows:k}],!k.every((T)=>T<=0)){var S,x;let T=(((S=u.flip)==null?void 0:S.index)||0)+1,R=w[T];if(R){if(!(g==="alignment"?Q!==mB(R):!1)||v.every((U)=>mB(U.placement)===Q?U.overflows[0]>0:!0))return{data:{index:T,overflows:v},reset:{placement:R}}}let L=(x=v.filter((M)=>M.overflows[0]<=0).sort((M,U)=>M.overflows[1]-U.overflows[1])[0])==null?void 0:x.placement;if(!L)switch(B){case"bestFit":{var F;let M=(F=v.filter((U)=>{if(D){let Y=mB(U.placement);return Y===Q||Y==="y"}return!0}).map((U)=>[U.placement,U.overflows.filter((Y)=>Y>0).reduce((Y,H)=>Y+H,0)]).sort((U,Y)=>U[1]-Y[1])[0])==null?void 0:F[0];if(M)L=M;break}case"initialPlacement":L=n;break}if(i!==L)return{reset:{placement:L}}}return{}}}};function j3e(A,e){return{top:A.top-e.height,right:A.right-e.width,bottom:A.bottom-e.height,left:A.left-e.width}}function X3e(A){return W3e.some((e)=>A[e]>=0)}var rme=function(A){if(A===void 0)A={};return{name:"hide",options:A,async fn(e){let{rects:t,platform:r}=e,{strategy:i="referenceHidden",...u}=kd(A,e);switch(i){case"referenceHidden":{let a=await r.detectOverflow(e,{...u,elementContext:"reference"}),n=j3e(a,t.reference);return{data:{referenceHiddenOffsets:n,referenceHidden:X3e(n)}}}case"escaped":{let a=await r.detectOverflow(e,{...u,altBoundary:!0}),n=j3e(a,t.floating);return{data:{escapedOffsets:n,escaped:X3e(n)}}}default:return{}}}}};var ime=new Set(["left","top"]);async function Isr(A,e){let{placement:t,platform:r,elements:i}=A,u=await(r.isRTL==null?void 0:r.isRTL(i.floating)),a=Oh(t),n=x2(t),o=mB(t)==="y",s=ime.has(a)?-1:1,l=u&&o?-1:1,g=kd(e,A),{mainAxis:C,crossAxis:B,alignmentAxis:E}=typeof g==="number"?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};if(n&&typeof E==="number")B=n==="end"?E*-1:E;return o?{x:B*l,y:C*s}:{x:C*s,y:B*l}}var ume=function(A){if(A===void 0)A=0;return{name:"offset",options:A,async fn(e){var t,r;let{x:i,y:u,placement:a,middlewareData:n}=e,o=await Isr(e,A);if(a===((t=n.offset)==null?void 0:t.placement)&&(r=n.arrow)!=null&&r.alignmentOffset)return{};return{x:i+o.x,y:u+o.y,data:{...o,placement:a}}}}},ame=function(A){if(A===void 0)A={};return{name:"shift",options:A,async fn(e){let{x:t,y:r,placement:i,platform:u}=e,{mainAxis:a=!0,crossAxis:n=!1,limiter:o={fn:(Q)=>{let{x:p,y:m}=Q;return{x:p,y:m}}},...s}=kd(A,e),l={x:t,y:r},g=await u.detectOverflow(e,s),C=mB(i),B=pz(C),E=l[B],d=l[C],I=(Q,p)=>XpA(p+g[Q==="y"?"top":"left"],p,p-g[Q==="y"?"bottom":"right"]);if(a)E=I(B,E);if(n)d=I(C,d);let h=o.fn({...e,[B]:E,[C]:d});return{...h,data:{x:h.x-t,y:h.y-r,enabled:{[B]:a,[C]:n}}}}}},nme=function(A){if(A===void 0)A={};return{options:A,fn(e){var t,r;let{x:i,y:u,placement:a,rects:n,middlewareData:o}=e,{offset:s=0,mainAxis:l=!0,crossAxis:g=!0}=kd(A,e),C={x:i,y:u},B=mB(a),E=pz(B),d=C[E],I=C[B],h=kd(s,e),Q=typeof h==="number"?{mainAxis:h,crossAxis:0}:{mainAxis:(t=h.mainAxis)!=null?t:0,crossAxis:(r=h.crossAxis)!=null?r:0};if(l){let f=E==="y"?"height":"width",D=n.reference[E]-n.floating[f]+Q.mainAxis,w=n.reference[E]+n.reference[f]-Q.mainAxis;if(d<D)d=D;else if(d>w)d=w}if(g){var p,m;let f=E==="y"?"width":"height",D=ime.has(Oh(a)),w=n.reference[B]-n.floating[f]+(D?((p=o.offset)==null?void 0:p[B])||0:0)+(D?0:Q.crossAxis),b=n.reference[B]+n.reference[f]+(D?0:((m=o.offset)==null?void 0:m[B])||0)-(D?Q.crossAxis:0);if(I<w)I=w;else if(I>b)I=b}return{[E]:d,[B]:I}}}},ome=function(A){if(A===void 0)A={};return{name:"size",options:A,async fn(e){let{placement:t,rects:r,platform:i,elements:u}=e,{apply:a=()=>{},...n}=kd(A,e),o=await i.detectOverflow(e,n),s=Oh(t),l=x2(t),g=mB(t)==="y",{width:C,height:B}=r.floating,E,d;if(s==="top"||s==="bottom")E=s,d=l===(await(i.isRTL==null?void 0:i.isRTL(u.floating))?"start":"end")?"left":"right";else d=s,E=l==="end"?"top":"bottom";let I=B-o.top-o.bottom,h=C-o.left-o.right,Q=bd(B-o[E],I),p=bd(C-o[d],h),m=e.middlewareData.shift,f=!m,D=Q,w=p;if(m!=null&&m.enabled.x)w=h;if(m!=null&&m.enabled.y)D=I;if(f&&!l)if(g)w=C-2*fB(o.left,o.right);else D=B-2*fB(o.top,o.bottom);await a({...e,availableWidth:w,availableHeight:D});let b=await i.getDimensions(u.floating);if(C!==b.width||B!==b.height)return{reset:{rects:!0}};return{}}}};function Dz(){return typeof window<"u"}function N2(A){if(lme(A))return(A.nodeName||"").toLowerCase();return"#document"}function Ws(A){var e;return(A==null||(e=A.ownerDocument)==null?void 0:e.defaultView)||window}function Fd(A){var e;return(e=(lme(A)?A.ownerDocument:A.document)||window.document)==null?void 0:e.documentElement}function lme(A){if(!Dz())return!1;return A instanceof Node||A instanceof Ws(A).Node}function DB(A){if(!Dz())return!1;return A instanceof Element||A instanceof Ws(A).Element}function Ph(A){if(!Dz())return!1;return A instanceof HTMLElement||A instanceof Ws(A).HTMLElement}function sme(A){if(!Dz()||typeof ShadowRoot>"u")return!1;return A instanceof ShadowRoot||A instanceof Ws(A).ShadowRoot}function BL(A){let{overflow:e,overflowX:t,overflowY:r,display:i}=yB(A);return/auto|scroll|overlay|hidden|clip/.test(e+r+t)&&i!=="inline"&&i!=="contents"}function gme(A){return/^(table|td|th)$/.test(N2(A))}function EL(A){try{if(A.matches(":popover-open"))return!0}catch(e){}try{return A.matches(":modal")}catch(e){return!1}}var hsr=/transform|translate|scale|rotate|perspective|filter/,Qsr=/paint|layout|strict|content/,L2=(A)=>!!A&&A!=="none",AfA;function yz(A){let e=DB(A)?yB(A):A;return L2(e.transform)||L2(e.translate)||L2(e.scale)||L2(e.rotate)||L2(e.perspective)||!wz()&&(L2(e.backdropFilter)||L2(e.filter))||hsr.test(e.willChange||"")||Qsr.test(e.contain||"")}function cme(A){let e=pp(A);while(Ph(e)&&!m5(e)){if(yz(e))return e;else if(EL(e))return null;e=pp(e)}return null}function wz(){if(AfA==null)AfA=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none");return AfA}function m5(A){return/^(html|body|#document)$/.test(N2(A))}function yB(A){return Ws(A).getComputedStyle(A)}function dL(A){if(DB(A))return{scrollLeft:A.scrollLeft,scrollTop:A.scrollTop};return{scrollLeft:A.scrollX,scrollTop:A.scrollY}}function pp(A){if(N2(A)==="html")return A;let e=A.assignedSlot||A.parentNode||sme(A)&&A.host||Fd(A);return sme(e)?e.host:e}function Cme(A){let e=pp(A);if(m5(e))return(A.ownerDocument||A).body;if(Ph(e)&&BL(e))return e;return Cme(e)}function R2(A,e,t){var r;if(e===void 0)e=[];if(t===void 0)t=!0;let i=Cme(A),u=i===((r=A.ownerDocument)==null?void 0:r.body),a=Ws(i);if(u){let n=bz(a);return e.concat(a,a.visualViewport||[],BL(i)?i:[],n&&t?R2(n):[])}else return e.concat(i,R2(i,[],t))}function bz(A){return A.parent&&Object.getPrototypeOf(A.parent)?A.frameElement:null}function dme(A){let e=yB(A),t=parseFloat(e.width)||0,r=parseFloat(e.height)||0,i=Ph(A),u=i?A.offsetWidth:t,a=i?A.offsetHeight:r,n=cL(t)!==u||cL(r)!==a;if(n)t=u,r=a;return{width:t,height:r,$:n}}function tfA(A){return!DB(A)?A.contextElement:A}function D5(A){let e=tfA(A);if(!Ph(e))return vd(1);let t=e.getBoundingClientRect(),{width:r,height:i,$:u}=dme(e),a=(u?cL(t.width):t.width)/r,n=(u?cL(t.height):t.height)/i;if(!a||!Number.isFinite(a))a=1;if(!n||!Number.isFinite(n))n=1;return{x:a,y:n}}var psr=vd(0);function Ime(A){let e=Ws(A);if(!wz()||!e.visualViewport)return psr;return{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function fsr(A,e,t){if(e===void 0)e=!1;return!!t&&e&&t===Ws(A)}function G2(A,e,t,r){if(e===void 0)e=!1;if(t===void 0)t=!1;let i=A.getBoundingClientRect(),u=tfA(A),a=vd(1);if(e)if(r){if(DB(r))a=D5(r)}else a=D5(A);let n=fsr(u,t,r)?Ime(u):vd(0),o=(i.left+n.x)/a.x,s=(i.top+n.y)/a.y,l=i.width/a.x,g=i.height/a.y;if(u&&r){let C=Ws(u),B=DB(r)?Ws(r):r,E=C,d=bz(E);while(d&&B!==E){let I=D5(d),h=d.getBoundingClientRect(),Q=yB(d),p=h.left+(d.clientLeft+parseFloat(Q.paddingLeft))*I.x,m=h.top+(d.clientTop+parseFloat(Q.paddingTop))*I.y;o*=I.x,s*=I.y,l*=I.x,g*=I.y,o+=p,s+=m,E=Ws(d),d=bz(E)}}return S2({width:l,height:g,x:o,y:s})}function vz(A,e){let t=dL(A).scrollLeft;if(!e)return G2(Fd(A)).left+t;return e.left+t}function hme(A,e){let t=A.getBoundingClientRect(),r=t.left+e.scrollLeft-vz(A,t),i=t.top+e.scrollTop;return{x:r,y:i}}function msr(A){let{elements:e,rect:t,offsetParent:r,strategy:i}=A,u=i==="fixed",a=Fd(r),n=e?EL(e.floating):!1;if(r===a||n&&u)return t;let o={scrollLeft:0,scrollTop:0},s=vd(1),l=vd(0),g=Ph(r);if(g||!u){if(N2(r)!=="body"||BL(a))o=dL(r);if(g){let B=G2(r);s=D5(r),l.x=B.x+r.clientLeft,l.y=B.y+r.clientTop}}let C=a&&!g&&!u?hme(a,o):vd(0);return{width:t.width*s.x,height:t.height*s.y,x:t.x*s.x-o.scrollLeft*s.x+l.x+C.x,y:t.y*s.y-o.scrollTop*s.y+l.y+C.y}}function Dsr(A){return A.getClientRects?Array.from(A.getClientRects()):[]}function ysr(A){let e=dL(A),t=A.ownerDocument.body,r=fB(A.scrollWidth,A.clientWidth,t.scrollWidth,t.clientWidth),i=fB(A.scrollHeight,A.clientHeight,t.scrollHeight,t.clientHeight),u=-e.scrollLeft+vz(A),a=-e.scrollTop;if(yB(t).direction==="rtl")u+=fB(A.clientWidth,t.clientWidth)-r;return{width:r,height:i,x:u,y:a}}var wsr=25;function bsr(A,e,t){if(t===void 0)t="viewport";let r=t==="layoutViewport",i=Ws(A),u=Fd(A),a=i.visualViewport,{clientWidth:n,clientHeight:o}=u,s=0,l=0;if(a){let C=!wz()||e==="fixed";if(r){if(!C)s=-a.offsetLeft,l=-a.offsetTop}else if(n=a.width,o=a.height,C)s=a.offsetLeft,l=a.offsetTop}if(vz(u)<=0){let C=u.ownerDocument,B=C.body,E=getComputedStyle(B),d=C.compatMode==="CSS1Compat"?parseFloat(E.marginLeft)+parseFloat(E.marginRight)||0:0,I=Math.abs(u.clientWidth-B.clientWidth-d),h=getComputedStyle(u).scrollbarGutter==="stable both-edges"?I/2:I;if(h<=wsr)n-=h}return{width:n,height:o,x:s,y:l}}function vsr(A,e){let t=G2(A,!0,e==="fixed"),r=t.top+A.clientTop,i=t.left+A.clientLeft,u=D5(A),a=A.clientWidth*u.x,n=A.clientHeight*u.y,o=i*u.x,s=r*u.y;return{width:a,height:n,x:o,y:s}}function Bme(A,e,t){let r;if(e==="viewport"||e==="layoutViewport")r=bsr(A,t,e);else if(e==="document")r=ysr(Fd(A));else if(DB(e))r=vsr(e,t);else{let i=Ime(A);r={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height}}return S2(r)}function ksr(A,e){let t=e.get(A);if(t)return t;let r=R2(A,[],!1).filter((n)=>DB(n)&&N2(n)!=="body"),i=null,u=yB(A).position==="fixed",a=u?pp(A):A;while(DB(a)&&!m5(a)){let n=yB(a),o=yz(a),s=i?i.position:u?"fixed":"";if(!o&&(s==="fixed"||s==="absolute"&&n.position==="static"))r=r.filter((g)=>g!==a);else i=n;a=pp(a)}return e.set(A,r),r}function Fsr(A){let{element:e,boundary:t,rootBoundary:r,strategy:i}=A,a=[...t==="clippingAncestors"?EL(e)?[]:ksr(e,this._c):[].concat(t),r],n=Bme(e,a[0],i),{top:o,right:s,bottom:l,left:g}=n;for(let C=1;C<a.length;C++){let B=Bme(e,a[C],i);o=fB(B.top,o),s=bd(B.right,s),l=bd(B.bottom,l),g=fB(B.left,g)}return{width:s-g,height:l-o,x:g,y:o}}function xsr(A){let{width:e,height:t}=dme(A);return{width:e,height:t}}function Ssr(A,e,t){let r=Ph(e),i=Fd(e),u=t==="fixed",a=G2(A,!0,u,e),n={scrollLeft:0,scrollTop:0},o=vd(0);if(r||!u){if(N2(e)!=="body"||BL(i))n=dL(e);if(r){let C=G2(e,!0,u,e);o.x=C.x+e.clientLeft,o.y=C.y+e.clientTop}}if(!r&&i)o.x=vz(i);let s=i&&!r&&!u?hme(i,n):vd(0),l=a.left+n.scrollLeft-o.x-s.x,g=a.top+n.scrollTop-o.y-s.y;return{x:l,y:g,width:a.width,height:a.height}}function efA(A){return yB(A).position==="static"}function Eme(A,e){if(!Ph(A)||yB(A).position==="fixed")return null;if(e)return e(A);let t=A.offsetParent;if(Fd(A)===t)t=t.ownerDocument.body;return t}function Qme(A,e){let t=Ws(A);if(EL(A))return t;if(!Ph(A)){let i=pp(A);while(i&&!m5(i)){if(DB(i)&&!efA(i))return i;i=pp(i)}return t}let r=Eme(A,e);while(r&&gme(r)&&efA(r))r=Eme(r,e);if(r&&m5(r)&&efA(r)&&!yz(r))return t;return r||cme(A)||t}var Lsr=async function(A){let e=this.getOffsetParent||Qme,t=this.getDimensions,r=await t(A.floating);return{reference:Ssr(A.reference,await e(A.floating),A.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function Rsr(A){return yB(A).direction==="rtl"}var pme={convertOffsetParentRelativeRectToViewportRelativeRect:msr,getDocumentElement:Fd,getClippingRect:Fsr,getOffsetParent:Qme,getElementRects:Lsr,getClientRects:Dsr,getDimensions:xsr,getScale:D5,isElement:DB,isRTL:Rsr};function fme(A,e){return A.x===e.x&&A.y===e.y&&A.width===e.width&&A.height===e.height}function Nsr(A,e,t){let r=null,i,u=Fd(A);function a(){var l;clearTimeout(i),(l=r)==null||l.disconnect(),r=null}function n(l,g){if(l===void 0)l=!1;if(g===void 0)g=1;a();let C=A.getBoundingClientRect(),{left:B,top:E,width:d,height:I}=C;if(!l)e();if(!d||!I)return;let h=CL(E),Q=CL(u.clientWidth-(B+d)),p=CL(u.clientHeight-(E+I)),m=CL(B),D={rootMargin:-h+"px "+-Q+"px "+-p+"px "+-m+"px",threshold:fB(0,bd(1,g))||1},w=!0;function b(k){let v=k[0].intersectionRatio;if(!fme(C,A.getBoundingClientRect()))return n();if(v!==g){if(!w)return n();if(!v)i=setTimeout(()=>{n(!1,0.0000001)},1000);else n(!1,v)}w=!1}try{r=new IntersectionObserver(b,{...D,root:u.ownerDocument})}catch(k){r=new IntersectionObserver(b,D)}r.observe(A)}let o=Ws(A),s=()=>n(t);return o.addEventListener("resize",s),n(!0),()=>{o.removeEventListener("resize",s),a()}}function rfA(A,e,t,r){if(r===void 0)r={};let{ancestorScroll:i=!0,ancestorResize:u=!0,elementResize:a=typeof ResizeObserver==="function",layoutShift:n=typeof IntersectionObserver==="function",animationFrame:o=!1}=r,s=tfA(A),l=i||u?[...s?R2(s):[],...e?R2(e):[]]:[];l.forEach((h)=>{i&&h.addEventListener("scroll",t),u&&h.addEventListener("resize",t)});let g=s&&n?Nsr(s,t,u):null,C=-1,B=null;if(a){if(B=new ResizeObserver((h)=>{let[Q]=h;if(Q&&Q.target===s&&B&&e)B.unobserve(e),cancelAnimationFrame(C),C=requestAnimationFrame(()=>{var p;(p=B)==null||p.observe(e)});t()}),s&&!o)B.observe(s);if(e)B.observe(e)}let E,d=o?G2(A):null;if(o)I();function I(){let h=G2(A);if(d&&!fme(d,h))t();d=h,E=requestAnimationFrame(I)}return t(),()=>{var h;if(l.forEach((Q)=>{i&&Q.removeEventListener("scroll",t),u&&Q.removeEventListener("resize",t)}),g==null||g(),(h=B)==null||h.disconnect(),B=null,o)cancelAnimationFrame(E)}}var mme=ume;var Dme=ame,yme=tme,wme=ome,bme=rme,ifA=eme;var vme=nme,ufA=(A,e,t)=>{let r=new Map,i=t!=null?t:{},u={...pme,...i.platform,_c:r};return Ame(A,e,{...i,platform:u})};fe();fe();var Gsr=typeof document<"u",Usr=function(){},kz=Gsr?Ii:Usr;function Fz(A,e){if(A===e)return!0;if(typeof A!==typeof e)return!1;if(typeof A==="function"&&A.toString()===e.toString())return!0;let t,r,i;if(A&&e&&typeof A==="object"){if(Array.isArray(A)){if(t=A.length,t!==e.length)return!1;for(r=t;r--!==0;)if(!Fz(A[r],e[r]))return!1;return!0}if(i=Object.keys(A),t=i.length,t!==Object.keys(e).length)return!1;for(r=t;r--!==0;)if(!{}.hasOwnProperty.call(e,i[r]))return!1;for(r=t;r--!==0;){let u=i[r];if(u==="_owner"&&A.$$typeof)continue;if(!Fz(A[u],e[u]))return!1}return!0}return A!==A&&e!==e}function Fme(A){if(typeof window>"u")return 1;return(A.ownerDocument.defaultView||window).devicePixelRatio||1}function kme(A,e){let t=Fme(A);return Math.round(e*t)/t}function afA(A){let e=Ee(A);return kz(()=>{e.current=A}),e}function xme(A){if(A===void 0)A={};let{placement:e="bottom",strategy:t="absolute",middleware:r=[],platform:i,elements:{reference:u,floating:a}={},transform:n=!0,whileElementsMounted:o,open:s}=A,[l,g]=we({x:0,y:0,strategy:t,placement:e,middlewareData:{},isPositioned:!1}),[C,B]=we(r);if(!Fz(C,r))B(r);let[E,d]=we(null),[I,h]=we(null),Q=st((U)=>{if(U!==D.current)D.current=U,d(U)},[]),p=st((U)=>{if(U!==w.current)w.current=U,h(U)},[]),m=u||E,f=a||I,D=Ee(null),w=Ee(null),b=Ee(l),k=o!=null,v=afA(o),S=afA(i),x=afA(s),F=st(()=>{if(!D.current||!w.current)return;let U={placement:e,strategy:t,middleware:C};if(S.current)U.platform=S.current;ufA(D.current,w.current,U).then((Y)=>{let H={...Y,isPositioned:x.current!==!1};if(T.current&&!Fz(b.current,H))b.current=H,_n(()=>{g(H)})})},[C,e,t,S,x]);kz(()=>{if(s===!1&&b.current.isPositioned)b.current.isPositioned=!1,g((U)=>({...U,isPositioned:!1}))},[s]);let T=Ee(!1);kz(()=>(T.current=!0,()=>{T.current=!1}),[]),kz(()=>{if(m)D.current=m;if(f)w.current=f;if(m&&f){if(v.current)return v.current(m,f,F);F()}},[m,f,F,v,k]);let R=Ut(()=>({reference:D,floating:w,setReference:Q,setFloating:p}),[Q,p]),L=Ut(()=>({reference:m,floating:f}),[m,f]),M=Ut(()=>{let U={position:t,left:0,top:0};if(!L.floating)return U;let Y=kme(L.floating,l.x),H=kme(L.floating,l.y);if(n)return{...U,transform:"translate("+Y+"px, "+H+"px)",...Fme(L.floating)>=1.5&&{willChange:"transform"}};return{position:t,left:Y,top:H}},[t,n,L.floating,l.x,l.y]);return Ut(()=>({...l,update:F,refs:R,elements:L,floatingStyles:M}),[l,F,R,L,M])}var Msr=(A)=>{function e(t){return{}.hasOwnProperty.call(t,"current")}return{name:"arrow",options:A,fn(t){let{element:r,padding:i}=typeof A==="function"?A(t):A;if(r&&e(r)){if(r.current!=null)return ifA({element:r.current,padding:i}).fn(t);return{}}if(r)return ifA({element:r,padding:i}).fn(t);return{}}}},Sme=(A,e)=>{let t=mme(A);return{name:t.name,fn:t.fn,options:[A,e]}},Lme=(A,e)=>{let t=Dme(A);return{name:t.name,fn:t.fn,options:[A,e]}},Rme=(A,e)=>({fn:vme(A).fn,options:[A,e]}),Nme=(A,e)=>{let t=yme(A);return{name:t.name,fn:t.fn,options:[A,e]}},Gme=(A,e)=>{let t=wme(A);return{name:t.name,fn:t.fn,options:[A,e]}};var Ume=(A,e)=>{let t=bme(A);return{name:t.name,fn:t.fn,options:[A,e]}};var Mme=(A,e)=>{let t=Msr(A);return{name:t.name,fn:t.fn,options:[A,e]}};fe();Be();var Tsr="Arrow",Tme=mt((A,e)=>{let{children:t,width:r=10,height:i=5,...u}=A;return N(_s.svg,{...u,ref:e,width:r,height:i,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:A.asChild?t:N("polygon",{points:"0,0 30,0 15,10"})})});Tme.displayName=Tsr;var Yme=Tme;fe();function Hme(A){let[e,t]=we(void 0);return Pc(()=>{if(A){t({width:A.offsetWidth,height:A.offsetHeight});let r=new ResizeObserver((i)=>{if(!Array.isArray(i))return;if(!i.length)return;let u=i[0],a,n;if("borderBoxSize"in u){let o=u.borderBoxSize,s=Array.isArray(o)?o[0]:o;a=s.inlineSize,n=s.blockSize}else a=A.offsetWidth,n=A.offsetHeight;t({width:a,height:n})});return r.observe(A,{box:"border-box"}),()=>r.unobserve(A)}else t(void 0)},[A]),e}Be();var nfA="Popper",[Kme,ofA]=hz(nfA),[Hsr,Jme]=Kme(nfA),Ome=(A)=>{let{__scopePopper:e,children:t}=A,[r,i]=we(null);return N(Hsr,{scope:e,anchor:r,onAnchorChange:i,children:t})};Ome.displayName=nfA;var Pme="PopperAnchor",_me=mt((A,e)=>{let{__scopePopper:t,virtualRef:r,...i}=A,u=Jme(Pme,t),a=Ee(null),n=Ug(e,a);return le(()=>{u.onAnchorChange(r?.current||a.current)}),r?null:N(_s.div,{...i,ref:n})});_me.displayName=Pme;var sfA="PopperContent",[Ksr,Jsr]=Kme(sfA),Wme=mt((A,e)=>{let{__scopePopper:t,side:r="bottom",sideOffset:i=0,align:u="center",alignOffset:a=0,arrowPadding:n=0,avoidCollisions:o=!0,collisionBoundary:s=[],collisionPadding:l=0,sticky:g="partial",hideWhenDetached:C=!1,updatePositionStrategy:B="optimized",onPlaced:E,...d}=A,I=Jme(sfA,t),[h,Q]=we(null),p=Ug(e,(W)=>Q(W)),[m,f]=we(null),D=Hme(m),w=D?.width??0,b=D?.height??0,k=r+(u!=="center"?"-"+u:""),v=typeof l==="number"?l:{top:0,right:0,bottom:0,left:0,...l},S=Array.isArray(s)?s:[s],x=S.length>0,F={padding:v,boundary:S.filter(Psr),altBoundary:x},{refs:T,floatingStyles:R,placement:L,isPositioned:M,middlewareData:U}=xme({strategy:"fixed",placement:k,whileElementsMounted:(...W)=>rfA(...W,{animationFrame:B==="always"}),elements:{reference:I.anchor},middleware:[Sme({mainAxis:i+b,alignmentAxis:a}),o&&Lme({mainAxis:!0,crossAxis:!1,limiter:g==="partial"?Rme():void 0,...F}),o&&Nme({...F}),Gme({...F,apply:({elements:W,rects:CA,availableWidth:tA,availableHeight:lA})=>{let{width:gA,height:aA}=CA.reference,NA=W.floating.style;NA.setProperty("--radix-popper-available-width",`${tA}px`),NA.setProperty("--radix-popper-available-height",`${lA}px`),NA.setProperty("--radix-popper-anchor-width",`${gA}px`),NA.setProperty("--radix-popper-anchor-height",`${aA}px`)}}),m&&Mme({element:m,padding:n}),_sr({arrowWidth:w,arrowHeight:b}),C&&Ume({strategy:"referenceHidden",...F})]}),[Y,H]=Zme(L),J=Mg(E);Pc(()=>{if(M)J?.()},[M,J]);let K=U.arrow?.x,O=U.arrow?.y,P=U.arrow?.centerOffset!==0,[z,AA]=we();return Pc(()=>{if(h)AA(window.getComputedStyle(h).zIndex)},[h]),N("div",{ref:T.setFloating,"data-radix-popper-content-wrapper":"",style:{...R,transform:M?R.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:z,["--radix-popper-transform-origin"]:[U.transformOrigin?.x,U.transformOrigin?.y].join(" "),...U.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:A.dir,children:N(Ksr,{scope:t,placedSide:Y,onArrowChange:f,arrowX:K,arrowY:O,shouldHideArrow:P,children:N(_s.div,{"data-side":Y,"data-align":H,...d,ref:p,style:{...d.style,animation:!M?"none":void 0}})})})});Wme.displayName=sfA;var qme="PopperArrow",Osr={top:"bottom",right:"left",bottom:"top",left:"right"},zme=mt(function(e,t){let{__scopePopper:r,...i}=e,u=Jsr(qme,r),a=Osr[u.placedSide];return N("span",{ref:u.onArrowChange,style:{position:"absolute",left:u.arrowX,top:u.arrowY,[a]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[u.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[u.placedSide],visibility:u.shouldHideArrow?"hidden":void 0},children:N(Yme,{...i,ref:t,style:{...i.style,display:"block"}})})});zme.displayName=qme;function Psr(A){return A!==null}var _sr=(A)=>({name:"transformOrigin",options:A,fn(e){let{placement:t,rects:r,middlewareData:i}=e,a=i.arrow?.centerOffset!==0,n=a?0:A.arrowWidth,o=a?0:A.arrowHeight,[s,l]=Zme(t),g={start:"0%",center:"50%",end:"100%"}[l],C=(i.arrow?.x??0)+n/2,B=(i.arrow?.y??0)+o/2,E="",d="";if(s==="bottom")E=a?g:`${C}px`,d=`${-o}px`;else if(s==="top")E=a?g:`${C}px`,d=`${r.floating.height+o}px`;else if(s==="right")E=`${-o}px`,d=a?g:`${B}px`;else if(s==="left")E=`${r.floating.width+o}px`,d=a?g:`${B}px`;return{data:{x:E,y:d}}}});function Zme(A){let[e,t="center"]=A.split("-");return[e,t]}var Vme=Ome,lfA=_me,jme=Wme,Xme=zme;fe();Be();var qsr="Portal",gfA=mt((A,e)=>{let{container:t,...r}=A,[i,u]=we(!1);Pc(()=>u(!0),[]);let a=t||i&&globalThis?.document?.body;return a?p5(N(_s.div,{...r,ref:e}),a):null});gfA.displayName=qsr;fe();fe();function zsr(A,e){return f1((t,r)=>e[t][r]??t,A)}var Sz=(A)=>{let{present:e,children:t}=A,r=Zsr(e),i=typeof t==="function"?t({present:r.isPresent}):di.only(t),u=Ug(r.ref,Vsr(i));return typeof t==="function"||r.isPresent?Kn(i,{ref:u}):null};Sz.displayName="Presence";function Zsr(A){let[e,t]=we(),r=Ee({}),i=Ee(A),u=Ee("none"),a=A?"mounted":"unmounted",[n,o]=zsr(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return le(()=>{let s=xz(r.current);u.current=n==="mounted"?s:"none"},[n]),Pc(()=>{let s=r.current,l=i.current;if(l!==A){let C=u.current,B=xz(s);if(A)o("MOUNT");else if(B==="none"||s?.display==="none")o("UNMOUNT");else if(l&&C!==B)o("ANIMATION_OUT");else o("UNMOUNT");i.current=A}},[A,o]),Pc(()=>{if(e){let s,l=e.ownerDocument.defaultView??window,g=(B)=>{let d=xz(r.current).includes(B.animationName);if(B.target===e&&d){if(o("ANIMATION_END"),!i.current){let I=e.style.animationFillMode;e.style.animationFillMode="forwards",s=l.setTimeout(()=>{if(e.style.animationFillMode==="forwards")e.style.animationFillMode=I})}}},C=(B)=>{if(B.target===e)u.current=xz(r.current)};return e.addEventListener("animationstart",C),e.addEventListener("animationcancel",g),e.addEventListener("animationend",g),()=>{l.clearTimeout(s),e.removeEventListener("animationstart",C),e.removeEventListener("animationcancel",g),e.removeEventListener("animationend",g)}}else o("ANIMATION_END")},[e,o]),{isPresent:["mounted","unmountSuspended"].includes(n),ref:st((s)=>{if(s)r.current=getComputedStyle(s);t(s)},[])}}function xz(A){return A?.animationName||"none"}function Vsr(A){let e=Object.getOwnPropertyDescriptor(A.props,"ref")?.get,t=e&&"isReactWarning"in e&&e.isReactWarning;if(t)return A.ref;if(e=Object.getOwnPropertyDescriptor(A,"ref")?.get,t=e&&"isReactWarning"in e&&e.isReactWarning,t)return A.props.ref;return A.props.ref||A.ref}fe();function $me({prop:A,defaultProp:e,onChange:t=()=>{}}){let[r,i]=jsr({defaultProp:e,onChange:t}),u=A!==void 0,a=u?A:r,n=Mg(t),o=st((s)=>{if(u){let g=typeof s==="function"?s(A):s;if(g!==A)n(g)}else i(s)},[u,A,i,n]);return[a,o]}function jsr({defaultProp:A,onChange:e}){let t=we(A),[r]=t,i=Ee(r),u=Mg(e);return le(()=>{if(i.current!==r)u(r),i.current=r},[r,i,u]),t}var Xsr=function(A){if(typeof document>"u")return null;var e=Array.isArray(A)?A[0]:A;return e.ownerDocument.body},y5=new WeakMap,Lz=new WeakMap,Rz={},cfA=0,A2e=function(A){return A&&(A.host||A2e(A.parentNode))},$sr=function(A,e){return e.map(function(t){if(A.contains(t))return t;var r=A2e(t);if(r&&A.contains(r))return r;return console.error("aria-hidden",t,"in not contained inside",A,". Doing nothing"),null}).filter(function(t){return Boolean(t)})},Alr=function(A,e,t,r){var i=$sr(e,Array.isArray(A)?A:[A]);if(!Rz[t])Rz[t]=new WeakMap;var u=Rz[t],a=[],n=new Set,o=new Set(i),s=function(g){if(!g||n.has(g))return;n.add(g),s(g.parentNode)};i.forEach(s);var l=function(g){if(!g||o.has(g))return;Array.prototype.forEach.call(g.children,function(C){if(n.has(C))l(C);else try{var B=C.getAttribute(r),E=B!==null&&B!=="false",d=(y5.get(C)||0)+1,I=(u.get(C)||0)+1;if(y5.set(C,d),u.set(C,I),a.push(C),d===1&&E)Lz.set(C,!0);if(I===1)C.setAttribute(t,"true");if(!E)C.setAttribute(r,"true")}catch(h){console.error("aria-hidden: cannot operate on ",C,h)}})};return l(e),n.clear(),cfA++,function(){if(a.forEach(function(g){var C=y5.get(g)-1,B=u.get(g)-1;if(y5.set(g,C),u.set(g,B),!C){if(!Lz.has(g))g.removeAttribute(r);Lz.delete(g)}if(!B)g.removeAttribute(t)}),cfA--,!cfA)y5=new WeakMap,y5=new WeakMap,Lz=new WeakMap,Rz={}}},e2e=function(A,e,t){if(t===void 0)t="data-aria-hidden";var r=Array.from(Array.isArray(A)?A:[A]),i=e||Xsr(A);if(!i)return function(){return null};return r.push.apply(r,Array.from(i.querySelectorAll("[aria-live], script"))),Alr(r,i,t,"aria-hidden")};var Jl=function(){return Jl=Object.assign||function(e){for(var t,r=1,i=arguments.length;r<i;r++){t=arguments[r];for(var u in t)if(Object.prototype.hasOwnProperty.call(t,u))e[u]=t[u]}return e},Jl.apply(this,arguments)};function Nz(A,e){var t={};for(var r in A)if(Object.prototype.hasOwnProperty.call(A,r)&&e.indexOf(r)<0)t[r]=A[r];if(A!=null&&typeof Object.getOwnPropertySymbols==="function"){for(var i=0,r=Object.getOwnPropertySymbols(A);i<r.length;i++)if(e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(A,r[i]))t[r[i]]=A[r[i]]}return t}function t2e(A,e,t){if(t||arguments.length===2){for(var r=0,i=e.length,u;r<i;r++)if(u||!(r in e)){if(!u)u=Array.prototype.slice.call(e,0,r);u[r]=e[r]}}return A.concat(u||Array.prototype.slice.call(e))}fe();fe();var U2="right-scroll-bar-position",M2="width-before-scroll-bar",CfA="with-scroll-bars-hidden",BfA="--removed-body-scroll-bar-size";fe();function Gz(A,e){if(typeof A==="function")A(e);else if(A)A.current=e;return A}fe();function r2e(A,e){var t=we(function(){return{value:A,callback:e,facade:{get current(){return t.value},set current(r){var i=t.value;if(i!==r)t.value=r,t.callback(r,i)}}}})[0];return t.callback=e,t.facade}var elr=typeof window<"u"?Ii:le,i2e=new WeakMap;function EfA(A,e){var t=r2e(e||null,function(r){return A.forEach(function(i){return Gz(i,r)})});return elr(function(){var r=i2e.get(t);if(r){var i=new Set(r),u=new Set(A),a=t.current;i.forEach(function(n){if(!u.has(n))Gz(n,null)}),u.forEach(function(n){if(!i.has(n))Gz(n,a)})}i2e.set(t,A)},[A]),t}function tlr(A){return A}function rlr(A,e){if(e===void 0)e=tlr;var t=[],r=!1,i={read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");if(t.length)return t[t.length-1];return A},useMedium:function(u){var a=e(u,r);return t.push(a),function(){t=t.filter(function(n){return n!==a})}},assignSyncMedium:function(u){r=!0;while(t.length){var a=t;t=[],a.forEach(u)}t={push:function(n){return u(n)},filter:function(){return t}}},assignMedium:function(u){r=!0;var a=[];if(t.length){var n=t;t=[],n.forEach(u),a=t}var o=function(){var l=a;a=[],l.forEach(u)},s=function(){return Promise.resolve().then(o)};s(),t={push:function(l){a.push(l),s()},filter:function(l){return a=a.filter(l),t}}}};return i}function dfA(A){if(A===void 0)A={};var e=rlr(null);return e.options=Jl({async:!0,ssr:!1},A),e}fe();var u2e=function(A){var e=A.sideCar,t=Nz(A,["sideCar"]);if(!e)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=e.read();if(!r)throw Error("Sidecar medium not found");return Rt(r,Jl({},t))};u2e.isSideCarExport=!0;function IfA(A,e){return A.useMedium(e),u2e}var Uz=dfA();var hfA=function(){return},IL=mt(function(A,e){var t=Ee(null),r=we({onScrollCapture:hfA,onWheelCapture:hfA,onTouchMoveCapture:hfA}),i=r[0],u=r[1],{forwardProps:a,children:n,className:o,removeScrollBar:s,enabled:l,shards:g,sideCar:C,noRelative:B,noIsolation:E,inert:d,allowPinchZoom:I,as:h}=A,Q=h===void 0?"div":h,p=A.gapMode,m=Nz(A,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),f=C,D=EfA([t,e]),w=Jl(Jl({},m),i);return Rt(ho,null,l&&Rt(f,{sideCar:Uz,removeScrollBar:s,shards:g,noRelative:B,noIsolation:E,inert:d,setCallbacks:u,allowPinchZoom:!!I,lockRef:t,gapMode:p}),a?Kn(di.only(n),Jl(Jl({},w),{ref:D})):Rt(Q,Jl({},w,{className:o,ref:D}),n))});IL.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};IL.classNames={fullWidth:M2,zeroRight:U2};fe();fe();fe();var a2e;var n2e=function(){if(a2e)return a2e;if(typeof __webpack_nonce__<"u")return __webpack_nonce__;return};function ilr(){if(!document)return null;var A=document.createElement("style");A.type="text/css";var e=n2e();if(e)A.setAttribute("nonce",e);return A}function ulr(A,e){if(A.styleSheet)A.styleSheet.cssText=e;else A.appendChild(document.createTextNode(e))}function alr(A){var e=document.head||document.getElementsByTagName("head")[0];e.appendChild(A)}var QfA=function(){var A=0,e=null;return{add:function(t){if(A==0){if(e=ilr())ulr(e,t),alr(e)}A++},remove:function(){if(A--,!A&&e)e.parentNode&&e.parentNode.removeChild(e),e=null}}};var pfA=function(){var A=QfA();return function(e,t){le(function(){return A.add(e),function(){A.remove()}},[e&&t])}};var hL=function(){var A=pfA(),e=function(t){var{styles:r,dynamic:i}=t;return A(r,i),null};return e};var nlr={left:0,top:0,right:0,gap:0},ffA=function(A){return parseInt(A||"",10)||0},olr=function(A){var e=window.getComputedStyle(document.body),t=e[A==="padding"?"paddingLeft":"marginLeft"],r=e[A==="padding"?"paddingTop":"marginTop"],i=e[A==="padding"?"paddingRight":"marginRight"];return[ffA(t),ffA(r),ffA(i)]},mfA=function(A){if(A===void 0)A="margin";if(typeof window>"u")return nlr;var e=olr(A),t=document.documentElement.clientWidth,r=window.innerWidth;return{left:e[0],top:e[1],right:e[2],gap:Math.max(0,r-t+e[2]-e[0])}};var slr=hL(),w5="data-scroll-locked",llr=function(A,e,t,r){var{left:i,top:u,right:a,gap:n}=A;if(t===void 0)t="margin";return`
.`.concat(CfA,` {
overflow: hidden `).concat(r,`;
padding-right: `).concat(n,"px ").concat(r,`;
}
body[`).concat(w5,`] {
overflow: hidden `).concat(r,`;
overscroll-behavior: contain;
`).concat([e&&"position: relative ".concat(r,";"),t==="margin"&&`
padding-left: `.concat(i,`px;
padding-top: `).concat(u,`px;
padding-right: `).concat(a,`px;
margin-left:0;
margin-top:0;
margin-right: `).concat(n,"px ").concat(r,`;
`),t==="padding"&&"padding-right: ".concat(n,"px ").concat(r,";")].filter(Boolean).join(""),`
}
.`).concat(U2,` {
right: `).concat(n,"px ").concat(r,`;
}
.`).concat(M2,` {
margin-right: `).concat(n,"px ").concat(r,`;
}
.`).concat(U2," .").concat(U2,` {
right: 0 `).concat(r,`;
}
.`).concat(M2," .").concat(M2,` {
margin-right: 0 `).concat(r,`;
}
body[`).concat(w5,`] {
`).concat(BfA,": ").concat(n,`px;
}
`)},o2e=function(){var A=parseInt(document.body.getAttribute(w5)||"0",10);return isFinite(A)?A:0},glr=function(){le(function(){return document.body.setAttribute(w5,(o2e()+1).toString()),function(){var A=o2e()-1;if(A<=0)document.body.removeAttribute(w5);else document.body.setAttribute(w5,A.toString())}},[])},DfA=function(A){var{noRelative:e,noImportant:t,gapMode:r}=A,i=r===void 0?"margin":r;glr();var u=Ut(function(){return mfA(i)},[i]);return Rt(slr,{styles:llr(u,!e,i,!t?"!important":"")})};var yfA=!1;if(typeof window<"u")try{b5=Object.defineProperty({},"passive",{get:function(){return yfA=!0,!0}}),window.addEventListener("test",b5,b5),window.removeEventListener("test",b5,b5)}catch(A){yfA=!1}var b5,T2=yfA?{passive:!1}:!1;var clr=function(A){return A.tagName==="TEXTAREA"},s2e=function(A,e){if(!(A instanceof Element))return!1;var t=window.getComputedStyle(A);return t[e]!=="hidden"&&!(t.overflowY===t.overflowX&&!clr(A)&&t[e]==="visible")},Clr=function(A){return s2e(A,"overflowY")},Blr=function(A){return s2e(A,"overflowX")},wfA=function(A,e){var t=e.ownerDocument,r=e;do{if(typeof ShadowRoot<"u"&&r instanceof ShadowRoot)r=r.host;var i=l2e(A,r);if(i){var u=g2e(A,r),a=u[1],n=u[2];if(a>n)return!0}r=r.parentNode}while(r&&r!==t.body);return!1},Elr=function(A){var{scrollTop:e,scrollHeight:t,clientHeight:r}=A;return[e,t,r]},dlr=function(A){var{scrollLeft:e,scrollWidth:t,clientWidth:r}=A;return[e,t,r]},l2e=function(A,e){return A==="v"?Clr(e):Blr(e)},g2e=function(A,e){return A==="v"?Elr(e):dlr(e)},Ilr=function(A,e){return A==="h"&&e==="rtl"?-1:1},c2e=function(A,e,t,r,i){var u=Ilr(A,window.getComputedStyle(e).direction),a=u*r,n=t.target,o=e.contains(n),s=!1,l=a>0,g=0,C=0;do{if(!n)break;var B=g2e(A,n),E=B[0],d=B[1],I=B[2],h=d-I-u*E;if(E||h){if(l2e(A,n))g+=h,C+=E}var Q=n.parentNode;n=Q&&Q.nodeType===Node.DOCUMENT_FRAGMENT_NODE?Q.host:Q}while(!o&&n!==document.body||o&&(e.contains(n)||e===n));if(l&&(i&&Math.abs(g)<1||!i&&a>g))s=!0;else if(!l&&(i&&Math.abs(C)<1||!i&&-a>C))s=!0;return s};var Mz=function(A){return"changedTouches"in A?[A.changedTouches[0].clientX,A.changedTouches[0].clientY]:[0,0]},C2e=function(A){return[A.deltaX,A.deltaY]},B2e=function(A){return A&&"current"in A?A.current:A},hlr=function(A,e){return A[0]===e[0]&&A[1]===e[1]},Qlr=function(A){return`
.block-interactivity-`.concat(A,` {pointer-events: none;}
.allow-interactivity-`).concat(A,` {pointer-events: all;}
`)},plr=0,v5=[];function E2e(A){var e=Ee([]),t=Ee([0,0]),r=Ee(),i=we(plr++)[0],u=we(hL)[0],a=Ee(A);le(function(){a.current=A},[A]),le(function(){if(A.inert){document.body.classList.add("block-interactivity-".concat(i));var d=t2e([A.lockRef.current],(A.shards||[]).map(B2e),!0).filter(Boolean);return d.forEach(function(I){return I.classList.add("allow-interactivity-".concat(i))}),function(){document.body.classList.remove("block-interactivity-".concat(i)),d.forEach(function(I){return I.classList.remove("allow-interactivity-".concat(i))})}}return},[A.inert,A.lockRef.current,A.shards]);var n=st(function(d,I){if("touches"in d&&d.touches.length===2||d.type==="wheel"&&d.ctrlKey)return!a.current.allowPinchZoom;var h=Mz(d),Q=t.current,p="deltaX"in d?d.deltaX:Q[0]-h[0],m="deltaY"in d?d.deltaY:Q[1]-h[1],f,D=d.target,w=Math.abs(p)>Math.abs(m)?"h":"v";if("touches"in d&&w==="h"&&D.type==="range")return!1;var b=window.getSelection(),k=b&&b.anchorNode,v=k?k===D||k.contains(D):!1;if(v)return!1;var S=wfA(w,D);if(!S)return!0;if(S)f=w;else f=w==="v"?"h":"v",S=wfA(w,D);if(!S)return!1;if(!r.current&&"changedTouches"in d&&(p||m))r.current=f;if(!f)return!0;var x=r.current||f;return c2e(x,I,d,x==="h"?p:m,!0)},[]),o=st(function(d){var I=d;if(!v5.length||v5[v5.length-1]!==u)return;var h="deltaY"in I?C2e(I):Mz(I),Q=e.current.filter(function(f){return f.name===I.type&&(f.target===I.target||I.target===f.shadowParent)&&hlr(f.delta,h)})[0];if(Q&&Q.should){if(I.cancelable)I.preventDefault();return}if(!Q){var p=(a.current.shards||[]).map(B2e).filter(Boolean).filter(function(f){return f.contains(I.target)}),m=p.length>0?n(I,p[0]):!a.current.noIsolation;if(m){if(I.cancelable)I.preventDefault()}}},[]),s=st(function(d,I,h,Q){var p={name:d,delta:I,target:h,should:Q,shadowParent:flr(h)};e.current.push(p),setTimeout(function(){e.current=e.current.filter(function(m){return m!==p})},1)},[]),l=st(function(d){t.current=Mz(d),r.current=void 0},[]),g=st(function(d){s(d.type,C2e(d),d.target,n(d,A.lockRef.current))},[]),C=st(function(d){s(d.type,Mz(d),d.target,n(d,A.lockRef.current))},[]);le(function(){return v5.push(u),A.setCallbacks({onScrollCapture:g,onWheelCapture:g,onTouchMoveCapture:C}),document.addEventListener("wheel",o,T2),document.addEventListener("touchmove",o,T2),document.addEventListener("touchstart",l,T2),function(){v5=v5.filter(function(d){return d!==u}),document.removeEventListener("wheel",o,T2),document.removeEventListener("touchmove",o,T2),document.removeEventListener("touchstart",l,T2)}},[]);var{removeScrollBar:B,inert:E}=A;return Rt(ho,null,E?Rt(u,{styles:Qlr(i)}):null,B?Rt(DfA,{noRelative:A.noRelative,gapMode:A.gapMode}):null)}function flr(A){var e=null;while(A!==null){if(A instanceof ShadowRoot)e=A.host,A=A.host;A=A.parentNode}return e}var d2e=IfA(Uz,E2e);var I2e=mt(function(A,e){return Rt(IL,Jl({},A,{ref:e,sideCar:d2e}))});I2e.classNames=IL.classNames;var bfA=I2e;Be();var vfA="Popover",[h2e,L5i]=hz(vfA,[ofA]),QL=ofA(),[mlr,fp]=h2e(vfA),Q2e=(A)=>{let{__scopePopover:e,children:t,open:r,defaultOpen:i,onOpenChange:u,modal:a=!1}=A,n=QL(e),o=Ee(null),[s,l]=we(!1),[g=!1,C]=$me({prop:r,defaultProp:i,onChange:u});return N(Vme,{...n,children:N(mlr,{scope:e,contentId:O3e(),triggerRef:o,open:g,onOpenChange:C,onOpenToggle:st(()=>C((B)=>!B),[C]),hasCustomAnchor:s,onCustomAnchorAdd:st(()=>l(!0),[]),onCustomAnchorRemove:st(()=>l(!1),[]),modal:a,children:t})})};Q2e.displayName=vfA;var p2e="PopoverAnchor",Dlr=mt((A,e)=>{let{__scopePopover:t,...r}=A,i=fp(p2e,t),u=QL(t),{onCustomAnchorAdd:a,onCustomAnchorRemove:n}=i;return le(()=>(a(),()=>n()),[a,n]),N(lfA,{...u,...r,ref:e})});Dlr.displayName=p2e;var f2e="PopoverTrigger",m2e=mt((A,e)=>{let{__scopePopover:t,...r}=A,i=fp(f2e,t),u=QL(t),a=Ug(e,i.triggerRef),n=N(_s.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":k2e(i.open),...r,ref:a,onClick:wd(A.onClick,i.onOpenToggle)});return i.hasCustomAnchor?n:N(lfA,{asChild:!0,...u,children:n})});m2e.displayName=f2e;var kfA="PopoverPortal",[ylr,wlr]=h2e(kfA,{forceMount:void 0}),D2e=(A)=>{let{__scopePopover:e,forceMount:t,children:r,container:i}=A,u=fp(kfA,e);return N(ylr,{scope:e,forceMount:t,children:N(Sz,{present:t||u.open,children:N(gfA,{asChild:!0,container:i,children:r})})})};D2e.displayName=kfA;var k5="PopoverContent",y2e=mt((A,e)=>{let t=wlr(k5,A.__scopePopover),{forceMount:r=t.forceMount,...i}=A,u=fp(k5,A.__scopePopover);return N(Sz,{present:r||u.open,children:u.modal?N(blr,{...i,ref:e}):N(vlr,{...i,ref:e})})});y2e.displayName=k5;var blr=mt((A,e)=>{let t=fp(k5,A.__scopePopover),r=Ee(null),i=Ug(e,r),u=Ee(!1);return le(()=>{let a=r.current;if(a)return e2e(a)},[]),N(bfA,{as:lL,allowPinchZoom:!0,children:N(w2e,{...A,ref:i,trapFocus:t.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:wd(A.onCloseAutoFocus,(a)=>{if(a.preventDefault(),!u.current)t.triggerRef.current?.focus()}),onPointerDownOutside:wd(A.onPointerDownOutside,(a)=>{let n=a.detail.originalEvent,o=n.button===0&&n.ctrlKey===!0,s=n.button===2||o;u.current=s},{checkForDefaultPrevented:!1}),onFocusOutside:wd(A.onFocusOutside,(a)=>a.preventDefault(),{checkForDefaultPrevented:!1})})})}),vlr=mt((A,e)=>{let t=fp(k5,A.__scopePopover),r=Ee(!1),i=Ee(!1);return N(w2e,{...A,ref:e,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:(u)=>{if(A.onCloseAutoFocus?.(u),!u.defaultPrevented){if(!r.current)t.triggerRef.current?.focus();u.preventDefault()}r.current=!1,i.current=!1},onInteractOutside:(u)=>{if(A.onInteractOutside?.(u),!u.defaultPrevented){if(r.current=!0,u.detail.originalEvent.type==="pointerdown")i.current=!0}let a=u.target;if(t.triggerRef.current?.contains(a))u.preventDefault();if(u.detail.originalEvent.type==="focusin"&&i.current)u.preventDefault()}})}),w2e=mt((A,e)=>{let{__scopePopover:t,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:u,disableOutsidePointerEvents:a,onEscapeKeyDown:n,onPointerDownOutside:o,onFocusOutside:s,onInteractOutside:l,...g}=A,C=fp(k5,t),B=QL(t);return M3e(),N(jpA,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:i,onUnmountAutoFocus:u,children:N(qpA,{asChild:!0,disableOutsidePointerEvents:a,onInteractOutside:l,onEscapeKeyDown:n,onPointerDownOutside:o,onFocusOutside:s,onDismiss:()=>C.onOpenChange(!1),children:N(jme,{"data-state":k2e(C.open),role:"dialog",id:C.contentId,...B,...g,ref:e,style:{...g.style,...{"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}}})})})}),b2e="PopoverClose",klr=mt((A,e)=>{let{__scopePopover:t,...r}=A,i=fp(b2e,t);return N(_s.button,{type:"button",...r,ref:e,onClick:wd(A.onClick,()=>i.onOpenChange(!1))})});klr.displayName=b2e;var Flr="PopoverArrow",v2e=mt((A,e)=>{let{__scopePopover:t,...r}=A,i=QL(t);return N(Xme,{...i,...r,ref:e})});v2e.displayName=Flr;function k2e(A){return A?"open":"closed"}var mp=Q2e;var Dp=m2e,F2e=D2e,F5=y2e;var Tz=v2e;fe();fe();fe();fe();fe();fe();fe();Be();Be();fe();fe();Be();Be();Be();fe();Be();Be();Be();fe();fe();fe();Be();fe();Be();Be();fe();fe();Be();Be();Be();fe();Be();Be();fe();Be();Be();fe();Be();Be();Be();fe();Be();Be();Be();Be();Be();Be();fe();Be();Be();Be();Be();fe();Be();Be();fe();fe();fe();fe();Be();fe();fe();fe();fe();fe();Be();Be();Be();fe();fe();Be();Be();fe();h1();Be();Be();Be();fe();Be();Be();Be();fe();Be();Be();fe();fe();Be();fe();Be();fe();Be();Be();Be();fe();Be();Be();fe();fe();var jze=yu(_6(),1),Xze=yu(L2e(),1);fe();var R2e=(A)=>{let e,t=new Set,r=(l,g)=>{let C=typeof l==="function"?l(e):l;if(!Object.is(C,e)){let B=e;e=(g!=null?g:typeof C!=="object"||C===null)?C:Object.assign({},e,C),t.forEach((E)=>E(e,B))}},i=()=>e,o={setState:r,getState:i,getInitialState:()=>s,subscribe:(l)=>(t.add(l),()=>t.delete(l)),destroy:()=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production")console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected.");t.clear()}},s=e=A(r,i,o);return o},N2e=(A)=>A?R2e(A):R2e;fe();fe();var xfA={};LZ(xfA,{useSyncExternalStoreWithSelector:()=>U2e},{useSyncExternalStoreWithSelector:(G5i)=>U2e=G5i});var Klr=G2e();function Jlr(A,e){return A===e&&(A!==0||1/A===1/e)||A!==A&&e!==e}var Olr=typeof Object.is==="function"?Object.is:Jlr,Plr=Klr.useSyncExternalStore,_lr=Ee,Wlr=le,qlr=Ut,zlr=p1;var U2e=function(A,e,t,r,i){var u=_lr(null);if(u.current===null){var a={hasValue:!1,value:null};u.current=a}else a=u.current;u=qlr(function(){function o(B){if(!s){if(s=!0,l=B,B=r(B),i!==void 0&&a.hasValue){var E=a.value;if(i(E,B))return g=E}return g=B}if(E=g,Olr(l,B))return E;var d=r(B);if(i!==void 0&&i(E,d))return l=B,E;return l=B,g=d}var s=!1,l,g,C=t===void 0?null:t;return[function(){return o(e())},C===null?void 0:function(){return o(C())}]},[e,t,r,i]);var n=Plr(A,u[0],u[1]);return Wlr(function(){a.hasValue=!0,a.value=n},[n]),zlr(n),n};var{useDebugValue:Zlr}=bt,{useSyncExternalStoreWithSelector:Vlr}=xfA,M2e=!1,jlr=(A)=>A;function Xlr(A,e=jlr,t){if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&t&&!M2e)console.warn("[DEPRECATED] Use `createWithEqualityFn` instead of `create` or use `useStoreWithEqualityFn` instead of `useStore`. They can be imported from 'zustand/traditional'. https://github.com/pmndrs/zustand/discussions/1937"),M2e=!0;let r=Vlr(A.subscribe,A.getState,A.getServerState||A.getInitialState,e,t);return Zlr(r),r}var T2e=(A)=>{if((import.meta.env?import.meta.env.MODE:void 0)!=="production"&&typeof A!=="function")console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from 'zustand'`.");let e=typeof A==="function"?N2e(A):A,t=(r,i)=>Xlr(e,r,i);return Object.assign(t,e),t},Y2e=(A)=>A?T2e(A):T2e;var H2e,K2e,J2e=typeof window<"u"&&((H2e=window.document)!=null&&H2e.createElement||((K2e=window.navigator)==null?void 0:K2e.product)==="ReactNative")?Ii:le;function wB(){let A=Y2e((e)=>({current:[],version:0,set:e}));return{In:({children:e})=>{let t=A((i)=>i.set),r=A((i)=>i.version);return J2e(()=>{t((i)=>({version:i.version+1}))},[]),J2e(()=>(t(({current:i})=>({current:[...i,e]})),()=>t(({current:i})=>({current:i.filter((u)=>u!==e)}))),[e,r]),null},Out:()=>{let e=A((t)=>t.current);return Rt(ho,null,e)}}}Be();fe();Be();Be();Be();Be();fe();Be();Be();fe();Be();fe();Be();fe();fe();Be();fe();Be();Be();fe();Be();fe();Be();Be();Be();Be();Be();Be();Be();Be();h1();fe();Be();fe();Be();fe();Be();fe();h1();Be();Be();Be();Be();fe();fe();fe();Be();Be();function ju(){return ju=Object.assign?Object.assign.bind():function(A){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var r in t)({}).hasOwnProperty.call(t,r)&&(A[r]=t[r])}return A},ju.apply(null,arguments)}fe();function Yz(A,e,{checkForDefaultPrevented:t=!0}={}){return function(i){if(A===null||A===void 0||A(i),t===!1||!i.defaultPrevented)return e===null||e===void 0?void 0:e(i)}}fe();function O2e(A,e=[]){let t=[];function r(u,a){let n=wi(a),o=t.length;t=[...t,a];function s(g){let{scope:C,children:B,...E}=g,d=(C===null||C===void 0?void 0:C[A][o])||n,I=Ut(()=>E,Object.values(E));return Rt(d.Provider,{value:I},B)}function l(g,C){let B=(C===null||C===void 0?void 0:C[A][o])||n,E=Li(B);if(E)return E;if(a!==void 0)return a;throw Error(`\`${g}\` must be used within \`${u}\``)}return s.displayName=u+"Provider",[s,l]}let i=()=>{let u=t.map((a)=>wi(a));return function(n){let o=(n===null||n===void 0?void 0:n[A])||u;return Ut(()=>({[`__scope${A}`]:{...n,[A]:o}}),[n,o])}};return i.scopeName=A,[r,$lr(i,...e)]}function $lr(...A){let e=A[0];if(A.length===1)return e;let t=()=>{let r=A.map((i)=>({useScope:i(),scopeName:i.scopeName}));return function(u){let a=r.reduce((n,{useScope:o,scopeName:s})=>{let g=o(u)[`__scope${s}`];return{...n,...g}},{});return Ut(()=>({[`__scope${e.scopeName}`]:a}),[a])}};return t.scopeName=e.scopeName,t}fe();function Y2(A,e,{checkForDefaultPrevented:t=!0}={}){return function(i){if(A===null||A===void 0||A(i),t===!1||!i.defaultPrevented)return e===null||e===void 0?void 0:e(i)}}fe();fe();function P2e(A,e=[]){let t=[];function r(u,a){let n=wi(a),o=t.length;t=[...t,a];function s(g){let{scope:C,children:B,...E}=g,d=(C===null||C===void 0?void 0:C[A][o])||n,I=Ut(()=>E,Object.values(E));return Rt(d.Provider,{value:I},B)}function l(g,C){let B=(C===null||C===void 0?void 0:C[A][o])||n,E=Li(B);if(E)return E;if(a!==void 0)return a;throw Error(`\`${g}\` must be used within \`${u}\``)}return s.displayName=u+"Provider",[s,l]}let i=()=>{let u=t.map((a)=>wi(a));return function(n){let o=(n===null||n===void 0?void 0:n[A])||u;return Ut(()=>({[`__scope${A}`]:{...n,[A]:o}}),[n,o])}};return i.scopeName=A,[r,Agr(i,...e)]}function Agr(...A){let e=A[0];if(A.length===1)return e;let t=()=>{let r=A.map((i)=>({useScope:i(),scopeName:i.scopeName}));return function(u){let a=r.reduce((n,{useScope:o,scopeName:s})=>{let g=o(u)[`__scope${s}`];return{...n,...g}},{});return Ut(()=>({[`__scope${e.scopeName}`]:a}),[a])}};return t.scopeName=e.scopeName,t}fe();function egr(A,e){if(typeof A==="function")A(e);else if(A!==null&&A!==void 0)A.current=e}function SfA(...A){return(e)=>A.forEach((t)=>egr(t,e))}function LfA(...A){return st(SfA(...A),A)}fe();var Hz=mt((A,e)=>{let{children:t,...r}=A,i=di.toArray(t),u=i.find(rgr);if(u){let a=u.props.children,n=i.map((o)=>{if(o===u){if(di.count(a)>1)return di.only(null);return Da(a)?a.props.children:null}else return o});return Rt(RfA,ju({},r,{ref:e}),Da(a)?Kn(a,void 0,n):null)}return Rt(RfA,ju({},r,{ref:e}),t)});Hz.displayName="Slot";var RfA=mt((A,e)=>{let{children:t,...r}=A;if(Da(t))return Kn(t,{...igr(r,t.props),ref:SfA(e,t.ref)});return di.count(t)>1?di.only(null):null});RfA.displayName="SlotClone";var tgr=({children:A})=>Rt(ho,null,A);function rgr(A){return Da(A)&&A.type===tgr}function igr(A,e){let t={...e};for(let r in e){let i=A[r],u=e[r];if(/^on[A-Z]/.test(r)){if(i&&u)t[r]=(...n)=>{u(...n),i(...n)};else if(i)t[r]=i}else if(r==="style")t[r]={...i,...u};else if(r==="className")t[r]=[i,u].filter(Boolean).join(" ")}return{...A,...t}}function _2e(A){let e=A+"CollectionProvider",[t,r]=P2e(e),[i,u]=t(e,{collectionRef:{current:null},itemMap:new Map}),a=(B)=>{let{scope:E,children:d}=B,I=Ee(null),h=Ee(new Map).current;return Rt(i,{scope:E,itemMap:h,collectionRef:I},d)},n=A+"CollectionSlot",o=mt((B,E)=>{let{scope:d,children:I}=B,h=u(n,d),Q=LfA(E,h.collectionRef);return Rt(Hz,{ref:Q},I)}),s=A+"CollectionItemSlot",l="data-radix-collection-item",g=mt((B,E)=>{let{scope:d,children:I,...h}=B,Q=Ee(null),p=LfA(E,Q),m=u(s,d);return le(()=>(m.itemMap.set(Q,{ref:Q,...h}),()=>void m.itemMap.delete(Q))),Rt(Hz,{[l]:"",ref:p},I)});function C(B){let E=u(A+"CollectionConsumer",B);return st(()=>{let I=E.collectionRef.current;if(!I)return[];let h=Array.from(I.querySelectorAll(`[${l}]`));return Array.from(E.itemMap.values()).sort((m,f)=>h.indexOf(m.ref.current)-h.indexOf(f.ref.current))},[E.collectionRef,E.itemMap])}return[{Provider:a,Slot:o,ItemSlot:g},C,r]}fe();function ugr(A,e){if(typeof A==="function")A(e);else if(A!==null&&A!==void 0)A.current=e}function NfA(...A){return(e)=>A.forEach((t)=>ugr(t,e))}function W2e(...A){return st(NfA(...A),A)}fe();function q2e(A,e=[]){let t=[];function r(u,a){let n=wi(a),o=t.length;t=[...t,a];function s(g){let{scope:C,children:B,...E}=g,d=(C===null||C===void 0?void 0:C[A][o])||n,I=Ut(()=>E,Object.values(E));return Rt(d.Provider,{value:I},B)}function l(g,C){let B=(C===null||C===void 0?void 0:C[A][o])||n,E=Li(B);if(E)return E;if(a!==void 0)return a;throw Error(`\`${g}\` must be used within \`${u}\``)}return s.displayName=u+"Provider",[s,l]}let i=()=>{let u=t.map((a)=>wi(a));return function(n){let o=(n===null||n===void 0?void 0:n[A])||u;return Ut(()=>({[`__scope${A}`]:{...n,[A]:o}}),[n,o])}};return i.scopeName=A,[r,agr(i,...e)]}function agr(...A){let e=A[0];if(A.length===1)return e;let t=()=>{let r=A.map((i)=>({useScope:i(),scopeName:i.scopeName}));return function(u){let a=r.reduce((n,{useScope:o,scopeName:s})=>{let g=o(u)[`__scope${s}`];return{...n,...g}},{});return Ut(()=>({[`__scope${e.scopeName}`]:a}),[a])}};return t.scopeName=e.scopeName,t}fe();fe();var z2e=Boolean(globalThis===null||globalThis===void 0?void 0:globalThis.document)?Ii:()=>{};var ngr=bt["useId".toString()]||(()=>{return}),ogr=0;function Z2e(A){let[e,t]=we(ngr());return z2e(()=>{if(!A)t((r)=>r!==null&&r!==void 0?r:String(ogr++))},[A]),A||(e?`radix-${e}`:"")}fe();fe();var UfA=mt((A,e)=>{let{children:t,...r}=A,i=di.toArray(t),u=i.find(lgr);if(u){let a=u.props.children,n=i.map((o)=>{if(o===u){if(di.count(a)>1)return di.only(null);return Da(a)?a.props.children:null}else return o});return Rt(GfA,ju({},r,{ref:e}),Da(a)?Kn(a,void 0,n):null)}return Rt(GfA,ju({},r,{ref:e}),t)});UfA.displayName="Slot";var GfA=mt((A,e)=>{let{children:t,...r}=A;if(Da(t))return Kn(t,{...ggr(r,t.props),ref:NfA(e,t.ref)});return di.count(t)>1?di.only(null):null});GfA.displayName="SlotClone";var sgr=({children:A})=>Rt(ho,null,A);function lgr(A){return Da(A)&&A.type===sgr}function ggr(A,e){let t={...e};for(let r in e){let i=A[r],u=e[r];if(/^on[A-Z]/.test(r)){if(i&&u)t[r]=(...n)=>{u(...n),i(...n)};else if(i)t[r]=i}else if(r==="style")t[r]={...i,...u};else if(r==="className")t[r]=[i,u].filter(Boolean).join(" ")}return{...A,...t}}var cgr=["a","button","div","h2","h3","img","label","li","nav","ol","p","span","svg","ul"],MfA=cgr.reduce((A,e)=>{let t=mt((r,i)=>{let{asChild:u,...a}=r,n=u?UfA:e;return le(()=>{window[Symbol.for("radix-ui")]=!0},[]),Rt(n,ju({},a,{ref:i}))});return t.displayName=`Primitive.${e}`,{...A,[e]:t}},{});fe();function pL(A){let e=Ee(A);return le(()=>{e.current=A}),Ut(()=>(...t)=>{var r;return(r=e.current)===null||r===void 0?void 0:r.call(e,...t)},[])}fe();function V2e({prop:A,defaultProp:e,onChange:t=()=>{}}){let[r,i]=Cgr({defaultProp:e,onChange:t}),u=A!==void 0,a=u?A:r,n=pL(t),o=st((s)=>{if(u){let g=typeof s==="function"?s(A):s;if(g!==A)n(g)}else i(s)},[u,A,i,n]);return[a,o]}function Cgr({defaultProp:A,onChange:e}){let t=we(A),[r]=t,i=Ee(r),u=pL(e);return le(()=>{if(i.current!==r)u(r),i.current=r},[r,i,u]),t}fe();var Bgr=wi(void 0);function Kz(A){let e=Li(Bgr);return A||e||"ltr"}var TfA="rovingFocusGroup.onEntryFocus",Egr={bubbles:!1,cancelable:!0},HfA="RovingFocusGroup",[YfA,j2e,dgr]=_2e(HfA),[Igr,KfA]=q2e(HfA,[dgr]),[hgr,Qgr]=Igr(HfA),pgr=mt((A,e)=>Rt(YfA.Provider,{scope:A.__scopeRovingFocusGroup},Rt(YfA.Slot,{scope:A.__scopeRovingFocusGroup},Rt(fgr,ju({},A,{ref:e}))))),fgr=mt((A,e)=>{let{__scopeRovingFocusGroup:t,orientation:r,loop:i=!1,dir:u,currentTabStopId:a,defaultCurrentTabStopId:n,onCurrentTabStopIdChange:o,onEntryFocus:s,...l}=A,g=Ee(null),C=W2e(e,g),B=Kz(u),[E=null,d]=V2e({prop:a,defaultProp:n,onChange:o}),[I,h]=we(!1),Q=pL(s),p=j2e(t),m=Ee(!1),[f,D]=we(0);return le(()=>{let w=g.current;if(w)return w.addEventListener(TfA,Q),()=>w.removeEventListener(TfA,Q)},[Q]),Rt(hgr,{scope:t,orientation:r,dir:B,loop:i,currentTabStopId:E,onItemFocus:st((w)=>d(w),[d]),onItemShiftTab:st(()=>h(!0),[]),onFocusableItemAdd:st(()=>D((w)=>w+1),[]),onFocusableItemRemove:st(()=>D((w)=>w-1),[])},Rt(MfA.div,ju({tabIndex:I||f===0?-1:0,"data-orientation":r},l,{ref:C,style:{outline:"none",...A.style},onMouseDown:Y2(A.onMouseDown,()=>{m.current=!0}),onFocus:Y2(A.onFocus,(w)=>{let b=!m.current;if(w.target===w.currentTarget&&b&&!I){let k=new CustomEvent(TfA,Egr);if(w.currentTarget.dispatchEvent(k),!k.defaultPrevented){let v=p().filter((R)=>R.focusable),S=v.find((R)=>R.active),x=v.find((R)=>R.id===E),T=[S,x,...v].filter(Boolean).map((R)=>R.ref.current);X2e(T)}}m.current=!1}),onBlur:Y2(A.onBlur,()=>h(!1))})))}),mgr="RovingFocusGroupItem",Dgr=mt((A,e)=>{let{__scopeRovingFocusGroup:t,focusable:r=!0,active:i=!1,tabStopId:u,...a}=A,n=Z2e(),o=u||n,s=Qgr(mgr,t),l=s.currentTabStopId===o,g=j2e(t),{onFocusableItemAdd:C,onFocusableItemRemove:B}=s;return le(()=>{if(r)return C(),()=>B()},[r,C,B]),Rt(YfA.ItemSlot,{scope:t,id:o,focusable:r,active:i},Rt(MfA.span,ju({tabIndex:l?0:-1,"data-orientation":s.orientation},a,{ref:e,onMouseDown:Y2(A.onMouseDown,(E)=>{if(!r)E.preventDefault();else s.onItemFocus(o)}),onFocus:Y2(A.onFocus,()=>s.onItemFocus(o)),onKeyDown:Y2(A.onKeyDown,(E)=>{if(E.key==="Tab"&&E.shiftKey){s.onItemShiftTab();return}if(E.target!==E.currentTarget)return;let d=bgr(E,s.orientation,s.dir);if(d!==void 0){E.preventDefault();let h=g().filter((Q)=>Q.focusable).map((Q)=>Q.ref.current);if(d==="last")h.reverse();else if(d==="prev"||d==="next"){if(d==="prev")h.reverse();let Q=h.indexOf(E.currentTarget);h=s.loop?vgr(h,Q+1):h.slice(Q+1)}setTimeout(()=>X2e(h))}})})))}),ygr={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function wgr(A,e){if(e!=="rtl")return A;return A==="ArrowLeft"?"ArrowRight":A==="ArrowRight"?"ArrowLeft":A}function bgr(A,e,t){let r=wgr(A.key,t);if(e==="vertical"&&["ArrowLeft","ArrowRight"].includes(r))return;if(e==="horizontal"&&["ArrowUp","ArrowDown"].includes(r))return;return ygr[r]}function X2e(A){let e=document.activeElement;for(let t of A){if(t===e)return;if(t.focus(),document.activeElement!==e)return}}function vgr(A,e){return A.map((t,r)=>A[(e+r)%A.length])}var $2e=pgr,ADe=Dgr;fe();fe();function kgr(A,e){if(typeof A==="function")A(e);else if(A!==null&&A!==void 0)A.current=e}function Fgr(...A){return(e)=>A.forEach((t)=>kgr(t,e))}function eDe(...A){return st(Fgr(...A),A)}fe();var JfA=Boolean(globalThis===null||globalThis===void 0?void 0:globalThis.document)?Ii:()=>{};function xgr(A,e){return f1((t,r)=>{let i=e[t][r];return i!==null&&i!==void 0?i:t},A)}var OfA=(A)=>{let{present:e,children:t}=A,r=Sgr(e),i=typeof t==="function"?t({present:r.isPresent}):di.only(t),u=eDe(r.ref,i.ref);return typeof t==="function"||r.isPresent?Kn(i,{ref:u}):null};OfA.displayName="Presence";function Sgr(A){let[e,t]=we(),r=Ee({}),i=Ee(A),u=Ee("none"),a=A?"mounted":"unmounted",[n,o]=xgr(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return le(()=>{let s=Jz(r.current);u.current=n==="mounted"?s:"none"},[n]),JfA(()=>{let s=r.current,l=i.current;if(l!==A){let C=u.current,B=Jz(s);if(A)o("MOUNT");else if(B==="none"||(s===null||s===void 0?void 0:s.display)==="none")o("UNMOUNT");else if(l&&C!==B)o("ANIMATION_OUT");else o("UNMOUNT");i.current=A}},[A,o]),JfA(()=>{if(e){let s=(g)=>{let B=Jz(r.current).includes(g.animationName);if(g.target===e&&B)_n(()=>o("ANIMATION_END"))},l=(g)=>{if(g.target===e)u.current=Jz(r.current)};return e.addEventListener("animationstart",l),e.addEventListener("animationcancel",s),e.addEventListener("animationend",s),()=>{e.removeEventListener("animationstart",l),e.removeEventListener("animationcancel",s),e.removeEventListener("animationend",s)}}else o("ANIMATION_END")},[e,o]),{isPresent:["mounted","unmountSuspended"].includes(n),ref:st((s)=>{if(s)r.current=getComputedStyle(s);t(s)},[])}}function Jz(A){return(A===null||A===void 0?void 0:A.animationName)||"none"}fe();fe();fe();function Lgr(A,e){if(typeof A==="function")A(e);else if(A!==null&&A!==void 0)A.current=e}function tDe(...A){return(e)=>A.forEach((t)=>Lgr(t,e))}var _fA=mt((A,e)=>{let{children:t,...r}=A,i=di.toArray(t),u=i.find(Ngr);if(u){let a=u.props.children,n=i.map((o)=>{if(o===u){if(di.count(a)>1)return di.only(null);return Da(a)?a.props.children:null}else return o});return Rt(PfA,ju({},r,{ref:e}),Da(a)?Kn(a,void 0,n):null)}return Rt(PfA,ju({},r,{ref:e}),t)});_fA.displayName="Slot";var PfA=mt((A,e)=>{let{children:t,...r}=A;if(Da(t))return Kn(t,{...Ggr(r,t.props),ref:tDe(e,t.ref)});return di.count(t)>1?di.only(null):null});PfA.displayName="SlotClone";var Rgr=({children:A})=>Rt(ho,null,A);function Ngr(A){return Da(A)&&A.type===Rgr}function Ggr(A,e){let t={...e};for(let r in e){let i=A[r],u=e[r];if(/^on[A-Z]/.test(r)){if(i&&u)t[r]=(...n)=>{u(...n),i(...n)};else if(i)t[r]=i}else if(r==="style")t[r]={...i,...u};else if(r==="className")t[r]=[i,u].filter(Boolean).join(" ")}return{...A,...t}}var Ugr=["a","button","div","h2","h3","img","label","li","nav","ol","p","span","svg","ul"],fL=Ugr.reduce((A,e)=>{let t=mt((r,i)=>{let{asChild:u,...a}=r,n=u?_fA:e;return le(()=>{window[Symbol.for("radix-ui")]=!0},[]),Rt(n,ju({},a,{ref:i}))});return t.displayName=`Primitive.${e}`,{...A,[e]:t}},{});fe();fe();function WfA(A){let e=Ee(A);return le(()=>{e.current=A}),Ut(()=>(...t)=>{var r;return(r=e.current)===null||r===void 0?void 0:r.call(e,...t)},[])}function rDe({prop:A,defaultProp:e,onChange:t=()=>{}}){let[r,i]=Mgr({defaultProp:e,onChange:t}),u=A!==void 0,a=u?A:r,n=WfA(t),o=st((s)=>{if(u){let g=typeof s==="function"?s(A):s;if(g!==A)n(g)}else i(s)},[u,A,i,n]);return[a,o]}function Mgr({defaultProp:A,onChange:e}){let t=we(A),[r]=t,i=Ee(r),u=WfA(e);return le(()=>{if(i.current!==r)u(r),i.current=r},[r,i,u]),t}fe();fe();var iDe=Boolean(globalThis===null||globalThis===void 0?void 0:globalThis.document)?Ii:()=>{};var Tgr=bt["useId".toString()]||(()=>{return}),Ygr=0;function uDe(A){let[e,t]=we(Tgr());return iDe(()=>{if(!A)t((r)=>r!==null&&r!==void 0?r:String(Ygr++))},[A]),A||(e?`radix-${e}`:"")}var aDe="Tabs",[Hgr,Fvi]=O2e(aDe,[KfA]),nDe=KfA(),[Kgr,qfA]=Hgr(aDe),Jgr=mt((A,e)=>{let{__scopeTabs:t,value:r,onValueChange:i,defaultValue:u,orientation:a="horizontal",dir:n,activationMode:o="automatic",...s}=A,l=Kz(n),[g,C]=rDe({prop:r,onChange:i,defaultProp:u});return Rt(Kgr,{scope:t,baseId:uDe(),value:g,onValueChange:C,orientation:a,dir:l,activationMode:o},Rt(fL.div,ju({dir:l,"data-orientation":a},s,{ref:e})))}),Ogr="TabsList",Pgr=mt((A,e)=>{let{__scopeTabs:t,loop:r=!0,...i}=A,u=qfA(Ogr,t),a=nDe(t);return Rt($2e,ju({asChild:!0},a,{orientation:u.orientation,dir:u.dir,loop:r}),Rt(fL.div,ju({role:"tablist","aria-orientation":u.orientation},i,{ref:e})))}),_gr="TabsTrigger",Wgr=mt((A,e)=>{let{__scopeTabs:t,value:r,disabled:i=!1,...u}=A,a=qfA(_gr,t),n=nDe(t),o=oDe(a.baseId,r),s=sDe(a.baseId,r),l=r===a.value;return Rt(ADe,ju({asChild:!0},n,{focusable:!i,active:l}),Rt(fL.button,ju({type:"button",role:"tab","aria-selected":l,"aria-controls":s,"data-state":l?"active":"inactive","data-disabled":i?"":void 0,disabled:i,id:o},u,{ref:e,onMouseDown:Yz(A.onMouseDown,(g)=>{if(!i&&g.button===0&&g.ctrlKey===!1)a.onValueChange(r);else g.preventDefault()}),onKeyDown:Yz(A.onKeyDown,(g)=>{if([" ","Enter"].includes(g.key))a.onValueChange(r)}),onFocus:Yz(A.onFocus,()=>{let g=a.activationMode!=="manual";if(!l&&!i&&g)a.onValueChange(r)})})))}),qgr="TabsContent",zgr=mt((A,e)=>{let{__scopeTabs:t,value:r,forceMount:i,children:u,...a}=A,n=qfA(qgr,t),o=oDe(n.baseId,r),s=sDe(n.baseId,r),l=r===n.value,g=Ee(l);return le(()=>{let C=requestAnimationFrame(()=>g.current=!1);return()=>cancelAnimationFrame(C)},[]),Rt(OfA,{present:i||l},({present:C})=>Rt(fL.div,ju({"data-state":l?"active":"inactive","data-orientation":n.orientation,role:"tabpanel","aria-labelledby":o,hidden:!C,id:s,tabIndex:0},a,{ref:e,style:{...A.style,animationDuration:g.current?"0s":void 0}}),C&&u))});function oDe(A,e){return`${A}-trigger-${e}`}function sDe(A,e){return`${A}-content-${e}`}var Oz=Jgr,Pz=Pgr,_z=Wgr,Wz=zgr;Be();Be();Be();Be();Be();fe();Be();Be();fe();Be();Be();Be();Be();fe();Be();Be();fe();Be();fe();Be();Be();fe();Be();Be();Be();Be();var OZe=yu(CDe(),1);fe();Be();fe();Be();Be();Be();Be();fe();fe();Be();Be();Be();Be();fe();Be();Be();Be();Be();fe();Be();Be();Be();fe();Be();Be();fe();Be();Be();fe();var eVe=yu(_6(),1),tVe=yu(_6(),1);fe();h1();Be();fe();Be();fe();Be();Be();Be();Be();function ccr(A,e,t,r){Object.defineProperty(A,e,{get:t,set:r,enumerable:!0,configurable:!0})}var Ccr={};ccr(Ccr,"LaserPointer",()=>wp);function rn([A,e,t],[r,i,u]){return[A+r,e+i,t+u]}function mL([A,e,t],[r,i,u]){return[A-r,e-i,t-u]}function Wn([A,e,t],r){return[A*r,e*r,t*r]}function S5([A,e,t]){return[A/Math.sqrt(A**2+e**2),e/Math.sqrt(A**2+e**2),t]}function ts([A,e,t],r){return[Math.cos(r)*A-Math.sin(r)*e,Math.sin(r)*A+Math.cos(r)*e,t]}function Bcr(A,e,t){return rn(A,Wn(mL(e,A),t))}function BDe(A,e,t){return Math.atan2(t[1]-A[1],t[0]-A[0])-Math.atan2(e[1]-A[1],e[0]-A[0])}function EDe(A){return Math.atan2(Math.sin(A),Math.cos(A))}function dDe([A,e]){return Math.sqrt(A**2+e**2)}function L5([A,e],[t,r]){return Math.sqrt((t-A)**2+(r-e)**2)}function Ecr(A){if(A.length<2)return 0;let e=0;for(let t=1;t<=A.length-1;t++)e+=L5(A[t-1],A[t]);return e+=L5(A[A.length-2],A[A.length-1]),e}var dcr=(A,e,t)=>Math.max(e,Math.min(t,A));function Icr(A,e,t){let r=L5(e,t);if(r===0)return L5(A,e);let i=dcr(((A[0]-e[0])*(t[0]-e[0])+(A[1]-e[1])*(t[1]-e[1]))/r**2,0,1),u=[e[0]+i*(t[0]-e[0]),e[1]+i*(t[1]-e[1]),A[2]];return L5(u,A)}function qz(A,e){if(e===0)return A;if(A.length<=2)return A;let t=A[0],r=A[A.length-1],[i,u]=A.reduce(([a,n],o,s)=>{let l=Icr(o,t,r);return l>a?[l,s]:[a,n]},[0,-1]);if(i>=e){let a=A[u];return[...qz([t,...A.slice(1,u),a],e).slice(0,-1),a,...qz([a,...A.slice(u,-1),r],e).slice(1)]}else return[t,r]}class wp{static{this.defaults={size:2,streamline:0.45,simplify:0.1,simplifyPhase:"output",keepHead:!1,sizeMapping:()=>1}}static{this.constants={cornerDetectionMaxAngle:75,cornerDetectionVariance:(A)=>A>35?0.5:1,maxTailLength:50}}constructor(A){this.originalPoints=[],this.stablePoints=[],this.tailPoints=[],this.isFresh=!0,this.options=Object.assign({},wp.defaults,A)}get lastPoint(){return this.tailPoints[this.tailPoints.length-1]??this.stablePoints[this.stablePoints.length-1]}addPoint(A){let e=this.originalPoints[this.originalPoints.length-1];if(e&&e[0]===A[0]&&e[1]===A[1])return;if(this.originalPoints.push(A),this.isFresh){this.isFresh=!1,this.stablePoints.push(A);return}if(this.options.streamline>0)A=Bcr(this.lastPoint,A,1-this.options.streamline);if(this.tailPoints.push(A),Ecr(this.tailPoints)>wp.constants.maxTailLength)this.stabilizeTail()}close(){this.stabilizeTail()}stabilizeTail(){if(this.options.simplify>0&&this.options.simplifyPhase=="tail")throw Error("Not implemented yet");else this.stablePoints.push(...this.tailPoints),this.tailPoints=[]}getSize(A,e,t,r,i){return(A??this.options.size)*this.options.sizeMapping({pressure:e,runningLength:i,currentIndex:t,totalLength:r})}getStrokeOutline(A){if(this.isFresh)return[];let e=[...this.stablePoints,...this.tailPoints];if(this.options.simplify>0&&this.options.simplifyPhase==="input")e=qz(e,this.options.simplify);let t=e.length;if(t===0)return[];if(t===1){let D=e[0],w=this.getSize(A,D[2],0,t,0);if(w<0.5)return[];let b=[];for(let k=0;k<=Math.PI*2;k+=Math.PI/16)b.push(rn(D,Wn(ts([1,0,0],k),w)));return b.push(rn(D,Wn([1,0,0],this.getSize(A,D[2],0,t,0)))),b}if(t===2){let D=e[0],w=e[1],b=this.getSize(A,D[2],0,t,0),k=this.getSize(A,w[2],0,t,0);if(b<0.5||k<0.5)return[];let v=[],S=BDe(D,[D[0],D[1]-100,D[2]],w);for(let x=S;x<=Math.PI+S;x+=Math.PI/16)v.push(rn(D,Wn(ts([1,0,0],x),b)));for(let x=Math.PI+S;x<=Math.PI*2+S;x+=Math.PI/16)v.push(rn(w,Wn(ts([1,0,0],x),k)));return v.push(v[0]),v}let r=[],i=[],u=0,a=0,n=0,o=0;for(let D=1;D<t-1;D++){let w=e[D-1],b=e[D],k=e[D+1],v=b[2],S=L5(w,b);o+=S,u=a+(S-a)*0.2;let x=this.getSize(A,v,D,t,o);if(x===0){n=D+1;continue}let F=S5(mL(w,b)),T=S5(mL(k,b)),R=ts(F,Math.PI/2),L=ts(F,-Math.PI/2),M=ts(T,Math.PI/2),U=ts(T,-Math.PI/2),Y=rn(b,Wn(R,x)),H=rn(b,Wn(L,x)),J=rn(b,Wn(M,x)),K=rn(b,Wn(U,x)),O=rn(R,U),P=rn(L,M),z=rn(b,Wn(dDe(O)===0?F:S5(O),x)),AA=rn(b,Wn(dDe(P)===0?T:S5(P),x)),W=EDe(BDe(b,w,k)),CA=wp.constants.cornerDetectionMaxAngle/180*Math.PI*wp.constants.cornerDetectionVariance(u);if(Math.abs(W)<CA){let tA=Math.abs(EDe(Math.PI-W));if(tA===0)continue;if(W<0){i.push(H,AA);for(let lA=0;lA<=tA;lA+=tA/4)r.push(rn(b,ts(Wn(R,x),lA)));for(let lA=tA;lA>=0;lA-=tA/4)i.push(rn(b,ts(Wn(R,x),lA)));i.push(AA,J)}else{r.push(Y,z);for(let lA=0;lA<=tA;lA+=tA/4)i.push(rn(b,ts(Wn(R,-x),-lA)));for(let lA=tA;lA>=0;lA-=tA/4)r.push(rn(b,ts(Wn(R,-x),-lA)));r.push(z,K)}}else r.push(z),i.push(AA);a=u}if(n>=t-2)if(this.options.keepHead){let D=e[t-1],w=[];for(let b=0;b<=Math.PI*2;b+=Math.PI/16)w.push(rn(D,Wn(ts([1,0,0],b),this.options.size)));return w.push(rn(D,Wn([1,0,0],this.options.size))),w}else return[];let s=e[n],l=e[n+1],g=e[t-2],C=e[t-1],B=S5(mL(l,s)),E=S5(mL(g,C)),d=ts(B,-Math.PI/2),I=ts(E,Math.PI/2),h=this.getSize(A,s[2],0,t,0),Q=[],p=this.options.keepHead?this.options.size:this.getSize(A,g[2],t-2,t,o),m=[];if(h>1){for(let D=0;D<=Math.PI;D+=Math.PI/16)Q.unshift(rn(s,ts(Wn(d,h),-D)));Q.unshift(rn(s,Wn(d,-h)))}else Q.push(s);for(let D=0;D<=Math.PI*3;D+=Math.PI/16)m.push(rn(C,ts(Wn(I,-p),-D)));let f=[...Q,...r,...m.reverse(),...i.reverse()];if(Q.length>0)f.push(Q[0]);if(this.options.simplify>0&&this.options.simplifyPhase==="output")return qz(f,this.options.simplify);return f}}fe();Be();Be();Be();Be();Be();Be();Be();Be();Be();fe();Be();var EVe=yu(_6(),1),uze=eq(),{useAtom:Ka,useSetAtom:lZ,useAtomValue:aze,useStore:Xki}=uze,ICr=uze.Provider,vB=K9(),hCr=yge({"./locales/ar-SA.json":()=>Promise.resolve().then(() => (_De(),PDe)),"./locales/az-AZ.json":()=>Promise.resolve().then(() => (pye(),Qye)),"./locales/bg-BG.json":()=>Promise.resolve().then(() => (Zye(),zye)),"./locales/bn-BD.json":()=>Promise.resolve().then(() => (ywe(),Dwe)),"./locales/ca-ES.json":()=>Promise.resolve().then(() => ($we(),Xwe)),"./locales/cs-CZ.json":()=>Promise.resolve().then(() => (k6e(),v6e)),"./locales/da-DK.json":()=>Promise.resolve().then(() => (r9e(),t9e)),"./locales/de-DE.json":()=>Promise.resolve().then(() => (L9e(),S9e)),"./locales/el-GR.json":()=>Promise.resolve().then(() => (n5e(),a5e)),"./locales/en.json":()=>Promise.resolve().then(() => (s5e(),o5e)),"./locales/es-ES.json":()=>Promise.resolve().then(() => (T5e(),M5e)),"./locales/eu-ES.json":()=>Promise.resolve().then(() => (Cbe(),cbe)),"./locales/fa-IR.json":()=>Promise.resolve().then(() => (Jbe(),Kbe)),"./locales/fi-FI.json":()=>Promise.resolve().then(() => (Ive(),dve)),"./locales/fr-FR.json":()=>Promise.resolve().then(() => (Wve(),_ve)),"./locales/gl-ES.json":()=>Promise.resolve().then(() => (fke(),pke)),"./locales/he-IL.json":()=>Promise.resolve().then(() => (Vke(),Zke)),"./locales/hi-IN.json":()=>Promise.resolve().then(() => (wFe(),yFe)),"./locales/hu-HU.json":()=>Promise.resolve().then(() => (Axe(),$Fe)),"./locales/id-ID.json":()=>Promise.resolve().then(() => (Fxe(),kxe)),"./locales/it-IT.json":()=>Promise.resolve().then(() => (i7e(),r7e)),"./locales/ja-JP.json":()=>Promise.resolve().then(() => (R7e(),L7e)),"./locales/kaa.json":()=>Promise.resolve().then(() => (o8e(),n8e)),"./locales/kab-KAB.json":()=>Promise.resolve().then(() => (M8e(),U8e)),"./locales/kk-KZ.json":()=>Promise.resolve().then(() => (cSe(),gSe)),"./locales/km-KH.json":()=>Promise.resolve().then(() => (KSe(),HSe)),"./locales/ko-KR.json":()=>Promise.resolve().then(() => (dLe(),ELe)),"./locales/ku-TR.json":()=>Promise.resolve().then(() => (_Le(),PLe)),"./locales/lt-LT.json":()=>Promise.resolve().then(() => (pRe(),QRe)),"./locales/lv-LV.json":()=>Promise.resolve().then(() => (ZRe(),zRe)),"./locales/mr-IN.json":()=>Promise.resolve().then(() => (yNe(),DNe)),"./locales/my-MM.json":()=>Promise.resolve().then(() => ($Ne(),XNe)),"./locales/nb-NO.json":()=>Promise.resolve().then(() => (kGe(),vGe)),"./locales/nl-NL.json":()=>Promise.resolve().then(() => (rUe(),tUe)),"./locales/nn-NO.json":()=>Promise.resolve().then(() => (LUe(),SUe)),"./locales/oc-FR.json":()=>Promise.resolve().then(() => (nMe(),aMe)),"./locales/pa-IN.json":()=>Promise.resolve().then(() => (UMe(),GMe)),"./locales/percentages.json":()=>Promise.resolve().then(() => (TMe(),MMe)),"./locales/pl-PL.json":()=>Promise.resolve().then(() => (CTe(),cTe)),"./locales/pt-BR.json":()=>Promise.resolve().then(() => (JTe(),KTe)),"./locales/pt-PT.json":()=>Promise.resolve().then(() => (IYe(),dYe)),"./locales/ro-RO.json":()=>Promise.resolve().then(() => (WYe(),_Ye)),"./locales/ru-RU.json":()=>Promise.resolve().then(() => (fHe(),pHe)),"./locales/si-LK.json":()=>Promise.resolve().then(() => (VHe(),ZHe)),"./locales/sk-SK.json":()=>Promise.resolve().then(() => (wKe(),yKe)),"./locales/sl-SI.json":()=>Promise.resolve().then(() => (AJe(),$Ke)),"./locales/sv-SE.json":()=>Promise.resolve().then(() => (FJe(),kJe)),"./locales/ta-IN.json":()=>Promise.resolve().then(() => (iOe(),rOe)),"./locales/th-TH.json":()=>Promise.resolve().then(() => (ROe(),LOe)),"./locales/tr-TR.json":()=>Promise.resolve().then(() => (oPe(),nPe)),"./locales/uk-UA.json":()=>Promise.resolve().then(() => (MPe(),UPe)),"./locales/vi-VN.json":()=>Promise.resolve().then(() => (c_e(),g_e)),"./locales/zh-CN.json":()=>Promise.resolve().then(() => (K_e(),H_e)),"./locales/zh-HK.json":()=>Promise.resolve().then(() => (dWe(),EWe)),"./locales/zh-TW.json":()=>Promise.resolve().then(() => (_We(),PWe))}),QCr=85,Y5={code:"en",label:"English"},k3A=[Y5,...[{code:"ar-SA",label:"العربية",rtl:!0},{code:"bg-BG",label:"Български"},{code:"ca-ES",label:"Català"},{code:"cs-CZ",label:"Česky"},{code:"de-DE",label:"Deutsch"},{code:"el-GR",label:"Ελληνικά"},{code:"es-ES",label:"Español"},{code:"eu-ES",label:"Euskara"},{code:"fa-IR",label:"فارسی",rtl:!0},{code:"fi-FI",label:"Suomi"},{code:"fr-FR",label:"Français"},{code:"gl-ES",label:"Galego"},{code:"he-IL",label:"עברית",rtl:!0},{code:"hi-IN",label:"हिन्दी"},{code:"hu-HU",label:"Magyar"},{code:"id-ID",label:"Bahasa Indonesia"},{code:"it-IT",label:"Italiano"},{code:"ja-JP",label:"日本語"},{code:"kab-KAB",label:"Taqbaylit"},{code:"kk-KZ",label:"Қазақ тілі"},{code:"ko-KR",label:"한국어"},{code:"ku-TR",label:"Kurdî"},{code:"lt-LT",label:"Lietuvių"},{code:"lv-LV",label:"Latviešu"},{code:"my-MM",label:"Burmese"},{code:"nb-NO",label:"Norsk bokmål"},{code:"nl-NL",label:"Nederlands"},{code:"nn-NO",label:"Norsk nynorsk"},{code:"oc-FR",label:"Occitan"},{code:"pa-IN",label:"ਪੰਜਾਬੀ"},{code:"pl-PL",label:"Polski"},{code:"pt-BR",label:"Português Brasileiro"},{code:"pt-PT",label:"Português"},{code:"ro-RO",label:"Română"},{code:"ru-RU",label:"Русский"},{code:"sk-SK",label:"Slovenčina"},{code:"sv-SE",label:"Svenska"},{code:"sl-SI",label:"Slovenščina"},{code:"tr-TR",label:"Türkçe"},{code:"uk-UA",label:"Українська"},{code:"zh-CN",label:"简体中文"},{code:"zh-TW",label:"繁體中文"},{code:"vi-VN",label:"Tiếng Việt"},{code:"mr-IN",label:"मराठी"}].filter((A)=>jW[A.code]>=QCr).sort((A,e)=>A.label>e.label?1:-1)],iZ="__test__";fr.DEV&&k3A.unshift({code:iZ,label:"test language"},{code:`${iZ}.rtl`,label:"‪test language (rtl)‬",rtl:!0});var G5=Y5,$z={},nze=async(A)=>{if(G5=A,document.documentElement.dir=G5.rtl?"rtl":"ltr",document.documentElement.lang=G5.code,A.code.startsWith(iZ))$z={};else try{$z=await hCr(`./locales/${G5.code}.json`)}catch(e){console.error(`Failed to load language ${A.code}:`,e.message),$z=BS}vB.set(oze,A.code)},NL=()=>G5,qWe=(A,e)=>{for(let t=0;t<e.length;++t){let r=e[t];if(A[r]===void 0)return;A=A[r]}if(typeof A=="string")return A},uA=(A,e,t)=>{if(G5.code.startsWith(iZ))return`‪[[${e?`${A}(${JSON.stringify(e).slice(1,-1)})`:A}]]‬`;let r=A.split("."),i=qWe($z,r)||qWe(BS,r)||t;if(i===void 0){let u=`Can't find translation for ${A}`;if(fr.PROD)return console.warn(u),"";throw Error(u)}if(e)for(let u in e)i=i.replace(`{{${u}}}`,String(e[u]));return i},oze=On(Y5.code),us=()=>{let A=aze(oze);return{t:uA,langCode:A}},pCr=({size:A="1em",circleWidth:e=8,synchronized:t=!1,className:r=""})=>{let i=-(Ee(Date.now()).current%1600);return N("div",{className:`Spinner ${r}`,children:N("svg",{viewBox:"0 0 100 100",style:{width:A,height:A,"--spinner-delay":t?`${i}ms`:0},children:N("circle",{cx:"50",cy:"50",r:50-e/2,strokeWidth:e,fill:"none",strokeMiterlimit:"10"})})})},_h=pCr,sze=({delay:A,theme:e})=>{let[t,r]=we(!!A);return le(()=>{if(!A)return;let i=setTimeout(()=>{r(!1)},A);return()=>clearTimeout(i)},[A]),t?null:cA("div",{className:Se("LoadingMessage",{"LoadingMessage--dark":e===ei.DARK}),children:[N("div",{children:N(_h,{})}),N("div",{className:"LoadingMessage-text",children:uA("labels.loadingScene")})]})},fCr=(A)=>{let[e,t]=we(!0);return le(()=>{let r=async()=>{await nze(i),t(!1)},i=k3A.find((u)=>u.code===A.langCode)||Y5;r()},[A.langCode]),e?N(sze,{theme:A.theme}):A.children},ci=mt(({size:A="medium",visible:e=!0,className:t="",...r},i)=>{let{id:u}=Gd(),a=Ee(null);Gm(i,()=>a.current);let n=`ToolIcon_size_${A}`,[o,s]=we(!1),l=Ee(!0),g=async(B)=>{let E="onClick"in r&&r.onClick?.(B);if(D9(E))try{s(!0),await E}catch(d){if(d instanceof z8)console.warn(d);else throw d}finally{l.current&&s(!1)}};le(()=>(l.current=!0,()=>{l.current=!1}),[]);let C=Ee(null);if(r.type==="button"||r.type==="icon"||r.type==="submit"){let B=r.type==="icon"?"button":r.type;return cA("button",{className:Se("ToolIcon_type_button",n,t,e&&!r.hidden?"ToolIcon_type_button--show":"ToolIcon_type_button--hide",{ToolIcon:!r.hidden,"ToolIcon--selected":r.selected,"ToolIcon--plain":r.type==="icon"}),style:r.style,"data-testid":r["data-testid"],hidden:r.hidden,title:r.title,"aria-label":r["aria-label"],type:B,onClick:g,ref:a,disabled:o||r.isLoading||!!r.disabled,children:[(r.icon||r.label)&&cA("div",{className:"ToolIcon__icon","aria-hidden":"true","aria-disabled":!!r.disabled,children:[r.icon||r.label,r.keyBindingLabel&&N("span",{className:"ToolIcon__keybinding",children:r.keyBindingLabel}),r.isLoading&&N(_h,{})]}),r.showAriaLabel&&cA("div",{className:"ToolIcon__label",children:[r["aria-label"]," ",o&&N(_h,{})]}),r.children]})}return cA("label",{className:Se("ToolIcon",t),title:r.title,onPointerDown:(B)=>{C.current=B.pointerType||null,r.onPointerDown?.({pointerType:B.pointerType||null})},onPointerUp:()=>{requestAnimationFrame(()=>{C.current=null})},children:[N("input",{className:`ToolIcon_type_radio ${n}`,type:"radio",name:r.name,"aria-label":r["aria-label"],"aria-keyshortcuts":r["aria-keyshortcuts"],"data-testid":r["data-testid"],id:`${u}-${r.id}`,onChange:()=>{r.onChange?.({pointerType:C.current})},checked:r.checked,ref:a}),cA("div",{className:"ToolIcon__icon",children:[r.icon,r.keyBindingLabel&&N("span",{className:"ToolIcon__keybinding",children:r.keyBindingLabel})]})]})});ci.displayName="ToolButton";var mCr=(A,e,t)=>{let r=new Set(Or(A.filter((l)=>nr(l)),e).map((l)=>l.id)),i={},u=t.scene.getNonDeletedElementsMap(),a=new Set;for(let l of r){let g=gB(A,l);for(let C of g)if(!a.has(C.id)){if(Tu(C)){let B=Do(C,u);B&&(i[B.id]=!0)}else i[C.id]=!0;a.add(C.id)}}let n=!0,o=A.map((l)=>{if(e.selectedElementIds[l.id]){let g=Tu(l)?Do(l,u):null;return l.frameId&&r.has(l.frameId)?(n=!1,i[l.id]=!0,l):g?.frameId&&r.has(g?.frameId)?l:(l.boundElements&&l.boundElements.forEach((C)=>{let B=t.scene.getNonDeletedElementsMap().get(C.id);B&&pt(B)&&(xe(B,{startBinding:l.id===B.startBinding?.elementId?null:B.startBinding,endBinding:l.id===B.endBinding?.elementId?null:B.endBinding}),xe(B,{points:B.points}))}),Yr(l,{isDeleted:!0}))}return l.frameId&&r.has(l.frameId)?(n=!1,Tu(l)||(i[l.id]=!0),Yr(l,{frameId:null})):Tu(l)&&e.selectedElementIds[l.containerId]?Yr(l,{isDeleted:!0}):l}),s=e.editingGroupId;if(n&&e.editingGroupId){let l=Yu(o,e.editingGroupId).filter((g)=>!g.isDeleted);if(l.length>1)l[0]&&(i[l[0].id]=!0);else{s=null,l[0]&&(i[l[0].id]=!0);let g=l[0];if(g){let C=g.groupIds.findIndex((E)=>E===e.editingGroupId),B=g.groupIds[C+1];if(B){let E=Yu(o,B).filter((d)=>!d.isDeleted);E.length>1&&(s=B,E.forEach((d)=>{i[d.id]=!0}))}}}}return{elements:o,appState:{...e,...Z0({selectedElementIds:i,editingGroupId:s},o,e,null)}}},zWe=(A,e)=>{if(A.editingGroupId){let t=Yu(fu(e),A.editingGroupId);if(t.length)return{...A,selectedElementIds:{[t[0].id]:!0}}}return A},lze=at({name:"deleteSelectedElements",label:"labels.delete",icon:W1,trackEvent:{category:"element",action:"delete"},perform:(A,e,t,r)=>{if(e.editingLinearElement){let{elementId:a,selectedPointsIndices:n,startBindingElement:o,endBindingElement:s}=e.editingLinearElement,l=r.scene.getNonDeletedElementsMap(),g=It.getElement(a,l);if(!g||n==null)return!1;if(g.points.length<2){let B=A.map((d)=>d.id===g.id?Yr(d,{isDeleted:!0}):d),E=zWe(e,B);return{elements:B,appState:{...E,editingLinearElement:null},captureUpdate:be.IMMEDIATELY}}let C={startBindingElement:n?.includes(0)?null:o,endBindingElement:n?.includes(g.points.length-1)?null:s};return It.deletePoints(g,n),{elements:A,appState:{...e,editingLinearElement:{...e.editingLinearElement,...C,selectedPointsIndices:n?.[0]>0?[n[0]-1]:[0]}},captureUpdate:be.IMMEDIATELY}}let{elements:i,appState:u}=mCr(A,e,r);return khA(i,i.filter((a)=>a.isDeleted)),u=zWe(u,i),{elements:i,appState:{...u,activeTool:en(e,{type:"selection"}),multiElement:null,activeEmbeddable:null},captureUpdate:yn(fu(A),e)?be.IMMEDIATELY:be.EVENTUALLY}},keyTest:(A,e,t)=>(A.key===PA.BACKSPACE||A.key===PA.DELETE)&&!A[PA.CTRL_OR_CMD],PanelComponent:({elements:A,appState:e,updateData:t})=>N(ci,{type:"button",icon:W1,title:uA("labels.delete"),"aria-label":uA("labels.delete"),onClick:()=>t(null),visible:yn(fu(A),e)})}),C3A=(A,e)=>A.frameId===e||A.id===e,gze=(A,e,t)=>{let r=[],i=[],u=null,a=-1,n=ar(t||Or(A,e,{includeBoundTextElement:!0,includeElementsInFrames:!0}));for(;++a<A.length;){let o=A[a];n.get(o.id)?(i.length&&(r=r.concat(i),i=[]),r.push(a),u=a+1):o.isDeleted&&u===a?(u=a+1,i.push(a)):i=[]}return r},DCr=(A)=>{let e=0;return A.reduce((t,r,i)=>(i>0&&A[i-1]!==r-1&&(e=++e),(t[e]||(t[e]=[])).push(r),t),[])},ZWe=(A,e,t)=>{if("containerId"in A&&A.containerId){let r=gd.getScene(A).getElement(A.containerId);if(r)return t==="left"?Math.min(e.indexOf(r),e.indexOf(A)):Math.max(e.indexOf(r),e.indexOf(A))}else{let r=A.boundElements?.find((i)=>i.type!=="arrow")?.id;if(r){let i=gd.getScene(A).getElement(r);if(i)return t==="left"?Math.min(e.indexOf(i),e.indexOf(A)):Math.max(e.indexOf(i),e.indexOf(A))}}},yCr=(A,e)=>{let t=-1,r=-1;return A.forEach((i,u)=>{C3A(i,e)&&(t===-1&&(t=u),r=u)}),t===-1?[]:A.slice(t,r+1)},wCr=(A,e,t,r,i)=>{let u=e[t],a=(g)=>g.isDeleted?!1:i?g.frameId===i:A.editingGroupId?g.groupIds.includes(A.editingGroupId):!0,n=r==="left"?J1(e,(g)=>a(g),Math.max(0,t-1)):pIA(e,(g)=>a(g),t+1),o=e[n];if(!o)return-1;if(A.editingGroupId){if(u?.groupIds.join("")===o?.groupIds.join(""))return ZWe(o,e,r)??n;if(!o?.groupIds.includes(A.editingGroupId))return-1}if(!i&&(o.frameId||nr(o))){let g=yCr(e,o.frameId||o.id);return r==="left"?e.indexOf(g[0]):e.indexOf(g[g.length-1])}if(!o.groupIds.length)return ZWe(o,e,r)??n;let s=A.editingGroupId?o.groupIds[o.groupIds.indexOf(A.editingGroupId)-1]:o.groupIds[o.groupIds.length-1],l=Yu(e,s);return l.length?r==="left"?e.indexOf(l[0]):e.indexOf(l[l.length-1]):n},cze=(A,e)=>e.reduce((t,r)=>{let i=A[r];return t.set(i.id,i),t},new Map),Cze=(A,e,t)=>{let r=gze(A,e),i=cze(A,r),u=DCr(r);t==="right"&&(u=u.reverse());let a=new Set(r.filter((n)=>nr(A[n])).map((n)=>A[n].id));return u.forEach((n,o)=>{let s=n[0],l=n[n.length-1],g=t==="left"?s:l,C=n.some((Q)=>{let p=A[Q];return p.frameId&&a.has(p.frameId)})?null:A[g]?.frameId,B=wCr(e,A,g,t,C);if(B===-1||g===B)return;let E=t==="left"?A.slice(0,B):A.slice(0,s),d=A.slice(s,l+1),I=t==="left"?A.slice(B,s):A.slice(l+1,B+1),h=t==="left"?A.slice(l+1):A.slice(B+1);A=t==="left"?[...E,...d,...I,...h]:[...E,...I,...d,...h]}),tB(A,i),A},Bze=(A,e,t,r,i)=>{let u=gze(A,e,i),a=cze(A,u),n=[],o,s;if(t==="left"){if(r)o=pIA(A,(E)=>C3A(E,r));else if(e.editingGroupId){let E=Yu(A,e.editingGroupId);if(!E.length)return A;o=A.indexOf(E[0])}else o=0;s=u[u.length-1]}else{if(r)s=J1(A,(E)=>C3A(E,r));else if(e.editingGroupId){let E=Yu(A,e.editingGroupId);if(!E.length)return A;s=A.indexOf(E[E.length-1])}else s=A.length-1;o=u[0]}o===-1&&(o=0);for(let E=o;E<s+1;E++)u.includes(E)||n.push(A[E]);let l=Array.from(a.values()),g=A.slice(0,o),C=A.slice(s+1),B=t==="left"?[...g,...l,...n,...C]:[...g,...n,...l,...C];return tB(B,a),B};function Eze(A,e,t,r){let i=ar(Or(A,e,{includeBoundTextElement:!0,includeElementsInFrames:!0})),u={regularElements:[],frameChildren:new Map},a=new Set;for(let s of A)i.has(s.id)&&nr(s)&&a.add(s.id);for(let s of A)if(i.has(s.id))if(nr(s)||s.frameId&&a.has(s.frameId))u.regularElements.push(s);else if(!s.frameId)u.regularElements.push(s);else{let l=u.frameChildren.get(s.frameId)||[];l.push(s),u.frameChildren.set(s.frameId,l)}let n=A,o=Array.from(u.frameChildren.entries());for(let[s,l]of o)n=r(A,e,t,s,l);return r(n,e,t,null,u.regularElements)}var bCr=(A,e)=>Cze(A,e,"left"),vCr=(A,e)=>Cze(A,e,"right"),kCr=(A,e)=>Eze(A,e,"left",Bze),FCr=(A,e)=>Eze(A,e,"right",Bze),xCr=at({name:"sendBackward",label:"labels.sendBackward",keywords:["move down","zindex","layer"],icon:OIA,trackEvent:{category:"element"},perform:(A,e)=>({elements:bCr(A,e),appState:e,captureUpdate:be.IMMEDIATELY}),keyPriority:40,keyTest:(A)=>A[PA.CTRL_OR_CMD]&&!A.shiftKey&&A.code===hi.BRACKET_LEFT,PanelComponent:({updateData:A,appState:e})=>N("button",{type:"button",className:"zIndexButton",onClick:()=>A(null),title:`${uA("labels.sendBackward")} — ${Fe("CtrlOrCmd+[")}`,children:OIA})}),SCr=at({name:"bringForward",label:"labels.bringForward",keywords:["move up","zindex","layer"],icon:JIA,trackEvent:{category:"element"},perform:(A,e)=>({elements:vCr(A,e),appState:e,captureUpdate:be.IMMEDIATELY}),keyPriority:40,keyTest:(A)=>A[PA.CTRL_OR_CMD]&&!A.shiftKey&&A.code===hi.BRACKET_RIGHT,PanelComponent:({updateData:A,appState:e})=>N("button",{type:"button",className:"zIndexButton",onClick:()=>A(null),title:`${uA("labels.bringForward")} — ${Fe("CtrlOrCmd+]")}`,children:JIA})}),LCr=at({name:"sendToBack",label:"labels.sendToBack",keywords:["move down","zindex","layer"],icon:_IA,trackEvent:{category:"element"},perform:(A,e)=>({elements:kCr(A,e),appState:e,captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>rB?A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.BRACKET_LEFT:A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.code===hi.BRACKET_LEFT,PanelComponent:({updateData:A,appState:e})=>N("button",{type:"button",className:"zIndexButton",onClick:()=>A(null),title:`${uA("labels.sendToBack")} — ${rB?Fe("CtrlOrCmd+Alt+["):Fe("CtrlOrCmd+Shift+[")}`,children:_IA})}),RCr=at({name:"bringToFront",label:"labels.bringToFront",keywords:["move up","zindex","layer"],icon:PIA,trackEvent:{category:"element"},perform:(A,e)=>({elements:FCr(A,e),appState:e,captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>rB?A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.BRACKET_RIGHT:A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.code===hi.BRACKET_RIGHT,PanelComponent:({updateData:A,appState:e})=>N("button",{type:"button",className:"zIndexButton",onClick:(t)=>A(null),title:`${uA("labels.bringToFront")} — ${rB?Fe("CtrlOrCmd+Alt+]"):Fe("CtrlOrCmd+Shift+]")}`,children:PIA})}),NCr=at({name:"selectAll",label:"labels.selectAll",icon:Rhe,trackEvent:{category:"canvas"},viewMode:!1,perform:(A,e,t,r)=>{if(e.editingLinearElement)return!1;let i=A.filter((u)=>!u.isDeleted&&!(Bt(u)&&u.containerId)&&!u.locked).reduce((u,a)=>(u[a.id]=!0,u),{});return{appState:{...e,...Z0({editingGroupId:null,selectedElementIds:i},fu(A),e,r),selectedLinearElement:Object.keys(i).length===1&&Gr(A[0])?new It(A[0]):null},captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.A}),GCr=(A)=>{let e=A.slice(),t=new Set,r=(u)=>{let a=u[0]?.groupIds?.join(""),n=[u[0]],o=[];for(let s of u.slice(1))s.groupIds?.join("")===a?n.push(s):o.push(s);return o.length?[...n,...r(o)]:n},i=new Map;return e.forEach((u,a)=>{if(!i.has(u.id))if(u.groupIds?.length){let n=u.groupIds[u.groupIds.length-1],o=e.slice(a).filter((s)=>{let l=s?.groupIds?.some((g)=>g===n);return l&&i.set(s.id,!0),l});for(let s of r(o))t.add(s)}else t.add(u)}),t.size!==A.length?(console.error("normalizeGroupElementOrder: lost some elements... bailing!"),A):[...t]},UCr=(A)=>{let e=rIe(A),t=A.slice(),r=new Set;return t.forEach((i,u)=>{i&&(i.boundElements?.length?(r.add(i),t[u]=null,i.boundElements.forEach((a)=>{let n=e.get(a.id);n&&a.type==="text"&&(r.add(n[0]),t[n[1]]=null)})):i.type==="text"&&i.containerId&&e.get(i.containerId)?.[0].boundElements?.find((a)=>a.id===i.id)||(r.add(i),t[u]=null))}),r.size!==A.length?(console.error("normalizeBoundElementsOrder: lost some elements... bailing!"),A):[...r]},MCr=(A)=>UCr(GCr(A)),TCr=at({name:"duplicateSelection",label:"labels.duplicateSelection",icon:W_,trackEvent:{category:"element"},perform:(A,e,t,r)=>{if(e.editingLinearElement)try{let u=It.duplicateSelectedPoints(e,r.scene.getNonDeletedElementsMap());return{elements:A,appState:u,captureUpdate:be.IMMEDIATELY}}catch{return!1}let i=YCr(A,e);if(r.props.onDuplicate&&i.elements){let u=r.props.onDuplicate(i.elements,A);u&&(i.elements=u)}return{...i,captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.D,PanelComponent:({elements:A,appState:e,updateData:t})=>N(ci,{type:"button",icon:W_,title:`${uA("labels.duplicateSelection")} — ${Fe("CtrlOrCmd+D")}`,"aria-label":uA("labels.duplicateSelection"),onClick:()=>t(null),visible:yn(fu(A),e)})}),YCr=(A,e)=>{let t=new Map,r=[],i=[],u=new Map,a=new Map,n=ar(A),o=(d)=>{let I=wIA(d).reduce((h,Q)=>{if(l.has(Q.id))return h;l.set(Q.id,!0);let p=WhA(e.editingGroupId,t,Q,{x:Q.x+L8/2,y:Q.y+L8/2});return l.set(p.id,!0),a.set(p.id,p),u.set(Q.id,p.id),i.push(Q),r.push(p),h.push(p),h},[]);return Array.isArray(d)?I:I[0]||null};A=MCr(A);let s=ar(Or(A,e,{includeBoundTextElement:!0,includeElementsInFrames:!0})),l=new Map,g=A.slice(),C=(d,I)=>{fn(d!==-1,"targetIndex === -1 "),!(!Array.isArray(I)&&!I)&&g.splice(d+1,0,...wIA(I))},B=new Set(A.filter((d)=>s.has(d.id)&&nr(d)).map((d)=>d.id));for(let d of A){if(l.has(d.id)||!s.has(d.id))continue;let I=RhA(e,d);if(I){let h=Yu(A,I).flatMap((p)=>nr(p)?[...gB(A,p.id),p]:[p]),Q=J1(g,(p)=>p.groupIds?.includes(I));C(Q,o(h));continue}if(!(d.frameId&&B.has(d.frameId))){if(nr(d)){let h=d.id,Q=gB(A,h),p=J1(g,(m)=>m.frameId===h||m.id===h);C(p,o([...Q,d]));continue}if(Ul(d)){let h=Ur(d,n),Q=J1(g,(p)=>p.id===d.id||("containerId"in p)&&p.containerId===d.id);h?C(Q,o([d,h])):C(Q,o(d));continue}if(Tu(d)){let h=Do(d,n),Q=J1(g,(p)=>p.id===d.id||p.id===h?.id);h?C(Q,o([h,d])):C(Q,o(d));continue}C(J1(g,(h)=>h.id===d.id),o(d))}}YhA(g,i,u),vhA(g,i,u),BQA(g,i,u);let E=KW(r);return{elements:g,appState:{...e,...Z0({editingGroupId:e.editingGroupId,selectedElementIds:E.reduce((d,I)=>(Tu(I)||(d[I.id]=!0),d),{})},fu(g),e,null)}}},HCr=new Set(["command_palette","export"]),Nu=(A,e,t,r)=>{try{if(typeof window>"u"||fr.VITE_WORKER_ID||fr.VITE_APP_ENABLE_TRACKING!=="true"||!HCr.has(A)||fr.DEV)return;fr.PROD||console.info("trackEvent",{category:A,action:e,label:t,value:r}),window.sa_event&&window.sa_event(e,{category:A,label:t,value:r})}catch(i){console.error("error during analytics",i)}},dze=mt((A,e)=>{let{title:t,className:r,testId:i,active:u,standalone:a,icon:n,onClick:o}=A;return N("button",{type:"button",ref:e,title:t,"data-testid":i,className:Se(r,{standalone:a,active:u}),onClick:o,children:n},t)}),Rd=(A)=>N("div",{className:"buttonList",children:A.options.map((e)=>A.type==="button"?N(dze,{icon:e.icon,title:e.text,testId:e.testId,active:e.active??A.value===e.value,onClick:(t)=>A.onClick(e.value,t)},e.text):cA("label",{className:Se({active:A.value===e.value}),title:e.text,children:[N("input",{type:"radio",name:A.group,onChange:()=>A.onChange(e.value),checked:A.value===e.value,"data-testid":e.testId}),e.icon]},e.text))}),KCr=({onChange:A,type:e,activeColor:t,topPicks:r})=>{let i;return e==="elementStroke"&&(i=rIA),e==="elementBackground"&&(i=iIA),e==="canvasBackground"&&(i=uIA),r&&(i=r),i?N("div",{className:"color-picker__top-picks",children:i.map((u)=>N("button",{className:Se("color-picker__button",{active:u===t,"is-transparent":u==="transparent"||!u}),style:{"--swatch-color":u},type:"button",title:u,onClick:()=>A(u),"data-testid":`color-top-pick-${u}`,children:N("div",{className:"color-picker__button-outline"})},u))}):(console.error("Invalid type for TopPicks"),null)},Ize=()=>N("div",{style:{width:1,height:"1rem",backgroundColor:"var(--default-border-color)",margin:"0 auto"}}),gZ=({palette:A,color:e})=>{for(let[t,r]of Object.entries(A))if(Array.isArray(r)){let i=r.indexOf(e);if(i>-1)return{colorName:t,shade:i}}else if(r===e)return{colorName:t,shade:null};return null},B3A=[["q","w","e","r","t"],["a","s","d","f","g"],["z","x","c","v","b"]].flat(),hze=({color:A,palette:e})=>!Object.values(e).flat().includes(A),JCr=(A,e,t)=>{let r={elementBackground:"backgroundColor",elementStroke:"strokeColor"},i=A.filter((a)=>{if(a.isDeleted)return!1;let n=a[r[e]];return hze({color:n,palette:t})}),u=new Map;return i.forEach((a)=>{let n=a[r[e]];u.has(n)?u.set(n,u.get(n)+1):u.set(n,1)}),[...u.entries()].sort((a,n)=>n[1]-a[1]).map((a)=>a[0]).slice(0,cde)},H5=On(null),VWe=(A,e,t)=>(A*299+e*587+t*114)/1000>=160?"black":"white",OCr=(A,e)=>{if(e){let u=new Option().style;if(u.color=A,u.color){let a=u.color.replace(/^(rgb|rgba)\(/,"").replace(/\)$/,"").replace(/\s/g,"").split(","),n=parseInt(a[0]),o=parseInt(a[1]),s=parseInt(a[2]);return VWe(n,o,s)}}if(A==="transparent")return"black";let t=parseInt(A.substring(1,3),16),r=parseInt(A.substring(3,5),16),i=parseInt(A.substring(5,7),16);return VWe(t,r,i)},PCr=({color:A,keyLabel:e,isCustomColor:t=!1,isShade:r=!1})=>cA("div",{className:"color-picker__button__hotkey-label",style:{color:OCr(A,t)},children:[r&&"⇧",e]}),F3A=PCr,_Cr=({hex:A,onChange:e,palette:t})=>{let r=gZ({color:A||"transparent",palette:t}),[i,u]=Ka(H5),a=Ee(null);if(le(()=>{a.current&&i==="shades"&&a.current.focus()},[r,i]),r){let{colorName:n,shade:o}=r,s=t[n];if(Array.isArray(s))return N("div",{className:"color-picker-content--default shades",children:s.map((l,g)=>cA("button",{ref:g===o&&i==="shades"?a:void 0,tabIndex:-1,type:"button",className:Se("color-picker__button color-picker__button--large",{active:g===o}),"aria-label":"Shade",title:`${n} - ${g+1}`,style:l?{"--swatch-color":l}:void 0,onClick:()=>{e(l),u("shades")},children:[N("div",{className:"color-picker__button-outline"}),N(F3A,{color:l,keyLabel:g+1,isShade:!0})]},g))})}return cA("div",{className:"color-picker-content--default",style:{position:"relative"},tabIndex:-1,children:[N("button",{type:"button",tabIndex:-1,className:"color-picker__button color-picker__button--large color-picker__button--no-focus-visible"}),N("div",{tabIndex:-1,style:{position:"absolute",top:0,left:0,right:0,bottom:0,display:"flex",alignItems:"center",justifyContent:"center",textAlign:"center",fontSize:"0.75rem"},children:uA("colorPicker.noShades")})]})},WCr=({palette:A,color:e,onChange:t,label:r,activeShade:i})=>{let u=gZ({color:e||"transparent",palette:A}),[a,n]=Ka(H5),o=Ee(null);return le(()=>{o.current&&a==="baseColors"&&o.current.focus()},[u?.colorName,a]),N("div",{className:"color-picker-content--default",children:Object.entries(A).map(([s,l],g)=>{let C=(Array.isArray(l)?l[i]:l)||"transparent",B=B3A[g],E=uA(`colors.${s.replace(/\d+/,"")}`,null,"");return cA("button",{ref:u?.colorName===s?o:void 0,tabIndex:-1,type:"button",className:Se("color-picker__button color-picker__button--large",{active:u?.colorName===s,"is-transparent":C==="transparent"||!C}),onClick:()=>{t(C),n("baseColors")},title:`${E}${C.startsWith("#")?` ${C}`:""} — ${B}`,"aria-label":`${E} — ${B}`,style:C?{"--swatch-color":C}:void 0,"data-testid":`color-${s}`,children:[N("div",{className:"color-picker__button-outline"}),N(F3A,{color:C,keyLabel:B})]},s)})})},qCr=WCr,zCr=({colors:A,color:e,onChange:t,label:r})=>{let[i,u]=Ka(H5),a=Ee(null);return le(()=>{a.current&&a.current.focus()},[e,i]),N("div",{className:"color-picker-content--default",children:A.map((n,o)=>cA("button",{ref:e===n?a:void 0,tabIndex:-1,type:"button",className:Se("color-picker__button color-picker__button--large",{active:e===n,"is-transparent":n==="transparent"||!n}),onClick:()=>{t(n),u("custom")},title:n,"aria-label":r,style:{"--swatch-color":n},children:[N("div",{className:"color-picker__button-outline"}),N(F3A,{color:n,keyLabel:o+1,isCustomColor:!0})]},o))})},VfA=(A,e,t)=>{let r=Math.ceil(t/zm);switch(e=e??-1,A){case"ArrowLeft":{let i=e-1;return i<0?t-1:i}case"ArrowRight":return(e+1)%t;case"ArrowDown":{let i=e+zm;return i>=t?e%zm:i}case"ArrowUp":{let i=e-zm,u=i<0?zm*r+i:i;return u>=t?void 0:u}}},ZCr=({e:A,colorObj:e,onChange:t,palette:r,customColors:i,setActiveColorPickerSection:u,activeShade:a})=>{if(e?.shade!=null&&["Digit1","Digit2","Digit3","Digit4","Digit5"].includes(A.code)&&A.shiftKey){let n=Number(A.code.slice(-1))-1;return t(r[e.colorName][n]),u("shades"),!0}if(["1","2","3","4","5"].includes(A.key)&&i[Number(A.key)-1])return t(i[Number(A.key)-1]),u("custom"),!0;if(B3A.includes(A.key)){let n=B3A.indexOf(A.key),o=Object.keys(r)[n],s=r[o],l=Array.isArray(s)?s[a]:s;return t(l),u("baseColors"),!0}return!1},VCr=({event:A,activeColorPickerSection:e,palette:t,color:r,onChange:i,customColors:u,setActiveColorPickerSection:a,updateData:n,activeShade:o,onEyeDropperToggle:s,onEscape:l})=>{if(A[PA.CTRL_OR_CMD])return!1;if(A.key===PA.ESCAPE)return l(A),!0;if(A.key===PA.ALT)return s(!0),!0;if(A.key===PA.I)return s(),!0;let g=gZ({color:r,palette:t});if(A.key===PA.TAB){let C={custom:!!u.length,baseColors:!0,shades:g?.shade!=null,hex:!0},B=Object.entries(C).reduce((Q,[p,m])=>(m&&Q.push(p),Q),[]),E=B.indexOf(e),d=A.shiftKey?-1:1,I=E+d>B.length-1?0:E+d<0?B.length-1:E+d,h=B[I];return h&&a(h),h==="custom"?i(u[0]):h==="baseColors"&&(Object.entries(t).find(([Q,p])=>Array.isArray(p)?p.includes(r):p===r?Q:null)||i(Zr.black)),A.preventDefault(),A.stopPropagation(),!0}if(ZCr({e:A,colorObj:g,onChange:i,palette:t,customColors:u,setActiveColorPickerSection:a,activeShade:o}))return!0;if(e==="shades"&&g){let{shade:C}=g,B=VfA(A.key,C,zm);if(B!==void 0)return i(t[g.colorName][B]),!0}if(e==="baseColors"&&g){let{colorName:C}=g,B=Object.keys(t),E=B.indexOf(C),d=VfA(A.key,E,B.length);if(d!==void 0){let I=B[d],h=t[I];return i(Array.isArray(h)?h[o]:h),!0}}if(e==="custom"){let C=u.indexOf(r),B=VfA(A.key,C,u.length);if(B!==void 0){let E=u[B];return i(E),!0}}return!1},jCr=({children:A})=>N("div",{className:"color-picker__heading",children:A}),AZ=jCr,XCr=({color:A,onChange:e,label:t,type:r,elements:i,palette:u,updateData:a,children:n,onEyeDropperToggle:o,onEscape:s})=>{let[l]=we(()=>r==="canvasBackground"?[]:JCr(i,r,u)),[g,C]=Ka(H5),B=gZ({color:A,palette:u});le(()=>{if(!g){let h=hze({color:A,palette:u}),Q=h&&!l.includes(A);C(Q?"hex":h?"custom":B?.shade!=null?"shades":"baseColors")}},[g,A,u,C,B,l]);let[E,d]=we(B?.shade??(r==="elementBackground"?t9:e9));le(()=>{B?.shade!=null&&d(B.shade);let h=(Q)=>{Q.key===PA.ALT&&o(!1)};return document.addEventListener("keyup",h,{capture:!0}),()=>{document.removeEventListener("keyup",h,{capture:!0})}},[B,o]);let I=Ee(null);return N("div",{role:"dialog","aria-modal":"true","aria-label":uA("labels.colorPicker"),children:cA("div",{ref:I,onKeyDown:(h)=>{VCr({event:h,activeColorPickerSection:g,palette:u,color:A,onChange:e,onEyeDropperToggle:o,customColors:l,setActiveColorPickerSection:C,updateData:a,activeShade:E,onEscape:s})&&(h.preventDefault(),h.stopPropagation())},className:"color-picker-content properties-content",tabIndex:-1,children:[!!l.length&&cA("div",{children:[N(AZ,{children:uA("colorPicker.mostUsedCustomColors")}),N(zCr,{colors:l,color:A,label:uA("colorPicker.mostUsedCustomColors"),onChange:e})]}),cA("div",{children:[N(AZ,{children:uA("colorPicker.colors")}),N(qCr,{color:A,label:t,palette:u,onChange:e,activeShade:E})]}),cA("div",{children:[N(AZ,{children:uA("colorPicker.shades")}),N(_Cr,{hex:A,onChange:e,palette:u})]}),n]})})},Qze=wi(null),k0=()=>Li(Qze),pze=(A)=>{let[e,t]=we(null),r=vo(),{theme:i}=k0(),{container:u}=Gd();return Ii(()=>{e&&(e.className="",e.classList.add("excalidraw",...A?.className?.split(/\s+/)||[]),e.classList.toggle("excalidraw--mobile",r.editor.isMobile),e.classList.toggle("theme--dark",i===ei.DARK))},[e,i,r.editor.isMobile,A?.className]),Ii(()=>{let a=A?.parentSelector?u?.querySelector(A.parentSelector):document.body;if(!a)return;let n=document.createElement("div");return a.appendChild(n),t(n),()=>{a.removeChild(n)}},[u,A?.parentSelector]),e};function x3A(A,e,t){le(()=>{function r(i){let u=i;if(!A.current)return;let a=t?.(u,A.current);if(a===!0)return;if(a===!1)return e(u);A.current.contains(u.target)||!document.documentElement.contains(u.target)||u.target.closest("[data-radix-portal]")||u.target===document.documentElement&&document.body.style.pointerEvents==="none"||u.target.closest("[data-prevent-outside-click]")||e(u)}return document.addEventListener("pointerdown",r),document.addEventListener("touchstart",r),()=>{document.removeEventListener("pointerdown",r),document.removeEventListener("touchstart",r)}},[A,e,t])}var cZ=(A)=>{let e=Ee(A);return Object.assign(e.current,A),e.current},CZ=On(null),$Cr=({onCancel:A,onChange:e,onSelect:t,colorPickerType:r})=>{let i=pze({className:"excalidraw-eye-dropper-backdrop",parentSelector:".excalidraw-eye-dropper-container"}),u=k0(),a=pZ(),n=Nd(),o=Or(a,u),s=cZ({app:n,onCancel:A,onChange:e,onSelect:t,selectedElements:o}),{container:l}=Gd();le(()=>{let C=g.current;if(!C||!n.canvas||!i)return;let B=!1,E=n.canvas.getContext("2d"),d=({clientX:D,clientY:w})=>{let b=E.getImageData((D-u.offsetLeft)*window.devicePixelRatio,(w-u.offsetTop)*window.devicePixelRatio,1,1).data;return dde(b[0],b[1],b[2])},I=({clientX:D,clientY:w,altKey:b})=>{C.style.top=`${w+20}px`,C.style.left=`${D+20}px`;let k=d({clientX:D,clientY:w});B&&s.onChange(r,k,s.selectedElements,{altKey:b}),C.style.background=k},h=()=>{s.onCancel()},Q=(D,w)=>{s.onSelect(D,w)},p=(D)=>{B=!0,D.stopImmediatePropagation()},m=(D)=>{B=!1,l?.focus(),D.stopImmediatePropagation(),D.preventDefault(),Q(d(D),D)},f=(D)=>{D.key===PA.ESCAPE&&(D.preventDefault(),D.stopImmediatePropagation(),h())};return i.tabIndex=-1,i.focus(),I({clientX:s.app.lastViewportPosition.x,clientY:s.app.lastViewportPosition.y,altKey:!1}),i.addEventListener("keydown",f),i.addEventListener("pointerdown",p),i.addEventListener("pointerup",m),window.addEventListener("pointermove",I,{passive:!0}),window.addEventListener("blur",h),()=>{B=!1,i.removeEventListener("keydown",f),i.removeEventListener("pointerdown",p),i.removeEventListener("pointerup",m),window.removeEventListener("pointermove",I),window.removeEventListener("blur",h)}},[s,n.canvas,i,r,l,u.offsetLeft,u.offsetTop]);let g=Ee(null);return x3A(g,()=>{A()},(C)=>!!C.target.closest(".excalidraw-eye-dropper-trigger, .excalidraw-eye-dropper-backdrop")),i?p5(N("div",{ref:g,className:"excalidraw-eye-dropper-preview"}),i):null},ABr=({color:A,onChange:e,label:t,colorPickerType:r})=>{let i=vo(),[u,a]=we(A),[n,o]=Ka(H5);le(()=>{a(A)},[A]);let s=st((E)=>{let d=E.toLowerCase(),I=eBr(d);I&&e(I),a(d)},[e]),l=Ee(null),g=Ee(null);le(()=>{l.current&&l.current.focus()},[n]);let[C,B]=Ka(CZ);return le(()=>()=>{B(null)},[B]),cA("div",{className:"color-picker__input-label",children:[N("div",{className:"color-picker__input-hash",children:"#"}),N("input",{ref:n==="hex"?l:void 0,style:{border:0,padding:0},spellCheck:!1,className:"color-picker-input","aria-label":t,onChange:(E)=>{s(E.target.value)},value:(u||"").replace(/^#/,""),onBlur:()=>{a(A)},tabIndex:-1,onFocus:()=>o("hex"),onKeyDown:(E)=>{E.key!==PA.TAB&&(E.key===PA.ESCAPE&&g.current?.focus(),E.stopPropagation())}}),!i.editor.isMobile&&cA(At,{children:[N("div",{style:{width:"1px",height:"1.25rem",backgroundColor:"var(--default-border-color)"}}),N("div",{ref:g,className:Se("excalidraw-eye-dropper-trigger",{selected:C}),onClick:()=>B((E)=>E?null:{keepOpenOnAlt:!1,onSelect:(d)=>e(d),colorPickerType:r}),title:`${uA("labels.eyeDropper")} — ${PA.I.toLocaleUpperCase()} or ${Fe("Alt")} `,children:yhe})]})]})},kB=mt(({children:A,padding:e,className:t,style:r},i)=>N("div",{className:Se("Island",t),style:{"--padding":e,...r},ref:i,children:A})),fze=mt(({className:A,container:e,children:t,style:r,onClose:i,onKeyDown:u,onFocusOutside:a,onPointerLeave:n,onPointerDownOutside:o},s)=>{let l=vo();return N(F2e,{container:e,children:cA(F5,{ref:s,className:Se("focus-visible-none",A),"data-prevent-outside-click":!0,side:l.editor.isMobile&&!l.viewport.isLandscape?"bottom":"right",align:l.editor.isMobile&&!l.viewport.isLandscape?"center":"start",alignOffset:-16,sideOffset:20,style:{zIndex:"var(--zIndex-popup)"},onPointerLeave:n,onKeyDown:u,onFocusOutside:a,onPointerDownOutside:o,onCloseAutoFocus:(g)=>{g.stopPropagation(),g.preventDefault(),e&&!Vde(document.activeElement)&&e.focus(),i()},children:[N(kB,{padding:3,style:r,children:t}),N(Tz,{width:20,height:10,style:{fill:"var(--popup-bg-color)",filter:"drop-shadow(rgba(0, 0, 0, 0.05) 0px 3px 2px)"}})]})})}),jWe=(A)=>{let e=new Option().style;return e.color=A,!!e.color},eBr=(A)=>vc(A)?A:jWe(`#${A}`)?`#${A}`:jWe(A)?A:null,tBr=({type:A,color:e,onChange:t,label:r,elements:i,palette:u=Zr,updateData:a})=>{let{container:n}=Gd(),[,o]=Ka(H5),[s,l]=Ka(CZ),g=cA("div",{children:[N(AZ,{children:uA("colorPicker.hexCode")}),N(ABr,{color:e,label:r,onChange:(E)=>{t(E)},colorPickerType:A})]}),C=Ee(null),B=()=>{C.current?.querySelector(".color-picker-content")?.focus()};return N(fze,{container:n,style:{maxWidth:"13rem"},onFocusOutside:(E)=>{B(),E.preventDefault()},onPointerDownOutside:(E)=>{s&&E.preventDefault()},onClose:()=>{a({openPopup:null}),o(null)},children:u?N(XCr,{palette:u,color:e,onChange:(E)=>{t(E)},onEyeDropperToggle:(E)=>{l((d)=>E?(d=d||{keepOpenOnAlt:!0,onSelect:t,colorPickerType:A},d.keepOpenOnAlt=!0,d):E===!1||d?null:{keepOpenOnAlt:!1,onSelect:t,colorPickerType:A})},onEscape:(E)=>{s?l(null):a({openPopup:null})},label:r,type:A,elements:i,updateData:a,children:g}):g})},rBr=({label:A,color:e,type:t})=>N(Dp,{type:"button",className:Se("color-picker__button active-color properties-trigger",{"is-transparent":e==="transparent"||!e}),"aria-label":A,style:e?{"--swatch-color":e}:void 0,title:t==="elementStroke"?uA("labels.showStroke"):uA("labels.showBackground"),children:N("div",{className:"color-picker__button-outline"})}),S3A=({type:A,color:e,onChange:t,label:r,elements:i,palette:u=Zr,topPicks:a,updateData:n,appState:o})=>N("div",{children:cA("div",{role:"dialog","aria-modal":"true",className:"color-picker-container",children:[N(KCr,{activeColor:e,onChange:t,type:A,topPicks:a}),N(Ize,{}),cA(mp,{open:o.openPopup===A,onOpenChange:(s)=>{n({openPopup:s?A:null})},children:[N(rBr,{color:e,label:r,type:A}),o.openPopup===A&&N(tBr,{type:A,color:e,onChange:t,label:r,elements:i,palette:u,updateData:n})]})]})}),BZ=({icon:A})=>N("span",{style:{width:"1em",margin:"0 0.5ex 0 0.5ex",display:"inline-block",lineHeight:0,verticalAlign:"middle"},children:A}),iBr=({label:A,open:e,openTrigger:t,children:r,className:i})=>cA(At,{children:[cA("div",{style:{cursor:"pointer",display:"flex",justifyContent:"space-between",alignItems:"center"},className:i,onClick:t,children:[A,N(BZ,{icon:e?zhe:ghA})]}),e&&N("div",{style:{display:"flex",flexDirection:"column"},children:r})]}),E3A=iBr,uBr=On(!1);function aBr({options:A,value:e,label:t,onChange:r,onClose:i,numberOfOptionsToAlwaysShow:u=A.length}){let a=vo(),n=(B)=>{let E=A.find((d)=>d.keyBinding===B.key.toLowerCase());if(!(B.metaKey||B.altKey||B.ctrlKey)&&E)r(E.value),B.preventDefault();else if(B.key===PA.TAB){let d=A.findIndex((h)=>h.value===e),I=B.shiftKey?(A.length+d-1)%A.length:(d+1)%A.length;r(A[I].value)}else if(b9(B.key)){let d=NL().rtl,I=A.findIndex((h)=>h.value===e);if(I!==-1){let h=A.length,Q=I;switch(B.key){case(d?PA.ARROW_LEFT:PA.ARROW_RIGHT):Q=(I+1)%h;break;case(d?PA.ARROW_RIGHT:PA.ARROW_LEFT):Q=(h+I-1)%h;break;case PA.ARROW_DOWN:{Q=(I+(u??1))%h;break}case PA.ARROW_UP:{Q=(h+I-(u??1))%h;break}}r(A[Q].value)}B.preventDefault()}else(B.key===PA.ESCAPE||B.key===PA.ENTER)&&(B.preventDefault(),i());B.nativeEvent.stopImmediatePropagation(),B.stopPropagation()},[o,s]=Ka(uBr),l=Ut(()=>A.slice(0,u),[A,u]),g=Ut(()=>A.slice(u),[A,u]);le(()=>{l.some((B)=>B.value===e)||s(!0)},[e,l,s]);let C=(B)=>N("div",{className:"picker-content",children:B.map((E,d)=>cA("button",{type:"button",className:Se("picker-option",{active:e===E.value}),onClick:(I)=>{r(E.value)},title:`${E.text} ${E.keyBinding&&`— ${E.keyBinding.toUpperCase()}`}`,"aria-label":E.text||"none","aria-keyshortcuts":E.keyBinding||void 0,ref:(I)=>{e===E.value&&setTimeout(()=>{I?.focus()},0)},children:[E.icon,E.keyBinding&&N("span",{className:"picker-keybinding",children:E.keyBinding})]},E.text))});return N(F5,{side:a.editor.isMobile&&!a.viewport.isLandscape?"top":"bottom",align:"start",sideOffset:12,style:{zIndex:"var(--zIndex-popup)"},onKeyDown:n,children:cA("div",{className:"picker",role:"dialog","aria-modal":"true","aria-label":t,children:[C(l),g.length>0&&N(E3A,{label:uA("labels.more_options"),open:o,openTrigger:()=>{s((B)=>!B)},className:"picker-collapsible",children:C(g)})]})})}function XWe({value:A,label:e,options:t,onChange:r,group:i="",numberOfOptionsToAlwaysShow:u}){let[a,n]=we(!1),o=Ee(null);return N("div",{children:cA(mp,{open:a,onOpenChange:(s)=>n(s),children:[N(Dp,{name:i,type:"button","aria-label":e,onClick:()=>n(!a),ref:o,className:a?"active":"",children:t.find((s)=>s.value===A)?.icon}),a&&N(aBr,{options:t,value:A,label:e,onChange:r,onClose:()=>{n(!1)},numberOfOptionsToAlwaysShow:u})]})})}var mze=mt(({className:A,placeholder:e,onChange:t},r)=>cA("div",{className:Se("QuickSearch__wrapper",A),children:[q1,N("input",{ref:r,className:"QuickSearch__input",type:"text",placeholder:e,onChange:(i)=>t(i.target.value.trim().toLowerCase())})]})),Dze=({className:A,placeholder:e,children:t})=>{let r=!di.count(t);return N("div",{className:Se("ScrollableList__wrapper",A),role:"menu",children:r?N("div",{className:"empty",children:e}):t})},yze=({children:A,className:e="",style:t,title:r})=>cA("div",{className:`dropdown-menu-group ${e}`,style:t,children:[r&&N("p",{className:"dropdown-menu-group-title",children:r}),A]}),d3A=yze;yze.displayName="DropdownMenuGroup";var wze=wi({}),bze=(A="",e=!1,t=!1)=>`dropdown-menu-item dropdown-menu-item-base ${A}
${e?"dropdown-menu-item--selected":""} ${t?"dropdown-menu-item--hovered":""}`.trim(),vze=(A,e)=>{let t=Li(wze);return H8(A,(r)=>{let i=new CustomEvent("menu.itemSelect",{bubbles:!0,cancelable:!0});e?.(i),i.defaultPrevented||t.onSelect?.(i)})},nBr=({textStyle:A,icon:e,shortcut:t,children:r})=>{let i=vo();return cA(At,{children:[e&&N("div",{className:"dropdown-menu-item__icon",children:e}),N("div",{style:A,className:"dropdown-menu-item__text",children:r}),t&&!i.editor.isMobile&&N("div",{className:"dropdown-menu-item__shortcut",children:t})]})},kze=nBr,L3A=({icon:A,value:e,order:t,children:r,shortcut:i,className:u,hovered:a,selected:n,textStyle:o,onSelect:s,onClick:l,...g})=>{let C=vze(l,s),B=Ee(null);return le(()=>{a&&(t===0?B.current?.scrollIntoView({block:"end"}):B.current?.scrollIntoView({block:"nearest"}))},[a,t]),N("button",{...g,ref:B,value:e,onClick:C,className:bze(u,n,a),title:g.title??g["aria-label"],children:N(kze,{textStyle:o,icon:A,shortcut:i,children:r})})};L3A.displayName="DropdownMenuItem";var FL={GREEN:"green",RED:"red",BLUE:"blue"},R3A=({type:A=FL.BLUE,children:e})=>{let{theme:t}=JL(),r={display:"inline-flex",marginLeft:"auto",padding:"2px 4px",borderRadius:6,fontSize:9,fontFamily:"Cascadia, monospace",border:t===ei.LIGHT?"1.5px solid white":"none"};switch(A){case FL.GREEN:Object.assign(r,{backgroundColor:"var(--background-color-badge)",color:"var(--color-badge)"});break;case FL.RED:Object.assign(r,{backgroundColor:"pink",color:"darkred"});break;case FL.BLUE:default:Object.assign(r,{background:"var(--color-promo)",color:"var(--color-surface-lowest)"})}return N("div",{className:"DropDownMenuItemBadge",style:r,children:e})};R3A.displayName="DropdownMenuItemBadge";L3A.Badge=R3A;var qc=L3A,oBr=({event:A,inputRef:e,hoveredFont:t,filteredFonts:r,onClose:i,onSelect:u,onHover:a})=>{if(!A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.key.toLowerCase()===PA.F)return e.current?.focus(),!0;if(A.key===PA.ESCAPE)return i(),!0;if(A.key===PA.ENTER)return t?.value&&u(t.value),!0;if(A.key===PA.ARROW_DOWN)return t?.next?a(t.next.value):r[0]?.value&&a(r[0].value),!0;if(A.key===PA.ARROW_UP)return t?.prev?a(t.prev.value):r[r.length-1]?.value&&a(r[r.length-1].value),!0},sBr=gi(({selectedFontFamily:A,hoveredFontFamily:e,onSelect:t,onHover:r,onLeave:i,onOpen:u,onClose:a})=>{let{container:n}=Gd(),{fonts:o}=Nd(),{showDeprecatedFonts:s}=KL(),[l,g]=we(""),C=Ee(null),B=Ut(()=>Array.from(Ed.registered.entries()).filter(([b,{metadata:k}])=>!k.serverSide&&!k.fallback).map(([b,{metadata:k,fontFaces:v}])=>{let S={value:b,icon:k.icon??m8,text:v[0]?.fontFace?.family??"Unknown"};return k.deprecated&&Object.assign(S,{deprecated:k.deprecated,badge:{type:FL.RED,placeholder:uA("fontList.badge.old")}}),S}).sort((b,k)=>b.text.toLowerCase()>k.text.toLowerCase()?1:-1),[]),E=Ut(()=>new Set(o.getSceneFamilies()),[A]),d=Ut(()=>B.filter((b)=>E.has(b.value)),[B,E]),I=Ut(()=>B.filter((b)=>!E.has(b.value)&&(s||!b.deprecated)),[B,E,s]),h=Ut(()=>iIe([...d,...I].filter((b)=>b.text?.toLowerCase().includes(l))),[d,I,l]),Q=Ut(()=>{let b;return e?b=h.find((k)=>k.value===e):A&&(b=h.find((k)=>k.value===A)),!b&&l&&(h[0]?.value?r(h[0].value):i()),b},[e,A,l,h,r,i]),p=st((b)=>{oBr({event:b,inputRef:C,hoveredFont:Q,filteredFonts:h,onSelect:t,onHover:r,onClose:a})&&(b.preventDefault(),b.stopPropagation())},[Q,h,t,r,a]);le(()=>(u(),()=>{a()}),[]);let m=Ut(()=>h.filter((b)=>E.has(b.value)),[h,E]),f=Ut(()=>h.filter((b)=>!E.has(b.value)),[h,E]),D=(b,k)=>cA(qc,{icon:b.icon,value:b.value,order:k,textStyle:{fontFamily:e2({fontFamily:b.value})},hovered:b.value===Q?.value,selected:b.value===A,tabIndex:b.value===A?0:-1,onClick:(v)=>{t(Number(v.currentTarget.value))},onMouseMove:()=>{Q?.value!==b.value&&r(b.value)},children:[b.text,b.badge&&N(R3A,{type:b.badge.type,children:b.badge.placeholder})]},b.value),w=[];return m.length&&w.push(N(d3A,{title:uA("fontList.sceneFonts"),children:m.map(D)},"group_1")),f.length&&w.push(N(d3A,{title:uA("fontList.availableFonts"),children:f.map((b,k)=>D(b,k+m.length))},"group_2")),cA(fze,{className:"properties-content",container:n,style:{width:"15rem"},onClose:a,onPointerLeave:i,onKeyDown:p,children:[N(mze,{ref:C,placeholder:uA("quickSearch.placeholder"),onChange:t2(g,20)}),N(Dze,{className:"dropdown-menu fonts manual-hover",placeholder:uA("fontList.empty"),children:w.length?w:null})]})},(A,e)=>A.selectedFontFamily===e.selectedFontFamily&&A.hoveredFontFamily===e.hoveredFontFamily),lBr=({selectedFontFamily:A})=>{let e=Ut(()=>!!(A&&!cBr(A)),[A]);return N(Dp,{asChild:!0,children:N("div",{children:N(dze,{standalone:!0,icon:RIA,title:uA("labels.showFonts"),className:"properties-trigger",testId:"font-family-show-fonts",active:e,onClick:()=>{}})})})},Fze=[{value:aa.Excalifont,icon:g9,text:uA("labels.handDrawn"),testId:"font-family-hand-drawn"},{value:aa.Nunito,icon:m8,text:uA("labels.normal"),testId:"font-family-normal"},{value:aa["Comic Shanns"],icon:m_,text:uA("labels.code"),testId:"font-family-code"}],gBr=new Set(Fze.map((A)=>A.value)),cBr=(A)=>A?gBr.has(A):!1,CBr=gi(({isOpened:A,selectedFontFamily:e,hoveredFontFamily:t,onSelect:r,onHover:i,onLeave:u,onPopupChange:a})=>{let n=Ut(()=>Fze,[]),o=st((s)=>{s&&r(s)},[r]);return cA("div",{role:"dialog","aria-modal":"true",className:"FontPicker__container",children:[N(Rd,{type:"button",options:n,value:e,onClick:o}),N(Ize,{}),cA(mp,{open:A,onOpenChange:a,children:[N(lBr,{selectedFontFamily:e}),A&&N(sBr,{selectedFontFamily:e,hoveredFontFamily:t,onSelect:o,onHover:i,onLeave:u,onOpen:()=>a(!0),onClose:()=>a(!1)})]})]})},(A,e)=>A.isOpened===e.isOpened&&A.selectedFontFamily===e.selectedFontFamily&&A.hoveredFontFamily===e.hoveredFontFamily),BBr=({updateData:A,appState:e,elements:t,testId:r})=>{let i=Ee(null),u=Ee(null),a=zs(t,e,(n)=>n.opacity,!0,e.currentItemOpacity);return le(()=>{if(i.current&&u.current){let n=i.current,o=u.current,s=n.offsetWidth,l=15,g=a/100*(s-l)+l/2;o.style.left=`${g}px`,n.style.background=`linear-gradient(to right, var(--color-slider-track) 0%, var(--color-slider-track) ${a}%, var(--button-bg) ${a}%, var(--button-bg) 100%)`}},[a]),cA("label",{className:"control-label",children:[uA("labels.opacity"),cA("div",{className:"range-wrapper",children:[N("input",{ref:i,type:"range",min:"0",max:"100",step:"10",onChange:(n)=>{A(+n.target.value)},value:a,className:"range-input","data-testid":r}),N("div",{className:"value-bubble",ref:u,children:a!==0?a:null}),N("div",{className:"zero-label",children:"0"})]})]})},xze=0.1,qs=(A,e,t,r=!1)=>{let i=ar(Or(A,e,{includeBoundTextElement:r}));return A.map((u)=>i.get(u.id)||u.id===e.editingTextElement?.id?t(u):u)},zs=function(A,e,t,r,i){let u=e.editingTextElement,a=fu(A),n=null;return u&&(n=t(u)),n||(yn(a,e)?n=Y4e(r===!0?a:a.filter((o)=>r(o)),e,t)??(typeof i=="function"?i(!0):i):n=typeof i=="function"?i(!1):i),n},EBr=(A,e)=>Tu(e)||!e.autoResize?e:xe(e,{x:A.textAlign==="left"?A.x:A.x+(A.width-e.width)/(A.textAlign==="center"?2:1),y:A.y+(A.height-e.height)/2},!1),N3A=(A,e,t,r,i)=>{let u=new Set,a=qs(A,e,(o)=>{if(Bt(o)){let s=r(o);u.add(s);let l=Yr(o,{fontSize:s});return V0(l,t.scene.getContainerElement(o),t.scene.getNonDeletedElementsMap()),l=EBr(o,l),l}return o},!0),n=ar(a);return Or(A,e,{includeBoundTextElement:!0}).forEach((o)=>{Bt(o)&&Hs(o,n)}),{elements:a,appState:{...e,currentItemFontSize:u.size===1?[...u][0]:i??e.currentItemFontSize},captureUpdate:be.IMMEDIATELY}},kxi=at({name:"changeStrokeColor",label:"labels.stroke",trackEvent:!1,perform:(A,e,t)=>({...t.currentItemStrokeColor&&{elements:qs(A,e,(r)=>nW(r.type)?Yr(r,{strokeColor:t.currentItemStrokeColor}):r,!0)},appState:{...e,...t},captureUpdate:t.currentItemStrokeColor?be.IMMEDIATELY:be.EVENTUALLY}),PanelComponent:({elements:A,appState:e,updateData:t,appProps:r})=>cA(At,{children:[N("h3",{"aria-hidden":"true",children:uA("labels.stroke")}),N(S3A,{topPicks:rIA,palette:Bde,type:"elementStroke",label:uA("labels.stroke"),color:zs(A,e,(i)=>i.strokeColor,!0,e.currentItemStrokeColor),onChange:(i)=>t({currentItemStrokeColor:i}),elements:A,appState:e,updateData:t})]})}),Fxi=at({name:"changeBackgroundColor",label:"labels.changeBackground",trackEvent:!1,perform:(A,e,t)=>({...t.currentItemBackgroundColor&&{elements:qs(A,e,(r)=>Yr(r,{backgroundColor:t.currentItemBackgroundColor}))},appState:{...e,...t},captureUpdate:t.currentItemBackgroundColor?be.IMMEDIATELY:be.EVENTUALLY}),PanelComponent:({elements:A,appState:e,updateData:t,appProps:r})=>cA(At,{children:[N("h3",{"aria-hidden":"true",children:uA("labels.background")}),N(S3A,{topPicks:iIA,palette:Ede,type:"elementBackground",label:uA("labels.background"),color:zs(A,e,(i)=>i.backgroundColor,!0,e.currentItemBackgroundColor),onChange:(i)=>t({currentItemBackgroundColor:i}),elements:A,appState:e,updateData:t})]})}),xxi=at({name:"changeFillStyle",label:"labels.fill",trackEvent:!1,perform:(A,e,t,r)=>(Nu("element","changeFillStyle",`${t} (${r.device.editor.isMobile?"mobile":"desktop"})`),{elements:qs(A,e,(i)=>Yr(i,{fillStyle:t})),appState:{...e,currentItemFillStyle:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>{let r=Or(A,e),i=r.length>0&&r.every((u)=>u.fillStyle==="zigzag");return cA("fieldset",{children:[N("legend",{children:uA("labels.fill")}),N(Rd,{type:"button",options:[{value:"hachure",text:`${i?uA("labels.zigzag"):uA("labels.hachure")} (${Fe("Alt-Click")})`,icon:i?TIe:YIe,active:i?!0:void 0,testId:"fill-hachure"},{value:"cross-hatch",text:uA("labels.crossHatch"),icon:HIe,testId:"fill-cross-hatch"},{value:"solid",text:uA("labels.solid"),icon:KIe,testId:"fill-solid"}],value:zs(A,e,(u)=>u.fillStyle,(u)=>u.hasOwnProperty("fillStyle"),(u)=>u?null:e.currentItemFillStyle),onClick:(u,a)=>{let n=a.altKey&&u==="hachure"&&r.every((o)=>o.fillStyle==="hachure")?"zigzag":u;t(n)}})]})}}),Sxi=at({name:"changeStrokeWidth",label:"labels.strokeWidth",trackEvent:!1,perform:(A,e,t)=>({elements:qs(A,e,(r)=>Yr(r,{strokeWidth:t})),appState:{...e,currentItemStrokeWidth:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>cA("fieldset",{children:[N("legend",{children:uA("labels.strokeWidth")}),N(Rd,{group:"stroke-width",options:[{value:T_.thin,text:uA("labels.thin"),icon:ehA,testId:"strokeWidth-thin"},{value:T_.bold,text:uA("labels.bold"),icon:JIe,testId:"strokeWidth-bold"},{value:T_.extraBold,text:uA("labels.extraBold"),icon:OIe,testId:"strokeWidth-extraBold"}],value:zs(A,e,(r)=>r.strokeWidth,(r)=>r.hasOwnProperty("strokeWidth"),(r)=>r?null:e.currentItemStrokeWidth),onChange:(r)=>t(r)})]})}),Lxi=at({name:"changeSloppiness",label:"labels.sloppiness",trackEvent:!1,perform:(A,e,t)=>({elements:qs(A,e,(r)=>Yr(r,{seed:oB(),roughness:t})),appState:{...e,currentItemRoughness:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>cA("fieldset",{children:[N("legend",{children:uA("labels.sloppiness")}),N(Rd,{group:"sloppiness",options:[{value:0,text:uA("labels.architect"),icon:WIe},{value:1,text:uA("labels.artist"),icon:qIe},{value:2,text:uA("labels.cartoonist"),icon:zIe}],value:zs(A,e,(r)=>r.roughness,(r)=>r.hasOwnProperty("roughness"),(r)=>r?null:e.currentItemRoughness),onChange:(r)=>t(r)})]})}),Rxi=at({name:"changeStrokeStyle",label:"labels.strokeStyle",trackEvent:!1,perform:(A,e,t)=>({elements:qs(A,e,(r)=>Yr(r,{strokeStyle:t})),appState:{...e,currentItemStrokeStyle:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>cA("fieldset",{children:[N("legend",{children:uA("labels.strokeStyle")}),N(Rd,{group:"strokeStyle",options:[{value:"solid",text:uA("labels.strokeStyle_solid"),icon:ehA},{value:"dashed",text:uA("labels.strokeStyle_dashed"),icon:PIe},{value:"dotted",text:uA("labels.strokeStyle_dotted"),icon:_Ie}],value:zs(A,e,(r)=>r.strokeStyle,(r)=>r.hasOwnProperty("strokeStyle"),(r)=>r?null:e.currentItemStrokeStyle),onChange:(r)=>t(r)})]})}),Nxi=at({name:"changeOpacity",label:"labels.opacity",trackEvent:!1,perform:(A,e,t)=>({elements:qs(A,e,(r)=>Yr(r,{opacity:t}),!0),appState:{...e,currentItemOpacity:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>N(BBr,{updateData:t,elements:A,appState:e,testId:"opacity"})}),Gxi=at({name:"changeFontSize",label:"labels.fontSize",trackEvent:!1,perform:(A,e,t,r)=>N3A(A,e,r,()=>t,t),PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>cA("fieldset",{children:[N("legend",{children:uA("labels.fontSize")}),N(Rd,{group:"font-size",options:[{value:16,text:uA("labels.small"),icon:she,testId:"fontSize-small"},{value:20,text:uA("labels.medium"),icon:lhe,testId:"fontSize-medium"},{value:28,text:uA("labels.large"),icon:ghe,testId:"fontSize-large"},{value:36,text:uA("labels.veryLarge"),icon:che,testId:"fontSize-veryLarge"}],value:zs(A,e,(i)=>{if(Bt(i))return i.fontSize;let u=Ur(i,r.scene.getNonDeletedElementsMap());return u?u.fontSize:null},(i)=>Bt(i)||Ur(i,r.scene.getNonDeletedElementsMap())!==null,(i)=>i?null:e.currentItemFontSize||cd),onChange:(i)=>t(i)})]})}),$We=at({name:"decreaseFontSize",label:"labels.decreaseFontSize",icon:W8,trackEvent:!1,perform:(A,e,t,r)=>N3A(A,e,r,(i)=>Math.round(1/(1+xze)*i.fontSize)),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&(A.key===PA.CHEVRON_LEFT||A.key===PA.COMMA)}),Aqe=at({name:"increaseFontSize",label:"labels.increaseFontSize",icon:W8,trackEvent:!1,perform:(A,e,t,r)=>N3A(A,e,r,(i)=>Math.round(i.fontSize*(1+xze))),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&(A.key===PA.CHEVRON_RIGHT||A.key===PA.PERIOD)}),Uxi=at({name:"changeFontFamily",label:"labels.fontFamily",trackEvent:!1,perform:(A,e,t,r)=>{let{cachedElements:i,resetAll:u,resetContainers:a,...n}=t;if(u)return{elements:qs(A,e,(E)=>{let d=i?.get(E.id);return d?Yr(E,{...d}):E},!0),appState:{...e,...n},captureUpdate:be.NEVER};let{currentItemFontFamily:o,currentHoveredFontFamily:s}=t,l=be.EVENTUALLY,g,C=!1;if(o)g=o,l=be.IMMEDIATELY;else if(s){g=s,l=be.EVENTUALLY;let E=Or(A,e,{includeBoundTextElement:!0}).filter((d)=>Bt(d));if(E.length>200)C=!0;else{let d=0,I=0;for(;d<E.length&&I<5000;){let h=E[d];I+=h?.originalText.length||0,d++}I>5000&&(C=!0)}}let B={appState:{...e,...n},captureUpdate:l};if(g&&!C){let E=new Map,d=new Set,I=!1,h=Array.from(Ed.loadedFontsCache.values()),Q=Object.entries(aa).find(([f,D])=>D===g)?.[0];s&&Q&&h.some((f)=>f.startsWith(Q))&&(I=!0),Object.assign(B,{elements:qs(A,e,(f)=>{if(Bt(f)&&(f.fontFamily!==g||o)){let D=Yr(f,{fontFamily:g,lineHeight:z1(g)}),w=i?.get(f.containerId||"")||{},b=r.scene.getContainerElement(f);return a&&b&&w&&xe(b,{...w},!1),I||(d=new Set([...d,...Array.from(D.originalText)])),E.set(D,b),D}return f},!0)});let p=`10px ${e2({fontFamily:g})}`,m=Array.from(d.values()).join();if(I||window.document.fonts.check(p,m))for(let[f,D]of E)V0(f,D,r.scene.getNonDeletedElementsMap(),!1);else window.document.fonts.load(p,m).then((f)=>{for(let[D,w]of E){let b=r.scene.getElement(D.id),k=w?r.scene.getElement(w.id):null;b&&V0(b,k,r.scene.getNonDeletedElementsMap(),!1)}r.fonts.onLoaded(f)})}return B},PanelComponent:({elements:A,appState:e,app:t,updateData:r})=>{let i=Ee(new Map),u=Ee(null),[a,n]=we({}),o=Ee(!0),s=Ut(()=>{let l=(g,C)=>zs(g,e,(B)=>{if(Bt(B))return B.fontFamily;let E=Ur(B,C);return E?E.fontFamily:null},(B)=>Bt(B)||Ur(B,C)!==null,(B)=>B?null:e.currentItemFontFamily||Lh);return a.openPopup==="fontFamily"&&e.openPopup==="fontFamily"?l(Array.from(i.current?.values()??[]),i.current):!a.openPopup&&e.openPopup!=="fontFamily"?l(A,t.scene.getNonDeletedElementsMap()):u.current},[a.openPopup,e,A,t.scene]);return le(()=>{u.current=s},[s]),le(()=>{Object.keys(a).length&&(r(a),n({}))},[a]),le(()=>(o.current=!1,()=>{o.current=!0}),[]),cA("fieldset",{children:[N("legend",{children:uA("labels.fontFamily")}),N(CBr,{isOpened:e.openPopup==="fontFamily",selectedFontFamily:s,hoveredFontFamily:e.currentHoveredFontFamily,onSelect:(l)=>{n({openPopup:null,currentHoveredFontFamily:null,currentItemFontFamily:l}),i.current.clear()},onHover:(l)=>{n({currentHoveredFontFamily:l,cachedElements:new Map(i.current),resetContainers:!0})},onLeave:()=>{n({currentHoveredFontFamily:null,cachedElements:new Map(i.current),resetAll:!0})},onPopupChange:(l)=>{if(l){i.current.clear();let{editingTextElement:g}=e;if(g?.type==="text"){let C=t.scene.getElement(g.id);i.current.set(g.id,Yr(C||g,{},!0))}else{let C=Or(A,e,{includeBoundTextElement:!0});for(let B of C)i.current.set(B.id,Yr(B,{},!0))}n({openPopup:"fontFamily"})}else{let g={openPopup:null,currentHoveredFontFamily:null,cachedElements:new Map(i.current),resetAll:!0};o.current?r({...a,...g}):n(g),i.current.clear()}}})]})}}),Mxi=at({name:"changeTextAlign",label:"Change text alignment",trackEvent:!1,perform:(A,e,t,r)=>({elements:qs(A,e,(i)=>{if(Bt(i)){let u=Yr(i,{textAlign:t});return V0(u,r.scene.getContainerElement(i),r.scene.getNonDeletedElementsMap()),u}return i},!0),appState:{...e,currentItemTextAlign:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>{let i=r.scene.getNonDeletedElementsMap();return cA("fieldset",{children:[N("legend",{children:uA("labels.textAlign")}),N(Rd,{group:"text-align",options:[{value:"left",text:uA("labels.left"),icon:Che,testId:"align-left"},{value:"center",text:uA("labels.center"),icon:Bhe,testId:"align-horizontal-center"},{value:"right",text:uA("labels.right"),icon:Ehe,testId:"align-right"}],value:zs(A,e,(u)=>{if(Bt(u))return u.textAlign;let a=Ur(u,i);return a?a.textAlign:null},(u)=>Bt(u)||Ur(u,i)!==null,(u)=>u?null:e.currentItemTextAlign),onChange:(u)=>t(u)})]})}}),Txi=at({name:"changeVerticalAlign",label:"Change vertical alignment",trackEvent:{category:"element"},perform:(A,e,t,r)=>({elements:qs(A,e,(i)=>{if(Bt(i)){let u=Yr(i,{verticalAlign:t});return V0(u,r.scene.getContainerElement(i),r.scene.getNonDeletedElementsMap()),u}return i},!0),appState:{...e},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N("fieldset",{children:N(Rd,{group:"text-align",options:[{value:Rl.TOP,text:uA("labels.alignTop"),icon:N(dhe,{theme:e.theme}),testId:"align-top"},{value:Rl.MIDDLE,text:uA("labels.centerVertically"),icon:N(hhe,{theme:e.theme}),testId:"align-middle"},{value:Rl.BOTTOM,text:uA("labels.alignBottom"),icon:N(Ihe,{theme:e.theme}),testId:"align-bottom"}],value:zs(A,e,(i)=>{if(Bt(i)&&i.containerId)return i.verticalAlign;let u=Ur(i,r.scene.getNonDeletedElementsMap());return u?u.verticalAlign:null},(i)=>Bt(i)||Ur(i,r.scene.getNonDeletedElementsMap())!==null,(i)=>i?null:Rl.MIDDLE),onChange:(i)=>t(i)})})}),Yxi=at({name:"changeRoundness",label:"Change edge roundness",trackEvent:!1,perform:(A,e,t)=>({elements:qs(A,e,(r)=>pt(r)?r:Yr(r,{roundness:t==="round"?{type:r2(r.type)?mn.ADAPTIVE_RADIUS:mn.PROPORTIONAL_RADIUS}:null})),appState:{...e,currentItemRoundness:t},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>{let r=mQA(fu(A),e).some((i)=>i.roundness?.type===mn.LEGACY);return cA("fieldset",{children:[N("legend",{children:uA("labels.edges")}),N(Rd,{group:"edges",options:[{value:"sharp",text:uA("labels.sharp"),icon:ZIe},{value:"round",text:uA("labels.round"),icon:VIe}],value:zs(A,e,(i)=>r?null:i.roundness?"round":"sharp",(i)=>!Jr(i)&&i.hasOwnProperty("roundness"),(i)=>i?null:e.currentItemRoundness),onChange:(i)=>t(i)})]})}}),eqe=(A)=>[{value:null,text:uA("labels.arrowhead_none"),keyBinding:"q",icon:jIe},{value:"arrow",text:uA("labels.arrowhead_arrow"),keyBinding:"w",icon:N(XIe,{flip:A})},{value:"triangle",text:uA("labels.arrowhead_triangle"),icon:N(the,{flip:A}),keyBinding:"e"},{value:"triangle_outline",text:uA("labels.arrowhead_triangle_outline"),icon:N(rhe,{flip:A}),keyBinding:"r"},{value:"circle",text:uA("labels.arrowhead_circle"),keyBinding:"a",icon:N($Ie,{flip:A})},{value:"circle_outline",text:uA("labels.arrowhead_circle_outline"),keyBinding:"s",icon:N(Ahe,{flip:A})},{value:"diamond",text:uA("labels.arrowhead_diamond"),icon:N(ihe,{flip:A}),keyBinding:"d"},{value:"diamond_outline",text:uA("labels.arrowhead_diamond_outline"),icon:N(uhe,{flip:A}),keyBinding:"f"},{value:"bar",text:uA("labels.arrowhead_bar"),keyBinding:"z",icon:N(ehe,{flip:A})},{value:"crowfoot_one",text:uA("labels.arrowhead_crowfoot_one"),icon:N(nhe,{flip:A}),keyBinding:"c"},{value:"crowfoot_many",text:uA("labels.arrowhead_crowfoot_many"),icon:N(ahe,{flip:A}),keyBinding:"x"},{value:"crowfoot_one_or_many",text:uA("labels.arrowhead_crowfoot_one_or_many"),icon:N(ohe,{flip:A}),keyBinding:"v"}],Hxi=at({name:"changeArrowhead",label:"Change arrowheads",trackEvent:!1,perform:(A,e,t)=>({elements:qs(A,e,(r)=>{if(Gr(r)){let{position:i,type:u}=t;if(i==="start")return Yr(r,{startArrowhead:u});if(i==="end")return Yr(r,{endArrowhead:u})}return r}),appState:{...e,[t.position==="start"?"currentItemStartArrowhead":"currentItemEndArrowhead"]:t.type},captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t})=>{let r=NL().rtl;return cA("fieldset",{children:[N("legend",{children:uA("labels.arrowheads")}),cA("div",{className:"iconSelectList buttonList",children:[N(XWe,{label:"arrowhead_start",options:eqe(!r),value:zs(A,e,(i)=>Gr(i)&&Z8(i.type)?i.startArrowhead:e.currentItemStartArrowhead,!0,e.currentItemStartArrowhead),onChange:(i)=>t({position:"start",type:i}),numberOfOptionsToAlwaysShow:4}),N(XWe,{label:"arrowhead_end",group:"arrowheads",options:eqe(!!r),value:zs(A,e,(i)=>Gr(i)&&Z8(i.type)?i.endArrowhead:e.currentItemEndArrowhead,!0,e.currentItemEndArrowhead),onChange:(i)=>t({position:"end",type:i}),numberOfOptionsToAlwaysShow:4})]})]})}}),Kxi=at({name:"changeArrowType",label:"Change arrow types",trackEvent:!1,perform:(A,e,t,r)=>{let i=qs(A,e,(n)=>{if(!Jr(n))return n;let o=Yr(n,{roundness:t===mo.round?{type:mn.PROPORTIONAL_RADIUS}:null,elbowed:t===mo.elbow,points:t===mo.elbow||n.elbowed?[n.points[0],n.points[n.points.length-1]]:n.points});if(pt(o)){let s=r.scene.getNonDeletedElementsMap();r.dismissLinearEditor();let l=It.getPointAtIndexGlobalCoordinates(o,0,s),g=It.getPointAtIndexGlobalCoordinates(o,-1,s),C=!o.startBinding&&Nc(kc(l),A,s,e.zoom,!1,!0),B=!o.endBinding&&Nc(kc(g),A,s,e.zoom,!1,!0),E=C||o.startBinding&&s.get(o.startBinding.elementId),d=B||o.endBinding&&s.get(o.endBinding.elementId),I=C?B9(o,C,"start"):l,h=B?B9(o,B,"end"):g;C&&$C(o,C,"start",s),B&&$C(o,B,"end",s),xe(o,{points:[I,h].map((Q)=>X(Q[0]-o.x,Q[1]-o.y)),...E&&o.startBinding?{startBinding:{...o.startBinding,...X8(o,E,"start",s)}}:{},...d&&o.endBinding?{endBinding:{...o.endBinding,...X8(o,d,"end",s)}}:{}}),It.updateEditorMidPointsCache(o,s,r.state)}return o}),u={...e,currentItemArrowType:t},a=e.selectedLinearElement?.elementId;if(a){let n=i.find((o)=>o.id===a);n&&(u.selectedLinearElement=new It(n))}return{elements:i,appState:u,captureUpdate:be.IMMEDIATELY}},PanelComponent:({elements:A,appState:e,updateData:t})=>cA("fieldset",{children:[N("legend",{children:uA("labels.arrowtypes")}),N(Rd,{group:"arrowtypes",options:[{value:mo.sharp,text:uA("labels.arrowtype_sharp"),icon:_he,testId:"sharp-arrow"},{value:mo.round,text:uA("labels.arrowtype_round"),icon:qhe,testId:"round-arrow"},{value:mo.elbow,text:uA("labels.arrowtype_elbowed"),icon:Whe,testId:"elbow-arrow"}],value:zs(A,e,(r)=>Jr(r)?r.elbowed?mo.elbow:r.roundness?mo.round:mo.sharp:null,(r)=>Jr(r),(r)=>r?null:e.currentItemArrowType),onChange:(r)=>t(r)})]})}),K2=({viewportX:A,viewportY:e,nextZoom:t},r)=>{let i=A-r.offsetLeft,u=e-r.offsetTop,a=r.zoom.value,n=r.scrollX+(i-i/a),o=r.scrollY+(u-u/a),s=-(i-i/t),l=-(u-u/t);return{scrollX:n+s,scrollY:o+l,zoom:{value:t}}},xL=()=>{let A=document.querySelector(".excalidraw-tooltip");if(A)return A;let e=document.createElement("div");return document.body.appendChild(e),e.classList.add("excalidraw-tooltip"),e},Sze=(A,e,t="bottom")=>{let r=A.getBoundingClientRect(),{innerWidth:i,innerHeight:u}=window,a=5,n=e.left+e.width/2-r.width/2;n<0?n=a:n+r.width>=i&&(n=i-r.width-a);let o;t==="bottom"?(o=e.top+e.height+a,o+r.height>=u&&(o=e.top-r.height-a)):(o=e.top-r.height-a,o<0&&(o=e.top+e.height+a)),Object.assign(A.style,{top:`${o}px`,left:`${n}px`})},dBr=(A,e,t,r)=>{e.classList.add("excalidraw-tooltip--visible"),e.style.minWidth=r?"50ch":"10ch",e.style.maxWidth=r?"50ch":"15ch",e.textContent=t;let i=A.getBoundingClientRect();Sze(e,i)},O2=({children:A,label:e,long:t=!1,style:r,disabled:i})=>(le(()=>()=>xL().classList.remove("excalidraw-tooltip--visible"),[]),i?null:N("div",{className:"excalidraw-tooltip-wrapper",onPointerEnter:(u)=>dBr(u.currentTarget,xL(),e,t),onPointerLeave:()=>xL().classList.remove("excalidraw-tooltip--visible"),style:r,children:A})),_xi=at({name:"changeViewBackgroundColor",label:"labels.canvasBackground",paletteName:"Change canvas background color",trackEvent:!1,predicate:(A,e,t,r)=>!!r.props.UIOptions.canvasActions.changeViewBackgroundColor&&!e.viewModeEnabled,perform:(A,e,t)=>({appState:{...e,...t},captureUpdate:t.viewBackgroundColor?be.IMMEDIATELY:be.EVENTUALLY}),PanelComponent:({elements:A,appState:e,updateData:t,appProps:r})=>N(S3A,{palette:null,topPicks:uIA,label:uA("labels.canvasBackground"),type:"canvasBackground",color:e.viewBackgroundColor,onChange:(i)=>t({viewBackgroundColor:i}),"data-testid":"canvas-background-picker",elements:A,appState:e,updateData:t})}),SL=at({name:"clearCanvas",label:"labels.clearCanvas",paletteName:"Clear canvas",icon:W1,trackEvent:{category:"canvas"},predicate:(A,e,t,r)=>!!r.props.UIOptions.canvasActions.clearCanvas&&!e.viewModeEnabled&&e.openDialog?.name!=="elementLinkSelector",perform:(A,e,t,r)=>(r.imageCache.clear(),{elements:A.map((i)=>Yr(i,{isDeleted:!0})),appState:{...iB(),files:{},theme:e.theme,penMode:e.penMode,penDetected:e.penDetected,exportBackground:e.exportBackground,exportEmbedScene:e.exportEmbedScene,gridSize:e.gridSize,gridStep:e.gridStep,gridModeEnabled:e.gridModeEnabled,stats:e.stats,pasteDialog:e.pasteDialog,activeTool:e.activeTool.type==="image"?{...e.activeTool,type:"selection"}:e.activeTool},captureUpdate:be.IMMEDIATELY})}),tqe=at({name:"zoomIn",label:"buttons.zoomIn",viewMode:!0,icon:NIA,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>({appState:{...e,...K2({viewportX:e.width/2+e.offsetLeft,viewportY:e.height/2+e.offsetTop,nextZoom:dd(e.zoom.value+R8)},e),userToFollow:null},captureUpdate:be.EVENTUALLY}),PanelComponent:({updateData:A,appState:e})=>N(ci,{type:"button",className:"zoom-in-button zoom-button",icon:NIA,title:`${uA("buttons.zoomIn")} — ${Fe("CtrlOrCmd++")}`,"aria-label":uA("buttons.zoomIn"),disabled:e.zoom.value>=G_,onClick:()=>{A(null)}}),keyTest:(A)=>(A.code===hi.EQUAL||A.code===hi.NUM_ADD)&&(A[PA.CTRL_OR_CMD]||A.shiftKey)}),rqe=at({name:"zoomOut",label:"buttons.zoomOut",icon:GIA,viewMode:!0,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>({appState:{...e,...K2({viewportX:e.width/2+e.offsetLeft,viewportY:e.height/2+e.offsetTop,nextZoom:dd(e.zoom.value-R8)},e),userToFollow:null},captureUpdate:be.EVENTUALLY}),PanelComponent:({updateData:A,appState:e})=>N(ci,{type:"button",className:"zoom-out-button zoom-button",icon:GIA,title:`${uA("buttons.zoomOut")} — ${Fe("CtrlOrCmd+-")}`,"aria-label":uA("buttons.zoomOut"),disabled:e.zoom.value<=N_,onClick:()=>{A(null)}}),keyTest:(A)=>(A.code===hi.MINUS||A.code===hi.NUM_SUBTRACT)&&(A[PA.CTRL_OR_CMD]||A.shiftKey)}),iqe=at({name:"resetZoom",label:"buttons.resetZoom",icon:fIe,viewMode:!0,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>({appState:{...e,...K2({viewportX:e.width/2+e.offsetLeft,viewportY:e.height/2+e.offsetTop,nextZoom:dd(1)},e),userToFollow:null},captureUpdate:be.EVENTUALLY}),PanelComponent:({updateData:A,appState:e})=>N(O2,{label:uA("buttons.resetZoom"),style:{height:"100%"},children:cA(ci,{type:"button",className:"reset-zoom-button zoom-button",title:uA("buttons.resetZoom"),"aria-label":uA("buttons.resetZoom"),onClick:()=>{A(null)},children:[(e.zoom.value*100).toFixed(0),"%"]})}),keyTest:(A)=>(A.code===hi.ZERO||A.code===hi.NUM_ZERO)&&(A[PA.CTRL_OR_CMD]||A.shiftKey)}),IBr=(A,e,t=1)=>{let[r,i,u,a]=A,n=u-r,o=e.width/n,s=a-i,l=e.height/s,g=Math.min(o,l)*jr(t,0.1,1);return Math.min(g,1)},hBr=({bounds:A,appState:e,canvasOffsets:t,fitToViewport:r=!1,viewportZoomFactor:i=1,minZoom:u=-1/0,maxZoom:a=1/0})=>{i=jr(i,N_,G_);let[n,o,s,l]=A,g=(n+s)/2,C=(o+l)/2,B=t?.left??0,E=t?.top??0,d=t?.right??0,I=t?.bottom??0,h=e.width-B-d,Q=e.height-E-I,p;if(r){let D=s-n,w=l-o;p=Math.min(h/D,Q/w)*i}else p=IBr(A,{width:h,height:Q},i);let m=dd(jr(Pde(p,R8,"floor"),u,a)),f=FhA({scenePoint:{x:g,y:C},viewportDimensions:{width:e.width,height:e.height},offsets:t,zoom:{value:m}});return{appState:{...e,scrollX:f.scrollX,scrollY:f.scrollY,zoom:{value:m}},captureUpdate:be.EVENTUALLY}},EZ=({canvasOffsets:A,targetElements:e,appState:t,fitToViewport:r,viewportZoomFactor:i,minZoom:u,maxZoom:a})=>{let n=Pi(fu(e));return hBr({canvasOffsets:A,bounds:n,appState:t,fitToViewport:r,viewportZoomFactor:i,minZoom:u,maxZoom:a})},Wxi=at({name:"zoomToFitSelectionInViewport",label:"labels.zoomToFitViewport",icon:eW,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);return EZ({targetElements:i.length?i:A,appState:{...e,userToFollow:null},fitToViewport:!1,canvasOffsets:r.getEditorUIOffsets()})},keyTest:(A)=>A.code===hi.TWO&&A.shiftKey&&!A.altKey&&!A[PA.CTRL_OR_CMD]}),qxi=at({name:"zoomToFitSelection",label:"helpDialog.zoomToSelection",icon:eW,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);return EZ({targetElements:i.length?i:A,appState:{...e,userToFollow:null},fitToViewport:!0,canvasOffsets:r.getEditorUIOffsets()})},keyTest:(A)=>A.code===hi.THREE&&A.shiftKey&&!A.altKey&&!A[PA.CTRL_OR_CMD]}),zxi=at({name:"zoomToFit",label:"helpDialog.zoomToFit",icon:eW,viewMode:!0,trackEvent:{category:"canvas"},perform:(A,e,t,r)=>EZ({targetElements:A,appState:{...e,userToFollow:null},fitToViewport:!1,canvasOffsets:r.getEditorUIOffsets()}),keyTest:(A)=>A.code===hi.ONE&&A.shiftKey&&!A.altKey&&!A[PA.CTRL_OR_CMD]}),uZ=at({name:"toggleTheme",label:(A,e)=>e.theme===ei.DARK?"buttons.lightMode":"buttons.darkMode",keywords:["toggle","dark","light","mode","theme"],icon:(A)=>A.theme===ei.LIGHT?q_:z_,viewMode:!0,trackEvent:{category:"canvas"},perform:(A,e,t)=>({appState:{...e,theme:t||(e.theme===ei.LIGHT?ei.DARK:ei.LIGHT)},captureUpdate:be.EVENTUALLY}),keyTest:(A)=>A.altKey&&A.shiftKey&&A.code===hi.D,predicate:(A,e,t,r)=>!!r.props.UIOptions.canvasActions.toggleTheme}),Zxi=at({name:"toggleEraserTool",label:"toolBar.eraser",trackEvent:{category:"toolbar"},perform:(A,e)=>{let t;return uB(e)?t=en(e,{...e.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):t=en(e,{type:"eraser",lastActiveToolBeforeEraser:e.activeTool}),{appState:{...e,selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null,activeTool:t},captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>A.key===PA.E}),QBr=at({name:"toggleHandTool",label:"toolBar.hand",paletteName:"Toggle hand tool",trackEvent:{category:"toolbar"},icon:rhA,viewMode:!1,perform:(A,e,t,r)=>{let i;return A2(e)?i=en(e,{...e.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):(i=en(e,{type:"hand",lastActiveToolBeforeEraser:e.activeTool}),Cu(r.interactiveCanvas,iu.GRAB)),{appState:{...e,selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null,activeTool:i},captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>!A.altKey&&!A[PA.CTRL_OR_CMD]&&A.key===PA.H}),bB=at({name:"finalize",label:"",trackEvent:!1,perform:(A,e,t,r)=>{let{interactiveCanvas:i,focusContainer:u,scene:a}=r,n=a.getNonDeletedElementsMap();if(e.editingLinearElement){let{elementId:C,startBindingElement:B,endBindingElement:E}=e.editingLinearElement,d=It.getElement(C,n);if(d)return jC(d)&&V8(d,B,E,n,a),{elements:d.points.length<2||g2(d)?A.filter((I)=>I.id!==d.id):void 0,appState:{...e,cursorButton:"up",editingLinearElement:null},captureUpdate:be.IMMEDIATELY}}let o=A,s=e.pendingImageElementId&&a.getElement(e.pendingImageElementId);s&&xe(s,{isDeleted:!0},!1),window.document.activeElement instanceof HTMLElement&&u();let l=e.multiElement?e.multiElement:e.newElement?.type==="freedraw"?e.newElement:null;if(l){if(l.type!=="freedraw"&&e.lastPointerDownWith!=="touch"){let{points:B,lastCommittedPoint:E}=l;(!E||B[B.length-1]!==E)&&xe(l,{points:l.points.slice(0,-1)})}g2(l)&&(o=o.filter((B)=>B.id!==l.id));let C=od(l.points,e.zoom.value);if((l.type==="line"||l.type==="freedraw")&&C){let B=l.points,E=B[0];xe(l,{points:B.map((d,I)=>I===B.length-1?X(E[0],E[1]):d)})}if(jC(l)&&!C&&l.points.length>1){let[B,E]=It.getPointAtIndexGlobalCoordinates(l,-1,ar(A));BW(l,e,{x:B,y:E},n,A)}}(!e.activeTool.locked&&e.activeTool.type!=="freedraw"||!l)&&Mc(i);let g;return e.activeTool.type==="eraser"?g=en(e,{...e.activeTool.lastActiveTool||{type:"selection"},lastActiveToolBeforeEraser:null}):g=en(e,{type:"selection"}),{elements:o,appState:{...e,cursorButton:"up",activeTool:(e.activeTool.locked||e.activeTool.type==="freedraw")&&l?e.activeTool:g,activeEmbeddable:null,newElement:null,selectionElement:null,multiElement:null,editingTextElement:null,startBoundElement:null,suggestedBindings:[],selectedElementIds:l&&!e.activeTool.locked&&e.activeTool.type!=="freedraw"?{...e.selectedElementIds,[l.id]:!0}:e.selectedElementIds,selectedLinearElement:l&&Gr(l)?new It(l):e.selectedLinearElement,pendingImageElementId:null},captureUpdate:be.IMMEDIATELY}},keyTest:(A,e)=>A.key===PA.ESCAPE&&(e.editingLinearElement!==null||!e.newElement&&e.multiElement===null)||(A.key===PA.ESCAPE||A.key===PA.ENTER)&&e.multiElement!==null,PanelComponent:({appState:A,updateData:e,data:t})=>N(ci,{type:"button",icon:SIe,title:uA("buttons.done"),"aria-label":uA("buttons.done"),onClick:e,visible:A.multiElement!=null,size:t?.size||"medium",style:{pointerEvents:"all"}})}),pBr=(A)=>{let{id:e}=Gd(),[t,r]=we(A.value),i=(a)=>{A.ignoreFocus||tIe(a.target);let n=a.target.value;n!==A.value&&A.onChange(n)},u=(a)=>{if(a.key===PA.ENTER){if(a.preventDefault(),a.nativeEvent.isComposing||a.keyCode===229)return;a.currentTarget.blur()}};return cA("div",{className:"ProjectName",children:[N("label",{className:"ProjectName-label",htmlFor:"filename",children:`${A.label}:`}),N("input",{type:"text",className:"TextInput",onBlur:i,onKeyDown:u,id:`${e}-filename`,value:t,onChange:(a)=>r(a.target.value)})]})},fBr=(A)=>{let e=A.title||(A.value===ei.DARK?uA("buttons.lightMode"):uA("buttons.darkMode"));return N(ci,{type:"icon",icon:A.value===ei.LIGHT?uqe.MOON:uqe.SUN,title:e,"aria-label":e,onClick:()=>A.onChange(A.value===ei.DARK?ei.LIGHT:ei.DARK),"data-testid":"toggle-dark-mode"})},uqe={SUN:N("svg",{width:"512",height:"512",className:"rtl-mirror",viewBox:"0 0 512 512",children:N("path",{fill:"currentColor",d:"M256 160c-52.9 0-96 43.1-96 96s43.1 96 96 96 96-43.1 96-96-43.1-96-96-96zm246.4 80.5l-94.7-47.3 33.5-100.4c4.5-13.6-8.4-26.5-21.9-21.9l-100.4 33.5-47.4-94.8c-6.4-12.8-24.6-12.8-31 0l-47.3 94.7L92.7 70.8c-13.6-4.5-26.5 8.4-21.9 21.9l33.5 100.4-94.7 47.4c-12.8 6.4-12.8 24.6 0 31l94.7 47.3-33.5 100.5c-4.5 13.6 8.4 26.5 21.9 21.9l100.4-33.5 47.3 94.7c6.4 12.8 24.6 12.8 31 0l47.3-94.7 100.4 33.5c13.6 4.5 26.5-8.4 21.9-21.9l-33.5-100.4 94.7-47.3c13-6.5 13-24.7.2-31.1zm-155.9 106c-49.9 49.9-131.1 49.9-181 0-49.9-49.9-49.9-131.1 0-181 49.9-49.9 131.1-49.9 181 0 49.9 49.9 49.9 131.1 0 181z"})}),MOON:N("svg",{width:"512",height:"512",className:"rtl-mirror",viewBox:"0 0 512 512",children:N("path",{fill:"currentColor",d:"M283.211 512c78.962 0 151.079-35.925 198.857-94.792 7.068-8.708-.639-21.43-11.562-19.35-124.203 23.654-238.262-71.576-238.262-196.954 0-72.222 38.662-138.635 101.498-174.394 9.686-5.512 7.25-20.197-3.756-22.23A258.156 258.156 0 0 0 283.211 0c-141.309 0-256 114.511-256 256 0 141.309 114.511 256 256 256z"})})},dZ=(A,{selectedElementIds:e},t)=>{A=fu(A);let r=t&&yn(A,{selectedElementIds:e}),i=null,u=r?Or(A,{selectedElementIds:e},{includeBoundTextElement:!0}):A;return r&&(u.length===1&&nr(u[0])?(i=u[0],u=HW(A,i)):u.length>1&&(u=Or(A,{selectedElementIds:e},{includeBoundTextElement:!0,includeElementsInFrames:!0}))),{exportingFrame:i,exportedElements:Bd(u)}},IZ=async(A,e,t,r,{exportBackground:i,exportPadding:u=Xm,viewBackgroundColor:a,name:n=t.name||CIA,fileHandle:o=null,exportingFrame:s=null})=>{if(e.length===0)throw Error(uA("alerts.cannotExportEmptyCanvas"));if(A==="svg"||A==="clipboard-svg"){let g=xW(e,{exportBackground:i,exportWithDarkMode:t.exportWithDarkMode,viewBackgroundColor:a,exportPadding:u,exportScale:t.exportScale,exportEmbedScene:t.exportEmbedScene&&A==="svg"},r,{exportingFrame:s});if(A==="svg")return rS(g.then((C)=>new Blob([C.outerHTML],{type:jt.svg})),{description:"Export to SVG",name:n,extension:t.exportEmbedScene?"excalidraw.svg":"svg",mimeTypes:[jm.svg],fileHandle:o});if(A==="clipboard-svg"){let C=await g.then((B)=>B.outerHTML);try{await G9(C)}catch{throw Error(uA("errors.copyToSystemClipboardFailed"))}return}}let l=uQA(e,t,r,{exportBackground:i,viewBackgroundColor:a,exportPadding:u,exportingFrame:s});if(A==="png"){let g=H9(l);return t.exportEmbedScene&&(g=g.then((C)=>Promise.resolve().then(() => (wdA(),{})).then(({})=>e_({blob:C,metadata:wW(e,t,r,"local")})))),rS(g,{description:"Export to PNG",name:n,extension:t.exportEmbedScene?"excalidraw.png":"png",mimeTypes:[jm.png],fileHandle:o})}else if(A==="clipboard")try{let g=H9(l);await x4e(g)}catch(g){throw console.warn(g),g.name==="CANVAS_POSSIBLY_TOO_BIG"?Error(uA("canvasError.canvasTooBig")):I9&&g.name==="TypeError"?Error(`${uA("alerts.couldNotCopyToClipboard")}
${uA("hints.firefox_clipboard_write")}`):Error(uA("alerts.couldNotCopyToClipboard"))}else throw Error("Unsupported export type")},mBr=async(A,e,t,r)=>{let{exportBackground:i,viewBackgroundColor:u,fileHandle:a}=e,n=RQA(a);if(!a||!j4e(n))throw Error("fileHandle should exist and should be of type svg or png when resaving");e={...e,exportEmbedScene:!0};let{exportedElements:o,exportingFrame:s}=dZ(A,e,!1);return await IZ(n,o,e,t,{exportBackground:i,viewBackgroundColor:u,name:r,fileHandle:a,exportingFrame:s}),{fileHandle:a}},G3A=({children:A,checked:e,onChange:t,className:r})=>cA("div",{className:Se("Checkbox",r,{"is-checked":e}),onClick:(i)=>{t(!e,i),i.currentTarget.querySelector(".Checkbox-box").focus()},children:[N("button",{type:"button",className:"Checkbox-box",role:"checkbox","aria-checked":e,children:bIe}),N("div",{className:"Checkbox-label",children:A})]}),DBr=at({name:"changeProjectName",label:"labels.fileTitle",trackEvent:!1,perform:(A,e,t)=>({appState:{...e,name:t},captureUpdate:be.EVENTUALLY}),PanelComponent:({appState:A,updateData:e,appProps:t,data:r,app:i})=>N(pBr,{label:uA("labels.fileTitle"),value:i.getName(),onChange:(u)=>e(u),ignoreFocus:r?.ignoreFocus??!1})}),yBr=at({name:"changeExportScale",label:"imageExportDialog.scale",trackEvent:{category:"export",action:"scale"},perform:(A,e,t)=>({appState:{...e,exportScale:t},captureUpdate:be.EVENTUALLY}),PanelComponent:({elements:A,appState:e,updateData:t})=>{let r=fu(A),i=yn(r,e)?Or(r,e):r;return N(At,{children:M_.map((u)=>{let[a,n]=Q4e(i,Xm,u),o=`${uA("imageExportDialog.label.scale")} ${u}x (${a}x${n})`;return N(ci,{size:"small",type:"radio",icon:`${u}x`,name:"export-canvas-scale",title:o,"aria-label":o,id:"export-canvas-scale",checked:u===e.exportScale,onChange:()=>t(u)},u)})})}}),wBr=at({name:"changeExportBackground",label:"imageExportDialog.label.withBackground",trackEvent:{category:"export",action:"toggleBackground"},perform:(A,e,t)=>({appState:{...e,exportBackground:t},captureUpdate:be.EVENTUALLY}),PanelComponent:({appState:A,updateData:e})=>N(G3A,{checked:A.exportBackground,onChange:(t)=>e(t),children:uA("imageExportDialog.label.withBackground")})}),Lze=at({name:"changeExportEmbedScene",label:"imageExportDialog.tooltip.embedScene",trackEvent:{category:"export",action:"embedScene"},perform:(A,e,t)=>({appState:{...e,exportEmbedScene:t},captureUpdate:be.EVENTUALLY}),PanelComponent:({appState:A,updateData:e})=>cA(G3A,{checked:A.exportEmbedScene,onChange:(t)=>e(t),children:[uA("imageExportDialog.label.embedScene"),N(O2,{label:uA("imageExportDialog.tooltip.embedScene"),long:!0,children:N("div",{className:"excalidraw-tooltip-icon",children:LIe})})]})}),aqe=at({name:"saveToActiveFile",label:"buttons.save",icon:_8,trackEvent:{category:"export"},predicate:(A,e,t,r)=>!!r.props.UIOptions.canvasActions.saveToActiveFile&&!!e.fileHandle&&!e.viewModeEnabled,perform:async(A,e,t,r)=>{let i=!!e.fileHandle;try{let{fileHandle:u}=zW(e.fileHandle)?await mBr(A,e,r.files,r.getName()):await zhA(A,e,r.files,r.getName());return{captureUpdate:be.EVENTUALLY,appState:{...e,fileHandle:u,toast:i?{message:u?.name?uA("toast.fileSavedToFilename").replace("{filename}",`"${u.name}"`):uA("toast.fileSaved")}:null}}}catch(u){return u?.name!=="AbortError"?console.error(u):console.warn(u),{captureUpdate:be.EVENTUALLY}}},keyTest:(A)=>A.key===PA.S&&A[PA.CTRL_OR_CMD]&&!A.shiftKey}),Rze=at({name:"saveFileToDisk",label:"exportDialog.disk_title",icon:_8,viewMode:!0,trackEvent:{category:"export"},perform:async(A,e,t,r)=>{try{let{fileHandle:i}=await zhA(A,{...e,fileHandle:null},r.files,r.getName());return{captureUpdate:be.EVENTUALLY,appState:{...e,openDialog:null,fileHandle:i,toast:{message:uA("toast.fileSaved")}}}}catch(i){return i?.name!=="AbortError"?console.error(i):console.warn(i),{captureUpdate:be.EVENTUALLY}}},keyTest:(A)=>A.key===PA.S&&A.shiftKey&&A[PA.CTRL_OR_CMD],PanelComponent:({updateData:A})=>N(ci,{type:"button",icon:kIe,title:uA("buttons.saveAs"),"aria-label":uA("buttons.saveAs"),showAriaLabel:vo().editor.isMobile,hidden:!mh,onClick:()=>A(null),"data-testid":"save-as-button"})}),I3A=at({name:"loadScene",label:"buttons.load",trackEvent:{category:"export"},predicate:(A,e,t,r)=>!!r.props.UIOptions.canvasActions.loadScene&&!e.viewModeEnabled,perform:async(A,e,t,r)=>{try{let{elements:i,appState:u,files:a}=await l4e(e,A);return{elements:i,appState:u,files:a,captureUpdate:be.IMMEDIATELY}}catch(i){return i?.name==="AbortError"?(console.warn(i),!1):{elements:A,appState:{...e,errorMessage:i.message},files:r.files,captureUpdate:be.EVENTUALLY}}},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.O}),bBr=at({name:"exportWithDarkMode",label:"imageExportDialog.label.darkMode",trackEvent:{category:"export",action:"toggleTheme"},perform:(A,e,t)=>({appState:{...e,exportWithDarkMode:t},captureUpdate:be.EVENTUALLY}),PanelComponent:({appState:A,updateData:e})=>N("div",{style:{display:"flex",justifyContent:"flex-end",marginTop:"-45px",marginBottom:"10px"},children:N(fBr,{value:A.exportWithDarkMode?ei.DARK:ei.LIGHT,onChange:(t)=>{e(t===ei.DARK)},title:uA("imageExportDialog.label.darkMode")})})}),Nze="{}",vBr=at({name:"copyStyles",label:"labels.copyStyles",icon:lhA,trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=[],u=A.find((a)=>e.selectedElementIds[a.id]);if(i.push(u),u&&Ul(u)){let a=Ur(u,r.scene.getNonDeletedElementsMap());i.push(a)}return u&&(Nze=JSON.stringify(i)),{appState:{...e,toast:{message:uA("toast.copyStyles")}},captureUpdate:be.EVENTUALLY}},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.C}),kBr=at({name:"pasteStyles",label:"labels.pasteStyles",icon:lhA,trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=JSON.parse(Nze),u=i[0],a=i[1];if(!kIA(u))return{elements:A,captureUpdate:be.EVENTUALLY};let n=Or(A,e,{includeBoundTextElement:!0}),o=n.map((s)=>s.id);return{elements:A.map((s)=>{if(o.includes(s.id)){let l=u;if(Bt(s)&&s.containerId&&(l=a),!l)return s;let g=Yr(s,{backgroundColor:l?.backgroundColor,strokeWidth:l?.strokeWidth,strokeColor:l?.strokeColor,strokeStyle:l?.strokeStyle,fillStyle:l?.fillStyle,opacity:l?.opacity,roughness:l?.roughness,roundness:l.roundness?sIe(l.roundness.type,s)?l.roundness:lIe(s):null});if(Bt(g)){let C=l.fontSize||cd,B=l.fontFamily||Lh;g=Yr(g,{fontSize:C,fontFamily:B,textAlign:l.textAlign||h9,lineHeight:l.lineHeight||z1(B)});let E=null;g.containerId&&(E=n.find((d)=>Bt(g)&&d.id===g.containerId)||null),V0(g,E,r.scene.getNonDeletedElementsMap())}return g.type==="arrow"&&Jr(l)&&(g=Yr(g,{startArrowhead:l.startArrowhead,endArrowhead:l.endArrowhead})),nr(s)&&(g=Yr(g,{roundness:null,backgroundColor:"transparent"})),g}return s}),captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.V}),i7i=at({name:"toggleCanvasMenu",label:"buttons.menu",trackEvent:{category:"menu"},perform:(A,e)=>({appState:{...e,openMenu:e.openMenu==="canvas"?null:"canvas"},captureUpdate:be.EVENTUALLY}),PanelComponent:({appState:A,updateData:e})=>N(ci,{type:"button",icon:UIA,"aria-label":uA("buttons.menu"),onClick:e,selected:A.openMenu==="canvas"})}),u7i=at({name:"toggleEditMenu",label:"buttons.edit",trackEvent:{category:"menu"},perform:(A,e)=>({appState:{...e,openMenu:e.openMenu==="shape"?null:"shape"},captureUpdate:be.EVENTUALLY}),PanelComponent:({elements:A,appState:e,updateData:t})=>N(ci,{visible:WW(e,fu(A)),type:"button",icon:FIe,"aria-label":uA("buttons.edit"),onClick:t,selected:e.openMenu==="shape"})}),U3A=at({name:"toggleShortcuts",label:"welcomeScreen.defaults.helpHint",icon:DIe,viewMode:!0,trackEvent:{category:"menu",action:"toggleHelpDialog"},perform:(A,e,t,{focusContainer:r})=>(e.openDialog?.name==="help"&&r(),{appState:{...e,openDialog:e.openDialog?.name==="help"?null:{name:"help"}},captureUpdate:be.EVENTUALLY}),keyTest:(A)=>A.key===PA.QUESTION_MARK}),FBr=(A)=>{if(A.length>=2){let e=A[0].groupIds;for(let t of e)if(A.reduce((r,i)=>r&&x9(i,t),!0))return!0}return!1},nqe=(A,e,t)=>{let r=t.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0});return r.length>=2&&!FBr(r)&&!fQA(r)},xBr=at({name:"group",label:"labels.group",icon:(A)=>N($IA,{theme:A.theme}),trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=TW(r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0}));if(i.length<2)return{appState:e,elements:A,captureUpdate:be.EVENTUALLY};let u=V1(e);if(u.length===1){let d=u[0],I=new Set(Yu(A,d).map((Q)=>Q.id)),h=new Set(i.map((Q)=>Q.id));if(new Set([...Array.from(I),...Array.from(h)]).size===I.size)return{appState:e,elements:A,captureUpdate:be.EVENTUALLY}}let a=[...A];new Set(i.map((d)=>d.frameId)).size>1&&G4e(i).forEach((d,I)=>{sS(d,r.scene.getNonDeletedElementsMap())});let n=kg(),o=ar(i);a=a.map((d)=>o.get(d.id)?Yr(d,{groupIds:GQe(d.groupIds,n,e.editingGroupId)}):d);let s=Yu(a,n),l=s[s.length-1],g=a.lastIndexOf(l),C=a.slice(g+1),B=a.slice(0,g).filter((d)=>!x9(d,n)),E=tB([...B,...s,...C],ar(s));return{appState:{...e,...ShA(n,{...e,selectedGroupIds:{}},fu(a))},elements:E,captureUpdate:be.IMMEDIATELY}},predicate:(A,e,t,r)=>nqe(A,e,r),keyTest:(A)=>!A.shiftKey&&A[PA.CTRL_OR_CMD]&&A.key===PA.G,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!nqe(A,e,r),type:"button",icon:N($IA,{theme:e.theme}),onClick:()=>t(null),title:`${uA("labels.group")} — ${Fe("CtrlOrCmd+G")}`,"aria-label":uA("labels.group"),visible:yn(fu(A),e)})}),SBr=at({name:"ungroup",label:"labels.ungroup",icon:(A)=>N(AhA,{theme:A.theme}),trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=V1(e),u=ar(A);if(i.length===0)return{appState:e,elements:A,captureUpdate:be.EVENTUALLY};let a=[...A],n=[];a=a.map((g)=>{Tu(g)&&n.push(g.id);let C=UQe(g.groupIds,e.selectedGroupIds);return C.length===g.groupIds.length?g:Yr(g,{groupIds:C})});let o=Z0(e,fu(a),e,null),s=r.scene.getSelectedElements(e),l=new Set(s.filter((g)=>g.frameId).map((g)=>g.frameId));return MW(A).filter((g)=>l.has(g.id)).forEach((g)=>{g&&(a=QQA(a,oS(a,g,e,u),g,r))}),o.selectedElementIds=Object.entries(o.selectedElementIds).reduce((g,[C,B])=>(B&&!n.includes(C)&&(g[C]=!0),g),{}),{appState:{...e,...o},elements:a,captureUpdate:be.IMMEDIATELY}},keyTest:(A)=>A.shiftKey&&A[PA.CTRL_OR_CMD]&&A.key===PA.G.toUpperCase(),predicate:(A,e)=>V1(e).length>0,PanelComponent:({elements:A,appState:e,updateData:t})=>N(ci,{type:"button",hidden:V1(e).length===0,icon:N(AhA,{theme:e.theme}),onClick:()=>t(null),title:`${uA("labels.ungroup")} — ${Fe("CtrlOrCmd+Shift+G")}`,"aria-label":uA("labels.ungroup"),visible:yn(fu(A),e)})}),Gze=(A,e,t,r,i,u,a)=>{A.beginPath(),A.moveTo(e+u,t),A.lineTo(e+r-u,t),A.quadraticCurveTo(e+r,t,e+r,t+u),A.lineTo(e+r,t+i-u),A.quadraticCurveTo(e+r,t+i,e+r-u,t+i),A.lineTo(e+u,t+i),A.quadraticCurveTo(e,t+i,e,t+i-u),A.lineTo(e,t+u),A.quadraticCurveTo(e,t,e+u,t),A.closePath(),A.fill(),a&&(A.strokeStyle=a),A.stroke()};function LBr(A){let e=0;if(A.length===0)return e;for(let t=0;t<A.length;t++){let r=A.charCodeAt(t);e=(e<<5)-e+r}return e}var hZ=(A,e)=>`hsl(${Math.abs(LBr(e?.id||A))%37*10}, 100%, 83%)`,RBr=(A)=>{let e=A?.trim()?.codePointAt(0);return(e?String.fromCodePoint(e):"?").toUpperCase()},NBr=({context:A,renderConfig:e,appState:t,normalizedWidth:r,normalizedHeight:i})=>{for(let[u,a]of e.remotePointerViewportCoords){let{x:n,y:o}=a,s=t.collaborators.get(u);n-=t.offsetLeft,o-=t.offsetTop;let l=11,g=14,C=n<0||n>r-l||o<0||o>i-g;n=Math.max(n,0),n=Math.min(n,r-l),o=Math.max(o,0),o=Math.min(o,i-g);let B=hZ(u,s);A.save(),A.strokeStyle=B,A.fillStyle=B;let E=e.remotePointerUserStates.get(u),d=C||E==="idle"||E==="away";d&&(A.globalAlpha=0.3),e.remotePointerButton.get(u)==="down"&&(A.beginPath(),A.arc(n,o,15,0,2*Math.PI,!1),A.lineWidth=3,A.strokeStyle="#ffffff88",A.stroke(),A.closePath(),A.beginPath(),A.arc(n,o,15,0,2*Math.PI,!1),A.lineWidth=1,A.strokeStyle=B,A.stroke(),A.closePath());let I=t.theme===ei.DARK?"#2f6330":bde,h=s?.isSpeaking;h&&(A.fillStyle=I,A.strokeStyle=I,A.lineWidth=10,A.lineJoin="round",A.beginPath(),A.moveTo(n,o),A.lineTo(n+0,o+14),A.lineTo(n+4,o+9),A.lineTo(n+11,o+8),A.closePath(),A.stroke(),A.fill()),A.fillStyle=S8,A.strokeStyle=S8,A.lineWidth=6,A.lineJoin="round",A.beginPath(),A.moveTo(n,o),A.lineTo(n+0,o+14),A.lineTo(n+4,o+9),A.lineTo(n+11,o+8),A.closePath(),A.stroke(),A.fill(),A.fillStyle=B,A.strokeStyle=B,A.lineWidth=2,A.lineJoin="round",A.beginPath(),d?(A.moveTo(n-1,o-1),A.lineTo(n-1,o+15),A.lineTo(n+5,o+10),A.lineTo(n+12,o+9),A.closePath(),A.fill()):(A.moveTo(n,o),A.lineTo(n+0,o+14),A.lineTo(n+4,o+9),A.lineTo(n+11,o+8),A.closePath(),A.fill(),A.stroke());let Q=e.remotePointerUsernames.get(u)||"";if(!C&&Q){A.font="600 12px sans-serif";let p=(h?n+0:n)+l/2,m=(h?o+0:o)+g+2,f=5,D=3,w=A.measureText(Q),b=w.actualBoundingBoxDescent+w.actualBoundingBoxAscent,k=Math.max(b,12),v=p-1,S=m-1,x=w.width+2+f*2+2,F=k+2+D*2+2;if(A.roundRect?(A.beginPath(),A.roundRect(v,S,x,F,8),A.fillStyle=B,A.fill(),A.strokeStyle=S8,A.stroke(),h&&(A.beginPath(),A.roundRect(v-2,S-2,x+4,F+4,8),A.strokeStyle=I,A.stroke())):Gze(A,v,S,x,F,8,S8),A.fillStyle=wde,A.fillText(Q,p+f+1,m+D+w.actualBoundingBoxAscent+Math.floor((k-b)/2)+2),h){A.fillStyle=I;let T=8,R=8,L=5;A.fillRect(v+x+R,S+(F/2-T/2),2,T),A.fillRect(v+x+R+L,S+(F/2-T*2/2),2,T*2),A.fillRect(v+x+R+L*2,S+(F/2-T/2),2,T)}}A.restore(),A.closePath()}},oqe=({color:A,onClick:e,name:t,src:r,className:i})=>{let u=RBr(t),[a,n]=we(!1),o=!a&&r,s=o?void 0:{background:A};return N("div",{className:Se("Avatar",i),style:s,onClick:e,children:o?N("img",{className:"Avatar-img",src:r,alt:u,referrerPolicy:"no-referrer",onError:()=>n(!0)}):u})},c7i=at({name:"goToCollaborator",label:"Go to a collaborator",viewMode:!0,trackEvent:{category:"collab"},perform:(A,e,t)=>!t.socketId||e.userToFollow?.socketId===t.socketId||t.isCurrentUser?{appState:{...e,userToFollow:null},captureUpdate:be.EVENTUALLY}:{appState:{...e,userToFollow:{socketId:t.socketId,username:t.username||""},openMenu:e.openMenu==="canvas"?null:e.openMenu},captureUpdate:be.EVENTUALLY},PanelComponent:({updateData:A,data:e,appState:t})=>{let{socketId:r,collaborator:i,withName:u,isBeingFollowed:a}=e,n=hZ(r,i),o=Se({"is-followed":a,"is-current-user":i.isCurrentUser===!0,"is-speaking":i.isSpeaking,"is-in-call":i.isInCall,"is-muted":i.isMuted}),s=i.isInCall?i.isSpeaking?cA("div",{className:"UserList__collaborator-status-icon-speaking-indicator",title:uA("userList.hint.isSpeaking"),children:[N("div",{}),N("div",{}),N("div",{})]}):i.isMuted?N("div",{className:"UserList__collaborator-status-icon-microphone-muted",title:uA("userList.hint.micMuted"),children:Lhe}):N("div",{title:uA("userList.hint.inCall"),children:She}):null;return u?cA("div",{className:`dropdown-menu-item dropdown-menu-item-base UserList__collaborator ${o}`,style:{"--avatar-size":"1.5rem"},onClick:()=>A(i),children:[N(oqe,{color:n,onClick:()=>{},name:i.username||"",src:i.avatarUrl,className:o}),N("div",{className:"UserList__collaborator-name",children:i.username}),cA("div",{className:"UserList__collaborator-status-icons","aria-hidden":!0,children:[a&&N("div",{className:"UserList__collaborator-status-icon-is-followed",title:uA("userList.hint.followStatus"),children:AW}),s]})]}):cA("div",{className:`UserList__collaborator UserList__collaborator--avatar-only ${o}`,children:[N(oqe,{color:n,onClick:()=>{A(i)},name:i.username||"",src:i.avatarUrl,className:o}),s&&N("div",{className:"UserList__collaborator-status-icon",children:s})]})}}),GBr=at({name:"addToLibrary",trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});for(let u of cIA)if(i.some((a)=>a.type===u))return{captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:uA(`errors.libraryElementTypeError.${u}`)}};return r.library.getLatestLibrary().then((u)=>r.library.setLibrary([{id:kg(),status:"unpublished",elements:i.map(j1),created:Date.now()},...u])).then(()=>({captureUpdate:be.EVENTUALLY,appState:{...e,toast:{message:uA("toast.addedToLibrary")}}})).catch((u)=>({captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:u.message}}))},label:"labels.addToLibrary"}),UBr=(A,e,t,r)=>{let i=$8(A,e),u=Uc(A);return i.flatMap((a)=>{let n=MBr(a,u,t);return a.map((o)=>{let s=xe(o,{x:o.x+n.x,y:o.y+n.y});return Hs(o,r.getNonDeletedElementsMap(),{simultaneouslyUpdated:a}),s})})},MBr=(A,e,{axis:t,position:r})=>{let i=Uc(A),[u,a]=t==="x"?["minX","maxX"]:["minY","maxY"],n={x:0,y:0};return r==="start"?{...n,[t]:e[u]-i[u]}:r==="end"?{...n,[t]:e[a]-i[a]}:{...n,[t]:(e[u]+e[a])/2-(i[u]+i[a])/2}},Tg=(A,e)=>{let t=e.scene.getSelectedElements(A);return t.length>1&&!t.some((r)=>nr(r))},K5=(A,e,t,r)=>{let i=t.scene.getSelectedElements(e),u=ar(A),a=UBr(i,u,r,t.scene),n=ar(a);return l2(A.map((o)=>n.get(o.id)||o),e,t)},B7i=at({name:"alignTop",label:"labels.alignTop",icon:WIA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Tg(e,r),perform:(A,e,t,r)=>({appState:e,elements:K5(A,e,r,{position:"start",axis:"y"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.key===PA.ARROW_UP,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Tg(e,r),type:"button",icon:WIA,onClick:()=>t(null),title:`${uA("labels.alignTop")} — ${Fe("CtrlOrCmd+Shift+Up")}`,"aria-label":uA("labels.alignTop"),visible:yn(fu(A),e)})}),E7i=at({name:"alignBottom",label:"labels.alignBottom",icon:qIA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Tg(e,r),perform:(A,e,t,r)=>({appState:e,elements:K5(A,e,r,{position:"end",axis:"y"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.key===PA.ARROW_DOWN,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Tg(e,r),type:"button",icon:qIA,onClick:()=>t(null),title:`${uA("labels.alignBottom")} — ${Fe("CtrlOrCmd+Shift+Down")}`,"aria-label":uA("labels.alignBottom"),visible:yn(fu(A),e)})}),d7i=at({name:"alignLeft",label:"labels.alignLeft",icon:zIA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Tg(e,r),perform:(A,e,t,r)=>({appState:e,elements:K5(A,e,r,{position:"start",axis:"x"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.key===PA.ARROW_LEFT,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Tg(e,r),type:"button",icon:zIA,onClick:()=>t(null),title:`${uA("labels.alignLeft")} — ${Fe("CtrlOrCmd+Shift+Left")}`,"aria-label":uA("labels.alignLeft"),visible:yn(fu(A),e)})}),I7i=at({name:"alignRight",label:"labels.alignRight",icon:ZIA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Tg(e,r),perform:(A,e,t,r)=>({appState:e,elements:K5(A,e,r,{position:"end",axis:"x"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.shiftKey&&A.key===PA.ARROW_RIGHT,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Tg(e,r),type:"button",icon:ZIA,onClick:()=>t(null),title:`${uA("labels.alignRight")} — ${Fe("CtrlOrCmd+Shift+Right")}`,"aria-label":uA("labels.alignRight"),visible:yn(fu(A),e)})}),h7i=at({name:"alignVerticallyCentered",label:"labels.centerVertically",icon:VIA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Tg(e,r),perform:(A,e,t,r)=>({appState:e,elements:K5(A,e,r,{position:"center",axis:"y"}),captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Tg(e,r),type:"button",icon:VIA,onClick:()=>t(null),title:uA("labels.centerVertically"),"aria-label":uA("labels.centerVertically"),visible:yn(fu(A),e)})}),Q7i=at({name:"alignHorizontallyCentered",label:"labels.centerHorizontally",icon:jIA,trackEvent:{category:"element"},predicate:(A,e,t,r)=>Tg(e,r),perform:(A,e,t,r)=>({appState:e,elements:K5(A,e,r,{position:"center",axis:"x"}),captureUpdate:be.IMMEDIATELY}),PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Tg(e,r),type:"button",icon:jIA,onClick:()=>t(null),title:uA("labels.centerHorizontally"),"aria-label":uA("labels.centerHorizontally"),visible:yn(fu(A),e)})}),TBr=(A,e,t)=>{let[r,i,u,a]=t.axis==="x"?["minX","midX","maxX","width"]:["minY","midY","maxY","height"],n=Uc(A),o=$8(A,e).map((C)=>[C,Uc(C)]).sort((C,B)=>C[1][i]-B[1][i]),s=0;for(let C of o)s+=C[1][a];let l=(n[a]-s)/(o.length-1);if(l<0){let C=o.findIndex((I)=>I[1][r]===n[r]),B=o.findIndex((I)=>I[1][u]===n[u]),E=(o[B][1][i]-o[C][1][i])/(o.length-1),d=o[C][1][i];return o.flatMap(([I,h],Q)=>{let p={x:0,y:0};return Q!==C&&Q!==B&&(d+=E,p[t.axis]=d-h[i]),I.map((m)=>Yr(m,{x:m.x+p.x,y:m.y+p.y}))})}let g=n[r];return o.flatMap(([C,B])=>{let E={x:0,y:0};return E[t.axis]=g-B[r],g+=l,g+=B[a],C.map((d)=>Yr(d,{x:d.x+E.x,y:d.y+E.y}))})},Uze=(A,e)=>{let t=e.scene.getSelectedElements(A);return t.length>1&&!t.some((r)=>nr(r))},Mze=(A,e,t,r)=>{let i=t.scene.getSelectedElements(e),u=TBr(i,t.scene.getNonDeletedElementsMap(),r),a=ar(u);return l2(A.map((n)=>a.get(n.id)||n),e,t)},f7i=at({name:"distributeHorizontally",label:"labels.distributeHorizontally",trackEvent:{category:"element"},perform:(A,e,t,r)=>({appState:e,elements:Mze(A,e,r,{space:"between",axis:"x"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.H,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Uze(e,r),type:"button",icon:UIe,onClick:()=>t(null),title:`${uA("labels.distributeHorizontally")} — ${Fe("Alt+H")}`,"aria-label":uA("labels.distributeHorizontally"),visible:yn(fu(A),e)})}),m7i=at({name:"distributeVertically",label:"labels.distributeVertically",trackEvent:{category:"element"},perform:(A,e,t,r)=>({appState:e,elements:Mze(A,e,r,{space:"between",axis:"y"}),captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.V,PanelComponent:({elements:A,appState:e,updateData:t,app:r})=>N(ci,{hidden:!Uze(e,r),type:"button",icon:MIe,onClick:()=>t(null),title:`${uA("labels.distributeVertically")} — ${Fe("Alt+V")}`,"aria-label":uA("labels.distributeVertically"),visible:yn(fu(A),e)})}),YBr=at({name:"flipHorizontal",label:"labels.flipHorizontal",icon:Uhe,trackEvent:{category:"element"},perform:(A,e,t,r)=>({elements:l2(Tze(A,r.scene.getNonDeletedElementsMap(),e,"horizontal",r),e,r),appState:e,captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A.shiftKey&&A.code===hi.H}),HBr=at({name:"flipVertical",label:"labels.flipVertical",icon:Ghe,trackEvent:{category:"element"},perform:(A,e,t,r)=>({elements:l2(Tze(A,r.scene.getNonDeletedElementsMap(),e,"vertical",r),e,r),appState:e,captureUpdate:be.IMMEDIATELY}),keyTest:(A)=>A.shiftKey&&A.code===hi.V&&!A[PA.CTRL_OR_CMD]}),Tze=(A,e,t,r,i)=>{let u=Or(fu(A),t,{includeBoundTextElement:!0,includeElementsInFrames:!0}),a=KBr(u,e,t,r,i),n=ar(a);return A.map((o)=>n.get(o.id)||o)},KBr=(A,e,t,r,i)=>{if(A.every((B)=>Jr(B)&&(B.startBinding||B.endBinding)))return A.map((B)=>{let E=B;return Yr(E,{startArrowhead:E.endArrowhead,endArrowhead:E.startArrowhead})});let{midX:u,midY:a}=Uc(A);SQA(A,e,"nw",i.scene,new Map(Array.from(e.values()).map((B)=>[B.id,j1(B)])),{flipByX:r==="horizontal",flipByY:r==="vertical",shouldResizeFromCenter:!0,shouldMaintainAspectRatio:!0}),j8(A.filter(Gr),e,i.scene.getNonDeletedElements(),i.scene,U1(t),[],t.zoom);let{elbowArrows:n,otherElements:o}=A.reduce((B,E)=>pt(E)?{...B,elbowArrows:B.elbowArrows.concat(E)}:{...B,otherElements:B.otherElements.concat(E)},{elbowArrows:[],otherElements:[]}),{midX:s,midY:l}=Uc(A),[g,C]=[u-s,a-l];return o.forEach((B)=>xe(B,{x:B.x+g,y:B.y+C})),n.forEach((B)=>xe(B,{x:B.x+g,y:B.y+C})),A},eZ=at({name:"copy",label:"labels.copy",icon:W_,trackEvent:{category:"element"},perform:async(A,e,t,r)=>{let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});try{await v4e(i,r.files,t)}catch(u){return{captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:u.message}}}return{captureUpdate:be.EVENTUALLY}},keyTest:void 0}),sqe=at({name:"paste",label:"labels.paste",trackEvent:{category:"element"},perform:async(A,e,t,r)=>{let i;try{i=await F4e()}catch(u){return u.name==="AbortError"||u.name==="NotAllowedError"?!1:(console.error(`actionPaste ${u.name}: ${u.message}`),I9?{captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:uA("hints.firefox_clipboard_write")}}:{captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:uA("errors.asyncPasteFailedOnRead")}})}try{r.pasteFromClipboard(b4e({types:i}))}catch(u){return console.error(u),{captureUpdate:be.EVENTUALLY,appState:{...e,errorMessage:uA("errors.asyncPasteFailedOnParse")}}}return{captureUpdate:be.EVENTUALLY}},keyTest:void 0}),lqe=at({name:"cut",label:"labels.cut",icon:phe,trackEvent:{category:"element"},perform:(A,e,t,r)=>(eZ.perform(A,e,t,r),lze.perform(A,e,null,r)),keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.X}),gqe=at({name:"copyAsSvg",label:"labels.copyAsSvg",icon:Mhe,trackEvent:{category:"element"},perform:async(A,e,t,r)=>{if(!r.canvas)return{captureUpdate:be.EVENTUALLY};let{exportedElements:i,exportingFrame:u}=dZ(A,e,!0);try{await IZ("clipboard-svg",i,e,r.files,{...e,exportingFrame:u,name:r.getName()});let a=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});return{appState:{toast:{message:uA("toast.copyToClipboardAsSvg",{exportSelection:a.length?uA("toast.selection"):uA("toast.canvas"),exportColorScheme:e.exportWithDarkMode?uA("buttons.darkMode"):uA("buttons.lightMode")})}},captureUpdate:be.EVENTUALLY}}catch(a){return console.error(a),{appState:{errorMessage:a.message},captureUpdate:be.EVENTUALLY}}},predicate:(A)=>NW&&A.length>0,keywords:["svg","clipboard","copy"]}),cqe=at({name:"copyAsPng",label:"labels.copyAsPng",icon:The,trackEvent:{category:"element"},perform:async(A,e,t,r)=>{if(!r.canvas)return{captureUpdate:be.EVENTUALLY};let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}),{exportedElements:u,exportingFrame:a}=dZ(A,e,!0);try{return await IZ("clipboard",u,e,r.files,{...e,exportingFrame:a,name:r.getName()}),{appState:{...e,toast:{message:uA("toast.copyToClipboardAsPng",{exportSelection:i.length?uA("toast.selection"):uA("toast.canvas"),exportColorScheme:e.exportWithDarkMode?uA("buttons.darkMode"):uA("buttons.lightMode")})}},captureUpdate:be.EVENTUALLY}}catch(n){return console.error(n),{appState:{...e,errorMessage:n.message},captureUpdate:be.EVENTUALLY}}},predicate:(A)=>GW&&A.length>0,keyTest:(A)=>A.code===hi.C&&A.altKey&&A.shiftKey,keywords:["png","clipboard","copy"]}),Cqe=at({name:"copyText",label:"labels.copyText",trackEvent:{category:"element"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0});try{G9(VQe(i))}catch{throw Error(uA("errors.copyToSystemClipboardFailed"))}return{captureUpdate:be.EVENTUALLY}},predicate:(A,e,t,r)=>NW&&r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0}).some(Bt),keywords:["text","clipboard","copy"]}),Bqe=at({name:"gridMode",icon:Ohe,keywords:["snap"],label:"labels.toggleGrid",viewMode:!0,trackEvent:{category:"canvas",predicate:(A)=>A.gridModeEnabled},perform(A,e){return{appState:{...e,gridModeEnabled:!this.checked(e),objectsSnapModeEnabled:!1},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.gridModeEnabled,predicate:(A,e,t)=>t.gridModeEnabled===void 0,keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.code===hi.QUOTE}),h3A=at({name:"zenMode",label:"buttons.zenMode",icon:Hhe,paletteName:"Toggle zen mode",viewMode:!0,trackEvent:{category:"canvas",predicate:(A)=>!A.zenModeEnabled},perform(A,e){return{appState:{...e,zenModeEnabled:!this.checked(e)},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.zenModeEnabled,predicate:(A,e,t)=>typeof t.zenModeEnabled>"u",keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.Z}),JBr=at({name:"objectsSnapMode",label:"buttons.objectsSnapMode",icon:Yhe,viewMode:!1,trackEvent:{category:"canvas",predicate:(A)=>!A.objectsSnapModeEnabled},perform(A,e){return{appState:{...e,objectsSnapModeEnabled:!this.checked(e),gridModeEnabled:!1},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.objectsSnapModeEnabled,predicate:(A,e,t)=>typeof t.objectsSnapModeEnabled>"u",keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.S}),Q3A=at({name:"stats",label:"stats.fullTitle",icon:Nhe,paletteName:"Toggle stats",viewMode:!0,trackEvent:{category:"menu"},keywords:["edit","attributes","customize"],perform(A,e){return{appState:{...e,stats:{...e.stats,open:!this.checked(e)}},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.stats.open,keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.SLASH}),OBr=at({name:"unbindText",label:"labels.unbindText",trackEvent:{category:"element"},predicate:(A,e,t,r)=>r.scene.getSelectedElements(e).some((i)=>Ul(i)),perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e),u=r.scene.getNonDeletedElementsMap();return i.forEach((a)=>{let n=Ur(a,u);if(n){let{width:o,height:s}=y0(n.originalText,cu(n),n.lineHeight),l=PQe(a.id);ThA(a.id);let{x:g,y:C}=eS(a,n,u);xe(n,{containerId:null,width:o,height:s,text:n.originalText,x:g,y:C}),xe(a,{boundElements:a.boundElements?.filter((B)=>B.id!==n.id),height:l||a.height})}}),{elements:A,appState:e,captureUpdate:be.IMMEDIATELY}}}),PBr=at({name:"bindText",label:"labels.bindText",trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);if(i.length===2){let u=Bt(i[0])||Bt(i[1]),a;if(P1(i[0])?a=i[0]:P1(i[1])&&(a=i[1]),u&&a&&Ur(a,r.scene.getNonDeletedElementsMap())===null)return!0}return!1},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e),u,a;Bt(i[0])&&P1(i[1])?(u=i[0],a=i[1]):(u=i[1],a=i[0]),xe(u,{containerId:a.id,verticalAlign:Rl.MIDDLE,textAlign:l9.CENTER,autoResize:!0}),xe(a,{boundElements:(a.boundElements||[]).concat({type:"text",id:u.id})});let n=a.height;return V0(u,a,r.scene.getNonDeletedElementsMap()),AS(a.id,n),{elements:_Br(A,a,u),appState:{...e,selectedElementIds:{[a.id]:!0}},captureUpdate:be.IMMEDIATELY}}}),_Br=(A,e,t)=>{let r=A.slice(),i=r.findIndex((a)=>a.id===t.id);r.splice(i,1);let u=r.findIndex((a)=>a.id===e.id);return r.splice(u+1,0,t),tB(r,ar([e,t])),r},WBr=(A,e,t)=>{let r=A.slice(),i=r.findIndex((a)=>a.id===e.id);r.splice(i,1);let u=r.findIndex((a)=>a.id===t.id);return r.splice(u,0,e),tB(r,ar([e,t])),r},qBr=at({name:"wrapTextInContainer",label:"labels.createContainerFromText",trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e),u=i.every((a)=>Bt(a));return i.length>0&&u},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e),u=A.slice(),a={};for(let n of i)if(Bt(n)){let o=sB({type:"rectangle",backgroundColor:e.currentItemBackgroundColor,boundElements:[...n.boundElements||[],{id:n.id,type:"text"}],angle:n.angle,fillStyle:e.currentItemFillStyle,strokeColor:e.currentItemStrokeColor,roughness:e.currentItemRoughness,strokeWidth:e.currentItemStrokeWidth,strokeStyle:e.currentItemStrokeStyle,roundness:e.currentItemRoundness==="round"?{type:r2("rectangle")?mn.ADAPTIVE_RADIUS:mn.PROPORTIONAL_RADIUS}:null,opacity:100,locked:!1,x:n.x-pn,y:n.y-pn,width:M1(n.width,"rectangle"),height:M1(n.height,"rectangle"),groupIds:n.groupIds,frameId:n.frameId});if(n.boundElements?.length){let s=n.boundElements.filter((l)=>l.type==="arrow").map((l)=>l.id);u.filter((l)=>s.includes(l.id)).forEach((l)=>{let{startBinding:g,endBinding:C}=l;g?.elementId===n.id&&(g={...g,elementId:o.id}),C?.elementId===n.id&&(C={...C,elementId:o.id}),(g||C)&&xe(l,{startBinding:g,endBinding:C},!1)})}xe(n,{containerId:o.id,verticalAlign:Rl.MIDDLE,boundElements:null,textAlign:l9.CENTER,autoResize:!0},!1),V0(n,o,r.scene.getNonDeletedElementsMap()),u=WBr([...u,o],o,n),a[o.id]=!0}return{elements:u,appState:{...e,selectedElementIds:a},captureUpdate:be.IMMEDIATELY}}}),M3A=380,zBr=42,p3A=5,Yze=85,ZBr=500,f3A=!1,zz=new Map,VBr=({element:A,elementsMap:e,setAppState:t,onLinkOpen:r,setToast:i,updateEmbedValidationStatus:u})=>{let a=JL(),n=KL(),o=vo(),s=A.link||"",[l,g]=we(s),C=Ee(null),B=a.showHyperlinkPopup==="editor",E=st(()=>{if(!C.current)return;let p=Nl(C.current.value)||null;if(!A.link&&p&&Nu("hyperlink","create"),Js(A)){if(a.activeEmbeddable?.element===A&&t({activeEmbeddable:null}),!p){xe(A,{link:null}),u(A,!1);return}if(!tS(p,n.validateEmbeddable))p&&i({message:uA("toast.unableToEmbed"),closable:!0}),A.link&&zz.set(A.id,A.link),xe(A,{link:p}),u(A,!1);else{let{width:m,height:f}=A,D=s2(p);D?.error instanceof URIError&&i({message:uA("toast.unrecognizedLinkFormat"),closable:!0});let w=D?D.intrinsicSize.w/D.intrinsicSize.h:1,b=zz.get(A.id)!==A.link;xe(A,{...b?{width:D?.type==="video"?m>f?m:f*w:m,height:D?.type==="video"&&m>f?m/w:f}:{},link:p}),u(A,!0),zz.has(A.id)&&zz.delete(A.id)}}else xe(A,{link:p})},[A,i,n.validateEmbeddable,a.activeEmbeddable,t,u]);Ii(()=>()=>{E()},[E]),le(()=>{B&&C?.current&&!(o.viewport.isMobile||o.isTouchScreen)&&C.current.select()},[B,o.viewport.isMobile,o.isTouchScreen]),le(()=>{let p=null,m=(f)=>{if(B)return;p&&clearTimeout(p),$Br(A,e,a,X(f.clientX,f.clientY))&&(p=window.setTimeout(()=>{t({showHyperlinkPopup:!1})},ZBr))};return window.addEventListener("pointermove",m,!1),()=>{window.removeEventListener("pointermove",m,!1),p&&clearTimeout(p)}},[a,A,B,t,e]);let d=st(()=>{Nu("hyperlink","delete"),xe(A,{link:null}),t({showHyperlinkPopup:!1})},[t,A]),I=()=>{Nu("hyperlink","edit","popup-ui"),t({showHyperlinkPopup:"editor"})},{x:h,y:Q}=Hze(A,a,e);return a.contextMenu||a.selectedElementsAreBeingDragged||a.resizingElement||a.isRotating||a.openMenu||a.viewModeEnabled?null:cA("div",{className:"excalidraw-hyperlinkContainer",style:{top:`${Q}px`,left:`${h}px`,width:M3A,padding:p3A},children:[B?N("input",{className:Se("excalidraw-hyperlinkContainer-input"),placeholder:uA("labels.link.hint"),ref:C,value:l,onChange:(p)=>g(p.target.value),autoFocus:!0,onKeyDown:(p)=>{p.stopPropagation(),p[PA.CTRL_OR_CMD]&&p.key===PA.K&&p.preventDefault(),(p.key===PA.ENTER||p.key===PA.ESCAPE)&&(E(),t({showHyperlinkPopup:"info"}))}}):A.link?N("a",{href:Nl(A.link||""),className:"excalidraw-hyperlinkContainer-link",target:HhA(A.link)?"_self":"_blank",onClick:(p)=>{if(A.link&&r){let m=mIA("excalidraw-link",p.nativeEvent);r({...A,link:Nl(A.link)},m),m.defaultPrevented&&p.preventDefault()}},rel:"noopener noreferrer",children:A.link}):N("div",{className:"excalidraw-hyperlinkContainer-link",children:uA("labels.link.empty")}),cA("div",{className:"excalidraw-hyperlinkContainer__buttons",children:[!B&&N(ci,{type:"button",title:uA("buttons.edit"),"aria-label":uA("buttons.edit"),label:uA("buttons.edit"),onClick:I,className:"excalidraw-hyperlinkContainer--edit",icon:g9}),N(ci,{type:"button",title:uA("labels.linkToElement"),"aria-label":uA("labels.linkToElement"),label:uA("labels.linkToElement"),onClick:()=>{t({openDialog:{name:"elementLinkSelector",sourceElementId:A.id}})},icon:ChA}),s&&!Js(A)&&N(ci,{type:"button",title:uA("buttons.remove"),"aria-label":uA("buttons.remove"),label:uA("buttons.remove"),onClick:d,className:"excalidraw-hyperlinkContainer--remove",icon:W1})]})]})},Hze=(A,e,t)=>{let[r,i]=Nr(A,t),{x:u,y:a}=Sc({sceneX:r+A.width/2,sceneY:i},e),n=u-e.offsetLeft-M3A/2,o=a-e.offsetTop-Yze;return{x:n,y:o}},Eqe=(A,e)=>{let t=Or(A,e);return Js(t[0])?"labels.link.editEmbed":t[0]?.link?"labels.link.edit":"labels.link.create"},LL=null,jBr=(A,e,t)=>{LL&&clearTimeout(LL),LL=window.setTimeout(()=>XBr(A,e,t),Lde)},XBr=(A,e,t)=>{if(!A.link)return;let r=xL();r.classList.add("excalidraw-tooltip--visible"),r.style.maxWidth="20rem",r.textContent=N9(A.link)?uA("labels.link.goToElement"):A.link;let[i,u,a,n]=Nr(A,t),[o,s,l,g]=bW([i,u,a,n],A.angle,e),C=Sc({sceneX:o,sceneY:s},e);Sze(r,{left:C.x,top:C.y,width:l,height:g},"top"),Nu("hyperlink","tooltip","link-icon"),f3A=!0},dqe=()=>{LL&&clearTimeout(LL),f3A&&(f3A=!1,xL().classList.remove("excalidraw-tooltip--visible"))},$Br=(A,e,t,[r,i])=>{let{x:u,y:a}=Ru({clientX:r,clientY:i},t),n=15/t.zoom.value;if(tW(u,a,A,e))return!1;let[o,s,l]=Nr(A,e);if(u>=o&&u<=l&&a>=s-Yze&&a<=s)return!1;let{x:g,y:C}=Hze(A,t,e);return!(r>=g-n&&r<=g+M3A+p3A*2+n&&i>=C-n&&i<=C+n+p3A*2+zBr)},Kze=at({name:"hyperlink",label:(A,e)=>Eqe(A,e),icon:V_,perform:(A,e)=>e.showHyperlinkPopup==="editor"?!1:{elements:A,appState:{...e,showHyperlinkPopup:"editor",openMenu:null},captureUpdate:be.IMMEDIATELY},trackEvent:{category:"hyperlink",action:"click"},keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.K,predicate:(A,e)=>Or(A,e).length===1,PanelComponent:({elements:A,appState:e,updateData:t})=>{let r=Or(A,e);return N(ci,{type:"button",icon:V_,"aria-label":uA(Eqe(A,e)),title:`${Js(A[0])?uA("labels.link.labelEmbed"):uA("labels.link.label")} - ${Fe("CtrlOrCmd+K")}`,onClick:()=>t(null),selected:r.length===1&&!!r[0].link})}}),jfA=(A)=>A.every((e)=>!e.locked),AEr=at({name:"toggleElementLock",label:(A,e,t)=>{let r=t.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!1});return r.length===1&&!nr(r[0])?r[0].locked?"labels.elementLock.unlock":"labels.elementLock.lock":jfA(r)?"labels.elementLock.lockAll":"labels.elementLock.unlockAll"},icon:(A,e)=>{let t=Or(e,A);return jfA(t)?__:P8},trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);return i.length>0&&!i.some((u)=>u.locked&&u.frameId)},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0});if(!i.length)return!1;let u=jfA(i),a=ar(i);return{elements:A.map((n)=>a.has(n.id)?Yr(n,{locked:u}):n),appState:{...e,selectedLinearElement:u?null:e.selectedLinearElement},captureUpdate:be.IMMEDIATELY}},keyTest:(A,e,t,r)=>A.key.toLocaleLowerCase()===PA.L&&A[PA.CTRL_OR_CMD]&&A.shiftKey&&r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!1}).length>0}),eEr=at({name:"unlockAllElements",paletteName:"Unlock all elements",trackEvent:{category:"canvas"},viewMode:!1,icon:P8,predicate:(A,e)=>Or(A,e).length===0&&A.some((t)=>t.locked),perform:(A,e)=>{let t=A.filter((r)=>r.locked);return{elements:A.map((r)=>r.locked?Yr(r,{locked:!1}):r),appState:{...e,selectedElementIds:Object.fromEntries(t.map((r)=>[r.id,!0]))},captureUpdate:be.IMMEDIATELY}},label:"labels.elementLock.unlockAll"}),tEr=()=>{let[A,e]=we(null),t=st((r)=>e(r),[]);return[A,t]},rEr=(A)=>{let{closeOnClickOutside:e=!0}=A,t=pze({className:"excalidraw-modal-container"}),r=Ee(document.body.classList.contains("excalidraw-animations-disabled"));if(!t)return null;let i=(u)=>{u.key===PA.ESCAPE&&(u.nativeEvent.stopImmediatePropagation(),u.stopPropagation(),A.onCloseRequest())};return p5(cA("div",{className:Se("Modal",A.className,{"animations-disabled":r.current}),role:"dialog","aria-modal":"true",onKeyDown:i,"aria-labelledby":A.labelledBy,"data-prevent-outside-click":!0,children:[N("div",{className:"Modal__background",onClick:e?A.onCloseRequest:void 0}),N("div",{className:"Modal__content",style:{"--max-width":`${A.maxWidth}px`},tabIndex:0,children:A.children})]}),t)},Jze=On(new Map),Iqe=async(A)=>await nS({elements:A,appState:{exportBackground:!1,viewBackgroundColor:Zr.white},files:null,renderEmbeddables:!1,skipInliningFonts:!0}),iEr=(A,e,t)=>{let[r,i]=we();return le(()=>{if(e)if(A){let u=t.get(A);u?i(u):(async()=>{let a=await Iqe(e);a.querySelector(".style-fonts")?.remove(),a&&(t.set(A,a),i(a))})()}else(async()=>{let u=await Iqe(e);i(u)})()},[A,e,t,i]),r},Oze=()=>{let[A]=Ka(Jze);return{clearLibraryCache:()=>A.clear(),deleteItemsFromLibraryCache:(e)=>{e.forEach((t)=>A.delete(t))},svgCache:A}},uEr=class{constructor(){GA(this,"jobs",[]),GA(this,"running",!1)}tick(){if(this.running)return;let A=this.jobs.shift();A?(this.running=!0,A.promise.resolve(Om(A.jobFactory,...A.args).finally(()=>{this.running=!1,this.tick()}))):this.running=!1}push(A,...e){let t=AIe();return this.jobs.push({jobFactory:A,promise:t,args:e}),this.tick(),t}};var aEr=new lB,GL=On({status:"loaded",isInitialized:!1,libraryItems:[]}),DL=(A)=>Bd(A),nEr=(A,e)=>!A.find((t)=>t.elements.length!==e.elements.length?!1:t.elements.every((r,i)=>r.id===e.elements[i].id&&r.versionNonce===e.elements[i].versionNonce)),oEr=(A,e)=>{let t=[];for(let r of e)nEr(A,r)&&t.push(r);return[...t,...A]},sEr=(A,e)=>{let t=ar(e),r={deletedItems:new Map,addedItems:new Map};for(let u of A)t.has(u.id)||r.deletedItems.set(u.id,u);let i=ar(A);for(let u of e)i.has(u.id)||r.addedItems.set(u.id,u);return r},lEr=class{constructor(A){GA(this,"currLibraryItems",[]),GA(this,"prevLibraryItems",DL(this.currLibraryItems)),GA(this,"app"),GA(this,"updateQueue",[]),GA(this,"getLastUpdateTask",()=>this.updateQueue[this.updateQueue.length-1]),GA(this,"notifyListeners",()=>{if(this.updateQueue.length>0)vB.set(GL,(e)=>({status:"loading",libraryItems:this.currLibraryItems,isInitialized:e.isInitialized}));else{vB.set(GL,{status:"loaded",libraryItems:this.currLibraryItems,isInitialized:!0});try{let e=this.prevLibraryItems;this.prevLibraryItems=DL(this.currLibraryItems);let t=DL(this.currLibraryItems);this.app.props.onLibraryChange?.(t),aEr.trigger(sEr(e,t),t)}catch(e){console.error(e)}}}),GA(this,"destroy",()=>{this.updateQueue=[],this.currLibraryItems=[],vB.set(Jze,new Map)}),GA(this,"resetLibrary",()=>this.setLibrary([])),GA(this,"getLatestLibrary",()=>new Promise(async(e)=>{try{let t=await(this.getLastUpdateTask()||this.currLibraryItems);this.updateQueue.length>0?e(this.getLatestLibrary()):e(DL(t))}catch{return e(this.currLibraryItems)}})),GA(this,"updateLibrary",async({libraryItems:e,prompt:t=!1,merge:r=!1,openLibraryMenu:i=!1,defaultStatus:u="unpublished"})=>(i&&this.app.setState({openSidebar:{name:Gc.name,tab:G8}}),this.setLibrary(()=>new Promise(async(a,n)=>{try{let o=await(typeof e=="function"&&!(e instanceof Blob)?e(this.currLibraryItems):e),s;o instanceof Blob?s=await $4e(o,u):s=RW(o,u),!t||window.confirm(uA("alerts.confirmAddLibrary",{numShapes:s.length}))?(t&&this.app.focusContainer(),a(r?oEr(this.currLibraryItems,s):s)):n(new z8)}catch(o){n(o)}})))),GA(this,"setLibrary",(e)=>{let t=new Promise(async(r,i)=>{try{await this.getLastUpdateTask(),typeof e=="function"&&(e=e(this.currLibraryItems)),this.currLibraryItems=DL(await e),r(this.currLibraryItems)}catch(u){i(u)}}).catch((r)=>{if(r.name==="AbortError")return console.warn("Library update aborted by user"),this.currLibraryItems;throw r}).finally(()=>{this.updateQueue=this.updateQueue.filter((r)=>r!==t),this.notifyListeners()});return this.updateQueue.push(t),this.notifyListeners(),t}),this.app=A}},gEr=lEr,Pze=(A)=>{let e=Math.ceil(Math.sqrt(A.length)),t=[],r=(C)=>A.slice(C*e,C*e+e).reduce((B,E)=>{let{height:d}=Uc(E.elements);return Math.max(B,d)},0),i=(C)=>{let B=0,E=0,d=0;for(let I of A){if(B%e===0&&(E=0),E===C){let{width:h}=Uc(I.elements);d=Math.max(d,h)}B++,E++}return d},u=0,a=0,n=0,o=0,s=0,l=0,g=0;for(let C of A){s&&s%e===0&&(a+=n+50,u=0,l=0,g++),l===0&&(n=r(g)),o=i(l);let{minX:B,minY:E,width:d,height:I}=Uc(C.elements),h=(o-d)/2,Q=(n-I)/2;t.push(...C.elements.map((p)=>({...p,x:p.x+u+h-B,y:p.y+a+Q-E}))),u+=o+50,s++,l++}return t};var Zz=class A{constructor(e){GA(this,"adapter"),this.adapter=e}static async getLibraryItems(e,t,r=!0){let i=()=>new Promise(async(u,a)=>{try{let n=await e.load({source:t});u(RW(n?.libraryItems||[],"published"))}catch(n){a(n)}});return r?A.queue.push(i):i()}getLibraryItems(e){return A.getLibraryItems(this.adapter,e,!1)}};GA(Zz,"queue",new uEr),GA(Zz,"run",async(A,e)=>{let t=new Zz(A);return Zz.queue.push(()=>e(t))});var cEr=mt(({children:A,gap:e,align:t,justifyContent:r,className:i,style:u},a)=>N("div",{className:Se("Stack Stack_horizontal",i),style:{"--gap":e,alignItems:t,justifyContent:r,...u},ref:a,children:A})),CEr=mt(({children:A,gap:e,align:t,justifyContent:r,className:i,style:u},a)=>N("div",{className:Se("Stack Stack_vertical",i),style:{"--gap":e,justifyItems:t,justifyContent:r,...u},ref:a,children:A})),Wc={Row:cEr,Col:CEr},BEr=({theme:A,id:e,libraryReturnUrl:t})=>{let r=t||window.location.origin+window.location.pathname;return N("a",{className:"library-menu-browse-button",href:`${fr.VITE_APP_LIBRARY_URL}?target=${window.name||"_blank"}&referrer=${r}&useHash=true&token=${e}&theme=${A}&version=${N8.excalidrawLibrary}`,target:"_excalidraw_libraries",children:uA("labels.libraries")})},EEr=BEr,_ze=({libraryReturnUrl:A,theme:e,id:t,style:r,children:i,className:u})=>cA("div",{className:Se("library-menu-control-buttons",u),style:r,children:[N(EEr,{id:t,libraryReturnUrl:A,theme:e}),i]}),dEr=/({{[\w-]+}})|(<[\w-]+>)|(<\/[\w-]+>)/g,IEr=/{{([\w-]+)}}/,hEr=/<([\w-]+)>/,QEr=/<\/([\w-]+)>/,pEr=(A,e)=>{let t=[{name:"",children:[]}];return A.split(dEr).filter(Boolean).forEach((r)=>{let i=r.match(hEr),u=r.match(QEr),a=r.match(IEr);if(i!==null){let n=i[1];e.hasOwnProperty(n)?t.push({name:n,children:[]}):console.warn(`Trans: missed to pass in prop ${n} for interpolating ${A}`)}else if(u!==null)if(u[1]===t[t.length-1].name){let n=t.pop(),o=Rt(ho,{},...n.children),s=e[n.name];typeof s=="function"&&t[t.length-1].children.push(s(o))}else console.warn(`Trans: unexpected end tag ${r} for interpolating ${A}`);else if(a!==null){let n=a[1];e.hasOwnProperty(n)?t[t.length-1].children.push(e[n]):console.warn(`Trans: key ${n} not in props for interpolating ${A}`)}else t[t.length-1].children.push(r)}),t.length!==1&&console.warn(`Trans: stack not empty for interpolating ${A}`),t[0].children},fEr=({i18nKey:A,children:e,...t})=>{let{t:r}=us();return Rt(ho,{},...pEr(r(A),t))},Ld=fEr,mEr=({label:A,onClick:e,className:t,children:r,actionType:i,type:u="button",isLoading:a,...n})=>{let o=i?`Dialog__action-button--${i}`:"";return cA("button",{className:Se("Dialog__action-button",o,t),type:u,"aria-label":A,onClick:e,...n,children:[r&&N("div",{style:a?{visibility:"hidden"}:{},children:r}),N("div",{style:a?{visibility:"hidden"}:{},children:A}),a&&N("div",{style:{position:"absolute",inset:0},children:N(_h,{})})]})},T5=mEr,DEr=(A)=>{let{onConfirm:e,onCancel:t,children:r,confirmText:i=uA("buttons.confirm"),cancelText:u=uA("buttons.cancel"),className:a="",...n}=A,o=qn(),s=lZ(T3A),{container:l}=Gd();return cA(FB,{onCloseRequest:t,size:"small",...n,className:`confirm-dialog ${a}`,children:[r,cA("div",{className:"confirm-dialog-buttons",children:[N(T5,{label:u,onClick:()=>{o({openMenu:null}),s(!1),_n(()=>{t()}),l?.focus()}}),N(T5,{label:i,onClick:()=>{o({openMenu:null}),s(!1),_n(()=>{e()}),l?.focus()},actionType:"danger"})]})]})},Wze=DEr,J2=class{static has(A){try{return!!window.localStorage.getItem(A)}catch(e){return console.warn(`localStorage.getItem error: ${e.message}`),!1}}static get(A){try{let e=window.localStorage.getItem(A);return e?JSON.parse(e):null}catch(e){return console.warn(`localStorage.getItem error: ${e.message}`),null}}};GA(J2,"set",(A,e)=>{try{return window.localStorage.setItem(A,JSON.stringify(e)),!0}catch(t){return console.warn(`localStorage.setItem error: ${t.message}`),!1}}),GA(J2,"delete",(A)=>{try{window.localStorage.removeItem(A)}catch(e){console.warn(`localStorage.removeItem error: ${e.message}`)}});var yEr=async(A)=>{let e=Math.round(8),t=Math.max(Math.round(2),2),r=Xde(A,6),i=document.createElement("canvas");i.width=r[0].length*128+(r[0].length+1)*(e*2)-e*2,i.height=r.length*128+(r.length+1)*(e*2)-e*2;let u=i.getContext("2d");u.fillStyle=ua.white,u.fillRect(0,0,i.width,i.height);for(let[a,n]of A.entries()){let o=await UW({elements:n.elements,files:null,maxWidthOrHeight:128}),{width:s,height:l}=o,g=Math.floor(a/6)*(128+e*2),C=a%6*(128+e*2);u.drawImage(o,C+(128-s)/2+e,g+(128-l)/2+e),u.lineWidth=t,u.strokeStyle=ua.gray[4],u.strokeRect(C+e/2,g+e/2,128+e,128+e)}return await ZW(new File([await H9(i)],"preview",{type:jt.png}),{outputType:jt.jpg,maxWidthOrHeight:5000})},wEr=({libItem:A,appState:e,index:t,onChange:r,onRemove:i})=>{let u=Ee(null),a=Ee(null);return le(()=>{let n=u.current;n&&(async()=>{let o=await nS({elements:A.elements,appState:{...e,viewBackgroundColor:ua.white,exportBackground:!0},files:null,skipInliningFonts:!0});n.innerHTML=o.outerHTML})()},[A.elements,e]),cA("div",{className:"single-library-item",children:[A.status==="published"&&N("span",{className:"single-library-item-status",children:uA("labels.statusPublished")}),N("div",{ref:u,className:"single-library-item__svg"}),N(ci,{"aria-label":uA("buttons.remove"),type:"button",icon:u2,className:"single-library-item--remove",onClick:i.bind(null,A.id),title:uA("buttons.remove")}),cA("div",{style:{display:"flex",margin:"0.8rem 0",width:"100%",fontSize:"14px",fontWeight:500,flexDirection:"column"},children:[cA("label",{style:{display:"flex",justifyContent:"space-between",flexDirection:"column"},children:[cA("div",{style:{padding:"0.5em 0"},children:[N("span",{style:{fontWeight:500,color:ua.gray[6]},children:uA("publishDialog.itemName")}),N("span",{"aria-hidden":"true",className:"required",children:"*"})]}),N("input",{type:"text",ref:a,style:{width:"80%",padding:"0.2rem"},defaultValue:A.name,placeholder:"Item name",onChange:(n)=>{r(n.target.value,t)}})]}),N("span",{className:"error",children:A.error})]})]})},bEr=({onClose:A,libraryItems:e,appState:t,onSuccess:r,onError:i,updateItemsInStorage:u,onRemove:a})=>{let[n,o]=we({authorName:"",githubHandle:"",name:"",description:"",twitterHandle:"",website:""}),[s,l]=we(!1);le(()=>{let p=J2.get(Q9.PUBLISH_LIBRARY);p&&o(p)},[]);let[g,C]=we(e.slice());le(()=>{C(e.slice())},[e]);let B=(p)=>{o({...n,[p.target.name]:p.target.value})},E=async(p)=>{p.preventDefault(),l(!0);let m=[],f=!1;if(g.forEach((S)=>{let x="";S.name||(x=uA("publishDialog.errors.required"),f=!0),m.push({...S,error:x})}),f){C(m),l(!1);return}let D=await yEr(g),w={type:wg.excalidrawLibrary,version:N8.excalidrawLibrary,source:R_,libraryItems:g},b=JSON.stringify(w,null,2),k=new Blob([b],{type:"application/json"}),v=new FormData;v.append("excalidrawLib",k),v.append("previewImage",D),v.append("previewImageType",D.type),v.append("title",n.name),v.append("authorName",n.authorName),v.append("githubHandle",n.githubHandle),v.append("name",n.name),v.append("description",n.description),v.append("twitterHandle",n.twitterHandle),v.append("website",n.website),fetch(`${fr.VITE_APP_LIBRARY_BACKEND}/submit`,{method:"post",body:v}).then((S)=>S.ok?S.json().then(({url:x})=>{J2.delete(Q9.PUBLISH_LIBRARY),r({url:x,authorName:n.authorName,items:g})}):S.json().catch(()=>{throw Error(S.statusText||"something went wrong")}).then((x)=>{throw Error(x.message||S.statusText||"something went wrong")}),(S)=>{console.error(S),i(S),l(!1)}).catch((S)=>{console.error(S),i(S),l(!1)})},d=()=>{let p=[];return g.forEach((m,f)=>{p.push(N("div",{className:"single-library-item-wrapper",children:N(wEr,{libItem:m,appState:t,index:f,onChange:(D,w)=>{let b=g.slice();b[w].name=D,C(b)},onRemove:a})},f))}),N("div",{className:"selected-library-items",children:p})},I=st(()=>{u(g),J2.set(Q9.PUBLISH_LIBRARY,n),A()},[g,A,u,n]),h=!!e.length,Q=e.some((p)=>p.status==="published");return N(FB,{onCloseRequest:I,title:uA("publishDialog.title"),className:"publish-library",children:h?cA("form",{onSubmit:E,children:[N("div",{className:"publish-library-note",children:N(Ld,{i18nKey:"publishDialog.noteDescription",link:(p)=>N("a",{href:"https://libraries.excalidraw.com",target:"_blank",rel:"noopener noreferrer",children:p})})}),N("span",{className:"publish-library-note",children:N(Ld,{i18nKey:"publishDialog.noteGuidelines",link:(p)=>N("a",{href:"https://github.com/excalidraw/excalidraw-libraries#guidelines",target:"_blank",rel:"noopener noreferrer",children:p})})}),N("div",{className:"publish-library-note",children:uA("publishDialog.noteItems")}),Q&&N("span",{className:"publish-library-note publish-library-warning",children:uA("publishDialog.republishWarning")}),d(),cA("div",{className:"publish-library__fields",children:[cA("label",{children:[cA("div",{children:[N("span",{children:uA("publishDialog.libraryName")}),N("span",{"aria-hidden":"true",className:"required",children:"*"})]}),N("input",{type:"text",name:"name",required:!0,value:n.name,onChange:B,placeholder:uA("publishDialog.placeholder.libraryName")})]}),cA("label",{style:{alignItems:"flex-start"},children:[cA("div",{children:[N("span",{children:uA("publishDialog.libraryDesc")}),N("span",{"aria-hidden":"true",className:"required",children:"*"})]}),N("textarea",{name:"description",rows:4,required:!0,value:n.description,onChange:B,placeholder:uA("publishDialog.placeholder.libraryDesc")})]}),cA("label",{children:[cA("div",{children:[N("span",{children:uA("publishDialog.authorName")}),N("span",{"aria-hidden":"true",className:"required",children:"*"})]}),N("input",{type:"text",name:"authorName",required:!0,value:n.authorName,onChange:B,placeholder:uA("publishDialog.placeholder.authorName")})]}),cA("label",{children:[N("span",{children:uA("publishDialog.githubUsername")}),N("input",{type:"text",name:"githubHandle",value:n.githubHandle,onChange:B,placeholder:uA("publishDialog.placeholder.githubHandle")})]}),cA("label",{children:[N("span",{children:uA("publishDialog.twitterUsername")}),N("input",{type:"text",name:"twitterHandle",value:n.twitterHandle,onChange:B,placeholder:uA("publishDialog.placeholder.twitterHandle")})]}),cA("label",{children:[N("span",{children:uA("publishDialog.website")}),N("input",{type:"text",name:"website",pattern:"https?://.+",title:uA("publishDialog.errors.website"),value:n.website,onChange:B,placeholder:uA("publishDialog.placeholder.website")})]}),N("span",{className:"publish-library-note",children:N(Ld,{i18nKey:"publishDialog.noteLicense",link:(p)=>N("a",{href:"https://github.com/excalidraw/excalidraw-libraries/blob/main/LICENSE",target:"_blank",rel:"noopener noreferrer",children:p})})})]}),cA("div",{className:"publish-library__buttons",children:[N(T5,{label:uA("buttons.cancel"),onClick:I,"data-testid":"cancel-clear-canvas-button"}),N(T5,{type:"submit",label:uA("buttons.submit"),actionType:"primary",isLoading:s})]})]}):N("p",{style:{padding:"1em",textAlign:"center",fontWeight:500},children:uA("publishDialog.atleastOneLibItem")})})},vEr=bEr,qze=({className:A="",children:e,onToggle:t,title:r,...i})=>{let u=vo(),a=Se(`dropdown-menu-button ${A}`,"zen-mode-transition",{"dropdown-menu-button--mobile":u.editor.isMobile}).trim();return N("button",{"data-prevent-outside-click":!0,className:a,onClick:t,type:"button","data-testid":"dropdown-menu-button",title:r,...i,children:e})},kEr=qze;qze.displayName="DropdownMenuTrigger";var zze=()=>N("div",{style:{height:"1px",backgroundColor:"var(--default-border-color)",margin:".5rem 0"}}),FEr=zze;zze.displayName="DropdownMenuSeparator";var Zze=({children:A,onClickOutside:e,className:t="",onSelect:r,style:i})=>{let u=vo(),a=Ee(null),n=cZ({onClickOutside:e});x3A(a,()=>{n.onClickOutside?.()}),le(()=>{let s=(g)=>{g.key===PA.ESCAPE&&(g.stopImmediatePropagation(),n.onClickOutside?.())},l={capture:!0};return document.addEventListener("keydown",s,l),()=>{document.removeEventListener("keydown",s,l)}},[n]);let o=Se(`dropdown-menu ${t}`,{"dropdown-menu--mobile":u.editor.isMobile}).trim();return N(wze.Provider,{value:{onSelect:r},children:N("div",{ref:a,className:o,style:i,"data-testid":"dropdown-menu",children:u.editor.isMobile?N(Wc.Col,{className:"dropdown-menu-container",children:A}):N(kB,{className:"dropdown-menu-container",padding:2,style:{zIndex:2},children:A})})})};Zze.displayName="DropdownMenuContent";var xEr=Zze,Vze=({icon:A,shortcut:e,href:t,children:r,onSelect:i,className:u="",selected:a,rel:n="noreferrer",...o})=>{let s=vze(o.onClick,i);return N("a",{...o,href:t,target:"_blank",rel:"noreferrer",className:bze(u,a),title:o.title??o["aria-label"],onClick:s,children:N(kze,{icon:A,shortcut:e,children:r})})},tZ=Vze;Vze.displayName="DropdownMenuItemLink";var SEr=({children:A,className:e="",selected:t,...r})=>N("div",{...r,className:`dropdown-menu-item-base dropdown-menu-item-custom ${e} ${t?"dropdown-menu-item--selected":""}`.trim(),children:A}),LEr=SEr,REr=(A)=>di.toArray(A).find((t)=>Da(t)&&typeof t.type!="string"&&t?.type.displayName&&t.type.displayName==="DropdownMenuTrigger")||null,NEr=(A)=>di.toArray(A).find((t)=>Da(t)&&typeof t.type!="string"&&t?.type.displayName&&t.type.displayName==="DropdownMenuContent")||null,qh=({children:A,open:e})=>{let t=REr(A),r=NEr(A);return cA(At,{children:[t,e&&r]})};qh.Trigger=kEr;qh.Content=xEr;qh.Item=qc;qh.ItemLink=tZ;qh.ItemCustom=LEr;qh.Group=d3A;qh.Separator=FEr;var Hu=qh;qh.displayName="DropdownMenu";var GEr=(A,e)=>A.filter((t)=>e.includes(t.id)),UEr=({setAppState:A,selectedItems:e,library:t,onRemoveFromLibrary:r,resetLibrary:i,onSelectItems:u,appState:a,className:n})=>{let[o]=Ka(GL),[s,l]=Ka(T3A),g=()=>{let v=e.length?uA("alerts.removeItemsFromsLibrary",{count:e.length}):uA("alerts.resetLibrary"),S=e.length?uA("confirmDialog.removeItemsFromLib"):uA("confirmDialog.resetLibrary");return N(Wze,{onConfirm:()=>{e.length?r():i(),B(!1)},onCancel:()=>{B(!1)},title:S,children:N("p",{children:v})})},[C,B]=we(!1),E=!!e.length,d=E?o.libraryItems.filter((v)=>e.includes(v.id)):o.libraryItems,I=E?uA("buttons.remove"):uA("buttons.resetLibrary"),[h,Q]=we(!1),[p,m]=we(null),f=st(()=>cA(FB,{onCloseRequest:()=>m(null),title:uA("publishSuccessDialog.title"),className:"publish-library-success",size:"small",children:[N("p",{children:N(Ld,{i18nKey:"publishSuccessDialog.content",authorName:p.authorName,link:(v)=>N("a",{href:p?.url,target:"_blank",rel:"noopener noreferrer",children:v})})}),N(ci,{type:"button",title:uA("buttons.close"),"aria-label":uA("buttons.close"),label:uA("buttons.close"),onClick:()=>m(null),"data-testid":"publish-library-success-close",className:"publish-library-success-close"})]}),[m,p]),D=(v,S)=>{Q(!1),m({url:v.url,authorName:v.authorName});let x=S.slice();x.forEach((F)=>{e.includes(F.id)&&(F.status="published")}),t.setLibrary(x)},w=async()=>{try{await t.updateLibrary({libraryItems:yW({description:"Excalidraw library files"}),merge:!0,openLibraryMenu:!0})}catch(v){if(v?.name==="AbortError"){console.warn(v);return}A({errorMessage:uA("errors.importLibraryError")})}},b=async()=>{let v=E?d:await t.getLatestLibrary();c4e(v).catch(QIA).catch((S)=>{A({errorMessage:S.message})})},k=()=>cA(Hu,{open:s,children:[N(Hu.Trigger,{onToggle:()=>l(!s),children:EIe}),cA(Hu.Content,{onClickOutside:()=>l(!1),onSelect:()=>l(!1),className:"library-menu",children:[!E&&N(Hu.Item,{onSelect:w,icon:j_,"data-testid":"lib-dropdown--load",children:uA("buttons.load")}),!!d.length&&N(Hu.Item,{onSelect:b,icon:_8,"data-testid":"lib-dropdown--export",children:uA("buttons.export")}),!!d.length&&N(Hu.Item,{onSelect:()=>B(!0),icon:W1,children:I}),E&&N(Hu.Item,{icon:Qhe,onSelect:()=>Q(!0),"data-testid":"lib-dropdown--remove",children:uA("buttons.publishLibrary")})]})]});return cA("div",{className:Se("library-menu-dropdown-container",n),children:[k(),e.length>0&&N("div",{className:"library-actions-counter",children:e.length}),C&&g(),h&&N(vEr,{onClose:()=>Q(!1),libraryItems:GEr(o.libraryItems,e),appState:a,onSuccess:(v)=>D(v,o.libraryItems),onError:(v)=>window.alert(v),updateItemsInStorage:()=>t.setLibrary(o.libraryItems),onRemove:(v)=>u(e.filter((S)=>S!==v))}),p&&f()]})},hqe=({selectedItems:A,onSelectItems:e,className:t})=>{let{library:r}=Nd(),{clearLibraryCache:i,deleteItemsFromLibraryCache:u}=Oze(),a=k0(),n=qn(),[o]=Ka(GL),s=async(l)=>{let g=l.filter((C)=>!A.includes(C.id));r.setLibrary(g).catch(()=>{n({errorMessage:uA("alerts.errorRemovingFromLibrary")})}),u(A),e([])};return N(UEr,{appState:a,setAppState:n,selectedItems:A,onSelectItems:e,library:r,onRemoveFromLibrary:()=>s(o.libraryItems),resetLibrary:()=>{r.resetLibrary(),i()},className:t})},MEr=gi(({id:A,elements:e,isPending:t,onClick:r,selected:i,onToggle:u,onDrag:a,svgCache:n})=>{let o=Ee(null),s=iEr(A,e,n);le(()=>{let E=o.current;if(E)return s&&(E.innerHTML=s.outerHTML),()=>{E.innerHTML=""}},[s]);let[l,g]=we(!1),C=vo().editor.isMobile,B=t&&N("div",{className:"library-unit__adder",children:BIe});return cA("div",{className:Se("library-unit",{"library-unit__active":e,"library-unit--hover":e&&l,"library-unit--selected":i,"library-unit--skeleton":!s}),onMouseEnter:()=>g(!0),onMouseLeave:()=>g(!1),children:[N("div",{className:Se("library-unit__dragger",{"library-unit__pulse":!!t}),ref:o,draggable:!!e,onClick:e||t?(E)=>{A&&E.shiftKey?u(A,E):r(A)}:void 0,onDragStart:(E)=>{if(!A){E.preventDefault();return}g(!1),a(A,E)}}),B,A&&e&&(l||C||i)&&N(G3A,{checked:i,onChange:(E,d)=>u(A,d),className:"library-unit__checkbox"})]})}),TEr=()=>N("div",{className:"library-unit library-unit--skeleton"});function YEr(){return[!1,st((A)=>A(),[])]}var HEr=pdA||YEr,Qqe=({children:A})=>N("div",{className:"library-menu-items-container__grid",children:A}),XfA=gi(({items:A,onItemSelectToggle:e,onItemDrag:t,isItemSelected:r,onClick:i,svgCache:u,itemsRenderedPerBatch:a})=>{let[,n]=HEr(),[o,s]=we(0);return le(()=>{o<A.length&&n(()=>{s(o+a)})},[o,A.length,n,a]),N(At,{children:A.map((l,g)=>g<o?N(MEr,{elements:l?.elements,isPending:!l?.id&&!!l?.elements,onClick:i,svgCache:u,id:l?.id,selected:r(l.id),onToggle:e,onDrag:t},l?.id??g):N(TEr,{},g))})}),KEr=On(0),JEr=(A)=>{let[e,t]=Ka(KEr);return le(()=>{let{current:r}=A;if(!r)return;let i=jze.default(()=>{let{scrollTop:u}=r;t(u)},200);return r.addEventListener("scroll",i),()=>{i.cancel(),r.removeEventListener("scroll",i)}},[A,t]),e},OEr=17,PEr=64;function _Er({isLoading:A,libraryItems:e,onAddToLibrary:t,onInsertLibraryItems:r,pendingElements:i,theme:u,id:a,libraryReturnUrl:n,onSelectItems:o,selectedItems:s}){let l=Ee(null),g=JEr(l);le(()=>{g>0&&l.current?.scrollTo(0,g)},[]);let{svgCache:C}=Oze(),B=Ut(()=>e.filter((v)=>v.status!=="published"),[e]),E=Ut(()=>e.filter((v)=>v.status==="published"),[e]),d=!e.length&&!i.length,I=!i.length&&!B.length&&!E.length,[h,Q]=we(null),p=st((v,S)=>{let x=!s.includes(v),F=[...B,...E];if(x){if(S.shiftKey&&h){let T=F.findIndex((U)=>U.id===h),R=F.findIndex((U)=>U.id===v);if(T===-1||R===-1){o([...s,v]);return}let L=ar(s),M=F.reduce((U,Y,H)=>((H>=T&&H<=R||L.has(Y.id))&&U.push(Y.id),U),[]);o(M)}else o([...s,v]);Q(v)}else Q(null),o(s.filter((T)=>T!==v))},[h,o,E,s,B]),m=st((v)=>{let S;return s.includes(v)?S=e.filter((x)=>s.includes(x.id)):S=e.filter((x)=>x.id===v),S.map((x)=>({...x,elements:qhA(x.elements,{randomizeSeed:!0})}))},[e,s]),f=st((v,S)=>{S.dataTransfer.setData(jt.excalidrawlib,ZhA(m(v)))},[m]),D=st((v)=>v?s.includes(v):!1,[s]),w=st(()=>{t(i)},[i,t]),b=st((v)=>{v&&r(m(v))},[m,r]),k=C.size>=e.length?PEr:OEr;return cA("div",{className:"library-menu-items-container",style:i.length||B.length||E.length?{justifyContent:"flex-start"}:{borderBottom:0},children:[!I&&N(hqe,{selectedItems:s,onSelectItems:o,className:"library-menu-dropdown-container--in-heading"}),cA(Wc.Col,{className:"library-menu-items-container__items",align:"start",gap:1,style:{flex:E.length>0?1:"0 1 auto",marginBottom:0},ref:l,children:[cA(At,{children:[!I&&N("div",{className:"library-menu-items-container__header",children:uA("labels.personalLib")}),A&&N("div",{style:{position:"absolute",top:"var(--container-padding-y)",right:"var(--container-padding-x)",transform:"translateY(50%)"},children:N(_h,{})}),!i.length&&!B.length?cA("div",{className:"library-menu-items__no-items",children:[N("div",{className:"library-menu-items__no-items__label",children:uA("library.noItems")}),N("div",{className:"library-menu-items__no-items__hint",children:E.length>0?uA("library.hint_emptyPrivateLibrary"):uA("library.hint_emptyLibrary")})]}):cA(Qqe,{children:[i.length>0&&N(XfA,{itemsRenderedPerBatch:k,items:[{id:null,elements:i}],onItemSelectToggle:p,onItemDrag:f,onClick:w,isItemSelected:D,svgCache:C}),N(XfA,{itemsRenderedPerBatch:k,items:B,onItemSelectToggle:p,onItemDrag:f,onClick:b,isItemSelected:D,svgCache:C})]})]}),cA(At,{children:[(E.length>0||i.length>0||B.length>0)&&N("div",{className:"library-menu-items-container__header library-menu-items-container__header--excal",children:uA("labels.excalidrawLib")}),E.length>0?N(Qqe,{children:N(XfA,{itemsRenderedPerBatch:k,items:E,onItemSelectToggle:p,onItemDrag:f,onClick:b,isItemSelected:D,svgCache:C})}):B.length>0?N("div",{style:{margin:"1rem 0",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",width:"100%",fontSize:".9rem"},children:uA("library.noItems")}):null]}),d&&N(_ze,{style:{padding:"16px 0",width:"100%"},id:a,libraryReturnUrl:n,theme:u,children:N(hqe,{selectedItems:s,onSelectItems:o})})]})]})}var T3A=On(!1),pqe=({children:A})=>N("div",{className:"layer-ui__library",children:A}),WEr=gi(({onInsertLibraryItems:A,pendingElements:e,onAddToLibrary:t,setAppState:r,libraryReturnUrl:i,library:u,id:a,theme:n,selectedItems:o,onSelectItems:s})=>{let[l]=Ka(GL),g=st((E)=>{(async(d,I)=>{Nu("element","addToLibrary","ui");for(let Q of cIA)if(d.some((p)=>p.type===Q))return r({errorMessage:uA(`errors.libraryElementTypeError.${Q}`)});let h=[{status:"unpublished",elements:d,id:kg(),created:Date.now()},...I];t(),u.setLibrary(h).catch(()=>{r({errorMessage:uA("alerts.errorAddingToLibrary")})})})(E,l.libraryItems)},[t,u,r,l.libraryItems]),C=Ut(()=>l.libraryItems,[l]);if(l.status==="loading"&&!l.isInitialized)return N(pqe,{children:N("div",{className:"layer-ui__library-message",children:cA("div",{children:[N(_h,{size:"2em"}),N("span",{children:uA("labels.libraryLoadingMessage")})]})})});let B=l.libraryItems.length>0||e.length>0;return cA(pqe,{children:[N(_Er,{isLoading:l.status==="loading",libraryItems:C,onAddToLibrary:g,onInsertLibraryItems:A,pendingElements:e,id:a,libraryReturnUrl:i,theme:n,onSelectItems:s,selectedItems:o}),B&&N(_ze,{className:"library-menu-control-buttons--at-bottom",style:{padding:"16px 12px 0 12px"},id:a,libraryReturnUrl:i,theme:n})]})}),$fA=(A,e)=>({elements:A,pending:Or(A,{selectedElementIds:e},{includeBoundTextElement:!0,includeElementsInFrames:!0}),selectedElementIds:e}),qEr=(A,e)=>{let t=pZ(),[r,i]=we(()=>$fA(t,A.selectedElementIds)),u=Ee(new Map);return le(()=>{for(let a of r.pending)u.current.set(a.id,a.version)},[r.pending]),le(()=>{e.state.cursorButton==="up"&&e.state.activeTool.type==="selection"&&i((a)=>{if(!zo(a.selectedElementIds,A.selectedElementIds))return u.current.clear(),$fA(t,A.selectedElementIds);let n=e.scene.getNonDeletedElementsMap();for(let o of Object.keys(A.selectedElementIds)){let s=n.get(o)?.version;if(s&&s!==u.current.get(o))return $fA(t,A.selectedElementIds)}return a})},[e,e.state.cursorButton,e.state.activeTool.type,A.selectedElementIds,t]),r.pending},zEr=gi(()=>{let A=Nd(),{onInsertElements:e}=A,t=KL(),r=k0(),i=qn(),[u,a]=we([]),n=Ut(()=>A.library,[A.library]),o=qEr(r,A),s=st((g)=>{e(Pze(g))},[e]),l=st(()=>{i({selectedElementIds:{},selectedGroupIds:{},activeEmbeddable:null})},[i]);return N(WEr,{pendingElements:o,onInsertLibraryItems:s,onAddToLibrary:l,setAppState:i,libraryReturnUrl:t.libraryReturnUrl,library:n,id:A.id,theme:r.theme,selectedItems:u,onSelectItems:a})});function ZEr(A){if(A&&typeof A=="number")return A;switch(A){case"small":return 550;case"wide":return 1024;case"regular":default:return 800}}var FB=(A)=>{let[e,t]=tEr(),[r]=we(document.activeElement),{id:i}=Gd(),u=vo().viewport.isMobile;le(()=>{if(!e)return;let s=H_(e);setTimeout(()=>{s.length>0&&A.autofocus!==!1&&(s[1]||s[0]).focus()});let l=(g)=>{if(g.key===PA.TAB){let C=H_(e),{activeElement:B}=document,E=C.findIndex((d)=>d===B);E===0&&g.shiftKey?(C[C.length-1].focus(),g.preventDefault()):E===C.length-1&&!g.shiftKey&&(C[0].focus(),g.preventDefault())}};return e.addEventListener("keydown",l),()=>e.removeEventListener("keydown",l)},[e,A.autofocus]);let a=qn(),n=lZ(T3A),o=()=>{a({openMenu:null}),n(!1),r.focus(),A.onCloseRequest()};return N(rEr,{className:Se("Dialog",A.className,{"Dialog--fullscreen":u}),labelledBy:"dialog-title",maxWidth:ZEr(A.size),onCloseRequest:o,closeOnClickOutside:A.closeOnClickOutside,children:cA(kB,{ref:t,children:[A.title&&N("h2",{id:`${i}-dialog-title`,className:"Dialog__title",children:N("span",{className:"Dialog__titleContent",children:A.title})}),u&&N("button",{className:"Dialog__close",onClick:o,title:uA("buttons.close"),"aria-label":uA("buttons.close"),type:"button",children:u2}),N("div",{className:"Dialog__content",children:A.children})]})})},P2=({type:A="button",onSelect:e,selected:t,children:r,className:i="",...u})=>N("button",{onClick:H8(u.onClick,(a)=>{e()}),type:A,className:Se("excalidraw-button",i,{selected:t}),...u,children:r}),Y3A=mt(({onChange:A,label:e,fullWidth:t,placeholder:r,readonly:i,selectOnRender:u,onKeyDown:a,isRedacted:n=!1,icon:o,className:s,...l},g)=>{let C=Ee(null);Gm(g,()=>C.current),Ii(()=>{u&&(C.current?.focus(),C.current?.select())},[u]);let[B,E]=we(!1);return cA("div",{className:Se("ExcTextField",s,{"ExcTextField--fullWidth":t,"ExcTextField--hasIcon":!!o}),onClick:()=>{C.current?.focus()},children:[o,e&&N("div",{className:"ExcTextField__label",children:e}),cA("div",{className:Se("ExcTextField__input",{"ExcTextField__input--readonly":i}),children:[N("input",{className:Se({"is-redacted":"value"in l&&l.value&&n&&!B}),readOnly:i,value:"value"in l?l.value:void 0,defaultValue:"defaultValue"in l?l.defaultValue:void 0,placeholder:r,ref:C,onChange:(d)=>A?.(d.target.value),onKeyDown:a}),n&&N(P2,{onSelect:()=>E(!B),style:{border:0,userSelect:"none"},children:B?vhe:AW})]})]})}),VEr={toggleTheme:[Fe("Shift+Alt+D")],saveScene:[Fe("CtrlOrCmd+S")],loadScene:[Fe("CtrlOrCmd+O")],clearCanvas:[Fe("CtrlOrCmd+Delete")],imageExport:[Fe("CtrlOrCmd+Shift+E")],commandPalette:[Fe("CtrlOrCmd+/"),Fe("CtrlOrCmd+Shift+P")],cut:[Fe("CtrlOrCmd+X")],copy:[Fe("CtrlOrCmd+C")],paste:[Fe("CtrlOrCmd+V")],copyStyles:[Fe("CtrlOrCmd+Alt+C")],pasteStyles:[Fe("CtrlOrCmd+Alt+V")],selectAll:[Fe("CtrlOrCmd+A")],deleteSelectedElements:[Fe("Delete")],duplicateSelection:[Fe("CtrlOrCmd+D"),Fe(`Alt+${uA("helpDialog.drag")}`)],sendBackward:[Fe("CtrlOrCmd+[")],bringForward:[Fe("CtrlOrCmd+]")],sendToBack:[rB?Fe("CtrlOrCmd+Alt+["):Fe("CtrlOrCmd+Shift+[")],bringToFront:[rB?Fe("CtrlOrCmd+Alt+]"):Fe("CtrlOrCmd+Shift+]")],copyAsPng:[Fe("Shift+Alt+C")],group:[Fe("CtrlOrCmd+G")],ungroup:[Fe("CtrlOrCmd+Shift+G")],gridMode:[Fe("CtrlOrCmd+'")],zenMode:[Fe("Alt+Z")],objectsSnapMode:[Fe("Alt+S")],stats:[Fe("Alt+/")],addToLibrary:[],flipHorizontal:[Fe("Shift+H")],flipVertical:[Fe("Shift+V")],viewMode:[Fe("Alt+R")],hyperlink:[Fe("CtrlOrCmd+K")],toggleElementLock:[Fe("CtrlOrCmd+Shift+L")],resetZoom:[Fe("CtrlOrCmd+0")],zoomOut:[Fe("CtrlOrCmd+-")],zoomIn:[Fe("CtrlOrCmd++")],zoomToFitSelection:[Fe("Shift+3")],zoomToFit:[Fe("Shift+1")],zoomToFitSelectionInViewport:[Fe("Shift+2")],toggleEraserTool:[Fe("E")],toggleHandTool:[Fe("H")],setFrameAsActiveTool:[Fe("F")],saveFileToDisk:[Fe("CtrlOrCmd+S")],saveToActiveFile:[Fe("CtrlOrCmd+S")],toggleShortcuts:[Fe("?")],searchMenu:[Fe("CtrlOrCmd+F")],wrapSelectionInFrame:[]},is=(A,e=0)=>{let t=VEr[A];return t&&t.length>0?t[e]||t[0]:""},jEr="\\u0300-\\u036f",XEr="\\ufe20-\\ufe2f",$Er="\\u20d0-\\u20ff",Adr=jEr+XEr+$Er,edr=`[${Adr}]`,tdr=RegExp(edr,"g"),rdr=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,idr={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"E",æ:"e",Þ:"T",þ:"t",ß:"s",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"I",ij:"i",Œ:"E",œ:"e",ʼn:"n",ſ:"s"},fqe=(A)=>A.replace(rdr,(e)=>idr[e]||e).replace(tdr,""),$ze=wi(null),Zs=()=>Li($ze),udr=eq(),adr=()=>Ut(()=>({MainMenuTunnel:wB(),WelcomeScreenMenuHintTunnel:wB(),WelcomeScreenToolbarHintTunnel:wB(),WelcomeScreenHelpHintTunnel:wB(),WelcomeScreenCenterTunnel:wB(),FooterCenterTunnel:wB(),DefaultSidebarTriggerTunnel:wB(),DefaultSidebarTabTriggersTunnel:wB(),OverwriteConfirmDialogTunnel:wB(),TTDDialogTriggerTunnel:wB(),tunnelsJotai:udr}),[]),AZe=(A,e)=>{let t=e[0]?.type||null;for(let r of e)if(r.type!==t){t=null;break}return nW(A.activeTool.type)&&A.activeTool.type!=="image"&&t!=="image"&&t!=="frame"&&t!=="magicframe"||e.some((r)=>nW(r.type))},eZe=(A,e)=>n2(A.activeTool.type)||e.some((t)=>n2(t.type)),tZe=({appState:A,elementsMap:e,renderAction:t,app:r})=>{let i=mQA(e,A),u=!1;i.length===2&&(Ul(i[0])||Ul(i[1]))&&(u=!0);let a=!!(A.editingTextElement||A.newElement),n=vo(),o=document.documentElement.getAttribute("dir")==="rtl",s=n2(A.activeTool.type)&&!vc(A.currentItemBackgroundColor)||i.some((E)=>n2(E.type)&&!vc(E.backgroundColor)),l=i.length===1||u,g=!A.editingLinearElement&&i.length===1&&Gr(i[0])&&!pt(i[0]),C=!A.croppingElementId&&i.length===1&&Ni(i[0]),B=!u&&Tg(A,r);return cA("div",{className:"panelColumn",children:[N("div",{children:AZe(A,i)&&t("changeStrokeColor")}),eZe(A,i)&&N("div",{children:t("changeBackgroundColor")}),s&&t("changeFillStyle"),(QhA(A.activeTool.type)||i.some((E)=>QhA(E.type)))&&t("changeStrokeWidth"),(A.activeTool.type==="freedraw"||i.some((E)=>E.type==="freedraw"))&&t("changeStrokeShape"),(phA(A.activeTool.type)||i.some((E)=>phA(E.type)))&&cA(At,{children:[t("changeStrokeStyle"),t("changeSloppiness")]}),(oW(A.activeTool.type)||i.some((E)=>oW(E.type)))&&N(At,{children:t("changeRoundness")}),(fhA(A.activeTool.type)||i.some((E)=>fhA(E.type)))&&N(At,{children:t("changeArrowType")}),(A.activeTool.type==="text"||i.some(Bt))&&cA(At,{children:[t("changeFontFamily"),t("changeFontSize"),(A.activeTool.type==="text"||zQe(i,e))&&t("changeTextAlign")]}),qQe(i,e)&&t("changeVerticalAlign"),(Z8(A.activeTool.type)||i.some((E)=>Z8(E.type)))&&N(At,{children:t("changeArrowhead")}),t("changeOpacity"),cA("fieldset",{children:[N("legend",{children:uA("labels.layers")}),cA("div",{className:"buttonList",children:[t("sendToBack"),t("sendBackward"),t("bringForward"),t("bringToFront")]})]}),B&&!u&&cA("fieldset",{children:[N("legend",{children:uA("labels.align")}),cA("div",{className:"buttonList",children:[o?cA(At,{children:[t("alignRight"),t("alignHorizontallyCentered"),t("alignLeft")]}):cA(At,{children:[t("alignLeft"),t("alignHorizontallyCentered"),t("alignRight")]}),i.length>2&&t("distributeHorizontally"),N("div",{style:{flexBasis:"100%",height:0}}),cA("div",{style:{display:"flex",flexWrap:"wrap",gap:".5rem",marginTop:"-0.5rem"},children:[t("alignTop"),t("alignVerticallyCentered"),t("alignBottom"),i.length>2&&t("distributeVertically")]})]})]}),!a&&i.length>0&&cA("fieldset",{children:[N("legend",{children:uA("labels.actions")}),cA("div",{className:"buttonList",children:[!n.editor.isMobile&&t("duplicateSelection"),!n.editor.isMobile&&t("deleteSelectedElements"),t("group"),t("ungroup"),l&&t("hyperlink"),C&&t("cropEditor"),g&&t("toggleLinearEditor")]})]})]})},rZe=({activeTool:A,appState:e,app:t,UIOptions:r})=>{let[i,u]=we(!1),a=A.type==="frame",n=A.type==="laser",o=A.type==="embeddable",{TTDDialogTriggerTunnel:s}=Zs();return cA(At,{children:[uW.map(({value:l,icon:g,key:C,numericKey:B,fillable:E},d)=>{if(r.tools?.[l]===!1)return null;let I=uA(`toolBar.${l}`),h=C&&f9(typeof C=="string"?C:C[0]),Q=h?`${h} ${uA("helpDialog.or")} ${B}`:`${B}`;return N(ci,{className:Se("Shape",{fillable:E}),type:"radio",icon:g,checked:A.type===l,name:"editor-current-shape",title:`${f9(I)} — ${Q}`,keyBindingLabel:B||h,"aria-label":f9(I),"aria-keyshortcuts":Q,"data-testid":`toolbar-${l}`,onPointerDown:({pointerType:p})=>{!e.penDetected&&p==="pen"&&t.togglePenMode(!0)},onChange:({pointerType:p})=>{e.activeTool.type!==l&&Nu("toolbar",l,"ui"),l==="image"?t.setActiveTool({type:l,insertOnCanvasDirectly:p!=="mouse"}):t.setActiveTool({type:l})}},l)}),N("div",{className:"App-toolbar__divider"}),cA(Hu,{open:i,children:[N(Hu.Trigger,{className:Se("App-toolbar__extra-tools-trigger",{"App-toolbar__extra-tools-trigger--selected":a||o||n&&!t.props.isCollaborating}),onToggle:()=>u(!i),title:uA("toolBar.extraTools"),children:whe}),cA(Hu.Content,{onClickOutside:()=>u(!1),onSelect:()=>u(!1),className:"App-toolbar__extra-tools-dropdown",children:[N(Hu.Item,{onSelect:()=>t.setActiveTool({type:"frame"}),icon:uhA,shortcut:PA.F.toLocaleUpperCase(),"data-testid":"toolbar-frame",selected:a,children:uA("toolBar.frame")}),N(Hu.Item,{onSelect:()=>t.setActiveTool({type:"embeddable"}),icon:mIe,"data-testid":"toolbar-embeddable",selected:o,children:uA("toolBar.embeddable")}),N(Hu.Item,{onSelect:()=>t.setActiveTool({type:"laser"}),icon:nhA,"data-testid":"toolbar-laser",selected:n,shortcut:PA.K.toLocaleUpperCase(),children:uA("toolBar.laser")}),N("div",{style:{margin:"6px 0",fontSize:14,fontWeight:600},children:"Generate"}),t.props.aiEnabled!==!1&&N(s.Out,{}),N(Hu.Item,{onSelect:()=>t.setOpenDialog({name:"ttd",tab:"mermaid"}),icon:ahA,"data-testid":"toolbar-embeddable",children:uA("toolBar.mermaidToExcalidraw")}),t.props.aiEnabled!==!1&&t.plugins.diagramToCode&&N(At,{children:cA(Hu.Item,{onSelect:()=>t.onMagicframeToolSelect(),icon:ohA,"data-testid":"toolbar-magicframe",children:[uA("toolBar.magicframe"),N(Hu.Item.Badge,{children:"AI"})]})})]})]})]})},ndr=({renderAction:A,zoom:e})=>N(Wc.Col,{gap:1,className:Vm.ZOOM_ACTIONS,children:cA(Wc.Row,{align:"center",children:[A("zoomOut"),A("resetZoom"),A("zoomIn")]})}),odr=({renderAction:A,className:e})=>cA("div",{className:`undo-redo-buttons ${e}`,children:[N("div",{className:"undo-button-container",children:N(O2,{label:uA("buttons.undo"),children:A("undo")})}),N("div",{className:"redo-button-container",children:cA(O2,{label:uA("buttons.redo"),children:[" ",A("redo")]})})]}),sdr=({actionManager:A,showExitZenModeBtn:e})=>N("button",{type:"button",className:Se("disable-zen-mode",{"disable-zen-mode--visible":e}),onClick:()=>A.executeAction(h3A),children:uA("buttons.exitZenMode")}),ldr=({renderAction:A,className:e})=>N("div",{className:`finalize-button ${e}`,children:A("finalize",{size:"small"})}),mqe=(A)=>{let e=Ee({userFn:A});return e.current.userFn=A,e.current.stableFn||(e.current.stableFn=(...t)=>e.current.userFn(...t)),e.current.stableFn},QZ=On(null),gdr=()=>{let[A,e]=Ka(QZ),t=Pl();return A&&A==="clearCanvas"?N(Wze,{onConfirm:()=>{t.executeAction(SL),e(null)},onCancel:()=>e(null),title:uA("clearCanvasDialog.title"),children:cA("p",{className:"clear-canvas__content",children:[" ",uA("alerts.clearReset")]})}):null},iZe={};QEA(iZe,{toggleTheme:()=>cdr});var cdr={...uZ,category:"App",label:"Toggle theme",perform:({actionManager:A})=>{A.executeAction(uZ,"commandPalette")}},uZe=at({name:"copyElementLink",label:"labels.copyElementLink",icon:$_,trackEvent:{category:"element"},perform:async(A,e,t,r)=>{let i=Or(A,e);try{if(window.location){let u=tQA(i,e);return u?(await G9(r.props.generateLinkForSelection?r.props.generateLinkForSelection(u.id,u.type):eQA(u.id,u.type)),{appState:{toast:{message:uA("toast.elementLinkCopied"),closable:!0}},captureUpdate:be.EVENTUALLY}):{appState:e,elements:A,app:r,captureUpdate:be.EVENTUALLY}}}catch(u){console.error(u)}return{appState:e,elements:A,app:r,captureUpdate:be.EVENTUALLY}},predicate:(A,e)=>uS(Or(A,e))}),Cdr=at({name:"linkToElement",label:"labels.linkToElement",icon:ChA,perform:(A,e,t,r)=>{let i=Or(A,e);return i.length!==1||!uS(i)?{elements:A,appState:e,app:r,captureUpdate:be.EVENTUALLY}:{appState:{...e,openDialog:{name:"elementLinkSelector",sourceElementId:Or(A,e)[0].id}},captureUpdate:be.IMMEDIATELY}},predicate:(A,e,t,r)=>{let i=Or(A,e);return e.openDialog?.name!=="elementLinkSelector"&&i.length===1&&uS(i)},trackEvent:!1}),Bdr=On(null),un={app:"App",export:"Export",tools:"Tools",editor:"Editor",elements:"Elements",links:"Links"},Edr=(A)=>{switch(A){case un.app:return 1;case un.export:return 2;case un.editor:return 3;case un.tools:return 4;case un.elements:return 5;case un.links:return 6;default:return 10}},rZ=({shortcut:A,className:e,children:t})=>{let r=A.replace("++","+$").split("+");return cA("div",{className:Se("shortcut",e),children:[r.map((i,u)=>N("div",{className:"shortcut-wrapper",children:N("div",{className:"shortcut-key",children:i==="$"?"+":i})},i)),N("div",{className:"shortcut-desc",children:t})]})},aZe=(A)=>!A.altKey&&A[PA.CTRL_OR_CMD]&&(A.shiftKey&&A.key.toLowerCase()===PA.P||A.key===PA.SLASH),M8i=Object.assign((A)=>{let e=k0(),t=qn();return le(()=>{let r=(i)=>{aZe(i)&&(i.preventDefault(),i.stopPropagation(),t((u)=>{let a=u.openDialog?.name==="commandPalette"?null:{name:"commandPalette"};return a&&Nu("command_palette","open","shortcut"),{openDialog:a}}))};return window.addEventListener("keydown",r,{capture:!0}),()=>window.removeEventListener("keydown",r,{capture:!0})},[t]),e.openDialog?.name!=="commandPalette"?null:N(ddr,{...A})},{defaultItems:iZe});function ddr({customCommandPaletteItems:A}){let e=Nd(),t=k0(),r=qn(),i=KL(),u=Pl(),[a,n]=Ka(Bdr),[o,s]=we(null),l=Ee(null),g=cZ({uiAppState:t,customCommandPaletteItems:A,appProps:i});le(()=>{let{uiAppState:D,customCommandPaletteItems:w,appProps:b}=g,k=(F)=>{let T="";return F.label&&(typeof F.label=="function"?T=uA(F.label(e.scene.getNonDeletedElements(),D,e)):T=uA(F.label)),T},v=(F)=>typeof F.icon=="function"?F.icon(D,e.scene.getNonDeletedElements()):F.icon,S=[],x=(F,T,R)=>{let L={label:k(F),icon:v(F),category:T,shortcut:is(F.name),keywords:F.keywords,predicate:F.predicate,viewMode:F.viewMode,perform:()=>{u.executeAction(F,"commandPalette")}};return R?R(L,F):L};if(D&&e.scene&&u){let F=[u.actions.group,u.actions.ungroup,u.actions.cut,u.actions.copy,u.actions.deleteSelectedElements,u.actions.wrapSelectionInFrame,u.actions.copyStyles,u.actions.pasteStyles,u.actions.bringToFront,u.actions.bringForward,u.actions.sendBackward,u.actions.sendToBack,u.actions.alignTop,u.actions.alignBottom,u.actions.alignLeft,u.actions.alignRight,u.actions.alignVerticallyCentered,u.actions.alignHorizontallyCentered,u.actions.duplicateSelection,u.actions.flipHorizontal,u.actions.flipVertical,u.actions.zoomToFitSelection,u.actions.zoomToFitSelectionInViewport,u.actions.increaseFontSize,u.actions.decreaseFontSize,u.actions.toggleLinearEditor,u.actions.cropEditor,Kze,uZe,Cdr].map((Y)=>x(Y,un.elements,(H,J)=>({...H,predicate:J.predicate?J.predicate:(K,O,P,z)=>Or(K,O).length>0}))),T=[u.actions.toggleHandTool,u.actions.setFrameAsActiveTool].map((Y)=>x(Y,un.tools)),R=[u.actions.undo,u.actions.redo,u.actions.zoomIn,u.actions.zoomOut,u.actions.resetZoom,u.actions.zoomToFit,u.actions.zenMode,u.actions.viewMode,u.actions.gridMode,u.actions.objectsSnapMode,u.actions.toggleShortcuts,u.actions.selectAll,u.actions.toggleElementLock,u.actions.unlockAllElements,u.actions.stats].map((Y)=>x(Y,un.editor)),L=[u.actions.saveToActiveFile,u.actions.saveFileToDisk,u.actions.copyAsPng,u.actions.copyAsSvg].map((Y)=>x(Y,un.export));S=[...F,...R,{label:k(SL),icon:v(SL),shortcut:is(SL.name),category:un.editor,keywords:["delete","destroy"],viewMode:!1,perform:()=>{vB.set(QZ,"clearCanvas")}},{label:uA("buttons.exportImage"),category:un.export,icon:YIA,shortcut:is("imageExport"),keywords:["export","image","png","jpeg","svg","clipboard","picture"],perform:()=>{r({openDialog:{name:"imageExport"}})}},...L];let M=[{label:uA("toolBar.library"),category:un.app,icon:P_,viewMode:!1,perform:()=>{D.openSidebar?r({openSidebar:null}):r({openSidebar:{name:Gc.name,tab:Gc.defaultTab}})}},{label:uA("search.title"),category:un.app,icon:q1,viewMode:!0,perform:()=>{u.executeAction(nZe)}},{label:uA("labels.changeStroke"),keywords:["color","outline"],category:un.elements,icon:X_,viewMode:!1,predicate:(Y,H)=>{let J=Or(Y,H);return J.length>0&&AZe(H,J)},perform:()=>{r((Y)=>({openMenu:Y.openMenu==="shape"?null:"shape",openPopup:"elementStroke"}))}},{label:uA("labels.changeBackground"),keywords:["color","fill"],icon:X_,category:un.elements,viewMode:!1,predicate:(Y,H)=>{let J=Or(Y,H);return J.length>0&&eZe(H,J)},perform:()=>{r((Y)=>({openMenu:Y.openMenu==="shape"?null:"shape",openPopup:"elementBackground"}))}},{label:uA("labels.canvasBackground"),keywords:["color"],icon:X_,category:un.editor,viewMode:!1,perform:()=>{r((Y)=>({openMenu:Y.openMenu==="canvas"?null:"canvas",openPopup:"canvasBackground"}))}},...uW.reduce((Y,H)=>{let{value:J,icon:K,key:O,numericKey:P}=H;if(b.UIOptions.tools?.[J]===!1)return Y;let z=O&&f9(typeof O=="string"?O:O[0])||P,AA={label:uA(`toolBar.${J}`),category:un.tools,shortcut:z,icon:K,keywords:["toolbar"],viewMode:!1,perform:({event:W})=>{J==="image"?e.setActiveTool({type:J,insertOnCanvasDirectly:W.type==="keydown"}):e.setActiveTool({type:J})}};return Y.push(AA),Y},[]),...T,{label:uA("toolBar.lock"),category:un.tools,icon:D.activeTool.locked?__:P8,shortcut:PA.Q.toLocaleUpperCase(),viewMode:!1,perform:()=>{e.toggleLock()}},{label:`${uA("labels.textToDiagram")}...`,category:un.tools,icon:Fhe,viewMode:!1,predicate:b.aiEnabled,perform:()=>{r((Y)=>({...Y,openDialog:{name:"ttd",tab:"text-to-diagram"}}))}},{label:`${uA("toolBar.mermaidToExcalidraw")}...`,category:un.tools,icon:ahA,viewMode:!1,predicate:b.aiEnabled,perform:()=>{r((Y)=>({...Y,openDialog:{name:"ttd",tab:"mermaid"}}))}}],U=[...S,...M,...w||[]].map((Y)=>({...Y,icon:Y.icon||shA,order:Y.order??Edr(Y.category),haystack:`${fqe(Y.label.toLocaleLowerCase())} ${Y.keywords?.join(" ")||""}`}));s(U),n(U.find((Y)=>Y.label===a?.label)??null)}},[g,e,u,s,a?.label,n,r]);let[C,B]=we(""),[E,d]=we(null),[I,h]=we({}),Q=(D)=>{r({openDialog:null},D),B("")},p=(D,w)=>{t.openDialog?.name==="commandPalette"&&(w.stopPropagation(),w.preventDefault(),document.body.classList.add("excalidraw-animations-disabled"),Q(()=>{D.perform({actionManager:u,event:w}),n(D),requestAnimationFrame(()=>{document.body.classList.remove("excalidraw-animations-disabled")})}))},m=mqe((D)=>D.viewMode===!1&&t.viewModeEnabled?!1:typeof D.predicate=="function"?D.predicate(e.scene.getNonDeletedElements(),t,i,e):D.predicate===void 0||D.predicate),f=mqe((D)=>{let w=H1(D.target)||aZe(D)||D.key===PA.ESCAPE;if(w&&D.key!==PA.ARROW_UP&&D.key!==PA.ARROW_DOWN&&D.key!==PA.ENTER)return;let b=Object.values(I).flat(),k=a&&!C&&m(a);if(D.key===PA.ARROW_UP){D.preventDefault();let v=b.findIndex((F)=>F.label===E?.label);if(k){if(v===0){d(a);return}if(E===a){let F=b[b.length-1];F&&d(F);return}}let S;v===-1?S=b.length-1:S=v===0?b.length-1:(v-1)%b.length;let x=b[S];x&&d(x);return}if(D.key===PA.ARROW_DOWN){D.preventDefault();let v=b.findIndex((F)=>F.label===E?.label);if(k){if(!E||v===b.length-1){d(a);return}if(E===a){let F=b[0];F&&d(F);return}}let S=(v+1)%b.length,x=b[S];x&&d(x);return}if(D.key===PA.ENTER&&E&&setTimeout(()=>{p(E,D)}),!w){if(D.stopPropagation(),/^[a-zA-Z0-9]$/.test(D.key)){l?.current?.focus();return}D.preventDefault()}});return le(()=>(window.addEventListener("keydown",f,{capture:!0}),()=>window.removeEventListener("keydown",f,{capture:!0})),[f]),le(()=>{if(!o)return;let D=(v)=>{let S={};for(let x of v)S[x.category]?S[x.category].push(x):S[x.category]=[x];return S},w=o.filter(m).sort((v,S)=>v.order-S.order),b=!C&&a&&m(a);if(!C){h(D(b?w.filter((v)=>v.label!==a?.label):w)),d(b?a:w[0]||null);return}let k=fqe(C.toLocaleLowerCase().replace(/[<>_| -]/g,""));w=Xze.default.filter(k,w,{extract:(v)=>v.haystack}).sort((v,S)=>S.score-v.score).map((v)=>v.original),h(D(w)),d(w[0]??null)},[C,o,m,a]),cA(FB,{onCloseRequest:()=>Q(),closeOnClickOutside:!0,title:!1,size:720,autofocus:!0,className:"command-palette-dialog",children:[N(Y3A,{value:C,placeholder:uA("commandPalette.search.placeholder"),onChange:(D)=>{B(D)},selectOnRender:!0,ref:l}),!e.device.viewport.isMobile&&cA("div",{className:"shortcuts-wrapper",children:[N(rZ,{shortcut:"↑↓",children:uA("commandPalette.shortcuts.select")}),N(rZ,{shortcut:"↵",children:uA("commandPalette.shortcuts.confirm")}),N(rZ,{shortcut:Fe("Esc"),children:uA("commandPalette.shortcuts.close")})]}),cA("div",{className:"commands",children:[a&&!C&&cA("div",{className:"command-category",children:[cA("div",{className:"command-category-title",children:[uA("commandPalette.recents"),N("div",{className:"icon",style:{marginLeft:"6px"},children:xhe})]}),N(Dqe,{command:a,isSelected:a.label===E?.label,onClick:(D)=>p(a,D),disabled:!m(a),onMouseMove:()=>d(a),showShortcut:!e.device.viewport.isMobile,appState:t})]}),Object.keys(I).length>0?Object.keys(I).map((D,w)=>cA("div",{className:"command-category",children:[N("div",{className:"command-category-title",children:D}),I[D].map((b)=>N(Dqe,{command:b,isSelected:b.label===E?.label,onClick:(k)=>p(b,k),onMouseMove:()=>d(b),showShortcut:!e.device.viewport.isMobile,appState:t},b.label))]},D)):o?cA("div",{className:"no-match",children:[N("div",{className:"icon",children:q1})," ",uA("commandPalette.search.noMatch")]}):null]})]})}var Dqe=({command:A,isSelected:e,disabled:t,onMouseMove:r,onClick:i,showShortcut:u,appState:a})=>{let n=()=>{};return cA("div",{className:Se("command-item",{"item-selected":e,"item-disabled":t}),ref:(o)=>{e&&!t&&o?.scrollIntoView?.({block:"nearest"})},onClick:t?n:i,onMouseMove:t?n:r,title:t?uA("commandPalette.itemNotAvailable"):"",children:[cA("div",{className:"name",children:[A.icon&&N(BZ,{icon:typeof A.icon=="function"?A.icon(a):A.icon}),A.label]}),u&&A.shortcut&&N(rZ,{shortcut:A.shortcut})]})},Idr=at({name:"toggleLinearEditor",category:un.elements,label:(A,e,t)=>t.scene.getSelectedElements({selectedElementIds:e.selectedElementIds})[0]?.type==="arrow"?"labels.lineEditor.editArrow":"labels.lineEditor.edit",keywords:["line"],trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);return!!(!e.editingLinearElement&&i.length===1&&Gr(i[0])&&!pt(i[0]))},perform(A,e,t,r){let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0})[0],u=e.editingLinearElement?.elementId===i.id?null:new It(i);return{appState:{...e,editingLinearElement:u},captureUpdate:be.IMMEDIATELY}},PanelComponent:({appState:A,updateData:e,app:t})=>{let r=t.scene.getSelectedElements({selectedElementIds:A.selectedElementIds})[0],i=uA(r.type==="arrow"?"labels.lineEditor.editArrow":"labels.lineEditor.edit");return N(ci,{type:"button",icon:Phe,title:i,"aria-label":i,onClick:()=>e(null)})}}),nZe=at({name:"searchMenu",icon:q1,keywords:["search","find"],label:"search.title",viewMode:!0,trackEvent:{category:"search_menu",action:"toggle",predicate:(A)=>A.gridModeEnabled},perform(A,e,t,r){if(e.openSidebar?.name===Gc.name&&e.openSidebar.tab===$m){let i=r.excalidrawContainerValue.container?.querySelector(`.${Vm.SEARCH_MENU_INPUT_WRAPPER} input`);return i?.matches(":focus")?{appState:{...e,openSidebar:null},captureUpdate:be.EVENTUALLY}:(i?.focus(),i?.select(),!1)}return{appState:{...e,openSidebar:{name:Gc.name,tab:$m},openDialog:null},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.gridModeEnabled,predicate:(A,e,t)=>t.gridModeEnabled===void 0,keyTest:(A)=>A[PA.CTRL_OR_CMD]&&A.key===PA.F}),hdr=at({name:"cropEditor",label:"helpDialog.cropStart",icon:chA,viewMode:!0,trackEvent:{category:"menu"},keywords:["image","crop"],perform(A,e,t,r){let i=r.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!0})[0];return{appState:{...e,isCropping:!1,croppingElementId:i.id},captureUpdate:be.IMMEDIATELY}},predicate:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e);return!!(!e.croppingElementId&&i.length===1&&Ni(i[0]))},PanelComponent:({appState:A,updateData:e,app:t})=>{let r=uA("helpDialog.cropStart");return N(ci,{type:"button",icon:chA,title:r,"aria-label":r,onClick:()=>e(null)})}}),aZ=class{constructor(A=!0,e=!0){this.isUndoStackEmpty=A,this.isRedoStackEmpty=e}},yqe=class A{constructor(){GA(this,"onHistoryChangedEmitter",new lB),GA(this,"undoStack",[]),GA(this,"redoStack",[])}get isUndoStackEmpty(){return this.undoStack.length===0}get isRedoStackEmpty(){return this.redoStack.length===0}clear(){this.undoStack.length=0,this.redoStack.length=0}record(e,t){let r=Qdr.create(t,e);r.isEmpty()||(this.undoStack.push(r.inverse()),r.elementsChange.isEmpty()||(this.redoStack.length=0),this.onHistoryChangedEmitter.trigger(new aZ(this.isUndoStackEmpty,this.isRedoStackEmpty)))}undo(e,t,r){return this.perform(e,t,r,()=>A.pop(this.undoStack),(i)=>A.push(this.redoStack,i,e))}redo(e,t,r){return this.perform(e,t,r,()=>A.pop(this.redoStack),(i)=>A.push(this.undoStack,i,e))}perform(e,t,r,i,u){try{let a=i();if(a===null)return;let n=e,o=t,s=!1;for(;a;){try{[n,o,s]=a.applyTo(n,o,r)}finally{u(a)}if(s)break;a=i()}return[n,o]}finally{this.onHistoryChangedEmitter.trigger(new aZ(this.isUndoStackEmpty,this.isRedoStackEmpty))}}static pop(e){if(!e.length)return null;let t=e.pop();return t!==void 0?t:null}static push(e,t,r){let i=t.inverse().applyLatestChanges(r);return e.push(i)}},Qdr=class A{constructor(e,t){this.appStateChange=e,this.elementsChange=t}static create(e,t){return new A(e,t)}inverse(){return new A(this.appStateChange.inverse(),this.elementsChange.inverse())}applyTo(e,t,r){let[i,u]=this.elementsChange.applyTo(e,r.elements),[a,n]=this.appStateChange.applyTo(t,i);return[i,a,u||n]}applyLatestChanges(e){let t=this.elementsChange.applyLatestChanges(e);return A.create(this.appStateChange,t)}isEmpty(){return this.appStateChange.isEmpty()&&this.elementsChange.isEmpty()}},oZe=(A,e)=>{let[t,r]=we(e);return le(()=>{let i=A.on((u)=>{r(u)});return()=>{i()}},[A]),t},sZe=(A,e,t)=>{if(!e.multiElement&&!e.resizingElement&&!e.editingTextElement&&!e.newElement&&!e.selectedElementsAreBeingDragged&&!e.selectionElement&&!A.flowChartCreator.isCreatingChart){let r=t();if(!r)return{captureUpdate:be.EVENTUALLY};let[i,u]=r,a=Array.from(i.values());return{appState:u,elements:a,captureUpdate:be.NEVER}}return{captureUpdate:be.EVENTUALLY}},pdr=(A,e)=>({name:"undo",label:"buttons.undo",icon:HIA,trackEvent:{category:"history"},viewMode:!1,perform:(t,r,i,u)=>sZe(u,r,()=>A.undo(ar(t),r,e.snapshot)),keyTest:(t)=>t[PA.CTRL_OR_CMD]&&rW(t,PA.Z)&&!t.shiftKey,PanelComponent:({updateData:t,data:r})=>{let{isUndoStackEmpty:i}=oZe(A.onHistoryChangedEmitter,new aZ(A.isUndoStackEmpty,A.isRedoStackEmpty));return N(ci,{type:"button",icon:HIA,"aria-label":uA("buttons.undo"),onClick:t,size:r?.size||"medium",disabled:i,"data-testid":"button-undo"})}}),fdr=(A,e)=>({name:"redo",label:"buttons.redo",icon:KIA,trackEvent:{category:"history"},viewMode:!1,perform:(t,r,i,u)=>sZe(u,r,()=>A.redo(ar(t),r,e.snapshot)),keyTest:(t)=>t[PA.CTRL_OR_CMD]&&t.shiftKey&&rW(t,PA.Z)||aIA&&t.ctrlKey&&!t.shiftKey&&rW(t,PA.Y),PanelComponent:({updateData:t,data:r})=>{let{isRedoStackEmpty:i}=oZe(A.onHistoryChangedEmitter,new aZ(A.isUndoStackEmpty,A.isRedoStackEmpty));return N(ci,{type:"button",icon:KIA,"aria-label":uA("buttons.redo"),onClick:t,size:r?.size||"medium",disabled:i,"data-testid":"button-redo"})}}),A3A=(A,e,t,r,i,u)=>{if(A.trackEvent)try{typeof A.trackEvent=="object"&&(!A.trackEvent.predicate||A.trackEvent.predicate(t,r,u))&&Nu(A.trackEvent.category,A.trackEvent.action||A.name,`${e} (${i.device.editor.isMobile?"mobile":"desktop"})`)}catch(a){console.error("error while logging action:",a)}},mdr=class{constructor(A,e,t,r){GA(this,"actions",{}),GA(this,"updater"),GA(this,"getAppState"),GA(this,"getElementsIncludingDeleted"),GA(this,"app"),GA(this,"renderAction",(i,u)=>{let a=this.app.props.UIOptions.canvasActions;if(this.actions[i]&&"PanelComponent"in this.actions[i]&&(!(i in a)||a[i])){let n=this.actions[i],o=n.PanelComponent;o.displayName="PanelComponent";let s=this.getElementsIncludingDeleted(),l=this.getAppState(),g=(C)=>{A3A(n,"ui",l,s,this.app,C),this.updater(n.perform(this.getElementsIncludingDeleted(),this.getAppState(),C,this.app))};return N(o,{elements:this.getElementsIncludingDeleted(),appState:this.getAppState(),updateData:g,appProps:this.app.props,app:this.app,data:u})}return null}),GA(this,"isActionEnabled",(i)=>{let u=this.getElementsIncludingDeleted(),a=this.getAppState();return!i.predicate||i.predicate(u,a,this.app.props,this.app)}),this.updater=(i)=>{if(D9(i))i.then((u)=>A(u));else return A(i)},this.getAppState=e,this.getElementsIncludingDeleted=t,this.app=r}registerAction(A){this.actions[A.name]=A}registerAll(A){A.forEach((e)=>this.registerAction(e))}handleKeyDown(A){let e=this.app.props.UIOptions.canvasActions,t=Object.values(this.actions).sort((n,o)=>(o.keyPriority||0)-(n.keyPriority||0)).filter((n)=>(n.name in e?e[n.name]:!0)&&n.keyTest&&n.keyTest(A,this.getAppState(),this.getElementsIncludingDeleted(),this.app));if(t.length!==1)return t.length>1&&console.warn("Canceling as multiple actions match this shortcut",t),!1;let r=t[0];if(this.getAppState().viewModeEnabled&&r.viewMode!==!0)return!1;let i=this.getElementsIncludingDeleted(),u=this.getAppState(),a=null;return A3A(r,"keyboard",u,i,this.app,null),A.preventDefault(),A.stopPropagation(),this.updater(t[0].perform(i,u,a,this.app)),!0}executeAction(A,e="api",t=null){let r=this.getElementsIncludingDeleted(),i=this.getAppState();A3A(A,e,i,r,this.app,t),this.updater(A.perform(r,i,t,this.app))}},wqe=(A)=>{let e=Array.from(A.values());return{x:vqe(e,(t)=>t.x)/e.length,y:vqe(e,(t)=>t.y)/e.length}},bqe=([A,e])=>Math.hypot(A.x-e.x,A.y-e.y),vqe=(A,e)=>A.reduce((t,r)=>t+e(r),0),Ddr=({children:A,left:e,top:t,onCloseRequest:r,fitInViewport:i=!1,offsetLeft:u=0,offsetTop:a=0,viewportWidth:n=window.innerWidth,viewportHeight:o=window.innerHeight})=>{let s=Ee(null);le(()=>{let g=s.current;if(!g)return;g.contains(document.activeElement)||g.focus();let C=(B)=>{if(B.key===PA.TAB){let E=H_(g),{activeElement:d}=document,I=E.findIndex((h)=>h===d);d===g?(B.shiftKey?E[E.length-1]?.focus():E[0].focus(),B.preventDefault(),B.stopImmediatePropagation()):I===0&&B.shiftKey?(E[E.length-1]?.focus(),B.preventDefault(),B.stopImmediatePropagation()):I===E.length-1&&!B.shiftKey&&(E[0]?.focus(),B.preventDefault(),B.stopImmediatePropagation())}};return g.addEventListener("keydown",C),()=>g.removeEventListener("keydown",C)},[]);let l=Ee(null);return Ii(()=>{if(i&&s.current&&t!=null&&e!=null){let g=s.current,{width:C,height:B}=g.getBoundingClientRect();if(l.current?.top===t&&l.current?.left===e)return;l.current={top:t,left:e},C>=n?(g.style.width=`${n}px`,g.style.left="0px",g.style.overflowX="scroll"):e+C-u>n?g.style.left=`${n-C-10}px`:g.style.left=`${e}px`,B>=o?(g.style.height=`${o-20}px`,g.style.top="10px",g.style.overflowY="scroll"):t+B-a>o?g.style.top=`${o-B}px`:g.style.top=`${t}px`}},[t,e,i,n,o,u,a]),le(()=>{if(r){let g=(C)=>{s.current?.contains(C.target)||f5(()=>r(C))};return document.addEventListener("pointerdown",g,!1),()=>document.removeEventListener("pointerdown",g,!1)}},[r]),N("div",{className:"popover",ref:s,tabIndex:-1,children:A})},bo="separator",ydr=gi(({actionManager:A,items:e,top:t,left:r,onClose:i})=>{let u=JL(),a=pZ(),n=e.reduce((o,s)=>(s&&(s===bo||!s.predicate||s.predicate(a,u,A.app.props,A.app))&&o.push(s),o),[]);return N(Ddr,{onCloseRequest:()=>{i()},top:t,left:r,fitInViewport:!0,offsetLeft:u.offsetLeft,offsetTop:u.offsetTop,viewportWidth:u.width,viewportHeight:u.height,children:N("ul",{className:"context-menu",onContextMenu:(o)=>o.preventDefault(),children:n.map((o,s)=>{if(o===bo)return!n[s-1]||n[s-1]===bo?null:N("hr",{className:"context-menu-item-separator"},s);let l=o.name,g="";return o.label&&(typeof o.label=="function"?g=uA(o.label(a,u,A.app)):g=uA(o.label)),N("li",{"data-testid":l,onClick:()=>{i(()=>{A.executeAction(o,"contextMenu")})},children:cA("button",{type:"button",className:Se("context-menu-item",{dangerous:l==="deleteSelectedElements",checkmark:o.checked?.(u)}),children:[N("div",{className:"context-menu-item__label",children:g}),N("kbd",{className:"context-menu-item__shortcut",children:l?is(l):""})]})},s)})})})}),wdr=({children:A,onClose:e})=>{let[t,r]=we(!!A),{container:i}=Gd(),u=st(()=>{r(!1),e&&e(),i?.focus()},[e,i]);return N(At,{children:t&&N(FB,{size:"small",onCloseRequest:u,title:uA("errorDialog.title"),children:N("div",{style:{whiteSpace:"pre-wrap"},children:A})})})},lZe=function({onChange:A,value:e,choices:t,name:r}){return N("div",{className:"RadioGroup",children:t.map((i)=>cA("div",{className:Se("RadioGroup__choice",{active:i.value===e}),title:i.ariaLabel,children:[N("input",{name:r,type:"radio",checked:i.value===e,onChange:()=>A(i.value),"aria-label":i.ariaLabel}),i.label]},String(i.value)))})},Vz=({title:A,name:e,checked:t,onChange:r,disabled:i=!1})=>N("div",{className:Se("Switch",{toggled:t,disabled:i}),children:N("input",{name:e,id:e,title:A,type:"checkbox",checked:t,disabled:i,onChange:()=>r(!t),onKeyDown:(u)=>{u.key===" "&&r(!t)}})}),RL=mt(({children:A,icon:e,onClick:t,label:r,variant:i="filled",color:u="primary",size:a="medium",fullWidth:n,className:o,status:s},l)=>{let[g,C]=we(!1),B=async(d)=>{let I=t?.(d);if(D9(I)){let h=window.setTimeout(()=>{C(!0)},50);try{await I}catch(Q){if(Q instanceof z8)console.warn(Q);else throw Q}finally{clearTimeout(h),C(!1)}}},E=g?"loading":s;return u=E==="success"?"success":u,N("button",{className:Se("ExcButton",`ExcButton--color-${u}`,`ExcButton--variant-${i}`,`ExcButton--size-${a}`,`ExcButton--status-${E}`,{"ExcButton--fullWidth":n},o),onClick:B,type:"button","aria-label":r,ref:l,disabled:E==="loading"||E==="success",children:cA("div",{className:"ExcButton__contents",children:[E==="loading"?N(_h,{className:"ExcButton__statusIcon"}):E==="success"&&N("div",{className:"ExcButton__statusIcon",children:mhe}),e&&N("div",{className:"ExcButton__icon","aria-hidden":!0,children:e}),i!=="icon"&&(A??r)]})})}),bdr=2000,vdr=()=>{let[A,e]=we(null),t=Ee(0),r=()=>{clearTimeout(t.current),e("success"),t.current=window.setTimeout(()=>{e(null)},bdr)},i=st(()=>{e(null)},[]);return{copyStatus:A,resetCopyStatus:i,onCopy:r}},kdr="filter"in document.createElement("canvas").getContext("2d"),Fdr=()=>cA("div",{children:[N("h3",{children:uA("canvasError.cannotShowPreview")}),N("p",{children:N("span",{children:uA("canvasError.canvasTooBig")})}),cA("em",{children:["(",uA("canvasError.canvasTooBigTip"),")"]})]}),xdr=({appStateSnapshot:A,elementsSnapshot:e,files:t,actionManager:r,onExportImage:i,name:u})=>{let a=yn(e,A),[n,o]=we(u),[s,l]=we(a),[g,C]=we(A.exportBackground),[B,E]=we(A.exportWithDarkMode),[d,I]=we(A.exportEmbedScene),[h,Q]=we(A.exportScale),p=Ee(null),[m,f]=we(null),{onCopy:D,copyStatus:w,resetCopyStatus:b}=vdr();le(()=>{b()},[n,g,B,h,d,b]);let{exportedElements:k,exportingFrame:v}=dZ(e,A,s);return le(()=>{let S=p.current;if(!S)return;let{offsetWidth:x,offsetHeight:F}=S;x&&UW({elements:k,appState:{...A,name:n,exportBackground:g,exportWithDarkMode:B,exportScale:h,exportEmbedScene:d},files:t,exportPadding:Xm,maxWidthOrHeight:Math.max(x,F),exportingFrame:v}).then((T)=>(f(null),H9(T).then(()=>{S.replaceChildren(T)}).catch((R)=>{throw R.name==="CANVAS_POSSIBLY_TOO_BIG"?Error(uA("canvasError.canvasTooBig")):R}))).catch((T)=>{console.error(T),f(T)})},[A,t,k,v,n,g,B,h,d]),cA("div",{className:"ImageExportModal",children:[N("h3",{children:uA("imageExportDialog.header")}),cA("div",{className:"ImageExportModal__preview",children:[N("div",{className:"ImageExportModal__preview__canvas",ref:p,children:m&&N(Fdr,{})}),N("div",{className:"ImageExportModal__preview__filename",children:!mh&&N("input",{type:"text",className:"TextInput",value:n,style:{width:"30ch"},onChange:(S)=>{o(S.target.value),r.executeAction(DBr,"ui",S.target.value)}})})]}),cA("div",{className:"ImageExportModal__settings",children:[N("h3",{children:uA("imageExportDialog.header")}),a&&N(yL,{label:uA("imageExportDialog.label.onlySelected"),name:"exportOnlySelected",children:N(Vz,{name:"exportOnlySelected",checked:s,onChange:(S)=>{l(S)}})}),N(yL,{label:uA("imageExportDialog.label.withBackground"),name:"exportBackgroundSwitch",children:N(Vz,{name:"exportBackgroundSwitch",checked:g,onChange:(S)=>{C(S),r.executeAction(wBr,"ui",S)}})}),kdr&&N(yL,{label:uA("imageExportDialog.label.darkMode"),name:"exportDarkModeSwitch",children:N(Vz,{name:"exportDarkModeSwitch",checked:B,onChange:(S)=>{E(S),r.executeAction(bBr,"ui",S)}})}),N(yL,{label:uA("imageExportDialog.label.embedScene"),tooltip:uA("imageExportDialog.tooltip.embedScene"),name:"exportEmbedSwitch",children:N(Vz,{name:"exportEmbedSwitch",checked:d,onChange:(S)=>{I(S),r.executeAction(Lze,"ui",S)}})}),N(yL,{label:uA("imageExportDialog.label.scale"),name:"exportScale",children:N(lZe,{name:"exportScale",value:h,onChange:(S)=>{Q(S),r.executeAction(yBr,"ui",S)},choices:M_.map((S)=>({value:S,label:`${S}×`}))})}),cA("div",{className:"ImageExportModal__settings__buttons",children:[N(RL,{className:"ImageExportModal__settings__buttons__button",label:uA("imageExportDialog.title.exportToPng"),onClick:()=>i(L_.png,k,{exportingFrame:v}),icon:ihA,children:uA("imageExportDialog.button.exportToPng")}),N(RL,{className:"ImageExportModal__settings__buttons__button",label:uA("imageExportDialog.title.exportToSvg"),onClick:()=>i(L_.svg,k,{exportingFrame:v}),icon:ihA,children:uA("imageExportDialog.button.exportToSvg")}),(GW||I9)&&N(RL,{className:"ImageExportModal__settings__buttons__button",label:uA("imageExportDialog.title.copyPngToClipboard"),status:w,onClick:async()=>{await i(L_.clipboard,k,{exportingFrame:v}),D()},icon:$_,children:uA("imageExportDialog.button.copyPngToClipboard")})]})]})]})},yL=({label:A,children:e,tooltip:t,name:r})=>cA("div",{className:"ImageExportModal__settings__setting",title:A,children:[cA("label",{htmlFor:r,className:"ImageExportModal__settings__setting__label",children:[A,t&&N(O2,{label:t,long:!0,children:fhe})]}),N("div",{className:"ImageExportModal__settings__setting__content",children:e})]}),Sdr=({elements:A,appState:e,files:t,actionManager:r,onExportImage:i,onCloseRequest:u,name:a})=>{let[{appStateSnapshot:n,elementsSnapshot:o}]=we(()=>({appStateSnapshot:Bd(e),elementsSnapshot:Bd(A)}));return N(FB,{onCloseRequest:u,size:"wide",title:!1,children:N(xdr,{elementsSnapshot:o,appStateSnapshot:n,files:t,actionManager:r,onExportImage:i,name:a})})},gZe=({children:A,side:e,className:t})=>N("div",{className:Se("FixedSideContainer",`FixedSideContainer_side_${e}`,t),children:A}),U5=100,M5=100,kqe=(A)=>{switch(A){case PA.ARROW_UP:return"up";case PA.ARROW_DOWN:return"down";case PA.ARROW_RIGHT:return"right";case PA.ARROW_LEFT:return"left";default:return"right"}},cZe=(A,e,t,r)=>{let i=[...t.values()].reduce((u,a)=>{let n;if(pt(a)&&(n=a[A==="predecessors"?"startBinding":"endBinding"])&&a[A==="predecessors"?"endBinding":"startBinding"]?.elementId===e.id){let o=t.get(n.elementId);if(!o)return u;fn(Rc(o),"not an ExcalidrawBindableElement");let s=A==="predecessors"?a.points[a.points.length-1]:[0,0],l=mhA(e,qC(e),[s[0]+a.x,s[1]+a.y]);u.push({relative:o,heading:l})}return u},[]);switch(r){case"up":return i.filter((u)=>va(u.heading,Ts)).map((u)=>u.relative);case"down":return i.filter((u)=>va(u.heading,fo)).map((u)=>u.relative);case"right":return i.filter((u)=>va(u.heading,wa)).map((u)=>u.relative);case"left":return i.filter((u)=>va(u.heading,Ms)).map((u)=>u.relative)}},m3A=(A,e,t)=>cZe("successors",A,e,t),D3A=(A,e,t)=>cZe("predecessors",A,e,t),Ldr=(A,e,t)=>{let r=M5+A.width;if(t==="up"||t==="down"){let n=U5+A.height,o=A.x,s=A.x+A.width;if(e.every((l)=>l.x+l.width<o||l.x>s))return{x:0,y:n*(t==="up"?-1:1)}}else if(t==="right"||t==="left"){let n=A.y,o=A.y+A.height;if(e.every((s)=>s.y+s.height<n||s.y>o))return{x:(M5+A.width)*(t==="left"?-1:1),y:0}}if(t==="up"||t==="down"){let n=U5+A.height,o=(e.length,n),s=e.length===0?0:(e.length+1)%2===0?(e.length+1)/2*r:e.length/2*r*-1;return t==="up"?{x:s,y:o*-1}:{x:s,y:o}}let i=U5+A.height,u=(e.length,M5+A.width),a=e.length===0?0:(e.length+1)%2===0?(e.length+1)/2*i:e.length/2*i*-1;return t==="left"?{x:u*-1,y:a}:{x:u,y:a}},Rdr=(A,e,t,r)=>{let i=m3A(A,e,r),u=D3A(A,e,r),a=Ldr(A,[...i,...u],r),n=sB({type:A.type,x:A.x+a.x,y:A.y+a.y,width:A.width,height:A.height,roundness:A.roundness,roughness:A.roughness,backgroundColor:A.backgroundColor,strokeColor:A.strokeColor,strokeWidth:A.strokeWidth,opacity:A.opacity,fillStyle:A.fillStyle,strokeStyle:A.strokeStyle});fn(J8(n),"not an ExcalidrawFlowchartNodeElement");let o=CZe(A,n,e,r,t);return{nextNode:n,bindingArrow:o}},Ndr=(A,e,t,r,i)=>{let u=[];for(let a=0;a<i;a++){let n,o;if(r==="left"||r==="right"){let g=U5*(i-1)+i*A.height,C=A.y+A.height/2-g/2,B=M5+A.width;r==="left"&&(B*=-1),n=A.x+B;let E=(U5+A.height)*a;o=C+E}else{let g=M5*(i-1)+i*A.width,C=A.x+A.width/2-g/2,B=U5+A.height;r==="up"&&(B*=-1),o=A.y+B;let E=(M5+A.width)*a;n=C+E}let s=sB({type:A.type,x:n,y:o,width:A.width,height:A.height,roundness:A.roundness,roughness:A.roughness,backgroundColor:A.backgroundColor,strokeColor:A.strokeColor,strokeWidth:A.strokeWidth,opacity:A.opacity,fillStyle:A.fillStyle,strokeStyle:A.strokeStyle});fn(J8(s),"not an ExcalidrawFlowchartNodeElement");let l=CZe(A,s,e,r,t);u.push(s),u.push(l)}return u},CZe=(A,e,t,r,i)=>{let u,a;switch(r){case"up":{u=A.x+A.width/2,a=A.y-6;break}case"down":{u=A.x+A.width/2,a=A.y+A.height+6;break}case"right":{u=A.x+A.width+6,a=A.y+A.height/2;break}case"left":{u=A.x-6,a=A.y+A.height/2;break}}let n,o;switch(r){case"up":{n=e.x+e.width/2-u,o=e.y+e.height-a+6;break}case"down":{n=e.x+e.width/2-u,o=e.y-a-6;break}case"right":{n=e.x-u-6,o=e.y-a+e.height/2;break}case"left":{n=e.x+e.width-u+6,o=e.y-a+e.height/2;break}}let s=mW({type:"arrow",x:u,y:a,startArrowhead:null,endArrowhead:i.currentItemEndArrowhead,strokeColor:A.strokeColor,strokeStyle:A.strokeStyle,strokeWidth:A.strokeWidth,opacity:A.opacity,roughness:A.roughness,points:[X(0,0),X(n,o)],elbowed:!0});$C(s,A,"start",t),$C(s,e,"end",t);let l=new Map;l.set(A.id,A),l.set(e.id,e),l.set(s.id,s),It.movePoints(s,[{index:1,point:s.points[1]}]);let g=SW(s,vg(new Map([...t.entries(),[A.id,A],[e.id,e],[s.id,s]])),{points:s.points});return{...s,...g}},Gdr=class{constructor(){GA(this,"isExploring",!1),GA(this,"sameLevelNodes",[]),GA(this,"sameLevelIndex",0),GA(this,"direction",null),GA(this,"visitedNodes",new Set)}clear(){this.isExploring=!1,this.sameLevelNodes=[],this.sameLevelIndex=0,this.direction=null,this.visitedNodes.clear()}exploreByDirection(A,e,t){if(!Rc(A))return null;if(t!==this.direction&&this.clear(),this.visitedNodes.has(A.id)||this.visitedNodes.add(A.id),this.isExploring&&t===this.direction&&this.sameLevelNodes.length>1)return this.sameLevelIndex=(this.sameLevelIndex+1)%this.sameLevelNodes.length,this.sameLevelNodes[this.sameLevelIndex].id;let r=[...m3A(A,e,t),...D3A(A,e,t)];if(r.length>0)return this.sameLevelIndex=0,this.isExploring=!0,this.sameLevelNodes=r,this.direction=t,this.visitedNodes.add(r[0].id),r[0].id;if(t===this.direction||!this.isExploring){this.isExploring||this.visitedNodes.add(A.id);let i=["up","right","down","left"].filter((u)=>u!==t).map((u)=>[...m3A(A,e,u),...D3A(A,e,u)]).flat().filter((u)=>!this.visitedNodes.has(u.id));for(let u of i)if(!this.visitedNodes.has(u.id))return this.visitedNodes.add(u.id),this.isExploring=!0,this.direction=t,u.id}return null}},Udr=class{constructor(){GA(this,"isCreatingChart",!1),GA(this,"numberOfNodes",0),GA(this,"direction","right"),GA(this,"pendingNodes",null)}createNodes(A,e,t,r){if(r!==this.direction){let{nextNode:i,bindingArrow:u}=Rdr(A,e,t,r);this.numberOfNodes=1,this.isCreatingChart=!0,this.direction=r,this.pendingNodes=[i,u]}else{this.numberOfNodes+=1;let i=Ndr(A,e,t,r,this.numberOfNodes);this.isCreatingChart=!0,this.direction=r,this.pendingNodes=i}if(A.frameId){let i=e.get(A.frameId);fn(i&&bIA(i),"not an ExcalidrawFrameElement"),i&&this.pendingNodes.every((u)=>U9([u],i,e)||xh(u,i,e))&&(this.pendingNodes=this.pendingNodes.map((u)=>xe(u,{frameId:A.frameId},!1)))}}clear(){this.isCreatingChart=!1,this.pendingNodes=null,this.direction=null,this.numberOfNodes=0}},Mdr=(A,e)=>{for(let[,t]of e)if(t.type==="arrow"&&(t.startBinding?.elementId===A.id||t.endBinding?.elementId===A.id))return!0;return!1},Tdr=({appState:A,isMobile:e,device:t,app:r})=>{let{activeTool:i,isResizing:u,isRotating:a,lastPointerDownWith:n}=A,o=A.multiElement!==null;if(A.openSidebar?.name===Gc.name&&A.openSidebar.tab===$m&&A.searchMatches?.length)return uA("hints.dismissSearch");if(A.openSidebar&&!t.editor.canFitSidebar)return null;if(uB(A))return uA("hints.eraserRevert");if(i.type==="arrow"||i.type==="line")return o?uA("hints.linearElementMulti"):i.type==="arrow"?uA("hints.arrowTool",{arrowShortcut:Fe("A")}):uA("hints.linearElement");if(i.type==="freedraw")return uA("hints.freeDraw");if(i.type==="text")return uA("hints.text");if(i.type==="embeddable")return uA("hints.embeddable");if(A.activeTool.type==="image"&&A.pendingImageElementId)return uA("hints.placeImage");let s=r.scene.getSelectedElements(A);if(u&&n==="mouse"&&s.length===1){let l=s[0];return Gr(l)&&l.points.length===2?uA("hints.lockAngle"):Ni(l)?uA("hints.resizeImage"):uA("hints.resize")}if(a&&n==="mouse")return uA("hints.rotate");if(s.length===1&&Bt(s[0]))return uA("hints.text_selected");if(A.editingTextElement)return uA("hints.text_editing");if(A.croppingElementId)return uA("hints.leaveCropEditor");if(s.length===1&&Ni(s[0]))return uA("hints.enterCropEditor");if(i.type==="selection"){if(A.selectionElement&&!s.length&&!A.editingTextElement&&!A.editingLinearElement)return uA("hints.deepBoxSelect");if(S9(r)&&A.selectedElementsAreBeingDragged)return uA("hints.disableSnapping");if(!s.length&&!e)return uA("hints.canvasPanning");if(s.length===1){if(Gr(s[0]))return A.editingLinearElement?A.editingLinearElement.selectedPointsIndices?uA("hints.lineEditor_pointSelected"):uA("hints.lineEditor_nothingSelected"):uA("hints.lineEditor_info");if(!A.newElement&&!A.selectedElementsAreBeingDragged&&P1(s[0]))return J8(s[0])?Mdr(s[0],r.scene.getNonDeletedElementsMap())?[uA("hints.bindTextToElement"),uA("hints.createFlowchart")]:[uA("hints.bindTextToElement"),uA("hints.createFlowchart")]:uA("hints.bindTextToElement")}}return null},BZe=({appState:A,isMobile:e,device:t,app:r})=>{let i=Tdr({appState:A,isMobile:e,device:t,app:r});if(!i)return null;let u=Array.isArray(i)?i.map((a)=>Fe(a).replace(/\. ?$/,"")).join(". "):Fe(i);return N("div",{className:"HintViewer",children:N("span",{children:u})})},Ydr="medium",Fqe={CHECKED:__,UNCHECKED:P8},EZe=(A)=>cA("label",{className:Se("ToolIcon ToolIcon__lock",`ToolIcon_size_${Ydr}`,{"is-mobile":A.isMobile}),title:`${A.title} — Q`,children:[N("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:A.name,onChange:A.onChange,checked:A.checked,"aria-label":A.title,"data-testid":"toolbar-lock"}),N("div",{className:"ToolIcon__icon",children:A.checked?Fqe.CHECKED:Fqe.UNCHECKED})]}),UL=({heading:A,children:e,...t})=>{let{id:r}=Gd(),i=N("h2",{className:"visually-hidden",id:`${r}-${A}-title`,children:uA(`headings.${A}`)});return N("section",{...t,"aria-labelledby":`${r}-${A}-title`,children:typeof e=="function"?e(i):cA(At,{children:[i,e]})})},Sd=4,vp=6,Hdr="rgba(0,0,0,0.3)",Kdr=(A,e,t,r)=>{if(!A.length)return{horizontal:null,vertical:null};let[i,u,a,n]=Pi(A),o=e/r.zoom.value,s=t/r.zoom.value,l=e-o,g=t-s,C={top:parseInt(T8("sat"))||0,bottom:parseInt(T8("sab"))||0,left:parseInt(T8("sal"))||0,right:parseInt(T8("sar"))||0},B=NL().rtl,E=-r.scrollX+l/2+C.left,d=-r.scrollY+g/2+C.top,I=E+o-C.right,h=d+s-C.bottom,Q=Math.min(i,E),p=Math.min(u,d),m=Math.max(a,I),f=Math.max(n,h);return{horizontal:E===Q&&I===m?null:{x:Math.max(C.left,Sd)+(E-Q)/(m-Q)*e,y:t-vp-Math.max(Sd,C.bottom),width:(I-E)/(m-Q)*e-Math.max(Sd*2,C.left+C.right),height:vp},vertical:d===p&&h===f?null:{x:B?Math.max(C.left,Sd):e-vp-Math.max(C.right,Sd),y:(d-p)/(f-p)*t+Math.max(C.top,Sd),width:vp,height:(h-d)/(f-p)*t-Math.max(Sd*2,C.top+C.bottom)}}},xqe=(A,e,t)=>{let[r,i]=[A.horizontal,A.vertical].map((u)=>u!=null&&u.x<=e&&e<=u.x+u.width&&u.y<=t&&t<=u.y+u.height);return{isOverEither:r||i,isOverHorizontal:r,isOverVertical:i}},Jdr="medium",dZe=(A)=>A.penDetected?cA("label",{className:Se("ToolIcon ToolIcon__penMode",`ToolIcon_size_${Jdr}`,{"is-mobile":A.isMobile}),title:`${A.title}`,children:[N("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:A.name,onChange:A.onChange,checked:A.checked,"aria-label":A.title}),N("div",{className:"ToolIcon__icon",children:pIe})]}):null,IZe=(A)=>N(ci,{className:Se("Shape",{fillable:!1}),type:"radio",icon:rhA,name:"editor-current-shape",checked:A.checked,title:`${A.title} — H`,keyBindingLabel:A.isMobile?void 0:PA.H.toLocaleUpperCase(),"aria-label":`${A.title} — H`,"aria-keyshortcuts":PA.H,"data-testid":"toolbar-hand",onChange:()=>A.onChange?.()}),Odr=({appState:A,elements:e,actionManager:t,setAppState:r,onLockToggle:i,onHandToolToggle:u,onPenModeToggle:a,renderTopRightUI:n,renderCustomStats:o,renderSidebars:s,device:l,renderWelcomeScreen:g,UIOptions:C,app:B})=>{let{WelcomeScreenCenterTunnel:E,MainMenuTunnel:d,DefaultSidebarTriggerTunnel:I}=Zs(),h=()=>cA(gZe,{side:"top",className:"App-top-bar",children:[g&&N(E.Out,{}),N(UL,{heading:"shapes",children:(p)=>N(Wc.Col,{gap:4,align:"center",children:cA(Wc.Row,{gap:1,className:"App-toolbar-container",children:[cA(kB,{padding:1,className:"App-toolbar App-toolbar--mobile",children:[p,N(Wc.Row,{gap:1,children:N(rZe,{appState:A,activeTool:A.activeTool,UIOptions:C,app:B})})]}),n&&n(!0,A),cA("div",{className:"mobile-misc-tools-container",children:[!A.viewModeEnabled&&A.openDialog?.name!=="elementLinkSelector"&&N(I.Out,{}),N(dZe,{checked:A.penMode,onChange:()=>a(null),title:uA("toolBar.penMode"),isMobile:!0,penDetected:A.penDetected}),N(EZe,{checked:A.activeTool.locked,onChange:i,title:uA("toolBar.lock"),isMobile:!0}),N(IZe,{checked:A2(A),onChange:()=>u(),title:uA("toolBar.hand"),isMobile:!0})]})]})})}),N(BZe,{appState:A,isMobile:!0,device:l,app:B})]}),Q=()=>A.viewModeEnabled||A.openDialog?.name==="elementLinkSelector"?N("div",{className:"App-toolbar-content",children:N(d.Out,{})}):cA("div",{className:"App-toolbar-content",children:[N(d.Out,{}),t.renderAction("toggleEditMenu"),t.renderAction(A.multiElement?"finalize":"duplicateSelection"),t.renderAction("deleteSelectedElements"),cA("div",{children:[t.renderAction("undo"),t.renderAction("redo")]})]});return cA(At,{children:[s(),!A.viewModeEnabled&&A.openDialog?.name!=="elementLinkSelector"&&h(),N("div",{className:"App-bottom-bar",style:{marginBottom:vp+Sd*2,marginLeft:vp+Sd*2,marginRight:vp+Sd*2},children:cA(kB,{padding:0,children:[A.openMenu==="shape"&&!A.viewModeEnabled&&A.openDialog?.name!=="elementLinkSelector"&&WW(A,e)?N(UL,{className:"App-mobile-menu",heading:"selectedShapeActions",children:N(tZe,{appState:A,elementsMap:B.scene.getNonDeletedElementsMap(),renderAction:t.renderAction,app:B})}):null,cA("footer",{className:"App-toolbar",children:[Q(),A.scrolledOutside&&!A.openMenu&&!A.openSidebar&&N("button",{type:"button",className:"scroll-back-to-content",onClick:()=>{r((p)=>({...F9(e,p)}))},children:uA("buttons.scrollBackToContent")})]})]})})]})},Sqe=(A)=>{let e=Ee(null),[t,r]=we(null);return Ii(()=>{if(!A.spreadsheet)return;let i=w4e(A.chartType,A.spreadsheet,0,0);r(i);let u,a=e.current;return(async()=>(u=await xW(i,{exportBackground:!1,viewBackgroundColor:ua.white},null,{skipInliningFonts:!0}),u.querySelector(".style-fonts")?.remove(),a.replaceChildren(),a.appendChild(u),A.selected&&a.parentNode.focus()))(),()=>{a.replaceChildren()}},[A.spreadsheet,A.chartType,A.selected]),N("button",{type:"button",className:"ChartPreview",onClick:()=>{t&&A.onClick(A.chartType,t)},children:N("div",{ref:e})})},Pdr=({setAppState:A,appState:e,onClose:t})=>{let{onInsertElements:r}=Nd(),i=st(()=>{t&&t()},[t]),u=(a,n)=>{r(n),Nu("paste","chart",a),A({currentChartType:a,pasteDialog:{shown:!1,data:null}})};return N(FB,{size:"small",onCloseRequest:i,title:uA("labels.pasteCharts"),className:"PasteChartDialog",autofocus:!1,children:cA("div",{className:"container",children:[N(Sqe,{chartType:"bar",spreadsheet:e.pasteDialog.data,selected:e.currentChartType==="bar",onClick:u}),N(Sqe,{chartType:"line",spreadsheet:e.pasteDialog.data,selected:e.currentChartType==="line",onClick:u})]})})},_dr=()=>cA("div",{className:"HelpDialog__header",children:[cA("a",{className:"HelpDialog__btn",href:"https://docs.excalidraw.com",target:"_blank",rel:"noopener noreferrer",children:[N("div",{className:"HelpDialog__link-icon",children:MIA}),uA("helpDialog.documentation")]}),cA("a",{className:"HelpDialog__btn",href:"https://plus.excalidraw.com/blog",target:"_blank",rel:"noopener noreferrer",children:[N("div",{className:"HelpDialog__link-icon",children:MIA}),uA("helpDialog.blog")]}),cA("a",{className:"HelpDialog__btn",href:"https://github.com/excalidraw/excalidraw/issues",target:"_blank",rel:"noopener noreferrer",children:[N("div",{className:"HelpDialog__link-icon",children:TIA}),uA("helpDialog.github")]}),cA("a",{className:"HelpDialog__btn",href:"https://youtube.com/@excalidraw",target:"_blank",rel:"noopener noreferrer",children:[N("div",{className:"HelpDialog__link-icon",children:Jhe}),"YouTube"]})]}),Wdr=(A)=>cA(At,{children:[N("h3",{children:A.title}),N("div",{className:"HelpDialog__islands-container",children:A.children})]}),e3A=(A)=>cA("div",{className:`HelpDialog__island ${A.className}`,children:[N("h4",{className:"HelpDialog__island-title",children:A.caption}),N("div",{className:"HelpDialog__island-content",children:A.children})]});function*qdr(A,e){let t=!0;for(let r of A)t||(yield e),t=!1,yield r}var zdr=(A)=>A.replace(/\b[a-z]\b/,(e)=>e.toUpperCase()),ft=({label:A,shortcuts:e,isOr:t=!0})=>{let r=e.map((i)=>(i.endsWith("++")?[...i.slice(0,-2).split("+"),"+"]:i.split("+")).map((u)=>N(Zdr,{children:zdr(u)},u)));return cA("div",{className:"HelpDialog__shortcut",children:[N("div",{children:A}),N("div",{className:"HelpDialog__key-container",children:[...qdr(r,t?uA("helpDialog.or"):null)]})]})},Zdr=(A)=>N("kbd",{className:"HelpDialog__key",...A}),Vdr=({onClose:A})=>{let e=st(()=>{A&&A()},[A]);return N(At,{children:cA(FB,{onCloseRequest:e,title:uA("helpDialog.title"),className:"HelpDialog",children:[N(_dr,{}),cA(Wdr,{title:uA("helpDialog.shortcuts"),children:[cA(e3A,{className:"HelpDialog__island--tools",caption:uA("helpDialog.tools"),children:[N(ft,{label:uA("toolBar.hand"),shortcuts:[PA.H]}),N(ft,{label:uA("toolBar.selection"),shortcuts:[PA.V,PA[1]]}),N(ft,{label:uA("toolBar.rectangle"),shortcuts:[PA.R,PA[2]]}),N(ft,{label:uA("toolBar.diamond"),shortcuts:[PA.D,PA[3]]}),N(ft,{label:uA("toolBar.ellipse"),shortcuts:[PA.O,PA[4]]}),N(ft,{label:uA("toolBar.arrow"),shortcuts:[PA.A,PA[5]]}),N(ft,{label:uA("toolBar.line"),shortcuts:[PA.L,PA[6]]}),N(ft,{label:uA("toolBar.freedraw"),shortcuts:[PA.P,PA[7]]}),N(ft,{label:uA("toolBar.text"),shortcuts:[PA.T,PA[8]]}),N(ft,{label:uA("toolBar.image"),shortcuts:[PA[9]]}),N(ft,{label:uA("toolBar.eraser"),shortcuts:[PA.E,PA[0]]}),N(ft,{label:uA("toolBar.frame"),shortcuts:[PA.F]}),N(ft,{label:uA("toolBar.laser"),shortcuts:[PA.K]}),N(ft,{label:uA("labels.eyeDropper"),shortcuts:[PA.I,"Shift+S","Shift+G"]}),N(ft,{label:uA("helpDialog.editLineArrowPoints"),shortcuts:[Fe("CtrlOrCmd+Enter")]}),N(ft,{label:uA("helpDialog.editText"),shortcuts:[Fe("Enter")]}),N(ft,{label:uA("helpDialog.textNewLine"),shortcuts:[Fe("Enter"),Fe("Shift+Enter")]}),N(ft,{label:uA("helpDialog.textFinish"),shortcuts:[Fe("Esc"),Fe("CtrlOrCmd+Enter")]}),N(ft,{label:uA("helpDialog.curvedArrow"),shortcuts:["A",uA("helpDialog.click"),uA("helpDialog.click"),uA("helpDialog.click")],isOr:!1}),N(ft,{label:uA("helpDialog.curvedLine"),shortcuts:["L",uA("helpDialog.click"),uA("helpDialog.click"),uA("helpDialog.click")],isOr:!1}),N(ft,{label:uA("helpDialog.cropStart"),shortcuts:[uA("helpDialog.doubleClick"),Fe("Enter")],isOr:!0}),N(ft,{label:uA("helpDialog.cropFinish"),shortcuts:[Fe("Enter"),Fe("Escape")],isOr:!0}),N(ft,{label:uA("toolBar.lock"),shortcuts:[PA.Q]}),N(ft,{label:uA("helpDialog.preventBinding"),shortcuts:[Fe("CtrlOrCmd")]}),N(ft,{label:uA("toolBar.link"),shortcuts:[Fe("CtrlOrCmd+K")]})]}),cA(e3A,{className:"HelpDialog__island--view",caption:uA("helpDialog.view"),children:[N(ft,{label:uA("buttons.zoomIn"),shortcuts:[Fe("CtrlOrCmd++")]}),N(ft,{label:uA("buttons.zoomOut"),shortcuts:[Fe("CtrlOrCmd+-")]}),N(ft,{label:uA("buttons.resetZoom"),shortcuts:[Fe("CtrlOrCmd+0")]}),N(ft,{label:uA("helpDialog.zoomToFit"),shortcuts:["Shift+1"]}),N(ft,{label:uA("helpDialog.zoomToSelection"),shortcuts:["Shift+2"]}),N(ft,{label:uA("helpDialog.movePageUpDown"),shortcuts:["PgUp/PgDn"]}),N(ft,{label:uA("helpDialog.movePageLeftRight"),shortcuts:["Shift+PgUp/PgDn"]}),N(ft,{label:uA("buttons.zenMode"),shortcuts:[Fe("Alt+Z")]}),N(ft,{label:uA("buttons.objectsSnapMode"),shortcuts:[Fe("Alt+S")]}),N(ft,{label:uA("labels.toggleGrid"),shortcuts:[Fe("CtrlOrCmd+'")]}),N(ft,{label:uA("labels.viewMode"),shortcuts:[Fe("Alt+R")]}),N(ft,{label:uA("labels.toggleTheme"),shortcuts:[Fe("Alt+Shift+D")]}),N(ft,{label:uA("stats.fullTitle"),shortcuts:[Fe("Alt+/")]}),N(ft,{label:uA("search.title"),shortcuts:[is("searchMenu")]}),N(ft,{label:uA("commandPalette.title"),shortcuts:I9?[is("commandPalette")]:[is("commandPalette"),is("commandPalette",1)]})]}),cA(e3A,{className:"HelpDialog__island--editor",caption:uA("helpDialog.editor"),children:[N(ft,{label:uA("helpDialog.createFlowchart"),shortcuts:[Fe("CtrlOrCmd+Arrow Key")],isOr:!0}),N(ft,{label:uA("helpDialog.navigateFlowchart"),shortcuts:[Fe("Alt+Arrow Key")],isOr:!0}),N(ft,{label:uA("labels.moveCanvas"),shortcuts:[Fe(`Space+${uA("helpDialog.drag")}`),Fe(`Wheel+${uA("helpDialog.drag")}`)],isOr:!0}),N(ft,{label:uA("buttons.clearReset"),shortcuts:[Fe("CtrlOrCmd+Delete")]}),N(ft,{label:uA("labels.delete"),shortcuts:[Fe("Delete")]}),N(ft,{label:uA("labels.cut"),shortcuts:[Fe("CtrlOrCmd+X")]}),N(ft,{label:uA("labels.copy"),shortcuts:[Fe("CtrlOrCmd+C")]}),N(ft,{label:uA("labels.paste"),shortcuts:[Fe("CtrlOrCmd+V")]}),N(ft,{label:uA("labels.pasteAsPlaintext"),shortcuts:[Fe("CtrlOrCmd+Shift+V")]}),N(ft,{label:uA("labels.selectAll"),shortcuts:[Fe("CtrlOrCmd+A")]}),N(ft,{label:uA("labels.multiSelect"),shortcuts:[Fe(`Shift+${uA("helpDialog.click")}`)]}),N(ft,{label:uA("helpDialog.deepSelect"),shortcuts:[Fe(`CtrlOrCmd+${uA("helpDialog.click")}`)]}),N(ft,{label:uA("helpDialog.deepBoxSelect"),shortcuts:[Fe(`CtrlOrCmd+${uA("helpDialog.drag")}`)]}),(GW||I9)&&N(ft,{label:uA("labels.copyAsPng"),shortcuts:[Fe("Shift+Alt+C")]}),N(ft,{label:uA("labels.copyStyles"),shortcuts:[Fe("CtrlOrCmd+Alt+C")]}),N(ft,{label:uA("labels.pasteStyles"),shortcuts:[Fe("CtrlOrCmd+Alt+V")]}),N(ft,{label:uA("labels.sendToBack"),shortcuts:[rB?Fe("CtrlOrCmd+Alt+["):Fe("CtrlOrCmd+Shift+[")]}),N(ft,{label:uA("labels.bringToFront"),shortcuts:[rB?Fe("CtrlOrCmd+Alt+]"):Fe("CtrlOrCmd+Shift+]")]}),N(ft,{label:uA("labels.sendBackward"),shortcuts:[Fe("CtrlOrCmd+[")]}),N(ft,{label:uA("labels.bringForward"),shortcuts:[Fe("CtrlOrCmd+]")]}),N(ft,{label:uA("labels.alignTop"),shortcuts:[Fe("CtrlOrCmd+Shift+Up")]}),N(ft,{label:uA("labels.alignBottom"),shortcuts:[Fe("CtrlOrCmd+Shift+Down")]}),N(ft,{label:uA("labels.alignLeft"),shortcuts:[Fe("CtrlOrCmd+Shift+Left")]}),N(ft,{label:uA("labels.alignRight"),shortcuts:[Fe("CtrlOrCmd+Shift+Right")]}),N(ft,{label:uA("labels.duplicateSelection"),shortcuts:[Fe("CtrlOrCmd+D"),Fe(`Alt+${uA("helpDialog.drag")}`)]}),N(ft,{label:uA("helpDialog.toggleElementLock"),shortcuts:[Fe("CtrlOrCmd+Shift+L")]}),N(ft,{label:uA("buttons.undo"),shortcuts:[Fe("CtrlOrCmd+Z")]}),N(ft,{label:uA("buttons.redo"),shortcuts:aIA?[Fe("CtrlOrCmd+Y"),Fe("CtrlOrCmd+Shift+Z")]:[Fe("CtrlOrCmd+Shift+Z")]}),N(ft,{label:uA("labels.group"),shortcuts:[Fe("CtrlOrCmd+G")]}),N(ft,{label:uA("labels.ungroup"),shortcuts:[Fe("CtrlOrCmd+Shift+G")]}),N(ft,{label:uA("labels.flipHorizontal"),shortcuts:[Fe("Shift+H")]}),N(ft,{label:uA("labels.flipVertical"),shortcuts:[Fe("Shift+V")]}),N(ft,{label:uA("labels.showStroke"),shortcuts:[Fe("S")]}),N(ft,{label:uA("labels.showBackground"),shortcuts:[Fe("G")]}),N(ft,{label:uA("labels.showFonts"),shortcuts:[Fe("Shift+F")]}),N(ft,{label:uA("labels.decreaseFontSize"),shortcuts:[Fe("CtrlOrCmd+Shift+<")]}),N(ft,{label:uA("labels.increaseFontSize"),shortcuts:[Fe("CtrlOrCmd+Shift+>")]})]})]})]})})},jdr=4,Xdr=8,$dr=({shouldWrap:A,children:e,username:t})=>A?N(O2,{label:t||"Unknown user",children:e}):N(At,{children:e}),t3A=({actionManager:A,collaborator:e,socketId:t,withName:r=!1,shouldWrapWithTooltip:i=!1,isBeingFollowed:u})=>{let a={socketId:t,collaborator:e,withName:r,isBeingFollowed:u},n=A.renderAction("goToCollaborator",a);return N($dr,{username:e.username,shouldWrap:i,children:n},t)},AIr=["avatarUrl","id","socketId","username","isInCall","isSpeaking","isMuted"],hZe=gi(({className:A,mobile:e,collaborators:t,userToFollow:r})=>{let i=Pl(),u=new Map;t.forEach((E,d)=>{let I=E.id||d;u.set(I,{...E,socketId:d})});let a=Array.from(u.values()).filter((E)=>E.username?.trim()),[n,o]=we(""),s=a.filter((E)=>E.username?.toLowerCase().includes(n)),l=Ee(null);Ii(()=>{if(l.current){let E=(I)=>{let h=Math.max(1,Math.min(8,Math.floor(I/38)));C(h)};if(E(l.current.clientWidth),!S_)return;let d=new ResizeObserver((I)=>{for(let h of I){let{width:Q}=h.contentRect;E(Q)}});return d.observe(l.current),()=>{d.disconnect()}}},[]);let[g,C]=we(jdr),B=a.slice(0,g-1).map((E)=>t3A({actionManager:i,collaborator:E,socketId:E.socketId,shouldWrapWithTooltip:!0,isBeingFollowed:E.socketId===r}));return e?N("div",{className:Se("UserList UserList_mobile",A),children:a.map((E)=>t3A({actionManager:i,collaborator:E,socketId:E.socketId,shouldWrapWithTooltip:!0,isBeingFollowed:E.socketId===r}))}):N("div",{className:"UserList__wrapper",ref:l,children:cA("div",{className:Se("UserList",A),style:{"--max-avatars":g},children:[B,a.length>g-1&&cA(mp,{children:[cA(Dp,{className:"UserList__more",children:["+",a.length-g+1]}),N(F5,{style:{zIndex:2,width:"15rem",textAlign:"left"},align:"end",sideOffset:10,children:cA(kB,{padding:2,children:[a.length>=Xdr&&N(mze,{placeholder:uA("quickSearch.placeholder"),onChange:o}),N(Dze,{className:"dropdown-menu UserList__collaborators",placeholder:uA("userList.empty"),children:s.length>0?[N("div",{className:"hint",children:uA("userList.hint.text")}),s.map((E)=>t3A({actionManager:i,collaborator:E,socketId:E.socketId,withName:!0,isBeingFollowed:E.socketId===r}))]:[]}),N(Tz,{width:20,height:10,style:{fill:"var(--popup-bg-color)",filter:"drop-shadow(rgba(0, 0, 0, 0.05) 0px 3px 2px)"}})]})})]})]})})},(A,e)=>{if(A.collaborators.size!==e.collaborators.size||A.mobile!==e.mobile||A.className!==e.className||A.userToFollow!==e.userToFollow)return!1;let t=e.collaborators.keys();for(let[r,i]of A.collaborators){let u=e.collaborators.get(r);if(!u||r!==t.next().value||!zo(i,u,AIr))return!1}return!0}),Lqe=({children:A,color:e})=>N("div",{className:"Card",style:{"--card-color":e==="primary"?"var(--color-primary)":ua[e][7],"--card-color-darker":e==="primary"?"var(--color-primary-darker)":ua[e][8],"--card-color-darkest":e==="primary"?"var(--color-primary-darkest)":ua[e][9]},children:A}),eIr=({elements:A,appState:e,setAppState:t,files:r,actionManager:i,exportOpts:u,canvas:a,onCloseRequest:n})=>{let{onExportToBackend:o}=u;return N("div",{className:"ExportDialog ExportDialog--json",children:cA("div",{className:"ExportDialog-cards",children:[u.saveFileToDisk&&cA(Lqe,{color:"lime",children:[N("div",{className:"Card-icon",children:xIe}),N("h2",{children:uA("exportDialog.disk_title")}),cA("div",{className:"Card-details",children:[uA("exportDialog.disk_details"),!mh&&i.renderAction("changeProjectName")]}),N(ci,{className:"Card-button",type:"button",title:uA("exportDialog.disk_button"),"aria-label":uA("exportDialog.disk_button"),showAriaLabel:!0,onClick:()=>{i.executeAction(Rze,"ui")}})]}),o&&cA(Lqe,{color:"pink",children:[N("div",{className:"Card-icon",children:V_}),N("h2",{children:uA("exportDialog.link_title")}),N("div",{className:"Card-details",children:uA("exportDialog.link_details")}),N(ci,{className:"Card-button",type:"button",title:uA("exportDialog.link_button"),"aria-label":uA("exportDialog.link_button"),showAriaLabel:!0,onClick:async()=>{try{Nu("export","link",`ui (${uIe()})`),await o(A,e,r),n()}catch(s){t({errorMessage:s.message})}}})]}),u.renderCustomUI&&u.renderCustomUI(A,e,r,a)]})})},tIr=({elements:A,appState:e,files:t,actionManager:r,exportOpts:i,canvas:u,setAppState:a})=>{let n=st(()=>{a({openDialog:null})},[a]);return N(At,{children:e.openDialog?.name==="jsonExport"&&N(FB,{onCloseRequest:n,title:uA("buttons.export"),children:N(eIr,{elements:A,appState:e,setAppState:a,files:t,actionManager:r,onCloseRequest:n,exportOpts:i,canvas:u})})})},rIr=(A)=>N("button",{className:"help-icon",onClick:A.onClick,type:"button",title:`${uA("helpDialog.title")} — ?`,"aria-label":uA("helpDialog.title"),children:Z_}),QZe=({appState:A,actionManager:e,showExitZenModeBtn:t,renderWelcomeScreen:r})=>{let{FooterCenterTunnel:i,WelcomeScreenHelpHintTunnel:u}=Zs(),a=vo(),n=!A.viewModeEnabled&&A.multiElement&&a.isTouchScreen;return cA("footer",{role:"contentinfo",className:"layer-ui__wrapper__footer App-menu App-menu_bottom",children:[N("div",{className:Se("layer-ui__wrapper__footer-left zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-left":A.zenModeEnabled}),children:N(Wc.Col,{gap:2,children:cA(UL,{heading:"canvasActions",children:[N(ndr,{renderAction:e.renderAction,zoom:A.zoom}),!A.viewModeEnabled&&N(odr,{renderAction:e.renderAction,className:Se("zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-bottom":A.zenModeEnabled})}),n&&N(ldr,{renderAction:e.renderAction,className:Se("zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-left":A.zenModeEnabled})})]})})}),N(i.Out,{}),N("div",{className:Se("layer-ui__wrapper__footer-right zen-mode-transition",{"transition-right":A.zenModeEnabled}),children:cA("div",{style:{position:"relative"},children:[r&&N(u.Out,{}),N(rIr,{onClick:()=>e.executeAction(U3A)})]})}),N(sdr,{actionManager:e,showExitZenModeBtn:t})]})},iIr=QZe;QZe.displayName="Footer";var pZe=wi({}),fZe=({children:A,className:e})=>{let t=vo(),r=Li(pZe),i=!!(t.editor.canFitSidebar&&r.shouldRenderDockButton);return cA("div",{className:Se("sidebar__header",e),"data-testid":"sidebar-header",children:[A,cA("div",{className:"sidebar__header__buttons",children:[i&&N(O2,{label:uA("labels.sidebarLock"),children:N(P2,{onSelect:()=>r.onDock?.(!r.docked),selected:!!r.docked,className:"sidebar__dock","data-testid":"sidebar-dock","aria-label":uA("labels.sidebarLock"),children:dIe})}),N(P2,{"data-testid":"sidebar-close",className:"sidebar__close",onSelect:r.onCloseRequest,"aria-label":uA("buttons.close"),children:u2})]})]})};fZe.displayName="SidebarHeader";var mZe=({name:A,tab:e,icon:t,title:r,children:i,onToggle:u,className:a,style:n})=>{let o=qn(),s=k0();return cA("label",{title:r,className:"sidebar-trigger__label-element",children:[N("input",{className:"ToolIcon_type_checkbox",type:"checkbox",onChange:(l)=>{document.querySelector(".layer-ui__wrapper")?.classList.remove("animate");let g=l.target.checked;o({openSidebar:g?{name:A,tab:e}:null}),u?.(g)},checked:s.openSidebar?.name===A,"aria-label":r,"aria-keyshortcuts":"0"}),cA("div",{className:Se("sidebar-trigger",a),style:n,children:[t&&N("div",{children:t}),i&&N("div",{className:"sidebar-trigger__label",children:i})]})]})};mZe.displayName="SidebarTrigger";var DZe=({children:A,...e})=>N(Pz,{className:"sidebar-triggers",...e,children:A});DZe.displayName="SidebarTabTriggers";var yZe=({children:A,tab:e,onSelect:t,...r})=>N(_z,{value:e,asChild:!0,onSelect:t,children:N("button",{type:"button",className:"excalidraw-button sidebar-tab-trigger",...r,children:A})});yZe.displayName="SidebarTabTrigger";var wZe=({children:A,...e})=>{let t=k0(),r=qn();if(!t.openSidebar)return null;let{name:i}=t.openSidebar;return N(Oz,{className:"sidebar-tabs-root",value:t.openSidebar.tab,onValueChange:(u)=>r((a)=>({...a,openSidebar:{...a.openSidebar,name:i,tab:u}})),...e,children:A})};wZe.displayName="SidebarTabs";var bZe=({tab:A,children:e,...t})=>N(Wz,{...t,value:A,"data-testid":A,children:e});bZe.displayName="SidebarTab";var H3A=On(!1),vZe=mt(({name:A,children:e,onDock:t,docked:r,className:i,...u},a)=>{fr.DEV&&t&&r==null&&console.warn("Sidebar: `docked` must be set when `onDock` is supplied for the sidebar to be user-dockable. To hide this message, either pass `docked` or remove `onDock`");let n=qn(),o=lZ(H3A);Ii(()=>(o(!!r),()=>{o(!1)}),[o,r]);let s=Ee({});s.current.onCloseRequest=()=>{n({openSidebar:null})},s.current.onDock=(B)=>t?.(B),s.current=Y8(s.current,{docked:r,shouldRenderDockButton:!!t&&r!=null});let l=Ee(null);Gm(a,()=>l.current);let g=vo(),C=st(()=>{document.querySelector(".Dialog")||n({openSidebar:null})},[n]);return x3A(l,st((B)=>{B.target.closest(".sidebar-trigger")||(!r||!g.editor.canFitSidebar)&&C()},[C,r,g.editor.canFitSidebar])),le(()=>{let B=(E)=>{E.key===PA.ESCAPE&&(!r||!g.editor.canFitSidebar)&&C()};return document.addEventListener("keydown",B),()=>{document.removeEventListener("keydown",B)}},[C,r,g.editor.canFitSidebar]),N(kB,{...u,className:Se("sidebar",{"sidebar--docked":r},i),ref:l,children:N(pZe.Provider,{value:s.current,children:e})})});vZe.displayName="SidebarInner";var xd=Object.assign(mt((A,e)=>{let t=k0(),{onStateChange:r}=A,i=Ee(t.openSidebar);le(()=>{(!t.openSidebar&&i?.current?.name===A.name||t.openSidebar?.name===A.name&&i?.current?.name!==A.name||i.current?.name===A.name)&&t.openSidebar!==i.current&&r?.(t.openSidebar?.name!==A.name?null:t.openSidebar),i.current=t.openSidebar},[t.openSidebar,r,A.name]);let[u,a]=we(!1);return Ii(()=>(a(!0),()=>a(!1)),[]),u&&t.openSidebar?.name===A.name?Rt(vZe,{...A,ref:e,key:A.name}):null}),{Header:fZe,TabTriggers:DZe,TabTrigger:yZe,Tabs:wZe,Tab:bZe,Trigger:mZe});xd.displayName="Sidebar";var kZe={};QEA(kZe,{ChangeCanvasBackground:()=>YZe,ClearCanvas:()=>MZe,CommandPalette:()=>NZe,Export:()=>HZe,Help:()=>UZe,LiveCollaborationTrigger:()=>JZe,LoadScene:()=>SZe,SaveAsImage:()=>RZe,SaveToActiveFile:()=>LZe,SearchMenu:()=>GZe,Socials:()=>KZe,ToggleTheme:()=>TZe});var FZe=On({active:!1});async function uIr({title:A,description:e,actionLabel:t,color:r}){return new Promise((i)=>{vB.set(FZe,{active:!0,onConfirm:()=>i(!0),onClose:()=>i(!1),onReject:()=>i(!1),title:A,description:e,actionLabel:t,color:r})})}var xZe=({value:A,shortcut:e,onChange:t,choices:r,children:i,name:u})=>{let a=vo();return cA(At,{children:[cA("div",{className:"dropdown-menu-item-base dropdown-menu-item-bare",children:[N("label",{className:"dropdown-menu-item__text",htmlFor:u,children:i}),N(lZe,{name:u,value:A,onChange:t,choices:r})]}),e&&!a.editor.isMobile&&N("div",{className:"dropdown-menu-item__shortcut dropdown-menu-item__shortcut--orphaned",children:e})]})};xZe.displayName="DropdownMenuItemContentRadio";var aIr=xZe,SZe=()=>{let{t:A}=us(),e=Pl(),t=pZ();return e.isActionEnabled(I3A)?N(qc,{icon:j_,onSelect:async()=>{(!t.length||await uIr({title:A("overwriteConfirm.modal.loadFromFile.title"),actionLabel:A("overwriteConfirm.modal.loadFromFile.button"),color:"warning",description:N(Ld,{i18nKey:"overwriteConfirm.modal.loadFromFile.description",bold:(r)=>N("strong",{children:r}),br:()=>N("br",{})})}))&&e.executeAction(I3A)},"data-testid":"load-button",shortcut:is("loadScene"),"aria-label":A("buttons.load"),children:A("buttons.load")}):null};SZe.displayName="LoadScene";var LZe=()=>{let{t:A}=us(),e=Pl();return e.isActionEnabled(aqe)?N(qc,{shortcut:is("saveScene"),"data-testid":"save-button",onSelect:()=>e.executeAction(aqe),icon:vIe,"aria-label":`${A("buttons.save")}`,children:`${A("buttons.save")}`}):null};LZe.displayName="SaveToActiveFile";var RZe=()=>{let A=qn(),{t:e}=us();return N(qc,{icon:YIA,"data-testid":"image-export-button",onSelect:()=>A({openDialog:{name:"imageExport"}}),shortcut:is("imageExport"),"aria-label":e("buttons.exportImage"),children:e("buttons.exportImage")})};RZe.displayName="SaveAsImage";var NZe=(A)=>{let e=qn(),{t}=us();return N(qc,{icon:shA,"data-testid":"command-palette-button",onSelect:()=>{Nu("command_palette","open","menu"),e({openDialog:{name:"commandPalette"}})},shortcut:is("commandPalette"),"aria-label":t("commandPalette.title"),className:A?.className,children:t("commandPalette.title")})};NZe.displayName="CommandPalette";var GZe=(A)=>{let{t:e}=us(),t=Pl();return N(qc,{icon:q1,"data-testid":"search-menu-button",onSelect:()=>{t.executeAction(nZe)},shortcut:is("searchMenu"),"aria-label":e("search.title"),className:A?.className,children:e("search.title")})};GZe.displayName="SearchMenu";var UZe=()=>{let{t:A}=us(),e=Pl();return N(qc,{"data-testid":"help-menu-item",icon:Z_,onSelect:()=>e.executeAction(U3A),shortcut:"?","aria-label":A("helpDialog.title"),children:A("helpDialog.title")})};UZe.displayName="Help";var MZe=()=>{let{t:A}=us(),e=lZ(QZ);return Pl().isActionEnabled(SL)?N(qc,{icon:W1,onSelect:()=>e("clearCanvas"),"data-testid":"clear-canvas-button","aria-label":A("buttons.clearReset"),children:A("buttons.clearReset")}):null};MZe.displayName="ClearCanvas";var TZe=(A)=>{let{t:e}=us(),t=k0(),r=Pl(),i=is("toggleTheme");return r.isActionEnabled(uZ)?A?.allowSystemTheme?N(aIr,{name:"theme",value:A.theme,onChange:(u)=>A.onSelect(u),choices:[{value:ei.LIGHT,label:z_,ariaLabel:`${e("buttons.lightMode")} - ${i}`},{value:ei.DARK,label:q_,ariaLabel:`${e("buttons.darkMode")} - ${i}`},{value:"system",label:Khe,ariaLabel:e("buttons.systemMode")}],children:e("labels.theme")}):N(qc,{onSelect:(u)=>{if(u.preventDefault(),A?.onSelect)A.onSelect(t.theme===ei.DARK?ei.LIGHT:ei.DARK);else return r.executeAction(uZ)},icon:t.theme===ei.DARK?z_:q_,"data-testid":"toggle-dark-mode",shortcut:i,"aria-label":t.theme===ei.DARK?e("buttons.lightMode"):e("buttons.darkMode"),children:t.theme===ei.DARK?e("buttons.lightMode"):e("buttons.darkMode")}):null};TZe.displayName="ToggleTheme";var YZe=()=>{let{t:A}=us(),e=k0(),t=Pl(),r=KL();return e.viewModeEnabled||!r.UIOptions.canvasActions.changeViewBackgroundColor?null:cA("div",{style:{marginTop:"0.5rem"},children:[N("div",{"data-testid":"canvas-background-label",style:{fontSize:".75rem",marginBottom:".5rem"},children:A("labels.canvasBackground")}),N("div",{style:{padding:"0 0.625rem"},children:t.renderAction("changeViewBackgroundColor")})]})};YZe.displayName="ChangeCanvasBackground";var HZe=()=>{let{t:A}=us(),e=qn();return N(qc,{icon:_8,onSelect:()=>{e({openDialog:{name:"jsonExport"}})},"data-testid":"json-export-button","aria-label":A("buttons.export"),children:A("buttons.export")})};HZe.displayName="Export";var KZe=()=>{let{t:A}=us();return cA(At,{children:[N(tZ,{icon:TIA,href:"https://github.com/excalidraw/excalidraw","aria-label":"GitHub",children:"GitHub"}),N(tZ,{icon:wIe,href:"https://x.com/excalidraw","aria-label":"X",children:A("labels.followUs")}),N(tZ,{icon:yIe,href:"https://discord.gg/UexuTaE","aria-label":"Discord",children:A("labels.discordChat")})]})};KZe.displayName="Socials";var JZe=({onSelect:A,isCollaborating:e})=>{let{t}=us();return N(qc,{"data-testid":"collab-button",icon:XIA,className:Se({"active-collab":e}),onSelect:A,children:t("labels.liveCollaboration")})};JZe.displayName="LiveCollaborationTrigger";var YL=(A,e)=>{let t=On(0),r=(i)=>{let{tunnelsJotai:{useAtom:u}}=Zs(),[,a]=u(t),n=Ee({preferHost:!1,counter:0});return Ii(()=>{let o=n.current;return a((s)=>{let l=s+1;return o.counter=l,l}),()=>{a((s)=>{let l=s-1;return o.counter=l,l||(o.preferHost=!1),l})}},[a]),i.__fallback||(n.current.preferHost=!0),!n.current.counter&&i.__fallback&&n.current.preferHost||n.current.counter>1&&i.__fallback?null:N(e,{...i})};return r.displayName=A,r},nIr=Object.assign(YL("MainMenu",({children:A,onSelect:e})=>{let{MainMenuTunnel:t}=Zs(),r=vo(),i=k0(),u=qn(),a=r.editor.isMobile?void 0:()=>u({openMenu:null});return N(t.In,{children:cA(Hu,{open:i.openMenu==="canvas",children:[N(Hu.Trigger,{onToggle:()=>{u({openMenu:i.openMenu==="canvas"?null:"canvas"})},"data-testid":"main-menu-trigger",className:"main-menu-trigger",children:UIA}),cA(Hu.Content,{onClickOutside:a,onSelect:H8(e,()=>{u({openMenu:null})}),children:[A,r.editor.isMobile&&i.collaborators.size>0&&cA("fieldset",{className:"UserList-Wrapper",children:[N("legend",{children:uA("labels.collaborators")}),N(hZe,{mobile:!0,collaborators:i.collaborators,userToFollow:i.userToFollow?.socketId||null})]})]})]})})}),{Trigger:Hu.Trigger,Item:Hu.Item,ItemLink:Hu.ItemLink,ItemCustom:Hu.ItemCustom,Group:Hu.Group,Separator:Hu.Separator,DefaultItems:kZe}),Ol=nIr,K3A=({title:A,children:e,actionLabel:t,onClick:r})=>cA("div",{className:"OverwriteConfirm__Actions__Action",children:[N("h4",{children:A}),N("div",{className:"OverwriteConfirm__Actions__Action__content",children:e}),N(RL,{variant:"outlined",color:"muted",label:t,size:"large",fullWidth:!0,onClick:r})]}),oIr=()=>{let{t:A}=us(),e=Pl(),t=qn();return N(K3A,{title:A("overwriteConfirm.action.exportToImage.title"),actionLabel:A("overwriteConfirm.action.exportToImage.button"),onClick:()=>{e.executeAction(Lze,"ui",!0),t({openDialog:{name:"imageExport"}})},children:A("overwriteConfirm.action.exportToImage.description")})},sIr=()=>{let{t:A}=us(),e=Pl();return N(K3A,{title:A("overwriteConfirm.action.saveToDisk.title"),actionLabel:A("overwriteConfirm.action.saveToDisk.button"),onClick:()=>{e.executeAction(Rze,"ui")},children:A("overwriteConfirm.action.saveToDisk.description")})},Rqe=Object.assign(({children:A})=>N("div",{className:"OverwriteConfirm__Actions",children:A}),{ExportToImage:oIr,SaveToDisk:sIr}),r3A=Object.assign(YL("OverwriteConfirmDialog",({children:A})=>{let{OverwriteConfirmDialogTunnel:e}=Zs(),[t,r]=Ka(FZe);if(!t.active)return null;let i=()=>{t.onClose(),r((a)=>({...a,active:!1}))},u=()=>{t.onConfirm(),r((a)=>({...a,active:!1}))};return N(e.In,{children:N(FB,{onCloseRequest:i,title:!1,size:916,children:cA("div",{className:"OverwriteConfirm",children:[N("h3",{children:t.title}),cA("div",{className:`OverwriteConfirm__Description OverwriteConfirm__Description--color-${t.color}`,children:[N("div",{className:"OverwriteConfirm__Description__icon",children:Dhe}),N("div",{children:t.description}),N("div",{className:"OverwriteConfirm__Description__spacer"}),N(RL,{color:t.color,size:"large",label:t.actionLabel,onClick:u})]}),N(Rqe,{children:A})]})})})}),{Actions:Rqe,Action:K3A}),lIr=On(""),PZe=On(null),gIr=350,cIr=()=>{let A=Nd(),e=qn(),t=Ee(null),[r,i]=Ka(lIr),u=r.trim(),[a,n]=we(!1),[o,s]=we({nonce:null,items:[]}),l=Ee(null),g=Ee(void 0),[C,B]=Ka(PZe),E=A.scene.getNonDeletedElementsMap();le(()=>{a||(u!==l.current||A.scene.getSceneNonce()!==g.current)&&(l.current=null,Nqe(u,A,(p,m)=>{s({nonce:oB(),items:p}),l.current=u,g.current=A.scene.getSceneNonce(),e({searchMatches:p.map((f)=>({id:f.textElement.id,focus:!1,matchedLines:f.matchedLines}))})}))},[a,u,E,A,e,B,g]);let d=()=>{o.items.length>0&&B((p)=>p===null?0:(p+1)%o.items.length)},I=()=>{o.items.length>0&&B((p)=>p===null?0:p-1<0?o.items.length-1:p-1)};le(()=>{e((p)=>({searchMatches:p.searchMatches.map((m,f)=>f===C?{...m,focus:!0}:{...m,focus:!1})}))},[C,e]),le(()=>{if(o.items.length>0&&C!==null){let p=o.items[C];if(p){let m=A.state.zoom.value,f=Gl({text:p.searchQuery,x:p.textElement.x+(p.matchedLines[0]?.offsetX??0),y:p.textElement.y+(p.matchedLines[0]?.offsetY??0),width:p.matchedLines[0]?.width,height:p.matchedLines[0]?.height,fontSize:p.textElement.fontSize,fontFamily:p.textElement.fontFamily}),D=14,w=p.textElement.fontSize,b=w*m<D;if(!CS([f],A.canvas.width/window.devicePixelRatio,A.canvas.height/window.devicePixelRatio,{offsetLeft:A.state.offsetLeft,offsetTop:A.state.offsetTop,scrollX:A.state.scrollX,scrollY:A.state.scrollY,zoom:A.state.zoom},A.scene.getNonDeletedElementsMap(),A.getEditorUIOffsets())||b){let k;b?w>=D?k={fitToContent:!0}:k={fitToViewport:!0,maxZoom:aB(D/w,1)}:k={fitToContent:!0},A.scrollToContent(f,{animate:!0,duration:300,...k,canvasOffsets:A.getEditorUIOffsets()})}}}},[C,o,A]),le(()=>()=>{B(null),l.current=null,g.current=void 0,e({searchMatches:[]}),n(!1)},[e,B]);let h=cZ({goToNextItem:d,goToPreviousItem:I,searchMatches:o});le(()=>oa(window,"keydown",(m)=>{if(m.key===PA.ESCAPE&&!A.state.openDialog&&!A.state.openPopup){m.preventDefault(),m.stopPropagation(),e({openSidebar:null});return}m[PA.CTRL_OR_CMD]&&m.key===PA.F&&(m.preventDefault(),m.stopPropagation(),t.current?.matches(":focus")?e({openSidebar:null}):(A.state.openDialog&&e({openDialog:null}),t.current?.focus(),t.current?.select())),m.target instanceof HTMLElement&&m.target.closest(".layer-ui__search")&&h.searchMatches.items.length&&(m.key===PA.ENTER&&(m.stopPropagation(),h.goToNextItem()),m.key===PA.ARROW_UP?(m.stopPropagation(),h.goToPreviousItem()):m.key===PA.ARROW_DOWN&&(m.stopPropagation(),h.goToNextItem()))},{capture:!0,passive:!1}),[e,h,A]);let Q=`${o.items.length} ${o.items.length===1?uA("search.singleResult"):uA("search.multipleResults")}`;return cA("div",{className:"layer-ui__search",children:[N("div",{className:"layer-ui__search-header",children:N(Y3A,{className:Vm.SEARCH_MENU_INPUT_WRAPPER,value:r,ref:t,placeholder:uA("search.placeholder"),icon:q1,onChange:(p)=>{i(p),n(!0);let m=p.trim();Nqe(m,A,(f,D)=>{s({nonce:oB(),items:f}),B(D),l.current=m,g.current=A.scene.getSceneNonce(),e({searchMatches:f.map((w)=>({id:w.textElement.id,focus:!1,matchedLines:w.matchedLines}))}),n(!1)})},selectOnRender:!0})}),cA("div",{className:"layer-ui__search-count",children:[o.items.length>0&&cA(At,{children:[C!==null&&C>-1?cA("div",{children:[C+1," / ",Q]}):N("div",{children:Q}),cA("div",{className:"result-nav",children:[N(P2,{onSelect:()=>{d()},className:"result-nav-btn",children:ghA}),N(P2,{onSelect:()=>{I()},className:"result-nav-btn",children:Zhe})]})]}),o.items.length===0&&u&&l.current&&N("div",{style:{margin:"1rem auto"},children:uA("search.noMatch")})]}),N(dIr,{matches:o,onItemClick:B,focusIndex:C,searchQuery:u})]})},CIr=(A)=>{let e=[A.preview.moreBefore?"...":"",A.preview.previewText.slice(0,A.preview.indexInSearchQuery),A.preview.previewText.slice(A.preview.indexInSearchQuery,A.preview.indexInSearchQuery+A.searchQuery.length),A.preview.previewText.slice(A.preview.indexInSearchQuery+A.searchQuery.length),A.preview.moreAfter?"...":""];return N("div",{tabIndex:-1,className:Se("layer-ui__result-item",{active:A.highlighted}),onClick:A.onClick,ref:(t)=>{A.highlighted&&t?.scrollIntoView({behavior:"auto",block:"nearest"})},children:N("div",{className:"preview-text",children:e.flatMap((t,r)=>N(ho,{children:r===2?N("b",{children:t}):t},r))})})},BIr=(A)=>N("div",{className:"layer-ui__search-result-container",children:A.matches.items.map((e,t)=>N(CIr,{searchQuery:A.searchQuery,preview:e.preview,highlighted:t===A.focusIndex,onClick:()=>A.onItemClick(t)},e.textElement.id+e.index))}),EIr=(A,e)=>A.matches.nonce===e.matches.nonce&&A.focusIndex===e.focusIndex,dIr=gi(BIr,EIr),IIr=(A,e,t)=>{let r=A.slice(0,e),i=r.split(/\s+/),u=r.endsWith(" "),a=i.length-2-1-(u?0:1),n=i.slice(a<=0?0:a).join(" ")+(u?" ":""),o=20;n=n.length>o?n.slice(-o):n;let s=A.slice(e+t.length),l=s.split(/\s+/),g=!s.startsWith(" "),C=g?6:5,B=(g?"":" ")+l.slice(0,C).join(" ");return{indexInSearchQuery:n.length,previewText:n+t+B,moreBefore:a>0,moreAfter:l.length>C}},hIr=(A,e)=>{let t=A.split(`
`),r=[],i=0;for(let u=0;u<t.length;u++){let a=t[u],n=t[u+1];if(n){let o=e.indexOf(n,i);if(o>a.length+i){let s=o-(a.length+i);for(;s>0;)a+=" ",s--}}r.push(a),i=i+a.length}return r.join(`
`)},QIr=(A,e,t)=>{let r=hIr(A.text,A.originalText).split(`
`),i=[],u=0,a=0;for(let l of r){let g=u,C=g+l.length-1;i.push({line:l,startIndex:g,endIndex:C,lineNumber:a}),u=C+1,a++}let n=t,o=A.originalText.slice(t,t+e.length),s=[];for(let l of i){if(o==="")break;if(n>=l.startIndex&&n<=l.endIndex){let g=l.endIndex+1-n,C=l.line.slice(0,n-l.startIndex),B=o.slice(0,g);o=o.slice(g);let E=y0(C,cu(A),A.lineHeight);if(C===""&&(E.width=0),A.textAlign!=="left"&&l.line.length>0){let p=y0(l.line,cu(A),A.lineHeight),m=A.textAlign==="center"?(A.width-p.width)/2:A.width-p.width;E.width+=m}let{width:d,height:I}=y0(B,cu(A),A.lineHeight),h=E.width,Q=l.lineNumber*E.height;s.push({offsetX:h,offsetY:Q,width:d,height:I}),n+=g}}return s},pIr=(A)=>A.replace(/[.*+?^${}()|[\]\\-]/g,"\\$&"),Nqe=OZe.default((A,e,t)=>{if(!A||A===""){t([],null);return}let r=e.scene.getNonDeletedElements().filter((o)=>Bt(o));r.sort((o,s)=>o.y-s.y);let i=[],u=new RegExp(pIr(A),"gi");for(let o of r){let s=null,l=o.originalText;for(;(s=u.exec(l))!==null;){let g=IIr(l,s.index,A),C=QIr(o,A,s.index);C.length>0&&i.push({textElement:o,searchQuery:A,preview:g,index:s.index,matchedLines:C})}}let a=new Set(e.visibleElements.map((o)=>o.id)),n=i.findIndex((o)=>a.has(o.textElement.id))??null;t(i,n)},gIr),_Ze=YL("DefaultSidebarTrigger",(A)=>{let{DefaultSidebarTriggerTunnel:e}=Zs();return N(e.In,{children:N(xd.Trigger,{...A,className:"default-sidebar-trigger",name:Gc.name})})});_Ze.displayName="DefaultSidebarTrigger";var WZe=({children:A})=>{let{DefaultSidebarTabTriggersTunnel:e}=Zs();return N(e.In,{children:A})};WZe.displayName="DefaultTabTriggers";var Gqe=Object.assign(YL("DefaultSidebar",({children:A,className:e,onDock:t,docked:r,...i})=>{let u=k0(),a=qn(),{DefaultSidebarTabTriggersTunnel:n}=Zs(),o=u.openSidebar?.tab===$m;return Rt(xd,{...i,name:"default",key:"default",className:Se("default-sidebar",e),docked:o||(r??u.defaultSidebarDockedPreference),onDock:o||t===!1||!t&&r!=null?void 0:H8(t,(s)=>{a({defaultSidebarDockedPreference:s})})},cA(xd.Tabs,{children:[N(xd.Header,{children:cA(xd.TabTriggers,{children:[N(xd.TabTrigger,{tab:$m,children:q1}),N(xd.TabTrigger,{tab:G8,children:P_}),N(n.Out,{})]})}),N(xd.Tab,{tab:G8,children:N(zEr,{})}),N(xd.Tab,{tab:$m,children:N(cIr,{})}),A]}))}),{Trigger:_Ze,TabTriggers:WZe}),fIr="small",mIr=(A)=>cA("label",{className:Se("ToolIcon ToolIcon__LaserPointer",`ToolIcon_size_${fIr}`,{"is-mobile":A.isMobile}),title:`${A.title}`,children:[N("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:A.name,onChange:A.onChange,checked:A.checked,"aria-label":A.title,"data-testid":"toolbar-LaserPointer"}),N("div",{className:"ToolIcon__icon",children:nhA})]}),DIr=({canvasRef:A,setError:e})=>{let t=A.current;if(!t)return;let r=t.parentElement;r&&(r.style.background="",e(null),t.replaceChildren())},qZe=async({canvasRef:A,mermaidToExcalidrawLib:e,mermaidDefinition:t,setError:r,data:i})=>{let u=A.current,a=u?.parentElement;if(!(!u||!a)){if(!t){DIr({canvasRef:A,setError:r});return}try{let n=await e.api,o;try{o=await n.parseMermaidToExcalidraw(t)}catch{o=await n.parseMermaidToExcalidraw(t.replace(/"/g,"'"))}let{elements:s,files:l={}}=o;r(null),i.current={elements:TL(s,{regenerateIds:!0}),files:l};let g=await UW({elements:i.current.elements,files:i.current.files,exportPadding:Xm,maxWidthOrHeight:Math.max(a.offsetWidth,a.offsetHeight)*window.devicePixelRatio});try{await H9(g)}catch(C){throw C.name==="CANVAS_POSSIBLY_TOO_BIG"?Error(uA("canvasError.canvasTooBig")):C}a.style.background="var(--default-bg-color)",u.replaceChildren(g)}catch(n){throw a.style.background="var(--default-bg-color)",t&&r(n),n}}},J3A=(A)=>{J2.set(Q9.MERMAID_TO_EXCALIDRAW,A)},zZe=({app:A,data:e,text:t,shouldSaveMermaidDataToStorage:r})=>{let{elements:i,files:u}=e.current;i.length&&(A.addElementsFromPasteOrLibrary({elements:i,files:u,position:"center",fitToContent:!0}),A.setOpenDialog(null),r&&t&&J3A(t))},ZZe=({children:A})=>N("div",{className:"ttd-dialog-panels",children:A}),nZ=({label:A,children:e,panelAction:t,panelActionDisabled:r=!1,onTextSubmitInProgess:i,renderTopRight:u,renderSubmitShortcut:a,renderBottomRight:n})=>cA("div",{className:"ttd-dialog-panel",children:[cA("div",{className:"ttd-dialog-panel__header",children:[N("label",{children:A}),u?.()]}),e,cA("div",{className:Se("ttd-dialog-panel-button-container",{invisible:!t}),style:{display:"flex",alignItems:"center"},children:[cA(P2,{className:"ttd-dialog-panel-button",onSelect:t?t.action:()=>{},disabled:r||i,children:[cA("div",{className:Se({invisible:i}),children:[t?.label,t?.icon&&N("span",{children:t.icon})]}),i&&N(_h,{})]}),!r&&!i&&a?.(),n?.()]})]}),VZe=({input:A,placeholder:e,onChange:t,onKeyboardSubmit:r})=>{let i=Ee(null),u=Ee(r);return u.current=r,le(()=>{if(!u.current)return;let a=i.current;if(a){let n=(o)=>{o[PA.CTRL_OR_CMD]&&o.key===PA.ENTER&&(o.preventDefault(),u.current?.())};return a.addEventListener("keydown",n),()=>{a.removeEventListener("keydown",n)}}},[]),N("textarea",{className:"ttd-dialog-input",onChange:t,value:A,placeholder:e,autoFocus:!0,ref:i})},yIr=({error:A})=>cA("div",{"data-testid":"ttd-dialog-output-error",className:"ttd-dialog-output-error",children:["Error! ",N("p",{children:A})]}),jZe=({error:A,canvasRef:e,loaded:t})=>cA("div",{className:"ttd-dialog-output-wrapper",children:[A&&N(yIr,{error:A.message}),t?N("div",{ref:e,style:{opacity:A?"0.15":1},className:"ttd-dialog-output-canvas-container"}):N(_h,{size:"2rem"})]}),XZe=()=>cA("div",{className:"ttd-dialog-submit-shortcut",children:[N("div",{className:"ttd-dialog-submit-shortcut__key",children:Fe("CtrlOrCmd")}),N("div",{className:"ttd-dialog-submit-shortcut__key",children:Fe("Enter")})]}),wIr=`flowchart TD
A[Christmas] -->|Get money| B(Go shopping)
B --> C{Let me think}
C -->|One| D[Laptop]
C -->|Two| E[iPhone]
C -->|Three| F[Car]`,Uqe=t2(J3A,300),bIr=({mermaidToExcalidrawLib:A})=>{let[e,t]=we(()=>J2.get(Q9.MERMAID_TO_EXCALIDRAW)||wIr),r=qP(e.trim()),[i,u]=we(null),a=Ee(null),n=Ee({elements:[],files:null}),o=Nd();le(()=>{qZe({canvasRef:a,data:n,mermaidToExcalidrawLib:A,setError:u,mermaidDefinition:r}).catch((l)=>{fIA()&&console.error("Failed to parse mermaid definition",l)}),Uqe(r)},[r,A]),le(()=>()=>{Uqe.flush()},[]);let s=()=>{zZe({app:o,data:n,text:e,shouldSaveMermaidDataToStorage:!0})};return cA(At,{children:[N("div",{className:"ttd-dialog-desc",children:N(Ld,{i18nKey:"mermaid.description",flowchartLink:(l)=>N("a",{href:"https://mermaid.js.org/syntax/flowchart.html",children:l}),sequenceLink:(l)=>N("a",{href:"https://mermaid.js.org/syntax/sequenceDiagram.html",children:l}),classLink:(l)=>N("a",{href:"https://mermaid.js.org/syntax/classDiagram.html",children:l})})}),cA(ZZe,{children:[N(nZ,{label:uA("mermaid.syntax"),children:N(VZe,{input:e,placeholder:"Write Mermaid diagram defintion here...",onChange:(l)=>t(l.target.value),onKeyboardSubmit:()=>{s()}})}),N(nZ,{label:uA("mermaid.preview"),panelAction:{action:()=>{s()},label:uA("mermaid.button"),icon:q8},renderSubmitShortcut:()=>N(XZe,{}),children:N(jZe,{canvasRef:a,loaded:A.loaded,error:i})})]})]})},vIr=bIr,$Ze=(A)=>{let e=qn(),t=Ee(null),r=Ee(0);return N(Oz,{ref:t,className:"ttd-dialog-tabs-root",value:A.tab,onValueChange:(i)=>{if(!i)return;let u=t.current?.closest(".Modal__content");if(u){let a=u.offsetHeight||0;a>r.current&&(r.current=a,u.style.minHeight=`min(${r.current}px, 100%)`)}A.dialog==="ttd"&&DIA(["text-to-diagram","mermaid"],i)&&e({openDialog:{name:A.dialog,tab:i}})},children:A.children})};$Ze.displayName="TTDDialogTabs";var kIr=$Ze,AVe=({children:A,...e})=>N(Pz,{className:"ttd-dialog-triggers",...e,children:A});AVe.displayName="TTDDialogTabTriggers";var y3A=({children:A,tab:e,onSelect:t,...r})=>N(_z,{value:e,asChild:!0,onSelect:t,children:N("button",{type:"button",className:"ttd-dialog-tab-trigger",...r,children:A})});y3A.displayName="TTDDialogTabTrigger";var w3A=({tab:A,children:e,...t})=>N(Wz,{...t,value:A,children:e});w3A.displayName="TTDDialogTab";var i3A=3,R5=1000,FIr=On(null),xIr=On(null),SIr=(A)=>{let e=k0();return e.openDialog?.name!=="ttd"?null:N(LIr,{...A,tab:e.openDialog.tab})},LIr=YL("TTDDialogBase",({tab:A,...e})=>{let t=Nd(),r=qn(),i=Ee(null),[u,a]=Ka(xIr),[n,o]=we(u?.prompt??""),s=n.trim(),l=(D)=>{o(D.target.value),a((w)=>({generatedResponse:w?.generatedResponse??null,prompt:D.target.value}))},[g,C]=we(!1),[B,E]=Ka(FIr),d=async()=>{if(s.length>R5||s.length<i3A||g||B?.rateLimitRemaining===0||"__fallback"in e){s.length<i3A&&f(Error(`Prompt is too short (min ${i3A} characters)`)),s.length>R5&&f(Error(`Prompt is too long (max ${R5} characters)`));return}try{C(!0),Nu("ai","generate","ttd");let{generatedResponse:D,error:w,rateLimit:b,rateLimitRemaining:k}=await e.onTextSubmit(s);if(typeof D=="string"&&a((v)=>({generatedResponse:D,prompt:v?.prompt??null})),o9(b)&&o9(k)&&E({rateLimit:b,rateLimitRemaining:k}),w){f(w);return}if(!D){f(Error("Generation failed"));return}try{await qZe({canvasRef:i,data:p,mermaidToExcalidrawLib:h,setError:f,mermaidDefinition:D}),Nu("ai","mermaid parse success","ttd")}catch(v){console.info(`%cTTD mermaid render errror: ${v.message}`,"color: red"),console.info(`>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
TTD mermaid definition render errror: ${v.message}`,"color: yellow"),Nu("ai","mermaid parse failed","ttd"),f(Error("Generated an invalid diagram :(. You may also try a different prompt."))}}catch(D){let w=D.message;(!w||w==="Failed to fetch")&&(w="Request failed"),f(Error(w))}finally{C(!1)}},I=Ee(d);I.current=d;let[h,Q]=we({loaded:!1,api:Promise.resolve().then(() => (IP(),mge))});le(()=>{(async()=>{await h.api,Q((D)=>({...D,loaded:!0}))})()},[h.api]);let p=Ee({elements:[],files:null}),[m,f]=we(null);return N(FB,{className:"ttd-dialog",onCloseRequest:()=>{t.setOpenDialog(null)},size:1200,title:!1,...e,autofocus:!1,children:cA(kIr,{dialog:"ttd",tab:A,children:["__fallback"in e&&e.__fallback?N("p",{className:"dialog-mermaid-title",children:uA("mermaid.title")}):cA(AVe,{children:[N(y3A,{tab:"text-to-diagram",children:cA("div",{style:{display:"flex",alignItems:"center"},children:[uA("labels.textToDiagram"),N("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"1px 6px",marginLeft:"10px",fontSize:10,borderRadius:"12px",background:"var(--color-promo)",color:"var(--color-surface-lowest)"},children:"AI Beta"})]})}),N(y3A,{tab:"mermaid",children:"Mermaid"})]}),N(w3A,{className:"ttd-dialog-content",tab:"mermaid",children:N(vIr,{mermaidToExcalidrawLib:h})}),!("__fallback"in e)&&cA(w3A,{className:"ttd-dialog-content",tab:"text-to-diagram",children:[N("div",{className:"ttd-dialog-desc",children:"Currently we use Mermaid as a middle step, so you'll get best results if you describe a diagram, workflow, flow chart, and similar."}),cA(ZZe,{children:[N(nZ,{label:uA("labels.prompt"),panelAction:{action:d,label:"Generate",icon:q8},onTextSubmitInProgess:g,panelActionDisabled:s.length>R5||B?.rateLimitRemaining===0,renderTopRight:()=>B?cA("div",{className:"ttd-dialog-rate-limit",style:{fontSize:12,marginLeft:"auto",color:B.rateLimitRemaining===0?"var(--color-danger)":void 0},children:[B.rateLimitRemaining," requests left today"]}):null,renderSubmitShortcut:()=>N(XZe,{}),renderBottomRight:()=>{if(typeof u?.generatedResponse=="string")return cA("div",{className:"excalidraw-link",style:{marginLeft:"auto",fontSize:14},onClick:()=>{typeof u?.generatedResponse=="string"&&(J3A(u.generatedResponse),r({openDialog:{name:"ttd",tab:"mermaid"}}))},children:["View as Mermaid",N(BZ,{icon:q8})]});let D=s.length/R5;return D>0.8?cA("div",{style:{marginLeft:"auto",fontSize:12,fontFamily:"monospace",color:D>1?"var(--color-danger)":void 0},children:["Length: ",s.length,"/",R5]}):null},children:N(VZe,{onChange:l,input:n,placeholder:"Describe what you want to see...",onKeyboardSubmit:()=>{I.current()}})}),N(nZ,{label:"Preview",panelAction:{action:()=>{console.info("Panel action clicked"),zZe({app:t,data:p})},label:"Insert",icon:q8},children:N(jZe,{canvasRef:i,error:m,loaded:h.loaded})})]})]})]})})}),RIr=0.01,Wh=(A,e)=>!(e==="height"&&Bt(A)||e==="width"&&Bt(A)||e==="angle"&&nr(A)),rs=(A,e)=>{let t=A+e/2;return t-t%e},oZ=(A,e,t)=>Object.keys(A).map((r)=>({original:(t??e).get(r),latest:e.get(r)})).filter((r)=>r.original!==void 0&&r.latest!==void 0),ML=(A,e,t,r,i,u,a,n=!0)=>{let o=r.get(t.id);if(!o)return;let[s,l]=[t.x+t.width/2,t.y+t.height/2],[g,C]=De(X(t.x,t.y),X(s,l),t.angle),B=A-g,E=e-C,[d,I]=De(X(A,e),X(s+B,l+E),-t.angle);xe(o,{x:d,y:I},n),b3A(o,r,i,u);let h=Ur(t,a);if(h){let Q=r.get(h.id);Q&&xe(Q,{x:h.x+B,y:h.y+E},n)}},O3A=(A,e)=>{let t=V1(e).map((r)=>Yu(A,r).reduce((i,u)=>(i[u.id]=!0,i),{}));return A.filter((r)=>!o2(r)).forEach((r)=>{t.push({[r.id]:!0})}),t},b3A=(A,e,t,r,i)=>{Gr(A)?j8([A],e,t,r,!0,[],i?.zoom):Hs(A,e,i)},NIr=({label:A,icon:e,dragInputCallback:t,value:r,elements:i,editable:u=!0,shouldKeepAspectRatio:a,property:n,scene:o,appState:s,sensitivity:l=1})=>{let g=Nd(),C=Ee(null),B=Ee(null),[E,d]=we(r.toString()),I=Ee(null);I.current||(I.current={originalAppState:Bd(s),originalElements:i,lastUpdatedValue:E,updatePending:!1}),le(()=>{let p=r.toString();d(p),I.current.lastUpdatedValue=p},[r]);let h=(p,m,f)=>{if(!I.current.updatePending)return!1;I.current.updatePending=!1;let D=Number(p);if(isNaN(D)){d(r.toString());return}let w=Number(D.toFixed(2)),b=Number(r);(isNaN(b)||Math.abs(w-b)>=RIr)&&(I.current.lastUpdatedValue=p,t({accumulatedChange:0,instantChange:0,originalElements:m,originalElementsMap:g.scene.getNonDeletedElementsMap(),shouldKeepAspectRatio:a,shouldChangeByStepSize:!1,scene:o,nextValue:w,property:n,originalAppState:f,setInputValue:(k)=>d(String(k))}),g.syncActionResult({captureUpdate:be.IMMEDIATELY}))},Q=Ee({});return Q.current.handleInputValue=h,le(()=>{let p=C.current,m=Q.current;return()=>{let f=p?.value;f&&m.handleInputValue?.(f,I.current.originalElements,I.current.originalAppState),window.removeEventListener("pointermove",m.onPointerMove,!1),window.removeEventListener("pointerup",m.onPointerUp,!1)}},[u]),u?cA("div",{className:Se("drag-input-container",!u&&"disabled"),"data-testid":A,children:[N("div",{className:"drag-input-label",ref:B,onPointerDown:(p)=>{if(C.current&&u){document.body.classList.add("excalidraw-cursor-resize");let m=Number(C.current.value);isNaN(m)&&(m=0);let f=null,D=g.scene.getNonDeletedElements().reduce((F,T)=>(F.set(T.id,j1(T)),F),new Map),w=i.map((F)=>D.get(F.id)),b=Bd(s),k=0,v=0,S=(F)=>{if(f&&D!==null&&w!==null){let T=F.clientX-f.x;T!==0&&(v+=T,Math.abs(v)>=l&&(v=Math.sign(v)*Math.floor(Math.abs(v)/l),k+=v,t({accumulatedChange:k,instantChange:v,originalElements:w,originalElementsMap:D,shouldKeepAspectRatio:a,shouldChangeByStepSize:F.shiftKey,property:n,scene:o,originalAppState:b,setInputValue:(R)=>d(String(R))}),v=0))}f={x:F.clientX,y:F.clientY}},x=()=>{window.removeEventListener("pointermove",S,!1),g.syncActionResult({captureUpdate:be.IMMEDIATELY}),f=null,k=0,v=0,w=null,D=null,document.body.classList.remove("excalidraw-cursor-resize"),window.removeEventListener("pointerup",x,!1)};Q.current.onPointerMove=S,Q.current.onPointerUp=x,window.addEventListener("pointermove",S,!1),window.addEventListener("pointerup",x,!1)}},onPointerEnter:()=>{B.current&&(B.current.style.cursor="ew-resize")},children:e?N(BZ,{icon:e}):A}),N("input",{className:"drag-input",autoComplete:"off",spellCheck:"false",onKeyDown:(p)=>{if(u){let m=p.target;m instanceof HTMLInputElement&&p.key===PA.ENTER&&(h(m.value,i,s),g.focusContainer())}},ref:C,value:E,onChange:(p)=>{I.current.updatePending=!0,d(p.target.value)},onFocus:(p)=>{p.target.select(),I.current.originalElements=i,I.current.originalAppState=Bd(s)},onBlur:(p)=>{E?u&&h(p.target.value,I.current.originalElements,I.current.originalAppState):d(r.toString())},disabled:!u})]}):null},zh=NIr,Mqe=10,GIr=(A)=>A.type==="image",UIr=({accumulatedChange:A,originalElements:e,originalElementsMap:t,shouldKeepAspectRatio:r,shouldChangeByStepSize:i,nextValue:u,property:a,originalAppState:n,instantChange:o,scene:s})=>{let l=s.getNonDeletedElementsMap(),g=e[0],C=l.get(g.id);if(g&&C){let B=r||GIr(g),E=g.width/g.height;if(n.croppingElementId===g.id){let p=l.get(g.id);if(!p||!Ni(p)||!p.crop)return;let m=p.crop,f={...m},D=p.scale[0]===-1,w=p.scale[1]===-1,{width:b,height:k}=sd(p),v=m.naturalWidth/b,S=m.naturalHeight/k,x=D?m.width+m.x:m.naturalWidth-m.x,F=w?m.height+m.y:m.naturalHeight-m.y,T=Qo*v,R=Qo*S;if(u!==void 0){if(a==="width"){let H=u*v,J=jr(H,T,x);f={...f,width:J,x:D?m.x+m.width-J:m.x}}else if(a==="height"){let H=u*S,J=jr(H,R,F);f={...f,height:J,y:w?m.y+m.height-J:m.y}}xe(p,{crop:f,width:f.width/(m.naturalWidth/b),height:f.height/(m.naturalHeight/k)});return}let L=a==="width"?o:0,M=a==="height"?o:0,U=jr(m.width+L,T,x),Y=jr(m.height+M,T,F);f={...m,x:D?m.x+m.width-U:m.x,y:w?m.y+m.height-Y:m.y,width:U,height:Y},xe(p,{crop:f,width:f.width/(m.naturalWidth/b),height:f.height/(m.naturalHeight/k)});return}if(u!==void 0){let p=Math.max(a==="width"?u:B?u*E:g.width,Fg),m=Math.max(a==="height"?u:B?u/E:g.height,Fg);Y9(p,m,C,g,l,t,a==="width"?"e":"s",{shouldMaintainAspectRatio:B});return}let d=a==="width"?A:0,I=a==="height"?A:0,h=Math.max(0,g.width+d);a==="width"&&(i?h=rs(h,Mqe):h=Math.round(h));let Q=Math.max(0,g.height+I);a==="height"&&(i?Q=rs(Q,Mqe):Q=Math.round(Q)),B&&(a==="width"?Q=Math.round(h/E*100)/100:h=Math.round(Q*E*100)/100),Q=Math.max(Fg,Q),h=Math.max(Fg,h),Y9(h,Q,C,g,l,t,a==="width"?"e":"s",{shouldMaintainAspectRatio:B})}},MIr=({property:A,element:e,scene:t,appState:r})=>{let i=aB(A==="width"?e.width:e.height,2);if(r.croppingElementId&&r.croppingElementId===e.id&&Ni(e)&&e.crop){let{width:u,height:a}=sd(e);if(A==="width"){let n=u/e.crop.naturalWidth;i=aB(e.crop.width*n,2)}if(A==="height"){let n=a/e.crop.naturalHeight;i=aB(e.crop.height*n,2)}}return N(zh,{label:A==="width"?"W":"H",elements:[e],dragInputCallback:UIr,value:i,editable:Wh(e,A),scene:t,appState:r,property:A})},Tqe=MIr;var TIr=15,YIr=({accumulatedChange:A,originalElements:e,shouldChangeByStepSize:t,nextValue:r,scene:i})=>{let u=i.getNonDeletedElementsMap(),a=i.getNonDeletedElements(),n=e[0];if(n&&!pt(n)){let o=u.get(n.id);if(!o)return;if(r!==void 0){let E=x1(r);xe(o,{angle:E}),b3A(o,u,a,i);let d=Ur(o,u);d&&!Jr(o)&&xe(d,{angle:E});return}let s=Math.round(p9(n.angle)*100)/100,l=Math.round(A),g=(s+l)%360;t&&(g=rs(g,TIr)),g=g<0?g+360:g;let C=x1(g);xe(o,{angle:C}),b3A(o,u,a,i);let B=Ur(o,u);B&&!Jr(o)&&xe(B,{angle:C})}},HIr=({element:A,scene:e,appState:t,property:r})=>N(zh,{label:"A",icon:thA,value:Math.round(p9(A.angle)%360*100)/100,elements:[A],dragInputCallback:YIr,editable:Wh(A,"angle"),scene:e,appState:t,property:r}),KIr=HIr,Yqe=4,JIr=4,OIr=({accumulatedChange:A,originalElements:e,shouldChangeByStepSize:t,nextValue:r,scene:i})=>{let u=i.getNonDeletedElementsMap(),a=e[0];if(a){let n=u.get(a.id);if(!n||!Bt(n))return;let o;if(r!==void 0)o=Math.max(Math.round(r),Yqe);else if(a.type==="text"){let s=Math.round(a.fontSize),l=Math.round(A);o=Math.max(s+l,Yqe),t&&(o=rs(o,JIr))}o&&(xe(n,{fontSize:o}),V0(n,i.getContainerElement(n),i.getNonDeletedElementsMap()))}},PIr=({element:A,scene:e,appState:t,property:r})=>{let i=Bt(A)?A:Ul(A)?Ur(A,e.getNonDeletedElementsMap()):null;return i?N(zh,{label:"F",value:Math.round(i.fontSize*10)/10,elements:[i],dragInputCallback:OIr,icon:W8,appState:t,scene:e,property:r}):null},_Ir=PIr,N5=10,WIr=(A,e,t,r)=>{let i=r.x-A,u=r.y-e,a=r.width*t,n=r.height*t,o=A+i*t,s=e+u*t;return{width:a,height:n,x:o,y:s,..._W(r,a,n,!1),...Bt(r)?{fontSize:r.fontSize*t}:{}}},qIr=(A,e,t,r,i,u,a,n)=>{let o=WIr(A,e,r,u);xe(i,o,!1);let s=Ur(u,n);if(s){let l=s.fontSize*r;Hs(i,a,{newSize:{width:o.width,height:o.height}});let g=a.get(s.id);g&&Bt(g)&&(xe(g,{fontSize:l},!1),L9(i,a,t==="width"?"e":"s",!0))}},Hqe=(A,e,t,r,i,u,a,n,o,s)=>{u==="width"?e=Math.round(A/r*100)/100:A=Math.round(e*r*100)/100;let l=e/t;for(let g=0;g<n.length;g++){let C=n[g],B=a[g];qIr(i[0],i[1],u,l,B,C,o,s)}},zIr=({accumulatedChange:A,originalElements:e,originalElementsMap:t,originalAppState:r,shouldChangeByStepSize:i,nextValue:u,scene:a,property:n})=>{let o=a.getNonDeletedElementsMap(),s=O3A(e,r);if(u!==void 0){for(let C of s){let B=oZ(C,o,t);if(B.length>1){let E=B.map((k)=>k.latest),d=B.map((k)=>k.original),[I,h,Q,p]=Pi(d),m=Q-I,f=p-h,D=m/f,w=Math.max(Fg,n==="width"?Math.max(0,u):m),b=Math.max(Fg,n==="height"?Math.max(0,u):f);Hqe(w,b,f,D,X(I,h),n,E,d,o,t)}else{let[E]=B,d=E?.latest,I=E?.original;if(d&&I&&Wh(d,n)){let h=n==="width"?Math.max(0,u):d.width;n==="width"&&(i?h=rs(h,N5):h=Math.round(h));let Q=n==="height"?Math.max(0,u):d.height;n==="height"&&(i?Q=rs(Q,N5):Q=Math.round(Q)),h=Math.max(Fg,h),Q=Math.max(Fg,Q),Y9(h,Q,d,I,o,t,n==="width"?"e":"s",{shouldInformMutation:!1})}}}a.triggerUpdate();return}let l=n==="width"?A:0,g=n==="height"?A:0;for(let C of s){let B=oZ(C,o,t);if(B.length>1){let E=B.map((k)=>k.latest),d=B.map((k)=>k.original),[I,h,Q,p]=Pi(d),m=Q-I,f=p-h,D=m/f,w=Math.max(0,m+l);n==="width"&&(i?w=rs(w,N5):w=Math.round(w));let b=Math.max(0,f+g);n==="height"&&(i?b=rs(b,N5):b=Math.round(b)),w=Math.max(Fg,w),b=Math.max(Fg,b),Hqe(w,b,f,D,X(I,h),n,E,d,o,t)}else{let[E]=B,d=E?.latest,I=E?.original;if(d&&I&&Wh(d,n)){let h=Math.max(0,I.width+l);n==="width"&&(i?h=rs(h,N5):h=Math.round(h));let Q=Math.max(0,I.height+g);n==="height"&&(i?Q=rs(Q,N5):Q=Math.round(Q)),h=Math.max(Fg,h),Q=Math.max(Fg,Q),Y9(h,Q,d,I,o,t,n==="width"?"e":"s",{shouldInformMutation:!1})}}}a.triggerUpdate()},ZIr=({property:A,elements:e,elementsMap:t,atomicUnits:r,scene:i,appState:u})=>{let a=Ut(()=>r.map((s)=>{let l=oZ(s,t);if(l.length>1){let[C,B,E,d]=Pi(l.map((I)=>I.latest));return Math.round((A==="width"?E-C:d-B)*100)/100}let[g]=l;return Math.round((A==="width"?g.latest.width:g.latest.height)*100)/100}),[t,r,A]),n=new Set(a).size===1?Math.round(a[0]*100)/100:"Mixed",o=a.length>0;return N(zh,{label:A==="width"?"W":"H",elements:e,dragInputCallback:zIr,value:n,editable:o,appState:u,property:A,scene:i})},Kqe=ZIr,VIr=15,jIr=({accumulatedChange:A,originalElements:e,shouldChangeByStepSize:t,nextValue:r,property:i,scene:u})=>{let a=u.getNonDeletedElementsMap(),n=e.map((s)=>a.get(s.id)).filter((s)=>s&&!o2(s)&&Wh(s,i)),o=e.filter((s)=>!o2(s)&&Wh(s,i));if(r!==void 0){let s=x1(r);for(let l of n){if(!l)continue;xe(l,{angle:s},!1);let g=Ur(l,a);g&&!Jr(l)&&xe(g,{angle:s},!1)}u.triggerUpdate();return}for(let s=0;s<n.length;s++){let l=n[s];if(!l)continue;let g=o[s],C=Math.round(p9(g.angle)*100)/100,B=Math.round(A),E=(C+B)%360;t&&(E=rs(E,VIr)),E=E<0?E+360:E;let d=x1(E);xe(l,{angle:d},!1);let I=Ur(l,a);I&&!Jr(l)&&xe(I,{angle:d},!1)}u.triggerUpdate()},XIr=({elements:A,scene:e,appState:t,property:r})=>{let i=A.filter((o)=>!o2(o)&&Wh(o,"angle")),u=i.map((o)=>Math.round(p9(o.angle)%360*100)/100),a=new Set(u).size===1?u[0]:"Mixed",n=i.some((o)=>Wh(o,"angle"));return N(zh,{label:"A",icon:thA,value:a,elements:A,dragInputCallback:jIr,editable:n,appState:t,scene:e,property:r})},$Ir=XIr,Jqe=4,Ahr=4,ehr=(A,e)=>A.reduce((t,r)=>{if(!r||o2(r))return t;if(Bt(r))return t.push(r),t;if(Ul(r)){let i=Ur(r,e);if(i)return t.push(i),t}return t},[]),thr=({accumulatedChange:A,originalElements:e,shouldChangeByStepSize:t,nextValue:r,scene:i})=>{let u=i.getNonDeletedElementsMap(),a=e.map((o)=>u.get(o.id)),n;if(r){n=Math.max(Math.round(r),Jqe);for(let o of a)xe(o,{fontSize:n},!1),V0(o,i.getContainerElement(o),u,!1);i.triggerUpdate()}else{let o=e;for(let s=0;s<a.length;s++){let l=a[s],g=o[s],C=Math.round(g.fontSize),B=Math.round(A),E=Math.max(C+B,Jqe);t&&(E=rs(E,Ahr)),xe(l,{fontSize:E},!1),V0(l,i.getContainerElement(l),u,!1)}i.triggerUpdate()}},rhr=({elements:A,scene:e,appState:t,property:r,elementsMap:i})=>{let u=ehr(A,i);if(!u.length)return null;let a=u.map((s)=>Math.round(s.fontSize*10)/10),n=new Set(a).size===1?a[0]:"Mixed",o=a.length>0;return N(zh,{label:"F",icon:W8,elements:u,dragInputCallback:thr,value:n,editable:o,scene:e,property:r,appState:t})},ihr=rhr,Oqe=10,uhr=({accumulatedChange:A,instantChange:e,originalElements:t,originalElementsMap:r,shouldChangeByStepSize:i,nextValue:u,property:a,scene:n,originalAppState:o})=>{let s=n.getNonDeletedElementsMap(),l=n.getNonDeletedElements(),g=t[0],[C,B]=[g.x+g.width/2,g.y+g.height/2],[E,d]=De(X(g.x,g.y),X(C,B),g.angle);if(o.croppingElementId===g.id){let m=s.get(g.id);if(!m||!Ni(m)||!m.crop)return;let f=m.crop,D=f,w=m.scale[0]===-1,b=m.scale[1]===-1,{width:k,height:v}=sd(m);if(u!==void 0){if(a==="x"){let F=u*(f.naturalWidth/k);w?D={...f,x:jr(f.naturalWidth-F-f.width,0,f.naturalWidth-f.width)}:D={...f,x:jr(u*(f.naturalWidth/k),0,f.naturalWidth-f.width)}}a==="y"&&(D={...f,y:jr(u*(f.naturalHeight/v),0,f.naturalHeight-f.height)}),xe(m,{crop:D});return}let S=(a==="x"?e:0)*(w?-1:1),x=(a==="y"?e:0)*(b?-1:1);D={...f,x:jr(f.x+S,0,f.naturalWidth-f.width),y:jr(f.y+x,0,f.naturalHeight-f.height)},xe(m,{crop:D});return}if(u!==void 0){ML(a==="x"?u:E,a==="y"?u:d,g,s,l,n,r);return}let I=a==="x"?A:0,h=a==="y"?A:0,Q=a==="x"?Math.round(i?rs(g.x+I,Oqe):E+I):E,p=a==="y"?Math.round(i?rs(g.y+h,Oqe):d+h):d;ML(Q,p,g,s,l,n,r)},ahr=({property:A,element:e,elementsMap:t,scene:r,appState:i})=>{let[u,a]=De(X(e.x,e.y),X(e.x+e.width/2,e.y+e.height/2),e.angle),n=aB(A==="x"?u:a,2);if(i.croppingElementId===e.id&&Ni(e)&&e.crop){let o=BQe(e);o&&(n=aB(A==="x"?o.x:o.y,2))}return N(zh,{label:A==="x"?"X":"Y",elements:[e],dragInputCallback:uhr,scene:r,value:n,property:A,appState:i})},Pqe=ahr,nhr=10,ohr=(A,e,t,r,i,u,a,n)=>{for(let o=0;o<r.length;o++){let s=i[o],[l,g]=[s.x+s.width/2,s.y+s.height/2],[C,B]=De(X(s.x,s.y),X(l,g),s.angle),E=A==="x"?Math.round(C+e):C,d=A==="y"?Math.round(B+t):B;ML(E,d,s,u,r,n,a,!1)}},shr=(A,e,t,r,i,u,a)=>{let[n,o,,]=Pi(t),s=A-n,l=e-o;for(let g=0;g<t.length;g++){let C=t[g],B=r.get(C.id);if(B&&(!Bt(B)||!B.containerId)){let[E,d]=[B.x+B.width/2,B.y+B.height/2],[I,h]=De(X(B.x,B.y),X(E,d),B.angle);ML(I+s,h+l,C,r,i,a,u,!1)}}},lhr=({accumulatedChange:A,originalElements:e,originalElementsMap:t,shouldChangeByStepSize:r,nextValue:i,property:u,scene:a,originalAppState:n})=>{let o=a.getNonDeletedElementsMap(),s=a.getNonDeletedElements();if(i!==void 0){for(let g of O3A(e,n)){let C=oZ(g,o,t);if(C.length>1){let[B,E,,]=Pi(C.map((d)=>d.latest));shr(u==="x"?i:B,u==="y"?i:E,C.map((d)=>d.original),o,s,t,a)}else{let B=C[0]?.original,E=C[0]?.latest;if(B&&E&&Wh(E,u)){let[d,I]=[B.x+B.width/2,B.y+B.height/2],[h,Q]=De(X(B.x,B.y),X(d,I),B.angle);ML(u==="x"?i:h,u==="y"?i:Q,B,o,s,a,t,!1)}}}a.triggerUpdate();return}let l=r?rs(A,nhr):A;ohr(u,u==="x"?l:0,u==="y"?l:0,e,e,o,t,a),a.triggerUpdate()},ghr=({property:A,elements:e,elementsMap:t,atomicUnits:r,scene:i,appState:u})=>{let a=Ut(()=>r.map((o)=>{let s=Object.keys(o).map((d)=>t.get(d)).filter((d)=>d!==void 0);if(s.length>1){let[d,I]=Pi(s);return Math.round((A==="x"?d:I)*100)/100}let[l]=s,[g,C]=[l.x+l.width/2,l.y+l.height/2],[B,E]=De(X(l.x,l.y),X(g,C),l.angle);return Math.round((A==="x"?B:E)*100)/100}),[r,t,A]),n=new Set(a).size===1?a[0]:"Mixed";return N(zh,{label:A==="x"?"X":"Y",elements:e,dragInputCallback:lhr,value:n,property:A,scene:i,appState:u})},_qe=ghr,Wqe=5,chr=({property:A,scene:e,appState:t,setAppState:r})=>N(zh,{label:"Grid step",sensitivity:8,elements:[],dragInputCallback:({nextValue:i,instantChange:u,shouldChangeByStepSize:a,setInputValue:n})=>{r((o)=>{let s;return i?s=i:u&&(s=a?rs(o.gridStep+Wqe*Math.sign(u),Wqe):o.gridStep+u),s?(s=xhA(s),n(s),{gridStep:s}):(n(o.gridStep),null)})},scene:e,value:t.gridStep,property:A,appState:t}),Chr=chr,Bhr=50,P3A=(A)=>{let e=JL(),t=A.app.scene.getSceneNonce()||1,r=A.app.scene.getSelectedElements({selectedElementIds:e.selectedElementIds,includeBoundTextElement:!1}),i=S9(A.app);return N(Ehr,{...A,appState:e,sceneNonce:t,selectedElements:r,gridModeEnabled:i})},Xu=({children:A,columns:e=1,heading:t,style:r,...i})=>N("div",{className:Se("exc-stats__row",{"exc-stats__row--heading":t}),style:{gridTemplateColumns:`repeat(${e}, 1fr)`,...r},...i,children:A});Xu.displayName="StatsRow";var sZ=({children:A,order:e,style:t,...r})=>N("div",{className:"exc-stats__rows",style:{order:e,...t},...r,children:A});sZ.displayName="StatsRows";P3A.StatsRow=Xu;P3A.StatsRows=sZ;var Ehr=gi(({app:A,onClose:e,renderCustomStats:t,selectedElements:r,appState:i,sceneNonce:u,gridModeEnabled:a})=>{let n=A.scene,o=n.getNonDeletedElements(),s=n.getNonDeletedElementsMap(),l=qn(),g=r.length===1?r[0]:null,C=r.length>1?r:null,B=i.croppingElementId&&Ni(g),E=B?sd(g):null,[d,I]=we({width:0,height:0}),h=Ut(()=>eVe.default((m)=>{let f=Pi(m);I({width:Math.round(f[2])-Math.round(f[0]),height:Math.round(f[3])-Math.round(f[1])})},Bhr),[]);le(()=>{h(o)},[u,o,h]),le(()=>()=>h.cancel(),[h]);let Q=Ut(()=>O3A(r,i),[r,i]),p=Ut(()=>fQA(r),[r]);return N("div",{className:"exc-stats",children:cA(kB,{padding:3,children:[cA("div",{className:"title",children:[N("h2",{children:uA("stats.title")}),N("div",{className:"close",onClick:e,children:u2})]}),cA(E3A,{label:N("h3",{children:uA("stats.generalStats")}),open:!!(i.stats.panels&Km.generalStats),openTrigger:()=>l((m)=>({stats:{open:!0,panels:m.stats.panels^Km.generalStats}})),children:[cA(sZ,{children:[N(Xu,{heading:!0,children:uA("stats.scene")}),cA(Xu,{columns:2,children:[N("div",{children:uA("stats.shapes")}),N("div",{children:o.length})]}),cA(Xu,{columns:2,children:[N("div",{children:uA("stats.width")}),N("div",{children:d.width})]}),cA(Xu,{columns:2,children:[N("div",{children:uA("stats.height")}),N("div",{children:d.height})]}),a&&cA(At,{children:[N(Xu,{heading:!0,children:"Canvas"}),N(Xu,{children:N(Chr,{property:"gridStep",scene:n,appState:i,setAppState:l})})]})]}),t?.(o,i)]}),!p&&r.length>0&&N("div",{id:"elementStats",style:{marginTop:12},children:N(E3A,{label:N("h3",{children:uA("stats.elementProperties")}),open:!!(i.stats.panels&Km.elementProperties),openTrigger:()=>l((m)=>({stats:{open:!0,panels:m.stats.panels^Km.elementProperties}})),children:cA(sZ,{children:[g&&cA(At,{children:[B&&N(Xu,{heading:!0,children:uA("labels.unCroppedDimension")}),i.croppingElementId&&Ni(g)&&E&&cA(Xu,{columns:2,children:[N("div",{children:uA("stats.width")}),N("div",{children:aB(E.width,2)})]}),i.croppingElementId&&Ni(g)&&E&&cA(Xu,{columns:2,children:[N("div",{children:uA("stats.height")}),N("div",{children:aB(E.height,2)})]}),N(Xu,{heading:!0,"data-testid":"stats-element-type",children:i.croppingElementId?uA("labels.imageCropping"):uA(`element.${g.type}`)}),N(Xu,{children:N(Pqe,{element:g,property:"x",elementsMap:s,scene:n,appState:i})}),N(Xu,{children:N(Pqe,{element:g,property:"y",elementsMap:s,scene:n,appState:i})}),N(Xu,{children:N(Tqe,{property:"width",element:g,scene:n,appState:i})}),N(Xu,{children:N(Tqe,{property:"height",element:g,scene:n,appState:i})}),!pt(g)&&N(Xu,{children:N(KIr,{property:"angle",element:g,scene:n,appState:i})}),N(Xu,{children:N(_Ir,{property:"fontSize",element:g,scene:n,appState:i})})]}),C&&cA(At,{children:[GhA(C)&&N(Xu,{heading:!0,children:uA("element.group")}),cA(Xu,{columns:2,style:{margin:"0.3125rem 0"},children:[N("div",{children:uA("stats.shapes")}),N("div",{children:r.length})]}),N(Xu,{children:N(_qe,{property:"x",elements:C,elementsMap:s,atomicUnits:Q,scene:n,appState:i})}),N(Xu,{children:N(_qe,{property:"y",elements:C,elementsMap:s,atomicUnits:Q,scene:n,appState:i})}),N(Xu,{children:N(Kqe,{property:"width",elements:C,elementsMap:s,atomicUnits:Q,scene:n,appState:i})}),N(Xu,{children:N(Kqe,{property:"height",elements:C,elementsMap:s,atomicUnits:Q,scene:n,appState:i})}),N(Xu,{children:N($Ir,{property:"angle",elements:C,scene:n,appState:i})}),N(Xu,{children:N(ihr,{property:"fontSize",elements:C,scene:n,appState:i,elementsMap:s})})]})]})})})]})})},(A,e)=>A.sceneNonce===e.sceneNonce&&A.selectedElements===e.selectedElements&&A.appState.stats.panels===e.appState.stats.panels&&A.gridModeEnabled===e.gridModeEnabled&&A.appState.gridStep===e.appState.gridStep&&A.appState.croppingElementId===e.appState.croppingElementId),dhr=({sourceElementId:A,onClose:e,elementsMap:t,appState:r,generateLinkForSelection:i=eQA})=>{let u=t.get(A)?.link??null,[a,n]=we(u),[o,s]=we(!1);le(()=>{let g=Or(t,r),C=u;if(g.length>0&&i){let B=tQA(g,r);B&&(C=Nl(i(B.id,B.type)))}n(C)},[t,r,r.selectedElementIds,u,i]);let l=st(()=>{if(a&&a!==t.get(A)?.link){let g=t.get(A);g&&xe(g,{link:a})}if(!a&&o&&A){let g=t.get(A);g&&xe(g,{link:null})}e?.()},[A,a,t,o,e]);return le(()=>{let g=(C)=>{r.openDialog?.name==="elementLinkSelector"&&C.key===PA.ENTER&&l(),r.openDialog?.name==="elementLinkSelector"&&C.key===PA.ESCAPE&&e?.()};return window.addEventListener("keydown",g),()=>{window.removeEventListener("keydown",g)}},[r,e,l]),cA("div",{className:"ElementLinkDialog",children:[cA("div",{className:"ElementLinkDialog__header",children:[N("h2",{children:uA("elementLink.title")}),N("p",{children:uA("elementLink.desc")})]}),cA("div",{className:"ElementLinkDialog__input",children:[N(Y3A,{value:a??"",onChange:(g)=>{o||s(!0),n(g)},onKeyDown:(g)=>{g.key===PA.ENTER&&l()},className:"ElementLinkDialog__input-field",selectOnRender:!0}),u&&a&&N(ci,{type:"button",title:uA("buttons.remove"),"aria-label":uA("buttons.remove"),label:uA("buttons.remove"),onClick:()=>{n(null),s(!0)},className:"ElementLinkDialog__remove",icon:W1})]}),cA("div",{className:"ElementLinkDialog__actions",children:[N(T5,{label:uA("buttons.cancel"),onClick:()=>{e?.()},style:{marginRight:10}}),N(T5,{label:uA("buttons.confirm"),onClick:l,actionType:"primary"})]})]})},Ihr=dhr,hhr=({UIOptions:A})=>cA(Ol,{__fallback:!0,children:[N(Ol.DefaultItems.LoadScene,{}),N(Ol.DefaultItems.SaveToActiveFile,{}),A.canvasActions.export&&N(Ol.DefaultItems.Export,{}),A.canvasActions.saveAsImage&&N(Ol.DefaultItems.SaveAsImage,{}),N(Ol.DefaultItems.SearchMenu,{}),N(Ol.DefaultItems.Help,{}),N(Ol.DefaultItems.ClearCanvas,{}),N(Ol.Separator,{}),N(Ol.Group,{title:"Excalidraw links",children:N(Ol.DefaultItems.Socials,{})}),N(Ol.Separator,{}),N(Ol.DefaultItems.ToggleTheme,{}),N(Ol.DefaultItems.ChangeCanvasBackground,{})]}),Qhr=()=>cA(r3A,{__fallback:!0,children:[N(r3A.Actions.SaveToDisk,{}),N(r3A.Actions.ExportToImage,{})]}),phr=({actionManager:A,appState:e,files:t,setAppState:r,elements:i,canvas:u,onLockToggle:a,onHandToolToggle:n,onPenModeToggle:o,showExitZenModeBtn:s,renderTopRightUI:l,renderCustomStats:g,UIOptions:C,onExportImage:B,renderWelcomeScreen:E,children:d,app:I,isCollaborating:h,generateLinkForSelection:Q})=>{let p=vo(),m=adr(),f=m.tunnelsJotai.Provider,[D,w]=Ka(CZ),b=()=>C.canvasActions.export?N(tIr,{elements:i,appState:e,files:t,actionManager:A,exportOpts:C.canvasActions.export,canvas:u,setAppState:r}):null,k=()=>!C.canvasActions.saveAsImage||e.openDialog?.name!=="imageExport"?null:N(Sdr,{elements:i,appState:e,files:t,actionManager:A,onExportImage:B,onCloseRequest:()=>r({openDialog:null}),name:I.getName()}),v=()=>cA("div",{style:{position:"relative"},children:[N(m.MainMenuTunnel.Out,{}),E&&N(m.WelcomeScreenMenuHintTunnel.Out,{})]}),S=()=>N(UL,{heading:"selectedShapeActions",className:Se("selected-shape-actions zen-mode-transition",{"transition-left":e.zenModeEnabled}),children:N(kB,{className:Vm.SHAPE_ACTIONS_MENU,padding:2,style:{maxHeight:`${e.height-166}px`},children:N(tZe,{appState:e,elementsMap:I.scene.getNonDeletedElementsMap(),renderAction:A.renderAction,app:I})})}),x=()=>{let L=WW(e,i),M=e.stats.open&&!e.zenModeEnabled&&!e.viewModeEnabled&&e.openDialog?.name!=="elementLinkSelector";return N(gZe,{side:"top",children:cA("div",{className:"App-menu App-menu_top",children:[cA(Wc.Col,{gap:6,className:Se("App-menu_top__left"),children:[v(),L&&S()]}),!e.viewModeEnabled&&e.openDialog?.name!=="elementLinkSelector"&&N(UL,{heading:"shapes",className:"shapes-section",children:(U)=>cA("div",{style:{position:"relative"},children:[E&&N(m.WelcomeScreenToolbarHintTunnel.Out,{}),N(Wc.Col,{gap:4,align:"start",children:cA(Wc.Row,{gap:1,className:Se("App-toolbar-container",{"zen-mode":e.zenModeEnabled}),children:[cA(kB,{padding:1,className:Se("App-toolbar",{"zen-mode":e.zenModeEnabled}),children:[N(BZe,{appState:e,isMobile:p.editor.isMobile,device:p,app:I}),U,cA(Wc.Row,{gap:1,children:[N(dZe,{zenModeEnabled:e.zenModeEnabled,checked:e.penMode,onChange:()=>o(null),title:uA("toolBar.penMode"),penDetected:e.penDetected}),N(EZe,{checked:e.activeTool.locked,onChange:a,title:uA("toolBar.lock")}),N("div",{className:"App-toolbar__divider"}),N(IZe,{checked:A2(e),onChange:()=>n(),title:uA("toolBar.hand"),isMobile:!0}),N(rZe,{appState:e,activeTool:e.activeTool,UIOptions:C,app:I})]})]}),h&&N(kB,{style:{marginLeft:8,alignSelf:"center",height:"fit-content"},children:N(mIr,{title:uA("toolBar.laser"),checked:e.activeTool.type===Jn.laser,onChange:()=>I.setActiveTool({type:Jn.laser}),isMobile:!0})})]})})]})}),cA("div",{className:Se("layer-ui__wrapper__top-right zen-mode-transition",{"transition-right":e.zenModeEnabled}),children:[e.collaborators.size>0&&N(hZe,{collaborators:e.collaborators,userToFollow:e.userToFollow?.socketId||null}),l?.(p.editor.isMobile,e),!e.viewModeEnabled&&e.openDialog?.name!=="elementLinkSelector"&&(!T||e.openSidebar?.name!==Gc.name)&&N(m.DefaultSidebarTriggerTunnel.Out,{}),M&&N(P3A,{app:I,onClose:()=>{A.executeAction(Q3A)},renderCustomStats:g})]})]})})},F=()=>N(Gqe,{__fallback:!0,onDock:(L)=>{Nu("sidebar",`toggleDock (${L?"dock":"undock"})`,`(${p.editor.isMobile?"mobile":"desktop"})`)}}),T=aze(H3A),R=cA(At,{children:[d,N(hhr,{UIOptions:C}),N(Gqe.Trigger,{__fallback:!0,icon:P_,title:f9(uA("toolBar.library")),onToggle:(L)=>{L&&Nu("sidebar",`${Gc.name} (open)`,`button (${p.editor.isMobile?"mobile":"desktop"})`)},tab:Gc.defaultTab,children:uA("toolBar.library")}),N(Qhr,{}),e.openDialog?.name==="ttd"&&N(SIr,{__fallback:!0}),e.isLoading&&N(sze,{delay:250}),e.errorMessage&&N(wdr,{onClose:()=>r({errorMessage:null}),children:e.errorMessage}),D&&!p.editor.isMobile&&N($Cr,{colorPickerType:D.colorPickerType,onCancel:()=>{w(null)},onChange:(L,M,U,{altKey:Y})=>{if(!(L!=="elementBackground"&&L!=="elementStroke"))if(U.length){for(let H of U)xe(H,{[Y&&D.swapPreviewOnAlt?L==="elementBackground"?"strokeColor":"backgroundColor":L==="elementBackground"?"backgroundColor":"strokeColor"]:M},!1),na.delete(H);gd.getScene(U[0])?.triggerUpdate()}else r(L==="elementBackground"?{currentItemBackgroundColor:M}:{currentItemStrokeColor:M})},onSelect:(L,M)=>{w((U)=>U?.keepOpenOnAlt&&M.altKey?U:null),D?.onSelect?.(L,M)}}),e.openDialog?.name==="help"&&N(Vdr,{onClose:()=>{r({openDialog:null})}}),N(gdr,{}),e.openDialog?.name==="elementLinkSelector"&&N(Ihr,{sourceElementId:e.openDialog.sourceElementId,onClose:()=>{r({openDialog:null})},elementsMap:I.scene.getNonDeletedElementsMap(),appState:e,generateLinkForSelection:Q}),N(m.OverwriteConfirmDialogTunnel.Out,{}),k(),b(),e.pasteDialog.shown&&N(Pdr,{setAppState:r,appState:e,onClose:()=>r({pasteDialog:{shown:!1,data:null}})}),p.editor.isMobile&&N(Odr,{app:I,appState:e,elements:i,actionManager:A,renderJSONExportDialog:b,renderImageExportDialog:k,setAppState:r,onLockToggle:a,onHandToolToggle:n,onPenModeToggle:o,renderTopRightUI:l,renderCustomStats:g,renderSidebars:F,device:p,renderWelcomeScreen:E,UIOptions:C}),!p.editor.isMobile&&cA(At,{children:[cA("div",{className:"layer-ui__wrapper",style:e.openSidebar&&T&&p.editor.canFitSidebar?{width:"calc(100% - var(--right-sidebar-width))"}:{},children:[E&&N(m.WelcomeScreenCenterTunnel.Out,{}),x(),N(iIr,{appState:e,actionManager:A,showExitZenModeBtn:s,renderWelcomeScreen:E}),e.scrolledOutside&&N("button",{type:"button",className:"scroll-back-to-content",onClick:()=>{r((L)=>({...F9(i,L)}))},children:uA("buttons.scrollBackToContent")})]}),F()]})]});return N(Qze.Provider,{value:e,children:N(f,{children:N($ze.Provider,{value:m,children:R})})})},qqe=(A)=>{let{suggestedBindings:e,startBoundElement:t,cursorButton:r,scrollX:i,scrollY:u,...a}=A;return a},fhr=(A,e)=>{if(A.children!==e.children)return!1;let{canvas:t,appState:r,...i}=A,{canvas:u,appState:a,...n}=e;return zo(qqe(r),qqe(a),{selectedElementIds:zo,selectedGroupIds:zo})&&zo(i,n)},mhr=gi(phr,fhr),Dhr=5000,yhr=({message:A,onClose:e,closable:t=!1,duration:r=Dhr,style:i})=>{let u=Ee(0),a=r!==1/0,n=st(()=>{a&&(u.current=window.setTimeout(()=>e(),r))},[e,r,a]);return le(()=>{if(a)return n(),()=>clearTimeout(u.current)},[n,A,r,a]),cA("div",{className:"Toast",onMouseEnter:a?()=>clearTimeout(u?.current):void 0,onMouseLeave:a?n:void 0,style:i,children:[N("p",{className:"Toast__message",children:A}),t&&N(ci,{icon:u2,"aria-label":"close",type:"icon",onClick:e,className:"close"})]})},zqe=at({name:"viewMode",label:"labels.viewMode",paletteName:"Toggle view mode",icon:AW,viewMode:!0,trackEvent:{category:"canvas",predicate:(A)=>!A.viewModeEnabled},perform(A,e){return{appState:{...e,viewModeEnabled:!this.checked(e)},captureUpdate:be.EVENTUALLY}},checked:(A)=>A.viewModeEnabled,predicate:(A,e,t)=>typeof t.viewModeEnabled>"u",keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&A.altKey&&A.code===hi.R}),rVe=(A,e)=>{let t=e.scene.getSelectedElements(A);return t.length===1&&nr(t[0])},whr=at({name:"selectAllElementsInFrame",label:"labels.selectAllElementsInFrame",trackEvent:{category:"canvas"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e).at(0)||null;if(nr(i)){let u=gB(fu(A),i.id).filter((a)=>!(a.type==="text"&&a.containerId));return{elements:A,appState:{...e,selectedElementIds:u.reduce((a,n)=>(a[n.id]=!0,a),{})},captureUpdate:be.IMMEDIATELY}}return{elements:A,appState:e,captureUpdate:be.EVENTUALLY}},predicate:(A,e,t,r)=>rVe(e,r)}),bhr=at({name:"removeAllElementsFromFrame",label:"labels.removeAllElementsFromFrame",trackEvent:{category:"history"},perform:(A,e,t,r)=>{let i=r.scene.getSelectedElements(e).at(0)||null;return nr(i)?{elements:hQA(A,i),appState:{...e,selectedElementIds:{[i.id]:!0}},captureUpdate:be.IMMEDIATELY}:{elements:A,appState:e,captureUpdate:be.EVENTUALLY}},predicate:(A,e,t,r)=>rVe(e,r)}),ZLi=at({name:"updateFrameRendering",label:"labels.updateFrameRendering",viewMode:!0,trackEvent:{category:"canvas"},perform:(A,e)=>({elements:A,appState:{...e,frameRendering:{...e.frameRendering,enabled:!e.frameRendering.enabled}},captureUpdate:be.EVENTUALLY}),checked:(A)=>A.frameRendering.enabled}),VLi=at({name:"setFrameAsActiveTool",label:"toolBar.frame",trackEvent:{category:"toolbar"},icon:uhA,viewMode:!1,perform:(A,e,t,r)=>{let i=en(e,{type:"frame"});return nB(r.interactiveCanvas,{...e,activeTool:i}),{elements:A,appState:{...e,activeTool:en(e,{type:"frame"})},captureUpdate:be.EVENTUALLY}},keyTest:(A)=>!A[PA.CTRL_OR_CMD]&&!A.shiftKey&&!A.altKey&&A.key.toLocaleLowerCase()===PA.F}),vhr=at({name:"wrapSelectionInFrame",label:"labels.wrapSelectionInFrame",trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=Or(A,e);return i.length>0&&!i.some((u)=>nr(u))},perform:(A,e,t,r)=>{let i=Or(A,e),[u,a,n,o]=Pi(i,r.scene.getNonDeletedElementsMap()),s=16,l=pW({x:u-s,y:a-s,width:n-u+s*2,height:o-a+s*2});if(e.editingGroupId){let g=Yu(i,e.editingGroupId);for(let C of g){let B=C.groupIds.indexOf(e.editingGroupId);xe(C,{groupIds:C.groupIds.slice(0,B)},!1)}}return{elements:M9([...r.scene.getElementsIncludingDeleted(),l],i,l,e),appState:{selectedElementIds:{[l.id]:!0}},captureUpdate:be.IMMEDIATELY}}}),khr=()=>cA("div",{"data-testid":"brave-measure-text-error",children:[N("p",{children:N(Ld,{i18nKey:"errors.brave_measure_text_error.line1",bold:(A)=>N("span",{style:{fontWeight:600},children:A})})}),N("p",{children:N(Ld,{i18nKey:"errors.brave_measure_text_error.line2",bold:(A)=>N("span",{style:{fontWeight:600},children:A})})}),N("p",{children:N(Ld,{i18nKey:"errors.brave_measure_text_error.line3",link:(A)=>N("a",{href:"http://docs.excalidraw.com/docs/@excalidraw/excalidraw/faq#turning-off-aggresive-block-fingerprinting-in-brave-browser",children:A})})}),N("p",{children:N(Ld,{i18nKey:"errors.brave_measure_text_error.line4",issueLink:(A)=>N("a",{href:"https://github.com/excalidraw/excalidraw/issues/new",children:A}),discordLink:(A)=>cA("a",{href:"https://discord.gg/UexuTaE",children:[A,"."]})})})]}),Fhr=khr,jz={width:100,height:0},kp=100,xhr=(A,e,t)=>{let r=Gl({x:0,y:0,textAlign:l9.CENTER,verticalAlign:Rl.MIDDLE,...e,containerId:A.id,strokeColor:e.strokeColor||A.strokeColor});return Object.assign(A,{boundElements:(A.boundElements||[]).concat({type:"text",id:r.id})}),V0(r,A,t),[A,r]},Zqe=(A,e,t,r,i)=>{let u,a;if(Object.assign(A,{startBinding:A?.startBinding||null,endBinding:A.endBinding||null}),e){let l=e?.width??kp,g=e?.height??kp,C;e.id&&(C=r.getElement(e.id),C||console.error(`No element for start binding with id ${e.id} found`));let B=e.x||A.x-l,E=e.y||A.y-g/2,d=C?C.type:e.type;if(d){if(d==="text"){let I="";C&&C.type==="text"?I=C.text:e.type==="text"&&(I=e.text),I||console.error(`No text found for start binding text element for ${A.id}`),u=Gl({x:B,y:E,type:"text",...C,...e,text:I}),Object.assign(u,{x:e.x||A.x-u.width,y:e.y||A.y-u.height/2})}else switch(d){case"rectangle":case"ellipse":case"diamond":{u=sB({x:B,y:E,width:l,height:g,...C,...e,type:d});break}default:O1(A,`Unhandled element start type "${e.type}"`,!0)}$C(A,u,"start",i)}}if(t){let l=t?.height??kp,g=t?.width??kp,C;t.id&&(C=r.getElement(t.id),C||console.error(`No element for end binding with id ${t.id} found`));let B=t.x||A.x+A.width,E=t.y||A.y-l/2,d=C?C.type:t.type;if(d){if(d==="text"){let I="";C&&C.type==="text"?I=C.text:t.type==="text"&&(I=t.text),I||console.error(`No text found for end binding text element for ${A.id}`),a=Gl({x:B,y:E,type:"text",...C,...t,text:I}),Object.assign(a,{y:t.y||A.y-a.height/2})}else switch(d){case"rectangle":case"ellipse":case"diamond":{a=sB({x:B,y:E,width:g,height:l,...C,...t,type:d});break}default:O1(A,`Unhandled element end type "${d}"`,!0)}$C(A,a,"end",i)}}if(A.points.length<2)return{linearElement:A,startBoundElement:u,endBoundElement:a};let n=A.points.length-1,o=0.5,s=Bd(A.points);return A.points[n][0]>A.points[n-1][0]&&(s[0][0]=o,s[n][0]-=o),A.points[n][0]<A.points[n-1][0]&&(s[0][0]=-o,s[n][0]+=o),A.points[n][1]>A.points[n-1][1]&&(s[0][1]=o,s[n][1]-=o),A.points[n][1]<A.points[n-1][1]&&(s[0][1]=-o,s[n][1]+=o),Object.assign(A,{points:s}),{linearElement:A,startBoundElement:u,endBoundElement:a}},Shr=class{constructor(){GA(this,"excalidrawElements",new Map),GA(this,"add",(A)=>{A&&this.excalidrawElements.set(A.id,A)}),GA(this,"getElements",()=>hd(Array.from(this.excalidrawElements.values()))),GA(this,"getElementsMap",()=>vg(ar(this.getElements()))),GA(this,"getElement",(A)=>this.excalidrawElements.get(A))}},TL=(A,e)=>{if(!A)return[];let t=Bd(A),r=new Shr,i=new Map,u=new Map;for(let n of t){let o,s=n.id;switch(e?.regenerateIds!==!1&&Object.assign(n,{id:kg()}),n.type){case"rectangle":case"ellipse":case"diamond":{let l=n?.label?.text&&n.width===void 0?0:n?.width||kp,g=n?.label?.text&&n.height===void 0?0:n?.height||kp;o=sB({...n,width:l,height:g});break}case"line":{let l=n.width||jz.width,g=n.height||jz.height;o=L1({width:l,height:g,points:[X(0,0),X(l,g)],...n});break}case"arrow":{let l=n.width||jz.width,g=n.height||jz.height;o=mW({width:l,height:g,endArrowhead:"arrow",points:[X(0,0),X(l,g)],...n,type:"arrow"}),Object.assign(o,Wm(o.points));break}case"text":{let l=n?.fontFamily||Lh,g=n?.fontSize||cd,C=n?.lineHeight||z1(l),B=n.text??"",E=i2(B),d=y0(E,cu({fontFamily:l,fontSize:g}),C);o=Gl({width:d.width,height:d.height,fontFamily:l,fontSize:g,...n});break}case"image":{o=_hA({width:n?.width||kp,height:n?.height||kp,...n});break}case"frame":{o=pW({x:0,y:0,...n});break}case"magicframe":{o=fW({x:0,y:0,...n});break}case"freedraw":case"iframe":case"embeddable":{o=n;break}default:o=n,O1(n,`Unhandled element type "${n.type}"`,!0)}r.getElement(o.id)?console.error(`Duplicate id found for ${o.id}`):(r.add(o),i.set(o.id,n),s&&u.set(s,o.id))}let a=r.getElementsMap();for(let[n,o]of i){let s=r.getElement(n);switch(o.type){case"rectangle":case"ellipse":case"diamond":case"arrow":{if(o.label?.text){let[l,g]=xhr(s,o?.label,a);if(r.add(l),r.add(g),Jr(l)){let C=o.type==="arrow"?o?.start:void 0,B=o.type==="arrow"?o?.end:void 0;if(C&&C.id){let h=u.get(C.id);h&&Object.assign(C,{id:h})}if(B&&B.id){let h=u.get(B.id);h&&Object.assign(B,{id:h})}let{linearElement:E,startBoundElement:d,endBoundElement:I}=Zqe(l,C,B,r,a);l=E,r.add(E),r.add(d),r.add(I)}}else switch(o.type){case"arrow":{let{start:l,end:g}=o;if(l&&l.id){let d=u.get(l.id);Object.assign(l,{id:d})}if(g&&g.id){let d=u.get(g.id);Object.assign(g,{id:d})}let{linearElement:C,startBoundElement:B,endBoundElement:E}=Zqe(s,l,g,r,a);r.add(C),r.add(B),r.add(E);break}}break}}}for(let[n,o]of i){if(o.type!=="frame"&&o.type!=="magicframe")continue;let s=r.getElement(n);if(!s)throw Error(`Excalidraw element with id ${n} doesn't exist`);let l=[];o.children.forEach((m)=>{let f=u.get(m);if(!f)throw Error(`Element with ${m} wasn't mapped correctly`);let D=r.getElement(f);if(!D)throw Error(`Frame element with id ${f} doesn't exist`);Object.assign(D,{frameId:s.id}),D?.boundElements?.forEach((w)=>{let b=r.getElement(w.id);if(!b)throw Error(`Bound element with id ${w.id} doesn't exist`);Object.assign(b,{frameId:s.id}),l.push(b)}),l.push(D)});let[g,C,B,E]=Pi(l),d=10;g=g-d,C=C-d,B=B+d,E=E+d;let I=s?.x||g,h=s?.y||C,Q=s?.width||B-g,p=s?.height||E-C;Object.assign(s,{x:I,y:h,width:Q,height:p}),fIA()&&o.children.length&&(s?.x||s?.y||s?.width||s?.height)&&console.info("User provided frame attributes are being considered, if you find this inaccurate, please remove any of the attributes - x, y, width and height so frame coordinates and dimensions are calculated automatically")}return r.getElements()},Ha=(A)=>(e)=>{f5(A,e)},u3A=(A)=>M8((e)=>{f5(A,e)}),_3A=(()=>{let A;try{let t=zP.split(".");A=Number(t[0])>17}catch{A=!1}let e=!1;return()=>window.EXCALIDRAW_THROTTLE_RENDER===!0?A?!0:(e||(e=!0,console.warn("Excalidraw: render throttling is disabled on React versions < 18.")),!1):!1})(),Lhr="#ff6b6b",Rhr="#ff0000",Vqe=1,jqe=2,Nhr=(A,e)=>{if(!e.snapLines.length)return;let t=e.theme===ei.LIGHT||e.zenModeEnabled?Lhr:Rhr,r=(e.zenModeEnabled?Vqe*1.5:Vqe)/e.zoom.value;A.save(),A.translate(e.scrollX,e.scrollY);for(let i of e.snapLines)i.type==="pointer"?(A.lineWidth=r,A.strokeStyle=t,Uhr(i,A,e)):i.type==="gap"?(A.lineWidth=r,A.strokeStyle=t,Mhr(i.points[0],i.points[1],i.direction,e,A)):i.type==="points"&&(A.lineWidth=r,A.strokeStyle=t,Ghr(i,A,e));A.restore()},Ghr=(A,e,t)=>{if(!t.zenModeEnabled){let r=A.points[0],i=A.points[A.points.length-1];_c(r,i,e)}for(let r of A.points)iVe(r,t,e)},Uhr=(A,e,t)=>{iVe(A.points[0],t,e),t.zenModeEnabled||_c(A.points[0],A.points[1],e)},iVe=([A,e],t,r)=>{r.save();let i=(t.zenModeEnabled?jqe*1.5:jqe)/t.zoom.value;r.beginPath(),r.moveTo(A-i,e-i),r.lineTo(A+i,e+i),r.moveTo(A+i,e-i),r.lineTo(A-i,e+i),r.stroke(),r.restore()},_c=(A,e,t)=>{t.beginPath(),t.lineTo(A[0],A[1]),t.lineTo(e[0],e[1]),t.stroke()},Mhr=(A,e,t,r,i)=>{let u=8/r.zoom.value,a=u/2,n=u/4;if(t==="horizontal"){let o=[(A[0]+e[0])/2,A[1]];r.zenModeEnabled||_c(X(A[0],A[1]-u),X(A[0],A[1]+u),i),_c(X(o[0]-n,o[1]-a),X(o[0]-n,o[1]+a),i),_c(X(o[0]+n,o[1]-a),X(o[0]+n,o[1]+a),i),r.zenModeEnabled||(_c(X(e[0],e[1]-u),X(e[0],e[1]+u),i),_c(A,e,i))}else{let o=[A[0],(A[1]+e[1])/2];r.zenModeEnabled||_c(X(A[0]-u,A[1]),X(A[0]+u,A[1]),i),_c(X(o[0]-a,o[1]-n),X(o[0]+a,o[1]-n),i),_c(X(o[0]-a,o[1]+n),X(o[0]+a,o[1]+n),i),r.zenModeEnabled||(_c(X(e[0]-u,e[1]),X(e[0]+u,e[1]),i),_c(A,e,i))}},Thr=(A,e)=>{fn(e.selectedLinearElement,"selectedLinearElement is null");let{segmentMidPointHoveredCoords:t}=e.selectedLinearElement;fn(t,"midPointCoords is null"),A.save(),A.translate(e.scrollX,e.scrollY),uVe(t,A,e),A.restore()},Yhr=(A,e,t)=>{let{elementId:r,hoverPointIndex:i}=e.selectedLinearElement;if(e.editingLinearElement?.selectedPointsIndices?.includes(i))return;let u=It.getElement(r,t);if(!u)return;let a=It.getPointAtIndexGlobalCoordinates(u,i,t);A.save(),A.translate(e.scrollX,e.scrollY),uVe(a,A,e),A.restore()},uVe=(A,e,t)=>{e.fillStyle="rgba(105, 101, 219, 0.4)",iS(e,A[0],A[1],It.POINT_HANDLE_SIZE/t.zoom.value,!1)},HL=(A,e,t,r,i,u,a,n,o=!1,s=0)=>{A.save(),A.translate(u,a),A.rotate(n),o&&A.fillRect(e-u,t-a,r,i),s&&A.roundRect?(A.beginPath(),A.roundRect(e-u,t-a,r,i,s),A.stroke(),A.closePath()):A.strokeRect(e-u,t-a,r,i),A.restore()},Hhr=(A,e,t,r,i,u)=>{A.save(),A.translate(r,i),A.rotate(u),A.beginPath(),A.moveTo(0,t/2),A.lineTo(e/2,0),A.lineTo(0,-t/2),A.lineTo(-e/2,0),A.closePath(),A.stroke(),A.restore()},a3A=(A,e,t,r,i,u=!1)=>{A.strokeStyle="#5e5ad8",A.setLineDash([]),A.fillStyle="rgba(255, 255, 255, 0.9)",i?A.fillStyle="rgba(134, 131, 226, 0.9)":u&&(A.fillStyle="rgba(177, 151, 252, 0.7)"),iS(A,t[0],t[1],r/e.zoom.value,!u)},Khr=(A,e,t,r,i,u)=>{A.beginPath(),A.ellipse(r,i,e/2,t/2,u,0,Math.PI*2),A.stroke()},Jhr=(A,e,t,r)=>{let[i,u,a,n]=Nr(e,t),o=a-i,s=n-u;A.strokeStyle="rgba(0,0,0,.05)";let l=r.value<1?r.value:1;A.lineWidth=gW/l;let g=A.lineWidth/2+cW,C=Fc(Math.min(e.width,e.height),e);switch(e.type){case"rectangle":case"text":case"image":case"iframe":case"embeddable":case"frame":case"magicframe":HL(A,i-g,u-g,o+g*2,s+g*2,i+o/2,u+s/2,e.angle,void 0,C);break;case"diamond":let B=Math.hypot(o,s),E=g*B/s,d=g*B/o;Hhr(A,o+E*2,s+d*2,i+o/2,u+s/2,e.angle);break;case"ellipse":Khr(A,o+g*2,s+g*2,i+o/2,u+s/2,e.angle);break}},Ohr=(A,e,t,r)=>{let[i,u,a]=e,n=k9(a,a.width,a.height,r);A.strokeStyle="rgba(0,0,0,0)",A.fillStyle="rgba(0,0,0,.05)",(u==="both"?[0,-1]:u==="start"?[0]:[-1]).forEach((o)=>{let[s,l]=It.getPointAtIndexGlobalCoordinates(i,o,t);iS(A,s,l,n)})},aVe=(A,e,t)=>{let{angle:r,x1:i,y1:u,x2:a,y2:n,selectionColors:o,cx:s,cy:l,dashed:g,activeEmbeddable:C}=t,B=a-i,E=n-u,d=(t.padding??G1*2)/e.zoom.value,I=8/e.zoom.value,h=4/e.zoom.value;A.save(),A.translate(e.scrollX,e.scrollY),A.lineWidth=(C?4:1)/e.zoom.value;let Q=o.length;for(let p=0;p<Q;++p)A.strokeStyle=o[p],g&&A.setLineDash([I,h+(I+h)*(Q-1)]),A.lineDashOffset=(I+h)*p,HL(A,i-d,u-d,B+d*2,E+d*2,s,l,r);A.restore()},Phr=(A,e,t,r)=>{let i=Array.isArray(t)?Ohr:Jhr;A.save(),A.translate(e.scrollX,e.scrollY),i(A,t,r,e.zoom),A.restore()},_hr=(A,e,t,r)=>{let[i,u,a,n]=Nr(t,r),o=a-i,s=n-u;A.strokeStyle="rgb(0,118,255)",A.lineWidth=Zu.strokeWidth/e.zoom.value,A.save(),A.translate(e.scrollX,e.scrollY),HL(A,i,u,o,s,i+o/2,u+s/2,t.angle,!1,Zu.radius/e.zoom.value),A.restore()},Whr=(A,e,t)=>{let r=t.filter((n)=>n.groupIds.length===0),i=t.filter((n)=>n.groupIds.length>0),u=(n)=>{let[o,s,l,g]=Pi(n);return{angle:0,x1:o,x2:l,y1:s,y2:g,selectionColors:["rgb(0,118,255)"],dashed:!1,cx:o+(l-o)/2,cy:s+(g-s)/2,activeEmbeddable:!1}},a=(n)=>{let o=Yu(t,n);return u(o)};Object.entries(NhA(i,e)).filter(([n,o])=>o).map(([n,o])=>n).map((n)=>a(n)).concat(r.map((n)=>u([n]))).forEach((n)=>aVe(A,e,n))},n3A=(A,e,t,r)=>{if(!e.selectedLinearElement)return;A.save(),A.translate(e.scrollX,e.scrollY),A.lineWidth=1/e.zoom.value;let i=It.getPointsGlobalCoordinates(t,r),{POINT_HANDLE_SIZE:u}=It,a=e.editingLinearElement?u:u/2;if(i.forEach((n,o)=>{if(pt(t)&&o!==0&&o!==i.length-1)return;let s=!!e.editingLinearElement?.selectedPointsIndices?.includes(o);a3A(A,e,n,a,s)}),pt(t)){let n=t.fixedSegments?.map((o)=>o.index)||[];i.slice(0,-1).forEach((o,s)=>{It.isSegmentTooShort(t,i[s+1],i[s],s,e.zoom)||a3A(A,e,X((o[0]+i[s+1][0])/2,(o[1]+i[s+1][1])/2),u/2,!1,!n.includes(s+1))})}else It.getEditorMidPoints(t,r,e).filter((n,o,s)=>n!==null&&!(pt(t)&&(o===0||o===s.length-1))).forEach((n)=>{(e.editingLinearElement||i.length===2)&&a3A(A,e,n,u/2,!1,!0)});A.restore()},Xqe=(A,e,t,r,i)=>{Object.keys(r).forEach((u)=>{let a=r[u];if(a!==void 0){let[n,o,s,l]=a;A.save(),A.lineWidth=1/t.zoom.value,e.selectionColor&&(A.strokeStyle=e.selectionColor),u==="rotation"?iS(A,n+s/2,o+l/2,s/2):A.roundRect?(A.beginPath(),A.roundRect(n,o,s,l,2/t.zoom.value),A.fill(),A.stroke()):HL(A,n,o,s,l,n+s/2,o+l/2,i,!0),A.restore()}})},qhr=(A,e,t,r,i)=>{let[u,a,,,n,o]=Nr(r,i),s=3,l=20,g=s/t.zoom.value,C=g/2,B=n-u+g,E=o-a+g,d=Math.min(l/t.zoom.value,B),I=Math.min(l/t.zoom.value,E);A.save(),A.fillStyle=e.selectionColor,A.strokeStyle=e.selectionColor,A.lineWidth=g,[[[-B,-E],[0,C],[d,C],[C,0],[C,I]],[[B-C,-E],[C,C],[-d+C,C],[0,0],[0,I]],[[-B,E],[0,-C],[d,-C],[C,0],[C,-I]],[[B-C,E],[C,-C],[-d+C,-C],[0,0],[0,-I]]].forEach((h)=>{let[[Q,p],[m,f],[D,w],[b,k],[v,S]]=h;A.save(),A.translate(n,o),A.rotate(r.angle),A.beginPath(),A.moveTo(Q+m,p+f),A.lineTo(Q+D,p+w),A.stroke(),A.beginPath(),A.moveTo(Q+b,p+k),A.lineTo(Q+v,p+S),A.stroke(),A.restore()}),A.restore()},zhr=(A,e,t,r)=>{e.save();let i=G1*2/t.zoom.value,u=A.width+i*2,a=A.height+i*2,n=A.x+u/2,o=A.y+a/2,s=-(u/2+i),l=-(a/2+i);e.translate(n+t.scrollX,o+t.scrollY),e.rotate(A.angle),e.lineWidth=1/t.zoom.value,e.strokeStyle=r,e.strokeRect(s,l,u,a),e.restore()},nVe=({canvas:A,elementsMap:e,visibleElements:t,selectedElements:r,allElementsMap:i,scale:u,appState:a,renderConfig:n,device:o})=>{if(A===null)return{atLeastOneVisibleElement:!1,elementsMap:e};let[s,l]=kW(A,u),g=FW({canvas:A,scale:u,normalizedWidth:s,normalizedHeight:l});g.save(),g.scale(a.zoom.value,a.zoom.value);let C;if(t.forEach((d)=>{a.editingLinearElement?.elementId===d.id&&d&&(C=d)}),C&&n3A(g,a,C,e),a.selectionElement&&!a.isCropping)try{fQe(a.selectionElement,g,a,n.selectionColor)}catch(d){console.error(d)}if(a.editingTextElement&&Bt(a.editingTextElement)){let d=i.get(a.editingTextElement.id);d&&!d.autoResize&&zhr(d,g,a,n.selectionColor)}a.isBindingEnabled&&a.suggestedBindings.filter((d)=>d!=null).forEach((d)=>{Phr(g,a,d,e)}),a.frameToHighlight&&_hr(g,a,a.frameToHighlight,e),a.elementsToHighlight&&Whr(g,a,a.elementsToHighlight);let B=r.some((d)=>nr(d));if(r.length===1&&a.editingLinearElement?.elementId===r[0].id&&n3A(g,a,r[0],e),pt(r[0])&&a.selectedLinearElement&&a.selectedLinearElement.segmentMidPointHoveredCoords?Thr(g,a):a.selectedLinearElement&&a.selectedLinearElement.hoverPointIndex>=0&&!(pt(r[0])&&a.selectedLinearElement.hoverPointIndex>0&&a.selectedLinearElement.hoverPointIndex<r[0].points.length-1)&&Yhr(g,a,e),!a.multiElement&&!a.editingLinearElement){let d=bQA(r,a),I=r.length===1&&Gr(r[0]);I&&a.selectedLinearElement?.elementId===r[0].id&&!r[0].locked&&n3A(g,a,r[0],e);let h=n.selectionColor||ua.black;if(d){let Q=ar(r),p=[];for(let f of e.values()){let D=[],w=n.remoteSelectedElementIds.get(f.id);if(I&&pt(f)&&(f.startBinding||f.endBinding)||(Q.has(f.id)&&!LhA(a,f)&&D.push(h),w&&D.push(...w.map((b)=>hZ(b,a.collaborators.get(b))))),D.length){let[b,k,v,S,x,F]=Nr(f,e,!0);p.push({angle:f.angle,x1:b,y1:k,x2:v,y2:S,selectionColors:D,dashed:!!w,cx:x,cy:F,activeEmbeddable:a.activeEmbeddable?.element===f&&a.activeEmbeddable.state==="active",padding:f.id===a.croppingElementId||Ni(f)?0:void 0})}}let m=(f)=>{let D=Yu(e,f),[w,b,k,v]=Pi(D);p.push({angle:0,x1:w,x2:k,y1:b,y2:v,selectionColors:[ua.black],dashed:!0,cx:w+(k-w)/2,cy:b+(v-b)/2,activeEmbeddable:!1})};for(let f of V1(a))m(f);a.editingGroupId&&m(a.editingGroupId),p.forEach((f)=>aVe(g,a,f))}if(g.save(),g.translate(a.scrollX,a.scrollY),r.length===1){g.fillStyle=ua.white;let Q=wQA(r[0],a.zoom,e,"mouse",T9(o));if(!a.viewModeEnabled&&d&&!Bt(a.editingTextElement)&&!a.croppingElementId&&Xqe(g,n,a,Q,r[0].angle),a.croppingElementId&&!a.isCropping){let p=e.get(a.croppingElementId);p&&Ni(p)&&qhr(g,n,a,p,e)}}else if(r.length>1&&!a.isRotating){let Q=G1*2/a.zoom.value;g.fillStyle=ua.white;let[p,m,f,D]=Pi(r),w=g.getLineDash();g.setLineDash([2/a.zoom.value]);let b=g.lineWidth;g.lineWidth=1/a.zoom.value,g.strokeStyle=h,HL(g,p-Q,m-Q,f-p+Q*2,D-m+Q*2,(p+f)/2,(m+D)/2,0),g.lineWidth=b,g.setLineDash(w);let k=PW([p,m,f,D,(p+f)/2,(m+D)/2],0,a.zoom,"mouse",B?{...T9(o),rotation:!0}:T9(o));r.some((v)=>!v.locked)&&Xqe(g,n,a,k,0)}g.restore()}a.searchMatches.forEach(({id:d,focus:I,matchedLines:h})=>{let Q=e.get(d);if(Q&&Bt(Q)){let[p,m,,,f,D]=Nr(Q,e,!0);g.save(),a.theme===ei.LIGHT?I?g.fillStyle="rgba(255, 124, 0, 0.4)":g.fillStyle="rgba(255, 226, 0, 0.4)":I?g.fillStyle="rgba(229, 82, 0, 0.4)":g.fillStyle="rgba(99, 52, 0, 0.4)",g.translate(a.scrollX,a.scrollY),g.translate(f,D),g.rotate(Q.angle),h.forEach((w)=>{g.fillRect(p+w.offsetX-f,m+w.offsetY-D,w.width,w.height)}),g.restore()}}),Nhr(g,a),g.restore(),NBr({context:g,renderConfig:n,appState:a,normalizedWidth:s,normalizedHeight:l});let E;return n.renderScrollbars&&(E=Kdr(t,s,l,a),g.save(),g.fillStyle=Hdr,g.strokeStyle="rgba(255,255,255,0.8)",[E.horizontal,E.vertical].forEach((d)=>{d&&Gze(g,d.x,d.y,d.width,d.height,vp/2)}),g.restore()),{scrollBars:E,atLeastOneVisibleElement:t.length>0,elementsMap:e}},oVe=M8((A)=>{let e=nVe(A);A.callback?.(e)},{trailing:!0}),Zhr=(A,e)=>{if(e){oVe(A);return}let t=nVe(A);return A.callback(t),t},Vhr=(A)=>{let e=Ee(!1);return le(()=>{if(!e.current){e.current=!0;return}let t=new Map,r=new Map,i=new Map,u=new Map,a=new Map;A.appState.collaborators.forEach((o,s)=>{if(o.selectedElementIds)for(let l of Object.keys(o.selectedElementIds))i.has(l)||i.set(l,[]),i.get(l).push(s);!o.pointer||o.pointer.renderCursor===!1||(o.username&&u.set(s,o.username),o.userState&&a.set(s,o.userState),r.set(s,Sc({sceneX:o.pointer.x,sceneY:o.pointer.y},A.appState)),t.set(s,o.button))});let n=A.containerRef?.current&&getComputedStyle(A.containerRef.current).getPropertyValue("--color-selection")||"#6965db";Zhr({canvas:A.canvas,elementsMap:A.elementsMap,visibleElements:A.visibleElements,selectedElements:A.selectedElements,allElementsMap:A.allElementsMap,scale:window.devicePixelRatio,appState:A.appState,renderConfig:{remotePointerViewportCoords:r,remotePointerButton:t,remoteSelectedElementIds:i,remotePointerUsernames:u,remotePointerUserStates:a,selectionColor:n,renderScrollbars:!1},device:A.device,callback:A.renderInteractiveSceneCallback},_3A())}),N("canvas",{className:"excalidraw__canvas interactive",style:{width:A.appState.width,height:A.appState.height,cursor:A.appState.viewModeEnabled?iu.GRAB:iu.AUTO},width:A.appState.width*A.scale,height:A.appState.height*A.scale,ref:A.handleCanvasRef,onContextMenu:A.onContextMenu,onPointerMove:A.onPointerMove,onPointerUp:A.onPointerUp,onPointerCancel:A.onPointerCancel,onTouchMove:A.onTouchMove,onPointerDown:A.onPointerDown,onDoubleClick:A.appState.viewModeEnabled?void 0:A.onDoubleClick,children:uA("labels.drawingCanvas")})},$qe=(A)=>({zoom:A.zoom,scrollX:A.scrollX,scrollY:A.scrollY,width:A.width,height:A.height,viewModeEnabled:A.viewModeEnabled,openDialog:A.openDialog,editingGroupId:A.editingGroupId,editingLinearElement:A.editingLinearElement,selectedElementIds:A.selectedElementIds,frameToHighlight:A.frameToHighlight,offsetLeft:A.offsetLeft,offsetTop:A.offsetTop,theme:A.theme,pendingImageElementId:A.pendingImageElementId,selectionElement:A.selectionElement,selectedGroupIds:A.selectedGroupIds,selectedLinearElement:A.selectedLinearElement,multiElement:A.multiElement,isBindingEnabled:A.isBindingEnabled,suggestedBindings:A.suggestedBindings,isRotating:A.isRotating,elementsToHighlight:A.elementsToHighlight,collaborators:A.collaborators,activeEmbeddable:A.activeEmbeddable,snapLines:A.snapLines,zenModeEnabled:A.zenModeEnabled,editingTextElement:A.editingTextElement,isCropping:A.isCropping,croppingElementId:A.croppingElementId,searchMatches:A.searchMatches}),jhr=(A,e)=>A.selectionNonce!==e.selectionNonce||A.sceneNonce!==e.sceneNonce||A.scale!==e.scale||A.elementsMap!==e.elementsMap||A.visibleElements!==e.visibleElements||A.selectedElements!==e.selectedElements?!1:zo($qe(A.appState),$qe(e.appState)),Xhr=gi(Vhr,jhr),$hr=(A)=>{let e=Ee(null),t=Ee(!1);return le(()=>{let r=e.current;if(!r)return;let i=A.canvas;t.current||(t.current=!0,r.replaceChildren(i),i.classList.add("excalidraw__canvas","static"));let u=`${A.appState.width}px`,a=`${A.appState.height}px`;i.style.width!==u&&(i.style.width=u),i.style.height!==a&&(i.style.height=a);let n=A.appState.width*A.scale,o=A.appState.height*A.scale;i.width!==n&&(i.width=n),i.height!==o&&(i.height=o),iQA({canvas:i,rc:A.rc,scale:A.scale,elementsMap:A.elementsMap,allElementsMap:A.allElementsMap,visibleElements:A.visibleElements,appState:A.appState,renderConfig:A.renderConfig},_3A())}),N("div",{className:"excalidraw__canvas-wrapper",ref:e})},Aze=(A)=>({zoom:A.zoom,scrollX:A.scrollX,scrollY:A.scrollY,width:A.width,height:A.height,viewModeEnabled:A.viewModeEnabled,openDialog:A.openDialog,hoveredElementIds:A.hoveredElementIds,offsetLeft:A.offsetLeft,offsetTop:A.offsetTop,theme:A.theme,pendingImageElementId:A.pendingImageElementId,shouldCacheIgnoreZoom:A.shouldCacheIgnoreZoom,viewBackgroundColor:A.viewBackgroundColor,exportScale:A.exportScale,selectedElementsAreBeingDragged:A.selectedElementsAreBeingDragged,gridSize:A.gridSize,gridStep:A.gridStep,frameRendering:A.frameRendering,selectedElementIds:A.selectedElementIds,frameToHighlight:A.frameToHighlight,editingGroupId:A.editingGroupId,currentHoveredFontFamily:A.currentHoveredFontFamily,croppingElementId:A.croppingElementId}),AQr=(A,e)=>A.sceneNonce!==e.sceneNonce||A.scale!==e.scale||A.elementsMap!==e.elementsMap||A.visibleElements!==e.visibleElements?!1:zo(Aze(A.appState),Aze(e.appState))&&zo(A.renderConfig,e.renderConfig),eQr=gi($hr,AQr),eze=class{constructor(A){GA(this,"scene"),GA(this,"getRenderableElements",(()=>{let e=({elementsMap:r,zoom:i,offsetLeft:u,offsetTop:a,scrollX:n,scrollY:o,height:s,width:l})=>{let g=[];for(let C of r.values())cS(C,l,s,{zoom:i,offsetLeft:u,offsetTop:a,scrollX:n,scrollY:o},r)&&g.push(C);return g},t=({elements:r,editingTextElement:i,newElementId:u,pendingImageElementId:a})=>{let n=vg(new Map);for(let o of r)Ni(o)&&a===o.id||u!==o.id&&(!i||i.type!=="text"||o.id!==i.id)&&n.set(o.id,o);return n};return aIe(({zoom:r,offsetLeft:i,offsetTop:u,scrollX:a,scrollY:n,height:o,width:s,editingTextElement:l,newElementId:g,pendingImageElementId:C,sceneNonce:B})=>{let E=this.scene.getNonDeletedElements(),d=t({elements:E,editingTextElement:l,newElementId:g,pendingImageElementId:C}),I=e({elementsMap:d,zoom:r,offsetLeft:i,offsetTop:u,scrollX:a,scrollY:n,height:o,width:s});return{elementsMap:d,visibleElements:I}})})()),this.scene=A}destroy(){oVe.cancel(),rQA.cancel(),this.getRenderableElements.clear()}},tQr=({trails:A})=>{let e=Ee(null);return le(()=>{if(e.current)for(let t of A)t.start(e.current);return()=>{for(let t of A)t.stop()}},A),N("div",{className:"SVGLayer",children:N("svg",{ref:e})})},rQr=5,iQr=(A,e,t)=>{let[r,i]=Nr(A,t),{x:u,y:a}=Sc({sceneX:r+A.width,sceneY:i},e),n=u-e.offsetLeft+10,o=a-e.offsetTop;return{x:n,y:o}},tze=({children:A,element:e,elementsMap:t})=>{let r=JL();if(r.contextMenu||r.newElement||r.resizingElement||r.isRotating||r.openMenu||r.viewModeEnabled)return null;let{x:i,y:u}=iQr(e,r,t);return N("div",{className:"excalidraw-canvas-buttons",style:{top:`${u}px`,left:`${i}px`,padding:rQr},children:A})},uQr="small",o3A=(A)=>cA("label",{className:Se("ToolIcon ToolIcon__MagicButton",`ToolIcon_size_${uQr}`,{"is-mobile":A.isMobile}),title:`${A.title}`,children:[N("input",{className:"ToolIcon_type_checkbox",type:"checkbox",name:A.name,onChange:A.onChange,checked:A.checked,"aria-label":A.title}),N("div",{className:"ToolIcon__icon",children:A.icon})]}),aQr=({height:A,width:e,userToFollow:t,onDisconnect:r})=>N("div",{className:"follow-mode",style:{width:e,height:A},children:cA("div",{className:"follow-mode__badge",children:[cA("div",{className:"follow-mode__badge__label",children:["Following"," ",N("span",{className:"follow-mode__badge__username",title:t.username,children:t.username})]}),N("button",{type:"button",onClick:r,className:"follow-mode__disconnect-btn",children:u2})]})}),nQr=aQr,oQr=class{constructor(){GA(this,"targets",new WeakMap),GA(this,"rafIds",new WeakMap)}register(A,e){this.targets.set(A,{callback:e,stopped:!0})}start(A){let e=this.targets.get(A);e&&(this.rafIds.has(A)||(this.targets.set(A,{...e,stopped:!1}),this.scheduleFrame(A)))}stop(A){let e=this.targets.get(A);e&&!e.stopped&&this.targets.set(A,{...e,stopped:!0}),this.cancelFrame(A)}constructFrame(A){return(e)=>{let t=this.targets.get(A);if(!t)return;let r=this.onFrame(t,e);!t.stopped&&!r?this.scheduleFrame(A):this.cancelFrame(A)}}scheduleFrame(A){let e=requestAnimationFrame(this.constructFrame(A));this.rafIds.set(A,e)}cancelFrame(A){if(this.rafIds.has(A)){let e=this.rafIds.get(A);cancelAnimationFrame(e)}this.rafIds.delete(A)}onFrame(A,e){return A.callback(e)??!1}},v3A=class{constructor(A,e,t){this.animationFrameHandler=A,this.app=e,this.options=t,GA(this,"currentTrail"),GA(this,"pastTrails",[]),GA(this,"container"),GA(this,"trailElement"),this.animationFrameHandler.register(this,this.onFrame.bind(this)),this.trailElement=document.createElementNS(bi,"path")}get hasCurrentTrail(){return!!this.currentTrail}hasLastPoint(A,e){if(this.currentTrail){let t=this.currentTrail.originalPoints.length;return this.currentTrail.originalPoints[t-1][0]===A&&this.currentTrail.originalPoints[t-1][1]===e}return!1}start(A){A&&(this.container=A),this.trailElement.parentNode!==this.container&&this.container&&this.container.appendChild(this.trailElement),this.animationFrameHandler.start(this)}stop(){this.animationFrameHandler.stop(this),this.trailElement.parentNode===this.container&&this.container?.removeChild(this.trailElement)}startPath(A,e){this.currentTrail=new wp(this.options),this.currentTrail.addPoint([A,e,performance.now()]),this.update()}addPointToPath(A,e){this.currentTrail&&(this.currentTrail.addPoint([A,e,performance.now()]),this.update())}endPath(){this.currentTrail&&(this.currentTrail.close(),this.currentTrail.options.keepHead=!1,this.pastTrails.push(this.currentTrail),this.currentTrail=void 0,this.update())}update(){this.start()}onFrame(){let A=[];for(let t of this.pastTrails)A.push(this.drawTrail(t,this.app.state));if(this.currentTrail){let t=this.drawTrail(this.currentTrail,this.app.state);A.push(t)}this.pastTrails=this.pastTrails.filter((t)=>t.getStrokeOutline().length!==0),A.length===0&&this.stop();let e=A.join(" ").trim();this.trailElement.setAttribute("d",e),this.trailElement.setAttribute("fill",(this.options.fill??(()=>"black"))(this))}drawTrail(A,e){let t=A.getStrokeOutline(A.options.size/e.zoom.value).map(([r,i])=>{let u=Sc({sceneX:r,sceneY:i},e);return[u.x,u.y]});return nIe(t,!0)}},sQr=class{constructor(A,e){this.animationFrameHandler=A,this.app=e,GA(this,"localTrail"),GA(this,"collabTrails",new Map),GA(this,"container"),this.animationFrameHandler.register(this,this.onFrame.bind(this)),this.localTrail=new v3A(A,e,{...this.getTrailOptions(),fill:()=>mde})}getTrailOptions(){return{simplify:0,streamline:0.4,sizeMapping:(A)=>{let e=Math.max(0,1-(performance.now()-A.pressure)/1000),t=(50-Math.min(50,A.totalLength-A.currentIndex))/50;return Math.min(K1(t),K1(e))}}}startPath(A,e){this.localTrail.startPath(A,e)}addPointToPath(A,e){this.localTrail.addPointToPath(A,e)}endPath(){this.localTrail.endPath()}start(A){this.container=A,this.animationFrameHandler.start(this),this.localTrail.start(A)}stop(){this.animationFrameHandler.stop(this),this.localTrail.stop()}onFrame(){this.updateCollabTrails()}updateCollabTrails(){if(!(!this.container||this.app.state.collaborators.size===0)){for(let[A,e]of this.app.state.collaborators.entries()){let t;this.collabTrails.has(A)?t=this.collabTrails.get(A):(t=new v3A(this.animationFrameHandler,this.app,{...this.getTrailOptions(),fill:()=>e.pointer?.laserColor||hZ(A,e)}),t.start(this.container),this.collabTrails.set(A,t)),e.pointer&&e.pointer.tool==="laser"&&(e.button==="down"&&!t.hasCurrentTrail&&t.startPath(e.pointer.x,e.pointer.y),e.button==="down"&&t.hasCurrentTrail&&!t.hasLastPoint(e.pointer.x,e.pointer.y)&&t.addPointToPath(e.pointer.x,e.pointer.y),e.button==="up"&&t.hasCurrentTrail&&(t.addPointToPath(e.pointer.x,e.pointer.y),t.endPath()))}for(let A of this.collabTrails.keys())this.app.state.collaborators.has(A)||(this.collabTrails.get(A).stop(),this.collabTrails.delete(A))}}},lQr=(A,e,t,r,i,u)=>{let{zoom:a}=r,n=180*t/Math.PI,o=A*(a.value-1)/2,s=e*(a.value-1)/2;return A>i&&a.value!==1&&(o=i*(a.value-1)/2),e>u&&a.value!==1&&(s=u*(a.value-1)/2),`translate(${o}px, ${s}px) scale(${a.value}) rotate(${n}deg)`},gQr=({id:A,onChange:e,onSubmit:t,getViewportCoords:r,element:i,canvas:u,excalidrawContainer:a,app:n,autoSelect:o=!0})=>{let s=(R,L)=>{if(!L.style.fontFamily||!L.style.fontSize)return!1;let M=L.style.fontFamily.replace(/"/g,"");return e2({fontFamily:R.fontFamily})!==M||`${R.fontSize}px`!==L.style.fontSize},l=()=>{let R=n.state,L=gd.getScene(i)?.getElement(A);if(!L)return;let{textAlign:M,verticalAlign:U}=L,Y=n.scene.getNonDeletedElementsMap();if(L&&Bt(L)){let{x:H,y:J}=L,K=Do(L,n.scene.getNonDeletedElementsMap()),{width:O,height:P,width:z,height:AA}=L;if(K&&L.containerId){if(Jr(K)){let TA=It.getBoundTextElementPosition(K,L,Y);H=TA.x,J=TA.y}let DA=s(L,g),KA;if(DA?KA=AS(K.id,K.height):(KA=qm[K.id],KA||(KA=AS(K.id,K.height))),z=AB(K,L),AA=R9(K,L),!Jr(K)&&P>AA){let TA=M1(P,K.type);xe(K,{height:TA});return}else if(!Jr(K)&&K.height>KA.height&&P<AA){let TA=M1(P,K.type);xe(K,{height:TA})}else{let{y:TA}=eS(K,L,Y);J=TA}}let[W,CA]=r(H,J),{selectionStart:tA,selectionEnd:lA}=g,gA=g.value.length;if(tA===lA&&lA!==gA){let DA=gA-lA;g.selectionStart=g.value.length-DA,g.selectionEnd=g.value.length-DA}K?O+=0.5:(z=(R.width-8-W)/R.zoom.value,O=Math.min(O,z)),P*=1.05;let aA=cu(L),NA=(R.height-CA)/R.zoom.value;Object.assign(g.style,{font:aA,lineHeight:L.lineHeight,width:`${O}px`,height:`${P}px`,left:`${W}px`,top:`${CA}px`,transform:lQr(O,P,WQe(L,K),R,z,NA),textAlign:M,verticalAlign:U,color:L.strokeColor,opacity:L.opacity/100,filter:"var(--theme-filter)",maxHeight:`${NA}px`}),g.scrollTop=0,Cd()&&(g.style.fontFamily=e2(L)),xe(L,{x:H,y:J})}},g=document.createElement("textarea");g.dir="auto",g.tabIndex=0,g.dataset.type="wysiwyg",g.wrap="off",g.classList.add("excalidraw-wysiwyg");let C="pre",B="normal";(Tu(i)||!i.autoResize)&&(C="pre-wrap",B="break-word"),Object.assign(g.style,{position:"absolute",display:"inline-block",minHeight:"1em",backfaceVisibility:"hidden",margin:0,padding:0,border:0,outline:0,resize:"none",background:"transparent",overflow:"hidden",zIndex:"var(--zIndex-wysiwyg)",wordBreak:B,whiteSpace:C,overflowWrap:"break-word",boxSizing:"content-box"}),g.value=i.originalText,l(),e&&(g.onpaste=async(R)=>{let L=await CQA(R,!0);if(!L.text)return;let M=i2(L.text);if(!M)return;let U=Do(i,n.scene.getNonDeletedElementsMap()),Y=cu({fontSize:n.state.currentItemFontSize,fontFamily:n.state.currentItemFontFamily});if(U){let H=Ur(U,n.scene.getNonDeletedElementsMap()),J=_1(`${g.value}${M}`,Y,AB(U,H)),K=O_(J,Y);g.style.width=`${K}px`}},g.oninput=()=>{let R=i2(g.value);if(g.value!==R){let L=g.selectionStart;g.value=R,g.selectionStart=L,g.selectionEnd=L}e(g.value)}),g.onkeydown=(R)=>{if(!R.shiftKey&&tqe.keyTest(R))R.preventDefault(),n.actionManager.executeAction(tqe),l();else if(!R.shiftKey&&rqe.keyTest(R))R.preventDefault(),n.actionManager.executeAction(rqe),l();else if(!R.shiftKey&&iqe.keyTest(R))R.preventDefault(),n.actionManager.executeAction(iqe),l();else if($We.keyTest(R))n.actionManager.executeAction($We);else if(Aqe.keyTest(R))n.actionManager.executeAction(Aqe);else if(R.key===PA.ESCAPE)R.preventDefault(),f=!0,D();else if(R.key===PA.ENTER&&R[PA.CTRL_OR_CMD]){if(R.preventDefault(),R.isComposing||R.keyCode===229)return;f=!0,D()}else if(R.key===PA.TAB||R[PA.CTRL_OR_CMD]&&(R.code===hi.BRACKET_LEFT||R.code===hi.BRACKET_RIGHT)){if(R.preventDefault(),R.isComposing)return;R.shiftKey||R.code===hi.BRACKET_LEFT?Q():h(),g.dispatchEvent(new Event("input"))}};let E=4,d=" ".repeat(E),I=new RegExp(`^ {1,${E}}`),h=()=>{let{selectionStart:R,selectionEnd:L}=g,M=p(),U=g.value;M.forEach((Y)=>{let H=U.slice(0,Y),J=U.slice(Y);U=`${H}${d}${J}`}),g.value=U,g.selectionStart=R+E,g.selectionEnd=L+E*M.length},Q=()=>{let{selectionStart:R,selectionEnd:L}=g,M=p(),U=[],Y=g.value;M.forEach((H)=>{let J=Y.slice(H,H+E).match(I);if(J){let K=Y.slice(0,H),O=Y.slice(H+J[0].length);Y=`${K}${O}`,U.push(H)}}),g.value=Y,U.length&&(R>U[U.length-1]?g.selectionStart=Math.max(R-E,U[U.length-1]):g.selectionStart=R,g.selectionEnd=Math.max(g.selectionStart,L-E*U.length))},p=()=>{let{selectionStart:R,selectionEnd:L,value:M}=g,U=M.slice(0,R).match(/[^\n]*$/)[0].length;return R=R-U,M.slice(R,L).split(`
`).reduce((Y,H,J,K)=>Y.concat(J?Y[J-1]+K[J-1].length+1:R),[]).reverse()},m=(R)=>{R.target instanceof HTMLCanvasElement&&(R.preventDefault(),R.stopPropagation())},f=!1,D=()=>{if(F)return;F=!0,w();let R=gd.getScene(i)?.getElement(i.id);if(!R)return;let L=Do(R,n.scene.getNonDeletedElementsMap());if(L){if(g.value.trim()){let M=ld(L);!M||M!==i.id?xe(L,{boundElements:(L.boundElements||[]).concat({type:"text",id:i.id})}):Jr(L)&&gS(L)}else xe(L,{boundElements:L.boundElements?.filter((M)=>!Bt(M))});V0(R,L,n.scene.getNonDeletedElementsMap())}t({viaKeyboard:f,nextOriginalText:g.value})},w=()=>{g.onblur=null,g.oninput=null,g.onkeydown=null,T&&T.disconnect(),window.removeEventListener("resize",l),window.removeEventListener("wheel",m,!0),window.removeEventListener("pointerdown",v),window.removeEventListener("pointerup",b),window.removeEventListener("blur",D),window.removeEventListener("beforeunload",D),S(),x(),g.remove()},b=(R)=>{window.removeEventListener("pointerup",b);let L=R?.target,M=L instanceof HTMLElement&&L.classList.contains("properties-trigger");setTimeout(()=>{g.onblur=D,M||g.focus()})},k=()=>{g.onblur=null,window.addEventListener("pointerup",b),window.addEventListener("blur",D)},v=(R)=>{let L=R?.target;if(R.button===Sh.WHEEL){L instanceof HTMLTextAreaElement&&(R.preventDefault(),n.handleCanvasPanUsingWheelOrSpaceDrag(R)),k();return}let M=L instanceof HTMLElement&&L.classList.contains("properties-trigger");(R.target instanceof HTMLElement||R.target instanceof SVGElement)&&R.target.closest(`.${Vm.SHAPE_ACTIONS_MENU}, .${Vm.ZOOM_ACTIONS}`)&&!H1(R.target)||M?k():R.target instanceof HTMLCanvasElement&&!Cd()&&requestAnimationFrame(()=>{D()})},S=n.scene.onUpdate(()=>{l(),!!document.activeElement?.closest(".properties-content")||g.focus()}),x=n.onScrollChangeEmitter.on(()=>{l()}),F=!1;o&&g.select(),b();let T=null;u&&"ResizeObserver"in window?(T=new window.ResizeObserver(()=>{l()}),T.observe(u)):window.addEventListener("resize",l),g.onpointerdown=(R)=>R.stopPropagation(),requestAnimationFrame(()=>{window.addEventListener("pointerdown",v,{capture:!0})}),window.addEventListener("beforeunload",D),a?.querySelector(".excalidraw-textEditorContainer").appendChild(g)},cQr=at({name:"autoResize",label:"labels.autoResize",icon:null,trackEvent:{category:"element"},predicate:(A,e,t,r)=>{let i=Or(A,e);return i.length===1&&Bt(i[0])&&!i[0].autoResize},perform:(A,e,t,r)=>{let i=Or(A,e);return{appState:e,elements:A.map((u)=>{if(u.id===i[0].id&&Bt(u)){let a=y0(u.originalText,cu(u),u.lineHeight);return Yr(u,{autoResize:!0,width:a.width,height:a.height,text:u.originalText})}return u}),captureUpdate:be.IMMEDIATELY}}}),CQr=(A)=>new RegExp(`^(?:%%{.*?}%%[\\s\\n]*)?\\b(?:${["flowchart","graph","sequenceDiagram","classDiagram","stateDiagram","stateDiagram-v2","erDiagram","journey","gantt","pie","quadrantChart","requirementDiagram","gitGraph","C4Context","mindmap","timeline","zenuml","sankey","xychart","block"].map((t)=>`\\s*${t}(-beta)?`).join("|")})\\b`).test(A.trim()),sVe=({canvas:A,rc:e,newElement:t,elementsMap:r,allElementsMap:i,scale:u,appState:a,renderConfig:n})=>{if(A){let[o,s]=kW(A,u),l=FW({canvas:A,scale:u,normalizedWidth:o,normalizedHeight:s});l.save(),l.scale(a.zoom.value,a.zoom.value),t&&t.type!=="selection"?v1(t,r,i,e,l,n,a):l.clearRect(0,0,o,s)}},BQr=M8((A)=>{sVe(A)},{trailing:!0}),EQr=(A,e)=>{if(e){BQr(A);return}sVe(A)},dQr=(A)=>{let e=Ee(null);return le(()=>{e.current&&EQr({canvas:e.current,scale:A.scale,newElement:A.appState.newElement,elementsMap:A.elementsMap,allElementsMap:A.allElementsMap,rc:A.rc,renderConfig:A.renderConfig,appState:A.appState},_3A())}),N("canvas",{className:"excalidraw__canvas",style:{width:A.appState.width,height:A.appState.height},width:A.appState.width*A.scale,height:A.appState.height*A.scale,ref:e})},IQr=dQr,lVe=wi(null),gVe=wi(null),cVe={viewport:{isMobile:!1,isLandscape:!1},editor:{isMobile:!1,canFitSidebar:!1},isTouchScreen:!1},W3A=wi(cVe);W3A.displayName="DeviceContext";var q3A=wi({container:null,id:null});q3A.displayName="ExcalidrawContainerContext";var z3A=wi([]);z3A.displayName="ExcalidrawElementsContext";var Z3A=wi({...iB(),width:0,height:0,offsetLeft:0,offsetTop:0});Z3A.displayName="ExcalidrawAppStateContext";var V3A=wi(()=>{console.warn("Uninitialized ExcalidrawSetAppStateContext context!")});V3A.displayName="ExcalidrawSetAppStateContext";var j3A=wi(null);j3A.displayName="ExcalidrawActionManagerContext";var Nd=()=>Li(lVe),KL=()=>Li(gVe),vo=()=>Li(W3A),Gd=()=>Li(q3A),pZ=()=>Li(z3A),JL=()=>Li(Z3A),qn=()=>Li(V3A),Pl=()=>Li(j3A),wL=!1,s3A=0,H2=!1,bL=!1,l3A=!1,g3A={horizontal:null,vertical:null},bp=0,vL=!1,c3A=new Map,Xz=!1,rze=0,ize=!1,kL=null,Wi={pointers:new Map,lastCenter:null,initialDistance:null,initialScale:null},hQr=class A extends hdA{constructor(e){super(e);GA(this,"canvas"),GA(this,"interactiveCanvas",null),GA(this,"rc"),GA(this,"unmounted",!1),GA(this,"actionManager"),GA(this,"device",cVe),GA(this,"excalidrawContainerRef",QdA()),GA(this,"scene"),GA(this,"fonts"),GA(this,"renderer"),GA(this,"visibleElements"),GA(this,"resizeObserver"),GA(this,"nearestScrollableContainer"),GA(this,"library"),GA(this,"libraryItemsFromStorage"),GA(this,"id"),GA(this,"store"),GA(this,"history"),GA(this,"excalidrawContainerValue"),GA(this,"files",{}),GA(this,"imageCache",new Map),GA(this,"iFrameRefs",new Map),GA(this,"embedsValidationStatus",new Map),GA(this,"initializedEmbeds",new Set),GA(this,"elementsPendingErasure",new Set),GA(this,"flowChartCreator",new Udr),GA(this,"flowChartNavigator",new Gdr),GA(this,"hitLinkElement"),GA(this,"lastPointerDownEvent",null),GA(this,"lastPointerUpEvent",null),GA(this,"lastPointerMoveEvent",null),GA(this,"lastPointerMoveCoords",null),GA(this,"lastViewportPosition",{x:0,y:0}),GA(this,"animationFrameHandler",new oQr),GA(this,"laserTrails",new sQr(this.animationFrameHandler,this)),GA(this,"eraserTrail",new v3A(this.animationFrameHandler,this,{streamline:0.2,size:5,keepHead:!0,sizeMapping:(l)=>{let g=Math.max(0,1-(performance.now()-l.pressure)/200),C=(10-Math.min(10,l.totalLength-l.currentIndex))/10;return Math.min(K1(C),K1(g))},fill:()=>this.state.theme===ei.LIGHT?"rgba(0, 0, 0, 0.2)":"rgba(255, 255, 255, 0.2)"})),GA(this,"onChangeEmitter",new lB),GA(this,"onPointerDownEmitter",new lB),GA(this,"onPointerUpEmitter",new lB),GA(this,"onUserFollowEmitter",new lB),GA(this,"onScrollChangeEmitter",new lB),GA(this,"missingPointerEventCleanupEmitter",new lB),GA(this,"onRemoveEventListenersEmitter",new lB),GA(this,"getEffectiveGridSize",()=>S9(this)?this.state.gridSize:null),GA(this,"updateEmbedValidationStatus",(l,g)=>{this.embedsValidationStatus.set(l.id,g),na.delete(l)}),GA(this,"updateEmbeddables",()=>{let l=new Set,g=!1;this.scene.getNonDeletedElements().filter((C)=>{if(Js(C)){if(l.add(C.id),!this.embedsValidationStatus.has(C.id)){g=!0;let B=tS(C.link,this.props.validateEmbeddable);this.updateEmbedValidationStatus(C,B)}}else Rh(C)&&l.add(C.id);return!1}),g&&this.scene.triggerUpdate(),this.iFrameRefs.forEach((C,B)=>{l.has(B)||this.iFrameRefs.delete(B)})}),GA(this,"getFrameNameDOMId",(l)=>`${this.id}-frame-name-${l.id}`),GA(this,"frameNameBoundsCache",{get:(l)=>{let g=this.frameNameBoundsCache._cache.get(l.id);if(!g||g.zoom!==this.state.zoom.value||g.versionNonce!==l.versionNonce){let C=document.getElementById(this.getFrameNameDOMId(l));if(C){let B=C.getBoundingClientRect(),E=Ru({clientX:B.x,clientY:B.y},this.state),d=Ru({clientX:B.right,clientY:B.bottom},this.state);return g={x:E.x,y:E.y,width:d.x-E.x,height:d.y-E.y,angle:0,zoom:this.state.zoom.value,versionNonce:l.versionNonce},this.frameNameBoundsCache._cache.set(l.id,g),g}return null}return g},_cache:new Map}),GA(this,"resetEditingFrame",(l)=>{l&&xe(l,{name:l.name?.trim()||null}),this.setState({editingFrame:null})}),GA(this,"renderFrameNames",()=>{if(!this.state.frameRendering.enabled||!this.state.frameRendering.name)return this.state.editingFrame&&this.resetEditingFrame(null),null;let l=this.state.theme===ei.DARK;return this.scene.getNonDeletedFramesLikes().map((g)=>{if(!cS(g,this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap()))return this.state.editingFrame===g.id&&this.resetEditingFrame(g),null;let{x:C,y:B}=Sc({sceneX:g.x,sceneY:g.y},this.state),E=6,d,I=pQA(g);if(g.id===this.state.editingFrame){let h=I;d=N("input",{autoFocus:!0,value:h,onChange:(Q)=>{xe(g,{name:Q.target.value})},onFocus:(Q)=>Q.target.select(),onBlur:()=>this.resetEditingFrame(g),onKeyDown:(Q)=>{(Q.key===PA.ESCAPE||Q.key===PA.ENTER)&&this.resetEditingFrame(g)},style:{background:this.state.viewBackgroundColor,filter:l?U_:"none",zIndex:2,border:"none",display:"block",padding:`${E}px`,borderRadius:4,boxShadow:"inset 0 0 0 1px var(--color-primary)",fontFamily:"Assistant",fontSize:"14px",transform:`translate(-${E}px, ${E}px)`,color:"var(--color-gray-80)",overflow:"hidden",maxWidth:`${document.body.clientWidth-C-E}px`},size:h.length+1||1,dir:"auto",autoComplete:"off",autoCapitalize:"off",autoCorrect:"off"})}else d=I;return N("div",{id:this.getFrameNameDOMId(g),style:{position:"absolute",bottom:`${this.state.height+Zu.nameOffsetY-B+this.state.offsetTop}px`,left:`${C-this.state.offsetLeft}px`,zIndex:2,fontSize:Zu.nameFontSize,color:l?Zu.nameColorDarkTheme:Zu.nameColorLightTheme,lineHeight:Zu.nameLineHeight,width:"max-content",maxWidth:`${g.width}px`,overflow:g.id===this.state.editingFrame?"visible":"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",cursor:iu.MOVE,pointerEvents:this.state.viewModeEnabled?Zm.disabled:Zm.enabled},onPointerDown:(h)=>this.handleCanvasPointerDown(h),onWheel:(h)=>this.handleWheel(h),onContextMenu:this.handleCanvasContextMenu,onDoubleClick:()=>{this.setState({editingFrame:g.id})},children:d},g.id)})}),GA(this,"focusContainer",()=>{this.excalidrawContainerRef.current?.focus()}),GA(this,"getSceneElementsIncludingDeleted",()=>this.scene.getElementsIncludingDeleted()),GA(this,"getSceneElements",()=>this.scene.getNonDeletedElements()),GA(this,"onInsertElements",(l)=>{this.addElementsFromPasteOrLibrary({elements:l,position:"center",files:null})}),GA(this,"onExportImage",async(l,g,C)=>{Nu("export",l,"ui");let B=await IZ(l,g,this.state,this.files,{exportBackground:this.state.exportBackground,name:this.getName(),viewBackgroundColor:this.state.viewBackgroundColor,exportingFrame:C.exportingFrame}).catch(QIA).catch((E)=>{console.error(E),this.setState({errorMessage:E.message})});this.state.exportEmbedScene&&B&&zW(B)&&this.setState({fileHandle:B})}),GA(this,"magicGenerations",new Map),GA(this,"updateMagicGeneration",({frameElement:l,data:g})=>{g.status==="pending"?xe(l,{customData:{generationData:void 0}},!1):xe(l,{customData:{generationData:g}},!1),this.magicGenerations.set(l.id,g),this.triggerRender()}),GA(this,"plugins",{}),GA(this,"onMagicframeToolSelect",()=>{let l=this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds});if(l.length===0)this.setActiveTool({type:Jn.magicframe}),Nu("ai","tool-select (empty-selection)","d2c");else{let g=l.length===1&&K8(l[0])&&l[0];if(!g&&l.some((B)=>nr(B)||B.frameId)){this.setActiveTool({type:Jn.magicframe});return}Nu("ai","tool-select (existing selection)","d2c");let C;if(g)C=g;else{let[B,E,d,I]=Pi(l),h=50;C=fW({...Zu,x:B-h,y:E-h,width:d-B+h*2,height:I-E+h*2,opacity:100,locked:!1}),this.scene.insertElement(C);for(let Q of l)xe(Q,{frameId:C.id});this.setState({selectedElementIds:{[C.id]:!0}})}this.onMagicFrameGenerate(C,"upstream")}}),GA(this,"openEyeDropper",({type:l})=>{vB.set(CZ,{swapPreviewOnAlt:!0,colorPickerType:l==="stroke"?"elementStroke":"elementBackground",onSelect:(g,C)=>{let B=l==="background"&&C.altKey||l==="stroke"&&!C.altKey;!this.scene.getSelectedElements(this.state).length||this.state.activeTool.type!=="selection"?B?this.syncActionResult({appState:{...this.state,currentItemStrokeColor:g},captureUpdate:be.IMMEDIATELY}):this.syncActionResult({appState:{...this.state,currentItemBackgroundColor:g},captureUpdate:be.IMMEDIATELY}):this.updateScene({elements:this.scene.getElementsIncludingDeleted().map((E)=>this.state.selectedElementIds[E.id]?Yr(E,{[B?"strokeColor":"backgroundColor"]:g}):E),captureUpdate:be.IMMEDIATELY})},keepOpenOnAlt:!1})}),GA(this,"dismissLinearEditor",()=>{setTimeout(()=>{this.setState({editingLinearElement:null})})}),GA(this,"syncActionResult",Ha((l)=>{if(this.unmounted||l===!1)return;l.captureUpdate===be.NEVER?this.store.shouldUpdateSnapshot():l.captureUpdate===be.IMMEDIATELY&&this.store.shouldCaptureIncrement();let g=!1,C=null;if(l.elements&&(this.scene.replaceAllElements(l.elements),g=!0),l.files&&(this.addMissingFiles(l.files,l.replaceFiles),this.addNewImagesToImageCache()),l.appState||C||this.state.contextMenu){let B=l?.appState?.viewModeEnabled||!1,E=l?.appState?.zenModeEnabled||!1,d=l?.appState?.theme||this.props.theme||ei.LIGHT,I=l?.appState?.name??this.state.name,h=l?.appState?.errorMessage??this.state.errorMessage;typeof this.props.viewModeEnabled<"u"&&(B=this.props.viewModeEnabled),typeof this.props.zenModeEnabled<"u"&&(E=this.props.zenModeEnabled),C=l.appState?.editingTextElement||null,l.elements&&C&&l.elements.forEach((Q)=>{C?.id===Q.id&&C!==Q&&qW(Q)&&Bt(Q)&&(C=Q)}),C?.isDeleted&&(C=null),this.setState((Q)=>{let p=l.appState||{};return{...Q,...p,contextMenu:null,editingTextElement:C,viewModeEnabled:B,zenModeEnabled:E,theme:d,name:I,errorMessage:h}}),g=!0}!g&&l.captureUpdate!==be.EVENTUALLY&&this.scene.triggerUpdate()})),GA(this,"onBlur",Ha(()=>{H2=!1,this.setState({isBindingEnabled:!0})})),GA(this,"onUnload",()=>{this.onBlur()}),GA(this,"disableEvent",(l)=>{l.preventDefault()}),GA(this,"resetHistory",()=>{this.history.clear()}),GA(this,"resetStore",()=>{this.store.clear()}),GA(this,"resetScene",Ha((l)=>{this.scene.replaceAllElements([]),this.setState((g)=>({...iB(),isLoading:l?.resetLoadingState?!1:g.isLoading,theme:this.state.theme})),this.resetStore(),this.resetHistory()})),GA(this,"initializeScene",async()=>{"launchQueue"in window&&"LaunchParams"in window&&window.launchQueue.setConsumer(async(C)=>{if(!C.files.length)return;let B=C.files[0],E=await B.getFile();this.loadFileToCanvas(new File([E],E.name||"",{type:E.type}),B)}),this.props.theme&&this.setState({theme:this.props.theme}),this.state.isLoading||this.setState({isLoading:!0});let l=null;try{typeof this.props.initialData=="function"?l=await this.props.initialData()||null:l=await this.props.initialData||null,l?.libraryItems&&this.library.updateLibrary({libraryItems:l.libraryItems,merge:!0}).catch((C)=>{console.error(C)})}catch(C){console.error(C),l={appState:{errorMessage:C.message||"Encountered an error during importing or restoring scene data"}}}let g=aS(l,null,null,{repairBindings:!0});g.appState={...g.appState,theme:this.props.theme||g.appState.theme,openSidebar:g.appState?.openSidebar||this.state.openSidebar,activeTool:g.appState.activeTool.type==="image"?{...g.appState.activeTool,type:"selection"}:g.appState.activeTool,isLoading:!1,toast:this.state.toast},l?.scrollToContent&&(g.appState={...g.appState,...F9(g.elements,{...g.appState,width:this.state.width,height:this.state.height,offsetTop:this.state.offsetTop,offsetLeft:this.state.offsetLeft})}),this.resetStore(),this.resetHistory(),this.syncActionResult({...g,captureUpdate:be.NEVER}),this.clearImageShapeCache(),this.fonts.loadSceneFonts().then((C)=>{this.fonts.onLoaded(C)}),N9(window.location.href)&&this.scrollToContent(window.location.href,{animate:!1})}),GA(this,"isMobileBreakpoint",(l,g)=>l<Rde||g<Gde&&l<Nde),GA(this,"refreshViewportBreakpoints",()=>{if(!this.excalidrawContainerRef.current)return;let{clientWidth:l,clientHeight:g}=document.body,C=this.device.viewport,B=Y8(C,{isLandscape:l>g,isMobile:this.isMobileBreakpoint(l,g)});return C!==B?(this.device={...this.device,viewport:B},!0):!1}),GA(this,"refreshEditorBreakpoints",()=>{let l=this.excalidrawContainerRef.current;if(!l)return;let{width:g,height:C}=l.getBoundingClientRect(),B=this.props.UIOptions.dockedSidebarBreakpoint!=null?this.props.UIOptions.dockedSidebarBreakpoint:Ude,E=this.device.editor,d=Y8(E,{isMobile:this.isMobileBreakpoint(g,C),canFitSidebar:g>B});return E!==d?(this.device={...this.device,editor:d},!0):!1}),GA(this,"onResize",Ha(()=>{this.scene.getElementsIncludingDeleted().forEach((l)=>na.delete(l)),this.refreshViewportBreakpoints(),this.updateDOMRect(),S_||this.refreshEditorBreakpoints(),this.setState({})})),GA(this,"onFullscreenChange",()=>{!document.fullscreenElement&&this.state.activeEmbeddable?.state==="active"&&this.setState({activeEmbeddable:null})}),GA(this,"renderInteractiveSceneCallback",({atLeastOneVisibleElement:l,scrollBars:g,elementsMap:C})=>{g&&(g3A=g);let B=this.state.editingTextElement?!1:!l&&C.size>0;this.state.scrolledOutside!==B&&this.setState({scrolledOutside:B}),this.scheduleImageRefresh()}),GA(this,"onScroll",t2(()=>{let{offsetTop:l,offsetLeft:g}=this.getCanvasOffsets();this.setState((C)=>C.offsetLeft===g&&C.offsetTop===l?null:{offsetTop:l,offsetLeft:g})},Sde)),GA(this,"onCut",Ha((l)=>{!this.excalidrawContainerRef.current?.contains(document.activeElement)||H1(l.target)||(this.actionManager.executeAction(lqe,"keyboard",l),l.preventDefault(),l.stopPropagation())})),GA(this,"onCopy",Ha((l)=>{!this.excalidrawContainerRef.current?.contains(document.activeElement)||H1(l.target)||(this.actionManager.executeAction(eZ,"keyboard",l),l.preventDefault(),l.stopPropagation())})),GA(this,"onTouchStart",(l)=>{if(nIA&&l.preventDefault(),!wL){wL=!0,clearTimeout(s3A),s3A=window.setTimeout(A.resetTapTwice,Fde);return}if(wL&&l.touches.length===1){let g=l.touches[0];this.handleCanvasDoubleClick({clientX:g.clientX,clientY:g.clientY}),wL=!1,clearTimeout(s3A)}l.touches.length===2&&this.setState({selectedElementIds:Gi({},this.state),activeEmbeddable:null})}),GA(this,"onTouchEnd",(l)=>{this.resetContextMenuTimer(),l.touches.length>0?this.setState({previousSelectedElementIds:{},selectedElementIds:Gi(this.state.previousSelectedElementIds,this.state)}):Wi.pointers.clear()}),GA(this,"pasteFromClipboard",Ha(async(l)=>{let g=!!Xz,C=document.activeElement,B=this.excalidrawContainerRef.current?.contains(C);if(l&&!B)return;let E=document.elementFromPoint(this.lastViewportPosition.x,this.lastViewportPosition.y);if(l&&(!(E instanceof HTMLCanvasElement)||H1(C)))return;let{x:d,y:I}=Ru({clientX:this.lastViewportPosition.x,clientY:this.lastViewportPosition.y},this.state),h=l?.clipboardData?.files[0],Q=await CQA(l,g);if(!h&&!g){if(Q.mixedContent)return this.addElementsFromMixedContentPaste(Q.mixedContent,{isPlainPaste:g,sceneX:d,sceneY:I});if(Q.text){let p=Q.text.trim();p.startsWith("<svg")&&p.endsWith("</svg>")&&(h=TQA(p))}}if(X1(h)&&!Q.spreadsheet){if(!this.isToolSupported("image")){this.setState({errorMessage:uA("errors.imageToolNotSupported")});return}let p=this.createImageElement({sceneX:d,sceneY:I});this.insertImageElement(p,h),this.initializeImageDimensions(p),this.setState({selectedElementIds:Gi({[p.id]:!0},this.state)});return}if(this.props.onPaste)try{if(await this.props.onPaste(Q,l)===!1)return}catch(p){console.error(p)}if(Q.errorMessage)this.setState({errorMessage:Q.errorMessage});else if(Q.spreadsheet&&!g)this.setState({pasteDialog:{data:Q.spreadsheet,shown:!0}});else if(Q.elements){let p=Q.programmaticAPI?TL(Q.elements):Q.elements;this.addElementsFromPasteOrLibrary({elements:p,files:Q.files||null,position:"cursor",retainSeed:g})}else if(Q.text){if(Q.text&&CQr(Q.text)){let f=await Promise.resolve().then(() => (IP(),{}));try{let{elements:D,files:w={}}=await dP(Q.text),b=TL(D,{regenerateIds:!0});this.addElementsFromPasteOrLibrary({elements:b,files:w,position:"cursor"});return}catch(D){console.warn(`parsing pasted text as mermaid definition failed: ${D.message}`)}}let p=yIA(Q.text).split(/\n+/).map((f)=>f.trim()).filter(Boolean),m=p.map((f)=>s4e(f)).filter((f)=>tS(f,this.props.validateEmbeddable)&&(/^(http|https):\/\/[^\s/$.?#].[^\s]*$/.test(f)||s2(f)?.type==="video"));if(!Xz&&m.length>0&&m.length===p.length){let f=[];for(let D of m){let w=f[f.length-1],b=this.insertEmbeddableElement({sceneX:w?w.x+w.width+20:d,sceneY:I,link:Nl(D)});b&&f.push(b)}f.length&&this.setState({selectedElementIds:Object.fromEntries(f.map((D)=>[D.id,!0]))});return}this.addTextFromPaste(Q.text,g)}this.setActiveTool({type:"selection"}),l?.preventDefault()})),GA(this,"addElementsFromPasteOrLibrary",(l)=>{let g=LW(l.elements,null,void 0),[C,B,E,d]=Pi(g),I=D0(C,E)/2,h=D0(B,d)/2,Q=typeof l.position=="object"?l.position.clientX:l.position==="cursor"?this.lastViewportPosition.x:this.state.width/2+this.state.offsetLeft,p=typeof l.position=="object"?l.position.clientY:l.position==="cursor"?this.lastViewportPosition.y:this.state.height/2+this.state.offsetTop,{x:m,y:f}=Ru({clientX:Q,clientY:p},this.state),D=m-I,w=f-h,[b,k]=Dn(D,w,this.getEffectiveGridSize()),v=qhA(g.map((R)=>Yr(R,{x:R.x+b-C,y:R.y+k-B})),{randomizeSeed:!l.retainSeed}),S=this.scene.getElementsIncludingDeleted(),x=[...S,...v];x=this.props.onDuplicate?.(x,S)||x,tB(x,ar(v));let F=this.getTopLayerFrameAtSceneCoords({x:m,y:f});if(F){let R=M4e(v,F);M9(x,R,F,this.state)}this.scene.replaceAllElements(x),v.forEach((R)=>{if(Bt(R)&&Tu(R)){let L=Do(R,this.scene.getElementsMapIncludingDeleted());V0(R,L,this.scene.getElementsMapIncludingDeleted())}}),Ide&&Ed.loadElementsFonts(v).then((R)=>{this.fonts.onLoaded(R)}),l.files&&this.addMissingFiles(l.files),this.store.shouldCaptureIncrement();let T=KW(v);this.setState({...this.state,openSidebar:this.state.openSidebar&&this.device.editor.canFitSidebar&&vB.get(H3A)?this.state.openSidebar:null,...Z0({editingGroupId:null,selectedElementIds:T.reduce((R,L)=>(Tu(L)||(R[L.id]=!0),R),{})},this.scene.getNonDeletedElements(),this.state,this)},()=>{l.files&&this.addNewImagesToImageCache()}),this.setActiveTool({type:"selection"}),l.fitToContent&&this.scrollToContent(v,{fitToContent:!0,canvasOffsets:this.getEditorUIOffsets()})}),GA(this,"setAppState",(l,g)=>{this.setState(l,g)}),GA(this,"removePointer",(l)=>{bp&&this.resetContextMenuTimer(),Wi.pointers.delete(l.pointerId)}),GA(this,"toggleLock",(l="ui")=>{this.state.activeTool.locked||Nu("toolbar","toggleLock",`${l} (${this.device.editor.isMobile?"mobile":"desktop"})`),this.setState((g)=>({activeTool:{...g.activeTool,...en(this.state,g.activeTool.locked?{type:"selection"}:g.activeTool),locked:!g.activeTool.locked}}))}),GA(this,"updateFrameRendering",(l)=>{this.setState((g)=>{let C=typeof l=="function"?l(g.frameRendering):l;return{frameRendering:{enabled:C?.enabled??g.frameRendering.enabled,clip:C?.clip??g.frameRendering.clip,name:C?.name??g.frameRendering.name,outline:C?.outline??g.frameRendering.outline}}})}),GA(this,"togglePenMode",(l)=>{this.setState((g)=>({penMode:l??!g.penMode,penDetected:!0}))}),GA(this,"onHandToolToggle",()=>{this.actionManager.executeAction(QBr)}),GA(this,"zoomCanvas",(l)=>{this.setState({...K2({viewportX:this.state.width/2+this.state.offsetLeft,viewportY:this.state.height/2+this.state.offsetTop,nextZoom:dd(l)},this.state)})}),GA(this,"cancelInProgressAnimation",null),GA(this,"scrollToContent",(l=this.scene.getNonDeletedElements(),g)=>{if(typeof l=="string"){let I;if(N9(l)?I=E4e(l):I=l,I){let h=this.scene.getElementsFromId(I);h?.length?this.scrollToContent(h,{fitToContent:g?.fitToContent??!0,animate:g?.animate??!0}):N9(l)&&this.setState({toast:{message:uA("elementLink.notFound"),duration:3000,closable:!0}})}return}this.cancelInProgressAnimation?.();let C=Array.isArray(l)?l:[l],B=this.state.zoom,E=this.state.scrollX,d=this.state.scrollY;if(g?.fitToContent||g?.fitToViewport){let{appState:I}=EZ({canvasOffsets:g.canvasOffsets,targetElements:C,appState:this.state,fitToViewport:!!g?.fitToViewport,viewportZoomFactor:g?.viewportZoomFactor,minZoom:g?.minZoom,maxZoom:g?.maxZoom});B=I.zoom,E=I.scrollX,d=I.scrollY}else{let I=F9(C,this.state);E=I.scrollX,d=I.scrollY}if(g?.animate){let I=this.state.scrollX,h=this.state.scrollY,Q=this.state.zoom.value,p=jde({fromValues:{scrollX:I,scrollY:h,zoom:Q},toValues:{scrollX:E,scrollY:d,zoom:B.value},interpolateValue:(m,f,D,w)=>{if(w==="zoom")return m*Math.pow(f/m,K1(D))},onStep:({scrollX:m,scrollY:f,zoom:D})=>{this.setState({scrollX:m,scrollY:f,zoom:{value:D}})},onStart:()=>{this.setState({shouldCacheIgnoreZoom:!0})},onEnd:()=>{this.setState({shouldCacheIgnoreZoom:!1})},onCancel:()=>{this.setState({shouldCacheIgnoreZoom:!1})},duration:g?.duration??500});this.cancelInProgressAnimation=()=>{p(),this.cancelInProgressAnimation=null}}else this.setState({scrollX:E,scrollY:d,zoom:B})}),GA(this,"maybeUnfollowRemoteUser",()=>{this.state.userToFollow&&this.setState({userToFollow:null})}),GA(this,"translateCanvas",(l)=>{this.cancelInProgressAnimation?.(),this.maybeUnfollowRemoteUser(),this.setState(l)}),GA(this,"setToast",(l)=>{this.setState({toast:l})}),GA(this,"restoreFileFromShare",async()=>{try{let l=await caches.open("web-share-target"),g=await l.match("shared-file");if(g){let C=await g.blob(),B=new File([C],C.name||"",{type:C.type});this.loadFileToCanvas(B,null),await l.delete("shared-file"),window.history.replaceState(null,Qde,window.location.pathname)}}catch(l){this.setState({errorMessage:l.message})}}),GA(this,"addFiles",Ha((l)=>{let{addedFiles:g}=this.addMissingFiles(l);this.clearImageShapeCache(g),this.scene.triggerUpdate(),this.addNewImagesToImageCache()})),GA(this,"addMissingFiles",(l,g=!1)=>{let C=g?{}:{...this.files},B={},E=Array.isArray(l)?l:Object.values(l);for(let d of E)if(!C[d.id]&&(B[d.id]=d,C[d.id]=d,d.mimeType===jt.svg))try{let I=e1e($hA(r1e(d.dataURL)),jt.svg);d.dataURL!==I&&(d.version=(d.version??1)+1,d.dataURL=I)}catch(I){console.error(I)}return this.files=C,{addedFiles:B}}),GA(this,"updateScene",Ha((l)=>{let g=hd(l.elements??[]);if(l.captureUpdate&&l.captureUpdate!==be.EVENTUALLY){let C=this.store.snapshot.appState,B=this.store.snapshot.elements,E=l.appState?Object.assign({},C,l.appState):C,d=l.elements?this.store.filterUncomittedElements(this.scene.getElementsMapIncludingDeleted(),ar(g)):B;l.captureUpdate===be.IMMEDIATELY?this.store.captureIncrement(d,E):l.captureUpdate===be.NEVER&&this.store.updateSnapshot(d,E)}l.appState&&this.setState(l.appState),l.elements&&this.scene.replaceAllElements(g),l.collaborators&&this.setState({collaborators:l.collaborators})})),GA(this,"triggerRender",(l)=>{l===!0?this.scene.triggerUpdate():this.setState({})}),GA(this,"toggleSidebar",({name:l,tab:g,force:C})=>{let B;C===void 0?B=this.state.openSidebar?.name===l&&this.state.openSidebar?.tab===g?null:l:B=C?l:null;let E=B?{name:B}:null;return E&&g&&(E.tab=g),this.setState({openSidebar:E}),!!B}),GA(this,"updateCurrentCursorPosition",Ha((l)=>{this.lastViewportPosition.x=l.clientX,this.lastViewportPosition.y=l.clientY})),GA(this,"getEditorUIOffsets",()=>{let l=this.excalidrawContainerRef?.current?.querySelector(".App-toolbar")?.getBoundingClientRect()?.bottom??0,g=this.excalidrawContainerRef?.current?.querySelector(".sidebar")?.getBoundingClientRect(),C=this.excalidrawContainerRef?.current?.querySelector(".App-menu__left")?.getBoundingClientRect(),B=16;return NL().rtl?{top:l+B,right:Math.max(this.state.width-(C?.left??this.state.width),0)+B,bottom:B,left:Math.max(g?.right??0,0)+B}:{top:l+B,right:Math.max(this.state.width-(g?.left??this.state.width)+B,0),bottom:B,left:Math.max(C?.right??0,0)+B}}),GA(this,"onKeyDown",Ha((l)=>{if("Proxy"in window&&(!l.shiftKey&&/^[A-Z]$/.test(l.key)||l.shiftKey&&/^[a-z]$/.test(l.key))&&(l=new Proxy(l,{get(E,d){let I=E[d];return typeof I=="function"?I.bind(E):d==="key"?l.shiftKey?E.key.toUpperCase():E.key.toLowerCase():I}})),!Y_(l.target)){if((l.key===PA.ESCAPE||l.key===PA.ENTER)&&this.state.croppingElementId){this.finishImageCropping();return}let E=Or(this.scene.getNonDeletedElementsMap(),this.state);if(E.length===1&&Ni(E[0])&&l.key===PA.ENTER){this.startImageCropping(E[0]);return}if(l.key===PA.ESCAPE&&this.flowChartCreator.isCreatingChart){this.flowChartCreator.clear(),this.triggerRender(!0);return}let d=b9(l.key);if(l[PA.CTRL_OR_CMD]&&d&&!l.shiftKey){l.preventDefault();let I=Or(this.scene.getNonDeletedElementsMap(),this.state);I.length===1&&J8(I[0])&&this.flowChartCreator.createNodes(I[0],this.scene.getNonDeletedElementsMap(),this.state,kqe(l.key)),this.flowChartCreator.pendingNodes?.length&&!CS(this.flowChartCreator.pendingNodes,this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap(),this.getEditorUIOffsets())&&this.scrollToContent(this.flowChartCreator.pendingNodes,{animate:!0,duration:300,fitToContent:!0,canvasOffsets:this.getEditorUIOffsets()});return}if(l.altKey){let I=Or(this.scene.getNonDeletedElementsMap(),this.state);if(I.length===1&&d){l.preventDefault();let h=this.flowChartNavigator.exploreByDirection(I[0],this.scene.getNonDeletedElementsMap(),kqe(l.key));if(h){this.setState((p)=>({selectedElementIds:Gi({[h]:!0},p)}));let Q=this.scene.getNonDeletedElementsMap().get(h);Q&&!CS([Q],this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap(),this.getEditorUIOffsets())&&this.scrollToContent(Q,{animate:!0,duration:300,canvasOffsets:this.getEditorUIOffsets()})}return}}}if(l[PA.CTRL_OR_CMD]&&l.key===PA.P&&!l.shiftKey&&!l.altKey){this.setToast({message:uA("commandPalette.shortcutHint",{shortcut:is("commandPalette")})}),l.preventDefault();return}if(l[PA.CTRL_OR_CMD]&&l.key.toLowerCase()===PA.V&&(Xz=l.shiftKey,clearTimeout(rze),rze=window.setTimeout(()=>{Xz=!1},100)),l[PA.CTRL_OR_CMD]&&H1(l.target)&&(l.code===hi.MINUS||l.code===hi.EQUAL)){l.preventDefault();return}if(H1(l.target)&&l.key!==PA.ESCAPE||b9(l.key)&&Y_(l.target))return;if(l.key===PA.QUESTION_MARK){this.setState({openDialog:{name:"help"}});return}else if(l.key.toLowerCase()===PA.E&&l.shiftKey&&l[PA.CTRL_OR_CMD]){l.preventDefault(),this.setState({openDialog:{name:"imageExport"}});return}if(l.key===PA.PAGE_UP||l.key===PA.PAGE_DOWN){let E=(l.shiftKey?this.state.width:this.state.height)/this.state.zoom.value;l.key===PA.PAGE_DOWN&&(E=-E),l.shiftKey?this.translateCanvas((d)=>({scrollX:d.scrollX+E})):this.translateCanvas((d)=>({scrollY:d.scrollY+E}))}if(this.state.openDialog?.name==="elementLinkSelector"||this.actionManager.handleKeyDown(l)||this.state.viewModeEnabled)return;if(l[PA.CTRL_OR_CMD]&&this.state.isBindingEnabled&&this.setState({isBindingEnabled:!1}),b9(l.key)){let E=this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}),d=E.find(pt),I=new Set;E.filter(pt).filter((m)=>{let f=m.startBinding&&!E.some((w)=>w.id===m.startBinding?.elementId),D=m.endBinding&&!E.some((w)=>w.id===m.endBinding?.elementId);return f||D}).forEach((m)=>I.add(m.id)),E=E.filter((m)=>!I.has(m.id));let h=this.getEffectiveGridSize()&&(l.shiftKey?oIA:this.getEffectiveGridSize())||(l.shiftKey?pde:oIA),Q=0,p=0;l.key===PA.ARROW_LEFT?Q=-h:l.key===PA.ARROW_RIGHT?Q=h:l.key===PA.ARROW_UP?p=-h:l.key===PA.ARROW_DOWN&&(p=h),E.forEach((m)=>{xe(m,{x:m.x+Q,y:m.y+p},!1),Hs(m,this.scene.getNonDeletedElementsMap(),{simultaneouslyUpdated:E})}),this.setState({suggestedBindings:CW(E.filter((m)=>m.id!==d?.id||h!==0),this.scene.getNonDeletedElementsMap(),this.state.zoom)}),this.scene.triggerUpdate(),l.preventDefault()}else if(l.key===PA.ENTER){let E=this.scene.getSelectedElements(this.state);if(E.length===1){let d=E[0];if(l[PA.CTRL_OR_CMD])Gr(d)&&(!this.state.editingLinearElement||this.state.editingLinearElement.elementId!==E[0].id)&&(this.store.shouldCaptureIncrement(),pt(d)||this.setState({editingLinearElement:new It(d)}));else if(Bt(d)||ZQe(d)){let I;Bt(d)||(I=d);let h=QW(d,this.state,this.scene.getNonDeletedElementsMap()),{x:Q,y:p}=h;this.startTextEditing({sceneX:Q,sceneY:p,container:I}),l.preventDefault();return}else nr(d)&&this.setState({editingFrame:d.id})}}else if(!l.ctrlKey&&!l.altKey&&!l.metaKey&&!this.state.newElement&&!this.state.selectionElement&&!this.state.selectedElementsAreBeingDragged){let E=sQe(l.key);E?(this.state.activeTool.type!==E&&Nu("toolbar",E,`keyboard (${this.device.editor.isMobile?"mobile":"desktop"})`),E==="arrow"&&this.state.activeTool.type==="arrow"&&this.setState((d)=>({currentItemArrowType:d.currentItemArrowType===mo.sharp?mo.round:d.currentItemArrowType===mo.round?mo.elbow:mo.sharp})),this.setActiveTool({type:E}),l.stopPropagation()):l.key===PA.Q&&(this.toggleLock("keyboard"),l.stopPropagation())}if(l.key===PA.SPACE&&Wi.pointers.size===0&&(H2=!0,Cu(this.interactiveCanvas,iu.GRAB),l.preventDefault()),(l.key===PA.G||l.key===PA.S)&&!l.altKey&&!l[PA.CTRL_OR_CMD]){let E=this.scene.getSelectedElements(this.state);if(this.state.activeTool.type==="selection"&&!E.length)return;l.key===PA.G&&(n2(this.state.activeTool.type)||E.some((d)=>n2(d.type)))&&(this.setState({openPopup:"elementBackground"}),l.stopPropagation()),l.key===PA.S&&(this.setState({openPopup:"elementStroke"}),l.stopPropagation())}if(!l[PA.CTRL_OR_CMD]&&l.shiftKey&&l.key.toLowerCase()===PA.F){let E=this.scene.getSelectedElements(this.state);if(this.state.activeTool.type==="selection"&&!E.length)return;(this.state.activeTool.type==="text"||E.find((d)=>Bt(d)||Ur(d,this.scene.getNonDeletedElementsMap())))&&(l.preventDefault(),this.setState({openPopup:"fontFamily"}))}if(l.key===PA.K&&!l.altKey&&!l[PA.CTRL_OR_CMD]){this.state.activeTool.type==="laser"?this.setActiveTool({type:"selection"}):this.setActiveTool({type:"laser"});return}l[PA.CTRL_OR_CMD]&&(l.key===PA.BACKSPACE||l.key===PA.DELETE)&&vB.set(QZ,"clearCanvas");let g=l.key.toLocaleLowerCase(),C=g===PA.S&&l.shiftKey,B=l.key===PA.I||g===PA.G&&l.shiftKey;(C||B)&&this.openEyeDropper({type:C?"stroke":"background"})})),GA(this,"onKeyUp",Ha((l)=>{if(l.key===PA.SPACE&&(this.state.viewModeEnabled||this.state.openDialog?.name==="elementLinkSelector"?Cu(this.interactiveCanvas,iu.GRAB):this.state.activeTool.type==="selection"?Mc(this.interactiveCanvas):(nB(this.interactiveCanvas,this.state),this.setState({selectedElementIds:Gi({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})),H2=!1),!l[PA.CTRL_OR_CMD]&&!this.state.isBindingEnabled&&this.setState({isBindingEnabled:!0}),b9(l.key)&&(j8(this.scene.getSelectedElements(this.state).filter(Gr),this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements(),this.scene,U1(this.state),this.state.selectedLinearElement?.selectedPointsIndices??[],this.state.zoom),this.setState({suggestedBindings:[]})),l.altKey||this.flowChartNavigator.isExploring&&(this.flowChartNavigator.clear(),this.syncActionResult({captureUpdate:be.IMMEDIATELY})),!l[PA.CTRL_OR_CMD]&&this.flowChartCreator.isCreatingChart){this.flowChartCreator.pendingNodes?.length&&this.scene.insertElements(this.flowChartCreator.pendingNodes);let g=this.flowChartCreator.pendingNodes?.[0];g&&(this.setState((C)=>({selectedElementIds:Gi({[g.id]:!0},C)})),CS([g],this.canvas.width/window.devicePixelRatio,this.canvas.height/window.devicePixelRatio,{offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,zoom:this.state.zoom},this.scene.getNonDeletedElementsMap(),this.getEditorUIOffsets())||this.scrollToContent(g,{animate:!0,duration:300,canvasOffsets:this.getEditorUIOffsets()})),this.flowChartCreator.clear(),this.syncActionResult({captureUpdate:be.IMMEDIATELY})}})),GA(this,"isToolSupported",(l)=>this.props.UIOptions.tools?.[l]!==!1),GA(this,"setActiveTool",(l)=>{if(!this.isToolSupported(l.type)){console.warn(`"${l.type}" tool is disabled via "UIOptions.canvasActions.tools.${l.type}"`);return}let g=en(this.state,l);g.type==="hand"?Cu(this.interactiveCanvas,iu.GRAB):H2||nB(this.interactiveCanvas,{...this.state,activeTool:g}),Zde(document.activeElement)&&this.focusContainer(),K_(g.type)||this.setState({suggestedBindings:[]}),g.type==="image"&&this.onImageAction({insertOnCanvasDirectly:(l.type==="image"&&l.insertOnCanvasDirectly)??!1}),this.setState((C)=>{let B={snapLines:C.snapLines.length?[]:C.snapLines,originSnapOffset:null,activeEmbeddable:null};return g.type==="freedraw"&&this.store.shouldCaptureIncrement(),g.type!=="selection"?{...C,activeTool:g,selectedElementIds:Gi({},C),selectedGroupIds:Gi({},C),editingGroupId:null,multiElement:null,...B}:{...C,activeTool:g,...B}})}),GA(this,"setOpenDialog",(l)=>{this.setState({openDialog:l})}),GA(this,"setCursor",(l)=>{Cu(this.interactiveCanvas,l)}),GA(this,"resetCursor",()=>{Mc(this.interactiveCanvas)}),GA(this,"isTouchScreenMultiTouchGesture",()=>Wi.pointers.size>=2),GA(this,"getName",()=>this.state.name||this.props.name||`${uA("labels.untitled")}-${hIA()}`),GA(this,"onGestureStart",Ha((l)=>{l.preventDefault(),this.isTouchScreenMultiTouchGesture()&&this.setState({selectedElementIds:Gi({},this.state),activeEmbeddable:null}),Wi.initialScale=this.state.zoom.value})),GA(this,"onGestureChange",Ha((l)=>{if(l.preventDefault(),this.isTouchScreenMultiTouchGesture())return;let g=Wi.initialScale;g&&this.setState((C)=>({...K2({viewportX:this.lastViewportPosition.x,viewportY:this.lastViewportPosition.y,nextZoom:dd(g*l.scale)},C)}))})),GA(this,"onGestureEnd",Ha((l)=>{l.preventDefault(),this.isTouchScreenMultiTouchGesture()&&this.setState({previousSelectedElementIds:{},selectedElementIds:Gi(this.state.previousSelectedElementIds,this.state)}),Wi.initialScale=null})),GA(this,"startTextEditing",({sceneX:l,sceneY:g,insertAtParentCenter:C=!0,container:B,autoEdit:E=!0})=>{let d=!1,I=C&&this.getTextWysiwygSnappedToCenterPosition(l,g,this.state,B);B&&I&&(Ur(B,this.scene.getNonDeletedElementsMap())||(d=!0));let h=null,Q=this.scene.getSelectedElements(this.state);Q.length===1?Bt(Q[0])?h=Q[0]:B?h=Ur(Q[0],this.scene.getNonDeletedElementsMap()):h=this.getTextElementAtPosition(l,g):h=this.getTextElementAtPosition(l,g);let p=h?.fontFamily||this.state.currentItemFontFamily,m=h?.lineHeight||z1(p),f=this.state.currentItemFontSize;if(!h&&d&&B&&!Jr(B)){let b=FIA(cu({fontSize:f,fontFamily:p}),m),k=SIA(f,m),v=Math.max(B.height,k),S=Math.max(B.width,b);xe(B,{height:v,width:S}),l=B.x+S/2,g=B.y+v/2,I&&(I=this.getTextWysiwygSnappedToCenterPosition(l,g,this.state,B))}let D=this.getTopLayerFrameAtSceneCoords({x:l,y:g}),w=h||Gl({x:I?I.elementCenterX:l,y:I?I.elementCenterY:g,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,text:"",fontSize:f,fontFamily:p,textAlign:I?"center":this.state.currentItemTextAlign,verticalAlign:I?Rl.MIDDLE:x8,containerId:d?B?.id:void 0,groupIds:B?.groupIds??[],lineHeight:m,angle:B?.angle??0,frameId:D?D.id:null});if(!h&&d&&B&&xe(B,{boundElements:(B.boundElements||[]).concat({type:"text",id:w.id})}),this.setState({editingTextElement:w}),!h)if(B&&d){let b=this.scene.getElementIndex(B.id);this.scene.insertElementAtIndex(w,b+1)}else this.scene.insertElement(w);E||h||B?this.handleTextWysiwyg(w,{isExistingElement:!!h}):this.setState({newElement:w,multiElement:null})}),GA(this,"startImageCropping",(l)=>{this.store.shouldCaptureIncrement(),this.setState({croppingElementId:l.id})}),GA(this,"finishImageCropping",()=>{this.state.croppingElementId&&(this.store.shouldCaptureIncrement(),this.setState({croppingElementId:null}))}),GA(this,"handleCanvasDoubleClick",(l)=>{if(this.state.multiElement||this.state.activeTool.type!=="selection")return;let g=this.scene.getSelectedElements(this.state),{x:C,y:B}=Ru(l,this.state);if(g.length===1&&Gr(g[0])){if(l[PA.CTRL_OR_CMD]&&(!this.state.editingLinearElement||this.state.editingLinearElement.elementId!==g[0].id)&&!pt(g[0])){this.store.shouldCaptureIncrement(),this.setState({editingLinearElement:new It(g[0])});return}else if(this.state.selectedLinearElement&&pt(g[0])){let E=It.getSegmentMidpointHitCoords(this.state.selectedLinearElement,{x:C,y:B},this.state,this.scene.getNonDeletedElementsMap()),d=E?It.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,E,this.scene.getNonDeletedElementsMap()):-1;if(d&&d>-1){this.store.shouldCaptureIncrement(),It.deleteFixedSegment(g[0],d);let I=It.getSegmentMidpointHitCoords({...this.state.selectedLinearElement,segmentMidPointHoveredCoords:null},{x:C,y:B},this.state,this.scene.getNonDeletedElementsMap()),h=I?It.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,I,this.scene.getNonDeletedElementsMap()):null;this.setState({selectedLinearElement:{...this.state.selectedLinearElement,pointerDownState:{...this.state.selectedLinearElement.pointerDownState,segmentMidpoint:{index:h,value:E,added:!1}},segmentMidPointHoveredCoords:I}});return}}}if(g.length===1&&Ni(g[0])){this.startImageCropping(g[0]);return}if(Mc(this.interactiveCanvas),V1(this.state).length>0){let E=this.getElementAtPosition(C,B),d=E&&NQe(E,this.state.selectedGroupIds);if(d){this.store.shouldCaptureIncrement(),this.setState((I)=>({...I,...Z0({editingGroupId:d,selectedElementIds:{[E.id]:!0}},this.scene.getNonDeletedElements(),I,this)}));return}}if(Mc(this.interactiveCanvas),!l[PA.CTRL_OR_CMD]&&!this.state.viewModeEnabled){let E=this.getElementAtPosition(C,B);if(bg(E)){this.setState({activeEmbeddable:{element:E,state:"active"}});return}let d=this.getTextBindableContainerAtPosition(C,B);if(d&&(Ul(d)||!vc(d.backgroundColor)||a2({x:C,y:B,element:d,shape:nd(d,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()}))){let I=QW(d,this.state,this.scene.getNonDeletedElementsMap());C=I.x,B=I.y}this.startTextEditing({sceneX:C,sceneY:B,insertAtParentCenter:!l.altKey,container:d})}}),GA(this,"getElementLinkAtPosition",(l,g)=>{let C=this.scene.getNonDeletedElements(),B=-1;for(let E=C.length-1;E>=0;E--){let d=C[E];if(g&&d.id===g.id&&(B=E),d.link&&E>=B&&vW(d,this.scene.getNonDeletedElementsMap(),this.state,X(l.x,l.y),this.device.editor.isMobile))return d}}),GA(this,"redirectToLink",(l,g)=>{let C=Ri(X(this.lastPointerDownEvent.clientX,this.lastPointerDownEvent.clientY),X(this.lastPointerUpEvent.clientX,this.lastPointerUpEvent.clientY));if(!this.hitLinkElement||C>Y1)return;let B=Ru(this.lastPointerDownEvent,this.state),E=this.scene.getNonDeletedElementsMap(),d=vW(this.hitLinkElement,E,this.state,X(B.x,B.y),this.device.editor.isMobile),I=Ru(this.lastPointerUpEvent,this.state),h=vW(this.hitLinkElement,E,this.state,X(I.x,I.y),this.device.editor.isMobile);if(d&&h){dqe();let Q=this.hitLinkElement.link;if(Q){Q=Nl(Q);let p;if(this.props.onLinkOpen&&(p=mIA("excalidraw-link",l.nativeEvent),this.props.onLinkOpen({...this.hitLinkElement,link:Q},p)),!p?.defaultPrevented){let m=HhA(Q)?"_self":"_blank",f=window.open(void 0,m);f&&(f.opener=null,f.location=Q)}}}}),GA(this,"getTopLayerFrameAtSceneCoords",(l)=>{let g=this.scene.getNonDeletedElementsMap(),C=this.scene.getNonDeletedFramesLikes().filter((B)=>IQA(l,B,g));return C.length?C[C.length-1]:null}),GA(this,"handleCanvasPointerMove",(l)=>{this.savePointer(l.clientX,l.clientY,this.state.cursorButton),this.lastPointerMoveEvent=l.nativeEvent,Wi.pointers.has(l.pointerId)&&Wi.pointers.set(l.pointerId,{x:l.clientX,y:l.clientY});let g=Wi.initialScale;if(Wi.pointers.size===2&&Wi.lastCenter&&g&&Wi.initialDistance){let p=wqe(Wi.pointers),m=p.x-Wi.lastCenter.x,f=p.y-Wi.lastCenter.y;Wi.lastCenter=p;let D=bqe(Array.from(Wi.pointers.values())),w=this.state.activeTool.type==="freedraw"&&this.state.penMode?1:D/Wi.initialDistance,b=w?dd(g*w):this.state.zoom.value;this.setState((k)=>{let v=K2({viewportX:p.x,viewportY:p.y,nextZoom:b},k);this.translateCanvas({zoom:v.zoom,scrollX:v.scrollX+2*(m/b),scrollY:v.scrollY+2*(f/b),shouldCacheIgnoreZoom:!0})}),this.resetShouldCacheIgnoreZoomDebounced()}else Wi.lastCenter=Wi.initialDistance=Wi.initialScale=null;if(H2||bL||l3A||A2(this.state))return;let C=xqe(g3A,l.clientX-this.state.offsetLeft,l.clientY-this.state.offsetTop).isOverEither;!this.state.newElement&&!this.state.selectionElement&&!this.state.selectedElementsAreBeingDragged&&!this.state.multiElement&&(C?Mc(this.interactiveCanvas):nB(this.interactiveCanvas,this.state));let B=Ru(l,this.state),{x:E,y:d}=B;if(!this.state.newElement&&OQe(this.state.activeTool.type)){let{originOffset:p,snapLines:m}=JQe(this.scene.getNonDeletedElements(),this,{x:E,y:d},l,this.scene.getNonDeletedElementsMap());this.setState((f)=>{let D=y9(f.snapLines,m),w=f.originSnapOffset?y9(f.originSnapOffset,p):p;return f.snapLines===D&&f.originSnapOffset===w?null:{snapLines:D,originSnapOffset:w}})}else!this.state.newElement&&!this.state.selectedElementsAreBeingDragged&&!this.state.selectionElement&&this.setState((p)=>p.snapLines.length?{snapLines:[]}:null);if(this.state.editingLinearElement&&!this.state.editingLinearElement.isDragging){let p=It.handlePointerMove(l,E,d,this,this.scene.getNonDeletedElementsMap());p&&p!==this.state.editingLinearElement&&_n(()=>{this.setState({editingLinearElement:p})}),p?.lastUncommittedPoint!=null?this.maybeSuggestBindingAtCursor(B,p.elbowed):_n(()=>{this.setState({suggestedBindings:[]})})}if(vIA(this.state.activeTool.type)){let{newElement:p}=this.state;jC(p,!1)?this.maybeSuggestBindingsForLinearElementAtCoords(p,[B],this.state.startBoundElement):this.maybeSuggestBindingAtCursor(B,!1)}if(this.state.multiElement){let{multiElement:p}=this.state,{x:m,y:f}=p,{points:D,lastCommittedPoint:w}=p,b=D[D.length-1];if(nB(this.interactiveCanvas,this.state),b===w)Ri(X(E-m,d-f),b)>=k8?xe(p,{points:[...D,X(E-m,d-f)]},!1):Cu(this.interactiveCanvas,iu.POINTER);else if(D.length>2&&w&&Ri(X(E-m,d-f),w)<k8)Cu(this.interactiveCanvas,iu.POINTER),xe(p,{points:D.slice(0,-1)},!1);else{let[k,v]=Dn(E,d,l[PA.CTRL_OR_CMD]||pt(p)?null:this.getEffectiveGridSize()),[S,x]=p?.lastCommittedPoint??[0,0],F=k-m-S,T=v-f-x;c9(l)&&({width:F,height:T}=OW(S+m,x+f,k,v)),od(D,this.state.zoom.value)&&Cu(this.interactiveCanvas,iu.POINTER),xe(p,{points:[...D.slice(0,-1),X(S+F,x+T)]},!1,{isDragging:!0}),this.triggerRender(!1)}return}if(!!l.buttons||this.state.activeTool.type!=="selection"&&this.state.activeTool.type!=="text"&&this.state.activeTool.type!=="eraser")return;let I=this.scene.getNonDeletedElements(),h=this.scene.getSelectedElements(this.state);if(h.length===1&&!C&&!this.state.editingLinearElement){if(this.state.selectedLinearElement&&this.handleHoverSelectedLinearElement(this.state.selectedLinearElement,E,d),(!this.state.selectedLinearElement||this.state.selectedLinearElement.hoverPointIndex===-1)&&this.state.openDialog?.name!=="elementLinkSelector"&&!(h.length===1&&pt(h[0]))){let p=vQA(I,this.state,E,d,this.state.zoom,l.pointerType,this.scene.getNonDeletedElementsMap(),this.device);if(p&&p.transformHandleType){Cu(this.interactiveCanvas,FQA(p));return}}}else if(h.length>1&&!C&&this.state.openDialog?.name!=="elementLinkSelector"){let p=kQA(Pi(h),E,d,this.state.zoom,l.pointerType,this.device);if(p){Cu(this.interactiveCanvas,FQA({transformHandleType:p}));return}}let Q=this.getElementAtPosition(B.x,B.y);this.hitLinkElement=this.getElementLinkAtPosition(B,Q),!uB(this.state)&&(this.hitLinkElement&&!this.state.selectedElementIds[this.hitLinkElement.id]?(Cu(this.interactiveCanvas,iu.POINTER),jBr(this.hitLinkElement,this.state,this.scene.getNonDeletedElementsMap())):(dqe(),Q&&(Q.link||Js(Q))&&this.state.selectedElementIds[Q.id]&&!this.state.contextMenu&&!this.state.showHyperlinkPopup?this.setState({showHyperlinkPopup:"info"}):this.state.activeTool.type==="text"?Cu(this.interactiveCanvas,Bt(Q)?iu.TEXT:iu.CROSSHAIR):this.state.viewModeEnabled?Cu(this.interactiveCanvas,iu.GRAB):this.state.openDialog?.name==="elementLinkSelector"?Cu(this.interactiveCanvas,iu.AUTO):C?Cu(this.interactiveCanvas,iu.AUTO):this.state.selectedLinearElement?this.handleHoverSelectedLinearElement(this.state.selectedLinearElement,E,d):l[PA.CTRL_OR_CMD]?Cu(this.interactiveCanvas,iu.AUTO):(Q||this.isHittingCommonBoundingBoxOfSelectedElements(B,h))&&!Q?.locked&&(Q&&bg(Q)&&this.isIframeLikeElementCenter(Q,l,E,d)?(Cu(this.interactiveCanvas,iu.POINTER),this.setState({activeEmbeddable:{element:Q,state:"hover"}})):(!Q||!pt(Q))&&(Cu(this.interactiveCanvas,iu.MOVE),this.state.activeEmbeddable?.state==="hover"&&this.setState({activeEmbeddable:null})))),this.state.openDialog?.name==="elementLinkSelector"&&Q?this.setState((p)=>({hoveredElementIds:y9(p.hoveredElementIds,Z0({editingGroupId:p.editingGroupId,selectedElementIds:{[Q.id]:!0}},this.scene.getNonDeletedElements(),p,this).selectedElementIds)})):this.state.openDialog?.name==="elementLinkSelector"&&!Q&&this.setState((p)=>({hoveredElementIds:y9(p.hoveredElementIds,{})})))}),GA(this,"handleEraser",(l,g,C)=>{this.eraserTrail.addPointToPath(C.x,C.y);let B=!1,E=new Set,d=this.scene.getNonDeletedElements(),I=(f)=>{for(let D of f){if(D.locked)return;if(l.altKey?this.elementsPendingErasure.delete(D.id)&&(B=!0):this.elementsPendingErasure.has(D.id)||(B=!0,this.elementsPendingErasure.add(D.id)),B&&D.groupIds?.length){let w=D.groupIds.at(-1);if(!E.has(w)){E.add(w);let b=Yu(d,w);for(let k of b)l.altKey?this.elementsPendingErasure.delete(k.id):this.elementsPendingErasure.add(k.id)}}}},h=Ri(X(g.lastCoords.x,g.lastCoords.y),X(C.x,C.y)),Q=this.getElementHitThreshold(),p={...g.lastCoords},m=0;for(;m<=h;){let f=this.getElementsAtPosition(p.x,p.y);if(I(f),m===h)break;m=Math.min(m+Q,h);let D=m/h,w=(1-D)*p.x+D*C.x,b=(1-D)*p.y+D*C.y;p.x=w,p.y=b}if(g.lastCoords.x=C.x,g.lastCoords.y=C.y,B){for(let f of this.scene.getNonDeletedElements())Tu(f)&&(this.elementsPendingErasure.has(f.id)||this.elementsPendingErasure.has(f.containerId))&&(l.altKey?(this.elementsPendingErasure.delete(f.id),this.elementsPendingErasure.delete(f.containerId)):(this.elementsPendingErasure.add(f.id),this.elementsPendingErasure.add(f.containerId)));this.elementsPendingErasure=new Set(this.elementsPendingErasure),this.triggerRender()}}),GA(this,"handleTouchMove",(l)=>{vL=!0}),GA(this,"handleCanvasPointerDown",(l)=>{let g=l.target;if(g.setPointerCapture&&g.setPointerCapture(l.pointerId),this.maybeCleanupAfterMissingPointerUp(l.nativeEvent),this.maybeUnfollowRemoteUser(),this.state.searchMatches&&(this.setState((Q)=>({searchMatches:Q.searchMatches.map((p)=>({...p,focus:!1}))})),vB.set(PZe,null)),this.state.contextMenu&&this.setState({contextMenu:null}),this.state.snapLines&&this.setAppState({snapLines:[]}),this.updateGestureOnPointerDown(l),l.pointerType==="touch"&&this.state.newElement&&this.state.newElement.type==="freedraw"){let Q=this.state.newElement;this.updateScene({...Q.points.length<10?{elements:this.scene.getElementsIncludingDeleted().filter((p)=>p.id!==Q.id)}:{},appState:{newElement:null,editingTextElement:null,startBoundElement:null,suggestedBindings:[],selectedElementIds:Gi(Object.keys(this.state.selectedElementIds).filter((p)=>p!==Q.id).reduce((p,m)=>(p[m]=this.state.selectedElementIds[m],p),{}),this.state)},captureUpdate:this.state.openDialog?.name==="elementLinkSelector"?be.EVENTUALLY:be.NEVER});return}let C=document.getSelection();if(C?.anchorNode&&C.removeAllRanges(),this.maybeOpenContextMenuAfterPointerDownOnTouchDevices(l),!this.state.penDetected&&l.pointerType==="pen"&&this.setState((Q)=>({penMode:!0,penDetected:!0})),!this.device.isTouchScreen&&["pen","touch"].includes(l.pointerType)&&(this.device=Y8(this.device,{isTouchScreen:!0})),bL||(this.lastPointerDownEvent=l,this.handleCanvasPanUsingWheelOrSpaceDrag(l)))return;if(this.setState({lastPointerDownWith:l.pointerType,cursorButton:"down"}),this.savePointer(l.clientX,l.clientY,"down"),l.button===Sh.ERASER&&this.state.activeTool.type!==Jn.eraser){this.setState({activeTool:en(this.state,{type:Jn.eraser,lastActiveToolBeforeEraser:this.state.activeTool})},()=>{this.handleCanvasPointerDown(l);let Q=()=>{p(),m?.(),uB(this.state)&&this.setState({activeTool:en(this.state,{...this.state.activeTool.lastActiveTool||{type:Jn.selection},lastActiveToolBeforeEraser:null})})},p=oa(window,"pointerup",Q,{once:!0}),m;requestAnimationFrame(()=>{m=this.missingPointerEventCleanupEmitter.once(Q)})});return}if(l.button!==Sh.MAIN&&l.button!==Sh.TOUCH&&l.button!==Sh.ERASER||Wi.pointers.size>1)return;let B=this.initialPointerDownState(l);if(this.setState({selectedElementsAreBeingDragged:!1}),this.handleDraggingScrollBar(l,B)||(this.clearSelectionIfNotUsingSelection(),this.updateBindingEnabledOnPointerMove(l),this.handleSelectionOnPointerDown(l,B))||!(!this.state.penMode||l.pointerType!=="touch"||this.state.activeTool.type==="selection"||this.state.activeTool.type==="text"||this.state.activeTool.type==="image"))return;if(this.state.activeTool.type==="text")this.handleTextOnPointerDown(l,B);else if(this.state.activeTool.type==="arrow"||this.state.activeTool.type==="line")this.handleLinearElementOnPointerDown(l,this.state.activeTool.type,B);else if(this.state.activeTool.type==="image"){Cu(this.interactiveCanvas,iu.CROSSHAIR);let Q=this.state.pendingImageElementId&&this.scene.getElement(this.state.pendingImageElementId);if(!Q)return;this.setState({newElement:Q,pendingImageElementId:null,multiElement:null});let{x:p,y:m}=Ru(l,this.state),f=this.getTopLayerFrameAtSceneCoords({x:p,y:m});xe(Q,{x:p,y:m,frameId:f?f.id:null})}else this.state.activeTool.type==="freedraw"?this.handleFreeDrawElementOnPointerDown(l,this.state.activeTool.type,B):this.state.activeTool.type==="custom"?nB(this.interactiveCanvas,this.state):this.state.activeTool.type===Jn.frame||this.state.activeTool.type===Jn.magicframe?this.createFrameElementOnPointerDown(B,this.state.activeTool.type):this.state.activeTool.type==="laser"?this.laserTrails.startPath(B.lastCoords.x,B.lastCoords.y):this.state.activeTool.type!=="eraser"&&this.state.activeTool.type!=="hand"&&this.createGenericElementOnPointerDown(this.state.activeTool.type,B);this.props?.onPointerDown?.(this.state.activeTool,B),this.onPointerDownEmitter.trigger(this.state.activeTool,B,l),this.state.activeTool.type==="eraser"&&this.eraserTrail.startPath(B.lastCoords.x,B.lastCoords.y);let E=this.onPointerMoveFromPointerDownHandler(B),d=this.onPointerUpFromPointerDownHandler(B),I=this.onKeyDownFromPointerDownHandler(B),h=this.onKeyUpFromPointerDownHandler(B);this.missingPointerEventCleanupEmitter.once((Q)=>d(Q||l.nativeEvent)),(!this.state.viewModeEnabled||this.state.activeTool.type==="laser")&&(window.addEventListener("pointermove",E),window.addEventListener("pointerup",d),window.addEventListener("keydown",I),window.addEventListener("keyup",h),B.eventListeners.onMove=E,B.eventListeners.onUp=d,B.eventListeners.onKeyUp=h,B.eventListeners.onKeyDown=I)}),GA(this,"handleCanvasPointerUp",(l)=>{this.removePointer(l),this.lastPointerUpEvent=l;let g=Ru({clientX:l.clientX,clientY:l.clientY},this.state),C=l.timeStamp-(this.lastPointerDownEvent?.timeStamp??0);if(this.device.editor.isMobile&&C<300){let B=this.getElementAtPosition(g.x,g.y);if(bg(B)&&this.isIframeLikeElementCenter(B,l,g.x,g.y)){this.handleEmbeddableCenterClick(B);return}}if(this.device.isTouchScreen){let B=this.getElementAtPosition(g.x,g.y);this.hitLinkElement=this.getElementLinkAtPosition(g,B)}this.hitLinkElement&&!this.state.selectedElementIds[this.hitLinkElement.id]?C<300&&bg(this.hitLinkElement)&&!AQA(this.hitLinkElement,this.scene.getNonDeletedElementsMap(),this.state,X(g.x,g.y))?this.handleEmbeddableCenterClick(this.hitLinkElement):this.redirectToLink(l,this.device.isTouchScreen):this.state.viewModeEnabled&&this.setState({activeEmbeddable:null,selectedElementIds:{}})}),GA(this,"maybeOpenContextMenuAfterPointerDownOnTouchDevices",(l)=>{l.pointerType==="touch"&&(vL=!1,bp?vL=!0:bp=window.setTimeout(()=>{bp=0,vL||this.handleCanvasContextMenu(l)},xde))}),GA(this,"resetContextMenuTimer",()=>{clearTimeout(bp),bp=0,vL=!1}),GA(this,"maybeCleanupAfterMissingPointerUp",(l)=>{kL?.(),this.missingPointerEventCleanupEmitter.trigger(l).clear()}),GA(this,"handleCanvasPanUsingWheelOrSpaceDrag",(l)=>{if(!(Wi.pointers.size<=1&&(l.button===Sh.WHEEL||l.button===Sh.MAIN&&H2||A2(this.state)||this.state.viewModeEnabled)))return!1;bL=!0,this.focusContainer(),this.state.editingTextElement||l.preventDefault();let g=!1,C=typeof window===void 0?!1:/Linux/.test(window.navigator.platform);Cu(this.interactiveCanvas,iu.GRABBING);let{clientX:B,clientY:E}=l,d=u3A((h)=>{let Q=B-h.clientX,p=E-h.clientY;if(B=h.clientX,E=h.clientY,C&&!g&&(Math.abs(Q)>1||Math.abs(p)>1)){g=!0;let m=(D)=>{document.body.removeEventListener("paste",m),D.stopPropagation()},f=()=>{setTimeout(()=>{document.body.removeEventListener("paste",m),window.removeEventListener("pointerup",f)},100)};document.body.addEventListener("paste",m),window.addEventListener("pointerup",f)}this.translateCanvas({scrollX:this.state.scrollX-Q/this.state.zoom.value,scrollY:this.state.scrollY-p/this.state.zoom.value})}),I=Ha(kL=()=>{kL=null,bL=!1,H2||(this.state.viewModeEnabled?Cu(this.interactiveCanvas,iu.GRAB):nB(this.interactiveCanvas,this.state)),this.setState({cursorButton:"up"}),this.savePointer(l.clientX,l.clientY,"up"),window.removeEventListener("pointermove",d),window.removeEventListener("pointerup",I),window.removeEventListener("blur",I),d.flush()});return window.addEventListener("blur",I),window.addEventListener("pointermove",d,{passive:!0}),window.addEventListener("pointerup",I),!0}),GA(this,"clearSelectionIfNotUsingSelection",()=>{this.state.activeTool.type!=="selection"&&this.setState({selectedElementIds:Gi({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})}),GA(this,"handleSelectionOnPointerDown",(l,g)=>{if(this.state.activeTool.type==="selection"){let C=this.scene.getNonDeletedElements(),B=this.scene.getNonDeletedElementsMap(),E=this.scene.getSelectedElements(this.state);if(E.length===1&&!this.state.editingLinearElement&&!pt(E[0])&&!(this.state.selectedLinearElement&&this.state.selectedLinearElement.hoverPointIndex!==-1)){let d=vQA(C,this.state,g.origin.x,g.origin.y,this.state.zoom,l.pointerType,this.scene.getNonDeletedElementsMap(),this.device);d!=null&&(d.transformHandleType==="rotation"?(this.setState({resizingElement:d.element}),g.resize.handleType=d.transformHandleType):(this.state.croppingElementId||this.setState({resizingElement:d.element}),g.resize.handleType=d.transformHandleType))}else E.length>1&&(g.resize.handleType=kQA(Pi(E),g.origin.x,g.origin.y,this.state.zoom,l.pointerType,this.device));if(g.resize.handleType)g.resize.isResizing=!0,g.resize.offset=kc(O4e(g.resize.handleType,E,B,g.origin.x,g.origin.y)),E.length===1&&Gr(E[0])&&E[0].points.length===2&&(g.resize.arrowDirection=P4e(g.resize.handleType,E[0]));else{if(this.state.selectedLinearElement){let h=this.state.editingLinearElement||this.state.selectedLinearElement,Q=It.handlePointerDown(l,this,this.store,g.origin,h,this.scene);if(Q.hitElement&&(g.hit.element=Q.hitElement),Q.linearElementEditor&&(this.setState({selectedLinearElement:Q.linearElementEditor}),this.state.editingLinearElement&&this.setState({editingLinearElement:Q.linearElementEditor})),Q.didAddPoint)return!0}if(g.hit.element=g.hit.element??this.getElementAtPosition(g.origin.x,g.origin.y),this.hitLinkElement=this.getElementLinkAtPosition(g.origin,g.hit.element),this.hitLinkElement)return!0;if(this.state.croppingElementId&&g.hit.element?.id!==this.state.croppingElementId&&this.finishImageCropping(),g.hit.element&&this.getElementLinkAtPosition({x:g.origin.x,y:g.origin.y},g.hit.element))return!1;g.hit.allHitElements=this.getElementsAtPosition(g.origin.x,g.origin.y);let d=g.hit.element,I=g.hit.allHitElements.some((h)=>this.isASelectedElement(h));if((d===null||!I)&&!l.shiftKey&&!g.hit.hasHitCommonBoundingBoxOfSelectedElements&&this.clearSelection(d),this.state.editingLinearElement)this.setState({selectedElementIds:Gi({[this.state.editingLinearElement.elementId]:!0},this.state)});else if(d!=null){if(l[PA.CTRL_OR_CMD])return this.state.selectedElementIds[d.id]||(g.hit.wasAddedToSelection=!0),this.setState((h)=>({...RQe(h,d),previousSelectedElementIds:this.state.selectedElementIds})),!1;this.state.selectedElementIds[d.id]||(this.state.editingGroupId&&!x9(d,this.state.editingGroupId)&&this.setState({selectedElementIds:Gi({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null}),!I&&!g.hit.hasHitCommonBoundingBoxOfSelectedElements&&(this.setState((h)=>{let Q={...h.selectedElementIds,[d.id]:!0},p=[];if(Object.keys(h.selectedElementIds).forEach((m)=>{let f=this.scene.getElement(m);f&&p.push(f)}),nr(d))gB(p,d.id).forEach((m)=>{delete Q[m.id]});else if(d.frameId)Q[d.frameId]&&delete Q[d.id];else{let m=d.groupIds,f=new Set(m.flatMap((D)=>Yu(this.scene.getNonDeletedElements(),D)).filter((D)=>nr(D)).map((D)=>D.id));f.size>0&&p.forEach((D)=>{D.frameId&&f.has(D.frameId)&&(delete Q[D.id],D.groupIds.flatMap((w)=>Yu(this.scene.getNonDeletedElements(),w)).forEach((w)=>{delete Q[w.id]}))})}return h.openDialog?.name==="elementLinkSelector"&&(d.groupIds.some((m)=>h.selectedGroupIds[m])||(Q={[d.id]:!0})),{...Z0({editingGroupId:h.editingGroupId,selectedElementIds:Q},this.scene.getNonDeletedElements(),h,this),showHyperlinkPopup:d.link||Js(d)?"info":!1}}),g.hit.wasAddedToSelection=!0))}this.setState({previousSelectedElementIds:this.state.selectedElementIds})}}return!1}),GA(this,"handleTextOnPointerDown",(l,g)=>{if(this.state.editingTextElement)return;let C=g.origin.x,B=g.origin.y,E=this.getElementAtPosition(C,B,{includeBoundTextElement:!0}),d=this.getTextBindableContainerAtPosition(C,B);Ul(E)&&(d=E,C=E.x+E.width/2,B=E.y+E.height/2),this.startTextEditing({sceneX:C,sceneY:B,insertAtParentCenter:!l.altKey,container:d,autoEdit:!1}),Mc(this.interactiveCanvas),this.state.activeTool.locked||this.setState({activeTool:en(this.state,{type:"selection"})})}),GA(this,"handleFreeDrawElementOnPointerDown",(l,g,C)=>{let[B,E]=Dn(C.origin.x,C.origin.y,null),d=this.getTopLayerFrameAtSceneCoords({x:B,y:E}),I=l.pressure===0.5,h=t4e({type:g,x:B,y:E,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:null,simulatePressure:I,locked:!1,frameId:d?d.id:null,points:[X(0,0)],pressures:I?[]:[l.pressure]});this.scene.insertElement(h),this.setState((p)=>{let m={...p.selectedElementIds};return delete m[h.id],{selectedElementIds:Gi(m,p)}});let Q=Nc(C.origin,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom);this.setState({newElement:h,startBoundElement:Q,suggestedBindings:[]})}),GA(this,"insertIframeElement",({sceneX:l,sceneY:g,width:C,height:B})=>{let[E,d]=Dn(l,g,this.lastPointerDownEvent?.[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),I=A4e({type:"iframe",x:E,y:d,strokeColor:"transparent",backgroundColor:"transparent",fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,roundness:this.getCurrentItemRoundness("iframe"),opacity:this.state.currentItemOpacity,locked:!1,width:C,height:B});return this.scene.insertElement(I),I}),GA(this,"insertEmbeddableElement",({sceneX:l,sceneY:g,link:C})=>{let[B,E]=Dn(l,g,this.lastPointerDownEvent?.[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),d=s2(C);if(!d)return;d.error instanceof URIError&&this.setToast({message:uA("toast.unrecognizedLinkFormat"),closable:!0});let I=OhA({type:"embeddable",x:B,y:E,strokeColor:"transparent",backgroundColor:"transparent",fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,roundness:this.getCurrentItemRoundness("embeddable"),opacity:this.state.currentItemOpacity,locked:!1,width:d.intrinsicSize.w,height:d.intrinsicSize.h,link:C});return this.scene.insertElement(I),I}),GA(this,"createImageElement",({sceneX:l,sceneY:g,addToFrameUnderCursor:C=!0})=>{let[B,E]=Dn(l,g,this.lastPointerDownEvent?.[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),d=C?this.getTopLayerFrameAtSceneCoords({x:B,y:E}):null;return _hA({type:"image",x:B,y:E,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,roundness:null,opacity:this.state.currentItemOpacity,locked:!1,frameId:d?d.id:null})}),GA(this,"handleLinearElementOnPointerDown",(l,g,C)=>{if(this.state.multiElement){let{multiElement:B}=this.state;if(B.type==="line"&&od(B.points,this.state.zoom.value)){xe(B,{lastCommittedPoint:B.points[B.points.length-1]}),this.actionManager.executeAction(bB);return}if(pt(B)&&B.points.length>1){xe(B,{lastCommittedPoint:B.points[B.points.length-1]}),this.actionManager.executeAction(bB);return}let{x:E,y:d,lastCommittedPoint:I}=B;if(B.points.length>1&&I&&Ri(X(C.origin.x-E,C.origin.y-d),I)<k8){this.actionManager.executeAction(bB);return}this.setState((h)=>({selectedElementIds:Gi({...h.selectedElementIds,[B.id]:!0},h)})),xe(B,{lastCommittedPoint:B.points[B.points.length-1]}),Cu(this.interactiveCanvas,iu.POINTER)}else{let[B,E]=Dn(C.origin.x,C.origin.y,l[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),d=this.getTopLayerFrameAtSceneCoords({x:B,y:E}),{currentItemStartArrowhead:I,currentItemEndArrowhead:h}=this.state,[Q,p]=g==="arrow"?[I,h]:[null,null],m=g==="arrow"?mW({type:g,x:B,y:E,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:this.state.currentItemArrowType===mo.round?{type:mn.PROPORTIONAL_RADIUS}:null,startArrowhead:Q,endArrowhead:p,locked:!1,frameId:d?d.id:null,elbowed:this.state.currentItemArrowType===mo.elbow,fixedSegments:this.state.currentItemArrowType===mo.elbow?[]:null}):L1({type:g,x:B,y:E,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:this.state.currentItemRoundness==="round"?{type:mn.PROPORTIONAL_RADIUS}:null,locked:!1,frameId:d?d.id:null});this.setState((D)=>{let w={...D.selectedElementIds};return delete w[m.id],{selectedElementIds:Gi(w,D)}}),xe(m,{points:[...m.points,X(0,0)]});let f=Nc(C.origin,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,pt(m),pt(m));this.scene.insertElement(m),this.setState({newElement:m,startBoundElement:f,suggestedBindings:[]})}}),GA(this,"createGenericElementOnPointerDown",(l,g)=>{let[C,B]=Dn(g.origin.x,g.origin.y,this.lastPointerDownEvent?.[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),E=this.getTopLayerFrameAtSceneCoords({x:C,y:B}),d={x:C,y:B,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,roundness:this.getCurrentItemRoundness(l),locked:!1,frameId:E?E.id:null},I;l==="embeddable"?I=OhA({type:"embeddable",...d}):I=sB({type:l,...d}),I.type==="selection"?this.setState({selectionElement:I}):(this.scene.insertElement(I),this.setState({multiElement:null,newElement:I}))}),GA(this,"createFrameElementOnPointerDown",(l,g)=>{let[C,B]=Dn(l.origin.x,l.origin.y,this.lastPointerDownEvent?.[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),E={x:C,y:B,opacity:this.state.currentItemOpacity,locked:!1,...Zu},d=g===Jn.magicframe?fW(E):pW(E);this.scene.insertElement(d),this.setState({multiElement:null,newElement:d})}),GA(this,"restoreReadyToEraseElements",()=>{this.elementsPendingErasure=new Set,this.triggerRender()}),GA(this,"eraseElements",()=>{let l=!1,g=this.scene.getElementsIncludingDeleted().map((C)=>this.elementsPendingErasure.has(C.id)||C.frameId&&this.elementsPendingErasure.has(C.frameId)||Tu(C)&&this.elementsPendingErasure.has(C.containerId)?(l=!0,Yr(C,{isDeleted:!0})):C);this.elementsPendingErasure=new Set,l&&(this.store.shouldCaptureIncrement(),this.scene.replaceAllElements(g))}),GA(this,"initializeImage",async({imageFile:l,imageElement:g,showCursorImagePreview:C=!1})=>{if(!X1(l))throw Error(uA("errors.unsupportedFileType"));let B=l.type;if(Cu(this.interactiveCanvas,"wait"),B===jt.svg)try{l=TQA($hA(await l.text()),l.name)}catch(h){throw console.warn(h),Error(uA("errors.svgImageInsertError"))}let E=await(this.props.generateIdForFile?.(l)||A1e(l));if(!E)throw console.warn("Couldn't generate file id or the supplied `generateIdForFile` didn't resolve to one."),Error(uA("errors.imageInsertError"));if(!this.files[E]?.dataURL){try{l=await ZW(l,{maxWidthOrHeight:Mde})}catch(h){console.error("Error trying to resizing image file on insertion",h)}if(l.size>gIA)throw Error(uA("errors.fileTooBig",{maxSize:`${Math.trunc(gIA/1024/1024)}MB`}))}if(C){let h=this.files[E]?.dataURL,Q=h&&t1e(h);this.setImagePreviewCursor(Q||l)}let d=this.files[E]?.dataURL||await MQA(l),I=xe(g,{fileId:E},!1);return new Promise(async(h,Q)=>{try{this.addMissingFiles([{mimeType:B,id:E,dataURL:d,created:Date.now(),lastRetrieved:Date.now()}]);let p=this.imageCache.get(E);p||(this.addNewImagesToImageCache(),await this.updateImageCache([I])),p?.image instanceof Promise&&await p.image,this.state.pendingImageElementId!==I.id&&this.state.newElement?.id!==I.id&&this.initializeImageDimensions(I,!0),h(I)}catch(p){console.error(p),Q(Error(uA("errors.imageInsertError")))}finally{C||Mc(this.interactiveCanvas)}})}),GA(this,"insertImageElement",async(l,g,C)=>{if(!this.isToolSupported("image")){this.setState({errorMessage:uA("errors.imageToolNotSupported")});return}this.scene.insertElement(l);try{return await this.initializeImage({imageFile:g,imageElement:l,showCursorImagePreview:C})}catch(B){return xe(l,{isDeleted:!0}),this.actionManager.executeAction(bB),this.setState({errorMessage:B.message||uA("errors.imageInsertError")}),null}}),GA(this,"setImagePreviewCursor",async(l)=>{let g;try{g=await ZW(l,{maxWidthOrHeight:96})}catch(B){throw B.cause==="UNSUPPORTED"?Error(uA("errors.unsupportedFileType")):B}let C=await MQA(g);if(l.type===jt.svg){let B=await VhA(C),E=Math.min(B.height,96),d=E*(B.width/B.height);d>96&&(d=96,E=d*(B.height/B.width));let I=document.createElement("canvas");I.height=E,I.width=d,I.getContext("2d").drawImage(B,0,0,d,E),C=I.toDataURL(jt.svg)}this.state.pendingImageElementId&&Cu(this.interactiveCanvas,`url(${C}) 4 4, auto`)}),GA(this,"onImageAction",async({insertOnCanvasDirectly:l})=>{try{let g=this.state.width/2+this.state.offsetLeft,C=this.state.height/2+this.state.offsetTop,{x:B,y:E}=Ru({clientX:g,clientY:C},this.state),d=await yW({description:"Image",extensions:Object.keys(jm)}),I=this.createImageElement({sceneX:B,sceneY:E,addToFrameUnderCursor:!1});l?(this.insertImageElement(I,d),this.initializeImageDimensions(I),this.setState({selectedElementIds:Gi({[I.id]:!0},this.state)},()=>{this.actionManager.executeAction(bB)})):this.setState({pendingImageElementId:I.id},()=>{this.insertImageElement(I,d,!0)})}catch(g){g.name!=="AbortError"?console.error(g):console.warn(g),this.setState({pendingImageElementId:null,newElement:null,activeTool:en(this.state,{type:"selection"})},()=>{this.actionManager.executeAction(bB)})}}),GA(this,"initializeImageDimensions",(l,g=!1)=>{let C=xg(l)&&this.imageCache.get(l.fileId)?.image;if(!C||C instanceof Promise){if(l.width<Y1/this.state.zoom.value&&l.height<Y1/this.state.zoom.value){let B=100/this.state.zoom.value;xe(l,{x:l.x-B/2,y:l.y-B/2,width:B,height:B})}return}if(g||l.width<Y1/this.state.zoom.value&&l.height<Y1/this.state.zoom.value){let B=Math.max(this.state.height-120,160),E=Math.min(B,Math.floor(this.state.height*0.5)/this.state.zoom.value),d=Math.min(C.naturalHeight,E),I=d*(C.naturalWidth/C.naturalHeight),h=l.x+l.width/2-I/2,Q=l.y+l.height/2-d/2;xe(l,{x:h,y:Q,width:I,height:d,crop:null})}}),GA(this,"updateImageCache",async(l,g=this.files)=>{let{updatedFiles:C,erroredFiles:B}=await jhA({imageCache:this.imageCache,fileIds:l.map((E)=>E.fileId),files:g});if(C.size||B.size)for(let E of l)C.has(E.fileId)&&na.delete(E);return B.size&&this.scene.replaceAllElements(this.scene.getElementsIncludingDeleted().map((E)=>xg(E)&&B.has(E.fileId)?Yr(E,{status:"error"}):E)),{updatedFiles:C,erroredFiles:B}}),GA(this,"addNewImagesToImageCache",async(l=XhA(this.scene.getNonDeletedElements()),g=this.files)=>{let C=l.filter((B)=>!B.isDeleted&&!this.imageCache.has(B.fileId));if(C.length){let{updatedFiles:B}=await this.updateImageCache(C,g);B.size&&this.scene.triggerUpdate()}}),GA(this,"scheduleImageRefresh",tVe.default(()=>{this.addNewImagesToImageCache()},kde)),GA(this,"updateBindingEnabledOnPointerMove",(l)=>{let g=kQe(l);this.state.isBindingEnabled!==g&&this.setState({isBindingEnabled:g})}),GA(this,"maybeSuggestBindingAtCursor",(l,g)=>{let C=Nc(l,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,!1,g);this.setState({suggestedBindings:C!=null?[C]:[]})}),GA(this,"maybeSuggestBindingsForLinearElementAtCoords",(l,g,C)=>{if(!g.length)return;let B=g.reduce((E,d)=>{let I=Nc(d,this.scene.getNonDeletedElements(),this.scene.getNonDeletedElementsMap(),this.state.zoom,pt(l),pt(l));return I!=null&&!bhA(l,C?.id,I)&&E.push(I),E},[]);this.setState({suggestedBindings:B})}),GA(this,"handleInteractiveCanvasRef",(l)=>{l!==null?(this.interactiveCanvas=l,this.interactiveCanvas.addEventListener("touchstart",this.onTouchStart,{passive:!1}),this.interactiveCanvas.addEventListener("touchend",this.onTouchEnd)):(this.interactiveCanvas?.removeEventListener("touchstart",this.onTouchStart),this.interactiveCanvas?.removeEventListener("touchend",this.onTouchEnd))}),GA(this,"handleAppOnDrop",async(l)=>{let{file:g,fileHandle:C}=await u1e(l),{x:B,y:E}=Ru(l,this.state);try{if(X1(g)&&this.isToolSupported("image")){if(g?.type===jt.png||g?.type===jt.svg)try{let h=await GQA(g,this.state,this.scene.getElementsIncludingDeleted(),C);this.syncActionResult({...h,appState:{...h.appState||this.state,isLoading:!1},replaceFiles:!0,captureUpdate:be.IMMEDIATELY});return}catch(h){if(h.name!=="EncodingError")throw Error(uA("alerts.couldNotLoadInvalidFile"))}let I=this.createImageElement({sceneX:B,sceneY:E});this.insertImageElement(I,g),this.initializeImageDimensions(I),this.setState({selectedElementIds:Gi({[I.id]:!0},this.state)});return}}catch(I){return this.setState({isLoading:!1,errorMessage:I.message})}let d=l.dataTransfer.getData(jt.excalidrawlib);if(d&&typeof d=="string"){try{let I=UQA(d);this.addElementsFromPasteOrLibrary({elements:Pze(I),position:l,files:null})}catch(I){this.setState({errorMessage:I.message})}return}if(g&&await this.loadFileToCanvas(g,C),l.dataTransfer?.types?.includes("text/plain")){let I=l.dataTransfer?.getData("text");if(I&&tS(I,this.props.validateEmbeddable)&&(/^(http|https):\/\/[^\s/$.?#].[^\s]*$/.test(I)||s2(I)?.type==="video")){let h=this.insertEmbeddableElement({sceneX:B,sceneY:E,link:Nl(I)});h&&this.setState({selectedElementIds:{[h.id]:!0}})}}}),GA(this,"loadFileToCanvas",async(l,g)=>{l=await VW(l);try{let C=this.scene.getElementsIncludingDeleted(),B;try{B=await NQA(l,this.state,C,g)}catch(E){let d=E instanceof F1;if(d&&E.code==="IMAGE_NOT_CONTAINS_SCENE_DATA"&&!this.isToolSupported("image")){this.setState({isLoading:!1,errorMessage:uA("errors.imageToolNotSupported")});return}let I=d?uA("alerts.cannotRestoreFromImage"):uA("alerts.couldNotLoadInvalidFile");this.setState({isLoading:!1,errorMessage:I})}if(!B)return;B.type===jt.excalidraw?(hd(C.concat(B.data.elements)),this.store.updateSnapshot(ar(C),this.state),this.setState({isLoading:!0}),this.syncActionResult({...B.data,appState:{...B.data.appState||this.state,isLoading:!1},replaceFiles:!0,captureUpdate:be.IMMEDIATELY})):B.type===jt.excalidrawlib&&await this.library.updateLibrary({libraryItems:l,merge:!0,openLibraryMenu:!0}).catch((E)=>{console.error(E),this.setState({errorMessage:uA("errors.importLibraryError")})})}catch(C){this.setState({isLoading:!1,errorMessage:C.message})}}),GA(this,"handleCanvasContextMenu",(l)=>{if(l.preventDefault(),(("pointerType"in l.nativeEvent)&&l.nativeEvent.pointerType==="touch"||("pointerType"in l.nativeEvent)&&l.nativeEvent.pointerType==="pen"&&l.button!==Sh.SECONDARY)&&this.state.activeTool.type!=="selection")return;let{x:g,y:C}=Ru(l,this.state),B=this.getElementAtPosition(g,C,{preferSelected:!0,includeLockedElements:!0}),E=this.scene.getSelectedElements(this.state),d=this.isHittingCommonBoundingBoxOfSelectedElements({x:g,y:C},E),I=B||d?"element":"canvas",h=this.excalidrawContainerRef.current,{top:Q,left:p}=h.getBoundingClientRect(),m=l.clientX-p,f=l.clientY-Q;Nu("contextMenu","openContextMenu",I),this.setState({...B&&!this.state.selectedElementIds[B.id]?{...this.state,...Z0({editingGroupId:this.state.editingGroupId,selectedElementIds:{[B.id]:!0}},this.scene.getNonDeletedElements(),this.state,this),selectedLinearElement:Gr(B)?new It(B):null}:this.state,showHyperlinkPopup:!1},()=>{this.setState({contextMenu:{top:f,left:m,items:this.getContextMenuItems(I)}})})}),GA(this,"maybeDragNewGenericElement",(l,g,C=!0)=>{let B=this.state.selectionElement,E=l.lastCoords;if(B&&this.state.activeTool.type!=="eraser"){LQA({newElement:B,elementType:this.state.activeTool.type,originX:l.origin.x,originY:l.origin.y,x:E.x,y:E.y,width:D0(l.origin.x,E.x),height:D0(l.origin.y,E.y),shouldMaintainAspectRatio:v9(g),shouldResizeFromCenter:iW(g),zoom:this.state.zoom.value,informMutation:C});return}let d=this.state.newElement;if(!d)return;let[I,h]=Dn(E.x,E.y,g[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),Q=xg(d)&&this.imageCache.get(d.fileId)?.image,p=Q&&!(Q instanceof Promise)?Q.width/Q.height:null;this.maybeCacheReferenceSnapPoints(g,[d]);let{snapOffset:m,snapLines:f}=KQe(d,this,g,{x:l.originInGrid.x+(this.state.originSnapOffset?.x??0),y:l.originInGrid.y+(this.state.originSnapOffset?.y??0)},{x:I-l.originInGrid.x,y:h-l.originInGrid.y},this.scene.getNonDeletedElementsMap());I+=m.x,h+=m.y,this.setState({snapLines:f}),LQA({newElement:d,elementType:this.state.activeTool.type,originX:l.originInGrid.x,originY:l.originInGrid.y,x:I,y:h,width:D0(l.originInGrid.x,I),height:D0(l.originInGrid.y,h),shouldMaintainAspectRatio:Ni(d)?!v9(g):v9(g),shouldResizeFromCenter:iW(g),zoom:this.state.zoom.value,widthAspectRatio:p,originOffset:this.state.originSnapOffset,informMutation:C}),this.setState({newElement:d}),(this.state.activeTool.type===Jn.frame||this.state.activeTool.type===Jn.magicframe)&&this.setState({elementsToHighlight:oS(this.scene.getNonDeletedElements(),d,this.state,this.scene.getNonDeletedElementsMap())})}),GA(this,"maybeHandleCrop",(l,g)=>{if(!this.state.croppingElementId)return!1;let C=l.resize.handleType,B=l.lastCoords,[E,d]=Dn(B.x-l.resize.offset.x,B.y-l.resize.offset.y,g[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),I=this.scene.getNonDeletedElementsMap().get(this.state.croppingElementId);if(C&&I&&Ni(I)){let h=l.originalElements.get(I.id),Q=xg(I)&&this.imageCache.get(I.fileId)?.image;if(h&&Ni(h)&&Q&&!(Q instanceof Promise)){let[p,m]=Dn(B.x,B.y,g[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),f={x:p-l.originInGrid.x,y:m-l.originInGrid.y};this.maybeCacheReferenceSnapPoints(g,[I]);let{snapOffset:D,snapLines:w}=MhA([I],[h],this,g,f,C);xe(I,CQe(I,C,Q.naturalWidth,Q.naturalHeight,E+D.x,d+D.y,g.shiftKey?h.width/h.height:void 0)),Hs(I,this.scene.getNonDeletedElementsMap(),{newSize:{width:I.width,height:I.height}}),this.setState({isCropping:C&&C!=="rotation",snapLines:w})}return!0}return!1}),GA(this,"maybeHandleResize",(l,g)=>{let C=this.scene.getSelectedElements(this.state),B=C.filter((p)=>nr(p)),E=l.resize.handleType;if(B.length>0&&E==="rotation"||C.length===1&&pt(C[0])||this.state.croppingElementId)return!1;this.setState({isResizing:E&&E!=="rotation",isRotating:E==="rotation",activeEmbeddable:null});let d=l.lastCoords,[I,h]=Dn(d.x-l.resize.offset.x,d.y-l.resize.offset.y,g[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),Q=new Map;if(B.forEach((p)=>{gB(this.scene.getNonDeletedElements(),p.id).forEach((m)=>{Q.set(p.id+m.id,{x:m.x-p.x,y:m.y-p.y})})}),!this.state.selectedElementsAreBeingDragged){let[p,m]=Dn(d.x,d.y,g[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),f={x:p-l.originInGrid.x,y:m-l.originInGrid.y},D=[...l.originalElements.values()];this.maybeCacheReferenceSnapPoints(g,C);let{snapOffset:w,snapLines:b}=MhA(C,Or(D,this.state),this,g,f,E);I+=w.x,h+=w.y,this.setState({snapLines:b})}if(J4e(l.originalElements,E,C,this.scene.getElementsMapIncludingDeleted(),this.scene,c9(g),iW(g),C.some((p)=>Ni(p))?!v9(g):v9(g),I,h,l.resize.center.x,l.resize.center.y)){let p=CW(C,this.scene.getNonDeletedElementsMap(),this.state.zoom),m=new Set;return B.forEach((f)=>{oS(this.scene.getNonDeletedElements(),f,this.state,this.scene.getNonDeletedElementsMap()).forEach((D)=>m.add(D))}),this.setState({elementsToHighlight:[...m],suggestedBindings:p}),!0}return!1}),GA(this,"getContextMenuItems",(l)=>{let g=[];return g.push(cqe,gqe),l==="canvas"?this.state.viewModeEnabled?[...g,Bqe,h3A,zqe,Q3A]:[sqe,bo,cqe,gqe,Cqe,bo,NCr,eEr,bo,Bqe,JBr,h3A,zqe,Q3A]:(g.push(Cqe),this.state.viewModeEnabled?[eZ,...g]:[bo,lqe,eZ,sqe,bo,whr,bhr,vhr,bo,hdr,bo,...g,bo,vBr,kBr,bo,xBr,cQr,OBr,PBr,qBr,SBr,bo,GBr,bo,xCr,SCr,LCr,RCr,bo,YBr,HBr,bo,Idr,bo,Kze,uZe,bo,TCr,AEr,bo,lze])}),GA(this,"handleWheel",Ha((l)=>{if(!(l.target instanceof HTMLCanvasElement||l.target instanceof HTMLTextAreaElement||l.target instanceof HTMLIFrameElement)){l[PA.CTRL_OR_CMD]&&l.preventDefault();return}if(l.preventDefault(),bL)return;let{deltaX:g,deltaY:C}=l;if(l.metaKey||l.ctrlKey){let B=Math.sign(C),E=R8*100,d=Math.abs(C),I=C;d>E&&(I=E*B);let h=this.state.zoom.value-I/100;h+=Math.log10(Math.max(1,this.state.zoom.value))*-B*Math.min(1,d/20),this.translateCanvas((Q)=>({...K2({viewportX:this.lastViewportPosition.x,viewportY:this.lastViewportPosition.y,nextZoom:dd(h)},Q),shouldCacheIgnoreZoom:!0})),this.resetShouldCacheIgnoreZoomDebounced();return}if(l.shiftKey){this.translateCanvas(({zoom:B,scrollX:E})=>({scrollX:E-(C||g)/B.value}));return}this.translateCanvas(({zoom:B,scrollX:E,scrollY:d})=>({scrollX:E-g/B.value,scrollY:d-C/B.value}))})),GA(this,"savePointer",(l,g,C)=>{if(!l||!g)return;let{x:B,y:E}=Ru({clientX:l,clientY:g},this.state);isNaN(B)||isNaN(E);let d={x:B,y:E,tool:this.state.activeTool.type==="laser"?"laser":"pointer"};this.props.onPointerUpdate?.({pointer:d,button:C,pointersMap:Wi.pointers})}),GA(this,"resetShouldCacheIgnoreZoomDebounced",t2(()=>{this.unmounted||this.setState({shouldCacheIgnoreZoom:!1})},300)),GA(this,"updateDOMRect",(l)=>{if(this.excalidrawContainerRef?.current){let g=this.excalidrawContainerRef.current,{width:C,height:B,left:E,top:d}=g.getBoundingClientRect(),{width:I,height:h,offsetTop:Q,offsetLeft:p}=this.state;if(C===I&&B===h&&E===p&&d===Q){l&&l();return}this.setState({width:C,height:B,offsetLeft:E,offsetTop:d},()=>{l&&l()})}}),GA(this,"refresh",()=>{this.setState({...this.getCanvasOffsets()})});let t=iB(),{excalidrawAPI:r,viewModeEnabled:i=!1,zenModeEnabled:u=!1,gridModeEnabled:a=!1,objectsSnapModeEnabled:n=!1,theme:o=t.theme,name:s=`${uA("labels.untitled")}-${hIA()}`}=e;if(this.state={...t,theme:o,isLoading:!0,...this.getCanvasOffsets(),viewModeEnabled:i,zenModeEnabled:u,objectsSnapModeEnabled:n,gridModeEnabled:a??t.gridModeEnabled,name:s,width:window.innerWidth,height:window.innerHeight},this.id=fa(),this.library=new gEr(this),this.actionManager=new mdr(this.syncActionResult,()=>this.state,()=>this.scene.getElementsIncludingDeleted(),this),this.scene=new gd,this.canvas=document.createElement("canvas"),this.rc=yc.canvas(this.canvas),this.renderer=new eze(this.scene),this.visibleElements=[],this.store=new n4e,this.history=new yqe,r){let l={updateScene:this.updateScene,updateLibrary:this.library.updateLibrary,addFiles:this.addFiles,resetScene:this.resetScene,getSceneElementsIncludingDeleted:this.getSceneElementsIncludingDeleted,history:{clear:this.resetHistory},scrollToContent:this.scrollToContent,getSceneElements:this.getSceneElements,getAppState:()=>this.state,getFiles:()=>this.files,getName:this.getName,registerAction:(g)=>{this.actionManager.registerAction(g)},refresh:this.refresh,setToast:this.setToast,id:this.id,setActiveTool:this.setActiveTool,setCursor:this.setCursor,resetCursor:this.resetCursor,updateFrameRendering:this.updateFrameRendering,toggleSidebar:this.toggleSidebar,onChange:(g)=>this.onChangeEmitter.on(g),onPointerDown:(g)=>this.onPointerDownEmitter.on(g),onPointerUp:(g)=>this.onPointerUpEmitter.on(g),onScrollChange:(g)=>this.onScrollChangeEmitter.on(g),onUserFollow:(g)=>this.onUserFollowEmitter.on(g)};typeof r=="function"?r(l):console.error("excalidrawAPI should be a function!")}this.excalidrawContainerValue={container:this.excalidrawContainerRef.current,id:this.id},this.fonts=new Ed(this.scene),this.history=new yqe,this.actionManager.registerAll(w_),this.actionManager.registerAction(pdr(this.history,this.store)),this.actionManager.registerAction(fdr(this.history,this.store))}onWindowMessage(e){if(e.origin!=="https://player.vimeo.com"&&e.origin!=="https://www.youtube.com")return;let t=null;try{t=JSON.parse(e.data)}catch{}if(t)switch(e.origin){case"https://player.vimeo.com":if(t.method==="paused"){let r=null,i=document.body.querySelectorAll("iframe.excalidraw__embeddable");if(!i)break;for(let u of i)u.contentWindow===e.source&&(r=u.contentWindow);r?.postMessage(JSON.stringify({method:t.value?"play":"pause",value:!0}),"*")}break;case"https://www.youtube.com":if(t.event==="infoDelivery"&&t.info&&t.id&&typeof t.info.playerState=="number"){let r=t.id,i=t.info.playerState;Object.values(F8).includes(i)&&c3A.set(r,i)}break}}cacheEmbeddableRef(e,t){t&&this.iFrameRefs.set(e.id,t)}getHTMLIFrameElement(e){return this.iFrameRefs.get(e.id)}handleEmbeddableCenterClick(e){if(this.state.activeEmbeddable?.element===e&&this.state.activeEmbeddable?.state==="active"||(setTimeout(()=>{this.setState({activeEmbeddable:{element:e,state:"active"},selectedElementIds:{[e.id]:!0},newElement:null,selectionElement:null})},100),Rh(e)))return;let t=this.getHTMLIFrameElement(e);if(t?.contentWindow){if(t.src.includes("youtube")){let r=c3A.get(e.id);switch(r||(c3A.set(e.id,F8.UNSTARTED),t.contentWindow.postMessage(JSON.stringify({event:"listening",id:e.id}),"*")),r){case F8.PLAYING:case F8.BUFFERING:t.contentWindow?.postMessage(JSON.stringify({event:"command",func:"pauseVideo",args:""}),"*");break;default:t.contentWindow?.postMessage(JSON.stringify({event:"command",func:"playVideo",args:""}),"*")}}t.src.includes("player.vimeo.com")&&t.contentWindow.postMessage(JSON.stringify({method:"paused"}),"*")}}isIframeLikeElementCenter(e,t,r,i){return e&&!t.altKey&&!t.shiftKey&&!t.metaKey&&!t.ctrlKey&&(this.state.activeEmbeddable?.element!==e||this.state.activeEmbeddable?.state==="hover"||!this.state.activeEmbeddable)&&r>=e.x+e.width/3&&r<=e.x+2*e.width/3&&i>=e.y+e.height/3&&i<=e.y+2*e.height/3}renderEmbeddables(){let e=this.state.zoom.value,t=this.state.width,r=this.state.height,i=this.scene.getNonDeletedElements().filter((u)=>Js(u)&&this.embedsValidationStatus.get(u.id)===!0||Rh(u));return N(At,{children:i.map((u)=>{let{x:a,y:n}=Sc({sceneX:u.x,sceneY:u.y},this.state),o=cS(u,t,r,this.state,this.scene.getNonDeletedElementsMap()),s=this.initializedEmbeds.has(u.id);if(o&&!s&&this.initializedEmbeds.add(u.id),!(o||s))return null;let l;if(Rh(u)){l=null;let B=(u.customData?.generationData??this.magicGenerations.get(u.id))||{status:"error",message:"No generation data",code:"ERR_NO_GENERATION_DATA"};if(B.status==="done"){let E=B.html;l={intrinsicSize:{w:u.width,h:u.height},type:"document",srcdoc:()=>E}}else if(B.status==="pending")l={intrinsicSize:{w:u.width,h:u.height},type:"document",srcdoc:()=>s9(`
<style>
html, body {
width: 100%;
height: 100%;
color: ${this.state.theme===ei.DARK?"white":"black"};
}
body {
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
gap: 1rem;
}
.Spinner {
display: flex;
align-items: center;
justify-content: center;
margin-left: auto;
margin-right: auto;
}
.Spinner svg {
animation: rotate 1.6s linear infinite;
transform-origin: center center;
width: 40px;
height: 40px;
}
.Spinner circle {
stroke: currentColor;
animation: dash 1.6s linear 0s infinite;
stroke-linecap: round;
}
@keyframes rotate {
100% {
transform: rotate(360deg);
}
}
@keyframes dash {
0% {
stroke-dasharray: 1, 300;
stroke-dashoffset: 0;
}
50% {
stroke-dasharray: 150, 300;
stroke-dashoffset: -200;
}
100% {
stroke-dasharray: 1, 300;
stroke-dashoffset: -280;
}
}
</style>
<div class="Spinner">
<svg
viewBox="0 0 100 100"
>
<circle
cx="50"
cy="50"
r="46"
stroke-width="8"
fill="none"
stroke-miter-limit="10"
/>
</svg>
</div>
<div>Generating...</div>
`)};else{let E;B.code==="ERR_GENERATION_INTERRUPTED"?E="Generation was interrupted...":E=B.message||"Generation failed",l={intrinsicSize:{w:u.width,h:u.height},type:"document",srcdoc:()=>s9(`
<style>
html, body {
height: 100%;
}
body {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
color: ${Zr.red[3]};
}
h1, h3 {
margin-top: 0;
margin-bottom: 0.5rem;
}
</style>
<h1>Error!</h1>
<h3>${E}</h3>
`)}}}else l=s2(KhA(u.link||""));let g=this.state.activeEmbeddable?.element===u&&this.state.activeEmbeddable?.state==="active",C=this.state.activeEmbeddable?.element===u&&this.state.activeEmbeddable?.state==="hover";return N("div",{className:Se("excalidraw__embeddable-container",{"is-hovered":C}),style:{transform:o?`translate(${a-this.state.offsetLeft}px, ${n-this.state.offsetTop}px) scale(${e})`:"none",display:o?"block":"none",opacity:IhA(u,Ks(u,this.scene.getNonDeletedElementsMap()),this.elementsPendingErasure,null,this.state.openDialog?.name==="elementLinkSelector"?BIA:1),"--embeddable-radius":`${Fc(Math.min(u.width,u.height),u)}px`},children:cA("div",{className:"excalidraw__embeddable-container__inner",style:{width:o?`${u.width}px`:0,height:o?`${u.height}px`:0,transform:o?`rotate(${u.angle}rad)`:"none",pointerEvents:g?Zm.enabled:Zm.disabled},children:[C&&N("div",{className:"excalidraw__embeddable-hint",children:uA("buttons.embeddableInteractionButton")}),N("div",{className:"excalidraw__embeddable__outer",style:{padding:`${u.strokeWidth}px`},children:(Js(u)?this.props.renderEmbeddable?.(u,this.state):null)??N("iframe",{ref:(B)=>this.cacheEmbeddableRef(u,B),className:"excalidraw__embeddable",srcDoc:l?.type==="document"?l.srcdoc(this.state.theme):void 0,src:l?.type!=="document"?l?.link??"":void 0,scrolling:"no",referrerPolicy:"no-referrer-when-downgrade",title:"Excalidraw Embedded Content",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0,sandbox:`${l?.sandbox?.allowSameOrigin?"allow-same-origin":""} allow-scripts allow-forms allow-popups allow-popups-to-escape-sandbox allow-presentation allow-downloads`})})]})},u.id)})})}toggleOverscrollBehavior(e){document.documentElement.style.overscrollBehaviorX=e.type==="pointerenter"?"none":"auto"}render(){let e=this.scene.getSelectedElements(this.state),{renderTopRightUI:t,renderCustomStats:r}=this.props,i=this.scene.getSceneNonce(),{elementsMap:u,visibleElements:a}=this.renderer.getRenderableElements({sceneNonce:i,zoom:this.state.zoom,offsetLeft:this.state.offsetLeft,offsetTop:this.state.offsetTop,scrollX:this.state.scrollX,scrollY:this.state.scrollY,height:this.state.height,width:this.state.width,editingTextElement:this.state.editingTextElement,newElementId:this.state.newElement?.id,pendingImageElementId:this.state.pendingImageElementId});this.visibleElements=a;let n=this.scene.getNonDeletedElementsMap(),o="setPointerCapture"in HTMLElement.prototype?!1:this.state.selectionElement||this.state.newElement||this.state.selectedElementsAreBeingDragged||this.state.resizingElement||this.state.activeTool.type==="laser"&&this.state.cursorButton==="down",s=e[0];return N("div",{className:Se("excalidraw excalidraw-container",{"excalidraw--view-mode":this.state.viewModeEnabled||this.state.openDialog?.name==="elementLinkSelector","excalidraw--mobile":this.device.editor.isMobile}),style:{"--ui-pointerEvents":o?Zm.disabled:Zm.enabled,"--right-sidebar-width":"302px"},ref:this.excalidrawContainerRef,onDrop:this.handleAppOnDrop,tabIndex:0,onKeyDown:this.props.handleKeyboardGlobally?void 0:this.onKeyDown,onPointerEnter:this.toggleOverscrollBehavior,onPointerLeave:this.toggleOverscrollBehavior,children:N(lVe.Provider,{value:this,children:N(gVe.Provider,{value:this.props,children:N(q3A.Provider,{value:this.excalidrawContainerValue,children:N(W3A.Provider,{value:this.device,children:N(V3A.Provider,{value:this.setAppState,children:N(Z3A.Provider,{value:this.state,children:cA(z3A.Provider,{value:this.scene.getNonDeletedElements(),children:[cA(j3A.Provider,{value:this.actionManager,children:[N(mhr,{canvas:this.canvas,appState:this.state,files:this.files,setAppState:this.setAppState,actionManager:this.actionManager,elements:this.scene.getNonDeletedElements(),onLockToggle:this.toggleLock,onPenModeToggle:this.togglePenMode,onHandToolToggle:this.onHandToolToggle,langCode:NL().code,renderTopRightUI:t,renderCustomStats:r,showExitZenModeBtn:typeof this.props?.zenModeEnabled>"u"&&this.state.zenModeEnabled,UIOptions:this.props.UIOptions,onExportImage:this.onExportImage,renderWelcomeScreen:!this.state.isLoading&&this.state.showWelcomeScreen&&this.state.activeTool.type==="selection"&&!this.state.zenModeEnabled&&!this.scene.getElementsIncludingDeleted().length,app:this,isCollaborating:this.props.isCollaborating,generateLinkForSelection:this.props.generateLinkForSelection,children:this.props.children}),N("div",{className:"excalidraw-textEditorContainer"}),N("div",{className:"excalidraw-contextMenuContainer"}),N("div",{className:"excalidraw-eye-dropper-container"}),N(tQr,{trails:[this.laserTrails,this.eraserTrail]}),e.length===1&&this.state.openDialog?.name!=="elementLinkSelector"&&this.state.showHyperlinkPopup&&N(VBr,{element:s,elementsMap:n,setAppState:this.setAppState,onLinkOpen:this.props.onLinkOpen,setToast:this.setToast,updateEmbedValidationStatus:this.updateEmbedValidationStatus},s.id),this.props.aiEnabled!==!1&&e.length===1&&K8(s)&&N(tze,{element:s,elementsMap:u,children:N(o3A,{title:uA("labels.convertToCode"),icon:ohA,checked:!1,onChange:()=>this.onMagicFrameGenerate(s,"button")})}),e.length===1&&Rh(s)&&s.customData?.generationData?.status==="done"&&cA(tze,{element:s,elementsMap:u,children:[N(o3A,{title:uA("labels.copySource"),icon:$_,checked:!1,onChange:()=>this.onIframeSrcCopy(s)}),N(o3A,{title:"Enter fullscreen",icon:bhe,checked:!1,onChange:()=>{let l=this.getHTMLIFrameElement(s);if(l)try{l.requestFullscreen(),this.setState({activeEmbeddable:{element:s,state:"active"},selectedElementIds:{[s.id]:!0},newElement:null,selectionElement:null})}catch(g){console.warn(g),this.setState({errorMessage:"Couldn't enter fullscreen"})}}})]}),this.state.toast!==null&&N(yhr,{message:this.state.toast.message,onClose:()=>this.setToast(null),duration:this.state.toast.duration,closable:this.state.toast.closable}),this.state.contextMenu&&N(ydr,{items:this.state.contextMenu.items,top:this.state.contextMenu.top,left:this.state.contextMenu.left,actionManager:this.actionManager,onClose:(l)=>{this.setState({contextMenu:null},()=>{this.focusContainer(),l?.()})}}),N(eQr,{canvas:this.canvas,rc:this.rc,elementsMap:u,allElementsMap:n,visibleElements:a,sceneNonce:i,selectionNonce:this.state.selectionElement?.versionNonce,scale:window.devicePixelRatio,appState:this.state,renderConfig:{imageCache:this.imageCache,isExporting:!1,renderGrid:S9(this),canvasBackgroundColor:this.state.viewBackgroundColor,embedsValidationStatus:this.embedsValidationStatus,elementsPendingErasure:this.elementsPendingErasure,pendingFlowchartNodes:this.flowChartCreator.pendingNodes}}),this.state.newElement&&N(IQr,{appState:this.state,scale:window.devicePixelRatio,rc:this.rc,elementsMap:u,allElementsMap:n,renderConfig:{imageCache:this.imageCache,isExporting:!1,renderGrid:!1,canvasBackgroundColor:this.state.viewBackgroundColor,embedsValidationStatus:this.embedsValidationStatus,elementsPendingErasure:this.elementsPendingErasure,pendingFlowchartNodes:null}}),N(Xhr,{containerRef:this.excalidrawContainerRef,canvas:this.interactiveCanvas,elementsMap:u,visibleElements:a,allElementsMap:n,selectedElements:e,sceneNonce:i,selectionNonce:this.state.selectionElement?.versionNonce,scale:window.devicePixelRatio,appState:this.state,device:this.device,renderInteractiveSceneCallback:this.renderInteractiveSceneCallback,handleCanvasRef:this.handleInteractiveCanvasRef,onContextMenu:this.handleCanvasContextMenu,onPointerMove:this.handleCanvasPointerMove,onPointerUp:this.handleCanvasPointerUp,onPointerCancel:this.removePointer,onTouchMove:this.handleTouchMove,onPointerDown:this.handleCanvasPointerDown,onDoubleClick:this.handleCanvasDoubleClick}),this.state.userToFollow&&N(nQr,{width:this.state.width,height:this.state.height,userToFollow:this.state.userToFollow,onDisconnect:this.maybeUnfollowRemoteUser}),this.renderFrameNames()]}),this.renderEmbeddables()]})})})})})})})})}setPlugins(e){Object.assign(this.plugins,e)}async onMagicFrameGenerate(e,t){let r=this.plugins.diagramToCode?.generate;if(!r){this.setState({errorMessage:"No diagram to code plugin found"});return}let i=HW(this.scene.getNonDeletedElements(),e).filter((a)=>!K8(a));if(!i.length){t==="button"?(this.setState({errorMessage:"Cannot generate from an empty frame"}),Nu("ai","generate (no-children)","d2c")):this.setActiveTool({type:"magicframe"});return}let u=this.insertIframeElement({sceneX:e.x+e.width+30,sceneY:e.y,width:e.width,height:e.height});if(u){this.updateMagicGeneration({frameElement:u,data:{status:"pending"}}),this.setState({selectedElementIds:{[u.id]:!0}}),Nu("ai","generate (start)","d2c");try{let{html:a}=await r({frame:e,children:i});if(Nu("ai","generate (success)","d2c"),!a.trim()){this.updateMagicGeneration({frameElement:u,data:{status:"error",code:"ERR_OAI",message:"Nothing genereated :("}});return}let n=a.includes("<!DOCTYPE html>")&&a.includes("</html>")?a.slice(a.indexOf("<!DOCTYPE html>"),a.indexOf("</html>")+7):a;this.updateMagicGeneration({frameElement:u,data:{status:"done",html:n}})}catch(a){Nu("ai","generate (failed)","d2c"),this.updateMagicGeneration({frameElement:u,data:{status:"error",code:"ERR_OAI",message:a.message||"Unknown error during generation"}})}}}onIframeSrcCopy(e){e.customData?.generationData?.status==="done"&&(G9(e.customData.generationData.html),this.setToast({message:"copied to clipboard",closable:!1,duration:1500}))}clearImageShapeCache(e){let t=e??this.files;this.scene.getNonDeletedElements().forEach((r)=>{xg(r)&&t[r.fileId]&&(this.imageCache.delete(r.fileId),na.delete(r))})}async componentDidMount(){if(this.unmounted=!1,this.excalidrawContainerValue.container=this.excalidrawContainerRef.current,fr.MODE===Ys.TEST||fr.DEV){let e=this.setState.bind(this);Object.defineProperties(window.h,{state:{configurable:!0,get:()=>this.state},setState:{configurable:!0,value:(...t)=>this.setState(...t)},app:{configurable:!0,value:this},history:{configurable:!0,value:this.history},store:{configurable:!0,value:this.store},fonts:{configurable:!0,value:this.fonts}})}this.store.onStoreIncrementEmitter.on((e)=>{this.history.record(e.elementsChange,e.appStateChange)}),this.scene.onUpdate(this.triggerRender),this.addEventListeners(),this.props.autoFocus&&this.excalidrawContainerRef.current&&this.focusContainer(),Cd()||(this.refreshViewportBreakpoints(),this.refreshEditorBreakpoints()),S_&&this.excalidrawContainerRef.current&&(this.resizeObserver=new ResizeObserver(()=>{this.refreshEditorBreakpoints(),this.updateDOMRect()}),this.resizeObserver?.observe(this.excalidrawContainerRef.current)),new URLSearchParams(window.location.search.slice(1)).has("web-share-target")?this.restoreFileFromShare():this.updateDOMRect(this.initializeScene),hde()&&!cIe()&&this.setState({errorMessage:N(Fhr,{})})}componentWillUnmount(){window.launchQueue?.setConsumer(()=>{}),this.renderer.destroy(),this.scene.destroy(),this.scene=new gd,this.fonts=new Ed(this.scene),this.renderer=new eze(this.scene),this.files={},this.imageCache.clear(),this.resizeObserver?.disconnect(),this.unmounted=!0,this.removeEventListeners(),this.library.destroy(),this.laserTrails.stop(),this.eraserTrail.stop(),this.onChangeEmitter.clear(),this.store.onStoreIncrementEmitter.clear(),na.destroy(),Id.destroy(),clearTimeout(bp),yn.clearCache(),Z0.clearCache(),bp=0,document.documentElement.style.overscrollBehaviorX=""}removeEventListeners(){this.onRemoveEventListenersEmitter.trigger()}addEventListeners(){this.removeEventListeners(),this.props.handleKeyboardGlobally&&this.onRemoveEventListenersEmitter.once(oa(document,"keydown",this.onKeyDown,!1)),this.onRemoveEventListenersEmitter.once(oa(this.excalidrawContainerRef.current,"wheel",this.handleWheel,{passive:!1}),oa(window,"message",this.onWindowMessage,!1),oa(document,"pointerup",this.removePointer,{passive:!1}),oa(document,"copy",this.onCopy,{passive:!1}),oa(document,"keyup",this.onKeyUp,{passive:!0}),oa(document,"pointermove",this.updateCurrentCursorPosition,{passive:!1}),oa(document.fonts,"loadingdone",(e)=>{let t=e.fontfaces;this.fonts.onLoaded(t)},{passive:!1}),oa(document,"gesturestart",this.onGestureStart,!1),oa(document,"gesturechange",this.onGestureChange,!1),oa(document,"gestureend",this.onGestureEnd,!1),oa(window,"focus",()=>{this.maybeCleanupAfterMissingPointerUp(null),this.triggerRender(!0)},{passive:!1})),!this.state.viewModeEnabled&&(this.onRemoveEventListenersEmitter.once(oa(document,"fullscreenchange",this.onFullscreenChange,{passive:!1}),oa(document,"paste",this.pasteFromClipboard,{passive:!1}),oa(document,"cut",this.onCut,{passive:!1}),oa(window,"resize",this.onResize,!1),oa(window,"unload",this.onUnload,!1),oa(window,"blur",this.onBlur,!1),oa(this.excalidrawContainerRef.current,"wheel",this.handleWheel,{passive:!1}),oa(this.excalidrawContainerRef.current,"dragover",this.disableEvent,!1),oa(this.excalidrawContainerRef.current,"drop",this.disableEvent,!1)),this.props.detectScroll&&this.onRemoveEventListenersEmitter.once(oa(eIe(this.excalidrawContainerRef.current),"scroll",this.onScroll,{passive:!1})))}componentDidUpdate(e,t){this.updateEmbeddables();let r=this.scene.getElementsIncludingDeleted(),i=this.scene.getElementsMapIncludingDeleted(),u=this.scene.getNonDeletedElementsMap();!this.state.showWelcomeScreen&&!r.length&&this.setState({showWelcomeScreen:!0}),e.UIOptions.dockedSidebarBreakpoint!==this.props.UIOptions.dockedSidebarBreakpoint&&this.refreshEditorBreakpoints(),t.userToFollow&&!this.state.collaborators.has(t.userToFollow.socketId)&&this.maybeUnfollowRemoteUser(),(t.zoom.value!==this.state.zoom.value||t.scrollX!==this.state.scrollX||t.scrollY!==this.state.scrollY)&&(this.props?.onScrollChange?.(this.state.scrollX,this.state.scrollY,this.state.zoom),this.onScrollChangeEmitter.trigger(this.state.scrollX,this.state.scrollY,this.state.zoom)),t.userToFollow!==this.state.userToFollow&&(t.userToFollow&&this.onUserFollowEmitter.trigger({userToFollow:t.userToFollow,action:"UNFOLLOW"}),this.state.userToFollow&&this.onUserFollowEmitter.trigger({userToFollow:this.state.userToFollow,action:"FOLLOW"})),Object.keys(this.state.selectedElementIds).length&&uB(this.state)&&this.setState({activeTool:en(this.state,{type:"selection"})}),this.state.activeTool.type==="eraser"&&t.theme!==this.state.theme&&JhA(this.interactiveCanvas,this.state.theme),t.activeTool.type==="selection"&&this.state.activeTool.type!=="selection"&&this.state.showHyperlinkPopup&&this.setState({showHyperlinkPopup:!1}),e.langCode!==this.props.langCode&&this.updateLanguage(),uB(t)&&!uB(this.state)&&this.eraserTrail.endPath(),e.viewModeEnabled!==this.props.viewModeEnabled&&this.setState({viewModeEnabled:!!this.props.viewModeEnabled}),t.viewModeEnabled!==this.state.viewModeEnabled&&(this.addEventListeners(),this.deselectElements()),(t.openDialog?.name==="elementLinkSelector"||this.state.openDialog?.name==="elementLinkSelector")&&t.openDialog?.name!==this.state.openDialog?.name&&(this.deselectElements(),this.setState({hoveredElementIds:{}})),e.zenModeEnabled!==this.props.zenModeEnabled&&this.setState({zenModeEnabled:!!this.props.zenModeEnabled}),e.theme!==this.props.theme&&this.props.theme&&this.setState({theme:this.props.theme}),this.excalidrawContainerRef.current?.classList.toggle("theme--dark",this.state.theme===ei.DARK),this.state.editingLinearElement&&!this.state.selectedElementIds[this.state.editingLinearElement.elementId]&&setTimeout(()=>{this.state.editingLinearElement&&this.actionManager.executeAction(bB)}),this.state.editingTextElement?.isDeleted&&this.setState({editingTextElement:null}),this.state.selectedLinearElement&&!this.state.selectedElementIds[this.state.selectedLinearElement.elementId]&&this.setState({selectedLinearElement:null});let{multiElement:a}=t;t.activeTool!==this.state.activeTool&&a!=null&&U1(this.state)&&jC(a,!1)&&BW(a,this.state,kc(It.getPointAtIndexGlobalCoordinates(a,-1,u)),this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements()),this.store.commit(i,this.state),this.state.isLoading||(this.props.onChange?.(r,this.state,this.files),this.onChangeEmitter.trigger(r,this.state,this.files))}static resetTapTwice(){wL=!1}async addElementsFromMixedContentPaste(e,{isPlainPaste:t,sceneX:r,sceneY:i}){if(!t&&e.some((u)=>u.type==="imageUrl")&&this.isToolSupported("image")){let u=e.filter((g)=>g.type==="imageUrl").map((g)=>g.value),a=await Promise.all(u.map(async(g)=>{try{return{file:await i1e(g)}}catch(C){let B=C.message;return C.cause==="FETCH_ERROR"?B=uA("errors.failedToFetchImage"):C.cause==="UNSUPPORTED"&&(B=uA("errors.unsupportedFileType")),{errorMessage:B}}})),n=i,o=!1,s={};for(let g of a)if(g.file){let C=this.createImageElement({sceneX:r,sceneY:n}),B=await this.insertImageElement(C,g.file);B&&(o||(o=!0,n-=B.height/2),xe(B,{y:n},!1),n=C.y+C.height+25,s[C.id]=!0)}this.setState({selectedElementIds:Gi(s,this.state)});let l=a.find((g)=>!!g.errorMessage);l&&l.errorMessage&&this.setState({errorMessage:l.errorMessage})}else{let u=e.filter((a)=>a.type==="text");u.length&&this.addTextFromPaste(u.map((a)=>a.value).join(`
`),t)}}addTextFromPaste(e,t=!1){let{x:r,y:i}=Ru({clientX:this.lastViewportPosition.x,clientY:this.lastViewportPosition.y},this.state),u={x:r,y:i,strokeColor:this.state.currentItemStrokeColor,backgroundColor:this.state.currentItemBackgroundColor,fillStyle:this.state.currentItemFillStyle,strokeWidth:this.state.currentItemStrokeWidth,strokeStyle:this.state.currentItemStrokeStyle,roundness:null,roughness:this.state.currentItemRoughness,opacity:this.state.currentItemOpacity,text:e,fontSize:this.state.currentItemFontSize,fontFamily:this.state.currentItemFontFamily,textAlign:h9,verticalAlign:x8,locked:!1},a=cu({fontSize:u.fontSize,fontFamily:u.fontFamily}),n=z1(u.fontFamily),[o,,s]=vQe(this.state),l=Math.max(Math.min((s-o)*0.5,800),200),g=10,C=i,B=t?[e]:e.split(`
`),E=B.reduce((d,I,h)=>{let Q=i2(I).trim();if(Q.length){let p=this.getTopLayerFrameAtSceneCoords({x:r,y:C}),m=y0(Q,a,n),f=m.width>l,D=f?_1(Q,a,l):Q;m=f?y0(D,a,n):m;let w=r-m.width/2,b=C-m.height/2,k=Gl({...u,x:w,y:b,text:D,originalText:Q,lineHeight:n,autoResize:!f,frameId:p?p.id:null});d.push(k),C+=k.height+g}else B[h-1]?.trim()&&(C+=w9(u.fontSize,n)+g);return d},[]);E.length!==0&&(this.scene.insertElements(E),this.setState({selectedElementIds:Gi(Object.fromEntries(E.map((d)=>[d.id,!0])),this.state)}),!t&&E.length>1&&ize===!1&&!this.device.editor.isMobile&&(this.setToast({message:uA("toast.pasteAsSingleElement",{shortcut:Fe("CtrlOrCmd+Shift+V")}),duration:5000}),ize=!0),this.store.shouldCaptureIncrement())}handleTextWysiwyg(e,{isExistingElement:t=!1}){let r=this.scene.getElementsMapIncludingDeleted(),i=(u,a)=>{this.scene.replaceAllElements([...this.scene.getElementsIncludingDeleted().map((n)=>n.id===e.id&&Bt(n)?Yr(n,{originalText:u,isDeleted:a??n.isDeleted,...PhA(n,Do(n,r),r,u)}):n)])};gQr({id:e.id,canvas:this.canvas,getViewportCoords:(u,a)=>{let{x:n,y:o}=Sc({sceneX:u,sceneY:a},this.state);return[n-this.state.offsetLeft,o-this.state.offsetTop]},onChange:Ha((u)=>{i(u,!1),qW(e)&&Hs(e,this.scene.getNonDeletedElementsMap())}),onSubmit:Ha(({viaKeyboard:u,nextOriginalText:a})=>{let n=!a.trim();if(i(a,n),!n&&u){let o=e.containerId?e.containerId:e.id;_n(()=>{this.setState((s)=>({selectedElementIds:Gi({...s.selectedElementIds,[o]:!0},s)}))})}n&&khA(this.scene.getNonDeletedElements(),[e]),(!n||t)&&this.store.shouldCaptureIncrement(),_n(()=>{this.setState({newElement:null,editingTextElement:null})}),this.state.activeTool.locked&&nB(this.interactiveCanvas,this.state),this.focusContainer()}),element:e,excalidrawContainer:this.excalidrawContainerRef.current,app:this,autoSelect:!this.device.isTouchScreen}),this.deselectElements(),i(e.originalText,!1)}deselectElements(){this.setState({selectedElementIds:Gi({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null})}getTextElementAtPosition(e,t){let r=this.getElementAtPosition(e,t,{includeBoundTextElement:!0});return r&&Bt(r)&&!r.isDeleted?r:null}getElementAtPosition(e,t,r){let i=this.getElementsAtPosition(e,t,r?.includeBoundTextElement,r?.includeLockedElements);if(i.length>1){if(r?.preferSelected){for(let a=i.length-1;a>-1;a--)if(this.state.selectedElementIds[i[a].id])return i[a]}let u=i[i.length-1];return a2({x:e,y:t,element:u,shape:nd(u,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()/2,frameNameBound:nr(u)?this.frameNameBoundsCache.get(u):null})?u:i[i.length-2]}return i.length===1?i[0]:null}getElementsAtPosition(e,t,r=!1,i=!1){let u=[],a=this.scene.getNonDeletedElementsMap();return(r&&i?this.scene.getNonDeletedElements():this.scene.getNonDeletedElements().filter((n)=>(i||!n.locked)&&(r||!(Bt(n)&&n.containerId)))).filter((n)=>this.hitElement(e,t,n)).filter((n)=>{let o=Ks(n,a);return o&&this.state.frameRendering.enabled&&this.state.frameRendering.clip?IQA({x:e,y:t},o,a):!0}).filter((n)=>Rh(n)?(u.push(n),!1):!0).concat(u)}getElementHitThreshold(){return yde/this.state.zoom.value}hitElement(e,t,r,i=!0){if(i&&this.state.selectedElementIds[r.id]&&bQA([r],this.state)){let u=eQe(r,this.scene.getNonDeletedElementsMap(),Ni(r)?0:this.getElementHitThreshold());if(D8(X(e,t),u))return!0}return EhA(e,t,dhA(r,this.scene.getNonDeletedElementsMap()))?!0:a2({x:e,y:t,element:r,shape:nd(r,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold(),frameNameBound:nr(r)?this.frameNameBoundsCache.get(r):null})}getTextBindableContainerAtPosition(e,t){let r=this.scene.getNonDeletedElements(),i=this.scene.getSelectedElements(this.state);if(i.length===1)return P1(i[0],!1)?i[0]:null;let u=null;for(let a=r.length-1;a>=0;--a){if(r[a].isDeleted)continue;let[n,o,s,l]=Nr(r[a],this.scene.getNonDeletedElementsMap());if(Jr(r[a])&&a2({x:e,y:t,element:r[a],shape:nd(r[a],this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold()})){u=r[a];break}else if(n<e&&e<s&&o<t&&t<l){u=r[a];break}}return P1(u,!1)?u:null}handleHoverSelectedLinearElement(e,t,r){let i=this.scene.getNonDeletedElementsMap(),u=It.getElement(e.elementId,i);if(u)if(this.state.selectedLinearElement){let a=-1,n=null;a2({x:t,y:r,element:u,shape:nd(u,this.scene.getNonDeletedElementsMap())})?(a=It.getPointIndexUnderCursor(u,i,this.state.zoom,t,r),n=It.getSegmentMidpointHitCoords(e,{x:t,y:r},this.state,this.scene.getNonDeletedElementsMap()),(pt(u)?a===0||a===u.points.length-1:a>=0)||n?Cu(this.interactiveCanvas,iu.POINTER):this.hitElement(t,r,u)&&Cu(this.interactiveCanvas,iu.MOVE)):this.hitElement(t,r,u)&&(!pt(u)||!(u.startBinding||u.endBinding))&&Cu(this.interactiveCanvas,iu.MOVE),this.state.selectedLinearElement.hoverPointIndex!==a&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,hoverPointIndex:a}}),It.arePointsEqual(this.state.selectedLinearElement.segmentMidPointHoveredCoords,n)||this.setState({selectedLinearElement:{...this.state.selectedLinearElement,segmentMidPointHoveredCoords:n}})}else Cu(this.interactiveCanvas,iu.AUTO)}updateGestureOnPointerDown(e){Wi.pointers.set(e.pointerId,{x:e.clientX,y:e.clientY}),Wi.pointers.size===2&&(Wi.lastCenter=wqe(Wi.pointers),Wi.initialScale=this.state.zoom.value,Wi.initialDistance=bqe(Array.from(Wi.pointers.values())))}initialPointerDownState(e){let t=Ru(e,this.state),r=this.scene.getSelectedElements(this.state),[i,u,a,n]=Pi(r),o=r.findIndex(pt)===0;return{origin:t,withCmdOrCtrl:e[PA.CTRL_OR_CMD],originInGrid:kc(Dn(t.x,t.y,e[PA.CTRL_OR_CMD]||o?null:this.getEffectiveGridSize())),scrollbars:xqe(g3A,e.clientX-this.state.offsetLeft,e.clientY-this.state.offsetTop),lastCoords:{...t},originalElements:this.scene.getNonDeletedElements().reduce((s,l)=>(s.set(l.id,j1(l)),s),new Map),resize:{handleType:!1,isResizing:!1,offset:{x:0,y:0},arrowDirection:"origin",center:{x:(a+i)/2,y:(n+u)/2}},hit:{element:null,allHitElements:[],wasAddedToSelection:!1,hasBeenDuplicated:!1,hasHitCommonBoundingBoxOfSelectedElements:this.isHittingCommonBoundingBoxOfSelectedElements(t,r)},drag:{hasOccurred:!1,offset:null},eventListeners:{onMove:null,onUp:null,onKeyUp:null,onKeyDown:null},boxSelection:{hasOccurred:!1}}}handleDraggingScrollBar(e,t){if(!(t.scrollbars.isOverEither&&!this.state.multiElement))return!1;l3A=!0,t.lastCoords.x=e.clientX,t.lastCoords.y=e.clientY;let r=u3A((u)=>{u.target instanceof HTMLElement&&this.handlePointerMoveOverScrollbars(u,t)}),i=Ha(()=>{kL=null,l3A=!1,nB(this.interactiveCanvas,this.state),this.setState({cursorButton:"up"}),this.savePointer(e.clientX,e.clientY,"up"),window.removeEventListener("pointermove",r),window.removeEventListener("pointerup",i),r.flush()});return kL=i,window.addEventListener("pointermove",r),window.addEventListener("pointerup",i),!0}isASelectedElement(e){return e!=null&&this.state.selectedElementIds[e.id]}isHittingCommonBoundingBoxOfSelectedElements(e,t){if(t.length<2)return!1;let r=this.getElementHitThreshold(),[i,u,a,n]=Pi(t);return e.x>i-r&&e.x<a+r&&e.y>u-r&&e.y<n+r}getCurrentItemRoundness(e){return this.state.currentItemRoundness==="round"?{type:r2(e)?mn.ADAPTIVE_RADIUS:mn.PROPORTIONAL_RADIUS}:null}maybeCacheReferenceSnapPoints(e,t,r=!1){Nh({event:e,app:this,selectedElements:t})&&(r||!Id.getReferenceSnapPoints())&&Id.setReferenceSnapPoints(YQe(this.scene.getNonDeletedElements(),t,this.state,this.scene.getNonDeletedElementsMap()))}maybeCacheVisibleGaps(e,t,r=!1){Nh({event:e,app:this,selectedElements:t})&&(r||!Id.getVisibleGaps())&&Id.setVisibleGaps(TQe(this.scene.getNonDeletedElements(),t,this.state,this.scene.getNonDeletedElementsMap()))}onKeyDownFromPointerDownHandler(e){return Ha((t)=>{this.maybeHandleResize(e,t)||this.maybeDragNewGenericElement(e,t)})}onKeyUpFromPointerDownHandler(e){return Ha((t)=>{t.key===PA.ALT&&t.preventDefault(),!this.maybeHandleResize(e,t)&&this.maybeDragNewGenericElement(e,t)})}onPointerMoveFromPointerDownHandler(e){return u3A((t)=>{if(this.state.openDialog?.name==="elementLinkSelector")return;let r=Ru(t,this.state);if(this.state.selectedLinearElement&&this.state.selectedLinearElement.elbowed&&this.state.selectedLinearElement.pointerDownState.segmentMidpoint.index){let[l,g]=Dn(r.x,r.y,t[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),C=this.state.selectedLinearElement.pointerDownState.segmentMidpoint.index;if(C<0){let E=It.getSegmentMidpointHitCoords({...this.state.selectedLinearElement,segmentMidPointHoveredCoords:null},{x:l,y:g},this.state,this.scene.getNonDeletedElementsMap());C=E?It.getSegmentMidPointIndex(this.state.selectedLinearElement,this.state,E,this.scene.getNonDeletedElementsMap()):-1}let B=It.moveFixedSegment(this.state.selectedLinearElement,C,l,g,this.scene.getNonDeletedElementsMap());_n(()=>{this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,segmentMidPointHoveredCoords:B.segmentMidPointHoveredCoords,pointerDownState:B.pointerDownState}})});return}let i=this.lastPointerMoveCoords??e.origin;if(this.lastPointerMoveCoords=r,e.drag.offset===null&&(e.drag.offset=kc(W4e(this.scene.getSelectedElements(this.state),e.origin.x,e.origin.y))),!(t.target instanceof HTMLElement)||this.handlePointerMoveOverScrollbars(t,e))return;if(uB(this.state)){this.handleEraser(t,e,r);return}this.state.activeTool.type==="laser"&&this.laserTrails.addPointToPath(r.x,r.y);let[u,a]=Dn(r.x,r.y,t[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize());if(!e.drag.hasOccurred&&(this.state.activeTool.type==="arrow"||this.state.activeTool.type==="line")&&Ri(X(r.x,r.y),X(e.origin.x,e.origin.y))<Y1)return;if(e.resize.isResizing&&(e.lastCoords.x=r.x,e.lastCoords.y=r.y,this.maybeHandleCrop(e,t)||this.maybeHandleResize(e,t)))return!0;let n=this.scene.getNonDeletedElementsMap();if(this.state.selectedLinearElement){let l=this.state.editingLinearElement||this.state.selectedLinearElement;if(It.shouldAddMidpoint(this.state.selectedLinearElement,r,this.state,n)){let g=It.addMidpoint(this.state.selectedLinearElement,r,this,!t[PA.CTRL_OR_CMD],n);if(!g)return;_n(()=>{this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...this.state.selectedLinearElement,pointerDownState:g.pointerDownState,selectedPointsIndices:g.selectedPointsIndices}}),this.state.editingLinearElement&&this.setState({editingLinearElement:{...this.state.editingLinearElement,pointerDownState:g.pointerDownState,selectedPointsIndices:g.selectedPointsIndices}})});return}else if(l.pointerDownState.segmentMidpoint.value!==null&&!l.pointerDownState.segmentMidpoint.added)return;if(It.handlePointDragging(t,this,r.x,r.y,(g,C)=>{this.maybeSuggestBindingsForLinearElementAtCoords(g,C)},l,this.scene)){e.lastCoords.x=r.x,e.lastCoords.y=r.y,e.drag.hasOccurred=!0,this.state.editingLinearElement&&!this.state.editingLinearElement.isDragging&&this.setState({editingLinearElement:{...this.state.editingLinearElement,isDragging:!0}}),this.state.selectedLinearElement.isDragging||this.setState({selectedLinearElement:{...this.state.selectedLinearElement,isDragging:!0}});return}}let o=e.hit.allHitElements.some((l)=>this.isASelectedElement(l)),s=this.state.editingLinearElement&&t.shiftKey&&this.state.editingLinearElement.elementId===e.hit.element?.id;if((o||e.hit.hasHitCommonBoundingBoxOfSelectedElements)&&!s){let l=this.scene.getSelectedElements(this.state);if(l.every((E)=>E.locked))return;let g=l.find((E)=>nr(E)),C=this.getTopLayerFrameAtSceneCoords(r),B=C&&!g?C:null;if(this.state.frameToHighlight!==B&&_n(()=>{this.setState({frameToHighlight:B})}),e.drag.hasOccurred=!0,l.length>0&&!e.withCmdOrCtrl&&!this.state.editingTextElement&&this.state.activeEmbeddable?.state!=="active"){let E={x:r.x-e.origin.x,y:r.y-e.origin.y},d=[...e.originalElements.values()],I=t.shiftKey;if(I){let p=Math.abs(E.x),m=Math.abs(E.y),f=I&&p<m,D=I&&p>m;f&&(E.x=0),D&&(E.y=0)}if(this.state.croppingElementId){let p=this.scene.getNonDeletedElementsMap().get(this.state.croppingElementId);if(p&&Ni(p)&&p.crop!==null&&e.hit.element===p){let m=p.crop,f=xg(p)&&this.imageCache.get(p.fileId)?.image;if(f&&!(f instanceof Promise)){let D=ba(qo(r.x-i.x,r.y-i.y),Math.max(this.state.zoom.value,2)),[w,b,k,v,S,x]=Nr(p,n),F=Mt(De(X(w,b),X(S,x),p.angle)),T=Mt(De(X(k,b),X(S,x),p.angle)),R=Mt(De(X(w,v),X(S,x),p.angle)),L=m0(Q8(T,F)),M=m0(Q8(R,F)),U=qo(EIA(D,L),EIA(D,M)),Y={...m,x:jr(m.x-U[0]*Math.sign(p.scale[0]),0,f.naturalWidth-m.width),y:jr(m.y-U[1]*Math.sign(p.scale[1]),0,f.naturalHeight-m.height)};xe(p,{crop:Y});return}}}this.maybeCacheVisibleGaps(t,l),this.maybeCacheReferenceSnapPoints(t,l);let{snapOffset:h,snapLines:Q}=HQe(d,E,this,t,this.scene.getNonDeletedElementsMap());if(this.setState({snapLines:Q}),this.state.editingFrame||_4e(e,l,E,this.scene,h,t[PA.CTRL_OR_CMD]?null:this.getEffectiveGridSize()),this.setState({selectedElementsAreBeingDragged:!0,selectionElement:null}),(l.length!==1||!pt(l[0]))&&this.setState({suggestedBindings:CW(l,this.scene.getNonDeletedElementsMap(),this.state.zoom)}),t.altKey&&!e.hit.hasBeenDuplicated){e.hit.hasBeenDuplicated=!0;let p=[],m=[],f=new Map,D=new Map,w=e.hit.element,b=new Set(this.scene.getSelectedElements({selectedElementIds:this.state.selectedElementIds,includeBoundTextElement:!0,includeElementsInFrames:!0}).map((S)=>S.id)),k=this.scene.getElementsIncludingDeleted();for(let S of k){let x=b.has(S.id)||S.id===w?.id&&e.hit.wasAddedToSelection;if(Math.abs(S.x)>1e7||Math.abs(S.x)>1e7||Math.abs(S.width)>1e7||Math.abs(S.height)>1e7){console.error("Alt+dragging element in scene with invalid dimensions",S.x,S.y,S.width,S.height,x);return}if(x){let F=WhA(this.state.editingGroupId,f,S);if(Math.abs(F.x)>1e7||Math.abs(F.x)>1e7||Math.abs(F.width)>1e7||Math.abs(F.height)>1e7){console.error("Alt+dragging duplicated element with invalid dimensions",F.x,F.y,F.width,F.height);return}let T=e.originalElements.get(S.id);if(Math.abs(T.x)>1e7||Math.abs(T.x)>1e7||Math.abs(T.width)>1e7||Math.abs(T.height)>1e7){console.error("Alt+dragging duplicated element with invalid dimensions",T.x,T.y,T.width,T.height);return}xe(F,{x:T.x,y:T.y}),e.originalElements.set(F.id,F),p.push(F),m.push(S),D.set(S.id,F.id)}else p.push(S)}let v=[...p,...m];v=this.props.onDuplicate?.(v,k)||v,tB(v,ar(m)),YhA(p,m,D),vhA(v,m,D,"duplicatesServeAsOld"),BQA(v,m,D),this.scene.replaceAllElements(v),this.maybeCacheVisibleGaps(t,l,!0),this.maybeCacheReferenceSnapPoints(t,l,!0)}return}}if(this.state.selectionElement)e.lastCoords.x=r.x,e.lastCoords.y=r.y,this.maybeDragNewGenericElement(e,t);else{let l=this.state.newElement;if(!l)return;if(l.type==="freedraw"){let g=l.points,C=r.x-l.x,B=r.y-l.y,E=g.length>0&&g[g.length-1];if(!(E&&E[0]===C&&E[1]===B)){let d=l.simulatePressure?l.pressures:[...l.pressures,t.pressure];xe(l,{points:[...g,X(C,B)],pressures:d},!1),this.setState({newElement:l})}}else if(Gr(l)){e.drag.hasOccurred=!0;let g=l.points,C=u-l.x,B=a-l.y;c9(t)&&g.length===2&&({width:C,height:B}=OW(l.x,l.y,r.x,r.y)),g.length===1?xe(l,{points:[...g,X(C,B)]},!1):(g.length===2||g.length>1&&pt(l))&&xe(l,{points:[...g.slice(0,-1),X(C,B)]},!1,{isDragging:!0}),this.setState({newElement:l}),jC(l,!1)&&this.maybeSuggestBindingsForLinearElementAtCoords(l,[r],this.state.startBoundElement)}else e.lastCoords.x=r.x,e.lastCoords.y=r.y,this.maybeDragNewGenericElement(e,t,!1)}if(this.state.activeTool.type==="selection"){e.boxSelection.hasOccurred=!0;let l=this.scene.getNonDeletedElements();if(this.state.editingLinearElement)It.handleBoxSelection(t,this.state,this.setState.bind(this),this.scene.getNonDeletedElementsMap());else{let g=!0;!t.shiftKey&&yn(l,this.state)&&(e.withCmdOrCtrl&&e.hit.element?this.setState((B)=>Z0({...B,selectedElementIds:{[e.hit.element.id]:!0}},this.scene.getNonDeletedElements(),B,this)):g=!1);let C=this.state.selectionElement?JW(l,this.state.selectionElement,this.scene.getNonDeletedElementsMap(),!1):[];this.setState((B)=>{let E={...g&&B.selectedElementIds,...C.reduce((d,I)=>(d[I.id]=!0,d),{})};return e.hit.element&&(C.length?delete E[e.hit.element.id]:E[e.hit.element.id]=!0),B=g?B:{...B,selectedGroupIds:{},editingGroupId:null},{...Z0({editingGroupId:B.editingGroupId,selectedElementIds:E},this.scene.getNonDeletedElements(),B,this),selectedLinearElement:C.length===1&&Gr(C[0])?new It(C[0]):null,showHyperlinkPopup:C.length===1&&(C[0].link||Js(C[0]))?"info":!1}})}}})}handlePointerMoveOverScrollbars(e,t){if(t.scrollbars.isOverHorizontal){let r=e.clientX,i=r-t.lastCoords.x;return this.translateCanvas({scrollX:this.state.scrollX-i/this.state.zoom.value}),t.lastCoords.x=r,!0}if(t.scrollbars.isOverVertical){let r=e.clientY,i=r-t.lastCoords.y;return this.translateCanvas({scrollY:this.state.scrollY-i/this.state.zoom.value}),t.lastCoords.y=r,!0}return!1}onPointerUpFromPointerDownHandler(e){return Ha((t)=>{this.removePointer(t),e.eventListeners.onMove&&e.eventListeners.onMove.flush();let{newElement:r,resizingElement:i,croppingElementId:u,multiElement:a,activeTool:n,isResizing:o,isRotating:s,isCropping:l}=this.state;this.setState((d)=>({isResizing:!1,isRotating:!1,isCropping:!1,resizingElement:null,selectionElement:null,frameToHighlight:null,elementsToHighlight:null,cursorButton:"up",snapLines:y9(d.snapLines,[]),originSnapOffset:null})),this.lastPointerMoveCoords=null,Id.setReferenceSnapPoints(null),Id.setVisibleGaps(null),this.savePointer(t.clientX,t.clientY,"up"),this.setState({selectedElementsAreBeingDragged:!1});let g=this.scene.getNonDeletedElementsMap();if(e.drag.hasOccurred&&e.hit?.element?.id){let d=g.get(e.hit.element.id);Rc(d)&&d.boundElements?.filter((I)=>I.type==="arrow").map((I)=>g.get(I.id)).filter((I)=>pt(I)).forEach((I)=>{I&&xe(I,{},!0)})}if(this.state.editingLinearElement)if(!e.boxSelection.hasOccurred&&e.hit?.element?.id!==this.state.editingLinearElement.elementId)this.actionManager.executeAction(bB);else{let d=It.handlePointerUp(t,this.state.editingLinearElement,this.state,this.scene);d!==this.state.editingLinearElement&&this.setState({editingLinearElement:d,suggestedBindings:[]})}else if(this.state.selectedLinearElement){if(this.state.selectedLinearElement.elbowed){let d=It.getElement(this.state.selectedLinearElement.elementId,this.scene.getNonDeletedElementsMap());d&&xe(d,{},!0)}if(e.hit?.element?.id!==this.state.selectedLinearElement.elementId)this.scene.getSelectedElements(this.state).length>1&&this.setState({selectedLinearElement:null});else{let d=It.handlePointerUp(t,this.state.selectedLinearElement,this.state,this.scene),{startBindingElement:I,endBindingElement:h}=d,Q=this.scene.getElement(d.elementId);jC(Q)&&V8(Q,I,h,g,this.scene),d!==this.state.selectedLinearElement&&this.setState({selectedLinearElement:{...d,selectedPointsIndices:null},suggestedBindings:[]})}}if(this.missingPointerEventCleanupEmitter.clear(),window.removeEventListener("pointermove",e.eventListeners.onMove),window.removeEventListener("pointerup",e.eventListeners.onUp),window.removeEventListener("keydown",e.eventListeners.onKeyDown),window.removeEventListener("keyup",e.eventListeners.onKeyUp),this.state.pendingImageElementId&&this.setState({pendingImageElementId:null}),this.props?.onPointerUp?.(n,e),this.onPointerUpEmitter.trigger(this.state.activeTool,e,t),r?.type==="freedraw"){let d=Ru(t,this.state),I=r.points,h=d.x-r.x,Q=d.y-r.y;h===I[0][0]&&Q===I[0][1]&&(Q+=0.0001,h+=0.0001);let p=r.simulatePressure?[]:[...r.pressures,t.pressure];xe(r,{points:[...I,X(h,Q)],pressures:p,lastCommittedPoint:X(h,Q)}),this.actionManager.executeAction(bB);return}if(Ni(r)){let d=r;try{this.initializeImageDimensions(d),this.setState({selectedElementIds:Gi({[d.id]:!0},this.state)},()=>{this.actionManager.executeAction(bB)})}catch(I){console.error(I),this.scene.replaceAllElements(this.scene.getElementsIncludingDeleted().filter((h)=>h.id!==d.id)),this.actionManager.executeAction(bB)}return}if(Gr(r)){r.points.length>1&&this.store.shouldCaptureIncrement();let d=Ru(t,this.state);!e.drag.hasOccurred&&r&&!a?(xe(r,{points:[...r.points,X(d.x-r.x,d.y-r.y)]}),this.setState({multiElement:r,newElement:r})):e.drag.hasOccurred&&!a&&(U1(this.state)&&jC(r,!1)&&BW(r,this.state,d,this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements()),this.setState({suggestedBindings:[],startBoundElement:null}),n.locked?this.setState((I)=>({newElement:null})):(Mc(this.interactiveCanvas),this.setState((I)=>({newElement:null,activeTool:en(this.state,{type:"selection"}),selectedElementIds:Gi({...I.selectedElementIds,[r.id]:!0},I),selectedLinearElement:new It(r)}))),this.scene.triggerUpdate());return}if(Bt(r)){let d=J_(cu({fontSize:r.fontSize,fontFamily:r.fontFamily}),r.lineHeight);r.width<d&&xe(r,{autoResize:!0}),this.resetCursor(),this.handleTextWysiwyg(r,{isExistingElement:!0})}if(n.type!=="selection"&&r&&g2(r)){this.updateScene({elements:this.scene.getElementsIncludingDeleted().filter((d)=>d.id!==r.id),appState:{newElement:null},captureUpdate:be.NEVER});return}if(nr(r)){let d=U4e(this.scene.getElementsIncludingDeleted(),r,this.scene.getNonDeletedElementsMap());this.scene.replaceAllElements(M9(this.scene.getElementsMapIncludingDeleted(),d,r,this.state))}if(r&&(xe(r,DQA(r)),this.scene.triggerUpdate()),e.drag.hasOccurred){let d=Ru(t,this.state);if(this.state.selectedLinearElement&&this.state.selectedLinearElement.isDragging){let I=this.scene.getElement(this.state.selectedLinearElement.elementId);if(I?.frameId){let h=Ks(I,g);h&&I&&(xh(I,h,this.scene.getNonDeletedElementsMap())||(xe(I,{groupIds:[]}),sS([I],this.scene.getNonDeletedElementsMap()),this.scene.triggerUpdate()))}}else{let I=this.getTopLayerFrameAtSceneCoords(d),h=this.scene.getSelectedElements(this.state),Q=this.scene.getElementsMapIncludingDeleted(),p=(m)=>{if(m.length>0){for(let f of m){let D=f.groupIds.indexOf(this.state.editingGroupId);xe(f,{groupIds:f.groupIds.slice(0,D)},!1)}Q.forEach((f)=>{f.groupIds.length&&Yu(Q,f.groupIds[f.groupIds.length-1]).length<2&&xe(f,{groupIds:[]},!1)}),this.setState({editingGroupId:null})}};if(I&&!this.state.selectedElementIds[I.id]){let m=h.filter((f)=>f.frameId!==I.id&&lS(f,Q,this.state));this.state.editingGroupId&&p(m),Q=M9(Q,m,I,this.state)}else if(!I&&this.state.editingGroupId){let m=h.filter((f)=>f.frameId&&!lS(f,Q,this.state));p(m)}Q=l2(Q,this.state,this),this.scene.replaceAllElements(Q)}}if(i&&this.store.shouldCaptureIncrement(),i&&g2(i)&&this.updateScene({elements:this.scene.getElementsIncludingDeleted().filter((d)=>d.id!==i.id),captureUpdate:be.NEVER}),e.resize.isResizing){let d=l2(this.scene.getElementsIncludingDeleted(),this.state,this),I=this.scene.getSelectedElements(this.state).filter((h)=>nr(h));for(let h of I)d=QQA(d,oS(this.scene.getElementsIncludingDeleted(),h,this.state,g),h,this);this.scene.replaceAllElements(d)}let C=e.hit.element;this.state.selectedLinearElement?.elementId!==C?.id&&Gr(C)&&this.scene.getSelectedElements(this.state).length===1&&this.setState({selectedLinearElement:new It(C)}),(!u||u&&(!C&&!l||C&&C.id!==u))&&this.finishImageCropping();let B=this.lastPointerDownEvent,E=this.lastPointerUpEvent||this.lastPointerMoveEvent;if(uB(this.state)&&B&&E){if(this.eraserTrail.endPath(),Ri(X(B.clientX,B.clientY),X(E.clientX,E.clientY))===0){let d=Ru({clientX:E.clientX,clientY:E.clientY},this.state);this.getElementsAtPosition(d.x,d.y).forEach((I)=>this.elementsPendingErasure.add(I.id))}this.eraseElements();return}else this.elementsPendingErasure.size&&this.restoreReadyToEraseElements();if(C&&!e.drag.hasOccurred&&!e.hit.wasAddedToSelection&&(!this.state.editingLinearElement||!e.boxSelection.hasOccurred)&&(t.shiftKey&&!this.state.editingLinearElement?this.state.selectedElementIds[C.id]?LhA(this.state,C)?this.setState((d)=>{let I={...d.selectedElementIds};for(let h of C.groupIds.flatMap((Q)=>Yu(this.scene.getNonDeletedElements(),Q)))delete I[h.id];return{selectedGroupIds:{...d.selectedElementIds,...C.groupIds.map((h)=>({[h]:!1})).reduce((h,Q)=>({...h,...Q}),{})},selectedElementIds:Gi(I,d)}}):this.state.selectedLinearElement?.isDragging||this.setState((d)=>{let I={...d.selectedElementIds};delete I[C.id];let h=Or(this.scene.getNonDeletedElements(),{selectedElementIds:I});return{...Z0({editingGroupId:d.editingGroupId,selectedElementIds:I},this.scene.getNonDeletedElements(),d,this),selectedLinearElement:h.length===1&&Gr(h[0])?new It(h[0]):d.selectedLinearElement}}):C.frameId&&this.state.selectedElementIds[C.frameId]?this.setState((d)=>{let I={...d.selectedElementIds,[C.id]:!0};return delete I[C.frameId],(this.scene.getElement(C.frameId)?.groupIds??[]).flatMap((h)=>Yu(this.scene.getNonDeletedElements(),h)).forEach((h)=>{delete I[h.id]}),{...Z0({editingGroupId:d.editingGroupId,selectedElementIds:I},this.scene.getNonDeletedElements(),d,this),showHyperlinkPopup:C.link||Js(C)?"info":!1}}):this.setState((d)=>({selectedElementIds:Gi({...d.selectedElementIds,[C.id]:!0},d)})):this.setState((d)=>({...Z0({editingGroupId:d.editingGroupId,selectedElementIds:{[C.id]:!0}},this.scene.getNonDeletedElements(),d,this),selectedLinearElement:Gr(C)&&d.selectedLinearElement?.elementId!==C.id?new It(C):d.selectedLinearElement}))),!(C&&pt(C))&&!e.drag.hasOccurred&&!this.state.isResizing&&(C&&nQe({x:e.origin.x,y:e.origin.y,element:C,shape:nd(C,this.scene.getNonDeletedElementsMap()),threshold:this.getElementHitThreshold(),frameNameBound:nr(C)?this.frameNameBoundsCache.get(C):null},g)||!C&&e.hit.hasHitCommonBoundingBoxOfSelectedElements)){this.state.editingLinearElement?this.setState({editingLinearElement:null}):this.setState({selectedElementIds:Gi({},this.state),selectedGroupIds:{},editingGroupId:null,activeEmbeddable:null}),Cu(this.interactiveCanvas,iu.AUTO);return}if(!n.locked&&n.type!=="freedraw"&&r&&this.setState((d)=>({selectedElementIds:Gi({...d.selectedElementIds,[r.id]:!0},d),showHyperlinkPopup:Js(r)&&!r.link?"editor":d.showHyperlinkPopup})),(n.type!=="selection"||yn(this.scene.getNonDeletedElements(),this.state)||!zo(this.state.previousSelectedElementIds,this.state.selectedElementIds))&&this.store.shouldCaptureIncrement(),e.drag.hasOccurred||o||s||l){let d=this.scene.getSelectedElements(this.state).filter(Gr);j8(d,this.scene.getNonDeletedElementsMap(),this.scene.getNonDeletedElements(),this.scene,U1(this.state),this.state.selectedLinearElement?.selectedPointsIndices??[],this.state.zoom)}if(n.type==="laser"){this.laserTrails.endPath();return}!n.locked&&n.type!=="freedraw"?(Mc(this.interactiveCanvas),this.setState({newElement:null,suggestedBindings:[],activeTool:en(this.state,{type:"selection"})})):this.setState({newElement:null,suggestedBindings:[]}),C&&this.lastPointerUpEvent&&this.lastPointerDownEvent&&this.lastPointerUpEvent.timeStamp-this.lastPointerDownEvent.timeStamp<300&&Wi.pointers.size<=1&&bg(C)&&this.isIframeLikeElementCenter(C,this.lastPointerUpEvent,e.origin.x,e.origin.y)&&this.handleEmbeddableCenterClick(C)})}clearSelection(e){this.setState((t)=>({selectedElementIds:Gi({},t),activeEmbeddable:null,selectedGroupIds:{},editingGroupId:t.editingGroupId&&e!=null&&x9(e,t.editingGroupId)?t.editingGroupId:null})),this.setState({selectedElementIds:Gi({},this.state),activeEmbeddable:null,previousSelectedElementIds:this.state.selectedElementIds})}getTextWysiwygSnappedToCenterPosition(e,t,r,i){if(i){let u=i.x+i.width/2,a=i.y+i.height/2,n=QW(i,r,this.scene.getNonDeletedElementsMap());if(n&&(u=n.x,a=n.y),Math.hypot(e-u,t-a)<fde){let{x:o,y:s}=Sc({sceneX:u,sceneY:a},r);return{viewportX:o,viewportY:s,elementCenterX:u,elementCenterY:a}}}}getCanvasOffsets(){if(this.excalidrawContainerRef?.current){let e=this.excalidrawContainerRef.current,{left:t,top:r}=e.getBoundingClientRect();return{offsetLeft:t,offsetTop:r}}return{offsetLeft:0,offsetTop:0}}async updateLanguage(){let e=k3A.find((t)=>t.code===this.props.langCode)||Y5;await nze(e),this.setAppState({})}},QQr=()=>{(fr.MODE===Ys.TEST||fr.DEV)&&(window.h=window.h||{},Object.defineProperties(window.h,{elements:{configurable:!0,get(){return this.app?.scene.getElementsIncludingDeleted()},set(A){return this.app?.scene.replaceAllElements(hd(A))}},scene:{configurable:!0,get(){return this.app?.scene}}}))};QQr();var pQr=hQr,fQr=()=>{Array.prototype.at||Object.defineProperty(Array.prototype,"at",{value:function(A){if(A=Math.trunc(A)||0,A<0&&(A+=this.length),!(A<0||A>=this.length))return this[A]},writable:!0,enumerable:!1,configurable:!0}),Element.prototype.replaceChildren||(Element.prototype.replaceChildren=function(...A){this.innerHTML="",this.append(...A)})},mQr=fQr,DQr=({children:A})=>{let{FooterCenterTunnel:e}=Zs(),t=k0();return N(e.In,{children:N("div",{className:Se("footer-center zen-mode-transition",{"layer-ui__wrapper__footer-left--transition-bottom":t.zenModeEnabled}),children:A})})};DQr.displayName="FooterCenter";var yQr=()=>N("svg",{viewBox:"0 0 40 40",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"ExcalidrawLogo-icon",children:N("path",{d:"M39.9 32.889a.326.326 0 0 0-.279-.056c-2.094-3.083-4.774-6-7.343-8.833l-.419-.472a.212.212 0 0 0-.056-.139.586.586 0 0 0-.167-.111l-.084-.083-.056-.056c-.084-.167-.28-.278-.475-.167-.782.39-1.507.973-2.206 1.528-.92.722-1.842 1.445-2.708 2.25a8.405 8.405 0 0 0-.977 1.028c-.14.194-.028.361.14.444-.615.611-1.23 1.223-1.843 1.861a.315.315 0 0 0-.084.223c0 .083.056.166.111.194l1.09.833v.028c1.535 1.528 4.244 3.611 7.12 5.861.418.334.865.667 1.284 1 .195.223.39.473.558.695.084.11.28.139.391.055.056.056.14.111.196.167a.398.398 0 0 0 .167.056.255.255 0 0 0 .224-.111.394.394 0 0 0 .055-.167c.029 0 .028.028.056.028a.318.318 0 0 0 .224-.084l5.082-5.528a.309.309 0 0 0 0-.444Zm-14.63-1.917a.485.485 0 0 0 .111.14c.586.5 1.2 1 1.843 1.555l-2.569-1.945-.251-.166c-.056-.028-.112-.084-.168-.111l-.195-.167.056-.056.055-.055.112-.111c.866-.861 2.346-2.306 3.1-3.028-.81.805-2.43 3.167-2.095 3.944Zm8.767 6.89-2.122-1.612a44.713 44.713 0 0 0-2.625-2.5c1.145.861 2.122 1.611 2.262 1.75 1.117.972 1.06.806 1.815 1.445l.921.666a1.06 1.06 0 0 1-.251.25Zm.558.416-.056-.028c.084-.055.168-.111.252-.194l-.196.222ZM1.089 5.75c.055.361.14.722.195 1.056.335 1.833.67 3.5 1.284 4.75l.252.944c.084.361.223.806.363.917 1.424 1.25 3.602 3.11 5.947 4.889a.295.295 0 0 0 .363 0s0 .027.028.027a.254.254 0 0 0 .196.084.318.318 0 0 0 .223-.084c2.988-3.305 5.221-6.027 6.813-8.305.112-.111.14-.278.14-.417.111-.111.195-.25.307-.333.111-.111.111-.306 0-.39l-.028-.027c0-.055-.028-.139-.084-.167-.698-.666-1.2-1.138-1.731-1.638-.922-.862-1.871-1.75-3.881-3.75l-.028-.028c-.028-.028-.056-.056-.112-.056-.558-.194-1.703-.389-3.127-.639C6.087 2.223 3.21 1.723.614.944c0 0-.168 0-.196.028l-.083.084c-.028.027-.056.055-.224.11h.056-.056c.028.167.028.278.084.473 0 .055.112.5.112.555l.782 3.556Zm15.496 3.278-.335-.334c.084.112.196.195.335.334Zm-3.546 4.666-.056.056c0-.028.028-.056.056-.056Zm-2.038-10c.168.167.866.834 1.033.973-.726-.334-2.54-1.167-3.379-1.445.838.167 1.983.334 2.346.472ZM1.424 2.306c.419.722.754 3.222 1.089 5.666-.196-.778-.335-1.555-.503-2.278-.251-1.277-.503-2.416-.838-3.416.056 0 .14 0 .252.028Zm-.168-.584c-.112 0-.223-.028-.307-.028 0-.027 0-.055-.028-.055.14 0 .223.028.335.083Zm-1.089.222c0-.027 0-.027 0 0ZM39.453 1.333c.028-.11-.558-.61-.363-.639.42-.027.42-.666 0-.666-.558.028-1.144.166-1.675.25-.977.194-1.982.389-2.96.61-2.205.473-4.383.973-6.561 1.557-.67.194-1.424.333-2.066.666-.224.111-.196.333-.084.472-.056.028-.084.028-.14.056-.195.028-.363.056-.558.083-.168.028-.252.167-.224.334 0 .027.028.083.028.11-1.173 1.556-2.485 3.195-3.909 4.945-1.396 1.611-2.876 3.306-4.356 5.056-4.719 5.5-10.052 11.75-15.943 17.25a.268.268 0 0 0 0 .389c.028.027.056.055.084.055-.084.084-.168.14-.252.222-.056.056-.084.111-.084.167a.605.605 0 0 0-.111.139c-.112.111-.112.305.028.389.111.11.307.11.39-.028.029-.028.029-.056.056-.056a.44.44 0 0 1 .615 0c.335.362.67.723.977 1.028l-.698-.583c-.112-.111-.307-.083-.39.028-.113.11-.085.305.027.389l7.427 6.194c.056.056.112.056.196.056s.14-.028.195-.084l.168-.166c.028.027.083.027.111.027.084 0 .14-.027.196-.083 10.052-10.055 18.15-17.639 27.42-24.417.083-.055.111-.166.111-.25.112 0 .196-.083.251-.194 1.704-5.194 2.039-9.806 2.15-12.083v-.028c0-.028.028-.056.028-.083.028-.056.028-.084.028-.084a1.626 1.626 0 0 0-.111-1.028ZM21.472 9.5c.446-.5.893-1.028 1.34-1.5-2.876 3.778-7.65 9.583-14.408 16.5 4.607-5.083 9.242-10.333 13.068-15ZM5.193 35.778h.084-.084Zm3.462 3.194c-.027-.028-.027-.028 0-.028v.028Zm4.16-3.583c.224-.25.448-.472.699-.722 0 0 0 .027.028.027-.252.223-.475.445-.726.695Zm1.146-1.111c.14-.14.279-.334.446-.5l.028-.028c1.648-1.694 3.351-3.389 5.082-5.111l.028-.028c.419-.333.921-.694 1.368-1.028a379.003 379.003 0 0 0-6.952 6.695ZM24.794 6.472c-.921 1.195-1.954 2.778-2.82 4.028-2.736 3.944-11.532 13.583-11.727 13.75a1976.983 1976.983 0 0 1-8.042 7.639l-.167.167c-.14-.167-.14-.417.028-.556C14.49 19.861 22.03 10.167 25.074 5.917c-.084.194-.14.36-.28.555Zm4.83 5.695c-1.116-.64-1.646-1.64-1.34-2.611l.084-.334c.028-.083.084-.194.14-.277.307-.5.754-.917 1.257-1.167.027 0 .055 0 .083-.028-.028-.056-.028-.139-.028-.222.028-.167.14-.278.335-.278.335 0 1.369.306 1.76.639.111.083.223.194.335.305.14.167.363.445.474.667.056.028.112.306.196.445.056.222.111.472.084.694-.028.028 0 .194-.028.194a2.668 2.668 0 0 1-.363 1.028c-.028.028-.028.056-.056.084l-.028.027c-.14.223-.335.417-.53.556-.643.444-1.369.583-2.095.389 0 0-.195-.084-.28-.111Zm8.154-.834a39.098 39.098 0 0 1-.893 3.167c0 .028-.028.083 0 .111-.056 0-.084.028-.14.056-2.206 1.61-4.356 3.305-6.506 5.028 1.843-1.64 3.686-3.306 5.613-4.945.558-.5.949-1.139 1.06-1.861l.28-1.667v-.055c.14-.334.67-.195.586.166Z",fill:"currentColor"})}),wQr=()=>cA("svg",{viewBox:"0 0 450 55",xmlns:"http://www.w3.org/2000/svg",fill:"none",className:"ExcalidrawLogo-text",children:[N("path",{d:"M429.27 96.74c2.47-1.39 4.78-3.02 6.83-4.95 1.43-1.35 2.73-2.86 3.81-4.51-.66.9-1.4 1.77-2.23 2.59-2.91 2.84-5.72 5.09-8.42 6.87h.01ZM343.6 69.36c.33 3.13.58 6.27.79 9.4.09 1.37.18 2.75.25 4.12-.12-4.46-.27-8.93-.5-13.39-.11-2.08-.24-4.16-.4-6.24-.06 1.79-.11 3.85-.13 6.11h-.01ZM378.47 98.34c.01-.37.07-1.13.01-6.51-.11 1.9-.22 3.81-.31 5.71-.07 1.42-.22 2.91-.16 4.35.39.03.78.07 1.17.1-.92-.85-.76-2.01-.72-3.66l.01.01ZM344.09 86.12c-.09-2.41-.22-4.83-.39-7.24v12.21c.15-.05.32-.09.47-.14.05-1.61-.03-3.23-.09-4.83h.01ZM440.69 66.79c-.22-.34-.45-.67-.69-.99-3.71-4.87-9.91-7.14-15.65-8.55-1.05-.26-2.12-.49-3.18-.71 2.29.59 4.48 1.26 6.64 2.02 7.19 2.54 10.57 5.41 12.88 8.23ZM305.09 72.46l1.2 3.6c.84 2.53 1.67 5.06 2.46 7.61.24.78.5 1.57.73 2.36.22-.04.44-.08.67-.12a776.9 776.9 0 0 1-5.01-13.57c-.02.04-.03.09-.05.13v-.01ZM345.49 90.25v.31c1.48-.42 3.05-.83 4.66-1.2-1.56.25-3.12.52-4.66.89ZM371.02 90.22c0-.57-.04-1.14-.11-1.71-.06-.02-.12-.04-.19-.05-.21-.05-.43-.08-.65-.11.42.16.74.88.95 1.87ZM398.93 54.23c-.13 0-.27-.01-.4-.02l.03.4c.11-.15.23-.27.37-.38ZM401.57 62.28v-.15c-1.22-.24-2.86-.61-3.23-1.25-.09-.15-.18-.51-.27-.98-.09.37-.2.73-.33 1.09 1.24.56 2.52.98 3.83 1.29ZM421.73 88.68c-2.97 1.65-6.28 3.12-9.69 3.68v.18c4.72-.14 11.63-3.85 16.33-8.38-2.04 1.75-4.33 3.24-6.63 4.53l-.01-.01ZM411.28 80.92c-.05-1.2-.09-2.4-.15-3.6-.21 5.66-.46 11.38-.47 14.51.24-.02.48-.04.71-.07.15-3.61.05-7.23-.09-10.83v-.01Z",transform:"translate(-144.023 -51.76)"}),N("path",{d:"M425.38 67.41c-3.5-1.45-7.19-2.57-14.06-3.62.09 1.97.06 4.88-.03 8.12.03.04.06.09.06.15.19 1.36.28 2.73.37 4.1.25 3.77.39 7.55.41 11.33 0 1.38-.01 2.76-.07 4.13 1.4-.25 2.78-.65 4.12-1.15 4.07-1.5 7.94-3.78 11.28-6.54 2.33-1.92 5.13-4.49 5.88-7.58.63-3.53-2.45-6.68-7.97-8.96l.01.02ZM411.35 92.53v-.06l-.34.03c.11.01.22.03.34.03ZM314.26 64.06c-.23-.59-.47-1.17-.7-1.75.57 1.62 1.11 3.25 1.6 4.9l.15.54 2.35 6.05c.32.82.66 1.64.98 2.46-1.38-4.1-2.83-8.17-4.39-12.2h.01ZM156.82 103.07c-.18.13-.38.23-.58.33 1.32-.03 2.66-.2 3.93-.34.86-.09 1.72-.22 2.58-.33-2.12.1-4.12.17-5.94.34h.01ZM210.14 68.88s.03.04.05.07c.18-.31.39-.64.58-.96-.21.3-.42.6-.64.89h.01ZM201.65 82.8c-.5.77-1.02 1.56-1.49 2.37 1.11-1.55 2.21-3.1 3.2-4.59-.23.23-.49.51-.75.79-.32.47-.65.95-.96 1.43ZM194.03 98.66c-.33-.4-.65-.84-1.05-1.17-.24-.2-.07-.49.17-.56-.23-.26-.42-.5-.63-.75 1.51-2.55 3.93-5.87 6.4-9.28-.17-.08-.29-.28-.2-.49.04-.09.09-.17.13-.26-1.21 1.78-2.42 3.55-3.61 5.33-.87 1.31-1.74 2.64-2.54 4-.29.5-.63 1.04-.87 1.61.81.65 1.63 1.27 2.47 1.88-.09-.11-.18-.21-.27-.32v.01ZM307.79 82.93c-1-3.17-2.05-6.32-3.1-9.48-1.62 4.08-3.69 9.17-6.16 15.19 3.32-1.04 6.77-1.87 10.27-2.5-.32-1.08-.67-2.15-1.01-3.21ZM149.5 80.7c.05-1.71.04-3.43 0-5.14-.1 2.26-.16 4.51-.22 6.77-.02.73-.03 1.46-.04 2.19.14-1.27.2-2.55.24-3.82h.02ZM228.98 98.3c.39 1.25.91 3.03.94 3.91.06-.03.12-.07.17-.1.08-1.29-.55-2.65-1.11-3.81ZM307.72 53.36c.81.5 1.53 1.04 2.07 1.49-.38-.8-.78-1.58-1.21-2.35-.17.03-.34.06-.51.11-.43.12-.86.26-1.29.41.35-.01.53.1.94.34ZM283.69 96.14c3.91-7.25 6.89-13.35 8.88-18.15l1.1-2.66c-1.27 2.64-2.56 5.27-3.83 7.9-1.53 3.15-3.06 6.31-4.58 9.47-.87 1.81-1.76 3.62-2.54 5.47.04.02.07.04.11.07.05.05.1.09.15.14.05-.73.27-1.48.71-2.24ZM289.92 103.23s-.04.01-.05.03c0-.02.04-.03.05-.04.05-.05.11-.1.16-.15l.21-.21c-.55 0-1.5-.27-2.55-.72.4.26.8.51 1.22.74.24.13.48.26.73.37.05.02.1.03.14.05a.27.27 0 0 1 .08-.07h.01ZM269.23 68.49c-.39-.19-.82-.48-1.33-.87-3.06-1.56-6.31-2.78-9.36-2.35-3.5.49-5.7 1.11-7.74 2.44 5.71-2.6 12.82-2.07 18.44.79l-.01-.01ZM177.87 53.69l1.06.03c-.96-.22-2-.25-2.89-.3-4.95-.26-9.99.33-14.86 1.19-2.44.43-4.88.95-7.28 1.59 9.09-1.76 15.69-2.77 23.97-2.51ZM219.85 55.51c-.18.12-.36.27-.56.45-.45.53-.86 1.11-1.26 1.66-1.91 2.61-3.71 5.31-5.57 7.95l-.12.18 8.05-10.11c-.18-.05-.36-.1-.55-.13h.01ZM510.71 54.1c.12-.15.29-.3.53-.45.69-.4 3.72-.63 5.87-.74-.36-.02-.73-.04-1.09-.05-1.84-.03-3.67.09-5.49.35.05.3.12.59.18.88v.01ZM510.76 86.02c1.37-3.07 2.49-6.27 3.57-9.46.55-1.64 1.12-3.3 1.6-4.97-1.59 4.01-3.67 9.14-6.2 15.3.24-.08.5-.14.74-.22.1-.22.19-.44.29-.65ZM566.95 75.76c.11-.02.23.03.31.11-.05-.13-.09-.26-.14-.39-.05.09-.11.18-.17.28ZM511.33 86.41c3.08-.89 6.24-1.62 9.46-2.14-1.51-3.98-2.98-7.96-4.39-11.87-.05.15-.09.31-.14.46-1.02 3.32-2.15 6.61-3.39 9.85-.48 1.25-.98 2.49-1.53 3.7h-.01ZM578.24 74.45c.11-.44.23-.87.35-1.31-.31.7-.64 1.39-.97 2.08.09.21.19.4.28.61.12-.46.23-.92.35-1.38h-.01ZM520.62 53.11c-.09 0-.18-.01-.28-.02.38.34.29 1.08.93 2.53l6.65 17.15c2.2 5.68 4.69 11.36 7.41 16.87l1.06 2.17c-2.95-7.05-5.92-14.08-8.87-21.13-1.58-3.79-3.16-7.59-4.7-11.4-.78-1.92-1.73-3.89-2.25-5.91-.03-.1 0-.19.04-.26h.01ZM578.78 77.87c1.45-5.77 3.07-10.43 3.58-13.36.05-.34.16-.88.31-1.55-.67 1.79-1.37 3.56-2.08 5.33-.12.43-.23.86-.35 1.29-.65 2.43-1.29 4.86-1.9 7.3.14.33.29.65.43 1l.01-.01ZM545.3 94.66c.02-.44.03-.83.05-1.12.02-1.01.05-2.02.11-3.02.03-6.66-.46-14.33-1.46-22.8-.13-.42-.27-1.24-.56-2.89 0-.02 0-.04-.01-.06.62 6.61.95 13.25 1.32 19.87.17 3.08.33 6.16.52 9.23.02.25.03.52.04.78l-.01.01ZM580.77 102.81c.13.2.27.38.37.49.27-.11.53-.22.8-.32-.43.09-.82.05-1.17-.16v-.01ZM530.48 104.07h.33c-.36-.13-.71-.32-1.04-.56.14.24.3.47.45.7.06-.08.14-.13.26-.13v-.01ZM542.63 58.82c.06.23.11.47.15.71.14-.33.36-.62.7-.86-.28.05-.57.11-.85.15ZM583.81 57.87c.15-.7.29-1.41.42-2.11-.14.45-.28.9-.42 1.34-.46 1.44-.89 2.89-1.31 4.34.44-1.19.88-2.37 1.31-3.57ZM523.62 91.48c-4.66 1.17-9.05 2.89-14.02 5.27 4.65-1.84 9.48-3.29 14.28-4.63-.09-.22-.17-.41-.26-.64ZM460.64 78.3c-.04-2.9-.11-5.81-.28-8.71-.1-1.68-.17-3.43-.5-5.09-.07.02-.14.03-.2.05.3 6.54.45 12.17.51 17.12.17-.07.34-.14.51-.2 0-1.06-.01-2.11-.03-3.17h-.01ZM470.63 63.24c-3.38-.26-6.81.32-10.1 1.1.41 2.01.47 4.14.57 6.18.18 3.55.25 7.11.27 10.67 3.31-1.38 6.5-3.12 9.3-5.35 1.96-1.56 3.86-3.41 5.02-5.66.73-1.41 1.19-3.22.26-4.65-1.09-1.7-3.46-2.14-5.32-2.29ZM460.29 63.68c1-.24 2.01-.46 3.04-.65-1.15.16-2.37.38-3.71.69v.13c.07-.02.15-.04.22-.05.11-.13.3-.18.45-.11v-.01ZM457.24 100.96c.43-.03.86-.07 1.29-.11.14-.49.27-.99.38-1.49-.44.7-1 1.23-1.67 1.6ZM482.88 104.98c-.18.23-.36.38-.55.47.14.09.27.19.4.28a70.76 70.76 0 0 0 4.37-4.63c.76-.89 1.52-1.81 2.19-2.77-.3-.27-.61-.53-.92-.79-.07 1.94-4.62 6.32-5.49 7.45v-.01Z",transform:"translate(-144.023 -51.76)"}),N("path",{d:"M474.36 63.31c-.4-.16-.84-.27-1.29-.37 1.56.42 3.08 1.22 3.76 2.74.62 1.4.32 2.95-.28 4.32.7-1.22.94-2.34.74-3.47-.24-1.33-1.19-2.54-2.93-3.21v-.01ZM477.34 89.18c-1.2-.81-2.4-1.62-3.6-2.42-.14.1-.26.19-.4.29 1.4.67 2.73 1.39 4 2.13ZM465.88 93.85c.37.25.74.5 1.1.75.46.32.92.65 1.38.97-1.57-1.2-2.01-1.61-2.49-1.72h.01ZM574.92 90.06c-2.28-5.21-4.93-11.13-5.67-12.26-.1-.15-1.57-3.01-1.63-3.08 0 0-.01.02-.02.02.4 1.37 1.09 2.69 1.65 3.99 2.14 4.95 4.36 9.86 6.67 14.73.6 1.26 1.21 2.52 1.83 3.78-.75-2.01-1.64-4.45-2.83-7.18ZM448.73 65.29c.1.2.22.38.34.57.22-.02.43-.06.65-.08v-.08c-.14-.05-.25 0-.99-.41ZM460.16 94.81c-.02.31-.06.59-.1.89-.03 1.71-.33 3.43-.79 5.07.15-.02.3-.03.45-.05.01-.04.02-.08.03-.11.09-.34.15-.69.2-1.03.17-1.07.25-2.16.33-3.24.05-.69.08-1.39.12-2.08-.27.1-.27.26-.24.57v-.02Z",transform:"translate(-144.023 -51.76)"}),N("path",{d:"m328.67 98.12-3.22-6.58c-1.29-2.63-2.53-5.29-3.72-7.97-.25-.85-.52-1.69-.79-2.53-.81-2.57-1.67-5.12-2.55-7.67-1.92-5.53-3.9-11.08-6.32-16.41-.72-1.58-1.46-3.44-2.63-4.79-.03-.17-.16-.29-.34-.36a.282.282 0 0 0-.23-.04c-.06-.01-.12 0-.18.01-.74.06-1.5.38-2.19.61-2.22.77-4.4 1.64-6.63 2.38-.03-.08-.06-.16-.09-.25-.15-.42-.82-.24-.67.19.03.09.07.19.1.28l-.18.06c-.36.11-.28.6 0 .68.18 1.18.63 2.36.98 3.49.03.09.06.17.08.26-.08.23-.17.46-.24.64-.37.98-.79 1.94-1.21 2.9-1.27 2.89-2.62 5.75-3.98 8.6-3.18 6.67-6.44 13.31-9.64 19.97-1.08 2.25-2.2 4.5-3.15 6.81-.13.32.24.5.5.37 1.34 1.33 2.84 2.5 4.4 3.57.65.44 1.31.87 2.01 1.24.4.22.86.48 1.33.5.24.01.35-.19.33-.37.11-.1.21-.21.28-.28.41-.41.81-.84 1.2-1.26.85-.92 1.69-1.87 2.5-2.84 6.31-2.34 12.6-4.31 18.71-5.84 2.14 5.3 3.43 8.43 3.97 9.58.55 1.05 1.15 1.88 1.82 2.52 1.32.56 6.96-.03 9.23-1.96.87-1.28 1.19-2.67.93-4.15-.09-.5-.22-.95-.4-1.33l-.01-.03Zm-20.09-45.61c.43.77.83 1.56 1.21 2.35-.54-.45-1.27-.99-2.07-1.49-.42-.24-.6-.35-.94-.34.43-.15.85-.29 1.29-.41.17-.05.34-.08.51-.11Zm-25.86 45.66c.78-1.85 1.67-3.66 2.54-5.47 1.51-3.16 3.05-6.31 4.58-9.47 1.28-2.63 2.56-5.26 3.83-7.9l-1.1 2.66c-1.99 4.79-4.97 10.9-8.88 18.15-.43.76-.66 1.51-.71 2.24-.05-.05-.1-.09-.15-.14a.259.259 0 0 0-.11-.07Zm6.24 4.71c-.42-.23-.82-.48-1.22-.74 1.05.45 2 .72 2.55.72l-.21.21c-.05.05-.11.1-.16.15-.01.01-.04.03-.05.04 0-.02.03-.02.05-.03a.27.27 0 0 0-.08.07c-.05-.02-.1-.03-.14-.05-.25-.1-.49-.24-.73-.37h-.01Zm15.73-29.43c1.05 3.15 2.1 6.31 3.1 9.48.34 1.06.69 2.13 1.01 3.21-3.5.63-6.95 1.46-10.27 2.5 2.48-6.03 4.54-11.11 6.16-15.19Zm4.79 12.57c-.23-.79-.49-1.58-.73-2.36-.79-2.54-1.63-5.08-2.46-7.61l-1.2-3.6c.02-.04.04-.09.05-.13 1.6 4.45 3.28 9 5.01 13.57l-.67.12v.01Zm5.83-18.27-.15-.54c-.49-1.64-1.03-3.28-1.6-4.9.23.58.47 1.17.7 1.75 1.56 4.03 3.01 8.1 4.39 12.2-.33-.82-.67-1.64-.98-2.46l-2.35-6.05h-.01ZM390.43 79.37c-.13-10.43-.22-17.5-.24-19.97-.24-1.6.21-2.88-.65-3.65-.14-.13-.32-.23-.52-.32h.03c.45 0 .45-.69 0-.7-1.75-.03-3.5-.04-5.25-.14-1.38-.08-2.76-.21-4.15-.31-.07 0-.12.01-.17.04-.21-.07-.47.03-.45.31l.03.45c-.11.14-.19.3-.22.5-.21 1.26-.32 13.67-.36 23.59-.32 5.79-.67 11.57-.97 17.36-.09 1.73-.29 3.54-.21 5.3-.39.02-.38.64.04.69v.12c.05.44.74.45.7 0v-.06c1.1.09 2.2.21 3.3.3 1.14.19 2.44.2 3.29.17 1.73-.05 2.92-.05 3.8-.37.45-.05.9-.11 1.35-.17.44-.06.25-.73-.19-.67h-.01c.24-.32.45-.72.62-1.25.66-1.84.41-6.36.34-11.33l-.13-9.9.02.01Zm-12.26 18.17c.09-1.91.2-3.81.31-5.71.06 5.38 0 6.14-.01 6.51-.05 1.65-.21 2.81.72 3.66-.39-.04-.78-.07-1.17-.1-.06-1.44.09-2.93.16-4.35l-.01-.01ZM588.97 53.85c-2.06-.25-3.17-.51-3.76-.6a.3.3 0 0 1 .04-.08c.22-.39-.39-.75-.6-.35-.56 1.02-.9 2.19-1.26 3.29-.61 1.88-1.17 3.78-1.72 5.68-.63 2.19-1.24 4.39-1.83 6.59-.81 2.03-1.67 4.05-2.61 6.03-1.7-3.64-3.11-6.04-4.03-7.57-2.26-3.74-2.85-5.48-3.57-6.08l.31-.09c.43-.12.25-.8-.19-.67-1.06.3-2.12.6-3.17.95-.93.32-1.85.69-2.76 1.07-.13.05-.19.16-.22.27-.04.02-.08.05-.11.07-.04-.06-.07-.12-.11-.18a.354.354 0 0 0-.48-.12c-.16.09-.22.32-.13.48l.33.54c0 .09.02.18.06.28.51 1.16.78 1.38.72 1.47-2.42 3.44-5.41 7.86-6.2 9.1-1.27 1.97-2.01 3.14-2.45 3.84l-.91-6.56-.43-4.1c-.19-1.85-.37-3.23-.53-4.13-.19-1.1-.3-2.15-.45-3.16-.2-1.36-.29-2.06-.47-2.42h.04c.45.02.45-.68 0-.7-3.43-.16-6.81.94-10.17 1.48-.24-.22-.73-.04-.58.32.24.59.33 1.25.43 1.87.17 1.06.29 2.13.4 3.2.32 3.09.53 6.2.74 9.3.44 6.75.77 13.51 1.17 20.26.11 1.95.13 3.96.46 5.89.05.3.37.31.55.14.74 1.71 2.87 1.27 6.13 1.27 1.34 0 2.39.04 2.99-.11.02.32.48.53.63.18 3.61-8.26 7.41-16.46 12.05-24.2.03-.05.04-.1.05-.15.3.73.64 1.45.94 2.16.97 2.26 1.97 4.52 2.98 6.76 2.26 5.03 4.54 10.07 7.09 14.96.47.9.94 1.79 1.47 2.65.2.32.4.67.66.96-.18.25 0 .68.34.54.91-.38 1.82-.75 2.76-1.07 1.04-.35 2.11-.65 3.17-.95.39-.11.28-.66-.07-.68.62-.4.95-.96.87-1.91-.3-3.34.72-7.47.86-8.52l2.14-11.43c1.75-10.74 3.13-17.51 3.23-20.86.02-.49.08-2.84.13-3.24.17-1.25.48-1-4.96-1.65l.03-.02Zm-46.19 5.67c-.04-.24-.09-.48-.15-.71l.85-.15c-.34.24-.56.53-.7.86Zm1.95 25.12c-.36-6.63-.7-13.26-1.32-19.87 0 .02 0 .04.01.06.29 1.65.44 2.47.56 2.89 1 8.46 1.5 16.14 1.46 22.8-.06.99-.1 2-.11 3.02-.01.29-.03.68-.05 1.12-.01-.26-.03-.53-.04-.78-.19-3.08-.35-6.16-.52-9.23l.01-.01Zm36.4 18.66c-.11-.11-.24-.29-.37-.49.35.21.74.26 1.17.16-.27.11-.53.22-.8.32v.01Zm-.89-33.72c.12-.43.23-.86.35-1.29.71-1.77 1.41-3.55 2.08-5.33-.15.68-.26 1.22-.31 1.55-.5 2.94-2.13 7.59-3.58 13.36-.15-.35-.29-.66-.43-1 .61-2.44 1.25-4.87 1.9-7.3l-.01.01Zm3.56-12.48c.14-.44.28-.89.42-1.34-.13.7-.27 1.41-.42 2.11-.43 1.19-.86 2.38-1.31 3.57.42-1.45.85-2.9 1.31-4.34Zm-5.22 16.05c-.11.44-.23.87-.35 1.31-.12.46-.23.92-.35 1.38-.1-.22-.19-.4-.28-.61.34-.69.66-1.38.97-2.08h.01Zm-11.64 2.62c.06-.1.12-.19.17-.28.05.13.09.26.14.39a.398.398 0 0 0-.31-.11Zm2.3 2.98c-.56-1.3-1.25-2.63-1.65-3.99 0 0 .01-.02.02-.02.06.08 1.52 2.93 1.63 3.08.73 1.13 3.38 7.04 5.67 12.26 1.2 2.73 2.08 5.17 2.83 7.18-.62-1.25-1.23-2.51-1.83-3.78-2.31-4.87-4.53-9.78-6.67-14.73ZM275.92 87.03c-1.06-2.18-1.13-3.45-2.44-2.93-1.52.57-2.94 1.3-4.5 2.1-1.4.72-2.68 1.44-3.92 2.12.01-.25-.24-.5-.51-.34-4.8 2.93-12.41 4.7-17.28 1.31-1.98-1.77-3.32-4.15-3.97-5.78-.29-.95-.49-1.94-.63-2.93-.14-3.34 1.58-6.53 3.9-9.12.8-.79 1.68-1.51 2.66-2.12 3.7-2.3 8.22-3.07 12.51-2.51 2.71.35 5.32 1.24 7.71 2.55.39.22.75-.39.35-.6-.18-.1-.37-.18-.55-.27.56.27 1.03.33 1.51.19l-.48.39c-.15.11-.23.3-.13.48.09.15.33.24.48.13 1.3-.97 2.46-2.09 3.45-3.37.37-.29.64-.6.65-.97v-.02c.08-.33-.03-.7-.21-1.08-.31-.87-.98-2.01-2.19-3.26-2.43-2.52-3.79-3.45-5.68-4.26-1.14-.49-3.12-1.06-4.42-1.23-3.28-.42-10.64-1.21-18.18 4.11-7.74 5.46-11.94 12.3-12.23 20.61-.08 2.06.04 3.98.34 5.71.74 4.18 2.57 8 5.44 11.34 4.26 4.99 9.76 7.52 16.34 7.52 4.85 0 9.69-1.77 14.89-4.62.23-.12.45-.23.68-.35 2.19-1.1 4.37-2.23 6.46-3.5.49-.3 1.03-.61 1.5-.98 1.47-.87 1.11-1.12.49-2.95-.39-1.14-.76-2.7-2.06-5.36l.02-.01Zm-17.38-21.76c3.05-.42 6.31.79 9.36 2.35.51.39.94.68 1.33.87-5.61-2.86-12.72-3.39-18.44-.79 2.05-1.33 4.24-1.95 7.74-2.44l.01.01ZM443.67 72.67c-.4-2.2-1.15-4.33-2.37-6.22-1.49-2.32-3.58-4.19-5.91-5.64-6.17-3.81-13.75-5.11-20.83-6.01-3.23-.41-6.47-.69-9.72-.92l-1.39-.12c-.85-.07-1.52-.1-2.05-.1-1.08-.06-2.17-.12-3.25-.17-.08 0-.14.02-.19.05-.1.05-.18.14-.16.3.27 2.55-.01 5.12-.92 7.52-.15.38.4.56.62.28 1.32.59 2.68 1.05 4.08 1.37 0 2.78-.14 7.58-.33 12.91 0 0 0 .02-.01.03-.61 3.66-.79 7.42-1 11.12-.23 4.01-.43 8.03-.44 12.05 0 .64 0 1.28.03 1.93.02.31 0 .68.15.96.06.11.14.16.24.17-.2.17-.21.54.11.59 3.83.67 7.78.71 11.68.25 2.3-.19 4.87-.65 7.65-1.56 1.85-.54 3.67-1.18 5.43-1.91 7.2-3.02 14.31-8.07 17.35-15.53.76-1.86 1.17-3.8 1.31-5.75.3-1.93.28-3.82-.09-5.58l.01-.02Zm-19.32-15.42c5.74 1.41 11.94 3.68 15.65 8.55.25.32.47.65.69.99-2.3-2.82-5.68-5.69-12.88-8.23-2.16-.76-4.35-1.43-6.64-2.02 1.06.21 2.13.45 3.18.71Zm-25.82-3.04c.13 0 .27.01.4.02-.14.1-.26.23-.37.38 0-.13-.02-.26-.03-.4Zm34.82 22.17c-.75 3.09-3.55 5.66-5.88 7.58-3.35 2.76-7.21 5.03-11.28 6.54-1.33.49-2.71.9-4.12 1.15.06-1.38.08-2.76.07-4.13-.02-3.78-.16-7.56-.41-11.33-.09-1.37-.18-2.74-.37-4.1 0-.06-.03-.11-.06-.15.09-3.25.12-6.16.03-8.12 6.86 1.05 10.56 2.17 14.06 3.62 5.52 2.28 8.59 5.44 7.97 8.96l-.01-.02Zm-22 16.15c-.12 0-.23-.02-.34-.03l.34-.03v.06Zm-.69-.7c0-3.13.26-8.84.47-14.51.06 1.2.11 2.41.15 3.6.15 3.6.25 7.23.09 10.83-.24.03-.48.05-.71.07v.01Zm-12.33-30.94c.37.63 2.01 1.01 3.23 1.25v.15c-1.31-.31-2.59-.73-3.83-1.29.12-.36.23-.72.33-1.09.08.48.18.84.27.98Zm13.7 31.65v-.18c3.41-.56 6.71-2.02 9.69-3.68 2.31-1.28 4.59-2.78 6.63-4.53-4.69 4.53-11.61 8.24-16.33 8.38l.01.01Zm24.07-.75c-2.05 1.93-4.37 3.56-6.83 4.95 2.7-1.78 5.52-4.03 8.42-6.87.82-.82 1.56-1.69 2.23-2.59-1.08 1.65-2.38 3.16-3.81 4.51h-.01ZM187.16 92.14c-.79-2.47-2.1-7.12-3.1-6.87-.19-.01-2.09.77-4.08 1.54-3.06 1.18-5.91 2.13-10.09 2.82-2.74.42-5.87 1.01-10.61 1.06.04-3.34.05-6.01.05-7.99 7.97-.65 12.33-2.11 16.37-3.55 1.11-.39 2.69-1.01 2.63-1.8-.08-.35-.55-1.39-1.17-2.61-.47-1.16-.98-2.31-1.61-3.38-.42-.71-1.04-1.69-1.86-2.06-.11-.08-.22-.13-.29-.12-.02 0-.04 0-.07.01-.19-.04-.39-.05-.6-.01-.17.03-.24.15-.25.28-.04.02-.09.04-.14.05-4.33 1.48-8.85 2.33-13.24 3.61a499.1 499.1 0 0 0-.31-8.19c4.51-.99 8.88-1.38 13.11-1.82 3.68-.38 6.28.12 7.47.34.59.11.9.16 1.16.18h.1c-.1.37.44.66.62.28.02-.04.03-.08.05-.13.15.2.53.22.62-.1.17-.58.19-1.21.21-1.81v-.36c.03-.15.05-.3.07-.45.52-2.47.33-5.09-.64-7.44-.11-.27-.44-.28-.6-.14-.08-.21-.15-.42-.24-.62-.19-.41-.79-.05-.6.35.03.07.05.15.09.22-.98-.42-2.15-.54-3.17-.63-2.17-.19-4.37-.14-6.54 0-5.7.35-11.4 1.3-16.91 2.79-2.08.56-4.13 1.22-6.14 2-4.54 1.05-3.79 1.51-2.17 6.07.18.51.46 1.68.54 1.94.82 2.47 1.08 2.13 3.1 2.13s0 .05 0 .08h.52c-.48 2.66-.51 5.45-.62 8.13-.15 3.48-.22 6.96-.28 10.45 0 .41-.01.82-.02 1.23-.16.29-.33.57-.51.85-.05.38-.09.77-.14 1.18-.42 3.52-.59 6.48-.52 8.8v.34c.02.47.05.76.06.87.16 1.57-.26 3.47 1.35 3.79 1.61.32 3.5.55 4.85.55.11 0 .22-.02.33-.02 1.79.24 3.67.05 5.45-.12 2.85-.28 5.69-.7 8.51-1.19 3.03-.53 6.05-1.14 9.04-1.86 2.4-.58 4.82-1.19 7.13-2.06.51-.19 1.73-.57 2.46-1.14 1.81-.68 2.18-1 1.57-2.67-.23-.62-.48-1.49-.91-2.78l-.03-.02Zm-11.12-38.71c.89.05 1.93.08 2.89.3-.33 0-.68-.02-1.06-.03-8.28-.26-14.88.75-23.97 2.51 2.41-.64 4.85-1.16 7.28-1.59 4.87-.86 9.91-1.45 14.86-1.19Zm-26.53 22.13c.03 1.71.04 3.43 0 5.14-.04 1.27-.11 2.55-.24 3.82 0-.73.02-1.46.04-2.19.05-2.26.12-4.51.22-6.77h-.02Zm6.73 27.85c.2-.1.4-.21.58-.33 1.82-.17 3.82-.24 5.94-.34-.86.11-1.72.24-2.58.33-1.27.14-2.61.31-3.93.34h-.01ZM534.48 85.44c-3.52-8.38-7.07-16.75-10.5-25.17-.63-1.54-1.25-3.09-1.86-4.65-.31-.8-.65-1.6-.87-2.43-.04-.17-.17-.24-.31-.25.1-.2 0-.51-.29-.53-1.59-.08-3.18-.22-4.78-.25-1.96-.03-3.91.13-5.84.42-.31.05-.31.38-.13.56-.03.06-.05.14-.04.22.23 1.54.63 3.06 1.16 4.53.13.35.27.7.41 1.06l-2.68 6.18c-.11.03-.2.09-.25.22-.67 1.9-1.52 3.73-2.34 5.56a536.85 536.85 0 0 1-3.9 8.45c-2.64 5.64-5.34 11.25-7.91 16.93-.44.97-.88 1.94-1.29 2.93-.2.48-.47 1-.55 1.52v.05c-.02.12.02.26.16.34 1.19.73 2.41 1.41 3.66 2.05 1.2.62 2.45 1.25 3.76 1.61.43.12.62-.55.19-.67-1.13-.31-2.2-.83-3.24-1.36 1.09.36 2.1.69 2.75.93 2.82 1.01 2.38 1.1 4.3-3.75 2.1-1.09 4.34-1.96 6.53-2.79 4.35-1.64 8.8-3.03 13.27-4.29.82 2.01 1.77 3.97 2.72 5.92.35.83.62 1.45.79 1.82.22.42.45.8.69 1.15.17.33.33.67.5 1 .42.8.84 1.63 1.4 2.35.23.29.6 0 .55-.31 1.53-.02 3.06-.07 4.58-.27.92-.12 1.82-.32 2.71-.54 1.39-.27 3.85-1.11 3.74-1.42-.67-1.96-1.55-3.87-2.34-5.78-1.57-3.78-3.16-7.56-4.75-11.33v-.01Zm-11.65-26.16c1.54 3.81 3.12 7.6 4.7 11.4 2.94 7.05 5.91 14.09 8.87 21.13l-1.06-2.17c-2.71-5.51-5.2-11.19-7.41-16.87l-6.65-17.15c-.65-1.45-.55-2.19-.93-2.53.09 0 .18.01.28.02a.29.29 0 0 0-.04.26c.52 2.02 1.47 3.98 2.25 5.91h-.01Zm-6.58 13.58c.05-.15.09-.31.14-.46 1.41 3.92 2.88 7.9 4.39 11.87-3.22.52-6.38 1.25-9.46 2.14.55-1.22 1.05-2.46 1.53-3.7 1.24-3.24 2.37-6.53 3.39-9.85h.01Zm-.23-20c.36 0 .73.03 1.09.05-2.15.1-5.18.33-5.87.74-.24.15-.41.3-.53.45-.06-.29-.13-.58-.18-.88 1.82-.26 3.65-.39 5.49-.35v-.01Zm-.09 18.72c-.49 1.67-1.05 3.33-1.6 4.97-1.07 3.19-2.19 6.38-3.57 9.46-.09.21-.19.43-.29.65-.25.07-.5.14-.74.22 2.53-6.16 4.61-11.29 6.2-15.3Zm-6.34 25.16c4.97-2.38 9.37-4.1 14.02-5.27l.26.64c-4.8 1.35-9.63 2.8-14.28 4.63Zm20.17 6.76c.33.23.68.42 1.04.56h-.33c-.12 0-.21.06-.26.13-.15-.23-.31-.45-.45-.7v.01ZM226.57 91.75c-3.55-4.74-6.68-9.11-9.31-12.99 9.2-15.25 10.05-17.81 10.35-18.38.17-.34 1.09-2.27.64-2.53-1.13-.65-1.03-.65-2.97-1.71-1.19-.65-3.04-1.61-4.53-2.12-1.71-.59-1.24-.36-3 2.77-.06.1-.11.2-.17.3-.75 1.02-1.48 2.05-2.2 3.09-1.88 2.71-3.73 5.45-5.69 8.1-3.68-4.91-6.88-8.76-9.51-11.43-.15-.15-.3-.29-.46-.42-1.27-1.28-7.24 3.53-7.93 5.58-.09.09-.19.16-.28.25-.27.26.03.64.33.58.19.65.5 1.29.94 1.91 3.85 5.06 7.19 9.76 9.94 14-1.23 2.61-3.06 5-4.67 7.38l-2.28 3.33c-.5.66-.93 1.23-1.29 1.69-.67.93-2.09 2.61-2.3 3.87-.51.85-1.16 1.84-1.29 2.83-.06.44.61.63.67.19.01-.08.04-.15.06-.22 1.36 1.08 2.76 2.11 4.19 3.11 1.3.91 2.62 1.85 4.04 2.56.21.1.4 0 .48-.17.24.07.48.14.72.2.44.1.62-.57.19-.67-2.02-.48-3.77-1.57-5.23-3.02-.47-.46-.9-.96-1.32-1.46 1.74 1.35 4.2 2.89 5.89 4.14 1.39 1.03 2.85-2.27 4.22-4.2 1.86-2.64 3.96-5.86 5.52-8.29l10.39 14.51c.67.81 1.14 1.21 1.57 1.36-.05.24.12.51.41.4 1.53-.58 3.05-1.19 4.54-1.87 1.52-.69 3.06-1.45 4.36-2.5a.28.28 0 0 0 .12-.23c1.66-1.1.81-1.74-1.41-4.91-1.13-1.58-1.71-2.36-3.7-5.01l-.03-.02Zm2.41 6.54c.56 1.15 1.19 2.52 1.11 3.81-.06.04-.12.07-.17.1-.03-.88-.55-2.66-.94-3.91Zm-16.51-32.73c1.86-2.65 3.65-5.35 5.57-7.95.4-.55.81-1.13 1.26-1.66.19-.18.38-.33.56-.45.18.03.36.08.55.13l-8.05 10.11.12-.18h-.01ZM192.7 95.48c.79-1.37 1.66-2.69 2.54-4 1.19-1.79 2.4-3.56 3.61-5.33-.04.09-.09.17-.13.26-.1.22.03.41.2.49-2.47 3.42-4.89 6.73-6.4 9.28.21.24.4.48.63.75-.24.07-.4.36-.17.56.4.33.72.77 1.05 1.17.09.11.18.21.27.32-.84-.61-1.66-1.24-2.47-1.88.24-.57.58-1.11.87-1.61v-.01Zm7.46-10.32c.47-.81.98-1.59 1.49-2.37.31-.48.64-.95.96-1.43.26-.29.52-.56.75-.79-.99 1.48-2.09 3.03-3.2 4.59Zm10.03-16.22s-.03-.05-.05-.07c.22-.29.43-.59.64-.89-.2.32-.4.65-.58.96h-.01ZM371.54 87.96c-.01-.08-.01-.16-.03-.23-.06-.38-.58-.29-.66.03-.3-.05-.6-.08-.81-.11-1.14-.15-2.29-.19-3.44-.2 1.04-.09 2.09-.18 3.14-.23.45-.02.45-.72 0-.7-6.57.35-13.14 1.23-19.65 2.11-1.53.21-3.05.42-4.57.68-.01 0-.02.01-.04.01-.04-3.33-.13-6.66-.24-9.99-.19-5.7-.4-11.41-.88-17.1-.13-1.51-.23-3.07-.49-4.58 0-.25 0-.48-.02-.68-.06-1.19-.04-2.61-.68-2.78-.16-.07-.72-.16-1.5-.24.22-.17.16-.62-.2-.63-1.19-.04-2.39.09-3.57.23-1.2.14-2.41.32-3.59.6-.16-.1-.41-.06-.5.12-.06.02-.13.03-.19.05-.35.1-.29.55-.03.66-.26.6-.19 2.27-.21 3-.02.66-.66 33.73-.9 40.3-.03.65.06 1.12.04 1.45-.16 3.05.87 4.96 6.34 3.93 1.09-.08 2.75-.77 5.36-1.43 4.13-1.04 5.78-1.52 6.2-1.65 6.43-1.69 6.78-1.97 11.72-2.43.55-.05 4.8-.38 6.03-.3.64.04 1.19.07 1.65.1.09 0 .16-.03.24-.05.1.27.56.33.66-.02.39-1.32.61-2.71.78-4.08.2-1.61.29-3.24.15-4.86.24.03.52-.23.38-.53-.09-.2-.27-.33-.49-.43v-.02Zm-.63.56c.07.57.11 1.14.11 1.71-.21-.99-.53-1.71-.95-1.87.22.03.44.06.65.11.06.01.12.04.19.05Zm-25.41 1.73c1.54-.36 3.1-.64 4.66-.89-1.61.37-3.18.77-4.66 1.2v-.31Zm-.86-7.37c-.07-1.37-.16-2.75-.25-4.12-.21-3.13-.45-6.27-.79-9.4.02-2.25.08-4.31.13-6.11.16 2.08.29 4.16.4 6.24.23 4.46.38 8.93.5 13.39h.01Zm-.94-4c.16 2.41.29 4.83.39 7.24.06 1.6.14 3.22.09 4.83-.15.05-.32.09-.47.14V78.88h-.01ZM483.72 92.83c-3.05-2.28-6.22-4.4-9.38-6.51 8.86-6.49 13.49-12.95 13.73-19.23.04-.76 0-1.5-.13-2.2-.67-3.82-3.5-6.68-8.39-8.48.13.04.27.08.4.13 3.92 1.39 7.74 4.23 8.5 8.56.34 1.95-.05 3.96-.98 5.69-.21.4.39.75.6.35 1.86-3.46 1.46-7.55-.97-10.63-3.53-4.47-9.76-5.88-15.16-6.16-2.32-.12-4.64-.04-6.95.19-6 .32-12.71 1.68-17.63 3.21-.37.11-.67.23-.92.35-.2-.17-.62.02-.57.37v.03c-.64.68-.18 1.64.48 3.21.38.91.67 1.89 1.15 2.58.32.76.68 1.51 1.13 2.19.14.21.38.19.53.07.19-.02.38-.05.57-.08v1.57c-.06.06-.1.13-.11.23-.27 4.18-.34 8.38-.48 12.57l-.3 9.03c-.24 3.91-.44 6.77-.46 7.26-.05.88-.11 1.95.07 2.81-.01.22-.02.43-.04.65 0 .11-.02.23-.03.35 0 .05-.03.27-.01.16-.05.4.5.59.64.28.05.04.12.08.2.08 1.75.13 3.5.28 5.25.3 1.69.02 3.38-.12 5.06-.32.08.23.36.39.55.15.06-.08.11-.17.16-.26.18-.09.24-.32.18-.48.05-.2.1-.4.13-.6.16-.86.25-1.74.33-2.62.11-1.17.17-2.34.23-3.51.15-.01.32-.03.52-.04.36-.03 1.73-.15 2.06-.15.39 0 .7-.02.95-.04 1.76 1.11 3.45 2.35 5.14 3.55 2.83 2.01 5.64 4.04 8.47 6.04 1.42 1 2.85 2 4.29 2.97.1.06.19.07.27.04.08 0 .17-.02.25-.1 1.61-1.56 3.15-3.18 4.6-4.88.75-.88 1.49-1.78 2.15-2.73.01.01.03.02.04.03.34.3.83-.2.49-.49-2.16-1.9-4.34-3.76-6.64-5.48l.03-.01Zm-6.38-3.65a55.72 55.72 0 0 0-4-2.13c.14-.1.26-.19.4-.29 1.2.81 2.4 1.61 3.6 2.42Zm-20.1 11.78c.67-.37 1.23-.91 1.67-1.6-.11.5-.24 1-.38 1.49-.43.04-.86.08-1.29.11Zm2.38-37.24c1.34-.31 2.56-.52 3.71-.69-1.03.19-2.04.41-3.04.65-.14-.07-.34-.02-.45.11-.07.02-.15.04-.22.05v-.13.01Zm.04.84c.07-.02.14-.03.2-.05.34 1.66.41 3.41.5 5.09.17 2.9.24 5.81.28 8.71l.03 3.17c-.17.07-.34.14-.51.2-.06-4.96-.21-10.58-.51-17.12h.01Zm16.04 5.62c-1.16 2.25-3.06 4.1-5.02 5.66-2.8 2.23-5.99 3.97-9.3 5.35-.01-3.56-.09-7.12-.27-10.67-.1-2.04-.16-4.16-.57-6.18 3.3-.78 6.72-1.36 10.1-1.1 1.85.14 4.23.59 5.32 2.29.92 1.43.46 3.24-.26 4.65Zm.85-.18c.6-1.37.9-2.92.28-4.32-.67-1.52-2.2-2.32-3.76-2.74.46.1.89.21 1.29.37 1.74.67 2.69 1.88 2.93 3.21.2 1.13-.05 2.25-.74 3.47V70Zm-27.47-4.14c-.12-.19-.23-.38-.34-.57.74.42.85.36.99.41v.08c-.22.03-.43.06-.65.08Zm11.21 30.46c-.08 1.08-.16 2.17-.33 3.24-.05.35-.11.69-.2 1.03 0 .04-.02.07-.03.11-.15.02-.3.04-.45.05.45-1.64.76-3.36.79-5.07.03-.29.08-.57.1-.89-.03-.31-.03-.47.24-.57-.04.69-.07 1.39-.12 2.08v.02Zm5.6-2.47c.48.11.92.52 2.49 1.72-.46-.32-.92-.65-1.38-.97-.37-.25-.73-.5-1.1-.75h-.01Zm21.23 7.24a70.76 70.76 0 0 1-4.37 4.63c-.14-.09-.27-.19-.4-.28.19-.09.37-.24.55-.47.87-1.14 5.43-5.51 5.49-7.45.31.26.62.53.92.79-.67.97-1.42 1.88-2.19 2.77v.01Z",fill:"currentColor",transform:"translate(-144.023 -51.76)"})]}),bQr=({style:A,size:e="small",withText:t})=>cA("div",{className:`ExcalidrawLogo is-${e}`,style:A,children:[N(yQr,{}),t&&N(wQr,{})]}),X3A=({icon:A,shortcut:e,children:t})=>{let r=vo();return cA(At,{children:[N("div",{className:"welcome-screen-menu-item__icon",children:A}),N("div",{className:"welcome-screen-menu-item__text",children:t}),e&&!r.editor.isMobile&&N("div",{className:"welcome-screen-menu-item__shortcut",children:e})]})};X3A.displayName="WelcomeScreenMenuItemContent";var OL=({onSelect:A,children:e,icon:t,shortcut:r,className:i="",...u})=>N("button",{...u,type:"button",className:`welcome-screen-menu-item ${i}`,onClick:A,children:N(X3A,{icon:t,shortcut:r,children:e})});OL.displayName="WelcomeScreenMenuItem";var CVe=({children:A,href:e,icon:t,shortcut:r,className:i="",...u})=>N("a",{...u,className:`welcome-screen-menu-item ${i}`,href:e,target:"_blank",rel:"noreferrer",children:N(X3A,{icon:t,shortcut:r,children:A})});CVe.displayName="WelcomeScreenMenuItemLink";var xB=({children:A})=>{let{WelcomeScreenCenterTunnel:e}=Zs();return N(e.In,{children:N("div",{className:"welcome-screen-center",children:A||cA(At,{children:[N($3A,{}),N(AmA,{children:uA("welcomeScreen.defaults.center_heading")}),cA(emA,{children:[N(rmA,{}),N(tmA,{})]})]})})})};xB.displayName="Center";var $3A=({children:A})=>N("div",{className:"welcome-screen-center__logo excalifont welcome-screen-decor",children:A||N(bQr,{withText:!0})});$3A.displayName="Logo";var AmA=({children:A})=>N("div",{className:"welcome-screen-center__heading welcome-screen-decor excalifont",children:A});AmA.displayName="Heading";var emA=({children:A})=>N("div",{className:"welcome-screen-menu",children:A});emA.displayName="Menu";var tmA=()=>{let A=Pl();return N(OL,{onSelect:()=>A.executeAction(U3A),shortcut:"?",icon:Z_,children:uA("helpDialog.title")})};tmA.displayName="MenuItemHelp";var rmA=()=>{let A=k0(),e=Pl();return A.viewModeEnabled?null:N(OL,{onSelect:()=>e.executeAction(I3A),shortcut:is("loadScene"),icon:j_,children:uA("buttons.load")})};rmA.displayName="MenuItemLoadScene";var BVe=({onSelect:A})=>{let{t:e}=us();return N(OL,{shortcut:null,onSelect:A,icon:XIA,children:e("labels.liveCollaboration")})};BVe.displayName="MenuItemLiveCollaborationTrigger";xB.Logo=$3A;xB.Heading=AmA;xB.Menu=emA;xB.MenuItem=OL;xB.MenuItemLink=CVe;xB.MenuItemHelp=tmA;xB.MenuItemLoadScene=rmA;xB.MenuItemLiveCollaborationTrigger=BVe;var imA=({children:A})=>{let{WelcomeScreenMenuHintTunnel:e}=Zs();return N(e.In,{children:cA("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--menu",children:[IIe,N("div",{className:"welcome-screen-decor-hint__label",children:A||uA("welcomeScreen.defaults.menuHint")})]})})};imA.displayName="MenuHint";var umA=({children:A})=>{let{WelcomeScreenToolbarHintTunnel:e}=Zs();return N(e.In,{children:cA("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--toolbar",children:[N("div",{className:"welcome-screen-decor-hint__label",children:A||uA("welcomeScreen.defaults.toolbarHint")}),QIe]})})};umA.displayName="ToolbarHint";var amA=({children:A})=>{let{WelcomeScreenHelpHintTunnel:e}=Zs();return N(e.In,{children:cA("div",{className:"excalifont welcome-screen-decor welcome-screen-decor-hint welcome-screen-decor-hint--help",children:[N("div",{children:A||uA("welcomeScreen.defaults.helpHint")}),hIe]})})};amA.displayName="HelpHint";var nmA=(A)=>N(At,{children:A.children||cA(At,{children:[N(xB,{}),N(imA,{}),N(umA,{}),N(amA,{})]})});nmA.displayName="WelcomeScreen";nmA.Center=xB;nmA.Hints={MenuHint:imA,ToolbarHint:umA,HelpHint:amA};var vQr=({isCollaborating:A,onSelect:e,...t})=>{let r=k0(),i=r.width<830;return cA(P2,{...t,className:Se("collab-button",{active:A}),type:"button",onSelect:e,style:{position:"relative",width:i?void 0:"auto"},title:uA("labels.liveCollaboration"),children:[i?RIe:uA("labels.share"),r.collaborators.size>0&&N("div",{className:"CollabButton-collaborators",children:r.collaborators.size})]})};vQr.displayName="LiveCollaborationTrigger";var DRi=EVe.default((A,e,t)=>{if(fr.DEV||fr.MODE===Ys.TEST||window?.DEBUG_FRACTIONAL_INDICES){let r=hd(A.map((i)=>({...i})));DW(r,{shouldThrow:fr.DEV||fr.MODE===Ys.TEST,includeBoundTextValidation:!0,reconciliationContext:{localElements:e,remoteElements:t}})}},60000,{leading:!0,trailing:!1});var kQr=({children:A,icon:e})=>{let{TTDDialogTriggerTunnel:t}=Zs(),r=qn();return N(t.In,{children:cA(Hu.Item,{onSelect:()=>{Nu("ai","dialog open","ttd"),r({openDialog:{name:"ttd",tab:"text-to-diagram"}})},icon:e??khe,children:[A??uA("labels.textToDiagram"),N(Hu.Item.Badge,{children:"AI"})]})})};kQr.displayName="TTDDialogTrigger";mQr();var FQr=(A)=>{let{onChange:e,initialData:t,excalidrawAPI:r,isCollaborating:i=!1,onPointerUpdate:u,renderTopRightUI:a,langCode:n=Y5.code,viewModeEnabled:o,zenModeEnabled:s,gridModeEnabled:l,libraryReturnUrl:g,theme:C,name:B,renderCustomStats:E,onPaste:d,detectScroll:I=!0,handleKeyboardGlobally:h=!1,onLibraryChange:Q,autoFocus:p=!1,generateIdForFile:m,onLinkOpen:f,generateLinkForSelection:D,onPointerDown:w,onPointerUp:b,onScrollChange:k,onDuplicate:v,children:S,validateEmbeddable:x,renderEmbeddable:F,aiEnabled:T,showDeprecatedFonts:R}=A,L=A.UIOptions?.canvasActions,M={...A.UIOptions,canvasActions:{...lIA.canvasActions,...L},tools:{image:A.UIOptions?.tools?.image??!0}};return L?.export&&(M.canvasActions.export.saveFileToDisk=L.export?.saveFileToDisk??lIA.canvasActions.export.saveFileToDisk),M.canvasActions.toggleTheme===null&&typeof C>"u"&&(M.canvasActions.toggleTheme=!0),le(()=>{(async()=>{await Promise.resolve().then(() => (WWe(),{}))})();let U=(Y)=>{typeof Y.scale=="number"&&Y.scale!==1&&Y.preventDefault()};return document.addEventListener("touchmove",U,{passive:!1}),()=>{document.removeEventListener("touchmove",U)}},[]),N(ICr,{store:vB,children:N(fCr,{langCode:n,theme:C,children:N(pQr,{onChange:e,initialData:t,excalidrawAPI:r,isCollaborating:i,onPointerUpdate:u,renderTopRightUI:a,langCode:n,viewModeEnabled:o,zenModeEnabled:s,gridModeEnabled:l,libraryReturnUrl:g,theme:C,name:B,renderCustomStats:E,UIOptions:M,onPaste:d,detectScroll:I,handleKeyboardGlobally:h,onLibraryChange:Q,autoFocus:p,generateIdForFile:m,onLinkOpen:f,generateLinkForSelection:D,onPointerDown:w,onPointerUp:b,onScrollChange:k,onDuplicate:v,validateEmbeddable:x,renderEmbeddable:F,aiEnabled:T!==!1,showDeprecatedFonts:R,children:S})})})},xQr=(A,e)=>{if(A.children!==e.children)return!1;let{initialData:t,UIOptions:r={},...i}=A,{initialData:u,UIOptions:a={},...n}=e,o=Object.keys(r),s=Object.keys(a);return o.length!==s.length?!1:o.every((l)=>l==="canvasActions"?Object.keys(r.canvasActions).every((g)=>g==="export"&&r?.canvasActions?.export&&a?.canvasActions?.export?r.canvasActions.export.saveFileToDisk===a.canvasActions.export.saveFileToDisk:r?.canvasActions?.[g]===a?.canvasActions?.[g]):r[l]===a[l])&&zo(i,n)},SQr=gi(FQr,xQr);SQr.displayName="Excalidraw";window.EXCALIDRAW_ASSET_PATH="https://gstack-render.localhost/excalidraw-assets/";var LQr='Helvetica, "Liberation Sans", Arial, "Hiragino Kaku Gothic ProN", "Noto Sans CJK JP", "Microsoft YaHei", "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif';Im.initialize({startOnLoad:!1,securityLevel:"strict",theme:"neutral",fontFamily:LQr,htmlLabels:!1,flowchart:{htmlLabels:!1}});window.__renderMermaid=async(A,e)=>{if(!/^[A-Za-z][\w-]*$/.test(A))throw Error(`invalid mermaid render id: ${A}`);let{svg:t}=await Im.render(A,e);return t};window.__mermaidToExcalidraw=async(A)=>{let{elements:e,files:t}=await dP(A),i={type:"excalidraw",version:2,source:"gstack-diagram-render",elements:TL(e),appState:{viewBackgroundColor:"#ffffff"},files:t??{}};return JSON.stringify(i)};window.__excalidrawToSvg=async(A)=>{let e=JSON.parse(A);if(!Array.isArray(e.elements))throw Error("excalidraw scene has no elements array");let t=await nS({elements:e.elements,appState:{...e.appState??{},exportBackground:!0},files:e.files??null,exportPadding:16});return new XMLSerializer().serializeToString(t)};var RQr=1e4;function IVe(A){if(!(A>0&&A<=RQr))throw Error(`targetWidthPx out of range: ${A}`)}window.__rasterize=async(A,e)=>{IVe(e);let t=new Blob([A],{type:"image/svg+xml;charset=utf-8"}),r=URL.createObjectURL(t);try{let i=new Image;await new Promise((l,g)=>{i.onload=()=>l(),i.onerror=()=>g(Error("SVG image decode failed (malformed SVG or foreignObject content)")),i.src=r});let u=i.naturalWidth||800,a=i.naturalHeight||600,n=e/u,o=document.createElement("canvas");o.width=Math.round(u*n),o.height=Math.round(a*n);let s=o.getContext("2d");if(!s)throw Error("2d canvas context unavailable");return s.fillStyle="#ffffff",s.fillRect(0,0,o.width,o.height),s.drawImage(i,0,0,o.width,o.height),o.toDataURL("image/png")}finally{URL.revokeObjectURL(r)}};window.__mountForScreenshot=(A,e)=>{document.getElementById("raster-stage")?.remove();let t=document.createElement("div");t.id="raster-stage",t.style.cssText=`display:inline-block;background:#fff;width:${e}px`,t.innerHTML=A;let r=t.querySelector("svg");if(r)r.setAttribute("width",String(e)),r.removeAttribute("height"),r.style.height="auto";return document.body.appendChild(t),`mounted:${e}`};window.__downscaleRaster=async(A,e,t)=>{IVe(e);let r=new Image;await new Promise((o,s)=>{r.onload=()=>o(),r.onerror=()=>s(Error("image decode failed")),r.src=A});let i=e/(r.naturalWidth||e),u=document.createElement("canvas");u.width=Math.round(r.naturalWidth*i),u.height=Math.round(r.naturalHeight*i);let a=u.getContext("2d");if(!a)throw Error("2d canvas context unavailable");a.drawImage(r,0,0,u.width,u.height);let n=t==="image/jpeg"?"image/jpeg":"image/png";return n==="image/jpeg"?u.toDataURL(n,0.9):u.toDataURL(n)};window.__probeImage=async(A)=>{let e=new Image;return await new Promise((t,r)=>{e.onload=()=>t(),e.onerror=()=>r(Error("image decode failed")),e.src=A}),JSON.stringify({width:e.naturalWidth,height:e.naturalHeight})};window.__bundleInfo={name:"gstack-diagram-render",deps:{"@excalidraw/excalidraw":"0.18.1","@excalidraw/mermaid-to-excalidraw":"2.2.2",mermaid:"11.16.1",react:"18.3.1","react-dom":"18.3.1"}};var dVe=document.getElementById("status");if(dVe)dVe.textContent="ready";var fZ=document.createElement("div");fZ.id="done";fZ.textContent="ready";fZ.style.cssText="position:absolute;left:-9999px";document.body.appendChild(fZ);
</script>
</body>
</html>