From 0568608be65b6123024a1be01eef989ba458a205 Mon Sep 17 00:00:00 2001 From: Qubasa Date: Wed, 15 May 2024 23:00:08 +0200 Subject: [PATCH 1/5] readme: Update matrix link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ca90403c..bb186dd1 100644 --- a/README.md +++ b/README.md @@ -40,6 +40,6 @@ Clan is more than a tool; it's a movement towards a better digital future. By co Connect with us and the Clan community for support and discussion: -- [Matrix channel](https://matrix.to/#/!djzOHBBBHnwQkgNgdV:matrix.org?via=blog.clan.lol) for live discussions. +- [Matrix channel](https://matrix.to/#/#clan:lassul.us) for live discussions. - IRC bridges (coming soon) for real-time chat support. From 8762ee44202289df16a5417f1197f7d7581456b0 Mon Sep 17 00:00:00 2001 From: Qubasa Date: Thu, 16 May 2024 15:08:24 +0200 Subject: [PATCH 2/5] Migrated blog to mkdocs --- docs/main.py | 30 + docs/mkdocs.yml | 45 +- docs/nix/default.nix | 2 + docs/site/blog/.authors.yml | 22 + docs/site/blog/index.md | 2 + .../site/blog/posts/2024-03-19-hello-world.md | 74 + docs/site/blog/posts/2024-04-16-new-docs.md | 14 + docs/site/faq/index.md | 15 - .../asciinema-player/asciinema-player.css | 2117 +++++++++++++++++ .../asciinema-player/asciinema-player.min.js | 1 + .../static/asciinema-player/custom-theme.css | 45 + docs/site/static/asciinema-player/v3.7.0 | 0 docs/site/static/main.js | 116 + docs/site/templates/index.md | 24 - pkgs/clan-cli/clan_cli/flash.py | 2 +- 15 files changed, 2453 insertions(+), 56 deletions(-) create mode 100644 docs/main.py create mode 100644 docs/site/blog/.authors.yml create mode 100644 docs/site/blog/index.md create mode 100644 docs/site/blog/posts/2024-03-19-hello-world.md create mode 100644 docs/site/blog/posts/2024-04-16-new-docs.md delete mode 100644 docs/site/faq/index.md create mode 100644 docs/site/static/asciinema-player/asciinema-player.css create mode 100644 docs/site/static/asciinema-player/asciinema-player.min.js create mode 100644 docs/site/static/asciinema-player/custom-theme.css create mode 100644 docs/site/static/asciinema-player/v3.7.0 create mode 100644 docs/site/static/main.js delete mode 100644 docs/site/templates/index.md diff --git a/docs/main.py b/docs/main.py new file mode 100644 index 00000000..2fa40edb --- /dev/null +++ b/docs/main.py @@ -0,0 +1,30 @@ +from typing import Any + + +def define_env(env: Any) -> None: + static_dir = "../static/" + video_dir = "https://clan.lol/" + "videos/" + asciinema_dir = static_dir + "asciinema-player/" + + @env.macro + def video(name: str) -> str: + return f"""""" + + @env.macro + def asciinema(name: str) -> str: + return f"""
+ + +
""" diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index 657c8296..302a31ed 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -1,4 +1,4 @@ -site_name: cLAN documentation +site_name: cLAN Documentation site_url: https://docs.clan.lol repo_url: https://git.clan.lol/clan/clan-core/ repo_name: clan-core @@ -37,6 +37,8 @@ exclude_docs: | /drafts/ nav: + - Blog: + - blog/index.md - Getting started: - index.md - Installer: getting-started/installer.md @@ -46,20 +48,7 @@ nav: - Mesh VPN: getting-started/mesh-vpn.md - Backup & Restore: getting-started/backups.md - Flake-parts: getting-started/flake-parts.md - - Templates: templates/index.md - - Reference: - - CLI: - - reference/cli/index.md - - reference/cli/backups.md - - reference/cli/config.md - - reference/cli/facts.md - - reference/cli/flakes.md - - reference/cli/flash.md - - reference/cli/history.md - - reference/cli/machines.md - - reference/cli/secrets.md - - reference/cli/ssh.md - - reference/cli/vms.md + - Modules: - Clan Modules: - reference/clanModules/borgbackup.md - reference/clanModules/deltachat.md @@ -77,6 +66,18 @@ nav: - reference/clanModules/user-password.md - reference/clanModules/xfce.md - reference/clanModules/zt-tcp-relay.md + - CLI: + - reference/cli/index.md + - reference/cli/backups.md + - reference/cli/config.md + - reference/cli/facts.md + - reference/cli/flakes.md + - reference/cli/flash.md + - reference/cli/history.md + - reference/cli/machines.md + - reference/cli/secrets.md + - reference/cli/ssh.md + - reference/cli/vms.md - Clan Core: - reference/clan-core/index.md - reference/clan-core/backups.md @@ -84,7 +85,6 @@ nav: - reference/clan-core/sops.md - reference/clan-core/state.md - Contributing: contributing/contributing.md - - FAQ: faq/index.md docs_dir: site site_dir: out @@ -120,5 +120,18 @@ theme: icon: material/weather-sunny name: Switch to light mode + extra_javascript: + - static/main.js + plugins: - search + - blog + - macros + - rss: + match_path: blog/posts/.* + + date_from_meta: + as_creation: date + categories: + - categories + - tags diff --git a/docs/nix/default.nix b/docs/nix/default.nix index fa675bcb..9fdaba56 100644 --- a/docs/nix/default.nix +++ b/docs/nix/default.nix @@ -20,6 +20,8 @@ pkgs.stdenv.mkDerivation { ++ (with pkgs.python3Packages; [ mkdocs mkdocs-material + mkdocs-rss-plugin + mkdocs-macros ]); configurePhase = '' mkdir -p ./site/reference/cli diff --git a/docs/site/blog/.authors.yml b/docs/site/blog/.authors.yml new file mode 100644 index 00000000..8ba66953 --- /dev/null +++ b/docs/site/blog/.authors.yml @@ -0,0 +1,22 @@ +authors: + Lassulus: + name: "Lassulus" + description: "Test description" + avatar: "" + url: "https://example.com/lassulus" + Mic92: + name: "Mic92" + description: "Test description" + avatar: "" + url: "https://example.com/mic92" + W: + name: "W" + description: "Test description" + avatar: "" + url: "https://example.com/w" + Qubasa: + name: "Qubasa" + description: "Test description" + avatar: "" + bio: "Author bio for Qubasa." + url: "https://example.com/qubasa" \ No newline at end of file diff --git a/docs/site/blog/index.md b/docs/site/blog/index.md new file mode 100644 index 00000000..c58f16c5 --- /dev/null +++ b/docs/site/blog/index.md @@ -0,0 +1,2 @@ +# Blog + diff --git a/docs/site/blog/posts/2024-03-19-hello-world.md b/docs/site/blog/posts/2024-03-19-hello-world.md new file mode 100644 index 00000000..bdb42619 --- /dev/null +++ b/docs/site/blog/posts/2024-03-19-hello-world.md @@ -0,0 +1,74 @@ +--- +title: "Introducing Clan: Full-Stack Computing Redefined" +description: "Introducing Clan, a new model for a decentralized network, designed to provide families, smaller groups, and small businesses a platform that’s private, secure, and user-friendly." +date: 2024-03-19T09:19:42+00:00 +updated: 2024-03-19T09:19:42+00:00 +draft: false +authors: + - W + - Qubasa +--- + + +In a digital age where users are guided increasingly toward submission and dependence, Clan reclaims computing and networking from the ground up. + +Clan enables users to build any system from a git repository, automate secret handling, and join devices in a secure darknet. This control extends beyond applications to communication protocols and the operating system itself, putting you fully in charge of your own digital environment. + +## Why We're Building Clan + +Our mission is simple: to restore fun, freedom, and functionality to computing as an open source project. We believe in building tools that empower users, foster innovation, and challenge the limitations imposed by outdated paradigms. Clan, in its essence, is an open source endeavor; it's our contribution to a future where technology serves humanity, not the other way around. + +## How Clan Changes the Game +Clan embodies a new philosophy in system, application, and network design. It enables seamless, secure communication across devices, simplifies software distribution and updates, and offers both public and private network configurations. Here are some of the ways it accomplishes this: + +- **Nix as a Foundation:** Imagine a safety net for your computer's operating system, one that lets you make changes or updates without the fear of causing a crash or losing data. Nix simplifies the complexities of system design, ensuring that updates are safe and systems are more reliable. + +- **Simplified System Deployment:** Building and managing a computer system, from the operating system to the software you use, often feels like putting together a complex puzzle. With Clan, the puzzle pieces are replaced by a set of building blocks. Leveraging the power of Nix and Clan's innovative toolkit, anyone from tech-savvy administrators to everyday users can create and maintain what we call "full-stack systems" (everything your computer needs to run smoothly). + +- **A Leap in Connectivity:** Imagine if you could create private, secure pathways between your devices, bypassing the noisy and often insecure internet. Clan makes this possible through something called "overlay networks." These networks are like private tunnels, allowing your devices to talk to each other securely and directly. With Clan's built-in overlay networks and automatically configured services, connecting your devices becomes seamless, secure, and hassle-free. + +- **Security Through Separation:** Clan employs sandboxing and virtual machines, a technology that runs code in isolated environments - so even if you explore new Clans, your system remains protected from potential threats. + +- **Reliable:** With Clan, your data and services are preserved for the long haul. We focus on self-hosted backups and integration with the [Fediverse](https://de.wikipedia.org/wiki/Fediverse), a network of interconnected, independent online communities, so your digital life remains uninterrupted and under your control. + + +## A Glimpse at Clan's Features + +- **Social Scaling:** Choose between creating a private sanctuary for your closest contacts, a dynamic space for a self-contained community, or embracing the open web with public Clans anyone can join. + +{{ video(name="show_join.webm")}} + +- **Seamless VM Integration:** Applications running in virtual machines can appear and behave as if they're part of your main operating system — a blend of power and simplicity. + +{{ video(name="show_run.webm")}} + +- **Robust Backup Management:** Keep your data safe _forever_ - never worry about cloud services disappearing in 10 years. + +{{ asciinema(name="backups.cast") }} + +- **Intuitive Secret Management:** Clan simplifies digital security by automating the creation and management of encryption keys and passwords for your services. + +{{ asciinema(name="secrets.cast") }} + +- **Remote Install:** Set up and manage Clan systems anywhere in the world with just a QR scan or SSH access, making remote installations as easy as snapping a photo or sharing a link. + +{{ asciinema(name="nixos-install.cast") }} + + +## Who Stands to Benefit? + +Clan is for anyone and everyone who believes in the power of open source technology to connect, empower, and protect. From system administrators to less tech-savvy individuals, small business owners to privacy-conscious users, Clan offers something for everyone — a way to reclaim control and redefine how we interact with technology. + +## Join the Revolution + +Ready to control your digital world? Clan is more than a tool—it's a movement. Secure your data, manage your systems easily, or connect with others how you like. Start with Clan for a better digital future. + +Connect with us on our [Matrix channel at clan.lol](https://matrix.to/#/#clan:lassul.us) or through our IRC bridges (coming soon). + +Want to see the code? Check it out [on our Gitea](https://git.clan.lol/clan/clan-core) or [on GitHub](https://github.com/clan-lol/clan-core). + +Or follow our RSS feed by clicking in the top right corner! + +Join us and be part of changing technology for the better, together. + + diff --git a/docs/site/blog/posts/2024-04-16-new-docs.md b/docs/site/blog/posts/2024-04-16-new-docs.md new file mode 100644 index 00000000..13833527 --- /dev/null +++ b/docs/site/blog/posts/2024-04-16-new-docs.md @@ -0,0 +1,14 @@ +--- +title: "New documentation site and weekly new meetup" +date: 2024-04-16T14:36:16+02:00 +draft: false +authors: + - Lassulus + - Mic92 +--- + +Last week, we added a new documentation hub for clan at [docs.clan.lol](https://docs.clan.lol). +We are still working on improving the installation procedures, so stay tuned. +We now have weekly office hours where people are invited to hangout and ask questions. +They are every Wednesday 15:30 UTC (17:30 CEST) in our [jitsi](https://jitsi.lassul.us/clan.lol). +Otherwise drop by in our [matrix channel](https://matrix.to/#/#clan:lassul.us). diff --git a/docs/site/faq/index.md b/docs/site/faq/index.md deleted file mode 100644 index 5e4a818a..00000000 --- a/docs/site/faq/index.md +++ /dev/null @@ -1,15 +0,0 @@ -# FAQ - -??? Question "Why is targetHost necessary?" - - When using `clan machines install [machine ][targetHost]` - - Why is targetHost necessary if you already configured target host in the configuration? - -??? Question "How to check if the correct installation medium?" - - How to warn and check if it is the only installation medium? - -??? Question "How are submodules handled in/with clan?" - - How are submodules handled in/with clan? diff --git a/docs/site/static/asciinema-player/asciinema-player.css b/docs/site/static/asciinema-player/asciinema-player.css new file mode 100644 index 00000000..3688b233 --- /dev/null +++ b/docs/site/static/asciinema-player/asciinema-player.css @@ -0,0 +1,2117 @@ +div.ap-wrapper { + outline: none; + height: 100%; + display: flex; + justify-content: center; +} +div.ap-wrapper .title-bar { + display: none; + top: -78px; + transition: top 0.15s linear; + position: absolute; + left: 0; + right: 0; + box-sizing: content-box; + font-size: 20px; + line-height: 1em; + padding: 15px; + font-family: sans-serif; + color: white; + background-color: rgba(0, 0, 0, 0.8); +} +div.ap-wrapper .title-bar img { + vertical-align: middle; + height: 48px; + margin-right: 16px; +} +div.ap-wrapper .title-bar a { + color: white; + text-decoration: underline; +} +div.ap-wrapper .title-bar a:hover { + text-decoration: none; +} +div.ap-wrapper:fullscreen { + background-color: #000; + width: 100%; + align-items: center; +} +div.ap-wrapper:fullscreen div.ap-player { + position: static; +} +div.ap-wrapper:fullscreen .title-bar { + display: initial; +} +div.ap-wrapper:fullscreen.hud .title-bar { + top: 0; +} +div.ap-wrapper div.ap-player { + text-align: left; + display: inline-block; + padding: 0px; + position: relative; + box-sizing: content-box; + overflow: hidden; + max-width: 100%; + border-radius: 4px; + font-size: 15px; + background-color: var(--term-color-background); +} +.ap-player { + --term-color-foreground: #ffffff; + --term-color-background: #000000; + --term-color-0: var(--term-color-foreground); + --term-color-1: var(--term-color-foreground); + --term-color-2: var(--term-color-foreground); + --term-color-3: var(--term-color-foreground); + --term-color-4: var(--term-color-foreground); + --term-color-5: var(--term-color-foreground); + --term-color-6: var(--term-color-foreground); + --term-color-7: var(--term-color-foreground); + --term-color-8: var(--term-color-0); + --term-color-9: var(--term-color-1); + --term-color-10: var(--term-color-2); + --term-color-11: var(--term-color-3); + --term-color-12: var(--term-color-4); + --term-color-13: var(--term-color-5); + --term-color-14: var(--term-color-6); + --term-color-15: var(--term-color-7); +} +.ap-player .fg-default { + color: var(--term-color-foreground); +} +.ap-player .fg-bg { + color: var(--term-color-background); +} +.ap-player .bg-default { + background-color: var(--term-color-background); +} +.ap-player .bg-fg { + background-color: var(--term-color-foreground); +} +.ap-player .fg-0 { + color: var(--term-color-0); +} +.ap-player .bg-0 { + background-color: var(--term-color-0); +} +.ap-player .fg-1 { + color: var(--term-color-1); +} +.ap-player .bg-1 { + background-color: var(--term-color-1); +} +.ap-player .fg-2 { + color: var(--term-color-2); +} +.ap-player .bg-2 { + background-color: var(--term-color-2); +} +.ap-player .fg-3 { + color: var(--term-color-3); +} +.ap-player .bg-3 { + background-color: var(--term-color-3); +} +.ap-player .fg-4 { + color: var(--term-color-4); +} +.ap-player .bg-4 { + background-color: var(--term-color-4); +} +.ap-player .fg-5 { + color: var(--term-color-5); +} +.ap-player .bg-5 { + background-color: var(--term-color-5); +} +.ap-player .fg-6 { + color: var(--term-color-6); +} +.ap-player .bg-6 { + background-color: var(--term-color-6); +} +.ap-player .fg-7 { + color: var(--term-color-7); +} +.ap-player .bg-7 { + background-color: var(--term-color-7); +} +.ap-player .fg-8 { + color: var(--term-color-8); +} +.ap-player .bg-8 { + background-color: var(--term-color-8); +} +.ap-player .fg-9 { + color: var(--term-color-9); +} +.ap-player .bg-9 { + background-color: var(--term-color-9); +} +.ap-player .fg-10 { + color: var(--term-color-10); +} +.ap-player .bg-10 { + background-color: var(--term-color-10); +} +.ap-player .fg-11 { + color: var(--term-color-11); +} +.ap-player .bg-11 { + background-color: var(--term-color-11); +} +.ap-player .fg-12 { + color: var(--term-color-12); +} +.ap-player .bg-12 { + background-color: var(--term-color-12); +} +.ap-player .fg-13 { + color: var(--term-color-13); +} +.ap-player .bg-13 { + background-color: var(--term-color-13); +} +.ap-player .fg-14 { + color: var(--term-color-14); +} +.ap-player .bg-14 { + background-color: var(--term-color-14); +} +.ap-player .fg-15 { + color: var(--term-color-15); +} +.ap-player .bg-15 { + background-color: var(--term-color-15); +} +.ap-player .fg-8, +.ap-player .fg-9, +.ap-player .fg-10, +.ap-player .fg-11, +.ap-player .fg-12, +.ap-player .fg-13, +.ap-player .fg-14, +.ap-player .fg-15 { + font-weight: bold; +} +pre.ap-terminal { + box-sizing: content-box; + overflow: hidden; + padding: 0; + margin: 0px; + display: block; + white-space: pre; + word-wrap: normal; + word-break: normal; + border-radius: 0; + border-style: solid; + cursor: text; + border-width: 0.75em; + color: var(--term-color-foreground); + background-color: var(--term-color-background); + border-color: var(--term-color-background); + font-family: Consolas, Menlo, 'Bitstream Vera Sans Mono', monospace, 'Powerline Symbols'; + font-variant-ligatures: none; +} +pre.ap-terminal .ap-line { + letter-spacing: normal; + overflow: hidden; +} +pre.ap-terminal .ap-line span { + padding: 0; + display: inline-block; + height: 100%; +} +pre.ap-terminal .ap-line { + display: block; + width: 200%; +} +pre.ap-terminal .ap-line .ap-cursor-a { + display: inline-block; +} +pre.ap-terminal .ap-line .ap-cursor-b { + display: none; + border-radius: 0.05em; +} +pre.ap-terminal .ap-line .ap-blink { + visibility: hidden; +} +pre.ap-terminal.ap-cursor .ap-line .ap-cursor-a { + display: none; +} +pre.ap-terminal.ap-cursor .ap-line .ap-cursor-b { + display: inline-block; +} +pre.ap-terminal.ap-blink .ap-line .ap-blink { + visibility: visible; +} +pre.ap-terminal .ap-bright { + font-weight: bold; +} +pre.ap-terminal .ap-faint { + opacity: 0.5; +} +pre.ap-terminal .ap-underline { + text-decoration: underline; +} +pre.ap-terminal .ap-italic { + font-style: italic; +} +pre.ap-terminal .ap-strikethrough { + text-decoration: line-through; +} +div.ap-player div.ap-control-bar { + width: 100%; + height: 32px; + display: flex; + justify-content: space-between; + align-items: stretch; + background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5) 0%, #000000 25%, #000000 100%); + color: #bbb; + box-sizing: content-box; + line-height: 1; + position: absolute; + bottom: 0; + left: 0; + opacity: 0; + transition: opacity 0.15s linear; + user-select: none; + z-index: 30; +} +div.ap-player div.ap-control-bar * { + box-sizing: inherit; + font-size: 0; + font-family: Helvetica, Arial, sans-serif; + font-weight: bold; +} +div.ap-control-bar svg.ap-icon path { + fill: #bbb; +} +div.ap-control-bar span.ap-playback-button { + display: block; + flex: 0 0 auto; + cursor: pointer; + height: 12px; + width: 12px; + padding: 10px; +} +div.ap-control-bar span.ap-playback-button svg { + height: 12px; + width: 12px; +} +div.ap-control-bar span.ap-timer { + display: block; + flex: 0 0 auto; + min-width: 50px; + margin: 0 10px; + height: 100%; + text-align: center; + font-size: 11px; + line-height: 34px; + cursor: default; +} +div.ap-control-bar span.ap-timer span { + display: inline-block; + font-size: inherit; +} +div.ap-control-bar span.ap-timer .ap-time-remaining { + display: none; +} +div.ap-control-bar span.ap-timer:hover .ap-time-elapsed { + display: none; +} +div.ap-control-bar span.ap-timer:hover .ap-time-remaining { + display: inline; +} +div.ap-control-bar .ap-progressbar { + display: block; + flex: 1 1 auto; + height: 100%; + padding: 0 10px; +} +div.ap-control-bar .ap-progressbar .ap-bar { + display: block; + position: relative; + cursor: default; + height: 100%; + font-size: 0; +} +div.ap-control-bar .ap-progressbar .ap-bar .ap-gutter { + display: block; + position: absolute; + top: 15px; + left: 0; + right: 0; + height: 3px; + background-color: #333; +} +div.ap-control-bar .ap-progressbar .ap-bar .ap-gutter .ap-gutter-fill { + display: inline-block; + height: 100%; + background-color: #bbb; + border-radius: 3px; + z-index: 10; +} +div.ap-control-bar.ap-seekable .ap-progressbar .ap-bar { + cursor: pointer; +} +div.ap-control-bar .ap-fullscreen-button { + display: block; + flex: 0 0 auto; + width: 14px; + height: 14px; + padding: 9px; + cursor: pointer; +} +div.ap-control-bar .ap-fullscreen-button svg { + width: 14px; + height: 14px; +} +div.ap-control-bar .ap-fullscreen-button svg:first-child { + display: inline; +} +div.ap-control-bar .ap-fullscreen-button svg:last-child { + display: none; +} +div.ap-wrapper.ap-hud .ap-control-bar { + opacity: 1; +} +div.ap-wrapper:fullscreen .ap-fullscreen-button svg:first-child { + display: none; +} +div.ap-wrapper:fullscreen .ap-fullscreen-button svg:last-child { + display: inline; +} +span.ap-progressbar span.ap-marker-container { + display: block; + top: 0; + bottom: 0; + width: 21px; + position: absolute; + margin-left: -10px; + z-index: 9; +} +span.ap-marker-container span.ap-marker { + display: block; + top: 13px; + bottom: 12px; + left: 7px; + right: 7px; + background-color: #555; + position: absolute; + transition: top 0.1s, bottom 0.1s, left 0.1s, right 0.1s, background-color 0.1s; + border-radius: 50%; +} +span.ap-marker-container span.ap-marker.ap-marker-past { + background-color: #bbb; +} +span.ap-marker-container span.ap-marker:hover, +span.ap-marker-container:hover span.ap-marker { + background-color: #bbb; + top: 11px; + bottom: 10px; + left: 5px; + right: 5px; +} +span.ap-marker-container span.ap-marker-tooltip { + visibility: hidden; + background-color: #333; + color: #bbb; + text-align: center; + padding: 2px 8px 0px 8px; + border-radius: 4px; + position: absolute; + z-index: 1; + white-space: nowrap; + /* Prevents the text from wrapping and makes sure the tooltip width adapts to the text length */ + font-size: 11px; + line-height: 2em; + bottom: 100%; + left: 50%; + transform: translateX(-50%); +} +span.ap-marker-container:hover span.ap-marker-tooltip { + visibility: visible; +} +.ap-player .ap-overlay { + z-index: 10; + background-repeat: no-repeat; + background-position: center; + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + display: flex; + justify-content: center; + align-items: center; +} +.ap-player .ap-overlay-start { + cursor: pointer; +} +.ap-player .ap-overlay-start .ap-play-button { + font-size: 0px; + position: absolute; + left: 0; + top: 0; + right: 0; + bottom: 0; + text-align: center; + color: white; + height: 80px; + max-height: 66%; + margin: auto; +} +.ap-player .ap-overlay-start .ap-play-button div { + height: 100%; +} +.ap-player .ap-overlay-start .ap-play-button div span { + height: 100%; + display: block; +} +.ap-player .ap-overlay-start .ap-play-button div span svg { + height: 100%; +} +.ap-player .ap-overlay-start .ap-play-button svg { + filter: drop-shadow(0px 0px 5px var(--term-color-background)); +} +.ap-player .ap-overlay-loading .ap-loader { + width: 48px; + height: 48px; + border-radius: 50%; + display: inline-block; + position: relative; + border: 10px solid; + border-color: rgba(255, 255, 255, 0.3) rgba(255, 255, 255, 0.5) rgba(255, 255, 255, 0.7) #ffffff; + border-color: color-mix(in srgb, var(--term-color-foreground) 30%, var(--term-color-background)) color-mix(in srgb, var(--term-color-foreground) 50%, var(--term-color-background)) color-mix(in srgb, var(--term-color-foreground) 70%, var(--term-color-background)) color-mix(in srgb, var(--term-color-foreground) 100%, var(--term-color-background)); + box-sizing: border-box; + animation: ap-loader-rotation 1s linear infinite; +} +.ap-player .ap-overlay-info span { + font-family: Consolas, Menlo, 'Bitstream Vera Sans Mono', monospace, 'Powerline Symbols'; + font-variant-ligatures: none; + font-size: 2em; +} +.ap-player .ap-overlay-info span .ap-line { + letter-spacing: normal; + overflow: hidden; +} +.ap-player .ap-overlay-info span .ap-line span { + padding: 0; + display: inline-block; + height: 100%; +} +.ap-player .ap-overlay-error span { + font-size: 8em; +} +@keyframes ap-loader-rotation { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(360deg); + } +} +.ap-terminal .fg-16 { + color: #000000; +} +.ap-terminal .bg-16 { + background-color: #000000; +} +.ap-terminal .fg-17 { + color: #00005f; +} +.ap-terminal .bg-17 { + background-color: #00005f; +} +.ap-terminal .fg-18 { + color: #000087; +} +.ap-terminal .bg-18 { + background-color: #000087; +} +.ap-terminal .fg-19 { + color: #0000af; +} +.ap-terminal .bg-19 { + background-color: #0000af; +} +.ap-terminal .fg-20 { + color: #0000d7; +} +.ap-terminal .bg-20 { + background-color: #0000d7; +} +.ap-terminal .fg-21 { + color: #0000ff; +} +.ap-terminal .bg-21 { + background-color: #0000ff; +} +.ap-terminal .fg-22 { + color: #005f00; +} +.ap-terminal .bg-22 { + background-color: #005f00; +} +.ap-terminal .fg-23 { + color: #005f5f; +} +.ap-terminal .bg-23 { + background-color: #005f5f; +} +.ap-terminal .fg-24 { + color: #005f87; +} +.ap-terminal .bg-24 { + background-color: #005f87; +} +.ap-terminal .fg-25 { + color: #005faf; +} +.ap-terminal .bg-25 { + background-color: #005faf; +} +.ap-terminal .fg-26 { + color: #005fd7; +} +.ap-terminal .bg-26 { + background-color: #005fd7; +} +.ap-terminal .fg-27 { + color: #005fff; +} +.ap-terminal .bg-27 { + background-color: #005fff; +} +.ap-terminal .fg-28 { + color: #008700; +} +.ap-terminal .bg-28 { + background-color: #008700; +} +.ap-terminal .fg-29 { + color: #00875f; +} +.ap-terminal .bg-29 { + background-color: #00875f; +} +.ap-terminal .fg-30 { + color: #008787; +} +.ap-terminal .bg-30 { + background-color: #008787; +} +.ap-terminal .fg-31 { + color: #0087af; +} +.ap-terminal .bg-31 { + background-color: #0087af; +} +.ap-terminal .fg-32 { + color: #0087d7; +} +.ap-terminal .bg-32 { + background-color: #0087d7; +} +.ap-terminal .fg-33 { + color: #0087ff; +} +.ap-terminal .bg-33 { + background-color: #0087ff; +} +.ap-terminal .fg-34 { + color: #00af00; +} +.ap-terminal .bg-34 { + background-color: #00af00; +} +.ap-terminal .fg-35 { + color: #00af5f; +} +.ap-terminal .bg-35 { + background-color: #00af5f; +} +.ap-terminal .fg-36 { + color: #00af87; +} +.ap-terminal .bg-36 { + background-color: #00af87; +} +.ap-terminal .fg-37 { + color: #00afaf; +} +.ap-terminal .bg-37 { + background-color: #00afaf; +} +.ap-terminal .fg-38 { + color: #00afd7; +} +.ap-terminal .bg-38 { + background-color: #00afd7; +} +.ap-terminal .fg-39 { + color: #00afff; +} +.ap-terminal .bg-39 { + background-color: #00afff; +} +.ap-terminal .fg-40 { + color: #00d700; +} +.ap-terminal .bg-40 { + background-color: #00d700; +} +.ap-terminal .fg-41 { + color: #00d75f; +} +.ap-terminal .bg-41 { + background-color: #00d75f; +} +.ap-terminal .fg-42 { + color: #00d787; +} +.ap-terminal .bg-42 { + background-color: #00d787; +} +.ap-terminal .fg-43 { + color: #00d7af; +} +.ap-terminal .bg-43 { + background-color: #00d7af; +} +.ap-terminal .fg-44 { + color: #00d7d7; +} +.ap-terminal .bg-44 { + background-color: #00d7d7; +} +.ap-terminal .fg-45 { + color: #00d7ff; +} +.ap-terminal .bg-45 { + background-color: #00d7ff; +} +.ap-terminal .fg-46 { + color: #00ff00; +} +.ap-terminal .bg-46 { + background-color: #00ff00; +} +.ap-terminal .fg-47 { + color: #00ff5f; +} +.ap-terminal .bg-47 { + background-color: #00ff5f; +} +.ap-terminal .fg-48 { + color: #00ff87; +} +.ap-terminal .bg-48 { + background-color: #00ff87; +} +.ap-terminal .fg-49 { + color: #00ffaf; +} +.ap-terminal .bg-49 { + background-color: #00ffaf; +} +.ap-terminal .fg-50 { + color: #00ffd7; +} +.ap-terminal .bg-50 { + background-color: #00ffd7; +} +.ap-terminal .fg-51 { + color: #00ffff; +} +.ap-terminal .bg-51 { + background-color: #00ffff; +} +.ap-terminal .fg-52 { + color: #5f0000; +} +.ap-terminal .bg-52 { + background-color: #5f0000; +} +.ap-terminal .fg-53 { + color: #5f005f; +} +.ap-terminal .bg-53 { + background-color: #5f005f; +} +.ap-terminal .fg-54 { + color: #5f0087; +} +.ap-terminal .bg-54 { + background-color: #5f0087; +} +.ap-terminal .fg-55 { + color: #5f00af; +} +.ap-terminal .bg-55 { + background-color: #5f00af; +} +.ap-terminal .fg-56 { + color: #5f00d7; +} +.ap-terminal .bg-56 { + background-color: #5f00d7; +} +.ap-terminal .fg-57 { + color: #5f00ff; +} +.ap-terminal .bg-57 { + background-color: #5f00ff; +} +.ap-terminal .fg-58 { + color: #5f5f00; +} +.ap-terminal .bg-58 { + background-color: #5f5f00; +} +.ap-terminal .fg-59 { + color: #5f5f5f; +} +.ap-terminal .bg-59 { + background-color: #5f5f5f; +} +.ap-terminal .fg-60 { + color: #5f5f87; +} +.ap-terminal .bg-60 { + background-color: #5f5f87; +} +.ap-terminal .fg-61 { + color: #5f5faf; +} +.ap-terminal .bg-61 { + background-color: #5f5faf; +} +.ap-terminal .fg-62 { + color: #5f5fd7; +} +.ap-terminal .bg-62 { + background-color: #5f5fd7; +} +.ap-terminal .fg-63 { + color: #5f5fff; +} +.ap-terminal .bg-63 { + background-color: #5f5fff; +} +.ap-terminal .fg-64 { + color: #5f8700; +} +.ap-terminal .bg-64 { + background-color: #5f8700; +} +.ap-terminal .fg-65 { + color: #5f875f; +} +.ap-terminal .bg-65 { + background-color: #5f875f; +} +.ap-terminal .fg-66 { + color: #5f8787; +} +.ap-terminal .bg-66 { + background-color: #5f8787; +} +.ap-terminal .fg-67 { + color: #5f87af; +} +.ap-terminal .bg-67 { + background-color: #5f87af; +} +.ap-terminal .fg-68 { + color: #5f87d7; +} +.ap-terminal .bg-68 { + background-color: #5f87d7; +} +.ap-terminal .fg-69 { + color: #5f87ff; +} +.ap-terminal .bg-69 { + background-color: #5f87ff; +} +.ap-terminal .fg-70 { + color: #5faf00; +} +.ap-terminal .bg-70 { + background-color: #5faf00; +} +.ap-terminal .fg-71 { + color: #5faf5f; +} +.ap-terminal .bg-71 { + background-color: #5faf5f; +} +.ap-terminal .fg-72 { + color: #5faf87; +} +.ap-terminal .bg-72 { + background-color: #5faf87; +} +.ap-terminal .fg-73 { + color: #5fafaf; +} +.ap-terminal .bg-73 { + background-color: #5fafaf; +} +.ap-terminal .fg-74 { + color: #5fafd7; +} +.ap-terminal .bg-74 { + background-color: #5fafd7; +} +.ap-terminal .fg-75 { + color: #5fafff; +} +.ap-terminal .bg-75 { + background-color: #5fafff; +} +.ap-terminal .fg-76 { + color: #5fd700; +} +.ap-terminal .bg-76 { + background-color: #5fd700; +} +.ap-terminal .fg-77 { + color: #5fd75f; +} +.ap-terminal .bg-77 { + background-color: #5fd75f; +} +.ap-terminal .fg-78 { + color: #5fd787; +} +.ap-terminal .bg-78 { + background-color: #5fd787; +} +.ap-terminal .fg-79 { + color: #5fd7af; +} +.ap-terminal .bg-79 { + background-color: #5fd7af; +} +.ap-terminal .fg-80 { + color: #5fd7d7; +} +.ap-terminal .bg-80 { + background-color: #5fd7d7; +} +.ap-terminal .fg-81 { + color: #5fd7ff; +} +.ap-terminal .bg-81 { + background-color: #5fd7ff; +} +.ap-terminal .fg-82 { + color: #5fff00; +} +.ap-terminal .bg-82 { + background-color: #5fff00; +} +.ap-terminal .fg-83 { + color: #5fff5f; +} +.ap-terminal .bg-83 { + background-color: #5fff5f; +} +.ap-terminal .fg-84 { + color: #5fff87; +} +.ap-terminal .bg-84 { + background-color: #5fff87; +} +.ap-terminal .fg-85 { + color: #5fffaf; +} +.ap-terminal .bg-85 { + background-color: #5fffaf; +} +.ap-terminal .fg-86 { + color: #5fffd7; +} +.ap-terminal .bg-86 { + background-color: #5fffd7; +} +.ap-terminal .fg-87 { + color: #5fffff; +} +.ap-terminal .bg-87 { + background-color: #5fffff; +} +.ap-terminal .fg-88 { + color: #870000; +} +.ap-terminal .bg-88 { + background-color: #870000; +} +.ap-terminal .fg-89 { + color: #87005f; +} +.ap-terminal .bg-89 { + background-color: #87005f; +} +.ap-terminal .fg-90 { + color: #870087; +} +.ap-terminal .bg-90 { + background-color: #870087; +} +.ap-terminal .fg-91 { + color: #8700af; +} +.ap-terminal .bg-91 { + background-color: #8700af; +} +.ap-terminal .fg-92 { + color: #8700d7; +} +.ap-terminal .bg-92 { + background-color: #8700d7; +} +.ap-terminal .fg-93 { + color: #8700ff; +} +.ap-terminal .bg-93 { + background-color: #8700ff; +} +.ap-terminal .fg-94 { + color: #875f00; +} +.ap-terminal .bg-94 { + background-color: #875f00; +} +.ap-terminal .fg-95 { + color: #875f5f; +} +.ap-terminal .bg-95 { + background-color: #875f5f; +} +.ap-terminal .fg-96 { + color: #875f87; +} +.ap-terminal .bg-96 { + background-color: #875f87; +} +.ap-terminal .fg-97 { + color: #875faf; +} +.ap-terminal .bg-97 { + background-color: #875faf; +} +.ap-terminal .fg-98 { + color: #875fd7; +} +.ap-terminal .bg-98 { + background-color: #875fd7; +} +.ap-terminal .fg-99 { + color: #875fff; +} +.ap-terminal .bg-99 { + background-color: #875fff; +} +.ap-terminal .fg-100 { + color: #878700; +} +.ap-terminal .bg-100 { + background-color: #878700; +} +.ap-terminal .fg-101 { + color: #87875f; +} +.ap-terminal .bg-101 { + background-color: #87875f; +} +.ap-terminal .fg-102 { + color: #878787; +} +.ap-terminal .bg-102 { + background-color: #878787; +} +.ap-terminal .fg-103 { + color: #8787af; +} +.ap-terminal .bg-103 { + background-color: #8787af; +} +.ap-terminal .fg-104 { + color: #8787d7; +} +.ap-terminal .bg-104 { + background-color: #8787d7; +} +.ap-terminal .fg-105 { + color: #8787ff; +} +.ap-terminal .bg-105 { + background-color: #8787ff; +} +.ap-terminal .fg-106 { + color: #87af00; +} +.ap-terminal .bg-106 { + background-color: #87af00; +} +.ap-terminal .fg-107 { + color: #87af5f; +} +.ap-terminal .bg-107 { + background-color: #87af5f; +} +.ap-terminal .fg-108 { + color: #87af87; +} +.ap-terminal .bg-108 { + background-color: #87af87; +} +.ap-terminal .fg-109 { + color: #87afaf; +} +.ap-terminal .bg-109 { + background-color: #87afaf; +} +.ap-terminal .fg-110 { + color: #87afd7; +} +.ap-terminal .bg-110 { + background-color: #87afd7; +} +.ap-terminal .fg-111 { + color: #87afff; +} +.ap-terminal .bg-111 { + background-color: #87afff; +} +.ap-terminal .fg-112 { + color: #87d700; +} +.ap-terminal .bg-112 { + background-color: #87d700; +} +.ap-terminal .fg-113 { + color: #87d75f; +} +.ap-terminal .bg-113 { + background-color: #87d75f; +} +.ap-terminal .fg-114 { + color: #87d787; +} +.ap-terminal .bg-114 { + background-color: #87d787; +} +.ap-terminal .fg-115 { + color: #87d7af; +} +.ap-terminal .bg-115 { + background-color: #87d7af; +} +.ap-terminal .fg-116 { + color: #87d7d7; +} +.ap-terminal .bg-116 { + background-color: #87d7d7; +} +.ap-terminal .fg-117 { + color: #87d7ff; +} +.ap-terminal .bg-117 { + background-color: #87d7ff; +} +.ap-terminal .fg-118 { + color: #87ff00; +} +.ap-terminal .bg-118 { + background-color: #87ff00; +} +.ap-terminal .fg-119 { + color: #87ff5f; +} +.ap-terminal .bg-119 { + background-color: #87ff5f; +} +.ap-terminal .fg-120 { + color: #87ff87; +} +.ap-terminal .bg-120 { + background-color: #87ff87; +} +.ap-terminal .fg-121 { + color: #87ffaf; +} +.ap-terminal .bg-121 { + background-color: #87ffaf; +} +.ap-terminal .fg-122 { + color: #87ffd7; +} +.ap-terminal .bg-122 { + background-color: #87ffd7; +} +.ap-terminal .fg-123 { + color: #87ffff; +} +.ap-terminal .bg-123 { + background-color: #87ffff; +} +.ap-terminal .fg-124 { + color: #af0000; +} +.ap-terminal .bg-124 { + background-color: #af0000; +} +.ap-terminal .fg-125 { + color: #af005f; +} +.ap-terminal .bg-125 { + background-color: #af005f; +} +.ap-terminal .fg-126 { + color: #af0087; +} +.ap-terminal .bg-126 { + background-color: #af0087; +} +.ap-terminal .fg-127 { + color: #af00af; +} +.ap-terminal .bg-127 { + background-color: #af00af; +} +.ap-terminal .fg-128 { + color: #af00d7; +} +.ap-terminal .bg-128 { + background-color: #af00d7; +} +.ap-terminal .fg-129 { + color: #af00ff; +} +.ap-terminal .bg-129 { + background-color: #af00ff; +} +.ap-terminal .fg-130 { + color: #af5f00; +} +.ap-terminal .bg-130 { + background-color: #af5f00; +} +.ap-terminal .fg-131 { + color: #af5f5f; +} +.ap-terminal .bg-131 { + background-color: #af5f5f; +} +.ap-terminal .fg-132 { + color: #af5f87; +} +.ap-terminal .bg-132 { + background-color: #af5f87; +} +.ap-terminal .fg-133 { + color: #af5faf; +} +.ap-terminal .bg-133 { + background-color: #af5faf; +} +.ap-terminal .fg-134 { + color: #af5fd7; +} +.ap-terminal .bg-134 { + background-color: #af5fd7; +} +.ap-terminal .fg-135 { + color: #af5fff; +} +.ap-terminal .bg-135 { + background-color: #af5fff; +} +.ap-terminal .fg-136 { + color: #af8700; +} +.ap-terminal .bg-136 { + background-color: #af8700; +} +.ap-terminal .fg-137 { + color: #af875f; +} +.ap-terminal .bg-137 { + background-color: #af875f; +} +.ap-terminal .fg-138 { + color: #af8787; +} +.ap-terminal .bg-138 { + background-color: #af8787; +} +.ap-terminal .fg-139 { + color: #af87af; +} +.ap-terminal .bg-139 { + background-color: #af87af; +} +.ap-terminal .fg-140 { + color: #af87d7; +} +.ap-terminal .bg-140 { + background-color: #af87d7; +} +.ap-terminal .fg-141 { + color: #af87ff; +} +.ap-terminal .bg-141 { + background-color: #af87ff; +} +.ap-terminal .fg-142 { + color: #afaf00; +} +.ap-terminal .bg-142 { + background-color: #afaf00; +} +.ap-terminal .fg-143 { + color: #afaf5f; +} +.ap-terminal .bg-143 { + background-color: #afaf5f; +} +.ap-terminal .fg-144 { + color: #afaf87; +} +.ap-terminal .bg-144 { + background-color: #afaf87; +} +.ap-terminal .fg-145 { + color: #afafaf; +} +.ap-terminal .bg-145 { + background-color: #afafaf; +} +.ap-terminal .fg-146 { + color: #afafd7; +} +.ap-terminal .bg-146 { + background-color: #afafd7; +} +.ap-terminal .fg-147 { + color: #afafff; +} +.ap-terminal .bg-147 { + background-color: #afafff; +} +.ap-terminal .fg-148 { + color: #afd700; +} +.ap-terminal .bg-148 { + background-color: #afd700; +} +.ap-terminal .fg-149 { + color: #afd75f; +} +.ap-terminal .bg-149 { + background-color: #afd75f; +} +.ap-terminal .fg-150 { + color: #afd787; +} +.ap-terminal .bg-150 { + background-color: #afd787; +} +.ap-terminal .fg-151 { + color: #afd7af; +} +.ap-terminal .bg-151 { + background-color: #afd7af; +} +.ap-terminal .fg-152 { + color: #afd7d7; +} +.ap-terminal .bg-152 { + background-color: #afd7d7; +} +.ap-terminal .fg-153 { + color: #afd7ff; +} +.ap-terminal .bg-153 { + background-color: #afd7ff; +} +.ap-terminal .fg-154 { + color: #afff00; +} +.ap-terminal .bg-154 { + background-color: #afff00; +} +.ap-terminal .fg-155 { + color: #afff5f; +} +.ap-terminal .bg-155 { + background-color: #afff5f; +} +.ap-terminal .fg-156 { + color: #afff87; +} +.ap-terminal .bg-156 { + background-color: #afff87; +} +.ap-terminal .fg-157 { + color: #afffaf; +} +.ap-terminal .bg-157 { + background-color: #afffaf; +} +.ap-terminal .fg-158 { + color: #afffd7; +} +.ap-terminal .bg-158 { + background-color: #afffd7; +} +.ap-terminal .fg-159 { + color: #afffff; +} +.ap-terminal .bg-159 { + background-color: #afffff; +} +.ap-terminal .fg-160 { + color: #d70000; +} +.ap-terminal .bg-160 { + background-color: #d70000; +} +.ap-terminal .fg-161 { + color: #d7005f; +} +.ap-terminal .bg-161 { + background-color: #d7005f; +} +.ap-terminal .fg-162 { + color: #d70087; +} +.ap-terminal .bg-162 { + background-color: #d70087; +} +.ap-terminal .fg-163 { + color: #d700af; +} +.ap-terminal .bg-163 { + background-color: #d700af; +} +.ap-terminal .fg-164 { + color: #d700d7; +} +.ap-terminal .bg-164 { + background-color: #d700d7; +} +.ap-terminal .fg-165 { + color: #d700ff; +} +.ap-terminal .bg-165 { + background-color: #d700ff; +} +.ap-terminal .fg-166 { + color: #d75f00; +} +.ap-terminal .bg-166 { + background-color: #d75f00; +} +.ap-terminal .fg-167 { + color: #d75f5f; +} +.ap-terminal .bg-167 { + background-color: #d75f5f; +} +.ap-terminal .fg-168 { + color: #d75f87; +} +.ap-terminal .bg-168 { + background-color: #d75f87; +} +.ap-terminal .fg-169 { + color: #d75faf; +} +.ap-terminal .bg-169 { + background-color: #d75faf; +} +.ap-terminal .fg-170 { + color: #d75fd7; +} +.ap-terminal .bg-170 { + background-color: #d75fd7; +} +.ap-terminal .fg-171 { + color: #d75fff; +} +.ap-terminal .bg-171 { + background-color: #d75fff; +} +.ap-terminal .fg-172 { + color: #d78700; +} +.ap-terminal .bg-172 { + background-color: #d78700; +} +.ap-terminal .fg-173 { + color: #d7875f; +} +.ap-terminal .bg-173 { + background-color: #d7875f; +} +.ap-terminal .fg-174 { + color: #d78787; +} +.ap-terminal .bg-174 { + background-color: #d78787; +} +.ap-terminal .fg-175 { + color: #d787af; +} +.ap-terminal .bg-175 { + background-color: #d787af; +} +.ap-terminal .fg-176 { + color: #d787d7; +} +.ap-terminal .bg-176 { + background-color: #d787d7; +} +.ap-terminal .fg-177 { + color: #d787ff; +} +.ap-terminal .bg-177 { + background-color: #d787ff; +} +.ap-terminal .fg-178 { + color: #d7af00; +} +.ap-terminal .bg-178 { + background-color: #d7af00; +} +.ap-terminal .fg-179 { + color: #d7af5f; +} +.ap-terminal .bg-179 { + background-color: #d7af5f; +} +.ap-terminal .fg-180 { + color: #d7af87; +} +.ap-terminal .bg-180 { + background-color: #d7af87; +} +.ap-terminal .fg-181 { + color: #d7afaf; +} +.ap-terminal .bg-181 { + background-color: #d7afaf; +} +.ap-terminal .fg-182 { + color: #d7afd7; +} +.ap-terminal .bg-182 { + background-color: #d7afd7; +} +.ap-terminal .fg-183 { + color: #d7afff; +} +.ap-terminal .bg-183 { + background-color: #d7afff; +} +.ap-terminal .fg-184 { + color: #d7d700; +} +.ap-terminal .bg-184 { + background-color: #d7d700; +} +.ap-terminal .fg-185 { + color: #d7d75f; +} +.ap-terminal .bg-185 { + background-color: #d7d75f; +} +.ap-terminal .fg-186 { + color: #d7d787; +} +.ap-terminal .bg-186 { + background-color: #d7d787; +} +.ap-terminal .fg-187 { + color: #d7d7af; +} +.ap-terminal .bg-187 { + background-color: #d7d7af; +} +.ap-terminal .fg-188 { + color: #d7d7d7; +} +.ap-terminal .bg-188 { + background-color: #d7d7d7; +} +.ap-terminal .fg-189 { + color: #d7d7ff; +} +.ap-terminal .bg-189 { + background-color: #d7d7ff; +} +.ap-terminal .fg-190 { + color: #d7ff00; +} +.ap-terminal .bg-190 { + background-color: #d7ff00; +} +.ap-terminal .fg-191 { + color: #d7ff5f; +} +.ap-terminal .bg-191 { + background-color: #d7ff5f; +} +.ap-terminal .fg-192 { + color: #d7ff87; +} +.ap-terminal .bg-192 { + background-color: #d7ff87; +} +.ap-terminal .fg-193 { + color: #d7ffaf; +} +.ap-terminal .bg-193 { + background-color: #d7ffaf; +} +.ap-terminal .fg-194 { + color: #d7ffd7; +} +.ap-terminal .bg-194 { + background-color: #d7ffd7; +} +.ap-terminal .fg-195 { + color: #d7ffff; +} +.ap-terminal .bg-195 { + background-color: #d7ffff; +} +.ap-terminal .fg-196 { + color: #ff0000; +} +.ap-terminal .bg-196 { + background-color: #ff0000; +} +.ap-terminal .fg-197 { + color: #ff005f; +} +.ap-terminal .bg-197 { + background-color: #ff005f; +} +.ap-terminal .fg-198 { + color: #ff0087; +} +.ap-terminal .bg-198 { + background-color: #ff0087; +} +.ap-terminal .fg-199 { + color: #ff00af; +} +.ap-terminal .bg-199 { + background-color: #ff00af; +} +.ap-terminal .fg-200 { + color: #ff00d7; +} +.ap-terminal .bg-200 { + background-color: #ff00d7; +} +.ap-terminal .fg-201 { + color: #ff00ff; +} +.ap-terminal .bg-201 { + background-color: #ff00ff; +} +.ap-terminal .fg-202 { + color: #ff5f00; +} +.ap-terminal .bg-202 { + background-color: #ff5f00; +} +.ap-terminal .fg-203 { + color: #ff5f5f; +} +.ap-terminal .bg-203 { + background-color: #ff5f5f; +} +.ap-terminal .fg-204 { + color: #ff5f87; +} +.ap-terminal .bg-204 { + background-color: #ff5f87; +} +.ap-terminal .fg-205 { + color: #ff5faf; +} +.ap-terminal .bg-205 { + background-color: #ff5faf; +} +.ap-terminal .fg-206 { + color: #ff5fd7; +} +.ap-terminal .bg-206 { + background-color: #ff5fd7; +} +.ap-terminal .fg-207 { + color: #ff5fff; +} +.ap-terminal .bg-207 { + background-color: #ff5fff; +} +.ap-terminal .fg-208 { + color: #ff8700; +} +.ap-terminal .bg-208 { + background-color: #ff8700; +} +.ap-terminal .fg-209 { + color: #ff875f; +} +.ap-terminal .bg-209 { + background-color: #ff875f; +} +.ap-terminal .fg-210 { + color: #ff8787; +} +.ap-terminal .bg-210 { + background-color: #ff8787; +} +.ap-terminal .fg-211 { + color: #ff87af; +} +.ap-terminal .bg-211 { + background-color: #ff87af; +} +.ap-terminal .fg-212 { + color: #ff87d7; +} +.ap-terminal .bg-212 { + background-color: #ff87d7; +} +.ap-terminal .fg-213 { + color: #ff87ff; +} +.ap-terminal .bg-213 { + background-color: #ff87ff; +} +.ap-terminal .fg-214 { + color: #ffaf00; +} +.ap-terminal .bg-214 { + background-color: #ffaf00; +} +.ap-terminal .fg-215 { + color: #ffaf5f; +} +.ap-terminal .bg-215 { + background-color: #ffaf5f; +} +.ap-terminal .fg-216 { + color: #ffaf87; +} +.ap-terminal .bg-216 { + background-color: #ffaf87; +} +.ap-terminal .fg-217 { + color: #ffafaf; +} +.ap-terminal .bg-217 { + background-color: #ffafaf; +} +.ap-terminal .fg-218 { + color: #ffafd7; +} +.ap-terminal .bg-218 { + background-color: #ffafd7; +} +.ap-terminal .fg-219 { + color: #ffafff; +} +.ap-terminal .bg-219 { + background-color: #ffafff; +} +.ap-terminal .fg-220 { + color: #ffd700; +} +.ap-terminal .bg-220 { + background-color: #ffd700; +} +.ap-terminal .fg-221 { + color: #ffd75f; +} +.ap-terminal .bg-221 { + background-color: #ffd75f; +} +.ap-terminal .fg-222 { + color: #ffd787; +} +.ap-terminal .bg-222 { + background-color: #ffd787; +} +.ap-terminal .fg-223 { + color: #ffd7af; +} +.ap-terminal .bg-223 { + background-color: #ffd7af; +} +.ap-terminal .fg-224 { + color: #ffd7d7; +} +.ap-terminal .bg-224 { + background-color: #ffd7d7; +} +.ap-terminal .fg-225 { + color: #ffd7ff; +} +.ap-terminal .bg-225 { + background-color: #ffd7ff; +} +.ap-terminal .fg-226 { + color: #ffff00; +} +.ap-terminal .bg-226 { + background-color: #ffff00; +} +.ap-terminal .fg-227 { + color: #ffff5f; +} +.ap-terminal .bg-227 { + background-color: #ffff5f; +} +.ap-terminal .fg-228 { + color: #ffff87; +} +.ap-terminal .bg-228 { + background-color: #ffff87; +} +.ap-terminal .fg-229 { + color: #ffffaf; +} +.ap-terminal .bg-229 { + background-color: #ffffaf; +} +.ap-terminal .fg-230 { + color: #ffffd7; +} +.ap-terminal .bg-230 { + background-color: #ffffd7; +} +.ap-terminal .fg-231 { + color: #ffffff; +} +.ap-terminal .bg-231 { + background-color: #ffffff; +} +.ap-terminal .fg-232 { + color: #080808; +} +.ap-terminal .bg-232 { + background-color: #080808; +} +.ap-terminal .fg-233 { + color: #121212; +} +.ap-terminal .bg-233 { + background-color: #121212; +} +.ap-terminal .fg-234 { + color: #1c1c1c; +} +.ap-terminal .bg-234 { + background-color: #1c1c1c; +} +.ap-terminal .fg-235 { + color: #262626; +} +.ap-terminal .bg-235 { + background-color: #262626; +} +.ap-terminal .fg-236 { + color: #303030; +} +.ap-terminal .bg-236 { + background-color: #303030; +} +.ap-terminal .fg-237 { + color: #3a3a3a; +} +.ap-terminal .bg-237 { + background-color: #3a3a3a; +} +.ap-terminal .fg-238 { + color: #444444; +} +.ap-terminal .bg-238 { + background-color: #444444; +} +.ap-terminal .fg-239 { + color: #4e4e4e; +} +.ap-terminal .bg-239 { + background-color: #4e4e4e; +} +.ap-terminal .fg-240 { + color: #585858; +} +.ap-terminal .bg-240 { + background-color: #585858; +} +.ap-terminal .fg-241 { + color: #626262; +} +.ap-terminal .bg-241 { + background-color: #626262; +} +.ap-terminal .fg-242 { + color: #6c6c6c; +} +.ap-terminal .bg-242 { + background-color: #6c6c6c; +} +.ap-terminal .fg-243 { + color: #767676; +} +.ap-terminal .bg-243 { + background-color: #767676; +} +.ap-terminal .fg-244 { + color: #808080; +} +.ap-terminal .bg-244 { + background-color: #808080; +} +.ap-terminal .fg-245 { + color: #8a8a8a; +} +.ap-terminal .bg-245 { + background-color: #8a8a8a; +} +.ap-terminal .fg-246 { + color: #949494; +} +.ap-terminal .bg-246 { + background-color: #949494; +} +.ap-terminal .fg-247 { + color: #9e9e9e; +} +.ap-terminal .bg-247 { + background-color: #9e9e9e; +} +.ap-terminal .fg-248 { + color: #a8a8a8; +} +.ap-terminal .bg-248 { + background-color: #a8a8a8; +} +.ap-terminal .fg-249 { + color: #b2b2b2; +} +.ap-terminal .bg-249 { + background-color: #b2b2b2; +} +.ap-terminal .fg-250 { + color: #bcbcbc; +} +.ap-terminal .bg-250 { + background-color: #bcbcbc; +} +.ap-terminal .fg-251 { + color: #c6c6c6; +} +.ap-terminal .bg-251 { + background-color: #c6c6c6; +} +.ap-terminal .fg-252 { + color: #d0d0d0; +} +.ap-terminal .bg-252 { + background-color: #d0d0d0; +} +.ap-terminal .fg-253 { + color: #dadada; +} +.ap-terminal .bg-253 { + background-color: #dadada; +} +.ap-terminal .fg-254 { + color: #e4e4e4; +} +.ap-terminal .bg-254 { + background-color: #e4e4e4; +} +.ap-terminal .fg-255 { + color: #eeeeee; +} +.ap-terminal .bg-255 { + background-color: #eeeeee; +} +.asciinema-player-theme-asciinema { + --term-color-foreground: #cccccc; + --term-color-background: #121314; + --term-color-0: hsl(0, 0%, 0%); + --term-color-1: hsl(343, 70%, 55%); + --term-color-2: hsl(103, 70%, 44%); + --term-color-3: hsl(43, 70%, 55%); + --term-color-4: hsl(193, 70%, 49.5%); + --term-color-5: hsl(283, 70%, 60.5%); + --term-color-6: hsl(163, 70%, 60.5%); + --term-color-7: hsl(0, 0%, 85%); + --term-color-8: hsl(0, 0%, 30%); + --term-color-9: hsl(343, 70%, 55%); + --term-color-10: hsl(103, 70%, 44%); + --term-color-11: hsl(43, 70%, 55%); + --term-color-12: hsl(193, 70%, 49.5%); + --term-color-13: hsl(283, 70%, 60.5%); + --term-color-14: hsl(163, 70%, 60.5%); + --term-color-15: hsl(0, 0%, 100%); +} +/* + Based on Dracula: https://draculatheme.com + */ +.asciinema-player-theme-dracula { + --term-color-foreground: #f8f8f2; + --term-color-background: #282a36; + --term-color-0: #21222c; + --term-color-1: #ff5555; + --term-color-2: #50fa7b; + --term-color-3: #f1fa8c; + --term-color-4: #bd93f9; + --term-color-5: #ff79c6; + --term-color-6: #8be9fd; + --term-color-7: #f8f8f2; + --term-color-8: #6272a4; + --term-color-9: #ff6e6e; + --term-color-10: #69ff94; + --term-color-11: #ffffa5; + --term-color-12: #d6acff; + --term-color-13: #ff92df; + --term-color-14: #a4ffff; + --term-color-15: #ffffff; +} +/* Based on Monokai from base16 collection - https://github.com/chriskempson/base16 */ +.asciinema-player-theme-monokai { + --term-color-foreground: #f8f8f2; + --term-color-background: #272822; + --term-color-0: #272822; + --term-color-1: #f92672; + --term-color-2: #a6e22e; + --term-color-3: #f4bf75; + --term-color-4: #66d9ef; + --term-color-5: #ae81ff; + --term-color-6: #a1efe4; + --term-color-7: #f8f8f2; + --term-color-8: #75715e; + --term-color-15: #f9f8f5; +} +/* + Based on Nord: https://github.com/arcticicestudio/nord + Via: https://github.com/neilotoole/asciinema-theme-nord + */ +.asciinema-player-theme-nord { + --term-color-foreground: #eceff4; + --term-color-background: #2e3440; + --term-color-0: #3b4252; + --term-color-1: #bf616a; + --term-color-2: #a3be8c; + --term-color-3: #ebcb8b; + --term-color-4: #81a1c1; + --term-color-5: #b48ead; + --term-color-6: #88c0d0; + --term-color-7: #eceff4; +} +.asciinema-player-theme-seti { + --term-color-foreground: #cacecd; + --term-color-background: #111213; + --term-color-0: #323232; + --term-color-1: #c22832; + --term-color-2: #8ec43d; + --term-color-3: #e0c64f; + --term-color-4: #43a5d5; + --term-color-5: #8b57b5; + --term-color-6: #8ec43d; + --term-color-7: #eeeeee; + --term-color-15: #ffffff; +} +/* + Based on Solarized Dark: https://ethanschoonover.com/solarized/ + */ +.asciinema-player-theme-solarized-dark { + --term-color-foreground: #839496; + --term-color-background: #002b36; + --term-color-0: #073642; + --term-color-1: #dc322f; + --term-color-2: #859900; + --term-color-3: #b58900; + --term-color-4: #268bd2; + --term-color-5: #d33682; + --term-color-6: #2aa198; + --term-color-7: #eee8d5; + --term-color-8: #002b36; + --term-color-9: #cb4b16; + --term-color-10: #586e75; + --term-color-11: #657b83; + --term-color-12: #839496; + --term-color-13: #6c71c4; + --term-color-14: #93a1a1; + --term-color-15: #fdf6e3; +} +/* + Based on Solarized Light: https://ethanschoonover.com/solarized/ + */ +.asciinema-player-theme-solarized-light { + --term-color-foreground: #657b83; + --term-color-background: #fdf6e3; + --term-color-0: #073642; + --term-color-1: #dc322f; + --term-color-2: #859900; + --term-color-3: #b58900; + --term-color-4: #268bd2; + --term-color-5: #d33682; + --term-color-6: #2aa198; + --term-color-7: #eee8d5; + --term-color-8: #002b36; + --term-color-9: #cb4b16; + --term-color-10: #586e75; + --term-color-11: #657c83; + --term-color-12: #839496; + --term-color-13: #6c71c4; + --term-color-14: #93a1a1; + --term-color-15: #fdf6e3; +} +.asciinema-player-theme-solarized-light .ap-overlay-start .ap-play-button svg .ap-play-btn-fill { + fill: var(--term-color-1); +} +.asciinema-player-theme-solarized-light .ap-overlay-start .ap-play-button svg .ap-play-btn-stroke { + stroke: var(--term-color-1); +} +/* + Based on Tango: https://en.wikipedia.org/wiki/Tango_Desktop_Project + */ +.asciinema-player-theme-tango { + --term-color-foreground: #cccccc; + --term-color-background: #121314; + --term-color-0: #000000; + --term-color-1: #cc0000; + --term-color-2: #4e9a06; + --term-color-3: #c4a000; + --term-color-4: #3465a4; + --term-color-5: #75507b; + --term-color-6: #06989a; + --term-color-7: #d3d7cf; + --term-color-8: #555753; + --term-color-9: #ef2929; + --term-color-10: #8ae234; + --term-color-11: #fce94f; + --term-color-12: #729fcf; + --term-color-13: #ad7fa8; + --term-color-14: #34e2e2; + --term-color-15: #eeeeec; +} diff --git a/docs/site/static/asciinema-player/asciinema-player.min.js b/docs/site/static/asciinema-player/asciinema-player.min.js new file mode 100644 index 00000000..81616815 --- /dev/null +++ b/docs/site/static/asciinema-player/asciinema-player.min.js @@ -0,0 +1 @@ +var AsciinemaPlayer=function(A){"use strict";const g={};const I=Symbol("solid-proxy"),B=Symbol("solid-track"),Q={equals:(A,g)=>A===g};let C=Y;const E=1,e=2,t={owned:null,cleanups:null,context:null,owner:null};var i=null;let o=null,s=null,n=null,r=null,a=0;function c(A,g){const I=s,B=i,Q=0===A.length,C=Q?t:{owned:null,cleanups:null,context:null,owner:void 0===g?B:g},E=Q?A:()=>A((()=>l((()=>K(C)))));i=C,s=null;try{return J(E,!0)}finally{s=I,i=B}}function D(A,g){const I={value:A,observers:null,observerSlots:null,comparator:(g=g?Object.assign({},Q,g):Q).equals||void 0};return[u.bind(I),A=>("function"==typeof A&&(A=A(I.value)),F(I,A))]}function w(A,g,I){d(f(A,g,!1,E))}function y(A,g,I){I=I?Object.assign({},Q,I):Q;const B=f(A,g,!0,0);return B.observers=null,B.observerSlots=null,B.comparator=I.equals||void 0,d(B),u.bind(B)}function h(A){return J(A,!1)}function l(A){if(null===s)return A();const g=s;s=null;try{return A()}finally{s=g}}function G(A){!function(A,g,I){C=p;const B=f(A,g,!1,E);B.user=!0,r?r.push(B):d(B)}((()=>l(A)))}function k(A){return null===i||(null===i.cleanups?i.cleanups=[A]:i.cleanups.push(A)),A}function N(){return s}function M(A){const g=y(A),I=y((()=>H(g())));return I.toArray=()=>{const A=I();return Array.isArray(A)?A:null!=A?[A]:[]},I}function u(){const A=o;if(this.sources&&(this.state||A))if(this.state===E||A)d(this);else{const A=n;n=null,J((()=>S(this)),!1),n=A}if(s){const A=this.observers?this.observers.length:0;s.sources?(s.sources.push(this),s.sourceSlots.push(A)):(s.sources=[this],s.sourceSlots=[A]),this.observers?(this.observers.push(s),this.observerSlots.push(s.sources.length-1)):(this.observers=[s],this.observerSlots=[s.sources.length-1])}return this.value}function F(A,g,I){let B=A.value;return A.comparator&&A.comparator(B,g)||(A.value=g,A.observers&&A.observers.length&&J((()=>{for(let g=0;g1e6)throw n=[],new Error}),!1)),g}function d(A){if(!A.fn)return;K(A);const g=i,I=s,B=a;s=i=A,function(A,g,I){let B;try{B=A.fn(g)}catch(g){A.pure&&(A.state=E,A.owned&&A.owned.forEach(K),A.owned=null),U(g)}(!A.updatedAt||A.updatedAt<=I)&&(null!=A.updatedAt&&"observers"in A?F(A,B):A.value=B,A.updatedAt=I)}(A,A.value,B),s=I,i=g}function f(A,g,I,B=E,Q){const C={fn:A,state:B,updatedAt:null,owned:null,sources:null,sourceSlots:null,cleanups:null,value:g,owner:i,context:null,pure:I};return null===i||i!==t&&(i.owned?i.owned.push(C):i.owned=[C]),C}function R(A){const g=o;if(0===A.state||g)return;if(A.state===e||g)return S(A);if(A.suspense&&l(A.suspense.inFallback))return A.suspense.effects.push(A);const I=[A];for(;(A=A.owner)&&(!A.updatedAt||A.updatedAt=0;B--)if((A=I[B]).state===E||g)d(A);else if(A.state===e||g){const g=n;n=null,J((()=>S(A,I[0])),!1),n=g}}function J(A,g){if(n)return A();let I=!1;g||(n=[]),r?I=!0:r=[],a++;try{const g=A();return function(A){n&&(Y(n),n=null);if(A)return;const g=r;r=null,g.length&&J((()=>C(g)),!1)}(I),g}catch(A){I||(r=null),n=null,U(A)}}function Y(A){for(let g=0;gA(g||{})))}function q(A){const g="fallback"in A&&{fallback:()=>A.fallback};return y(function(A,g,I={}){let Q=[],C=[],E=[],e=0,t=g.length>1?[]:null;return k((()=>b(E))),()=>{let i,o,s=A()||[];return s[B],l((()=>{let A,g,B,r,a,D,w,y,h,l=s.length;if(0===l)0!==e&&(b(E),E=[],Q=[],C=[],e=0,t&&(t=[])),I.fallback&&(Q=[m],C[0]=c((A=>(E[0]=A,I.fallback()))),e=1);else if(0===e){for(C=new Array(l),o=0;o=D&&y>=D&&Q[w]===s[y];w--,y--)B[y]=C[w],r[y]=E[w],t&&(a[y]=t[w]);for(A=new Map,g=new Array(y+1),o=y;o>=D;o--)h=s[o],i=A.get(h),g[o]=void 0===i?-1:i,A.set(h,o);for(i=D;i<=w;i++)h=Q[i],o=A.get(h),void 0!==o&&-1!==o?(B[o]=C[i],r[o]=E[i],t&&(a[o]=t[i]),o=g[o],A.set(h,o)):E[i]();for(o=D;oA.each),A.children,g||void 0))}function x(A){const g="fallback"in A&&{fallback:()=>A.fallback};return y(function(A,g,I={}){let Q,C=[],E=[],e=[],t=[],i=0;return k((()=>b(e))),()=>{const o=A()||[];return o[B],l((()=>{if(0===o.length)return 0!==i&&(b(e),e=[],C=[],E=[],i=0,t=[]),I.fallback&&(C=[m],E[0]=c((A=>(e[0]=A,I.fallback()))),i=1),E;for(C[0]===m&&(e[0](),e=[],C=[],E=[],i=0),Q=0;Qo[Q])):Q>=C.length&&(E[Q]=c(s));for(;QA.each),A.children,g||void 0))}function T(A){let g=!1;const I=A.keyed,B=y((()=>A.when),void 0,{equals:(A,I)=>g?A===I:!A==!I});return y((()=>{const Q=B();if(Q){const B=A.children,C="function"==typeof B&&B.length>0;return g=I||C,C?l((()=>B(Q))):B}return A.fallback}),void 0,void 0)}function j(A){let g=!1,I=!1;const B=M((()=>A.children)),Q=y((()=>{let A=B();Array.isArray(A)||(A=[A]);for(let g=0;gA[0]===I[0]&&(g?A[1]===I[1]:!A[1]==!I[1])&&A[2]===I[2]});return y((()=>{const[B,C,E]=Q();if(B<0)return A.fallback;const e=E.children,t="function"==typeof e&&e.length>0;return g=I||t,t?l((()=>e(C))):e}),void 0,void 0)}function W(A){return A}const Z="_$DX_DELEGATE";function X(A,g,I,B={}){let Q;return c((B=>{Q=B,g===document?A():AA(g,A(),g.firstChild?null:void 0,I)}),B.owner),()=>{Q(),g.textContent=""}}function O(A,g,I){const B=document.createElement("template");B.innerHTML=A;let Q=B.content.firstChild;return I&&(Q=Q.firstChild),Q}function z(A,g=window.document){const I=g[Z]||(g[Z]=new Set);for(let B=0,Q=A.length;BB.call(A,I[1],g))}else A.addEventListener(g,I)}function _(A,g,I){if(!g)return I?function(A,g,I){null==I?A.removeAttribute(g):A.setAttribute(g,I)}(A,"style"):g;const B=A.style;if("string"==typeof g)return B.cssText=g;let Q,C;for(C in"string"==typeof I&&(B.cssText=I=void 0),I||(I={}),g||(g={}),I)null==g[C]&&B.removeProperty(C),delete I[C];for(C in g)Q=g[C],Q!==I[C]&&(B.setProperty(C,Q),I[C]=Q);return I}function $(A,g,I){return l((()=>A(g,I)))}function AA(A,g,I,B){if(void 0===I||B||(B=[]),"function"!=typeof g)return IA(A,g,B,I);w((B=>IA(A,g(),B,I)),B)}function gA(A){const I=`$$${A.type}`;let B=A.composedPath&&A.composedPath()[0]||A.target;for(A.target!==B&&Object.defineProperty(A,"target",{configurable:!0,value:B}),Object.defineProperty(A,"currentTarget",{configurable:!0,get:()=>B||document}),g.registry&&!g.done&&(g.done=!0,document.querySelectorAll("[id^=pl-]").forEach((g=>{for(;g&&8!==g.nodeType&&g.nodeValue!=="pl-"+A;){let A=g.nextSibling;g.remove(),g=A}g&&g.remove()})));B;){const g=B[I];if(g&&!B.disabled){const Q=B[`${I}Data`];if(void 0!==Q?g.call(B,Q,A):g.call(B,A),A.cancelBubble)return}B=B._$host||B.parentNode||B.host}}function IA(A,I,B,Q,C){for(g.context&&!B&&(B=[...A.childNodes]);"function"==typeof B;)B=B();if(I===B)return B;const E=typeof I,e=void 0!==Q;if(A=e&&B[0]&&B[0].parentNode||A,"string"===E||"number"===E){if(g.context)return B;if("number"===E&&(I=I.toString()),e){let g=B[0];g&&3===g.nodeType?g.data=I:g=document.createTextNode(I),B=CA(A,B,Q,g)}else B=""!==B&&"string"==typeof B?A.firstChild.data=I:A.textContent=I}else if(null==I||"boolean"===E){if(g.context)return B;B=CA(A,B,Q)}else{if("function"===E)return w((()=>{let g=I();for(;"function"==typeof g;)g=g();B=IA(A,g,B,Q)})),()=>B;if(Array.isArray(I)){const E=[],t=B&&Array.isArray(B);if(BA(E,I,B,C))return w((()=>B=IA(A,E,B,Q,!0))),()=>B;if(g.context){if(!E.length)return B;for(let A=0;AB-e){const Q=g[E];for(;e=0;C--){const E=g[C];if(Q!==E){const g=E.parentNode===A;B||C?g&&E.remove():g?A.replaceChild(Q,E):A.insertBefore(Q,I)}else B=!0}}else A.insertBefore(Q,I);return[Q]}let EA;const eA=new Array(128).fill(void 0);function tA(A){return eA[A]}eA.push(void 0,null,!0,!1);let iA=eA.length;function oA(A){const g=tA(A);return function(A){A<132||(eA[A]=iA,iA=A)}(A),g}const sA=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});sA.decode();let nA=null;function rA(){return null!==nA&&0!==nA.byteLength||(nA=new Uint8Array(EA.memory.buffer)),nA}function aA(A,g){return sA.decode(rA().subarray(A,A+g))}function cA(A){iA===eA.length&&eA.push(eA.length+1);const g=iA;return iA=eA[g],eA[g]=A,g}function DA(A){const g=typeof A;if("number"==g||"boolean"==g||null==A)return`${A}`;if("string"==g)return`"${A}"`;if("symbol"==g){const g=A.description;return null==g?"Symbol":`Symbol(${g})`}if("function"==g){const g=A.name;return"string"==typeof g&&g.length>0?`Function(${g})`:"Function"}if(Array.isArray(A)){const g=A.length;let I="[";g>0&&(I+=DA(A[0]));for(let B=1;B1))return toString.call(A);if(B=I[1],"Object"==B)try{return"Object("+JSON.stringify(A)+")"}catch(A){return"Object"}return A instanceof Error?`${A.name}: ${A.message}\n${A.stack}`:B}let wA=0;const yA=new TextEncoder("utf-8"),hA="function"==typeof yA.encodeInto?function(A,g){return yA.encodeInto(A,g)}:function(A,g){const I=yA.encode(A);return g.set(I),{read:A.length,written:I.length}};function lA(A,g,I){if(void 0===I){const I=yA.encode(A),B=g(I.length);return rA().subarray(B,B+I.length).set(I),wA=I.length,B}let B=A.length,Q=g(B);const C=rA();let E=0;for(;E127)break;C[Q+E]=g}if(E!==B){0!==E&&(A=A.slice(E)),Q=I(Q,B,B=E+3*A.length);const g=rA().subarray(Q+E,Q+B);E+=hA(A,g).written}return wA=E,Q}let GA=null;function kA(){return null!==GA&&0!==GA.byteLength||(GA=new Int32Array(EA.memory.buffer)),GA}let NA=null;function MA(A,g){return(null!==NA&&0!==NA.byteLength||(NA=new Uint32Array(EA.memory.buffer)),NA).subarray(A/4,A/4+g)}class uA{static __wrap(A){const g=Object.create(uA.prototype);return g.ptr=A,g}__destroy_into_raw(){const A=this.ptr;return this.ptr=0,A}free(){const A=this.__destroy_into_raw();EA.__wbg_vtwrapper_free(A)}feed(A){const g=lA(A,EA.__wbindgen_malloc,EA.__wbindgen_realloc),I=wA;return oA(EA.vtwrapper_feed(this.ptr,g,I))}inspect(){try{const I=EA.__wbindgen_add_to_stack_pointer(-16);EA.vtwrapper_inspect(I,this.ptr);var A=kA()[I/4+0],g=kA()[I/4+1];return aA(A,g)}finally{EA.__wbindgen_add_to_stack_pointer(16),EA.__wbindgen_free(A,g)}}get_size(){try{const B=EA.__wbindgen_add_to_stack_pointer(-16);EA.vtwrapper_get_size(B,this.ptr);var A=kA()[B/4+0],g=kA()[B/4+1],I=MA(A,g).slice();return EA.__wbindgen_free(A,4*g),I}finally{EA.__wbindgen_add_to_stack_pointer(16)}}get_line(A){return oA(EA.vtwrapper_get_line(this.ptr,A))}get_cursor(){return oA(EA.vtwrapper_get_cursor(this.ptr))}}function FA(){const A={wbg:{}};return A.wbg.__wbindgen_object_drop_ref=function(A){oA(A)},A.wbg.__wbindgen_error_new=function(A,g){return cA(new Error(aA(A,g)))},A.wbg.__wbindgen_number_new=function(A){return cA(A)},A.wbg.__wbindgen_bigint_from_u64=function(A){return cA(BigInt.asUintN(64,A))},A.wbg.__wbindgen_string_new=function(A,g){return cA(aA(A,g))},A.wbg.__wbg_set_20cbc34131e76824=function(A,g,I){tA(A)[oA(g)]=oA(I)},A.wbg.__wbg_new_b525de17f44a8943=function(){return cA(new Array)},A.wbg.__wbg_new_f841cc6f2098f4b5=function(){return cA(new Map)},A.wbg.__wbg_new_f9876326328f45ed=function(){return cA(new Object)},A.wbg.__wbindgen_is_string=function(A){return"string"==typeof tA(A)},A.wbg.__wbg_set_17224bc548dd1d7b=function(A,g,I){tA(A)[g>>>0]=oA(I)},A.wbg.__wbg_set_388c4c6422704173=function(A,g,I){return cA(tA(A).set(tA(g),tA(I)))},A.wbg.__wbindgen_debug_string=function(A,g){const I=lA(DA(tA(g)),EA.__wbindgen_malloc,EA.__wbindgen_realloc),B=wA;kA()[A/4+1]=B,kA()[A/4+0]=I},A.wbg.__wbindgen_throw=function(A,g){throw new Error(aA(A,g))},A}function dA(A,g){return EA=A.exports,fA.__wbindgen_wasm_module=g,GA=null,NA=null,nA=null,EA}async function fA(A){const g=FA();("string"==typeof A||"function"==typeof Request&&A instanceof Request||"function"==typeof URL&&A instanceof URL)&&(A=fetch(A));const{instance:I,module:B}=await async function(A,g){if("function"==typeof Response&&A instanceof Response){if("function"==typeof WebAssembly.instantiateStreaming)try{return await WebAssembly.instantiateStreaming(A,g)}catch(g){if("application/wasm"==A.headers.get("Content-Type"))throw g;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",g)}const I=await A.arrayBuffer();return await WebAssembly.instantiate(I,g)}{const I=await WebAssembly.instantiate(A,g);return I instanceof WebAssembly.Instance?{instance:I,module:A}:I}}(await A,g);return dA(I,B)}var RA=Object.freeze({__proto__:null,VtWrapper:uA,create:function(A,g,I,B){const Q=EA.create(A,g,I,B);return uA.__wrap(Q)},default:fA,initSync:function(A){const g=FA();return A instanceof WebAssembly.Module||(A=new WebAssembly.Module(A)),dA(new WebAssembly.Instance(A,g),A)}});const JA=[62,0,0,0,63,52,53,54,55,56,57,58,59,60,61,0,0,0,0,0,0,0,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,0,0,0,0,0,0,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];function YA(A){return JA[A-43]}const pA=function(A){let g,I=A.endsWith("==")?2:A.endsWith("=")?1:0,B=A.length,Q=new Uint8Array(B/4*3);for(let I=0,C=0;I>16,Q[C+1]=g>>8&255,Q[C+2]=255&g;return Q.subarray(0,Q.length-I)}("AGFzbQEAAAAB7AEdYAJ/fwF/YAN/f38Bf2ACf38AYAN/f38AYAF/AGAEf39/fwBgAX8Bf2AFf39/f38AYAV/f39/fwF/YAABf2AGf39/f39/AGAAAGAEf39/fwF/YAF/AX5gAXwBf2ABfgF/YAd/f39/f39/AX9gAn5/AX9gF39/f39/f39/f39/f39/f39/f39/f39/AX9gD39/f39/f39/f39/f39/fwF/YAt/f39/f39/f39/fwF/YAN/f34AYAZ/f39/f38Bf2AFf398f38AYAR/fH9/AGAFf39+f38AYAR/fn9/AGAFf399f38AYAR/fX9/AAKsAw4Dd2JnGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAQDd2JnFF9fd2JpbmRnZW5fZXJyb3JfbmV3AAADd2JnFV9fd2JpbmRnZW5fbnVtYmVyX25ldwAOA3diZxpfX3diaW5kZ2VuX2JpZ2ludF9mcm9tX3U2NAAPA3diZxVfX3diaW5kZ2VuX3N0cmluZ19uZXcAAAN3YmcaX193Ymdfc2V0XzIwY2JjMzQxMzFlNzY4MjQAAwN3YmcaX193YmdfbmV3X2I1MjVkZTE3ZjQ0YTg5NDMACQN3YmcaX193YmdfbmV3X2Y4NDFjYzZmMjA5OGY0YjUACQN3YmcaX193YmdfbmV3X2Y5ODc2MzI2MzI4ZjQ1ZWQACQN3YmcUX193YmluZGdlbl9pc19zdHJpbmcABgN3YmcaX193Ymdfc2V0XzE3MjI0YmM1NDhkZDFkN2IAAwN3YmcaX193Ymdfc2V0XzM4OGM0YzY0MjI3MDQxNzMAAQN3YmcXX193YmluZGdlbl9kZWJ1Z19zdHJpbmcAAgN3YmcQX193YmluZGdlbl90aHJvdwACA+IB4AEGBAEAAwICCAECAgIAAAEQCAcAEQQBAgIKAAkABAAKAAISAwMDBAUCBwgFEwIUBQUCBRUFBQAAAAAEBAUHCQECAgMHBAIDBAUCBwICCgAAAAAAAAMAAAYAAAUFAwQAAgMDAAADAgICAwMBAAAABAMFBgICAQEAAgIAAwsABAIIDAIGAAAAAAQAAAAAAwICAgAABAQEARYEFxkHGwgAAAUEAAQAAQADAgQEDAUAAAAAAgABAAABAAAAAgAAAQMDBgAAAwMDAAADAQAGBAAAAAAAAAILCwAAAQADAwEADQ0NBAQFAXABf38FAwEAEQYJAX8BQYCAwAALB/IBDAZtZW1vcnkCABRfX3diZ192dHdyYXBwZXJfZnJlZQBUBmNyZWF0ZQCNAQ52dHdyYXBwZXJfZmVlZABMEXZ0d3JhcHBlcl9pbnNwZWN0AD4SdnR3cmFwcGVyX2dldF9zaXplAE0SdnR3cmFwcGVyX2dldF9saW5lAHoUdnR3cmFwcGVyX2dldF9jdXJzb3IAfhFfX3diaW5kZ2VuX21hbGxvYwCPARJfX3diaW5kZ2VuX3JlYWxsb2MAogEfX193YmluZGdlbl9hZGRfdG9fc3RhY2tfcG9pbnRlcgDXAQ9fX3diaW5kZ2VuX2ZyZWUAvQEJ5gEBAEEBC37YAckBKWPtAb4BhgG2AZEB0wHWAdgByQEpZe0B2QGxAawBqAGnAacBqQGlAacBqQFapgGjAe0BeaoBmAHtAZ0B7QHCASdb2wHtAZ4BnwFgsgF4cGveAa0BlgHpAWKtAZMB4gHtARvaAbsBigFv3QGkAcQB7QGeAe0BqwGtAZUBkAG5AboBrQHDAe0B7QGSAdwBngHpAbwB7QGXAYkBgwGuAeMBxQHtAcIBJ1zSAVjtAYEBIF2vAesB6gGhATVZiwHGAewB7QGCAc0BXs4BwAHHAcgB7QHsARwtZtUBK1/lAQq14QPgAe4hAgt/AX4jAEEQayILJAACQAJAAkACQAJAAkAgAEH1AU8EQCAAQc3/e08NBiAAQQtqQXhxIQRB3MrAACgCAEUNBUEAIARrIQICf0EAIARBgAJJDQAaQR8gBEH///8HSw0AGiAEQQYgBEEIdmciAGt2QQFxIABBAXRrQT5qCyIFQQJ0QcDHwABqKAIAIgENAUEAIQAMAgsCQAJAAkACfwJAAkBB2MrAACgCACIBQRAgAEEEaiAAQQtJG0EHakF4cSIEQQN2IgB2IgNBA3FFBEAgBEHgysAAKAIATQ0LIAMNAUHcysAAKAIAIgBFDQtBACAAayAAcWhBAnRBwMfAAGooAgAiASgCBEF4cSAEayECIAEoAhAiAEUEQCABQRRqKAIAIQALIAAEQANAIAAoAgRBeHEgBGsiAyACSSEFIAMgAiAFGyECIAAgASAFGyEBIAAoAhAiAwR/IAMFIABBFGooAgALIgANAAsLIAEQIiACQRBJDQUgASAEQQNyNgIEIAEgBGoiBiACQQFyNgIEIAIgBmogAjYCAEHgysAAKAIAIgBFDQQgAEF4cUHQyMAAaiEDQejKwAAoAgAhB0HYysAAKAIAIgVBASAAQQN2dCIAcUUNAiADKAIIDAMLAkAgA0F/c0EBcSAAaiIFQQN0IgBB2MjAAGooAgAiBkEIaigCACIDIABB0MjAAGoiAEcEQCADIAA2AgwgACADNgIIDAELQdjKwAAgAUF+IAV3cTYCAAsgBiAFQQN0IgBBA3I2AgQgACAGaiIAIAAoAgRBAXI2AgQgBkEIaiECDAsLAkBBAEEAQQEgAEEfcSIBdEEBdCIAayAAciADIAF0cSIAayAAcWgiA0EDdCIAQdjIwABqKAIAIgJBCGooAgAiASAAQdDIwABqIgBHBEAgASAANgIMIAAgATYCCAwBC0HYysAAQdjKwAAoAgBBfiADd3E2AgALIAIgBEEDcjYCBCACIARqIgYgA0EDdCAEayIFIgBBAXI2AgQgACAGaiAANgIAQeDKwAAoAgAiAARAIABBeHFB0MjAAGohAUHoysAAKAIAIQcCf0HYysAAKAIAIgNBASAAQQN2dCIAcQRAIAEoAggMAQtB2MrAACAAIANyNgIAIAELIQAgASAHNgIIIAAgBzYCDCAHIAE2AgwgByAANgIIC0HoysAAIAY2AgBB4MrAACAFNgIAIAJBCGohAgwKC0HYysAAIAAgBXI2AgAgAwshACADIAc2AgggACAHNgIMIAcgAzYCDCAHIAA2AggLQejKwAAgBjYCAEHgysAAIAI2AgAMAQsgASACIARqIgBBA3I2AgQgACABaiIAIAAoAgRBAXI2AgQLIAFBCGoiAg0FDAQLIARBAEEZIAVBAXZrIAVBH0YbdCEHQQAhAANAAkAgASgCBEF4cSIDIARJDQAgAyAEayIDIAJPDQAgASEGIAMiAg0AQQAhAiABIQAMAwsgAUEUaigCACIDIAAgAyABIAdBHXZBBHFqQRBqKAIAIgFHGyAAIAMbIQAgB0EBdCEHIAENAAsLIAAgBnJFBEBBACEGQdzKwAAoAgBBAEEBIAV0QQF0IgBrIABycSIARQ0DQQAgAGsgAHFoQQJ0QcDHwABqKAIAIQALIABFDQELA0AgACgCBEF4cSIBIARrIQMgACAGIAIgA0sgASAET3EiARshBiADIAIgARshAiAAKAIQIgEEfyABBSAAQRRqKAIACyIADQALCyAGRQ0AQeDKwAAoAgAiACAETyACIAAgBGtPcQ0AIAQgBmohBSAGECICQCACQRBPBEAgBiAEQQNyNgIEIAUgAkEBcjYCBCACIAVqIAI2AgAgAkGAAk8EQCAFIAIQJAwCCyACQXhxQdDIwABqIQECf0HYysAAKAIAIgNBASACQQN2dCIAcQRAIAEoAggMAQtB2MrAACAAIANyNgIAIAELIQAgASAFNgIIIAAgBTYCDCAFIAE2AgwgBSAANgIIDAELIAYgAiAEaiIAQQNyNgIEIAAgBmoiACAAKAIEQQFyNgIECyAGQQhqIgINAQsCQAJAAkACQAJAAkACQEHgysAAKAIAIgAgBEkEQEHkysAAKAIAIgAgBEsNAiAEQa+ABGpBgIB8cSIAQRB2QAAhASALQQA2AgggC0EAIABBgIB8cSABQX9GIgAbNgIEIAtBACABQRB0IAAbNgIAIAsoAgAiCA0BQQAhAgwIC0HoysAAKAIAIQMgACAEayIBQRBJBEBB6MrAAEEANgIAQeDKwAAoAgAhAEHgysAAQQA2AgAgAyAAQQNyNgIEIAAgA2oiACAAKAIEQQFyNgIEIANBCGohAgwIC0HgysAAIAE2AgBB6MrAACADIARqIgA2AgAgACABQQFyNgIEIAAgAWogATYCACADIARBA3I2AgQgA0EIaiECDAcLIAsoAgghB0HwysAAIAsoAgQiCkHwysAAKAIAaiIBNgIAQfTKwABB9MrAACgCACIAIAEgACABSxs2AgACQAJAAkBB7MrAACgCAARAQcDIwAAhAANAIAAoAgAgACgCBGogCEYNAiAAKAIIIgANAAsMAgtB/MrAACgCACIARQ0FIAAgCEsNBQwHCyAAKAIMQQFxDQAgACgCDEEBdiAHRw0AQezKwAAoAgAiAyAAKAIAIgFPBH8gASAAKAIEaiADSwVBAAsNAQtB/MrAAEH8ysAAKAIAIgAgCCAAIAhJGzYCACAIIApqIQFBwMjAACEAAkACQANAIAEgACgCAEcEQCAAKAIIIgANAQwCCwsgACgCDEEBcQ0AIAAoAgxBAXYgB0YNAQtB7MrAACgCACEJQcDIwAAhAAJAA0AgCSAAKAIATwRAIAAoAgAgACgCBGogCUsNAgsgACgCCCIADQALQQAhAAsgACgCACAAKAIEaiIDQS9rIgBBCGohASAJIAFBB2pBeHEgAWsgAGoiACAAIAlBEGpJGyICQQhqIQYgAkEYaiEAQezKwAAgCEEIaiIBQQdqQXhxIAFrIgEgCGoiBTYCAEHkysAAIAogAWtBKGsiATYCACAFIAFBAXI2AgQgASAFakEoNgIEQfjKwABBgICAATYCACACQRs2AgRBwMjAACkCACEMIAZBCGpByMjAACkCADcCACAGIAw3AgBBzMjAACAHNgIAQcTIwAAgCjYCAEHAyMAAIAg2AgBByMjAACAGNgIAA0AgAEEHNgIEIABBBGoiAEEEaiADSQ0ACyACIAlGDQcgAiAJayIFIAlqIgAgACgCBEF+cTYCBCAJIAVBAXI2AgQgACAFNgIAIAVBgAJPBEAgCSAFECQMCAsgBUF4cUHQyMAAaiEBAn9B2MrAACgCACIDQQEgBUEDdnQiAHEEQCABKAIIDAELQdjKwAAgACADcjYCACABCyEAIAEgCTYCCCAAIAk2AgwgCSABNgIMIAkgADYCCAwHCyAAKAIAIQMgACAINgIAIAAgACgCBCAKajYCBCAIIAhBCGoiAEEHakF4cSAAa2oiBiAEaiIBIQIgBiAEQQNyNgIEIAMgA0EIaiIAQQdqQXhxIABraiIAIAFrIQRB7MrAACgCACAARwRAIABB6MrAACgCAEYNAyAAKAIEQQNxQQFHDQUCQCAAKAIEQXhxIgVBgAJPBEAgABAiDAELIABBDGooAgAiAyAAQQhqKAIAIgFHBEAgASADNgIMIAMgATYCCAwBC0HYysAAQdjKwAAoAgBBfiAFQQN2d3E2AgALIAQgBWohBCAAIAVqIQAMBQtB7MrAACACNgIAQeTKwABB5MrAACgCACAEaiIANgIAIAIgAEEBcjYCBCAGQQhqIQIMBwsgACAAKAIEIApqNgIEQeTKwABB5MrAACgCACAKakHsysAAKAIAIgFBCGoiAEEHakF4cSAAayIAayIDNgIAQezKwAAgACABaiIANgIAIAAgA0EBcjYCBCAAIANqQSg2AgRB+MrAAEGAgIABNgIADAULQeTKwAAgACAEayIBNgIAQezKwABB7MrAACgCACIDIARqIgA2AgAgACABQQFyNgIEIAMgBEEDcjYCBCADQQhqIQIMBQtB6MrAACACNgIAQeDKwABB4MrAACgCACAEaiIANgIAIAIgAEEBcjYCBCAAIAJqIAA2AgAgBkEIaiECDAQLQfzKwAAgCDYCAAwBCyAAIAAoAgRBfnE2AgQgAiAEQQFyNgIEIAIgBGogBDYCACAEQYACTwRAIAIgBBAkIAZBCGohAgwDCyAEQXhxQdDIwABqIQECf0HYysAAKAIAIgNBASAEQQN2dCIAcQRAIAEoAggMAQtB2MrAACAAIANyNgIAIAELIQAgASACNgIIIAAgAjYCDCACIAE2AgwgAiAANgIIIAZBCGohAgwCC0GAy8AAQf8fNgIAQczIwAAgBzYCAEHEyMAAIAo2AgBBwMjAACAINgIAQdzIwABB0MjAADYCAEHkyMAAQdjIwAA2AgBB2MjAAEHQyMAANgIAQezIwABB4MjAADYCAEHgyMAAQdjIwAA2AgBB9MjAAEHoyMAANgIAQejIwABB4MjAADYCAEH8yMAAQfDIwAA2AgBB8MjAAEHoyMAANgIAQYTJwABB+MjAADYCAEH4yMAAQfDIwAA2AgBBjMnAAEGAycAANgIAQYDJwABB+MjAADYCAEGUycAAQYjJwAA2AgBBiMnAAEGAycAANgIAQZzJwABBkMnAADYCAEGQycAAQYjJwAA2AgBBmMnAAEGQycAANgIAQaTJwABBmMnAADYCAEGgycAAQZjJwAA2AgBBrMnAAEGgycAANgIAQajJwABBoMnAADYCAEG0ycAAQajJwAA2AgBBsMnAAEGoycAANgIAQbzJwABBsMnAADYCAEG4ycAAQbDJwAA2AgBBxMnAAEG4ycAANgIAQcDJwABBuMnAADYCAEHMycAAQcDJwAA2AgBByMnAAEHAycAANgIAQdTJwABByMnAADYCAEHQycAAQcjJwAA2AgBB3MnAAEHQycAANgIAQeTJwABB2MnAADYCAEHYycAAQdDJwAA2AgBB7MnAAEHgycAANgIAQeDJwABB2MnAADYCAEH0ycAAQejJwAA2AgBB6MnAAEHgycAANgIAQfzJwABB8MnAADYCAEHwycAAQejJwAA2AgBBhMrAAEH4ycAANgIAQfjJwABB8MnAADYCAEGMysAAQYDKwAA2AgBBgMrAAEH4ycAANgIAQZTKwABBiMrAADYCAEGIysAAQYDKwAA2AgBBnMrAAEGQysAANgIAQZDKwABBiMrAADYCAEGkysAAQZjKwAA2AgBBmMrAAEGQysAANgIAQazKwABBoMrAADYCAEGgysAAQZjKwAA2AgBBtMrAAEGoysAANgIAQajKwABBoMrAADYCAEG8ysAAQbDKwAA2AgBBsMrAAEGoysAANgIAQcTKwABBuMrAADYCAEG4ysAAQbDKwAA2AgBBzMrAAEHAysAANgIAQcDKwABBuMrAADYCAEHUysAAQcjKwAA2AgBByMrAAEHAysAANgIAQdDKwABByMrAADYCAEHsysAAIAhBCGoiAEEHakF4cSAAayIAIAhqIgE2AgBB5MrAACAKIABrQShrIgA2AgAgASAAQQFyNgIEIAAgAWpBKDYCBEH4ysAAQYCAgAE2AgALQQAhAkHkysAAKAIAIgAgBE0NAEHkysAAIAAgBGsiATYCAEHsysAAQezKwAAoAgAiAyAEaiIANgIAIAAgAUEBcjYCBCADIARBA3I2AgQgA0EIaiECCyALQRBqJAAgAgv1BgEFfyAAQQhrIgAoAgRBeHEhAiAAIAJqIQECQAJAAkAgACgCBEEBcQ0AIAAoAgAhAwJAIAAtAARBA3EEQCACIANqIQIgACADayIAQejKwAAoAgBHDQEgASgCBEEDcUEDRw0CQeDKwAAgAjYCACABIAEoAgRBfnE2AgQgACACQQFyNgIEIAAgAmogAjYCAA8LDAILIANBgAJPBEAgABAiDAELIABBDGooAgAiBCAAQQhqKAIAIgVHBEAgBSAENgIMIAQgBTYCCAwBC0HYysAAQdjKwAAoAgBBfiADQQN2d3E2AgALAkAgAS0ABEECcUEBdgRAIAEgASgCBEF+cTYCBCAAIAJBAXI2AgQgACACaiACNgIADAELAkACQAJAQezKwAAoAgAgAUcEQCABQejKwAAoAgBHDQFB6MrAACAANgIAQeDKwABB4MrAACgCACACaiIBNgIAIAAgAUEBcjYCBCAAIAFqIAE2AgAPC0HsysAAIAA2AgBB5MrAAEHkysAAKAIAIAJqIgE2AgAgACABQQFyNgIEIABB6MrAACgCAEYNAQwCCyABKAIEQXhxIgMgAmohAgJAIANBgAJPBEAgARAiDAELIAFBDGooAgAiBCABQQhqKAIAIgFHBEAgASAENgIMIAQgATYCCAwBC0HYysAAQdjKwAAoAgBBfiADQQN2d3E2AgALIAAgAkEBcjYCBCAAIAJqIAI2AgAgAEHoysAAKAIARw0CQeDKwAAgAjYCAAwDC0HgysAAQQA2AgBB6MrAAEEANgIAC0H4ysAAKAIAIAFPDQFB7MrAACgCAEUNAUEAIQICQEHkysAAKAIAQShNDQBB7MrAACgCACEBQcDIwAAhAAJAA0AgASAAKAIATwRAIAAoAgAgACgCBGogAUsNAgsgACgCCCIADQALQQAhAAsgACgCDEEBcQ0AIABBDGooAgAaCxAoDQFB5MrAACgCAEH4ysAAKAIATQ0BQfjKwABBfzYCAA8LIAJBgAJJDQEgACACECRBgMvAAEGAy8AAKAIAQQFrIgA2AgAgAA0AECgaDwsPCyACQXhxQdDIwABqIQECf0HYysAAKAIAIgNBASACQQN2dCICcQRAIAEoAggMAQtB2MrAACACIANyNgIAIAELIQIgASAANgIIIAIgADYCDCAAIAE2AgwgACACNgIIC/gGAQh/AkACQCAAKAIIIgogACgCECIDcgRAAkAgA0UNACABIAJqIQkgAEEUaigCAEEBaiEHIAEhBANAAkAgBCEDIAdBAWsiB0UNACADIAlGDQICfyADLAAAIgVBAE4EQCAFQf8BcSEFIANBAWoMAQsgAy0AAUE/cSEIIAVBH3EhBCAFQV9NBEAgBEEGdCAIciEFIANBAmoMAQsgAy0AAkE/cSAIQQZ0ciEIIAVBcEkEQCAIIARBDHRyIQUgA0EDagwBCyAEQRJ0QYCA8ABxIAMtAANBP3EgCEEGdHJyIgVBgIDEAEYNAyADQQRqCyIEIAYgA2tqIQYgBUGAgMQARw0BDAILCyADIAlGDQACQCADLAAAIgRBAE4NACAEQWBJDQAgBEFwSQ0AIARB/wFxQRJ0QYCA8ABxIAMtAANBP3EgAy0AAkE/cUEGdCADLQABQT9xQQx0cnJyQYCAxABGDQELAkACQCAGRQ0AIAIgBk0EQEEAIQMgAiAGRg0BDAILQQAhAyABIAZqLAAAQUBIDQELIAEhAwsgBiACIAMbIQIgAyABIAMbIQELIApFDQIgAEEMaigCACEGAkAgAkEQTwRAIAEgAhARIQQMAQsgAkUEQEEAIQQMAQsgAkEDcSEFAkAgAkEESQRAQQAhBCABIQMMAQsgAkF8cSEHQQAhBCABIQMDQCAEIAMsAABBv39KaiADLAABQb9/SmogAywAAkG/f0pqIAMsAANBv39KaiEEIANBBGohAyAHQQRrIgcNAAsLIAVFDQADQCAEIAMsAABBv39KaiEEIANBAWohAyAFQQFrIgUNAAsLIAQgBkkEQCAGIARrIgQhBgJAAkACQEEAIAAtACAiAyADQQNGGyIDQQFrDgIAAQILQQAhBiAEIQMMAQsgBEEBdiEDIARBAWpBAXYhBgsgA0EBaiEDIABBBGooAgAhBCAAKAIcIQUgACgCACEAAkADQCADQQFrIgNFDQEgACAFIAQoAhARAABFDQALQQEPC0EBIQMgBUGAgMQARg0CIAAgASACIAQoAgwRAQANAkEAIQMDQCADIAZGBEBBAA8LIANBAWohAyAAIAUgBCgCEBEAAEUNAAsgA0EBayAGSQ8LDAILIAAoAgAgASACIAAoAgQoAgwRAQAhAwsgAw8LIAAoAgAgASACIAAoAgQoAgwRAQAL1gYBCH8CQAJAIABBA2pBfHEiAiAAayIEIAFLDQAgBEEESw0AIAEgBGsiBkEESQ0AIAZBA3EhB0EAIQECQCAAIAJGDQAgBEEDcSEDAkAgAiAAQX9zakEDSQRAIAAhAgwBCyAEQXxxIQggACECA0AgASACLAAAQb9/SmogAiwAAUG/f0pqIAIsAAJBv39KaiACLAADQb9/SmohASACQQRqIQIgCEEEayIIDQALCyADRQ0AA0AgASACLAAAQb9/SmohASACQQFqIQIgA0EBayIDDQALCyAAIARqIQACQCAHRQ0AIAAgBkF8cWoiAiwAAEG/f0ohBSAHQQFGDQAgBSACLAABQb9/SmohBSAHQQJGDQAgBSACLAACQb9/SmohBQsgBkECdiEEIAEgBWohAwNAIAAhASAERQ0CIARBwAEgBEHAAUkbIgVBA3EhBiAFQQJ0IQgCQCAFQfwBcSIHRQRAQQAhAgwBCyABIAdBAnRqIQlBACECA0AgAEUNASACIAAoAgAiAkF/c0EHdiACQQZ2ckGBgoQIcWogAEEEaigCACICQX9zQQd2IAJBBnZyQYGChAhxaiAAQQhqKAIAIgJBf3NBB3YgAkEGdnJBgYKECHFqIABBDGooAgAiAkF/c0EHdiACQQZ2ckGBgoQIcWohAiAJIABBEGoiAEcNAAsLIAQgBWshBCABIAhqIQAgAkEIdkH/gfwHcSACQf+B/AdxakGBgARsQRB2IANqIQMgBkUNAAsCf0EAIAFFDQAaIAEgB0ECdGoiASgCACIAQX9zQQd2IABBBnZyQYGChAhxIgAgBkEBRg0AGiAAIAEoAgQiAEF/c0EHdiAAQQZ2ckGBgoQIcWoiACAGQQJGDQAaIAAgASgCCCIAQX9zQQd2IABBBnZyQYGChAhxagsiAEEIdkH/gRxxIABB/4H8B3FqQYGABGxBEHYgA2oPCyABRQRAQQAPCyABQQNxIQICQCABQQRJBEAMAQsgAUF8cSEBA0AgAyAALAAAQb9/SmogACwAAUG/f0pqIAAsAAJBv39KaiAALAADQb9/SmohAyAAQQRqIQAgAUEEayIBDQALCyACRQ0AA0AgAyAALAAAQb9/SmohAyAAQQFqIQAgAkEBayICDQALCyADC/QGAgp/An4jAEGgAWsiBSQAAkAgAEUNACACRQ0AA0ACQAJAAkAgACACakEYTwRAIAAgAiAAIAJJIgQbQQlJDQMgBA0BIAJBAnQhBkEAIAJrIQdBACACQQR0ayEIA0AgB0EEdCEJIAYEQCABIQMgBiEEA0AgAyAIaiIKKAIAIQsgCiADKAIANgIAIAMgCzYCACADQQRqIQMgBEEBayIEDQALCyABIAlqIQEgAiAAIAJrIgBNDQALDAILIAVBCGoiByABIABBBHRrIgZBCGopAgA3AwAgBSAGKQIANwMAIAJBBHQhCEEAIABrIQkgAiIBIQQDQCAGIARBBHRqIQMDQCAFQRhqIAcpAwAiDTcDACAFIAUpAwAiDjcDECAFQShqIgogA0EIaiILKQIANwMAIAUgAykCADcDICADIA43AgAgCyANNwIAIAcgCikDADcDACAFIAUpAyA3AwAgACAETUUEQCADIAhqIQMgAiAEaiEEDAELCyAEIAlqIgQEQCAEIAEgASAESxshAQwBBSAFKQMAIQ0gBkEIaiAFQQhqIgcpAwA3AgAgBiANNwIAIAFBAkkNBkEBIQQDQCAGIARBBHRqIggpAgAhDSAHIAhBCGoiCikCADcDACAFIA03AwAgAiAEaiEDA0AgBUEYaiAHKQMAIg03AwAgBSAFKQMAIg43AxAgBUEoaiILIAYgA0EEdGoiCUEIaiIMKQIANwMAIAUgCSkCADcDICAJIA43AgAgDCANNwIAIAcgCykDADcDACAFIAUpAyA3AwAgACADSwRAIAIgA2ohAwwBCyAEIAMgAGsiA0cNAAsgBSkDACENIAogBykDADcCACAIIA03AgAgBEEBaiIEIAFHDQALDAYLAAsACyAAQQJ0IQZBACAAQQR0IgdrIQgDQCAGBEAgASEDIAYhBANAIAMgCGoiCSgCACEKIAkgAygCADYCACADIAo2AgAgA0EEaiEDIARBAWsiBA0ACwsgASAHaiEBIAIgAGsiAiAATw0ACwsgAkUNAiAADQEMAgsLIAEgAEEEdCIDayIEIAJBBHQiBmohByAAIAJLBEAgBUEgaiIAIAEgBhDoARogByAEIAMQ5gEgBCAAIAYQ6AEaDAELIAVBIGoiACAEIAMQ6AEaIAQgASAGEOYBIAcgACADEOgBGgsgBUGgAWokAAvDBgIHfwN+IwBBIGsiCCQAAkACQCABKAIEIgIgASgCAEcEQCABQRRqIQcgAUEIaiEFA0AgASACQRBqNgIEAkAgAS0AFCIDQQNGBEBBBEEEEMEBIgNFDQUgAyACKAIANgIAIAhBGGoiBCACQQxqLwEAOwEAIAggAikCBDcDEAJAIActAABBA0YNACAFKAIARQ0AIAEoAgwQDwsgAUEBNgIQIAEgAzYCDCABQQE2AgggByAIKQMQNwIAIAdBCGogBC8BADsBAAwBC0EAIAUgA0EDRhsiAy0ADCEEAkACQAJAAkAgAi0ABCIGQQJGDQAgBEECRg0AIAQgBkcNAiAGRQRAIAJBBWotAAAgA0ENai0AAEYNAgwDCyACQQVqLQAAIANBDWotAABHDQIgAkEGai0AACADQQ5qLQAARw0CIAJBB2otAAAgA0EPai0AAEYNAQwCCyAGQQJHDQEgBEECRw0BCyADQRBqLQAAIQQCQAJAIAJBCGotAAAiBkECRg0AIARBAkYNACAEIAZHDQIgBkUEQCACQQlqLQAAIANBEWotAABGDQIMAwsgAkEJai0AACADQRFqLQAARw0CIAJBCmotAAAgA0ESai0AAEcNAiACQQtqLQAAIANBE2otAABGDQEMAgsgBkECRw0BIARBAkcNAQsgAkENai0AACADQRVqLQAARw0AIAJBDGotAAAgA0EUai0AAEYNAQtBBEEEEMEBIgNFDQUgAyACKAIANgIAIAAgBSkCADcCACAFQRBqKQIAIQkgBUEIaikCACEKIAJBDGovAQAhBSACKQIEIQsgAUEBNgIIIAEgAzYCDCABQQE2AhAgB0EIaiAFOwEAIAcgCzcCACAAQQhqIAo3AgAgAEEQaiAJNwIADAQLIAIoAgAhBCADKAIIIgIgAygCAEYEQCADIAIQciADKAIIIQILIAMoAgQgAkECdGogBDYCACADIAMoAghBAWo2AggLIAEoAgQiAiABKAIARw0ACwsgACABKQIINwIAIABBEGogAUEYaikCADcCACAAQQhqIAFBEGopAgA3AgAgAUEUakEDOgAACyAIQSBqJAAPC0EEQQRBqMfAACgCACIAQeAAIAAbEQIAAAvdDAIQfwF+IwBB0ABrIgIkACABQQ1qIQwgAUEYaigCACEGIAEoAhAhCCACQRVqIQ0gASgCFCEOIAJBOGpBBHIhDyACQSVqIRACQANAIAEtAAwhCSABQQI6AAwCfyAJQQJGBEACQCAGIA5GDQAgASAGQRBqIgM2AhggAkEGaiAGQQ9qLQAAOgAAIAIgBi8ADTsBBCAGLQAMIglBAkYNACAGKAIEIQcgBigCACEFIAYoAggMAgsgAEECOgAMIAFBAjoADAwDCyACQQZqIAxBAmotAAA6AAAgAiAMLwAAOwEEIAEoAgQhByABKAIAIQUgBiEDIAEoAggLIQQgDSACLwEEOwAAIA1BAmogAkEGai0AADoAACACIAk6ABQgAiAHNgIMIAIgBTYCCCACIAQ2AhBBfyAEIAhHIAQgCEsbIgZBAUcEQCAGQf8BcQRAIAJBOGohCiMAQSBrIgQkACACQQhqIgUoAgghAwJAIAUtAAwiCQ0AIAggAyAFEGRrIgYgBiAISRsiBiADSw0AIAUgBjYCCCAGIQMLAkAgAyAITQRAIApBAjoADAwBCwJAIAhFBEAgBCAFKAIAIgcQTiAFKAIEIQYgBCgCACEIIAUgBCgCBDYCBCAFQQA2AgggBSAINgIADAELIARBCGogAyAIayIDEE4gBCgCCCEHIAQoAgwhBiAFIAg2AgggBiAFKAIEIAhBBHRqIANBBHQQ6AEaIAUtAAwhCQsgBCAGNgIUIAQgBzYCECAEIAM2AhggBCAJOgAcAkAgCQ0AIARBEGoQZCIIQQFrIANPDQAgBCADIAhrIgM2AhgLIAMEQCAFQQE6AAwgCiAEKQMQNwIAIApBCGogBEEYaikDADcCAAwBCyAKQQI6AAwgB0UNACAGEA8LIARBIGokACABEKABIAFBCGogCkEIaikDADcCACABIAIpAzg3AgAgAEEIaiAFQQhqKQMANwIAIAAgAikDCDcCAAwDCyAAIAIpAwg3AgAgAEEIaiACQRBqKQMANwIADAILAkAgAyAORwRAIAEgA0EQaiIGNgIYIAMtAAwiBUECRw0BCyACQQA7AUQgAkECOgBAIAJBAjoAPCACQSA2AjggAiAIIARrNgJIIAJBCGoiASACQThqEC4gACACKQMINwIAIAJBADoAFCAAQQhqIAFBCGopAwA3AgAMAgsgAkEYaiIEQQhqIANBCGooAgA2AgAgAykCACESIBAgAy8ADTsAACAQQQJqIANBD2otAAA6AAAgAiASNwMYIAIgBToAJCACQThqIQUjAEEgayIDJAACQCACQQhqIgkoAggiByAIRgRAIAVBAToAACAFIAQpAgA3AgQgBUEMaiAEQQhqKQIANwIADAELIAggB2shBwJAAkAgCS0ADARAIAQtAAwiEUUNAQwCCyADQQA7ARQgA0ECOgAQIANBAjoADCADIAc2AhggA0EgNgIIIAkgA0EIahAuIAVBAToAACAFQQxqIARBCGopAgA3AgAgBSAEKQIANwIEDAILIAQQZCIKRQ0AIAQoAggiCyAKSQ0AIAQgCyAKazYCCAsgBCgCCCIKIAdNBEAgCSAEKAIEIgsgChB8QQAhBwJAIBENACAJQQA6AAxBASEHIAkoAggiCiAITw0AIANBADsBFCADQQI6ABAgA0ECOgAMIANBIDYCCCADIAggCms2AhggCSADQQhqEC4LIAUgBzoAACAFQRBqQQI6AAAgBCgCAEUNASALEA8MAQsCQCAEKAIIIgsgB08EQCAEKAIEIQsgAyAHNgIEIAMgCzYCAAwBCyAHIAtByKHAABDQAQALIAkgAygCACADKAIEEHwgBCgCACEJIAQoAgQiBCAKIAcQmQEgBUEQaiAROgAAIAVBDGogCiAKIAdrIgcgByAKSxs2AgAgBUEIaiAENgIAIAUgCTYCBCAFQQE6AAALIANBIGokACACLQA4RQRAIAJBMGoiAyACQRBqKQMANwMAIAIgAikDCDcDKCABEKABIAFBCGogAykDADcCACABIAIpAyg3AgAgAi0ASEECRg0BIAIoAjxFDQEgAigCQBAPDAELCyACLQBIQQJHBEAgARCgASABQQhqIA9BCGopAgA3AgAgASAPKQIANwIA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IAFBAE4EQCADKAIIRQ0CIAMoAgQiAA0BIAENAwwFCyAEQQhqQQA2AgAMBgsgAygCACAAIAIgARC3AQwECyABRQ0CCyABIAIQwQEMAgsgBCABNgIEIARBCGpBADYCAAwCCyACCyIABEAgBCAANgIEIARBCGogATYCAEEADAILIAQgATYCBCAEQQhqIAI2AgALQQELNgIAC60BAQF/AkAgAgRAAn8CQAJAAkAgAUEATgRAIAMoAghFDQIgAygCBCIEDQEgAQ0DIAIMBAsgAEEIakEANgIADAULIAMoAgAgBCACIAEQtwEMAgsgAQ0AIAIMAQsgASACEMEBCyIDBEAgACADNgIEIABBCGogATYCACAAQQA2AgAPCyAAIAE2AgQgAEEIaiACNgIADAELIAAgATYCBCAAQQhqQQA2AgALIABBATYCAAuqAQECfyMAQUBqIgIkAAJAIAEEQCABKAIAIgNBf0YNASABIANBAWo2AgAgAkEcakEBNgIAIAJBJGpBATYCACACQeiDwAA2AhggAkEANgIQIAJBBzYCLCACIAFBBGo2AiggAiACQShqNgIgIAJBMGoiAyACQRBqEBkgASABKAIAQQFrNgIAIAJBCGogAxCaASAAIAIpAwg3AwAgAkFAayQADwsQ4AEACxDhAQALzAEBAn8CQAJAIAAoAggiBSABTwRAIAAoAgQgAUEEdGohAAJAIAUgAWsiBCACTwRAIAQgAmsiBCAAIARBBHRqIAIQEgwBC0GwkcAAQSFB1JHAABBxAAsgASACaiIEIAJJDQEgBCAFSw0CIAIEQCACQQR0IQIDQCAAIAMpAgA3AgAgAEEIaiADQQhqKQIANwIAIABBEGohACACQRBrIgINAAsLDwsgASAFQYihwAAQzwEACyABIARBmKHAABDRAQALIAQgBUGYocAAENABAAuxAgECfyMAQTBrIgMkACADIAI3AwgCfwJAIAEtAAJFBEAgAkKAgICAgICAEFQNASADQRxqQQI2AgAgA0EkakEBNgIAIANBmIXAADYCGCADQQA2AhAgA0ELNgIsIAMgA0EoajYCICADIANBCGo2AigjAEFAaiIEJAAgBEEANgIIIARCgICAgBA3AwAgBEEQaiIBQQM6ACAgAUKAgICAgAQ3AhggAUEANgIQIAFBADYCCCABQaiFwAA2AgQgASAENgIAIANB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IANBCGogBEEIaikDADcCACADQSBqIQQgA0EwaiIFEHsgBSgCAARAIANBNGooAgAQDwsgBCACKQMwNwIAIARBGGogAkEwaiIFQRhqKQMANwIAIARBEGogBUEQaikDADcCACAEQQhqIAVBCGopAwA3AgAgA0EAOgC0ASAFIAMoAkgQOiADQdwAaiEEIAMoAlwEQCADQeAAaigCABAPCyAEIAIpAzA3AgAgBEEIaiACQTBqIgdBCGoiBCgCADYCACADQbABakEANgIAIANBrAFqQQI6AAAgA0ECOgCoASADQfwAakEBOgAAIANCADcCdCADQQA6ALkBIANBgIAENgC1ASADQgA3AlAgA0GkAWpBgICACDYCACADQaABakECOgAAIANBnAFqQQI6AAAgA0GYAWpBADYCACADQZABakKAgIAINwIAIANBjAFqQQI6AAAgA0GIAWpBAjoAACADQgA3AoABIAMgAygCTCIFQQFrNgJYIAJBCGogBRBsIARBADYCACACIAIpAwg3AzAgByAFQQEQTyACQRhqIgUgBCgCADYCACACIAIpAzA3AxAgA0HoAGohBCADKAJoBEAgA0HsAGooAgAQDwsgBCACKQMQNwIAIARBCGogBSgCADYCACADQQA6ALsBIAJB0ABqJAAMAQsCQAJAIARBKGsOAgABAgsgA0EAOgCyAQwBCyACQTBGBEAgA0EBOgCzAQwBCyADQQA6ALMBCwwECyADIAIQJQwDCyAGQQA6ABgCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAZBFGooAgAiBEUEQCACQUBqDjYBAgMSBAUGHxYHCAkKCyAgDCAgDQ4gIA8QIBEgICAgIB8SEyAUFRYXGCAgIB4dICAgIBwbGhkgCyAGQRBqKAIAQQAgBBshBAJAAkACQAJAIAJB7ABrDgUBIyMjAwALIAJB6ABGDQEMIgsgBCgCAEE/Rw0hIAYoAggiAgRAIAYoAgQhBSACQQF0IQQgA0GoAWohAiADQYgBaiEHA0ACQAJAIAUvAQAiCEGWCE0EQAJAAkACQAJAIAhBBmsOAgECAAsgCEEZRg0CIAhBL0YNBAwFCyADQQA6ALkBIANCADcCdCADQQA6ALYBDAQLIANBADoAtwEMAwsg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CyAHQQFrDAsLIAdBA0kNDCADIAItAAQ6AKkBIANBADoAqAEMBAsgB0EFSQ0AIAItAAQhBCACLwEGIQogCSACLwEIOgAAIANBAToAqAEgAyAEIApBCHRyOwCpAQwCCyACQQRqIQQgB0ECawwICyACLQAEIQQgAi8BBiEKIAggAi8BCDoAACADQQE6AKwBIAMgBCAKQQh0cjsArQELIAJBCmohBCAHQQVrDAYLIAJBBmohBCAHQQNrDAULIANBADoAqAEgAyAEQdIAazoAqQEMAwsgA0EAOgCsASADIARBKGs6AK0BDAILIANBADoAqAEgAyAKOgCpAQwBCyADIAU6ALABCyACQQJqIQQgB0EBawshByAEIQIgBw0ACwsMAgsgBigCCCICRQ0BIAYoAgQhBCACQQF0IQIDQAJAAkAgBC8BACIFQQRHBEAgBUEURg0BDAILIANBADoAtQEMAQsgA0EAOgC4AQsgBEECaiEEIAJBAmsiAg0ACwwBCyADQQA6ALkBIAMgBigCBEHIm8AAIAYoAggbLwEAIgJBASACG0EBayICIAMoAkgiBEEBayACIARJGzYCdAsMAgsgBkEKOgAYDAELIAZBCzoAGAsgASATRw0ACwsgBkE4ai0AAARAIwBBIGsiASQAAkACQAJAIAMoAgBFDQAgAygCBCICIANBGGooAgAiBCADKAIMayIFTw0AIAUgAmsiAiAESw0BIANBADYCGCABIANBEGo2AhggASACNgIQIAEgBCACazYCFCABIANBFGooAgAiBDYCDCABIAQgAkEEdGo2AgggAUEIahAqCyABQSBqJAAMAQsgAiAEQbCVwAAQ0AEACyAGQQA6ADgLIwBBEGsiASQAIANB8ABqKAIAIQggA0HsAGooAgAhCSABQQA2AgggASAJNgIEIAEgCCAJajYCACMAQTBrIgYkACABKAIEIQIgASgCACEFAkACQANAIAIgBUYNASABIAJBAWoiBDYCBCABIAEoAggiB0EBajYCCCACLQAAIAQhAkUNAAsgBkEIaiECQRBBBBDBASIERQRAQRBBBEGox8AAKAIAIgBB4AAgABsRAgAACyACIAQ2AgQgAkEENgIAIAYoAgghBCAGKAIMIgUgBzYCACAGQRBqIgJBCGoiCkEBNgIAIAYgBTYCFCAGIAQ2AhAgBkEgaiIEQQhqIAFBCGoo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3wEAC18BAn8jAEEgayICJAAgACgCACEDIAJBCGoiAEEQaiABQRBqKQIANwMAIABBCGogAUEIaikCADcDACACIAEpAgA3AwggAiADNgIEIAJBBGpB4InAACAAEBYgAkEgaiQAC18BAn8jAEEgayICJAAgACgCACEDIAJBCGoiAEEQaiABQRBqKQIANwMAIABBCGogAUEIaikCADcDACACIAEpAgA3AwggAiADNgIEIAJBBGpBxKfAACAAEBYgAkEgaiQAC18BAn8jAEEgayICJAAgACgCACEDIAJBCGoiAEEQaiABQRBqKQIANwMAIABBCGogAUEIaikCADcDACACIAEpAgA3AwggAiADNgIEIAJBBGpB3KfAACAAEBYgAkEgaiQAC18BAn8jAEEgayICJAAgACgCACEDIAJBCGoiAEEQaiABQRBqKQIANwMAIABBCGogAUEIaikCADcDACACIAEpAgA3AwggAiADNgIEIAJBBGpBkKrAACAAEBYgAkEgaiQAC18BAn8jAEEgayICJAAgACgCACEDIAJBCGoiAEEQaiABQRBqKQIANwMAIABBCGogAUEIaikCADcDACACIAEpAgA3AwggAiADNgIEIAJBBGpB3LHAACAAEBYgAkEgaiQAC3sBAX8jAEEQayICJAAgAiAAQRxqNgIMIAFB7JnAAEEGQfKZwABBBSAAQRBqQfiZwABBiJrAAEEEIABBCGpBjJrAAEGcmsAAQQQgAEEMakGMmsAAQaCawABBECAAQbCawABBwJrAAEELIAJBDGpBzJrAABAvIAJBEGokAAuFAgIEfwF+IwBBIGsiAyQAIANBHGogAkEIai8AADsBACADIAIpAAA3AhQgA0EIaiABEE4gAykDCCEHIABBADYCCCAAIAc3AgAgA0EgNgIQIANBEGohBSABIAAoAgAgACgCCCICa0sEQCAAIAIgARB1IAAoAgghAgsgACgCBCACQQR0aiEEIAFBAk8EQCABQQFrIQYDQCAEIAUpAgA3AgAgBEEIaiAFQQhqKQIANwIAIARBEGohBCAGQQFrIgYNAAsgASACakEBayECCyAAIAEEQCAEIAUpAgA3AgAgBEEIaiAFQQhqKQIANwIAIAJBAWohAgsgAjYCCCAAQQA6AAwgA0EgaiQAC3sBAX8jAEEQayICJAAgAiAAQRNqNgIMIAFBnKPAAEEIQaSjwABBCiAAQbCjwABBwKPAAEEKIABBBGpBsKPAAEHKo8AAQQMgAEEIakHQo8AAQeCjwABBCyAAQRJqQeyjwABB/KPAAEEOIAJBDGpBjKTAABAvIAJBEGokAAtYAQF/IwBBIGsiAiQAIAIgADYCBCACQQhqIgBBEGogAUEQaikCADcDACAAQQhqIAFBCGopAgA3AwAgAiABKQIANwMIIAJBBGpB4InAACAAEBYgAkEgaiQAC6MBAQV/IAAoAggiAkUEQEEADwsgACgCBEEQayEFIAJBBHQhACACQQFrQf////8AcUEBaiECAkADQEEAIQQCQCAAIAVqIgEoAgBBIEcNACABLQAEQQJHDQAgAUEIai0AAEECRw0AIAFBDWotAAANACABQQxqLQAAIgFBD3ENACABQRBxRSEECyAERQ0BIANBAWohAyAAQRBrIgANAAsgAiEDCyADC1gBAX8jAEEgayICJAAgAiAANgIEIAJBCGoiAEEQaiABQRBqKQIANwMAIABBCGogAUEIaikCADcDACACIAEpAgA3AwggAkEEakHEp8AAIAAQFiACQSBqJAALWAEBfyMAQSBrIgIkACACIAA2AgQgAkEIaiIAQRBqIAFBEGopAgA3AwAgAEEIaiABQQhqKQIANwMAIAIgASkCADcDCCACQQRqQdyxwAAgABAWIAJBIGokAAvzBAEHfyMAQRBrIgYkACAGQQhqIAEgAkECEFUCfyAGKAIIBEBBASECIAYoAgwMAQsjAEEgayIFJAAgASICKAIIIQEgAkEANgIIAn8CQAJAIAEEQCAFIAJBDGooAgAiATYCFCAFQQhqIQkgAigCECEKIwBB0ABrIgQkAAJAIAMtAABFBEAgBCADLQABuBACNgIEIARBADYCACAEKAIEIQMgBCgCACEHDAELIARBIGoiB0EMakEENgIAIAdBFGpBAzYCACAEQThqIghBFGpBCjYCACAIQQxqQQo2AgAgBEHMhMAANgIoIARBADYCICAEIANBA2o2AkggBCADQQJqNgJAIARBCjYCPCAEIANBAWo2AjggBCAINgIwIARBEGoiCCAHEBkgBEEIaiAKIAQoAhQgBCgCGBC4ASAEKAIMIQMgBCgCCCEHIAgQrQELIAkgBzYCACAJIAM2AgQgBEHQAGokACAFKAIMIQMCQAJAIAUoAghFBEAg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ASABKAIEKAIMEQEACyACQRBqJAAgA0EQaiQACyMAIAAoAgAEQCAAKAIEEA8LIAAoAgwEQCAAQRBqKAIAEA8LC1YBAn8gASgCBCECIAEoAgAhA0EIQQQQwQEiAUUEQEEIQQRBqMfAACgCACIAQeAAIAAbEQIAAAsgASACNgIEIAEgAzYCACAAQcipwAA2AgQgACABNgIACzkAAkACfyACQYCAxABHBEBBASAAIAIgASgCEBEAAA0BGgsgAw0BQQALDwsgACADIAQgASgCDBEBAAv3BAEIfyMAQeABayIGJAAjAEEgayIHJAAgB0EIaiIEQQA6ABAgBEEANgIIIARC0ICAgIADNwIAIAQgATYCBCAEIAA2AgAgBCACQQBHOgAQIARBATYCCCAEQQxqIgEgAzYCACAGQQhqIgoiABBIIABBADoAGCAAQRRqQQA2AgAgAEKAgICAwAA3AgwgBCgCACEDIAQoAgQhAiAEKAIIIQggASgCACEJIAQtABAhBCMAQTBrIgEkACAAQRxqIgAgAyACIAggCUEAECwgAEEgaiADIAJBAUEAQQAQLCABQQhqIAIQbCABQSBqIgVBCGoiC0EANgIAIAEgASkDCDcDICAFIAJBARBPIAFBGGoiBSALKAIANgIAIAEgASkDIDcDECAAQdwAaiADEDogAEGsAWpBAjoAACAAQQI6AKgBIABB/ABqQQE6AAAgAEIANwJ0IABBjAFqQQI6AAAgAEGIAWpBAjoAACAAQaABakECOgAAIABBnAFqQQI6AAAgAEGQAWpBgICACDYCACAAQgA3AoABIABBpAFqQYCAgAg2AgAgAEIANwKUASAAIAM2AkggACACNgJMIABBADoAtAEgACAINgJAIABBxABqIAk2AgAgAEGwAWpBADYCACAAQQA6ALkBIABBgIAENgC1ASAAQgA3AlAgACACQQFrNgJYIABBADoAuwEgACAEOgC6ASAAIAEpAxA3AmggAEHwAGogBSgCADYCACABQTBqJAAgB0EgaiQAQdwBQQQQwQEiAEUEQEHcAUEEQajHwAAoAgAiAEHgACAAGxECAAALIABBADYCACAAQQRqIApB2AEQ6AEaIAZB4AFqJAAgAAu9AgECfyMAQSBrIgIkACACQQE6ABggAiABNgIUIAIgADYCECACQcCtwAA2AgwgAkG8rcAANgIIIwBB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ATYCACADBEAgA0ECdCEBA0AgACACNgIMIAAgAEEMakGkpcAAENQBIAJBBGohAiABQQRrIgENAAsLIAAtAAQEf0EBBSAAKAIAIgEoAgBB4q/AAEEBIAFBBGooAgAoAgwRAQALIABBEGokAAutAQEDfyAAKAIAIgAoAgQhAiAAKAIIIQMjAEEQayIAJAAgASgCAEG9rcAAQQEgASgCBCgCDBEBACEEIABBADoABSAAIAQ6AAQgACABNgIAIAMEQANAIAAgAjYCDCAAIABBDGpBhKXAABDUASACQQFqIQIgA0EBayIDDQALCyAALQAEBH9BAQUgACgCACIBKAIAQeKvwABBASABQQRqKAIAKAIMEQEACyAAQRBqJAALtAEBA38gACgCACIAKAIEIQIgACgCCCEDIwBBEGsiACQAIAEoAgBBva3AAEEBIAEoAgQoAgwRAQAhBCAAQQA6AAUgACAEOgAEIAAgATYCACADBEAgA0ECdCEBA0AgACACNgIMIAAgAEEMakGUpcAAENQBIAJBBGohAiABQQRrIgENAAsLIAAtAAQEf0EBBSAAKAIAIgEoAgBB4q/AAEEBIAFBBGooAgAoAgwRAQALIABBEGokAAsLACABBEAgABAPCwsZACABKAIAQYDAwABBBSABKAIEKAIMEQEACxMAIAAoAgAgASgCACACKAIAEAsLFAAgACgCACABIAAoAgQoAgwRAAALCAAgACABEBoLEAAgACgCACABIAIQhwFBAAuvAQEDfyAAKAIEIQIgACgCCCEDIwBBEGsiACQAIAEoAgBBva3AAEEBIAEoAgQoAgwRAQAhBCAAQQA6AAUgACAEOgAEIAAgATYCACADBEAgA0EEdCEBA0AgACACNgIMIAAgAEEMakHUpMAAENQBIAJBEGohAiABQRBrIgENAAsLIAAtAAQEf0EBBSAAKAIAIgEoAgBB4q/AAEEBIAFBBGooAgAoAgwRAQALIABBEGokAAuvAQEDfyAAKAIEIQIgACgCCCEDIwBBEGsiACQAIAEoAgBBva3AAEEBIAEoAgQoAgwRAQAhBCAAQQA6AAUgACAEOgAEIAAgATYCACADBEAgA0EEdCEBA0AgACACNgIMIAAgAEEMakHkpMAAENQBIAJBEGohAiABQRBrIgENAAsLIAAtAAQEf0EBBSAAKAIAIgEoAgBB4q/AAEEBIAFBBGooAgAoAgwRAQALIABBEGokAAsRACAAKAIEIAAoAgggARDkAQsTACAAQcipwAA2AgQgACABNgIACxAAIAEgACgCACAAKAIEEBALEAAgASgCACABKAIEIAAQFgsNACAAIAEgAhCHAUEACw0AIAAoAgAgASACEAULDQAgACgCACABIAIQCgsMACAAKAIAEAlBAUYLoAQBBX8gACgCACEDIwBBEGsiBCQAAkAgAUH/AE0EQCADKAIIIgIgAygCAEYEQCMAQSBrIgAkAAJAAkAgAkEBaiICRQ0AIAMoAgAiBUEBdCIGIAIgAiAGSRsiAkEIIAJBCEsbIgJBf3NBH3YhBgJAIAUEQCAAQQE2AhggACAFNgIUIAAgA0EEaigCADYCEAwBCyAAQQA2AhgLIAAgAiAGIABBEGoQOCAAKAIEIQUgACgCAEUEQCADIAI2AgAgAyAFNgIEDAILIABBCGooAgAiAkGBgICAeEYNASACRQ0AIAUgAkGox8AAKAIAIgBB4AAgABsRAgAACxCIAQALIABBIGokACADKAIIIQILIAMgAkEBajYCCCADKAIEIAJqIAE6AAAMAQsgBEEANgIMAn8gAUGAEE8EQCABQYCABE8EQCAEIAFBP3FBgAFyOgAPIAQgAUEGdkE/cUGAAXI6AA4gBCABQQx2QT9xQYABcjoADSAEIAFBEnZBB3FB8AFyOgAMQQQMAgsgBCABQT9xQYABcjoADiAEIAFBDHZB4AFyOgAMIAQgAUEGdkE/cUGAAXI6AA1BAwwBCyAEIAFBP3FBgAFyOgANIAQgAUEGdkHAAXI6AAxBAgshACAAIAMoAgAgAygCCCICa0sEQCADIAIgABAyIAMoAgghAgsgAygCBCACaiAEQQxqIAAQ6AEaIAMgACACajYCCAsgBEEQaiQAQQALDgAgACgCABoDQAwACwALfQEBfyMAQTBrIgMkACADIAE2AgQgAyAANgIAIANBCGoiAEEMakECNgIAIANBHGpBAjYCACADQSBqIgFBDGpB3wA2AgAgA0Ggs8AANgIQIANBADYCCCADQd8ANgIkIAMgATYCGCADIANBBGo2AiggAyADNgIgIAAgAhCOAQALfQEBfyMAQTBrIgMkACADIAE2AgQgAyAANgIAIANBCGoiAEEMakECNgIAIANBHGpBAjYCACADQSBqIgFBDGpB3wA2AgAgA0HAs8AANgIQIANBADYCCCADQd8ANgIkIAMgATYCGCADIANBBGo2AiggAyADNgIgIAAgAhCOAQALfQEBfyMAQTBrIgMkACADIAE2AgQgAyAANgIAIANBCGoiAEEMakECNgIAIANBHGpBAjYCACADQSBqIgFBDGpB3wA2AgAgA0H0s8AANgIQIANBADYCCCADQd8ANgIkIAMgATYCGCADIANBBGo2AiggAyADNgIgIAAgAhCOAQALCwAgADUCACABECELCwAgADEAACABECELyQICBH8CfiMAQUBqIgMkAEEBIQUCQCAALQAEDQAgAC0ABSEFAkACQAJAIAAoAgAiBCgCGCIGQQRxRQRAIAUNAQwDCyAFDQFBASEFIAQoAgBB4a/AAEEBIAQoAgQoAgwRAQANAyAEKAIYIQYMAQtBASEFIAQoAgBB1a/AAEECIAQoAgQoAgwRAQBFDQEMAgtBASEFIANBAToAFyADQbSvwAA2AhwgAyAEKQIANwMIIAMgA0EXajYCECAEKQIIIQcgBCkCECEIIAMgBC0AIDoAOCADIAQoAhw2AjQgAyAGNgIwIAMgCDcDKCADIAc3AyAgAyADQQhqNgIYIAEgA0EYaiACKAIMEQAADQEgAygCGEHTr8AAQQIgAygCHCgCDBEBACEFDAELIAEgBCACKAIMEQAAIQULIABBAToABSAAIAU6AAQgA0FAayQACw0AIAAoAgAgASACEBwLCwAgACkDACABECELCwAgACMAaiQAIwALBwAgABCtAQvpAQEFfyAAKAIAIQIjAEFAaiIAJAAgAEIANwM4IABBOGogAigCABAMIABBFGpBAjYCACAAQRxqQQE2AgAgACAAKAI8IgI2AjAgACAAKAI4NgIsIAAgAjYCKCAAQdoANgIkIABBwKXAADYCECAAQQA2AgggACAAQShqIgQ2AiAgACAAQSBqNgIYIwBBIGsiAiQAIAEoAgQhBSABKAIAIAJBCGoiAUEQaiAAQQhqIgNBEGopAgA3AwAgAUEIaiADQQhqKQIANwMAIAIgAykCADcDCCAFIAEQFiACQSBqJAAgBBCtASAAQUBrJAALCwAgACgCACABEGsLYAEBfyAAKAIAIQAjAEEQayICJAAgAiAAQQJqNgIMIAFBuInAAEEDQbuJwABBASAAQbyJwABBzInAAEEBIABB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QQsNAEKy+KXLheeH1Jt/CwwAQuLnycndnOOADQsDAAELC4xHAQBBgIDAAAuCR1RyaWVkIHRvIHNocmluayB0byBhIGxhcmdlciBjYXBhY2l0eQAAEAAkAAAAL3J1c3RjLzkwYzU0MTgwNmYyM2ExMjcwMDJkZTViNDAzOGJlNzMxYmExNDU4Y2EvbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5ycywAEABMAAAArgEAAAkAAABNYXAga2V5IGlzIG5vdCBhIHN0cmluZyBhbmQgY2Fubm90IGJlIGFuIG9iamVjdCBrZXkAAQAAAAwAAAAEAAAAAgAAAAMAAAAEAAAAYSBEaXNwbGF5IGltcGxlbWVudGF0aW9uIHJldHVybmVkIGFuIGVycm9yIHVuZXhwZWN0ZWRseQAFAAAAAAAAAAEAAAAGAAAAL3J1c3RjLzkwYzU0MTgwNmYyM2ExMjcwMDJkZTViNDAzOGJlNzMxYmExNDU4Y2EvbGlicmFyeS9hbGxvYy9zcmMvc3RyaW5nLnJzABwBEABLAAAA3QkAAA4AAABgdW53cmFwX3Rocm93YCBmYWlsZWQAAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlAAgAAAAEAAAABAAAAAkAAABzcmMvbGliLnJzAADMARAACgAAAB0AAAAwAAAAkAEQAAAAAADMARAACgAAACwAAAAtAAAAzAEQAAoAAAAyAAAALwAAAGZnYmdmYWludAFib2xkaXRhbGljdW5kZXJsaW5lc3RyaWtldGhyb3VnaGJsaW5raW52ZXJzZXJnYigsKUYCEAAEAAAASgIQAAEAAABKAhAAAQAAAEsCEAABAAAAIGNhbid0IGJlIHJlcHJlc2VudGVkIGFzIGEgSmF2YVNjcmlwdCBudW1iZXJsAhAAAAAAAGwCEAAsAAAADAAAAAwAAAAEAAAADQAAAA4AAAAPAAAAYSBEaXNwbGF5IGltcGxlbWVudGF0aW9uIHJldHVybmVkIGFuIGVycm9yIHVuZXhwZWN0ZWRseQAQAAAAAAAAAAEAAAAGAAAAL3J1c3RjLzkwYzU0MTgwNmYyM2ExMjcwMDJkZTViNDAzOGJlNzMxYmExNDU4Y2EvbGlicmFyeS9hbGxvYy9zcmMvc3RyaW5nLnJzAAgDEABLAAAA3QkAAA4AAABFcnJvcgAAABAAAAAEAAAABAAAABEAAABUcmllZCB0byBzaHJpbmsgdG8gYSBsYXJnZXIgY2FwYWNpdHl8AxAAJAAAAC9ydXN0Yy85MGM1NDE4MDZmMjNhMTI3MDAyZGU1YjQwMzhiZTczMWJhMTQ1OGNhL2xpYnJhcnkvYWxsb2Mvc3JjL3Jhd192ZWMucnOoAxAATAAAAK4BAAAJAAAAY2xvc3VyZSBpbnZva2VkIHJlY3Vyc2l2ZWx5IG9yIGFmdGVyIGJlaW5nIGRyb3BwZWRQZW5mb3JlZ3JvdW5kAB4AAAAEAAAAAQAAAB8AAABiYWNrZ3JvdW5kaW50ZW5zaXR5AB4AAAABAAAAAQAAACAAAABhdHRycwAAAB4AAAAEAAAABAAAACEAAABGYWludEJvbGROb3JtYWwABgAAAAQAAAAFAAAAmQQQAJUEEACQBBAAUkdCciIAAAABAAAAAQAAACMAAABnYgAAIgAAAAQAAAAEAAAAIQAAACQAAAAEAAAABAAAACUAAAAmAAAAJwAAAFJHQgAkAAAABAAAAAQAAAAoAAAASW5kZXhlZAAkAAAABAAAAAQAAAAhAAAAL2hvbWUvbWFyY2luLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYXZ0LTAuOS4wL3NyYy90ZXJtaW5hbC5ycwAkBRAAWwAAAHABAAAKAAAAJAUQAFsAAACnAQAAEQAAACQFEABbAAAA5gIAABgAAABjb2xzcm93c2J1ZmZlcm90aGVyX2J1ZmZlcmFjdGl2ZV9idWZmZXJfdHlwZXNjcm9sbGJhY2tfbGltaXRjdXJzb3JwZW5jaGFyc2V0c2FjdGl2ZV9jaGFyc2V0dGFic2luc2VydF9tb2Rlb3JpZ2luX21vZGVhdXRvX3dyYXBfbW9kZW5ld19saW5lX21vZGVuZXh0X3ByaW50X3dyYXBzdG9wX21hcmdpbmJvdHRvbV9tYXJnaW5zYXZlZF9jdHhhbHRlcm5hdGVfc2F2ZWRfY3R4ZGlydHlfbGluZXNyZXNpemFibGVyZXNpemVkAACwBRAABAAAALQFEAAEAAAAuAUQAAYAAAC+BRAADAAAAMoFEAASAAAA3AUQABAAAADsBRAABgAAAPIFEAADAAAA9QUQAAgAAAD9BRAADgAAAAsGEAAEAAAADwYQAAsAAAAaBhAACwAAACUGEAAOAAAAMwYQAA0AAABABhAAEAAAAFAGEAAKAAAAWgYQAA0AAABnBhAACQAAAHAGEAATAAAAgwYQAAsAAACOBhAACQAAAJcGEAAHAAAAKQAAAAQAAAAEAAAAKgAAACsAAAAgAAAABAAAACwAAAApAAAAAQAAAAEAAAAtAAAAKQAAAAgAAAAEAAAALgAAACkAAAAMAAAABAAAAC8AAAApAAAACgAAAAEAAAAwAAAAKQAAAAIAAAABAAAAMQAAADIAAAAMAAAABAAAADMAAAApAAAAAQAAAAEAAAA0AAAAKQAAABQAAAAEAAAANQAAADYAAAAMAAAABAAAADcAAAApAAAABAAAAAQAAAA4AAAAVGVybWluYWxBbHRlcm5hdGVQcmltYXJ5YXNzZXJ0aW9uIGZhaWxlZDogbWlkIDw9IHNlbGYubGVuKCkvcnVzdGMvOTBjNTQxODA2ZjIzYTEyNzAwMmRlNWI0MDM4YmU3MzFiYTE0NThjYS9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL21vZC5yc1MIEABNAAAAKwwAAAkAAABhc3NlcnRpb24gZmFpbGVkOiBrIDw9IHNlbGYubGVuKCkAAABTCBAATQAAAFYMAAAJAAAAZiYAAJIlAAAJJAAADCQAAA0kAAAKJAAAsAAAALEAAAAkJAAACyQAABglAAAQJQAADCUAABQlAAA8JQAAuiMAALsjAAAAJQAAvCMAAL0jAAAcJQAAJCUAADQlAAAsJQAAAiUAAGQiAABlIgAAwAMAAGAiAACjAAAAxSIAAC9ob21lL21hcmNpbi8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL2F2dC0wLjkuMC9zcmMvdGVybWluYWwvZGlydHlfbGluZXMucnMAYAkQAGcAAAAMAAAACQAAAGAJEABnAAAAEAAAAAkAAABDZWxsOQAAAAQAAAAEAAAAOgAAADkAAAAEAAAABAAAADsAAABEcmF3aW5nQXNjaWlEaXJ0eUxpbmVzAAA5AAAABAAAAAQAAAA8AAAAVnRwYXJzZXI9AAAAHAAAAAQAAAA+AAAAdGVybWluYWw5AAAABAAAAAQAAAA/AAAAL3J1c3RjLzkwYzU0MTgwNmYyM2ExMjcwMDJkZTViNDAzOGJlNzMxYmExNDU4Y2EvbGlicmFyeS9hbGxvYy9zcmMvdmVjL21vZC5yc2QKEABMAAAAyAcAACQAAABjYWxsZWQgYE9wdGlvbjo6dW53cmFwKClgIG9uIGEgYE5vbmVgIHZhbHVlL2hvbWUvbWFyY2luLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYXZ0LTAuOS4wL3NyYy9idWZmZXIucnPrChAAWQAAAGEAAAAJAAAA6woQAFkAAABlAAAACQAAAOsKEABZAAAAagAAAAkAAADrChAAWQAAAG8AAAAZAAAA6woQAFkAAACkAAAAIQAAAOsKEABZAAAAnwAAABEAAADrChAAWQAAAJgAAAAhAAAA6woQAFkAAACOAAAAEQAAAOsKEABZAAAAhgAAACEAAADrChAAWQAAAHwAAAAhAAAA6woQAFkAAACvAAAADQAAAOsKEABZAAAAvgAAAA0AAADrChAAWQAAAMAAAAANAAAA6woQAFkAAADKAAAACQAAAOsKEABZAAAAzgAAAA0AAADrChAAWQAAANEAAAAJAAAA6woQAFkAAAD7AAAAKwAAAOsKEABZAAAAOQEAABEAAADrChAAWQAAAEABAAAiAAAA6woQAFkAAABMAQAACgAAAOsKEABZAAAAXgEAAA4AAADrChAAWQAAAGMBAAAJAAAAYXNzZXJ0aW9uIGZhaWxlZDogbGluZXMuaXRlcigpLmFsbCh8bHwgbC5sZW4oKSA9PSBjb2xzKQDrChAAWQAAANIBAAAFAAAAQnVmZmVybGluZXMAQAAAAAwAAAAEAAAAQQAAAGNvbHNCAAAABAAAAAQAAABDAAAAcm93c3Njcm9sbGJhY2tfbGltaXRCAAAACAAAAAQAAAAuAAAAdHJpbV9uZWVkZWQAQgAAAAQAAAAEAAAAOAAAAC9ob21lL21hcmNpbi8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL2F2dC0wLjkuMC9zcmMvcGFyc2VyLnJzAAAAXA0QAFkAAACMAQAAGgAAAAAAUGFyc2Vyc3RhdGUAAABEAAAAAQAAAAEAAABFAAAAcGFyYW1zAABGAAAADAAAAAQAAABHAAAAaW50ZXJtZWRpYXRlcwAAAEQAAAAEAAAABAAAAEgAAABTb3NQbUFwY1N0cmluZ09zY1N0cmluZ0Rjc0lnbm9yZURjc1Bhc3N0aHJvdWdoRGNzSW50ZXJtZWRpYXRlRGNzUGFyYW1EY3NFbnRyeUNzaUlnbm9yZUNzaUludGVybWVkaWF0ZUNzaVBhcmFtQ3NpRW50cnlFc2NhcGVJbnRlcm1lZGlhdGVFc2NhcGVHcm91bmRQYXJhbXMAAABEAAAABAAAAAQAAABJAAAASW50ZXJtZWRpYXRlcwAAAEQAAAAEAAAABAAAAEoAAAAGAAAABgAAABIAAAAIAAAACAAAAA8AAAAJAAAACAAAAAgAAAAPAAAADgAAAAkAAAAJAAAADgAAAK0OEACnDhAAlQ4QAI0OEACFDhAAdg4QAG0OEABlDhAAXQ4QAE4OEABADhAANw4QAC4OEAAgDhAAYXNzZXJ0aW9uIGZhaWxlZDogbWlkIDw9IHNlbGYubGVuKCkvcnVzdGMvOTBjNTQxODA2ZjIzYTEyNzAwMmRlNWI0MDM4YmU3MzFiYTE0NThjYS9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL21vZC5yc38PEABNAAAAKwwAAAkAAABhc3NlcnRpb24gZmFpbGVkOiBrIDw9IHNlbGYubGVuKCkAAAB/DxAATQAAAFYMAAAJAAAAL2hvbWUvbWFyY2luLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYXZ0LTAuOS4wL3NyYy9saW5lLnJzABAQEABXAAAAFwAAAAkAAAAQEBAAVwAAABsAAAAJAAAAEBAQAFcAAAAfAAAACQAAABAQEABXAAAAIAAAAAkAAAAQEBAAVwAAACQAAAAJAAAAEBAQAFcAAAAmAAAACQAAABAQEABXAAAAOwAAACAAAABMaW5lY2VsbHMAAABLAAAADAAAAAQAAABMAAAAd3JhcHBlZABNAAAABAAAAAQAAAA4AAAAU29tZU4AAAAEAAAABAAAAE8AAABOb25lTgAAAAQAAAAEAAAAUAAAAC9ob21lL21hcmNpbi8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02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");function SA(A){return"number"==typeof A?A:"string"==typeof A?A.split(":").reverse().map(parseFloat).reduce(((A,g,I)=>A+g*Math.pow(60,I))):void 0}class LA{constructor(){let A=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.speed=A,this.startTime=performance.now()}getTime(){return this.speed*(performance.now()-this.startTime)/1e3}setTime(A){this.startTime=performance.now()-A/this.speed*1e3}}class KA{constructor(){}getTime(A){}setTime(A){}}const UA=(async()=>(await fA(pA),RA))();class HA{constructor(A){this.core=A,this.driver=A.driver}onEnter(A){}init(){}play(){}pause(){}togglePlay(){}seek(A){return!1}step(){}stop(){this.driver.stop()}}class mA extends HA{async init(){try{return await this.core.initializeDriver(),this.core.setState("stopped")}catch(A){throw this.core.setState("errored"),A}}async play(){this.core.dispatchEvent("play");const A=await this.init();return await A.doPlay()}togglePlay(){return this.play()}async seek(A){const g=await this.init();return await g.seek(A)}async step(){const A=await this.init();return await A.step()}stop(){}}class bA extends HA{onEnter(A){let{reason:g,message:I}=A;this.core.dispatchEvent("stopped",{message:I}),"paused"===g?this.core.dispatchEvent("pause"):"ended"===g&&this.core.dispatchEvent("ended")}play(){return this.core.dispatchEvent("play"),this.doPlay()}async doPlay(){const A=await this.driver.play();!0===A?this.core.setState("playing"):"function"==typeof A&&(this.core.setState("playing"),this.driver.stop=A)}togglePlay(){return this.play()}seek(A){return this.driver.seek(A)}step(){this.driver.step()}}class vA extends HA{onEnter(){this.core.dispatchEvent("playing")}pause(){!0===this.driver.pause()&&this.core.setState("stopped",{reason:"paused"})}togglePlay(){return this.pause()}seek(A){return this.driver.seek(A)}}class qA extends HA{onEnter(){this.core.dispatchEvent("loading")}}class xA extends HA{onEnter(){this.core.dispatchEvent("offline")}}class TA extends HA{onEnter(){this.core.dispatchEvent("errored")}}class jA{constructor(A,g){this.logger=g.logger,this.state=new mA(this),this.stateName="uninitialized",this.driver=null,this.driverFn=A,this.changedLines=new Set,this.cursor=void 0,this.duration=void 0,this.cols=g.cols,this.rows=g.rows,this.speed=g.speed??1,this.loop=g.loop,this.idleTimeLimit=g.idleTimeLimit,this.preload=g.preload,this.startAt=SA(g.startAt),this.poster=this.parsePoster(g.poster),this.markers=this.normalizeMarkers(g.markers),this.pauseOnMarkers=g.pauseOnMarkers,this.commandQueue=Promise.resolve(),this.eventHandlers=new Map([["marker",[]],["ended",[]],["errored",[]],["init",[]],["input",[]],["loading",[]],["offline",[]],["pause",[]],["play",[]],["playing",[]],["reset",[]],["resize",[]],["seeked",[]],["stopped",[]],["terminalUpdate",[]]])}addEventListener(A,g){this.eventHandlers.get(A).push(g)}dispatchEvent(A){let g=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(const I of this.eventHandlers.get(A))I(g)}async init(){this.wasm=await UA;const A=this.feed.bind(this),g=this.now.bind(this),I=this.resetVt.bind(this),B=this.setState.bind(this),Q="npt"===this.poster.type?this.poster.value:void 0;this.driver=this.driverFn({feed:A,onInput:A=>{this.dispatchEvent("input",{data:A})},onMarker:A=>{let{index:g,time:I,label:B}=A;this.dispatchEvent("marker",{index:g,time:I,label:B})},reset:I,now:g,setTimeout:(A,g)=>window.setTimeout(A,g/this.speed),setInterval:(A,g)=>window.setInterval(A,g/this.speed),setState:B,logger:this.logger},{cols:this.cols,rows:this.rows,idleTimeLimit:this.idleTimeLimit,startAt:this.startAt,loop:this.loop,posterTime:Q,markers:this.markers,pauseOnMarkers:this.pauseOnMarkers}),"function"==typeof this.driver&&(this.driver={play:this.driver}),(this.preload||void 0!==Q)&&this.withState((A=>A.init()));const C="text"===this.poster.type?this.renderPoster(this.poster.value):void 0,E={isPausable:!!this.driver.pause,isSeekable:!!this.driver.seek,poster:C};if(void 0===this.driver.init&&(this.driver.init=()=>({})),void 0===this.driver.pause&&(this.driver.pause=()=>{}),void 0===this.driver.seek&&(this.driver.seek=A=>!1),void 0===this.driver.step&&(this.driver.step=()=>{}),void 0===this.driver.stop&&(this.driver.stop=()=>{}),void 0===this.driver.getCurrentTime){const A=this.driver.play;let g=new KA;this.driver.play=()=>(g=new LA(this.speed),A()),this.driver.getCurrentTime=()=>g.getTime()}return E}play(){return this.withState((A=>A.play()))}pause(){return this.withState((A=>A.pause()))}togglePlay(){return this.withState((A=>A.togglePlay()))}seek(A){return this.withState((async g=>{await g.seek(A)&&this.dispatchEvent("seeked")}))}step(){return this.withState((A=>A.step()))}stop(){return this.withState((A=>A.stop()))}withState(A){return this.enqueueCommand((()=>A(this.state)))}enqueueCommand(A){return this.commandQueue=this.commandQueue.then(A),this.commandQueue}getChangedLines(){if(this.changedLines.size>0){const A=new Map,g=this.vt.rows;for(const I of this.changedLines)I1&&void 0!==arguments[1]?arguments[1]:{};if(this.stateName===A)return this.state;if(this.stateName=A,"playing"===A)this.state=new vA(this);else if("stopped"===A)this.state=new bA(this);else if("loading"===A)this.state=new qA(this);else if("offline"===A)this.state=new xA(this);else{if("errored"!==A)throw`invalid state: ${A}`;this.state=new TA(this)}return this.state.onEnter(g),this.state}feed(A){this.doFeed(A),this.dispatchEvent("terminalUpdate")}doFeed(A){const[g,I]=this.vt.feed(A);if(g.forEach((A=>this.changedLines.add(A))),this.cursor=void 0,I){const[A,g]=this.vt.get_size();this.vt.cols=A,this.vt.rows=g,this.logger.debug(`core: vt resize (${A}x${g})`),this.dispatchEvent("resize",{cols:A,rows:g})}}now(){return performance.now()*this.speed}async initializeDriver(){const A=await this.driver.init();this.cols=this.cols??A.cols??80,this.rows=this.rows??A.rows??24,this.duration=this.duration??A.duration,this.markers=this.normalizeMarkers(A.markers)??this.markers??[],0===this.cols&&(this.cols=80),0===this.rows&&(this.rows=24),this.initializeVt(this.cols,this.rows);const g=void 0!==A.poster?this.renderPoster(A.poster):void 0;this.dispatchEvent("init",{cols:this.cols,rows:this.rows,duration:this.duration,markers:this.markers,theme:A.theme,poster:g})}resetVt(A,g){let I=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,B=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0;this.cols=A,this.rows=g,this.cursor=void 0,this.initializeVt(A,g),void 0!==I&&""!==I&&this.doFeed(I),this.dispatchEvent("reset",{cols:A,rows:g,theme:B})}initializeVt(A,g){this.logger.debug(`core: vt init (${A}x${g})`),this.vt=this.wasm.create(A,g,!0,100),this.vt.cols=A,this.vt.rows=g,this.changedLines.clear();for(let A=0;AB.feed(A)));const Q=B.get_cursor()??!1,C=[];for(let A=0;A"number"==typeof A?[A,""]:A))}}const WA=Symbol("store-raw"),ZA=Symbol("store-node"),XA=Symbol("store-name");function OA(A,g){let B=A[I];if(!B&&(Object.defineProperty(A,I,{value:B=new Proxy(A,gg)}),!Array.isArray(A))){const g=Object.keys(A),I=Object.getOwnPropertyDescriptors(A);for(let Q=0,C=g.length;Q!0,deleteProperty:()=>!0,ownKeys:function(A){return $A(A),Reflect.ownKeys(A)},getOwnPropertyDescriptor:function(A,g){const B=Reflect.getOwnPropertyDescriptor(A,g);return B&&!B.get&&B.configurable&&g!==I&&g!==ZA&&g!==XA?(delete B.value,delete B.writable,B.get=()=>A[I][g],B):B}};function Ig(A,g,I,B=!1){if(!B&&A[g]===I)return;const Q=A[g],C=A.length;void 0===I?delete A[g]:A[g]=I;let E,e=PA(A);(E=_A(e,g,Q))&&E.$((()=>I)),Array.isArray(A)&&A.length!==C&&(E=_A(e,"length",C))&&E.$(A.length),(E=e._)&&E.$()}function Bg(A,g){const I=Object.keys(g);for(let B=0;B1){B=g.shift();const C=typeof B,E=Array.isArray(A);if(Array.isArray(B)){for(let Q=0;Q1)return void Qg(A[B],g,[B].concat(I));Q=A[B],I=[B].concat(I)}let C=g[0];"function"==typeof C&&(C=C(Q,I),C===Q)||void 0===B&&null==C||(C=VA(C),void 0===B||zA(Q)&&zA(C)&&!Array.isArray(C)?Bg(Q,C):Ig(A,B,C))}function Cg(...[A,g]){const I=VA(A||{}),B=Array.isArray(I);return[OA(I),function(...A){h((()=>{B&&1===A.length?function(A,g){if("function"==typeof g&&(g=g(A)),g=VA(g),Array.isArray(g)){if(A===g)return;let I=0,B=g.length;for(;I=E&&t>=E&&(C[e]===A[t]||Q&&C[E]&&A[E]&&C[e][Q]===A[t][Q]);e--,t--)n[t]=C[e];if(E>t||E>e){for(I=E;I<=t;I++)Ig(C,I,A[I]);for(;IA.length&&Ig(C,"length",A.length))}for(o=new Array(t+1),I=t;I>=E;I--)i=A[I],s=Q&&i?i[Q]:i,g=r.get(s),o[I]=void 0===g?-1:g,r.set(s,I);for(g=E;g<=e;g++)i=C[g],s=Q&&i?i[Q]:i,I=r.get(s),void 0!==I&&-1!==I&&(n[I]=C[g],I=o[I],r.set(s,I));for(I=E;IA.length&&Ig(C,"length",A.length))}const E=Object.keys(A);for(let g=0,I=E.length;g{if(!zA(A)||!zA(Q))return Q;const g=eg(Q,{[Eg]:A},Eg,I,B);return void 0===g?A:g}}const ig=O("");var og=A=>(()=>{const g=ig.cloneNode(!0);return AA(g,(()=>A.text)),w((I=>{const B=function(A,g){const I=A.get("inverse")?A.has("bg")?A.get("bg"):"bg":A.get("fg"),B=A.get("inverse")?A.has("fg")?A.get("fg"):"fg":A.get("bg"),Q=sg(I,A.get("bold"),"fg-"),C=sg(B,A.get("blink"),"bg-");let E=g??"";Q&&(E+=" "+Q);C&&(E+=" "+C);A.has("bold")&&(E+=" ap-bright");A.has("faint")&&(E+=" ap-faint");A.has("italic")&&(E+=" ap-italic");A.has("underline")&&(E+=" ap-underline");A.has("blink")&&(E+=" ap-blink");return E}(A.attrs,A.extraClass),Q=function(A){const g=A.get("inverse")?A.get("bg"):A.get("fg"),I=A.get("inverse")?A.get("fg"):A.get("bg");let B={};"string"==typeof g&&(B.color=g);"string"==typeof I&&(B["background-color"]=I);return B}(A.attrs);return B!==I._v$&&V(g,I._v$=B),I._v$2=_(g,Q,I._v$2),I}),{_v$:void 0,_v$2:void 0}),g})();function sg(A,g,I){return"number"==typeof A?(g&&A<8&&(A+=8),`${I}${A}`):"fg"==A||"bg"==A?`${I}${A}`:void 0}const ng=O('');var rg=A=>(()=>{const g=ng.cloneNode(!0);return AA(g,v(x,{get each(){return(()=>{if("number"==typeof A.cursor){const g=[];let I=0,B=0;for(;B0&&g.push([Q[0].substring(0,e),Q[1]]),g.push([Q[0][e],C," ap-cursor-a"]),g.push([Q[0][e],E," ap-cursor-b"]),ev(og,{get text(){return A()[0]},get attrs(){return A()[1]},get extraClass(){return A()[2]}})})),w((()=>g.style.setProperty("height",A.height))),g})();const ag=O('
');var cg=A=>{const g=()=>A.lineHeight??1.3333333333,I=y((()=>({width:`${A.cols}ch`,height:g()*A.rows+"em","font-size":100*(A.scale||1)+"%","font-family":A.fontFamily,"line-height":`${g()}em`})));return(()=>{const B=ag.cloneNode(!0),Q=A.ref;return"function"==typeof Q?$(Q,B):A.ref=B,AA(B,v(q,{get each(){return A.lines},children:(I,B)=>v(rg,{get segments(){return I.segments},get cursor(){return y((()=>B()===A.cursor?.[1]))()?A.cursor?.[0]:null},get height(){return`${g()}em`}})})),w((g=>{const Q=!(!A.blink&&!A.cursorHold),C=!!A.blink,E=I();return Q!==g._v$&&B.classList.toggle("ap-cursor",g._v$=Q),C!==g._v$2&&B.classList.toggle("ap-blink",g._v$2=C),g._v$3=_(B,E,g._v$3),g}),{_v$:void 0,_v$2:void 0,_v$3:void 0}),B})()};const Dg=O(''),wg=O(''),yg=O(''),hg=O(''),lg=O('
'),Gg=O('');function kg(A){let g=Math.floor(A);const I=Math.floor(g/86400);g%=86400;const B=Math.floor(g/3600);g%=3600;const Q=Math.floor(g/60);return g%=60,I>0?`${Ng(I)}:${Ng(B)}:${Ng(Q)}:${Ng(g)}`:B>0?`${Ng(B)}:${Ng(Q)}:${Ng(g)}`:`${Ng(Q)}:${Ng(g)}`}function Ng(A){return A<10?`0${A}`:A.toString()}var Mg=A=>{const g=A=>g=>{g.preventDefault(),A(g)},I=()=>"number"==typeof A.currentTime?kg(A.currentTime):"--:--",B=()=>"number"==typeof A.remainingTime?"-"+kg(A.remainingTime):I(),Q=y((()=>"number"==typeof A.duration?A.markers.filter((g=>g[0]{const g=A.currentTarget.offsetWidth,I=A.currentTarget.getBoundingClientRect(),B=A.clientX-I.left;return 100*Math.max(0,B/g)+"%"},[E,e]=D(!1),t=function(A,g){let I=!0;return function(){if(I){I=!1;for(var B=arguments.length,Q=new Array(B),C=0;CI=!0),g)}}}(A.onSeekClick,50),i=g=>{g.altKey||g.shiftKey||g.metaKey||g.ctrlKey||0!==g.button||(e(!0),A.onSeekClick(C(g)))},o=A=>{A.altKey||A.shiftKey||A.metaKey||A.ctrlKey||E()&&t(C(A))},s=()=>{e(!1)},n=g((A=>{A.stopPropagation()}));return document.addEventListener("mouseup",s),k((()=>{document.removeEventListener("mouseup",s)})),(()=>{const C=lg.cloneNode(!0),E=C.firstChild,e=E.firstChild,t=e.nextSibling,s=E.nextSibling,r=A.ref;return"function"==typeof r?$(r,C):A.ref=C,AA(C,v(T,{get when(){return A.isPausable},get children(){const I=yg.cloneNode(!0);return P(I,"click",g(A.onPlayClick),!0),AA(I,v(j,{get children(){return[v(W,{get when(){return A.isPlaying},get children(){return Dg.cloneNode(!0)}}),v(W,{get when(){return!A.isPlaying},get children(){return wg.cloneNode(!0)}})]}})),I}}),E),AA(e,I),AA(t,B),AA(C,v(T,{get when(){return"number"==typeof A.progress||A.isSeekable},get children(){const I=hg.cloneNode(!0),B=I.firstChild,C=B.firstChild.firstChild;return B.$$mousemove=o,B.$$mousedown=i,AA(B,v(q,{get each(){return Q()},children:(I,B)=>(()=>{const Q=Gg.cloneNode(!0),C=Q.firstChild,E=C.nextSibling;var e;return P(Q,"mousedown",n,!0),P(Q,"click",(e=B(),g((()=>{A.onSeekClick({marker:e})}))),!0),AA(E,(()=>(A=>""===A[1]?kg(A[0]):`${kg(A[0])} - ${A[1]}`)(I))),w((g=>{const B=(g=>g[0]/A.duration*100+"%")(I),E=!!(g=>"number"==typeof A.currentTime&&g[0]<=A.currentTime)(I);return B!==g._v$&&Q.style.setProperty("left",g._v$=B),E!==g._v$2&&C.classList.toggle("ap-marker-past",g._v$2=E),g}),{_v$:void 0,_v$2:void 0}),Q})()}),null),w((g=>_(C,{width:"100%",transform:`scaleX(${A.progress||0}`,"transform-origin":"left center"},g))),I}}),s),P(s,"click",g(A.onFullscreenClick),!0),w((()=>C.classList.toggle("ap-seekable",!!A.isSeekable))),C})()};z(["click","mousedown","mousemove"]);const ug=O('
💥
');var Fg=A=>ug.cloneNode(!0);const dg=O('
');var fg=A=>dg.cloneNode(!0);const Rg=O('
');var Jg=A=>(()=>{const g=Rg.cloneNode(!0),I=g.firstChild;return AA(I,(()=>A.message)),w((g=>_(I,{"font-family":A.fontFamily},g))),g})();const Yg=O('
');var pg=A=>(()=>{const g=Yg.cloneNode(!0);var I;return P(g,"click",(I=A.onClick,A=>{A.preventDefault(),I(A)}),!0),g})();z(["click"]);const Sg=O('
');var Lg=A=>{const g=A.logger,I=A.core,B=A.autoPlay,[Q,C]=Cg({lines:[],cursor:void 0,charW:A.charW,charH:A.charH,bordersW:A.bordersW,bordersH:A.bordersH,containerW:0,containerH:0,isPausable:!0,isSeekable:!0,isFullscreen:!1,currentTime:null,remainingTime:null,progress:null,blink:!0,cursorHold:!1}),[E,e]=D(!1),[t,i]=D(B?null:"start"),[o,s]=D(null),[n,r]=D({cols:A.cols,rows:A.rows}),[a,c]=D(void 0),[l,N]=Cg([]),[M,u]=D(!1),[F,d]=D(void 0),f=()=>n().cols||80,R=()=>n().rows||24,J=()=>!1===A.controls?0:32;let Y,p,S,L,K,U,H,m,b;function q(){iA(),EA(),eA()}function x(A){A.rows{let{cols:g,rows:I,duration:B,theme:Q,poster:C,markers:E}=A;x({cols:g,rows:I}),c(B),d(Q),N(E),Z(C)})),I.addEventListener("play",(()=>{i(null)})),I.addEventListener("playing",(()=>{e(!0),i(null),O(),tA(),CA()})),I.addEventListener("stopped",(A=>{let{message:g}=A;e(!1),q(),void 0!==g&&(s(g),i("info"))})),I.addEventListener("loading",(()=>{e(!1),q(),i("loader")})),I.addEventListener("offline",(()=>{e(!1),q(),s("Stream offline"),i("info")})),I.addEventListener("errored",(()=>{i("error")})),I.addEventListener("resize",x),I.addEventListener("reset",(A=>{let{cols:g,rows:I,theme:B}=A;x({cols:g,rows:I}),d(B),O()})),I.addEventListener("seeked",(()=>{eA()})),I.addEventListener("terminalUpdate",(()=>{void 0===Y&&(Y=requestAnimationFrame(O))}));const X=()=>{b=new ResizeObserver(function(A,g){let I;return function(){for(var B=arguments.length,Q=new Array(B),C=0;CA.apply(this,Q)),g)}}((A=>{C({containerW:K.offsetWidth,containerH:K.offsetHeight}),K.dispatchEvent(new CustomEvent("resize",{detail:{el:U}}))}),10)),b.observe(K)};G((async()=>{g.info("player mounted"),g.debug("font measurements",{charW:Q.charW,charH:Q.charH}),X();const{isPausable:A,isSeekable:E,poster:e}=await I.init();C({isPausable:A,isSeekable:E,containerW:K.offsetWidth,containerH:K.offsetHeight}),Z(e),B&&I.play()})),k((()=>{I.stop(),iA(),EA(),b.disconnect()}));const O=()=>{const A=I.getChangedLines();A&&h((()=>{A.forEach(((A,g)=>{C("lines",g,tg(A))}))})),C("cursor",tg(I.getCursor())),C("cursorHold",!0),Y=void 0},z=y((()=>{g.debug(`containerW = ${Q.containerW}`);const I=Q.charW*f()+Q.bordersW,B=Q.charH*R()+Q.bordersH;let C=A.fit??"width";if("both"===C||Q.isFullscreen){C=Q.containerW/(Q.containerH-J())>I/B?"height":"width"}if(!1===C||"none"===C)return{};if("width"===C){const A=Q.containerW/I;return{scale:A,width:Q.containerW,height:B*A+J()}}if("height"===C){const A=(Q.containerH-J())/B;return{scale:A,width:I*A,height:Q.containerH}}throw`unsupported fit mode: ${C}`})),P=()=>{C("isFullscreen",document.fullscreenElement??document.webkitFullscreenElement)},gA=()=>{Q.isFullscreen?(document.exitFullscreen??document.webkitExitFullscreen??(()=>{})).apply(document):(K.requestFullscreen??K.webkitRequestFullscreen??(()=>{})).apply(K)},IA=A=>{if(!(A.altKey||A.metaKey||A.ctrlKey)){if(A.shiftKey){if("ArrowLeft"==A.key)I.seek("<<<");else{if("ArrowRight"!=A.key)return;I.seek(">>>")}return A.stopPropagation(),void A.preventDefault()}if(" "==A.key)I.togglePlay();else if("."==A.key)I.step(),eA();else if("f"==A.key)gA();else if("ArrowLeft"==A.key)I.seek("<<");else if("ArrowRight"==A.key)I.seek(">>");else if("["==A.key)I.seek({marker:"prev"});else if("]"==A.key)I.seek({marker:"next"});else{if(!(A.key.charCodeAt(0)>=48&&A.key.charCodeAt(0)<=57))return;{const g=(A.key.charCodeAt(0)-48)/10;I.seek(100*g+"%")}}A.stopPropagation(),A.preventDefault()}},BA=()=>{Q.isFullscreen&&oA(!0)},QA=()=>{Q.isFullscreen||oA(!1)},CA=()=>{S=setInterval(eA,100)},EA=()=>{clearInterval(S)},eA=()=>{const A=I.getCurrentTime(),g=I.getRemainingTime(),B=I.getProgress();C({currentTime:A,remainingTime:g,progress:B})},tA=()=>{L=setInterval((()=>{C((A=>{const g={blink:!A.blink};return g.blink&&(g.cursorHold=!1),g}))}),500)},iA=()=>{clearInterval(L),C("blink",!0)},oA=A=>{clearTimeout(p),A&&(p=setTimeout((()=>oA(!1)),2e3)),u(A)},sA=(()=>{const g=Sg.cloneNode(!0),B=g.firstChild;"function"==typeof K?$(K,g):K=g,g.addEventListener("webkitfullscreenchange",P),g.addEventListener("fullscreenchange",P),g.$$mousemove=BA,g.$$keydown=IA,g.addEventListener("keypress",IA);return"function"==typeof U?$(U,B):U=B,B.$$mousemove=()=>oA(!0),B.addEventListener("mouseleave",QA),AA(B,v(cg,{get cols(){return f()},get rows(){return R()},get scale(){return z()?.scale},get blink(){return Q.blink},get lines(){return Q.lines},get cursor(){return Q.cursor},get cursorHold(){return Q.cursorHold},get fontFamily(){return A.terminalFontFamily},get lineHeight(){return A.terminalLineHeight},ref(A){"function"==typeof H?H(A):H=A}}),null),AA(B,v(T,{get when(){return!1!==A.controls},get children(){return v(Mg,{get duration(){return a()},get currentTime(){return Q.currentTime},get remainingTime(){return Q.remainingTime},get progress(){return Q.progress},markers:l,get isPlaying(){return E()},get isPausable(){return Q.isPausable},get isSeekable(){return Q.isSeekable},onPlayClick:()=>I.togglePlay(),onFullscreenClick:gA,onSeekClick:A=>I.seek(A),ref(A){"function"==typeof m?m(A):m=A}})}}),null),AA(B,v(j,{get children(){return[v(W,{get when(){return"start"==t()},get children(){return v(pg,{onClick:()=>I.play()})}}),v(W,{get when(){return"loader"==t()},get children(){return v(fg,{})}}),v(W,{get when(){return"info"==t()},get children(){return v(Jg,{get message(){return o()},get fontFamily(){return A.terminalFontFamily}})}}),v(W,{get when(){return"error"==t()},get children(){return v(Fg,{})}})]}}),null),w((I=>{const Q=!!(!0===A.controls||"auto"===A.controls&&M()),C=`ap-player asciinema-player-theme-${A.theme??"asciinema"}`,E=(()=>{const g={};!1!==A.fit&&"none"!==A.fit||void 0===A.terminalFontSize||("small"===A.terminalFontSize?g["font-size"]="12px":"medium"===A.terminalFontSize?g["font-size"]="18px":"big"===A.terminalFontSize?g["font-size"]="24px":g["font-size"]=A.terminalFontSize);const I=z();void 0!==I.width&&(g.width=`${I.width}px`,g.height=`${I.height}px`);const B=F();return void 0===B||void 0!==A.theme&&null!==A.theme||(g["--term-color-foreground"]=B.foreground,g["--term-color-background"]=B.background,B.palette.forEach(((A,I)=>{g[`--term-color-${I}`]=A}))),g})();return Q!==I._v$&&g.classList.toggle("ap-hud",I._v$=Q),C!==I._v$2&&V(B,I._v$2=C),I._v$3=_(B,E,I._v$3),I}),{_v$:void 0,_v$2:void 0,_v$3:void 0}),g})();return sA};z(["keydown","mousemove"]);class Kg{log(){}debug(){}info(){}warn(){}error(){}}class Ug{constructor(A,g){this.logger=A,this.prefix=g}log(A){for(var g=arguments.length,I=new Array(g>1?g-1:0),B=1;B1?g-1:0),B=1;B1?g-1:0),B=1;B1?g-1:0),B=1;B1?g-1:0),B=1;BI=>{g(A(I))}}(A))}flatMap(A){return this.transform(function(A){return g=>I=>{A(I).forEach(g)}}(A))}filter(A){return this.transform(function(A){return g=>I=>{A(I)&&g(I)}}(A))}take(A){return this.transform(function(A){let g=0;return I=>B=>{gB=>{g+=1,g>A&&I(B)}}(A))}transform(A){return new Hg(this.input,this.xfs.concat([A]))}multiplex(A,g){return new Hg(new bg(this[Symbol.iterator](),A[Symbol.iterator](),g))}toArray(){return Array.from(this)}[Symbol.iterator](){let A=0,g=[],I=!1;const B=(Q=this.xfs,C=A=>g.push(A),Q.reverse().reduce(((A,g)=>{const I=mg(g(A.step));return{step:I.step,flush:()=>{I.flush(),A.flush()}}}),mg(C)));var Q,C;return{next:()=>{for(A===g.length&&(g=[],A=0);0===g.length;){const A=this.input.next();if(A.done)break;B.step(A.value)}return 0!==g.length||I||(B.flush(),I=!0),g.length>0?{done:!1,value:g[A++]}:{done:!0}}}}}function mg(A){return"function"==typeof A?{step:A,flush:()=>{}}:A}class bg{constructor(A,g,I){this.left=A,this.right=g,this.comparator=I}[Symbol.iterator](){let A,g;return{next:()=>{if(void 0===A&&void 0!==this.left){const g=this.left.next();g.done?this.left=void 0:A=g.value}if(void 0===g&&void 0!==this.right){const A=this.right.next();A.done?this.right=void 0:g=A.value}if(void 0===A&&void 0===g)return{done:!0};if(void 0===A){const A=g;return g=void 0,{done:!1,value:A}}if(void 0===g){const g=A;return A=void 0,{done:!1,value:g}}if(this.comparator(A,g)){const g=A;return A=void 0,{done:!1,value:g}}{const A=g;return g=void 0,{done:!1,value:A}}}}}}async function vg(A){let g,I;if(A instanceof Response){const B=await A.text(),Q=function(A){const g=A.split("\n");let I;try{I=JSON.parse(g[0])}catch(A){return}const B=new Hg(g).drop(1).filter((A=>"["===A[0])).map(JSON.parse).toArray();return{header:I,events:B}}(B);void 0!==Q?(g=Q.header,I=Q.events):g=JSON.parse(B)}else if("object"==typeof A&&"number"==typeof A.version)g=A;else{if(!Array.isArray(A))throw"invalid data";g=A[0],I=A.slice(1,A.length)}if(1===g.version)return function(A){let g=0;const I=new Hg(A.stdout).map((A=>(g+=A[0],[g,"o",A[1]])));return{cols:A.width,rows:A.height,events:I}}(g);if(2===g.version)return function(A,g){return{cols:A.width,rows:A.height,theme:qg(A.theme),events:g,idleTimeLimit:A.idle_time_limit}}(g,I);throw`asciicast v${g.version} format not supported`}function qg(A){const g=/^#[0-9A-Fa-f]{6}$/,I=A?.fg,B=A?.bg,Q=A?.palette;if(g.test(I)&&g.test(B)&&/^(#[0-9A-Fa-f]{6}:){7,}#[0-9A-Fa-f]{6}$/.test(Q))return{foreground:I,background:B,palette:Q.split(":")}}function xg(A){if("r"===A[1]){const[g,I]=A[2].split("x");return[A[0],"o",`[8;${I};${g};t`]}return A}function Tg(A){return"number"==typeof A?[A,"m",""]:[A[0],"m",A[1]]}function jg(){let A=0;return function(g){return"m"===g[1]?[g[0],g[1],{index:A++,time:g[0],label:g[2]}]:g}}class Wg{constructor(){this.items=[],this.onPush=void 0}push(A){this.items.push(A),void 0!==this.onPush&&(this.onPush(this.popAll()),this.onPush=void 0)}popAll(){if(this.items.length>0){const A=this.items;return this.items=[],A}{const A=this;return new Promise((g=>{A.onPush=g}))}}}function Zg(A,g,I,B,Q){return I>0?function(A,g,I,B){let Q=arguments.length>4&&void 0!==arguments[4]?arguments[4]:1/60;const C=new Wg,E=Xg();let e=!1,t=-Q;return setTimeout((async()=>{for(;!e;){const i=await C.popAll();if(e)return;for(const C of i){const i=C[0]-B+I;if(i-t0&&(await Og(o),e))return;g(C[0]),A(C[2]),t=i}}}),0),{pushEvent(A){if("o"===A[1])C.push(A);else if("r"===A[1]){const[g,I]=A[2].split("x");C.push([A[0],"o",`[8;${I};${g};t`])}},pushText(A){const g=(Xg()-E)/1e3;C.push([g,"o",A])},stop(){e=!0,C.push(void 0)}}}(A,g,I,B??0,Q):function(A){return{pushEvent(g){"o"===g[1]&&A(g[2])},pushText(g){A(g)},stop(){}}}(A)}function Xg(){return(new Date).getTime()}function Og(A){return new Promise((g=>{setTimeout(g,1e3*A)}))}function zg(A){return Math.min(500*Math.pow(2,A),5e3)}function Vg(A){if(A.length<13)return;const g=function(A){const g=Pg(A.subarray(0,4)),I=Pg(A.subarray(4,8));return g+I/1e6}(A.subarray(0,8)),I=Pg(A.subarray(8,12));return{time:g,data:A.subarray(12,12+I),len:I+12}}function Pg(A){return A[0]+256*A[1]+256*A[2]*256+256*A[3]*256*256}const _g=new Map([["benchmark",function(A,g){let I,{url:B,iterations:Q=10}=A,{feed:C,setState:E,now:e}=g,t=0;return{async init(){const A=await vg(await fetch(B)),{cols:g,rows:Q,events:C}=A;I=Array.from(C).filter((A=>{let[g,I,B]=A;return"o"===I})).map((A=>{let[g,I,B]=A;return[g,B]}));const E=I[I.length-1][0];for(const[A,g]of I)t+=new Blob([g]).size;return{cols:g,rows:Q,duration:E}},play(){const A=e();for(let A=0;A{E("stopped",{reason:"ended"})}),0),!0}}}],["clock",function(A,g,I){let{hourColor:B=3,minuteColor:Q=4,separatorColor:C=9}=A,{feed:E}=g,{cols:e=5,rows:t=1}=I;const i=Math.floor(t/2),o=Math.floor(e/2)-2,s=`[?25l[${i}B`;let n;const r=()=>{const A=new Date,g=A.getHours(),I=A.getMinutes(),E=[];E.push("\r");for(let A=0;A{r().forEach(E)};return{init:()=>{const A=[s].concat(r());return{cols:e,rows:t,duration:1440,poster:A}},play:()=>(E(s),a(),n=setInterval(a,1e3),!0),stop:()=>{clearInterval(n)},getCurrentTime:()=>{const A=new Date;return 60*A.getHours()+A.getMinutes()}}}],["eventsource",function(A,g){let I,B,{url:Q,bufferTime:C=.1,minFrameTime:E}=A,{feed:e,reset:t,setState:i,logger:o}=g;o=new Ug(o,"eventsource: ");let s=new KA;function n(A){void 0!==B&&B.stop(),B=Zg(e,(A=>s.setTime(A)),C,A,E)}return{play:()=>{I=new EventSource(Q),I.addEventListener("open",(()=>{o.info("opened"),n()})),I.addEventListener("error",(A=>{o.info("errored"),o.debug({e:A}),i("loading")})),I.addEventListener("message",(A=>{const g=JSON.parse(A.data);if(Array.isArray(g))B.pushEvent(g);else if(void 0!==g.cols||void 0!==g.width){const A=g.cols??g.width,I=g.rows??g.height;o.debug(`vt reset (${A}x${I})`),i("playing"),n(g.time),t(A,I,g.init??void 0),s=new LA,"number"==typeof g.time&&s.setTime(g.time)}else"offline"===g.state&&(o.info("stream offline"),i("offline"),s=new KA)})),I.addEventListener("done",(()=>{o.info("closed"),I.close(),i("stopped",{reason:"ended"})}))},stop:()=>{void 0!==B&&B.stop(),void 0!==I&&I.close()},getCurrentTime:()=>s.getTime()}}],["random",function(A,g){let{feed:I,setTimeout:B}=g;const Q=" ".charCodeAt(0),C="~".charCodeAt(0)-Q;let E;const e=()=>{const A=Math.pow(5,4*Math.random());E=B(t,A)},t=()=>{e();const A=String.fromCharCode(Q+Math.floor(Math.random()*C));I(A)};return()=>(e(),()=>clearInterval(E))}],["recording",function(A,g,I){let B,Q,C,E,e,t,i,o,s,{feed:n,onInput:r,onMarker:a,now:c,setTimeout:D,setState:w,logger:y}=g,{idleTimeLimit:h,startAt:l,loop:G,posterTime:k,markers:N,pauseOnMarkers:M,cols:u,rows:F}=I,d=0,f=0,R=0;async function J(A,g){const I=await fetch(A,g);if(!I.ok)throw`failed fetching recording from ${A}: ${I.status} ${I.statusText}`;return I}function Y(){const A=C[d];A?i=D(p,function(A){let g=1e3*A-(c()-o);return g<0&&(g=0),g}(A[0])):(S(),R++,!0===G||"number"==typeof G&&R1e3*g[0]);Y()}function S(){clearTimeout(i),i=null}function L(A){const[g,I,B]=A;if("o"===I)n(B);else if("i"===I)r(B);else if("m"===I&&(a(B),M))return K(),s=1e3*g,w("stopped",{reason:"paused"}),!0;return!1}function K(){return!i||(S(),s=c()-o,!0)}function U(){o=c()-s,s=null,Y()}function H(A){const g=!!i;K();const I=(s??0)/1e3;if("string"==typeof A)"<<"===A?A=I-5:">>"===A?A=I+5:"<<<"===A?A=I-.1*e:">>>"===A?A=I+.1*e:"%"===A[A.length-1]&&(A=parseFloat(A.substring(0,A.length-1))/100*e);else if("object"==typeof A)if("prev"===A.marker)A=m(I)??0,g&&I-A<1&&(A=m(A)??0);else if("next"===A.marker)A=function(A){if(0==E.length)return;let g,I=E.length-1,B=E[I];for(;B&&B[0]>A;)g=B[0],B=E[--I];return g}(I)??e;else if("number"==typeof A.marker){const g=E[A.marker];if(void 0===g)throw`invalid marker index: ${A.marker}`;A=g[0]}const B=Math.min(Math.max(A,0),e);B[A[0],"o",A[1]])),C=new Hg(I).map((A=>[A[0],"i",A[1]])),E=new Hg(B).map(Tg);return Q.multiplex(C,((A,g)=>A[0]A[0]1&&void 0!==arguments[1]?arguments[1]:1/60;return B=>{let Q=0,C=0;return{step:A=>{Q++,void 0!==g?A[1]===g[1]&&A[0]-g[0]{void 0!==g&&(B(g),C++),A.debug(`batched ${Q} frames to ${C} frames`)}}}}(g,C)).map(function(A,g,I){let B=0,Q=0;return function(C){const E=C[0]-B-A;return B=C[0],E>0&&(Q+=E,C[0]"m"!==A[1])).multiplex(e,((A,g)=>A[0]"i"===A[1]?[A[0]+E,A[1],A[2]]:A)),t.sort(((A,g)=>A[0]-g[0])));const o=t[t.length-1][0],s=B-i.offset;return{...A,events:t,duration:o,effectiveStartAt:s}}(await g(await function(A){let{url:g,data:I,fetchOpts:B={}}=A;if("string"==typeof g)return J(g,B);if(Array.isArray(g))return Promise.all(g.map((A=>J(A,B))));if(void 0!==I)return"function"==typeof I&&(I=I()),I instanceof Promise||(I=Promise.resolve(I)),I.then((A=>"string"==typeof A||A instanceof ArrayBuffer?new Response(A):A));throw"failed fetching recording file: url/data missing in src"}(A),{encoding:s}),y,{idleTimeLimit:h,startAt:l,minFrameTime:I,inputOffset:i,markers_:N});if(({cols:B,rows:Q,events:C,duration:e,effectiveStartAt:t}=n),u=u??B,F=F??Q,0===C.length)throw"recording is missing events";void 0!==o&&function(A,g){const I=document.createElement("a"),B=A.events.map((A=>"m"===A[1]?[A[0],A[1],A[2].label]:A)),Q=function(A){return`${JSON.stringify({version:2,width:A.cols,height:A.rows})}\n${A.events.map(JSON.stringify).join("\n")}\n`}({...A,events:B});I.href=URL.createObjectURL(new Blob([Q],{type:"text/plain"})),I.download=g,I.click()}(n,o);const r=void 0!==k?(a=k,C.filter((A=>A[0]A[2]))):void 0;var a;return E=C.filter((A=>"m"===A[1])).map((A=>[A[0],A[2].label])),{cols:B,rows:Q,duration:e,theme:n.theme,poster:r,markers:E}},play:function(){return i||(void 0===C[d]&&(t=0),null!==t&&H(t),U()),!0},pause:K,seek:H,step:function(){let A=C[d++];for(;void 0!==A&&"o"!==A[1];)A=C[d++];if(void 0===A)return;n(A[2]);const g=A[0];f=g,s=1e3*g,t=null},stop:K,getCurrentTime:function(){return i?(c()-o)/1e3:(s??0)/1e3}}}],["websocket",function(A,g){let{url:I,bufferTime:B=.1,reconnectDelay:Q=zg,minFrameTime:C}=A,{feed:E,reset:e,setState:t,logger:i}=g;i=new Ug(i,"websocket: ");const o=new TextDecoder;let s,n,r,a=new KA,c=0,D=!1;function w(A){void 0!==n&&n.stop(),n=Zg(E,(A=>a.setTime(A)),B,A,C)}function y(A){if("string"==typeof A.data)i.info("activating asciicast-compatible handler"),s.onmessage=h,h(A);else{const g=new Uint8Array(A.data);if(65==g[0]&&76==g[1]&&105==g[2]&&83==g[3])1==g[4]?(i.info("activating ALiS v1 handler"),s.onmessage=G):(i.warn(`unsupported ALiS version (${g[4]})`),s.close());else{i.info("activating raw text handler");const I=o.decode(g),B=function(A){const g=A.match(/\x1b\[8;(\d+);(\d+)t/);if(null!==g)return[parseInt(g[2],10),parseInt(g[1],10)]}(I)??function(A){const g=A.match(/\[.*COLUMNS="(\d{1,3})" LINES="(\d{1,3})".*\]/);if(null!==g)return[parseInt(g[1],10),parseInt(g[2],10)]}(I);if(void 0!==B){const[A,g]=B;u(A,g,0,void 0)}s.onmessage=M,M(A)}}}function h(A){const g=JSON.parse(A.data);Array.isArray(g)?n.pushEvent(g):void 0!==g.cols||void 0!==g.width?u(g.cols??g.width,g.rows??g.height,g.time,g.init??void 0):"offline"===g.status&&F()}const l=54;function G(A){const g=A.data,I=new DataView(g),B=I.getUint8(0);let Q=1;if(1===B){const A=I.getUint16(Q,!0);Q+=2;const B=I.getUint16(Q,!0);Q+=2;const C=I.getFloat32(Q,!0);Q+=4;const E=I.getUint8(Q);let e;Q+=1,1===E&&(e=function(A){const g=k(A[0],A[1],A[2]),I=k(A[3],A[4],A[5]),B=[];for(let g=0;g<16;g++)B.push(k(A[3*g+6],A[3*g+7],A[3*g+8]));return{foreground:g,background:I,palette:B}}(new Uint8Array(g,Q,l)),Q+=l);const t=I.getUint32(Q,!0);let i;Q+=4,t>0&&(i=o.decode(new Uint8Array(g,Q,t)),Q+=t),u(A,B,C,i,e)}else if(111===B){const A=I.getFloat32(1,!0),B=I.getUint32(5,!0),Q=o.decode(new Uint8Array(g,9,B));n.pushEvent([A,"o",Q])}else if(114===B){const A=I.getFloat32(1,!0),g=I.getUint16(5,!0),B=I.getUint16(7,!0);n.pushEvent([A,"r",`${g}x${B}`])}else 4===B?F():i.debug(`unknown frame type: ${B}`)}function k(A,g,I){return`#${N(A)}${N(g)}${N(I)}`}function N(A){return A.toString(16).padStart(2,"0")}function M(A){n.pushText(o.decode(A.data))}function u(A,g,I,B,Q){i.debug(`stream reset (${A}x${g} @${I})`),t("playing"),w(I),e(A,g,B,Q),a=new LA,"number"==typeof I&&a.setTime(I)}function F(){i.info("stream offline"),t("offline"),a=new KA}function d(){s=new WebSocket(I),s.binaryType="arraybuffer",s.onopen=()=>{i.info("opened"),w(),r=setTimeout((()=>{c=0}),1e3)},s.onmessage=y,s.onclose=A=>{if(D||1e3===A.code||1005===A.code)i.info("closed"),t("stopped",{reason:"ended",message:"Stream ended"});else{clearTimeout(r);const A=Q(c++);i.info(`unclean close, reconnecting in ${A}...`),t("loading"),setTimeout(d,A)}}}return{play:()=>{d()},stop:()=>{D=!0,void 0!==n&&n.stop(),void 0!==s&&s.close()},getCurrentTime:()=>a.getTime()}}]]),$g=new Map([["asciicast",vg],["typescript",async function(A,g){let{encoding:I}=g;const B=new TextDecoder(I);let Q,C,E=(await A[0].text()).split("\n").filter((A=>A.length>0)).map((A=>A.split(" ")));E[0].length<3&&(E=E.map((A=>["O",A[0],A[1]])));const e=await A[1].arrayBuffer(),t=new Uint8Array(e),i=t.findIndex((A=>10==A))+1,o=B.decode(t.subarray(0,i)).match(/COLUMNS="(\d+)" LINES="(\d+)"/);null!==o&&(Q=parseInt(o[1],10),C=parseInt(o[2],10));const s={array:t,cursor:i};let n=s;if(void 0!==A[2]){const g=await A[2].arrayBuffer();n={array:new Uint8Array(g),cursor:i}}const r=[];let a=0;for(const A of E)if(a+=parseFloat(A[1]),"O"===A[0]){const g=parseInt(A[2],10),I=s.array.subarray(s.cursor,s.cursor+g),Q=B.decode(I);r.push([a,"o",Q]),s.cursor+=g}else if("I"===A[0]){const g=parseInt(A[2],10),I=n.array.subarray(n.cursor,n.cursor+g),Q=B.decode(I);r.push([a,"i",Q]),n.cursor+=g}else if("S"===A[0]&&"SIGWINCH"===A[2]){const g=parseInt(A[4].slice(5),10),I=parseInt(A[3].slice(5),10);r.push([a,"r",`${g}x${I}`])}else"H"===A[0]&&"COLUMNS"===A[2]?Q=parseInt(A[3],10):"H"===A[0]&&"LINES"===A[2]&&(C=parseInt(A[3],10));return Q=Q??80,C=C??24,{cols:Q,rows:C,events:r}}],["ttyrec",async function(A,g){let{encoding:I}=g;const B=new TextDecoder(I),Q=await A.arrayBuffer(),C=new Uint8Array(Q),E=Vg(C),e=E.time,t=B.decode(E.data).match(/\x1b\[8;(\d+);(\d+)t/),i=[];let o=80,s=24;null!==t&&(o=parseInt(t[2],10),s=parseInt(t[1],10));let n=0,r=Vg(C);for(;void 0!==r;){const A=r.time-e,g=B.decode(r.data);i.push([A,"o",g]),n+=r.len,r=Vg(C.subarray(n))}return{cols:o,rows:s,events:i}}]]);return A.create=function(A,g){let I=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const B=I.logger??new Kg,Q=new jA(function(A){if("function"==typeof A)return A;"string"==typeof A&&(A="ws://"==A.substring(0,5)||"wss://"==A.substring(0,6)?{driver:"websocket",url:A}:"clock:"==A.substring(0,6)?{driver:"clock"}:"random:"==A.substring(0,7)?{driver:"random"}:"benchmark:"==A.substring(0,10)?{driver:"benchmark",url:A.substring(10)}:{driver:"recording",url:A});void 0===A.driver&&(A.driver="recording");if("recording"==A.driver&&(void 0===A.parser&&(A.parser="asciicast"),"string"==typeof A.parser)){if(!$g.has(A.parser))throw`unknown parser: ${A.parser}`;A.parser=$g.get(A.parser)}if(_g.has(A.driver)){const g=_g.get(A.driver);return(I,B)=>g(A,I,B)}throw`unsupported driver: ${JSON.stringify(A)}`}(A),{logger:B,cols:I.cols,rows:I.rows,loop:I.loop,speed:I.speed,preload:I.preload,startAt:I.startAt,poster:I.poster,markers:I.markers,pauseOnMarkers:I.pauseOnMarkers,idleTimeLimit:I.idleTimeLimit}),C=function(A,g){const I=80,B=24,Q=document.createElement("div");let C;Q.style.height="0px",Q.style.overflow="hidden",Q.style.fontSize="15px",document.body.appendChild(Q);const E=X((()=>(C=v(cg,{cols:I,rows:B,lineHeight:g,fontFamily:A,lines:[]}),C)),Q),e={charW:C.clientWidth/I,charH:C.clientHeight/B,bordersW:C.offsetWidth-C.clientWidth,bordersH:C.offsetHeight-C.clientHeight};return E(),document.body.removeChild(Q),e}(I.terminalFontFamily,I.terminalLineHeight),E={logger:B,core:Q,cols:I.cols,rows:I.rows,fit:I.fit,controls:I.controls??"auto",autoPlay:I.autoPlay??I.autoplay,terminalFontSize:I.terminalFontSize,terminalFontFamily:I.terminalFontFamily,terminalLineHeight:I.terminalLineHeight,theme:I.theme,...C};let e;const t=X((()=>(e=v(Lg,E),e)),g),i={el:e,dispose:t,getCurrentTime:()=>Q.getCurrentTime(),getDuration:()=>Q.getDuration(),play:()=>Q.play(),pause:()=>Q.pause(),seek:A=>Q.seek(A),addEventListener:(A,g)=>Q.addEventListener(A,g.bind(i))};return i},A}({}); diff --git a/docs/site/static/asciinema-player/custom-theme.css b/docs/site/static/asciinema-player/custom-theme.css new file mode 100644 index 00000000..4dc5f444 --- /dev/null +++ b/docs/site/static/asciinema-player/custom-theme.css @@ -0,0 +1,45 @@ +.asciinema-player-theme-alabaster-auto { + --term-color-foreground: #000000; /* Black for foreground text */ + --term-color-background: #f7f7f7; /* Very light gray for background */ + + --term-color-0: #000000; /* Black */ + --term-color-1: #aa3731; /* Red */ + --term-color-2: #448c37; /* Green */ + --term-color-3: #cb9000; /* Yellow */ + --term-color-4: #325cc0; /* Blue */ + --term-color-5: #7a3e9d; /* Magenta */ + --term-color-6: #0083b2; /* Cyan */ + --term-color-7: #bbbbbb; /* White */ + --term-color-8: #777777; /* Bright black (gray) */ + --term-color-9: #f05050; /* Bright red */ + --term-color-10: #60cb00; /* Bright green */ + --term-color-11: #ffbc5d; /* Bright yellow */ + --term-color-12: #007acc; /* Bright blue */ + --term-color-13: #e64ce6; /* Bright magenta */ + --term-color-14: #00aacb; /* Bright cyan */ + --term-color-15: #ffffff; /* Bright white */ + } + + @media (prefers-color-scheme: dark) { + .asciinema-player-theme-solarized-auto { + --term-color-foreground: #839496; + --term-color-background: #002b36; + + --term-color-0: #073642; + --term-color-1: #dc322f; + --term-color-2: #859900; + --term-color-3: #b58900; + --term-color-4: #268bd2; + --term-color-5: #d33682; + --term-color-6: #2aa198; + --term-color-7: #eee8d5; + --term-color-8: #002b36; + --term-color-9: #cb4b16; + --term-color-10: #586e75; + --term-color-11: #657b83; + --term-color-12: #839496; + --term-color-13: #6c71c4; + --term-color-14: #93a1a1; + --term-color-15: #fdf6e3; + } + } \ No newline at end of file diff --git a/docs/site/static/asciinema-player/v3.7.0 b/docs/site/static/asciinema-player/v3.7.0 new file mode 100644 index 00000000..e69de29b diff --git a/docs/site/static/main.js b/docs/site/static/main.js new file mode 100644 index 00000000..1d5dc0dc --- /dev/null +++ b/docs/site/static/main.js @@ -0,0 +1,116 @@ + + +// Set darkmode +document.getElementById('mode').addEventListener('click', () => { + let isDarkTheme = document.body.classList.contains('dark'); + setColorTheme(!isDarkTheme ? "dark" : "light"); + }); + + + let preferDarkTheme = prefersDarkMode(); + let theme = localStorage.getItem('theme'); + if (theme !== null) { + setColorTheme(theme); + } else { + setColorTheme(preferDarkTheme ? "dark" : "light"); + } + + // Get the media query list object for the prefers-color-scheme media feature + const colorSchemeQueryList = window.matchMedia("(prefers-color-scheme: dark)"); + // Add an event listener for the change event + colorSchemeQueryList.addEventListener("change", handleColorSchemeChange); + + + function setColorTheme(theme) { + if (theme === "dark") { + document.body.classList.add('dark'); + switchClanLogo("white"); + localStorage.setItem('theme', 'dark'); + } else { + document.body.classList.remove('dark'); + switchClanLogo("dark"); + localStorage.setItem('theme', 'light'); + } + } + + // A function that returns true if the user prefers dark mode, false otherwise + function prefersDarkMode() { + // Check if the browser supports the prefers-color-scheme media query + if (window.matchMedia) { + // Get the current value of the media query + let colorScheme = window.matchMedia("(prefers-color-scheme: dark)"); + // Return true if the media query matches, false otherwise + return colorScheme.matches; + } else { + // If the browser does not support the media query, return false by default + return false; + } + } + + function switchClanLogo(theme) { + let favs = document.getElementsByClassName("favicon"); + for (item of favs) { + if (theme === "white") + { + item.href = item.href.replace("dark-favicon", "white-favicon") + } else { + item.href = item.href.replace("white-favicon", "dark-favicon") + } + } + let clogos = document.getElementsByClassName("clogo"); + for (item of clogos) { + if (theme === "white") + { + item.src = item.src.replace("dark", "white") + } else { + item.src = item.src.replace("white", "dark") + } + } + } + + + + // A function that executes some logic based on the color scheme preference + function handleColorSchemeChange(e) { + if (e.matches) { + // The user prefers dark mode + setColorTheme("dark"); + } else { + // The user prefers light mode + setColorTheme("light"); + } + } + + // Function to resize all video elements to match their parent article's width + function resizeVideosToMatchArticleWidth() { + // Function to adjust video sizes + function adjustVideoSizes() { + // Find all video elements + const videos = document.querySelectorAll('video'); + + videos.forEach(video => { + // Find the closest parent article element + const article = video.closest('article'); + if (!article) return; // Skip if no parent article found + + // Calculate new video height to maintain aspect ratio + const aspectRatio = video.videoHeight / video.videoWidth; + const newWidth = article.clientWidth; // Width of the parent article + const newHeight = newWidth * aspectRatio; + + // Set new width and height on the video + video.style.width = `${newWidth}px`; + video.style.height = `${newHeight}px`; + }); + } + + // Adjust video sizes on load + document.addEventListener('DOMContentLoaded', adjustVideoSizes); + + // Adjust video sizes on window resize + window.onresize = adjustVideoSizes; + } + + // Call the function to initialize the resizing + resizeVideosToMatchArticleWidth(); + \ No newline at end of file diff --git a/docs/site/templates/index.md b/docs/site/templates/index.md deleted file mode 100644 index 6907914e..00000000 --- a/docs/site/templates/index.md +++ /dev/null @@ -1,24 +0,0 @@ -# Templates - -We provide some starting templates you can easily use one of those via `nix flakes`. - -They showcase best practices and guide you through setting up and using Clan's modules - -I.e. To use the `new-clan` template run the following command: - -```bash -nix flake init -t git+https://git.clan.lol/clan/clan-core#new-clan -``` - -## Available Templates - -We offer the following templates: - -To initialize a clan with one of those run: -```bash -nix flake init -t git+https://git.clan.lol/clan/clan-core#[TEMPLATE_NAME] -``` - -Substitute `[TEMPLATE_NAME]` with the name of the template. - -- **new-clan**: Perfect for beginners, this template shows you how to link two machines in a basic setup. diff --git a/pkgs/clan-cli/clan_cli/flash.py b/pkgs/clan-cli/clan_cli/flash.py index ed7cc77c..18142582 100644 --- a/pkgs/clan-cli/clan_cli/flash.py +++ b/pkgs/clan-cli/clan_cli/flash.py @@ -130,7 +130,7 @@ def flash_machine( ) cmd = nix_shell( - ["/home/lhebendanz/Projects/disko"], + ["nixpkgs#disko"], disko_install, ) run(cmd, log=Log.BOTH, error_msg=f"Failed to flash {machine}") From f6efd11eae6fa1d36124c6e8522f7e2a99449229 Mon Sep 17 00:00:00 2001 From: Qubasa Date: Thu, 16 May 2024 19:32:05 +0200 Subject: [PATCH 3/5] Working dark theme switcher --- docs/main.py | 8 +- docs/mkdocs.yml | 7 +- docs/nix/scripts/renderOptions.py | 2 +- docs/site/static/main.js | 174 +++++++++++------------------- 4 files changed, 75 insertions(+), 116 deletions(-) diff --git a/docs/main.py b/docs/main.py index 2fa40edb..71f58fa7 100644 --- a/docs/main.py +++ b/docs/main.py @@ -2,7 +2,7 @@ from typing import Any def define_env(env: Any) -> None: - static_dir = "../static/" + static_dir = "/static/" video_dir = "https://clan.lol/" + "videos/" asciinema_dir = static_dir + "asciinema-player/" @@ -15,8 +15,7 @@ def define_env(env: Any) -> None: @env.macro def asciinema(name: str) -> str: - return f"""
- + return f"""
""" + +
""" diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index 302a31ed..371ce212 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -120,8 +120,11 @@ theme: icon: material/weather-sunny name: Switch to light mode - extra_javascript: - - static/main.js +extra_javascript: + - static/main.js +extra_css: + - static/asciinema-player/custom-theme.css + - static/asciinema-player/asciinema-player.css plugins: - search diff --git a/docs/nix/scripts/renderOptions.py b/docs/nix/scripts/renderOptions.py index d434fdff..1c28300f 100644 --- a/docs/nix/scripts/renderOptions.py +++ b/docs/nix/scripts/renderOptions.py @@ -74,7 +74,7 @@ def render_option(name: str, option: dict[str, Any], level: int = 3) -> str: read_only = option.get("readOnly") res = f""" -{"#" * level} {sanitize(name)} {{#{sanitize(name)}}} +{"#" * level} {sanitize(name)} {"Readonly" if read_only else ""} {option.get("description", "No description available.")} diff --git a/docs/site/static/main.js b/docs/site/static/main.js index 1d5dc0dc..a8e66e42 100644 --- a/docs/site/static/main.js +++ b/docs/site/static/main.js @@ -1,116 +1,72 @@ -// Set darkmode -document.getElementById('mode').addEventListener('click', () => { - let isDarkTheme = document.body.classList.contains('dark'); - setColorTheme(!isDarkTheme ? "dark" : "light"); - }); - - - let preferDarkTheme = prefersDarkMode(); - let theme = localStorage.getItem('theme'); - if (theme !== null) { - setColorTheme(theme); +let preferDarkTheme = prefersDarkMode(); +let theme = localStorage.getItem('theme'); +if (theme !== null) { + setColorTheme(theme); +} else { + setColorTheme(preferDarkTheme ? "dark" : "light"); +} + +// Get the media query list object for the prefers-color-scheme media feature +const colorSchemeQueryList = window.matchMedia("(prefers-color-scheme: dark)"); +// Add an event listener for the change event +colorSchemeQueryList.addEventListener("change", handleColorSchemeChange); + + +function setColorTheme(theme) { + if (theme === "dark") { + document.body.setAttribute('data-md-color-scheme', 'slate'); + document.body.setAttribute('data-md-color-media', '(prefers-color-scheme: dark)') + localStorage.setItem('theme', 'dark'); } else { - setColorTheme(preferDarkTheme ? "dark" : "light"); + document.body.setAttribute('data-md-color-scheme', 'default'); + document.body.setAttribute('data-md-color-media', '(prefers-color-scheme: light)') + localStorage.setItem('theme', 'light'); } - - // Get the media query list object for the prefers-color-scheme media feature - const colorSchemeQueryList = window.matchMedia("(prefers-color-scheme: dark)"); - // Add an event listener for the change event - colorSchemeQueryList.addEventListener("change", handleColorSchemeChange); - - - function setColorTheme(theme) { - if (theme === "dark") { - document.body.classList.add('dark'); - switchClanLogo("white"); - localStorage.setItem('theme', 'dark'); - } else { - document.body.classList.remove('dark'); - switchClanLogo("dark"); - localStorage.setItem('theme', 'light'); - } +} + +// A function that returns true if the user prefers dark mode, false otherwise +function prefersDarkMode() { + // Check if the browser supports the prefers-color-scheme media query + if (window.matchMedia) { + // Get the current value of the media query + let colorScheme = window.matchMedia("(prefers-color-scheme: dark)"); + // Return true if the media query matches, false otherwise + return colorScheme.matches; + } else { + // If the browser does not support the media query, return false by default + return false; } - - // A function that returns true if the user prefers dark mode, false otherwise - function prefersDarkMode() { - // Check if the browser supports the prefers-color-scheme media query - if (window.matchMedia) { - // Get the current value of the media query - let colorScheme = window.matchMedia("(prefers-color-scheme: dark)"); - // Return true if the media query matches, false otherwise - return colorScheme.matches; - } else { - // If the browser does not support the media query, return false by default - return false; - } +} + +// A function that executes some logic based on the color scheme preference +function handleColorSchemeChange(e) { + if (e.matches) { + // The user prefers dark mode + setColorTheme("dark"); + } else { + // The user prefers light mode + setColorTheme("light"); } - - function switchClanLogo(theme) { - let favs = document.getElementsByClassName("favicon"); - for (item of favs) { - if (theme === "white") - { - item.href = item.href.replace("dark-favicon", "white-favicon") - } else { - item.href = item.href.replace("white-favicon", "dark-favicon") - } - } - let clogos = document.getElementsByClassName("clogo"); - for (item of clogos) { - if (theme === "white") - { - item.src = item.src.replace("dark", "white") - } else { - item.src = item.src.replace("white", "dark") - } - } +} + +// Detects if user pressed on the "change theme" button +document.addEventListener('DOMContentLoaded', function () { + function handleThemeChange() { + const isDarkMode = document.body.getAttribute('data-md-color-media').includes('dark'); + console.log(`Theme is now ${isDarkMode ? 'dark' : 'light'}`); + + // Detect the current theme } - - - - // A function that executes some logic based on the color scheme preference - function handleColorSchemeChange(e) { - if (e.matches) { - // The user prefers dark mode - setColorTheme("dark"); - } else { - // The user prefers light mode - setColorTheme("light"); - } - } - - // Function to resize all video elements to match their parent article's width - function resizeVideosToMatchArticleWidth() { - // Function to adjust video sizes - function adjustVideoSizes() { - // Find all video elements - const videos = document.querySelectorAll('video'); - - videos.forEach(video => { - // Find the closest parent article element - const article = video.closest('article'); - if (!article) return; // Skip if no parent article found - - // Calculate new video height to maintain aspect ratio - const aspectRatio = video.videoHeight / video.videoWidth; - const newWidth = article.clientWidth; // Width of the parent article - const newHeight = newWidth * aspectRatio; - - // Set new width and height on the video - video.style.width = `${newWidth}px`; - video.style.height = `${newHeight}px`; - }); - } - - // Adjust video sizes on load - document.addEventListener('DOMContentLoaded', adjustVideoSizes); - - // Adjust video sizes on window resize - window.onresize = adjustVideoSizes; - } - - // Call the function to initialize the resizing - resizeVideosToMatchArticleWidth(); - \ No newline at end of file + + // Initial check + handleThemeChange(); + + // MutationObserver to detect changes to the `data-md-color-scheme` attribute + const observer = new MutationObserver(handleThemeChange); + observer.observe(document.body, { + attributes: true, + attributeFilter: ['data-md-color-media'] + }); +}); From eeaf1c84a9f0cf44da78e9223acfde11a312dd66 Mon Sep 17 00:00:00 2001 From: Qubasa Date: Thu, 16 May 2024 19:43:55 +0200 Subject: [PATCH 4/5] Add profile picture for W --- docs/site/blog/.authors.yml | 25 ++++++++++++------------- docs/site/static/w_profile.webp | Bin 0 -> 110474 bytes 2 files changed, 12 insertions(+), 13 deletions(-) create mode 100644 docs/site/static/w_profile.webp diff --git a/docs/site/blog/.authors.yml b/docs/site/blog/.authors.yml index 8ba66953..aed47f62 100644 --- a/docs/site/blog/.authors.yml +++ b/docs/site/blog/.authors.yml @@ -1,22 +1,21 @@ authors: Lassulus: name: "Lassulus" - description: "Test description" - avatar: "" - url: "https://example.com/lassulus" + description: "Contributor to Clan" + avatar: "https://avatars.githubusercontent.com/u/621759?v=4" + url: "https://http://lassul.us/" Mic92: name: "Mic92" - description: "Test description" - avatar: "" - url: "https://example.com/mic92" + description: "Contributor to Clan" + avatar: "https://avatars.githubusercontent.com/u/96200?v=4" + url: "https://thalheim.io" W: name: "W" - description: "Test description" - avatar: "" - url: "https://example.com/w" + description: "Founder of Clan" + avatar: "/static/w_profile.webp" + url: "" Qubasa: name: "Qubasa" - description: "Test description" - avatar: "" - bio: "Author bio for Qubasa." - url: "https://example.com/qubasa" \ No newline at end of file + description: "Contributor to Clan" + avatar: "https://avatars.githubusercontent.com/u/22085373?v=4" + url: "https://github.com/Qubasa" \ No newline at end of file diff --git a/docs/site/static/w_profile.webp b/docs/site/static/w_profile.webp new file mode 100644 index 0000000000000000000000000000000000000000..5734b86ddc8956304b162202c27c576c32ab67c5 GIT binary patch literal 110474 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 literal 0 HcmV?d00001 From 473c2362140f2b8f588db54ba22fbf8265dfadaa Mon Sep 17 00:00:00 2001 From: Qubasa Date: Thu, 16 May 2024 20:39:39 +0200 Subject: [PATCH 5/5] Fix rss plugin warning --- docs/mkdocs.yml | 8 ++++++-- docs/site/blog/posts/2024-03-19-hello-world.md | 4 +--- docs/site/blog/posts/2024-04-16-new-docs.md | 5 ++--- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index 371ce212..6557b5a7 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -132,9 +132,13 @@ plugins: - macros - rss: match_path: blog/posts/.* - + use_git: false date_from_meta: - as_creation: date + as_creation: "date" + as_update: "date" + datetime_format: "%Y-%m-%d %H:%M" + default_timezone: Europe/Paris + default_time: "17:18" categories: - categories - tags diff --git a/docs/site/blog/posts/2024-03-19-hello-world.md b/docs/site/blog/posts/2024-03-19-hello-world.md index bdb42619..01ea7b54 100644 --- a/docs/site/blog/posts/2024-03-19-hello-world.md +++ b/docs/site/blog/posts/2024-03-19-hello-world.md @@ -1,12 +1,10 @@ --- title: "Introducing Clan: Full-Stack Computing Redefined" description: "Introducing Clan, a new model for a decentralized network, designed to provide families, smaller groups, and small businesses a platform that’s private, secure, and user-friendly." -date: 2024-03-19T09:19:42+00:00 -updated: 2024-03-19T09:19:42+00:00 -draft: false authors: - W - Qubasa +date: 2024-03-19 --- diff --git a/docs/site/blog/posts/2024-04-16-new-docs.md b/docs/site/blog/posts/2024-04-16-new-docs.md index 13833527..0d63f1d7 100644 --- a/docs/site/blog/posts/2024-04-16-new-docs.md +++ b/docs/site/blog/posts/2024-04-16-new-docs.md @@ -1,10 +1,9 @@ --- title: "New documentation site and weekly new meetup" -date: 2024-04-16T14:36:16+02:00 -draft: false -authors: +authors: - Lassulus - Mic92 +date: 2024-04-16 --- Last week, we added a new documentation hub for clan at [docs.clan.lol](https://docs.clan.lol).